cross-nvptx-newlib11-devel-11.3.0+git1637-150000.1.11.1 >  A c p9|s@1& J+{Q<{loſ^VRDw(dI: j0'law)8}#ƔN&ƶ>x4մ oaCς˻3FrG҄1l{XrD\30`q3]wЦkmK%o>B$j2OjtIB&g@e m$-^,`QnKo&}2%52\'ѣS+46e9d14852a2ce9b9f61a6d60567b22fd5812e715b27df71d601a6dcb0c91fbc1257cf8ade18a061fabb0550f998c766c0de72ad6sc p9| L1<H.-yme#WoHCNJ-,Pu+0fetY3Bu4YIE- $k)(EH E$qzÜ`ʌ ǭWmX`YqӮc(nd5ؑ_ǟ])B&4+H+J_@WϡȴO35|/ӫcwf~j3R X$OO;vVKWt?'=juhZs i Mu6E4Nf >p=d?dd, : ^ 1FLT   , * +-0336 6d6t6777(787((97(::(FRGRHU@IWXXYX(\X]Z^_b`ca0dafalauavdzdnddddCcross-nvptx-newlib11-devel11.3.0+git1637150000.1.11.1Newlib for the nvptx offload targetNewlib development files for the nvptx offload target compiler.c 5sheep70SUSE Linux Enterprise 15SUSE LLC GPL-3.0-or-laterhttps://www.suse.com/Development/Languages/C and C++https://gcc.gnu.org/linuxx86_64 AQ 9 0 1 '(^ W  O.%!V03[p0 (B2&tFLP _9O !- Wi* d&' S7{0t - ]mV' }\2S= vPdxYP .t -  ki[Wkm\ pYZ.)Mj)Mj))ߪAA큤A큤A큤A큤A큤A큤A큤A큤c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c c (c (c (c &c %c %c %c $5c6403b471ee897c9a6c12e00a58617247804eb3ee72d7baeb7c08616090dd1da6f650177bc0235ec5af51bd711083fe3170b5c00bf4f1af370dd7b75e65988fa588085e0b013247fada5cfd2a294d79ea0fef0223b57443e0c86f529e68f5acfdebd60de65105d933b55dcde1650f6c9b3cf6142c225397c5f956638208d4de175fb88b901e13ec66f1b057a02ffb2eb312d19cf462dd5bc7bb6c39fbebb7e224aa4dd94a5b1d542ae5638cb0232ae5115e0040e029c535581fd7b0a3ebc3a476d2c321e49e268077d5e6f14e3da71b8f1e28ced650fe3cd403261b3d09923fd83dc1d2527932324a5822c3330bc9070769401eea42d23b6079f779f4710fe570007b46d90fb58e511086afe37241abe27a54464105418b41c2b0cc541a1d613bf9affa2c05211af2586bb84d08f103942a97e9a9aa7e7c9d081058b58efd3a58da00906fa207a9ebbb8b0b34c2de8858b54ee6ab75ea3328bb7dba5eab4b440d2c0fa9f6fc0844a2bef3502b21e24aa95200b9faa77b71cf4b73efa3bcef7aec24622d27f989cde00b6843fe088f0b4423842f6ab16b549a2238b52c39d6a409f86b8887f4b636701b99199a6b5184755c33174ce7b68035aa60c364ff5f53de0aaab946479a0d95063cfbfcab5793487a5a0b19e051f7be3c3319c351b34753d288d669b43f2341048bf58bc5e6e46a5cfbe68c6d296a3b2e2f1378ac3ca87fb7ff119150be066f9e06ea4afa62c4fd13def8a15d3dde3968d57d7f82ba66637889253928e98bc028dbdcd58560492aed8e981eff349c43a8e7e6a45f75f5950a1a60988c93532171fc60b08e690afbdf9bc75509001344e43d4a910abd2e3a6ca8bce057d57213e430ebff2ebb478d55edcc2fe844eebf13326f2e272f9a3cc4000afb3722b80000c39012d826aeaf15451d05fb77228eeb982558bf26f06f5f880b43e6a992ce9dc2ce475d0c903f07a24599768cd97dd010e56348e049d1124c6cd4b46a7becd189d5e21a5afbce82e4e0b5f3f398729af40ab94e80ed0a91edea4d05ac47f67e8c67e3928445b1079d033fd0c94cd167f94456af25edb5832d987da4574360acb486ee2dc93e9300ae0ee8001219cb2e41c3df43225ebee45af889580a127a4de5aaf342bc2091cdff6680cd63d411d6fa5936bc5c4f8bdf054e265cab5b7b243650303c2a477c85910e2a2ed9de7c232546fb71d1feb8abf8738f130d5d9085af48ae67449a76ea0b6e7b39124a1a36dd23eb96728f16b91bb4b4f7053ddfbbe6ec0925d901093499468151289d5c224d718ec25e44fc543dc6cf75255649ba5b6799feb643fbf6992191246fb034abfc5167cd1e5e88a214651e481bc693c67b4c00447cb3f08f3c13285c9971fae24bf4630176ae5d8f9f7ead7927e4b8b7ed00172e84f2ae82ea7f5f6ba3240ff813a9236771b36a2878de2ce76eed443de3891e5dd49c67e3f41eea7054b47f9bd7ec27a144d030d5767d9856a34b13effab3cc2663bc48d77eaf778d313f243b25015dfe1d8b44544ecbbc10c8aa58ca2da6d0617ffeee5af847af24515ab108c8218d6d92c8b8920447822ad8f3d5698a3fd70cd0c72d28c1b4d0a57f849ce6e6ccdca2ce72c9cb16333e537785dde867ed059915ef2d09661dbab7cc8b4519b646735eace4a8ceea7a1395306b3cd8c9046eaca22bfe6ce26b146a86ed27c85d36aa26bda3c88858bdd267a3359abc3739f811917f34aba100ee7dd76b7e3f1a9c43a1dcdfc6e33eb2fa8cf9038cf4114d87df62468b476caffb045f33949ba97fcaf78a7904400a508514ef63937aa1067163ac8d1e56549c2fed1c518607d739d1e4ee1d4b50c451e3f13d626d70a8087a2749fdc21c24cefa63ba416d0f07da924997652fe3945907a6cb10839bf205aac5a6ee65e286adb9b9c7872a64954b66bcc91443552e520d412993325ba62cb496839cd03fd46b0df67149a5ccbe1b95c45fddd6e16ee56b728aff179afd72ac18247320a64c124e43060a9d96261be2ea462cac7672170b5e2df1fe1d40a9aa5a83356e7df9c221de771c8dbf79da68e0757d3be8e785d201f2972db6a96ae1adb4263227623c7e298aded1a662cb8da93ea3bfe98e78707f66256511d839874b60c9f5d1424510faedce6c8e71c118175a8ade2fd05d0f0b01648d2052732a232e0044790ec987dfd6302b3aebccacbf4fd1026f83881db9f03068affceaa81aea160f603e11f3c9d657f7140e7af9bb8fc9840730d709a942f5050418a7c4c617745a3988cbe40bf2290c95196a1e2243807b7bd43b14d5eae3f1990eeccc0a38ed491990b8712bf162663ee368a07e2821d8a6145404b72ccff930347f8301720350ed3bc11febaf4a1ede636fcb5c8a0c2d33d992f86f8b6e41f742bc75381b0d35cbcf4ae3ae6a9bb543d0817def15be3a0d4c8bd39e2fa31be317701682628127817173e43fc8bc79e7a2db12de744c34629ef5629f53f52053dbb4bad484735aebf48da7e7eb0c14063ec57fe90370e889cdb89b2b0c335eeaff98d11bd5cb455118c798d66d6239130860558197d93ee2a3455b2a2444c160c0da92e63db6116e5c23f9c6249fa91f1335d5dac32ff764c017b8afb592a04b39c21df42a3c50c5d7276e692e6de64be67bd5c1f52283dddcba8f3ae086761221b81f1b525bbf199d7446b9d4d853f1ba7c59d924ec0fddf586b71d441243c6daae9431999872533020d2d39db8a3362d30b754b547663ea64d0ea7288f6b7bd4c9c61a28b182a0199278bc39bf5e1cd9570cf24d3946df6e92c290cb63cecff0ade8ed3959a451cab79e77d0dedd39bf2334ce4ebf3ea87dfe55db5773138465743a152231147bb5adc2576aae916ed3404457a6404cb15cadb5685fe3bc36f6f33004629998521989f48a8b1b8410432b7342f1f5f6de6e2501ed2ffacd320d9f8deccf84dc1e863082fcb51dfdae5f5c0f6c853d0f6d463ff5059a383367572bdaad0232182fe606f793037eeb0837365c80252d76988b929dea6588f918e1b19c61e1cf68fec64fc7999d86f19682129c83b2fb69893f53a3029623af416e662e5997e7b4043b9086c05f0fac42ca290e0c19fead25221c5db89238d6d0fe16b2b98ee76bd1ca9a073d7a277a91d24685501f14b4dd0cc757f9af844ae4b28550d1bcc6ed2d0b25badba259884630ad471b0dec99fe201684856075ccd92704f63b702f6fa882b9dab61bd7a9bcce2588275861cc1eaff2a5f3dc56fa56fb268ecd755392c30603fe425847674ce38558a84fb19c150a3ae08e82d3876a25a254eb8a19b9e80bd7e94e68d38ac4b0b7909404fdc9b59cff66dd5f523dae818c7268959c7c640461ce6723913fc2732acb01a9623dfccecfe9a38d9cb6d32c371c8269ca5c20e8103ea7f4547c82d38347220634743121afb2f530045eb63bcfa3fdbc4ecf555131bd1cf7ce36a268f758bb4be5a413af867956f1e0938361bb5be5dc2dd6effa924a07848829dae50494b0279d1af8abe244b43a3a5b5a85f6c834aa206930b6938e8109fbec430bc140b68df5adc8e11513e5f83a0c73ac641c256815b0aa6cc8a09a43d2c97b1ee79db9f154e0924bdccdc1b9983c51436971b690cd58024aa7c56b83f3e076bfc4f51091b616e78626ff97ef85ec70ba9898082fccf70b741b0c6586c57e4421fc60b9a07d49f8328943afa2a83ed4a35fcb808ed08b8c9fcb55373c786fb1b1d3a21952d7cea8007561c4c9285063cc2f941a284d008e9f044fdfa346572e8bb39f236391976b01c11c44422953444b3f612ca6a7d41d70569e25a4c0674e9f8899101b221bf0428859ddd602938cd25864ba4ebcb7bac003893c1a89d6ff1f11cd04752f19c466e74992b819d44b4862ff03ef36f5e3ad156b7bd8063636979bb0da1ff6d641faf08e166abe7294dbd49de9fe2962297dec19c556048d7bd5adf37f148d738c83a3e58e260c6c30aff3fd2183e1c9f6dc4e61fbb12b5785a04177c305b87a8f3cc9612d591c93281dc05188d874e2dc7ebfce430f6f44e16b9b1e499bc71b4d4865531636af9f7a493bbbb662e221b6bdfa5061807fbc5a237c94c5b68dbe21c82d8ce7898426689c520d0e01fb19d2dda10988ba3dac8f19514723882c9a9125c78ab81fd223146630c99996f81bc4049a2a488360c78609092acc9fca471e655eee7e30a4a8c5c34a465c0891c85a0bed33a26bd555d7538a91bd6e9b92eead7ab3bf7ecb315fd81d0f1eaec250f6d8d7d8574e3cd5d7f80dc779e7715650cf5c0c5853231f2930c43e20c9d4e0a5977d2b0f8a2f4cbc1a910bdd7dcfc4e08fdb66f877ddc18fc704b7127aea39766f08593fa833d7f385beea0b5a35dbcc72531a4590fd2b94c75ef02730ed5a1985abbddc7ffee7dff26a4f23a0dcf5cad9196ce745967fd2673e085b5c03df7887d4d11d7544aff05ff6679be6b8e440a04d5d95c0712db3d434b03fbfd2e996c36eb3453fb26c6f7e62f142902cc622d82410a368e1c437d38473b71fd796b538f9bc322f0a1ef45deb016d6e8bb2c7139f17213669456551b525f782427627d7e92cf18d6f1f6806e8d74e53b0df19ba388a1576abb28635ce59770a378a222db5eaa95c2bf1a23e225a1961aaa905a789e215093f6207948dc700e0ce9789cba8b491a6f1b58888a79b4665265a1d0e248f6150b08af53a48a3134a043a419dad36e982763bf5e791ebea94772bcb2d265bb5d0c3d9033c6ff7c83612d60ad4f56fa8da42e5c182e0973e88153af36c81308f599ec7925c1fe2035f155781aa3674820150929a89b0542d4bb8bd987ea6fed5d31d8a4e7d183a7d988e981ecca3cffce76ee482fcb0bf65594bb7164ee36ccb0a08bc27c7e381ea417c97d8c3fd3157de62b75d2a6bf7a0a589780971936dd4b8f3b192669e693430c204a72c7fb05e7a1db67d48f02cd9aec45257d1a6dcc76341939fae314e53081ffa5e517439e2645a959997709b3f926e208f4cf1df8d97e68b4a73c962ff3b0c5e0771bee39321dfaf7541b64dfa616edd5923ee90003492936ee8dcbc996c74246594a459062fb707b4fe17563e05d8c2c2dfdcf9deacccb8919ff633f212afa455e4779a2d12c47b9afa0eff7d73c1e14ff326f88162c3e480c15c35512bf2451d42d21e08bc8607a7b5db90c332ab0a9beb981196c25b1992ed65eb25c909d6de4047c498392ee24da069e93abf40fb9f699d44fd86f29981cd0653683c1fca3c289960021be6b67ccd80a03026ab2bcd7d80d018eb7ef8912394fa6c84da8a2212fba9561db9e0b03d9ee8e40d346f6974c77254b5f17fa67af13cc609b721bc70a4c32573c404a6fb8b2d5834fc66008622fce9fe0b5c305e52bebc1dbc3291a5531682d886d575d4c4976f069afc13c1c649a2530491bed09e072743a931822b0faa826efb34e98bafd7373fa84cee5f66824b507890fa22a0462ce46d177ca14345280e01d7bee660e01d42c97b12eae65db429bc21f7f9480e43b09ecec8e09a14ef17b7a6c3b867394593543db85344e03099b886ec618b416a25954ee7613c9909ae16af9e99b4f3d9a8e2cd52a305a468bdb6aea3e6c03f9dcd7d40c2074f6b2a66ffceb17f7786c4189719f31553182c4d649dd0d6301ffdbb5b4d7903b28373dd070a553798b41f524fbe672799c1b20fc35446ee2bf6b3c800677f2168983a1c99b366cf8036dbc4180cf902b1dcfa51852a3127a012ef4e77182510b0c5c89dab89d522656366e23789f60d6d48f1ab4917b1c6055f331da379347d035e8197040186f303b8ed216aafdf3415c9a74cfbbc8942d83e25f277528e6638ccd2b18c1239c6d61c579930cb95592bd02595459a64ce2caab45c67564fa67b0110164aa00e38747b1448eec9b06051ef3c31f64620a97232825ab4e91051ae37c07d9e144709b860bc02edc9b06051ef3c31f64620a97232825ab4e91051ae37c07d9e144709b860bc02ed9d21b6fbebb596b886a5974b0d0e985d1dbc18c93e944d74d76be6ca51147767d9572288e7544ed6bbd531c422e064c28f7370cbc48f088fdffd503d6e9e7b30d9572288e7544ed6bbd531c422e064c28f7370cbc48f088fdffd503d6e9e7b304baeb23ad9debbecdc008a0dabf58a4b0bdcd4bcb20237701dbd7bb1df2cb422rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcross-nvptx-gcc11-11.3.0+git1637-150000.1.11.1.src.rpmcross-nvptx-newlib-develcross-nvptx-newlib11-develcross-nvptx-newlib11-devel(x86-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)3.0.4-14.6.0-14.0.4-14.0-1cross-nvptx-newlib-devel4.14.1baG@b_bF@b1@b%b\@b@baaa@a)@apaHwa@aS@` @` @`i@`:@`E`@`9@`Ȗ@``@`[`` @```~@`y|@`x*`v@`pA`n@`F`3`3@rguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comdmueller@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comschwab@suse.demliska@suse.czmatz@suse.comrguenther@suse.comrguenther@suse.commatz@suse.comschwab@suse.derguenther@suse.comrguenther@suse.comrguenther@suse.comschwab@suse.derguenther@suse.commatz@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comdmueller@suse.comschwab@suse.derguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.commliska@suse.czrguenther@suse.commliska@suse.czrguenther@suse.commliska@suse.czrguenther@suse.commliska@suse.czmliska@suse.cz- Update to the GCC 11.3.0 release. * includes SLS hardening backport on x86_64. [bsc#1195283]- Update to gcc-11 branch head (691af15031e00227ba6d5935c), git1635 * includes gcc11-pr104931.patch * includes fix for Firefox ICE [gcc#105256]- Add provides/conflicts to glibc crosses since only one GCC version for the same target can be installed at the same time. - Add provides/conflicts to libgccjit.- Update to gcc-11 branch head (6a1150d1524aeda3381b21717), git1406 * includes change to adjust gnats idea of the target, fixing the build of gprbuild. [bsc#1196861] - Add gcc11-pr104931.patch to fix miscompile of embedded premake in 0ad on i586. [bsc#1197065]- drop armv5tel, merge arm and armv6hl - use --with-cpu rather than specifying --with-arch/--with-tune- Add a list of Obsoletes to libstdc++6-pp-gcc11 so updates from packages provided by older GCC work. Add a requires from that package to the corresponding libstc++6 package to keep those at the same version. [bsc#1196107]- Add gcc11-PIE, similar to gcc-PIE but affecting gcc11 [bsc#1195628]- Put libstdc++6-pp Requires on the shared library and drop to Recoomends.- Remove sys/rseq.h from include-fixed- Update to gcc-11 branch head (d4a1d3c4b377f1d4acb), git1173 * Fix D memory corruption in -M output. * Fix ICE in is_this_parameter with coroutines. [boo#1193659]- Enable the cross compilers also on i586 - Enable some cross compilers also in rings - Remove cross compilers for i386 target- Update to gcc-11 branch head (7510c23c1ec53aa4a62705f03), git1018 * fixes issue with debug dumping together with -o /dev/null * fixes libgccjit issue showing up in emacs build [boo#1192951] - Package mwaitintrin.h- Remove spurious exit from change_spec.- Enable the full cross compiler, cross-aarch64-gcc11 and cross-riscv64-gcc11 now provide a fully hosted C (and C++) cross compiler, not just a freestanding one. I.e. with a cross glibc. They don't yet support the sanitizer libraries. Part of [jsc#OBS-124].- Require libgccjit%{libgccjit_sover}%{libgccjit_suffix} from libgccjit%{libgccjit_sover}-devel%{libdevel_suffix}.- Update to gcc-11 branch head (056e324ce46a7924b5cf10f610), git610 * Includes GCC 11.2 release * Includes fix for opie build with glibc 2.34 [boo#1188623]- Update to gcc-11 branch head (076930b9690ac3564638636f6b), git536 * Includes GCC 11.2 RC1. - Refresh gcc10-foffload-default.patch- Properly adjust GPL-3.0 WITH GCC-exception-3.1 to GPL-3.0-or-later WITH GCC-exception-3.1- Remove bits/unistd_ext.h from include-fixed- Add BuildRequires on netcfg for the testsuite when testing Go.- Provide a libc-bootstrap cross compiler for aarch64 and riscv64 - More preparation for a full glibc cross compiler (not yet active)- Update to gcc-11 branch head (62bbb113ae68a7e724255e1714), git400 * Fixes issue with legacy Fortran code. [gcc#101123, boo#1187273]- Update to gcc-11 branch head (79c1185de4a05fdea13b6b0207), git340 * Fixes ceph build failure. [gcc#101078]- Change disable_32bit to only disable multilibs for arhcs subject to 32bit/64bit handling and make it effective on x86_64. - Remove the duplicate spec header from cross.spec.in- Add newlib-4.1.0-aligned_alloc.patch to fix nvptx cross build fail. [bsc#1187153]- Update to gcc-11 branch head (c6d2487098f9dde4f9ac59e5be), git273- tune armv7 to generic-armv7-a - enable build for arm-none cross builders in rings, needed by arm-trusted-firmware- Fix value of %slibdir64 for usrmerge- Update to gcc-11 branch head (23855a176609fe8dda6abaf2b2), git121 - Disable build-id generation on non-glibc targeting cross compilers.- Update to gcc-11 branch head (cd0a059bd384da58d43674496a7), git67 * Includes GCC 11.1 release - Drop upstreamed gcc11-no-offload.patch.- Update to gcc-11 branch head (7a7fc01b9d20afb1a2b805d93cb), git31 * Includes GCC 11.1 RC2 - Add gcc11-no-offload.patch and gcc11-amdgcn-disable-hot-cold-partitioning.patch. - Enable gfortran for offload compilers. - BuildRequire procps from gcc11-testresults if we test go. - Force using llvm11 for amdgcn offloading since llvm12 doesn't yet work. Package expanded symlinks so concurrent installs do not pull in another llvm-mc. - Add gcc11-gdwarf-4-default.patch to default to DWARF4 generation in SLES15 and older.- Update to gcc-11 branch head (27350b77a92062667427100afb4), git10 * Includes GCC 11.1 RC1- Bump to 49813aad3292f7f2bef69206274da78a9a7116ed.- Disable nvptx offloading on aarch64 since it doesn't work.- Bump to a87d3f964df31d4fbceb822c6d293e85c117d992.- Remove gcc48-remove-mpfr-2.4.0-requirement.patch which does no longer apply. - Arrange for a C++ 11 capable host compiler to be available. - Do not require ISL for cross compiler builds on old distros.- Bump to 123b3e03c911a43054c1f88f5d3110e1d084dd4e.- Update embedded newlib version from 3.3.0 to 4.1.0.- Pack %{GCCDIST}-gcc%{binsuffix}. - Add a new dependency for libgccjit.- New package, inherits from gcc10 * gcc-add-defaultsspec.diff, add the ability to provide a specs file that is read by default * tls-no-direct.diff, avoid direct %fs references on x86 to not slow down Xen * gcc43-no-unwind-tables.diff, do not produce unwind tables for CRT files * gcc41-ppc32-retaddr.patch, fix expansion of __builtin_return_addr for ppc, just a testcase * gcc44-textdomain.patch, make translation files version specific and adjust textdomain to find them * gcc44-rename-info-files.patch, fix cross-references in info files when renaming them to be version specific * gcc48-libstdc++-api-reference.patch, fix link in the installed libstdc++ html documentation * gcc48-remove-mpfr-2.4.0-requirement.patch, make GCC work with earlier mpfr versions on old products * gcc5-no-return-gcc43-workaround.patch, make build work with host gcc 4.3 * gcc7-remove-Wexpansion-to-defined-from-Wextra.patch, removes new warning from -Wextra * gcc7-avoid-fixinc-error.diff * gcc9-reproducible-builds-buildid-for-checksum.patch * gcc9-reproducible-builds.patch * gcc10-amdgcn-llvm-as.patch * gcc10-foffload-default.patch - libgccjit subpackage is added. - HWASAN is built for aarch64 target.sheep70 1661767477  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~11.3.0+git1637-150000.1.11.111.3.0+git1637-150000.1.11.111.3.0+git1637-150000.1.11.1nvptx-noneinclude_ansi.h_newlib_version.h_syslist.halloca.har.hargz.hassert.hbitscomplex.hcpio.hctype.hdevctl.hdirent.helf.henvlock.henvz.herrno.hfastmath.hfcntl.hfenv.hfnmatch.hgetopt.hglob.hgrp.hiconv.hieeefp.hinttypes.hlanginfo.hlibgen.hlimits.hlocale.hmachine_arc4random.h_default_types.h_endian.h_time.h_types.hansi.hendian.hfastmath.hieeefp.hmalloc.hparam.hsetjmp-dj.hsetjmp.hstdlib.htermios.htime.htypes.hmalloc.hmath.hmemory.hndbm.hnewlib.hpaths.hpthread.hpwd.hreent.hregdef.hregex.hrpcsched.hsearch.hsetjmp.hsignal.hspawn.hsspssp.hstdio.hstdlib.hstring.hstrings.hunistd.hwchar.hstdatomic.hstdint.hstdio.hstdio_ext.hstdlib.hstring.hstrings.hsys_default_fcntl.h_intsup.h_locale.h_pthreadtypes.h_sigset.h_stdint.h_timespec.h_timeval.h_types.h_tz_structs.hcdefs.hconfig.hcustom_file.hdir.hdirent.herrno.hfcntl.hfeatures.hfenv.hfile.hiconvnls.hlock.hparam.hqueue.hreent.hresource.hsched.hselect.hsignal.hstat.hstdio.hstring.hsyslimits.htime.htimeb.htimes.htimespec.htree.htypes.hunistd.hutime.hwait.htar.htermios.htgmath.hthreads.htime.hunctrl.hunistd.hutime.hutmp.hwchar.hwctype.hwordexp.hliblibc.alibg.alibm.amgomplibc.alibg.alibm.a/usr//usr/nvptx-none//usr/nvptx-none/include//usr/nvptx-none/include/machine//usr/nvptx-none/include/ssp//usr/nvptx-none/include/sys//usr/nvptx-none/lib//usr/nvptx-none/lib/mgomp/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:25622/SUSE_SLE-15_Update/45c4657058264596f14e4b1121aa7e04-cross-nvptx-gcc11.SUSE_SLE-15_Updatecpiox86_64-suse-linuxdirectoryC source, ASCII textC source, UTF-8 Unicode textASCII textcurrent ar archive@S/߄a Iutf-8dcfe4c36e4c533debcf3c26f2ad6cfb607209699dde2acecb07365118af1ffbc?007070100000001000041ed000000000000000000000001630c8dd400000000000000000000000000000000000000000000001100000000./usr/nvptx-none07070100000002000041ed000000000000000000000001630c8dd500000000000000000000000000000000000000000000001900000000./usr/nvptx-none/include07070100000003000081a4000000000000000000000001630c8dd400000a41000000000000000000000000000000000000002100000000./usr/nvptx-none/include/_ansi.h/* Provide support for both ANSI and non-ANSI environments. */ /* To get a strict ANSI C environment, define macro __STRICT_ANSI__. This will "comment out" the non-ANSI parts of the ANSI header files (non-ANSI header files aren't affected). */ #ifndef _ANSIDECL_H_ #define _ANSIDECL_H_ #include #include /* ISO C++. */ #ifdef __cplusplus #if !(defined(_BEGIN_STD_C) && defined(_END_STD_C)) #ifdef _HAVE_STD_CXX #define _BEGIN_STD_C namespace std { extern "C" { #define _END_STD_C } } #else #define _BEGIN_STD_C extern "C" { #define _END_STD_C } #endif #if __GNUC_PREREQ (3, 3) #define _NOTHROW __attribute__ ((__nothrow__)) #else #define _NOTHROW throw() #endif #endif #else #define _BEGIN_STD_C #define _END_STD_C #define _NOTHROW #endif #ifndef _LONG_DOUBLE #define _LONG_DOUBLE long double #endif /* Support gcc's __attribute__ facility. */ #ifdef __GNUC__ #define _ATTRIBUTE(attrs) __attribute__ (attrs) #else #define _ATTRIBUTE(attrs) #endif /* The traditional meaning of 'extern inline' for GCC is not to emit the function body unless the address is explicitly taken. However this behaviour is changing to match the C99 standard, which uses 'extern inline' to indicate that the function body *must* be emitted. Likewise, a function declared without either 'extern' or 'static' defaults to extern linkage (C99 6.2.2p5), and the compiler may choose whether to use the inline version or call the extern linkage version (6.7.4p6). If we are using GCC, but do not have the new behaviour, we need to use extern inline; if we are using a new GCC with the C99-compatible behaviour, or a non-GCC compiler (which we will have to hope is C99, since there is no other way to achieve the effect of omitting the function if it isn't referenced) we use 'static inline', which c99 defines to mean more-or-less the same as the Gnu C 'extern inline'. */ #if defined(__GNUC__) && !defined(__GNUC_STDC_INLINE__) /* We're using GCC, but without the new C99-compatible behaviour. */ #define _ELIDABLE_INLINE extern __inline__ _ATTRIBUTE ((__always_inline__)) #else /* We're using GCC in C99 mode, or an unknown compiler which we just have to hope obeys the C99 semantics of inline. */ #define _ELIDABLE_INLINE static __inline__ #endif #if __GNUC_PREREQ (3, 1) #define _NOINLINE __attribute__ ((__noinline__)) #define _NOINLINE_STATIC _NOINLINE static #else /* On non-GNU compilers and GCC prior to version 3.1 the compiler can't be trusted not to inline if it is static. */ #define _NOINLINE #define _NOINLINE_STATIC #endif #endif /* _ANSIDECL_H_ */ 07070100000004000081a4000000000000000000000001630c8dd500000151000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/_newlib_version.h/* _newlib_version.h. Generated from _newlib_version.hin by configure. */ /* Version macros for internal and downstream use. */ #ifndef _NEWLIB_VERSION_H__ #define _NEWLIB_VERSION_H__ 1 #define _NEWLIB_VERSION "4.1.0" #define __NEWLIB__ 4 #define __NEWLIB_MINOR__ 1 #define __NEWLIB_PATCHLEVEL__ 0 #endif /* !_NEWLIB_VERSION_H__ */ 07070100000005000081a4000000000000000000000001630c8dd400000492000000000000000000000000000000000000002400000000./usr/nvptx-none/include/_syslist.h/* internal use only -- mapping of "system calls" for libraries that lose and only provide C names, so that we end up in violation of ANSI */ #ifndef __SYSLIST_H #define __SYSLIST_H #ifdef MISSING_SYSCALL_NAMES #define _close close #define _execve execve #define _fcntl fcntl #define _fork fork #define _fstat fstat #define _getpid getpid #define _gettimeofday gettimeofday #define _isatty isatty #define _kill kill #define _link link #define _lseek lseek #define _mkdir mkdir #define _open open #define _read read #define _sbrk sbrk #define _stat stat #define _times times #define _unlink unlink #define _wait wait #define _write write #endif /* MISSING_SYSCALL_NAMES */ #if defined MISSING_SYSCALL_NAMES || !defined HAVE_OPENDIR /* If the system call interface is missing opendir, readdir, and closedir, there is an implementation of these functions in libc/posix that is implemented using open, getdents, and close. Note, these functions are currently not in the libc/syscalls directory. */ #define _opendir opendir #define _readdir readdir #define _closedir closedir #endif /* MISSING_SYSCALL_NAMES || !HAVE_OPENDIR */ #endif /* !__SYSLIST_H_ */ 07070100000006000081a4000000000000000000000001630c8dd40000019c000000000000000000000000000000000000002200000000./usr/nvptx-none/include/alloca.h/* libc/include/alloca.h - Allocate memory on stack */ /* Written 2000 by Werner Almesberger */ /* Rearranged for general inclusion by stdlib.h. 2001, Corinna Vinschen */ #ifndef _NEWLIB_ALLOCA_H #define _NEWLIB_ALLOCA_H #include "_ansi.h" #include #undef alloca #ifdef __GNUC__ #define alloca(size) __builtin_alloca(size) #else void * alloca (size_t); #endif #endif 07070100000007000081a4000000000000000000000001630c8dd400000aa1000000000000000000000000000000000000001e00000000./usr/nvptx-none/include/ar.h/* $NetBSD: ar.h,v 1.4 1994/10/26 00:55:43 cgd Exp $ */ /*- * Copyright (c) 1991, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, Inc. * * This code is derived from software contributed to Berkeley by * Hugh Smith at The University of Guelph. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)ar.h 8.2 (Berkeley) 1/21/94 */ #ifndef _AR_H_ #define _AR_H_ /* Pre-4BSD archives had these magic numbers in them. */ #define OARMAG1 0177555 #define OARMAG2 0177545 #define ARMAG "!\n" /* ar "magic number" */ #define SARMAG 8 /* strlen(ARMAG); */ #define AR_EFMT1 "#1/" /* extended format #1 */ struct ar_hdr { char ar_name[16]; /* name */ char ar_date[12]; /* modification time */ char ar_uid[6]; /* user id */ char ar_gid[6]; /* group id */ char ar_mode[8]; /* octal file permissions */ char ar_size[10]; /* size in bytes */ #define ARFMAG "`\n" char ar_fmag[2]; /* consistency check */ }; #endif /* !_AR_H_ */ 07070100000008000081a4000000000000000000000001630c8dd400000539000000000000000000000000000000000000002000000000./usr/nvptx-none/include/argz.h/* Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ #ifndef _ARGZ_H_ #define _ARGZ_H_ #include #include #include "_ansi.h" _BEGIN_STD_C /* The newlib implementation of these functions assumes that sizeof(char) == 1. */ error_t argz_create (char *const argv[], char **argz, size_t *argz_len); error_t argz_create_sep (const char *string, int sep, char **argz, size_t *argz_len); size_t argz_count (const char *argz, size_t argz_len); void argz_extract (char *argz, size_t argz_len, char **argv); void argz_stringify (char *argz, size_t argz_len, int sep); error_t argz_add (char **argz, size_t *argz_len, const char *str); error_t argz_add_sep (char **argz, size_t *argz_len, const char *str, int sep); error_t argz_append (char **argz, size_t *argz_len, const char *buf, size_t buf_len); error_t argz_delete (char **argz, size_t *argz_len, char *entry); error_t argz_insert (char **argz, size_t *argz_len, char *before, const char *entry); char * argz_next (char *argz, size_t argz_len, const char *entry); error_t argz_replace (char **argz, size_t *argz_len, const char *str, const char *with, unsigned *replace_count); _END_STD_C #endif /* _ARGZ_H_ */ 07070100000009000081a4000000000000000000000001630c8dd400000494000000000000000000000000000000000000002200000000./usr/nvptx-none/include/assert.h/* assert.h */ #ifdef __cplusplus extern "C" { #endif #include "_ansi.h" #undef assert #ifdef NDEBUG /* required by ANSI standard */ # define assert(__e) ((void)0) #else # define assert(__e) ((__e) ? (void)0 : __assert_func (__FILE__, __LINE__, \ __ASSERT_FUNC, #__e)) # ifndef __ASSERT_FUNC /* Use g++'s demangled names in C++. */ # if defined __cplusplus && defined __GNUC__ # define __ASSERT_FUNC __PRETTY_FUNCTION__ /* C99 requires the use of __func__. */ # elif __STDC_VERSION__ >= 199901L # define __ASSERT_FUNC __func__ /* Older versions of gcc don't have __func__ but can use __FUNCTION__. */ # elif __GNUC__ >= 2 # define __ASSERT_FUNC __FUNCTION__ /* failed to detect __func__ support. */ # else # define __ASSERT_FUNC ((char *) 0) # endif # endif /* !__ASSERT_FUNC */ #endif /* !NDEBUG */ void __assert (const char *, int, const char *) _ATTRIBUTE ((__noreturn__)); void __assert_func (const char *, int, const char *, const char *) _ATTRIBUTE ((__noreturn__)); #if __STDC_VERSION__ >= 201112L && !defined __cplusplus # define static_assert _Static_assert #endif #ifdef __cplusplus } #endif 0707010000000a000041ed000000000000000000000001630c8dd500000000000000000000000000000000000000000000001e00000000./usr/nvptx-none/include/bits0707010000000b000081a4000000000000000000000001630c8dd400001120000000000000000000000000000000000000002300000000./usr/nvptx-none/include/complex.h/* $NetBSD: complex.h,v 1.3 2010/09/15 16:11:30 christos Exp $ */ /* * Written by Matthias Drochner. * Public domain. */ #ifndef _COMPLEX_H #define _COMPLEX_H #define complex _Complex #define _Complex_I 1.0fi #define I _Complex_I #include __BEGIN_DECLS /* 7.3.5 Trigonometric functions */ /* 7.3.5.1 The cacos functions */ double complex cacos(double complex); float complex cacosf(float complex); /* 7.3.5.2 The casin functions */ double complex casin(double complex); float complex casinf(float complex); long double complex casinl(long double complex); /* 7.3.5.1 The catan functions */ double complex catan(double complex); float complex catanf(float complex); long double complex catanl(long double complex); /* 7.3.5.1 The ccos functions */ double complex ccos(double complex); float complex ccosf(float complex); /* 7.3.5.1 The csin functions */ double complex csin(double complex); float complex csinf(float complex); /* 7.3.5.1 The ctan functions */ double complex ctan(double complex); float complex ctanf(float complex); /* 7.3.6 Hyperbolic functions */ /* 7.3.6.1 The cacosh functions */ double complex cacosh(double complex); float complex cacoshf(float complex); /* 7.3.6.2 The casinh functions */ double complex casinh(double complex); float complex casinhf(float complex); /* 7.3.6.3 The catanh functions */ double complex catanh(double complex); float complex catanhf(float complex); /* 7.3.6.4 The ccosh functions */ double complex ccosh(double complex); float complex ccoshf(float complex); /* 7.3.6.5 The csinh functions */ double complex csinh(double complex); float complex csinhf(float complex); /* 7.3.6.6 The ctanh functions */ double complex ctanh(double complex); float complex ctanhf(float complex); /* 7.3.7 Exponential and logarithmic functions */ /* 7.3.7.1 The cexp functions */ double complex cexp(double complex); float complex cexpf(float complex); /* 7.3.7.2 The clog functions */ double complex clog(double complex); float complex clogf(float complex); long double complex clogl(long double complex); /* 7.3.8 Power and absolute-value functions */ /* 7.3.8.1 The cabs functions */ /*#ifndef __LIBM0_SOURCE__ */ /* avoid conflict with historical cabs(struct complex) */ /* double cabs(double complex) __RENAME(__c99_cabs); float cabsf(float complex) __RENAME(__c99_cabsf); #endif */ long double cabsl(long double complex) ; double cabs(double complex) ; float cabsf(float complex) ; /* 7.3.8.2 The cpow functions */ double complex cpow(double complex, double complex); float complex cpowf(float complex, float complex); /* 7.3.8.3 The csqrt functions */ double complex csqrt(double complex); float complex csqrtf(float complex); long double complex csqrtl(long double complex); /* 7.3.9 Manipulation functions */ /* 7.3.9.1 The carg functions */ double carg(double complex); float cargf(float complex); long double cargl(long double complex); /* 7.3.9.2 The cimag functions */ double cimag(double complex); float cimagf(float complex); long double cimagl(long double complex); /* 7.3.9.3 The conj functions */ double complex conj(double complex); float complex conjf(float complex); /* 7.3.9.4 The cproj functions */ double complex cproj(double complex); float complex cprojf(float complex); /* 7.3.9.5 The creal functions */ double creal(double complex); float crealf(float complex); long double creall(long double complex); #if __GNU_VISIBLE double complex clog10(double complex); float complex clog10f(float complex); #endif #if defined(__CYGWIN__) long double complex cacosl(long double complex); long double complex ccosl(long double complex); long double complex csinl(long double complex); long double complex ctanl(long double complex); long double complex cacoshl(long double complex); long double complex casinhl(long double complex); long double complex catanhl(long double complex); long double complex ccoshl(long double complex); long double complex csinhl(long double complex); long double complex ctanhl(long double complex); long double complex cexpl(long double complex); long double complex cpowl(long double complex, long double complex); long double complex conjl(long double complex); long double complex cprojl(long double complex); #if __GNU_VISIBLE long double complex clog10l(long double complex); #endif #endif /* __CYGWIN__ */ __END_DECLS #endif /* ! _COMPLEX_H */ 0707010000000c000081a4000000000000000000000001630c8dd400000430000000000000000000000000000000000000002000000000./usr/nvptx-none/include/cpio.h/* POSIX.1 symbolic constants for c_mode field of cpio archive format */ #ifndef _CPIO_H #define _CPIO_H #define C_IRUSR 0000400 /* Read by owner */ #define C_IWUSR 0000200 /* Write by owner */ #define C_IXUSR 0000100 /* Execute by owner */ #define C_IRGRP 0000040 /* Read by group */ #define C_IWGRP 0000020 /* Write by group */ #define C_IXGRP 0000010 /* Execute by group */ #define C_IROTH 0000004 /* Read by others */ #define C_IWOTH 0000002 /* Write by others */ #define C_IXOTH 0000001 /* Execute by others */ #define C_ISUID 0004000 /* Set user ID */ #define C_ISGID 0002000 /* Set group ID */ #define C_ISVTX 0001000 /* On directories, restricted deletion flag */ #define C_ISDIR 0040000 /* Directory */ #define C_ISFIFO 0010000 /* FIFO */ #define C_ISREG 0100000 /* Regular file */ #define C_ISBLK 0060000 /* Block special */ #define C_ISCHR 0020000 /* Character special */ #define C_ISCTG 0110000 /* Reserved */ #define C_ISLNK 0120000 /* Symbolic link */ #define C_ISSOCK 0140000 /* Socket */ #define MAGIC "070707" #endif /* _CPIO_H */ 0707010000000d000081a4000000000000000000000001630c8dd4000017aa000000000000000000000000000000000000002100000000./usr/nvptx-none/include/ctype.h#ifndef _CTYPE_H_ #define _CTYPE_H_ #include "_ansi.h" #include #if __POSIX_VISIBLE >= 200809 || __MISC_VISIBLE || defined (_COMPILING_NEWLIB) #include #endif _BEGIN_STD_C int isalnum (int __c); int isalpha (int __c); int iscntrl (int __c); int isdigit (int __c); int isgraph (int __c); int islower (int __c); int isprint (int __c); int ispunct (int __c); int isspace (int __c); int isupper (int __c); int isxdigit (int __c); int tolower (int __c); int toupper (int __c); #if __ISO_C_VISIBLE >= 1999 int isblank (int __c); #endif #if __MISC_VISIBLE || __XSI_VISIBLE int isascii (int __c); int toascii (int __c); #define _tolower(__c) ((unsigned char)(__c) - 'A' + 'a') #define _toupper(__c) ((unsigned char)(__c) - 'a' + 'A') #endif #if __POSIX_VISIBLE >= 200809 extern int isalnum_l (int __c, locale_t __l); extern int isalpha_l (int __c, locale_t __l); extern int isblank_l (int __c, locale_t __l); extern int iscntrl_l (int __c, locale_t __l); extern int isdigit_l (int __c, locale_t __l); extern int isgraph_l (int __c, locale_t __l); extern int islower_l (int __c, locale_t __l); extern int isprint_l (int __c, locale_t __l); extern int ispunct_l (int __c, locale_t __l); extern int isspace_l (int __c, locale_t __l); extern int isupper_l (int __c, locale_t __l); extern int isxdigit_l(int __c, locale_t __l); extern int tolower_l (int __c, locale_t __l); extern int toupper_l (int __c, locale_t __l); #endif #if __MISC_VISIBLE extern int isascii_l (int __c, locale_t __l); extern int toascii_l (int __c, locale_t __l); #endif #define _U 01 #define _L 02 #define _N 04 #define _S 010 #define _P 020 #define _C 040 #define _X 0100 #define _B 0200 /* For C++ backward-compatibility only. */ extern __IMPORT const char _ctype_[]; #ifdef __HAVE_LOCALE_INFO__ const char *__locale_ctype_ptr (void); #else #define __locale_ctype_ptr() _ctype_ #endif # define __CTYPE_PTR (__locale_ctype_ptr ()) #ifndef __cplusplus /* These macros are intentionally written in a manner that will trigger a gcc -Wall warning if the user mistakenly passes a 'char' instead of an int containing an 'unsigned char'. Note that the sizeof will always be 1, which is what we want for mapping EOF to __CTYPE_PTR[0]; the use of a raw index inside the sizeof triggers the gcc warning if __c was of type char, and sizeof masks side effects of the extra __c. Meanwhile, the real index to __CTYPE_PTR+1 must be cast to int, since isalpha(0x100000001LL) must equal isalpha(1), rather than being an out-of-bounds reference on a 64-bit machine. */ #define __ctype_lookup(__c) ((__CTYPE_PTR+sizeof(""[__c]))[(int)(__c)]) #define isalpha(__c) (__ctype_lookup(__c)&(_U|_L)) #define isupper(__c) ((__ctype_lookup(__c)&(_U|_L))==_U) #define islower(__c) ((__ctype_lookup(__c)&(_U|_L))==_L) #define isdigit(__c) (__ctype_lookup(__c)&_N) #define isxdigit(__c) (__ctype_lookup(__c)&(_X|_N)) #define isspace(__c) (__ctype_lookup(__c)&_S) #define ispunct(__c) (__ctype_lookup(__c)&_P) #define isalnum(__c) (__ctype_lookup(__c)&(_U|_L|_N)) #define isprint(__c) (__ctype_lookup(__c)&(_P|_U|_L|_N|_B)) #define isgraph(__c) (__ctype_lookup(__c)&(_P|_U|_L|_N)) #define iscntrl(__c) (__ctype_lookup(__c)&_C) #if defined(__GNUC__) && __ISO_C_VISIBLE >= 1999 #define isblank(__c) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ (__ctype_lookup(__x)&_B) || (int) (__x) == '\t';}) #endif #if __POSIX_VISIBLE >= 200809 #ifdef __HAVE_LOCALE_INFO__ const char *__locale_ctype_ptr_l (locale_t); #else static __inline const char * __locale_ctype_ptr_l(locale_t _l) { (void)_l; return __locale_ctype_ptr(); } #endif #define __ctype_lookup_l(__c,__l) ((__locale_ctype_ptr_l(__l)+sizeof(""[__c]))[(int)(__c)]) #define isalpha_l(__c,__l) (__ctype_lookup_l(__c,__l)&(_U|_L)) #define isupper_l(__c,__l) ((__ctype_lookup_l(__c,__l)&(_U|_L))==_U) #define islower_l(__c,__l) ((__ctype_lookup_l(__c,__l)&(_U|_L))==_L) #define isdigit_l(__c,__l) (__ctype_lookup_l(__c,__l)&_N) #define isxdigit_l(__c,__l) (__ctype_lookup_l(__c,__l)&(_X|_N)) #define isspace_l(__c,__l) (__ctype_lookup_l(__c,__l)&_S) #define ispunct_l(__c,__l) (__ctype_lookup_l(__c,__l)&_P) #define isalnum_l(__c,__l) (__ctype_lookup_l(__c,__l)&(_U|_L|_N)) #define isprint_l(__c,__l) (__ctype_lookup_l(__c,__l)&(_P|_U|_L|_N|_B)) #define isgraph_l(__c,__l) (__ctype_lookup_l(__c,__l)&(_P|_U|_L|_N)) #define iscntrl_l(__c,__l) (__ctype_lookup_l(__c,__l)&_C) #if defined(__GNUC__) #define isblank_l(__c, __l) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ (__ctype_lookup_l(__x,__l)&_B) || (int) (__x) == '\t';}) #endif #endif /* __POSIX_VISIBLE >= 200809 */ #if __MISC_VISIBLE || __XSI_VISIBLE #define isascii(__c) ((unsigned)(__c)<=0177) #define toascii(__c) ((__c)&0177) #endif #if __MISC_VISIBLE #define isascii_l(__c,__l) ((__l),(unsigned)(__c)<=0177) #define toascii_l(__c,__l) ((__l),(__c)&0177) #endif /* Non-gcc versions will get the library versions, and will be slightly slower. These macros are not NLS-aware so they are disabled if the system supports the extended character sets. */ # if defined(__GNUC__) # if !defined (_MB_EXTENDED_CHARSETS_ISO) && !defined (_MB_EXTENDED_CHARSETS_WINDOWS) # define toupper(__c) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ islower (__x) ? (int) __x - 'a' + 'A' : (int) __x;}) # define tolower(__c) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ isupper (__x) ? (int) __x - 'A' + 'a' : (int) __x;}) # else /* _MB_EXTENDED_CHARSETS* */ /* Allow a gcc warning if the user passed 'char', but defer to the function. */ # define toupper(__c) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ (void) __CTYPE_PTR[__x]; (toupper) (__x);}) # define tolower(__c) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ (void) __CTYPE_PTR[__x]; (tolower) (__x);}) # endif /* _MB_EXTENDED_CHARSETS* */ # endif /* __GNUC__ */ #if __POSIX_VISIBLE >= 200809 #endif /* __POSIX_VISIBLE >= 200809 */ #endif /* !__cplusplus */ _END_STD_C #endif /* _CTYPE_H_ */ 0707010000000e000081a4000000000000000000000001630c8dd400000a31000000000000000000000000000000000000002200000000./usr/nvptx-none/include/devctl.h/* * Copyright (c) 2016,2019 Joel Sherrill . * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _POSIX_DEVCTL_h_ #define _POSIX_DEVCTL_h_ /* * Nothing in this file should be visible unless _POSIX_26_C_SOURCE is * defined. */ #ifdef _POSIX_26_C_SOURCE #include #ifdef __cplusplus extern "C" { #endif #if defined(__rtems__) /* * The FACE Technical Standard, Edition 3.0 and later require the * definition of the subcommand SOCKCLOSE in . * * Reference: https://www.opengroup.org/face * * Using 'D' should avoid the letters used by other users of */ #include #define SOCKCLOSE _IO('D', 1) /* socket close */ #endif /* * The posix_devctl() method is defined by POSIX 1003.26-2003. Aside * from the single method, it adds the following requirements: * * + define _POSIX_26_VERSION to 200312L * + add _SC_POSIX_26_VERSION in . Return _POSIX_26_VERSION * + application must define _POSIX_26_C_SOURCE to use posix_devctl(). * + posix_devctl() is prototyped in */ int posix_devctl( int fd, int dcmd, void *__restrict dev_data_ptr, size_t nbyte, int *__restrict dev_info_ptr ); #ifdef __cplusplus } #endif #endif /* _POSIX_26_C_SOURCE */ #endif /*_POSIX_DEVCTL_h_ */ 0707010000000f000081a4000000000000000000000001630c8dd400000c27000000000000000000000000000000000000002200000000./usr/nvptx-none/include/dirent.h/*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1989, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)dirent.h 8.3 (Berkeley) 8/10/94 * $FreeBSD: head/include/dirent.h 326024 2017-11-20 19:45:28Z pfg $ */ #ifndef _DIRENT_H_ #define _DIRENT_H_ #include #include #if !defined(MAXNAMLEN) && __BSD_VISIBLE #define MAXNAMLEN 1024 #endif __BEGIN_DECLS #if __MISC_VISIBLE || __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 700 int alphasort(const struct dirent **, const struct dirent **); int dirfd(DIR *); #endif #if __BSD_VISIBLE int fdclosedir(DIR *); #endif DIR *opendir(const char *); DIR *fdopendir(int); struct dirent * readdir(DIR *); #if __POSIX_VISIBLE >= 199506 || __XSI_VISIBLE >= 500 int readdir_r(DIR *__restrict, struct dirent *__restrict, struct dirent **__restrict); #endif void rewinddir(DIR *); #if __MISC_VISIBLE || __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 700 int scandir(const char *, struct dirent ***, int (*)(const struct dirent *), int (*)(const struct dirent **, const struct dirent **)); #endif #ifdef _COMPILING_NEWLIB void _seekdir(DIR *, long); #endif #if __MISC_VISIBLE || __XSI_VISIBLE #ifndef __INSIDE_CYGWIN__ void seekdir(DIR *, long); long telldir(DIR *); #endif #endif int closedir(DIR *); #if __GNU_VISIBLE int scandirat(int, const char *, struct dirent ***, int (*) (const struct dirent *), int (*) (const struct dirent **, const struct dirent **)); int versionsort(const struct dirent **, const struct dirent **); #endif __END_DECLS #endif /*_DIRENT_H_*/ 07070100000010000081a4000000000000000000000001630c8dd40001287f000000000000000000000000000000000000001f00000000./usr/nvptx-none/include/elf.h/* From musl include/elf.h Copyright © 2005-2014 Rich Felker, et al. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #ifndef _ELF_H #define _ELF_H #ifdef __cplusplus extern "C" { #endif #include typedef uint16_t Elf32_Half; typedef uint16_t Elf64_Half; typedef uint32_t Elf32_Word; typedef int32_t Elf32_Sword; typedef uint32_t Elf64_Word; typedef int32_t Elf64_Sword; typedef uint64_t Elf32_Xword; typedef int64_t Elf32_Sxword; typedef uint64_t Elf64_Xword; typedef int64_t Elf64_Sxword; typedef uint32_t Elf32_Addr; typedef uint64_t Elf64_Addr; typedef uint32_t Elf32_Off; typedef uint64_t Elf64_Off; typedef uint16_t Elf32_Section; typedef uint16_t Elf64_Section; typedef Elf32_Half Elf32_Versym; typedef Elf64_Half Elf64_Versym; #define EI_NIDENT (16) typedef struct { unsigned char e_ident[EI_NIDENT]; Elf32_Half e_type; Elf32_Half e_machine; Elf32_Word e_version; Elf32_Addr e_entry; Elf32_Off e_phoff; Elf32_Off e_shoff; Elf32_Word e_flags; Elf32_Half e_ehsize; Elf32_Half e_phentsize; Elf32_Half e_phnum; Elf32_Half e_shentsize; Elf32_Half e_shnum; Elf32_Half e_shstrndx; } Elf32_Ehdr; typedef struct { unsigned char e_ident[EI_NIDENT]; Elf64_Half e_type; Elf64_Half e_machine; Elf64_Word e_version; Elf64_Addr e_entry; Elf64_Off e_phoff; Elf64_Off e_shoff; Elf64_Word e_flags; Elf64_Half e_ehsize; Elf64_Half e_phentsize; Elf64_Half e_phnum; Elf64_Half e_shentsize; Elf64_Half e_shnum; Elf64_Half e_shstrndx; } Elf64_Ehdr; #define EI_MAG0 0 #define ELFMAG0 0x7f #define EI_MAG1 1 #define ELFMAG1 'E' #define EI_MAG2 2 #define ELFMAG2 'L' #define EI_MAG3 3 #define ELFMAG3 'F' #define ELFMAG "\177ELF" #define SELFMAG 4 #define EI_CLASS 4 #define ELFCLASSNONE 0 #define ELFCLASS32 1 #define ELFCLASS64 2 #define ELFCLASSNUM 3 #define EI_DATA 5 #define ELFDATANONE 0 #define ELFDATA2LSB 1 #define ELFDATA2MSB 2 #define ELFDATANUM 3 #define EI_VERSION 6 #define EI_OSABI 7 #define ELFOSABI_NONE 0 #define ELFOSABI_SYSV 0 #define ELFOSABI_HPUX 1 #define ELFOSABI_NETBSD 2 #define ELFOSABI_LINUX 3 #define ELFOSABI_GNU 3 #define ELFOSABI_SOLARIS 6 #define ELFOSABI_AIX 7 #define ELFOSABI_IRIX 8 #define ELFOSABI_FREEBSD 9 #define ELFOSABI_TRU64 10 #define ELFOSABI_MODESTO 11 #define ELFOSABI_OPENBSD 12 #define ELFOSABI_ARM 97 #define ELFOSABI_STANDALONE 255 #define EI_ABIVERSION 8 #define EI_PAD 9 #define ET_NONE 0 #define ET_REL 1 #define ET_EXEC 2 #define ET_DYN 3 #define ET_CORE 4 #define ET_NUM 5 #define ET_LOOS 0xfe00 #define ET_HIOS 0xfeff #define ET_LOPROC 0xff00 #define ET_HIPROC 0xffff #define EM_NONE 0 #define EM_M32 1 #define EM_SPARC 2 #define EM_386 3 #define EM_68K 4 #define EM_88K 5 #define EM_860 7 #define EM_MIPS 8 #define EM_S370 9 #define EM_MIPS_RS3_LE 10 #define EM_PARISC 15 #define EM_VPP500 17 #define EM_SPARC32PLUS 18 #define EM_960 19 #define EM_PPC 20 #define EM_PPC64 21 #define EM_S390 22 #define EM_V800 36 #define EM_FR20 37 #define EM_RH32 38 #define EM_RCE 39 #define EM_ARM 40 #define EM_FAKE_ALPHA 41 #define EM_SH 42 #define EM_SPARCV9 43 #define EM_TRICORE 44 #define EM_ARC 45 #define EM_H8_300 46 #define EM_H8_300H 47 #define EM_H8S 48 #define EM_H8_500 49 #define EM_IA_64 50 #define EM_MIPS_X 51 #define EM_COLDFIRE 52 #define EM_68HC12 53 #define EM_MMA 54 #define EM_PCP 55 #define EM_NCPU 56 #define EM_NDR1 57 #define EM_STARCORE 58 #define EM_ME16 59 #define EM_ST100 60 #define EM_TINYJ 61 #define EM_X86_64 62 #define EM_PDSP 63 #define EM_FX66 66 #define EM_ST9PLUS 67 #define EM_ST7 68 #define EM_68HC16 69 #define EM_68HC11 70 #define EM_68HC08 71 #define EM_68HC05 72 #define EM_SVX 73 #define EM_ST19 74 #define EM_VAX 75 #define EM_CRIS 76 #define EM_JAVELIN 77 #define EM_FIREPATH 78 #define EM_ZSP 79 #define EM_MMIX 80 #define EM_HUANY 81 #define EM_PRISM 82 #define EM_AVR 83 #define EM_FR30 84 #define EM_D10V 85 #define EM_D30V 86 #define EM_V850 87 #define EM_M32R 88 #define EM_MN10300 89 #define EM_MN10200 90 #define EM_PJ 91 #define EM_OR1K 92 #define EM_OPENRISC 92 #define EM_ARC_A5 93 #define EM_ARC_COMPACT 93 #define EM_XTENSA 94 #define EM_VIDEOCORE 95 #define EM_TMM_GPP 96 #define EM_NS32K 97 #define EM_TPC 98 #define EM_SNP1K 99 #define EM_ST200 100 #define EM_IP2K 101 #define EM_MAX 102 #define EM_CR 103 #define EM_F2MC16 104 #define EM_MSP430 105 #define EM_BLACKFIN 106 #define EM_SE_C33 107 #define EM_SEP 108 #define EM_ARCA 109 #define EM_UNICORE 110 #define EM_EXCESS 111 #define EM_DXP 112 #define EM_ALTERA_NIOS2 113 #define EM_CRX 114 #define EM_XGATE 115 #define EM_C166 116 #define EM_M16C 117 #define EM_DSPIC30F 118 #define EM_CE 119 #define EM_M32C 120 #define EM_TSK3000 131 #define EM_RS08 132 #define EM_SHARC 133 #define EM_ECOG2 134 #define EM_SCORE7 135 #define EM_DSP24 136 #define EM_VIDEOCORE3 137 #define EM_LATTICEMICO32 138 #define EM_SE_C17 139 #define EM_TI_C6000 140 #define EM_TI_C2000 141 #define EM_TI_C5500 142 #define EM_TI_ARP32 143 #define EM_TI_PRU 144 #define EM_MMDSP_PLUS 160 #define EM_CYPRESS_M8C 161 #define EM_R32C 162 #define EM_TRIMEDIA 163 #define EM_QDSP6 164 #define EM_8051 165 #define EM_STXP7X 166 #define EM_NDS32 167 #define EM_ECOG1X 168 #define EM_MAXQ30 169 #define EM_XIMO16 170 #define EM_MANIK 171 #define EM_CRAYNV2 172 #define EM_RX 173 #define EM_METAG 174 #define EM_MCST_ELBRUS 175 #define EM_ECOG16 176 #define EM_CR16 177 #define EM_ETPU 178 #define EM_SLE9X 179 #define EM_L10M 180 #define EM_K10M 181 #define EM_AARCH64 183 #define EM_AVR32 185 #define EM_STM8 186 #define EM_TILE64 187 #define EM_TILEPRO 188 #define EM_MICROBLAZE 189 #define EM_CUDA 190 #define EM_TILEGX 191 #define EM_CLOUDSHIELD 192 #define EM_COREA_1ST 193 #define EM_COREA_2ND 194 #define EM_ARC_COMPACT2 195 #define EM_OPEN8 196 #define EM_RL78 197 #define EM_VIDEOCORE5 198 #define EM_78KOR 199 #define EM_56800EX 200 #define EM_BA1 201 #define EM_BA2 202 #define EM_XCORE 203 #define EM_MCHP_PIC 204 #define EM_KM32 210 #define EM_KMX32 211 #define EM_EMX16 212 #define EM_EMX8 213 #define EM_KVARC 214 #define EM_CDP 215 #define EM_COGE 216 #define EM_COOL 217 #define EM_NORC 218 #define EM_CSR_KALIMBA 219 #define EM_Z80 220 #define EM_VISIUM 221 #define EM_FT32 222 #define EM_MOXIE 223 #define EM_AMDGPU 224 #define EM_RISCV 243 #define EM_BPF 247 #define EM_NUM 248 #define EM_ALPHA 0x9026 #define EV_NONE 0 #define EV_CURRENT 1 #define EV_NUM 2 typedef struct { Elf32_Word sh_name; Elf32_Word sh_type; Elf32_Word sh_flags; Elf32_Addr sh_addr; Elf32_Off sh_offset; Elf32_Word sh_size; Elf32_Word sh_link; Elf32_Word sh_info; Elf32_Word sh_addralign; Elf32_Word sh_entsize; } Elf32_Shdr; typedef struct { Elf64_Word sh_name; Elf64_Word sh_type; Elf64_Xword sh_flags; Elf64_Addr sh_addr; Elf64_Off sh_offset; Elf64_Xword sh_size; Elf64_Word sh_link; Elf64_Word sh_info; Elf64_Xword sh_addralign; Elf64_Xword sh_entsize; } Elf64_Shdr; #define SHN_UNDEF 0 #define SHN_LORESERVE 0xff00 #define SHN_LOPROC 0xff00 #define SHN_BEFORE 0xff00 #define SHN_AFTER 0xff01 #define SHN_HIPROC 0xff1f #define SHN_LOOS 0xff20 #define SHN_HIOS 0xff3f #define SHN_ABS 0xfff1 #define SHN_COMMON 0xfff2 #define SHN_XINDEX 0xffff #define SHN_HIRESERVE 0xffff #define SHT_NULL 0 #define SHT_PROGBITS 1 #define SHT_SYMTAB 2 #define SHT_STRTAB 3 #define SHT_RELA 4 #define SHT_HASH 5 #define SHT_DYNAMIC 6 #define SHT_NOTE 7 #define SHT_NOBITS 8 #define SHT_REL 9 #define SHT_SHLIB 10 #define SHT_DYNSYM 11 #define SHT_INIT_ARRAY 14 #define SHT_FINI_ARRAY 15 #define SHT_PREINIT_ARRAY 16 #define SHT_GROUP 17 #define SHT_SYMTAB_SHNDX 18 #define SHT_NUM 19 #define SHT_LOOS 0x60000000 #define SHT_GNU_ATTRIBUTES 0x6ffffff5 #define SHT_GNU_HASH 0x6ffffff6 #define SHT_GNU_LIBLIST 0x6ffffff7 #define SHT_CHECKSUM 0x6ffffff8 #define SHT_LOSUNW 0x6ffffffa #define SHT_SUNW_move 0x6ffffffa #define SHT_SUNW_COMDAT 0x6ffffffb #define SHT_SUNW_syminfo 0x6ffffffc #define SHT_GNU_verdef 0x6ffffffd #define SHT_GNU_verneed 0x6ffffffe #define SHT_GNU_versym 0x6fffffff #define SHT_HISUNW 0x6fffffff #define SHT_HIOS 0x6fffffff #define SHT_LOPROC 0x70000000 #define SHT_HIPROC 0x7fffffff #define SHT_LOUSER 0x80000000 #define SHT_HIUSER 0x8fffffff #define SHF_WRITE (1 << 0) #define SHF_ALLOC (1 << 1) #define SHF_EXECINSTR (1 << 2) #define SHF_MERGE (1 << 4) #define SHF_STRINGS (1 << 5) #define SHF_INFO_LINK (1 << 6) #define SHF_LINK_ORDER (1 << 7) #define SHF_OS_NONCONFORMING (1 << 8) #define SHF_GROUP (1 << 9) #define SHF_TLS (1 << 10) #define SHF_COMPRESSED (1 << 11) #define SHF_MASKOS 0x0ff00000 #define SHF_MASKPROC 0xf0000000 #define SHF_ORDERED (1 << 30) #define SHF_EXCLUDE (1U << 31) typedef struct { Elf32_Word ch_type; Elf32_Word ch_size; Elf32_Word ch_addralign; } Elf32_Chdr; typedef struct { Elf64_Word ch_type; Elf64_Word ch_reserved; Elf64_Xword ch_size; Elf64_Xword ch_addralign; } Elf64_Chdr; #define ELFCOMPRESS_ZLIB 1 #define ELFCOMPRESS_LOOS 0x60000000 #define ELFCOMPRESS_HIOS 0x6fffffff #define ELFCOMPRESS_LOPROC 0x70000000 #define ELFCOMPRESS_HIPROC 0x7fffffff #define GRP_COMDAT 0x1 typedef struct { Elf32_Word st_name; Elf32_Addr st_value; Elf32_Word st_size; unsigned char st_info; unsigned char st_other; Elf32_Section st_shndx; } Elf32_Sym; typedef struct { Elf64_Word st_name; unsigned char st_info; unsigned char st_other; Elf64_Section st_shndx; Elf64_Addr st_value; Elf64_Xword st_size; } Elf64_Sym; typedef struct { Elf32_Half si_boundto; Elf32_Half si_flags; } Elf32_Syminfo; typedef struct { Elf64_Half si_boundto; Elf64_Half si_flags; } Elf64_Syminfo; #define SYMINFO_BT_SELF 0xffff #define SYMINFO_BT_PARENT 0xfffe #define SYMINFO_BT_LOWRESERVE 0xff00 #define SYMINFO_FLG_DIRECT 0x0001 #define SYMINFO_FLG_PASSTHRU 0x0002 #define SYMINFO_FLG_COPY 0x0004 #define SYMINFO_FLG_LAZYLOAD 0x0008 #define SYMINFO_NONE 0 #define SYMINFO_CURRENT 1 #define SYMINFO_NUM 2 #define ELF32_ST_BIND(val) (((unsigned char) (val)) >> 4) #define ELF32_ST_TYPE(val) ((val) & 0xf) #define ELF32_ST_INFO(bind, type) (((bind) << 4) + ((type) & 0xf)) #define ELF64_ST_BIND(val) ELF32_ST_BIND (val) #define ELF64_ST_TYPE(val) ELF32_ST_TYPE (val) #define ELF64_ST_INFO(bind, type) ELF32_ST_INFO ((bind), (type)) #define STB_LOCAL 0 #define STB_GLOBAL 1 #define STB_WEAK 2 #define STB_NUM 3 #define STB_LOOS 10 #define STB_GNU_UNIQUE 10 #define STB_HIOS 12 #define STB_LOPROC 13 #define STB_HIPROC 15 #define STT_NOTYPE 0 #define STT_OBJECT 1 #define STT_FUNC 2 #define STT_SECTION 3 #define STT_FILE 4 #define STT_COMMON 5 #define STT_TLS 6 #define STT_NUM 7 #define STT_LOOS 10 #define STT_GNU_IFUNC 10 #define STT_HIOS 12 #define STT_LOPROC 13 #define STT_HIPROC 15 #define STN_UNDEF 0 #define ELF32_ST_VISIBILITY(o) ((o) & 0x03) #define ELF64_ST_VISIBILITY(o) ELF32_ST_VISIBILITY (o) #define STV_DEFAULT 0 #define STV_INTERNAL 1 #define STV_HIDDEN 2 #define STV_PROTECTED 3 typedef struct { Elf32_Addr r_offset; Elf32_Word r_info; } Elf32_Rel; typedef struct { Elf64_Addr r_offset; Elf64_Xword r_info; } Elf64_Rel; typedef struct { Elf32_Addr r_offset; Elf32_Word r_info; Elf32_Sword r_addend; } Elf32_Rela; typedef struct { Elf64_Addr r_offset; Elf64_Xword r_info; Elf64_Sxword r_addend; } Elf64_Rela; #define ELF32_R_SYM(val) ((val) >> 8) #define ELF32_R_TYPE(val) ((val) & 0xff) #define ELF32_R_INFO(sym, type) (((sym) << 8) + ((type) & 0xff)) #define ELF64_R_SYM(i) ((i) >> 32) #define ELF64_R_TYPE(i) ((i) & 0xffffffff) #define ELF64_R_INFO(sym,type) ((((Elf64_Xword) (sym)) << 32) + (type)) typedef struct { Elf32_Word p_type; Elf32_Off p_offset; Elf32_Addr p_vaddr; Elf32_Addr p_paddr; Elf32_Word p_filesz; Elf32_Word p_memsz; Elf32_Word p_flags; Elf32_Word p_align; } Elf32_Phdr; typedef struct { Elf64_Word p_type; Elf64_Word p_flags; Elf64_Off p_offset; Elf64_Addr p_vaddr; Elf64_Addr p_paddr; Elf64_Xword p_filesz; Elf64_Xword p_memsz; Elf64_Xword p_align; } Elf64_Phdr; #define PT_NULL 0 #define PT_LOAD 1 #define PT_DYNAMIC 2 #define PT_INTERP 3 #define PT_NOTE 4 #define PT_SHLIB 5 #define PT_PHDR 6 #define PT_TLS 7 #define PT_NUM 8 #define PT_LOOS 0x60000000 #define PT_GNU_EH_FRAME 0x6474e550 #define PT_GNU_STACK 0x6474e551 #define PT_GNU_RELRO 0x6474e552 #define PT_LOSUNW 0x6ffffffa #define PT_SUNWBSS 0x6ffffffa #define PT_SUNWSTACK 0x6ffffffb #define PT_HISUNW 0x6fffffff #define PT_HIOS 0x6fffffff #define PT_LOPROC 0x70000000 #define PT_HIPROC 0x7fffffff #define PN_XNUM 0xffff #define PF_X (1 << 0) #define PF_W (1 << 1) #define PF_R (1 << 2) #define PF_MASKOS 0x0ff00000 #define PF_MASKPROC 0xf0000000 #define NT_PRSTATUS 1 #define NT_FPREGSET 2 #define NT_PRPSINFO 3 #define NT_PRXREG 4 #define NT_TASKSTRUCT 4 #define NT_PLATFORM 5 #define NT_AUXV 6 #define NT_GWINDOWS 7 #define NT_ASRS 8 #define NT_PSTATUS 10 #define NT_PSINFO 13 #define NT_PRCRED 14 #define NT_UTSNAME 15 #define NT_LWPSTATUS 16 #define NT_LWPSINFO 17 #define NT_PRFPXREG 20 #define NT_SIGINFO 0x53494749 #define NT_FILE 0x46494c45 #define NT_PRXFPREG 0x46e62b7f #define NT_PPC_VMX 0x100 #define NT_PPC_SPE 0x101 #define NT_PPC_VSX 0x102 #define NT_386_TLS 0x200 #define NT_386_IOPERM 0x201 #define NT_X86_XSTATE 0x202 #define NT_S390_HIGH_GPRS 0x300 #define NT_S390_TIMER 0x301 #define NT_S390_TODCMP 0x302 #define NT_S390_TODPREG 0x303 #define NT_S390_CTRS 0x304 #define NT_S390_PREFIX 0x305 #define NT_S390_LAST_BREAK 0x306 #define NT_S390_SYSTEM_CALL 0x307 #define NT_S390_TDB 0x308 #define NT_ARM_VFP 0x400 #define NT_ARM_TLS 0x401 #define NT_ARM_HW_BREAK 0x402 #define NT_ARM_HW_WATCH 0x403 #define NT_ARM_SYSTEM_CALL 0x404 #define NT_ARM_SVE 0x405 #define NT_METAG_CBUF 0x500 #define NT_METAG_RPIPE 0x501 #define NT_METAG_TLS 0x502 #define NT_VERSION 1 typedef struct { Elf32_Sword d_tag; union { Elf32_Word d_val; Elf32_Addr d_ptr; } d_un; } Elf32_Dyn; typedef struct { Elf64_Sxword d_tag; union { Elf64_Xword d_val; Elf64_Addr d_ptr; } d_un; } Elf64_Dyn; #define DT_NULL 0 #define DT_NEEDED 1 #define DT_PLTRELSZ 2 #define DT_PLTGOT 3 #define DT_HASH 4 #define DT_STRTAB 5 #define DT_SYMTAB 6 #define DT_RELA 7 #define DT_RELASZ 8 #define DT_RELAENT 9 #define DT_STRSZ 10 #define DT_SYMENT 11 #define DT_INIT 12 #define DT_FINI 13 #define DT_SONAME 14 #define DT_RPATH 15 #define DT_SYMBOLIC 16 #define DT_REL 17 #define DT_RELSZ 18 #define DT_RELENT 19 #define DT_PLTREL 20 #define DT_DEBUG 21 #define DT_TEXTREL 22 #define DT_JMPREL 23 #define DT_BIND_NOW 24 #define DT_INIT_ARRAY 25 #define DT_FINI_ARRAY 26 #define DT_INIT_ARRAYSZ 27 #define DT_FINI_ARRAYSZ 28 #define DT_RUNPATH 29 #define DT_FLAGS 30 #define DT_ENCODING 32 #define DT_PREINIT_ARRAY 32 #define DT_PREINIT_ARRAYSZ 33 #define DT_NUM 34 #define DT_LOOS 0x6000000d #define DT_HIOS 0x6ffff000 #define DT_LOPROC 0x70000000 #define DT_HIPROC 0x7fffffff #define DT_PROCNUM DT_MIPS_NUM #define DT_VALRNGLO 0x6ffffd00 #define DT_GNU_PRELINKED 0x6ffffdf5 #define DT_GNU_CONFLICTSZ 0x6ffffdf6 #define DT_GNU_LIBLISTSZ 0x6ffffdf7 #define DT_CHECKSUM 0x6ffffdf8 #define DT_PLTPADSZ 0x6ffffdf9 #define DT_MOVEENT 0x6ffffdfa #define DT_MOVESZ 0x6ffffdfb #define DT_FEATURE_1 0x6ffffdfc #define DT_POSFLAG_1 0x6ffffdfd #define DT_SYMINSZ 0x6ffffdfe #define DT_SYMINENT 0x6ffffdff #define DT_VALRNGHI 0x6ffffdff #define DT_VALTAGIDX(tag) (DT_VALRNGHI - (tag)) #define DT_VALNUM 12 #define DT_ADDRRNGLO 0x6ffffe00 #define DT_GNU_HASH 0x6ffffef5 #define DT_TLSDESC_PLT 0x6ffffef6 #define DT_TLSDESC_GOT 0x6ffffef7 #define DT_GNU_CONFLICT 0x6ffffef8 #define DT_GNU_LIBLIST 0x6ffffef9 #define DT_CONFIG 0x6ffffefa #define DT_DEPAUDIT 0x6ffffefb #define DT_AUDIT 0x6ffffefc #define DT_PLTPAD 0x6ffffefd #define DT_MOVETAB 0x6ffffefe #define DT_SYMINFO 0x6ffffeff #define DT_ADDRRNGHI 0x6ffffeff #define DT_ADDRTAGIDX(tag) (DT_ADDRRNGHI - (tag)) #define DT_ADDRNUM 11 #define DT_VERSYM 0x6ffffff0 #define DT_RELACOUNT 0x6ffffff9 #define DT_RELCOUNT 0x6ffffffa #define DT_FLAGS_1 0x6ffffffb #define DT_VERDEF 0x6ffffffc #define DT_VERDEFNUM 0x6ffffffd #define DT_VERNEED 0x6ffffffe #define DT_VERNEEDNUM 0x6fffffff #define DT_VERSIONTAGIDX(tag) (DT_VERNEEDNUM - (tag)) #define DT_VERSIONTAGNUM 16 #define DT_AUXILIARY 0x7ffffffd #define DT_FILTER 0x7fffffff #define DT_EXTRATAGIDX(tag) ((Elf32_Word)-((Elf32_Sword) (tag) <<1>>1)-1) #define DT_EXTRANUM 3 #define DF_ORIGIN 0x00000001 #define DF_SYMBOLIC 0x00000002 #define DF_TEXTREL 0x00000004 #define DF_BIND_NOW 0x00000008 #define DF_STATIC_TLS 0x00000010 #define DF_1_NOW 0x00000001 #define DF_1_GLOBAL 0x00000002 #define DF_1_GROUP 0x00000004 #define DF_1_NODELETE 0x00000008 #define DF_1_LOADFLTR 0x00000010 #define DF_1_INITFIRST 0x00000020 #define DF_1_NOOPEN 0x00000040 #define DF_1_ORIGIN 0x00000080 #define DF_1_DIRECT 0x00000100 #define DF_1_TRANS 0x00000200 #define DF_1_INTERPOSE 0x00000400 #define DF_1_NODEFLIB 0x00000800 #define DF_1_NODUMP 0x00001000 #define DF_1_CONFALT 0x00002000 #define DF_1_ENDFILTEE 0x00004000 #define DF_1_DISPRELDNE 0x00008000 #define DF_1_DISPRELPND 0x00010000 #define DF_1_NODIRECT 0x00020000 #define DF_1_IGNMULDEF 0x00040000 #define DF_1_NOKSYMS 0x00080000 #define DF_1_NOHDR 0x00100000 #define DF_1_EDITED 0x00200000 #define DF_1_NORELOC 0x00400000 #define DF_1_SYMINTPOSE 0x00800000 #define DF_1_GLOBAUDIT 0x01000000 #define DF_1_SINGLETON 0x02000000 #define DTF_1_PARINIT 0x00000001 #define DTF_1_CONFEXP 0x00000002 #define DF_P1_LAZYLOAD 0x00000001 #define DF_P1_GROUPPERM 0x00000002 typedef struct { Elf32_Half vd_version; Elf32_Half vd_flags; Elf32_Half vd_ndx; Elf32_Half vd_cnt; Elf32_Word vd_hash; Elf32_Word vd_aux; Elf32_Word vd_next; } Elf32_Verdef; typedef struct { Elf64_Half vd_version; Elf64_Half vd_flags; Elf64_Half vd_ndx; Elf64_Half vd_cnt; Elf64_Word vd_hash; Elf64_Word vd_aux; Elf64_Word vd_next; } Elf64_Verdef; #define VER_DEF_NONE 0 #define VER_DEF_CURRENT 1 #define VER_DEF_NUM 2 #define VER_FLG_BASE 0x1 #define VER_FLG_WEAK 0x2 #define VER_NDX_LOCAL 0 #define VER_NDX_GLOBAL 1 #define VER_NDX_LORESERVE 0xff00 #define VER_NDX_ELIMINATE 0xff01 typedef struct { Elf32_Word vda_name; Elf32_Word vda_next; } Elf32_Verdaux; typedef struct { Elf64_Word vda_name; Elf64_Word vda_next; } Elf64_Verdaux; typedef struct { Elf32_Half vn_version; Elf32_Half vn_cnt; Elf32_Word vn_file; Elf32_Word vn_aux; Elf32_Word vn_next; } Elf32_Verneed; typedef struct { Elf64_Half vn_version; Elf64_Half vn_cnt; Elf64_Word vn_file; Elf64_Word vn_aux; Elf64_Word vn_next; } Elf64_Verneed; #define VER_NEED_NONE 0 #define VER_NEED_CURRENT 1 #define VER_NEED_NUM 2 typedef struct { Elf32_Word vna_hash; Elf32_Half vna_flags; Elf32_Half vna_other; Elf32_Word vna_name; Elf32_Word vna_next; } Elf32_Vernaux; typedef struct { Elf64_Word vna_hash; Elf64_Half vna_flags; Elf64_Half vna_other; Elf64_Word vna_name; Elf64_Word vna_next; } Elf64_Vernaux; #define VER_FLG_WEAK 0x2 typedef struct { uint32_t a_type; union { uint32_t a_val; } a_un; } Elf32_auxv_t; typedef struct { uint64_t a_type; union { uint64_t a_val; } a_un; } Elf64_auxv_t; #define AT_NULL 0 #define AT_IGNORE 1 #define AT_EXECFD 2 #define AT_PHDR 3 #define AT_PHENT 4 #define AT_PHNUM 5 #define AT_PAGESZ 6 #define AT_BASE 7 #define AT_FLAGS 8 #define AT_ENTRY 9 #define AT_NOTELF 10 #define AT_UID 11 #define AT_EUID 12 #define AT_GID 13 #define AT_EGID 14 #define AT_CLKTCK 17 #define AT_PLATFORM 15 #define AT_HWCAP 16 #define AT_FPUCW 18 #define AT_DCACHEBSIZE 19 #define AT_ICACHEBSIZE 20 #define AT_UCACHEBSIZE 21 #define AT_IGNOREPPC 22 #define AT_SECURE 23 #define AT_BASE_PLATFORM 24 #define AT_RANDOM 25 #define AT_HWCAP2 26 #define AT_EXECFN 31 #define AT_SYSINFO 32 #define AT_SYSINFO_EHDR 33 #define AT_L1I_CACHESHAPE 34 #define AT_L1D_CACHESHAPE 35 #define AT_L2_CACHESHAPE 36 #define AT_L3_CACHESHAPE 37 typedef struct { Elf32_Word n_namesz; Elf32_Word n_descsz; Elf32_Word n_type; } Elf32_Nhdr; typedef struct { Elf64_Word n_namesz; Elf64_Word n_descsz; Elf64_Word n_type; } Elf64_Nhdr; #define ELF_NOTE_SOLARIS "SUNW Solaris" #define ELF_NOTE_GNU "GNU" #define ELF_NOTE_PAGESIZE_HINT 1 #define NT_GNU_ABI_TAG 1 #define ELF_NOTE_ABI NT_GNU_ABI_TAG #define ELF_NOTE_OS_LINUX 0 #define ELF_NOTE_OS_GNU 1 #define ELF_NOTE_OS_SOLARIS2 2 #define ELF_NOTE_OS_FREEBSD 3 #define NT_GNU_BUILD_ID 3 #define NT_GNU_GOLD_VERSION 4 typedef struct { Elf32_Xword m_value; Elf32_Word m_info; Elf32_Word m_poffset; Elf32_Half m_repeat; Elf32_Half m_stride; } Elf32_Move; typedef struct { Elf64_Xword m_value; Elf64_Xword m_info; Elf64_Xword m_poffset; Elf64_Half m_repeat; Elf64_Half m_stride; } Elf64_Move; #define ELF32_M_SYM(info) ((info) >> 8) #define ELF32_M_SIZE(info) ((unsigned char) (info)) #define ELF32_M_INFO(sym, size) (((sym) << 8) + (unsigned char) (size)) #define ELF64_M_SYM(info) ELF32_M_SYM (info) #define ELF64_M_SIZE(info) ELF32_M_SIZE (info) #define ELF64_M_INFO(sym, size) ELF32_M_INFO (sym, size) #define EF_CPU32 0x00810000 #define R_68K_NONE 0 #define R_68K_32 1 #define R_68K_16 2 #define R_68K_8 3 #define R_68K_PC32 4 #define R_68K_PC16 5 #define R_68K_PC8 6 #define R_68K_GOT32 7 #define R_68K_GOT16 8 #define R_68K_GOT8 9 #define R_68K_GOT32O 10 #define R_68K_GOT16O 11 #define R_68K_GOT8O 12 #define R_68K_PLT32 13 #define R_68K_PLT16 14 #define R_68K_PLT8 15 #define R_68K_PLT32O 16 #define R_68K_PLT16O 17 #define R_68K_PLT8O 18 #define R_68K_COPY 19 #define R_68K_GLOB_DAT 20 #define R_68K_JMP_SLOT 21 #define R_68K_RELATIVE 22 #define R_68K_NUM 23 #define R_386_NONE 0 #define R_386_32 1 #define R_386_PC32 2 #define R_386_GOT32 3 #define R_386_PLT32 4 #define R_386_COPY 5 #define R_386_GLOB_DAT 6 #define R_386_JMP_SLOT 7 #define R_386_RELATIVE 8 #define R_386_GOTOFF 9 #define R_386_GOTPC 10 #define R_386_32PLT 11 #define R_386_TLS_TPOFF 14 #define R_386_TLS_IE 15 #define R_386_TLS_GOTIE 16 #define R_386_TLS_LE 17 #define R_386_TLS_GD 18 #define R_386_TLS_LDM 19 #define R_386_16 20 #define R_386_PC16 21 #define R_386_8 22 #define R_386_PC8 23 #define R_386_TLS_GD_32 24 #define R_386_TLS_GD_PUSH 25 #define R_386_TLS_GD_CALL 26 #define R_386_TLS_GD_POP 27 #define R_386_TLS_LDM_32 28 #define R_386_TLS_LDM_PUSH 29 #define R_386_TLS_LDM_CALL 30 #define R_386_TLS_LDM_POP 31 #define R_386_TLS_LDO_32 32 #define R_386_TLS_IE_32 33 #define R_386_TLS_LE_32 34 #define R_386_TLS_DTPMOD32 35 #define R_386_TLS_DTPOFF32 36 #define R_386_TLS_TPOFF32 37 #define R_386_SIZE32 38 #define R_386_TLS_GOTDESC 39 #define R_386_TLS_DESC_CALL 40 #define R_386_TLS_DESC 41 #define R_386_IRELATIVE 42 #define R_386_GOT32X 43 #define R_386_NUM 44 #define STT_SPARC_REGISTER 13 #define EF_SPARCV9_MM 3 #define EF_SPARCV9_TSO 0 #define EF_SPARCV9_PSO 1 #define EF_SPARCV9_RMO 2 #define EF_SPARC_LEDATA 0x800000 #define EF_SPARC_EXT_MASK 0xFFFF00 #define EF_SPARC_32PLUS 0x000100 #define EF_SPARC_SUN_US1 0x000200 #define EF_SPARC_HAL_R1 0x000400 #define EF_SPARC_SUN_US3 0x000800 #define R_SPARC_NONE 0 #define R_SPARC_8 1 #define R_SPARC_16 2 #define R_SPARC_32 3 #define R_SPARC_DISP8 4 #define R_SPARC_DISP16 5 #define R_SPARC_DISP32 6 #define R_SPARC_WDISP30 7 #define R_SPARC_WDISP22 8 #define R_SPARC_HI22 9 #define R_SPARC_22 10 #define R_SPARC_13 11 #define R_SPARC_LO10 12 #define R_SPARC_GOT10 13 #define R_SPARC_GOT13 14 #define R_SPARC_GOT22 15 #define R_SPARC_PC10 16 #define R_SPARC_PC22 17 #define R_SPARC_WPLT30 18 #define R_SPARC_COPY 19 #define R_SPARC_GLOB_DAT 20 #define R_SPARC_JMP_SLOT 21 #define R_SPARC_RELATIVE 22 #define R_SPARC_UA32 23 #define R_SPARC_PLT32 24 #define R_SPARC_HIPLT22 25 #define R_SPARC_LOPLT10 26 #define R_SPARC_PCPLT32 27 #define R_SPARC_PCPLT22 28 #define R_SPARC_PCPLT10 29 #define R_SPARC_10 30 #define R_SPARC_11 31 #define R_SPARC_64 32 #define R_SPARC_OLO10 33 #define R_SPARC_HH22 34 #define R_SPARC_HM10 35 #define R_SPARC_LM22 36 #define R_SPARC_PC_HH22 37 #define R_SPARC_PC_HM10 38 #define R_SPARC_PC_LM22 39 #define R_SPARC_WDISP16 40 #define R_SPARC_WDISP19 41 #define R_SPARC_GLOB_JMP 42 #define R_SPARC_7 43 #define R_SPARC_5 44 #define R_SPARC_6 45 #define R_SPARC_DISP64 46 #define R_SPARC_PLT64 47 #define R_SPARC_HIX22 48 #define R_SPARC_LOX10 49 #define R_SPARC_H44 50 #define R_SPARC_M44 51 #define R_SPARC_L44 52 #define R_SPARC_REGISTER 53 #define R_SPARC_UA64 54 #define R_SPARC_UA16 55 #define R_SPARC_TLS_GD_HI22 56 #define R_SPARC_TLS_GD_LO10 57 #define R_SPARC_TLS_GD_ADD 58 #define R_SPARC_TLS_GD_CALL 59 #define R_SPARC_TLS_LDM_HI22 60 #define R_SPARC_TLS_LDM_LO10 61 #define R_SPARC_TLS_LDM_ADD 62 #define R_SPARC_TLS_LDM_CALL 63 #define R_SPARC_TLS_LDO_HIX22 64 #define R_SPARC_TLS_LDO_LOX10 65 #define R_SPARC_TLS_LDO_ADD 66 #define R_SPARC_TLS_IE_HI22 67 #define R_SPARC_TLS_IE_LO10 68 #define R_SPARC_TLS_IE_LD 69 #define R_SPARC_TLS_IE_LDX 70 #define R_SPARC_TLS_IE_ADD 71 #define R_SPARC_TLS_LE_HIX22 72 #define R_SPARC_TLS_LE_LOX10 73 #define R_SPARC_TLS_DTPMOD32 74 #define R_SPARC_TLS_DTPMOD64 75 #define R_SPARC_TLS_DTPOFF32 76 #define R_SPARC_TLS_DTPOFF64 77 #define R_SPARC_TLS_TPOFF32 78 #define R_SPARC_TLS_TPOFF64 79 #define R_SPARC_GOTDATA_HIX22 80 #define R_SPARC_GOTDATA_LOX10 81 #define R_SPARC_GOTDATA_OP_HIX22 82 #define R_SPARC_GOTDATA_OP_LOX10 83 #define R_SPARC_GOTDATA_OP 84 #define R_SPARC_H34 85 #define R_SPARC_SIZE32 86 #define R_SPARC_SIZE64 87 #define R_SPARC_GNU_VTINHERIT 250 #define R_SPARC_GNU_VTENTRY 251 #define R_SPARC_REV32 252 #define R_SPARC_NUM 253 #define DT_SPARC_REGISTER 0x70000001 #define DT_SPARC_NUM 2 #define EF_MIPS_NOREORDER 1 #define EF_MIPS_PIC 2 #define EF_MIPS_CPIC 4 #define EF_MIPS_XGOT 8 #define EF_MIPS_64BIT_WHIRL 16 #define EF_MIPS_ABI2 32 #define EF_MIPS_ABI_ON32 64 #define EF_MIPS_FP64 512 #define EF_MIPS_NAN2008 1024 #define EF_MIPS_ARCH 0xf0000000 #define EF_MIPS_ARCH_1 0x00000000 #define EF_MIPS_ARCH_2 0x10000000 #define EF_MIPS_ARCH_3 0x20000000 #define EF_MIPS_ARCH_4 0x30000000 #define EF_MIPS_ARCH_5 0x40000000 #define EF_MIPS_ARCH_32 0x50000000 #define EF_MIPS_ARCH_64 0x60000000 #define EF_MIPS_ARCH_32R2 0x70000000 #define EF_MIPS_ARCH_64R2 0x80000000 #define E_MIPS_ARCH_1 0x00000000 #define E_MIPS_ARCH_2 0x10000000 #define E_MIPS_ARCH_3 0x20000000 #define E_MIPS_ARCH_4 0x30000000 #define E_MIPS_ARCH_5 0x40000000 #define E_MIPS_ARCH_32 0x50000000 #define E_MIPS_ARCH_64 0x60000000 #define SHN_MIPS_ACOMMON 0xff00 #define SHN_MIPS_TEXT 0xff01 #define SHN_MIPS_DATA 0xff02 #define SHN_MIPS_SCOMMON 0xff03 #define SHN_MIPS_SUNDEFINED 0xff04 #define SHT_MIPS_LIBLIST 0x70000000 #define SHT_MIPS_MSYM 0x70000001 #define SHT_MIPS_CONFLICT 0x70000002 #define SHT_MIPS_GPTAB 0x70000003 #define SHT_MIPS_UCODE 0x70000004 #define SHT_MIPS_DEBUG 0x70000005 #define SHT_MIPS_REGINFO 0x70000006 #define SHT_MIPS_PACKAGE 0x70000007 #define SHT_MIPS_PACKSYM 0x70000008 #define SHT_MIPS_RELD 0x70000009 #define SHT_MIPS_IFACE 0x7000000b #define SHT_MIPS_CONTENT 0x7000000c #define SHT_MIPS_OPTIONS 0x7000000d #define SHT_MIPS_SHDR 0x70000010 #define SHT_MIPS_FDESC 0x70000011 #define SHT_MIPS_EXTSYM 0x70000012 #define SHT_MIPS_DENSE 0x70000013 #define SHT_MIPS_PDESC 0x70000014 #define SHT_MIPS_LOCSYM 0x70000015 #define SHT_MIPS_AUXSYM 0x70000016 #define SHT_MIPS_OPTSYM 0x70000017 #define SHT_MIPS_LOCSTR 0x70000018 #define SHT_MIPS_LINE 0x70000019 #define SHT_MIPS_RFDESC 0x7000001a #define SHT_MIPS_DELTASYM 0x7000001b #define SHT_MIPS_DELTAINST 0x7000001c #define SHT_MIPS_DELTACLASS 0x7000001d #define SHT_MIPS_DWARF 0x7000001e #define SHT_MIPS_DELTADECL 0x7000001f #define SHT_MIPS_SYMBOL_LIB 0x70000020 #define SHT_MIPS_EVENTS 0x70000021 #define SHT_MIPS_TRANSLATE 0x70000022 #define SHT_MIPS_PIXIE 0x70000023 #define SHT_MIPS_XLATE 0x70000024 #define SHT_MIPS_XLATE_DEBUG 0x70000025 #define SHT_MIPS_WHIRL 0x70000026 #define SHT_MIPS_EH_REGION 0x70000027 #define SHT_MIPS_XLATE_OLD 0x70000028 #define SHT_MIPS_PDR_EXCEPTION 0x70000029 #define SHF_MIPS_GPREL 0x10000000 #define SHF_MIPS_MERGE 0x20000000 #define SHF_MIPS_ADDR 0x40000000 #define SHF_MIPS_STRINGS 0x80000000 #define SHF_MIPS_NOSTRIP 0x08000000 #define SHF_MIPS_LOCAL 0x04000000 #define SHF_MIPS_NAMES 0x02000000 #define SHF_MIPS_NODUPE 0x01000000 #define STO_MIPS_DEFAULT 0x0 #define STO_MIPS_INTERNAL 0x1 #define STO_MIPS_HIDDEN 0x2 #define STO_MIPS_PROTECTED 0x3 #define STO_MIPS_PLT 0x8 #define STO_MIPS_SC_ALIGN_UNUSED 0xff #define STB_MIPS_SPLIT_COMMON 13 typedef union { struct { Elf32_Word gt_current_g_value; Elf32_Word gt_unused; } gt_header; struct { Elf32_Word gt_g_value; Elf32_Word gt_bytes; } gt_entry; } Elf32_gptab; typedef struct { Elf32_Word ri_gprmask; Elf32_Word ri_cprmask[4]; Elf32_Sword ri_gp_value; } Elf32_RegInfo; typedef struct { unsigned char kind; unsigned char size; Elf32_Section section; Elf32_Word info; } Elf_Options; #define ODK_NULL 0 #define ODK_REGINFO 1 #define ODK_EXCEPTIONS 2 #define ODK_PAD 3 #define ODK_HWPATCH 4 #define ODK_FILL 5 #define ODK_TAGS 6 #define ODK_HWAND 7 #define ODK_HWOR 8 #define OEX_FPU_MIN 0x1f #define OEX_FPU_MAX 0x1f00 #define OEX_PAGE0 0x10000 #define OEX_SMM 0x20000 #define OEX_FPDBUG 0x40000 #define OEX_PRECISEFP OEX_FPDBUG #define OEX_DISMISS 0x80000 #define OEX_FPU_INVAL 0x10 #define OEX_FPU_DIV0 0x08 #define OEX_FPU_OFLO 0x04 #define OEX_FPU_UFLO 0x02 #define OEX_FPU_INEX 0x01 #define OHW_R4KEOP 0x1 #define OHW_R8KPFETCH 0x2 #define OHW_R5KEOP 0x4 #define OHW_R5KCVTL 0x8 #define OPAD_PREFIX 0x1 #define OPAD_POSTFIX 0x2 #define OPAD_SYMBOL 0x4 typedef struct { Elf32_Word hwp_flags1; Elf32_Word hwp_flags2; } Elf_Options_Hw; #define OHWA0_R4KEOP_CHECKED 0x00000001 #define OHWA1_R4KEOP_CLEAN 0x00000002 #define R_MIPS_NONE 0 #define R_MIPS_16 1 #define R_MIPS_32 2 #define R_MIPS_REL32 3 #define R_MIPS_26 4 #define R_MIPS_HI16 5 #define R_MIPS_LO16 6 #define R_MIPS_GPREL16 7 #define R_MIPS_LITERAL 8 #define R_MIPS_GOT16 9 #define R_MIPS_PC16 10 #define R_MIPS_CALL16 11 #define R_MIPS_GPREL32 12 #define R_MIPS_SHIFT5 16 #define R_MIPS_SHIFT6 17 #define R_MIPS_64 18 #define R_MIPS_GOT_DISP 19 #define R_MIPS_GOT_PAGE 20 #define R_MIPS_GOT_OFST 21 #define R_MIPS_GOT_HI16 22 #define R_MIPS_GOT_LO16 23 #define R_MIPS_SUB 24 #define R_MIPS_INSERT_A 25 #define R_MIPS_INSERT_B 26 #define R_MIPS_DELETE 27 #define R_MIPS_HIGHER 28 #define R_MIPS_HIGHEST 29 #define R_MIPS_CALL_HI16 30 #define R_MIPS_CALL_LO16 31 #define R_MIPS_SCN_DISP 32 #define R_MIPS_REL16 33 #define R_MIPS_ADD_IMMEDIATE 34 #define R_MIPS_PJUMP 35 #define R_MIPS_RELGOT 36 #define R_MIPS_JALR 37 #define R_MIPS_TLS_DTPMOD32 38 #define R_MIPS_TLS_DTPREL32 39 #define R_MIPS_TLS_DTPMOD64 40 #define R_MIPS_TLS_DTPREL64 41 #define R_MIPS_TLS_GD 42 #define R_MIPS_TLS_LDM 43 #define R_MIPS_TLS_DTPREL_HI16 44 #define R_MIPS_TLS_DTPREL_LO16 45 #define R_MIPS_TLS_GOTTPREL 46 #define R_MIPS_TLS_TPREL32 47 #define R_MIPS_TLS_TPREL64 48 #define R_MIPS_TLS_TPREL_HI16 49 #define R_MIPS_TLS_TPREL_LO16 50 #define R_MIPS_GLOB_DAT 51 #define R_MIPS_COPY 126 #define R_MIPS_JUMP_SLOT 127 #define R_MIPS_NUM 128 #define PT_MIPS_REGINFO 0x70000000 #define PT_MIPS_RTPROC 0x70000001 #define PT_MIPS_OPTIONS 0x70000002 #define PT_MIPS_ABIFLAGS 0x70000003 #define PF_MIPS_LOCAL 0x10000000 #define DT_MIPS_RLD_VERSION 0x70000001 #define DT_MIPS_TIME_STAMP 0x70000002 #define DT_MIPS_ICHECKSUM 0x70000003 #define DT_MIPS_IVERSION 0x70000004 #define DT_MIPS_FLAGS 0x70000005 #define DT_MIPS_BASE_ADDRESS 0x70000006 #define DT_MIPS_MSYM 0x70000007 #define DT_MIPS_CONFLICT 0x70000008 #define DT_MIPS_LIBLIST 0x70000009 #define DT_MIPS_LOCAL_GOTNO 0x7000000a #define DT_MIPS_CONFLICTNO 0x7000000b #define DT_MIPS_LIBLISTNO 0x70000010 #define DT_MIPS_SYMTABNO 0x70000011 #define DT_MIPS_UNREFEXTNO 0x70000012 #define DT_MIPS_GOTSYM 0x70000013 #define DT_MIPS_HIPAGENO 0x70000014 #define DT_MIPS_RLD_MAP 0x70000016 #define DT_MIPS_DELTA_CLASS 0x70000017 #define DT_MIPS_DELTA_CLASS_NO 0x70000018 #define DT_MIPS_DELTA_INSTANCE 0x70000019 #define DT_MIPS_DELTA_INSTANCE_NO 0x7000001a #define DT_MIPS_DELTA_RELOC 0x7000001b #define DT_MIPS_DELTA_RELOC_NO 0x7000001c #define DT_MIPS_DELTA_SYM 0x7000001d #define DT_MIPS_DELTA_SYM_NO 0x7000001e #define DT_MIPS_DELTA_CLASSSYM 0x70000020 #define DT_MIPS_DELTA_CLASSSYM_NO 0x70000021 #define DT_MIPS_CXX_FLAGS 0x70000022 #define DT_MIPS_PIXIE_INIT 0x70000023 #define DT_MIPS_SYMBOL_LIB 0x70000024 #define DT_MIPS_LOCALPAGE_GOTIDX 0x70000025 #define DT_MIPS_LOCAL_GOTIDX 0x70000026 #define DT_MIPS_HIDDEN_GOTIDX 0x70000027 #define DT_MIPS_PROTECTED_GOTIDX 0x70000028 #define DT_MIPS_OPTIONS 0x70000029 #define DT_MIPS_INTERFACE 0x7000002a #define DT_MIPS_DYNSTR_ALIGN 0x7000002b #define DT_MIPS_INTERFACE_SIZE 0x7000002c #define DT_MIPS_RLD_TEXT_RESOLVE_ADDR 0x7000002d #define DT_MIPS_PERF_SUFFIX 0x7000002e #define DT_MIPS_COMPACT_SIZE 0x7000002f #define DT_MIPS_GP_VALUE 0x70000030 #define DT_MIPS_AUX_DYNAMIC 0x70000031 #define DT_MIPS_PLTGOT 0x70000032 #define DT_MIPS_RWPLT 0x70000034 #define DT_MIPS_RLD_MAP_REL 0x70000035 #define DT_MIPS_NUM 0x36 #define RHF_NONE 0 #define RHF_QUICKSTART (1 << 0) #define RHF_NOTPOT (1 << 1) #define RHF_NO_LIBRARY_REPLACEMENT (1 << 2) #define RHF_NO_MOVE (1 << 3) #define RHF_SGI_ONLY (1 << 4) #define RHF_GUARANTEE_INIT (1 << 5) #define RHF_DELTA_C_PLUS_PLUS (1 << 6) #define RHF_GUARANTEE_START_INIT (1 << 7) #define RHF_PIXIE (1 << 8) #define RHF_DEFAULT_DELAY_LOAD (1 << 9) #define RHF_REQUICKSTART (1 << 10) #define RHF_REQUICKSTARTED (1 << 11) #define RHF_CORD (1 << 12) #define RHF_NO_UNRES_UNDEF (1 << 13) #define RHF_RLD_ORDER_SAFE (1 << 14) typedef struct { Elf32_Word l_name; Elf32_Word l_time_stamp; Elf32_Word l_checksum; Elf32_Word l_version; Elf32_Word l_flags; } Elf32_Lib; typedef struct { Elf64_Word l_name; Elf64_Word l_time_stamp; Elf64_Word l_checksum; Elf64_Word l_version; Elf64_Word l_flags; } Elf64_Lib; #define LL_NONE 0 #define LL_EXACT_MATCH (1 << 0) #define LL_IGNORE_INT_VER (1 << 1) #define LL_REQUIRE_MINOR (1 << 2) #define LL_EXPORTS (1 << 3) #define LL_DELAY_LOAD (1 << 4) #define LL_DELTA (1 << 5) typedef Elf32_Addr Elf32_Conflict; typedef struct { Elf32_Half version; unsigned char isa_level; unsigned char isa_rev; unsigned char gpr_size; unsigned char cpr1_size; unsigned char cpr2_size; unsigned char fp_abi; Elf32_Word isa_ext; Elf32_Word ases; Elf32_Word flags1; Elf32_Word flags2; } Elf_MIPS_ABIFlags_v0; #define MIPS_AFL_REG_NONE 0x00 #define MIPS_AFL_REG_32 0x01 #define MIPS_AFL_REG_64 0x02 #define MIPS_AFL_REG_128 0x03 #define MIPS_AFL_ASE_DSP 0x00000001 #define MIPS_AFL_ASE_DSPR2 0x00000002 #define MIPS_AFL_ASE_EVA 0x00000004 #define MIPS_AFL_ASE_MCU 0x00000008 #define MIPS_AFL_ASE_MDMX 0x00000010 #define MIPS_AFL_ASE_MIPS3D 0x00000020 #define MIPS_AFL_ASE_MT 0x00000040 #define MIPS_AFL_ASE_SMARTMIPS 0x00000080 #define MIPS_AFL_ASE_VIRT 0x00000100 #define MIPS_AFL_ASE_MSA 0x00000200 #define MIPS_AFL_ASE_MIPS16 0x00000400 #define MIPS_AFL_ASE_MICROMIPS 0x00000800 #define MIPS_AFL_ASE_XPA 0x00001000 #define MIPS_AFL_ASE_MASK 0x00001fff #define MIPS_AFL_EXT_XLR 1 #define MIPS_AFL_EXT_OCTEON2 2 #define MIPS_AFL_EXT_OCTEONP 3 #define MIPS_AFL_EXT_LOONGSON_3A 4 #define MIPS_AFL_EXT_OCTEON 5 #define MIPS_AFL_EXT_5900 6 #define MIPS_AFL_EXT_4650 7 #define MIPS_AFL_EXT_4010 8 #define MIPS_AFL_EXT_4100 9 #define MIPS_AFL_EXT_3900 10 #define MIPS_AFL_EXT_10000 11 #define MIPS_AFL_EXT_SB1 12 #define MIPS_AFL_EXT_4111 13 #define MIPS_AFL_EXT_4120 14 #define MIPS_AFL_EXT_5400 15 #define MIPS_AFL_EXT_5500 16 #define MIPS_AFL_EXT_LOONGSON_2E 17 #define MIPS_AFL_EXT_LOONGSON_2F 18 #define MIPS_AFL_FLAGS1_ODDSPREG 1 enum { Val_GNU_MIPS_ABI_FP_ANY = 0, Val_GNU_MIPS_ABI_FP_DOUBLE = 1, Val_GNU_MIPS_ABI_FP_SINGLE = 2, Val_GNU_MIPS_ABI_FP_SOFT = 3, Val_GNU_MIPS_ABI_FP_OLD_64 = 4, Val_GNU_MIPS_ABI_FP_XX = 5, Val_GNU_MIPS_ABI_FP_64 = 6, Val_GNU_MIPS_ABI_FP_64A = 7, Val_GNU_MIPS_ABI_FP_MAX = 7 }; #define EF_PARISC_TRAPNIL 0x00010000 #define EF_PARISC_EXT 0x00020000 #define EF_PARISC_LSB 0x00040000 #define EF_PARISC_WIDE 0x00080000 #define EF_PARISC_NO_KABP 0x00100000 #define EF_PARISC_LAZYSWAP 0x00400000 #define EF_PARISC_ARCH 0x0000ffff #define EFA_PARISC_1_0 0x020b #define EFA_PARISC_1_1 0x0210 #define EFA_PARISC_2_0 0x0214 #define SHN_PARISC_ANSI_COMMON 0xff00 #define SHN_PARISC_HUGE_COMMON 0xff01 #define SHT_PARISC_EXT 0x70000000 #define SHT_PARISC_UNWIND 0x70000001 #define SHT_PARISC_DOC 0x70000002 #define SHF_PARISC_SHORT 0x20000000 #define SHF_PARISC_HUGE 0x40000000 #define SHF_PARISC_SBP 0x80000000 #define STT_PARISC_MILLICODE 13 #define STT_HP_OPAQUE (STT_LOOS + 0x1) #define STT_HP_STUB (STT_LOOS + 0x2) #define R_PARISC_NONE 0 #define R_PARISC_DIR32 1 #define R_PARISC_DIR21L 2 #define R_PARISC_DIR17R 3 #define R_PARISC_DIR17F 4 #define R_PARISC_DIR14R 6 #define R_PARISC_PCREL32 9 #define R_PARISC_PCREL21L 10 #define R_PARISC_PCREL17R 11 #define R_PARISC_PCREL17F 12 #define R_PARISC_PCREL14R 14 #define R_PARISC_DPREL21L 18 #define R_PARISC_DPREL14R 22 #define R_PARISC_GPREL21L 26 #define R_PARISC_GPREL14R 30 #define R_PARISC_LTOFF21L 34 #define R_PARISC_LTOFF14R 38 #define R_PARISC_SECREL32 41 #define R_PARISC_SEGBASE 48 #define R_PARISC_SEGREL32 49 #define R_PARISC_PLTOFF21L 50 #define R_PARISC_PLTOFF14R 54 #define R_PARISC_LTOFF_FPTR32 57 #define R_PARISC_LTOFF_FPTR21L 58 #define R_PARISC_LTOFF_FPTR14R 62 #define R_PARISC_FPTR64 64 #define R_PARISC_PLABEL32 65 #define R_PARISC_PLABEL21L 66 #define R_PARISC_PLABEL14R 70 #define R_PARISC_PCREL64 72 #define R_PARISC_PCREL22F 74 #define R_PARISC_PCREL14WR 75 #define R_PARISC_PCREL14DR 76 #define R_PARISC_PCREL16F 77 #define R_PARISC_PCREL16WF 78 #define R_PARISC_PCREL16DF 79 #define R_PARISC_DIR64 80 #define R_PARISC_DIR14WR 83 #define R_PARISC_DIR14DR 84 #define R_PARISC_DIR16F 85 #define R_PARISC_DIR16WF 86 #define R_PARISC_DIR16DF 87 #define R_PARISC_GPREL64 88 #define R_PARISC_GPREL14WR 91 #define R_PARISC_GPREL14DR 92 #define R_PARISC_GPREL16F 93 #define R_PARISC_GPREL16WF 94 #define R_PARISC_GPREL16DF 95 #define R_PARISC_LTOFF64 96 #define R_PARISC_LTOFF14WR 99 #define R_PARISC_LTOFF14DR 100 #define R_PARISC_LTOFF16F 101 #define R_PARISC_LTOFF16WF 102 #define R_PARISC_LTOFF16DF 103 #define R_PARISC_SECREL64 104 #define R_PARISC_SEGREL64 112 #define R_PARISC_PLTOFF14WR 115 #define R_PARISC_PLTOFF14DR 116 #define R_PARISC_PLTOFF16F 117 #define R_PARISC_PLTOFF16WF 118 #define R_PARISC_PLTOFF16DF 119 #define R_PARISC_LTOFF_FPTR64 120 #define R_PARISC_LTOFF_FPTR14WR 123 #define R_PARISC_LTOFF_FPTR14DR 124 #define R_PARISC_LTOFF_FPTR16F 125 #define R_PARISC_LTOFF_FPTR16WF 126 #define R_PARISC_LTOFF_FPTR16DF 127 #define R_PARISC_LORESERVE 128 #define R_PARISC_COPY 128 #define R_PARISC_IPLT 129 #define R_PARISC_EPLT 130 #define R_PARISC_TPREL32 153 #define R_PARISC_TPREL21L 154 #define R_PARISC_TPREL14R 158 #define R_PARISC_LTOFF_TP21L 162 #define R_PARISC_LTOFF_TP14R 166 #define R_PARISC_LTOFF_TP14F 167 #define R_PARISC_TPREL64 216 #define R_PARISC_TPREL14WR 219 #define R_PARISC_TPREL14DR 220 #define R_PARISC_TPREL16F 221 #define R_PARISC_TPREL16WF 222 #define R_PARISC_TPREL16DF 223 #define R_PARISC_LTOFF_TP64 224 #define R_PARISC_LTOFF_TP14WR 227 #define R_PARISC_LTOFF_TP14DR 228 #define R_PARISC_LTOFF_TP16F 229 #define R_PARISC_LTOFF_TP16WF 230 #define R_PARISC_LTOFF_TP16DF 231 #define R_PARISC_GNU_VTENTRY 232 #define R_PARISC_GNU_VTINHERIT 233 #define R_PARISC_TLS_GD21L 234 #define R_PARISC_TLS_GD14R 235 #define R_PARISC_TLS_GDCALL 236 #define R_PARISC_TLS_LDM21L 237 #define R_PARISC_TLS_LDM14R 238 #define R_PARISC_TLS_LDMCALL 239 #define R_PARISC_TLS_LDO21L 240 #define R_PARISC_TLS_LDO14R 241 #define R_PARISC_TLS_DTPMOD32 242 #define R_PARISC_TLS_DTPMOD64 243 #define R_PARISC_TLS_DTPOFF32 244 #define R_PARISC_TLS_DTPOFF64 245 #define R_PARISC_TLS_LE21L R_PARISC_TPREL21L #define R_PARISC_TLS_LE14R R_PARISC_TPREL14R #define R_PARISC_TLS_IE21L R_PARISC_LTOFF_TP21L #define R_PARISC_TLS_IE14R R_PARISC_LTOFF_TP14R #define R_PARISC_TLS_TPREL32 R_PARISC_TPREL32 #define R_PARISC_TLS_TPREL64 R_PARISC_TPREL64 #define R_PARISC_HIRESERVE 255 #define PT_HP_TLS (PT_LOOS + 0x0) #define PT_HP_CORE_NONE (PT_LOOS + 0x1) #define PT_HP_CORE_VERSION (PT_LOOS + 0x2) #define PT_HP_CORE_KERNEL (PT_LOOS + 0x3) #define PT_HP_CORE_COMM (PT_LOOS + 0x4) #define PT_HP_CORE_PROC (PT_LOOS + 0x5) #define PT_HP_CORE_LOADABLE (PT_LOOS + 0x6) #define PT_HP_CORE_STACK (PT_LOOS + 0x7) #define PT_HP_CORE_SHM (PT_LOOS + 0x8) #define PT_HP_CORE_MMF (PT_LOOS + 0x9) #define PT_HP_PARALLEL (PT_LOOS + 0x10) #define PT_HP_FASTBIND (PT_LOOS + 0x11) #define PT_HP_OPT_ANNOT (PT_LOOS + 0x12) #define PT_HP_HSL_ANNOT (PT_LOOS + 0x13) #define PT_HP_STACK (PT_LOOS + 0x14) #define PT_PARISC_ARCHEXT 0x70000000 #define PT_PARISC_UNWIND 0x70000001 #define PF_PARISC_SBP 0x08000000 #define PF_HP_PAGE_SIZE 0x00100000 #define PF_HP_FAR_SHARED 0x00200000 #define PF_HP_NEAR_SHARED 0x00400000 #define PF_HP_CODE 0x01000000 #define PF_HP_MODIFY 0x02000000 #define PF_HP_LAZYSWAP 0x04000000 #define PF_HP_SBP 0x08000000 #define EF_ALPHA_32BIT 1 #define EF_ALPHA_CANRELAX 2 #define SHT_ALPHA_DEBUG 0x70000001 #define SHT_ALPHA_REGINFO 0x70000002 #define SHF_ALPHA_GPREL 0x10000000 #define STO_ALPHA_NOPV 0x80 #define STO_ALPHA_STD_GPLOAD 0x88 #define R_ALPHA_NONE 0 #define R_ALPHA_REFLONG 1 #define R_ALPHA_REFQUAD 2 #define R_ALPHA_GPREL32 3 #define R_ALPHA_LITERAL 4 #define R_ALPHA_LITUSE 5 #define R_ALPHA_GPDISP 6 #define R_ALPHA_BRADDR 7 #define R_ALPHA_HINT 8 #define R_ALPHA_SREL16 9 #define R_ALPHA_SREL32 10 #define R_ALPHA_SREL64 11 #define R_ALPHA_GPRELHIGH 17 #define R_ALPHA_GPRELLOW 18 #define R_ALPHA_GPREL16 19 #define R_ALPHA_COPY 24 #define R_ALPHA_GLOB_DAT 25 #define R_ALPHA_JMP_SLOT 26 #define R_ALPHA_RELATIVE 27 #define R_ALPHA_TLS_GD_HI 28 #define R_ALPHA_TLSGD 29 #define R_ALPHA_TLS_LDM 30 #define R_ALPHA_DTPMOD64 31 #define R_ALPHA_GOTDTPREL 32 #define R_ALPHA_DTPREL64 33 #define R_ALPHA_DTPRELHI 34 #define R_ALPHA_DTPRELLO 35 #define R_ALPHA_DTPREL16 36 #define R_ALPHA_GOTTPREL 37 #define R_ALPHA_TPREL64 38 #define R_ALPHA_TPRELHI 39 #define R_ALPHA_TPRELLO 40 #define R_ALPHA_TPREL16 41 #define R_ALPHA_NUM 46 #define LITUSE_ALPHA_ADDR 0 #define LITUSE_ALPHA_BASE 1 #define LITUSE_ALPHA_BYTOFF 2 #define LITUSE_ALPHA_JSR 3 #define LITUSE_ALPHA_TLS_GD 4 #define LITUSE_ALPHA_TLS_LDM 5 #define DT_ALPHA_PLTRO (DT_LOPROC + 0) #define DT_ALPHA_NUM 1 #define EF_PPC_EMB 0x80000000 #define EF_PPC_RELOCATABLE 0x00010000 #define EF_PPC_RELOCATABLE_LIB 0x00008000 #define R_PPC_NONE 0 #define R_PPC_ADDR32 1 #define R_PPC_ADDR24 2 #define R_PPC_ADDR16 3 #define R_PPC_ADDR16_LO 4 #define R_PPC_ADDR16_HI 5 #define R_PPC_ADDR16_HA 6 #define R_PPC_ADDR14 7 #define R_PPC_ADDR14_BRTAKEN 8 #define R_PPC_ADDR14_BRNTAKEN 9 #define R_PPC_REL24 10 #define R_PPC_REL14 11 #define R_PPC_REL14_BRTAKEN 12 #define R_PPC_REL14_BRNTAKEN 13 #define R_PPC_GOT16 14 #define R_PPC_GOT16_LO 15 #define R_PPC_GOT16_HI 16 #define R_PPC_GOT16_HA 17 #define R_PPC_PLTREL24 18 #define R_PPC_COPY 19 #define R_PPC_GLOB_DAT 20 #define R_PPC_JMP_SLOT 21 #define R_PPC_RELATIVE 22 #define R_PPC_LOCAL24PC 23 #define R_PPC_UADDR32 24 #define R_PPC_UADDR16 25 #define R_PPC_REL32 26 #define R_PPC_PLT32 27 #define R_PPC_PLTREL32 28 #define R_PPC_PLT16_LO 29 #define R_PPC_PLT16_HI 30 #define R_PPC_PLT16_HA 31 #define R_PPC_SDAREL16 32 #define R_PPC_SECTOFF 33 #define R_PPC_SECTOFF_LO 34 #define R_PPC_SECTOFF_HI 35 #define R_PPC_SECTOFF_HA 36 #define R_PPC_TLS 67 #define R_PPC_DTPMOD32 68 #define R_PPC_TPREL16 69 #define R_PPC_TPREL16_LO 70 #define R_PPC_TPREL16_HI 71 #define R_PPC_TPREL16_HA 72 #define R_PPC_TPREL32 73 #define R_PPC_DTPREL16 74 #define R_PPC_DTPREL16_LO 75 #define R_PPC_DTPREL16_HI 76 #define R_PPC_DTPREL16_HA 77 #define R_PPC_DTPREL32 78 #define R_PPC_GOT_TLSGD16 79 #define R_PPC_GOT_TLSGD16_LO 80 #define R_PPC_GOT_TLSGD16_HI 81 #define R_PPC_GOT_TLSGD16_HA 82 #define R_PPC_GOT_TLSLD16 83 #define R_PPC_GOT_TLSLD16_LO 84 #define R_PPC_GOT_TLSLD16_HI 85 #define R_PPC_GOT_TLSLD16_HA 86 #define R_PPC_GOT_TPREL16 87 #define R_PPC_GOT_TPREL16_LO 88 #define R_PPC_GOT_TPREL16_HI 89 #define R_PPC_GOT_TPREL16_HA 90 #define R_PPC_GOT_DTPREL16 91 #define R_PPC_GOT_DTPREL16_LO 92 #define R_PPC_GOT_DTPREL16_HI 93 #define R_PPC_GOT_DTPREL16_HA 94 #define R_PPC_TLSGD 95 #define R_PPC_TLSLD 96 #define R_PPC_EMB_NADDR32 101 #define R_PPC_EMB_NADDR16 102 #define R_PPC_EMB_NADDR16_LO 103 #define R_PPC_EMB_NADDR16_HI 104 #define R_PPC_EMB_NADDR16_HA 105 #define R_PPC_EMB_SDAI16 106 #define R_PPC_EMB_SDA2I16 107 #define R_PPC_EMB_SDA2REL 108 #define R_PPC_EMB_SDA21 109 #define R_PPC_EMB_MRKREF 110 #define R_PPC_EMB_RELSEC16 111 #define R_PPC_EMB_RELST_LO 112 #define R_PPC_EMB_RELST_HI 113 #define R_PPC_EMB_RELST_HA 114 #define R_PPC_EMB_BIT_FLD 115 #define R_PPC_EMB_RELSDA 116 #define R_PPC_DIAB_SDA21_LO 180 #define R_PPC_DIAB_SDA21_HI 181 #define R_PPC_DIAB_SDA21_HA 182 #define R_PPC_DIAB_RELSDA_LO 183 #define R_PPC_DIAB_RELSDA_HI 184 #define R_PPC_DIAB_RELSDA_HA 185 #define R_PPC_IRELATIVE 248 #define R_PPC_REL16 249 #define R_PPC_REL16_LO 250 #define R_PPC_REL16_HI 251 #define R_PPC_REL16_HA 252 #define R_PPC_TOC16 255 #define DT_PPC_GOT (DT_LOPROC + 0) #define DT_PPC_OPT (DT_LOPROC + 1) #define DT_PPC_NUM 2 #define PPC_OPT_TLS 1 #define R_PPC64_NONE R_PPC_NONE #define R_PPC64_ADDR32 R_PPC_ADDR32 #define R_PPC64_ADDR24 R_PPC_ADDR24 #define R_PPC64_ADDR16 R_PPC_ADDR16 #define R_PPC64_ADDR16_LO R_PPC_ADDR16_LO #define R_PPC64_ADDR16_HI R_PPC_ADDR16_HI #define R_PPC64_ADDR16_HA R_PPC_ADDR16_HA #define R_PPC64_ADDR14 R_PPC_ADDR14 #define R_PPC64_ADDR14_BRTAKEN R_PPC_ADDR14_BRTAKEN #define R_PPC64_ADDR14_BRNTAKEN R_PPC_ADDR14_BRNTAKEN #define R_PPC64_REL24 R_PPC_REL24 #define R_PPC64_REL14 R_PPC_REL14 #define R_PPC64_REL14_BRTAKEN R_PPC_REL14_BRTAKEN #define R_PPC64_REL14_BRNTAKEN R_PPC_REL14_BRNTAKEN #define R_PPC64_GOT16 R_PPC_GOT16 #define R_PPC64_GOT16_LO R_PPC_GOT16_LO #define R_PPC64_GOT16_HI R_PPC_GOT16_HI #define R_PPC64_GOT16_HA R_PPC_GOT16_HA #define R_PPC64_COPY R_PPC_COPY #define R_PPC64_GLOB_DAT R_PPC_GLOB_DAT #define R_PPC64_JMP_SLOT R_PPC_JMP_SLOT #define R_PPC64_RELATIVE R_PPC_RELATIVE #define R_PPC64_UADDR32 R_PPC_UADDR32 #define R_PPC64_UADDR16 R_PPC_UADDR16 #define R_PPC64_REL32 R_PPC_REL32 #define R_PPC64_PLT32 R_PPC_PLT32 #define R_PPC64_PLTREL32 R_PPC_PLTREL32 #define R_PPC64_PLT16_LO R_PPC_PLT16_LO #define R_PPC64_PLT16_HI R_PPC_PLT16_HI #define R_PPC64_PLT16_HA R_PPC_PLT16_HA #define R_PPC64_SECTOFF R_PPC_SECTOFF #define R_PPC64_SECTOFF_LO R_PPC_SECTOFF_LO #define R_PPC64_SECTOFF_HI R_PPC_SECTOFF_HI #define R_PPC64_SECTOFF_HA R_PPC_SECTOFF_HA #define R_PPC64_ADDR30 37 #define R_PPC64_ADDR64 38 #define R_PPC64_ADDR16_HIGHER 39 #define R_PPC64_ADDR16_HIGHERA 40 #define R_PPC64_ADDR16_HIGHEST 41 #define R_PPC64_ADDR16_HIGHESTA 42 #define R_PPC64_UADDR64 43 #define R_PPC64_REL64 44 #define R_PPC64_PLT64 45 #define R_PPC64_PLTREL64 46 #define R_PPC64_TOC16 47 #define R_PPC64_TOC16_LO 48 #define R_PPC64_TOC16_HI 49 #define R_PPC64_TOC16_HA 50 #define R_PPC64_TOC 51 #define R_PPC64_PLTGOT16 52 #define R_PPC64_PLTGOT16_LO 53 #define R_PPC64_PLTGOT16_HI 54 #define R_PPC64_PLTGOT16_HA 55 #define R_PPC64_ADDR16_DS 56 #define R_PPC64_ADDR16_LO_DS 57 #define R_PPC64_GOT16_DS 58 #define R_PPC64_GOT16_LO_DS 59 #define R_PPC64_PLT16_LO_DS 60 #define R_PPC64_SECTOFF_DS 61 #define R_PPC64_SECTOFF_LO_DS 62 #define R_PPC64_TOC16_DS 63 #define R_PPC64_TOC16_LO_DS 64 #define R_PPC64_PLTGOT16_DS 65 #define R_PPC64_PLTGOT16_LO_DS 66 #define R_PPC64_TLS 67 #define R_PPC64_DTPMOD64 68 #define R_PPC64_TPREL16 69 #define R_PPC64_TPREL16_LO 70 #define R_PPC64_TPREL16_HI 71 #define R_PPC64_TPREL16_HA 72 #define R_PPC64_TPREL64 73 #define R_PPC64_DTPREL16 74 #define R_PPC64_DTPREL16_LO 75 #define R_PPC64_DTPREL16_HI 76 #define R_PPC64_DTPREL16_HA 77 #define R_PPC64_DTPREL64 78 #define R_PPC64_GOT_TLSGD16 79 #define R_PPC64_GOT_TLSGD16_LO 80 #define R_PPC64_GOT_TLSGD16_HI 81 #define R_PPC64_GOT_TLSGD16_HA 82 #define R_PPC64_GOT_TLSLD16 83 #define R_PPC64_GOT_TLSLD16_LO 84 #define R_PPC64_GOT_TLSLD16_HI 85 #define R_PPC64_GOT_TLSLD16_HA 86 #define R_PPC64_GOT_TPREL16_DS 87 #define R_PPC64_GOT_TPREL16_LO_DS 88 #define R_PPC64_GOT_TPREL16_HI 89 #define R_PPC64_GOT_TPREL16_HA 90 #define R_PPC64_GOT_DTPREL16_DS 91 #define R_PPC64_GOT_DTPREL16_LO_DS 92 #define R_PPC64_GOT_DTPREL16_HI 93 #define R_PPC64_GOT_DTPREL16_HA 94 #define R_PPC64_TPREL16_DS 95 #define R_PPC64_TPREL16_LO_DS 96 #define R_PPC64_TPREL16_HIGHER 97 #define R_PPC64_TPREL16_HIGHERA 98 #define R_PPC64_TPREL16_HIGHEST 99 #define R_PPC64_TPREL16_HIGHESTA 100 #define R_PPC64_DTPREL16_DS 101 #define R_PPC64_DTPREL16_LO_DS 102 #define R_PPC64_DTPREL16_HIGHER 103 #define R_PPC64_DTPREL16_HIGHERA 104 #define R_PPC64_DTPREL16_HIGHEST 105 #define R_PPC64_DTPREL16_HIGHESTA 106 #define R_PPC64_TLSGD 107 #define R_PPC64_TLSLD 108 #define R_PPC64_TOCSAVE 109 #define R_PPC64_ADDR16_HIGH 110 #define R_PPC64_ADDR16_HIGHA 111 #define R_PPC64_TPREL16_HIGH 112 #define R_PPC64_TPREL16_HIGHA 113 #define R_PPC64_DTPREL16_HIGH 114 #define R_PPC64_DTPREL16_HIGHA 115 #define R_PPC64_JMP_IREL 247 #define R_PPC64_IRELATIVE 248 #define R_PPC64_REL16 249 #define R_PPC64_REL16_LO 250 #define R_PPC64_REL16_HI 251 #define R_PPC64_REL16_HA 252 #define EF_PPC64_ABI 3 #define DT_PPC64_GLINK (DT_LOPROC + 0) #define DT_PPC64_OPD (DT_LOPROC + 1) #define DT_PPC64_OPDSZ (DT_LOPROC + 2) #define DT_PPC64_OPT (DT_LOPROC + 3) #define DT_PPC64_NUM 4 #define PPC64_OPT_TLS 1 #define PPC64_OPT_MULTI_TOC 2 #define STO_PPC64_LOCAL_BIT 5 #define STO_PPC64_LOCAL_MASK 0xe0 #define PPC64_LOCAL_ENTRY_OFFSET(x) (1 << (((x)&0xe0)>>5) & 0xfc) #define EF_ARM_RELEXEC 0x01 #define EF_ARM_HASENTRY 0x02 #define EF_ARM_INTERWORK 0x04 #define EF_ARM_APCS_26 0x08 #define EF_ARM_APCS_FLOAT 0x10 #define EF_ARM_PIC 0x20 #define EF_ARM_ALIGN8 0x40 #define EF_ARM_NEW_ABI 0x80 #define EF_ARM_OLD_ABI 0x100 #define EF_ARM_SOFT_FLOAT 0x200 #define EF_ARM_VFP_FLOAT 0x400 #define EF_ARM_MAVERICK_FLOAT 0x800 #define EF_ARM_ABI_FLOAT_SOFT 0x200 #define EF_ARM_ABI_FLOAT_HARD 0x400 #define EF_ARM_SYMSARESORTED 0x04 #define EF_ARM_DYNSYMSUSESEGIDX 0x08 #define EF_ARM_MAPSYMSFIRST 0x10 #define EF_ARM_EABIMASK 0XFF000000 #define EF_ARM_BE8 0x00800000 #define EF_ARM_LE8 0x00400000 #define EF_ARM_EABI_VERSION(flags) ((flags) & EF_ARM_EABIMASK) #define EF_ARM_EABI_UNKNOWN 0x00000000 #define EF_ARM_EABI_VER1 0x01000000 #define EF_ARM_EABI_VER2 0x02000000 #define EF_ARM_EABI_VER3 0x03000000 #define EF_ARM_EABI_VER4 0x04000000 #define EF_ARM_EABI_VER5 0x05000000 #define STT_ARM_TFUNC STT_LOPROC #define STT_ARM_16BIT STT_HIPROC #define SHF_ARM_ENTRYSECT 0x10000000 #define SHF_ARM_COMDEF 0x80000000 #define PF_ARM_SB 0x10000000 #define PF_ARM_PI 0x20000000 #define PF_ARM_ABS 0x40000000 #define PT_ARM_EXIDX (PT_LOPROC + 1) #define SHT_ARM_EXIDX (SHT_LOPROC + 1) #define SHT_ARM_PREEMPTMAP (SHT_LOPROC + 2) #define SHT_ARM_ATTRIBUTES (SHT_LOPROC + 3) #define R_AARCH64_NONE 0 #define R_AARCH64_P32_ABS32 1 #define R_AARCH64_P32_COPY 180 #define R_AARCH64_P32_GLOB_DAT 181 #define R_AARCH64_P32_JUMP_SLOT 182 #define R_AARCH64_P32_RELATIVE 183 #define R_AARCH64_P32_TLS_DTPMOD 184 #define R_AARCH64_P32_TLS_DTPREL 185 #define R_AARCH64_P32_TLS_TPREL 186 #define R_AARCH64_P32_TLSDESC 187 #define R_AARCH64_P32_IRELATIVE 188 #define R_AARCH64_ABS64 257 #define R_AARCH64_ABS32 258 #define R_AARCH64_ABS16 259 #define R_AARCH64_PREL64 260 #define R_AARCH64_PREL32 261 #define R_AARCH64_PREL16 262 #define R_AARCH64_MOVW_UABS_G0 263 #define R_AARCH64_MOVW_UABS_G0_NC 264 #define R_AARCH64_MOVW_UABS_G1 265 #define R_AARCH64_MOVW_UABS_G1_NC 266 #define R_AARCH64_MOVW_UABS_G2 267 #define R_AARCH64_MOVW_UABS_G2_NC 268 #define R_AARCH64_MOVW_UABS_G3 269 #define R_AARCH64_MOVW_SABS_G0 270 #define R_AARCH64_MOVW_SABS_G1 271 #define R_AARCH64_MOVW_SABS_G2 272 #define R_AARCH64_LD_PREL_LO19 273 #define R_AARCH64_ADR_PREL_LO21 274 #define R_AARCH64_ADR_PREL_PG_HI21 275 #define R_AARCH64_ADR_PREL_PG_HI21_NC 276 #define R_AARCH64_ADD_ABS_LO12_NC 277 #define R_AARCH64_LDST8_ABS_LO12_NC 278 #define R_AARCH64_TSTBR14 279 #define R_AARCH64_CONDBR19 280 #define R_AARCH64_JUMP26 282 #define R_AARCH64_CALL26 283 #define R_AARCH64_LDST16_ABS_LO12_NC 284 #define R_AARCH64_LDST32_ABS_LO12_NC 285 #define R_AARCH64_LDST64_ABS_LO12_NC 286 #define R_AARCH64_MOVW_PREL_G0 287 #define R_AARCH64_MOVW_PREL_G0_NC 288 #define R_AARCH64_MOVW_PREL_G1 289 #define R_AARCH64_MOVW_PREL_G1_NC 290 #define R_AARCH64_MOVW_PREL_G2 291 #define R_AARCH64_MOVW_PREL_G2_NC 292 #define R_AARCH64_MOVW_PREL_G3 293 #define R_AARCH64_LDST128_ABS_LO12_NC 299 #define R_AARCH64_MOVW_GOTOFF_G0 300 #define R_AARCH64_MOVW_GOTOFF_G0_NC 301 #define R_AARCH64_MOVW_GOTOFF_G1 302 #define R_AARCH64_MOVW_GOTOFF_G1_NC 303 #define R_AARCH64_MOVW_GOTOFF_G2 304 #define R_AARCH64_MOVW_GOTOFF_G2_NC 305 #define R_AARCH64_MOVW_GOTOFF_G3 306 #define R_AARCH64_GOTREL64 307 #define R_AARCH64_GOTREL32 308 #define R_AARCH64_GOT_LD_PREL19 309 #define R_AARCH64_LD64_GOTOFF_LO15 310 #define R_AARCH64_ADR_GOT_PAGE 311 #define R_AARCH64_LD64_GOT_LO12_NC 312 #define R_AARCH64_LD64_GOTPAGE_LO15 313 #define R_AARCH64_TLSGD_ADR_PREL21 512 #define R_AARCH64_TLSGD_ADR_PAGE21 513 #define R_AARCH64_TLSGD_ADD_LO12_NC 514 #define R_AARCH64_TLSGD_MOVW_G1 515 #define R_AARCH64_TLSGD_MOVW_G0_NC 516 #define R_AARCH64_TLSLD_ADR_PREL21 517 #define R_AARCH64_TLSLD_ADR_PAGE21 518 #define R_AARCH64_TLSLD_ADD_LO12_NC 519 #define R_AARCH64_TLSLD_MOVW_G1 520 #define R_AARCH64_TLSLD_MOVW_G0_NC 521 #define R_AARCH64_TLSLD_LD_PREL19 522 #define R_AARCH64_TLSLD_MOVW_DTPREL_G2 523 #define R_AARCH64_TLSLD_MOVW_DTPREL_G1 524 #define R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC 525 #define R_AARCH64_TLSLD_MOVW_DTPREL_G0 526 #define R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC 527 #define R_AARCH64_TLSLD_ADD_DTPREL_HI12 528 #define R_AARCH64_TLSLD_ADD_DTPREL_LO12 529 #define R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC 530 #define R_AARCH64_TLSLD_LDST8_DTPREL_LO12 531 #define R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC 532 #define R_AARCH64_TLSLD_LDST16_DTPREL_LO12 533 #define R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC 534 #define R_AARCH64_TLSLD_LDST32_DTPREL_LO12 535 #define R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC 536 #define R_AARCH64_TLSLD_LDST64_DTPREL_LO12 537 #define R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC 538 #define R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 539 #define R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC 540 #define R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 541 #define R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC 542 #define R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 543 #define R_AARCH64_TLSLE_MOVW_TPREL_G2 544 #define R_AARCH64_TLSLE_MOVW_TPREL_G1 545 #define R_AARCH64_TLSLE_MOVW_TPREL_G1_NC 546 #define R_AARCH64_TLSLE_MOVW_TPREL_G0 547 #define R_AARCH64_TLSLE_MOVW_TPREL_G0_NC 548 #define R_AARCH64_TLSLE_ADD_TPREL_HI12 549 #define R_AARCH64_TLSLE_ADD_TPREL_LO12 550 #define R_AARCH64_TLSLE_ADD_TPREL_LO12_NC 551 #define R_AARCH64_TLSLE_LDST8_TPREL_LO12 552 #define R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC 553 #define R_AARCH64_TLSLE_LDST16_TPREL_LO12 554 #define R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC 555 #define R_AARCH64_TLSLE_LDST32_TPREL_LO12 556 #define R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC 557 #define R_AARCH64_TLSLE_LDST64_TPREL_LO12 558 #define R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC 559 #define R_AARCH64_TLSDESC_LD_PREL19 560 #define R_AARCH64_TLSDESC_ADR_PREL21 561 #define R_AARCH64_TLSDESC_ADR_PAGE21 562 #define R_AARCH64_TLSDESC_LD64_LO12 563 #define R_AARCH64_TLSDESC_ADD_LO12 564 #define R_AARCH64_TLSDESC_OFF_G1 565 #define R_AARCH64_TLSDESC_OFF_G0_NC 566 #define R_AARCH64_TLSDESC_LDR 567 #define R_AARCH64_TLSDESC_ADD 568 #define R_AARCH64_TLSDESC_CALL 569 #define R_AARCH64_TLSLE_LDST128_TPREL_LO12 570 #define R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC 571 #define R_AARCH64_TLSLD_LDST128_DTPREL_LO12 572 #define R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC 573 #define R_AARCH64_COPY 1024 #define R_AARCH64_GLOB_DAT 1025 #define R_AARCH64_JUMP_SLOT 1026 #define R_AARCH64_RELATIVE 1027 #define R_AARCH64_TLS_DTPMOD 1028 #define R_AARCH64_TLS_DTPMOD64 1028 #define R_AARCH64_TLS_DTPREL 1029 #define R_AARCH64_TLS_DTPREL64 1029 #define R_AARCH64_TLS_TPREL 1030 #define R_AARCH64_TLS_TPREL64 1030 #define R_AARCH64_TLSDESC 1031 #define R_ARM_NONE 0 #define R_ARM_PC24 1 #define R_ARM_ABS32 2 #define R_ARM_REL32 3 #define R_ARM_PC13 4 #define R_ARM_ABS16 5 #define R_ARM_ABS12 6 #define R_ARM_THM_ABS5 7 #define R_ARM_ABS8 8 #define R_ARM_SBREL32 9 #define R_ARM_THM_PC22 10 #define R_ARM_THM_PC8 11 #define R_ARM_AMP_VCALL9 12 #define R_ARM_TLS_DESC 13 #define R_ARM_THM_SWI8 14 #define R_ARM_XPC25 15 #define R_ARM_THM_XPC22 16 #define R_ARM_TLS_DTPMOD32 17 #define R_ARM_TLS_DTPOFF32 18 #define R_ARM_TLS_TPOFF32 19 #define R_ARM_COPY 20 #define R_ARM_GLOB_DAT 21 #define R_ARM_JUMP_SLOT 22 #define R_ARM_RELATIVE 23 #define R_ARM_GOTOFF 24 #define R_ARM_GOTPC 25 #define R_ARM_GOT32 26 #define R_ARM_PLT32 27 #define R_ARM_CALL 28 #define R_ARM_JUMP24 29 #define R_ARM_THM_JUMP24 30 #define R_ARM_BASE_ABS 31 #define R_ARM_ALU_PCREL_7_0 32 #define R_ARM_ALU_PCREL_15_8 33 #define R_ARM_ALU_PCREL_23_15 34 #define R_ARM_LDR_SBREL_11_0 35 #define R_ARM_ALU_SBREL_19_12 36 #define R_ARM_ALU_SBREL_27_20 37 #define R_ARM_TARGET1 38 #define R_ARM_SBREL31 39 #define R_ARM_V4BX 40 #define R_ARM_TARGET2 41 #define R_ARM_PREL31 42 #define R_ARM_MOVW_ABS_NC 43 #define R_ARM_MOVT_ABS 44 #define R_ARM_MOVW_PREL_NC 45 #define R_ARM_MOVT_PREL 46 #define R_ARM_THM_MOVW_ABS_NC 47 #define R_ARM_THM_MOVT_ABS 48 #define R_ARM_THM_MOVW_PREL_NC 49 #define R_ARM_THM_MOVT_PREL 50 #define R_ARM_THM_JUMP19 51 #define R_ARM_THM_JUMP6 52 #define R_ARM_THM_ALU_PREL_11_0 53 #define R_ARM_THM_PC12 54 #define R_ARM_ABS32_NOI 55 #define R_ARM_REL32_NOI 56 #define R_ARM_ALU_PC_G0_NC 57 #define R_ARM_ALU_PC_G0 58 #define R_ARM_ALU_PC_G1_NC 59 #define R_ARM_ALU_PC_G1 60 #define R_ARM_ALU_PC_G2 61 #define R_ARM_LDR_PC_G1 62 #define R_ARM_LDR_PC_G2 63 #define R_ARM_LDRS_PC_G0 64 #define R_ARM_LDRS_PC_G1 65 #define R_ARM_LDRS_PC_G2 66 #define R_ARM_LDC_PC_G0 67 #define R_ARM_LDC_PC_G1 68 #define R_ARM_LDC_PC_G2 69 #define R_ARM_ALU_SB_G0_NC 70 #define R_ARM_ALU_SB_G0 71 #define R_ARM_ALU_SB_G1_NC 72 #define R_ARM_ALU_SB_G1 73 #define R_ARM_ALU_SB_G2 74 #define R_ARM_LDR_SB_G0 75 #define R_ARM_LDR_SB_G1 76 #define R_ARM_LDR_SB_G2 77 #define R_ARM_LDRS_SB_G0 78 #define R_ARM_LDRS_SB_G1 79 #define R_ARM_LDRS_SB_G2 80 #define R_ARM_LDC_SB_G0 81 #define R_ARM_LDC_SB_G1 82 #define R_ARM_LDC_SB_G2 83 #define R_ARM_MOVW_BREL_NC 84 #define R_ARM_MOVT_BREL 85 #define R_ARM_MOVW_BREL 86 #define R_ARM_THM_MOVW_BREL_NC 87 #define R_ARM_THM_MOVT_BREL 88 #define R_ARM_THM_MOVW_BREL 89 #define R_ARM_TLS_GOTDESC 90 #define R_ARM_TLS_CALL 91 #define R_ARM_TLS_DESCSEQ 92 #define R_ARM_THM_TLS_CALL 93 #define R_ARM_PLT32_ABS 94 #define R_ARM_GOT_ABS 95 #define R_ARM_GOT_PREL 96 #define R_ARM_GOT_BREL12 97 #define R_ARM_GOTOFF12 98 #define R_ARM_GOTRELAX 99 #define R_ARM_GNU_VTENTRY 100 #define R_ARM_GNU_VTINHERIT 101 #define R_ARM_THM_PC11 102 #define R_ARM_THM_PC9 103 #define R_ARM_TLS_GD32 104 #define R_ARM_TLS_LDM32 105 #define R_ARM_TLS_LDO32 106 #define R_ARM_TLS_IE32 107 #define R_ARM_TLS_LE32 108 #define R_ARM_TLS_LDO12 109 #define R_ARM_TLS_LE12 110 #define R_ARM_TLS_IE12GP 111 #define R_ARM_ME_TOO 128 #define R_ARM_THM_TLS_DESCSEQ 129 #define R_ARM_THM_TLS_DESCSEQ16 129 #define R_ARM_THM_TLS_DESCSEQ32 130 #define R_ARM_THM_GOT_BREL12 131 #define R_ARM_IRELATIVE 160 #define R_ARM_RXPC25 249 #define R_ARM_RSBREL32 250 #define R_ARM_THM_RPC22 251 #define R_ARM_RREL32 252 #define R_ARM_RABS22 253 #define R_ARM_RPC24 254 #define R_ARM_RBASE 255 #define R_ARM_NUM 256 #define EF_IA_64_MASKOS 0x0000000f #define EF_IA_64_ABI64 0x00000010 #define EF_IA_64_ARCH 0xff000000 #define PT_IA_64_ARCHEXT (PT_LOPROC + 0) #define PT_IA_64_UNWIND (PT_LOPROC + 1) #define PT_IA_64_HP_OPT_ANOT (PT_LOOS + 0x12) #define PT_IA_64_HP_HSL_ANOT (PT_LOOS + 0x13) #define PT_IA_64_HP_STACK (PT_LOOS + 0x14) #define PF_IA_64_NORECOV 0x80000000 #define SHT_IA_64_EXT (SHT_LOPROC + 0) #define SHT_IA_64_UNWIND (SHT_LOPROC + 1) #define SHF_IA_64_SHORT 0x10000000 #define SHF_IA_64_NORECOV 0x20000000 #define DT_IA_64_PLT_RESERVE (DT_LOPROC + 0) #define DT_IA_64_NUM 1 #define R_IA64_NONE 0x00 #define R_IA64_IMM14 0x21 #define R_IA64_IMM22 0x22 #define R_IA64_IMM64 0x23 #define R_IA64_DIR32MSB 0x24 #define R_IA64_DIR32LSB 0x25 #define R_IA64_DIR64MSB 0x26 #define R_IA64_DIR64LSB 0x27 #define R_IA64_GPREL22 0x2a #define R_IA64_GPREL64I 0x2b #define R_IA64_GPREL32MSB 0x2c #define R_IA64_GPREL32LSB 0x2d #define R_IA64_GPREL64MSB 0x2e #define R_IA64_GPREL64LSB 0x2f #define R_IA64_LTOFF22 0x32 #define R_IA64_LTOFF64I 0x33 #define R_IA64_PLTOFF22 0x3a #define R_IA64_PLTOFF64I 0x3b #define R_IA64_PLTOFF64MSB 0x3e #define R_IA64_PLTOFF64LSB 0x3f #define R_IA64_FPTR64I 0x43 #define R_IA64_FPTR32MSB 0x44 #define R_IA64_FPTR32LSB 0x45 #define R_IA64_FPTR64MSB 0x46 #define R_IA64_FPTR64LSB 0x47 #define R_IA64_PCREL60B 0x48 #define R_IA64_PCREL21B 0x49 #define R_IA64_PCREL21M 0x4a #define R_IA64_PCREL21F 0x4b #define R_IA64_PCREL32MSB 0x4c #define R_IA64_PCREL32LSB 0x4d #define R_IA64_PCREL64MSB 0x4e #define R_IA64_PCREL64LSB 0x4f #define R_IA64_LTOFF_FPTR22 0x52 #define R_IA64_LTOFF_FPTR64I 0x53 #define R_IA64_LTOFF_FPTR32MSB 0x54 #define R_IA64_LTOFF_FPTR32LSB 0x55 #define R_IA64_LTOFF_FPTR64MSB 0x56 #define R_IA64_LTOFF_FPTR64LSB 0x57 #define R_IA64_SEGREL32MSB 0x5c #define R_IA64_SEGREL32LSB 0x5d #define R_IA64_SEGREL64MSB 0x5e #define R_IA64_SEGREL64LSB 0x5f #define R_IA64_SECREL32MSB 0x64 #define R_IA64_SECREL32LSB 0x65 #define R_IA64_SECREL64MSB 0x66 #define R_IA64_SECREL64LSB 0x67 #define R_IA64_REL32MSB 0x6c #define R_IA64_REL32LSB 0x6d #define R_IA64_REL64MSB 0x6e #define R_IA64_REL64LSB 0x6f #define R_IA64_LTV32MSB 0x74 #define R_IA64_LTV32LSB 0x75 #define R_IA64_LTV64MSB 0x76 #define R_IA64_LTV64LSB 0x77 #define R_IA64_PCREL21BI 0x79 #define R_IA64_PCREL22 0x7a #define R_IA64_PCREL64I 0x7b #define R_IA64_IPLTMSB 0x80 #define R_IA64_IPLTLSB 0x81 #define R_IA64_COPY 0x84 #define R_IA64_SUB 0x85 #define R_IA64_LTOFF22X 0x86 #define R_IA64_LDXMOV 0x87 #define R_IA64_TPREL14 0x91 #define R_IA64_TPREL22 0x92 #define R_IA64_TPREL64I 0x93 #define R_IA64_TPREL64MSB 0x96 #define R_IA64_TPREL64LSB 0x97 #define R_IA64_LTOFF_TPREL22 0x9a #define R_IA64_DTPMOD64MSB 0xa6 #define R_IA64_DTPMOD64LSB 0xa7 #define R_IA64_LTOFF_DTPMOD22 0xaa #define R_IA64_DTPREL14 0xb1 #define R_IA64_DTPREL22 0xb2 #define R_IA64_DTPREL64I 0xb3 #define R_IA64_DTPREL32MSB 0xb4 #define R_IA64_DTPREL32LSB 0xb5 #define R_IA64_DTPREL64MSB 0xb6 #define R_IA64_DTPREL64LSB 0xb7 #define R_IA64_LTOFF_DTPREL22 0xba #define EF_SH_MACH_MASK 0x1f #define EF_SH_UNKNOWN 0x0 #define EF_SH1 0x1 #define EF_SH2 0x2 #define EF_SH3 0x3 #define EF_SH_DSP 0x4 #define EF_SH3_DSP 0x5 #define EF_SH4AL_DSP 0x6 #define EF_SH3E 0x8 #define EF_SH4 0x9 #define EF_SH2E 0xb #define EF_SH4A 0xc #define EF_SH2A 0xd #define EF_SH4_NOFPU 0x10 #define EF_SH4A_NOFPU 0x11 #define EF_SH4_NOMMU_NOFPU 0x12 #define EF_SH2A_NOFPU 0x13 #define EF_SH3_NOMMU 0x14 #define EF_SH2A_SH4_NOFPU 0x15 #define EF_SH2A_SH3_NOFPU 0x16 #define EF_SH2A_SH4 0x17 #define EF_SH2A_SH3E 0x18 #define R_SH_NONE 0 #define R_SH_DIR32 1 #define R_SH_REL32 2 #define R_SH_DIR8WPN 3 #define R_SH_IND12W 4 #define R_SH_DIR8WPL 5 #define R_SH_DIR8WPZ 6 #define R_SH_DIR8BP 7 #define R_SH_DIR8W 8 #define R_SH_DIR8L 9 #define R_SH_SWITCH16 25 #define R_SH_SWITCH32 26 #define R_SH_USES 27 #define R_SH_COUNT 28 #define R_SH_ALIGN 29 #define R_SH_CODE 30 #define R_SH_DATA 31 #define R_SH_LABEL 32 #define R_SH_SWITCH8 33 #define R_SH_GNU_VTINHERIT 34 #define R_SH_GNU_VTENTRY 35 #define R_SH_TLS_GD_32 144 #define R_SH_TLS_LD_32 145 #define R_SH_TLS_LDO_32 146 #define R_SH_TLS_IE_32 147 #define R_SH_TLS_LE_32 148 #define R_SH_TLS_DTPMOD32 149 #define R_SH_TLS_DTPOFF32 150 #define R_SH_TLS_TPOFF32 151 #define R_SH_GOT32 160 #define R_SH_PLT32 161 #define R_SH_COPY 162 #define R_SH_GLOB_DAT 163 #define R_SH_JMP_SLOT 164 #define R_SH_RELATIVE 165 #define R_SH_GOTOFF 166 #define R_SH_GOTPC 167 #define R_SH_GOT20 201 #define R_SH_GOTOFF20 202 #define R_SH_GOTFUNCDESC 203 #define R_SH_GOTFUNCDEST20 204 #define R_SH_GOTOFFFUNCDESC 205 #define R_SH_GOTOFFFUNCDEST20 206 #define R_SH_FUNCDESC 207 #define R_SH_FUNCDESC_VALUE 208 #define R_SH_NUM 256 #define R_390_NONE 0 #define R_390_8 1 #define R_390_12 2 #define R_390_16 3 #define R_390_32 4 #define R_390_PC32 5 #define R_390_GOT12 6 #define R_390_GOT32 7 #define R_390_PLT32 8 #define R_390_COPY 9 #define R_390_GLOB_DAT 10 #define R_390_JMP_SLOT 11 #define R_390_RELATIVE 12 #define R_390_GOTOFF32 13 #define R_390_GOTPC 14 #define R_390_GOT16 15 #define R_390_PC16 16 #define R_390_PC16DBL 17 #define R_390_PLT16DBL 18 #define R_390_PC32DBL 19 #define R_390_PLT32DBL 20 #define R_390_GOTPCDBL 21 #define R_390_64 22 #define R_390_PC64 23 #define R_390_GOT64 24 #define R_390_PLT64 25 #define R_390_GOTENT 26 #define R_390_GOTOFF16 27 #define R_390_GOTOFF64 28 #define R_390_GOTPLT12 29 #define R_390_GOTPLT16 30 #define R_390_GOTPLT32 31 #define R_390_GOTPLT64 32 #define R_390_GOTPLTENT 33 #define R_390_PLTOFF16 34 #define R_390_PLTOFF32 35 #define R_390_PLTOFF64 36 #define R_390_TLS_LOAD 37 #define R_390_TLS_GDCALL 38 #define R_390_TLS_LDCALL 39 #define R_390_TLS_GD32 40 #define R_390_TLS_GD64 41 #define R_390_TLS_GOTIE12 42 #define R_390_TLS_GOTIE32 43 #define R_390_TLS_GOTIE64 44 #define R_390_TLS_LDM32 45 #define R_390_TLS_LDM64 46 #define R_390_TLS_IE32 47 #define R_390_TLS_IE64 48 #define R_390_TLS_IEENT 49 #define R_390_TLS_LE32 50 #define R_390_TLS_LE64 51 #define R_390_TLS_LDO32 52 #define R_390_TLS_LDO64 53 #define R_390_TLS_DTPMOD 54 #define R_390_TLS_DTPOFF 55 #define R_390_TLS_TPOFF 56 #define R_390_20 57 #define R_390_GOT20 58 #define R_390_GOTPLT20 59 #define R_390_TLS_GOTIE20 60 #define R_390_NUM 61 #define R_CRIS_NONE 0 #define R_CRIS_8 1 #define R_CRIS_16 2 #define R_CRIS_32 3 #define R_CRIS_8_PCREL 4 #define R_CRIS_16_PCREL 5 #define R_CRIS_32_PCREL 6 #define R_CRIS_GNU_VTINHERIT 7 #define R_CRIS_GNU_VTENTRY 8 #define R_CRIS_COPY 9 #define R_CRIS_GLOB_DAT 10 #define R_CRIS_JUMP_SLOT 11 #define R_CRIS_RELATIVE 12 #define R_CRIS_16_GOT 13 #define R_CRIS_32_GOT 14 #define R_CRIS_16_GOTPLT 15 #define R_CRIS_32_GOTPLT 16 #define R_CRIS_32_GOTREL 17 #define R_CRIS_32_PLT_GOTREL 18 #define R_CRIS_32_PLT_PCREL 19 #define R_CRIS_NUM 20 #define R_X86_64_NONE 0 #define R_X86_64_64 1 #define R_X86_64_PC32 2 #define R_X86_64_GOT32 3 #define R_X86_64_PLT32 4 #define R_X86_64_COPY 5 #define R_X86_64_GLOB_DAT 6 #define R_X86_64_JUMP_SLOT 7 #define R_X86_64_RELATIVE 8 #define R_X86_64_GOTPCREL 9 #define R_X86_64_32 10 #define R_X86_64_32S 11 #define R_X86_64_16 12 #define R_X86_64_PC16 13 #define R_X86_64_8 14 #define R_X86_64_PC8 15 #define R_X86_64_DTPMOD64 16 #define R_X86_64_DTPOFF64 17 #define R_X86_64_TPOFF64 18 #define R_X86_64_TLSGD 19 #define R_X86_64_TLSLD 20 #define R_X86_64_DTPOFF32 21 #define R_X86_64_GOTTPOFF 22 #define R_X86_64_TPOFF32 23 #define R_X86_64_PC64 24 #define R_X86_64_GOTOFF64 25 #define R_X86_64_GOTPC32 26 #define R_X86_64_GOT64 27 #define R_X86_64_GOTPCREL64 28 #define R_X86_64_GOTPC64 29 #define R_X86_64_GOTPLT64 30 #define R_X86_64_PLTOFF64 31 #define R_X86_64_SIZE32 32 #define R_X86_64_SIZE64 33 #define R_X86_64_GOTPC32_TLSDESC 34 #define R_X86_64_TLSDESC_CALL 35 #define R_X86_64_TLSDESC 36 #define R_X86_64_IRELATIVE 37 #define R_X86_64_RELATIVE64 38 #define R_X86_64_GOTPCRELX 41 #define R_X86_64_REX_GOTPCRELX 42 #define R_X86_64_NUM 43 #define R_MN10300_NONE 0 #define R_MN10300_32 1 #define R_MN10300_16 2 #define R_MN10300_8 3 #define R_MN10300_PCREL32 4 #define R_MN10300_PCREL16 5 #define R_MN10300_PCREL8 6 #define R_MN10300_GNU_VTINHERIT 7 #define R_MN10300_GNU_VTENTRY 8 #define R_MN10300_24 9 #define R_MN10300_GOTPC32 10 #define R_MN10300_GOTPC16 11 #define R_MN10300_GOTOFF32 12 #define R_MN10300_GOTOFF24 13 #define R_MN10300_GOTOFF16 14 #define R_MN10300_PLT32 15 #define R_MN10300_PLT16 16 #define R_MN10300_GOT32 17 #define R_MN10300_GOT24 18 #define R_MN10300_GOT16 19 #define R_MN10300_COPY 20 #define R_MN10300_GLOB_DAT 21 #define R_MN10300_JMP_SLOT 22 #define R_MN10300_RELATIVE 23 #define R_MN10300_NUM 24 #define R_M32R_NONE 0 #define R_M32R_16 1 #define R_M32R_32 2 #define R_M32R_24 3 #define R_M32R_10_PCREL 4 #define R_M32R_18_PCREL 5 #define R_M32R_26_PCREL 6 #define R_M32R_HI16_ULO 7 #define R_M32R_HI16_SLO 8 #define R_M32R_LO16 9 #define R_M32R_SDA16 10 #define R_M32R_GNU_VTINHERIT 11 #define R_M32R_GNU_VTENTRY 12 #define R_M32R_16_RELA 33 #define R_M32R_32_RELA 34 #define R_M32R_24_RELA 35 #define R_M32R_10_PCREL_RELA 36 #define R_M32R_18_PCREL_RELA 37 #define R_M32R_26_PCREL_RELA 38 #define R_M32R_HI16_ULO_RELA 39 #define R_M32R_HI16_SLO_RELA 40 #define R_M32R_LO16_RELA 41 #define R_M32R_SDA16_RELA 42 #define R_M32R_RELA_GNU_VTINHERIT 43 #define R_M32R_RELA_GNU_VTENTRY 44 #define R_M32R_REL32 45 #define R_M32R_GOT24 48 #define R_M32R_26_PLTREL 49 #define R_M32R_COPY 50 #define R_M32R_GLOB_DAT 51 #define R_M32R_JMP_SLOT 52 #define R_M32R_RELATIVE 53 #define R_M32R_GOTOFF 54 #define R_M32R_GOTPC24 55 #define R_M32R_GOT16_HI_ULO 56 #define R_M32R_GOT16_HI_SLO 57 #define R_M32R_GOT16_LO 58 #define R_M32R_GOTPC_HI_ULO 59 #define R_M32R_GOTPC_HI_SLO 60 #define R_M32R_GOTPC_LO 61 #define R_M32R_GOTOFF_HI_ULO 62 #define R_M32R_GOTOFF_HI_SLO 63 #define R_M32R_GOTOFF_LO 64 #define R_M32R_NUM 256 #define R_MICROBLAZE_NONE 0 #define R_MICROBLAZE_32 1 #define R_MICROBLAZE_32_PCREL 2 #define R_MICROBLAZE_64_PCREL 3 #define R_MICROBLAZE_32_PCREL_LO 4 #define R_MICROBLAZE_64 5 #define R_MICROBLAZE_32_LO 6 #define R_MICROBLAZE_SRO32 7 #define R_MICROBLAZE_SRW32 8 #define R_MICROBLAZE_64_NONE 9 #define R_MICROBLAZE_32_SYM_OP_SYM 10 #define R_MICROBLAZE_GNU_VTINHERIT 11 #define R_MICROBLAZE_GNU_VTENTRY 12 #define R_MICROBLAZE_GOTPC_64 13 #define R_MICROBLAZE_GOT_64 14 #define R_MICROBLAZE_PLT_64 15 #define R_MICROBLAZE_REL 16 #define R_MICROBLAZE_JUMP_SLOT 17 #define R_MICROBLAZE_GLOB_DAT 18 #define R_MICROBLAZE_GOTOFF_64 19 #define R_MICROBLAZE_GOTOFF_32 20 #define R_MICROBLAZE_COPY 21 #define R_MICROBLAZE_TLS 22 #define R_MICROBLAZE_TLSGD 23 #define R_MICROBLAZE_TLSLD 24 #define R_MICROBLAZE_TLSDTPMOD32 25 #define R_MICROBLAZE_TLSDTPREL32 26 #define R_MICROBLAZE_TLSDTPREL64 27 #define R_MICROBLAZE_TLSGOTTPREL32 28 #define R_MICROBLAZE_TLSTPREL32 29 #define DT_NIOS2_GP 0x70000002 #define R_NIOS2_NONE 0 #define R_NIOS2_S16 1 #define R_NIOS2_U16 2 #define R_NIOS2_PCREL16 3 #define R_NIOS2_CALL26 4 #define R_NIOS2_IMM5 5 #define R_NIOS2_CACHE_OPX 6 #define R_NIOS2_IMM6 7 #define R_NIOS2_IMM8 8 #define R_NIOS2_HI16 9 #define R_NIOS2_LO16 10 #define R_NIOS2_HIADJ16 11 #define R_NIOS2_BFD_RELOC_32 12 #define R_NIOS2_BFD_RELOC_16 13 #define R_NIOS2_BFD_RELOC_8 14 #define R_NIOS2_GPREL 15 #define R_NIOS2_GNU_VTINHERIT 16 #define R_NIOS2_GNU_VTENTRY 17 #define R_NIOS2_UJMP 18 #define R_NIOS2_CJMP 19 #define R_NIOS2_CALLR 20 #define R_NIOS2_ALIGN 21 #define R_NIOS2_GOT16 22 #define R_NIOS2_CALL16 23 #define R_NIOS2_GOTOFF_LO 24 #define R_NIOS2_GOTOFF_HA 25 #define R_NIOS2_PCREL_LO 26 #define R_NIOS2_PCREL_HA 27 #define R_NIOS2_TLS_GD16 28 #define R_NIOS2_TLS_LDM16 29 #define R_NIOS2_TLS_LDO16 30 #define R_NIOS2_TLS_IE16 31 #define R_NIOS2_TLS_LE16 32 #define R_NIOS2_TLS_DTPMOD 33 #define R_NIOS2_TLS_DTPREL 34 #define R_NIOS2_TLS_TPREL 35 #define R_NIOS2_COPY 36 #define R_NIOS2_GLOB_DAT 37 #define R_NIOS2_JUMP_SLOT 38 #define R_NIOS2_RELATIVE 39 #define R_NIOS2_GOTOFF 40 #define R_NIOS2_CALL26_NOAT 41 #define R_NIOS2_GOT_LO 42 #define R_NIOS2_GOT_HA 43 #define R_NIOS2_CALL_LO 44 #define R_NIOS2_CALL_HA 45 #define R_OR1K_NONE 0 #define R_OR1K_32 1 #define R_OR1K_16 2 #define R_OR1K_8 3 #define R_OR1K_LO_16_IN_INSN 4 #define R_OR1K_HI_16_IN_INSN 5 #define R_OR1K_INSN_REL_26 6 #define R_OR1K_GNU_VTENTRY 7 #define R_OR1K_GNU_VTINHERIT 8 #define R_OR1K_32_PCREL 9 #define R_OR1K_16_PCREL 10 #define R_OR1K_8_PCREL 11 #define R_OR1K_GOTPC_HI16 12 #define R_OR1K_GOTPC_LO16 13 #define R_OR1K_GOT16 14 #define R_OR1K_PLT26 15 #define R_OR1K_GOTOFF_HI16 16 #define R_OR1K_GOTOFF_LO16 17 #define R_OR1K_COPY 18 #define R_OR1K_GLOB_DAT 19 #define R_OR1K_JMP_SLOT 20 #define R_OR1K_RELATIVE 21 #define R_OR1K_TLS_GD_HI16 22 #define R_OR1K_TLS_GD_LO16 23 #define R_OR1K_TLS_LDM_HI16 24 #define R_OR1K_TLS_LDM_LO16 25 #define R_OR1K_TLS_LDO_HI16 26 #define R_OR1K_TLS_LDO_LO16 27 #define R_OR1K_TLS_IE_HI16 28 #define R_OR1K_TLS_IE_LO16 29 #define R_OR1K_TLS_LE_HI16 30 #define R_OR1K_TLS_LE_LO16 31 #define R_OR1K_TLS_TPOFF 32 #define R_OR1K_TLS_DTPOFF 33 #define R_OR1K_TLS_DTPMOD 34 #define R_BPF_NONE 0 #define R_BPF_MAP_FD 1 #ifdef __cplusplus } #endif #endif 07070100000011000081a4000000000000000000000001630c8dd40000015e000000000000000000000000000000000000002300000000./usr/nvptx-none/include/envlock.h/* envlock.h -- header file for env routines. */ #ifndef _INCLUDE_ENVLOCK_H_ #define _INCLUDE_ENVLOCK_H_ #include <_ansi.h> #include #define ENV_LOCK __env_lock(reent_ptr) #define ENV_UNLOCK __env_unlock(reent_ptr) void __env_lock (struct _reent *reent); void __env_unlock (struct _reent *reent); #endif /* _INCLUDE_ENVLOCK_H_ */ 07070100000012000081a4000000000000000000000001630c8dd40000030d000000000000000000000000000000000000002000000000./usr/nvptx-none/include/envz.h/* Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ #include #include /* The newlib implementation of these functions assumes that sizeof(char) == 1. */ char * envz_entry (const char *envz, size_t envz_len, const char *name); char * envz_get (const char *envz, size_t envz_len, const char *name); error_t envz_add (char **envz, size_t *envz_len, const char *name, const char *value); error_t envz_merge (char **envz, size_t *envz_len, const char *envz2, size_t envz2_len, int override); void envz_remove(char **envz, size_t *envz_len, const char *name); void envz_strip (char **envz, size_t *envz_len); 07070100000013000081a4000000000000000000000001630c8dd4000000ae000000000000000000000000000000000000002100000000./usr/nvptx-none/include/errno.h#ifndef __ERRNO_H__ #define __ERRNO_H__ #ifndef __error_t_defined typedef int error_t; #define __error_t_defined 1 #endif #include #endif /* !__ERRNO_H__ */ 07070100000014000081a4000000000000000000000001630c8dd4000000b9000000000000000000000000000000000000002400000000./usr/nvptx-none/include/fastmath.h#ifndef _FASTMATH_H_ #ifdef __cplusplus extern "C" { #endif #define _FASTMATH_H_ #include #include #ifdef __cplusplus } #endif #endif /* _FASTMATH_H_ */ 07070100000015000081a4000000000000000000000001630c8dd400000017000000000000000000000000000000000000002100000000./usr/nvptx-none/include/fcntl.h#include 07070100000016000081a4000000000000000000000001630c8dd400000457000000000000000000000000000000000000002000000000./usr/nvptx-none/include/fenv.h/* Copyright (c) 2017 SiFive Inc. All rights reserved. This copyrighted material is made available to anyone wishing to use, modify, copy, or redistribute it subject to the terms and conditions of the FreeBSD License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY expressed or implied, including the implied warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. A copy of this license is available at http://www.opensource.org/licenses. */ #ifndef _FENV_H #define _FENV_H #include #ifdef __cplusplus extern "C" { #endif /* Exception */ int feclearexcept(int excepts); int fegetexceptflag(fexcept_t *flagp, int excepts); int feraiseexcept(int excepts); int fesetexceptflag(const fexcept_t *flagp, int excepts); int fetestexcept(int excepts); /* Rounding mode */ int fegetround(void); int fesetround(int rounding_mode); /* Float environment */ int fegetenv(fenv_t *envp); int feholdexcept(fenv_t *envp); int fesetenv(const fenv_t *envp); int feupdateenv(const fenv_t *envp); #ifdef __cplusplus } #endif #endif 07070100000017000081a4000000000000000000000001630c8dd400000915000000000000000000000000000000000000002300000000./usr/nvptx-none/include/fnmatch.h/*- * Copyright (c) 1992, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD: src/include/fnmatch.h,v 1.10 2002/03/23 17:24:53 imp Exp $ * @(#)fnmatch.h 8.1 (Berkeley) 6/2/93 */ #ifndef _FNMATCH_H_ #define _FNMATCH_H_ #include #define FNM_NOMATCH 1 /* Match failed. */ #define FNM_NOESCAPE 0x01 /* Disable backslash escaping. */ #define FNM_PATHNAME 0x02 /* Slash must be matched by slash. */ #define FNM_PERIOD 0x04 /* Period must be matched by period. */ #if __GNU_VISIBLE #define FNM_LEADING_DIR 0x08 /* Ignore / after Imatch. */ #define FNM_CASEFOLD 0x10 /* Case insensitive search. */ #define FNM_IGNORECASE FNM_CASEFOLD #define FNM_FILE_NAME FNM_PATHNAME #endif __BEGIN_DECLS int fnmatch(const char *, const char *, int); __END_DECLS #endif /* !_FNMATCH_H_ */ 07070100000018000081a4000000000000000000000001630c8dd4000019a4000000000000000000000000000000000000002200000000./usr/nvptx-none/include/getopt.h/**************************************************************************** getopt.h - Read command line options AUTHOR: Gregory Pietsch CREATED Thu Jan 09 22:37:00 1997 DESCRIPTION: The getopt() function parses the command line arguments. Its arguments argc and argv are the argument count and array as passed to the main() function on program invocation. The argument optstring is a list of available option characters. If such a character is followed by a colon (`:'), the option takes an argument, which is placed in optarg. If such a character is followed by two colons, the option takes an optional argument, which is placed in optarg. If the option does not take an argument, optarg is NULL. The external variable optind is the index of the next array element of argv to be processed; it communicates from one call to the next which element to process. The getopt_long() function works like getopt() except that it also accepts long options started by two dashes `--'. If these take values, it is either in the form --arg=value or --arg value It takes the additional arguments longopts which is a pointer to the first element of an array of type GETOPT_LONG_OPTION_T, defined below. The last element of the array has to be filled with NULL for the name field. The longind pointer points to the index of the current long option relative to longopts if it is non-NULL. The getopt() function returns the option character if the option was found successfully, `:' if there was a missing parameter for one of the options, `?' for an unknown option character, and EOF for the end of the option list. The getopt_long() function's return value is described below. The function getopt_long_only() is identical to getopt_long(), except that a plus sign `+' can introduce long options as well as `--'. Describe how to deal with options that follow non-option ARGV-elements. If the caller did not specify anything, the default is REQUIRE_ORDER if the environment variable POSIXLY_CORRECT is defined, PERMUTE otherwise. REQUIRE_ORDER means don't recognize them as options; stop option processing when the first non-option is seen. This is what Unix does. This mode of operation is selected by either setting the environment variable POSIXLY_CORRECT, or using `+' as the first character of the optstring parameter. PERMUTE is the default. We permute the contents of ARGV as we scan, so that eventually all the non-options are at the end. This allows options to be given in any order, even with programs that were not written to expect this. RETURN_IN_ORDER is an option available to programs that were written to expect options and other ARGV-elements in any order and that care about the ordering of the two. We describe each non-option ARGV-element as if it were the argument of an option with character code 1. Using `-' as the first character of the optstring parameter selects this mode of operation. The special argument `--' forces an end of option-scanning regardless of the value of `ordering'. In the case of RETURN_IN_ORDER, only `--' can cause getopt() and friends to return EOF with optind != argc. COPYRIGHT NOTICE AND DISCLAIMER: Copyright (C) 1997 Gregory Pietsch This file and the accompanying getopt.c implementation file are hereby placed in the public domain without restrictions. Just give the author credit, don't claim you wrote it or prevent anyone else from using it. Gregory Pietsch's current e-mail address: gpietsch@comcast.net ****************************************************************************/ /* This is a glibc-extension header file. */ #ifndef GETOPT_H #define GETOPT_H #include <_ansi.h> /* include files needed by this include file */ #define no_argument 0 #define required_argument 1 #define optional_argument 2 #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /* types defined by this include file */ struct option { const char *name; /* the name of the long option */ int has_arg; /* one of the above macros */ int *flag; /* determines if getopt_long() returns a * value for a long option; if it is * non-NULL, 0 is returned as a function * value and the value of val is stored in * the area pointed to by flag. Otherwise, * val is returned. */ int val; /* determines the value to return if flag is * NULL. */ }; /* While getopt.h is a glibc extension, the following are newlib extensions. * They are optionally included via the __need_getopt_newlib flag. */ #ifdef __need_getopt_newlib /* macros defined by this include file */ #define NO_ARG no_argument #define REQUIRED_ARG required_argument #define OPTIONAL_ARG optional_argument /* The GETOPT_DATA_INITIALIZER macro is used to initialize a statically- allocated variable of type struct getopt_data. */ #define GETOPT_DATA_INITIALIZER {0,0,0,0,0,0,0} /* These #defines are to make accessing the reentrant functions easier. */ #define getopt_r __getopt_r #define getopt_long_r __getopt_long_r #define getopt_long_only_r __getopt_long_only_r /* The getopt_data structure is for reentrancy. Its members are similar to the externally-defined variables. */ typedef struct getopt_data { char *optarg; int optind, opterr, optopt, optwhere; int permute_from, num_nonopts; } getopt_data; #endif /* __need_getopt_newlib */ /* externally-defined variables */ extern char *optarg; extern int optind; extern int opterr; extern int optopt; /* function prototypes */ int getopt (int __argc, char *const __argv[], const char *__optstring); int getopt_long (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind); int getopt_long_only (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind); #ifdef __need_getopt_newlib int __getopt_r (int __argc, char *const __argv[], const char *__optstring, struct getopt_data * __data); int __getopt_long_r (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind, struct getopt_data * __data); int __getopt_long_only_r (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind, struct getopt_data * __data); #endif /* __need_getopt_newlib */ #ifdef __cplusplus }; #endif /* __cplusplus */ #endif /* GETOPT_H */ /* END OF FILE getopt.h */ 07070100000019000081a4000000000000000000000001630c8dd400000ecb000000000000000000000000000000000000002000000000./usr/nvptx-none/include/glob.h/* * Copyright (c) 1989, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Guido van Rossum. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)glob.h 8.1 (Berkeley) 6/2/93 * $FreeBSD: src/include/glob.h,v 1.6 2002/03/23 17:24:53 imp Exp $ */ #ifndef _GLOB_H_ #define _GLOB_H_ #include struct stat; typedef struct { int gl_pathc; /* Count of total paths so far. */ int gl_matchc; /* Count of paths matching pattern. */ int gl_offs; /* Reserved at beginning of gl_pathv. */ int gl_flags; /* Copy of flags parameter to glob. */ char **gl_pathv; /* List of paths matching pattern. */ /* Copy of errfunc parameter to glob. */ int (*gl_errfunc)(const char *, int); /* * Alternate filesystem access methods for glob; replacement * versions of closedir(3), readdir(3), opendir(3), stat(2) * and lstat(2). */ void (*gl_closedir)(void *); struct dirent *(*gl_readdir)(void *); void *(*gl_opendir)(const char *); int (*gl_lstat)(const char *, struct stat *); int (*gl_stat)(const char *, struct stat *); } glob_t; #define GLOB_APPEND 0x0001 /* Append to output from previous call. */ #define GLOB_DOOFFS 0x0002 /* Use gl_offs. */ #define GLOB_ERR 0x0004 /* Return on error. */ #define GLOB_MARK 0x0008 /* Append / to matching directories. */ #define GLOB_NOCHECK 0x0010 /* Return pattern itself if nothing matches. */ #define GLOB_NOSORT 0x0020 /* Don't sort. */ #define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */ #define GLOB_BRACE 0x0080 /* Expand braces ala csh. */ #define GLOB_MAGCHAR 0x0100 /* Pattern had globbing characters. */ #define GLOB_NOMAGIC 0x0200 /* GLOB_NOCHECK without magic chars (csh). */ #define GLOB_QUOTE 0x0400 /* Quote special chars with \. */ #define GLOB_TILDE 0x0800 /* Expand tilde names from the passwd file. */ #define GLOB_LIMIT 0x1000 /* limit number of returned paths */ /* backwards compatibility, this is the old name for this option */ #define GLOB_MAXPATH GLOB_LIMIT #define GLOB_NOSPACE (-1) /* Malloc call failed. */ #define GLOB_ABEND (-2) /* Unignored error. */ __BEGIN_DECLS int glob(const char *__restrict, int, int (*)(const char *, int), glob_t *__restrict); void globfree(glob_t *); __END_DECLS #endif /* !_GLOB_H_ */ 0707010000001a000081a4000000000000000000000001630c8dd400000c01000000000000000000000000000000000000001f00000000./usr/nvptx-none/include/grp.h/* $NetBSD: grp.h,v 1.7 1995/04/29 05:30:40 cgd Exp $ */ /*- * Copyright (c) 1989, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)grp.h 8.2 (Berkeley) 1/21/94 */ #ifndef _GRP_H_ #define _GRP_H_ #include #include #ifdef __CYGWIN__ #include #endif #if __BSD_VISIBLE #define _PATH_GROUP "/etc/group" #endif struct group { char *gr_name; /* group name */ char *gr_passwd; /* group password */ gid_t gr_gid; /* group id */ char **gr_mem; /* group members */ }; #ifdef __cplusplus extern "C" { #endif #ifndef __INSIDE_CYGWIN__ struct group *getgrgid (gid_t); struct group *getgrnam (const char *); #if __MISC_VISIBLE || __POSIX_VISIBLE int getgrnam_r (const char *, struct group *, char *, size_t, struct group **); int getgrgid_r (gid_t, struct group *, char *, size_t, struct group **); #endif /* __MISC_VISIBLE || __POSIX_VISIBLE */ #if __MISC_VISIBLE || __XSI_VISIBLE >= 4 struct group *getgrent (void); void setgrent (void); void endgrent (void); #endif /* __MISC_VISIBLE || __XSI_VISIBLE >= 4 */ #if __BSD_VISIBLE int initgroups (const char *, gid_t); #endif /* __BSD_VISIBLE */ #endif /* !__INSIDE_CYGWIN__ */ #ifdef __cplusplus } #endif #endif /* !_GRP_H_ */ 0707010000001b000081a4000000000000000000000001630c8dd40000084f000000000000000000000000000000000000002100000000./usr/nvptx-none/include/iconv.h/* * Copyright (c) 2003-2004, Artem B. Bityuckiy, SoftMine Corporation. * Rights transferred to Franklin Electronic Publishers. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _ICONV_H_ #define _ICONV_H_ #include <_ansi.h> #include #include #include /* iconv_t: charset conversion descriptor type */ typedef _iconv_t iconv_t; _BEGIN_STD_C #ifndef _REENT_ONLY iconv_t iconv_open (const char *, const char *); size_t iconv (iconv_t, char **__restrict, size_t *__restrict, char **__restrict, size_t *__restrict); int iconv_close (iconv_t); #endif iconv_t _iconv_open_r (struct _reent *, const char *, const char *); size_t _iconv_r (struct _reent *, iconv_t, const char **, size_t *, char **, size_t *); int _iconv_close_r (struct _reent *, iconv_t); _END_STD_C #endif /* #ifndef _ICONV_H_ */ 0707010000001c000081a4000000000000000000000001630c8dd40000192e000000000000000000000000000000000000002200000000./usr/nvptx-none/include/ieeefp.h#ifndef _IEEE_FP_H_ #define _IEEE_FP_H_ #include "_ansi.h" #include #include _BEGIN_STD_C /* FIXME FIXME FIXME: Neither of __ieee_{float,double}_shape_type seem to be used anywhere except in libm/test. If that is the case, please delete these from here. If that is not the case, please insert documentation here describing why they're needed. */ #ifdef __IEEE_BIG_ENDIAN typedef union { double value; struct { unsigned int sign : 1; unsigned int exponent: 11; unsigned int fraction0:4; unsigned int fraction1:16; unsigned int fraction2:16; unsigned int fraction3:16; } number; struct { unsigned int sign : 1; unsigned int exponent: 11; unsigned int quiet:1; unsigned int function0:3; unsigned int function1:16; unsigned int function2:16; unsigned int function3:16; } nan; struct { unsigned long msw; unsigned long lsw; } parts; long aslong[2]; } __ieee_double_shape_type; #elif defined __IEEE_LITTLE_ENDIAN typedef union { double value; struct { #ifdef __SMALL_BITFIELDS unsigned int fraction3:16; unsigned int fraction2:16; unsigned int fraction1:16; unsigned int fraction0: 4; #else unsigned int fraction1:32; unsigned int fraction0:20; #endif unsigned int exponent :11; unsigned int sign : 1; } number; struct { #ifdef __SMALL_BITFIELDS unsigned int function3:16; unsigned int function2:16; unsigned int function1:16; unsigned int function0:3; #else unsigned int function1:32; unsigned int function0:19; #endif unsigned int quiet:1; unsigned int exponent: 11; unsigned int sign : 1; } nan; struct { unsigned long lsw; unsigned long msw; } parts; long aslong[2]; } __ieee_double_shape_type; #endif /* __IEEE_LITTLE_ENDIAN */ #ifdef __IEEE_BIG_ENDIAN typedef union { float value; struct { unsigned int sign : 1; unsigned int exponent: 8; unsigned int fraction0: 7; unsigned int fraction1: 16; } number; struct { unsigned int sign:1; unsigned int exponent:8; unsigned int quiet:1; unsigned int function0:6; unsigned int function1:16; } nan; long p1; } __ieee_float_shape_type; #elif defined __IEEE_LITTLE_ENDIAN typedef union { float value; struct { unsigned int fraction0: 7; unsigned int fraction1: 16; unsigned int exponent: 8; unsigned int sign : 1; } number; struct { unsigned int function1:16; unsigned int function0:6; unsigned int quiet:1; unsigned int exponent:8; unsigned int sign:1; } nan; long p1; } __ieee_float_shape_type; #endif /* __IEEE_LITTLE_ENDIAN */ #ifndef _LDBL_EQ_DBL #ifndef LDBL_MANT_DIG #error "LDBL_MANT_DIG not defined - should be found in float.h" #elif LDBL_MANT_DIG == DBL_MANT_DIG #error "double and long double are the same size but LDBL_EQ_DBL is not defined" #elif LDBL_MANT_DIG == 53 /* This happens when doubles are 32-bits and long doubles are 64-bits. */ #define EXT_EXPBITS 11 #define EXT_FRACHBITS 20 #define EXT_FRACLBITS 32 #define __ieee_ext_field_type unsigned long #elif LDBL_MANT_DIG == 64 #define EXT_EXPBITS 15 #define EXT_FRACHBITS 32 #define EXT_FRACLBITS 32 #define __ieee_ext_field_type unsigned int #elif LDBL_MANT_DIG == 65 #define EXT_EXPBITS 15 #define EXT_FRACHBITS 32 #define EXT_FRACLBITS 32 #define __ieee_ext_field_type unsigned int #elif LDBL_MANT_DIG == 112 #define EXT_EXPBITS 15 #define EXT_FRACHBITS 48 #define EXT_FRACLBITS 64 #define __ieee_ext_field_type unsigned long long #elif LDBL_MANT_DIG == 113 #define EXT_EXPBITS 15 #define EXT_FRACHBITS 48 #define EXT_FRACLBITS 64 #define __ieee_ext_field_type unsigned long long #else #error Unsupported value for LDBL_MANT_DIG #endif #define EXT_EXP_INFNAN ((1 << EXT_EXPBITS) - 1) /* 32767 */ #define EXT_EXP_BIAS ((1 << (EXT_EXPBITS - 1)) - 1) /* 16383 */ #define EXT_FRACBITS (EXT_FRACLBITS + EXT_FRACHBITS) typedef struct ieee_ext { __ieee_ext_field_type ext_fracl : EXT_FRACLBITS; __ieee_ext_field_type ext_frach : EXT_FRACHBITS; __ieee_ext_field_type ext_exp : EXT_EXPBITS; __ieee_ext_field_type ext_sign : 1; } ieee_ext; typedef union ieee_ext_u { long double extu_ld; struct ieee_ext extu_ext; } ieee_ext_u; #endif /* ! _LDBL_EQ_DBL */ /* FLOATING ROUNDING */ typedef int fp_rnd; #define FP_RN 0 /* Round to nearest */ #define FP_RM 1 /* Round down */ #define FP_RP 2 /* Round up */ #define FP_RZ 3 /* Round to zero (trunate) */ fp_rnd fpgetround (void); fp_rnd fpsetround (fp_rnd); /* EXCEPTIONS */ typedef int fp_except; #define FP_X_INV 0x10 /* Invalid operation */ #define FP_X_DX 0x80 /* Divide by zero */ #define FP_X_OFL 0x04 /* Overflow exception */ #define FP_X_UFL 0x02 /* Underflow exception */ #define FP_X_IMP 0x01 /* imprecise exception */ fp_except fpgetmask (void); fp_except fpsetmask (fp_except); fp_except fpgetsticky (void); fp_except fpsetsticky (fp_except); /* INTEGER ROUNDING */ typedef int fp_rdi; #define FP_RDI_TOZ 0 /* Round to Zero */ #define FP_RDI_RD 1 /* Follow float mode */ fp_rdi fpgetroundtoi (void); fp_rdi fpsetroundtoi (fp_rdi); #define __IEEE_DBL_EXPBIAS 1023 #define __IEEE_FLT_EXPBIAS 127 #define __IEEE_DBL_EXPLEN 11 #define __IEEE_FLT_EXPLEN 8 #define __IEEE_DBL_FRACLEN (64 - (__IEEE_DBL_EXPLEN + 1)) #define __IEEE_FLT_FRACLEN (32 - (__IEEE_FLT_EXPLEN + 1)) #define __IEEE_DBL_MAXPOWTWO ((double)(1L << 32 - 2) * (1L << (32-11) - 32 + 1)) #define __IEEE_FLT_MAXPOWTWO ((float)(1L << (32-8) - 1)) #define __IEEE_DBL_NAN_EXP 0x7ff #define __IEEE_FLT_NAN_EXP 0xff #ifdef __ieeefp_isnanf #define isnanf(x) __ieeefp_isnanf(x) #endif #ifdef __ieeefp_isinff #define isinff(x) __ieeefp_isinff(x) #endif #ifdef __ieeefp_finitef #define finitef(x) __ieeefp_finitef(x) #endif #ifdef _DOUBLE_IS_32BITS #undef __IEEE_DBL_EXPBIAS #define __IEEE_DBL_EXPBIAS __IEEE_FLT_EXPBIAS #undef __IEEE_DBL_EXPLEN #define __IEEE_DBL_EXPLEN __IEEE_FLT_EXPLEN #undef __IEEE_DBL_FRACLEN #define __IEEE_DBL_FRACLEN __IEEE_FLT_FRACLEN #undef __IEEE_DBL_MAXPOWTWO #define __IEEE_DBL_MAXPOWTWO __IEEE_FLT_MAXPOWTWO #undef __IEEE_DBL_NAN_EXP #define __IEEE_DBL_NAN_EXP __IEEE_FLT_NAN_EXP #undef __ieee_double_shape_type #define __ieee_double_shape_type __ieee_float_shape_type #endif /* _DOUBLE_IS_32BITS */ _END_STD_C #endif /* _IEEE_FP_H_ */ 0707010000001d000081a4000000000000000000000001630c8dd4000025fa000000000000000000000000000000000000002400000000./usr/nvptx-none/include/inttypes.h/* * Copyright (c) 2004, 2005 by * Ralf Corsepius, Ulm/Germany. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ /** * @file inttypes.h */ #ifndef _INTTYPES_H #define _INTTYPES_H #include #include #include #include "_ansi.h" #include #define __need_wchar_t #include #if __BSD_VISIBLE #include #endif #define __STRINGIFY(a) #a /* 8-bit types */ #define __PRI8(x) __INT8 __STRINGIFY(x) #define __PRI8LEAST(x) __LEAST8 __STRINGIFY(x) #define __PRI8FAST(x) __FAST8 __STRINGIFY(x) /* NOTICE: scanning 8-bit types requires use of the hh specifier * which is only supported on newlib platforms that * are built with C99 I/O format support enabled. If the flag in * newlib.h hasn't been set during configuration to indicate this, the 8-bit * scanning format macros are disabled here as they result in undefined * behaviour which can include memory overwrite. Overriding the flag after the * library has been built is not recommended as it will expose the underlying * undefined behaviour. */ #if defined(_WANT_IO_C99_FORMATS) #define __SCN8(x) __INT8 __STRINGIFY(x) #define __SCN8LEAST(x) __LEAST8 __STRINGIFY(x) #define __SCN8FAST(x) __FAST8 __STRINGIFY(x) #endif /* _WANT_IO_C99_FORMATS */ #define PRId8 __PRI8(d) #define PRIi8 __PRI8(i) #define PRIo8 __PRI8(o) #define PRIu8 __PRI8(u) #define PRIx8 __PRI8(x) #define PRIX8 __PRI8(X) /* Macros below are only enabled for a newlib built with C99 I/O format support. */ #if defined(_WANT_IO_C99_FORMATS) #define SCNd8 __SCN8(d) #define SCNi8 __SCN8(i) #define SCNo8 __SCN8(o) #define SCNu8 __SCN8(u) #define SCNx8 __SCN8(x) #endif /* _WANT_IO_C99_FORMATS */ #define PRIdLEAST8 __PRI8LEAST(d) #define PRIiLEAST8 __PRI8LEAST(i) #define PRIoLEAST8 __PRI8LEAST(o) #define PRIuLEAST8 __PRI8LEAST(u) #define PRIxLEAST8 __PRI8LEAST(x) #define PRIXLEAST8 __PRI8LEAST(X) /* Macros below are only enabled for a newlib built with C99 I/O format support. */ #if defined(_WANT_IO_C99_FORMATS) #define SCNdLEAST8 __SCN8LEAST(d) #define SCNiLEAST8 __SCN8LEAST(i) #define SCNoLEAST8 __SCN8LEAST(o) #define SCNuLEAST8 __SCN8LEAST(u) #define SCNxLEAST8 __SCN8LEAST(x) #endif /* _WANT_IO_C99_FORMATS */ #define PRIdFAST8 __PRI8FAST(d) #define PRIiFAST8 __PRI8FAST(i) #define PRIoFAST8 __PRI8FAST(o) #define PRIuFAST8 __PRI8FAST(u) #define PRIxFAST8 __PRI8FAST(x) #define PRIXFAST8 __PRI8FAST(X) /* Macros below are only enabled for a newlib built with C99 I/O format support. */ #if defined(_WANT_IO_C99_FORMATS) #define SCNdFAST8 __SCN8FAST(d) #define SCNiFAST8 __SCN8FAST(i) #define SCNoFAST8 __SCN8FAST(o) #define SCNuFAST8 __SCN8FAST(u) #define SCNxFAST8 __SCN8FAST(x) #endif /* _WANT_IO_C99_FORMATS */ /* 16-bit types */ #define __PRI16(x) __INT16 __STRINGIFY(x) #define __PRI16LEAST(x) __LEAST16 __STRINGIFY(x) #define __PRI16FAST(x) __FAST16 __STRINGIFY(x) #define __SCN16(x) __INT16 __STRINGIFY(x) #define __SCN16LEAST(x) __LEAST16 __STRINGIFY(x) #define __SCN16FAST(x) __FAST16 __STRINGIFY(x) #define PRId16 __PRI16(d) #define PRIi16 __PRI16(i) #define PRIo16 __PRI16(o) #define PRIu16 __PRI16(u) #define PRIx16 __PRI16(x) #define PRIX16 __PRI16(X) #define SCNd16 __SCN16(d) #define SCNi16 __SCN16(i) #define SCNo16 __SCN16(o) #define SCNu16 __SCN16(u) #define SCNx16 __SCN16(x) #define PRIdLEAST16 __PRI16LEAST(d) #define PRIiLEAST16 __PRI16LEAST(i) #define PRIoLEAST16 __PRI16LEAST(o) #define PRIuLEAST16 __PRI16LEAST(u) #define PRIxLEAST16 __PRI16LEAST(x) #define PRIXLEAST16 __PRI16LEAST(X) #define SCNdLEAST16 __SCN16LEAST(d) #define SCNiLEAST16 __SCN16LEAST(i) #define SCNoLEAST16 __SCN16LEAST(o) #define SCNuLEAST16 __SCN16LEAST(u) #define SCNxLEAST16 __SCN16LEAST(x) #define PRIdFAST16 __PRI16FAST(d) #define PRIiFAST16 __PRI16FAST(i) #define PRIoFAST16 __PRI16FAST(o) #define PRIuFAST16 __PRI16FAST(u) #define PRIxFAST16 __PRI16FAST(x) #define PRIXFAST16 __PRI16FAST(X) #define SCNdFAST16 __SCN16FAST(d) #define SCNiFAST16 __SCN16FAST(i) #define SCNoFAST16 __SCN16FAST(o) #define SCNuFAST16 __SCN16FAST(u) #define SCNxFAST16 __SCN16FAST(x) /* 32-bit types */ #define __PRI32(x) __INT32 __STRINGIFY(x) #define __SCN32(x) __INT32 __STRINGIFY(x) #define __PRI32LEAST(x) __LEAST32 __STRINGIFY(x) #define __SCN32LEAST(x) __LEAST32 __STRINGIFY(x) #define __PRI32FAST(x) __FAST32 __STRINGIFY(x) #define __SCN32FAST(x) __FAST32 __STRINGIFY(x) #define PRId32 __PRI32(d) #define PRIi32 __PRI32(i) #define PRIo32 __PRI32(o) #define PRIu32 __PRI32(u) #define PRIx32 __PRI32(x) #define PRIX32 __PRI32(X) #define SCNd32 __SCN32(d) #define SCNi32 __SCN32(i) #define SCNo32 __SCN32(o) #define SCNu32 __SCN32(u) #define SCNx32 __SCN32(x) #define PRIdLEAST32 __PRI32LEAST(d) #define PRIiLEAST32 __PRI32LEAST(i) #define PRIoLEAST32 __PRI32LEAST(o) #define PRIuLEAST32 __PRI32LEAST(u) #define PRIxLEAST32 __PRI32LEAST(x) #define PRIXLEAST32 __PRI32LEAST(X) #define SCNdLEAST32 __SCN32LEAST(d) #define SCNiLEAST32 __SCN32LEAST(i) #define SCNoLEAST32 __SCN32LEAST(o) #define SCNuLEAST32 __SCN32LEAST(u) #define SCNxLEAST32 __SCN32LEAST(x) #define PRIdFAST32 __PRI32FAST(d) #define PRIiFAST32 __PRI32FAST(i) #define PRIoFAST32 __PRI32FAST(o) #define PRIuFAST32 __PRI32FAST(u) #define PRIxFAST32 __PRI32FAST(x) #define PRIXFAST32 __PRI32FAST(X) #define SCNdFAST32 __SCN32FAST(d) #define SCNiFAST32 __SCN32FAST(i) #define SCNoFAST32 __SCN32FAST(o) #define SCNuFAST32 __SCN32FAST(u) #define SCNxFAST32 __SCN32FAST(x) /* 64-bit types */ #define __PRI64(x) __INT64 __STRINGIFY(x) #define __SCN64(x) __INT64 __STRINGIFY(x) #define __PRI64LEAST(x) __LEAST64 __STRINGIFY(x) #define __SCN64LEAST(x) __LEAST64 __STRINGIFY(x) #define __PRI64FAST(x) __FAST64 __STRINGIFY(x) #define __SCN64FAST(x) __FAST64 __STRINGIFY(x) #if __int64_t_defined #define PRId64 __PRI64(d) #define PRIi64 __PRI64(i) #define PRIo64 __PRI64(o) #define PRIu64 __PRI64(u) #define PRIx64 __PRI64(x) #define PRIX64 __PRI64(X) #define SCNd64 __SCN64(d) #define SCNi64 __SCN64(i) #define SCNo64 __SCN64(o) #define SCNu64 __SCN64(u) #define SCNx64 __SCN64(x) #endif #if __int_least64_t_defined #define PRIdLEAST64 __PRI64LEAST(d) #define PRIiLEAST64 __PRI64LEAST(i) #define PRIoLEAST64 __PRI64LEAST(o) #define PRIuLEAST64 __PRI64LEAST(u) #define PRIxLEAST64 __PRI64LEAST(x) #define PRIXLEAST64 __PRI64LEAST(X) #define SCNdLEAST64 __SCN64LEAST(d) #define SCNiLEAST64 __SCN64LEAST(i) #define SCNoLEAST64 __SCN64LEAST(o) #define SCNuLEAST64 __SCN64LEAST(u) #define SCNxLEAST64 __SCN64LEAST(x) #endif #if __int_fast64_t_defined #define PRIdFAST64 __PRI64FAST(d) #define PRIiFAST64 __PRI64FAST(i) #define PRIoFAST64 __PRI64FAST(o) #define PRIuFAST64 __PRI64FAST(u) #define PRIxFAST64 __PRI64FAST(x) #define PRIXFAST64 __PRI64FAST(X) #define SCNdFAST64 __SCN64FAST(d) #define SCNiFAST64 __SCN64FAST(i) #define SCNoFAST64 __SCN64FAST(o) #define SCNuFAST64 __SCN64FAST(u) #define SCNxFAST64 __SCN64FAST(x) #endif /* max-bit types */ #if __have_long64 #define __PRIMAX(x) __STRINGIFY(l##x) #define __SCNMAX(x) __STRINGIFY(l##x) #elif __have_longlong64 #define __PRIMAX(x) __STRINGIFY(ll##x) #define __SCNMAX(x) __STRINGIFY(ll##x) #else #define __PRIMAX(x) __STRINGIFY(x) #define __SCNMAX(x) __STRINGIFY(x) #endif #define PRIdMAX __PRIMAX(d) #define PRIiMAX __PRIMAX(i) #define PRIoMAX __PRIMAX(o) #define PRIuMAX __PRIMAX(u) #define PRIxMAX __PRIMAX(x) #define PRIXMAX __PRIMAX(X) #define SCNdMAX __SCNMAX(d) #define SCNiMAX __SCNMAX(i) #define SCNoMAX __SCNMAX(o) #define SCNuMAX __SCNMAX(u) #define SCNxMAX __SCNMAX(x) /* ptr types */ #if defined (_INTPTR_EQ_LONGLONG) # define __PRIPTR(x) __STRINGIFY(ll##x) # define __SCNPTR(x) __STRINGIFY(ll##x) #elif defined (_INTPTR_EQ_LONG) # define __PRIPTR(x) __STRINGIFY(l##x) # define __SCNPTR(x) __STRINGIFY(l##x) #else # define __PRIPTR(x) __STRINGIFY(x) # define __SCNPTR(x) __STRINGIFY(x) #endif #define PRIdPTR __PRIPTR(d) #define PRIiPTR __PRIPTR(i) #define PRIoPTR __PRIPTR(o) #define PRIuPTR __PRIPTR(u) #define PRIxPTR __PRIPTR(x) #define PRIXPTR __PRIPTR(X) #define SCNdPTR __SCNPTR(d) #define SCNiPTR __SCNPTR(i) #define SCNoPTR __SCNPTR(o) #define SCNuPTR __SCNPTR(u) #define SCNxPTR __SCNPTR(x) typedef struct { intmax_t quot; intmax_t rem; } imaxdiv_t; struct _reent; #ifdef __cplusplus extern "C" { #endif extern intmax_t imaxabs(intmax_t); extern imaxdiv_t imaxdiv(intmax_t numer, intmax_t denomer); extern intmax_t strtoimax(const char *__restrict, char **__restrict, int); extern intmax_t _strtoimax_r(struct _reent *, const char *__restrict, char **__restrict, int); extern uintmax_t strtoumax(const char *__restrict, char **__restrict, int); extern uintmax_t _strtoumax_r(struct _reent *, const char *__restrict, char **__restrict, int); extern intmax_t wcstoimax(const wchar_t *__restrict, wchar_t **__restrict, int); extern intmax_t _wcstoimax_r(struct _reent *, const wchar_t *__restrict, wchar_t **__restrict, int); extern uintmax_t wcstoumax(const wchar_t *__restrict, wchar_t **__restrict, int); extern uintmax_t _wcstoumax_r(struct _reent *, const wchar_t *__restrict, wchar_t **__restrict, int); #if __BSD_VISIBLE extern intmax_t strtoimax_l(const char *__restrict, char **_restrict, int, locale_t); extern uintmax_t strtoumax_l(const char *__restrict, char **_restrict, int, locale_t); extern intmax_t wcstoimax_l(const wchar_t *__restrict, wchar_t **_restrict, int, locale_t); extern uintmax_t wcstoumax_l(const wchar_t *__restrict, wchar_t **_restrict, int, locale_t); #endif #ifdef __cplusplus } #endif #endif 0707010000001e000081a4000000000000000000000001630c8dd40000211f000000000000000000000000000000000000002400000000./usr/nvptx-none/include/langinfo.h/*- * Copyright (c) 2001 Alexey Zelkin * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD: src/include/langinfo.h,v 1.5 2002/03/23 17:24:53 imp Exp $ */ #ifndef _LANGINFO_H_ #define _LANGINFO_H_ #include #include #if __POSIX_VISIBLE >= 200809 #include #endif #ifndef _NL_ITEM_DECLARED typedef __nl_item nl_item; #define _NL_ITEM_DECLARED #endif enum { /* POSIX and BSD defined items have to stick to the original values to maintain backward compatibility. */ _NL_CTYPE_CODESET_NAME = 0, /* codeset name */ #define CODESET _NL_CTYPE_CODESET_NAME D_T_FMT, /* string for formatting date and time */ #define D_T_FMT D_T_FMT D_FMT, /* date format string */ #define D_FMT D_FMT T_FMT, /* time format string */ #define T_FMT T_FMT T_FMT_AMPM, /* a.m. or p.m. time formatting string */ #define T_FMT_AMPM T_FMT_AMPM AM_STR, /* Ante Meridian affix */ #define AM_STR AM_STR PM_STR, /* Post Meridian affix */ #define PM_STR PM_STR /* week day names */ DAY_1, #define DAY_1 DAY_1 DAY_2, #define DAY_2 DAY_2 DAY_3, #define DAY_3 DAY_3 DAY_4, #define DAY_4 DAY_4 DAY_5, #define DAY_5 DAY_5 DAY_6, #define DAY_6 DAY_6 DAY_7, #define DAY_7 DAY_7 /* abbreviated week day names */ ABDAY_1, #define ABDAY_1 ABDAY_1 ABDAY_2, #define ABDAY_2 ABDAY_2 ABDAY_3, #define ABDAY_3 ABDAY_3 ABDAY_4, #define ABDAY_4 ABDAY_4 ABDAY_5, #define ABDAY_5 ABDAY_5 ABDAY_6, #define ABDAY_6 ABDAY_6 ABDAY_7, #define ABDAY_7 ABDAY_7 /* month names */ MON_1, #define MON_1 MON_1 MON_2, #define MON_2 MON_2 MON_3, #define MON_3 MON_3 MON_4, #define MON_4 MON_4 MON_5, #define MON_5 MON_5 MON_6, #define MON_6 MON_6 MON_7, #define MON_7 MON_7 MON_8, #define MON_8 MON_8 MON_9, #define MON_9 MON_9 MON_10, #define MON_10 MON_10 MON_11, #define MON_11 MON_11 MON_12, #define MON_12 MON_12 /* abbreviated month names */ ABMON_1, #define ABMON_1 ABMON_1 ABMON_2, #define ABMON_2 ABMON_2 ABMON_3, #define ABMON_3 ABMON_3 ABMON_4, #define ABMON_4 ABMON_4 ABMON_5, #define ABMON_5 ABMON_5 ABMON_6, #define ABMON_6 ABMON_6 ABMON_7, #define ABMON_7 ABMON_7 ABMON_8, #define ABMON_8 ABMON_8 ABMON_9, #define ABMON_9 ABMON_9 ABMON_10, #define ABMON_10 ABMON_10 ABMON_11, #define ABMON_11 ABMON_11 ABMON_12, #define ABMON_12 ABMON_12 ERA, /* era description segments */ #define ERA ERA ERA_D_FMT, /* era date format string */ #define ERA_D_FMT ERA_D_FMT ERA_D_T_FMT, /* era date and time format string */ #define ERA_D_T_FMT ERA_D_T_FMT ERA_T_FMT, /* era time format string */ #define ERA_T_FMT ERA_T_FMT ALT_DIGITS, /* alternative symbols for digits */ #define ALT_DIGITS ALT_DIGITS RADIXCHAR, /* radix char */ #define RADIXCHAR RADIXCHAR THOUSEP, /* separator for thousands */ #define THOUSEP THOUSEP YESEXPR, /* affirmative response expression */ #define YESEXPR YESEXPR NOEXPR, /* negative response expression */ #define NOEXPR NOEXPR YESSTR, /* affirmative response for yes/no queries */ #define YESSTR YESSTR NOSTR, /* negative response for yes/no queries */ #define NOSTR NOSTR CRNCYSTR, /* currency symbol */ #define CRNCYSTR CRNCYSTR D_MD_ORDER, /* month/day order (BSD extension) */ #define D_MD_ORDER D_MD_ORDER _NL_TIME_DATE_FMT = 84, /* date fmt used by date(1) (GNU extension) */ #define _DATE_FMT _NL_TIME_DATE_FMT #ifdef __HAVE_LOCALE_INFO__ _NL_CTYPE_MB_CUR_MAX, _NL_MESSAGES_CODESET, #ifdef __HAVE_LOCALE_INFO_EXTENDED__ /* NOTE: Always maintain the order and position of existing entries! Always append new entry to the list, prior to the definition of _NL_LOCALE_EXTENDED_LAST_ENTRY. */ _NL_LOCALE_EXTENDED_FIRST_ENTRY, _NL_CTYPE_OUTDIGITS0_MB, _NL_CTYPE_OUTDIGITS1_MB, _NL_CTYPE_OUTDIGITS2_MB, _NL_CTYPE_OUTDIGITS3_MB, _NL_CTYPE_OUTDIGITS4_MB, _NL_CTYPE_OUTDIGITS5_MB, _NL_CTYPE_OUTDIGITS6_MB, _NL_CTYPE_OUTDIGITS7_MB, _NL_CTYPE_OUTDIGITS8_MB, _NL_CTYPE_OUTDIGITS9_MB, _NL_CTYPE_OUTDIGITS0_WC, _NL_CTYPE_OUTDIGITS1_WC, _NL_CTYPE_OUTDIGITS2_WC, _NL_CTYPE_OUTDIGITS3_WC, _NL_CTYPE_OUTDIGITS4_WC, _NL_CTYPE_OUTDIGITS5_WC, _NL_CTYPE_OUTDIGITS6_WC, _NL_CTYPE_OUTDIGITS7_WC, _NL_CTYPE_OUTDIGITS8_WC, _NL_CTYPE_OUTDIGITS9_WC, _NL_TIME_CODESET, _NL_TIME_WMON_1, _NL_TIME_WMON_2, _NL_TIME_WMON_3, _NL_TIME_WMON_4, _NL_TIME_WMON_5, _NL_TIME_WMON_6, _NL_TIME_WMON_7, _NL_TIME_WMON_8, _NL_TIME_WMON_9, _NL_TIME_WMON_10, _NL_TIME_WMON_11, _NL_TIME_WMON_12, _NL_TIME_WMONTH_1, _NL_TIME_WMONTH_2, _NL_TIME_WMONTH_3, _NL_TIME_WMONTH_4, _NL_TIME_WMONTH_5, _NL_TIME_WMONTH_6, _NL_TIME_WMONTH_7, _NL_TIME_WMONTH_8, _NL_TIME_WMONTH_9, _NL_TIME_WMONTH_10, _NL_TIME_WMONTH_11, _NL_TIME_WMONTH_12, _NL_TIME_WWDAY_1, _NL_TIME_WWDAY_2, _NL_TIME_WWDAY_3, _NL_TIME_WWDAY_4, _NL_TIME_WWDAY_5, _NL_TIME_WWDAY_6, _NL_TIME_WWDAY_7, _NL_TIME_WWEEKDAY_1, _NL_TIME_WWEEKDAY_2, _NL_TIME_WWEEKDAY_3, _NL_TIME_WWEEKDAY_4, _NL_TIME_WWEEKDAY_5, _NL_TIME_WWEEKDAY_6, _NL_TIME_WWEEKDAY_7, _NL_TIME_WT_FMT, _NL_TIME_WD_FMT, _NL_TIME_WD_T_FMT, _NL_TIME_WAM_STR, _NL_TIME_WPM_STR, _NL_TIME_WDATE_FMT, _NL_TIME_WT_FMT_AMPM, _NL_TIME_WERA, _NL_TIME_WERA_D_FMT, _NL_TIME_WERA_D_T_FMT, _NL_TIME_WERA_T_FMT, _NL_TIME_WALT_DIGITS, _NL_NUMERIC_CODESET, _NL_NUMERIC_GROUPING, _NL_NUMERIC_DECIMAL_POINT_WC, _NL_NUMERIC_THOUSANDS_SEP_WC, _NL_MONETARY_INT_CURR_SYMBOL, _NL_MONETARY_CURRENCY_SYMBOL, _NL_MONETARY_MON_DECIMAL_POINT, _NL_MONETARY_MON_THOUSANDS_SEP, _NL_MONETARY_MON_GROUPING, _NL_MONETARY_POSITIVE_SIGN, _NL_MONETARY_NEGATIVE_SIGN, _NL_MONETARY_INT_FRAC_DIGITS, _NL_MONETARY_FRAC_DIGITS, _NL_MONETARY_P_CS_PRECEDES, _NL_MONETARY_P_SEP_BY_SPACE, _NL_MONETARY_N_CS_PRECEDES, _NL_MONETARY_N_SEP_BY_SPACE, _NL_MONETARY_P_SIGN_POSN, _NL_MONETARY_N_SIGN_POSN, _NL_MONETARY_INT_P_CS_PRECEDES, _NL_MONETARY_INT_P_SEP_BY_SPACE, _NL_MONETARY_INT_N_CS_PRECEDES, _NL_MONETARY_INT_N_SEP_BY_SPACE, _NL_MONETARY_INT_P_SIGN_POSN, _NL_MONETARY_INT_N_SIGN_POSN, _NL_MONETARY_CODESET, _NL_MONETARY_WINT_CURR_SYMBOL, _NL_MONETARY_WCURRENCY_SYMBOL, _NL_MONETARY_WMON_DECIMAL_POINT, _NL_MONETARY_WMON_THOUSANDS_SEP, _NL_MONETARY_WPOSITIVE_SIGN, _NL_MONETARY_WNEGATIVE_SIGN, _NL_MESSAGES_WYESEXPR, _NL_MESSAGES_WNOEXPR, _NL_MESSAGES_WYESSTR, _NL_MESSAGES_WNOSTR, _NL_COLLATE_CODESET, /* This MUST be the last entry since it's used to check for an array index in nl_langinfo(). It also must not exceed _NL_LOCALE_NAME_BASE. */ _NL_LOCALE_EXTENDED_LAST_ENTRY #endif /* __HAVE_LOCALE_INFO_EXTENDED__ */ #endif /* __HAVE_LOCALE_INFO__ */ }; /* As an extension, nl_langinfo can retrive the name of a locale category, with this mapping from setlocale() category (other than LC_ALL) to nl_item. */ #define _NL_LOCALE_NAME_BASE 100000 #if __GNU_VISIBLE #define NL_LOCALE_NAME(category) (_NL_LOCALE_NAME_BASE + (category)) #endif __BEGIN_DECLS char *nl_langinfo (nl_item); #if __POSIX_VISIBLE >= 200809 char *nl_langinfo_l (nl_item, locale_t); #endif __END_DECLS #endif /* !_LANGINFO_H_ */ 0707010000001f000081a4000000000000000000000001630c8dd400000356000000000000000000000000000000000000002200000000./usr/nvptx-none/include/libgen.h/* * libgen.h - defined by XPG4 */ #ifndef _LIBGEN_H_ #define _LIBGEN_H_ #include "_ansi.h" #include #include #ifdef __cplusplus extern "C" { #endif /* There are two common basename variants. If you do NOT #include and you do #define _GNU_SOURCE #include you get the GNU version. Otherwise you get the POSIX versionfor which you should #include i for the function prototype. POSIX requires that #undef basename will still let you invoke the underlying function. However, this also implies that the POSIX version is used in this case. That's made sure here. */ #undef basename #define basename __xpg_basename char *basename (char *) __asm__(__ASMNAME("basename")); char *dirname (char *); #ifdef __cplusplus } #endif #endif /* _LIBGEN_H_ */ 07070100000020000081a4000000000000000000000001630c8dd400000f30000000000000000000000000000000000000002200000000./usr/nvptx-none/include/limits.h#ifndef _LIBC_LIMITS_H_ # define _LIBC_LIMITS_H_ 1 #include #include #include # ifdef _MB_LEN_MAX # define MB_LEN_MAX _MB_LEN_MAX # else # define MB_LEN_MAX 1 # endif /* Maximum number of positional arguments, if _WANT_IO_POS_ARGS. */ # ifndef NL_ARGMAX # define NL_ARGMAX 32 # endif /* if do not have #include_next support, then we have to define the limits here. */ # if !defined __GNUC__ || __GNUC__ < 2 # ifndef _LIMITS_H # define _LIMITS_H 1 # include /* Number of bits in a `char'. */ # undef CHAR_BIT # define CHAR_BIT 8 /* Minimum and maximum values a `signed char' can hold. */ # undef SCHAR_MIN # define SCHAR_MIN (-128) # undef SCHAR_MAX # define SCHAR_MAX 127 /* Maximum value an `unsigned char' can hold. (Minimum is 0). */ # undef UCHAR_MAX # define UCHAR_MAX 255 /* Minimum and maximum values a `char' can hold. */ # ifdef __CHAR_UNSIGNED__ # undef CHAR_MIN # define CHAR_MIN 0 # undef CHAR_MAX # define CHAR_MAX 255 # else # undef CHAR_MIN # define CHAR_MIN (-128) # undef CHAR_MAX # define CHAR_MAX 127 # endif /* Minimum and maximum values a `signed short int' can hold. */ # undef SHRT_MIN /* For the sake of 16 bit hosts, we may not use -32768 */ # define SHRT_MIN (-32767-1) # undef SHRT_MAX # define SHRT_MAX 32767 /* Maximum value an `unsigned short int' can hold. (Minimum is 0). */ # undef USHRT_MAX # define USHRT_MAX 65535 /* Minimum and maximum values a `signed int' can hold. */ # ifndef __INT_MAX__ # define __INT_MAX__ 2147483647 # endif # undef INT_MIN # define INT_MIN (-INT_MAX-1) # undef INT_MAX # define INT_MAX __INT_MAX__ /* Maximum value an `unsigned int' can hold. (Minimum is 0). */ # undef UINT_MAX # define UINT_MAX (INT_MAX * 2U + 1) /* Minimum and maximum values a `signed long int' can hold. (Same as `int'). */ # ifndef __LONG_MAX__ # if defined (__alpha__) || (defined (__sparc__) && defined(__arch64__)) || defined (__sparcv9) # define __LONG_MAX__ 9223372036854775807L # else # define __LONG_MAX__ 2147483647L # endif /* __alpha__ || sparc64 */ # endif # undef LONG_MIN # define LONG_MIN (-LONG_MAX-1) # undef LONG_MAX # define LONG_MAX __LONG_MAX__ /* Maximum value an `unsigned long int' can hold. (Minimum is 0). */ # undef ULONG_MAX # define ULONG_MAX (LONG_MAX * 2UL + 1) # ifndef __LONG_LONG_MAX__ # define __LONG_LONG_MAX__ 9223372036854775807LL # endif # if __ISO_C_VISIBLE >= 1999 /* Minimum and maximum values a `signed long long int' can hold. */ # undef LLONG_MIN # define LLONG_MIN (-LLONG_MAX-1) # undef LLONG_MAX # define LLONG_MAX __LONG_LONG_MAX__ /* Maximum value an `unsigned long long int' can hold. (Minimum is 0). */ # undef ULLONG_MAX # define ULLONG_MAX (LLONG_MAX * 2ULL + 1) # endif # if __GNU_VISIBLE /* Minimum and maximum values a `signed long long int' can hold. */ # undef LONG_LONG_MIN # define LONG_LONG_MIN (-LONG_LONG_MAX-1) # undef LONG_LONG_MAX # define LONG_LONG_MAX __LONG_LONG_MAX__ /* Maximum value an `unsigned long long int' can hold. (Minimum is 0). */ # undef ULONG_LONG_MAX # define ULONG_LONG_MAX (LONG_LONG_MAX * 2ULL + 1) # endif # endif /* _LIMITS_H */ # endif /* GCC 2. */ #endif /* !_LIBC_LIMITS_H_ */ #if defined __GNUC__ && !defined _GCC_LIMITS_H_ /* `_GCC_LIMITS_H_' is what GCC's file defines. */ # include_next #endif /* __GNUC__ && !_GCC_LIMITS_H_ */ #ifndef _POSIX2_RE_DUP_MAX /* The maximum number of repeated occurrences of a regular expression * permitted when using the interval notation `\{M,N\}'. */ #define _POSIX2_RE_DUP_MAX 255 #endif /* _POSIX2_RE_DUP_MAX */ #ifndef ARG_MAX #define ARG_MAX 4096 #endif #ifndef PATH_MAX #define PATH_MAX 4096 #endif 07070100000021000081a4000000000000000000000001630c8dd4000008b1000000000000000000000000000000000000002200000000./usr/nvptx-none/include/locale.h/* locale.h Values appropriate for the formatting of monetary and other numberic quantities. */ #ifndef _LOCALE_H_ #define _LOCALE_H_ #include "_ansi.h" #include #define __need_NULL #include #define LC_ALL 0 #define LC_COLLATE 1 #define LC_CTYPE 2 #define LC_MONETARY 3 #define LC_NUMERIC 4 #define LC_TIME 5 #define LC_MESSAGES 6 #if __POSIX_VISIBLE >= 200809 || defined (_COMPILING_NEWLIB) #include #define LC_ALL_MASK (1 << LC_ALL) #define LC_COLLATE_MASK (1 << LC_COLLATE) #define LC_CTYPE_MASK (1 << LC_CTYPE) #define LC_MONETARY_MASK (1 << LC_MONETARY) #define LC_NUMERIC_MASK (1 << LC_NUMERIC) #define LC_TIME_MASK (1 << LC_TIME) #define LC_MESSAGES_MASK (1 << LC_MESSAGES) #define LC_GLOBAL_LOCALE ((struct __locale_t *) -1) #endif /* __POSIX_VISIBLE >= 200809 */ _BEGIN_STD_C struct lconv { char *decimal_point; char *thousands_sep; char *grouping; char *int_curr_symbol; char *currency_symbol; char *mon_decimal_point; char *mon_thousands_sep; char *mon_grouping; char *positive_sign; char *negative_sign; char int_frac_digits; char frac_digits; char p_cs_precedes; char p_sep_by_space; char n_cs_precedes; char n_sep_by_space; char p_sign_posn; char n_sign_posn; char int_n_cs_precedes; char int_n_sep_by_space; char int_n_sign_posn; char int_p_cs_precedes; char int_p_sep_by_space; char int_p_sign_posn; }; struct _reent; char *_setlocale_r (struct _reent *, int, const char *); struct lconv *_localeconv_r (struct _reent *); struct __locale_t *_newlocale_r (struct _reent *, int, const char *, struct __locale_t *); void _freelocale_r (struct _reent *, struct __locale_t *); struct __locale_t *_duplocale_r (struct _reent *, struct __locale_t *); struct __locale_t *_uselocale_r (struct _reent *, struct __locale_t *); #ifndef _REENT_ONLY char *setlocale (int, const char *); struct lconv *localeconv (void); #if __POSIX_VISIBLE >= 200809 locale_t newlocale (int, const char *, locale_t); void freelocale (locale_t); locale_t duplocale (locale_t); locale_t uselocale (locale_t); #endif /* __POSIX_VISIBLE >= 200809 */ #endif /* _REENT_ONLY */ _END_STD_C #endif /* _LOCALE_H_ */ 07070100000022000041ed000000000000000000000001630c8dd500000000000000000000000000000000000000000000002100000000./usr/nvptx-none/include/machine07070100000023000081a4000000000000000000000001630c8dd500000033000000000000000000000000000000000000002f00000000./usr/nvptx-none/include/machine/_arc4random.h/* Use default implementation, see arc4random.h */ 07070100000024000081a4000000000000000000000001630c8dd5000019fa000000000000000000000000000000000000003200000000./usr/nvptx-none/include/machine/_default_types.h/* * $Id$ */ #ifndef _MACHINE__DEFAULT_TYPES_H #define _MACHINE__DEFAULT_TYPES_H #include /* * Guess on types by examining *_MIN / *_MAX defines. */ #if __GNUC_PREREQ (3, 3) /* GCC >= 3.3.0 has ____ implicitly defined. */ #define __EXP(x) __##x##__ #else /* Fall back to POSIX versions from */ #define __EXP(x) x #include #endif /* Check if "long long" is 64bit wide */ /* Modern GCCs provide __LONG_LONG_MAX__, SUSv3 wants LLONG_MAX */ #if ( defined(__LONG_LONG_MAX__) && (__LONG_LONG_MAX__ > 0x7fffffff) ) \ || ( defined(LLONG_MAX) && (LLONG_MAX > 0x7fffffff) ) #define __have_longlong64 1 #endif /* Check if "long" is 64bit or 32bit wide */ #if __EXP(LONG_MAX) > 0x7fffffff #define __have_long64 1 #elif __EXP(LONG_MAX) == 0x7fffffff && !defined(__SPU__) #define __have_long32 1 #endif #ifdef __cplusplus extern "C" { #endif #ifdef __INT8_TYPE__ typedef __INT8_TYPE__ __int8_t; #ifdef __UINT8_TYPE__ typedef __UINT8_TYPE__ __uint8_t; #else typedef unsigned __INT8_TYPE__ __uint8_t; #endif #define ___int8_t_defined 1 #elif __EXP(SCHAR_MAX) == 0x7f typedef signed char __int8_t ; typedef unsigned char __uint8_t ; #define ___int8_t_defined 1 #endif #ifdef __INT16_TYPE__ typedef __INT16_TYPE__ __int16_t; #ifdef __UINT16_TYPE__ typedef __UINT16_TYPE__ __uint16_t; #else typedef unsigned __INT16_TYPE__ __uint16_t; #endif #define ___int16_t_defined 1 #elif __EXP(INT_MAX) == 0x7fff typedef signed int __int16_t; typedef unsigned int __uint16_t; #define ___int16_t_defined 1 #elif __EXP(SHRT_MAX) == 0x7fff typedef signed short __int16_t; typedef unsigned short __uint16_t; #define ___int16_t_defined 1 #elif __EXP(SCHAR_MAX) == 0x7fff typedef signed char __int16_t; typedef unsigned char __uint16_t; #define ___int16_t_defined 1 #endif #ifdef __INT32_TYPE__ typedef __INT32_TYPE__ __int32_t; #ifdef __UINT32_TYPE__ typedef __UINT32_TYPE__ __uint32_t; #else typedef unsigned __INT32_TYPE__ __uint32_t; #endif #define ___int32_t_defined 1 #elif __EXP(INT_MAX) == 0x7fffffffL typedef signed int __int32_t; typedef unsigned int __uint32_t; #define ___int32_t_defined 1 #elif __EXP(LONG_MAX) == 0x7fffffffL typedef signed long __int32_t; typedef unsigned long __uint32_t; #define ___int32_t_defined 1 #elif __EXP(SHRT_MAX) == 0x7fffffffL typedef signed short __int32_t; typedef unsigned short __uint32_t; #define ___int32_t_defined 1 #elif __EXP(SCHAR_MAX) == 0x7fffffffL typedef signed char __int32_t; typedef unsigned char __uint32_t; #define ___int32_t_defined 1 #endif #ifdef __INT64_TYPE__ typedef __INT64_TYPE__ __int64_t; #ifdef __UINT64_TYPE__ typedef __UINT64_TYPE__ __uint64_t; #else typedef unsigned __INT64_TYPE__ __uint64_t; #endif #define ___int64_t_defined 1 #elif __EXP(LONG_MAX) > 0x7fffffff typedef signed long __int64_t; typedef unsigned long __uint64_t; #define ___int64_t_defined 1 /* GCC has __LONG_LONG_MAX__ */ #elif defined(__LONG_LONG_MAX__) && (__LONG_LONG_MAX__ > 0x7fffffff) typedef signed long long __int64_t; typedef unsigned long long __uint64_t; #define ___int64_t_defined 1 /* POSIX mandates LLONG_MAX in */ #elif defined(LLONG_MAX) && (LLONG_MAX > 0x7fffffff) typedef signed long long __int64_t; typedef unsigned long long __uint64_t; #define ___int64_t_defined 1 #elif __EXP(INT_MAX) > 0x7fffffff typedef signed int __int64_t; typedef unsigned int __uint64_t; #define ___int64_t_defined 1 #endif #ifdef __INT_LEAST8_TYPE__ typedef __INT_LEAST8_TYPE__ __int_least8_t; #ifdef __UINT_LEAST8_TYPE__ typedef __UINT_LEAST8_TYPE__ __uint_least8_t; #else typedef unsigned __INT_LEAST8_TYPE__ __uint_least8_t; #endif #define ___int_least8_t_defined 1 #elif defined(___int8_t_defined) typedef __int8_t __int_least8_t; typedef __uint8_t __uint_least8_t; #define ___int_least8_t_defined 1 #elif defined(___int16_t_defined) typedef __int16_t __int_least8_t; typedef __uint16_t __uint_least8_t; #define ___int_least8_t_defined 1 #elif defined(___int32_t_defined) typedef __int32_t __int_least8_t; typedef __uint32_t __uint_least8_t; #define ___int_least8_t_defined 1 #elif defined(___int64_t_defined) typedef __int64_t __int_least8_t; typedef __uint64_t __uint_least8_t; #define ___int_least8_t_defined 1 #endif #ifdef __INT_LEAST16_TYPE__ typedef __INT_LEAST16_TYPE__ __int_least16_t; #ifdef __UINT_LEAST16_TYPE__ typedef __UINT_LEAST16_TYPE__ __uint_least16_t; #else typedef unsigned __INT_LEAST16_TYPE__ __uint_least16_t; #endif #define ___int_least16_t_defined 1 #elif defined(___int16_t_defined) typedef __int16_t __int_least16_t; typedef __uint16_t __uint_least16_t; #define ___int_least16_t_defined 1 #elif defined(___int32_t_defined) typedef __int32_t __int_least16_t; typedef __uint32_t __uint_least16_t; #define ___int_least16_t_defined 1 #elif defined(___int64_t_defined) typedef __int64_t __int_least16_t; typedef __uint64_t __uint_least16_t; #define ___int_least16_t_defined 1 #endif #ifdef __INT_LEAST32_TYPE__ typedef __INT_LEAST32_TYPE__ __int_least32_t; #ifdef __UINT_LEAST32_TYPE__ typedef __UINT_LEAST32_TYPE__ __uint_least32_t; #else typedef unsigned __INT_LEAST32_TYPE__ __uint_least32_t; #endif #define ___int_least32_t_defined 1 #elif defined(___int32_t_defined) typedef __int32_t __int_least32_t; typedef __uint32_t __uint_least32_t; #define ___int_least32_t_defined 1 #elif defined(___int64_t_defined) typedef __int64_t __int_least32_t; typedef __uint64_t __uint_least32_t; #define ___int_least32_t_defined 1 #endif #ifdef __INT_LEAST64_TYPE__ typedef __INT_LEAST64_TYPE__ __int_least64_t; #ifdef __UINT_LEAST64_TYPE__ typedef __UINT_LEAST64_TYPE__ __uint_least64_t; #else typedef unsigned __INT_LEAST64_TYPE__ __uint_least64_t; #endif #define ___int_least64_t_defined 1 #elif defined(___int64_t_defined) typedef __int64_t __int_least64_t; typedef __uint64_t __uint_least64_t; #define ___int_least64_t_defined 1 #endif #if defined(__INTMAX_TYPE__) typedef __INTMAX_TYPE__ __intmax_t; #elif __have_longlong64 typedef signed long long __intmax_t; #else typedef signed long __intmax_t; #endif #if defined(__UINTMAX_TYPE__) typedef __UINTMAX_TYPE__ __uintmax_t; #elif __have_longlong64 typedef unsigned long long __uintmax_t; #else typedef unsigned long __uintmax_t; #endif #ifdef __INTPTR_TYPE__ typedef __INTPTR_TYPE__ __intptr_t; #ifdef __UINTPTR_TYPE__ typedef __UINTPTR_TYPE__ __uintptr_t; #else typedef unsigned __INTPTR_TYPE__ __uintptr_t; #endif #elif defined(__PTRDIFF_TYPE__) typedef __PTRDIFF_TYPE__ __intptr_t; typedef unsigned __PTRDIFF_TYPE__ __uintptr_t; #else typedef long __intptr_t; typedef unsigned long __uintptr_t; #endif #undef __EXP #ifdef __cplusplus } #endif #endif /* _MACHINE__DEFAULT_TYPES_H */ 07070100000025000081a4000000000000000000000001630c8dd500000299000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/machine/_endian.h#ifndef __MACHINE_ENDIAN_H__ #error "must be included via " #endif /* !__MACHINE_ENDIAN_H__ */ #include #ifdef __PPC__ /* Get rid of GCC builtin defines on PowerPC */ #ifdef _BIG_ENDIAN #undef _BIG_ENDIAN #endif #ifdef _LITTLE_ENDIAN #undef _LITTLE_ENDIAN #endif #endif /* __PPC__ */ #ifndef _LITTLE_ENDIAN #define _LITTLE_ENDIAN 1234 #endif #ifndef _BIG_ENDIAN #define _BIG_ENDIAN 4321 #endif #ifndef _PDP_ENDIAN #define _PDP_ENDIAN 3412 #endif #ifndef _BYTE_ORDER #if defined(__IEEE_LITTLE_ENDIAN) || defined(__IEEE_BYTES_LITTLE_ENDIAN) #define _BYTE_ORDER _LITTLE_ENDIAN #else #define _BYTE_ORDER _BIG_ENDIAN #endif #endif 07070100000026000081a4000000000000000000000001630c8dd50000005b000000000000000000000000000000000000002900000000./usr/nvptx-none/include/machine/_time.h#ifndef _SYS_TIME_H_ #error "must be included via " #endif /* !_SYS_TIME_H_ */ 07070100000027000081a4000000000000000000000001630c8dd500000070000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/_types.h/* * $Id$ */ #ifndef _MACHINE__TYPES_H #define _MACHINE__TYPES_H #include #endif 07070100000028000081a4000000000000000000000001630c8dd500000030000000000000000000000000000000000000002800000000./usr/nvptx-none/include/machine/ansi.h/* dummy header file to support BSD compiler */ 07070100000029000081a4000000000000000000000001630c8dd5000006bd000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/endian.h#ifndef __MACHINE_ENDIAN_H__ #define __MACHINE_ENDIAN_H__ #include #include #include #if _BYTE_ORDER == _LITTLE_ENDIAN #define _QUAD_HIGHWORD 1 #define _QUAD_LOWWORD 0 #else #define _QUAD_HIGHWORD 0 #define _QUAD_LOWWORD 1 #endif #if __BSD_VISIBLE #define LITTLE_ENDIAN _LITTLE_ENDIAN #define BIG_ENDIAN _BIG_ENDIAN #define PDP_ENDIAN _PDP_ENDIAN #define BYTE_ORDER _BYTE_ORDER #endif #ifdef __GNUC__ #define __bswap16(_x) __builtin_bswap16(_x) #define __bswap32(_x) __builtin_bswap32(_x) #define __bswap64(_x) __builtin_bswap64(_x) #else /* __GNUC__ */ static __inline __uint16_t __bswap16(__uint16_t _x) { return ((__uint16_t)((_x >> 8) | ((_x << 8) & 0xff00))); } static __inline __uint32_t __bswap32(__uint32_t _x) { return ((__uint32_t)((_x >> 24) | ((_x >> 8) & 0xff00) | ((_x << 8) & 0xff0000) | ((_x << 24) & 0xff000000))); } static __inline __uint64_t __bswap64(__uint64_t _x) { return ((__uint64_t)((_x >> 56) | ((_x >> 40) & 0xff00) | ((_x >> 24) & 0xff0000) | ((_x >> 8) & 0xff000000) | ((_x << 8) & ((__uint64_t)0xff << 32)) | ((_x << 24) & ((__uint64_t)0xff << 40)) | ((_x << 40) & ((__uint64_t)0xff << 48)) | ((_x << 56)))); } #endif /* !__GNUC__ */ #ifndef __machine_host_to_from_network_defined #if _BYTE_ORDER == _LITTLE_ENDIAN #define __htonl(_x) __bswap32(_x) #define __htons(_x) __bswap16(_x) #define __ntohl(_x) __bswap32(_x) #define __ntohs(_x) __bswap16(_x) #else #define __htonl(_x) ((__uint32_t)(_x)) #define __htons(_x) ((__uint16_t)(_x)) #define __ntohl(_x) ((__uint32_t)(_x)) #define __ntohs(_x) ((__uint16_t)(_x)) #endif #endif /* __machine_host_to_from_network_defined */ #endif /* __MACHINE_ENDIAN_H__ */ 0707010000002a000081a4000000000000000000000001630c8dd500000af4000000000000000000000000000000000000002c00000000./usr/nvptx-none/include/machine/fastmath.h#ifdef __sysvnecv70_target double EXFUN(fast_sin,(double)); double EXFUN(fast_cos,(double)); double EXFUN(fast_tan,(double)); double EXFUN(fast_asin,(double)); double EXFUN(fast_acos,(double)); double EXFUN(fast_atan,(double)); double EXFUN(fast_sinh,(double)); double EXFUN(fast_cosh,(double)); double EXFUN(fast_tanh,(double)); double EXFUN(fast_asinh,(double)); double EXFUN(fast_acosh,(double)); double EXFUN(fast_atanh,(double)); double EXFUN(fast_abs,(double)); double EXFUN(fast_sqrt,(double)); double EXFUN(fast_exp2,(double)); double EXFUN(fast_exp10,(double)); double EXFUN(fast_expe,(double)); double EXFUN(fast_log10,(double)); double EXFUN(fast_log2,(double)); double EXFUN(fast_loge,(double)); #define sin(x) fast_sin(x) #define cos(x) fast_cos(x) #define tan(x) fast_tan(x) #define asin(x) fast_asin(x) #define acos(x) fast_acos(x) #define atan(x) fast_atan(x) #define sinh(x) fast_sinh(x) #define cosh(x) fast_cosh(x) #define tanh(x) fast_tanh(x) #define asinh(x) fast_asinh(x) #define acosh(x) fast_acosh(x) #define atanh(x) fast_atanh(x) #define abs(x) fast_abs(x) #define sqrt(x) fast_sqrt(x) #define exp2(x) fast_exp2(x) #define exp10(x) fast_exp10(x) #define expe(x) fast_expe(x) #define log10(x) fast_log10(x) #define log2(x) fast_log2(x) #define loge(x) fast_loge(x) /* These functions are in assembler, they really do take floats. This can only be used with a real ANSI compiler */ float EXFUN(fast_sinf,(float)); float EXFUN(fast_cosf,(float)); float EXFUN(fast_tanf,(float)); float EXFUN(fast_asinf,(float)); float EXFUN(fast_acosf,(float)); float EXFUN(fast_atanf,(float)); float EXFUN(fast_sinhf,(float)); float EXFUN(fast_coshf,(float)); float EXFUN(fast_tanhf,(float)); float EXFUN(fast_asinhf,(float)); float EXFUN(fast_acoshf,(float)); float EXFUN(fast_atanhf,(float)); float EXFUN(fast_absf,(float)); float EXFUN(fast_sqrtf,(float)); float EXFUN(fast_exp2f,(float)); float EXFUN(fast_exp10f,(float)); float EXFUN(fast_expef,(float)); float EXFUN(fast_log10f,(float)); float EXFUN(fast_log2f,(float)); float EXFUN(fast_logef,(float)); #define sinf(x) fast_sinf(x) #define cosf(x) fast_cosf(x) #define tanf(x) fast_tanf(x) #define asinf(x) fast_asinf(x) #define acosf(x) fast_acosf(x) #define atanf(x) fast_atanf(x) #define sinhf(x) fast_sinhf(x) #define coshf(x) fast_coshf(x) #define tanhf(x) fast_tanhf(x) #define asinhf(x) fast_asinhf(x) #define acoshf(x) fast_acoshf(x) #define atanhf(x) fast_atanhf(x) #define absf(x) fast_absf(x) #define sqrtf(x) fast_sqrtf(x) #define exp2f(x) fast_exp2f(x) #define exp10f(x) fast_exp10f(x) #define expef(x) fast_expef(x) #define log10f(x) fast_log10f(x) #define log2f(x) fast_log2f(x) #define logef(x) fast_logef(x) /* Override the functions defined in math.h */ #endif /* __sysvnecv70_target */ 0707010000002b000081a4000000000000000000000001630c8dd500002842000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/ieeefp.h#ifndef __IEEE_BIG_ENDIAN #ifndef __IEEE_LITTLE_ENDIAN /* This file can define macros to choose variations of the IEEE float format: _FLT_LARGEST_EXPONENT_IS_NORMAL Defined if the float format uses the largest exponent for finite numbers rather than NaN and infinity representations. Such a format cannot represent NaNs or infinities at all, but it's FLT_MAX is twice the IEEE value. _FLT_NO_DENORMALS Defined if the float format does not support IEEE denormals. Every float with a zero exponent is taken to be a zero representation. ??? At the moment, there are no equivalent macros above for doubles and the macros are not fully supported by --enable-newlib-hw-fp. __IEEE_BIG_ENDIAN Defined if the float format is big endian. This is mutually exclusive with __IEEE_LITTLE_ENDIAN. __IEEE_LITTLE_ENDIAN Defined if the float format is little endian. This is mutually exclusive with __IEEE_BIG_ENDIAN. Note that one of __IEEE_BIG_ENDIAN or __IEEE_LITTLE_ENDIAN must be specified for a platform or error will occur. __IEEE_BYTES_LITTLE_ENDIAN This flag is used in conjunction with __IEEE_BIG_ENDIAN to describe a situation whereby multiple words of an IEEE floating point are in big endian order, but the words themselves are little endian with respect to the bytes. _DOUBLE_IS_32BITS This is used on platforms that support double by using the 32-bit IEEE float type. _FLOAT_ARG This represents what type a float arg is passed as. It is used when the type is not promoted to double. __OBSOLETE_MATH_DEFAULT Default value for __OBSOLETE_MATH if that's not set by the user. It should be set here based on predefined feature macros. __OBSOLETE_MATH If set to 1 then some new math code will be disabled and older libm code will be used instead. This is necessary because the new math code does not support all targets, it assumes that the toolchain has ISO C99 support (hexfloat literals, standard fenv semantics), the target has IEEE-754 conforming binary32 float and binary64 double (not mixed endian) representation, standard SNaN representation, double and single precision arithmetics has similar latency and it has no legacy SVID matherr support, only POSIX errno and fenv exception based error handling. */ #if (defined(__arm__) || defined(__thumb__)) && !defined(__MAVERICK__) /* ARM traditionally used big-endian words; and within those words the byte ordering was big or little endian depending upon the target. Modern floating-point formats are naturally ordered; in this case __VFP_FP__ will be defined, even if soft-float. */ #ifdef __VFP_FP__ # ifdef __ARMEL__ # define __IEEE_LITTLE_ENDIAN # else # define __IEEE_BIG_ENDIAN # endif # if __ARM_FP & 0x8 # define __OBSOLETE_MATH_DEFAULT 0 # endif #else # define __IEEE_BIG_ENDIAN # ifdef __ARMEL__ # define __IEEE_BYTES_LITTLE_ENDIAN # endif #endif #ifndef __SOFTFP__ # define _SUPPORTS_ERREXCEPT #endif #endif #if defined (__aarch64__) #if defined (__AARCH64EL__) #define __IEEE_LITTLE_ENDIAN #else #define __IEEE_BIG_ENDIAN #endif #define __OBSOLETE_MATH_DEFAULT 0 #ifdef __ARM_FP # define _SUPPORTS_ERREXCEPT #endif #endif #ifdef __epiphany__ #define __IEEE_LITTLE_ENDIAN #define Sudden_Underflow 1 #endif #ifdef __hppa__ #define __IEEE_BIG_ENDIAN #endif #ifdef __nds32__ #ifdef __big_endian__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __SPU__ #define __IEEE_BIG_ENDIAN #define isfinite(__y) \ (__extension__ ({int __cy; \ (sizeof (__y) == sizeof (float)) ? (1) : \ (__cy = fpclassify(__y)) != FP_INFINITE && __cy != FP_NAN;})) #define isinf(__x) ((sizeof (__x) == sizeof (float)) ? (0) : __isinfd(__x)) #define isnan(__x) ((sizeof (__x) == sizeof (float)) ? (0) : __isnand(__x)) /* * Macros for use in ieeefp.h. We can't just define the real ones here * (like those above) as we have name space issues when this is *not* * included via generic the ieeefp.h. */ #define __ieeefp_isnanf(x) 0 #define __ieeefp_isinff(x) 0 #define __ieeefp_finitef(x) 1 #endif #ifdef __sparc__ #ifdef __LITTLE_ENDIAN_DATA__ #define __IEEE_LITTLE_ENDIAN #else #define __IEEE_BIG_ENDIAN #endif #endif #if defined(__m68k__) || defined(__mc68000__) #define __IEEE_BIG_ENDIAN #endif #if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__) #define __IEEE_BIG_ENDIAN #ifdef __HAVE_SHORT_DOUBLE__ # define _DOUBLE_IS_32BITS #endif #endif #if defined (__H8300__) || defined (__H8300H__) || defined (__H8300S__) || defined (__H8500__) || defined (__H8300SX__) #define __IEEE_BIG_ENDIAN #define _FLOAT_ARG float #define _DOUBLE_IS_32BITS #endif #if defined (__xc16x__) || defined (__xc16xL__) || defined (__xc16xS__) #define __IEEE_LITTLE_ENDIAN #define _FLOAT_ARG float #define _DOUBLE_IS_32BITS #endif #ifdef __sh__ #ifdef __LITTLE_ENDIAN__ #define __IEEE_LITTLE_ENDIAN #else #define __IEEE_BIG_ENDIAN #endif #if defined(__SH2E__) || defined(__SH3E__) || defined(__SH4_SINGLE_ONLY__) || defined(__SH2A_SINGLE_ONLY__) #define _DOUBLE_IS_32BITS #endif #endif #ifdef _AM29K #define __IEEE_BIG_ENDIAN #endif #ifdef _WIN32 #define __IEEE_LITTLE_ENDIAN #endif #ifdef __i386__ #define __IEEE_LITTLE_ENDIAN # define _SUPPORTS_ERREXCEPT #endif #ifdef __riscv #define __IEEE_LITTLE_ENDIAN #ifdef __riscv_flen # define _SUPPORTS_ERREXCEPT #endif #endif #ifdef __i960__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __lm32__ #define __IEEE_BIG_ENDIAN #endif #ifdef __M32R__ #define __IEEE_BIG_ENDIAN #endif #ifdef __nvptx__ #define __IEEE_LITTLE_ENDIAN #endif #if defined(_C4x) || defined(_C3x) #define __IEEE_BIG_ENDIAN #define _DOUBLE_IS_32BITS #endif #ifdef __TMS320C6X__ #ifdef _BIG_ENDIAN #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __TIC80__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __MIPSEL__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __MIPSEB__ #define __IEEE_BIG_ENDIAN #endif #ifdef __MMIX__ #define __IEEE_BIG_ENDIAN #endif #ifdef __D30V__ #define __IEEE_BIG_ENDIAN #endif /* necv70 was __IEEE_LITTLE_ENDIAN. */ #ifdef __W65__ #define __IEEE_LITTLE_ENDIAN #define _DOUBLE_IS_32BITS #endif #if defined(__Z8001__) || defined(__Z8002__) #define __IEEE_BIG_ENDIAN #endif #ifdef __m88k__ #define __IEEE_BIG_ENDIAN #endif #ifdef __mn10300__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __mn10200__ #define __IEEE_LITTLE_ENDIAN #define _DOUBLE_IS_32BITS #endif #ifdef __v800 #define __IEEE_LITTLE_ENDIAN #endif #ifdef __v850 #define __IEEE_LITTLE_ENDIAN #endif #ifdef __D10V__ #define __IEEE_BIG_ENDIAN #if __DOUBLE__ == 32 #define _DOUBLE_IS_32BITS #endif #endif #ifdef __PPC__ #if (defined(_BIG_ENDIAN) && _BIG_ENDIAN) || (defined(_AIX) && _AIX) #define __IEEE_BIG_ENDIAN #else #if (defined(_LITTLE_ENDIAN) && _LITTLE_ENDIAN) || (defined(__sun__) && __sun__) || (defined(_WIN32) && _WIN32) #define __IEEE_LITTLE_ENDIAN #endif #endif #endif #ifdef __xstormy16__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __arc__ #ifdef __big_endian__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __CRX__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __CSKY__ #ifdef __CSKYBE__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __fr30__ #define __IEEE_BIG_ENDIAN #endif #ifdef __FT32__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __mcore__ #define __IEEE_BIG_ENDIAN #endif #ifdef __mt__ #define __IEEE_BIG_ENDIAN #endif #ifdef __frv__ #define __IEEE_BIG_ENDIAN #endif #ifdef __moxie__ #ifdef __MOXIE_BIG_ENDIAN__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __ia64__ #ifdef __BIG_ENDIAN__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __AVR__ #define __IEEE_LITTLE_ENDIAN #define _DOUBLE_IS_32BITS #endif #if defined(__or1k__) || defined(__OR1K__) || defined(__OR1KND__) #define __IEEE_BIG_ENDIAN #endif #ifdef __IP2K__ #define __IEEE_BIG_ENDIAN #define __SMALL_BITFIELDS #define _DOUBLE_IS_32BITS #endif #ifdef __iq2000__ #define __IEEE_BIG_ENDIAN #endif #ifdef __MAVERICK__ #ifdef __ARMEL__ # define __IEEE_LITTLE_ENDIAN #else /* must be __ARMEB__ */ # define __IEEE_BIG_ENDIAN #endif /* __ARMEL__ */ #endif /* __MAVERICK__ */ #ifdef __m32c__ #define __IEEE_LITTLE_ENDIAN #define __SMALL_BITFIELDS #endif #ifdef __CRIS__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __BFIN__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __x86_64__ #define __IEEE_LITTLE_ENDIAN # define _SUPPORTS_ERREXCEPT #endif #ifdef __mep__ #ifdef __LITTLE_ENDIAN__ #define __IEEE_LITTLE_ENDIAN #else #define __IEEE_BIG_ENDIAN #endif #endif #ifdef __MICROBLAZE__ #ifndef __MICROBLAZEEL__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #endif #ifdef __MSP430__ #define __IEEE_LITTLE_ENDIAN #define __SMALL_BITFIELDS /* 16 Bit INT */ #endif #ifdef __PRU__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __RL78__ #define __IEEE_LITTLE_ENDIAN #define __SMALL_BITFIELDS /* 16 Bit INT */ #ifndef __RL78_64BIT_DOUBLES__ #define _DOUBLE_IS_32BITS #endif #endif #ifdef __RX__ #ifdef __RX_BIG_ENDIAN__ #define __IEEE_BIG_ENDIAN #else #define __IEEE_LITTLE_ENDIAN #endif #ifndef __RX_64BIT_DOUBLES__ #define _DOUBLE_IS_32BITS #endif #ifdef __RX_16BIT_INTS__ #define __SMALL_BITFIELDS #endif #endif #if (defined(__CR16__) || defined(__CR16C__) ||defined(__CR16CP__)) #define __IEEE_LITTLE_ENDIAN #define __SMALL_BITFIELDS /* 16 Bit INT */ #endif #ifdef __NIOS2__ # ifdef __nios2_big_endian__ # define __IEEE_BIG_ENDIAN # else # define __IEEE_LITTLE_ENDIAN # endif #endif #ifdef __VISIUM__ #define __IEEE_BIG_ENDIAN #endif #ifdef __AMDGCN__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __XTENSA_EL__ #define __IEEE_LITTLE_ENDIAN #endif #ifdef __CYGWIN__ #define __OBSOLETE_MATH_DEFAULT 0 #endif #ifndef __OBSOLETE_MATH_DEFAULT /* Use old math code by default. */ #define __OBSOLETE_MATH_DEFAULT 1 #endif #ifndef __OBSOLETE_MATH #define __OBSOLETE_MATH __OBSOLETE_MATH_DEFAULT #endif #ifndef __IEEE_BIG_ENDIAN #ifndef __IEEE_LITTLE_ENDIAN #error Endianess not declared!! #endif /* not __IEEE_LITTLE_ENDIAN */ #endif /* not __IEEE_BIG_ENDIAN */ #endif /* not __IEEE_LITTLE_ENDIAN */ #endif /* not __IEEE_BIG_ENDIAN */ 0707010000002c000081a4000000000000000000000001630c8dd50000008a000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/malloc.h#ifndef _MACHMALLOC_H_ #define _MACHMALLOC_H_ /* place holder so platforms may add malloc.h extensions */ #endif /* _MACHMALLOC_H_ */ 0707010000002d000081a4000000000000000000000001630c8dd500000032000000000000000000000000000000000000002900000000./usr/nvptx-none/include/machine/param.h/* Place holder for machine-specific param.h. */ 0707010000002e000081a4000000000000000000000001630c8dd5000003b3000000000000000000000000000000000000002d00000000./usr/nvptx-none/include/machine/setjmp-dj.h/* * Copyright (C) 1991 DJ Delorie * All rights reserved. * * Redistribution, modification, and use in source and binary forms is permitted * provided that the above copyright notice and following paragraph are * duplicated in all such forms. * * This file is distributed WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */ /* Modified to use SETJMP_DJ_H rather than SETJMP_H to avoid conflicting with setjmp.h. Ian Taylor, Cygnus support, April, 1993. */ #ifndef _SETJMP_DJ_H_ #define _SETJMP_DJ_H_ #ifdef __cplusplus extern "C" { #endif typedef struct { unsigned long eax; unsigned long ebx; unsigned long ecx; unsigned long edx; unsigned long esi; unsigned long edi; unsigned long ebp; unsigned long esp; unsigned long eip; } jmp_buf[1]; extern int setjmp(jmp_buf); extern void longjmp(jmp_buf, int); #ifdef __cplusplus } #endif #endif 0707010000002f000081a4000000000000000000000001630c8dd500002601000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/setjmp.h _BEGIN_STD_C #if defined(__or1k__) || defined(__or1knd__) /* * r1, r2, r9, r14, r16 .. r30, SR. */ #define _JBLEN 13 #define _JBTYPE unsigned long #endif #if defined(__arm__) || defined(__thumb__) /* * All callee preserved registers: * v1 - v7, fp, ip, sp, lr, f4, f5, f6, f7 */ #define _JBLEN 23 #endif #if defined(__aarch64__) #define _JBLEN 22 #define _JBTYPE long long #endif #if defined(__AVR__) #define _JBLEN 24 #endif #ifdef __sparc__ /* * onsstack,sigmask,sp,pc,npc,psr,g1,o0,wbcnt (sigcontext). * All else recovered by under/over(flow) handling. */ #define _JBLEN 13 #endif #ifdef __BFIN__ #define _JBLEN 40 #endif #ifdef __epiphany__ /* All callee preserved registers: r4-r10,fp, sp, lr,r15, r32-r39 */ #define _JBTYPE long long #define _JBLEN 10 #endif /* necv70 was 9 as well. */ #if defined(__m68k__) || defined(__mc68000__) /* * onsstack,sigmask,sp,pc,psl,d2-d7,a2-a6, * fp2-fp7 for 68881. * All else recovered by under/over(flow) handling. */ #define _JBLEN 34 #endif #if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__) /* * D, X, Y are not saved. * Only take into account the pseudo soft registers (max 32). */ #define _JBLEN 32 #endif #ifdef __nds32__ /* 17 words for GPRs, 1 word for $fpcfg.freg and 30 words for FPUs Reserved 2 words for aligement-adjustment. When storeing double-precision floating-point register into memory, the address has to be double-word-aligned. Check libc/machine/nds32/setjmp.S for more information. */ #if __NDS32_EXT_FPU_SP__ || __NDS32_EXT_FPU_DP__ #define _JBLEN 50 #else #define _JBLEN 18 #endif #endif #if defined(__Z8001__) || defined(__Z8002__) /* 16 regs + pc */ #define _JBLEN 20 #endif #ifdef _AM29K /* * onsstack,sigmask,sp,pc,npc,psr,g1,o0,wbcnt (sigcontext). * All else recovered by under/over(flow) handling. */ #define _JBLEN 9 #endif #ifdef __i386__ # if defined(__CYGWIN__) && !defined (_JBLEN) # define _JBLEN (13 * 4) # elif defined(__unix__) || defined(__rtems__) # define _JBLEN 9 # elif defined(__iamcu__) /* Intel MCU jmp_buf only covers callee-saved registers. */ # define _JBLEN 6 # else # include "setjmp-dj.h" # endif #endif #ifdef __x86_64__ # ifdef __CYGWIN__ # define _JBTYPE long # define _JBLEN 32 # else # define _JBTYPE long long # define _JBLEN 8 # endif #endif #ifdef __i960__ #define _JBLEN 35 #endif #ifdef __M32R__ /* Only 8 words are currently needed. 10 gives us some slop if we need to expand. */ #define _JBLEN 10 #endif #ifdef __mips__ # if defined(__mips64) # define _JBTYPE long long # endif # ifdef __mips_soft_float # define _JBLEN 11 # else # define _JBLEN 23 # endif #endif #ifdef __m88000__ #define _JBLEN 21 #endif #ifdef __H8300__ #define _JBLEN 5 #define _JBTYPE int #endif #ifdef __H8300H__ /* same as H8/300 but registers are twice as big */ #define _JBLEN 5 #define _JBTYPE long #endif #if defined (__H8300S__) || defined (__H8300SX__) /* same as H8/300 but registers are twice as big */ #define _JBLEN 5 #define _JBTYPE long #endif #ifdef __H8500__ #define _JBLEN 4 #endif #ifdef __sh__ #if __SH5__ #define _JBLEN 50 #define _JBTYPE long long #else #define _JBLEN 20 #endif /* __SH5__ */ #endif #ifdef __v800 #define _JBLEN 28 #endif #ifdef __PPC__ #ifdef __ALTIVEC__ #define _JBLEN 64 #else #define _JBLEN 32 #endif #define _JBTYPE double #endif #ifdef __MICROBLAZE__ #define _JBLEN 20 #define _JBTYPE unsigned int #endif #ifdef __hppa__ /* %r30, %r2-%r18, %r27, pad, %fr12-%fr15. Note space exists for the FP registers, but they are not saved. */ #define _JBLEN 28 #endif #if defined(__mn10300__) || defined(__mn10200__) #ifdef __AM33_2__ #define _JBLEN 26 #else /* A guess */ #define _JBLEN 10 #endif #endif #ifdef __v850 /* I think our setjmp is saving 15 regs at the moment. Gives us one word slop if we need to expand. */ #define _JBLEN 16 #endif #if defined(_C4x) #define _JBLEN 10 #endif #if defined(_C3x) #define _JBLEN 9 #endif #ifdef __TMS320C6X__ #define _JBLEN 13 #endif #ifdef __TIC80__ #define _JBLEN 13 #endif #ifdef __D10V__ #define _JBLEN 8 #endif #ifdef __D30V__ #define _JBLEN ((64 /* GPR */ + (2*2) /* ACs */ + 18 /* CRs */) / 2) #define _JBTYPE double #endif #ifdef __frv__ #define _JBLEN (68/2) /* room for 68 32-bit regs */ #define _JBTYPE double #endif #ifdef __moxie__ #define _JBLEN 10 #endif #ifdef __CRX__ #define _JBLEN 9 #endif #if (defined(__CR16__) || defined(__CR16C__) ||defined(__CR16CP__)) /* r6, r7, r8, r9, r10, r11, r12 (r12L, r12H), * r13 (r13L, r13H), ra(raL, raH), sp(spL, spH) */ #define _JBLEN 14 #define _JBTYPE unsigned short #endif #ifdef __fr30__ #define _JBLEN 10 #endif #ifdef __FT32__ #define _JBLEN 27 #endif #ifdef __iq2000__ #define _JBLEN 32 #endif #ifdef __mcore__ #define _JBLEN 16 #endif #ifdef __arc__ #define _JBLEN 25 /* r13-r30,blink,lp_count,lp_start,lp_end,mlo,mhi,status32 */ #endif #ifdef __MMIX__ /* Using a layout compatible with GCC's built-in. */ #define _JBLEN 5 #define _JBTYPE unsigned long #endif #ifdef __mt__ #define _JBLEN 16 #endif #ifdef __SPU__ #define _JBLEN 50 #define _JBTYPE __vector signed int #endif #ifdef __xstormy16__ /* 4 GPRs plus SP plus PC. */ #define _JBLEN 8 #endif #ifdef __mep__ /* 16 GPRs, pc, hi, lo */ #define _JBLEN 19 #endif #ifdef __CRIS__ #define _JBLEN 18 #endif #ifdef __ia64 #define _JBLEN 64 #endif #ifdef __lm32__ #define _JBLEN 19 #endif #ifdef __m32c__ #if defined(__r8c_cpu__) || defined(__m16c_cpu__) #define _JBLEN (22/2) #else #define _JBLEN (34/2) #endif #define _JBTYPE unsigned short #endif /* __m32c__ */ #ifdef __MSP430__ #define _JBLEN 9 #ifdef __MSP430X_LARGE__ #define _JBTYPE unsigned long #else #define _JBTYPE unsigned short #endif #endif #ifdef __RL78__ /* Three banks of registers, SP, CS, ES, PC */ #define _JBLEN (8*3+8) #define _JBTYPE unsigned char #endif /* * There are two versions of setjmp()/longjmp(): * 1) Compiler (gcc) built-in versions. * 2) Function-call versions. * * The built-in versions are used most of the time. When used, gcc replaces * calls to setjmp()/longjmp() with inline assembly code. The built-in * versions save/restore a variable number of registers. * _JBLEN is set to 40 to be ultra-safe with the built-in versions. * It only needs to be 12 for the function-call versions * but this data structure is used by both versions. */ #ifdef __NIOS2__ #define _JBLEN 40 #define _JBTYPE unsigned long #endif #ifdef __PRU__ #define _JBLEN 48 #define _JBTYPE unsigned int #endif #ifdef __RX__ #define _JBLEN 0x44 #endif #ifdef __VISIUM__ /* All call-saved GP registers: r11-r19,r21,r22,r23. */ #define _JBLEN 12 #endif #ifdef __riscv /* _JBTYPE using long long to make sure the alignment is align to 8 byte, otherwise in rv32imafd, store/restore FPR may mis-align. */ #define _JBTYPE long long #ifdef __riscv_32e #define _JBLEN ((4*sizeof(long))/sizeof(long)) #else #define _JBLEN ((14*sizeof(long) + 12*sizeof(double))/sizeof(long)) #endif #endif #ifdef __CSKYABIV2__ #define _JBTYPE unsigned long #if defined(__CK801__) #define _JBLEN 7 #elif defined(__CK802__) #define _JBLEN 10 #else #define _JBLEN 18 #endif #endif #ifdef _JBLEN #ifdef _JBTYPE typedef _JBTYPE jmp_buf[_JBLEN]; #else typedef int jmp_buf[_JBLEN]; #endif #endif _END_STD_C #if (defined(__CYGWIN__) || defined(__rtems__)) && __POSIX_VISIBLE #include #ifdef __cplusplus extern "C" { #endif /* POSIX sigsetjmp/siglongjmp macros */ #ifdef _JBTYPE typedef _JBTYPE sigjmp_buf[_JBLEN+1+((sizeof (_JBTYPE) + sizeof (sigset_t) - 1) /sizeof (_JBTYPE))]; #else typedef int sigjmp_buf[_JBLEN+1+(sizeof (sigset_t)/sizeof (int))]; #endif #define _SAVEMASK _JBLEN #define _SIGMASK (_JBLEN+1) #ifdef __CYGWIN__ # define _CYGWIN_WORKING_SIGSETJMP #endif #ifdef _POSIX_THREADS #define __SIGMASK_FUNC pthread_sigmask #else #define __SIGMASK_FUNC sigprocmask #endif #ifdef __CYGWIN__ /* Per POSIX, siglongjmp has to be implemented as function. Cygwin provides functions for both, siglongjmp and sigsetjmp since 2.2.0. */ extern void siglongjmp (sigjmp_buf, int) __attribute__ ((__noreturn__)); extern int sigsetjmp (sigjmp_buf, int); #endif #if defined(__GNUC__) #define sigsetjmp(env, savemask) \ __extension__ \ ({ \ sigjmp_buf *_sjbuf = &(env); \ ((*_sjbuf)[_SAVEMASK] = savemask,\ __SIGMASK_FUNC (SIG_SETMASK, 0, (sigset_t *)((*_sjbuf) + _SIGMASK)),\ setjmp (*_sjbuf)); \ }) #define siglongjmp(env, val) \ __extension__ \ ({ \ sigjmp_buf *_sjbuf = &(env); \ ((((*_sjbuf)[_SAVEMASK]) ? \ __SIGMASK_FUNC (SIG_SETMASK, (sigset_t *)((*_sjbuf) + _SIGMASK), 0)\ : 0), \ longjmp (*_sjbuf, val)); \ }) #else /* !__GNUC__ */ #define sigsetjmp(env, savemask) ((env)[_SAVEMASK] = savemask,\ __SIGMASK_FUNC (SIG_SETMASK, 0, (sigset_t *) ((env) + _SIGMASK)),\ setjmp (env)) #define siglongjmp(env, val) ((((env)[_SAVEMASK])?\ __SIGMASK_FUNC (SIG_SETMASK, (sigset_t *) ((env) + _SIGMASK), 0):0),\ longjmp (env, val)) #endif /* POSIX _setjmp/_longjmp, maintained for XSI compatibility. These are equivalent to sigsetjmp/siglongjmp when not saving the signal mask. New applications should use sigsetjmp/siglongjmp instead. */ #ifdef __CYGWIN__ extern void _longjmp (jmp_buf, int) __attribute__ ((__noreturn__)); extern int _setjmp (jmp_buf); #else #define _setjmp(env) sigsetjmp ((env), 0) #define _longjmp(env, val) siglongjmp ((env), (val)) #endif #ifdef __cplusplus } #endif #endif /* (__CYGWIN__ or __rtems__) and __POSIX_VISIBLE */ 07070100000030000081a4000000000000000000000001630c8dd50000008a000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/stdlib.h#ifndef _MACHSTDLIB_H_ #define _MACHSTDLIB_H_ /* place holder so platforms may add stdlib.h extensions */ #endif /* _MACHSTDLIB_H_ */ 07070100000031000081a4000000000000000000000001630c8dd50000001d000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/machine/termios.h#define __MAX_BAUD B4000000 07070100000032000081a4000000000000000000000001630c8dd500000180000000000000000000000000000000000000002800000000./usr/nvptx-none/include/machine/time.h#ifndef _MACHTIME_H_ #define _MACHTIME_H_ #if defined(__rtems__) || defined(__VISIUM__) || defined(__riscv) #define _CLOCKS_PER_SEC_ 1000000 #elif defined(__aarch64__) || defined(__arm__) || defined(__thumb__) #define _CLOCKS_PER_SEC_ 100 #endif #ifdef __SPU__ #include int nanosleep (const struct timespec *, struct timespec *); #endif #endif /* _MACHTIME_H_ */ 07070100000033000081a4000000000000000000000001630c8dd500000174000000000000000000000000000000000000002900000000./usr/nvptx-none/include/machine/types.h/* * Newlib targets may provide an own version of this file in their machine * directory to add custom user types for . */ #ifndef _SYS_TYPES_H #error "must be included via " #endif /* !_SYS_TYPES_H */ #if defined(__XMK__) && defined(___int64_t_defined) typedef __uint64_t u_quad_t; typedef __int64_t quad_t; typedef quad_t * qaddr_t; #endif 07070100000034000081a4000000000000000000000001630c8dd400001046000000000000000000000000000000000000002200000000./usr/nvptx-none/include/malloc.h/* malloc.h -- header file for memory routines. */ #ifndef _INCLUDE_MALLOC_H_ #define _INCLUDE_MALLOC_H_ #include <_ansi.h> #include #define __need_size_t #include /* include any machine-specific extensions */ #include #ifdef __cplusplus extern "C" { #endif /* This version of struct mallinfo must match the one in libc/stdlib/mallocr.c. */ struct mallinfo { size_t arena; /* total space allocated from system */ size_t ordblks; /* number of non-inuse chunks */ size_t smblks; /* unused -- always zero */ size_t hblks; /* number of mmapped regions */ size_t hblkhd; /* total space in mmapped regions */ size_t usmblks; /* unused -- always zero */ size_t fsmblks; /* unused -- always zero */ size_t uordblks; /* total allocated space */ size_t fordblks; /* total non-inuse space */ size_t keepcost; /* top-most, releasable (via malloc_trim) space */ }; /* The routines. */ extern void *malloc (size_t); #ifdef __CYGWIN__ #undef _malloc_r #define _malloc_r(r, s) malloc (s) #else extern void *_malloc_r (struct _reent *, size_t); #endif extern void free (void *); #ifdef __CYGWIN__ #undef _free_r #define _free_r(r, p) free (p) #else extern void _free_r (struct _reent *, void *); #endif extern void *realloc (void *, size_t); #ifdef __CYGWIN__ #undef _realloc_r #define _realloc_r(r, p, s) realloc (p, s) #else extern void *_realloc_r (struct _reent *, void *, size_t); #endif extern void *calloc (size_t, size_t); #ifdef __CYGWIN__ #undef _calloc_r #define _calloc_r(r, s1, s2) calloc (s1, s2); #else extern void *_calloc_r (struct _reent *, size_t, size_t); #endif extern void *memalign (size_t, size_t); #ifdef __CYGWIN__ #undef _memalign_r #define _memalign_r(r, s1, s2) memalign (s1, s2); #else extern void *_memalign_r (struct _reent *, size_t, size_t); #endif extern struct mallinfo mallinfo (void); #ifdef __CYGWIN__ #undef _mallinfo_r #define _mallinfo_r(r) mallinfo () #else extern struct mallinfo _mallinfo_r (struct _reent *); #endif extern void malloc_stats (void); #ifdef __CYGWIN__ #undef _malloc_stats_r #define _malloc_stats_r(r) malloc_stats () #else extern void _malloc_stats_r (struct _reent *); #endif extern int mallopt (int, int); #ifdef __CYGWIN__ #undef _mallopt_r #define _mallopt_r(i1, i2) mallopt (i1, i2) #else extern int _mallopt_r (struct _reent *, int, int); #endif extern size_t malloc_usable_size (void *); #ifdef __CYGWIN__ #undef _malloc_usable_size_r #define _malloc_usable_size_r(r, p) malloc_usable_size (p) #else extern size_t _malloc_usable_size_r (struct _reent *, void *); #endif /* These aren't too useful on an embedded system, but we define them anyhow. */ extern void *valloc (size_t); #ifdef __CYGWIN__ #undef _valloc_r #define _valloc_r(r, s) valloc (s) #else extern void *_valloc_r (struct _reent *, size_t); #endif extern void *pvalloc (size_t); #ifdef __CYGWIN__ #undef _pvalloc_r #define _pvalloc_r(r, s) pvalloc (s) #else extern void *_pvalloc_r (struct _reent *, size_t); #endif extern int malloc_trim (size_t); #ifdef __CYGWIN__ #undef _malloc_trim_r #define _malloc_trim_r(r, s) malloc_trim (s) #else extern int _malloc_trim_r (struct _reent *, size_t); #endif extern void __malloc_lock(struct _reent *); extern void __malloc_unlock(struct _reent *); /* A compatibility routine for an earlier version of the allocator. */ extern void mstats (char *); #ifdef __CYGWIN__ #undef _mstats_r #define _mstats_r(r, p) mstats (p) #else extern void _mstats_r (struct _reent *, char *); #endif /* SVID2/XPG mallopt options */ #define M_MXFAST 1 /* UNUSED in this malloc */ #define M_NLBLKS 2 /* UNUSED in this malloc */ #define M_GRAIN 3 /* UNUSED in this malloc */ #define M_KEEP 4 /* UNUSED in this malloc */ /* mallopt options that actually do something */ #define M_TRIM_THRESHOLD -1 #define M_TOP_PAD -2 #define M_MMAP_THRESHOLD -3 #define M_MMAP_MAX -4 #ifndef __CYGWIN__ /* Some systems provide this, so do too for compatibility. */ extern void cfree (void *); #endif /* __CYGWIN__ */ #ifdef __cplusplus } #endif #endif /* _INCLUDE_MALLOC_H_ */ 07070100000035000081a4000000000000000000000001630c8dd400004c1d000000000000000000000000000000000000002000000000./usr/nvptx-none/include/math.h#ifndef _MATH_H_ #define _MATH_H_ #include #include #include #include "_ansi.h" _BEGIN_STD_C /* Natural log of 2 */ #define _M_LN2 0.693147180559945309417 #if __GNUC_PREREQ (3, 3) /* gcc >= 3.3 implicitly defines builtins for HUGE_VALx values. */ # ifndef HUGE_VAL # define HUGE_VAL (__builtin_huge_val()) # endif # ifndef HUGE_VALF # define HUGE_VALF (__builtin_huge_valf()) # endif # ifndef HUGE_VALL # define HUGE_VALL (__builtin_huge_vall()) # endif # ifndef INFINITY # define INFINITY (__builtin_inff()) # endif # ifndef NAN # define NAN (__builtin_nanf("")) # endif #else /* !gcc >= 3.3 */ /* No builtins. Use fixed defines instead. (All 3 HUGE plus the INFINITY * and NAN macros are required to be constant expressions. Using a variable-- * even a static const--does not meet this requirement, as it cannot be * evaluated at translation time.) * The infinities are done using numbers that are far in excess of * something that would be expected to be encountered in a floating-point * implementation. (A more certain way uses values from float.h, but that is * avoided because system includes are not supposed to include each other.) * This method might produce warnings from some compilers. (It does in * newer GCCs, but not for ones that would hit this #else.) If this happens, * please report details to the Newlib mailing list. */ #ifndef HUGE_VAL #define HUGE_VAL (1.0e999999999) #endif #ifndef HUGE_VALF #define HUGE_VALF (1.0e999999999F) #endif #if !defined(HUGE_VALL) && defined(_HAVE_LONG_DOUBLE) #define HUGE_VALL (1.0e999999999L) #endif #if !defined(INFINITY) #define INFINITY (HUGE_VALF) #endif #if !defined(NAN) #if defined(__GNUC__) && defined(__cplusplus) /* Exception: older g++ versions warn about the divide by 0 used in the * normal case (even though older gccs do not). This trick suppresses the * warning, but causes errors for plain gcc, so is only used in the one * special case. */ static const union { __ULong __i[1]; float __d; } __Nanf = {0x7FC00000}; #define NAN (__Nanf.__d) #else #define NAN (0.0F/0.0F) #endif #endif #endif /* !gcc >= 3.3 */ /* Reentrant ANSI C functions. */ #ifndef __math_68881 extern double atan (double); extern double cos (double); extern double sin (double); extern double tan (double); extern double tanh (double); extern double frexp (double, int *); extern double modf (double, double *); extern double ceil (double); extern double fabs (double); extern double floor (double); #endif /* ! defined (__math_68881) */ /* Non reentrant ANSI C functions. */ #ifndef _REENT_ONLY #ifndef __math_68881 extern double acos (double); extern double asin (double); extern double atan2 (double, double); extern double cosh (double); extern double sinh (double); extern double exp (double); extern double ldexp (double, int); extern double log (double); extern double log10 (double); extern double pow (double, double); extern double sqrt (double); extern double fmod (double, double); #endif /* ! defined (__math_68881) */ #endif /* ! defined (_REENT_ONLY) */ #if __MISC_VISIBLE extern int finite (double); extern int finitef (float); extern int finitel (long double); extern int isinff (float); extern int isnanf (float); #ifdef __CYGWIN__ /* not implemented in newlib yet */ extern int isinfl (long double); extern int isnanl (long double); #endif #if !defined(__cplusplus) || __cplusplus < 201103L extern int isinf (double); #endif #endif /* __MISC_VISIBLE */ #if (__MISC_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 600)) \ && (!defined(__cplusplus) || __cplusplus < 201103L) extern int isnan (double); #endif #if __ISO_C_VISIBLE >= 1999 /* ISO C99 types and macros. */ /* FIXME: FLT_EVAL_METHOD should somehow be gotten from float.h (which is hard, * considering that the standard says the includes it defines should not * include other includes that it defines) and that value used. (This can be * solved, but autoconf has a bug which makes the solution more difficult, so * it has been skipped for now.) */ #if !defined(FLT_EVAL_METHOD) && defined(__FLT_EVAL_METHOD__) #define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ #define __TMP_FLT_EVAL_METHOD #endif /* FLT_EVAL_METHOD */ #if defined FLT_EVAL_METHOD #if FLT_EVAL_METHOD == 0 typedef float float_t; typedef double double_t; #elif FLT_EVAL_METHOD == 1 typedef double float_t; typedef double double_t; #elif FLT_EVAL_METHOD == 2 typedef long double float_t; typedef long double double_t; #else /* Implementation-defined. Assume float_t and double_t have been * defined previously for this configuration (e.g. config.h). */ #endif #else /* Assume basic definitions. */ typedef float float_t; typedef double double_t; #endif #if defined(__TMP_FLT_EVAL_METHOD) #undef FLT_EVAL_METHOD #endif #define FP_NAN 0 #define FP_INFINITE 1 #define FP_ZERO 2 #define FP_SUBNORMAL 3 #define FP_NORMAL 4 #ifndef FP_ILOGB0 # define FP_ILOGB0 (-__INT_MAX__) #endif #ifndef FP_ILOGBNAN # define FP_ILOGBNAN __INT_MAX__ #endif #ifndef MATH_ERRNO # define MATH_ERRNO 1 #endif #ifndef MATH_ERREXCEPT # define MATH_ERREXCEPT 2 #endif #ifndef math_errhandling # ifdef _IEEE_LIBM # define _MATH_ERRHANDLING_ERRNO 0 # else # define _MATH_ERRHANDLING_ERRNO MATH_ERRNO # endif # ifdef _SUPPORTS_ERREXCEPT # define _MATH_ERRHANDLING_ERREXCEPT MATH_ERREXCEPT # else # define _MATH_ERRHANDLING_ERREXCEPT 0 # endif # define math_errhandling (_MATH_ERRHANDLING_ERRNO | _MATH_ERRHANDLING_ERREXCEPT) #endif extern int __isinff (float); extern int __isinfd (double); extern int __isnanf (float); extern int __isnand (double); extern int __fpclassifyf (float); extern int __fpclassifyd (double); extern int __signbitf (float); extern int __signbitd (double); /* Note: isinf and isnan were once functions in newlib that took double * arguments. C99 specifies that these names are reserved for macros * supporting multiple floating point types. Thus, they are * now defined as macros. Implementations of the old functions * taking double arguments still exist for compatibility purposes * (prototypes for them are earlier in this header). */ #if __GNUC_PREREQ (4, 4) #define fpclassify(__x) (__builtin_fpclassify (FP_NAN, FP_INFINITE, \ FP_NORMAL, FP_SUBNORMAL, \ FP_ZERO, __x)) #ifndef isfinite #define isfinite(__x) (__builtin_isfinite (__x)) #endif #ifndef isinf #define isinf(__x) (__builtin_isinf_sign (__x)) #endif #ifndef isnan #define isnan(__x) (__builtin_isnan (__x)) #endif #define isnormal(__x) (__builtin_isnormal (__x)) #else #define fpclassify(__x) \ ((sizeof(__x) == sizeof(float)) ? __fpclassifyf(__x) : \ __fpclassifyd(__x)) #ifndef isfinite #define isfinite(__y) \ (__extension__ ({int __cy = fpclassify(__y); \ __cy != FP_INFINITE && __cy != FP_NAN;})) #endif #ifndef isinf #define isinf(__x) (fpclassify(__x) == FP_INFINITE) #endif #ifndef isnan #define isnan(__x) (fpclassify(__x) == FP_NAN) #endif #define isnormal(__x) (fpclassify(__x) == FP_NORMAL) #endif #if __GNUC_PREREQ (4, 0) #if defined(_HAVE_LONG_DOUBLE) #define signbit(__x) \ ((sizeof(__x) == sizeof(float)) ? __builtin_signbitf(__x) : \ (sizeof(__x) == sizeof(double)) ? __builtin_signbit (__x) : \ __builtin_signbitl(__x)) #else #define signbit(__x) \ ((sizeof(__x) == sizeof(float)) ? __builtin_signbitf(__x) : \ __builtin_signbit (__x)) #endif #else #define signbit(__x) \ ((sizeof(__x) == sizeof(float)) ? __signbitf(__x) : \ __signbitd(__x)) #endif #if __GNUC_PREREQ (2, 97) #define isgreater(__x,__y) (__builtin_isgreater (__x, __y)) #define isgreaterequal(__x,__y) (__builtin_isgreaterequal (__x, __y)) #define isless(__x,__y) (__builtin_isless (__x, __y)) #define islessequal(__x,__y) (__builtin_islessequal (__x, __y)) #define islessgreater(__x,__y) (__builtin_islessgreater (__x, __y)) #define isunordered(__x,__y) (__builtin_isunordered (__x, __y)) #else #define isgreater(x,y) \ (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ !isunordered(__x,__y) && (__x > __y);})) #define isgreaterequal(x,y) \ (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ !isunordered(__x,__y) && (__x >= __y);})) #define isless(x,y) \ (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ !isunordered(__x,__y) && (__x < __y);})) #define islessequal(x,y) \ (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ !isunordered(__x,__y) && (__x <= __y);})) #define islessgreater(x,y) \ (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ !isunordered(__x,__y) && (__x < __y || __x > __y);})) #define isunordered(a,b) \ (__extension__ ({__typeof__(a) __a = (a); __typeof__(b) __b = (b); \ fpclassify(__a) == FP_NAN || fpclassify(__b) == FP_NAN;})) #endif /* Non ANSI double precision functions. */ extern double infinity (void); extern double nan (const char *); extern double copysign (double, double); extern double logb (double); extern int ilogb (double); extern double asinh (double); extern double cbrt (double); extern double nextafter (double, double); extern double rint (double); extern double scalbn (double, int); extern double exp2 (double); extern double scalbln (double, long int); extern double tgamma (double); extern double nearbyint (double); extern long int lrint (double); extern long long int llrint (double); extern double round (double); extern long int lround (double); extern long long int llround (double); extern double trunc (double); extern double remquo (double, double, int *); extern double fdim (double, double); extern double fmax (double, double); extern double fmin (double, double); extern double fma (double, double, double); #ifndef __math_68881 extern double log1p (double); extern double expm1 (double); #endif /* ! defined (__math_68881) */ #ifndef _REENT_ONLY extern double acosh (double); extern double atanh (double); extern double remainder (double, double); extern double gamma (double); extern double lgamma (double); extern double erf (double); extern double erfc (double); extern double log2 (double); #if !defined(__cplusplus) #define log2(x) (log (x) / _M_LN2) #endif #ifndef __math_68881 extern double hypot (double, double); #endif #endif /* ! defined (_REENT_ONLY) */ /* Single precision versions of ANSI functions. */ extern float atanf (float); extern float cosf (float); extern float sinf (float); extern float tanf (float); extern float tanhf (float); extern float frexpf (float, int *); extern float modff (float, float *); extern float ceilf (float); extern float fabsf (float); extern float floorf (float); #ifndef _REENT_ONLY extern float acosf (float); extern float asinf (float); extern float atan2f (float, float); extern float coshf (float); extern float sinhf (float); extern float expf (float); extern float ldexpf (float, int); extern float logf (float); extern float log10f (float); extern float powf (float, float); extern float sqrtf (float); extern float fmodf (float, float); #endif /* ! defined (_REENT_ONLY) */ /* Other single precision functions. */ extern float exp2f (float); extern float scalblnf (float, long int); extern float tgammaf (float); extern float nearbyintf (float); extern long int lrintf (float); extern long long int llrintf (float); extern float roundf (float); extern long int lroundf (float); extern long long int llroundf (float); extern float truncf (float); extern float remquof (float, float, int *); extern float fdimf (float, float); extern float fmaxf (float, float); extern float fminf (float, float); extern float fmaf (float, float, float); extern float infinityf (void); extern float nanf (const char *); extern float copysignf (float, float); extern float logbf (float); extern int ilogbf (float); extern float asinhf (float); extern float cbrtf (float); extern float nextafterf (float, float); extern float rintf (float); extern float scalbnf (float, int); extern float log1pf (float); extern float expm1f (float); #ifndef _REENT_ONLY extern float acoshf (float); extern float atanhf (float); extern float remainderf (float, float); extern float gammaf (float); extern float lgammaf (float); extern float erff (float); extern float erfcf (float); extern float log2f (float); extern float hypotf (float, float); #endif /* ! defined (_REENT_ONLY) */ /* Newlib doesn't fully support long double math functions so far. On platforms where long double equals double the long double functions simply call the double functions. On Cygwin the long double functions are implemented independently from newlib to be able to use optimized assembler functions despite using the Microsoft x86_64 ABI. */ #if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__) /* Reentrant ANSI C functions. */ #ifndef __math_68881 extern long double atanl (long double); extern long double cosl (long double); extern long double sinl (long double); extern long double tanl (long double); extern long double tanhl (long double); extern long double frexpl (long double, int *); extern long double modfl (long double, long double *); extern long double ceill (long double); extern long double fabsl (long double); extern long double floorl (long double); extern long double log1pl (long double); extern long double expm1l (long double); #endif /* ! defined (__math_68881) */ /* Non reentrant ANSI C functions. */ #ifndef _REENT_ONLY #ifndef __math_68881 extern long double acosl (long double); extern long double asinl (long double); extern long double atan2l (long double, long double); extern long double coshl (long double); extern long double sinhl (long double); extern long double expl (long double); extern long double ldexpl (long double, int); extern long double logl (long double); extern long double log10l (long double); extern long double powl (long double, long double); extern long double sqrtl (long double); extern long double fmodl (long double, long double); extern long double hypotl (long double, long double); #endif /* ! defined (__math_68881) */ #endif /* ! defined (_REENT_ONLY) */ extern long double copysignl (long double, long double); extern long double nanl (const char *); extern int ilogbl (long double); extern long double asinhl (long double); extern long double cbrtl (long double); extern long double nextafterl (long double, long double); extern float nexttowardf (float, long double); extern double nexttoward (double, long double); extern long double nexttowardl (long double, long double); extern long double logbl (long double); extern long double log2l (long double); extern long double rintl (long double); extern long double scalbnl (long double, int); extern long double exp2l (long double); extern long double scalblnl (long double, long); extern long double tgammal (long double); extern long double nearbyintl (long double); extern long int lrintl (long double); extern long long int llrintl (long double); extern long double roundl (long double); extern long lroundl (long double); extern long long int llroundl (long double); extern long double truncl (long double); extern long double remquol (long double, long double, int *); extern long double fdiml (long double, long double); extern long double fmaxl (long double, long double); extern long double fminl (long double, long double); extern long double fmal (long double, long double, long double); #ifndef _REENT_ONLY extern long double acoshl (long double); extern long double atanhl (long double); extern long double remainderl (long double, long double); extern long double lgammal (long double); extern long double erfl (long double); extern long double erfcl (long double); #endif /* ! defined (_REENT_ONLY) */ #else /* !_LDBL_EQ_DBL && !__CYGWIN__ */ extern long double hypotl (long double, long double); extern long double sqrtl (long double); #ifdef __i386__ /* Other long double precision functions. */ extern _LONG_DOUBLE rintl (_LONG_DOUBLE); extern long int lrintl (_LONG_DOUBLE); extern long long int llrintl (_LONG_DOUBLE); #endif /* __i386__ */ #endif /* !_LDBL_EQ_DBL && !__CYGWIN__ */ #endif /* __ISO_C_VISIBLE >= 1999 */ #if __MISC_VISIBLE extern double drem (double, double); extern float dremf (float, float); #ifdef __CYGWIN__ extern float dreml (long double, long double); #endif /* __CYGWIN__ */ extern double gamma_r (double, int *); extern double lgamma_r (double, int *); extern float gammaf_r (float, int *); extern float lgammaf_r (float, int *); #endif #if __MISC_VISIBLE || __XSI_VISIBLE extern double y0 (double); extern double y1 (double); extern double yn (int, double); extern double j0 (double); extern double j1 (double); extern double jn (int, double); #endif #if __MISC_VISIBLE || __XSI_VISIBLE >= 600 extern float y0f (float); extern float y1f (float); extern float ynf (int, float); extern float j0f (float); extern float j1f (float); extern float jnf (int, float); #endif /* GNU extensions */ #if __GNU_VISIBLE extern void sincos (double, double *, double *); extern void sincosf (float, float *, float *); #ifdef __CYGWIN__ extern void sincosl (long double, long double *, long double *); #endif /* __CYGWIN__ */ # ifndef exp10 extern double exp10 (double); # endif # ifndef pow10 extern double pow10 (double); # endif # ifndef exp10f extern float exp10f (float); # endif # ifndef pow10f extern float pow10f (float); # endif #ifdef __CYGWIN__ # ifndef exp10l extern float exp10l (float); # endif # ifndef pow10l extern float pow10l (float); # endif #endif /* __CYGWIN__ */ #endif /* __GNU_VISIBLE */ #if __MISC_VISIBLE || __XSI_VISIBLE /* The gamma functions use a global variable, signgam. */ #ifndef _REENT_ONLY #define signgam (*__signgam()) extern int *__signgam (void); #endif /* ! defined (_REENT_ONLY) */ #define __signgam_r(ptr) _REENT_SIGNGAM(ptr) #endif /* __MISC_VISIBLE || __XSI_VISIBLE */ /* Useful constants. */ #if __BSD_VISIBLE || __XSI_VISIBLE #define MAXFLOAT 3.40282347e+38F #define M_E 2.7182818284590452354 #define M_LOG2E 1.4426950408889634074 #define M_LOG10E 0.43429448190325182765 #define M_LN2 _M_LN2 #define M_LN10 2.30258509299404568402 #define M_PI 3.14159265358979323846 #define M_PI_2 1.57079632679489661923 #define M_PI_4 0.78539816339744830962 #define M_1_PI 0.31830988618379067154 #define M_2_PI 0.63661977236758134308 #define M_2_SQRTPI 1.12837916709551257390 #define M_SQRT2 1.41421356237309504880 #define M_SQRT1_2 0.70710678118654752440 #endif #if __BSD_VISIBLE #define M_TWOPI (M_PI * 2.0) #define M_3PI_4 2.3561944901923448370E0 #define M_SQRTPI 1.77245385090551602792981 #define M_LN2LO 1.9082149292705877000E-10 #define M_LN2HI 6.9314718036912381649E-1 #define M_SQRT3 1.73205080756887719000 #define M_IVLN10 0.43429448190325182765 /* 1 / log(10) */ #define M_LOG2_E _M_LN2 #define M_INVLN2 1.4426950408889633870E0 /* 1 / log(2) */ #endif /* __BSD_VISIBLE */ _END_STD_C #ifdef __FAST_MATH__ #include #endif #endif /* _MATH_H_ */ 07070100000036000081a4000000000000000000000001630c8dd400000050000000000000000000000000000000000000002200000000./usr/nvptx-none/include/memory.h#ifndef _MEMORY_H #define _MEMORY_H #include #endif /* !_MEMORY_H */ 07070100000037000081a4000000000000000000000001630c8dd400000c5f000000000000000000000000000000000000002000000000./usr/nvptx-none/include/ndbm.h/*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1990, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Margo Seltzer. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)ndbm.h 8.1 (Berkeley) 6/2/93 * $FreeBSD$ : src/include/ndbm.h * Nov 20 19:45:28 2017 UTC by pfg * SVN Revision 326024 */ #ifndef _NDBM_H_ #define _NDBM_H_ /* #include */ /* * The above header-file is directly included in `newlib/libc/search/ndbm.c` * as `db.h` is present in form of `db_local.h`, inside `newlib/libc/search` * directory and not in `newlib/libc/include`. * Necessary data-types are mentioned in form of forward-declarations */ /* Map dbm interface onto db(3). */ #define DBM_RDONLY O_RDONLY /* Flags to dbm_store(). */ #define DBM_INSERT 0 #define DBM_REPLACE 1 /* * The db(3) support for ndbm always appends this suffix to the * file name to avoid overwriting the user's original database. */ #define DBM_SUFFIX ".db" typedef struct { void *dptr; int dsize; /* XXX Should be size_t according to 1003.1-2008. */ } datum; struct __db; /* Forward-declaration */ typedef struct __db DB; /* Forward-declaration */ typedef DB DBM; #define dbm_pagfno(a) DBM_PAGFNO_NOT_AVAILABLE __BEGIN_DECLS int dbm_clearerr(DBM *); void dbm_close(DBM *); int dbm_delete(DBM *, datum); int dbm_error(DBM *); datum dbm_fetch(DBM *, datum); datum dbm_firstkey(DBM *); datum dbm_nextkey(DBM *); DBM *dbm_open(const char *, int, mode_t); int dbm_store(DBM *, datum, datum, int); #if __BSD_VISIBLE int dbm_dirfno(DBM *); #endif __END_DECLS #endif /* !_NDBM_H_ */ 07070100000038000081a4000000000000000000000001630c8dd500001c89000000000000000000000000000000000000002200000000./usr/nvptx-none/include/newlib.h/* newlib.h. Generated from newlib.hin by configure. */ /* newlib.hin. Manually edited from the output of autoheader to remove all PACKAGE_ macros which will collide with any user package using newlib header files and having its own package name, version, etc... */ #ifndef __NEWLIB_H__ #define __NEWLIB_H__ 1 /* EL/IX level */ #define _ELIX_LEVEL 1 /* Newlib version */ #include <_newlib_version.h> /* C99 formats support (such as %a, %zu, ...) in IO functions like * printf/scanf enabled */ /* #undef _WANT_IO_C99_FORMATS */ /* long long type support in IO functions like printf/scanf enabled */ #define _WANT_IO_LONG_LONG 1 /* Register application finalization function using atexit. */ /* #undef _WANT_REGISTER_FINI */ /* long double type support in IO functions like printf/scanf enabled */ /* #undef _WANT_IO_LONG_DOUBLE */ /* Positional argument support in printf functions enabled. */ /* #undef _WANT_IO_POS_ARGS */ /* Optional reentrant struct support. Used mostly on platforms with very restricted storage. */ /* #undef _WANT_REENT_SMALL */ /* Verify _REENT_CHECK macros allocate memory successfully. */ #define _REENT_CHECK_VERIFY 1 /* Multibyte supported */ /* #undef _MB_CAPABLE */ /* MB_LEN_MAX */ #define _MB_LEN_MAX 1 /* ICONV enabled */ /* #undef _ICONV_ENABLED */ /* Enable ICONV external CCS files loading capabilities */ /* #undef _ICONV_ENABLE_EXTERNAL_CCS */ /* Define if the linker supports .preinit_array/.init_array/.fini_array * sections. */ /* #undef HAVE_INITFINI_ARRAY */ /* True if atexit() may dynamically allocate space for cleanup functions. */ #define _ATEXIT_DYNAMIC_ALLOC 1 /* True if long double supported. */ #define _HAVE_LONG_DOUBLE 1 /* Define if compiler supports -fno-tree-loop-distribute-patterns. */ #define _HAVE_CC_INHIBIT_LOOP_TO_LIBCALL 1 /* True if long double supported and it is equal to double. */ #define _LDBL_EQ_DBL 1 /* Define if ivo supported in streamio. */ #define _FVWRITE_IN_STREAMIO 1 /* Define if fseek functions support seek optimization. */ #define _FSEEK_OPTIMIZATION 1 /* Define if wide char orientation is supported. */ #define _WIDE_ORIENT 1 /* Define if unbuffered stream file optimization is supported. */ #define _UNBUF_STREAM_OPT 1 /* Define if lite version of exit supported. */ /* #undef _LITE_EXIT */ /* Define if declare atexit data as global. */ /* #undef _REENT_GLOBAL_ATEXIT */ /* Define to move the stdio stream FILE objects out of struct _reent and make them global. The stdio stream pointers of struct _reent are initialized to point to the global stdio FILE stream objects. */ #define _WANT_REENT_GLOBAL_STDIO_STREAMS 1 /* Define if small footprint nano-formatted-IO implementation used. */ /* #undef _NANO_FORMATTED_IO */ /* Define if using retargetable functions for default lock routines. */ /* #undef _RETARGETABLE_LOCKING */ /* Define to use type long for time_t. */ /* #undef _WANT_USE_LONG_TIME_T */ /* * Iconv encodings enabled ("to" direction) */ /* #undef _ICONV_TO_ENCODING_BIG5 */ /* #undef _ICONV_TO_ENCODING_CP775 */ /* #undef _ICONV_TO_ENCODING_CP850 */ /* #undef _ICONV_TO_ENCODING_CP852 */ /* #undef _ICONV_TO_ENCODING_CP855 */ /* #undef _ICONV_TO_ENCODING_CP866 */ /* #undef _ICONV_TO_ENCODING_EUC_JP */ /* #undef _ICONV_TO_ENCODING_EUC_TW */ /* #undef _ICONV_TO_ENCODING_EUC_KR */ /* #undef _ICONV_TO_ENCODING_ISO_8859_1 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_10 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_11 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_13 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_14 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_15 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_2 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_3 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_4 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_5 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_6 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_7 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_8 */ /* #undef _ICONV_TO_ENCODING_ISO_8859_9 */ /* #undef _ICONV_TO_ENCODING_ISO_IR_111 */ /* #undef _ICONV_TO_ENCODING_KOI8_R */ /* #undef _ICONV_TO_ENCODING_KOI8_RU */ /* #undef _ICONV_TO_ENCODING_KOI8_U */ /* #undef _ICONV_TO_ENCODING_KOI8_UNI */ /* #undef _ICONV_TO_ENCODING_UCS_2 */ /* #undef _ICONV_TO_ENCODING_UCS_2_INTERNAL */ /* #undef _ICONV_TO_ENCODING_UCS_2BE */ /* #undef _ICONV_TO_ENCODING_UCS_2LE */ /* #undef _ICONV_TO_ENCODING_UCS_4 */ /* #undef _ICONV_TO_ENCODING_UCS_4_INTERNAL */ /* #undef _ICONV_TO_ENCODING_UCS_4BE */ /* #undef _ICONV_TO_ENCODING_UCS_4LE */ /* #undef _ICONV_TO_ENCODING_US_ASCII */ /* #undef _ICONV_TO_ENCODING_UTF_16 */ /* #undef _ICONV_TO_ENCODING_UTF_16BE */ /* #undef _ICONV_TO_ENCODING_UTF_16LE */ /* #undef _ICONV_TO_ENCODING_UTF_8 */ /* #undef _ICONV_TO_ENCODING_WIN_1250 */ /* #undef _ICONV_TO_ENCODING_WIN_1251 */ /* #undef _ICONV_TO_ENCODING_WIN_1252 */ /* #undef _ICONV_TO_ENCODING_WIN_1253 */ /* #undef _ICONV_TO_ENCODING_WIN_1254 */ /* #undef _ICONV_TO_ENCODING_WIN_1255 */ /* #undef _ICONV_TO_ENCODING_WIN_1256 */ /* #undef _ICONV_TO_ENCODING_WIN_1257 */ /* #undef _ICONV_TO_ENCODING_WIN_1258 */ /* * Iconv encodings enabled ("from" direction) */ /* #undef _ICONV_FROM_ENCODING_BIG5 */ /* #undef _ICONV_FROM_ENCODING_CP775 */ /* #undef _ICONV_FROM_ENCODING_CP850 */ /* #undef _ICONV_FROM_ENCODING_CP852 */ /* #undef _ICONV_FROM_ENCODING_CP855 */ /* #undef _ICONV_FROM_ENCODING_CP866 */ /* #undef _ICONV_FROM_ENCODING_EUC_JP */ /* #undef _ICONV_FROM_ENCODING_EUC_TW */ /* #undef _ICONV_FROM_ENCODING_EUC_KR */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_1 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_10 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_11 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_13 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_14 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_15 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_2 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_3 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_4 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_5 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_6 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_7 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_8 */ /* #undef _ICONV_FROM_ENCODING_ISO_8859_9 */ /* #undef _ICONV_FROM_ENCODING_ISO_IR_111 */ /* #undef _ICONV_FROM_ENCODING_KOI8_R */ /* #undef _ICONV_FROM_ENCODING_KOI8_RU */ /* #undef _ICONV_FROM_ENCODING_KOI8_U */ /* #undef _ICONV_FROM_ENCODING_KOI8_UNI */ /* #undef _ICONV_FROM_ENCODING_UCS_2 */ /* #undef _ICONV_FROM_ENCODING_UCS_2_INTERNAL */ /* #undef _ICONV_FROM_ENCODING_UCS_2BE */ /* #undef _ICONV_FROM_ENCODING_UCS_2LE */ /* #undef _ICONV_FROM_ENCODING_UCS_4 */ /* #undef _ICONV_FROM_ENCODING_UCS_4_INTERNAL */ /* #undef _ICONV_FROM_ENCODING_UCS_4BE */ /* #undef _ICONV_FROM_ENCODING_UCS_4LE */ /* #undef _ICONV_FROM_ENCODING_US_ASCII */ /* #undef _ICONV_FROM_ENCODING_UTF_16 */ /* #undef _ICONV_FROM_ENCODING_UTF_16BE */ /* #undef _ICONV_FROM_ENCODING_UTF_16LE */ /* #undef _ICONV_FROM_ENCODING_UTF_8 */ /* #undef _ICONV_FROM_ENCODING_WIN_1250 */ /* #undef _ICONV_FROM_ENCODING_WIN_1251 */ /* #undef _ICONV_FROM_ENCODING_WIN_1252 */ /* #undef _ICONV_FROM_ENCODING_WIN_1253 */ /* #undef _ICONV_FROM_ENCODING_WIN_1254 */ /* #undef _ICONV_FROM_ENCODING_WIN_1255 */ /* #undef _ICONV_FROM_ENCODING_WIN_1256 */ /* #undef _ICONV_FROM_ENCODING_WIN_1257 */ /* #undef _ICONV_FROM_ENCODING_WIN_1258 */ #endif /* !__NEWLIB_H__ */ 07070100000039000081a4000000000000000000000001630c8dd4000000c1000000000000000000000000000000000000002100000000./usr/nvptx-none/include/paths.h#ifndef _PATHS_H_ #define _PATHS_H_ #define _PATH_DEV "/dev/" #define _PATH_DEVNULL "/dev/null" #define _PATH_DEVZERO "/dev/zero" #define _PATH_BSHELL "/bin/sh" #endif /* _PATHS_H_ */ 0707010000003a000081a4000000000000000000000001630c8dd40000394f000000000000000000000000000000000000002300000000./usr/nvptx-none/include/pthread.h/* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2013, 2015. * On-Line Applications Research Corporation (OAR). * * Permission to use, copy, modify, and distribute this software for any * purpose without fee is hereby granted, provided that this entire notice * is included in all copies of any software which is or includes a copy * or modification of this software. * * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. */ #ifndef __PTHREAD_h #define __PTHREAD_h #ifdef __cplusplus extern "C" { #endif #include #if defined(_POSIX_THREADS) #include #include #include #include struct _pthread_cleanup_context { void (*_routine)(void *); void *_arg; int _canceltype; struct _pthread_cleanup_context *_previous; }; /* Register Fork Handlers */ int pthread_atfork (void (*prepare)(void), void (*parent)(void), void (*child)(void)); /* Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 */ int pthread_mutexattr_init (pthread_mutexattr_t *__attr); int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr); int pthread_mutexattr_getpshared (const pthread_mutexattr_t *__attr, int *__pshared); int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr, int __pshared); #if defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) /* Single UNIX Specification 2 Mutex Attributes types */ int pthread_mutexattr_gettype (const pthread_mutexattr_t *__attr, int *__kind); int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind); #endif /* Initializing and Destroying a Mutex, P1003.1c/Draft 10, p. 87 */ int pthread_mutex_init (pthread_mutex_t *__mutex, const pthread_mutexattr_t *__attr); int pthread_mutex_destroy (pthread_mutex_t *__mutex); /* This is used to statically initialize a pthread_mutex_t. Example: pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; */ #define PTHREAD_MUTEX_INITIALIZER _PTHREAD_MUTEX_INITIALIZER /* Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 NOTE: P1003.4b/D8 adds pthread_mutex_timedlock(), p. 29 */ int pthread_mutex_lock (pthread_mutex_t *__mutex); int pthread_mutex_trylock (pthread_mutex_t *__mutex); int pthread_mutex_unlock (pthread_mutex_t *__mutex); #if defined(_POSIX_TIMEOUTS) int pthread_mutex_timedlock (pthread_mutex_t *__mutex, const struct timespec *__timeout); #endif /* _POSIX_TIMEOUTS */ /* Condition Variable Initialization Attributes, P1003.1c/Draft 10, p. 96 */ int pthread_condattr_init (pthread_condattr_t *__attr); int pthread_condattr_destroy (pthread_condattr_t *__attr); int pthread_condattr_getclock (const pthread_condattr_t *__restrict __attr, clockid_t *__restrict __clock_id); int pthread_condattr_setclock (pthread_condattr_t *__attr, clockid_t __clock_id); int pthread_condattr_getpshared (const pthread_condattr_t *__attr, int *__pshared); int pthread_condattr_setpshared (pthread_condattr_t *__attr, int __pshared); /* Initializing and Destroying a Condition Variable, P1003.1c/Draft 10, p. 87 */ int pthread_cond_init (pthread_cond_t *__cond, const pthread_condattr_t *__attr); int pthread_cond_destroy (pthread_cond_t *__mutex); /* This is used to statically initialize a pthread_cond_t. Example: pthread_cond_t cond = PTHREAD_COND_INITIALIZER; */ #define PTHREAD_COND_INITIALIZER _PTHREAD_COND_INITIALIZER /* Broadcasting and Signaling a Condition, P1003.1c/Draft 10, p. 101 */ int pthread_cond_signal (pthread_cond_t *__cond); int pthread_cond_broadcast (pthread_cond_t *__cond); /* Waiting on a Condition, P1003.1c/Draft 10, p. 105 */ int pthread_cond_wait (pthread_cond_t *__cond, pthread_mutex_t *__mutex); int pthread_cond_timedwait (pthread_cond_t *__cond, pthread_mutex_t *__mutex, const struct timespec *__abstime); #if defined(_POSIX_THREAD_PRIORITY_SCHEDULING) /* Thread Creation Scheduling Attributes, P1003.1c/Draft 10, p. 120 */ int pthread_attr_setscope (pthread_attr_t *__attr, int __contentionscope); int pthread_attr_getscope (const pthread_attr_t *__attr, int *__contentionscope); int pthread_attr_setinheritsched (pthread_attr_t *__attr, int __inheritsched); int pthread_attr_getinheritsched (const pthread_attr_t *__attr, int *__inheritsched); int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy); int pthread_attr_getschedpolicy (const pthread_attr_t *__attr, int *__policy); #endif /* defined(_POSIX_THREAD_PRIORITY_SCHEDULING) */ int pthread_attr_setschedparam (pthread_attr_t *__attr, const struct sched_param *__param); int pthread_attr_getschedparam (const pthread_attr_t *__attr, struct sched_param *__param); #if defined(_POSIX_THREAD_PRIORITY_SCHEDULING) /* Dynamic Thread Scheduling Parameters Access, P1003.1c/Draft 10, p. 124 */ int pthread_getschedparam (pthread_t __pthread, int *__policy, struct sched_param *__param); int pthread_setschedparam (pthread_t __pthread, int __policy, const struct sched_param *__param); /* Set Scheduling Priority of a Thread */ int pthread_setschedprio (pthread_t thread, int prio); #endif /* defined(_POSIX_THREAD_PRIORITY_SCHEDULING) */ #if __GNU_VISIBLE int pthread_getname_np(pthread_t, char *, size_t) __nonnull((2)); int pthread_setname_np(pthread_t, const char *) __nonnull((2)); #endif #if defined(_POSIX_THREAD_PRIO_INHERIT) || defined(_POSIX_THREAD_PRIO_PROTECT) /* Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 */ int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr, int __protocol); int pthread_mutexattr_getprotocol (const pthread_mutexattr_t *__attr, int *__protocol); int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr, int __prioceiling); int pthread_mutexattr_getprioceiling (const pthread_mutexattr_t *__attr, int *__prioceiling); #endif /* _POSIX_THREAD_PRIO_INHERIT || _POSIX_THREAD_PRIO_PROTECT */ #if defined(_POSIX_THREAD_PRIO_PROTECT) /* Change the Priority Ceiling of a Mutex, P1003.1c/Draft 10, p. 131 */ int pthread_mutex_setprioceiling (pthread_mutex_t *__mutex, int __prioceiling, int *__old_ceiling); int pthread_mutex_getprioceiling (const pthread_mutex_t *__restrict __mutex, int *__prioceiling); #endif /* _POSIX_THREAD_PRIO_PROTECT */ /* Thread Creation Attributes, P1003.1c/Draft 10, p, 140 */ int pthread_attr_init (pthread_attr_t *__attr); int pthread_attr_destroy (pthread_attr_t *__attr); int pthread_attr_setstack (pthread_attr_t *attr, void *__stackaddr, size_t __stacksize); int pthread_attr_getstack (const pthread_attr_t *attr, void **__stackaddr, size_t *__stacksize); int pthread_attr_getstacksize (const pthread_attr_t *__attr, size_t *__stacksize); int pthread_attr_setstacksize (pthread_attr_t *__attr, size_t __stacksize); int pthread_attr_getstackaddr (const pthread_attr_t *__attr, void **__stackaddr); int pthread_attr_setstackaddr (pthread_attr_t *__attr, void *__stackaddr); int pthread_attr_getdetachstate (const pthread_attr_t *__attr, int *__detachstate); int pthread_attr_setdetachstate (pthread_attr_t *__attr, int __detachstate); int pthread_attr_getguardsize (const pthread_attr_t *__attr, size_t *__guardsize); int pthread_attr_setguardsize (pthread_attr_t *__attr, size_t __guardsize); /* POSIX thread APIs beyond the POSIX standard but provided * in GNU/Linux. They may be provided by other OSes for * compatibility. */ #if __GNU_VISIBLE #if defined(__rtems__) int pthread_attr_setaffinity_np (pthread_attr_t *__attr, size_t __cpusetsize, const cpu_set_t *__cpuset); int pthread_attr_getaffinity_np (const pthread_attr_t *__attr, size_t __cpusetsize, cpu_set_t *__cpuset); int pthread_setaffinity_np (pthread_t __id, size_t __cpusetsize, const cpu_set_t *__cpuset); int pthread_getaffinity_np (const pthread_t __id, size_t __cpusetsize, cpu_set_t *__cpuset); int pthread_getattr_np (pthread_t __id, pthread_attr_t *__attr); #endif /* defined(__rtems__) */ #endif /* __GNU_VISIBLE */ /* Thread Creation, P1003.1c/Draft 10, p. 144 */ int pthread_create (pthread_t *__pthread, const pthread_attr_t *__attr, void *(*__start_routine)(void *), void *__arg); /* Wait for Thread Termination, P1003.1c/Draft 10, p. 147 */ int pthread_join (pthread_t __pthread, void **__value_ptr); /* Detaching a Thread, P1003.1c/Draft 10, p. 149 */ int pthread_detach (pthread_t __pthread); /* Thread Termination, p1003.1c/Draft 10, p. 150 */ void pthread_exit (void *__value_ptr) __dead2; /* Get Calling Thread's ID, p1003.1c/Draft 10, p. XXX */ pthread_t pthread_self (void); /* Compare Thread IDs, p1003.1c/Draft 10, p. 153 */ int pthread_equal (pthread_t __t1, pthread_t __t2); /* Retrieve ID of a Thread's CPU Time Clock */ int pthread_getcpuclockid (pthread_t thread, clockid_t *clock_id); /* Get/Set Current Thread's Concurrency Level */ int pthread_setconcurrency (int new_level); int pthread_getconcurrency (void); #if __BSD_VISIBLE || __GNU_VISIBLE void pthread_yield (void); #endif /* Dynamic Package Initialization */ /* This is used to statically initialize a pthread_once_t. Example: pthread_once_t once = PTHREAD_ONCE_INIT; NOTE: This is named inconsistently -- it should be INITIALIZER. */ #define PTHREAD_ONCE_INIT _PTHREAD_ONCE_INIT int pthread_once (pthread_once_t *__once_control, void (*__init_routine)(void)); /* Thread-Specific Data Key Create, P1003.1c/Draft 10, p. 163 */ int pthread_key_create (pthread_key_t *__key, void (*__destructor)(void *)); /* Thread-Specific Data Management, P1003.1c/Draft 10, p. 165 */ int pthread_setspecific (pthread_key_t __key, const void *__value); void * pthread_getspecific (pthread_key_t __key); /* Thread-Specific Data Key Deletion, P1003.1c/Draft 10, p. 167 */ int pthread_key_delete (pthread_key_t __key); /* Execution of a Thread, P1003.1c/Draft 10, p. 181 */ #define PTHREAD_CANCEL_ENABLE 0 #define PTHREAD_CANCEL_DISABLE 1 #define PTHREAD_CANCEL_DEFERRED 0 #define PTHREAD_CANCEL_ASYNCHRONOUS 1 #define PTHREAD_CANCELED ((void *) -1) int pthread_cancel (pthread_t __pthread); /* Setting Cancelability State, P1003.1c/Draft 10, p. 183 */ int pthread_setcancelstate (int __state, int *__oldstate); int pthread_setcanceltype (int __type, int *__oldtype); void pthread_testcancel (void); /* Establishing Cancellation Handlers, P1003.1c/Draft 10, p. 184 */ void _pthread_cleanup_push (struct _pthread_cleanup_context *_context, void (*_routine)(void *), void *_arg); void _pthread_cleanup_pop (struct _pthread_cleanup_context *_context, int _execute); /* It is intentional to open and close the scope in two different macros */ #define pthread_cleanup_push(_routine, _arg) \ do { \ struct _pthread_cleanup_context _pthread_clup_ctx; \ _pthread_cleanup_push(&_pthread_clup_ctx, (_routine), (_arg)) #define pthread_cleanup_pop(_execute) \ _pthread_cleanup_pop(&_pthread_clup_ctx, (_execute)); \ } while (0) #if __GNU_VISIBLE void _pthread_cleanup_push_defer (struct _pthread_cleanup_context *_context, void (*_routine)(void *), void *_arg); void _pthread_cleanup_pop_restore (struct _pthread_cleanup_context *_context, int _execute); /* It is intentional to open and close the scope in two different macros */ #define pthread_cleanup_push_defer_np(_routine, _arg) \ do { \ struct _pthread_cleanup_context _pthread_clup_ctx; \ _pthread_cleanup_push_defer(&_pthread_clup_ctx, (_routine), (_arg)) #define pthread_cleanup_pop_restore_np(_execute) \ _pthread_cleanup_pop_restore(&_pthread_clup_ctx, (_execute)); \ } while (0) #endif /* __GNU_VISIBLE */ #if defined(_POSIX_THREAD_CPUTIME) /* Accessing a Thread CPU-time Clock, P1003.4b/D8, p. 58 */ int pthread_getcpuclockid (pthread_t __pthread_id, clockid_t *__clock_id); #endif /* defined(_POSIX_THREAD_CPUTIME) */ #endif /* defined(_POSIX_THREADS) */ #if defined(_POSIX_BARRIERS) int pthread_barrierattr_init (pthread_barrierattr_t *__attr); int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr); int pthread_barrierattr_getpshared (const pthread_barrierattr_t *__attr, int *__pshared); int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr, int __pshared); #define PTHREAD_BARRIER_SERIAL_THREAD -1 int pthread_barrier_init (pthread_barrier_t *__barrier, const pthread_barrierattr_t *__attr, unsigned __count); int pthread_barrier_destroy (pthread_barrier_t *__barrier); int pthread_barrier_wait (pthread_barrier_t *__barrier); #endif /* defined(_POSIX_BARRIERS) */ #if defined(_POSIX_SPIN_LOCKS) int pthread_spin_init (pthread_spinlock_t *__spinlock, int __pshared); int pthread_spin_destroy (pthread_spinlock_t *__spinlock); int pthread_spin_lock (pthread_spinlock_t *__spinlock); int pthread_spin_trylock (pthread_spinlock_t *__spinlock); int pthread_spin_unlock (pthread_spinlock_t *__spinlock); #endif /* defined(_POSIX_SPIN_LOCKS) */ #if defined(_POSIX_READER_WRITER_LOCKS) /* This is used to statically initialize a pthread_rwlock_t. Example: pthread_mutex_t mutex = PTHREAD_RWLOCK_INITIALIZER; */ #define PTHREAD_RWLOCK_INITIALIZER _PTHREAD_RWLOCK_INITIALIZER int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr); int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr); int pthread_rwlockattr_getpshared (const pthread_rwlockattr_t *__attr, int *__pshared); int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr, int __pshared); int pthread_rwlock_init (pthread_rwlock_t *__rwlock, const pthread_rwlockattr_t *__attr); int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock); int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock); int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock); int pthread_rwlock_timedrdlock (pthread_rwlock_t *__rwlock, const struct timespec *__abstime); int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock); int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock); int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock); int pthread_rwlock_timedwrlock (pthread_rwlock_t *__rwlock, const struct timespec *__abstime); #endif /* defined(_POSIX_READER_WRITER_LOCKS) */ #ifdef __cplusplus } #endif #endif /* end of include file */ 0707010000003b000081a4000000000000000000000001630c8dd400000aca000000000000000000000000000000000000001f00000000./usr/nvptx-none/include/pwd.h/*- * Copyright (c) 1989 The Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)pwd.h 5.13 (Berkeley) 5/28/91 */ #ifndef _PWD_H_ #ifdef __cplusplus extern "C" { #endif #define _PWD_H_ #include #include #if __BSD_VISIBLE #define _PATH_PASSWD "/etc/passwd" #define _PASSWORD_LEN 128 /* max length, not counting NULL */ #endif struct passwd { char *pw_name; /* user name */ char *pw_passwd; /* encrypted password */ uid_t pw_uid; /* user uid */ gid_t pw_gid; /* user gid */ char *pw_comment; /* comment */ char *pw_gecos; /* Honeywell login info */ char *pw_dir; /* home directory */ char *pw_shell; /* default shell */ }; #ifndef __INSIDE_CYGWIN__ struct passwd *getpwuid (uid_t); struct passwd *getpwnam (const char *); #if __MISC_VISIBLE || __POSIX_VISIBLE int getpwnam_r (const char *, struct passwd *, char *, size_t , struct passwd **); int getpwuid_r (uid_t, struct passwd *, char *, size_t, struct passwd **); #endif #if __MISC_VISIBLE || __XSI_VISIBLE >= 4 struct passwd *getpwent (void); void setpwent (void); void endpwent (void); #endif #if __BSD_VISIBLE int setpassent (int); #endif #endif /*!__INSIDE_CYGWIN__*/ #ifdef __cplusplus } #endif #endif /* _PWD_H_ */ 0707010000003c000081a4000000000000000000000001630c8dd40000212d000000000000000000000000000000000000002100000000./usr/nvptx-none/include/reent.h/* This header file provides the reentrancy. */ /* The reentrant system calls here serve two purposes: 1) Provide reentrant versions of the system calls the ANSI C library requires. 2) Provide these system calls in a namespace clean way. It is intended that *all* system calls that the ANSI C library needs be declared here. It documents them all in one place. All library access to the system is via some form of these functions. The target may provide the needed syscalls by any of the following: 1) Define the reentrant versions of the syscalls directly. (eg: _open_r, _close_r, etc.). Please keep the namespace clean. When you do this, set "syscall_dir" to "syscalls" and add -DREENTRANT_SYSCALLS_PROVIDED to newlib_cflags in configure.host. 2) Define namespace clean versions of the system calls by prefixing them with '_' (eg: _open, _close, etc.). Technically, there won't be true reentrancy at the syscall level, but the library will be namespace clean. When you do this, set "syscall_dir" to "syscalls" in configure.host. 3) Define or otherwise provide the regular versions of the syscalls (eg: open, close, etc.). The library won't be reentrant nor namespace clean, but at least it will work. When you do this, add -DMISSING_SYSCALL_NAMES to newlib_cflags in configure.host. 4) Define or otherwise provide the regular versions of the syscalls, and do not supply functional interfaces for any of the reentrant calls. With this method, the reentrant syscalls are redefined to directly call the regular system call without the reentrancy argument. When you do this, specify both -DREENTRANT_SYSCALLS_PROVIDED and -DMISSING_SYSCALL_NAMES via newlib_cflags in configure.host and do not specify "syscall_dir". Stubs of the reentrant versions of the syscalls exist in the libc/reent source directory and are provided if REENTRANT_SYSCALLS_PROVIDED isn't defined. These stubs call the native system calls: _open, _close, etc. if MISSING_SYSCALL_NAMES is *not* defined, otherwise they call the non-underscored versions: open, close, etc. when MISSING_SYSCALL_NAMES *is* defined. By default, newlib functions call the reentrant syscalls internally, passing a reentrancy structure as an argument. This reentrancy structure contains data that is thread-specific. For example, the errno value is kept in the reentrancy structure. If multiple threads exist, each will keep a separate errno value which is intuitive since the application flow cannot check for failure reliably otherwise. The reentrant syscalls are either provided by the platform, by the libc/reent stubs, or in the case of both MISSING_SYSCALL_NAMES and REENTRANT_SYSCALLS_PROVIDED being defined, the calls are redefined to simply call the regular syscalls with no reentrancy struct argument. A single-threaded application does not need to worry about the reentrancy structure. It is used internally. A multi-threaded application needs either to manually manage reentrancy structures or use dynamic reentrancy. Manually managing reentrancy structures entails calling special reentrant versions of newlib functions that have an additional reentrancy argument. For example, _printf_r. By convention, the first argument is the reentrancy structure. By default, the normal version of the function uses the default reentrancy structure: _REENT. The reentrancy structure is passed internally, eventually to the reentrant syscalls themselves. How the structures are stored and accessed in this model is up to the application. Dynamic reentrancy is specified by the __DYNAMIC_REENT__ flag. This flag denotes setting up a macro to replace _REENT with a function call to __getreent(). This function needs to be implemented by the platform and it is meant to return the reentrancy structure for the current thread. When the regular C functions (e.g. printf) go to call internal routines with the default _REENT structure, they end up calling with the reentrancy structure for the thread. Thus, application code does not need to call the _r routines nor worry about reentrancy structures. */ /* WARNING: All identifiers here must begin with an underscore. This file is included by stdio.h and others and we therefore must only use identifiers in the namespace allotted to us. */ #ifndef _REENT_H_ #ifdef __cplusplus extern "C" { #endif #define _REENT_H_ #include #include #define __need_size_t #define __need_ptrdiff_t #include /* FIXME: not namespace clean */ struct stat; struct tms; struct timeval; struct timezone; #if defined(REENTRANT_SYSCALLS_PROVIDED) && defined(MISSING_SYSCALL_NAMES) #define _close_r(__reent, __fd) close(__fd) #define _execve_r(__reent, __f, __arg, __env) execve(__f, __arg, __env) #define _fcntl_r(__reent, __fd, __cmd, __arg) fcntl(__fd, __cmd, __arg) #define _fork_r(__reent) fork() #define _fstat_r(__reent, __fdes, __stat) fstat(__fdes, __stat) #define _getpid_r(__reent) getpid() #define _isatty_r(__reent, __desc) isatty(__desc) #define _kill_r(__reent, __pid, __signal) kill(__pid, __signal) #define _link_r(__reent, __oldpath, __newpath) link(__oldpath, __newpath) #define _lseek_r(__reent, __fdes, __off, __w) lseek(__fdes, __off, __w) #define _mkdir_r(__reent, __path, __m) mkdir(__path, __m) #define _open_r(__reent, __path, __flag, __m) open(__path, __flag, __m) #define _read_r(__reent, __fd, __buff, __cnt) read(__fd, __buff, __cnt) #define _rename_r(__reent, __old, __new) rename(__old, __new) #define _sbrk_r(__reent, __incr) sbrk(__incr) #define _stat_r(__reent, __path, __buff) stat(__path, __buff) #define _times_r(__reent, __time) times(__time) #define _unlink_r(__reent, __path) unlink(__path) #define _wait_r(__reent, __status) wait(__status) #define _write_r(__reent, __fd, __buff, __cnt) write(__fd, __buff, __cnt) #define _gettimeofday_r(__reent, __tp, __tzp) gettimeofday(__tp, __tzp) #ifdef __LARGE64_FILES #define _lseek64_r(__reent, __fd, __off, __w) lseek64(__fd, __off, __w) #define _fstat64_r(__reent, __fd, __buff) fstat64(__fd, __buff) #define _open64_r(__reent, __path, __flag, __m) open64(__path, __flag, __m) #endif #else /* Reentrant versions of system calls. */ extern int _close_r (struct _reent *, int); extern int _execve_r (struct _reent *, const char *, char *const *, char *const *); extern int _fcntl_r (struct _reent *, int, int, int); extern int _fork_r (struct _reent *); extern int _fstat_r (struct _reent *, int, struct stat *); extern int _getpid_r (struct _reent *); extern int _isatty_r (struct _reent *, int); extern int _kill_r (struct _reent *, int, int); extern int _link_r (struct _reent *, const char *, const char *); extern _off_t _lseek_r (struct _reent *, int, _off_t, int); extern int _mkdir_r (struct _reent *, const char *, int); extern int _open_r (struct _reent *, const char *, int, int); extern _ssize_t _read_r (struct _reent *, int, void *, size_t); extern int _rename_r (struct _reent *, const char *, const char *); extern void *_sbrk_r (struct _reent *, ptrdiff_t); extern int _stat_r (struct _reent *, const char *, struct stat *); extern _CLOCK_T_ _times_r (struct _reent *, struct tms *); extern int _unlink_r (struct _reent *, const char *); extern int _wait_r (struct _reent *, int *); extern _ssize_t _write_r (struct _reent *, int, const void *, size_t); /* This one is not guaranteed to be available on all targets. */ extern int _gettimeofday_r (struct _reent *, struct timeval *__tp, void *__tzp); #ifdef __LARGE64_FILES #if defined(__CYGWIN__) #define stat64 stat #endif struct stat64; extern _off64_t _lseek64_r (struct _reent *, int, _off64_t, int); extern int _fstat64_r (struct _reent *, int, struct stat64 *); extern int _open64_r (struct _reent *, const char *, int, int); extern int _stat64_r (struct _reent *, const char *, struct stat64 *); /* Don't pollute namespace if not building newlib. */ #if defined (__CYGWIN__) && !defined (_COMPILING_NEWLIB) #undef stat64 #endif #endif #endif #ifdef __cplusplus } #endif #endif /* _REENT_H_ */ 0707010000003d000081a4000000000000000000000001630c8dd4000000dc000000000000000000000000000000000000002200000000./usr/nvptx-none/include/regdef.h/* regdef.h -- define register names. */ /* This is a standard include file for MIPS targets. Other target probably don't define it, and attempts to include this file will fail. */ #include 0707010000003e000081a4000000000000000000000001630c8dd400000dea000000000000000000000000000000000000002100000000./usr/nvptx-none/include/regex.h/*- * Copyright (c) 1992 Henry Spencer. * Copyright (c) 1992, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Henry Spencer of the University of Toronto. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)regex.h 8.2 (Berkeley) 1/3/94 * $FreeBSD: src/include/regex.h,v 1.4 2002/03/23 17:24:53 imp Exp $ */ #ifndef _REGEX_H_ #define _REGEX_H_ #include /* types */ typedef off_t regoff_t; typedef struct { int re_magic; size_t re_nsub; /* number of parenthesized subexpressions */ __const char *re_endp; /* end pointer for REG_PEND */ struct re_guts *re_g; /* none of your business :-) */ } regex_t; typedef struct { regoff_t rm_so; /* start of match */ regoff_t rm_eo; /* end of match */ } regmatch_t; /* regcomp() flags */ #define REG_BASIC 0000 #define REG_EXTENDED 0001 #define REG_ICASE 0002 #define REG_NOSUB 0004 #define REG_NEWLINE 0010 #define REG_NOSPEC 0020 #define REG_PEND 0040 #define REG_DUMP 0200 /* regerror() flags */ #define REG_NOMATCH 1 #define REG_BADPAT 2 #define REG_ECOLLATE 3 #define REG_ECTYPE 4 #define REG_EESCAPE 5 #define REG_ESUBREG 6 #define REG_EBRACK 7 #define REG_EPAREN 8 #define REG_EBRACE 9 #define REG_BADBR 10 #define REG_ERANGE 11 #define REG_ESPACE 12 #define REG_BADRPT 13 #define REG_EMPTY 14 #define REG_ASSERT 15 #define REG_INVARG 16 #define REG_ATOI 255 /* convert name to number (!) */ #define REG_ITOA 0400 /* convert number to name (!) */ /* regexec() flags */ #define REG_NOTBOL 00001 #define REG_NOTEOL 00002 #define REG_STARTEND 00004 #define REG_TRACE 00400 /* tracing of execution */ #define REG_LARGE 01000 /* force large representation */ #define REG_BACKR 02000 /* force use of backref code */ __BEGIN_DECLS int regcomp(regex_t *__restrict, const char *__restrict, int); size_t regerror(int, const regex_t *__restrict, char *__restrict, size_t); int regexec(const regex_t *__restrict, const char *__restrict, size_t, regmatch_t [__restrict], int); void regfree(regex_t *); __END_DECLS #endif /* !_REGEX_H_ */ 0707010000003f000041ed000000000000000000000001630c8dd500000000000000000000000000000000000000000000001d00000000./usr/nvptx-none/include/rpc07070100000040000081a4000000000000000000000001630c8dd400000a8b000000000000000000000000000000000000002100000000./usr/nvptx-none/include/sched.h/* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2010. * On-Line Applications Research Corporation (OAR). * * Permission to use, copy, modify, and distribute this software for any * purpose without fee is hereby granted, provided that this entire notice * is included in all copies of any software which is or includes a copy * or modification of this software. * * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. * * $Id$ */ #ifndef _SCHED_H_ #define _SCHED_H_ #include #include #ifdef __cplusplus extern "C" { #endif #if defined(_POSIX_PRIORITY_SCHEDULING) /* * XBD 13 - Set Scheduling Parameters, P1003.1b-2008, p. 1803 */ int sched_setparam( pid_t __pid, const struct sched_param *__param ); /* * XBD 13 - Set Scheduling Parameters, P1003.1b-2008, p. 1800 */ int sched_getparam( pid_t __pid, struct sched_param *__param ); /* * XBD 13 - Set Scheduling Policy and Scheduling Parameters, * P1003.1b-2008, p. 1805 */ int sched_setscheduler( pid_t __pid, int __policy, const struct sched_param *__param ); /* * XBD 13 - Get Scheduling Policy, P1003.1b-2008, p. 1801 */ int sched_getscheduler( pid_t __pid ); /* * XBD 13 - Get Scheduling Parameter Limits, P1003.1b-2008, p. 1799 */ int sched_get_priority_max( int __policy ); int sched_get_priority_min( int __policy ); /* * XBD 13 - Get Scheduling Parameter Limits, P1003.1b-2008, p. 1802 */ int sched_rr_get_interval( pid_t __pid, struct timespec *__interval ); #endif /* _POSIX_PRIORITY_SCHEDULING */ #if defined(_POSIX_THREADS) || defined(_POSIX_PRIORITY_SCHEDULING) /* * XBD 13 - Yield Processor, P1003.1b-2008, p. 1807 */ int sched_yield( void ); #endif /* _POSIX_THREADS or _POSIX_PRIORITY_SCHEDULING */ #if __GNU_VISIBLE int sched_getcpu(void); /* The following functions should only be declared if the type cpu_set_t is defined through indirect inclusion of sys/cpuset.h, only available on some targets. */ #ifdef _SYS_CPUSET_H_ int sched_getaffinity (pid_t, size_t, cpu_set_t *); int sched_get_thread_affinity (void *, size_t, cpu_set_t *); int sched_setaffinity (pid_t, size_t, const cpu_set_t *); int sched_set_thread_affinity (void *, size_t, const cpu_set_t *); #endif /* _SYS_CPUSET_H_ */ #endif #ifdef __cplusplus } #endif #endif /* _SCHED_H_ */ 07070100000041000081a4000000000000000000000001630c8dd400000557000000000000000000000000000000000000002200000000./usr/nvptx-none/include/search.h/* $NetBSD: search.h,v 1.12 1999/02/22 10:34:28 christos Exp $ */ /* $FreeBSD: src/include/search.h,v 1.4 2002/03/23 17:24:53 imp Exp $ */ /* * Written by J.T. Conklin * Public domain. */ #ifndef _SEARCH_H_ #define _SEARCH_H_ #include #include #include typedef struct entry { char *key; void *data; } ENTRY; typedef enum { FIND, ENTER } ACTION; typedef enum { preorder, postorder, endorder, leaf } VISIT; #ifdef _SEARCH_PRIVATE typedef struct node { char *key; struct node *llink, *rlink; } node_t; #endif struct hsearch_data { struct internal_head *htable; size_t htablesize; }; #ifndef __compar_fn_t_defined #define __compar_fn_t_defined typedef int (*__compar_fn_t) (const void *, const void *); #endif __BEGIN_DECLS int hcreate(size_t); void hdestroy(void); ENTRY *hsearch(ENTRY, ACTION); int hcreate_r(size_t, struct hsearch_data *); void hdestroy_r(struct hsearch_data *); int hsearch_r(ENTRY, ACTION, ENTRY **, struct hsearch_data *); void *tdelete(const void *__restrict, void **__restrict, __compar_fn_t); void tdestroy (void *, void (*)(void *)); void *tfind(const void *, void **, __compar_fn_t); void *tsearch(const void *, void **, __compar_fn_t); void twalk(const void *, void (*)(const void *, VISIT, int)); __END_DECLS #endif /* !_SEARCH_H_ */ 07070100000042000081a4000000000000000000000001630c8dd400000169000000000000000000000000000000000000002200000000./usr/nvptx-none/include/setjmp.h/* setjmp.h stubs for future use. */ #ifndef _SETJMP_H_ #define _SETJMP_H_ #include "_ansi.h" #include _BEGIN_STD_C #ifdef __GNUC__ void longjmp (jmp_buf __jmpb, int __retval) __attribute__ ((__noreturn__)); #else void longjmp (jmp_buf __jmpb, int __retval); #endif int setjmp (jmp_buf __jmpb); _END_STD_C #endif /* _SETJMP_H_ */ 07070100000043000081a4000000000000000000000001630c8dd400000306000000000000000000000000000000000000002200000000./usr/nvptx-none/include/signal.h#ifndef _SIGNAL_H_ #define _SIGNAL_H_ #include "_ansi.h" #include #include _BEGIN_STD_C typedef int sig_atomic_t; /* Atomic entity type (ANSI) */ #if __BSD_VISIBLE typedef _sig_func_ptr sig_t; /* BSD naming */ #endif #if __GNU_VISIBLE typedef _sig_func_ptr sighandler_t; /* glibc naming */ #endif #define SIG_DFL ((_sig_func_ptr)0) /* Default action */ #define SIG_IGN ((_sig_func_ptr)1) /* Ignore action */ #define SIG_ERR ((_sig_func_ptr)-1) /* Error return */ struct _reent; _sig_func_ptr _signal_r (struct _reent *, int, _sig_func_ptr); int _raise_r (struct _reent *, int); #ifndef _REENT_ONLY _sig_func_ptr signal (int, _sig_func_ptr); int raise (int); void psignal (int, const char *); #endif _END_STD_C #endif /* _SIGNAL_H_ */ 07070100000044000081a4000000000000000000000001630c8dd40000102a000000000000000000000000000000000000002100000000./usr/nvptx-none/include/spawn.h/*- * Copyright (c) 2008 Ed Schouten * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _SPAWN_H_ #define _SPAWN_H_ #include <_ansi.h> #include #include #include #define __need_sigset_t #include struct sched_param; typedef struct __posix_spawnattr *posix_spawnattr_t; typedef struct __posix_spawn_file_actions *posix_spawn_file_actions_t; #define POSIX_SPAWN_RESETIDS 0x01 #define POSIX_SPAWN_SETPGROUP 0x02 #define POSIX_SPAWN_SETSCHEDPARAM 0x04 #define POSIX_SPAWN_SETSCHEDULER 0x08 #define POSIX_SPAWN_SETSIGDEF 0x10 #define POSIX_SPAWN_SETSIGMASK 0x20 _BEGIN_STD_C /* * Spawn routines * * XXX both arrays should be __restrict, but this does not work when GCC * is invoked with -std=c99. */ int posix_spawn (pid_t * __restrict, const char * __restrict, const posix_spawn_file_actions_t *, const posix_spawnattr_t * __restrict, char * const [], char * const []); int posix_spawnp (pid_t * __restrict, const char * __restrict, const posix_spawn_file_actions_t *, const posix_spawnattr_t * __restrict, char * const [], char * const []); /* * File descriptor actions */ int posix_spawn_file_actions_init (posix_spawn_file_actions_t *); int posix_spawn_file_actions_destroy (posix_spawn_file_actions_t *); int posix_spawn_file_actions_addopen (posix_spawn_file_actions_t * __restrict, int, const char * __restrict, int, mode_t); int posix_spawn_file_actions_adddup2 (posix_spawn_file_actions_t *, int, int); int posix_spawn_file_actions_addclose (posix_spawn_file_actions_t *, int); /* * Spawn attributes */ int posix_spawnattr_init (posix_spawnattr_t *); int posix_spawnattr_destroy (posix_spawnattr_t *); int posix_spawnattr_getflags (const posix_spawnattr_t * __restrict, short * __restrict); int posix_spawnattr_getpgroup (const posix_spawnattr_t * __restrict, pid_t * __restrict); int posix_spawnattr_getschedparam (const posix_spawnattr_t * __restrict, struct sched_param * __restrict); int posix_spawnattr_getschedpolicy (const posix_spawnattr_t * __restrict, int * __restrict); int posix_spawnattr_getsigdefault (const posix_spawnattr_t * __restrict, sigset_t * __restrict); int posix_spawnattr_getsigmask (const posix_spawnattr_t * __restrict, sigset_t * __restrict); int posix_spawnattr_setflags (posix_spawnattr_t *, short); int posix_spawnattr_setpgroup (posix_spawnattr_t *, pid_t); int posix_spawnattr_setschedparam (posix_spawnattr_t * __restrict, const struct sched_param * __restrict); int posix_spawnattr_setschedpolicy (posix_spawnattr_t *, int); int posix_spawnattr_setsigdefault (posix_spawnattr_t * __restrict, const sigset_t * __restrict); int posix_spawnattr_setsigmask (posix_spawnattr_t * __restrict, const sigset_t * __restrict); _END_STD_C #endif /* !_SPAWN_H_ */ 07070100000045000041ed000000000000000000000001630c8dd500000000000000000000000000000000000000000000001d00000000./usr/nvptx-none/include/ssp07070100000046000081a4000000000000000000000001630c8dd500000b64000000000000000000000000000000000000002300000000./usr/nvptx-none/include/ssp/ssp.h/* $NetBSD: ssp.h,v 1.13 2015/09/03 20:43:47 plunky Exp $ */ /*- * Copyright (c) 2006, 2011 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Christos Zoulas. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SSP_SSP_H_ #define _SSP_SSP_H_ #include /* __ssp_real is used by the implementation in libc */ #if __SSP_FORTIFY_LEVEL == 0 #define __ssp_real_(fun) fun #else #define __ssp_real_(fun) __ssp_real_ ## fun #endif #define __ssp_real(fun) __ssp_real_(fun) #define __ssp_inline extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) #define __ssp_bos(ptr) __builtin_object_size(ptr, __SSP_FORTIFY_LEVEL > 1) #define __ssp_bos0(ptr) __builtin_object_size(ptr, 0) #define __ssp_check(buf, len, bos) \ if (bos(buf) != (size_t)-1 && len > bos(buf)) \ __chk_fail() #define __ssp_decl(rtype, fun, args) \ rtype __ssp_real_(fun) args __asm__(__ASMNAME(#fun)); \ __ssp_inline rtype fun args #define __ssp_redirect_raw(rtype, fun, args, call, cond, bos) \ __ssp_decl(rtype, fun, args) \ { \ if (cond) \ __ssp_check(__buf, __len, bos); \ return __ssp_real_(fun) call; \ } #define __ssp_redirect(rtype, fun, args, call) \ __ssp_redirect_raw(rtype, fun, args, call, 1, __ssp_bos) #define __ssp_redirect0(rtype, fun, args, call) \ __ssp_redirect_raw(rtype, fun, args, call, 1, __ssp_bos0) #define __ssp_overlap(a, b, l) \ (((a) <= (b) && (b) < (a) + (l)) || ((b) <= (a) && (a) < (b) + (l))) __BEGIN_DECLS void __stack_chk_fail(void) __dead2; void __chk_fail(void) __dead2; __END_DECLS #endif /* _SSP_SSP_H_ */ 07070100000047000081a4000000000000000000000001630c8dd500000e26000000000000000000000000000000000000002500000000./usr/nvptx-none/include/ssp/stdio.h/* $NetBSD: stdio.h,v 1.5 2011/07/17 20:54:34 joerg Exp $ */ /*- * Copyright (c) 2006 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Christos Zoulas. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SSP_STDIO_H_ #define _SSP_STDIO_H_ #include __BEGIN_DECLS int __sprintf_chk(char *__restrict, int, size_t, const char *__restrict, ...) __printflike(4, 5); int __vsprintf_chk(char *__restrict, int, size_t, const char *__restrict, __va_list) __printflike(4, 0); int __snprintf_chk(char *__restrict, size_t, int, size_t, const char *__restrict, ...) __printflike(5, 6); int __vsnprintf_chk(char *__restrict, size_t, int, size_t, const char *__restrict, __va_list) __printflike(5, 0); char *__gets_chk(char *, size_t); __END_DECLS #if __SSP_FORTIFY_LEVEL > 0 #define sprintf(str, ...) \ __builtin___sprintf_chk(str, 0, __ssp_bos(str), __VA_ARGS__) #define vsprintf(str, fmt, ap) \ __builtin___vsprintf_chk(str, 0, __ssp_bos(str), fmt, ap) #define snprintf(str, len, ...) \ __builtin___snprintf_chk(str, len, 0, __ssp_bos(str), __VA_ARGS__) #define vsnprintf(str, len, fmt, ap) \ __builtin___vsnprintf_chk(str, len, 0, __ssp_bos(str), fmt, ap) #define gets(str) \ __gets_chk(str, __ssp_bos(str)) __ssp_decl(char *, fgets, (char *__restrict __buf, int __len, FILE *__fp)) { if (__len > 0) __ssp_check(__buf, (size_t)__len, __ssp_bos); return __ssp_real_fgets(__buf, __len, __fp); } #if __GNU_VISIBLE __ssp_decl(char *, fgets_unlocked, (char *__restrict __buf, int __len, FILE *__fp)) { if (__len > 0) __ssp_check(__buf, (size_t)__len, __ssp_bos); return __ssp_real_fgets_unlocked(__buf, __len, __fp); } #endif /* __GNU_VISIBLE */ __ssp_decl(size_t, fread, (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __fp)) { __ssp_check(__ptr, __size * __n, __ssp_bos0); return __ssp_real_fread(__ptr, __size, __n, __fp); } #if __MISC_VISIBLE __ssp_decl(size_t, fread_unlocked, (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __fp)) { __ssp_check(__ptr, __size * __n, __ssp_bos0); return __ssp_real_fread_unlocked(__ptr, __size, __n, __fp); } #endif /* __MISC_VISIBLE */ #endif /* __SSP_FORTIFY_LEVEL > 0 */ #endif /* _SSP_STDIO_H_ */ 07070100000048000081a4000000000000000000000001630c8dd5000002d1000000000000000000000000000000000000002600000000./usr/nvptx-none/include/ssp/stdlib.h#ifndef _SSP_STDLIB_H_ #define _SSP_STDLIB_H_ #include #if __SSP_FORTIFY_LEVEL > 0 __BEGIN_DECLS __ssp_decl(size_t, mbstowcs, (wchar_t *__buf, const char *__src, size_t __n)) { if (__buf != NULL) __ssp_check(__buf, __n * sizeof(wchar_t), __ssp_bos); return __ssp_real_mbstowcs (__buf, __src, __n); } __ssp_redirect_raw(size_t, wcstombs, \ (char *__buf, const wchar_t *__src, size_t __len), \ (__buf, __src, __len), __buf != NULL, __ssp_bos); __ssp_decl(int, wctomb, (char *__buf, wchar_t __wc)) { if (__buf != NULL) __ssp_check(__buf, MB_CUR_MAX, __ssp_bos); return __ssp_real_wctomb (__buf, __wc); } __END_DECLS #endif /* __SSP_FORTIFY_LEVEL > 0 */ #endif /* _SSP_STDLIB_H_ */ 07070100000049000081a4000000000000000000000001630c8dd500001327000000000000000000000000000000000000002600000000./usr/nvptx-none/include/ssp/string.h/* $NetBSD: string.h,v 1.13 2014/11/29 13:23:48 pooka Exp $ */ /*- * Copyright (c) 2006 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Christos Zoulas. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SSP_STRING_H_ #define _SSP_STRING_H_ #include #include __BEGIN_DECLS void *__memcpy_chk(void *, const void *, size_t, size_t); void *__memmove_chk(void *, void *, size_t, size_t); void *__mempcpy_chk(void *, const void *, size_t, size_t); void *__memset_chk(void *, int, size_t, size_t); char *__stpcpy_chk(char *, const char *, size_t); char *__strcat_chk(char *, const char *, size_t); char *__strcpy_chk(char *, const char *, size_t); char *__strncat_chk(char *, const char *, size_t, size_t); char *__strncpy_chk(char *, const char *, size_t, size_t); __END_DECLS #if __SSP_FORTIFY_LEVEL > 0 #define __ssp_bos_check3(fun, dst, src, len) \ ((__ssp_bos0(dst) != (size_t)-1) ? \ __builtin___ ## fun ## _chk(dst, src, len, __ssp_bos0(dst)) : \ __ ## fun ## _ichk(dst, src, len)) #define __ssp_bos_check2(fun, dst, src) \ ((__ssp_bos0(dst) != (size_t)-1) ? \ __builtin___ ## fun ## _chk(dst, src, __ssp_bos0(dst)) : \ __ ## fun ## _ichk(dst, src)) #define __ssp_bos_icheck3_restrict(fun, type1, type2) \ __ssp_inline type1 __ ## fun ## _ichk(type1 __restrict, type2 __restrict, size_t); \ __ssp_inline type1 \ __ ## fun ## _ichk(type1 __restrict dst, type2 __restrict src, size_t len) { \ return __builtin___ ## fun ## _chk(dst, src, len, __ssp_bos0(dst)); \ } #define __ssp_bos_icheck3(fun, type1, type2) \ __ssp_inline type1 __ ## fun ## _ichk(type1, type2, size_t); \ __ssp_inline type1 \ __ ## fun ## _ichk(type1 dst, type2 src, size_t len) { \ return __builtin___ ## fun ## _chk(dst, src, len, __ssp_bos0(dst)); \ } #define __ssp_bos_icheck2_restrict(fun, type1, type2) \ __ssp_inline type1 __ ## fun ## _ichk(type1, type2); \ __ssp_inline type1 \ __ ## fun ## _ichk(type1 __restrict dst, type2 __restrict src) { \ return __builtin___ ## fun ## _chk(dst, src, __ssp_bos0(dst)); \ } __BEGIN_DECLS __ssp_bos_icheck3_restrict(memcpy, void *, const void *) __ssp_bos_icheck3(memmove, void *, const void *) __ssp_bos_icheck3_restrict(mempcpy, void *, const void *) __ssp_bos_icheck3(memset, void *, int) __ssp_bos_icheck2_restrict(stpcpy, char *, const char *) #if __GNUC_PREREQ__(4,8) || defined(__clang__) __ssp_bos_icheck3_restrict(stpncpy, char *, const char *) #endif __ssp_bos_icheck2_restrict(strcpy, char *, const char *) __ssp_bos_icheck2_restrict(strcat, char *, const char *) __ssp_bos_icheck3_restrict(strncpy, char *, const char *) __ssp_bos_icheck3_restrict(strncat, char *, const char *) __END_DECLS #define memcpy(dst, src, len) __ssp_bos_check3(memcpy, dst, src, len) #define memmove(dst, src, len) __ssp_bos_check3(memmove, dst, src, len) #if __GNU_VISIBLE #define mempcpy(dst, src, len) __ssp_bos_check3(mempcpy, dst, src, len) #endif #define memset(dst, val, len) __ssp_bos_check3(memset, dst, val, len) #if __POSIX_VISIBLE >= 200809 #define stpcpy(dst, src) __ssp_bos_check2(stpcpy, dst, src) #if __GNUC_PREREQ__(4,8) || defined(__clang__) #define stpncpy(dst, src, len) __ssp_bos_check3(stpncpy, dst, src, len) #endif #endif #define strcpy(dst, src) __ssp_bos_check2(strcpy, dst, src) #define strcat(dst, src) __ssp_bos_check2(strcat, dst, src) #define strncpy(dst, src, len) __ssp_bos_check3(strncpy, dst, src, len) #define strncat(dst, src, len) __ssp_bos_check3(strncat, dst, src, len) #endif /* __SSP_FORTIFY_LEVEL > 0 */ #endif /* _SSP_STRING_H_ */ 0707010000004a000081a4000000000000000000000001630c8dd5000008b0000000000000000000000000000000000000002700000000./usr/nvptx-none/include/ssp/strings.h/* $NetBSD: strings.h,v 1.3 2008/04/28 20:22:54 martin Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Christos Zoulas. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SSP_STRINGS_H_ #define _SSP_STRINGS_H_ #include #if __SSP_FORTIFY_LEVEL > 0 #if __BSD_VISIBLE || __POSIX_VISIBLE <= 200112 #define bcopy(src, dst, len) \ ((__ssp_bos0(dst) != (size_t)-1) ? \ __builtin___memmove_chk(dst, src, len, __ssp_bos0(dst)) : \ __memmove_ichk(dst, src, len)) #define bzero(dst, len) \ ((__ssp_bos0(dst) != (size_t)-1) ? \ __builtin___memset_chk(dst, 0, len, __ssp_bos0(dst)) : \ __memset_ichk(dst, 0, len)) #endif #if __BSD_VISIBLE __ssp_redirect0(void, explicit_bzero, (void *__buf, size_t __len), \ (__buf, __len)); #endif #endif /* __SSP_FORTIFY_LEVEL > 0 */ #endif /* _SSP_STRINGS_H_ */ 0707010000004b000081a4000000000000000000000001630c8dd500000d80000000000000000000000000000000000000002600000000./usr/nvptx-none/include/ssp/unistd.h/* $NetBSD: unistd.h,v 1.7 2015/06/25 18:41:03 joerg Exp $ */ /*- * Copyright (c) 2006 The NetBSD Foundation, Inc. * All rights reserved. * * This code is derived from software contributed to The NetBSD Foundation * by Christos Zoulas. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SSP_UNISTD_H_ #define _SSP_UNISTD_H_ #include #if __SSP_FORTIFY_LEVEL > 0 __BEGIN_DECLS #if __POSIX_VISIBLE >= 199209 __ssp_redirect(size_t, confstr, (int __name, char *__buf, size_t __len), \ (__name, __buf, __len)); #endif __ssp_redirect_raw(char *, getcwd, (char *__buf, size_t __len), (__buf, __len), __buf != 0, __ssp_bos); #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) __ssp_redirect(int, getdomainname, (char *__buf, size_t __len), \ (__buf, __len)); #endif __ssp_decl(int, getgroups, (int __n, gid_t __buf[])) { __ssp_check(__buf, __n * sizeof(gid_t), __ssp_bos); return __ssp_real_getgroups (__n, __buf); } #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 500 #if !(defined (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS)) __ssp_redirect(int, gethostname, (char *__buf, size_t __len), \ (__buf, __len)); #endif #endif __ssp_redirect(int, getlogin_r, (char *__buf, size_t __len), \ (__buf, __len)); #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 500 __ssp_redirect0(ssize_t, pread, (int __fd, void *__buf, size_t __len, off_t __off), \ (__fd, __buf, __len, __off)); #endif __ssp_redirect0(_READ_WRITE_RETURN_TYPE, read, \ (int __fd, void *__buf, size_t __len), (__fd, __buf, __len)); #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 4 __ssp_redirect(ssize_t, readlink, (const char *__restrict __path, \ char *__restrict __buf, size_t __len), (__path, __buf, __len)); #endif #if __ATFILE_VISIBLE __ssp_redirect(ssize_t, readlinkat, \ (int __dirfd1, const char *__restrict __path, char *__restrict __buf, size_t __len), \ (__dirfd1, __path, __buf, __len)); #endif __ssp_redirect(int, ttyname_r, (int __fd, char *__buf, size_t __len), \ (__fd, __buf, __len)); __END_DECLS #endif /* __SSP_FORTIFY_LEVEL > 0 */ #endif /* _SSP_UNISTD_H_ */ 0707010000004c000081a4000000000000000000000001630c8dd500000c53000000000000000000000000000000000000002500000000./usr/nvptx-none/include/ssp/wchar.h#ifndef _SSP_WCHAR_H_ #define _SSP_WCHAR_H_ #include #include #if __SSP_FORTIFY_LEVEL > 0 /* wide character variant, __wlen is number of wchar_t */ #define __ssp_redirect_wc(rtype, fun, args, call, cond, bos) \ __ssp_decl(rtype, fun, args) \ { \ if (cond) \ __ssp_check(__buf, __wlen * sizeof(wchar_t), bos); \ return __ssp_real_(fun) call; \ } #define __ssp_bos_wicheck3(fun) \ __ssp_redirect_wc(wchar_t *, fun, \ (wchar_t *__buf, const wchar_t *__src, size_t __wlen), \ (__buf, __src, __wlen), 1, __ssp_bos0) #define __ssp_bos_wicheck3_restrict(fun) \ __ssp_redirect_wc(wchar_t *, fun, \ (wchar_t *__restrict __buf, const wchar_t *__restrict __src, size_t __wlen), \ (__buf, __src, __wlen), 1, __ssp_bos0) #define __ssp_bos_wicheck2_restrict(fun) \ __ssp_decl(wchar_t *, fun, (wchar_t *__restrict __buf, const wchar_t *__restrict __src)) \ { \ __ssp_check(__buf, (wcslen(__src) + 1) * sizeof(wchar_t), __ssp_bos0); \ return __ssp_real_(fun) (__buf, __src); \ } __BEGIN_DECLS #if __POSIX_VISIBLE >= 200809 __ssp_bos_wicheck2_restrict(wcpcpy) __ssp_bos_wicheck3_restrict(wcpncpy) #endif __ssp_bos_wicheck2_restrict(wcscpy) __ssp_bos_wicheck2_restrict(wcscat) __ssp_bos_wicheck3_restrict(wcsncpy) __ssp_bos_wicheck3_restrict(wcsncat) __ssp_bos_wicheck3_restrict(wmemcpy) __ssp_bos_wicheck3(wmemmove) #if __GNU_VISIBLE __ssp_bos_wicheck3_restrict(wmempcpy) #endif __ssp_redirect_wc(wchar_t *, wmemset, \ (wchar_t *__buf, wchar_t __src, size_t __wlen), \ (__buf, __src, __wlen), 1, __ssp_bos0) __ssp_decl(size_t, wcrtomb, (char *__buf, wchar_t __src, mbstate_t *__ps)) { if (__buf != NULL && __src != L'\0') __ssp_check(__buf, sizeof(wchar_t), __ssp_bos); return __ssp_real_wcrtomb (__buf, __src, __ps); } __ssp_redirect_wc(size_t, mbsrtowcs, \ (wchar_t *__buf, const char **__src, size_t __wlen, mbstate_t *__ps), \ (__buf, __src, __wlen, __ps), __buf != NULL, __ssp_bos) __ssp_redirect_raw(size_t, wcsrtombs, \ (char *__buf, const wchar_t **__src, size_t __len, mbstate_t *__ps), \ (__buf, __src, __len, __ps), __buf != NULL, __ssp_bos) #if __POSIX_VISIBLE >= 200809 __ssp_redirect_wc(size_t, mbsnrtowcs, \ (wchar_t *__buf, const char **__src, size_t __nms, size_t __wlen, mbstate_t *__ps), \ (__buf, __src, __nms, __wlen, __ps), __buf != NULL, __ssp_bos) __ssp_redirect_raw(size_t, wcsnrtombs, \ (char *__buf, const wchar_t **__src, size_t __nwc, size_t __len, mbstate_t *__ps), \ (__buf, __src, __nwc, __len, __ps), __buf != NULL, __ssp_bos) #endif __ssp_decl(wchar_t *, fgetws, (wchar_t *__restrict __buf, int __wlen, __FILE *__restrict __fp)) { if (__wlen > 0) __ssp_check(__buf, (size_t)__wlen * sizeof(wchar_t) , __ssp_bos); return __ssp_real_fgetws(__buf, __wlen, __fp); } #if __GNU_VISIBLE __ssp_decl(wchar_t *, fgetws_unlocked, (wchar_t *__buf, int __wlen, __FILE *__fp)) { if (__wlen > 0) __ssp_check(__buf, (size_t)__wlen * sizeof(wchar_t) , __ssp_bos); return __ssp_real_fgetws_unlocked(__buf, __wlen, __fp); } #endif /* __GNU_VISIBLE */ __END_DECLS #endif /* __SSP_FORTIFY_LEVEL > 0 */ #endif /* _SSP_WCHAR_H_ */ 0707010000004d000081a4000000000000000000000001630c8dd40000377b000000000000000000000000000000000000002500000000./usr/nvptx-none/include/stdatomic.h/*- * Copyright (c) 2011 Ed Schouten * David Chisnall * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD$ */ #ifndef _STDATOMIC_H_ #define _STDATOMIC_H_ #include #include #if __has_extension(c_atomic) || __has_extension(cxx_atomic) #define __CLANG_ATOMICS #elif __GNUC_PREREQ__(4, 7) #define __GNUC_ATOMICS #elif defined(__GNUC__) #define __SYNC_ATOMICS #else #error "stdatomic.h does not support your compiler" #endif /* * 7.17.1 Atomic lock-free macros. */ #ifdef __GCC_ATOMIC_BOOL_LOCK_FREE #define ATOMIC_BOOL_LOCK_FREE __GCC_ATOMIC_BOOL_LOCK_FREE #endif #ifdef __GCC_ATOMIC_CHAR_LOCK_FREE #define ATOMIC_CHAR_LOCK_FREE __GCC_ATOMIC_CHAR_LOCK_FREE #endif #ifdef __GCC_ATOMIC_CHAR16_T_LOCK_FREE #define ATOMIC_CHAR16_T_LOCK_FREE __GCC_ATOMIC_CHAR16_T_LOCK_FREE #endif #ifdef __GCC_ATOMIC_CHAR32_T_LOCK_FREE #define ATOMIC_CHAR32_T_LOCK_FREE __GCC_ATOMIC_CHAR32_T_LOCK_FREE #endif #ifdef __GCC_ATOMIC_WCHAR_T_LOCK_FREE #define ATOMIC_WCHAR_T_LOCK_FREE __GCC_ATOMIC_WCHAR_T_LOCK_FREE #endif #ifdef __GCC_ATOMIC_SHORT_LOCK_FREE #define ATOMIC_SHORT_LOCK_FREE __GCC_ATOMIC_SHORT_LOCK_FREE #endif #ifdef __GCC_ATOMIC_INT_LOCK_FREE #define ATOMIC_INT_LOCK_FREE __GCC_ATOMIC_INT_LOCK_FREE #endif #ifdef __GCC_ATOMIC_LONG_LOCK_FREE #define ATOMIC_LONG_LOCK_FREE __GCC_ATOMIC_LONG_LOCK_FREE #endif #ifdef __GCC_ATOMIC_LLONG_LOCK_FREE #define ATOMIC_LLONG_LOCK_FREE __GCC_ATOMIC_LLONG_LOCK_FREE #endif #ifdef __GCC_ATOMIC_POINTER_LOCK_FREE #define ATOMIC_POINTER_LOCK_FREE __GCC_ATOMIC_POINTER_LOCK_FREE #endif /* * 7.17.2 Initialization. */ #if defined(__CLANG_ATOMICS) #define ATOMIC_VAR_INIT(value) (value) #define atomic_init(obj, value) __c11_atomic_init(obj, value) #else #define ATOMIC_VAR_INIT(value) { .__val = (value) } #define atomic_init(obj, value) ((void)((obj)->__val = (value))) #endif /* * Clang and recent GCC both provide predefined macros for the memory * orderings. If we are using a compiler that doesn't define them, use the * clang values - these will be ignored in the fallback path. */ #ifndef __ATOMIC_RELAXED #define __ATOMIC_RELAXED 0 #endif #ifndef __ATOMIC_CONSUME #define __ATOMIC_CONSUME 1 #endif #ifndef __ATOMIC_ACQUIRE #define __ATOMIC_ACQUIRE 2 #endif #ifndef __ATOMIC_RELEASE #define __ATOMIC_RELEASE 3 #endif #ifndef __ATOMIC_ACQ_REL #define __ATOMIC_ACQ_REL 4 #endif #ifndef __ATOMIC_SEQ_CST #define __ATOMIC_SEQ_CST 5 #endif /* * 7.17.3 Order and consistency. * * The memory_order_* constants that denote the barrier behaviour of the * atomic operations. */ typedef enum { memory_order_relaxed = __ATOMIC_RELAXED, memory_order_consume = __ATOMIC_CONSUME, memory_order_acquire = __ATOMIC_ACQUIRE, memory_order_release = __ATOMIC_RELEASE, memory_order_acq_rel = __ATOMIC_ACQ_REL, memory_order_seq_cst = __ATOMIC_SEQ_CST } memory_order; /* * 7.17.4 Fences. */ static __inline void atomic_thread_fence(memory_order __order __unused) { #ifdef __CLANG_ATOMICS __c11_atomic_thread_fence(__order); #elif defined(__GNUC_ATOMICS) __atomic_thread_fence(__order); #else __sync_synchronize(); #endif } static __inline void atomic_signal_fence(memory_order __order __unused) { #ifdef __CLANG_ATOMICS __c11_atomic_signal_fence(__order); #elif defined(__GNUC_ATOMICS) __atomic_signal_fence(__order); #else __asm volatile ("" ::: "memory"); #endif } /* * 7.17.5 Lock-free property. */ #if defined(_KERNEL) /* Atomics in kernelspace are always lock-free. */ #define atomic_is_lock_free(obj) \ ((void)(obj), (_Bool)1) #elif defined(__CLANG_ATOMICS) || defined(__GNUC_ATOMICS) #define atomic_is_lock_free(obj) \ __atomic_is_lock_free(sizeof(*(obj)), obj) #else #define atomic_is_lock_free(obj) \ ((void)(obj), sizeof((obj)->__val) <= sizeof(void *)) #endif /* * 7.17.6 Atomic integer types. */ typedef _Atomic(_Bool) atomic_bool; typedef _Atomic(char) atomic_char; typedef _Atomic(signed char) atomic_schar; typedef _Atomic(unsigned char) atomic_uchar; typedef _Atomic(short) atomic_short; typedef _Atomic(unsigned short) atomic_ushort; typedef _Atomic(int) atomic_int; typedef _Atomic(unsigned int) atomic_uint; typedef _Atomic(long) atomic_long; typedef _Atomic(unsigned long) atomic_ulong; typedef _Atomic(long long) atomic_llong; typedef _Atomic(unsigned long long) atomic_ullong; #if 0 typedef _Atomic(__char16_t) atomic_char16_t; typedef _Atomic(__char32_t) atomic_char32_t; #endif typedef _Atomic(wchar_t) atomic_wchar_t; typedef _Atomic(int_least8_t) atomic_int_least8_t; typedef _Atomic(uint_least8_t) atomic_uint_least8_t; typedef _Atomic(int_least16_t) atomic_int_least16_t; typedef _Atomic(uint_least16_t) atomic_uint_least16_t; typedef _Atomic(int_least32_t) atomic_int_least32_t; typedef _Atomic(uint_least32_t) atomic_uint_least32_t; typedef _Atomic(int_least64_t) atomic_int_least64_t; typedef _Atomic(uint_least64_t) atomic_uint_least64_t; typedef _Atomic(int_fast8_t) atomic_int_fast8_t; typedef _Atomic(uint_fast8_t) atomic_uint_fast8_t; typedef _Atomic(int_fast16_t) atomic_int_fast16_t; typedef _Atomic(uint_fast16_t) atomic_uint_fast16_t; typedef _Atomic(int_fast32_t) atomic_int_fast32_t; typedef _Atomic(uint_fast32_t) atomic_uint_fast32_t; typedef _Atomic(int_fast64_t) atomic_int_fast64_t; typedef _Atomic(uint_fast64_t) atomic_uint_fast64_t; typedef _Atomic(intptr_t) atomic_intptr_t; typedef _Atomic(uintptr_t) atomic_uintptr_t; typedef _Atomic(size_t) atomic_size_t; typedef _Atomic(ptrdiff_t) atomic_ptrdiff_t; typedef _Atomic(intmax_t) atomic_intmax_t; typedef _Atomic(uintmax_t) atomic_uintmax_t; /* * 7.17.7 Operations on atomic types. */ /* * Compiler-specific operations. */ #if defined(__CLANG_ATOMICS) #define atomic_compare_exchange_strong_explicit(object, expected, \ desired, success, failure) \ __c11_atomic_compare_exchange_strong(object, expected, desired, \ success, failure) #define atomic_compare_exchange_weak_explicit(object, expected, \ desired, success, failure) \ __c11_atomic_compare_exchange_weak(object, expected, desired, \ success, failure) #define atomic_exchange_explicit(object, desired, order) \ __c11_atomic_exchange(object, desired, order) #define atomic_fetch_add_explicit(object, operand, order) \ __c11_atomic_fetch_add(object, operand, order) #define atomic_fetch_and_explicit(object, operand, order) \ __c11_atomic_fetch_and(object, operand, order) #define atomic_fetch_or_explicit(object, operand, order) \ __c11_atomic_fetch_or(object, operand, order) #define atomic_fetch_sub_explicit(object, operand, order) \ __c11_atomic_fetch_sub(object, operand, order) #define atomic_fetch_xor_explicit(object, operand, order) \ __c11_atomic_fetch_xor(object, operand, order) #define atomic_load_explicit(object, order) \ __c11_atomic_load(object, order) #define atomic_store_explicit(object, desired, order) \ __c11_atomic_store(object, desired, order) #elif defined(__GNUC_ATOMICS) #define atomic_compare_exchange_strong_explicit(object, expected, \ desired, success, failure) \ __atomic_compare_exchange_n(object, expected, \ desired, 0, success, failure) #define atomic_compare_exchange_weak_explicit(object, expected, \ desired, success, failure) \ __atomic_compare_exchange_n(object, expected, \ desired, 1, success, failure) #define atomic_exchange_explicit(object, desired, order) \ __atomic_exchange_n(object, desired, order) #define atomic_fetch_add_explicit(object, operand, order) \ __atomic_fetch_add(object, operand, order) #define atomic_fetch_and_explicit(object, operand, order) \ __atomic_fetch_and(object, operand, order) #define atomic_fetch_or_explicit(object, operand, order) \ __atomic_fetch_or(object, operand, order) #define atomic_fetch_sub_explicit(object, operand, order) \ __atomic_fetch_sub(object, operand, order) #define atomic_fetch_xor_explicit(object, operand, order) \ __atomic_fetch_xor(object, operand, order) #define atomic_load_explicit(object, order) \ __atomic_load_n(object, order) #define atomic_store_explicit(object, desired, order) \ __atomic_store_n(object, desired, order) #else #define __atomic_apply_stride(object, operand) \ (((__typeof__((object)->__val))0) + (operand)) #define atomic_compare_exchange_strong_explicit(object, expected, \ desired, success, failure) __extension__ ({ \ __typeof__(expected) __ep = (expected); \ __typeof__(*__ep) __e = *__ep; \ (void)(success); (void)(failure); \ (_Bool)((*__ep = __sync_val_compare_and_swap(&(object)->__val, \ __e, desired)) == __e); \ }) #define atomic_compare_exchange_weak_explicit(object, expected, \ desired, success, failure) \ atomic_compare_exchange_strong_explicit(object, expected, \ desired, success, failure) #if __has_builtin(__sync_swap) /* Clang provides a full-barrier atomic exchange - use it if available. */ #define atomic_exchange_explicit(object, desired, order) \ ((void)(order), __sync_swap(&(object)->__val, desired)) #else /* * __sync_lock_test_and_set() is only an acquire barrier in theory (although in * practice it is usually a full barrier) so we need an explicit barrier before * it. */ #define atomic_exchange_explicit(object, desired, order) \ __extension__ ({ \ __typeof__(object) __o = (object); \ __typeof__(desired) __d = (desired); \ (void)(order); \ __sync_synchronize(); \ __sync_lock_test_and_set(&(__o)->__val, __d); \ }) #endif #define atomic_fetch_add_explicit(object, operand, order) \ ((void)(order), __sync_fetch_and_add(&(object)->__val, \ __atomic_apply_stride(object, operand))) #define atomic_fetch_and_explicit(object, operand, order) \ ((void)(order), __sync_fetch_and_and(&(object)->__val, operand)) #define atomic_fetch_or_explicit(object, operand, order) \ ((void)(order), __sync_fetch_and_or(&(object)->__val, operand)) #define atomic_fetch_sub_explicit(object, operand, order) \ ((void)(order), __sync_fetch_and_sub(&(object)->__val, \ __atomic_apply_stride(object, operand))) #define atomic_fetch_xor_explicit(object, operand, order) \ ((void)(order), __sync_fetch_and_xor(&(object)->__val, operand)) #define atomic_load_explicit(object, order) \ ((void)(order), __sync_fetch_and_add(&(object)->__val, 0)) #define atomic_store_explicit(object, desired, order) \ ((void)atomic_exchange_explicit(object, desired, order)) #endif /* * Convenience functions. * * Don't provide these in kernel space. In kernel space, we should be * disciplined enough to always provide explicit barriers. */ #ifndef _KERNEL #define atomic_compare_exchange_strong(object, expected, desired) \ atomic_compare_exchange_strong_explicit(object, expected, \ desired, memory_order_seq_cst, memory_order_seq_cst) #define atomic_compare_exchange_weak(object, expected, desired) \ atomic_compare_exchange_weak_explicit(object, expected, \ desired, memory_order_seq_cst, memory_order_seq_cst) #define atomic_exchange(object, desired) \ atomic_exchange_explicit(object, desired, memory_order_seq_cst) #define atomic_fetch_add(object, operand) \ atomic_fetch_add_explicit(object, operand, memory_order_seq_cst) #define atomic_fetch_and(object, operand) \ atomic_fetch_and_explicit(object, operand, memory_order_seq_cst) #define atomic_fetch_or(object, operand) \ atomic_fetch_or_explicit(object, operand, memory_order_seq_cst) #define atomic_fetch_sub(object, operand) \ atomic_fetch_sub_explicit(object, operand, memory_order_seq_cst) #define atomic_fetch_xor(object, operand) \ atomic_fetch_xor_explicit(object, operand, memory_order_seq_cst) #define atomic_load(object) \ atomic_load_explicit(object, memory_order_seq_cst) #define atomic_store(object, desired) \ atomic_store_explicit(object, desired, memory_order_seq_cst) #endif /* !_KERNEL */ /* * 7.17.8 Atomic flag type and operations. * * XXX: Assume atomic_bool can be used as an atomic_flag. Is there some * kind of compiler built-in type we could use? */ typedef struct { atomic_bool __flag; } atomic_flag; #define ATOMIC_FLAG_INIT { ATOMIC_VAR_INIT(0) } static __inline _Bool atomic_flag_test_and_set_explicit(volatile atomic_flag *__object, memory_order __order) { return (atomic_exchange_explicit(&__object->__flag, 1, __order)); } static __inline void atomic_flag_clear_explicit(volatile atomic_flag *__object, memory_order __order) { atomic_store_explicit(&__object->__flag, 0, __order); } #ifndef _KERNEL static __inline _Bool atomic_flag_test_and_set(volatile atomic_flag *__object) { return (atomic_flag_test_and_set_explicit(__object, memory_order_seq_cst)); } static __inline void atomic_flag_clear(volatile atomic_flag *__object) { atomic_flag_clear_explicit(__object, memory_order_seq_cst); } #endif /* !_KERNEL */ #endif /* !_STDATOMIC_H_ */ 0707010000004e000081a4000000000000000000000001630c8dd400003090000000000000000000000000000000000000002200000000./usr/nvptx-none/include/stdint.h/* * Copyright (c) 2004, 2005 by * Ralf Corsepius, Ulm/Germany. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ #ifndef _STDINT_H #define _STDINT_H #include #include #include #ifdef __cplusplus extern "C" { #endif #ifdef ___int_least8_t_defined typedef __int_least8_t int_least8_t; typedef __uint_least8_t uint_least8_t; #define __int_least8_t_defined 1 #endif #ifdef ___int_least16_t_defined typedef __int_least16_t int_least16_t; typedef __uint_least16_t uint_least16_t; #define __int_least16_t_defined 1 #endif #ifdef ___int_least32_t_defined typedef __int_least32_t int_least32_t; typedef __uint_least32_t uint_least32_t; #define __int_least32_t_defined 1 #endif #ifdef ___int_least64_t_defined typedef __int_least64_t int_least64_t; typedef __uint_least64_t uint_least64_t; #define __int_least64_t_defined 1 #endif /* * Fastest minimum-width integer types * * Assume int to be the fastest type for all types with a width * less than __INT_MAX__ rsp. INT_MAX */ #ifdef __INT_FAST8_TYPE__ typedef __INT_FAST8_TYPE__ int_fast8_t; typedef __UINT_FAST8_TYPE__ uint_fast8_t; #define __int_fast8_t_defined 1 #elif __STDINT_EXP(INT_MAX) >= 0x7f typedef signed int int_fast8_t; typedef unsigned int uint_fast8_t; #define __int_fast8_t_defined 1 #endif #ifdef __INT_FAST16_TYPE__ typedef __INT_FAST16_TYPE__ int_fast16_t; typedef __UINT_FAST16_TYPE__ uint_fast16_t; #define __int_fast16_t_defined 1 #elif __STDINT_EXP(INT_MAX) >= 0x7fff typedef signed int int_fast16_t; typedef unsigned int uint_fast16_t; #define __int_fast16_t_defined 1 #endif #ifdef __INT_FAST32_TYPE__ typedef __INT_FAST32_TYPE__ int_fast32_t; typedef __UINT_FAST32_TYPE__ uint_fast32_t; #define __int_fast32_t_defined 1 #elif __STDINT_EXP(INT_MAX) >= 0x7fffffff typedef signed int int_fast32_t; typedef unsigned int uint_fast32_t; #define __int_fast32_t_defined 1 #endif #ifdef __INT_FAST64_TYPE__ typedef __INT_FAST64_TYPE__ int_fast64_t; typedef __UINT_FAST64_TYPE__ uint_fast64_t; #define __int_fast64_t_defined 1 #elif __STDINT_EXP(INT_MAX) > 0x7fffffff typedef signed int int_fast64_t; typedef unsigned int uint_fast64_t; #define __int_fast64_t_defined 1 #endif /* * Fall back to [u]int_least_t for [u]int_fast_t types * not having been defined, yet. * Leave undefined, if [u]int_least_t should not be available. */ #if !__int_fast8_t_defined #if __int_least8_t_defined typedef int_least8_t int_fast8_t; typedef uint_least8_t uint_fast8_t; #define __int_fast8_t_defined 1 #endif #endif #if !__int_fast16_t_defined #if __int_least16_t_defined typedef int_least16_t int_fast16_t; typedef uint_least16_t uint_fast16_t; #define __int_fast16_t_defined 1 #endif #endif #if !__int_fast32_t_defined #if __int_least32_t_defined typedef int_least32_t int_fast32_t; typedef uint_least32_t uint_fast32_t; #define __int_fast32_t_defined 1 #endif #endif #if !__int_fast64_t_defined #if __int_least64_t_defined typedef int_least64_t int_fast64_t; typedef uint_least64_t uint_fast64_t; #define __int_fast64_t_defined 1 #endif #endif #ifdef __INTPTR_TYPE__ #define INTPTR_MIN (-__INTPTR_MAX__ - 1) #define INTPTR_MAX (__INTPTR_MAX__) #define UINTPTR_MAX (__UINTPTR_MAX__) #elif defined(__PTRDIFF_TYPE__) #define INTPTR_MAX PTRDIFF_MAX #define INTPTR_MIN PTRDIFF_MIN #ifdef __UINTPTR_MAX__ #define UINTPTR_MAX (__UINTPTR_MAX__) #else #define UINTPTR_MAX (2UL * PTRDIFF_MAX + 1) #endif #else /* * Fallback to hardcoded values, * should be valid on cpu's with 32bit int/32bit void* */ #define INTPTR_MAX (__STDINT_EXP(LONG_MAX)) #define INTPTR_MIN (-__STDINT_EXP(LONG_MAX) - 1) #define UINTPTR_MAX (__STDINT_EXP(LONG_MAX) * 2UL + 1) #endif /* Limits of Specified-Width Integer Types */ #ifdef __INT8_MAX__ #define INT8_MIN (-__INT8_MAX__ - 1) #define INT8_MAX (__INT8_MAX__) #define UINT8_MAX (__UINT8_MAX__) #elif defined(__int8_t_defined) #define INT8_MIN (-128) #define INT8_MAX (127) #define UINT8_MAX (255) #endif #ifdef __INT_LEAST8_MAX__ #define INT_LEAST8_MIN (-__INT_LEAST8_MAX__ - 1) #define INT_LEAST8_MAX (__INT_LEAST8_MAX__) #define UINT_LEAST8_MAX (__UINT_LEAST8_MAX__) #elif defined(__int_least8_t_defined) #define INT_LEAST8_MIN (-128) #define INT_LEAST8_MAX (127) #define UINT_LEAST8_MAX (255) #else #error required type int_least8_t missing #endif #ifdef __INT16_MAX__ #define INT16_MIN (-__INT16_MAX__ - 1) #define INT16_MAX (__INT16_MAX__) #define UINT16_MAX (__UINT16_MAX__) #elif defined(__int16_t_defined) #define INT16_MIN (-32768) #define INT16_MAX (32767) #define UINT16_MAX (65535) #endif #ifdef __INT_LEAST16_MAX__ #define INT_LEAST16_MIN (-__INT_LEAST16_MAX__ - 1) #define INT_LEAST16_MAX (__INT_LEAST16_MAX__) #define UINT_LEAST16_MAX (__UINT_LEAST16_MAX__) #elif defined(__int_least16_t_defined) #define INT_LEAST16_MIN (-32768) #define INT_LEAST16_MAX (32767) #define UINT_LEAST16_MAX (65535) #else #error required type int_least16_t missing #endif #ifdef __INT32_MAX__ #define INT32_MIN (-__INT32_MAX__ - 1) #define INT32_MAX (__INT32_MAX__) #define UINT32_MAX (__UINT32_MAX__) #elif defined(__int32_t_defined) #if defined (_INT32_EQ_LONG) #define INT32_MIN (-2147483647L-1) #define INT32_MAX (2147483647L) #define UINT32_MAX (4294967295UL) #else #define INT32_MIN (-2147483647-1) #define INT32_MAX (2147483647) #define UINT32_MAX (4294967295U) #endif #endif #ifdef __INT_LEAST32_MAX__ #define INT_LEAST32_MIN (-__INT_LEAST32_MAX__ - 1) #define INT_LEAST32_MAX (__INT_LEAST32_MAX__) #define UINT_LEAST32_MAX (__UINT_LEAST32_MAX__) #elif defined(__int_least32_t_defined) #if defined (_INT32_EQ_LONG) #define INT_LEAST32_MIN (-2147483647L-1) #define INT_LEAST32_MAX (2147483647L) #define UINT_LEAST32_MAX (4294967295UL) #else #define INT_LEAST32_MIN (-2147483647-1) #define INT_LEAST32_MAX (2147483647) #define UINT_LEAST32_MAX (4294967295U) #endif #else #error required type int_least32_t missing #endif #ifdef __INT64_MAX__ #define INT64_MIN (-__INT64_MAX__ - 1) #define INT64_MAX (__INT64_MAX__) #define UINT64_MAX (__UINT64_MAX__) #elif defined(__int64_t_defined) #if __have_long64 #define INT64_MIN (-9223372036854775807L-1L) #define INT64_MAX (9223372036854775807L) #define UINT64_MAX (18446744073709551615U) #elif __have_longlong64 #define INT64_MIN (-9223372036854775807LL-1LL) #define INT64_MAX (9223372036854775807LL) #define UINT64_MAX (18446744073709551615ULL) #endif #endif #ifdef __INT_LEAST64_MAX__ #define INT_LEAST64_MIN (-__INT_LEAST64_MAX__ - 1) #define INT_LEAST64_MAX (__INT_LEAST64_MAX__) #define UINT_LEAST64_MAX (__UINT_LEAST64_MAX__) #elif defined(__int_least64_t_defined) #if __have_long64 #define INT_LEAST64_MIN (-9223372036854775807L-1L) #define INT_LEAST64_MAX (9223372036854775807L) #define UINT_LEAST64_MAX (18446744073709551615U) #elif __have_longlong64 #define INT_LEAST64_MIN (-9223372036854775807LL-1LL) #define INT_LEAST64_MAX (9223372036854775807LL) #define UINT_LEAST64_MAX (18446744073709551615ULL) #endif #endif #ifdef __INT_FAST8_MAX__ #define INT_FAST8_MIN (-__INT_FAST8_MAX__ - 1) #define INT_FAST8_MAX (__INT_FAST8_MAX__) #define UINT_FAST8_MAX (__UINT_FAST8_MAX__) #elif defined(__int_fast8_t_defined) #if __STDINT_EXP(INT_MAX) >= 0x7f #define INT_FAST8_MIN (-__STDINT_EXP(INT_MAX)-1) #define INT_FAST8_MAX (__STDINT_EXP(INT_MAX)) #define UINT_FAST8_MAX (__STDINT_EXP(INT_MAX)*2U+1U) #else #define INT_FAST8_MIN INT_LEAST8_MIN #define INT_FAST8_MAX INT_LEAST8_MAX #define UINT_FAST8_MAX UINT_LEAST8_MAX #endif #endif #ifdef __INT_FAST16_MAX__ #define INT_FAST16_MIN (-__INT_FAST16_MAX__ - 1) #define INT_FAST16_MAX (__INT_FAST16_MAX__) #define UINT_FAST16_MAX (__UINT_FAST16_MAX__) #elif defined(__int_fast16_t_defined) #if __STDINT_EXP(INT_MAX) >= 0x7fff #define INT_FAST16_MIN (-__STDINT_EXP(INT_MAX)-1) #define INT_FAST16_MAX (__STDINT_EXP(INT_MAX)) #define UINT_FAST16_MAX (__STDINT_EXP(INT_MAX)*2U+1U) #else #define INT_FAST16_MIN INT_LEAST16_MIN #define INT_FAST16_MAX INT_LEAST16_MAX #define UINT_FAST16_MAX UINT_LEAST16_MAX #endif #endif #ifdef __INT_FAST32_MAX__ #define INT_FAST32_MIN (-__INT_FAST32_MAX__ - 1) #define INT_FAST32_MAX (__INT_FAST32_MAX__) #define UINT_FAST32_MAX (__UINT_FAST32_MAX__) #elif defined(__int_fast32_t_defined) #if __STDINT_EXP(INT_MAX) >= 0x7fffffff #define INT_FAST32_MIN (-__STDINT_EXP(INT_MAX)-1) #define INT_FAST32_MAX (__STDINT_EXP(INT_MAX)) #define UINT_FAST32_MAX (__STDINT_EXP(INT_MAX)*2U+1U) #else #define INT_FAST32_MIN INT_LEAST32_MIN #define INT_FAST32_MAX INT_LEAST32_MAX #define UINT_FAST32_MAX UINT_LEAST32_MAX #endif #endif #ifdef __INT_FAST64_MAX__ #define INT_FAST64_MIN (-__INT_FAST64_MAX__ - 1) #define INT_FAST64_MAX (__INT_FAST64_MAX__) #define UINT_FAST64_MAX (__UINT_FAST64_MAX__) #elif defined(__int_fast64_t_defined) #if __STDINT_EXP(INT_MAX) > 0x7fffffff #define INT_FAST64_MIN (-__STDINT_EXP(INT_MAX)-1) #define INT_FAST64_MAX (__STDINT_EXP(INT_MAX)) #define UINT_FAST64_MAX (__STDINT_EXP(INT_MAX)*2U+1U) #else #define INT_FAST64_MIN INT_LEAST64_MIN #define INT_FAST64_MAX INT_LEAST64_MAX #define UINT_FAST64_MAX UINT_LEAST64_MAX #endif #endif #ifdef __INTMAX_MAX__ #define INTMAX_MAX (__INTMAX_MAX__) #define INTMAX_MIN (-INTMAX_MAX - 1) #elif defined(__INTMAX_TYPE__) /* All relevant GCC versions prefer long to long long for intmax_t. */ #define INTMAX_MAX INT64_MAX #define INTMAX_MIN INT64_MIN #endif #ifdef __UINTMAX_MAX__ #define UINTMAX_MAX (__UINTMAX_MAX__) #elif defined(__UINTMAX_TYPE__) /* All relevant GCC versions prefer long to long long for intmax_t. */ #define UINTMAX_MAX UINT64_MAX #endif /* This must match size_t in stddef.h, currently long unsigned int */ #ifdef __SIZE_MAX__ #define SIZE_MAX (__SIZE_MAX__) #else #define SIZE_MAX (__STDINT_EXP(LONG_MAX) * 2UL + 1) #endif /* This must match sig_atomic_t in (currently int) */ #define SIG_ATOMIC_MIN (-__STDINT_EXP(INT_MAX) - 1) #define SIG_ATOMIC_MAX (__STDINT_EXP(INT_MAX)) /* This must match ptrdiff_t in (currently long int) */ #ifdef __PTRDIFF_MAX__ #define PTRDIFF_MAX (__PTRDIFF_MAX__) #else #define PTRDIFF_MAX (__STDINT_EXP(LONG_MAX)) #endif #define PTRDIFF_MIN (-PTRDIFF_MAX - 1) /* This must match definition in */ #ifndef WCHAR_MIN #ifdef __WCHAR_MIN__ #define WCHAR_MIN (__WCHAR_MIN__) #elif defined(__WCHAR_UNSIGNED__) || (L'\0' - 1 > 0) #define WCHAR_MIN (0 + L'\0') #else #define WCHAR_MIN (-0x7fffffff - 1 + L'\0') #endif #endif /* This must match definition in */ #ifndef WCHAR_MAX #ifdef __WCHAR_MAX__ #define WCHAR_MAX (__WCHAR_MAX__) #elif defined(__WCHAR_UNSIGNED__) || (L'\0' - 1 > 0) #define WCHAR_MAX (0xffffffffu + L'\0') #else #define WCHAR_MAX (0x7fffffff + L'\0') #endif #endif /* wint_t is unsigned int on almost all GCC targets. */ #ifdef __WINT_MAX__ #define WINT_MAX (__WINT_MAX__) #else #define WINT_MAX (__STDINT_EXP(INT_MAX) * 2U + 1U) #endif #ifdef __WINT_MIN__ #define WINT_MIN (__WINT_MIN__) #else #define WINT_MIN (0U) #endif /** Macros for minimum-width integer constant expressions */ #ifdef __INT8_C #define INT8_C(x) __INT8_C(x) #define UINT8_C(x) __UINT8_C(x) #else #define INT8_C(x) x #if __STDINT_EXP(INT_MAX) > 0x7f #define UINT8_C(x) x #else #define UINT8_C(x) x##U #endif #endif #ifdef __INT16_C #define INT16_C(x) __INT16_C(x) #define UINT16_C(x) __UINT16_C(x) #else #define INT16_C(x) x #if __STDINT_EXP(INT_MAX) > 0x7fff #define UINT16_C(x) x #else #define UINT16_C(x) x##U #endif #endif #ifdef __INT32_C #define INT32_C(x) __INT32_C(x) #define UINT32_C(x) __UINT32_C(x) #else #if defined (_INT32_EQ_LONG) #define INT32_C(x) x##L #define UINT32_C(x) x##UL #else #define INT32_C(x) x #define UINT32_C(x) x##U #endif #endif #ifdef __INT64_C #define INT64_C(x) __INT64_C(x) #define UINT64_C(x) __UINT64_C(x) #else #if __int64_t_defined #if __have_long64 #define INT64_C(x) x##L #define UINT64_C(x) x##UL #else #define INT64_C(x) x##LL #define UINT64_C(x) x##ULL #endif #endif #endif /** Macros for greatest-width integer constant expression */ #ifdef __INTMAX_C #define INTMAX_C(x) __INTMAX_C(x) #define UINTMAX_C(x) __UINTMAX_C(x) #else #if __have_long64 #define INTMAX_C(x) x##L #define UINTMAX_C(x) x##UL #else #define INTMAX_C(x) x##LL #define UINTMAX_C(x) x##ULL #endif #endif #ifdef __cplusplus } #endif #endif /* _STDINT_H */ 0707010000004f000081a4000000000000000000000001630c8dd400007409000000000000000000000000000000000000002100000000./usr/nvptx-none/include/stdio.h/* * Copyright (c) 1990 The Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms are permitted * provided that the above copyright notice and this paragraph are * duplicated in all such forms and that any documentation, * and/or other materials related to such * distribution and use acknowledge that the software was developed * by the University of California, Berkeley. The name of the * University may not be used to endorse or promote products derived * from this software without specific prior written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#)stdio.h 5.3 (Berkeley) 3/15/86 */ /* * NB: to fit things in six character monocase externals, the * stdio code uses the prefix `__s' for stdio objects, typically * followed by a three-character attempt at a mnemonic. */ #ifndef _STDIO_H_ #define _STDIO_H_ #include "_ansi.h" #define _FSTDIO /* ``function stdio'' */ #define __need_size_t #define __need_NULL #include #include /* typedef only __gnuc_va_list, used throughout the header */ #define __need___va_list #include /* typedef va_list only when required */ #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE #ifdef __GNUC__ #ifndef _VA_LIST_DEFINED typedef __gnuc_va_list va_list; #define _VA_LIST_DEFINED #endif #else /* !__GNUC__ */ #include #endif #endif /* __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE */ /* * defines __FILE, _fpos_t. * They must be defined there because struct _reent needs them (and we don't * want reent.h to include this file. */ #include #include _BEGIN_STD_C #if !defined(__FILE_defined) typedef __FILE FILE; # define __FILE_defined #endif #ifdef __CYGWIN__ typedef _fpos64_t fpos_t; #else typedef _fpos_t fpos_t; #ifdef __LARGE64_FILES typedef _fpos64_t fpos64_t; #endif #endif /* !__CYGWIN__ */ #include #define __SLBF 0x0001 /* line buffered */ #define __SNBF 0x0002 /* unbuffered */ #define __SRD 0x0004 /* OK to read */ #define __SWR 0x0008 /* OK to write */ /* RD and WR are never simultaneously asserted */ #define __SRW 0x0010 /* open for reading & writing */ #define __SEOF 0x0020 /* found EOF */ #define __SERR 0x0040 /* found error */ #define __SMBF 0x0080 /* _buf is from malloc */ #define __SAPP 0x0100 /* fdopen()ed in append mode - so must write to end */ #define __SSTR 0x0200 /* this is an sprintf/snprintf string */ #define __SOPT 0x0400 /* do fseek() optimisation */ #define __SNPT 0x0800 /* do not do fseek() optimisation */ #define __SOFF 0x1000 /* set iff _offset is in fact correct */ #define __SORD 0x2000 /* true => stream orientation (byte/wide) decided */ #if defined(__CYGWIN__) # define __SCLE 0x4000 /* convert line endings CR/LF <-> NL */ #endif #define __SL64 0x8000 /* is 64-bit offset large file */ /* _flags2 flags */ #define __SNLK 0x0001 /* stdio functions do not lock streams themselves */ #define __SWID 0x2000 /* true => stream orientation wide, false => byte, only valid if __SORD in _flags is true */ /* * The following three definitions are for ANSI C, which took them * from System V, which stupidly took internal interface macros and * made them official arguments to setvbuf(), without renaming them. * Hence, these ugly _IOxxx names are *supposed* to appear in user code. * * Although these happen to match their counterparts above, the * implementation does not rely on that (so these could be renumbered). */ #define _IOFBF 0 /* setvbuf should set fully buffered */ #define _IOLBF 1 /* setvbuf should set line buffered */ #define _IONBF 2 /* setvbuf should set unbuffered */ #define EOF (-1) #ifdef __BUFSIZ__ #define BUFSIZ __BUFSIZ__ #else #define BUFSIZ 1024 #endif #ifdef __FOPEN_MAX__ #define FOPEN_MAX __FOPEN_MAX__ #else #define FOPEN_MAX 20 #endif #ifdef __FILENAME_MAX__ #define FILENAME_MAX __FILENAME_MAX__ #else #define FILENAME_MAX 1024 #endif #ifdef __L_tmpnam__ #define L_tmpnam __L_tmpnam__ #else #define L_tmpnam FILENAME_MAX #endif #if __BSD_VISIBLE || __XSI_VISIBLE #define P_tmpdir "/tmp" #endif #ifndef SEEK_SET #define SEEK_SET 0 /* set file offset to offset */ #endif #ifndef SEEK_CUR #define SEEK_CUR 1 /* set file offset to current plus offset */ #endif #ifndef SEEK_END #define SEEK_END 2 /* set file offset to EOF plus offset */ #endif #define TMP_MAX 26 #define stdin (_REENT->_stdin) #define stdout (_REENT->_stdout) #define stderr (_REENT->_stderr) #define _stdin_r(x) ((x)->_stdin) #define _stdout_r(x) ((x)->_stdout) #define _stderr_r(x) ((x)->_stderr) /* * Functions defined in ANSI C standard. */ #ifndef __VALIST #ifdef __GNUC__ #define __VALIST __gnuc_va_list #else #define __VALIST char* #endif #endif #if __POSIX_VISIBLE char * ctermid (char *); #endif #if __GNU_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 600) char * cuserid (char *); #endif FILE * tmpfile (void); char * tmpnam (char *); #if __BSD_VISIBLE || __XSI_VISIBLE || __POSIX_VISIBLE >= 200112 char * tempnam (const char *, const char *) __malloc_like __result_use_check; #endif int fclose (FILE *); int fflush (FILE *); FILE * freopen (const char *__restrict, const char *__restrict, FILE *__restrict); void setbuf (FILE *__restrict, char *__restrict); int setvbuf (FILE *__restrict, char *__restrict, int, size_t); int fprintf (FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int fscanf (FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3))); int printf (const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 1, 2))); int scanf (const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 1, 2))); int sscanf (const char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3))); int vfprintf (FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int vprintf (const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 1, 0))); int vsprintf (char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int fgetc (FILE *); char * fgets (char *__restrict, int, FILE *__restrict); int fputc (int, FILE *); int fputs (const char *__restrict, FILE *__restrict); int getc (FILE *); int getchar (void); char * gets (char *); int putc (int, FILE *); int putchar (int); int puts (const char *); int ungetc (int, FILE *); size_t fread (void *__restrict, size_t _size, size_t _n, FILE *__restrict); size_t fwrite (const void *__restrict , size_t _size, size_t _n, FILE *); #ifdef _COMPILING_NEWLIB int fgetpos (FILE *, _fpos_t *); #else int fgetpos (FILE *__restrict, fpos_t *__restrict); #endif int fseek (FILE *, long, int); #ifdef _COMPILING_NEWLIB int fsetpos (FILE *, const _fpos_t *); #else int fsetpos (FILE *, const fpos_t *); #endif long ftell ( FILE *); void rewind (FILE *); void clearerr (FILE *); int feof (FILE *); int ferror (FILE *); void perror (const char *); #ifndef _REENT_ONLY FILE * fopen (const char *__restrict _name, const char *__restrict _type); int sprintf (char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int remove (const char *); int rename (const char *, const char *); #ifdef _COMPILING_NEWLIB int _rename (const char *, const char *); #endif #endif #if __LARGEFILE_VISIBLE || __POSIX_VISIBLE >= 200112 #ifdef _COMPILING_NEWLIB int fseeko (FILE *, _off_t, int); _off_t ftello (FILE *); #else int fseeko (FILE *, off_t, int); off_t ftello (FILE *); #endif #endif #if __GNU_VISIBLE int fcloseall (void); #endif #ifndef _REENT_ONLY #if __ISO_C_VISIBLE >= 1999 int snprintf (char *__restrict, size_t, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int vsnprintf (char *__restrict, size_t, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int vfscanf (FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0))); int vscanf (const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 1, 0))); int vsscanf (const char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0))); #endif #if __GNU_VISIBLE int asprintf (char **__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int vasprintf (char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); #endif #if __MISC_VISIBLE /* Newlib-specific */ int asiprintf (char **, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); char * asniprintf (char *, size_t *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); char * asnprintf (char *__restrict, size_t *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); #ifndef diprintf int diprintf (int, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); #endif int fiprintf (FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int fiscanf (FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3))); int iprintf (const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 1, 2))); int iscanf (const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 1, 2))); int siprintf (char *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int siscanf (const char *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3))); int sniprintf (char *, size_t, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int vasiprintf (char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); char * vasniprintf (char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); char * vasnprintf (char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int vdiprintf (int, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int vfiprintf (FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int vfiscanf (FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0))); int viprintf (const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 1, 0))); int viscanf (const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 1, 0))); int vsiprintf (char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int vsiscanf (const char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0))); int vsniprintf (char *, size_t, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); #endif /* __MISC_VISIBLE */ #endif /* !_REENT_ONLY */ /* * Routines in POSIX 1003.1:2001. */ #if __POSIX_VISIBLE #ifndef _REENT_ONLY FILE * fdopen (int, const char *); #endif int fileno (FILE *); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE >= 199209 int pclose (FILE *); FILE * popen (const char *, const char *); #endif #if __BSD_VISIBLE void setbuffer (FILE *, char *, int); int setlinebuf (FILE *); #endif #if __MISC_VISIBLE || (__XSI_VISIBLE && __POSIX_VISIBLE < 200112) int getw (FILE *); int putw (int, FILE *); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE int getc_unlocked (FILE *); int getchar_unlocked (void); void flockfile (FILE *); int ftrylockfile (FILE *); void funlockfile (FILE *); int putc_unlocked (int, FILE *); int putchar_unlocked (int); #endif /* * Routines in POSIX 1003.1:200x. */ #if __POSIX_VISIBLE >= 200809 # ifndef _REENT_ONLY # ifndef dprintf int dprintf (int, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); # endif FILE * fmemopen (void *__restrict, size_t, const char *__restrict); /* getdelim - see __getdelim for now */ /* getline - see __getline for now */ FILE * open_memstream (char **, size_t *); int vdprintf (int, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); # endif #endif #if __ATFILE_VISIBLE int renameat (int, const char *, int, const char *); # ifdef __CYGWIN__ int renameat2 (int, const char *, int, const char *, unsigned int); # endif #endif /* * Recursive versions of the above. */ int _asiprintf_r (struct _reent *, char **, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); char * _asniprintf_r (struct _reent *, char *, size_t *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5))); char * _asnprintf_r (struct _reent *, char *__restrict, size_t *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5))); int _asprintf_r (struct _reent *, char **__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _diprintf_r (struct _reent *, int, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _dprintf_r (struct _reent *, int, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _fclose_r (struct _reent *, FILE *); int _fcloseall_r (struct _reent *); FILE * _fdopen_r (struct _reent *, int, const char *); int _fflush_r (struct _reent *, FILE *); int _fgetc_r (struct _reent *, FILE *); int _fgetc_unlocked_r (struct _reent *, FILE *); char * _fgets_r (struct _reent *, char *__restrict, int, FILE *__restrict); char * _fgets_unlocked_r (struct _reent *, char *__restrict, int, FILE *__restrict); #ifdef _COMPILING_NEWLIB int _fgetpos_r (struct _reent *, FILE *__restrict, _fpos_t *__restrict); int _fsetpos_r (struct _reent *, FILE *, const _fpos_t *); #else int _fgetpos_r (struct _reent *, FILE *, fpos_t *); int _fsetpos_r (struct _reent *, FILE *, const fpos_t *); #endif int _fiprintf_r (struct _reent *, FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _fiscanf_r (struct _reent *, FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4))); FILE * _fmemopen_r (struct _reent *, void *__restrict, size_t, const char *__restrict); FILE * _fopen_r (struct _reent *, const char *__restrict, const char *__restrict); FILE * _freopen_r (struct _reent *, const char *__restrict, const char *__restrict, FILE *__restrict); int _fprintf_r (struct _reent *, FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _fpurge_r (struct _reent *, FILE *); int _fputc_r (struct _reent *, int, FILE *); int _fputc_unlocked_r (struct _reent *, int, FILE *); int _fputs_r (struct _reent *, const char *__restrict, FILE *__restrict); int _fputs_unlocked_r (struct _reent *, const char *__restrict, FILE *__restrict); size_t _fread_r (struct _reent *, void *__restrict, size_t _size, size_t _n, FILE *__restrict); size_t _fread_unlocked_r (struct _reent *, void *__restrict, size_t _size, size_t _n, FILE *__restrict); int _fscanf_r (struct _reent *, FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4))); int _fseek_r (struct _reent *, FILE *, long, int); int _fseeko_r (struct _reent *, FILE *, _off_t, int); long _ftell_r (struct _reent *, FILE *); _off_t _ftello_r (struct _reent *, FILE *); void _rewind_r (struct _reent *, FILE *); size_t _fwrite_r (struct _reent *, const void *__restrict, size_t _size, size_t _n, FILE *__restrict); size_t _fwrite_unlocked_r (struct _reent *, const void *__restrict, size_t _size, size_t _n, FILE *__restrict); int _getc_r (struct _reent *, FILE *); int _getc_unlocked_r (struct _reent *, FILE *); int _getchar_r (struct _reent *); int _getchar_unlocked_r (struct _reent *); char * _gets_r (struct _reent *, char *); int _iprintf_r (struct _reent *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int _iscanf_r (struct _reent *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3))); FILE * _open_memstream_r (struct _reent *, char **, size_t *); void _perror_r (struct _reent *, const char *); int _printf_r (struct _reent *, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3))); int _putc_r (struct _reent *, int, FILE *); int _putc_unlocked_r (struct _reent *, int, FILE *); int _putchar_unlocked_r (struct _reent *, int); int _putchar_r (struct _reent *, int); int _puts_r (struct _reent *, const char *); int _remove_r (struct _reent *, const char *); int _rename_r (struct _reent *, const char *_old, const char *_new); int _scanf_r (struct _reent *, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3))); int _siprintf_r (struct _reent *, char *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _siscanf_r (struct _reent *, const char *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4))); int _sniprintf_r (struct _reent *, char *, size_t, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5))); int _snprintf_r (struct _reent *, char *__restrict, size_t, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5))); int _sprintf_r (struct _reent *, char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4))); int _sscanf_r (struct _reent *, const char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4))); char * _tempnam_r (struct _reent *, const char *, const char *); FILE * _tmpfile_r (struct _reent *); char * _tmpnam_r (struct _reent *, char *); int _ungetc_r (struct _reent *, int, FILE *); int _vasiprintf_r (struct _reent *, char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); char * _vasniprintf_r (struct _reent*, char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0))); char * _vasnprintf_r (struct _reent*, char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0))); int _vasprintf_r (struct _reent *, char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vdiprintf_r (struct _reent *, int, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vdprintf_r (struct _reent *, int, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vfiprintf_r (struct _reent *, FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vfiscanf_r (struct _reent *, FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0))); int _vfprintf_r (struct _reent *, FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vfscanf_r (struct _reent *, FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0))); int _viprintf_r (struct _reent *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int _viscanf_r (struct _reent *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0))); int _vprintf_r (struct _reent *, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0))); int _vscanf_r (struct _reent *, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0))); int _vsiprintf_r (struct _reent *, char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vsiscanf_r (struct _reent *, const char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0))); int _vsniprintf_r (struct _reent *, char *, size_t, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0))); int _vsnprintf_r (struct _reent *, char *__restrict, size_t, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0))); int _vsprintf_r (struct _reent *, char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0))); int _vsscanf_r (struct _reent *, const char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0))); /* Other extensions. */ int fpurge (FILE *); ssize_t __getdelim (char **, size_t *, int, FILE *); ssize_t __getline (char **, size_t *, FILE *); #if __MISC_VISIBLE void clearerr_unlocked (FILE *); int feof_unlocked (FILE *); int ferror_unlocked (FILE *); int fileno_unlocked (FILE *); int fflush_unlocked (FILE *); int fgetc_unlocked (FILE *); int fputc_unlocked (int, FILE *); size_t fread_unlocked (void *__restrict, size_t _size, size_t _n, FILE *__restrict); size_t fwrite_unlocked (const void *__restrict , size_t _size, size_t _n, FILE *); #endif #if __GNU_VISIBLE char * fgets_unlocked (char *__restrict, int, FILE *__restrict); int fputs_unlocked (const char *__restrict, FILE *__restrict); #endif #ifdef __LARGE64_FILES #if !defined(__CYGWIN__) || defined(_COMPILING_NEWLIB) FILE * fdopen64 (int, const char *); FILE * fopen64 (const char *, const char *); FILE * freopen64 (const char *, const char *, FILE *); _off64_t ftello64 (FILE *); _off64_t fseeko64 (FILE *, _off64_t, int); int fgetpos64 (FILE *, _fpos64_t *); int fsetpos64 (FILE *, const _fpos64_t *); FILE * tmpfile64 (void); FILE * _fdopen64_r (struct _reent *, int, const char *); FILE * _fopen64_r (struct _reent *,const char *, const char *); FILE * _freopen64_r (struct _reent *, const char *, const char *, FILE *); _off64_t _ftello64_r (struct _reent *, FILE *); _off64_t _fseeko64_r (struct _reent *, FILE *, _off64_t, int); int _fgetpos64_r (struct _reent *, FILE *, _fpos64_t *); int _fsetpos64_r (struct _reent *, FILE *, const _fpos64_t *); FILE * _tmpfile64_r (struct _reent *); #endif /* !__CYGWIN__ */ #endif /* __LARGE64_FILES */ /* * Routines internal to the implementation. */ int __srget_r (struct _reent *, FILE *); int __swbuf_r (struct _reent *, int, FILE *); /* * Stdio function-access interface. */ #if __BSD_VISIBLE # ifdef __LARGE64_FILES FILE *funopen (const void *__cookie, int (*__readfn)(void *__c, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(void *__c, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), _fpos64_t (*__seekfn)(void *__c, _fpos64_t __off, int __whence), int (*__closefn)(void *__c)); FILE *_funopen_r (struct _reent *, const void *__cookie, int (*__readfn)(void *__c, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(void *__c, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), _fpos64_t (*__seekfn)(void *__c, _fpos64_t __off, int __whence), int (*__closefn)(void *__c)); # else FILE *funopen (const void *__cookie, int (*__readfn)(void *__cookie, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(void *__cookie, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), fpos_t (*__seekfn)(void *__cookie, fpos_t __off, int __whence), int (*__closefn)(void *__cookie)); FILE *_funopen_r (struct _reent *, const void *__cookie, int (*__readfn)(void *__cookie, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(void *__cookie, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), fpos_t (*__seekfn)(void *__cookie, fpos_t __off, int __whence), int (*__closefn)(void *__cookie)); # endif /* !__LARGE64_FILES */ # define fropen(__cookie, __fn) funopen(__cookie, __fn, (int (*)())0, \ (fpos_t (*)())0, (int (*)())0) # define fwopen(__cookie, __fn) funopen(__cookie, (int (*)())0, __fn, \ (fpos_t (*)())0, (int (*)())0) #endif /* __BSD_VISIBLE */ #if __GNU_VISIBLE typedef ssize_t cookie_read_function_t(void *__cookie, char *__buf, size_t __n); typedef ssize_t cookie_write_function_t(void *__cookie, const char *__buf, size_t __n); # ifdef __LARGE64_FILES typedef int cookie_seek_function_t(void *__cookie, _off64_t *__off, int __whence); # else typedef int cookie_seek_function_t(void *__cookie, off_t *__off, int __whence); # endif /* !__LARGE64_FILES */ typedef int cookie_close_function_t(void *__cookie); typedef struct { /* These four struct member names are dictated by Linux; hopefully, they don't conflict with any macros. */ cookie_read_function_t *read; cookie_write_function_t *write; cookie_seek_function_t *seek; cookie_close_function_t *close; } cookie_io_functions_t; FILE *fopencookie (void *__cookie, const char *__mode, cookie_io_functions_t __functions); FILE *_fopencookie_r (struct _reent *, void *__cookie, const char *__mode, cookie_io_functions_t __functions); #endif /* __GNU_VISIBLE */ #ifndef __CUSTOM_FILE_IO__ /* * The __sfoo macros are here so that we can * define function versions in the C library. */ #define __sgetc_raw_r(__ptr, __f) (--(__f)->_r < 0 ? __srget_r(__ptr, __f) : (int)(*(__f)->_p++)) #ifdef __SCLE /* For a platform with CR/LF, additional logic is required by __sgetc_r which would otherwise simply be a macro; therefore we use an inlined function. The function is only meant to be inlined in place as used and the function body should never be emitted. There are two possible means to this end when compiling with GCC, one when compiling with a standard C99 compiler, and for other compilers we're just stuck. At the moment, this issue only affects the Cygwin target, so we'll most likely be using GCC. */ _ELIDABLE_INLINE int __sgetc_r(struct _reent *__ptr, FILE *__p); _ELIDABLE_INLINE int __sgetc_r(struct _reent *__ptr, FILE *__p) { int __c = __sgetc_raw_r(__ptr, __p); if ((__p->_flags & __SCLE) && (__c == '\r')) { int __c2 = __sgetc_raw_r(__ptr, __p); if (__c2 == '\n') __c = __c2; else ungetc(__c2, __p); } return __c; } #else #define __sgetc_r(__ptr, __p) __sgetc_raw_r(__ptr, __p) #endif #ifdef __GNUC__ _ELIDABLE_INLINE int __sputc_r(struct _reent *_ptr, int _c, FILE *_p) { #ifdef __SCLE if ((_p->_flags & __SCLE) && _c == '\n') __sputc_r (_ptr, '\r', _p); #endif if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c != '\n')) return (*_p->_p++ = _c); else return (__swbuf_r(_ptr, _c, _p)); } #else /* * This has been tuned to generate reasonable code on the vax using pcc */ #define __sputc_raw_r(__ptr, __c, __p) \ (--(__p)->_w < 0 ? \ (__p)->_w >= (__p)->_lbfsize ? \ (*(__p)->_p = (__c)), *(__p)->_p != '\n' ? \ (int)*(__p)->_p++ : \ __swbuf_r(__ptr, '\n', __p) : \ __swbuf_r(__ptr, (int)(__c), __p) : \ (*(__p)->_p = (__c), (int)*(__p)->_p++)) #ifdef __SCLE #define __sputc_r(__ptr, __c, __p) \ ((((__p)->_flags & __SCLE) && ((__c) == '\n')) \ ? __sputc_raw_r(__ptr, '\r', (__p)) : 0 , \ __sputc_raw_r((__ptr), (__c), (__p))) #else #define __sputc_r(__ptr, __c, __p) __sputc_raw_r(__ptr, __c, __p) #endif #endif #define __sfeof(p) ((int)(((p)->_flags & __SEOF) != 0)) #define __sferror(p) ((int)(((p)->_flags & __SERR) != 0)) #define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF))) #define __sfileno(p) ((p)->_file) #ifndef __cplusplus #ifndef _REENT_SMALL #define feof(p) __sfeof(p) #define ferror(p) __sferror(p) #define clearerr(p) __sclearerr(p) #if __MISC_VISIBLE #define feof_unlocked(p) __sfeof(p) #define ferror_unlocked(p) __sferror(p) #define clearerr_unlocked(p) __sclearerr(p) #endif /* __MISC_VISIBLE */ #endif /* _REENT_SMALL */ #if 0 /* __POSIX_VISIBLE - FIXME: must initialize stdio first, use fn */ #define fileno(p) __sfileno(p) #endif static __inline int _getchar_unlocked(void) { struct _reent *_ptr; _ptr = _REENT; return (__sgetc_r(_ptr, _stdin_r(_ptr))); } static __inline int _putchar_unlocked(int _c) { struct _reent *_ptr; _ptr = _REENT; return (__sputc_r(_ptr, _c, _stdout_r(_ptr))); } #ifdef __SINGLE_THREAD__ #define getc(_p) __sgetc_r(_REENT, _p) #define putc(_c, _p) __sputc_r(_REENT, _c, _p) #define getchar() _getchar_unlocked() #define putchar(_c) _putchar_unlocked(_c) #endif /* __SINGLE_THREAD__ */ #if __MISC_VISIBLE || __POSIX_VISIBLE #define getchar_unlocked() _getchar_unlocked() #define putchar_unlocked(_c) _putchar_unlocked(_c) #endif #endif /* __cplusplus */ #if __MISC_VISIBLE /* fast always-buffered version, true iff error */ #define fast_putc(x,p) (--(p)->_w < 0 ? \ __swbuf_r(_REENT, (int)(x), p) == EOF : (*(p)->_p = (x), (p)->_p++, 0)) #endif #if __GNU_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 600) #define L_cuserid 9 /* posix says it goes in stdio.h :( */ #endif #if __POSIX_VISIBLE #define L_ctermid 16 #endif #else /* __CUSTOM_FILE_IO__ */ #define getchar() getc(stdin) #define putchar(x) putc(x, stdout) #if __MISC_VISIBLE || __POSIX_VISIBLE #define getchar_unlocked() getc_unlocked(stdin) #define putchar_unlocked(x) putc_unlocked(x, stdout) #endif #endif /* !__CUSTOM_FILE_IO__ */ _END_STD_C #if __SSP_FORTIFY_LEVEL > 0 #include #endif #endif /* _STDIO_H_ */ 07070100000050000081a4000000000000000000000001630c8dd400000707000000000000000000000000000000000000002500000000./usr/nvptx-none/include/stdio_ext.h/* * stdio_ext.h * * Definitions for I/O internal operations, originally from Solaris. */ #ifndef _STDIO_EXT_H_ #define _STDIO_EXT_H_ #ifdef __rtems__ #error " not supported" #endif #include #define FSETLOCKING_QUERY 0 #define FSETLOCKING_INTERNAL 1 #define FSETLOCKING_BYCALLER 2 _BEGIN_STD_C void __fpurge (FILE *); int __fsetlocking (FILE *, int); /* TODO: void _flushlbf (void); */ #ifdef __GNUC__ _ELIDABLE_INLINE size_t __fbufsize (FILE *__fp) { return (size_t) __fp->_bf._size; } _ELIDABLE_INLINE int __freading (FILE *__fp) { return (__fp->_flags & __SRD) != 0; } _ELIDABLE_INLINE int __fwriting (FILE *__fp) { return (__fp->_flags & __SWR) != 0; } _ELIDABLE_INLINE int __freadable (FILE *__fp) { return (__fp->_flags & (__SRD | __SRW)) != 0; } _ELIDABLE_INLINE int __fwritable (FILE *__fp) { return (__fp->_flags & (__SWR | __SRW)) != 0; } _ELIDABLE_INLINE int __flbf (FILE *__fp) { return (__fp->_flags & __SLBF) != 0; } _ELIDABLE_INLINE size_t __fpending (FILE *__fp) { return __fp->_p - __fp->_bf._base; } #else size_t __fbufsize (FILE *); int __freading (FILE *); int __fwriting (FILE *); int __freadable (FILE *); int __fwritable (FILE *); int __flbf (FILE *); size_t __fpending (FILE *); #ifndef __cplusplus #define __fbufsize(__fp) ((size_t) (__fp)->_bf._size) #define __freading(__fp) (((__fp)->_flags & __SRD) != 0) #define __fwriting(__fp) (((__fp)->_flags & __SWR) != 0) #define __freadable(__fp) (((__fp)->_flags & (__SRD | __SRW)) != 0) #define __fwritable(__fp) (((__fp)->_flags & (__SWR | __SRW)) != 0) #define __flbf(__fp) (((__fp)->_flags & __SLBF) != 0) #define __fpending(__fp) ((size_t) ((__fp)->_p - (__fp)->_bf._base)) #endif /* __cplusplus */ #endif /* __GNUC__ */ _END_STD_C #endif /* _STDIO_EXT_H_ */ 07070100000051000081a4000000000000000000000001630c8dd400002da7000000000000000000000000000000000000002200000000./usr/nvptx-none/include/stdlib.h/* * stdlib.h * * Definitions for common types, variables, and functions. */ #ifndef _STDLIB_H_ #define _STDLIB_H_ #include #include "_ansi.h" #define __need_size_t #define __need_wchar_t #define __need_NULL #include #include #include #include #ifndef __STRICT_ANSI__ #include #endif #ifdef __CYGWIN__ #include #endif #if __GNU_VISIBLE #include #endif _BEGIN_STD_C typedef struct { int quot; /* quotient */ int rem; /* remainder */ } div_t; typedef struct { long quot; /* quotient */ long rem; /* remainder */ } ldiv_t; #if __ISO_C_VISIBLE >= 1999 typedef struct { long long int quot; /* quotient */ long long int rem; /* remainder */ } lldiv_t; #endif #ifndef __compar_fn_t_defined #define __compar_fn_t_defined typedef int (*__compar_fn_t) (const void *, const void *); #endif #define EXIT_FAILURE 1 #define EXIT_SUCCESS 0 #define RAND_MAX __RAND_MAX int __locale_mb_cur_max (void); #define MB_CUR_MAX __locale_mb_cur_max() void abort (void) _ATTRIBUTE ((__noreturn__)); int abs (int); #if __BSD_VISIBLE __uint32_t arc4random (void); __uint32_t arc4random_uniform (__uint32_t); void arc4random_buf (void *, size_t); #endif int atexit (void (*__func)(void)); double atof (const char *__nptr); #if __MISC_VISIBLE float atoff (const char *__nptr); #endif int atoi (const char *__nptr); int _atoi_r (struct _reent *, const char *__nptr); long atol (const char *__nptr); long _atol_r (struct _reent *, const char *__nptr); void * bsearch (const void *__key, const void *__base, size_t __nmemb, size_t __size, __compar_fn_t _compar); void *calloc(size_t, size_t) __malloc_like __result_use_check __alloc_size2(1, 2) _NOTHROW; div_t div (int __numer, int __denom); void exit (int __status) _ATTRIBUTE ((__noreturn__)); void free (void *) _NOTHROW; char * getenv (const char *__string); char * _getenv_r (struct _reent *, const char *__string); #if __GNU_VISIBLE char * secure_getenv (const char *__string); #endif char * _findenv (const char *, int *); char * _findenv_r (struct _reent *, const char *, int *); #if __POSIX_VISIBLE >= 200809 extern char *suboptarg; /* getsubopt(3) external variable */ int getsubopt (char **, char * const *, char **); #endif long labs (long); ldiv_t ldiv (long __numer, long __denom); void *malloc(size_t) __malloc_like __result_use_check __alloc_size(1) _NOTHROW; int mblen (const char *, size_t); int _mblen_r (struct _reent *, const char *, size_t, _mbstate_t *); int mbtowc (wchar_t *__restrict, const char *__restrict, size_t); int _mbtowc_r (struct _reent *, wchar_t *__restrict, const char *__restrict, size_t, _mbstate_t *); int wctomb (char *, wchar_t); int _wctomb_r (struct _reent *, char *, wchar_t, _mbstate_t *); size_t mbstowcs (wchar_t *__restrict, const char *__restrict, size_t); size_t _mbstowcs_r (struct _reent *, wchar_t *__restrict, const char *__restrict, size_t, _mbstate_t *); size_t wcstombs (char *__restrict, const wchar_t *__restrict, size_t); size_t _wcstombs_r (struct _reent *, char *__restrict, const wchar_t *__restrict, size_t, _mbstate_t *); #ifndef _REENT_ONLY #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200809 char * mkdtemp (char *); #endif #if __GNU_VISIBLE int mkostemp (char *, int); int mkostemps (char *, int, int); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 4 int mkstemp (char *); #endif #if __MISC_VISIBLE int mkstemps (char *, int); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200112) char * mktemp (char *) _ATTRIBUTE ((__deprecated__("the use of `mktemp' is dangerous; use `mkstemp' instead"))); #endif #endif /* !_REENT_ONLY */ char * _mkdtemp_r (struct _reent *, char *); int _mkostemp_r (struct _reent *, char *, int); int _mkostemps_r (struct _reent *, char *, int, int); int _mkstemp_r (struct _reent *, char *); int _mkstemps_r (struct _reent *, char *, int); char * _mktemp_r (struct _reent *, char *) _ATTRIBUTE ((__deprecated__("the use of `mktemp' is dangerous; use `mkstemp' instead"))); void qsort (void *__base, size_t __nmemb, size_t __size, __compar_fn_t _compar); int rand (void); void *realloc(void *, size_t) __result_use_check __alloc_size(2) _NOTHROW; #if __BSD_VISIBLE void *reallocarray(void *, size_t, size_t) __result_use_check __alloc_size2(2, 3); void *reallocf(void *, size_t) __result_use_check __alloc_size(2); #endif #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 char * realpath (const char *__restrict path, char *__restrict resolved_path); #endif #if __BSD_VISIBLE int rpmatch (const char *response); #endif #if __XSI_VISIBLE void setkey (const char *__key); #endif void srand (unsigned __seed); double strtod (const char *__restrict __n, char **__restrict __end_PTR); double _strtod_r (struct _reent *,const char *__restrict __n, char **__restrict __end_PTR); #if __ISO_C_VISIBLE >= 1999 float strtof (const char *__restrict __n, char **__restrict __end_PTR); #endif #if __MISC_VISIBLE /* the following strtodf interface is deprecated...use strtof instead */ # ifndef strtodf # define strtodf strtof # endif #endif long strtol (const char *__restrict __n, char **__restrict __end_PTR, int __base); long _strtol_r (struct _reent *,const char *__restrict __n, char **__restrict __end_PTR, int __base); unsigned long strtoul (const char *__restrict __n, char **__restrict __end_PTR, int __base); unsigned long _strtoul_r (struct _reent *,const char *__restrict __n, char **__restrict __end_PTR, int __base); #if __GNU_VISIBLE double strtod_l (const char *__restrict, char **__restrict, locale_t); float strtof_l (const char *__restrict, char **__restrict, locale_t); #ifdef _HAVE_LONG_DOUBLE extern long double strtold_l (const char *__restrict, char **__restrict, locale_t); #endif /* _HAVE_LONG_DOUBLE */ long strtol_l (const char *__restrict, char **__restrict, int, locale_t); unsigned long strtoul_l (const char *__restrict, char **__restrict, int, locale_t __loc); long long strtoll_l (const char *__restrict, char **__restrict, int, locale_t); unsigned long long strtoull_l (const char *__restrict, char **__restrict, int, locale_t __loc); #endif int system (const char *__string); #if __SVID_VISIBLE || __XSI_VISIBLE >= 4 long a64l (const char *__input); char * l64a (long __input); char * _l64a_r (struct _reent *,long __input); #endif #if __MISC_VISIBLE int on_exit (void (*__func)(int, void *),void *__arg); #endif #if __ISO_C_VISIBLE >= 1999 void _Exit (int __status) _ATTRIBUTE ((__noreturn__)); #endif #if __SVID_VISIBLE || __XSI_VISIBLE int putenv (char *__string); #endif int _putenv_r (struct _reent *, char *__string); void * _reallocf_r (struct _reent *, void *, size_t); #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 int setenv (const char *__string, const char *__value, int __overwrite); #endif int _setenv_r (struct _reent *, const char *__string, const char *__value, int __overwrite); #if __XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200112 char * gcvt (double,int,char *); char * gcvtf (float,int,char *); char * fcvt (double,int,int *,int *); char * fcvtf (float,int,int *,int *); char * ecvt (double,int,int *,int *); char * ecvtbuf (double, int, int*, int*, char *); char * fcvtbuf (double, int, int*, int*, char *); char * ecvtf (float,int,int *,int *); #endif char * __itoa (int, char *, int); char * __utoa (unsigned, char *, int); #if __MISC_VISIBLE char * itoa (int, char *, int); char * utoa (unsigned, char *, int); #endif #if __POSIX_VISIBLE int rand_r (unsigned *__seed); #endif #if __SVID_VISIBLE || __XSI_VISIBLE double drand48 (void); double _drand48_r (struct _reent *); double erand48 (unsigned short [3]); double _erand48_r (struct _reent *, unsigned short [3]); long jrand48 (unsigned short [3]); long _jrand48_r (struct _reent *, unsigned short [3]); void lcong48 (unsigned short [7]); void _lcong48_r (struct _reent *, unsigned short [7]); long lrand48 (void); long _lrand48_r (struct _reent *); long mrand48 (void); long _mrand48_r (struct _reent *); long nrand48 (unsigned short [3]); long _nrand48_r (struct _reent *, unsigned short [3]); unsigned short * seed48 (unsigned short [3]); unsigned short * _seed48_r (struct _reent *, unsigned short [3]); void srand48 (long); void _srand48_r (struct _reent *, long); #endif /* __SVID_VISIBLE || __XSI_VISIBLE */ #if __SVID_VISIBLE || __XSI_VISIBLE >= 4 || __BSD_VISIBLE char * initstate (unsigned, char *, size_t); long random (void); char * setstate (char *); void srandom (unsigned); #endif #if __ISO_C_VISIBLE >= 1999 long long atoll (const char *__nptr); #endif long long _atoll_r (struct _reent *, const char *__nptr); #if __ISO_C_VISIBLE >= 1999 long long llabs (long long); lldiv_t lldiv (long long __numer, long long __denom); long long strtoll (const char *__restrict __n, char **__restrict __end_PTR, int __base); #endif long long _strtoll_r (struct _reent *, const char *__restrict __n, char **__restrict __end_PTR, int __base); #if __ISO_C_VISIBLE >= 1999 unsigned long long strtoull (const char *__restrict __n, char **__restrict __end_PTR, int __base); #endif unsigned long long _strtoull_r (struct _reent *, const char *__restrict __n, char **__restrict __end_PTR, int __base); #ifndef __CYGWIN__ #if __MISC_VISIBLE void cfree (void *); #endif #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 int unsetenv (const char *__string); #endif int _unsetenv_r (struct _reent *, const char *__string); #endif /* !__CYGWIN__ */ #if __POSIX_VISIBLE >= 200112 int posix_memalign (void **, size_t, size_t) __nonnull((1)) __result_use_check; #endif char * _dtoa_r (struct _reent *, double, int, int, int *, int*, char**); #ifndef __CYGWIN__ void * _malloc_r (struct _reent *, size_t) _NOTHROW; void * _calloc_r (struct _reent *, size_t, size_t) _NOTHROW; void _free_r (struct _reent *, void *) _NOTHROW; void * _realloc_r (struct _reent *, void *, size_t) _NOTHROW; void _mstats_r (struct _reent *, char *); #endif int _system_r (struct _reent *, const char *); void __eprintf (const char *, const char *, unsigned int, const char *); /* There are two common qsort_r variants. If you request _BSD_SOURCE, you get the BSD version; otherwise you get the GNU version. We want that #undef qsort_r will still let you invoke the underlying function, but that requires gcc support. */ #if __GNU_VISIBLE void qsort_r (void *__base, size_t __nmemb, size_t __size, int (*_compar)(const void *, const void *, void *), void *__thunk); #elif __BSD_VISIBLE # ifdef __GNUC__ void qsort_r (void *__base, size_t __nmemb, size_t __size, void *__thunk, int (*_compar)(void *, const void *, const void *)) __asm__ (__ASMNAME ("__bsd_qsort_r")); # else void __bsd_qsort_r (void *__base, size_t __nmemb, size_t __size, void *__thunk, int (*_compar)(void *, const void *, const void *)); # define qsort_r __bsd_qsort_r # endif #endif /* On platforms where long double equals double. */ #ifdef _HAVE_LONG_DOUBLE extern long double _strtold_r (struct _reent *, const char *__restrict, char **__restrict); #if __ISO_C_VISIBLE >= 1999 extern long double strtold (const char *__restrict, char **__restrict); #endif #endif /* _HAVE_LONG_DOUBLE */ /* * If we're in a mode greater than C99, expose C11 functions. */ #if __ISO_C_VISIBLE >= 2011 void * aligned_alloc(size_t, size_t) __malloc_like __alloc_align(1) __alloc_size(2) __result_use_check; int at_quick_exit(void (*)(void)); _Noreturn void quick_exit(int); #endif /* __ISO_C_VISIBLE >= 2011 */ _END_STD_C #if __SSP_FORTIFY_LEVEL > 0 #include #endif #endif /* _STDLIB_H_ */ 07070100000052000081a4000000000000000000000001630c8dd4000015d9000000000000000000000000000000000000002200000000./usr/nvptx-none/include/string.h/* * string.h * * Definitions for memory and string functions. */ #ifndef _STRING_H_ #define _STRING_H_ #include "_ansi.h" #include #include #include #define __need_size_t #define __need_NULL #include #if __POSIX_VISIBLE >= 200809 #include #endif #if __BSD_VISIBLE #include #endif _BEGIN_STD_C void * memchr (const void *, int, size_t); int memcmp (const void *, const void *, size_t); void * memcpy (void *__restrict, const void *__restrict, size_t); void * memmove (void *, const void *, size_t); void * memset (void *, int, size_t); char *strcat (char *__restrict, const char *__restrict); char *strchr (const char *, int); int strcmp (const char *, const char *); int strcoll (const char *, const char *); char *strcpy (char *__restrict, const char *__restrict); size_t strcspn (const char *, const char *); char *strerror (int); size_t strlen (const char *); char *strncat (char *__restrict, const char *__restrict, size_t); int strncmp (const char *, const char *, size_t); char *strncpy (char *__restrict, const char *__restrict, size_t); char *strpbrk (const char *, const char *); char *strrchr (const char *, int); size_t strspn (const char *, const char *); char *strstr (const char *, const char *); #ifndef _REENT_ONLY char *strtok (char *__restrict, const char *__restrict); #endif size_t strxfrm (char *__restrict, const char *__restrict, size_t); #if __POSIX_VISIBLE >= 200809 int strcoll_l (const char *, const char *, locale_t); char *strerror_l (int, locale_t); size_t strxfrm_l (char *__restrict, const char *__restrict, size_t, locale_t); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE char *strtok_r (char *__restrict, const char *__restrict, char **__restrict); #endif #if __BSD_VISIBLE int timingsafe_bcmp (const void *, const void *, size_t); int timingsafe_memcmp (const void *, const void *, size_t); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE void * memccpy (void *__restrict, const void *__restrict, int, size_t); #endif #if __GNU_VISIBLE void * mempcpy (void *, const void *, size_t); void * memmem (const void *, size_t, const void *, size_t); void * memrchr (const void *, int, size_t); void * rawmemchr (const void *, int); #endif #if __POSIX_VISIBLE >= 200809 char *stpcpy (char *__restrict, const char *__restrict); char *stpncpy (char *__restrict, const char *__restrict, size_t); #endif #if __GNU_VISIBLE char *strcasestr (const char *, const char *); char *strchrnul (const char *, int); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 4 char *strdup (const char *) __malloc_like __result_use_check; #endif char *_strdup_r (struct _reent *, const char *); #if __POSIX_VISIBLE >= 200809 char *strndup (const char *, size_t) __malloc_like __result_use_check; #endif char *_strndup_r (struct _reent *, const char *, size_t); /* There are two common strerror_r variants. If you request _GNU_SOURCE, you get the GNU version; otherwise you get the POSIX version. POSIX requires that #undef strerror_r will still let you invoke the underlying function, but that requires gcc support. */ #if __GNU_VISIBLE char *strerror_r (int, char *, size_t); #elif __POSIX_VISIBLE >= 200112 # ifdef __GNUC__ int strerror_r (int, char *, size_t) #ifdef __ASMNAME __asm__ (__ASMNAME ("__xpg_strerror_r")) #endif ; # else int __xpg_strerror_r (int, char *, size_t); # define strerror_r __xpg_strerror_r # endif #endif /* Reentrant version of strerror. */ char * _strerror_r (struct _reent *, int, int, int *); #if __BSD_VISIBLE size_t strlcat (char *, const char *, size_t); size_t strlcpy (char *, const char *, size_t); #endif #if __POSIX_VISIBLE >= 200809 size_t strnlen (const char *, size_t); #endif #if __BSD_VISIBLE char *strsep (char **, const char *); #endif #if __BSD_VISIBLE char *strnstr(const char *, const char *, size_t) __pure; #endif #if __MISC_VISIBLE char *strlwr (char *); char *strupr (char *); #endif #ifndef DEFS_H /* Kludge to work around problem compiling in gdb */ char *strsignal (int __signo); #endif #ifdef __CYGWIN__ int strtosigno (const char *__name); #endif #if __GNU_VISIBLE int strverscmp (const char *, const char *); #endif #if __GNU_VISIBLE && defined(__GNUC__) #define strdupa(__s) \ (__extension__ ({const char *__sin = (__s); \ size_t __len = strlen (__sin) + 1; \ char * __sout = (char *) __builtin_alloca (__len); \ (char *) memcpy (__sout, __sin, __len);})) #define strndupa(__s, __n) \ (__extension__ ({const char *__sin = (__s); \ size_t __len = strnlen (__sin, (__n)) + 1; \ char *__sout = (char *) __builtin_alloca (__len); \ __sout[__len-1] = '\0'; \ (char *) memcpy (__sout, __sin, __len-1);})) #endif /* __GNU_VISIBLE && __GNUC__ */ /* There are two common basename variants. If you do NOT #include and you do #define _GNU_SOURCE #include you get the GNU version. Otherwise you get the POSIX versionfor which you should #include i for the function prototype. POSIX requires that #undef basename will still let you invoke the underlying function. However, this also implies that the POSIX version is used in this case. That's made sure here. */ #if __GNU_VISIBLE && !defined(basename) # define basename basename char *__nonnull ((1)) basename (const char *) __asm__(__ASMNAME("__gnu_basename")); #endif #include _END_STD_C #if __SSP_FORTIFY_LEVEL > 0 #include #endif #endif /* _STRING_H_ */ 07070100000053000081a4000000000000000000000001630c8dd400000ae4000000000000000000000000000000000000002300000000./usr/nvptx-none/include/strings.h/*- * Copyright (c) 2002 Mike Barcroft * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD: head/include/strings.h 272673 2014-10-07 04:54:11Z delphij $ */ #ifndef _STRINGS_H_ #define _STRINGS_H_ #include #include #if __POSIX_VISIBLE >= 200809 #include #endif #ifndef _SIZE_T_DECLARED typedef __size_t size_t; #define _SIZE_T_DECLARED #endif __BEGIN_DECLS #if __BSD_VISIBLE || __POSIX_VISIBLE <= 200112 int bcmp(const void *, const void *, size_t) __pure; /* LEGACY */ void bcopy(const void *, void *, size_t); /* LEGACY */ void bzero(void *, size_t); /* LEGACY */ #endif #if __BSD_VISIBLE void explicit_bzero(void *, size_t); #endif #if __MISC_VISIBLE || __POSIX_VISIBLE < 200809 || __XSI_VISIBLE >= 700 int ffs(int) __pure2; #endif #if __BSD_VISIBLE int ffsl(long) __pure2; int ffsll(long long) __pure2; int fls(int) __pure2; int flsl(long) __pure2; int flsll(long long) __pure2; #endif #if __BSD_VISIBLE || __POSIX_VISIBLE <= 200112 char *index(const char *, int) __pure; /* LEGACY */ char *rindex(const char *, int) __pure; /* LEGACY */ #endif int strcasecmp(const char *, const char *) __pure; int strncasecmp(const char *, const char *, size_t) __pure; #if __POSIX_VISIBLE >= 200809 int strcasecmp_l (const char *, const char *, locale_t); int strncasecmp_l (const char *, const char *, size_t, locale_t); #endif __END_DECLS #if __SSP_FORTIFY_LEVEL > 0 #include #endif #endif /* _STRINGS_H_ */ 07070100000054000041ed000000000000000000000001630c8dd500000000000000000000000000000000000000000000001d00000000./usr/nvptx-none/include/sys07070100000055000081a4000000000000000000000001630c8dd500001c5d000000000000000000000000000000000000002e00000000./usr/nvptx-none/include/sys/_default_fcntl.h #ifndef _SYS__DEFAULT_FCNTL_H_ #ifdef __cplusplus extern "C" { #endif #define _SYS__DEFAULT_FCNTL_H_ #include <_ansi.h> #include #define _FOPEN (-1) /* from sys/file.h, kernel use only */ #define _FREAD 0x0001 /* read enabled */ #define _FWRITE 0x0002 /* write enabled */ #define _FAPPEND 0x0008 /* append (writes guaranteed at the end) */ #define _FMARK 0x0010 /* internal; mark during gc() */ #define _FDEFER 0x0020 /* internal; defer for next gc pass */ #define _FASYNC 0x0040 /* signal pgrp when data ready */ #define _FSHLOCK 0x0080 /* BSD flock() shared lock present */ #define _FEXLOCK 0x0100 /* BSD flock() exclusive lock present */ #define _FCREAT 0x0200 /* open with file create */ #define _FTRUNC 0x0400 /* open with truncation */ #define _FEXCL 0x0800 /* error on open if file exists */ #define _FNBIO 0x1000 /* non blocking I/O (sys5 style) */ #define _FSYNC 0x2000 /* do all writes synchronously */ #define _FNONBLOCK 0x4000 /* non blocking I/O (POSIX style) */ #define _FNDELAY _FNONBLOCK /* non blocking I/O (4.2 style) */ #define _FNOCTTY 0x8000 /* don't assign a ctty on this open */ #if defined (__CYGWIN__) #define _FBINARY 0x10000 #define _FTEXT 0x20000 #endif #define _FNOINHERIT 0x40000 #define _FDIRECT 0x80000 #define _FNOFOLLOW 0x100000 #define _FDIRECTORY 0x200000 #define _FEXECSRCH 0x400000 #if defined (__CYGWIN__) #define _FTMPFILE 0x800000 #define _FNOATIME 0x1000000 #define _FPATH 0x2000000 #endif #define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR) /* * Flag values for open(2) and fcntl(2) * The kernel adds 1 to the open modes to turn it into some * combination of FREAD and FWRITE. */ #define O_RDONLY 0 /* +1 == FREAD */ #define O_WRONLY 1 /* +1 == FWRITE */ #define O_RDWR 2 /* +1 == FREAD|FWRITE */ #define O_APPEND _FAPPEND #define O_CREAT _FCREAT #define O_TRUNC _FTRUNC #define O_EXCL _FEXCL #define O_SYNC _FSYNC /* O_NDELAY _FNDELAY set in include/fcntl.h */ /* O_NDELAY _FNBIO set in include/fcntl.h */ #define O_NONBLOCK _FNONBLOCK #define O_NOCTTY _FNOCTTY /* POSIX-1.2008 specific flags */ #if __POSIX_VISIBLE >= 200809 #define O_CLOEXEC _FNOINHERIT #define O_NOFOLLOW _FNOFOLLOW #define O_DIRECTORY _FDIRECTORY #define O_EXEC _FEXECSRCH #define O_SEARCH _FEXECSRCH #endif #if __BSD_VISIBLE #define O_DIRECT _FDIRECT #endif #if defined (__CYGWIN__) #define O_BINARY _FBINARY #define O_TEXT _FTEXT #define O_DSYNC _FSYNC #define O_RSYNC _FSYNC /* Linux-specific flags */ #if __GNU_VISIBLE #define O_TMPFILE _FTMPFILE #define O_NOATIME _FNOATIME #define O_PATH _FPATH #endif #endif #if __MISC_VISIBLE /* * Flags that work for fcntl(fd, F_SETFL, FXXXX) */ #define FAPPEND _FAPPEND #define FSYNC _FSYNC #define FASYNC _FASYNC #define FNBIO _FNBIO #define FNONBIO _FNONBLOCK /* XXX fix to be NONBLOCK everywhere */ #define FNDELAY _FNDELAY /* * Flags that are disallowed for fcntl's (FCNTLCANT); * used for opens, internal state, or locking. */ #define FREAD _FREAD #define FWRITE _FWRITE #define FMARK _FMARK #define FDEFER _FDEFER #define FSHLOCK _FSHLOCK #define FEXLOCK _FEXLOCK /* * The rest of the flags, used only for opens */ #define FOPEN _FOPEN #define FCREAT _FCREAT #define FTRUNC _FTRUNC #define FEXCL _FEXCL #define FNOCTTY _FNOCTTY #endif /* __MISC_VISIBLE */ #if __BSD_VISIBLE #define FNONBLOCK _FNONBLOCK #endif /* __BSD_VISIBLE */ /* XXX close on exec request; must match UF_EXCLOSE in user.h */ #define FD_CLOEXEC 1 /* posix */ /* fcntl(2) requests */ #define F_DUPFD 0 /* Duplicate fildes */ #define F_GETFD 1 /* Get fildes flags (close on exec) */ #define F_SETFD 2 /* Set fildes flags (close on exec) */ #define F_GETFL 3 /* Get file flags */ #define F_SETFL 4 /* Set file flags */ #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 #define F_GETOWN 5 /* Get owner - for ASYNC */ #define F_SETOWN 6 /* Set owner - for ASYNC */ #endif /* __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 */ #define F_GETLK 7 /* Get record-locking information */ #define F_SETLK 8 /* Set or Clear a record-lock (Non-Blocking) */ #define F_SETLKW 9 /* Set or Clear a record-lock (Blocking) */ #if __MISC_VISIBLE #define F_RGETLK 10 /* Test a remote lock to see if it is blocked */ #define F_RSETLK 11 /* Set or unlock a remote lock */ #define F_CNVT 12 /* Convert a fhandle to an open fd */ #define F_RSETLKW 13 /* Set or Clear remote record-lock(Blocking) */ #endif /* __MISC_VISIBLE */ #if __POSIX_VISIBLE >= 200809 #define F_DUPFD_CLOEXEC 14 /* As F_DUPFD, but set close-on-exec flag */ #endif /* fcntl(2) flags (l_type field of flock structure) */ #define F_RDLCK 1 /* read lock */ #define F_WRLCK 2 /* write lock */ #define F_UNLCK 3 /* remove lock(s) */ #if __MISC_VISIBLE #define F_UNLKSYS 4 /* remove remote locks for a given system */ #endif /* __MISC_VISIBLE */ #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200809 /* Special descriptor value to denote the cwd in calls to openat(2) etc. */ #define AT_FDCWD -2 /* Flag values for faccessat2) et al. */ #define AT_EACCESS 1 #define AT_SYMLINK_NOFOLLOW 2 #define AT_SYMLINK_FOLLOW 4 #define AT_REMOVEDIR 8 #if __GNU_VISIBLE #define AT_EMPTY_PATH 16 #endif #endif #if __BSD_VISIBLE /* lock operations for flock(2) */ #define LOCK_SH 0x01 /* shared file lock */ #define LOCK_EX 0x02 /* exclusive file lock */ #define LOCK_NB 0x04 /* don't block when locking */ #define LOCK_UN 0x08 /* unlock file */ #endif /*#include */ #ifndef __CYGWIN__ /* file segment locking set data type - information passed to system by user */ struct flock { short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */ short l_whence; /* flag to choose starting offset */ long l_start; /* relative offset, in bytes */ long l_len; /* length, in bytes; 0 means lock to EOF */ short l_pid; /* returned with F_GETLK */ short l_xxx; /* reserved for future use */ }; #endif /* __CYGWIN__ */ #if __MISC_VISIBLE /* extended file segment locking set data type */ struct eflock { short l_type; /* F_RDLCK, F_WRLCK, or F_UNLCK */ short l_whence; /* flag to choose starting offset */ long l_start; /* relative offset, in bytes */ long l_len; /* length, in bytes; 0 means lock to EOF */ short l_pid; /* returned with F_GETLK */ short l_xxx; /* reserved for future use */ long l_rpid; /* Remote process id wanting this lock */ long l_rsys; /* Remote system id wanting this lock */ }; #endif /* __MISC_VISIBLE */ #include #include /* sigh. for the mode bits for open/creat */ extern int open (const char *, int, ...); #if __ATFILE_VISIBLE extern int openat (int, const char *, int, ...); #endif extern int creat (const char *, mode_t); extern int fcntl (int, int, ...); #if __BSD_VISIBLE extern int flock (int, int); #endif #if __GNU_VISIBLE #include extern int futimesat (int, const char *, const struct timeval *); #endif /* Provide _ prototypes for functions provided by some versions of newlib. */ #ifdef _COMPILING_NEWLIB extern int _open (const char *, int, ...); extern int _fcntl (int, int, ...); #ifdef __LARGE64_FILES extern int _open64 (const char *, int, ...); #endif #endif #ifdef __cplusplus } #endif #endif /* !_SYS__DEFAULT_FCNTL_H_ */ 07070100000056000081a4000000000000000000000001630c8dd50000166d000000000000000000000000000000000000002700000000./usr/nvptx-none/include/sys/_intsup.h/* * Copyright (c) 2004, 2005 by * Ralf Corsepius, Ulm/Germany. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ #ifndef _SYS__INTSUP_H #define _SYS__INTSUP_H #include #if __GNUC_PREREQ (3, 2) /* gcc > 3.2 implicitly defines the values we are interested */ #define __STDINT_EXP(x) __##x##__ #else #define __STDINT_EXP(x) x #include #endif /* Determine how intptr_t and intN_t fastN_t and leastN_t are defined by gcc for this target. This is used to determine the correct printf() constant in inttypes.h and other constants in stdint.h. So we end up with ?(signed|unsigned) char == 0 ?(signed|unsigned) short == 1 ?(signed|unsigned) int == 2 ?(signed|unsigned) short int == 3 ?(signed|unsigned) long == 4 ?(signed|unsigned) long int == 6 ?(signed|unsigned) long long == 8 ?(signed|unsigned) long long int == 10 */ #pragma push_macro("signed") #pragma push_macro("unsigned") #pragma push_macro("char") #pragma push_macro("short") #pragma push_macro("__int20") #pragma push_macro("__int20__") #pragma push_macro("int") #pragma push_macro("long") #undef signed #undef unsigned #undef char #undef short #undef int #undef __int20 #undef __int20__ #undef long #define signed +0 #define unsigned +0 #define char +0 #define short +1 #define __int20 +2 #define __int20__ +2 #define int +2 #define long +4 #if (__INTPTR_TYPE__ == 8 || __INTPTR_TYPE__ == 10) #define _INTPTR_EQ_LONGLONG #elif (__INTPTR_TYPE__ == 4 || __INTPTR_TYPE__ == 6) #define _INTPTR_EQ_LONG /* Note - the tests for _INTPTR_EQ_INT and _INTPTR_EQ_SHORT are currently redundant as the values are not used. But one day they may be needed and so the tests remain. */ #elif __INTPTR_TYPE__ == 2 #define _INTPTR_EQ_INT #elif (__INTPTR_TYPE__ == 1 || __INTPTR_TYPE__ == 3) #define _INTPTR_EQ_SHORT #else #error "Unable to determine type definition of intptr_t" #endif #if (__INT32_TYPE__ == 4 || __INT32_TYPE__ == 6) #define _INT32_EQ_LONG #elif __INT32_TYPE__ == 2 /* Nothing to define because int32_t is safe to print as an int. */ #else #error "Unable to determine type definition of int32_t" #endif #if (__INT8_TYPE__ == 0) #define __INT8 "hh" #elif (__INT8_TYPE__ == 1 || __INT8_TYPE__ == 3) #define __INT8 "h" #elif (__INT8_TYPE__ == 2) #define __INT8 #elif (__INT8_TYPE__ == 4 || __INT8_TYPE__ == 6) #define __INT8 "l" #elif (__INT8_TYPE__ == 8 || __INT8_TYPE__ == 10) #define __INT8 "ll" #endif #if (__INT16_TYPE__ == 1 || __INT16_TYPE__ == 3) #define __INT16 "h" #elif (__INT16_TYPE__ == 2) #define __INT16 #elif (__INT16_TYPE__ == 4 || __INT16_TYPE__ == 6) #define __INT16 "l" #elif (__INT16_TYPE__ == 8 || __INT16_TYPE__ == 10) #define __INT16 "ll" #endif #if (__INT32_TYPE__ == 2) #define __INT32 #elif (__INT32_TYPE__ == 4 || __INT32_TYPE__ == 6) #define __INT32 "l" #elif (__INT32_TYPE__ == 8 || __INT32_TYPE__ == 10) #define __INT32 "ll" #endif #if (__INT64_TYPE__ == 2) #define __INT64 #elif (__INT64_TYPE__ == 4 || __INT64_TYPE__ == 6) #define __INT64 "l" #elif (__INT64_TYPE__ == 8 || __INT64_TYPE__ == 10) #define __INT64 "ll" #endif #if (__INT_FAST8_TYPE__ == 0) #define __FAST8 "hh" #elif (__INT_FAST8_TYPE__ == 1 || __INT_FAST8_TYPE__ == 3) #define __FAST8 "h" #elif (__INT_FAST8_TYPE__ == 2) #define __FAST8 #elif (__INT_FAST8_TYPE__ == 4 || __INT_FAST8_TYPE__ == 6) #define __FAST8 "l" #elif (__INT_FAST8_TYPE__ == 8 || __INT_FAST8_TYPE__ == 10) #define __FAST8 "ll" #endif #if (__INT_FAST16_TYPE__ == 1 || __INT_FAST16_TYPE__ == 3) #define __FAST16 "h" #elif (__INT_FAST16_TYPE__ == 2) #define __FAST16 #elif (__INT_FAST16_TYPE__ == 4 || __INT_FAST16_TYPE__ == 6) #define __FAST16 "l" #elif (__INT_FAST16_TYPE__ == 8 || __INT_FAST16_TYPE__ == 10) #define __FAST16 "ll" #endif #if (__INT_FAST32_TYPE__ == 2) #define __FAST32 #elif (__INT_FAST32_TYPE__ == 4 || __INT_FAST32_TYPE__ == 6) #define __FAST32 "l" #elif (__INT_FAST32_TYPE__ == 8 || __INT_FAST32_TYPE__ == 10) #define __FAST32 "ll" #endif #if (__INT_FAST64_TYPE__ == 2) #define __FAST64 #elif (__INT_FAST64_TYPE__ == 4 || __INT_FAST64_TYPE__ == 6) #define __FAST64 "l" #elif (__INT_FAST64_TYPE__ == 8 || __INT_FAST64_TYPE__ == 10) #define __FAST64 "ll" #endif #if (__INT_LEAST8_TYPE__ == 0) #define __LEAST8 "hh" #elif (__INT_LEAST8_TYPE__ == 1 || __INT_LEAST8_TYPE__ == 3) #define __LEAST8 "h" #elif (__INT_LEAST8_TYPE__ == 2) #define __LEAST8 #elif (__INT_LEAST8_TYPE__ == 4 || __INT_LEAST8_TYPE__ == 6) #define __LEAST8 "l" #elif (__INT_LEAST8_TYPE__ == 8 || __INT_LEAST8_TYPE__ == 10) #define __LEAST8 "ll" #endif #if (__INT_LEAST16_TYPE__ == 1 || __INT_LEAST16_TYPE__ == 3) #define __LEAST16 "h" #elif (__INT_LEAST16_TYPE__ == 2) #define __LEAST16 #elif (__INT_LEAST16_TYPE__ == 4 || __INT_LEAST16_TYPE__ == 6) #define __LEAST16 "l" #elif (__INT_LEAST16_TYPE__ == 8 || __INT_LEAST16_TYPE__ == 10) #define __LEAST16 "ll" #endif #if (__INT_LEAST32_TYPE__ == 2) #define __LEAST32 #elif (__INT_LEAST32_TYPE__ == 4 || __INT_LEAST32_TYPE__ == 6) #define __LEAST32 "l" #elif (__INT_LEAST32_TYPE__ == 8 || __INT_LEAST32_TYPE__ == 10) #define __LEAST32 "ll" #endif #if (__INT_LEAST64_TYPE__ == 2) #define __LEAST64 #elif (__INT_LEAST64_TYPE__ == 4 || __INT_LEAST64_TYPE__ == 6) #define __LEAST64 "l" #elif (__INT_LEAST64_TYPE__ == 8 || __INT_LEAST64_TYPE__ == 10) #define __LEAST64 "ll" #endif #undef signed #undef unsigned #undef char #undef short #undef int #undef long #pragma pop_macro("signed") #pragma pop_macro("unsigned") #pragma pop_macro("char") #pragma pop_macro("short") #pragma pop_macro("__int20") #pragma pop_macro("__int20__") #pragma pop_macro("int") #pragma pop_macro("long") #endif /* _SYS__INTSUP_H */ 07070100000057000081a4000000000000000000000001630c8dd5000000f7000000000000000000000000000000000000002700000000./usr/nvptx-none/include/sys/_locale.h/* Definition of opaque POSIX-1.2008 type locale_t for userspace. */ #ifndef _SYS__LOCALE_H #define _SYS__LOCALE_H #include #include struct __locale_t; typedef struct __locale_t *locale_t; #endif /* _SYS__LOCALE_H */ 07070100000058000081a4000000000000000000000001630c8dd500001d56000000000000000000000000000000000000002d00000000./usr/nvptx-none/include/sys/_pthreadtypes.h/* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2013, 2015. * On-Line Applications Research Corporation (OAR). * * Permission to use, copy, modify, and distribute this software for any * purpose without fee is hereby granted, provided that this entire notice * is included in all copies of any software which is or includes a copy * or modification of this software. * * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. */ #ifndef _SYS__PTHREADTYPES_H_ #define _SYS__PTHREADTYPES_H_ #if defined(_POSIX_THREADS) || __POSIX_VISIBLE >= 199506 #include /* * 2.5 Primitive System Data Types, P1003.1c/D10, p. 19. */ #if defined(__XMK__) typedef unsigned int pthread_t; /* identify a thread */ #else typedef __uint32_t pthread_t; /* identify a thread */ #endif /* P1003.1c/D10, p. 118-119 */ #define PTHREAD_SCOPE_PROCESS 0 #define PTHREAD_SCOPE_SYSTEM 1 /* P1003.1c/D10, p. 111 */ #define PTHREAD_INHERIT_SCHED 1 /* scheduling policy and associated */ /* attributes are inherited from */ /* the calling thread. */ #define PTHREAD_EXPLICIT_SCHED 2 /* set from provided attribute object */ /* P1003.1c/D10, p. 141 */ #define PTHREAD_CREATE_DETACHED 0 #define PTHREAD_CREATE_JOINABLE 1 #if defined(__XMK__) typedef struct pthread_attr_s { int contentionscope; struct sched_param schedparam; int detachstate; void *stackaddr; size_t stacksize; } pthread_attr_t; #define PTHREAD_STACK_MIN 200 #else /* !defined(__XMK__) */ typedef struct { int is_initialized; void *stackaddr; int stacksize; int contentionscope; int inheritsched; int schedpolicy; struct sched_param schedparam; /* P1003.4b/D8, p. 54 adds cputime_clock_allowed attribute. */ #if defined(_POSIX_THREAD_CPUTIME) int cputime_clock_allowed; /* see time.h */ #endif int detachstate; } pthread_attr_t; #endif /* !defined(__XMK__) */ #if defined(_POSIX_THREAD_PROCESS_SHARED) /* NOTE: P1003.1c/D10, p. 81 defines following values for process_shared. */ #define PTHREAD_PROCESS_PRIVATE 0 /* visible within only the creating process */ #define PTHREAD_PROCESS_SHARED 1 /* visible too all processes with access to */ /* the memory where the resource is */ /* located */ #endif #if defined(_POSIX_THREAD_PRIO_PROTECT) /* Mutexes */ /* Values for blocking protocol. */ #define PTHREAD_PRIO_NONE 0 #define PTHREAD_PRIO_INHERIT 1 #define PTHREAD_PRIO_PROTECT 2 #endif #if defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) /* Values for mutex type */ /* The following defines are part of the X/Open System Interface (XSI). */ /* * This type of mutex does not detect deadlock. A thread attempting to * relock this mutex without first unlocking it shall deadlock. Attempting * to unlock a mutex locked by a different thread results in undefined * behavior. Attempting to unlock an unlocked mutex results in undefined * behavior. */ #define PTHREAD_MUTEX_NORMAL 0 /* * A thread attempting to relock this mutex without first unlocking * it shall succeed in locking the mutex. The relocking deadlock which * can occur with mutexes of type PTHREAD_MUTEX_NORMAL cannot occur with * this type of mutex. Multiple locks of this mutex shall require the * same number of unlocks to release the mutex before another thread can * acquire the mutex. A thread attempting to unlock a mutex which another * thread has locked shall return with an error. A thread attempting to * unlock an unlocked mutex shall return with an error. */ #define PTHREAD_MUTEX_RECURSIVE 1 /* * This type of mutex provides error checking. A thread attempting * to relock this mutex without first unlocking it shall return with an * error. A thread attempting to unlock a mutex which another thread has * locked shall return with an error. A thread attempting to unlock an * unlocked mutex shall return with an error. */ #define PTHREAD_MUTEX_ERRORCHECK 2 /* * Attempting to recursively lock a mutex of this type results * in undefined behavior. Attempting to unlock a mutex of this type * which was not locked by the calling thread results in undefined * behavior. Attempting to unlock a mutex of this type which is not locked * results in undefined behavior. An implementation may map this mutex to * one of the other mutex types. */ #define PTHREAD_MUTEX_DEFAULT 3 #endif /* !defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) */ #if defined(__XMK__) typedef unsigned int pthread_mutex_t; /* identify a mutex */ typedef struct { int type; } pthread_mutexattr_t; #else /* !defined(__XMK__) */ typedef __uint32_t pthread_mutex_t; /* identify a mutex */ typedef struct { int is_initialized; #if defined(_POSIX_THREAD_PROCESS_SHARED) int process_shared; /* allow mutex to be shared amongst processes */ #endif #if defined(_POSIX_THREAD_PRIO_PROTECT) int prio_ceiling; int protocol; #endif #if defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) int type; #endif int recursive; } pthread_mutexattr_t; #endif /* !defined(__XMK__) */ #define _PTHREAD_MUTEX_INITIALIZER ((pthread_mutex_t) 0xFFFFFFFF) /* Condition Variables */ typedef __uint32_t pthread_cond_t; /* identify a condition variable */ #define _PTHREAD_COND_INITIALIZER ((pthread_cond_t) 0xFFFFFFFF) typedef struct { int is_initialized; clock_t clock; /* specifiy clock for timeouts */ #if defined(_POSIX_THREAD_PROCESS_SHARED) int process_shared; /* allow this to be shared amongst processes */ #endif } pthread_condattr_t; /* a condition attribute object */ /* Keys */ typedef __uint32_t pthread_key_t; /* thread-specific data keys */ typedef struct { int is_initialized; /* is this structure initialized? */ int init_executed; /* has the initialization routine been run? */ } pthread_once_t; /* dynamic package initialization */ #define _PTHREAD_ONCE_INIT { 1, 0 } /* is initialized and not run */ #endif /* defined(_POSIX_THREADS) || __POSIX_VISIBLE >= 199506 */ /* POSIX Barrier Types */ #if defined(_POSIX_BARRIERS) typedef __uint32_t pthread_barrier_t; /* POSIX Barrier Object */ typedef struct { int is_initialized; /* is this structure initialized? */ #if defined(_POSIX_THREAD_PROCESS_SHARED) int process_shared; /* allow this to be shared amongst processes */ #endif } pthread_barrierattr_t; #endif /* defined(_POSIX_BARRIERS) */ /* POSIX Spin Lock Types */ #if defined(_POSIX_SPIN_LOCKS) typedef __uint32_t pthread_spinlock_t; /* POSIX Spin Lock Object */ #endif /* defined(_POSIX_SPIN_LOCKS) */ /* POSIX Reader/Writer Lock Types */ #if defined(_POSIX_READER_WRITER_LOCKS) typedef __uint32_t pthread_rwlock_t; /* POSIX RWLock Object */ #define _PTHREAD_RWLOCK_INITIALIZER ((pthread_rwlock_t) 0xFFFFFFFF) typedef struct { int is_initialized; /* is this structure initialized? */ #if defined(_POSIX_THREAD_PROCESS_SHARED) int process_shared; /* allow this to be shared amongst processes */ #endif } pthread_rwlockattr_t; #endif /* defined(_POSIX_READER_WRITER_LOCKS) */ #endif /* ! _SYS__PTHREADTYPES_H_ */ 07070100000059000081a4000000000000000000000001630c8dd500000827000000000000000000000000000000000000002700000000./usr/nvptx-none/include/sys/_sigset.h/*- * Copyright (c) 1982, 1986, 1989, 1991, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)signal.h 8.4 (Berkeley) 5/4/95 * $FreeBSD$ */ #ifndef _SYS__SIGSET_H_ #define _SYS__SIGSET_H_ typedef unsigned long __sigset_t; #endif /* !_SYS__SIGSET_H_ */ 0707010000005a000081a4000000000000000000000001630c8dd500000720000000000000000000000000000000000000002700000000./usr/nvptx-none/include/sys/_stdint.h/* * Copyright (c) 2004, 2005 by * Ralf Corsepius, Ulm/Germany. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ #ifndef _SYS__STDINT_H #define _SYS__STDINT_H #include #ifdef __cplusplus extern "C" { #endif #ifdef ___int8_t_defined #ifndef _INT8_T_DECLARED typedef __int8_t int8_t ; #define _INT8_T_DECLARED #endif #ifndef _UINT8_T_DECLARED typedef __uint8_t uint8_t ; #define _UINT8_T_DECLARED #endif #define __int8_t_defined 1 #endif /* ___int8_t_defined */ #ifdef ___int16_t_defined #ifndef _INT16_T_DECLARED typedef __int16_t int16_t ; #define _INT16_T_DECLARED #endif #ifndef _UINT16_T_DECLARED typedef __uint16_t uint16_t ; #define _UINT16_T_DECLARED #endif #define __int16_t_defined 1 #endif /* ___int16_t_defined */ #ifdef ___int32_t_defined #ifndef _INT32_T_DECLARED typedef __int32_t int32_t ; #define _INT32_T_DECLARED #endif #ifndef _UINT32_T_DECLARED typedef __uint32_t uint32_t ; #define _UINT32_T_DECLARED #endif #define __int32_t_defined 1 #endif /* ___int32_t_defined */ #ifdef ___int64_t_defined #ifndef _INT64_T_DECLARED typedef __int64_t int64_t ; #define _INT64_T_DECLARED #endif #ifndef _UINT64_T_DECLARED typedef __uint64_t uint64_t ; #define _UINT64_T_DECLARED #endif #define __int64_t_defined 1 #endif /* ___int64_t_defined */ #ifndef _INTMAX_T_DECLARED typedef __intmax_t intmax_t; #define _INTMAX_T_DECLARED #endif #ifndef _UINTMAX_T_DECLARED typedef __uintmax_t uintmax_t; #define _UINTMAX_T_DECLARED #endif #ifndef _INTPTR_T_DECLARED typedef __intptr_t intptr_t; #define _INTPTR_T_DECLARED #endif #ifndef _UINTPTR_T_DECLARED typedef __uintptr_t uintptr_t; #define _UINTPTR_T_DECLARED #endif #ifdef __cplusplus } #endif #endif /* _SYS__STDINT_H */ 0707010000005b000081a4000000000000000000000001630c8dd50000087d000000000000000000000000000000000000002900000000./usr/nvptx-none/include/sys/_timespec.h/*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1982, 1986, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)time.h 8.5 (Berkeley) 5/4/95 * from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp * $FreeBSD: head/sys/sys/_timespec.h 326023 2017-11-20 19:43:44Z pfg $ */ #ifndef _SYS__TIMESPEC_H_ #define _SYS__TIMESPEC_H_ #include #if !defined(__time_t_defined) && !defined(_TIME_T_DECLARED) typedef _TIME_T_ time_t; #define __time_t_defined #define _TIME_T_DECLARED #endif struct timespec { time_t tv_sec; /* seconds */ long tv_nsec; /* and nanoseconds */ }; #endif /* !_SYS__TIMESPEC_H_ */ 0707010000005c000081a4000000000000000000000001630c8dd50000088c000000000000000000000000000000000000002800000000./usr/nvptx-none/include/sys/_timeval.h/*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright (c) 2002 Mike Barcroft * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD: head/sys/sys/_timeval.h 326256 2017-11-27 15:01:59Z pfg $ */ #ifndef _SYS__TIMEVAL_H_ #define _SYS__TIMEVAL_H_ #include #ifndef _SUSECONDS_T_DECLARED typedef __suseconds_t suseconds_t; #define _SUSECONDS_T_DECLARED #endif #if !defined(__time_t_defined) && !defined(_TIME_T_DECLARED) typedef _TIME_T_ time_t; #define __time_t_defined #define _TIME_T_DECLARED #endif /* This define is also used outside of Newlib, e.g. in MinGW-w64 */ #ifndef _TIMEVAL_DEFINED #define _TIMEVAL_DEFINED /* * Structure returned by gettimeofday(2) system call, and used in other calls. */ struct timeval { time_t tv_sec; /* seconds */ suseconds_t tv_usec; /* and microseconds */ }; #endif /* _TIMEVAL_DEFINED */ #endif /* !_SYS__TIMEVAL_H_ */ 0707010000005d000081a4000000000000000000000001630c8dd5000013a3000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/_types.h/* ANSI C namespace clean utility typedefs */ /* This file defines various typedefs needed by the system calls that support the C library. Basically, they're just the POSIX versions with an '_' prepended. Targets shall use to define their own internal types if desired. There are three define patterns used for type definitions. Lets assume xyz_t is a user type. The internal type definition uses __machine_xyz_t_defined. It is defined by to disable a default definition in . It must not be used in other files. User type definitions are guarded by __xyz_t_defined in glibc and _XYZ_T_DECLARED in BSD compatible systems. */ #ifndef _SYS__TYPES_H #define _SYS__TYPES_H #define __need_size_t #define __need_wint_t #include #include #include #include #ifndef __machine_blkcnt_t_defined typedef long __blkcnt_t; #endif #ifndef __machine_blksize_t_defined typedef long __blksize_t; #endif #ifndef __machine_fsblkcnt_t_defined typedef __uint64_t __fsblkcnt_t; #endif #ifndef __machine_fsfilcnt_t_defined typedef __uint32_t __fsfilcnt_t; #endif #ifndef __machine_off_t_defined typedef long _off_t; #endif #if defined(__XMK__) typedef signed char __pid_t; #else typedef int __pid_t; #endif #ifndef __machine_dev_t_defined typedef short __dev_t; #endif #ifndef __machine_uid_t_defined typedef unsigned short __uid_t; #endif #ifndef __machine_gid_t_defined typedef unsigned short __gid_t; #endif #ifndef __machine_id_t_defined typedef __uint32_t __id_t; #endif #ifndef __machine_ino_t_defined #if (defined(__i386__) && (defined(GO32) || defined(__MSDOS__))) || \ defined(__sparc__) || defined(__SPU__) typedef unsigned long __ino_t; #else typedef unsigned short __ino_t; #endif #endif #ifndef __machine_mode_t_defined #if defined(__i386__) && (defined(GO32) || defined(__MSDOS__)) typedef int __mode_t; #else #if defined(__sparc__) && !defined(__sparc_v9__) #ifdef __svr4__ typedef unsigned long __mode_t; #else typedef unsigned short __mode_t; #endif #else typedef __uint32_t __mode_t; #endif #endif #endif #ifndef __machine_off64_t_defined __extension__ typedef long long _off64_t; #endif #if defined(__CYGWIN__) && !defined(__LP64__) typedef _off64_t __off_t; #else typedef _off_t __off_t; #endif typedef _off64_t __loff_t; #ifndef __machine_key_t_defined typedef long __key_t; #endif /* * We need fpos_t for the following, but it doesn't have a leading "_", * so we use _fpos_t instead. */ #ifndef __machine_fpos_t_defined typedef long _fpos_t; /* XXX must match off_t in */ /* (and must be `long' for now) */ #endif #ifdef __LARGE64_FILES #ifndef __machine_fpos64_t_defined typedef _off64_t _fpos64_t; #endif #endif /* Defined by GCC provided */ #undef __size_t #ifndef __machine_size_t_defined #ifdef __SIZE_TYPE__ typedef __SIZE_TYPE__ __size_t; #else #if defined(__INT_MAX__) && __INT_MAX__ == 2147483647 typedef unsigned int __size_t; #else typedef unsigned long __size_t; #endif #endif #endif #ifndef __machine_ssize_t_defined #ifdef __SIZE_TYPE__ /* If __SIZE_TYPE__ is defined (gcc) we define ssize_t based on size_t. We simply change "unsigned" to "signed" for this single definition to make sure ssize_t and size_t only differ by their signedness. */ #define unsigned signed typedef __SIZE_TYPE__ _ssize_t; #undef unsigned #else #if defined(__INT_MAX__) && __INT_MAX__ == 2147483647 typedef int _ssize_t; #else typedef long _ssize_t; #endif #endif #endif typedef _ssize_t __ssize_t; #ifndef __machine_mbstate_t_defined /* Conversion state information. */ typedef struct { int __count; union { wint_t __wch; unsigned char __wchb[4]; } __value; /* Value so far. */ } _mbstate_t; #endif #ifndef __machine_iconv_t_defined /* Iconv descriptor type */ typedef void *_iconv_t; #endif #ifndef __machine_clock_t_defined #define _CLOCK_T_ unsigned long /* clock() */ #endif typedef _CLOCK_T_ __clock_t; #if defined(_USE_LONG_TIME_T) || __LONG_MAX__ > 0x7fffffffL #define _TIME_T_ long #else #define _TIME_T_ __int_least64_t #endif typedef _TIME_T_ __time_t; #ifndef __machine_clockid_t_defined #define _CLOCKID_T_ unsigned long #endif typedef _CLOCKID_T_ __clockid_t; #define _TIMER_T_ unsigned long typedef _TIMER_T_ __timer_t; #ifndef __machine_sa_family_t_defined typedef __uint8_t __sa_family_t; #endif #ifndef __machine_socklen_t_defined typedef __uint32_t __socklen_t; #endif typedef int __nl_item; typedef unsigned short __nlink_t; typedef long __suseconds_t; /* microseconds (signed) */ typedef unsigned long __useconds_t; /* microseconds (unsigned) */ /* * Must be identical to the __GNUCLIKE_BUILTIN_VAALIST definition in * . The must not be included here to avoid cyclic * header dependencies. */ #if __GNUC_MINOR__ > 95 || __GNUC__ >= 3 typedef __builtin_va_list __va_list; #else typedef char * __va_list; #endif #endif /* _SYS__TYPES_H */ 0707010000005e000081a4000000000000000000000001630c8dd50000021c000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/sys/_tz_structs.h#ifndef _SYS__TZ_STRUCTS_H_ #define _SYS__TZ_STRUCTS_H_ typedef struct __tzrule_struct { char ch; int m; /* Month of year if ch=M */ int n; /* Week of month if ch=M */ int d; /* Day of week if ch=M, day of year if ch=J or ch=D */ int s; /* Time of day in seconds */ time_t change; long offset; /* Match type of _timezone. */ } __tzrule_type; typedef struct __tzinfo_struct { int __tznorth; int __tzyear; __tzrule_type __tzrule[2]; } __tzinfo_type; __tzinfo_type *__gettzinfo (void); #endif /* _SYS__TZ_STRUCTS_H_ */ 0707010000005f000081a4000000000000000000000001630c8dd500005cba000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/cdefs.h/* libc/sys/linux/sys/cdefs.h - Helper macros for K&R vs. ANSI C compat. */ /* Written 2000 by Werner Almesberger */ /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1991, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Berkeley Software Design, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)cdefs.h 8.8 (Berkeley) 1/9/95 * $FreeBSD$ */ #ifndef _SYS_CDEFS_H_ #define _SYS_CDEFS_H_ #include #include #include #define __PMT(args) args #define __DOTS , ... #define __THROW #ifdef __GNUC__ # define __ASMNAME(cname) __XSTRING (__USER_LABEL_PREFIX__) cname #endif #define __ptr_t void * #define __long_double_t long double #define __attribute_malloc__ #define __attribute_pure__ #define __attribute_format_strfmon__(a,b) #define __flexarr [0] #ifndef __BOUNDED_POINTERS__ # define __bounded /* nothing */ # define __unbounded /* nothing */ # define __ptrvalue /* nothing */ #endif /* * Testing against Clang-specific extensions. */ #ifndef __has_attribute #define __has_attribute(x) 0 #endif #ifndef __has_extension #define __has_extension __has_feature #endif #ifndef __has_feature #define __has_feature(x) 0 #endif #ifndef __has_include #define __has_include(x) 0 #endif #ifndef __has_builtin #define __has_builtin(x) 0 #endif #if defined(__cplusplus) #define __BEGIN_DECLS extern "C" { #define __END_DECLS } #else #define __BEGIN_DECLS #define __END_DECLS #endif /* * This code has been put in place to help reduce the addition of * compiler specific defines in FreeBSD code. It helps to aid in * having a compiler-agnostic source tree. */ #if defined(__GNUC__) || defined(__INTEL_COMPILER) #if __GNUC__ >= 3 || defined(__INTEL_COMPILER) #define __GNUCLIKE_ASM 3 #define __GNUCLIKE_MATH_BUILTIN_CONSTANTS #else #define __GNUCLIKE_ASM 2 #endif #define __GNUCLIKE___TYPEOF 1 #define __GNUCLIKE___OFFSETOF 1 #define __GNUCLIKE___SECTION 1 #ifndef __INTEL_COMPILER #define __GNUCLIKE_CTOR_SECTION_HANDLING 1 #endif #define __GNUCLIKE_BUILTIN_CONSTANT_P 1 #if defined(__INTEL_COMPILER) && defined(__cplusplus) && \ __INTEL_COMPILER < 800 #undef __GNUCLIKE_BUILTIN_CONSTANT_P #endif #if (__GNUC_MINOR__ > 95 || __GNUC__ >= 3) #define __GNUCLIKE_BUILTIN_VARARGS 1 #define __GNUCLIKE_BUILTIN_STDARG 1 #define __GNUCLIKE_BUILTIN_VAALIST 1 #endif #if defined(__GNUC__) #define __GNUC_VA_LIST_COMPATIBILITY 1 #endif /* * Compiler memory barriers, specific to gcc and clang. */ #if defined(__GNUC__) #define __compiler_membar() __asm __volatile(" " : : : "memory") #endif #ifndef __INTEL_COMPILER #define __GNUCLIKE_BUILTIN_NEXT_ARG 1 #define __GNUCLIKE_MATH_BUILTIN_RELOPS #endif #define __GNUCLIKE_BUILTIN_MEMCPY 1 /* XXX: if __GNUC__ >= 2: not tested everywhere originally, where replaced */ #define __CC_SUPPORTS_INLINE 1 #define __CC_SUPPORTS___INLINE 1 #define __CC_SUPPORTS___INLINE__ 1 #define __CC_SUPPORTS___FUNC__ 1 #define __CC_SUPPORTS_WARNING 1 #define __CC_SUPPORTS_VARADIC_XXX 1 /* see varargs.h */ #define __CC_SUPPORTS_DYNAMIC_ARRAY_INIT 1 #endif /* __GNUC__ || __INTEL_COMPILER */ /* * The __CONCAT macro is used to concatenate parts of symbol names, e.g. * with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo. * The __CONCAT macro is a bit tricky to use if it must work in non-ANSI * mode -- there must be no spaces between its arguments, and for nested * __CONCAT's, all the __CONCAT's must be at the left. __CONCAT can also * concatenate double-quoted strings produced by the __STRING macro, but * this only works with ANSI C. * * __XSTRING is like __STRING, but it expands any macros in its argument * first. It is only available with ANSI C. */ #if defined(__STDC__) || defined(__cplusplus) #define __P(protos) protos /* full-blown ANSI C */ #define __CONCAT1(x,y) x ## y #define __CONCAT(x,y) __CONCAT1(x,y) #define __STRING(x) #x /* stringify without expanding x */ #define __XSTRING(x) __STRING(x) /* expand x, then stringify */ #define __const const /* define reserved names to standard */ #define __signed signed #define __volatile volatile #if defined(__cplusplus) #define __inline inline /* convert to C++ keyword */ #else #if !(defined(__CC_SUPPORTS___INLINE)) #define __inline /* delete GCC keyword */ #endif /* ! __CC_SUPPORTS___INLINE */ #endif /* !__cplusplus */ #else /* !(__STDC__ || __cplusplus) */ #define __P(protos) () /* traditional C preprocessor */ #define __CONCAT(x,y) x/**/y #define __STRING(x) "x" #if !defined(__CC_SUPPORTS___INLINE) #define __const /* delete pseudo-ANSI C keywords */ #define __inline #define __signed #define __volatile /* * In non-ANSI C environments, new programs will want ANSI-only C keywords * deleted from the program and old programs will want them left alone. * When using a compiler other than gcc, programs using the ANSI C keywords * const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS. * When using "gcc -traditional", we assume that this is the intent; if * __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone. */ #ifndef NO_ANSI_KEYWORDS #define const /* delete ANSI C keywords */ #define inline #define signed #define volatile #endif /* !NO_ANSI_KEYWORDS */ #endif /* !__CC_SUPPORTS___INLINE */ #endif /* !(__STDC__ || __cplusplus) */ /* * Compiler-dependent macros to help declare dead (non-returning) and * pure (no side effects) functions, and unused variables. They are * null except for versions of gcc that are known to support the features * properly (old versions of gcc-2 supported the dead and pure features * in a different (wrong) way). If we do not provide an implementation * for a given compiler, let the compile fail if it is told to use * a feature that we cannot live without. */ #define __weak_symbol __attribute__((__weak__)) #if !__GNUC_PREREQ__(2, 5) && !defined(__INTEL_COMPILER) #define __dead2 #define __pure2 #define __unused #endif #if __GNUC__ == 2 && __GNUC_MINOR__ >= 5 && __GNUC_MINOR__ < 7 && !defined(__INTEL_COMPILER) #define __dead2 __attribute__((__noreturn__)) #define __pure2 __attribute__((__const__)) #define __unused /* XXX Find out what to do for __packed, __aligned and __section */ #endif #if __GNUC_PREREQ__(2, 7) || defined(__INTEL_COMPILER) #define __dead2 __attribute__((__noreturn__)) #define __pure2 __attribute__((__const__)) #define __unused __attribute__((__unused__)) #define __used __attribute__((__used__)) #define __packed __attribute__((__packed__)) #define __aligned(x) __attribute__((__aligned__(x))) #define __section(x) __attribute__((__section__(x))) #endif #if __GNUC_PREREQ__(4, 3) || __has_attribute(__alloc_size__) #define __alloc_size(x) __attribute__((__alloc_size__(x))) #define __alloc_size2(n, x) __attribute__((__alloc_size__(n, x))) #else #define __alloc_size(x) #define __alloc_size2(n, x) #endif #if __GNUC_PREREQ__(4, 9) || __has_attribute(__alloc_align__) #define __alloc_align(x) __attribute__((__alloc_align__(x))) #else #define __alloc_align(x) #endif #if !__GNUC_PREREQ__(2, 95) #define __alignof(x) __offsetof(struct { char __a; x __b; }, __b) #endif /* * Keywords added in C11. */ #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L #if !__has_extension(c_alignas) #if (defined(__cplusplus) && __cplusplus >= 201103L) || \ __has_extension(cxx_alignas) #define _Alignas(x) alignas(x) #else /* XXX: Only emulates _Alignas(constant-expression); not _Alignas(type-name). */ #define _Alignas(x) __aligned(x) #endif #endif #if defined(__cplusplus) && __cplusplus >= 201103L #define _Alignof(x) alignof(x) #else #define _Alignof(x) __alignof(x) #endif #if !defined(__cplusplus) && !__has_extension(c_atomic) && \ !__has_extension(cxx_atomic) && !__GNUC_PREREQ__(4, 7) /* * No native support for _Atomic(). Place object in structure to prevent * most forms of direct non-atomic access. */ #define _Atomic(T) struct { T volatile __val; } #endif #if defined(__cplusplus) && __cplusplus >= 201103L #define _Noreturn [[noreturn]] #else #define _Noreturn __dead2 #endif #if !__has_extension(c_static_assert) #if (defined(__cplusplus) && __cplusplus >= 201103L) || \ __has_extension(cxx_static_assert) #define _Static_assert(x, y) static_assert(x, y) #elif __GNUC_PREREQ__(4,6) && !defined(__cplusplus) /* Nothing, gcc 4.6 and higher has _Static_assert built-in */ #elif defined(__COUNTER__) #define _Static_assert(x, y) __Static_assert(x, __COUNTER__) #define __Static_assert(x, y) ___Static_assert(x, y) #define ___Static_assert(x, y) typedef char __assert_ ## y[(x) ? 1 : -1] \ __unused #else #define _Static_assert(x, y) struct __hack #endif #endif #if !__has_extension(c_thread_local) /* * XXX: Some compilers (Clang 3.3, GCC 4.7) falsely announce C++11 mode * without actually supporting the thread_local keyword. Don't check for * the presence of C++11 when defining _Thread_local. */ #if /* (defined(__cplusplus) && __cplusplus >= 201103L) || */ \ __has_extension(cxx_thread_local) #define _Thread_local thread_local #else #define _Thread_local __thread #endif #endif #endif /* __STDC_VERSION__ || __STDC_VERSION__ < 201112L */ /* * Emulation of C11 _Generic(). Unlike the previously defined C11 * keywords, it is not possible to implement this using exactly the same * syntax. Therefore implement something similar under the name * __generic(). Unlike _Generic(), this macro can only distinguish * between a single type, so it requires nested invocations to * distinguish multiple cases. */ #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ __has_extension(c_generic_selections) #define __generic(expr, t, yes, no) \ _Generic(expr, t: yes, default: no) #elif __GNUC_PREREQ__(3, 1) && !defined(__cplusplus) #define __generic(expr, t, yes, no) \ __builtin_choose_expr( \ __builtin_types_compatible_p(__typeof(expr), t), yes, no) #endif /* * C99 Static array indices in function parameter declarations. Syntax such as: * void bar(int myArray[static 10]); * is allowed in C99 but not in C++. Define __min_size appropriately so * headers using it can be compiled in either language. Use like this: * void bar(int myArray[__min_size(10)]); */ #if !defined(__cplusplus) && \ (defined(__clang__) || __GNUC_PREREQ__(4, 6)) && \ (!defined(__STDC_VERSION__) || (__STDC_VERSION__ >= 199901)) #define __min_size(x) static (x) #else #define __min_size(x) (x) #endif #if __GNUC_PREREQ__(2, 96) #define __malloc_like __attribute__((__malloc__)) #define __pure __attribute__((__pure__)) #else #define __malloc_like #define __pure #endif #if __GNUC_PREREQ__(3, 1) || (defined(__INTEL_COMPILER) && __INTEL_COMPILER >= 800) #define __always_inline __inline__ __attribute__((__always_inline__)) #else #define __always_inline #endif #if __GNUC_PREREQ__(3, 1) #define __noinline __attribute__ ((__noinline__)) #else #define __noinline #endif #if __GNUC_PREREQ__(3, 3) #define __nonnull(x) __attribute__((__nonnull__ x)) #define __nonnull_all __attribute__((__nonnull__)) #else #define __nonnull(x) #define __nonnull_all #endif #if __GNUC_PREREQ__(3, 4) #define __fastcall __attribute__((__fastcall__)) #define __result_use_check __attribute__((__warn_unused_result__)) #else #define __fastcall #define __result_use_check #endif #if __GNUC_PREREQ__(4, 1) #define __returns_twice __attribute__((__returns_twice__)) #else #define __returns_twice #endif #if __GNUC_PREREQ__(4, 6) || __has_builtin(__builtin_unreachable) #define __unreachable() __builtin_unreachable() #else #define __unreachable() ((void)0) #endif /* XXX: should use `#if __STDC_VERSION__ < 199901'. */ #if !__GNUC_PREREQ__(2, 7) && !defined(__INTEL_COMPILER) #define __func__ NULL #endif /* * GCC 2.95 provides `__restrict' as an extension to C90 to support the * C99-specific `restrict' type qualifier. We happen to use `__restrict' as * a way to define the `restrict' type qualifier without disturbing older * software that is unaware of C99 keywords. */ #if !(__GNUC__ == 2 && __GNUC_MINOR__ == 95) #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901 #define __restrict #else #define __restrict restrict #endif #endif /* * GNU C version 2.96 adds explicit branch prediction so that * the CPU back-end can hint the processor and also so that * code blocks can be reordered such that the predicted path * sees a more linear flow, thus improving cache behavior, etc. * * The following two macros provide us with a way to utilize this * compiler feature. Use __predict_true() if you expect the expression * to evaluate to true, and __predict_false() if you expect the * expression to evaluate to false. * * A few notes about usage: * * * Generally, __predict_false() error condition checks (unless * you have some _strong_ reason to do otherwise, in which case * document it), and/or __predict_true() `no-error' condition * checks, assuming you want to optimize for the no-error case. * * * Other than that, if you don't know the likelihood of a test * succeeding from empirical or other `hard' evidence, don't * make predictions. * * * These are meant to be used in places that are run `a lot'. * It is wasteful to make predictions in code that is run * seldomly (e.g. at subsystem initialization time) as the * basic block reordering that this affects can often generate * larger code. */ #if __GNUC_PREREQ__(2, 96) #define __predict_true(exp) __builtin_expect((exp), 1) #define __predict_false(exp) __builtin_expect((exp), 0) #else #define __predict_true(exp) (exp) #define __predict_false(exp) (exp) #endif #if __GNUC_PREREQ__(4, 0) #define __null_sentinel __attribute__((__sentinel__)) #define __exported __attribute__((__visibility__("default"))) /* Only default visibility is supported on PE/COFF targets. */ #ifndef __CYGWIN__ #define __hidden __attribute__((__visibility__("hidden"))) #else #define __hidden #endif #else #define __null_sentinel #define __exported #define __hidden #endif #define __offsetof(type, field) offsetof(type, field) #define __rangeof(type, start, end) \ (__offsetof(type, end) - __offsetof(type, start)) /* * Given the pointer x to the member m of the struct s, return * a pointer to the containing structure. When using GCC, we first * assign pointer x to a local variable, to check that its type is * compatible with member m. */ #if __GNUC_PREREQ__(3, 1) #define __containerof(x, s, m) ({ \ const volatile __typeof(((s *)0)->m) *__x = (x); \ __DEQUALIFY(s *, (const volatile char *)__x - __offsetof(s, m));\ }) #else #define __containerof(x, s, m) \ __DEQUALIFY(s *, (const volatile char *)(x) - __offsetof(s, m)) #endif /* * Compiler-dependent macros to declare that functions take printf-like * or scanf-like arguments. They are null except for versions of gcc * that are known to support the features properly (old versions of gcc-2 * didn't permit keeping the keywords out of the application namespace). */ #if !__GNUC_PREREQ__(2, 7) && !defined(__INTEL_COMPILER) #define __printflike(fmtarg, firstvararg) #define __scanflike(fmtarg, firstvararg) #define __format_arg(fmtarg) #define __strfmonlike(fmtarg, firstvararg) #define __strftimelike(fmtarg, firstvararg) #else #define __printflike(fmtarg, firstvararg) \ __attribute__((__format__ (__printf__, fmtarg, firstvararg))) #define __scanflike(fmtarg, firstvararg) \ __attribute__((__format__ (__scanf__, fmtarg, firstvararg))) #define __format_arg(fmtarg) __attribute__((__format_arg__ (fmtarg))) #define __strfmonlike(fmtarg, firstvararg) \ __attribute__((__format__ (__strfmon__, fmtarg, firstvararg))) #define __strftimelike(fmtarg, firstvararg) \ __attribute__((__format__ (__strftime__, fmtarg, firstvararg))) #endif /* Compiler-dependent macros that rely on FreeBSD-specific extensions. */ #if defined(__FreeBSD_cc_version) && __FreeBSD_cc_version >= 300001 && \ defined(__GNUC__) && !defined(__INTEL_COMPILER) #define __printf0like(fmtarg, firstvararg) \ __attribute__((__format__ (__printf0__, fmtarg, firstvararg))) #else #define __printf0like(fmtarg, firstvararg) #endif #if defined(__GNUC__) || defined(__INTEL_COMPILER) #ifndef __INTEL_COMPILER #define __strong_reference(sym,aliassym) \ extern __typeof (sym) aliassym __attribute__ ((__alias__ (#sym))) #endif #ifdef __ELF__ #ifdef __STDC__ #define __weak_reference(sym,alias) \ __asm__(".weak " #alias); \ __asm__(".equ " #alias ", " #sym) #define __warn_references(sym,msg) \ __asm__(".section .gnu.warning." #sym); \ __asm__(".asciz \"" msg "\""); \ __asm__(".previous") #define __sym_compat(sym,impl,verid) \ __asm__(".symver " #impl ", " #sym "@" #verid) #define __sym_default(sym,impl,verid) \ __asm__(".symver " #impl ", " #sym "@@" #verid) #else #define __weak_reference(sym,alias) \ __asm__(".weak alias"); \ __asm__(".equ alias, sym") #define __warn_references(sym,msg) \ __asm__(".section .gnu.warning.sym"); \ __asm__(".asciz \"msg\""); \ __asm__(".previous") #define __sym_compat(sym,impl,verid) \ __asm__(".symver impl, sym@verid") #define __sym_default(impl,sym,verid) \ __asm__(".symver impl, sym@@verid") #endif /* __STDC__ */ #else /* !__ELF__ */ #ifdef __STDC__ #define __weak_reference(sym,alias) \ __asm__(".stabs \"_" #alias "\",11,0,0,0"); \ __asm__(".stabs \"_" #sym "\",1,0,0,0") #define __warn_references(sym,msg) \ __asm__(".stabs \"" msg "\",30,0,0,0"); \ __asm__(".stabs \"_" #sym "\",1,0,0,0") #else #define __weak_reference(sym,alias) \ __asm__(".stabs \"_/**/alias\",11,0,0,0"); \ __asm__(".stabs \"_/**/sym\",1,0,0,0") #define __warn_references(sym,msg) \ __asm__(".stabs msg,30,0,0,0"); \ __asm__(".stabs \"_/**/sym\",1,0,0,0") #endif /* __STDC__ */ #endif /* __ELF__ */ #endif /* __GNUC__ || __INTEL_COMPILER */ #ifndef __FBSDID #define __FBSDID(s) struct __hack #endif #ifndef __RCSID #define __RCSID(s) struct __hack #endif #ifndef __RCSID_SOURCE #define __RCSID_SOURCE(s) struct __hack #endif #ifndef __SCCSID #define __SCCSID(s) struct __hack #endif #ifndef __COPYRIGHT #define __COPYRIGHT(s) struct __hack #endif #ifndef __DECONST #define __DECONST(type, var) ((type)(__uintptr_t)(const void *)(var)) #endif #ifndef __DEVOLATILE #define __DEVOLATILE(type, var) ((type)(__uintptr_t)(volatile void *)(var)) #endif #ifndef __DEQUALIFY #define __DEQUALIFY(type, var) ((type)(__uintptr_t)(const volatile void *)(var)) #endif /* * Nullability qualifiers: currently only supported by Clang. */ #if !(defined(__clang__) && __has_feature(nullability)) #define _Nonnull #define _Nullable #define _Null_unspecified #define __NULLABILITY_PRAGMA_PUSH #define __NULLABILITY_PRAGMA_POP #else #define __NULLABILITY_PRAGMA_PUSH _Pragma("clang diagnostic push") \ _Pragma("clang diagnostic ignored \"-Wnullability-completeness\"") #define __NULLABILITY_PRAGMA_POP _Pragma("clang diagnostic pop") #endif /* * Type Safety Checking * * Clang provides additional attributes to enable checking type safety * properties that cannot be enforced by the C type system. */ #if __has_attribute(__argument_with_type_tag__) && \ __has_attribute(__type_tag_for_datatype__) #define __arg_type_tag(arg_kind, arg_idx, type_tag_idx) \ __attribute__((__argument_with_type_tag__(arg_kind, arg_idx, type_tag_idx))) #define __datatype_type_tag(kind, type) \ __attribute__((__type_tag_for_datatype__(kind, type))) #else #define __arg_type_tag(arg_kind, arg_idx, type_tag_idx) #define __datatype_type_tag(kind, type) #endif /* * Lock annotations. * * Clang provides support for doing basic thread-safety tests at * compile-time, by marking which locks will/should be held when * entering/leaving a functions. * * Furthermore, it is also possible to annotate variables and structure * members to enforce that they are only accessed when certain locks are * held. */ #if __has_extension(c_thread_safety_attributes) #define __lock_annotate(x) __attribute__((x)) #else #define __lock_annotate(x) #endif /* Structure implements a lock. */ /* FIXME: Use __lockable__, etc. to avoid colliding with user namespace macros, * once clang is fixed: https://bugs.llvm.org/show_bug.cgi?id=34319 */ #define __lockable __lock_annotate(lockable) /* Function acquires an exclusive or shared lock. */ #define __locks_exclusive(...) \ __lock_annotate(exclusive_lock_function(__VA_ARGS__)) #define __locks_shared(...) \ __lock_annotate(shared_lock_function(__VA_ARGS__)) /* Function attempts to acquire an exclusive or shared lock. */ #define __trylocks_exclusive(...) \ __lock_annotate(exclusive_trylock_function(__VA_ARGS__)) #define __trylocks_shared(...) \ __lock_annotate(shared_trylock_function(__VA_ARGS__)) /* Function releases a lock. */ #define __unlocks(...) __lock_annotate(unlock_function(__VA_ARGS__)) /* Function asserts that an exclusive or shared lock is held. */ #define __asserts_exclusive(...) \ __lock_annotate(assert_exclusive_lock(__VA_ARGS__)) #define __asserts_shared(...) \ __lock_annotate(assert_shared_lock(__VA_ARGS__)) /* Function requires that an exclusive or shared lock is or is not held. */ #define __requires_exclusive(...) \ __lock_annotate(exclusive_locks_required(__VA_ARGS__)) #define __requires_shared(...) \ __lock_annotate(shared_locks_required(__VA_ARGS__)) #define __requires_unlocked(...) \ __lock_annotate(locks_excluded(__VA_ARGS__)) /* Function should not be analyzed. */ #define __no_lock_analysis __lock_annotate(no_thread_safety_analysis) /* * Function or variable should not be sanitized, i.e. by AddressSanitizer. * GCC has the nosanitize attribute, but as a function attribute only, and * warns on use as a variable attribute. */ #if __has_attribute(no_sanitize) && defined(__clang__) #define __nosanitizeaddress __attribute__((no_sanitize("address"))) #define __nosanitizethread __attribute__((no_sanitize("thread"))) #else #define __nosanitizeaddress #define __nosanitizethread #endif /* Guard variables and structure members by lock. */ #define __guarded_by(x) __lock_annotate(guarded_by(x)) #define __pt_guarded_by(x) __lock_annotate(pt_guarded_by(x)) #endif /* !_SYS_CDEFS_H_ */ 07070100000060000081a4000000000000000000000001630c8dd500001c1f000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/config.h#ifndef __SYS_CONFIG_H__ #define __SYS_CONFIG_H__ #include /* floating point macros */ #include /* POSIX defs */ #ifdef __aarch64__ #define MALLOC_ALIGNMENT 16 #endif #ifdef __AMDGCN__ #define __DYNAMIC_REENT__ #endif /* exceptions first */ #if defined(__H8500__) || defined(__W65__) #define __SMALL_BITFIELDS /* ??? This conditional is true for the h8500 and the w65, defining H8300 in those cases probably isn't the right thing to do. */ #define H8300 1 #endif /* 16 bit integer machines */ #if defined(__Z8001__) || defined(__Z8002__) || defined(__H8500__) || defined(__W65__) || defined (__mn10200__) || defined (__AVR__) || defined (__MSP430__) #undef INT_MAX #undef UINT_MAX #define INT_MAX 32767 #define UINT_MAX 65535 #endif #if defined (__H8300__) || defined (__H8300H__) || defined(__H8300S__) || defined (__H8300SX__) #define __SMALL_BITFIELDS #define H8300 1 #undef INT_MAX #undef UINT_MAX #define INT_MAX __INT_MAX__ #define UINT_MAX (__INT_MAX__ * 2U + 1) #endif #if (defined(__CR16__) || defined(__CR16C__) ||defined(__CR16CP__)) #ifndef __INT32__ #define __SMALL_BITFIELDS #undef INT_MAX #undef UINT_MAX #define INT_MAX 32767 #define UINT_MAX (__INT_MAX__ * 2U + 1) #else /* INT32 */ #undef INT_MAX #undef UINT_MAX #define INT_MAX 2147483647 #define UINT_MAX (__INT_MAX__ * 2U + 1) #endif /* INT32 */ #endif /* CR16C */ #if defined (__xc16x__) || defined (__xc16xL__) || defined (__xc16xS__) #define __SMALL_BITFIELDS #endif #ifdef __W65__ #define __SMALL_BITFIELDS #endif #if defined(__D10V__) #define __SMALL_BITFIELDS #undef INT_MAX #undef UINT_MAX #define INT_MAX __INT_MAX__ #define UINT_MAX (__INT_MAX__ * 2U + 1) #define _POINTER_INT short #endif #if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__) #undef INT_MAX #undef UINT_MAX #define INT_MAX __INT_MAX__ #define UINT_MAX (__INT_MAX__ * 2U + 1) #define _POINTER_INT short #endif #if defined(__m68k__) || defined(__mc68000__) || defined(__riscv) #define _READ_WRITE_RETURN_TYPE _ssize_t #endif #ifdef ___AM29K__ #define _FLOAT_RET double #endif #ifdef __i386__ #ifndef __unix__ /* in other words, go32 */ #define _FLOAT_RET double #endif #if defined(__linux__) || defined(__RDOS__) /* we want the reentrancy structure to be returned by a function */ #define __DYNAMIC_REENT__ #define HAVE_GETDATE #define _READ_WRITE_RETURN_TYPE _ssize_t #define __LARGE64_FILES 1 /* we use some glibc header files so turn on glibc large file feature */ #define _LARGEFILE64_SOURCE 1 #endif #endif #ifdef __mn10200__ #define __SMALL_BITFIELDS #endif #ifdef __AVR__ #define __SMALL_BITFIELDS #define _POINTER_INT short #endif #if defined(__v850) && !defined(__rtems__) #define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__sda__)) #endif /* For the PowerPC eabi, force the _impure_ptr to be in .sdata */ #if defined(__PPC__) #if defined(_CALL_SYSV) #define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) #endif #ifdef __SPE__ #define _LONG_DOUBLE double #endif #endif /* Configure small REENT structure for Xilinx MicroBlaze platforms */ #if defined (__MICROBLAZE__) #ifndef _REENT_SMALL #define _REENT_SMALL #endif /* Xilinx XMK uses Unix98 mutex */ #ifdef __XMK__ #define _UNIX98_THREAD_MUTEX_ATTRIBUTES #endif #endif #if defined(__mips__) && !defined(__rtems__) #define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) #endif #ifdef __xstormy16__ #define __SMALL_BITFIELDS #undef INT_MAX #undef UINT_MAX #define INT_MAX __INT_MAX__ #define UINT_MAX (__INT_MAX__ * 2U + 1) #define MALLOC_ALIGNMENT 8 #define _POINTER_INT short #define __BUFSIZ__ 16 #define _REENT_SMALL #endif #if defined __MSP430__ #ifndef _REENT_SMALL #define _REENT_SMALL #endif #define __BUFSIZ__ 256 #define __SMALL_BITFIELDS #ifdef __MSP430X_LARGE__ #define _POINTER_INT __int20 #else #define _POINTER_INT int #endif #endif #ifdef __m32c__ #define __SMALL_BITFIELDS #undef INT_MAX #undef UINT_MAX #define INT_MAX __INT_MAX__ #define UINT_MAX (__INT_MAX__ * 2U + 1) #define MALLOC_ALIGNMENT 8 #if defined(__r8c_cpu__) || defined(__m16c_cpu__) #define _POINTER_INT short #else #define _POINTER_INT long #endif #define __BUFSIZ__ 16 #define _REENT_SMALL #endif /* __m32c__ */ #ifdef __SPU__ #define MALLOC_ALIGNMENT 16 #define __CUSTOM_FILE_IO__ #endif #if defined(__or1k__) || defined(__or1knd__) #define __DYNAMIC_REENT__ #endif /* This block should be kept in sync with GCC's limits.h. The point of having these definitions here is to not include limits.h, which would pollute the user namespace, while still using types of the the correct widths when deciding how to define __int32_t and __int64_t. */ #ifndef __INT_MAX__ # ifdef INT_MAX # define __INT_MAX__ INT_MAX # else # define __INT_MAX__ 2147483647 # endif #endif #ifndef __LONG_MAX__ # ifdef LONG_MAX # define __LONG_MAX__ LONG_MAX # else # if defined (__alpha__) || (defined (__sparc__) && defined(__arch64__)) \ || defined (__sparcv9) # define __LONG_MAX__ 9223372036854775807L # else # define __LONG_MAX__ 2147483647L # endif /* __alpha__ || sparc64 */ # endif #endif /* End of block that should be kept in sync with GCC's limits.h. */ #ifndef _POINTER_INT #define _POINTER_INT long #endif #ifdef __frv__ #define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) #endif #undef __RAND_MAX #if __INT_MAX__ == 32767 #define __RAND_MAX 32767 #else #define __RAND_MAX 0x7fffffff #endif #if defined(__CYGWIN__) #include #endif #if defined(__rtems__) #define __FILENAME_MAX__ 255 #define _READ_WRITE_RETURN_TYPE _ssize_t #define __DYNAMIC_REENT__ #define _REENT_GLOBAL_ATEXIT #define _REENT_GLOBAL_STDIO_STREAMS #endif #ifndef __EXPORT #define __EXPORT #endif #ifndef __IMPORT #define __IMPORT #endif /* Define return type of read/write routines. In POSIX, the return type for read()/write() is "ssize_t" but legacy newlib code has been using "int" for some time. If not specified, "int" is defaulted. */ #ifndef _READ_WRITE_RETURN_TYPE #define _READ_WRITE_RETURN_TYPE int #endif /* Define `count' parameter of read/write routines. In POSIX, the `count' parameter is "size_t" but legacy newlib code has been using "int" for some time. If not specified, "int" is defaulted. */ #ifndef _READ_WRITE_BUFSIZE_TYPE #define _READ_WRITE_BUFSIZE_TYPE int #endif #ifndef __WCHAR_MAX__ #if __INT_MAX__ == 32767 || defined (_WIN32) #define __WCHAR_MAX__ 0xffffu #endif #endif /* See if small reent asked for at configuration time and is not chosen by the platform by default. */ #ifdef _WANT_REENT_SMALL #ifndef _REENT_SMALL #define _REENT_SMALL #endif #endif #ifdef _WANT_REENT_GLOBAL_STDIO_STREAMS #ifndef _REENT_GLOBAL_STDIO_STREAMS #define _REENT_GLOBAL_STDIO_STREAMS #endif #endif #ifdef _WANT_USE_LONG_TIME_T #ifndef _USE_LONG_TIME_T #define _USE_LONG_TIME_T #endif #endif /* If _MB_EXTENDED_CHARSETS_ALL is set, we want all of the extended charsets. The extended charsets add a few functions and a couple of tables of a few K each. */ #ifdef _MB_EXTENDED_CHARSETS_ALL #define _MB_EXTENDED_CHARSETS_ISO 1 #define _MB_EXTENDED_CHARSETS_WINDOWS 1 #endif #endif /* __SYS_CONFIG_H__ */ 07070100000061000081a4000000000000000000000001630c8dd500000032000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/sys/custom_file.h#error System-specific custom_file.h is missing. 07070100000062000081a4000000000000000000000001630c8dd5000000ab000000000000000000000000000000000000002300000000./usr/nvptx-none/include/sys/dir.h/* BSD predecessor of POSIX.1 and struct dirent */ #ifndef _SYS_DIR_H_ #define _SYS_DIR_H_ #include #define direct dirent #endif /*_SYS_DIR_H_*/ 07070100000063000081a4000000000000000000000001630c8dd50000018b000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/dirent.h/* includes , which is this file. On a system which supports , this file is overridden by dirent.h in the libc/sys/.../sys directory. On a system which does not support , we will get this file which uses #error to force an error. */ #ifdef __cplusplus extern "C" { #endif #error " not supported" #ifdef __cplusplus } #endif 07070100000064000081a4000000000000000000000001630c8dd500001d0f000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/errno.h/* errno is not a global variable, because that would make using it non-reentrant. Instead, its address is returned by the function __errno. */ #ifndef _SYS_ERRNO_H_ #ifdef __cplusplus extern "C" { #endif #define _SYS_ERRNO_H_ #include #ifndef _REENT_ONLY #define errno (*__errno()) extern int *__errno (void); #endif /* Please don't use these variables directly. Use strerror instead. */ extern __IMPORT const char * const _sys_errlist[]; extern __IMPORT int _sys_nerr; #ifdef __CYGWIN__ extern __IMPORT const char * const sys_errlist[]; extern __IMPORT int sys_nerr; extern __IMPORT char *program_invocation_name; extern __IMPORT char *program_invocation_short_name; #endif #define __errno_r(ptr) ((ptr)->_errno) #define EPERM 1 /* Not owner */ #define ENOENT 2 /* No such file or directory */ #define ESRCH 3 /* No such process */ #define EINTR 4 /* Interrupted system call */ #define EIO 5 /* I/O error */ #define ENXIO 6 /* No such device or address */ #define E2BIG 7 /* Arg list too long */ #define ENOEXEC 8 /* Exec format error */ #define EBADF 9 /* Bad file number */ #define ECHILD 10 /* No children */ #define EAGAIN 11 /* No more processes */ #define ENOMEM 12 /* Not enough space */ #define EACCES 13 /* Permission denied */ #define EFAULT 14 /* Bad address */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ENOTBLK 15 /* Block device required */ #endif #define EBUSY 16 /* Device or resource busy */ #define EEXIST 17 /* File exists */ #define EXDEV 18 /* Cross-device link */ #define ENODEV 19 /* No such device */ #define ENOTDIR 20 /* Not a directory */ #define EISDIR 21 /* Is a directory */ #define EINVAL 22 /* Invalid argument */ #define ENFILE 23 /* Too many open files in system */ #define EMFILE 24 /* File descriptor value too large */ #define ENOTTY 25 /* Not a character device */ #define ETXTBSY 26 /* Text file busy */ #define EFBIG 27 /* File too large */ #define ENOSPC 28 /* No space left on device */ #define ESPIPE 29 /* Illegal seek */ #define EROFS 30 /* Read-only file system */ #define EMLINK 31 /* Too many links */ #define EPIPE 32 /* Broken pipe */ #define EDOM 33 /* Mathematics argument out of domain of function */ #define ERANGE 34 /* Result too large */ #define ENOMSG 35 /* No message of desired type */ #define EIDRM 36 /* Identifier removed */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ECHRNG 37 /* Channel number out of range */ #define EL2NSYNC 38 /* Level 2 not synchronized */ #define EL3HLT 39 /* Level 3 halted */ #define EL3RST 40 /* Level 3 reset */ #define ELNRNG 41 /* Link number out of range */ #define EUNATCH 42 /* Protocol driver not attached */ #define ENOCSI 43 /* No CSI structure available */ #define EL2HLT 44 /* Level 2 halted */ #endif #define EDEADLK 45 /* Deadlock */ #define ENOLCK 46 /* No lock */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define EBADE 50 /* Invalid exchange */ #define EBADR 51 /* Invalid request descriptor */ #define EXFULL 52 /* Exchange full */ #define ENOANO 53 /* No anode */ #define EBADRQC 54 /* Invalid request code */ #define EBADSLT 55 /* Invalid slot */ #define EDEADLOCK 56 /* File locking deadlock error */ #define EBFONT 57 /* Bad font file fmt */ #endif #define ENOSTR 60 /* Not a stream */ #define ENODATA 61 /* No data (for no delay io) */ #define ETIME 62 /* Stream ioctl timeout */ #define ENOSR 63 /* No stream resources */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ENONET 64 /* Machine is not on the network */ #define ENOPKG 65 /* Package not installed */ #define EREMOTE 66 /* The object is remote */ #endif #define ENOLINK 67 /* Virtual circuit is gone */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define EADV 68 /* Advertise error */ #define ESRMNT 69 /* Srmount error */ #define ECOMM 70 /* Communication error on send */ #endif #define EPROTO 71 /* Protocol error */ #define EMULTIHOP 74 /* Multihop attempted */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ELBIN 75 /* Inode is remote (not really error) */ #define EDOTDOT 76 /* Cross mount point (not really error) */ #endif #define EBADMSG 77 /* Bad message */ #define EFTYPE 79 /* Inappropriate file type or format */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ENOTUNIQ 80 /* Given log. name not unique */ #define EBADFD 81 /* f.d. invalid for this operation */ #define EREMCHG 82 /* Remote address changed */ #define ELIBACC 83 /* Can't access a needed shared lib */ #define ELIBBAD 84 /* Accessing a corrupted shared lib */ #define ELIBSCN 85 /* .lib section in a.out corrupted */ #define ELIBMAX 86 /* Attempting to link in too many libs */ #define ELIBEXEC 87 /* Attempting to exec a shared library */ #endif #define ENOSYS 88 /* Function not implemented */ #ifdef __CYGWIN__ #define ENMFILE 89 /* No more files */ #endif #define ENOTEMPTY 90 /* Directory not empty */ #define ENAMETOOLONG 91 /* File or path name too long */ #define ELOOP 92 /* Too many symbolic links */ #define EOPNOTSUPP 95 /* Operation not supported on socket */ #define EPFNOSUPPORT 96 /* Protocol family not supported */ #define ECONNRESET 104 /* Connection reset by peer */ #define ENOBUFS 105 /* No buffer space available */ #define EAFNOSUPPORT 106 /* Address family not supported by protocol family */ #define EPROTOTYPE 107 /* Protocol wrong type for socket */ #define ENOTSOCK 108 /* Socket operation on non-socket */ #define ENOPROTOOPT 109 /* Protocol not available */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ESHUTDOWN 110 /* Can't send after socket shutdown */ #endif #define ECONNREFUSED 111 /* Connection refused */ #define EADDRINUSE 112 /* Address already in use */ #define ECONNABORTED 113 /* Software caused connection abort */ #define ENETUNREACH 114 /* Network is unreachable */ #define ENETDOWN 115 /* Network interface is not configured */ #define ETIMEDOUT 116 /* Connection timed out */ #define EHOSTDOWN 117 /* Host is down */ #define EHOSTUNREACH 118 /* Host is unreachable */ #define EINPROGRESS 119 /* Connection already in progress */ #define EALREADY 120 /* Socket already connected */ #define EDESTADDRREQ 121 /* Destination address required */ #define EMSGSIZE 122 /* Message too long */ #define EPROTONOSUPPORT 123 /* Unknown protocol */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ESOCKTNOSUPPORT 124 /* Socket type not supported */ #endif #define EADDRNOTAVAIL 125 /* Address not available */ #define ENETRESET 126 /* Connection aborted by network */ #define EISCONN 127 /* Socket is already connected */ #define ENOTCONN 128 /* Socket is not connected */ #define ETOOMANYREFS 129 #ifdef __LINUX_ERRNO_EXTENSIONS__ #define EPROCLIM 130 #define EUSERS 131 #endif #define EDQUOT 132 #define ESTALE 133 #define ENOTSUP 134 /* Not supported */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ENOMEDIUM 135 /* No medium (in tape drive) */ #endif #ifdef __CYGWIN__ #define ENOSHARE 136 /* No such host or network path */ #define ECASECLASH 137 /* Filename exists with different case */ #endif #define EILSEQ 138 /* Illegal byte sequence */ #define EOVERFLOW 139 /* Value too large for defined data type */ #define ECANCELED 140 /* Operation canceled */ #define ENOTRECOVERABLE 141 /* State not recoverable */ #define EOWNERDEAD 142 /* Previous owner died */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ESTRPIPE 143 /* Streams pipe error */ #endif #define EWOULDBLOCK EAGAIN /* Operation would block */ #define __ELASTERROR 2000 /* Users can add values starting here */ #ifdef __cplusplus } #endif #endif /* _SYS_ERRNO_H */ 07070100000065000081a4000000000000000000000001630c8dd500000053000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/fcntl.h#ifndef _SYS_FCNTL_H_ #define _SYS_FCNTL_H_ #include #endif 07070100000066000081a4000000000000000000000001630c8dd500003dd4000000000000000000000000000000000000002800000000./usr/nvptx-none/include/sys/features.h/* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2014. * * On-Line Applications Research Corporation (OAR). * * Permission to use, copy, modify, and distribute this software for any * purpose without fee is hereby granted, provided that this entire notice * is included in all copies of any software which is or includes a copy * or modification of this software. * * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. * * $Id$ */ #ifndef _SYS_FEATURES_H #define _SYS_FEATURES_H #ifdef __cplusplus extern "C" { #endif #include <_newlib_version.h> /* Macro to test version of GCC. Returns 0 for non-GCC or too old GCC. */ #ifndef __GNUC_PREREQ # if defined __GNUC__ && defined __GNUC_MINOR__ # define __GNUC_PREREQ(maj, min) \ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) # else # define __GNUC_PREREQ(maj, min) 0 # endif #endif /* __GNUC_PREREQ */ /* Version with trailing underscores for BSD compatibility. */ #define __GNUC_PREREQ__(ma, mi) __GNUC_PREREQ(ma, mi) /* * Feature test macros control which symbols are exposed by the system * headers. Any of these must be defined before including any headers. * * __STRICT_ANSI__ (defined by gcc -ansi, -std=c90, -std=c99, or -std=c11) * ISO C * * _POSIX_SOURCE (deprecated by _POSIX_C_SOURCE=1) * _POSIX_C_SOURCE >= 1 * POSIX.1-1990 * * _POSIX_C_SOURCE >= 2 * POSIX.2-1992 * * _POSIX_C_SOURCE >= 199309L * POSIX.1b-1993 Real-time extensions * * _POSIX_C_SOURCE >= 199506L * POSIX.1c-1995 Threads extensions * * _POSIX_C_SOURCE >= 200112L * POSIX.1-2001 and C99 * * _POSIX_C_SOURCE >= 200809L * POSIX.1-2008 * * _XOPEN_SOURCE * POSIX.1-1990 and XPG4 * * _XOPEN_SOURCE_EXTENDED * SUSv1 (POSIX.2-1992 plus XPG4v2) * * _XOPEN_SOURCE >= 500 * SUSv2 (POSIX.1c-1995 plus XSI) * * _XOPEN_SOURCE >= 600 * SUSv3 (POSIX.1-2001 plus XSI) and C99 * * _XOPEN_SOURCE >= 700 * SUSv4 (POSIX.1-2008 plus XSI) * * _ISOC99_SOURCE or gcc -std=c99 or g++ * ISO C99 * * _ISOC11_SOURCE or gcc -std=c11 or g++ -std=c++11 * ISO C11 * * _ATFILE_SOURCE (implied by _POSIX_C_SOURCE >= 200809L) * "at" functions * * _LARGEFILE_SOURCE (deprecated by _XOPEN_SOURCE >= 500) * fseeko, ftello * * _GNU_SOURCE * All of the above plus GNU extensions * * _BSD_SOURCE (deprecated by _DEFAULT_SOURCE) * _SVID_SOURCE (deprecated by _DEFAULT_SOURCE) * _DEFAULT_SOURCE (or none of the above) * POSIX-1.2008 with BSD and SVr4 extensions * * _FORTIFY_SOURCE = 1 or 2 * Object Size Checking function wrappers */ #ifdef _GNU_SOURCE #undef _ATFILE_SOURCE #define _ATFILE_SOURCE 1 #undef _DEFAULT_SOURCE #define _DEFAULT_SOURCE 1 #undef _ISOC99_SOURCE #define _ISOC99_SOURCE 1 #undef _ISOC11_SOURCE #define _ISOC11_SOURCE 1 #undef _POSIX_SOURCE #define _POSIX_SOURCE 1 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 200809L #undef _XOPEN_SOURCE #define _XOPEN_SOURCE 700 #undef _XOPEN_SOURCE_EXTENDED #define _XOPEN_SOURCE_EXTENDED 1 #endif /* _GNU_SOURCE */ #if defined(_BSD_SOURCE) || defined(_SVID_SOURCE) || \ (!defined(__STRICT_ANSI__) && !defined(_ANSI_SOURCE) && \ !defined(_ISOC99_SOURCE) && !defined(_POSIX_SOURCE) && \ !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE)) #undef _DEFAULT_SOURCE #define _DEFAULT_SOURCE 1 #endif #if defined(_DEFAULT_SOURCE) #undef _POSIX_SOURCE #define _POSIX_SOURCE 1 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 200809L #endif #if !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE) && \ ((!defined(__STRICT_ANSI__) && !defined(_ANSI_SOURCE)) || \ (_XOPEN_SOURCE - 0) >= 500) #define _POSIX_SOURCE 1 #if !defined(_XOPEN_SOURCE) || (_XOPEN_SOURCE - 0) >= 700 #define _POSIX_C_SOURCE 200809L #elif (_XOPEN_SOURCE - 0) >= 600 #define _POSIX_C_SOURCE 200112L #elif (_XOPEN_SOURCE - 0) >= 500 #define _POSIX_C_SOURCE 199506L #elif (_XOPEN_SOURCE - 0) < 500 #define _POSIX_C_SOURCE 2 #endif #endif #if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200809 #undef _ATFILE_SOURCE #define _ATFILE_SOURCE 1 #endif /* * The following private macros are used throughout the headers to control * which symbols should be exposed. They are for internal use only, as * indicated by the leading double underscore, and must never be used outside * of these headers. * * __POSIX_VISIBLE * any version of POSIX.1; enabled by default, or with _POSIX_SOURCE, * any value of _POSIX_C_SOURCE, or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 2 * POSIX.2-1992; enabled by default, with _POSIX_C_SOURCE >= 2, * or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 199309 * POSIX.1b-1993; enabled by default, with _POSIX_C_SOURCE >= 199309L, * or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 199506 * POSIX.1c-1995; enabled by default, with _POSIX_C_SOURCE >= 199506L, * or _XOPEN_SOURCE >= 500. * * __POSIX_VISIBLE >= 200112 * POSIX.1-2001; enabled by default, with _POSIX_C_SOURCE >= 200112L, * or _XOPEN_SOURCE >= 600. * * __POSIX_VISIBLE >= 200809 * POSIX.1-2008; enabled by default, with _POSIX_C_SOURCE >= 200809L, * or _XOPEN_SOURCE >= 700. * * __XSI_VISIBLE * XPG4 XSI extensions; enabled with any version of _XOPEN_SOURCE. * * __XSI_VISIBLE >= 4 * SUSv1 XSI extensions; enabled with both _XOPEN_SOURCE and * _XOPEN_SOURCE_EXTENDED together. * * __XSI_VISIBLE >= 500 * SUSv2 XSI extensions; enabled with _XOPEN_SOURCE >= 500. * * __XSI_VISIBLE >= 600 * SUSv3 XSI extensions; enabled with _XOPEN_SOURCE >= 600. * * __XSI_VISIBLE >= 700 * SUSv4 XSI extensions; enabled with _XOPEN_SOURCE >= 700. * * __ISO_C_VISIBLE >= 1999 * ISO C99; enabled with gcc -std=c99 or newer (on by default since GCC 5), * any version of C++, or with _ISOC99_SOURCE, _POSIX_C_SOURCE >= 200112L, * or _XOPEN_SOURCE >= 600. * * __ISO_C_VISIBLE >= 2011 * ISO C11; enabled with gcc -std=c11 or newer (on by default since GCC 5), * g++ -std=c++11 or newer (on by default since GCC 6), or with * _ISOC11_SOURCE. * * __ATFILE_VISIBLE * "at" functions; enabled by default, with _ATFILE_SOURCE, * _POSIX_C_SOURCE >= 200809L, or _XOPEN_SOURCE >= 700. * * __LARGEFILE_VISIBLE * fseeko, ftello; enabled with _LARGEFILE_SOURCE or _XOPEN_SOURCE >= 500. * * __BSD_VISIBLE * BSD extensions; enabled by default, or with _BSD_SOURCE. * * __SVID_VISIBLE * SVr4 extensions; enabled by default, or with _SVID_SOURCE. * * __MISC_VISIBLE * Extensions found in both BSD and SVr4 (shorthand for * (__BSD_VISIBLE || __SVID_VISIBLE)), or newlib-specific * extensions; enabled by default. * * __GNU_VISIBLE * GNU extensions; enabled with _GNU_SOURCE. * * __SSP_FORTIFY_LEVEL * Object Size Checking; defined to 0 (off), 1, or 2. * * In all cases above, "enabled by default" means either by defining * _DEFAULT_SOURCE, or by not defining any of the public feature test macros. */ #ifdef _ATFILE_SOURCE #define __ATFILE_VISIBLE 1 #else #define __ATFILE_VISIBLE 0 #endif #ifdef _DEFAULT_SOURCE #define __BSD_VISIBLE 1 #else #define __BSD_VISIBLE 0 #endif #ifdef _GNU_SOURCE #define __GNU_VISIBLE 1 #else #define __GNU_VISIBLE 0 #endif #if defined(_ISOC11_SOURCE) || \ (__STDC_VERSION__ - 0) >= 201112L || (__cplusplus - 0) >= 201103L #define __ISO_C_VISIBLE 2011 #elif defined(_ISOC99_SOURCE) || (_POSIX_C_SOURCE - 0) >= 200112L || \ (__STDC_VERSION__ - 0) >= 199901L || defined(__cplusplus) #define __ISO_C_VISIBLE 1999 #else #define __ISO_C_VISIBLE 1990 #endif #if defined(_LARGEFILE_SOURCE) || (_XOPEN_SOURCE - 0) >= 500 #define __LARGEFILE_VISIBLE 1 #else #define __LARGEFILE_VISIBLE 0 #endif #ifdef _DEFAULT_SOURCE #define __MISC_VISIBLE 1 #else #define __MISC_VISIBLE 0 #endif #if (_POSIX_C_SOURCE - 0) >= 200809L #define __POSIX_VISIBLE 200809 #elif (_POSIX_C_SOURCE - 0) >= 200112L #define __POSIX_VISIBLE 200112 #elif (_POSIX_C_SOURCE - 0) >= 199506L #define __POSIX_VISIBLE 199506 #elif (_POSIX_C_SOURCE - 0) >= 199309L #define __POSIX_VISIBLE 199309 #elif (_POSIX_C_SOURCE - 0) >= 2 || defined(_XOPEN_SOURCE) #define __POSIX_VISIBLE 199209 #elif defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) #define __POSIX_VISIBLE 199009 #else #define __POSIX_VISIBLE 0 #endif #ifdef _DEFAULT_SOURCE #define __SVID_VISIBLE 1 #else #define __SVID_VISIBLE 0 #endif #if (_XOPEN_SOURCE - 0) >= 700 #define __XSI_VISIBLE 700 #elif (_XOPEN_SOURCE - 0) >= 600 #define __XSI_VISIBLE 600 #elif (_XOPEN_SOURCE - 0) >= 500 #define __XSI_VISIBLE 500 #elif defined(_XOPEN_SOURCE) && defined(_XOPEN_SOURCE_EXTENDED) #define __XSI_VISIBLE 4 #elif defined(_XOPEN_SOURCE) #define __XSI_VISIBLE 1 #else #define __XSI_VISIBLE 0 #endif #if _FORTIFY_SOURCE > 0 && !defined(__cplusplus) && !defined(__lint__) && \ (__OPTIMIZE__ > 0 || defined(__clang__)) && __GNUC_PREREQ__(4, 1) # if _FORTIFY_SOURCE > 1 # define __SSP_FORTIFY_LEVEL 2 # else # define __SSP_FORTIFY_LEVEL 1 # endif #else # define __SSP_FORTIFY_LEVEL 0 #endif /* RTEMS adheres to POSIX -- 1003.1b with some features from annexes. */ #ifdef __rtems__ #define _POSIX_JOB_CONTROL 1 #define _POSIX_SAVED_IDS 1 #define _POSIX_VERSION 199309L #define _POSIX_ASYNCHRONOUS_IO 1 #define _POSIX_FSYNC 1 #define _POSIX_MAPPED_FILES 1 #define _POSIX_MEMLOCK 1 #define _POSIX_MEMLOCK_RANGE 1 #define _POSIX_MEMORY_PROTECTION 1 #define _POSIX_MESSAGE_PASSING 1 #define _POSIX_MONOTONIC_CLOCK 200112L #define _POSIX_CLOCK_SELECTION 200112L #define _POSIX_PRIORITIZED_IO 1 #define _POSIX_PRIORITY_SCHEDULING 1 #define _POSIX_REALTIME_SIGNALS 1 #define _POSIX_SEMAPHORES 1 #define _POSIX_SHARED_MEMORY_OBJECTS 1 #define _POSIX_SYNCHRONIZED_IO 1 #define _POSIX_TIMERS 1 #define _POSIX_BARRIERS 200112L #define _POSIX_READER_WRITER_LOCKS 200112L #define _POSIX_SPIN_LOCKS 200112L /* In P1003.1b but defined by drafts at least as early as P1003.1c/D10 */ #define _POSIX_THREADS 1 #define _POSIX_THREAD_ATTR_STACKADDR 1 #define _POSIX_THREAD_ATTR_STACKSIZE 1 #define _POSIX_THREAD_PRIORITY_SCHEDULING 1 #define _POSIX_THREAD_PRIO_INHERIT 1 #define _POSIX_THREAD_PRIO_PROTECT 1 #define _POSIX_THREAD_PROCESS_SHARED 1 #define _POSIX_THREAD_SAFE_FUNCTIONS 1 /* P1003.4b/D8 defines the constants below this comment. */ #define _POSIX_SPAWN 1 #define _POSIX_TIMEOUTS 1 #define _POSIX_CPUTIME 1 #define _POSIX_THREAD_CPUTIME 1 #define _POSIX_SPORADIC_SERVER 1 #define _POSIX_THREAD_SPORADIC_SERVER 1 #define _POSIX_DEVICE_CONTROL 1 #define _POSIX_DEVCTL_DIRECTION 1 #define _POSIX_INTERRUPT_CONTROL 1 #define _POSIX_ADVISORY_INFO 1 /* UNIX98 added some new pthread mutex attributes */ #define _UNIX98_THREAD_MUTEX_ATTRIBUTES 1 /* POSIX 1003.26-2003 defined device control method */ #define _POSIX_26_VERSION 200312L #endif /* XMK loosely adheres to POSIX -- 1003.1 */ #ifdef __XMK__ #define _POSIX_THREADS 1 #define _POSIX_THREAD_PRIORITY_SCHEDULING 1 #endif #ifdef __svr4__ # define _POSIX_JOB_CONTROL 1 # define _POSIX_SAVED_IDS 1 # define _POSIX_VERSION 199009L #endif #ifdef __CYGWIN__ #if __POSIX_VISIBLE >= 200809 #define _POSIX_VERSION 200809L #define _POSIX2_VERSION 200809L #elif __POSIX_VISIBLE >= 200112 #define _POSIX_VERSION 200112L #define _POSIX2_VERSION 200112L #elif __POSIX_VISIBLE >= 199506 #define _POSIX_VERSION 199506L #define _POSIX2_VERSION 199506L #elif __POSIX_VISIBLE >= 199309 #define _POSIX_VERSION 199309L #define _POSIX2_VERSION 199209L #elif __POSIX_VISIBLE >= 199209 #define _POSIX_VERSION 199009L #define _POSIX2_VERSION 199209L #elif __POSIX_VISIBLE #define _POSIX_VERSION 199009L #endif #if __XSI_VISIBLE >= 4 #define _XOPEN_VERSION __XSI_VISIBLE #endif #define _POSIX_ADVISORY_INFO 200809L #define _POSIX_ASYNCHRONOUS_IO 200809L #define _POSIX_BARRIERS 200809L #define _POSIX_CHOWN_RESTRICTED 1 #define _POSIX_CLOCK_SELECTION 200809L #define _POSIX_CPUTIME 200809L #define _POSIX_FSYNC 200809L #define _POSIX_IPV6 200809L #define _POSIX_JOB_CONTROL 1 #define _POSIX_MAPPED_FILES 200809L /* #define _POSIX_MEMLOCK -1 */ #define _POSIX_MEMLOCK_RANGE 200809L #define _POSIX_MEMORY_PROTECTION 200809L #define _POSIX_MESSAGE_PASSING 200809L #define _POSIX_MONOTONIC_CLOCK 200809L #define _POSIX_NO_TRUNC 1 /* #define _POSIX_PRIORITIZED_IO -1 */ #define _POSIX_PRIORITY_SCHEDULING 200809L #define _POSIX_RAW_SOCKETS 200809L #define _POSIX_READER_WRITER_LOCKS 200809L #define _POSIX_REALTIME_SIGNALS 200809L #define _POSIX_REGEXP 1 #define _POSIX_SAVED_IDS 1 #define _POSIX_SEMAPHORES 200809L #define _POSIX_SHARED_MEMORY_OBJECTS 200809L #define _POSIX_SHELL 1 #define _POSIX_SPAWN 200809L #define _POSIX_SPIN_LOCKS 200809L /* #define _POSIX_SPORADIC_SERVER -1 */ #define _POSIX_SYNCHRONIZED_IO 200809L #define _POSIX_THREAD_ATTR_STACKADDR 200809L #define _POSIX_THREAD_ATTR_STACKSIZE 200809L #define _POSIX_THREAD_CPUTIME 200809L /* #define _POSIX_THREAD_PRIO_INHERIT -1 */ /* #define _POSIX_THREAD_PRIO_PROTECT -1 */ #define _POSIX_THREAD_PRIORITY_SCHEDULING 200809L #define _POSIX_THREAD_PROCESS_SHARED 200809L #define _POSIX_THREAD_SAFE_FUNCTIONS 200809L /* #define _POSIX_THREAD_SPORADIC_SERVER -1 */ #define _POSIX_THREADS 200809L #define _POSIX_TIMEOUTS 200809L #define _POSIX_TIMERS 200809L /* #define _POSIX_TRACE -1 */ /* #define _POSIX_TRACE_EVENT_FILTER -1 */ /* #define _POSIX_TRACE_INHERIT -1 */ /* #define _POSIX_TRACE_LOG -1 */ /* #define _POSIX_TYPED_MEMORY_OBJECTS -1 */ #define _POSIX_VDISABLE '\0' #if __POSIX_VISIBLE >= 2 #define _POSIX2_C_VERSION _POSIX2_VERSION #define _POSIX2_C_BIND _POSIX2_VERSION #define _POSIX2_C_DEV _POSIX2_VERSION #define _POSIX2_CHAR_TERM _POSIX2_VERSION /* #define _POSIX2_FORT_DEV -1 */ /* #define _POSIX2_FORT_RUN -1 */ /* #define _POSIX2_LOCALEDEF -1 */ /* #define _POSIX2_PBS -1 */ /* #define _POSIX2_PBS_ACCOUNTING -1 */ /* #define _POSIX2_PBS_CHECKPOINT -1 */ /* #define _POSIX2_PBS_LOCATE -1 */ /* #define _POSIX2_PBS_MESSAGE -1 */ /* #define _POSIX2_PBS_TRACK -1 */ #define _POSIX2_SW_DEV _POSIX2_VERSION #define _POSIX2_UPE _POSIX2_VERSION #endif /* __POSIX_VISIBLE >= 2 */ #define _POSIX_V6_ILP32_OFF32 -1 #ifdef __LP64__ #define _POSIX_V6_ILP32_OFFBIG -1 #define _POSIX_V6_LP64_OFF64 1 #define _POSIX_V6_LPBIG_OFFBIG 1 #else #define _POSIX_V6_ILP32_OFFBIG 1 #define _POSIX_V6_LP64_OFF64 -1 #define _POSIX_V6_LPBIG_OFFBIG -1 #endif #define _POSIX_V7_ILP32_OFF32 _POSIX_V6_ILP32_OFF32 #define _POSIX_V7_ILP32_OFFBIG _POSIX_V6_ILP32_OFFBIG #define _POSIX_V7_LP64_OFF64 _POSIX_V6_LP64_OFF64 #define _POSIX_V7_LPBIG_OFFBIG _POSIX_V6_LPBIG_OFFBIG #define _XBS5_ILP32_OFF32 _POSIX_V6_ILP32_OFF32 #define _XBS5_ILP32_OFFBIG _POSIX_V6_ILP32_OFFBIG #define _XBS5_LP64_OFF64 _POSIX_V6_LP64_OFF64 #define _XBS5_LPBIG_OFFBIG _POSIX_V6_LPBIG_OFFBIG #if __XSI_VISIBLE #define _XOPEN_CRYPT 1 #define _XOPEN_ENH_I18N 1 /* #define _XOPEN_LEGACY -1 */ /* #define _XOPEN_REALTIME -1 */ /* #define _XOPEN_REALTIME_THREADS -1 */ #define _XOPEN_SHM 1 /* #define _XOPEN_STREAMS -1 */ /* #define _XOPEN_UNIX -1 */ #endif /* __XSI_VISIBLE */ /* * newlib's wide char conversion functions were updated on * 2019-01-12 * to UNICODE version: * 11.0.0 released 2018-06-05 */ #define __STDC_ISO_10646__ 201806L #endif /* __CYGWIN__ */ #ifdef __cplusplus } #endif #endif /* _SYS_FEATURES_H */ 07070100000067000081a4000000000000000000000001630c8dd500001105000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/fenv.h/* (c) Copyright 2019 Joel Sherrill All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SYS_FENV_H_ #define _SYS_FENV_H_ /******************************************************************************* * THIS FILE IS A TEMPLATE, INTENDED TO BE USED AS A STARTING POINT FOR * TARGET-SPECIFIC FLOATING-POINT IMPLEMENTATIONS. NOTES BELOW HIGHLIGHT THE * BASICS OF WHAT NEEDS TO BE DEFINED. THE DEFAULT IMPLEMTATION IS * DEGENERATE, WITH ALL FUNCTIONS RETURNING ERROR AND NO EXCEPTIONS AND NO * ROUNDING MODES DEFINED (SINCE NONE ARE SUPPORTED). * THE MACRO VALUES ARE EXAMPLES ONLY, ALTHOUGH TAKEN FROM A WORKING * IMPLEMENTATION. * REMOVE THIS NOTICE WHEN COPYING TO A REAL IMPLEMENTATION, REPLACING IT WITH * ANY TARGET-SPECIFIC NOTES OF INTEREST. THE FENV FUNCTION MAN PAGES POINT TO * THIS FILE AS A MEANS OF DETERMINING A FUNCTIONAL VS. NON-FUNCTIONAL * IMPLEMENTATION. ******************************************************************************/ /* * The following macros are to be defined if the respective exception is * supported by the implementation, each with a unique bit mask: * * FE_DIVBYZERO * FE_INEXACT * FE_INVALID * FE_OVERFLOW * FE_UNDERFLOW * * Other implementation-specific exceptions may be defined, and must start * with FE_ followed by a capital letter. * * FE_ALL_EXCEPT must be defined as the logical OR of all exceptions. */ //#define FE_DIVBYZERO 0x00000001 //#define FE_INEXACT 0x00000002 //#define FE_INVALID 0x00000004 //#define FE_OVERFLOW 0x00000008 //#define FE_UNDERFLOW 0x00000010 //#define FE_ALL_EXCEPT \ //(FE_DIVBYZERO|FE_INEXACT|FE_INVALID|FE_OVERFLOW|FE_UNDERFLOW) #define FE_ALL_EXCEPT 0 /* NONE SUPPORTED IN PLACEHOLDER TEMPLATE */ /* * The following macros are to be defined if the respective rounding * direction is supported by the implementation via the fegetround() and * fesetround() functions, each with a unique positive value. * * FE_DOWNWARD * FE_TONEAREST * FE_TOWARDZERO * FE_UPWARD * * Other implementation-specific rounding modes may be defined, and must start * with FE_ followed by a capital letter. */ //#define FE_DOWNWARD 1 //#define FE_TONEAREST 2 //#define FE_TOWARDZERO 3 //#define FE_UPWARD 4 /* * The following typedefs are required. These should be defined properly * to support the architecture specific implementation. See the C and * POSIX standards for details: * * fenv_t * fexcept_t */ typedef int fenv_t; typedef int fexcept_t; /* * Lastly, a FE_DFL_ENV macro must be defined, representing a pointer * to const fenv_t that contains the value of the default floating point * environment. * * NOTE: The extern'ed variable fe_default_env_p is an implementation * detail of this stub. FE_DFL_ENV must point to an instance of * fenv_t with the default fenv_t. The format of fenv_t and where * FE_DFL_ENV is are implementation specific. */ extern const fenv_t *_fe_dfl_env; #define FE_DFL_ENV _fe_dfl_env #endif /* _SYS_FENV_H_ */ 07070100000068000081a4000000000000000000000001630c8dd500000018000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/file.h #include 07070100000069000081a4000000000000000000000001630c8dd500000a9a000000000000000000000000000000000000002800000000./usr/nvptx-none/include/sys/iconvnls.h/* * Copyright (c) 2003-2004, Artem B. Bityuckiy. * Rights transferred to Franklin Electronic Publishers. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ /* * Funtions, macros, etc implimented in iconv library but used by other * NLS-related subsystems too. */ #ifndef __SYS_ICONVNLS_H__ #define __SYS_ICONVNLS_H__ #include <_ansi.h> #include #include #include /* Iconv data path environment variable name */ #define NLS_ENVVAR_NAME "NLSPATH" /* Default NLSPATH value */ #define ICONV_DEFAULT_NLSPATH "/usr/locale" /* Direction markers */ #define ICONV_NLS_FROM 0 #define ICONV_NLS_TO 1 void _iconv_nls_get_state (iconv_t cd, mbstate_t *ps, int direction); int _iconv_nls_set_state (iconv_t cd, mbstate_t *ps, int direction); int _iconv_nls_is_stateful (iconv_t cd, int direction); int _iconv_nls_get_mb_cur_max (iconv_t cd, int direction); size_t _iconv_nls_conv (struct _reent *rptr, iconv_t cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft); const char * _iconv_nls_construct_filename (struct _reent *rptr, const char *file, const char *dir, const char *ext); int _iconv_nls_open (struct _reent *rptr, const char *encoding, iconv_t *towc, iconv_t *fromwc, int flag); char * _iconv_resolve_encoding_name (struct _reent *rptr, const char *ca); #endif /* __SYS_ICONVNLS_H__ */ 0707010000006a000081a4000000000000000000000001630c8dd500000997000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/lock.h#ifndef __SYS_LOCK_H__ #define __SYS_LOCK_H__ /* dummy lock routines for single-threaded aps */ #include #include <_ansi.h> #if !defined(_RETARGETABLE_LOCKING) typedef int _LOCK_T; typedef int _LOCK_RECURSIVE_T; #define __LOCK_INIT(class,lock) static int lock = 0; #define __LOCK_INIT_RECURSIVE(class,lock) static int lock = 0; #define __lock_init(lock) ((void) 0) #define __lock_init_recursive(lock) ((void) 0) #define __lock_close(lock) ((void) 0) #define __lock_close_recursive(lock) ((void) 0) #define __lock_acquire(lock) ((void) 0) #define __lock_acquire_recursive(lock) ((void) 0) #define __lock_try_acquire(lock) ((void) 0) #define __lock_try_acquire_recursive(lock) ((void) 0) #define __lock_release(lock) ((void) 0) #define __lock_release_recursive(lock) ((void) 0) #else #ifdef __cplusplus extern "C" { #endif struct __lock; typedef struct __lock * _LOCK_T; #define _LOCK_RECURSIVE_T _LOCK_T #define __LOCK_INIT(class,lock) extern struct __lock __lock_ ## lock; \ class _LOCK_T lock = &__lock_ ## lock #define __LOCK_INIT_RECURSIVE(class,lock) __LOCK_INIT(class,lock) extern void __retarget_lock_init(_LOCK_T *lock); #define __lock_init(lock) __retarget_lock_init(&lock) extern void __retarget_lock_init_recursive(_LOCK_T *lock); #define __lock_init_recursive(lock) __retarget_lock_init_recursive(&lock) extern void __retarget_lock_close(_LOCK_T lock); #define __lock_close(lock) __retarget_lock_close(lock) extern void __retarget_lock_close_recursive(_LOCK_T lock); #define __lock_close_recursive(lock) __retarget_lock_close_recursive(lock) extern void __retarget_lock_acquire(_LOCK_T lock); #define __lock_acquire(lock) __retarget_lock_acquire(lock) extern void __retarget_lock_acquire_recursive(_LOCK_T lock); #define __lock_acquire_recursive(lock) __retarget_lock_acquire_recursive(lock) extern int __retarget_lock_try_acquire(_LOCK_T lock); #define __lock_try_acquire(lock) __retarget_lock_try_acquire(lock) extern int __retarget_lock_try_acquire_recursive(_LOCK_T lock); #define __lock_try_acquire_recursive(lock) \ __retarget_lock_try_acquire_recursive(lock) extern void __retarget_lock_release(_LOCK_T lock); #define __lock_release(lock) __retarget_lock_release(lock) extern void __retarget_lock_release_recursive(_LOCK_T lock); #define __lock_release_recursive(lock) __retarget_lock_release_recursive(lock) #ifdef __cplusplus } #endif #endif /* !defined(_RETARGETABLE_LOCKING) */ #endif /* __SYS_LOCK_H__ */ 0707010000006b000081a4000000000000000000000001630c8dd5000002bf000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/param.h/* This is a dummy file, not customized for any particular system. If there is a param.h in libc/sys/SYSDIR/sys, it will override this one. */ #ifndef _SYS_PARAM_H # define _SYS_PARAM_H #include #include #include #include #ifndef NBBY # define NBBY 8 /* number of bits in a byte */ #endif #ifndef HZ # define HZ (60) #endif #ifndef NOFILE # define NOFILE (60) #endif #ifndef PATHSIZE # define PATHSIZE (1024) #endif #define MAXPATHLEN PATH_MAX #define MAX(a,b) ((a) > (b) ? (a) : (b)) #define MIN(a,b) ((a) < (b) ? (a) : (b)) #ifndef howmany #define howmany(x, y) (((x)+((y)-1))/(y)) #endif #endif 0707010000006c000081a4000000000000000000000001630c8dd500007650000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/queue.h/*- * Copyright (c) 1991, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)queue.h 8.5 (Berkeley) 8/20/94 * $FreeBSD$ */ #ifndef _SYS_QUEUE_H_ #define _SYS_QUEUE_H_ #include /* * This file defines four types of data structures: singly-linked lists, * singly-linked tail queues, lists and tail queues. * * A singly-linked list is headed by a single forward pointer. The elements * are singly linked for minimum space and pointer manipulation overhead at * the expense of O(n) removal for arbitrary elements. New elements can be * added to the list after an existing element or at the head of the list. * Elements being removed from the head of the list should use the explicit * macro for this purpose for optimum efficiency. A singly-linked list may * only be traversed in the forward direction. Singly-linked lists are ideal * for applications with large datasets and few or no removals or for * implementing a LIFO queue. * * A singly-linked tail queue is headed by a pair of pointers, one to the * head of the list and the other to the tail of the list. The elements are * singly linked for minimum space and pointer manipulation overhead at the * expense of O(n) removal for arbitrary elements. New elements can be added * to the list after an existing element, at the head of the list, or at the * end of the list. Elements being removed from the head of the tail queue * should use the explicit macro for this purpose for optimum efficiency. * A singly-linked tail queue may only be traversed in the forward direction. * Singly-linked tail queues are ideal for applications with large datasets * and few or no removals or for implementing a FIFO queue. * * A list is headed by a single forward pointer (or an array of forward * pointers for a hash table header). The elements are doubly linked * so that an arbitrary element can be removed without a need to * traverse the list. New elements can be added to the list before * or after an existing element or at the head of the list. A list * may be traversed in either direction. * * A tail queue is headed by a pair of pointers, one to the head of the * list and the other to the tail of the list. The elements are doubly * linked so that an arbitrary element can be removed without a need to * traverse the list. New elements can be added to the list before or * after an existing element, at the head of the list, or at the end of * the list. A tail queue may be traversed in either direction. * * For details on the use of these macros, see the queue(3) manual page. * * Below is a summary of implemented functions where: * + means the macro is available * - means the macro is not available * s means the macro is available but is slow (runs in O(n) time) * * SLIST LIST STAILQ TAILQ * _HEAD + + + + * _CLASS_HEAD + + + + * _HEAD_INITIALIZER + + + + * _ENTRY + + + + * _CLASS_ENTRY + + + + * _INIT + + + + * _EMPTY + + + + * _FIRST + + + + * _NEXT + + + + * _PREV - + - + * _LAST - - + + * _LAST_FAST - - - + * _FOREACH + + + + * _FOREACH_FROM + + + + * _FOREACH_SAFE + + + + * _FOREACH_FROM_SAFE + + + + * _FOREACH_REVERSE - - - + * _FOREACH_REVERSE_FROM - - - + * _FOREACH_REVERSE_SAFE - - - + * _FOREACH_REVERSE_FROM_SAFE - - - + * _INSERT_HEAD + + + + * _INSERT_BEFORE - + - + * _INSERT_AFTER + + + + * _INSERT_TAIL - - + + * _CONCAT s s + + * _REMOVE_AFTER + - + - * _REMOVE_HEAD + - + - * _REMOVE s + s + * _SWAP + + + + * */ #ifdef QUEUE_MACRO_DEBUG #warn Use QUEUE_MACRO_DEBUG_TRACE and/or QUEUE_MACRO_DEBUG_TRASH #define QUEUE_MACRO_DEBUG_TRACE #define QUEUE_MACRO_DEBUG_TRASH #endif #ifdef QUEUE_MACRO_DEBUG_TRACE /* Store the last 2 places the queue element or head was altered */ struct qm_trace { unsigned long lastline; unsigned long prevline; const char *lastfile; const char *prevfile; }; #define TRACEBUF struct qm_trace trace; #define TRACEBUF_INITIALIZER { __LINE__, 0, __FILE__, NULL } , #define QMD_TRACE_HEAD(head) do { \ (head)->trace.prevline = (head)->trace.lastline; \ (head)->trace.prevfile = (head)->trace.lastfile; \ (head)->trace.lastline = __LINE__; \ (head)->trace.lastfile = __FILE__; \ } while (0) #define QMD_TRACE_ELEM(elem) do { \ (elem)->trace.prevline = (elem)->trace.lastline; \ (elem)->trace.prevfile = (elem)->trace.lastfile; \ (elem)->trace.lastline = __LINE__; \ (elem)->trace.lastfile = __FILE__; \ } while (0) #else /* !QUEUE_MACRO_DEBUG_TRACE */ #define QMD_TRACE_ELEM(elem) #define QMD_TRACE_HEAD(head) #define TRACEBUF #define TRACEBUF_INITIALIZER #endif /* QUEUE_MACRO_DEBUG_TRACE */ #ifdef QUEUE_MACRO_DEBUG_TRASH #define TRASHIT(x) do {(x) = (void *)-1;} while (0) #define QMD_IS_TRASHED(x) ((x) == (void *)(intptr_t)-1) #else /* !QUEUE_MACRO_DEBUG_TRASH */ #define TRASHIT(x) #define QMD_IS_TRASHED(x) 0 #endif /* QUEUE_MACRO_DEBUG_TRASH */ #if defined(QUEUE_MACRO_DEBUG_TRACE) || defined(QUEUE_MACRO_DEBUG_TRASH) #define QMD_SAVELINK(name, link) void **name = (void *)&(link) #else /* !QUEUE_MACRO_DEBUG_TRACE && !QUEUE_MACRO_DEBUG_TRASH */ #define QMD_SAVELINK(name, link) #endif /* QUEUE_MACRO_DEBUG_TRACE || QUEUE_MACRO_DEBUG_TRASH */ #ifdef __cplusplus /* * In C++ there can be structure lists and class lists: */ #define QUEUE_TYPEOF(type) type #else #define QUEUE_TYPEOF(type) struct type #endif /* * Singly-linked List declarations. */ #define SLIST_HEAD(name, type) \ struct name { \ struct type *slh_first; /* first element */ \ } #define SLIST_CLASS_HEAD(name, type) \ struct name { \ class type *slh_first; /* first element */ \ } #define SLIST_HEAD_INITIALIZER(head) \ { NULL } #define SLIST_ENTRY(type) \ struct { \ struct type *sle_next; /* next element */ \ } #define SLIST_CLASS_ENTRY(type) \ struct { \ class type *sle_next; /* next element */ \ } /* * Singly-linked List functions. */ #if (defined(_KERNEL) && defined(INVARIANTS)) #define QMD_SLIST_CHECK_PREVPTR(prevp, elm) do { \ if (*(prevp) != (elm)) \ panic("Bad prevptr *(%p) == %p != %p", \ (prevp), *(prevp), (elm)); \ } while (0) #else #define QMD_SLIST_CHECK_PREVPTR(prevp, elm) #endif #define SLIST_CONCAT(head1, head2, type, field) do { \ QUEUE_TYPEOF(type) *curelm = SLIST_FIRST(head1); \ if (curelm == NULL) { \ if ((SLIST_FIRST(head1) = SLIST_FIRST(head2)) != NULL) \ SLIST_INIT(head2); \ } else if (SLIST_FIRST(head2) != NULL) { \ while (SLIST_NEXT(curelm, field) != NULL) \ curelm = SLIST_NEXT(curelm, field); \ SLIST_NEXT(curelm, field) = SLIST_FIRST(head2); \ SLIST_INIT(head2); \ } \ } while (0) #define SLIST_EMPTY(head) ((head)->slh_first == NULL) #define SLIST_FIRST(head) ((head)->slh_first) #define SLIST_FOREACH(var, head, field) \ for ((var) = SLIST_FIRST((head)); \ (var); \ (var) = SLIST_NEXT((var), field)) #define SLIST_FOREACH_FROM(var, head, field) \ for ((var) = ((var) ? (var) : SLIST_FIRST((head))); \ (var); \ (var) = SLIST_NEXT((var), field)) #define SLIST_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = SLIST_FIRST((head)); \ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ (var) = (tvar)) #define SLIST_FOREACH_FROM_SAFE(var, head, field, tvar) \ for ((var) = ((var) ? (var) : SLIST_FIRST((head))); \ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ (var) = (tvar)) #define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ for ((varp) = &SLIST_FIRST((head)); \ ((var) = *(varp)) != NULL; \ (varp) = &SLIST_NEXT((var), field)) #define SLIST_INIT(head) do { \ SLIST_FIRST((head)) = NULL; \ } while (0) #define SLIST_INSERT_AFTER(slistelm, elm, field) do { \ SLIST_NEXT((elm), field) = SLIST_NEXT((slistelm), field); \ SLIST_NEXT((slistelm), field) = (elm); \ } while (0) #define SLIST_INSERT_HEAD(head, elm, field) do { \ SLIST_NEXT((elm), field) = SLIST_FIRST((head)); \ SLIST_FIRST((head)) = (elm); \ } while (0) #define SLIST_NEXT(elm, field) ((elm)->field.sle_next) #define SLIST_REMOVE(head, elm, type, field) do { \ QMD_SAVELINK(oldnext, (elm)->field.sle_next); \ if (SLIST_FIRST((head)) == (elm)) { \ SLIST_REMOVE_HEAD((head), field); \ } \ else { \ QUEUE_TYPEOF(type) *curelm = SLIST_FIRST(head); \ while (SLIST_NEXT(curelm, field) != (elm)) \ curelm = SLIST_NEXT(curelm, field); \ SLIST_REMOVE_AFTER(curelm, field); \ } \ TRASHIT(*oldnext); \ } while (0) #define SLIST_REMOVE_AFTER(elm, field) do { \ SLIST_NEXT(elm, field) = \ SLIST_NEXT(SLIST_NEXT(elm, field), field); \ } while (0) #define SLIST_REMOVE_HEAD(head, field) do { \ SLIST_FIRST((head)) = SLIST_NEXT(SLIST_FIRST((head)), field); \ } while (0) #define SLIST_REMOVE_PREVPTR(prevp, elm, field) do { \ QMD_SLIST_CHECK_PREVPTR(prevp, elm); \ *(prevp) = SLIST_NEXT(elm, field); \ TRASHIT((elm)->field.sle_next); \ } while (0) #define SLIST_SWAP(head1, head2, type) do { \ QUEUE_TYPEOF(type) *swap_first = SLIST_FIRST(head1); \ SLIST_FIRST(head1) = SLIST_FIRST(head2); \ SLIST_FIRST(head2) = swap_first; \ } while (0) /* * Singly-linked Tail queue declarations. */ #define STAILQ_HEAD(name, type) \ struct name { \ struct type *stqh_first;/* first element */ \ struct type **stqh_last;/* addr of last next element */ \ } #define STAILQ_CLASS_HEAD(name, type) \ struct name { \ class type *stqh_first; /* first element */ \ class type **stqh_last; /* addr of last next element */ \ } #define STAILQ_HEAD_INITIALIZER(head) \ { NULL, &(head).stqh_first } #define STAILQ_ENTRY(type) \ struct { \ struct type *stqe_next; /* next element */ \ } #define STAILQ_CLASS_ENTRY(type) \ struct { \ class type *stqe_next; /* next element */ \ } /* * Singly-linked Tail queue functions. */ #define STAILQ_CONCAT(head1, head2) do { \ if (!STAILQ_EMPTY((head2))) { \ *(head1)->stqh_last = (head2)->stqh_first; \ (head1)->stqh_last = (head2)->stqh_last; \ STAILQ_INIT((head2)); \ } \ } while (0) #define STAILQ_EMPTY(head) ((head)->stqh_first == NULL) #define STAILQ_FIRST(head) ((head)->stqh_first) #define STAILQ_FOREACH(var, head, field) \ for((var) = STAILQ_FIRST((head)); \ (var); \ (var) = STAILQ_NEXT((var), field)) #define STAILQ_FOREACH_FROM(var, head, field) \ for ((var) = ((var) ? (var) : STAILQ_FIRST((head))); \ (var); \ (var) = STAILQ_NEXT((var), field)) #define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = STAILQ_FIRST((head)); \ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ (var) = (tvar)) #define STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) \ for ((var) = ((var) ? (var) : STAILQ_FIRST((head))); \ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ (var) = (tvar)) #define STAILQ_INIT(head) do { \ STAILQ_FIRST((head)) = NULL; \ (head)->stqh_last = &STAILQ_FIRST((head)); \ } while (0) #define STAILQ_INSERT_AFTER(head, tqelm, elm, field) do { \ if ((STAILQ_NEXT((elm), field) = STAILQ_NEXT((tqelm), field)) == NULL)\ (head)->stqh_last = &STAILQ_NEXT((elm), field); \ STAILQ_NEXT((tqelm), field) = (elm); \ } while (0) #define STAILQ_INSERT_HEAD(head, elm, field) do { \ if ((STAILQ_NEXT((elm), field) = STAILQ_FIRST((head))) == NULL) \ (head)->stqh_last = &STAILQ_NEXT((elm), field); \ STAILQ_FIRST((head)) = (elm); \ } while (0) #define STAILQ_INSERT_TAIL(head, elm, field) do { \ STAILQ_NEXT((elm), field) = NULL; \ *(head)->stqh_last = (elm); \ (head)->stqh_last = &STAILQ_NEXT((elm), field); \ } while (0) #define STAILQ_LAST(head, type, field) \ (STAILQ_EMPTY((head)) ? NULL : \ __containerof((head)->stqh_last, \ QUEUE_TYPEOF(type), field.stqe_next)) #define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) #define STAILQ_REMOVE(head, elm, type, field) do { \ QMD_SAVELINK(oldnext, (elm)->field.stqe_next); \ if (STAILQ_FIRST((head)) == (elm)) { \ STAILQ_REMOVE_HEAD((head), field); \ } \ else { \ QUEUE_TYPEOF(type) *curelm = STAILQ_FIRST(head); \ while (STAILQ_NEXT(curelm, field) != (elm)) \ curelm = STAILQ_NEXT(curelm, field); \ STAILQ_REMOVE_AFTER(head, curelm, field); \ } \ TRASHIT(*oldnext); \ } while (0) #define STAILQ_REMOVE_AFTER(head, elm, field) do { \ if ((STAILQ_NEXT(elm, field) = \ STAILQ_NEXT(STAILQ_NEXT(elm, field), field)) == NULL) \ (head)->stqh_last = &STAILQ_NEXT((elm), field); \ } while (0) #define STAILQ_REMOVE_HEAD(head, field) do { \ if ((STAILQ_FIRST((head)) = \ STAILQ_NEXT(STAILQ_FIRST((head)), field)) == NULL) \ (head)->stqh_last = &STAILQ_FIRST((head)); \ } while (0) #define STAILQ_REMOVE_HEAD_UNTIL(head, elm, field) do { \ if ((STAILQ_FIRST((head)) = STAILQ_NEXT((elm), field)) == NULL) \ (head)->stqh_last = &STAILQ_FIRST((head)); \ } while (0) #define STAILQ_SWAP(head1, head2, type) do { \ QUEUE_TYPEOF(type) *swap_first = STAILQ_FIRST(head1); \ QUEUE_TYPEOF(type) **swap_last = (head1)->stqh_last; \ STAILQ_FIRST(head1) = STAILQ_FIRST(head2); \ (head1)->stqh_last = (head2)->stqh_last; \ STAILQ_FIRST(head2) = swap_first; \ (head2)->stqh_last = swap_last; \ if (STAILQ_EMPTY(head1)) \ (head1)->stqh_last = &STAILQ_FIRST(head1); \ if (STAILQ_EMPTY(head2)) \ (head2)->stqh_last = &STAILQ_FIRST(head2); \ } while (0) /* * List declarations. */ #define LIST_HEAD(name, type) \ struct name { \ struct type *lh_first; /* first element */ \ } #define LIST_CLASS_HEAD(name, type) \ struct name { \ class type *lh_first; /* first element */ \ } #define LIST_HEAD_INITIALIZER(head) \ { NULL } #define LIST_ENTRY(type) \ struct { \ struct type *le_next; /* next element */ \ struct type **le_prev; /* address of previous next element */ \ } #define LIST_CLASS_ENTRY(type) \ struct { \ class type *le_next; /* next element */ \ class type **le_prev; /* address of previous next element */ \ } /* * List functions. */ #if (defined(_KERNEL) && defined(INVARIANTS)) /* * QMD_LIST_CHECK_HEAD(LIST_HEAD *head, LIST_ENTRY NAME) * * If the list is non-empty, validates that the first element of the list * points back at 'head.' */ #define QMD_LIST_CHECK_HEAD(head, field) do { \ if (LIST_FIRST((head)) != NULL && \ LIST_FIRST((head))->field.le_prev != \ &LIST_FIRST((head))) \ panic("Bad list head %p first->prev != head", (head)); \ } while (0) /* * QMD_LIST_CHECK_NEXT(TYPE *elm, LIST_ENTRY NAME) * * If an element follows 'elm' in the list, validates that the next element * points back at 'elm.' */ #define QMD_LIST_CHECK_NEXT(elm, field) do { \ if (LIST_NEXT((elm), field) != NULL && \ LIST_NEXT((elm), field)->field.le_prev != \ &((elm)->field.le_next)) \ panic("Bad link elm %p next->prev != elm", (elm)); \ } while (0) /* * QMD_LIST_CHECK_PREV(TYPE *elm, LIST_ENTRY NAME) * * Validates that the previous element (or head of the list) points to 'elm.' */ #define QMD_LIST_CHECK_PREV(elm, field) do { \ if (*(elm)->field.le_prev != (elm)) \ panic("Bad link elm %p prev->next != elm", (elm)); \ } while (0) #else #define QMD_LIST_CHECK_HEAD(head, field) #define QMD_LIST_CHECK_NEXT(elm, field) #define QMD_LIST_CHECK_PREV(elm, field) #endif /* (_KERNEL && INVARIANTS) */ #define LIST_CONCAT(head1, head2, type, field) do { \ QUEUE_TYPEOF(type) *curelm = LIST_FIRST(head1); \ if (curelm == NULL) { \ if ((LIST_FIRST(head1) = LIST_FIRST(head2)) != NULL) { \ LIST_FIRST(head2)->field.le_prev = \ &LIST_FIRST((head1)); \ LIST_INIT(head2); \ } \ } else if (LIST_FIRST(head2) != NULL) { \ while (LIST_NEXT(curelm, field) != NULL) \ curelm = LIST_NEXT(curelm, field); \ LIST_NEXT(curelm, field) = LIST_FIRST(head2); \ LIST_FIRST(head2)->field.le_prev = &LIST_NEXT(curelm, field); \ LIST_INIT(head2); \ } \ } while (0) #define LIST_EMPTY(head) ((head)->lh_first == NULL) #define LIST_FIRST(head) ((head)->lh_first) #define LIST_FOREACH(var, head, field) \ for ((var) = LIST_FIRST((head)); \ (var); \ (var) = LIST_NEXT((var), field)) #define LIST_FOREACH_FROM(var, head, field) \ for ((var) = ((var) ? (var) : LIST_FIRST((head))); \ (var); \ (var) = LIST_NEXT((var), field)) #define LIST_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = LIST_FIRST((head)); \ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ (var) = (tvar)) #define LIST_FOREACH_FROM_SAFE(var, head, field, tvar) \ for ((var) = ((var) ? (var) : LIST_FIRST((head))); \ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ (var) = (tvar)) #define LIST_INIT(head) do { \ LIST_FIRST((head)) = NULL; \ } while (0) #define LIST_INSERT_AFTER(listelm, elm, field) do { \ QMD_LIST_CHECK_NEXT(listelm, field); \ if ((LIST_NEXT((elm), field) = LIST_NEXT((listelm), field)) != NULL)\ LIST_NEXT((listelm), field)->field.le_prev = \ &LIST_NEXT((elm), field); \ LIST_NEXT((listelm), field) = (elm); \ (elm)->field.le_prev = &LIST_NEXT((listelm), field); \ } while (0) #define LIST_INSERT_BEFORE(listelm, elm, field) do { \ QMD_LIST_CHECK_PREV(listelm, field); \ (elm)->field.le_prev = (listelm)->field.le_prev; \ LIST_NEXT((elm), field) = (listelm); \ *(listelm)->field.le_prev = (elm); \ (listelm)->field.le_prev = &LIST_NEXT((elm), field); \ } while (0) #define LIST_INSERT_HEAD(head, elm, field) do { \ QMD_LIST_CHECK_HEAD((head), field); \ if ((LIST_NEXT((elm), field) = LIST_FIRST((head))) != NULL) \ LIST_FIRST((head))->field.le_prev = &LIST_NEXT((elm), field);\ LIST_FIRST((head)) = (elm); \ (elm)->field.le_prev = &LIST_FIRST((head)); \ } while (0) #define LIST_NEXT(elm, field) ((elm)->field.le_next) #define LIST_PREV(elm, head, type, field) \ ((elm)->field.le_prev == &LIST_FIRST((head)) ? NULL : \ __containerof((elm)->field.le_prev, \ QUEUE_TYPEOF(type), field.le_next)) #define LIST_REMOVE(elm, field) do { \ QMD_SAVELINK(oldnext, (elm)->field.le_next); \ QMD_SAVELINK(oldprev, (elm)->field.le_prev); \ QMD_LIST_CHECK_NEXT(elm, field); \ QMD_LIST_CHECK_PREV(elm, field); \ if (LIST_NEXT((elm), field) != NULL) \ LIST_NEXT((elm), field)->field.le_prev = \ (elm)->field.le_prev; \ *(elm)->field.le_prev = LIST_NEXT((elm), field); \ TRASHIT(*oldnext); \ TRASHIT(*oldprev); \ } while (0) #define LIST_SWAP(head1, head2, type, field) do { \ QUEUE_TYPEOF(type) *swap_tmp = LIST_FIRST(head1); \ LIST_FIRST((head1)) = LIST_FIRST((head2)); \ LIST_FIRST((head2)) = swap_tmp; \ if ((swap_tmp = LIST_FIRST((head1))) != NULL) \ swap_tmp->field.le_prev = &LIST_FIRST((head1)); \ if ((swap_tmp = LIST_FIRST((head2))) != NULL) \ swap_tmp->field.le_prev = &LIST_FIRST((head2)); \ } while (0) /* * Tail queue declarations. */ #define TAILQ_HEAD(name, type) \ struct name { \ struct type *tqh_first; /* first element */ \ struct type **tqh_last; /* addr of last next element */ \ TRACEBUF \ } #define TAILQ_CLASS_HEAD(name, type) \ struct name { \ class type *tqh_first; /* first element */ \ class type **tqh_last; /* addr of last next element */ \ TRACEBUF \ } #define TAILQ_HEAD_INITIALIZER(head) \ { NULL, &(head).tqh_first, TRACEBUF_INITIALIZER } #define TAILQ_ENTRY(type) \ struct { \ struct type *tqe_next; /* next element */ \ struct type **tqe_prev; /* address of previous next element */ \ TRACEBUF \ } #define TAILQ_CLASS_ENTRY(type) \ struct { \ class type *tqe_next; /* next element */ \ class type **tqe_prev; /* address of previous next element */ \ TRACEBUF \ } /* * Tail queue functions. */ #if (defined(_KERNEL) && defined(INVARIANTS)) /* * QMD_TAILQ_CHECK_HEAD(TAILQ_HEAD *head, TAILQ_ENTRY NAME) * * If the tailq is non-empty, validates that the first element of the tailq * points back at 'head.' */ #define QMD_TAILQ_CHECK_HEAD(head, field) do { \ if (!TAILQ_EMPTY(head) && \ TAILQ_FIRST((head))->field.tqe_prev != \ &TAILQ_FIRST((head))) \ panic("Bad tailq head %p first->prev != head", (head)); \ } while (0) /* * QMD_TAILQ_CHECK_TAIL(TAILQ_HEAD *head, TAILQ_ENTRY NAME) * * Validates that the tail of the tailq is a pointer to pointer to NULL. */ #define QMD_TAILQ_CHECK_TAIL(head, field) do { \ if (*(head)->tqh_last != NULL) \ panic("Bad tailq NEXT(%p->tqh_last) != NULL", (head)); \ } while (0) /* * QMD_TAILQ_CHECK_NEXT(TYPE *elm, TAILQ_ENTRY NAME) * * If an element follows 'elm' in the tailq, validates that the next element * points back at 'elm.' */ #define QMD_TAILQ_CHECK_NEXT(elm, field) do { \ if (TAILQ_NEXT((elm), field) != NULL && \ TAILQ_NEXT((elm), field)->field.tqe_prev != \ &((elm)->field.tqe_next)) \ panic("Bad link elm %p next->prev != elm", (elm)); \ } while (0) /* * QMD_TAILQ_CHECK_PREV(TYPE *elm, TAILQ_ENTRY NAME) * * Validates that the previous element (or head of the tailq) points to 'elm.' */ #define QMD_TAILQ_CHECK_PREV(elm, field) do { \ if (*(elm)->field.tqe_prev != (elm)) \ panic("Bad link elm %p prev->next != elm", (elm)); \ } while (0) #else #define QMD_TAILQ_CHECK_HEAD(head, field) #define QMD_TAILQ_CHECK_TAIL(head, headname) #define QMD_TAILQ_CHECK_NEXT(elm, field) #define QMD_TAILQ_CHECK_PREV(elm, field) #endif /* (_KERNEL && INVARIANTS) */ #define TAILQ_CONCAT(head1, head2, field) do { \ if (!TAILQ_EMPTY(head2)) { \ *(head1)->tqh_last = (head2)->tqh_first; \ (head2)->tqh_first->field.tqe_prev = (head1)->tqh_last; \ (head1)->tqh_last = (head2)->tqh_last; \ TAILQ_INIT((head2)); \ QMD_TRACE_HEAD(head1); \ QMD_TRACE_HEAD(head2); \ } \ } while (0) #define TAILQ_EMPTY(head) ((head)->tqh_first == NULL) #define TAILQ_FIRST(head) ((head)->tqh_first) #define TAILQ_FOREACH(var, head, field) \ for ((var) = TAILQ_FIRST((head)); \ (var); \ (var) = TAILQ_NEXT((var), field)) #define TAILQ_FOREACH_FROM(var, head, field) \ for ((var) = ((var) ? (var) : TAILQ_FIRST((head))); \ (var); \ (var) = TAILQ_NEXT((var), field)) #define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = TAILQ_FIRST((head)); \ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ (var) = (tvar)) #define TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) \ for ((var) = ((var) ? (var) : TAILQ_FIRST((head))); \ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ (var) = (tvar)) #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ for ((var) = TAILQ_LAST((head), headname); \ (var); \ (var) = TAILQ_PREV((var), headname, field)) #define TAILQ_FOREACH_REVERSE_FROM(var, head, headname, field) \ for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname)); \ (var); \ (var) = TAILQ_PREV((var), headname, field)) #define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ for ((var) = TAILQ_LAST((head), headname); \ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ (var) = (tvar)) #define TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \ for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname)); \ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ (var) = (tvar)) #define TAILQ_INIT(head) do { \ TAILQ_FIRST((head)) = NULL; \ (head)->tqh_last = &TAILQ_FIRST((head)); \ QMD_TRACE_HEAD(head); \ } while (0) #define TAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ QMD_TAILQ_CHECK_NEXT(listelm, field); \ if ((TAILQ_NEXT((elm), field) = TAILQ_NEXT((listelm), field)) != NULL)\ TAILQ_NEXT((elm), field)->field.tqe_prev = \ &TAILQ_NEXT((elm), field); \ else { \ (head)->tqh_last = &TAILQ_NEXT((elm), field); \ QMD_TRACE_HEAD(head); \ } \ TAILQ_NEXT((listelm), field) = (elm); \ (elm)->field.tqe_prev = &TAILQ_NEXT((listelm), field); \ QMD_TRACE_ELEM(&(elm)->field); \ QMD_TRACE_ELEM(&(listelm)->field); \ } while (0) #define TAILQ_INSERT_BEFORE(listelm, elm, field) do { \ QMD_TAILQ_CHECK_PREV(listelm, field); \ (elm)->field.tqe_prev = (listelm)->field.tqe_prev; \ TAILQ_NEXT((elm), field) = (listelm); \ *(listelm)->field.tqe_prev = (elm); \ (listelm)->field.tqe_prev = &TAILQ_NEXT((elm), field); \ QMD_TRACE_ELEM(&(elm)->field); \ QMD_TRACE_ELEM(&(listelm)->field); \ } while (0) #define TAILQ_INSERT_HEAD(head, elm, field) do { \ QMD_TAILQ_CHECK_HEAD(head, field); \ if ((TAILQ_NEXT((elm), field) = TAILQ_FIRST((head))) != NULL) \ TAILQ_FIRST((head))->field.tqe_prev = \ &TAILQ_NEXT((elm), field); \ else \ (head)->tqh_last = &TAILQ_NEXT((elm), field); \ TAILQ_FIRST((head)) = (elm); \ (elm)->field.tqe_prev = &TAILQ_FIRST((head)); \ QMD_TRACE_HEAD(head); \ QMD_TRACE_ELEM(&(elm)->field); \ } while (0) #define TAILQ_INSERT_TAIL(head, elm, field) do { \ QMD_TAILQ_CHECK_TAIL(head, field); \ TAILQ_NEXT((elm), field) = NULL; \ (elm)->field.tqe_prev = (head)->tqh_last; \ *(head)->tqh_last = (elm); \ (head)->tqh_last = &TAILQ_NEXT((elm), field); \ QMD_TRACE_HEAD(head); \ QMD_TRACE_ELEM(&(elm)->field); \ } while (0) #define TAILQ_LAST(head, headname) \ (*(((struct headname *)((head)->tqh_last))->tqh_last)) /* * The FAST function is fast in that it causes no data access other * then the access to the head. The standard LAST function above * will cause a data access of both the element you want and * the previous element. FAST is very useful for instances when * you may want to prefetch the last data element. */ #define TAILQ_LAST_FAST(head, type, field) \ (TAILQ_EMPTY(head) ? NULL : __containerof((head)->tqh_last, QUEUE_TYPEOF(type), field.tqe_next)) #define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next) #define TAILQ_PREV(elm, headname, field) \ (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last)) #define TAILQ_REMOVE(head, elm, field) do { \ QMD_SAVELINK(oldnext, (elm)->field.tqe_next); \ QMD_SAVELINK(oldprev, (elm)->field.tqe_prev); \ QMD_TAILQ_CHECK_NEXT(elm, field); \ QMD_TAILQ_CHECK_PREV(elm, field); \ if ((TAILQ_NEXT((elm), field)) != NULL) \ TAILQ_NEXT((elm), field)->field.tqe_prev = \ (elm)->field.tqe_prev; \ else { \ (head)->tqh_last = (elm)->field.tqe_prev; \ QMD_TRACE_HEAD(head); \ } \ *(elm)->field.tqe_prev = TAILQ_NEXT((elm), field); \ TRASHIT(*oldnext); \ TRASHIT(*oldprev); \ QMD_TRACE_ELEM(&(elm)->field); \ } while (0) #define TAILQ_SWAP(head1, head2, type, field) do { \ QUEUE_TYPEOF(type) *swap_first = (head1)->tqh_first; \ QUEUE_TYPEOF(type) **swap_last = (head1)->tqh_last; \ (head1)->tqh_first = (head2)->tqh_first; \ (head1)->tqh_last = (head2)->tqh_last; \ (head2)->tqh_first = swap_first; \ (head2)->tqh_last = swap_last; \ if ((swap_first = (head1)->tqh_first) != NULL) \ swap_first->field.tqe_prev = &(head1)->tqh_first; \ else \ (head1)->tqh_last = &(head1)->tqh_first; \ if ((swap_first = (head2)->tqh_first) != NULL) \ swap_first->field.tqe_prev = &(head2)->tqh_first; \ else \ (head2)->tqh_last = &(head2)->tqh_first; \ } while (0) #ifdef _KERNEL /* * XXX insque() and remque() are an old way of handling certain queues. * They bogusly assumes that all queue heads look alike. */ struct quehead { struct quehead *qh_link; struct quehead *qh_rlink; }; #ifdef __GNUC__ static __inline void insque(void *a, void *b) { struct quehead *element = (struct quehead *)a, *head = (struct quehead *)b; element->qh_link = head->qh_link; element->qh_rlink = head; head->qh_link = element; element->qh_link->qh_rlink = element; } static __inline void remque(void *a) { struct quehead *element = (struct quehead *)a; element->qh_link->qh_rlink = element->qh_rlink; element->qh_rlink->qh_link = element->qh_link; element->qh_rlink = 0; } #else /* !__GNUC__ */ void insque(void *a, void *b); void remque(void *a); #endif /* __GNUC__ */ #endif /* _KERNEL */ #endif /* !_SYS_QUEUE_H_ */ 0707010000006d000081a4000000000000000000000001630c8dd500006478000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/reent.h/* This header file provides the reentrancy. */ /* WARNING: All identifiers here must begin with an underscore. This file is included by stdio.h and others and we therefore must only use identifiers in the namespace allotted to us. */ #ifndef _SYS_REENT_H_ #ifdef __cplusplus extern "C" { #endif #define _SYS_REENT_H_ #include <_ansi.h> #include #include #define _NULL 0 #ifndef __Long #if __LONG_MAX__ == 2147483647L #define __Long long typedef unsigned __Long __ULong; #elif __INT_MAX__ == 2147483647 #define __Long int typedef unsigned __Long __ULong; #endif #endif #if !defined( __Long) #include #endif #ifndef __machine_flock_t_defined #include typedef _LOCK_RECURSIVE_T _flock_t; #endif #ifndef __Long #define __Long __int32_t typedef __uint32_t __ULong; #endif struct _reent; struct __locale_t; /* * If _REENT_SMALL is defined, we make struct _reent as small as possible, * by having nearly everything possible allocated at first use. */ struct _Bigint { struct _Bigint *_next; int _k, _maxwds, _sign, _wds; __ULong _x[1]; }; /* needed by reentrant structure */ struct __tm { int __tm_sec; int __tm_min; int __tm_hour; int __tm_mday; int __tm_mon; int __tm_year; int __tm_wday; int __tm_yday; int __tm_isdst; }; /* * atexit() support. */ #define _ATEXIT_SIZE 32 /* must be at least 32 to guarantee ANSI conformance */ struct _on_exit_args { void * _fnargs[_ATEXIT_SIZE]; /* user fn args */ void * _dso_handle[_ATEXIT_SIZE]; /* Bitmask is set if user function takes arguments. */ __ULong _fntypes; /* type of exit routine - Must have at least _ATEXIT_SIZE bits */ /* Bitmask is set if function was registered via __cxa_atexit. */ __ULong _is_cxa; }; #ifdef _REENT_SMALL struct _atexit { struct _atexit *_next; /* next in list */ int _ind; /* next index in this table */ void (*_fns[_ATEXIT_SIZE])(void); /* the table itself */ struct _on_exit_args * _on_exit_args_ptr; }; # define _ATEXIT_INIT {_NULL, 0, {_NULL}, _NULL} #else struct _atexit { struct _atexit *_next; /* next in list */ int _ind; /* next index in this table */ /* Some entries may already have been called, and will be NULL. */ void (*_fns[_ATEXIT_SIZE])(void); /* the table itself */ struct _on_exit_args _on_exit_args; }; # define _ATEXIT_INIT {_NULL, 0, {_NULL}, {{_NULL}, {_NULL}, 0, 0}} #endif #ifdef _REENT_GLOBAL_ATEXIT # define _REENT_INIT_ATEXIT #else # define _REENT_INIT_ATEXIT \ _NULL, _ATEXIT_INIT, #endif /* * Stdio buffers. * * This and __FILE are defined here because we need them for struct _reent, * but we don't want stdio.h included when stdlib.h is. */ struct __sbuf { unsigned char *_base; int _size; }; /* * Stdio state variables. * * The following always hold: * * if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR), * _lbfsize is -_bf._size, else _lbfsize is 0 * if _flags&__SRD, _w is 0 * if _flags&__SWR, _r is 0 * * This ensures that the getc and putc macros (or inline functions) never * try to write or read from a file that is in `read' or `write' mode. * (Moreover, they can, and do, automatically switch from read mode to * write mode, and back, on "r+" and "w+" files.) * * _lbfsize is used only to make the inline line-buffered output stream * code as compact as possible. * * _ub, _up, and _ur are used when ungetc() pushes back more characters * than fit in the current _bf, or when ungetc() pushes back a character * that does not match the previous one in _bf. When this happens, * _ub._base becomes non-nil (i.e., a stream has ungetc() data iff * _ub._base!=NULL) and _up and _ur save the current values of _p and _r. */ #if defined(_REENT_SMALL) && !defined(_REENT_GLOBAL_STDIO_STREAMS) /* * struct __sFILE_fake is the start of a struct __sFILE, with only the * minimal fields allocated. In __sinit() we really allocate the 3 * standard streams, etc., and point away from this fake. */ struct __sFILE_fake { unsigned char *_p; /* current position in (some) buffer */ int _r; /* read space left for getc() */ int _w; /* write space left for putc() */ short _flags; /* flags, below; this FILE is free if 0 */ short _file; /* fileno, if Unix descriptor, else -1 */ struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */ int _lbfsize; /* 0 or -_bf._size, for inline putc */ struct _reent *_data; }; /* Following is needed both in libc/stdio and libc/stdlib so we put it * here instead of libc/stdio/local.h where it was previously. */ extern void __sinit (struct _reent *); # define _REENT_SMALL_CHECK_INIT(ptr) \ do \ { \ if ((ptr) && !(ptr)->__sdidinit) \ __sinit (ptr); \ } \ while (0) #else /* _REENT_SMALL && !_REENT_GLOBAL_STDIO_STREAMS */ # define _REENT_SMALL_CHECK_INIT(ptr) /* nothing */ #endif /* _REENT_SMALL && !_REENT_GLOBAL_STDIO_STREAMS */ struct __sFILE { unsigned char *_p; /* current position in (some) buffer */ int _r; /* read space left for getc() */ int _w; /* write space left for putc() */ short _flags; /* flags, below; this FILE is free if 0 */ short _file; /* fileno, if Unix descriptor, else -1 */ struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */ int _lbfsize; /* 0 or -_bf._size, for inline putc */ #ifdef _REENT_SMALL struct _reent *_data; #endif /* operations */ void * _cookie; /* cookie passed to io functions */ _READ_WRITE_RETURN_TYPE (*_read) (struct _reent *, void *, char *, _READ_WRITE_BUFSIZE_TYPE); _READ_WRITE_RETURN_TYPE (*_write) (struct _reent *, void *, const char *, _READ_WRITE_BUFSIZE_TYPE); _fpos_t (*_seek) (struct _reent *, void *, _fpos_t, int); int (*_close) (struct _reent *, void *); /* separate buffer for long sequences of ungetc() */ struct __sbuf _ub; /* ungetc buffer */ unsigned char *_up; /* saved _p when _p is doing ungetc data */ int _ur; /* saved _r when _r is counting ungetc data */ /* tricks to meet minimum requirements even when malloc() fails */ unsigned char _ubuf[3]; /* guarantee an ungetc() buffer */ unsigned char _nbuf[1]; /* guarantee a getc() buffer */ /* separate buffer for fgetline() when line crosses buffer boundary */ struct __sbuf _lb; /* buffer for fgetline() */ /* Unix stdio files get aligned to block boundaries on fseek() */ int _blksize; /* stat.st_blksize (may be != _bf._size) */ _off_t _offset; /* current lseek offset */ #ifndef _REENT_SMALL struct _reent *_data; /* Here for binary compatibility? Remove? */ #endif #ifndef __SINGLE_THREAD__ _flock_t _lock; /* for thread-safety locking */ #endif _mbstate_t _mbstate; /* for wide char stdio functions. */ int _flags2; /* for future use */ }; #ifdef __CUSTOM_FILE_IO__ /* Get custom _FILE definition. */ #include #else /* !__CUSTOM_FILE_IO__ */ #ifdef __LARGE64_FILES struct __sFILE64 { unsigned char *_p; /* current position in (some) buffer */ int _r; /* read space left for getc() */ int _w; /* write space left for putc() */ short _flags; /* flags, below; this FILE is free if 0 */ short _file; /* fileno, if Unix descriptor, else -1 */ struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */ int _lbfsize; /* 0 or -_bf._size, for inline putc */ struct _reent *_data; /* operations */ void * _cookie; /* cookie passed to io functions */ _READ_WRITE_RETURN_TYPE (*_read) (struct _reent *, void *, char *, _READ_WRITE_BUFSIZE_TYPE); _READ_WRITE_RETURN_TYPE (*_write) (struct _reent *, void *, const char *, _READ_WRITE_BUFSIZE_TYPE); _fpos_t (*_seek) (struct _reent *, void *, _fpos_t, int); int (*_close) (struct _reent *, void *); /* separate buffer for long sequences of ungetc() */ struct __sbuf _ub; /* ungetc buffer */ unsigned char *_up; /* saved _p when _p is doing ungetc data */ int _ur; /* saved _r when _r is counting ungetc data */ /* tricks to meet minimum requirements even when malloc() fails */ unsigned char _ubuf[3]; /* guarantee an ungetc() buffer */ unsigned char _nbuf[1]; /* guarantee a getc() buffer */ /* separate buffer for fgetline() when line crosses buffer boundary */ struct __sbuf _lb; /* buffer for fgetline() */ /* Unix stdio files get aligned to block boundaries on fseek() */ int _blksize; /* stat.st_blksize (may be != _bf._size) */ int _flags2; /* for future use */ _off64_t _offset; /* current lseek offset */ _fpos64_t (*_seek64) (struct _reent *, void *, _fpos64_t, int); #ifndef __SINGLE_THREAD__ _flock_t _lock; /* for thread-safety locking */ #endif _mbstate_t _mbstate; /* for wide char stdio functions. */ }; typedef struct __sFILE64 __FILE; #else typedef struct __sFILE __FILE; #endif /* __LARGE64_FILES */ #endif /* !__CUSTOM_FILE_IO__ */ struct _glue { struct _glue *_next; int _niobs; __FILE *_iobs; }; /* * rand48 family support * * Copyright (c) 1993 Martin Birgmeier * All rights reserved. * * You may redistribute unmodified or modified versions of this source * code provided that the above copyright notice and this and the * following conditions are retained. * * This software is provided ``as is'', and comes with no warranties * of any kind. I shall in no event be liable for anything that happens * to anyone/anything when using this software. */ #define _RAND48_SEED_0 (0x330e) #define _RAND48_SEED_1 (0xabcd) #define _RAND48_SEED_2 (0x1234) #define _RAND48_MULT_0 (0xe66d) #define _RAND48_MULT_1 (0xdeec) #define _RAND48_MULT_2 (0x0005) #define _RAND48_ADD (0x000b) struct _rand48 { unsigned short _seed[3]; unsigned short _mult[3]; unsigned short _add; #ifdef _REENT_SMALL /* Put this in here as well, for good luck. */ __extension__ unsigned long long _rand_next; #endif }; /* How big the some arrays are. */ #define _REENT_EMERGENCY_SIZE 25 #define _REENT_ASCTIME_SIZE 26 #define _REENT_SIGNAL_SIZE 24 /* * struct _reent * * This structure contains *all* globals needed by the library. * It's raison d'etre is to facilitate threads by making all library routines * reentrant. IE: All state information is contained here. */ #ifdef _REENT_SMALL struct _mprec { /* used by mprec routines */ struct _Bigint *_result; int _result_k; struct _Bigint *_p5s; struct _Bigint **_freelist; }; struct _misc_reent { /* miscellaneous reentrant data */ char *_strtok_last; _mbstate_t _mblen_state; _mbstate_t _wctomb_state; _mbstate_t _mbtowc_state; char _l64a_buf[8]; int _getdate_err; _mbstate_t _mbrlen_state; _mbstate_t _mbrtowc_state; _mbstate_t _mbsrtowcs_state; _mbstate_t _wcrtomb_state; _mbstate_t _wcsrtombs_state; }; /* This version of _reent is laid out with "int"s in pairs, to help * ports with 16-bit int's but 32-bit pointers, align nicely. */ struct _reent { /* As an exception to the above put _errno first for binary compatibility with non _REENT_SMALL targets. */ int _errno; /* local copy of errno */ /* FILE is a big struct and may change over time. To try to achieve binary compatibility with future versions, put stdin,stdout,stderr here. These are pointers into member __sf defined below. */ __FILE *_stdin, *_stdout, *_stderr; /* XXX */ int _inc; /* used by tmpnam */ char *_emergency; int __sdidinit; /* 1 means stdio has been init'd */ int _unspecified_locale_info; /* unused, reserved for locale stuff */ struct __locale_t *_locale;/* per-thread locale */ struct _mprec *_mp; void (*__cleanup) (struct _reent *); int _gamma_signgam; /* used by some fp conversion routines */ int _cvtlen; /* should be size_t */ char *_cvtbuf; struct _rand48 *_r48; struct __tm *_localtime_buf; char *_asctime_buf; /* signal info */ void (**(_sig_func))(int); # ifndef _REENT_GLOBAL_ATEXIT /* atexit stuff */ struct _atexit *_atexit; struct _atexit _atexit0; # endif struct _glue __sglue; /* root of glue chain */ __FILE *__sf; /* file descriptors */ struct _misc_reent *_misc; /* strtok, multibyte states */ char *_signal_buf; /* strsignal */ }; #ifdef _REENT_GLOBAL_STDIO_STREAMS extern __FILE __sf[3]; # define _REENT_INIT(var) \ { 0, \ &__sf[0], \ &__sf[1], \ &__sf[2], \ 0, \ _NULL, \ 0, \ 0, \ _NULL, \ _NULL, \ _NULL, \ 0, \ 0, \ _NULL, \ _NULL, \ _NULL, \ _NULL, \ _NULL, \ _REENT_INIT_ATEXIT \ {_NULL, 0, _NULL}, \ _NULL, \ _NULL, \ _NULL \ } #define _REENT_INIT_PTR_ZEROED(var) \ { (var)->_stdin = &__sf[0]; \ (var)->_stdout = &__sf[1]; \ (var)->_stderr = &__sf[2]; \ } #else /* _REENT_GLOBAL_STDIO_STREAMS */ extern const struct __sFILE_fake __sf_fake_stdin; extern const struct __sFILE_fake __sf_fake_stdout; extern const struct __sFILE_fake __sf_fake_stderr; # define _REENT_INIT(var) \ { 0, \ (__FILE *)&__sf_fake_stdin, \ (__FILE *)&__sf_fake_stdout, \ (__FILE *)&__sf_fake_stderr, \ 0, \ _NULL, \ 0, \ 0, \ _NULL, \ _NULL, \ _NULL, \ 0, \ 0, \ _NULL, \ _NULL, \ _NULL, \ _NULL, \ _NULL, \ _REENT_INIT_ATEXIT \ {_NULL, 0, _NULL}, \ _NULL, \ _NULL, \ _NULL \ } #define _REENT_INIT_PTR_ZEROED(var) \ { (var)->_stdin = (__FILE *)&__sf_fake_stdin; \ (var)->_stdout = (__FILE *)&__sf_fake_stdout; \ (var)->_stderr = (__FILE *)&__sf_fake_stderr; \ } #endif /* _REENT_GLOBAL_STDIO_STREAMS */ /* Specify how to handle reent_check malloc failures. */ #ifdef _REENT_CHECK_VERIFY #include #define __reent_assert(x) ((x) ? (void)0 : __assert_func(__FILE__, __LINE__, (char *)0, "REENT malloc succeeded")) #else #define __reent_assert(x) ((void)0) #endif #ifdef __CUSTOM_FILE_IO__ #error Custom FILE I/O and _REENT_SMALL not currently supported. #endif /* Generic _REENT check macro. */ #define _REENT_CHECK(var, what, type, size, init) do { \ struct _reent *_r = (var); \ if (_r->what == NULL) { \ _r->what = (type)malloc(size); \ __reent_assert(_r->what); \ init; \ } \ } while (0) #define _REENT_CHECK_TM(var) \ _REENT_CHECK(var, _localtime_buf, struct __tm *, sizeof *((var)->_localtime_buf), \ /* nothing */) #define _REENT_CHECK_ASCTIME_BUF(var) \ _REENT_CHECK(var, _asctime_buf, char *, _REENT_ASCTIME_SIZE, \ memset((var)->_asctime_buf, 0, _REENT_ASCTIME_SIZE)) /* Handle the dynamically allocated rand48 structure. */ #define _REENT_INIT_RAND48(var) do { \ struct _reent *_r = (var); \ _r->_r48->_seed[0] = _RAND48_SEED_0; \ _r->_r48->_seed[1] = _RAND48_SEED_1; \ _r->_r48->_seed[2] = _RAND48_SEED_2; \ _r->_r48->_mult[0] = _RAND48_MULT_0; \ _r->_r48->_mult[1] = _RAND48_MULT_1; \ _r->_r48->_mult[2] = _RAND48_MULT_2; \ _r->_r48->_add = _RAND48_ADD; \ _r->_r48->_rand_next = 1; \ } while (0) #define _REENT_CHECK_RAND48(var) \ _REENT_CHECK(var, _r48, struct _rand48 *, sizeof *((var)->_r48), _REENT_INIT_RAND48((var))) #define _REENT_INIT_MP(var) do { \ struct _reent *_r = (var); \ _r->_mp->_result_k = 0; \ _r->_mp->_result = _r->_mp->_p5s = _NULL; \ _r->_mp->_freelist = _NULL; \ } while (0) #define _REENT_CHECK_MP(var) \ _REENT_CHECK(var, _mp, struct _mprec *, sizeof *((var)->_mp), _REENT_INIT_MP(var)) #define _REENT_CHECK_EMERGENCY(var) \ _REENT_CHECK(var, _emergency, char *, _REENT_EMERGENCY_SIZE, /* nothing */) #define _REENT_INIT_MISC(var) do { \ struct _reent *_r = (var); \ _r->_misc->_strtok_last = _NULL; \ _r->_misc->_mblen_state.__count = 0; \ _r->_misc->_mblen_state.__value.__wch = 0; \ _r->_misc->_wctomb_state.__count = 0; \ _r->_misc->_wctomb_state.__value.__wch = 0; \ _r->_misc->_mbtowc_state.__count = 0; \ _r->_misc->_mbtowc_state.__value.__wch = 0; \ _r->_misc->_mbrlen_state.__count = 0; \ _r->_misc->_mbrlen_state.__value.__wch = 0; \ _r->_misc->_mbrtowc_state.__count = 0; \ _r->_misc->_mbrtowc_state.__value.__wch = 0; \ _r->_misc->_mbsrtowcs_state.__count = 0; \ _r->_misc->_mbsrtowcs_state.__value.__wch = 0; \ _r->_misc->_wcrtomb_state.__count = 0; \ _r->_misc->_wcrtomb_state.__value.__wch = 0; \ _r->_misc->_wcsrtombs_state.__count = 0; \ _r->_misc->_wcsrtombs_state.__value.__wch = 0; \ _r->_misc->_l64a_buf[0] = '\0'; \ _r->_misc->_getdate_err = 0; \ } while (0) #define _REENT_CHECK_MISC(var) \ _REENT_CHECK(var, _misc, struct _misc_reent *, sizeof *((var)->_misc), _REENT_INIT_MISC(var)) #define _REENT_CHECK_SIGNAL_BUF(var) \ _REENT_CHECK(var, _signal_buf, char *, _REENT_SIGNAL_SIZE, /* nothing */) #define _REENT_SIGNGAM(ptr) ((ptr)->_gamma_signgam) #define _REENT_RAND_NEXT(ptr) ((ptr)->_r48->_rand_next) #define _REENT_RAND48_SEED(ptr) ((ptr)->_r48->_seed) #define _REENT_RAND48_MULT(ptr) ((ptr)->_r48->_mult) #define _REENT_RAND48_ADD(ptr) ((ptr)->_r48->_add) #define _REENT_MP_RESULT(ptr) ((ptr)->_mp->_result) #define _REENT_MP_RESULT_K(ptr) ((ptr)->_mp->_result_k) #define _REENT_MP_P5S(ptr) ((ptr)->_mp->_p5s) #define _REENT_MP_FREELIST(ptr) ((ptr)->_mp->_freelist) #define _REENT_ASCTIME_BUF(ptr) ((ptr)->_asctime_buf) #define _REENT_TM(ptr) ((ptr)->_localtime_buf) #define _REENT_EMERGENCY(ptr) ((ptr)->_emergency) #define _REENT_STRTOK_LAST(ptr) ((ptr)->_misc->_strtok_last) #define _REENT_MBLEN_STATE(ptr) ((ptr)->_misc->_mblen_state) #define _REENT_MBTOWC_STATE(ptr)((ptr)->_misc->_mbtowc_state) #define _REENT_WCTOMB_STATE(ptr)((ptr)->_misc->_wctomb_state) #define _REENT_MBRLEN_STATE(ptr) ((ptr)->_misc->_mbrlen_state) #define _REENT_MBRTOWC_STATE(ptr) ((ptr)->_misc->_mbrtowc_state) #define _REENT_MBSRTOWCS_STATE(ptr) ((ptr)->_misc->_mbsrtowcs_state) #define _REENT_WCRTOMB_STATE(ptr) ((ptr)->_misc->_wcrtomb_state) #define _REENT_WCSRTOMBS_STATE(ptr) ((ptr)->_misc->_wcsrtombs_state) #define _REENT_L64A_BUF(ptr) ((ptr)->_misc->_l64a_buf) #define _REENT_GETDATE_ERR_P(ptr) (&((ptr)->_misc->_getdate_err)) #define _REENT_SIGNAL_BUF(ptr) ((ptr)->_signal_buf) #else /* !_REENT_SMALL */ struct _reent { int _errno; /* local copy of errno */ /* FILE is a big struct and may change over time. To try to achieve binary compatibility with future versions, put stdin,stdout,stderr here. These are pointers into member __sf defined below. */ __FILE *_stdin, *_stdout, *_stderr; int _inc; /* used by tmpnam */ char _emergency[_REENT_EMERGENCY_SIZE]; /* TODO */ int _unspecified_locale_info; /* unused, reserved for locale stuff */ struct __locale_t *_locale;/* per-thread locale */ int __sdidinit; /* 1 means stdio has been init'd */ void (*__cleanup) (struct _reent *); /* used by mprec routines */ struct _Bigint *_result; int _result_k; struct _Bigint *_p5s; struct _Bigint **_freelist; /* used by some fp conversion routines */ int _cvtlen; /* should be size_t */ char *_cvtbuf; union { struct { unsigned int _unused_rand; char * _strtok_last; char _asctime_buf[_REENT_ASCTIME_SIZE]; struct __tm _localtime_buf; int _gamma_signgam; __extension__ unsigned long long _rand_next; struct _rand48 _r48; _mbstate_t _mblen_state; _mbstate_t _mbtowc_state; _mbstate_t _wctomb_state; char _l64a_buf[8]; char _signal_buf[_REENT_SIGNAL_SIZE]; int _getdate_err; _mbstate_t _mbrlen_state; _mbstate_t _mbrtowc_state; _mbstate_t _mbsrtowcs_state; _mbstate_t _wcrtomb_state; _mbstate_t _wcsrtombs_state; int _h_errno; } _reent; /* Two next two fields were once used by malloc. They are no longer used. They are used to preserve the space used before so as to allow addition of new reent fields and keep binary compatibility. */ struct { #define _N_LISTS 30 unsigned char * _nextf[_N_LISTS]; unsigned int _nmalloc[_N_LISTS]; } _unused; } _new; # ifndef _REENT_GLOBAL_ATEXIT /* atexit stuff */ struct _atexit *_atexit; /* points to head of LIFO stack */ struct _atexit _atexit0; /* one guaranteed table, required by ANSI */ # endif /* signal info */ void (**(_sig_func))(int); /* These are here last so that __FILE can grow without changing the offsets of the above members (on the off chance that future binary compatibility would be broken otherwise). */ struct _glue __sglue; /* root of glue chain */ # ifndef _REENT_GLOBAL_STDIO_STREAMS __FILE __sf[3]; /* first three file descriptors */ # endif }; #ifdef _REENT_GLOBAL_STDIO_STREAMS extern __FILE __sf[3]; #define _REENT_STDIO_STREAM(var, index) &__sf[index] #else #define _REENT_STDIO_STREAM(var, index) &(var)->__sf[index] #endif #define _REENT_INIT(var) \ { 0, \ _REENT_STDIO_STREAM(&(var), 0), \ _REENT_STDIO_STREAM(&(var), 1), \ _REENT_STDIO_STREAM(&(var), 2), \ 0, \ "", \ 0, \ _NULL, \ 0, \ _NULL, \ _NULL, \ 0, \ _NULL, \ _NULL, \ 0, \ _NULL, \ { \ { \ 0, \ _NULL, \ "", \ {0, 0, 0, 0, 0, 0, 0, 0, 0}, \ 0, \ 1, \ { \ {_RAND48_SEED_0, _RAND48_SEED_1, _RAND48_SEED_2}, \ {_RAND48_MULT_0, _RAND48_MULT_1, _RAND48_MULT_2}, \ _RAND48_ADD \ }, \ {0, {0}}, \ {0, {0}}, \ {0, {0}}, \ "", \ "", \ 0, \ {0, {0}}, \ {0, {0}}, \ {0, {0}}, \ {0, {0}}, \ {0, {0}} \ } \ }, \ _REENT_INIT_ATEXIT \ _NULL, \ {_NULL, 0, _NULL} \ } #define _REENT_INIT_PTR_ZEROED(var) \ { (var)->_stdin = _REENT_STDIO_STREAM(var, 0); \ (var)->_stdout = _REENT_STDIO_STREAM(var, 1); \ (var)->_stderr = _REENT_STDIO_STREAM(var, 2); \ (var)->_new._reent._rand_next = 1; \ (var)->_new._reent._r48._seed[0] = _RAND48_SEED_0; \ (var)->_new._reent._r48._seed[1] = _RAND48_SEED_1; \ (var)->_new._reent._r48._seed[2] = _RAND48_SEED_2; \ (var)->_new._reent._r48._mult[0] = _RAND48_MULT_0; \ (var)->_new._reent._r48._mult[1] = _RAND48_MULT_1; \ (var)->_new._reent._r48._mult[2] = _RAND48_MULT_2; \ (var)->_new._reent._r48._add = _RAND48_ADD; \ } #define _REENT_CHECK_RAND48(ptr) /* nothing */ #define _REENT_CHECK_MP(ptr) /* nothing */ #define _REENT_CHECK_TM(ptr) /* nothing */ #define _REENT_CHECK_ASCTIME_BUF(ptr) /* nothing */ #define _REENT_CHECK_EMERGENCY(ptr) /* nothing */ #define _REENT_CHECK_MISC(ptr) /* nothing */ #define _REENT_CHECK_SIGNAL_BUF(ptr) /* nothing */ #define _REENT_SIGNGAM(ptr) ((ptr)->_new._reent._gamma_signgam) #define _REENT_RAND_NEXT(ptr) ((ptr)->_new._reent._rand_next) #define _REENT_RAND48_SEED(ptr) ((ptr)->_new._reent._r48._seed) #define _REENT_RAND48_MULT(ptr) ((ptr)->_new._reent._r48._mult) #define _REENT_RAND48_ADD(ptr) ((ptr)->_new._reent._r48._add) #define _REENT_MP_RESULT(ptr) ((ptr)->_result) #define _REENT_MP_RESULT_K(ptr) ((ptr)->_result_k) #define _REENT_MP_P5S(ptr) ((ptr)->_p5s) #define _REENT_MP_FREELIST(ptr) ((ptr)->_freelist) #define _REENT_ASCTIME_BUF(ptr) ((ptr)->_new._reent._asctime_buf) #define _REENT_TM(ptr) (&(ptr)->_new._reent._localtime_buf) #define _REENT_EMERGENCY(ptr) ((ptr)->_emergency) #define _REENT_STRTOK_LAST(ptr) ((ptr)->_new._reent._strtok_last) #define _REENT_MBLEN_STATE(ptr) ((ptr)->_new._reent._mblen_state) #define _REENT_MBTOWC_STATE(ptr)((ptr)->_new._reent._mbtowc_state) #define _REENT_WCTOMB_STATE(ptr)((ptr)->_new._reent._wctomb_state) #define _REENT_MBRLEN_STATE(ptr)((ptr)->_new._reent._mbrlen_state) #define _REENT_MBRTOWC_STATE(ptr)((ptr)->_new._reent._mbrtowc_state) #define _REENT_MBSRTOWCS_STATE(ptr)((ptr)->_new._reent._mbsrtowcs_state) #define _REENT_WCRTOMB_STATE(ptr)((ptr)->_new._reent._wcrtomb_state) #define _REENT_WCSRTOMBS_STATE(ptr)((ptr)->_new._reent._wcsrtombs_state) #define _REENT_L64A_BUF(ptr) ((ptr)->_new._reent._l64a_buf) #define _REENT_SIGNAL_BUF(ptr) ((ptr)->_new._reent._signal_buf) #define _REENT_GETDATE_ERR_P(ptr) (&((ptr)->_new._reent._getdate_err)) #endif /* !_REENT_SMALL */ #define _REENT_INIT_PTR(var) \ { memset((var), 0, sizeof(*(var))); \ _REENT_INIT_PTR_ZEROED(var); \ } /* This value is used in stdlib/misc.c. reent/reent.c has to know it as well to make sure the freelist is correctly free'd. Therefore we define it here, rather than in stdlib/misc.c, as before. */ #define _Kmax (sizeof (size_t) << 3) /* * All references to struct _reent are via this pointer. * Internally, newlib routines that need to reference it should use _REENT. */ #ifndef __ATTRIBUTE_IMPURE_PTR__ #define __ATTRIBUTE_IMPURE_PTR__ #endif extern struct _reent *_impure_ptr __ATTRIBUTE_IMPURE_PTR__; extern struct _reent *const _global_impure_ptr __ATTRIBUTE_IMPURE_PTR__; void _reclaim_reent (struct _reent *); /* #define _REENT_ONLY define this to get only reentrant routines */ #if defined(__DYNAMIC_REENT__) && !defined(__SINGLE_THREAD__) #ifndef __getreent struct _reent * __getreent (void); #endif # define _REENT (__getreent()) #else /* __SINGLE_THREAD__ || !__DYNAMIC_REENT__ */ # define _REENT _impure_ptr #endif /* __SINGLE_THREAD__ || !__DYNAMIC_REENT__ */ #define _GLOBAL_REENT _global_impure_ptr #ifdef _REENT_GLOBAL_ATEXIT extern struct _atexit *_global_atexit; /* points to head of LIFO stack */ # define _GLOBAL_ATEXIT _global_atexit #else # define _GLOBAL_ATEXIT (_GLOBAL_REENT->_atexit) #endif #ifdef __cplusplus } #endif #endif /* _SYS_REENT_H_ */ 0707010000006e000081a4000000000000000000000001630c8dd500000159000000000000000000000000000000000000002800000000./usr/nvptx-none/include/sys/resource.h#ifndef _SYS_RESOURCE_H_ #define _SYS_RESOURCE_H_ #include #define RUSAGE_SELF 0 /* calling process */ #define RUSAGE_CHILDREN -1 /* terminated child processes */ struct rusage { struct timeval ru_utime; /* user time used */ struct timeval ru_stime; /* system time used */ }; int getrusage (int, struct rusage*); #endif 0707010000006f000081a4000000000000000000000001630c8dd500000750000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/sched.h/* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2010. * On-Line Applications Research Corporation (OAR). * * Permission to use, copy, modify, and distribute this software for any * purpose without fee is hereby granted, provided that this entire notice * is included in all copies of any software which is or includes a copy * or modification of this software. * * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED * WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION * OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS * SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. * * $Id$ */ #ifndef _SYS_SCHED_H_ #define _SYS_SCHED_H_ #include #ifdef __cplusplus extern "C" { #endif /* Scheduling Policies */ /* Open Group Specifications Issue 6 */ #if defined(__CYGWIN__) #define SCHED_OTHER 3 #else #define SCHED_OTHER 0 #endif #define SCHED_FIFO 1 #define SCHED_RR 2 #if defined(_POSIX_SPORADIC_SERVER) #define SCHED_SPORADIC 4 #endif /* Scheduling Parameters */ /* Open Group Specifications Issue 6 */ struct sched_param { int sched_priority; /* Process execution scheduling priority */ #if defined(_POSIX_SPORADIC_SERVER) || defined(_POSIX_THREAD_SPORADIC_SERVER) int sched_ss_low_priority; /* Low scheduling priority for sporadic */ /* server */ struct timespec sched_ss_repl_period; /* Replenishment period for sporadic server */ struct timespec sched_ss_init_budget; /* Initial budget for sporadic server */ int sched_ss_max_repl; /* Maximum pending replenishments for */ /* sporadic server */ #endif }; #ifdef __cplusplus } #endif #endif /* end of include file */ 07070100000070000081a4000000000000000000000001630c8dd5000009f2000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/select.h#ifndef _SYS_SELECT_H #define _SYS_SELECT_H /* We don't define fd_set and friends if we are compiling POSIX source, or if we have included (or may include as indicated by __USE_W32_SOCKETS) the W32api winsock[2].h header which defines Windows versions of them. Note that a program which includes the W32api winsock[2].h header must know what it is doing; it must not call the Cygwin select function. */ # if !(defined (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS)) #include #include #include #include #if !defined(_SIGSET_T_DECLARED) #define _SIGSET_T_DECLARED typedef __sigset_t sigset_t; #endif # define _SYS_TYPES_FD_SET /* * Select uses bit masks of file descriptors in longs. * These macros manipulate such bit fields (the filesystem macros use chars). * FD_SETSIZE may be defined by the user, but the default here * should be >= NOFILE (param.h). */ #ifndef FD_SETSIZE #define FD_SETSIZE 64 #endif typedef unsigned long __fd_mask; #if __BSD_VISIBLE typedef __fd_mask fd_mask; #endif #define _NFDBITS ((int)sizeof(__fd_mask) * 8) /* bits per mask */ #if __BSD_VISIBLE #define NFDBITS _NFDBITS #endif #ifndef _howmany #define _howmany(x,y) (((x) + ((y) - 1)) / (y)) #endif typedef struct fd_set { __fd_mask __fds_bits[_howmany(FD_SETSIZE, _NFDBITS)]; } fd_set; #if __BSD_VISIBLE #define fds_bits __fds_bits #endif #define __fdset_mask(n) ((__fd_mask)1 << ((n) % _NFDBITS)) #define FD_CLR(n, p) ((p)->__fds_bits[(n)/_NFDBITS] &= ~__fdset_mask(n)) #if __BSD_VISIBLE #define FD_COPY(f, t) (void)(*(t) = *(f)) #endif #define FD_ISSET(n, p) (((p)->__fds_bits[(n)/_NFDBITS] & __fdset_mask(n)) != 0) #define FD_SET(n, p) ((p)->__fds_bits[(n)/_NFDBITS] |= __fdset_mask(n)) #define FD_ZERO(p) do { \ fd_set *_p; \ __size_t _n; \ \ _p = (p); \ _n = _howmany(FD_SETSIZE, _NFDBITS); \ while (_n > 0) \ _p->__fds_bits[--_n] = 0; \ } while (0) #if !defined (__INSIDE_CYGWIN_NET__) __BEGIN_DECLS int select __P ((int __n, fd_set *__readfds, fd_set *__writefds, fd_set *__exceptfds, struct timeval *__timeout)); #if __POSIX_VISIBLE >= 200112 int pselect __P ((int __n, fd_set *__readfds, fd_set *__writefds, fd_set *__exceptfds, const struct timespec *__timeout, const sigset_t *__set)); #endif __END_DECLS #endif /* !__INSIDE_CYGWIN_NET__ */ #endif /* !(_WINSOCK_H || _WINSOCKAPI_ || __USE_W32_SOCKETS) */ #endif /* sys/select.h */ 07070100000071000081a4000000000000000000000001630c8dd500002edb000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/signal.h/* sys/signal.h */ #ifndef _SYS_SIGNAL_H #define _SYS_SIGNAL_H #ifdef __cplusplus extern "C" { #endif #include "_ansi.h" #include #include #include #include #include #if !defined(_SIGSET_T_DECLARED) #define _SIGSET_T_DECLARED typedef __sigset_t sigset_t; #endif #if defined(__CYGWIN__) #include #else #if defined(_POSIX_REALTIME_SIGNALS) || __POSIX_VISIBLE >= 199309 /* sigev_notify values NOTE: P1003.1c/D10, p. 34 adds SIGEV_THREAD. */ #define SIGEV_NONE 1 /* No asynchronous notification shall be delivered */ /* when the event of interest occurs. */ #define SIGEV_SIGNAL 2 /* A queued signal, with an application defined */ /* value, shall be delivered when the event of */ /* interest occurs. */ #define SIGEV_THREAD 3 /* A notification function shall be called to */ /* perform notification. */ /* Signal Generation and Delivery, P1003.1b-1993, p. 63 NOTE: P1003.1c/D10, p. 34 adds sigev_notify_function and sigev_notify_attributes to the sigevent structure. */ union sigval { int sival_int; /* Integer signal value */ void *sival_ptr; /* Pointer signal value */ }; struct sigevent { int sigev_notify; /* Notification type */ int sigev_signo; /* Signal number */ union sigval sigev_value; /* Signal value */ #if defined(_POSIX_THREADS) void (*sigev_notify_function)( union sigval ); /* Notification function */ pthread_attr_t *sigev_notify_attributes; /* Notification Attributes */ #endif }; /* Signal Actions, P1003.1b-1993, p. 64 */ /* si_code values, p. 66 */ #define SI_USER 1 /* Sent by a user. kill(), abort(), etc */ #define SI_QUEUE 2 /* Sent by sigqueue() */ #define SI_TIMER 3 /* Sent by expiration of a timer_settime() timer */ #define SI_ASYNCIO 4 /* Indicates completion of asycnhronous IO */ #define SI_MESGQ 5 /* Indicates arrival of a message at an empty queue */ typedef struct { int si_signo; /* Signal number */ int si_code; /* Cause of the signal */ union sigval si_value; /* Signal value */ } siginfo_t; #endif /* defined(_POSIX_REALTIME_SIGNALS) || __POSIX_VISIBLE >= 199309 */ #if defined(__rtems__) /* 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76 */ #define SA_NOCLDSTOP 0x1 /* Do not generate SIGCHLD when children stop */ #define SA_SIGINFO 0x2 /* Invoke the signal catching function with */ /* three arguments instead of one. */ #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 #define SA_ONSTACK 0x4 /* Signal delivery will be on a separate stack. */ #endif /* struct sigaction notes from POSIX: * * (1) Routines stored in sa_handler should take a single int as * their argument although the POSIX standard does not require this. * This is not longer true since at least POSIX.1-2008 * (2) The fields sa_handler and sa_sigaction may overlap, and a conforming * application should not use both simultaneously. */ typedef void (*_sig_func_ptr)(int); struct sigaction { int sa_flags; /* Special flags to affect behavior of signal */ sigset_t sa_mask; /* Additional set of signals to be blocked */ /* during execution of signal-catching */ /* function. */ union { _sig_func_ptr _handler; /* SIG_DFL, SIG_IGN, or pointer to a function */ #if defined(_POSIX_REALTIME_SIGNALS) void (*_sigaction)( int, siginfo_t *, void * ); #endif } _signal_handlers; }; #define sa_handler _signal_handlers._handler #if defined(_POSIX_REALTIME_SIGNALS) #define sa_sigaction _signal_handlers._sigaction #endif #else /* defined(__rtems__) */ #define SA_NOCLDSTOP 1 /* only value supported now for sa_flags */ typedef void (*_sig_func_ptr)(int); struct sigaction { _sig_func_ptr sa_handler; sigset_t sa_mask; int sa_flags; }; #endif /* defined(__rtems__) */ #endif /* defined(__CYGWIN__) */ #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 /* * Minimum and default signal stack constants. Allow for target overrides * from . */ #ifndef MINSIGSTKSZ #define MINSIGSTKSZ 2048 #endif #ifndef SIGSTKSZ #define SIGSTKSZ 8192 #endif /* * Possible values for ss_flags in stack_t below. */ #define SS_ONSTACK 0x1 #define SS_DISABLE 0x2 #endif /* * Structure used in sigaltstack call. */ typedef struct sigaltstack { void *ss_sp; /* Stack base or pointer. */ int ss_flags; /* Flags. */ size_t ss_size; /* Stack size. */ } stack_t; #if __POSIX_VISIBLE #define SIG_SETMASK 0 /* set mask with sigprocmask() */ #define SIG_BLOCK 1 /* set of signals to block */ #define SIG_UNBLOCK 2 /* set of signals to, well, unblock */ int sigprocmask (int, const sigset_t *, sigset_t *); #endif #if __POSIX_VISIBLE >= 199506 int pthread_sigmask (int, const sigset_t *, sigset_t *); #endif #ifdef _COMPILING_NEWLIB int _kill (pid_t, int); #endif /* _COMPILING_NEWLIB */ #if __POSIX_VISIBLE int kill (pid_t, int); #endif #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 int killpg (pid_t, int); #endif #if __POSIX_VISIBLE int sigaction (int, const struct sigaction *, struct sigaction *); int sigaddset (sigset_t *, const int); int sigdelset (sigset_t *, const int); int sigismember (const sigset_t *, int); int sigfillset (sigset_t *); int sigemptyset (sigset_t *); int sigpending (sigset_t *); int sigsuspend (const sigset_t *); int sigwait (const sigset_t *, int *); #if !defined(__CYGWIN__) && !defined(__rtems__) /* These depend upon the type of sigset_t, which right now is always a long.. They're in the POSIX namespace, but are not ANSI. */ #define sigaddset(what,sig) (*(what) |= (1<<(sig)), 0) #define sigdelset(what,sig) (*(what) &= ~(1<<(sig)), 0) #define sigemptyset(what) (*(what) = 0, 0) #define sigfillset(what) (*(what) = ~(0), 0) #define sigismember(what,sig) (((*(what)) & (1<<(sig))) != 0) #endif /* !__CYGWIN__ && !__rtems__ */ #endif /* __POSIX_VISIBLE */ /* There are two common sigpause variants, both of which take an int argument. If you request _XOPEN_SOURCE or _GNU_SOURCE, you get the System V version, which removes the given signal from the process's signal mask; otherwise you get the BSD version, which sets the process's signal mask to the given value. */ #if __XSI_VISIBLE && !defined(__INSIDE_CYGWIN__) # ifdef __GNUC__ int sigpause (int) __asm__ (__ASMNAME ("__xpg_sigpause")); # else int __xpg_sigpause (int); # define sigpause __xpg_sigpause # endif #elif __BSD_VISIBLE int sigpause (int); #endif #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 int sigaltstack (const stack_t *__restrict, stack_t *__restrict); #endif #if __POSIX_VISIBLE >= 199506 int pthread_kill (pthread_t, int); #endif #if __POSIX_VISIBLE >= 199309 /* 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76 NOTE: P1003.1c/D10, p. 39 adds sigwait(). */ int sigwaitinfo (const sigset_t *, siginfo_t *); int sigtimedwait (const sigset_t *, siginfo_t *, const struct timespec *); /* 3.3.9 Queue a Signal to a Process, P1003.1b-1993, p. 78 */ int sigqueue (pid_t, int, const union sigval); #endif /* __POSIX_VISIBLE >= 199309 */ #if defined(___AM29K__) /* These all need to be defined for ANSI C, but I don't think they are meaningful. */ #define SIGABRT 1 #define SIGFPE 1 #define SIGILL 1 #define SIGINT 1 #define SIGSEGV 1 #define SIGTERM 1 /* These need to be defined for POSIX, and some others do too. */ #define SIGHUP 1 #define SIGQUIT 1 #define NSIG 2 #elif defined(__GO32__) #define SIGINT 1 #define SIGKILL 2 #define SIGPIPE 3 #define SIGFPE 4 #define SIGHUP 5 #define SIGTERM 6 #define SIGSEGV 7 #define SIGTSTP 8 #define SIGQUIT 9 #define SIGTRAP 10 #define SIGILL 11 #define SIGEMT 12 #define SIGALRM 13 #define SIGBUS 14 #define SIGLOST 15 #define SIGSTOP 16 #define SIGABRT 17 #define SIGUSR1 18 #define SIGUSR2 19 #define NSIG 20 #elif !defined(SIGTRAP) #define SIGHUP 1 /* hangup */ #define SIGINT 2 /* interrupt */ #define SIGQUIT 3 /* quit */ #define SIGILL 4 /* illegal instruction (not reset when caught) */ #define SIGTRAP 5 /* trace trap (not reset when caught) */ #define SIGIOT 6 /* IOT instruction */ #define SIGABRT 6 /* used by abort, replace SIGIOT in the future */ #define SIGEMT 7 /* EMT instruction */ #define SIGFPE 8 /* floating point exception */ #define SIGKILL 9 /* kill (cannot be caught or ignored) */ #define SIGBUS 10 /* bus error */ #define SIGSEGV 11 /* segmentation violation */ #define SIGSYS 12 /* bad argument to system call */ #define SIGPIPE 13 /* write on a pipe with no one to read it */ #define SIGALRM 14 /* alarm clock */ #define SIGTERM 15 /* software termination signal from kill */ #if defined(__rtems__) #define SIGURG 16 /* urgent condition on IO channel */ #define SIGSTOP 17 /* sendable stop signal not from tty */ #define SIGTSTP 18 /* stop signal from tty */ #define SIGCONT 19 /* continue a stopped process */ #define SIGCHLD 20 /* to parent on child stop or exit */ #define SIGCLD 20 /* System V name for SIGCHLD */ #define SIGTTIN 21 /* to readers pgrp upon background tty read */ #define SIGTTOU 22 /* like TTIN for output if (tp->t_local<OSTOP) */ #define SIGIO 23 /* input/output possible signal */ #define SIGPOLL SIGIO /* System V name for SIGIO */ #define SIGWINCH 24 /* window changed */ #define SIGUSR1 25 /* user defined signal 1 */ #define SIGUSR2 26 /* user defined signal 2 */ /* Real-Time Signals Range, P1003.1b-1993, p. 61 NOTE: By P1003.1b-1993, this should be at least RTSIG_MAX (which is a minimum of 8) signals. */ #define SIGRTMIN 27 #define SIGRTMAX 31 #define __SIGFIRSTNOTRT SIGHUP #define __SIGLASTNOTRT SIGUSR2 #define NSIG 32 /* signal 0 implied */ #elif defined(__svr4__) /* svr4 specifics. different signals above 15, and sigaction. */ #define SIGUSR1 16 #define SIGUSR2 17 #define SIGCLD 18 #define SIGPWR 19 #define SIGWINCH 20 #define SIGPOLL 22 /* 20 for x.out binaries!!!! */ #define SIGSTOP 23 /* sendable stop signal not from tty */ #define SIGTSTP 24 /* stop signal from tty */ #define SIGCONT 25 /* continue a stopped process */ #define SIGTTIN 26 /* to readers pgrp upon background tty read */ #define SIGTTOU 27 /* like TTIN for output if (tp->t_local<OSTOP) */ #define NSIG 28 #else #define SIGURG 16 /* urgent condition on IO channel */ #define SIGSTOP 17 /* sendable stop signal not from tty */ #define SIGTSTP 18 /* stop signal from tty */ #define SIGCONT 19 /* continue a stopped process */ #define SIGCHLD 20 /* to parent on child stop or exit */ #define SIGCLD 20 /* System V name for SIGCHLD */ #define SIGTTIN 21 /* to readers pgrp upon background tty read */ #define SIGTTOU 22 /* like TTIN for output if (tp->t_local<OSTOP) */ #define SIGIO 23 /* input/output possible signal */ #define SIGPOLL SIGIO /* System V name for SIGIO */ #define SIGXCPU 24 /* exceeded CPU time limit */ #define SIGXFSZ 25 /* exceeded file size limit */ #define SIGVTALRM 26 /* virtual time alarm */ #define SIGPROF 27 /* profiling time alarm */ #define SIGWINCH 28 /* window changed */ #define SIGLOST 29 /* resource lost (eg, record-lock lost) */ #define SIGUSR1 30 /* user defined signal 1 */ #define SIGUSR2 31 /* user defined signal 2 */ #define NSIG 32 /* signal 0 implied */ #endif #endif #ifdef __cplusplus } #endif #if defined(__CYGWIN__) #if __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 #include #endif #endif #ifndef _SIGNAL_H_ /* Some applications take advantage of the fact that * and are equivalent in glibc. Allow for that here. */ #include #endif #endif /* _SYS_SIGNAL_H */ 07070100000072000081a4000000000000000000000001630c8dd5000015a5000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/stat.h#ifndef _SYS_STAT_H #define _SYS_STAT_H #ifdef __cplusplus extern "C" { #endif #include <_ansi.h> #include #include #include #include /* dj's stat defines _STAT_H_ */ #ifndef _STAT_H_ /* It is intended that the layout of this structure not change when the sizes of any of the basic types change (short, int, long) [via a compile time option]. */ #ifdef __CYGWIN__ #include #ifdef _COMPILING_NEWLIB #define stat64 stat #endif #else struct stat { dev_t st_dev; ino_t st_ino; mode_t st_mode; nlink_t st_nlink; uid_t st_uid; gid_t st_gid; dev_t st_rdev; off_t st_size; #if defined(__svr4__) && !defined(__PPC__) && !defined(__sun__) time_t st_atime; time_t st_mtime; time_t st_ctime; #else struct timespec st_atim; struct timespec st_mtim; struct timespec st_ctim; blksize_t st_blksize; blkcnt_t st_blocks; #if !defined(__rtems__) long st_spare4[2]; #endif #endif }; #if !(defined(__svr4__) && !defined(__PPC__) && !defined(__sun__)) && !defined(__cris__) #define st_atime st_atim.tv_sec #define st_ctime st_ctim.tv_sec #define st_mtime st_mtim.tv_sec #endif #endif #define _IFMT 0170000 /* type of file */ #define _IFDIR 0040000 /* directory */ #define _IFCHR 0020000 /* character special */ #define _IFBLK 0060000 /* block special */ #define _IFREG 0100000 /* regular */ #define _IFLNK 0120000 /* symbolic link */ #define _IFSOCK 0140000 /* socket */ #define _IFIFO 0010000 /* fifo */ #define S_BLKSIZE 1024 /* size of a block */ #define S_ISUID 0004000 /* set user id on execution */ #define S_ISGID 0002000 /* set group id on execution */ #define S_ISVTX 0001000 /* save swapped text even after use */ #if __BSD_VISIBLE #define S_IREAD 0000400 /* read permission, owner */ #define S_IWRITE 0000200 /* write permission, owner */ #define S_IEXEC 0000100 /* execute/search permission, owner */ #define S_ENFMT 0002000 /* enforcement-mode locking */ #endif /* !_BSD_VISIBLE */ #define S_IFMT _IFMT #define S_IFDIR _IFDIR #define S_IFCHR _IFCHR #define S_IFBLK _IFBLK #define S_IFREG _IFREG #define S_IFLNK _IFLNK #define S_IFSOCK _IFSOCK #define S_IFIFO _IFIFO #ifdef _WIN32 /* The Windows header files define _S_ forms of these, so we do too for easier portability. */ #define _S_IFMT _IFMT #define _S_IFDIR _IFDIR #define _S_IFCHR _IFCHR #define _S_IFIFO _IFIFO #define _S_IFREG _IFREG #define _S_IREAD 0000400 #define _S_IWRITE 0000200 #define _S_IEXEC 0000100 #endif #define S_IRWXU (S_IRUSR | S_IWUSR | S_IXUSR) #define S_IRUSR 0000400 /* read permission, owner */ #define S_IWUSR 0000200 /* write permission, owner */ #define S_IXUSR 0000100/* execute/search permission, owner */ #define S_IRWXG (S_IRGRP | S_IWGRP | S_IXGRP) #define S_IRGRP 0000040 /* read permission, group */ #define S_IWGRP 0000020 /* write permission, grougroup */ #define S_IXGRP 0000010/* execute/search permission, group */ #define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH) #define S_IROTH 0000004 /* read permission, other */ #define S_IWOTH 0000002 /* write permission, other */ #define S_IXOTH 0000001/* execute/search permission, other */ #if __BSD_VISIBLE #define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO) /* 0777 */ #define ALLPERMS (S_ISUID | S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO) /* 07777 */ #define DEFFILEMODE (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH) /* 0666 */ #endif #define S_ISBLK(m) (((m)&_IFMT) == _IFBLK) #define S_ISCHR(m) (((m)&_IFMT) == _IFCHR) #define S_ISDIR(m) (((m)&_IFMT) == _IFDIR) #define S_ISFIFO(m) (((m)&_IFMT) == _IFIFO) #define S_ISREG(m) (((m)&_IFMT) == _IFREG) #define S_ISLNK(m) (((m)&_IFMT) == _IFLNK) #define S_ISSOCK(m) (((m)&_IFMT) == _IFSOCK) #if defined(__CYGWIN__) /* Special tv_nsec values for futimens(2) and utimensat(2). */ #define UTIME_NOW -2L #define UTIME_OMIT -1L #endif int chmod (const char *__path, mode_t __mode ); int fchmod (int __fd, mode_t __mode); int fstat (int __fd, struct stat *__sbuf ); int mkdir (const char *_path, mode_t __mode ); int mkfifo (const char *__path, mode_t __mode ); int stat (const char *__restrict __path, struct stat *__restrict __sbuf ); mode_t umask (mode_t __mask ); #if defined (__SPU__) || defined(__rtems__) || defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__) int lstat (const char *__restrict __path, struct stat *__restrict __buf ); int mknod (const char *__path, mode_t __mode, dev_t __dev ); #endif #if __ATFILE_VISIBLE && !defined(__INSIDE_CYGWIN__) int fchmodat (int, const char *, mode_t, int); int fstatat (int, const char *__restrict , struct stat *__restrict, int); int mkdirat (int, const char *, mode_t); int mkfifoat (int, const char *, mode_t); int mknodat (int, const char *, mode_t, dev_t); int utimensat (int, const char *, const struct timespec *, int); #endif #if __POSIX_VISIBLE >= 200809 && !defined(__INSIDE_CYGWIN__) int futimens (int, const struct timespec *); #endif /* Provide prototypes for most of the _ names that are provided in newlib for some compilers. */ #ifdef _COMPILING_NEWLIB int _fstat (int __fd, struct stat *__sbuf ); int _stat (const char *__restrict __path, struct stat *__restrict __sbuf ); int _mkdir (const char *_path, mode_t __mode ); #ifdef __LARGE64_FILES struct stat64; int _stat64 (const char *__restrict __path, struct stat64 *__restrict __sbuf ); int _fstat64 (int __fd, struct stat64 *__sbuf ); #endif #endif #endif /* !_STAT_H_ */ #ifdef __cplusplus } #endif #endif /* _SYS_STAT_H */ 07070100000073000081a4000000000000000000000001630c8dd50000031f000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/stdio.h#ifndef _NEWLIB_STDIO_H #define _NEWLIB_STDIO_H #include #include /* Internal locking macros, used to protect stdio functions. In the general case, expand to nothing. Use __SSTR flag in FILE _flags to detect if FILE is private to sprintf/sscanf class of functions; if set then do nothing as lock is not initialised. */ #if !defined(_flockfile) #ifndef __SINGLE_THREAD__ # define _flockfile(fp) (((fp)->_flags & __SSTR) ? 0 : __lock_acquire_recursive((fp)->_lock)) #else # define _flockfile(fp) ((void) 0) #endif #endif #if !defined(_funlockfile) #ifndef __SINGLE_THREAD__ # define _funlockfile(fp) (((fp)->_flags & __SSTR) ? 0 : __lock_release_recursive((fp)->_lock)) #else # define _funlockfile(fp) ((void) 0) #endif #endif #endif /* _NEWLIB_STDIO_H */ 07070100000074000081a4000000000000000000000001630c8dd500000074000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/string.h/* This is a dummy used as a placeholder for systems that need to have a special header file. */ 07070100000075000081a4000000000000000000000001630c8dd500000b9e000000000000000000000000000000000000002900000000./usr/nvptx-none/include/sys/syslimits.h/* * Copyright (c) 1988, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)syslimits.h 8.1 (Berkeley) 6/2/93 * $FreeBSD: src/sys/sys/syslimits.h,v 1.10 2001/06/18 20:24:54 wollman Exp $ */ #ifndef _SYS_SYSLIMITS_H_ #define _SYS_SYSLIMITS_H_ #define ARG_MAX 65536 /* max bytes for an exec function */ #ifndef CHILD_MAX #define CHILD_MAX 40 /* max simultaneous processes */ #endif #define LINK_MAX 32767 /* max file link count */ #define MAX_CANON 255 /* max bytes in term canon input line */ #define MAX_INPUT 255 /* max bytes in terminal input */ #define NAME_MAX 255 /* max bytes in a file name */ #define NGROUPS_MAX 16 /* max supplemental group id's */ #ifndef OPEN_MAX #define OPEN_MAX 64 /* max open files per process */ #endif #define PATH_MAX 1024 /* max bytes in pathname */ #define PIPE_BUF 512 /* max bytes for atomic pipe writes */ #define IOV_MAX 1024 /* max elements in i/o vector */ #define BC_BASE_MAX 99 /* max ibase/obase values in bc(1) */ #define BC_DIM_MAX 2048 /* max array elements in bc(1) */ #define BC_SCALE_MAX 99 /* max scale value in bc(1) */ #define BC_STRING_MAX 1000 /* max const string length in bc(1) */ #define COLL_WEIGHTS_MAX 0 /* max weights for order keyword */ #define EXPR_NEST_MAX 32 /* max expressions nested in expr(1) */ #define LINE_MAX 2048 /* max bytes in an input line */ #define RE_DUP_MAX 255 /* max RE's in interval notation */ #endif 07070100000076000081a4000000000000000000000001630c8dd500002da8000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/time.h/* time.h -- An implementation of the standard Unix file. Written by Geoffrey Noer Public domain; no rights reserved. */ /*- * SPDX-License-Identifier: BSD-3-Clause * * Copyright (c) 1982, 1986, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)time.h 8.5 (Berkeley) 5/4/95 * $FreeBSD: head/sys/sys/time.h 346176 2019-04-13 04:46:35Z imp $ */ #ifndef _SYS_TIME_H_ #define _SYS_TIME_H_ #include <_ansi.h> #include #include #include #include #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE #include #endif struct timezone { int tz_minuteswest; /* minutes west of Greenwich */ int tz_dsttime; /* type of dst correction */ }; #define DST_NONE 0 /* not on dst */ #define DST_USA 1 /* USA style dst */ #define DST_AUST 2 /* Australian style dst */ #define DST_WET 3 /* Western European dst */ #define DST_MET 4 /* Middle European dst */ #define DST_EET 5 /* Eastern European dst */ #define DST_CAN 6 /* Canada */ #if __BSD_VISIBLE struct bintime { time_t sec; uint64_t frac; }; static __inline void bintime_addx(struct bintime *_bt, uint64_t _x) { uint64_t _u; _u = _bt->frac; _bt->frac += _x; if (_u > _bt->frac) _bt->sec++; } static __inline void bintime_add(struct bintime *_bt, const struct bintime *_bt2) { uint64_t _u; _u = _bt->frac; _bt->frac += _bt2->frac; if (_u > _bt->frac) _bt->sec++; _bt->sec += _bt2->sec; } static __inline void bintime_sub(struct bintime *_bt, const struct bintime *_bt2) { uint64_t _u; _u = _bt->frac; _bt->frac -= _bt2->frac; if (_u < _bt->frac) _bt->sec--; _bt->sec -= _bt2->sec; } static __inline void bintime_mul(struct bintime *_bt, u_int _x) { uint64_t _p1, _p2; _p1 = (_bt->frac & 0xffffffffull) * _x; _p2 = (_bt->frac >> 32) * _x + (_p1 >> 32); _bt->sec *= _x; _bt->sec += (_p2 >> 32); _bt->frac = (_p2 << 32) | (_p1 & 0xffffffffull); } static __inline void bintime_shift(struct bintime *_bt, int _exp) { if (_exp > 0) { _bt->sec <<= _exp; _bt->sec |= _bt->frac >> (64 - _exp); _bt->frac <<= _exp; } else if (_exp < 0) { _bt->frac >>= -_exp; _bt->frac |= (uint64_t)_bt->sec << (64 + _exp); _bt->sec >>= -_exp; } } #define bintime_clear(a) ((a)->sec = (a)->frac = 0) #define bintime_isset(a) ((a)->sec || (a)->frac) #define bintime_cmp(a, b, cmp) \ (((a)->sec == (b)->sec) ? \ ((a)->frac cmp (b)->frac) : \ ((a)->sec cmp (b)->sec)) #define SBT_1S ((sbintime_t)1 << 32) #define SBT_1M (SBT_1S * 60) #define SBT_1MS (SBT_1S / 1000) #define SBT_1US (SBT_1S / 1000000) #define SBT_1NS (SBT_1S / 1000000000) /* beware rounding, see nstosbt() */ #define SBT_MAX 0x7fffffffffffffffLL static __inline int sbintime_getsec(sbintime_t _sbt) { return (_sbt >> 32); } static __inline sbintime_t bttosbt(const struct bintime _bt) { return (((sbintime_t)_bt.sec << 32) + (_bt.frac >> 32)); } static __inline struct bintime sbttobt(sbintime_t _sbt) { struct bintime _bt; _bt.sec = _sbt >> 32; _bt.frac = _sbt << 32; return (_bt); } /* * Decimal<->sbt conversions. Multiplying or dividing by SBT_1NS results in * large roundoff errors which sbttons() and nstosbt() avoid. Millisecond and * microsecond functions are also provided for completeness. * * These functions return the smallest sbt larger or equal to the * number of seconds requested so that sbttoX(Xtosbt(y)) == y. Unlike * top of second computations below, which require that we tick at the * top of second, these need to be rounded up so we do whatever for at * least as long as requested. * * The naive computation we'd do is this * ((unit * 2^64 / SIFACTOR) + 2^32-1) >> 32 * However, that overflows. Instead, we compute * ((unit * 2^63 / SIFACTOR) + 2^31-1) >> 32 * and use pre-computed constants that are the ceil of the 2^63 / SIFACTOR * term to ensure we are using exactly the right constant. We use the lesser * evil of ull rather than a uint64_t cast to ensure we have well defined * right shift semantics. With these changes, we get all the ns, us and ms * conversions back and forth right. */ static __inline int64_t sbttons(sbintime_t _sbt) { uint64_t ns; ns = _sbt; if (ns >= SBT_1S) ns = (ns >> 32) * 1000000000; else ns = 0; return (ns + (1000000000 * (_sbt & 0xffffffffu) >> 32)); } static __inline sbintime_t nstosbt(int64_t _ns) { sbintime_t sb = 0; if (_ns >= SBT_1S) { sb = (_ns / 1000000000) * SBT_1S; _ns = _ns % 1000000000; } /* 9223372037 = ceil(2^63 / 1000000000) */ sb += ((_ns * 9223372037ull) + 0x7fffffff) >> 31; return (sb); } static __inline int64_t sbttous(sbintime_t _sbt) { return ((1000000 * _sbt) >> 32); } static __inline sbintime_t ustosbt(int64_t _us) { sbintime_t sb = 0; if (_us >= SBT_1S) { sb = (_us / 1000000) * SBT_1S; _us = _us % 1000000; } /* 9223372036855 = ceil(2^63 / 1000000) */ sb += ((_us * 9223372036855ull) + 0x7fffffff) >> 31; return (sb); } static __inline int64_t sbttoms(sbintime_t _sbt) { return ((1000 * _sbt) >> 32); } static __inline sbintime_t mstosbt(int64_t _ms) { sbintime_t sb = 0; if (_ms >= SBT_1S) { sb = (_ms / 1000) * SBT_1S; _ms = _ms % 1000; } /* 9223372036854776 = ceil(2^63 / 1000) */ sb += ((_ms * 9223372036854776ull) + 0x7fffffff) >> 31; return (sb); } /*- * Background information: * * When converting between timestamps on parallel timescales of differing * resolutions it is historical and scientific practice to round down rather * than doing 4/5 rounding. * * The date changes at midnight, not at noon. * * Even at 15:59:59.999999999 it's not four'o'clock. * * time_second ticks after N.999999999 not after N.4999999999 */ static __inline void bintime2timespec(const struct bintime *_bt, struct timespec *_ts) { _ts->tv_sec = _bt->sec; _ts->tv_nsec = ((uint64_t)1000000000 * (uint32_t)(_bt->frac >> 32)) >> 32; } static __inline void timespec2bintime(const struct timespec *_ts, struct bintime *_bt) { _bt->sec = _ts->tv_sec; /* 18446744073 = int(2^64 / 1000000000) */ _bt->frac = _ts->tv_nsec * (uint64_t)18446744073LL; } static __inline void bintime2timeval(const struct bintime *_bt, struct timeval *_tv) { _tv->tv_sec = _bt->sec; _tv->tv_usec = ((uint64_t)1000000 * (uint32_t)(_bt->frac >> 32)) >> 32; } static __inline void timeval2bintime(const struct timeval *_tv, struct bintime *_bt) { _bt->sec = _tv->tv_sec; /* 18446744073709 = int(2^64 / 1000000) */ _bt->frac = _tv->tv_usec * (uint64_t)18446744073709LL; } static __inline struct timespec sbttots(sbintime_t _sbt) { struct timespec _ts; _ts.tv_sec = _sbt >> 32; _ts.tv_nsec = sbttons((uint32_t)_sbt); return (_ts); } static __inline sbintime_t tstosbt(struct timespec _ts) { return (((sbintime_t)_ts.tv_sec << 32) + nstosbt(_ts.tv_nsec)); } static __inline struct timeval sbttotv(sbintime_t _sbt) { struct timeval _tv; _tv.tv_sec = _sbt >> 32; _tv.tv_usec = sbttous((uint32_t)_sbt); return (_tv); } static __inline sbintime_t tvtosbt(struct timeval _tv) { return (((sbintime_t)_tv.tv_sec << 32) + ustosbt(_tv.tv_usec)); } /* Operations on timespecs */ #define timespecclear(tvp) ((tvp)->tv_sec = (tvp)->tv_nsec = 0) #define timespecisset(tvp) ((tvp)->tv_sec || (tvp)->tv_nsec) #define timespeccmp(tvp, uvp, cmp) \ (((tvp)->tv_sec == (uvp)->tv_sec) ? \ ((tvp)->tv_nsec cmp (uvp)->tv_nsec) : \ ((tvp)->tv_sec cmp (uvp)->tv_sec)) #define timespecadd(tsp, usp, vsp) \ do { \ (vsp)->tv_sec = (tsp)->tv_sec + (usp)->tv_sec; \ (vsp)->tv_nsec = (tsp)->tv_nsec + (usp)->tv_nsec; \ if ((vsp)->tv_nsec >= 1000000000L) { \ (vsp)->tv_sec++; \ (vsp)->tv_nsec -= 1000000000L; \ } \ } while (0) #define timespecsub(tsp, usp, vsp) \ do { \ (vsp)->tv_sec = (tsp)->tv_sec - (usp)->tv_sec; \ (vsp)->tv_nsec = (tsp)->tv_nsec - (usp)->tv_nsec; \ if ((vsp)->tv_nsec < 0) { \ (vsp)->tv_sec--; \ (vsp)->tv_nsec += 1000000000L; \ } \ } while (0) #ifndef _KERNEL /* NetBSD/OpenBSD compatible interfaces */ #define timerclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0) #define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) #define timercmp(tvp, uvp, cmp) \ (((tvp)->tv_sec == (uvp)->tv_sec) ? \ ((tvp)->tv_usec cmp (uvp)->tv_usec) : \ ((tvp)->tv_sec cmp (uvp)->tv_sec)) #define timeradd(tvp, uvp, vvp) \ do { \ (vvp)->tv_sec = (tvp)->tv_sec + (uvp)->tv_sec; \ (vvp)->tv_usec = (tvp)->tv_usec + (uvp)->tv_usec; \ if ((vvp)->tv_usec >= 1000000) { \ (vvp)->tv_sec++; \ (vvp)->tv_usec -= 1000000; \ } \ } while (0) #define timersub(tvp, uvp, vvp) \ do { \ (vvp)->tv_sec = (tvp)->tv_sec - (uvp)->tv_sec; \ (vvp)->tv_usec = (tvp)->tv_usec - (uvp)->tv_usec; \ if ((vvp)->tv_usec < 0) { \ (vvp)->tv_sec--; \ (vvp)->tv_usec += 1000000; \ } \ } while (0) #endif #endif /* __BSD_VISIBLE */ /* * Names of the interval timers, and structure * defining a timer setting. */ #define ITIMER_REAL 0 #define ITIMER_VIRTUAL 1 #define ITIMER_PROF 2 struct itimerval { struct timeval it_interval; /* timer interval */ struct timeval it_value; /* current value */ }; #ifndef _KERNEL #include __BEGIN_DECLS int utimes (const char *__path, const struct timeval *__tvp); #if __BSD_VISIBLE int adjtime (const struct timeval *, struct timeval *); int futimes (int, const struct timeval *); int lutimes (const char *, const struct timeval *); int settimeofday (const struct timeval *, const struct timezone *); #endif #if __MISC_VISIBLE || __XSI_VISIBLE int getitimer (int __which, struct itimerval *__value); int setitimer (int __which, const struct itimerval *__restrict __value, struct itimerval *__restrict __ovalue); #endif int gettimeofday (struct timeval *__restrict __p, void *__restrict __tz); #if __GNU_VISIBLE int futimesat (int, const char *, const struct timeval [2]); #endif #ifdef _COMPILING_NEWLIB int _gettimeofday (struct timeval *__p, void *__tz); #endif __END_DECLS #endif /* !_KERNEL */ #include #endif /* !_SYS_TIME_H_ */ 07070100000077000081a4000000000000000000000001630c8dd500000320000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/timeb.h/* timeb.h -- An implementation of the standard Unix file. Written by Ian Lance Taylor Public domain; no rights reserved. declares the structure used by the ftime function, as well as the ftime function itself. Newlib does not provide an implementation of ftime. */ #ifndef _SYS_TIMEB_H #ifdef __cplusplus extern "C" { #endif #define _SYS_TIMEB_H #include <_ansi.h> #include #if !defined(__time_t_defined) && !defined(_TIME_T_DECLARED) typedef _TIME_T_ time_t; #define __time_t_defined #define _TIME_T_DECLARED #endif struct timeb { time_t time; unsigned short millitm; short timezone; short dstflag; }; extern int ftime (struct timeb *); #ifdef __cplusplus } #endif #endif /* ! defined (_SYS_TIMEB_H) */ 07070100000078000081a4000000000000000000000001630c8dd500000297000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/times.h#ifndef _SYS_TIMES_H #ifdef __cplusplus extern "C" { #endif #define _SYS_TIMES_H #include <_ansi.h> #include #if !defined(__clock_t_defined) && !defined(_CLOCK_T_DECLARED) typedef _CLOCK_T_ clock_t; #define __clock_t_defined #define _CLOCK_T_DECLARED #endif /* Get Process Times, P1003.1b-1993, p. 92 */ struct tms { clock_t tms_utime; /* user time */ clock_t tms_stime; /* system time */ clock_t tms_cutime; /* user time, children */ clock_t tms_cstime; /* system time, children */ }; clock_t times (struct tms *); #ifdef _COMPILING_NEWLIB clock_t _times (struct tms *); #endif #ifdef __cplusplus } #endif #endif /* !_SYS_TIMES_H */ 07070100000079000081a4000000000000000000000001630c8dd50000096b000000000000000000000000000000000000002800000000./usr/nvptx-none/include/sys/timespec.h/*- * Copyright (c) 1982, 1986, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)time.h 8.5 (Berkeley) 5/4/95 * from: FreeBSD: src/sys/sys/time.h,v 1.43 2000/03/20 14:09:05 phk Exp * $FreeBSD$ */ #ifndef _SYS_TIMESPEC_H_ #define _SYS_TIMESPEC_H_ #include #include #if __BSD_VISIBLE #define TIMEVAL_TO_TIMESPEC(tv, ts) \ do { \ (ts)->tv_sec = (tv)->tv_sec; \ (ts)->tv_nsec = (tv)->tv_usec * 1000; \ } while (0) #define TIMESPEC_TO_TIMEVAL(tv, ts) \ do { \ (tv)->tv_sec = (ts)->tv_sec; \ (tv)->tv_usec = (ts)->tv_nsec / 1000; \ } while (0) #endif /* __BSD_VISIBLE */ /* * Structure defined by POSIX.1b to be like a itimerval, but with * timespecs. Used in the timer_*() system calls. */ struct itimerspec { struct timespec it_interval; struct timespec it_value; }; #endif /* _SYS_TIMESPEC_H_ */ 0707010000007a000081a4000000000000000000000001630c8dd5000069d2000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/tree.h/* $NetBSD: tree.h,v 1.8 2004/03/28 19:38:30 provos Exp $ */ /* $OpenBSD: tree.h,v 1.7 2002/10/17 21:51:54 art Exp $ */ /* $FreeBSD: head/sys/sys/tree.h 347360 2019-05-08 18:47:00Z trasz $ */ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * * Copyright 2002 Niels Provos * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef _SYS_TREE_H_ #define _SYS_TREE_H_ #include /* * This file defines data structures for different types of trees: * splay trees and red-black trees. * * A splay tree is a self-organizing data structure. Every operation * on the tree causes a splay to happen. The splay moves the requested * node to the root of the tree and partly rebalances it. * * This has the benefit that request locality causes faster lookups as * the requested nodes move to the top of the tree. On the other hand, * every lookup causes memory writes. * * The Balance Theorem bounds the total access time for m operations * and n inserts on an initially empty tree as O((m + n)lg n). The * amortized cost for a sequence of m accesses to a splay tree is O(lg n); * * A red-black tree is a binary search tree with the node color as an * extra attribute. It fulfills a set of conditions: * - every search path from the root to a leaf consists of the * same number of black nodes, * - each red node (except for the root) has a black parent, * - each leaf node is black. * * Every operation on a red-black tree is bounded as O(lg n). * The maximum height of a red-black tree is 2lg (n+1). */ #define SPLAY_HEAD(name, type) \ struct name { \ struct type *sph_root; /* root of the tree */ \ } #define SPLAY_INITIALIZER(root) \ { NULL } #define SPLAY_INIT(root) do { \ (root)->sph_root = NULL; \ } while (/*CONSTCOND*/ 0) #define SPLAY_ENTRY(type) \ struct { \ struct type *spe_left; /* left element */ \ struct type *spe_right; /* right element */ \ } #define SPLAY_LEFT(elm, field) (elm)->field.spe_left #define SPLAY_RIGHT(elm, field) (elm)->field.spe_right #define SPLAY_ROOT(head) (head)->sph_root #define SPLAY_EMPTY(head) (SPLAY_ROOT(head) == NULL) /* SPLAY_ROTATE_{LEFT,RIGHT} expect that tmp hold SPLAY_{RIGHT,LEFT} */ #define SPLAY_ROTATE_RIGHT(head, tmp, field) do { \ SPLAY_LEFT((head)->sph_root, field) = SPLAY_RIGHT(tmp, field); \ SPLAY_RIGHT(tmp, field) = (head)->sph_root; \ (head)->sph_root = tmp; \ } while (/*CONSTCOND*/ 0) #define SPLAY_ROTATE_LEFT(head, tmp, field) do { \ SPLAY_RIGHT((head)->sph_root, field) = SPLAY_LEFT(tmp, field); \ SPLAY_LEFT(tmp, field) = (head)->sph_root; \ (head)->sph_root = tmp; \ } while (/*CONSTCOND*/ 0) #define SPLAY_LINKLEFT(head, tmp, field) do { \ SPLAY_LEFT(tmp, field) = (head)->sph_root; \ tmp = (head)->sph_root; \ (head)->sph_root = SPLAY_LEFT((head)->sph_root, field); \ } while (/*CONSTCOND*/ 0) #define SPLAY_LINKRIGHT(head, tmp, field) do { \ SPLAY_RIGHT(tmp, field) = (head)->sph_root; \ tmp = (head)->sph_root; \ (head)->sph_root = SPLAY_RIGHT((head)->sph_root, field); \ } while (/*CONSTCOND*/ 0) #define SPLAY_ASSEMBLE(head, node, left, right, field) do { \ SPLAY_RIGHT(left, field) = SPLAY_LEFT((head)->sph_root, field); \ SPLAY_LEFT(right, field) = SPLAY_RIGHT((head)->sph_root, field);\ SPLAY_LEFT((head)->sph_root, field) = SPLAY_RIGHT(node, field); \ SPLAY_RIGHT((head)->sph_root, field) = SPLAY_LEFT(node, field); \ } while (/*CONSTCOND*/ 0) /* Generates prototypes and inline functions */ #define SPLAY_PROTOTYPE(name, type, field, cmp) \ void name##_SPLAY(struct name *, struct type *); \ void name##_SPLAY_MINMAX(struct name *, int); \ struct type *name##_SPLAY_INSERT(struct name *, struct type *); \ struct type *name##_SPLAY_REMOVE(struct name *, struct type *); \ \ /* Finds the node with the same key as elm */ \ static __unused __inline struct type * \ name##_SPLAY_FIND(struct name *head, struct type *elm) \ { \ if (SPLAY_EMPTY(head)) \ return(NULL); \ name##_SPLAY(head, elm); \ if ((cmp)(elm, (head)->sph_root) == 0) \ return (head->sph_root); \ return (NULL); \ } \ \ static __unused __inline struct type * \ name##_SPLAY_NEXT(struct name *head, struct type *elm) \ { \ name##_SPLAY(head, elm); \ if (SPLAY_RIGHT(elm, field) != NULL) { \ elm = SPLAY_RIGHT(elm, field); \ while (SPLAY_LEFT(elm, field) != NULL) { \ elm = SPLAY_LEFT(elm, field); \ } \ } else \ elm = NULL; \ return (elm); \ } \ \ static __unused __inline struct type * \ name##_SPLAY_MIN_MAX(struct name *head, int val) \ { \ name##_SPLAY_MINMAX(head, val); \ return (SPLAY_ROOT(head)); \ } /* Main splay operation. * Moves node close to the key of elm to top */ #define SPLAY_GENERATE(name, type, field, cmp) \ struct type * \ name##_SPLAY_INSERT(struct name *head, struct type *elm) \ { \ if (SPLAY_EMPTY(head)) { \ SPLAY_LEFT(elm, field) = SPLAY_RIGHT(elm, field) = NULL; \ } else { \ int __comp; \ name##_SPLAY(head, elm); \ __comp = (cmp)(elm, (head)->sph_root); \ if(__comp < 0) { \ SPLAY_LEFT(elm, field) = SPLAY_LEFT((head)->sph_root, field);\ SPLAY_RIGHT(elm, field) = (head)->sph_root; \ SPLAY_LEFT((head)->sph_root, field) = NULL; \ } else if (__comp > 0) { \ SPLAY_RIGHT(elm, field) = SPLAY_RIGHT((head)->sph_root, field);\ SPLAY_LEFT(elm, field) = (head)->sph_root; \ SPLAY_RIGHT((head)->sph_root, field) = NULL; \ } else \ return ((head)->sph_root); \ } \ (head)->sph_root = (elm); \ return (NULL); \ } \ \ struct type * \ name##_SPLAY_REMOVE(struct name *head, struct type *elm) \ { \ struct type *__tmp; \ if (SPLAY_EMPTY(head)) \ return (NULL); \ name##_SPLAY(head, elm); \ if ((cmp)(elm, (head)->sph_root) == 0) { \ if (SPLAY_LEFT((head)->sph_root, field) == NULL) { \ (head)->sph_root = SPLAY_RIGHT((head)->sph_root, field);\ } else { \ __tmp = SPLAY_RIGHT((head)->sph_root, field); \ (head)->sph_root = SPLAY_LEFT((head)->sph_root, field);\ name##_SPLAY(head, elm); \ SPLAY_RIGHT((head)->sph_root, field) = __tmp; \ } \ return (elm); \ } \ return (NULL); \ } \ \ void \ name##_SPLAY(struct name *head, struct type *elm) \ { \ struct type __node, *__left, *__right, *__tmp; \ int __comp; \ \ SPLAY_LEFT(&__node, field) = SPLAY_RIGHT(&__node, field) = NULL;\ __left = __right = &__node; \ \ while ((__comp = (cmp)(elm, (head)->sph_root)) != 0) { \ if (__comp < 0) { \ __tmp = SPLAY_LEFT((head)->sph_root, field); \ if (__tmp == NULL) \ break; \ if ((cmp)(elm, __tmp) < 0){ \ SPLAY_ROTATE_RIGHT(head, __tmp, field); \ if (SPLAY_LEFT((head)->sph_root, field) == NULL)\ break; \ } \ SPLAY_LINKLEFT(head, __right, field); \ } else if (__comp > 0) { \ __tmp = SPLAY_RIGHT((head)->sph_root, field); \ if (__tmp == NULL) \ break; \ if ((cmp)(elm, __tmp) > 0){ \ SPLAY_ROTATE_LEFT(head, __tmp, field); \ if (SPLAY_RIGHT((head)->sph_root, field) == NULL)\ break; \ } \ SPLAY_LINKRIGHT(head, __left, field); \ } \ } \ SPLAY_ASSEMBLE(head, &__node, __left, __right, field); \ } \ \ /* Splay with either the minimum or the maximum element \ * Used to find minimum or maximum element in tree. \ */ \ void name##_SPLAY_MINMAX(struct name *head, int __comp) \ { \ struct type __node, *__left, *__right, *__tmp; \ \ SPLAY_LEFT(&__node, field) = SPLAY_RIGHT(&__node, field) = NULL;\ __left = __right = &__node; \ \ while (1) { \ if (__comp < 0) { \ __tmp = SPLAY_LEFT((head)->sph_root, field); \ if (__tmp == NULL) \ break; \ if (__comp < 0){ \ SPLAY_ROTATE_RIGHT(head, __tmp, field); \ if (SPLAY_LEFT((head)->sph_root, field) == NULL)\ break; \ } \ SPLAY_LINKLEFT(head, __right, field); \ } else if (__comp > 0) { \ __tmp = SPLAY_RIGHT((head)->sph_root, field); \ if (__tmp == NULL) \ break; \ if (__comp > 0) { \ SPLAY_ROTATE_LEFT(head, __tmp, field); \ if (SPLAY_RIGHT((head)->sph_root, field) == NULL)\ break; \ } \ SPLAY_LINKRIGHT(head, __left, field); \ } \ } \ SPLAY_ASSEMBLE(head, &__node, __left, __right, field); \ } #define SPLAY_NEGINF -1 #define SPLAY_INF 1 #define SPLAY_INSERT(name, x, y) name##_SPLAY_INSERT(x, y) #define SPLAY_REMOVE(name, x, y) name##_SPLAY_REMOVE(x, y) #define SPLAY_FIND(name, x, y) name##_SPLAY_FIND(x, y) #define SPLAY_NEXT(name, x, y) name##_SPLAY_NEXT(x, y) #define SPLAY_MIN(name, x) (SPLAY_EMPTY(x) ? NULL \ : name##_SPLAY_MIN_MAX(x, SPLAY_NEGINF)) #define SPLAY_MAX(name, x) (SPLAY_EMPTY(x) ? NULL \ : name##_SPLAY_MIN_MAX(x, SPLAY_INF)) #define SPLAY_FOREACH(x, name, head) \ for ((x) = SPLAY_MIN(name, head); \ (x) != NULL; \ (x) = SPLAY_NEXT(name, head, x)) /* Macros that define a red-black tree */ #define RB_HEAD(name, type) \ struct name { \ struct type *rbh_root; /* root of the tree */ \ } #define RB_INITIALIZER(root) \ { NULL } #define RB_INIT(root) do { \ (root)->rbh_root = NULL; \ } while (/*CONSTCOND*/ 0) #define RB_BLACK 0 #define RB_RED 1 #define RB_ENTRY(type) \ struct { \ struct type *rbe_left; /* left element */ \ struct type *rbe_right; /* right element */ \ struct type *rbe_parent; /* parent element */ \ int rbe_color; /* node color */ \ } #define RB_LEFT(elm, field) (elm)->field.rbe_left #define RB_RIGHT(elm, field) (elm)->field.rbe_right #define RB_PARENT(elm, field) (elm)->field.rbe_parent #define RB_COLOR(elm, field) (elm)->field.rbe_color #define RB_ISRED(elm, field) ((elm) != NULL && RB_COLOR(elm, field) == RB_RED) #define RB_ROOT(head) (head)->rbh_root #define RB_EMPTY(head) (RB_ROOT(head) == NULL) #define RB_SET_PARENT(dst, src, field) do { \ RB_PARENT(dst, field) = src; \ } while (/*CONSTCOND*/ 0) #define RB_SET(elm, parent, field) do { \ RB_SET_PARENT(elm, parent, field); \ RB_LEFT(elm, field) = RB_RIGHT(elm, field) = NULL; \ RB_COLOR(elm, field) = RB_RED; \ } while (/*CONSTCOND*/ 0) #define RB_SET_BLACKRED(black, red, field) do { \ RB_COLOR(black, field) = RB_BLACK; \ RB_COLOR(red, field) = RB_RED; \ } while (/*CONSTCOND*/ 0) /* * Something to be invoked in a loop at the root of every modified subtree, * from the bottom up to the root, to update augmented node data. */ #ifndef RB_AUGMENT #define RB_AUGMENT(x) break #endif #define RB_SWAP_CHILD(head, out, in, field) do { \ if (RB_PARENT(out, field) == NULL) \ RB_ROOT(head) = (in); \ else if ((out) == RB_LEFT(RB_PARENT(out, field), field)) \ RB_LEFT(RB_PARENT(out, field), field) = (in); \ else \ RB_RIGHT(RB_PARENT(out, field), field) = (in); \ } while (/*CONSTCOND*/ 0) #define RB_ROTATE_LEFT(head, elm, tmp, field) do { \ (tmp) = RB_RIGHT(elm, field); \ if ((RB_RIGHT(elm, field) = RB_LEFT(tmp, field)) != NULL) { \ RB_SET_PARENT(RB_RIGHT(elm, field), elm, field); \ } \ RB_SET_PARENT(tmp, RB_PARENT(elm, field), field); \ RB_SWAP_CHILD(head, elm, tmp, field); \ RB_LEFT(tmp, field) = (elm); \ RB_SET_PARENT(elm, tmp, field); \ RB_AUGMENT(elm); \ } while (/*CONSTCOND*/ 0) #define RB_ROTATE_RIGHT(head, elm, tmp, field) do { \ (tmp) = RB_LEFT(elm, field); \ if ((RB_LEFT(elm, field) = RB_RIGHT(tmp, field)) != NULL) { \ RB_SET_PARENT(RB_LEFT(elm, field), elm, field); \ } \ RB_SET_PARENT(tmp, RB_PARENT(elm, field), field); \ RB_SWAP_CHILD(head, elm, tmp, field); \ RB_RIGHT(tmp, field) = (elm); \ RB_SET_PARENT(elm, tmp, field); \ RB_AUGMENT(elm); \ } while (/*CONSTCOND*/ 0) /* Generates prototypes and inline functions */ #define RB_PROTOTYPE(name, type, field, cmp) \ RB_PROTOTYPE_INTERNAL(name, type, field, cmp,) #define RB_PROTOTYPE_STATIC(name, type, field, cmp) \ RB_PROTOTYPE_INTERNAL(name, type, field, cmp, __unused static) #define RB_PROTOTYPE_INTERNAL(name, type, field, cmp, attr) \ RB_PROTOTYPE_INSERT_COLOR(name, type, attr); \ RB_PROTOTYPE_REMOVE_COLOR(name, type, attr); \ RB_PROTOTYPE_INSERT(name, type, attr); \ RB_PROTOTYPE_REMOVE(name, type, attr); \ RB_PROTOTYPE_FIND(name, type, attr); \ RB_PROTOTYPE_NFIND(name, type, attr); \ RB_PROTOTYPE_NEXT(name, type, attr); \ RB_PROTOTYPE_PREV(name, type, attr); \ RB_PROTOTYPE_MINMAX(name, type, attr); \ RB_PROTOTYPE_REINSERT(name, type, attr); #define RB_PROTOTYPE_INSERT_COLOR(name, type, attr) \ attr void name##_RB_INSERT_COLOR(struct name *, struct type *) #define RB_PROTOTYPE_REMOVE_COLOR(name, type, attr) \ attr void name##_RB_REMOVE_COLOR(struct name *, struct type *) #define RB_PROTOTYPE_REMOVE(name, type, attr) \ attr struct type *name##_RB_REMOVE(struct name *, struct type *) #define RB_PROTOTYPE_INSERT(name, type, attr) \ attr struct type *name##_RB_INSERT(struct name *, struct type *) #define RB_PROTOTYPE_FIND(name, type, attr) \ attr struct type *name##_RB_FIND(struct name *, struct type *) #define RB_PROTOTYPE_NFIND(name, type, attr) \ attr struct type *name##_RB_NFIND(struct name *, struct type *) #define RB_PROTOTYPE_NEXT(name, type, attr) \ attr struct type *name##_RB_NEXT(struct type *) #define RB_PROTOTYPE_PREV(name, type, attr) \ attr struct type *name##_RB_PREV(struct type *) #define RB_PROTOTYPE_MINMAX(name, type, attr) \ attr struct type *name##_RB_MINMAX(struct name *, int) #define RB_PROTOTYPE_REINSERT(name, type, attr) \ attr struct type *name##_RB_REINSERT(struct name *, struct type *) /* Main rb operation. * Moves node close to the key of elm to top */ #define RB_GENERATE(name, type, field, cmp) \ RB_GENERATE_INTERNAL(name, type, field, cmp,) #define RB_GENERATE_STATIC(name, type, field, cmp) \ RB_GENERATE_INTERNAL(name, type, field, cmp, __unused static) #define RB_GENERATE_INTERNAL(name, type, field, cmp, attr) \ RB_GENERATE_INSERT_COLOR(name, type, field, attr) \ RB_GENERATE_REMOVE_COLOR(name, type, field, attr) \ RB_GENERATE_INSERT(name, type, field, cmp, attr) \ RB_GENERATE_REMOVE(name, type, field, attr) \ RB_GENERATE_FIND(name, type, field, cmp, attr) \ RB_GENERATE_NFIND(name, type, field, cmp, attr) \ RB_GENERATE_NEXT(name, type, field, attr) \ RB_GENERATE_PREV(name, type, field, attr) \ RB_GENERATE_MINMAX(name, type, field, attr) \ RB_GENERATE_REINSERT(name, type, field, cmp, attr) #define RB_GENERATE_INSERT_COLOR(name, type, field, attr) \ attr void \ name##_RB_INSERT_COLOR(struct name *head, struct type *elm) \ { \ struct type *parent, *gparent, *tmp; \ while (RB_ISRED((parent = RB_PARENT(elm, field)), field)) { \ gparent = RB_PARENT(parent, field); \ if (parent == RB_LEFT(gparent, field)) { \ tmp = RB_RIGHT(gparent, field); \ if (RB_ISRED(tmp, field)) { \ RB_COLOR(tmp, field) = RB_BLACK; \ RB_SET_BLACKRED(parent, gparent, field);\ elm = gparent; \ continue; \ } \ if (RB_RIGHT(parent, field) == elm) { \ RB_ROTATE_LEFT(head, parent, tmp, field);\ tmp = parent; \ parent = elm; \ elm = tmp; \ } \ RB_SET_BLACKRED(parent, gparent, field); \ RB_ROTATE_RIGHT(head, gparent, tmp, field); \ } else { \ tmp = RB_LEFT(gparent, field); \ if (RB_ISRED(tmp, field)) { \ RB_COLOR(tmp, field) = RB_BLACK; \ RB_SET_BLACKRED(parent, gparent, field);\ elm = gparent; \ continue; \ } \ if (RB_LEFT(parent, field) == elm) { \ RB_ROTATE_RIGHT(head, parent, tmp, field);\ tmp = parent; \ parent = elm; \ elm = tmp; \ } \ RB_SET_BLACKRED(parent, gparent, field); \ RB_ROTATE_LEFT(head, gparent, tmp, field); \ } \ } \ RB_COLOR(head->rbh_root, field) = RB_BLACK; \ } #define RB_GENERATE_REMOVE_COLOR(name, type, field, attr) \ attr void \ name##_RB_REMOVE_COLOR(struct name *head, struct type *parent) \ { \ struct type *elm, *tmp; \ elm = NULL; \ do { \ if (RB_LEFT(parent, field) == elm) { \ tmp = RB_RIGHT(parent, field); \ if (RB_COLOR(tmp, field) == RB_RED) { \ RB_SET_BLACKRED(tmp, parent, field); \ RB_ROTATE_LEFT(head, parent, tmp, field);\ tmp = RB_RIGHT(parent, field); \ } \ if (RB_ISRED(RB_RIGHT(tmp, field), field)) \ RB_COLOR(RB_RIGHT(tmp, field), field) = RB_BLACK; \ else if (RB_ISRED(RB_LEFT(tmp, field), field)) { \ struct type *oleft; \ RB_ROTATE_RIGHT(head, tmp, oleft, field); \ RB_COLOR(oleft, field) = RB_BLACK; \ tmp = oleft; \ } else { \ RB_COLOR(tmp, field) = RB_RED; \ elm = parent; \ parent = RB_PARENT(elm, field); \ continue; \ } \ RB_COLOR(tmp, field) = RB_COLOR(parent, field); \ RB_COLOR(parent, field) = RB_BLACK; \ RB_ROTATE_LEFT(head, parent, tmp, field); \ elm = RB_ROOT(head); \ break; \ } else { \ tmp = RB_LEFT(parent, field); \ if (RB_COLOR(tmp, field) == RB_RED) { \ RB_SET_BLACKRED(tmp, parent, field); \ RB_ROTATE_RIGHT(head, parent, tmp, field);\ tmp = RB_LEFT(parent, field); \ } \ if (RB_ISRED(RB_LEFT(tmp, field), field)) \ RB_COLOR(RB_LEFT(tmp, field), field) = RB_BLACK; \ else if (RB_ISRED(RB_RIGHT(tmp, field), field)) { \ struct type *oright; \ RB_ROTATE_LEFT(head, tmp, oright, field); \ RB_COLOR(oright, field) = RB_BLACK; \ tmp = oright; \ } else if (!RB_ISRED(RB_LEFT(tmp, field), field)) { \ RB_COLOR(tmp, field) = RB_RED; \ elm = parent; \ parent = RB_PARENT(elm, field); \ continue; \ } \ RB_COLOR(tmp, field) = RB_COLOR(parent, field); \ RB_COLOR(parent, field) = RB_BLACK; \ RB_ROTATE_RIGHT(head, parent, tmp, field); \ elm = RB_ROOT(head); \ break; \ } \ } while (!RB_ISRED(elm, field) && parent != NULL); \ RB_COLOR(elm, field) = RB_BLACK; \ } #define RB_GENERATE_REMOVE(name, type, field, attr) \ attr struct type * \ name##_RB_REMOVE(struct name *head, struct type *elm) \ { \ struct type *child, *old, *parent, *right; \ int color; \ \ old = elm; \ parent = RB_PARENT(elm, field); \ right = RB_RIGHT(elm, field); \ color = RB_COLOR(elm, field); \ if (RB_LEFT(elm, field) == NULL) \ elm = child = right; \ else if (right == NULL) \ elm = child = RB_LEFT(elm, field); \ else { \ if ((child = RB_LEFT(right, field)) == NULL) { \ child = RB_RIGHT(right, field); \ RB_RIGHT(old, field) = child; \ parent = elm = right; \ } else { \ do \ elm = child; \ while ((child = RB_LEFT(elm, field)) != NULL); \ child = RB_RIGHT(elm, field); \ parent = RB_PARENT(elm, field); \ RB_LEFT(parent, field) = child; \ RB_SET_PARENT(RB_RIGHT(old, field), elm, field); \ } \ RB_SET_PARENT(RB_LEFT(old, field), elm, field); \ color = RB_COLOR(elm, field); \ elm->field = old->field; \ } \ RB_SWAP_CHILD(head, old, elm, field); \ if (child != NULL) { \ RB_SET_PARENT(child, parent, field); \ RB_COLOR(child, field) = RB_BLACK; \ } else if (color != RB_RED && parent != NULL) \ name##_RB_REMOVE_COLOR(head, parent); \ while (parent != NULL) { \ RB_AUGMENT(parent); \ parent = RB_PARENT(parent, field); \ } \ return (old); \ } #define RB_GENERATE_INSERT(name, type, field, cmp, attr) \ /* Inserts a node into the RB tree */ \ attr struct type * \ name##_RB_INSERT(struct name *head, struct type *elm) \ { \ struct type *tmp; \ struct type *parent = NULL; \ int comp = 0; \ tmp = RB_ROOT(head); \ while (tmp) { \ parent = tmp; \ comp = (cmp)(elm, parent); \ if (comp < 0) \ tmp = RB_LEFT(tmp, field); \ else if (comp > 0) \ tmp = RB_RIGHT(tmp, field); \ else \ return (tmp); \ } \ RB_SET(elm, parent, field); \ if (parent != NULL) { \ if (comp < 0) \ RB_LEFT(parent, field) = elm; \ else \ RB_RIGHT(parent, field) = elm; \ } else \ RB_ROOT(head) = elm; \ name##_RB_INSERT_COLOR(head, elm); \ while (elm != NULL) { \ RB_AUGMENT(elm); \ elm = RB_PARENT(elm, field); \ } \ return (NULL); \ } #define RB_GENERATE_FIND(name, type, field, cmp, attr) \ /* Finds the node with the same key as elm */ \ attr struct type * \ name##_RB_FIND(struct name *head, struct type *elm) \ { \ struct type *tmp = RB_ROOT(head); \ int comp; \ while (tmp) { \ comp = cmp(elm, tmp); \ if (comp < 0) \ tmp = RB_LEFT(tmp, field); \ else if (comp > 0) \ tmp = RB_RIGHT(tmp, field); \ else \ return (tmp); \ } \ return (NULL); \ } #define RB_GENERATE_NFIND(name, type, field, cmp, attr) \ /* Finds the first node greater than or equal to the search key */ \ attr struct type * \ name##_RB_NFIND(struct name *head, struct type *elm) \ { \ struct type *tmp = RB_ROOT(head); \ struct type *res = NULL; \ int comp; \ while (tmp) { \ comp = cmp(elm, tmp); \ if (comp < 0) { \ res = tmp; \ tmp = RB_LEFT(tmp, field); \ } \ else if (comp > 0) \ tmp = RB_RIGHT(tmp, field); \ else \ return (tmp); \ } \ return (res); \ } #define RB_GENERATE_NEXT(name, type, field, attr) \ /* ARGSUSED */ \ attr struct type * \ name##_RB_NEXT(struct type *elm) \ { \ if (RB_RIGHT(elm, field)) { \ elm = RB_RIGHT(elm, field); \ while (RB_LEFT(elm, field)) \ elm = RB_LEFT(elm, field); \ } else { \ if (RB_PARENT(elm, field) && \ (elm == RB_LEFT(RB_PARENT(elm, field), field))) \ elm = RB_PARENT(elm, field); \ else { \ while (RB_PARENT(elm, field) && \ (elm == RB_RIGHT(RB_PARENT(elm, field), field)))\ elm = RB_PARENT(elm, field); \ elm = RB_PARENT(elm, field); \ } \ } \ return (elm); \ } #define RB_GENERATE_PREV(name, type, field, attr) \ /* ARGSUSED */ \ attr struct type * \ name##_RB_PREV(struct type *elm) \ { \ if (RB_LEFT(elm, field)) { \ elm = RB_LEFT(elm, field); \ while (RB_RIGHT(elm, field)) \ elm = RB_RIGHT(elm, field); \ } else { \ if (RB_PARENT(elm, field) && \ (elm == RB_RIGHT(RB_PARENT(elm, field), field))) \ elm = RB_PARENT(elm, field); \ else { \ while (RB_PARENT(elm, field) && \ (elm == RB_LEFT(RB_PARENT(elm, field), field)))\ elm = RB_PARENT(elm, field); \ elm = RB_PARENT(elm, field); \ } \ } \ return (elm); \ } #define RB_GENERATE_MINMAX(name, type, field, attr) \ attr struct type * \ name##_RB_MINMAX(struct name *head, int val) \ { \ struct type *tmp = RB_ROOT(head); \ struct type *parent = NULL; \ while (tmp) { \ parent = tmp; \ if (val < 0) \ tmp = RB_LEFT(tmp, field); \ else \ tmp = RB_RIGHT(tmp, field); \ } \ return (parent); \ } #define RB_GENERATE_REINSERT(name, type, field, cmp, attr) \ attr struct type * \ name##_RB_REINSERT(struct name *head, struct type *elm) \ { \ struct type *cmpelm; \ if (((cmpelm = RB_PREV(name, head, elm)) != NULL && \ cmp(cmpelm, elm) >= 0) || \ ((cmpelm = RB_NEXT(name, head, elm)) != NULL && \ cmp(elm, cmpelm) >= 0)) { \ /* XXXLAS: Remove/insert is heavy handed. */ \ RB_REMOVE(name, head, elm); \ return (RB_INSERT(name, head, elm)); \ } \ return (NULL); \ } \ #define RB_NEGINF -1 #define RB_INF 1 #define RB_INSERT(name, x, y) name##_RB_INSERT(x, y) #define RB_REMOVE(name, x, y) name##_RB_REMOVE(x, y) #define RB_FIND(name, x, y) name##_RB_FIND(x, y) #define RB_NFIND(name, x, y) name##_RB_NFIND(x, y) #define RB_NEXT(name, x, y) name##_RB_NEXT(y) #define RB_PREV(name, x, y) name##_RB_PREV(y) #define RB_MIN(name, x) name##_RB_MINMAX(x, RB_NEGINF) #define RB_MAX(name, x) name##_RB_MINMAX(x, RB_INF) #define RB_REINSERT(name, x, y) name##_RB_REINSERT(x, y) #define RB_FOREACH(x, name, head) \ for ((x) = RB_MIN(name, head); \ (x) != NULL; \ (x) = name##_RB_NEXT(x)) #define RB_FOREACH_FROM(x, name, y) \ for ((x) = (y); \ ((x) != NULL) && ((y) = name##_RB_NEXT(x), (x) != NULL); \ (x) = (y)) #define RB_FOREACH_SAFE(x, name, head, y) \ for ((x) = RB_MIN(name, head); \ ((x) != NULL) && ((y) = name##_RB_NEXT(x), (x) != NULL); \ (x) = (y)) #define RB_FOREACH_REVERSE(x, name, head) \ for ((x) = RB_MAX(name, head); \ (x) != NULL; \ (x) = name##_RB_PREV(x)) #define RB_FOREACH_REVERSE_FROM(x, name, y) \ for ((x) = (y); \ ((x) != NULL) && ((y) = name##_RB_PREV(x), (x) != NULL); \ (x) = (y)) #define RB_FOREACH_REVERSE_SAFE(x, name, head, y) \ for ((x) = RB_MAX(name, head); \ ((x) != NULL) && ((y) = name##_RB_PREV(x), (x) != NULL); \ (x) = (y)) #endif /* _SYS_TREE_H_ */ 0707010000007b000081a4000000000000000000000001630c8dd50000155b000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/types.h/* unified sys/types.h: start with sef's sysvi386 version. merge go32 version -- a few ifdefs. h8300hms, h8300xray, and sysvnecv70 disagree on the following types: typedef int gid_t; typedef int uid_t; typedef int dev_t; typedef int ino_t; typedef int mode_t; typedef int caddr_t; however, these aren't "reasonable" values, the sysvi386 ones make far more sense, and should work sufficiently well (in particular, h8300 doesn't have a stat, and the necv70 doesn't matter.) -- eichin */ #ifndef _SYS_TYPES_H #include <_ansi.h> #include #include /* BSD types permitted by POSIX and always exposed as in Glibc. Only provided for backward compatibility with BSD code. The uintN_t standard types should be preferred in new code. */ #if ___int8_t_defined typedef __uint8_t u_int8_t; #endif #if ___int16_t_defined typedef __uint16_t u_int16_t; #endif #if ___int32_t_defined typedef __uint32_t u_int32_t; #endif #if ___int64_t_defined typedef __uint64_t u_int64_t; #endif typedef __intptr_t register_t; #define __BIT_TYPES_DEFINED__ 1 #ifndef __need_inttypes #define _SYS_TYPES_H #include #include #if __BSD_VISIBLE #include #include # define physadr physadr_t # define quad quad_t #ifndef _IN_ADDR_T_DECLARED typedef __uint32_t in_addr_t; /* base type for internet address */ #define _IN_ADDR_T_DECLARED #endif #ifndef _IN_PORT_T_DECLARED typedef __uint16_t in_port_t; #define _IN_PORT_T_DECLARED #endif typedef __uintptr_t u_register_t; #endif /* __BSD_VISIBLE */ #if __MISC_VISIBLE #ifndef _BSDTYPES_DEFINED /* also defined in mingw/gmon.h and in w32api/winsock[2].h */ #ifndef __u_char_defined typedef unsigned char u_char; #define __u_char_defined #endif #ifndef __u_short_defined typedef unsigned short u_short; #define __u_short_defined #endif #ifndef __u_int_defined typedef unsigned int u_int; #define __u_int_defined #endif #ifndef __u_long_defined typedef unsigned long u_long; #define __u_long_defined #endif #define _BSDTYPES_DEFINED #endif #endif /* __MISC_VISIBLE */ #if __MISC_VISIBLE typedef unsigned short ushort; /* System V compatibility */ typedef unsigned int uint; /* System V compatibility */ typedef unsigned long ulong; /* System V compatibility */ #endif #ifndef _BLKCNT_T_DECLARED typedef __blkcnt_t blkcnt_t; #define _BLKCNT_T_DECLARED #endif #ifndef _BLKSIZE_T_DECLARED typedef __blksize_t blksize_t; #define _BLKSIZE_T_DECLARED #endif #if !defined(__clock_t_defined) && !defined(_CLOCK_T_DECLARED) typedef _CLOCK_T_ clock_t; #define __clock_t_defined #define _CLOCK_T_DECLARED #endif #if !defined(__time_t_defined) && !defined(_TIME_T_DECLARED) typedef _TIME_T_ time_t; #define __time_t_defined #define _TIME_T_DECLARED #endif #ifndef __daddr_t_defined typedef long daddr_t; #define __daddr_t_defined #endif #ifndef __caddr_t_defined typedef char * caddr_t; #define __caddr_t_defined #endif #ifndef _FSBLKCNT_T_DECLARED /* for statvfs() */ typedef __fsblkcnt_t fsblkcnt_t; typedef __fsfilcnt_t fsfilcnt_t; #define _FSBLKCNT_T_DECLARED #endif #ifndef _ID_T_DECLARED typedef __id_t id_t; /* can hold a uid_t or pid_t */ #define _ID_T_DECLARED #endif #ifndef _INO_T_DECLARED typedef __ino_t ino_t; /* inode number */ #define _INO_T_DECLARED #endif #if defined(__i386__) && (defined(GO32) || defined(__MSDOS__)) typedef char * addr_t; typedef unsigned long vm_offset_t; typedef unsigned long vm_size_t; #endif /* __i386__ && (GO32 || __MSDOS__) */ /* * All these should be machine specific - right now they are all broken. * However, for all of Cygnus' embedded targets, we want them to all be * the same. Otherwise things like sizeof (struct stat) might depend on * how the file was compiled (e.g. -mint16 vs -mint32, etc.). */ #ifndef _OFF_T_DECLARED typedef __off_t off_t; /* file offset */ #define _OFF_T_DECLARED #endif #ifndef _DEV_T_DECLARED typedef __dev_t dev_t; /* device number or struct cdev */ #define _DEV_T_DECLARED #endif #ifndef _UID_T_DECLARED typedef __uid_t uid_t; /* user id */ #define _UID_T_DECLARED #endif #ifndef _GID_T_DECLARED typedef __gid_t gid_t; /* group id */ #define _GID_T_DECLARED #endif #ifndef _PID_T_DECLARED typedef __pid_t pid_t; /* process id */ #define _PID_T_DECLARED #endif #ifndef _KEY_T_DECLARED typedef __key_t key_t; /* IPC key */ #define _KEY_T_DECLARED #endif #ifndef _SSIZE_T_DECLARED typedef _ssize_t ssize_t; #define _SSIZE_T_DECLARED #endif #ifndef _MODE_T_DECLARED typedef __mode_t mode_t; /* permissions */ #define _MODE_T_DECLARED #endif #ifndef _NLINK_T_DECLARED typedef __nlink_t nlink_t; /* link count */ #define _NLINK_T_DECLARED #endif #if !defined(__clockid_t_defined) && !defined(_CLOCKID_T_DECLARED) typedef __clockid_t clockid_t; #define __clockid_t_defined #define _CLOCKID_T_DECLARED #endif #if !defined(__timer_t_defined) && !defined(_TIMER_T_DECLARED) typedef __timer_t timer_t; #define __timer_t_defined #define _TIMER_T_DECLARED #endif #ifndef _USECONDS_T_DECLARED typedef __useconds_t useconds_t; /* microseconds (unsigned) */ #define _USECONDS_T_DECLARED #endif #ifndef _SUSECONDS_T_DECLARED typedef __suseconds_t suseconds_t; #define _SUSECONDS_T_DECLARED #endif typedef __int64_t sbintime_t; #include #include #include #endif /* !__need_inttypes */ #undef __need_inttypes #endif /* _SYS_TYPES_H */ 0707010000007c000081a4000000000000000000000001630c8dd5000057ff000000000000000000000000000000000000002600000000./usr/nvptx-none/include/sys/unistd.h#ifndef _SYS_UNISTD_H #define _SYS_UNISTD_H #ifdef __cplusplus extern "C" { #endif #include <_ansi.h> #define __need_size_t #define __need_ptrdiff_t #include #include #include #include extern char **environ; void _exit (int __status) _ATTRIBUTE ((__noreturn__)); int access (const char *__path, int __amode); unsigned alarm (unsigned __secs); int chdir (const char *__path); int chmod (const char *__path, mode_t __mode); #if !defined(__INSIDE_CYGWIN__) int chown (const char *__path, uid_t __owner, gid_t __group); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200112) int chroot (const char *__path); #endif int close (int __fildes); #if __POSIX_VISIBLE >= 199209 size_t confstr (int __name, char *__buf, size_t __len); #endif #if __XSI_VISIBLE char * crypt (const char *__key, const char *__salt); #endif #if __XSI_VISIBLE && __XSI_VISIBLE < 700 char * ctermid (char *__s); #endif #if __XSI_VISIBLE && __XSI_VISIBLE < 600 char * cuserid (char *__s); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) int daemon (int nochdir, int noclose); #endif int dup (int __fildes); int dup2 (int __fildes, int __fildes2); #if __GNU_VISIBLE int dup3 (int __fildes, int __fildes2, int flags); int eaccess (const char *__path, int __mode); #endif #if __XSI_VISIBLE void encrypt (char *__block, int __edflag); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) void endusershell (void); #endif #if __GNU_VISIBLE int euidaccess (const char *__path, int __mode); #endif int execl (const char *__path, const char *, ...); int execle (const char *__path, const char *, ...); int execlp (const char *__file, const char *, ...); #if __MISC_VISIBLE int execlpe (const char *__file, const char *, ...); #endif int execv (const char *__path, char * const __argv[]); int execve (const char *__path, char * const __argv[], char * const __envp[]); int execvp (const char *__file, char * const __argv[]); #if __GNU_VISIBLE int execvpe (const char *__file, char * const __argv[], char * const __envp[]); #endif #if __ATFILE_VISIBLE int faccessat (int __dirfd, const char *__path, int __mode, int __flags); #endif #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 int fchdir (int __fildes); #endif #if __POSIX_VISIBLE >= 199309 int fchmod (int __fildes, mode_t __mode); #endif #if !defined(__INSIDE_CYGWIN__) #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 int fchown (int __fildes, uid_t __owner, gid_t __group); #endif #endif #if __ATFILE_VISIBLE int fchownat (int __dirfd, const char *__path, uid_t __owner, gid_t __group, int __flags); #endif #if __POSIX_VISIBLE >= 200809 int fexecve (int __fd, char * const __argv[], char * const __envp[]); #endif pid_t fork (void); long fpathconf (int __fd, int __name); int fsync (int __fd); #if __POSIX_VISIBLE >= 199309 int fdatasync (int __fd); #endif #if __GNU_VISIBLE char * get_current_dir_name (void); #endif char * getcwd (char *__buf, size_t __size); #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) int getdomainname (char *__name, size_t __len); #endif #if __BSD_VISIBLE int getentropy (void *, size_t); #endif #if !defined(__INSIDE_CYGWIN__) gid_t getegid (void); uid_t geteuid (void); gid_t getgid (void); #endif int getgroups (int __gidsetsize, gid_t __grouplist[]); #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 long gethostid (void); #endif char * getlogin (void); #if defined(_POSIX_THREAD_SAFE_FUNCTIONS) int getlogin_r (char *name, size_t namesize) ; #endif #if __BSD_VISIBLE || (__XSI_VISIBLE && __POSIX_VISIBLE < 200112) char * getpass (const char *__prompt); int getpagesize (void); #endif #if __BSD_VISIBLE int getpeereid (int, uid_t *, gid_t *); #endif #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 4 pid_t getpgid (pid_t); #endif pid_t getpgrp (void); pid_t getpid (void); pid_t getppid (void); #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 4 pid_t getsid (pid_t); #endif #if !defined(__INSIDE_CYGWIN__) uid_t getuid (void); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) char * getusershell (void); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200809) char * getwd (char *__buf); #endif #if __BSD_VISIBLE int iruserok (unsigned long raddr, int superuser, const char *ruser, const char *luser); #endif int isatty (int __fildes); #if __BSD_VISIBLE int issetugid (void); #endif #if !defined(__INSIDE_CYGWIN__) #if __BSD_VISIBLE || __XSI_VISIBLE >= 4 || __POSIX_VISIBLE >= 200809 int lchown (const char *__path, uid_t __owner, gid_t __group); #endif #endif int link (const char *__path1, const char *__path2); #if __ATFILE_VISIBLE int linkat (int __dirfd1, const char *__path1, int __dirfd2, const char *__path2, int __flags); #endif #if __MISC_VISIBLE || __XSI_VISIBLE int nice (int __nice_value); #endif #if !defined(__INSIDE_CYGWIN__) off_t lseek (int __fildes, off_t __offset, int __whence); #endif #if __MISC_VISIBLE || __XSI_VISIBLE >= 4 #define F_ULOCK 0 #define F_LOCK 1 #define F_TLOCK 2 #define F_TEST 3 int lockf (int __fd, int __cmd, off_t __len); #endif long pathconf (const char *__path, int __name); int pause (void); #if __POSIX_VISIBLE >= 199506 int pthread_atfork (void (*)(void), void (*)(void), void (*)(void)); #endif int pipe (int __fildes[2]); #if __GNU_VISIBLE int pipe2 (int __fildes[2], int flags); #endif #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 500 ssize_t pread (int __fd, void *__buf, size_t __nbytes, off_t __offset); ssize_t pwrite (int __fd, const void *__buf, size_t __nbytes, off_t __offset); #endif _READ_WRITE_RETURN_TYPE read (int __fd, void *__buf, size_t __nbyte); #if __BSD_VISIBLE int rresvport (int *__alport); int revoke (char *__path); #endif int rmdir (const char *__path); #if __BSD_VISIBLE int ruserok (const char *rhost, int superuser, const char *ruser, const char *luser); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200112) void * sbrk (ptrdiff_t __incr); #endif #if !defined(__INSIDE_CYGWIN__) #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 int setegid (gid_t __gid); int seteuid (uid_t __uid); #endif int setgid (gid_t __gid); #endif #if __BSD_VISIBLE int setgroups (int ngroups, const gid_t *grouplist); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) int sethostname (const char *, size_t); #endif int setpgid (pid_t __pid, pid_t __pgid); #if __SVID_VISIBLE || __XSI_VISIBLE >= 500 int setpgrp (void); #endif #if (__BSD_VISIBLE || __XSI_VISIBLE >= 4) && !defined(__INSIDE_CYGWIN__) int setregid (gid_t __rgid, gid_t __egid); int setreuid (uid_t __ruid, uid_t __euid); #endif pid_t setsid (void); #if !defined(__INSIDE_CYGWIN__) int setuid (uid_t __uid); #endif #if __BSD_VISIBLE || (__XSI_VISIBLE && __XSI_VISIBLE < 500) void setusershell (void); #endif unsigned sleep (unsigned int __seconds); #if __XSI_VISIBLE void swab (const void *__restrict, void *__restrict, ssize_t); #endif long sysconf (int __name); pid_t tcgetpgrp (int __fildes); int tcsetpgrp (int __fildes, pid_t __pgrp_id); char * ttyname (int __fildes); int ttyname_r (int, char *, size_t); int unlink (const char *__path); #if __XSI_VISIBLE >= 500 && __POSIX_VISIBLE < 200809 || __BSD_VISIBLE int usleep (useconds_t __useconds); #endif #if __BSD_VISIBLE int vhangup (void); #endif _READ_WRITE_RETURN_TYPE write (int __fd, const void *__buf, size_t __nbyte); #ifdef __CYGWIN__ # define __UNISTD_GETOPT__ # include # undef __UNISTD_GETOPT__ #else extern char *optarg; /* getopt(3) external variables */ extern int optind, opterr, optopt; int getopt(int, char * const [], const char *); extern int optreset; /* getopt(3) external variable */ #endif #if __BSD_VISIBLE || (__XSI_VISIBLE >= 4 && __POSIX_VISIBLE < 200809) pid_t vfork (void); #endif #ifdef _COMPILING_NEWLIB /* Provide prototypes for most of the _ names that are provided in newlib for some compilers. */ int _close (int __fildes); pid_t _fork (void); pid_t _getpid (void); int _isatty (int __fildes); int _link (const char *__path1, const char *__path2); _off_t _lseek (int __fildes, _off_t __offset, int __whence); #ifdef __LARGE64_FILES _off64_t _lseek64 (int __filedes, _off64_t __offset, int __whence); #endif _READ_WRITE_RETURN_TYPE _read (int __fd, void *__buf, size_t __nbyte); void * _sbrk (ptrdiff_t __incr); int _unlink (const char *__path); _READ_WRITE_RETURN_TYPE _write (int __fd, const void *__buf, size_t __nbyte); int _execve (const char *__path, char * const __argv[], char * const __envp[]); #endif #if !defined(__INSIDE_CYGWIN__) #if __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 500 int ftruncate (int __fd, off_t __length); #endif #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 500 int truncate (const char *, off_t __length); #endif #endif #if __BSD_VISIBLE || __POSIX_VISIBLE < 200112 int getdtablesize (void); #endif #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE >= 500 useconds_t ualarm (useconds_t __useconds, useconds_t __interval); #endif #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 500 #if !(defined (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS)) /* winsock[2].h defines as __stdcall, and with int as 2nd arg */ int gethostname (char *__name, size_t __len); #endif #endif #if __MISC_VISIBLE int setdtablesize (int); #endif #if __BSD_VISIBLE || __XSI_VISIBLE >= 500 void sync (void); #endif #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 4 ssize_t readlink (const char *__restrict __path, char *__restrict __buf, size_t __buflen); int symlink (const char *__name1, const char *__name2); #endif #if __ATFILE_VISIBLE ssize_t readlinkat (int __dirfd1, const char *__restrict __path, char *__restrict __buf, size_t __buflen); int symlinkat (const char *, int, const char *); int unlinkat (int, const char *, int); #endif #define F_OK 0 #define R_OK 4 #define W_OK 2 #define X_OK 1 # define SEEK_SET 0 # define SEEK_CUR 1 # define SEEK_END 2 #include #define STDIN_FILENO 0 /* standard input file descriptor */ #define STDOUT_FILENO 1 /* standard output file descriptor */ #define STDERR_FILENO 2 /* standard error file descriptor */ /* * sysconf values per IEEE Std 1003.1, 2008 Edition */ #define _SC_ARG_MAX 0 #define _SC_CHILD_MAX 1 #define _SC_CLK_TCK 2 #define _SC_NGROUPS_MAX 3 #define _SC_OPEN_MAX 4 #define _SC_JOB_CONTROL 5 #define _SC_SAVED_IDS 6 #define _SC_VERSION 7 #define _SC_PAGESIZE 8 #define _SC_PAGE_SIZE _SC_PAGESIZE /* These are non-POSIX values we accidentally introduced in 2000 without guarding them. Keeping them unguarded for backward compatibility. */ #define _SC_NPROCESSORS_CONF 9 #define _SC_NPROCESSORS_ONLN 10 #define _SC_PHYS_PAGES 11 #define _SC_AVPHYS_PAGES 12 /* End of non-POSIX values. */ #define _SC_MQ_OPEN_MAX 13 #define _SC_MQ_PRIO_MAX 14 #define _SC_RTSIG_MAX 15 #define _SC_SEM_NSEMS_MAX 16 #define _SC_SEM_VALUE_MAX 17 #define _SC_SIGQUEUE_MAX 18 #define _SC_TIMER_MAX 19 #define _SC_TZNAME_MAX 20 #define _SC_ASYNCHRONOUS_IO 21 #define _SC_FSYNC 22 #define _SC_MAPPED_FILES 23 #define _SC_MEMLOCK 24 #define _SC_MEMLOCK_RANGE 25 #define _SC_MEMORY_PROTECTION 26 #define _SC_MESSAGE_PASSING 27 #define _SC_PRIORITIZED_IO 28 #define _SC_REALTIME_SIGNALS 29 #define _SC_SEMAPHORES 30 #define _SC_SHARED_MEMORY_OBJECTS 31 #define _SC_SYNCHRONIZED_IO 32 #define _SC_TIMERS 33 #define _SC_AIO_LISTIO_MAX 34 #define _SC_AIO_MAX 35 #define _SC_AIO_PRIO_DELTA_MAX 36 #define _SC_DELAYTIMER_MAX 37 #define _SC_THREAD_KEYS_MAX 38 #define _SC_THREAD_STACK_MIN 39 #define _SC_THREAD_THREADS_MAX 40 #define _SC_TTY_NAME_MAX 41 #define _SC_THREADS 42 #define _SC_THREAD_ATTR_STACKADDR 43 #define _SC_THREAD_ATTR_STACKSIZE 44 #define _SC_THREAD_PRIORITY_SCHEDULING 45 #define _SC_THREAD_PRIO_INHERIT 46 /* _SC_THREAD_PRIO_PROTECT was _SC_THREAD_PRIO_CEILING in early drafts */ #define _SC_THREAD_PRIO_PROTECT 47 #define _SC_THREAD_PRIO_CEILING _SC_THREAD_PRIO_PROTECT #define _SC_THREAD_PROCESS_SHARED 48 #define _SC_THREAD_SAFE_FUNCTIONS 49 #define _SC_GETGR_R_SIZE_MAX 50 #define _SC_GETPW_R_SIZE_MAX 51 #define _SC_LOGIN_NAME_MAX 52 #define _SC_THREAD_DESTRUCTOR_ITERATIONS 53 #define _SC_ADVISORY_INFO 54 #define _SC_ATEXIT_MAX 55 #define _SC_BARRIERS 56 #define _SC_BC_BASE_MAX 57 #define _SC_BC_DIM_MAX 58 #define _SC_BC_SCALE_MAX 59 #define _SC_BC_STRING_MAX 60 #define _SC_CLOCK_SELECTION 61 #define _SC_COLL_WEIGHTS_MAX 62 #define _SC_CPUTIME 63 #define _SC_EXPR_NEST_MAX 64 #define _SC_HOST_NAME_MAX 65 #define _SC_IOV_MAX 66 #define _SC_IPV6 67 #define _SC_LINE_MAX 68 #define _SC_MONOTONIC_CLOCK 69 #define _SC_RAW_SOCKETS 70 #define _SC_READER_WRITER_LOCKS 71 #define _SC_REGEXP 72 #define _SC_RE_DUP_MAX 73 #define _SC_SHELL 74 #define _SC_SPAWN 75 #define _SC_SPIN_LOCKS 76 #define _SC_SPORADIC_SERVER 77 #define _SC_SS_REPL_MAX 78 #define _SC_SYMLOOP_MAX 79 #define _SC_THREAD_CPUTIME 80 #define _SC_THREAD_SPORADIC_SERVER 81 #define _SC_TIMEOUTS 82 #define _SC_TRACE 83 #define _SC_TRACE_EVENT_FILTER 84 #define _SC_TRACE_EVENT_NAME_MAX 85 #define _SC_TRACE_INHERIT 86 #define _SC_TRACE_LOG 87 #define _SC_TRACE_NAME_MAX 88 #define _SC_TRACE_SYS_MAX 89 #define _SC_TRACE_USER_EVENT_MAX 90 #define _SC_TYPED_MEMORY_OBJECTS 91 #define _SC_V7_ILP32_OFF32 92 #define _SC_V6_ILP32_OFF32 _SC_V7_ILP32_OFF32 #define _SC_XBS5_ILP32_OFF32 _SC_V7_ILP32_OFF32 #define _SC_V7_ILP32_OFFBIG 93 #define _SC_V6_ILP32_OFFBIG _SC_V7_ILP32_OFFBIG #define _SC_XBS5_ILP32_OFFBIG _SC_V7_ILP32_OFFBIG #define _SC_V7_LP64_OFF64 94 #define _SC_V6_LP64_OFF64 _SC_V7_LP64_OFF64 #define _SC_XBS5_LP64_OFF64 _SC_V7_LP64_OFF64 #define _SC_V7_LPBIG_OFFBIG 95 #define _SC_V6_LPBIG_OFFBIG _SC_V7_LPBIG_OFFBIG #define _SC_XBS5_LPBIG_OFFBIG _SC_V7_LPBIG_OFFBIG #define _SC_XOPEN_CRYPT 96 #define _SC_XOPEN_ENH_I18N 97 #define _SC_XOPEN_LEGACY 98 #define _SC_XOPEN_REALTIME 99 #define _SC_STREAM_MAX 100 #define _SC_PRIORITY_SCHEDULING 101 #define _SC_XOPEN_REALTIME_THREADS 102 #define _SC_XOPEN_SHM 103 #define _SC_XOPEN_STREAMS 104 #define _SC_XOPEN_UNIX 105 #define _SC_XOPEN_VERSION 106 #define _SC_2_CHAR_TERM 107 #define _SC_2_C_BIND 108 #define _SC_2_C_DEV 109 #define _SC_2_FORT_DEV 110 #define _SC_2_FORT_RUN 111 #define _SC_2_LOCALEDEF 112 #define _SC_2_PBS 113 #define _SC_2_PBS_ACCOUNTING 114 #define _SC_2_PBS_CHECKPOINT 115 #define _SC_2_PBS_LOCATE 116 #define _SC_2_PBS_MESSAGE 117 #define _SC_2_PBS_TRACK 118 #define _SC_2_SW_DEV 119 #define _SC_2_UPE 120 #define _SC_2_VERSION 121 #define _SC_THREAD_ROBUST_PRIO_INHERIT 122 #define _SC_THREAD_ROBUST_PRIO_PROTECT 123 #define _SC_XOPEN_UUCP 124 #define _SC_LEVEL1_ICACHE_SIZE 125 #define _SC_LEVEL1_ICACHE_ASSOC 126 #define _SC_LEVEL1_ICACHE_LINESIZE 127 #define _SC_LEVEL1_DCACHE_SIZE 128 #define _SC_LEVEL1_DCACHE_ASSOC 129 #define _SC_LEVEL1_DCACHE_LINESIZE 130 #define _SC_LEVEL2_CACHE_SIZE 131 #define _SC_LEVEL2_CACHE_ASSOC 132 #define _SC_LEVEL2_CACHE_LINESIZE 133 #define _SC_LEVEL3_CACHE_SIZE 134 #define _SC_LEVEL3_CACHE_ASSOC 135 #define _SC_LEVEL3_CACHE_LINESIZE 136 #define _SC_LEVEL4_CACHE_SIZE 137 #define _SC_LEVEL4_CACHE_ASSOC 138 #define _SC_LEVEL4_CACHE_LINESIZE 139 #define _SC_POSIX_26_VERSION 140 /* * pathconf values per IEEE Std 1003.1, 2008 Edition */ #define _PC_LINK_MAX 0 #define _PC_MAX_CANON 1 #define _PC_MAX_INPUT 2 #define _PC_NAME_MAX 3 #define _PC_PATH_MAX 4 #define _PC_PIPE_BUF 5 #define _PC_CHOWN_RESTRICTED 6 #define _PC_NO_TRUNC 7 #define _PC_VDISABLE 8 #define _PC_ASYNC_IO 9 #define _PC_PRIO_IO 10 #define _PC_SYNC_IO 11 #define _PC_FILESIZEBITS 12 #define _PC_2_SYMLINKS 13 #define _PC_SYMLINK_MAX 14 #define _PC_ALLOC_SIZE_MIN 15 #define _PC_REC_INCR_XFER_SIZE 16 #define _PC_REC_MAX_XFER_SIZE 17 #define _PC_REC_MIN_XFER_SIZE 18 #define _PC_REC_XFER_ALIGN 19 #define _PC_TIMESTAMP_RESOLUTION 20 #ifdef __CYGWIN__ /* Ask for POSIX permission bits support. */ #define _PC_POSIX_PERMISSIONS 90 /* Ask for full POSIX permission support including uid/gid settings. */ #define _PC_POSIX_SECURITY 91 #define _PC_CASE_INSENSITIVE 92 #endif /* * confstr values per IEEE Std 1003.1, 2004 Edition */ /* Only defined on Cygwin and RTEMS for now. */ #if defined (__CYGWIN__) || defined(__rtems__) #define _CS_PATH 0 #define _CS_POSIX_V7_ILP32_OFF32_CFLAGS 1 #define _CS_POSIX_V6_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS #define _CS_XBS5_ILP32_OFF32_CFLAGS _CS_POSIX_V7_ILP32_OFF32_CFLAGS #define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS 2 #define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS #define _CS_XBS5_ILP32_OFF32_LDFLAGS _CS_POSIX_V7_ILP32_OFF32_LDFLAGS #define _CS_POSIX_V7_ILP32_OFF32_LIBS 3 #define _CS_POSIX_V6_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS #define _CS_XBS5_ILP32_OFF32_LIBS _CS_POSIX_V7_ILP32_OFF32_LIBS #define _CS_XBS5_ILP32_OFF32_LINTFLAGS 4 #define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS 5 #define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS #define _CS_XBS5_ILP32_OFFBIG_CFLAGS _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS #define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS 6 #define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS #define _CS_XBS5_ILP32_OFFBIG_LDFLAGS _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS #define _CS_POSIX_V7_ILP32_OFFBIG_LIBS 7 #define _CS_POSIX_V6_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS #define _CS_XBS5_ILP32_OFFBIG_LIBS _CS_POSIX_V7_ILP32_OFFBIG_LIBS #define _CS_XBS5_ILP32_OFFBIG_LINTFLAGS 8 #define _CS_POSIX_V7_LP64_OFF64_CFLAGS 9 #define _CS_POSIX_V6_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS #define _CS_XBS5_LP64_OFF64_CFLAGS _CS_POSIX_V7_LP64_OFF64_CFLAGS #define _CS_POSIX_V7_LP64_OFF64_LDFLAGS 10 #define _CS_POSIX_V6_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS #define _CS_XBS5_LP64_OFF64_LDFLAGS _CS_POSIX_V7_LP64_OFF64_LDFLAGS #define _CS_POSIX_V7_LP64_OFF64_LIBS 11 #define _CS_POSIX_V6_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS #define _CS_XBS5_LP64_OFF64_LIBS _CS_POSIX_V7_LP64_OFF64_LIBS #define _CS_XBS5_LP64_OFF64_LINTFLAGS 12 #define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS 13 #define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS #define _CS_XBS5_LPBIG_OFFBIG_CFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS #define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS 14 #define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS #define _CS_XBS5_LPBIG_OFFBIG_LDFLAGS _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS #define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS 15 #define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS #define _CS_XBS5_LPBIG_OFFBIG_LIBS _CS_POSIX_V7_LPBIG_OFFBIG_LIBS #define _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS 16 #define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS 17 #define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS #define _CS_XBS5_WIDTH_RESTRICTED_ENVS _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS #define _CS_POSIX_V7_THREADS_CFLAGS 18 #define _CS_POSIX_V7_THREADS_LDFLAGS 19 #define _CS_V7_ENV 20 #define _CS_V6_ENV _CS_V7_ENV #define _CS_LFS_CFLAGS 21 #define _CS_LFS_LDFLAGS 22 #define _CS_LFS_LIBS 23 #define _CS_LFS_LINTFLAGS 24 #endif #ifdef __cplusplus } #endif #if __SSP_FORTIFY_LEVEL > 0 #include #endif #endif /* _SYS_UNISTD_H */ 0707010000007d000081a4000000000000000000000001630c8dd50000016b000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/utime.h#ifndef _SYS_UTIME_H #define _SYS_UTIME_H /* This is a dummy file, not customized for any particular system. If there is a utime.h in libc/sys/SYSDIR/sys, it will override this one. */ #ifdef __cplusplus extern "C" { #endif struct utimbuf { time_t actime; time_t modtime; }; #ifdef __cplusplus }; #endif #endif /* _SYS_UTIME_H */ 0707010000007e000081a4000000000000000000000001630c8dd5000003dd000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/wait.h#ifndef _SYS_WAIT_H #define _SYS_WAIT_H #ifdef __cplusplus extern "C" { #endif #include #define WNOHANG 1 #define WUNTRACED 2 /* A status looks like: <1 byte info> <1 byte code> == 0, child has exited, info is the exit value == 1..7e, child has exited, info is the signal number. == 7f, child has stopped, info was the signal number. == 80, there was a core dump. */ #define WIFEXITED(w) (((w) & 0xff) == 0) #define WIFSIGNALED(w) (((w) & 0x7f) > 0 && (((w) & 0x7f) < 0x7f)) #define WIFSTOPPED(w) (((w) & 0xff) == 0x7f) #define WEXITSTATUS(w) (((w) >> 8) & 0xff) #define WTERMSIG(w) ((w) & 0x7f) #define WSTOPSIG WEXITSTATUS pid_t wait (int *); pid_t waitpid (pid_t, int *, int); #ifdef _COMPILING_NEWLIB pid_t _wait (int *); #endif /* Provide prototypes for most of the _ names that are provided in newlib for some compilers. */ pid_t _wait (int *); #ifdef __cplusplus }; #endif #endif 0707010000007f000081a4000000000000000000000001630c8dd40000056d000000000000000000000000000000000000001f00000000./usr/nvptx-none/include/tar.h/* * tar.h */ #ifndef _TAR_H #define _TAR_H #include /* General definitions */ #define TMAGIC "ustar" /* ustar plus null byte. */ #define TMAGLEN 6 /* Length of the above. */ #define TVERSION "00" /* 00 without a null byte. */ #define TVERSLEN 2 /* Length of the above. */ /* Typeflag field definitions */ #define REGTYPE '0' /* Regular file. */ #define AREGTYPE '\0' /* Regular file. */ #define LNKTYPE '1' /* Link. */ #define SYMTYPE '2' /* Symbolic link. */ #define CHRTYPE '3' /* Character special. */ #define BLKTYPE '4' /* Block special. */ #define DIRTYPE '5' /* Directory. */ #define FIFOTYPE '6' /* FIFO special. */ #define CONTTYPE '7' /* Reserved. */ /* Mode field bit definitions (octal) */ #define TSUID 04000 /* Set UID on execution. */ #define TSGID 02000 /* Set GID on execution. */ #if __XSI_VISIBLE || __POSIX_VISIBLE < 200112 #define TSVTX 01000 /* On directories, restricted deletion flag. */ #endif #define TUREAD 00400 /* Read by owner. */ #define TUWRITE 00200 /* Write by owner. */ #define TUEXEC 00100 /* Execute/search by owner. */ #define TGREAD 00040 /* Read by group. */ #define TGWRITE 00020 /* Write by group. */ #define TGEXEC 00010 /* Execute/search by group. */ #define TOREAD 00004 /* Read by other. */ #define TOWRITE 00002 /* Write by other. */ #define TOEXEC 00001 /* Execute/search by other. */ #endif 07070100000080000081a4000000000000000000000001630c8dd40000005c000000000000000000000000000000000000002300000000./usr/nvptx-none/include/termios.h#ifdef __cplusplus extern "C" { #endif #include #ifdef __cplusplus } #endif 07070100000081000081a4000000000000000000000001630c8dd400001fdc000000000000000000000000000000000000002200000000./usr/nvptx-none/include/tgmath.h/* http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/tgmath.h.html */ /*- * Copyright (c) 2004 Stefan Farfeleder. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * $FreeBSD$ */ #ifndef _TGMATH_H_ #define _TGMATH_H_ #include #include #ifdef log2 #undef log2 #endif /* * This implementation of requires two implementation-dependent * macros to be defined: * __tg_impl_simple(x, y, z, fn, fnf, fnl, ...) * Invokes fnl() if the corresponding real type of x, y or z is long * double, fn() if it is double or any has an integer type, and fnf() * otherwise. * __tg_impl_full(x, y, z, fn, fnf, fnl, cfn, cfnf, cfnl, ...) * Invokes [c]fnl() if the corresponding real type of x, y or z is long * double, [c]fn() if it is double or any has an integer type, and * [c]fnf() otherwise. The function with the 'c' prefix is called if * any of x, y or z is a complex number. * Both macros call the chosen function with all additional arguments passed * to them, as given by __VA_ARGS__. * * Note that these macros cannot be implemented with C's ?: operator, * because the return type of the whole expression would incorrectly be long * double complex regardless of the argument types. */ /* requires GCC >= 3.1 */ #if !__GNUC_PREREQ (3, 1) #error " not implemented for this compiler" #endif #define __tg_type(__e, __t) \ __builtin_types_compatible_p(__typeof__(__e), __t) #define __tg_type3(__e1, __e2, __e3, __t) \ (__tg_type(__e1, __t) || __tg_type(__e2, __t) || \ __tg_type(__e3, __t)) #define __tg_type_corr(__e1, __e2, __e3, __t) \ (__tg_type3(__e1, __e2, __e3, __t) || \ __tg_type3(__e1, __e2, __e3, __t _Complex)) #define __tg_integer(__e1, __e2, __e3) \ (((__typeof__(__e1))1.5 == 1) || ((__typeof__(__e2))1.5 == 1) || \ ((__typeof__(__e3))1.5 == 1)) #define __tg_is_complex(__e1, __e2, __e3) \ (__tg_type3(__e1, __e2, __e3, float _Complex) || \ __tg_type3(__e1, __e2, __e3, double _Complex) || \ __tg_type3(__e1, __e2, __e3, long double _Complex) || \ __tg_type3(__e1, __e2, __e3, __typeof__(_Complex_I))) #if defined (_LDBL_EQ_DBL) || defined (__CYGWIN__) #define __tg_impl_simple(x, y, z, fn, fnf, fnl, ...) \ __builtin_choose_expr(__tg_type_corr(x, y, z, long double), \ fnl(__VA_ARGS__), __builtin_choose_expr( \ __tg_type_corr(x, y, z, double) || __tg_integer(x, y, z),\ fn(__VA_ARGS__), fnf(__VA_ARGS__))) #else #define __tg_impl_simple(__x, __y, __z, __fn, __fnf, __fnl, ...) \ (__tg_type_corr(__x, __y, __z, double) || __tg_integer(__x, __y, __z)) \ ? __fn(__VA_ARGS__) : __fnf(__VA_ARGS__) #endif #define __tg_impl_full(__x, __y, __z, __fn, __fnf, __fnl, __cfn, __cfnf, __cfnl, ...) \ __builtin_choose_expr(__tg_is_complex(__x, __y, __z), \ __tg_impl_simple(__x, __y, __z, __cfn, __cfnf, __cfnl, __VA_ARGS__), \ __tg_impl_simple(__x, __y, __z, __fn, __fnf, __fnl, __VA_ARGS__)) /* Macros to save lots of repetition below */ #define __tg_simple(__x, __fn) \ __tg_impl_simple(__x, __x, __x, __fn, __fn##f, __fn##l, __x) #define __tg_simple2(__x, __y, __fn) \ __tg_impl_simple(__x, __x, __y, __fn, __fn##f, __fn##l, __x, __y) #define __tg_simplev(__x, __fn, ...) \ __tg_impl_simple(__x, __x, __x, __fn, __fn##f, __fn##l, __VA_ARGS__) #define __tg_full(__x, __fn) \ __tg_impl_full(__x, __x, __x, __fn, __fn##f, __fn##l, c##__fn, c##__fn##f, c##__fn##l, __x) /* 7.22#4 -- These macros expand to real or complex functions, depending on * the type of their arguments. */ #define acos(__x) __tg_full(__x, acos) #define asin(__x) __tg_full(__x, asin) #define atan(__x) __tg_full(__x, atan) #define acosh(__x) __tg_full(__x, acosh) #define asinh(__x) __tg_full(__x, asinh) #define atanh(__x) __tg_full(__x, atanh) #define cos(__x) __tg_full(__x, cos) #define sin(__x) __tg_full(__x, sin) #define tan(__x) __tg_full(__x, tan) #define cosh(__x) __tg_full(__x, cosh) #define sinh(__x) __tg_full(__x, sinh) #define tanh(__x) __tg_full(__x, tanh) #define exp(__x) __tg_full(__x, exp) #define log(__x) __tg_full(__x, log) #define pow(__x, __y) __tg_impl_full(__x, __x, __y, pow, powf, powl, \ cpow, cpowf, cpowl, __x, __y) #define sqrt(__x) __tg_full(__x, sqrt) /* "The corresponding type-generic macro for fabs and cabs is fabs." */ #define fabs(__x) __tg_impl_full(__x, __x, __x, fabs, fabsf, fabsl, \ cabs, cabsf, cabsl, __x) /* 7.22#5 -- These macros are only defined for arguments with real type. */ #define atan2(__x, __y) __tg_simple2(__x, __y, atan2) #define cbrt(__x) __tg_simple(__x, cbrt) #define ceil(__x) __tg_simple(__x, ceil) #define copysign(__x, __y) __tg_simple2(__x, __y, copysign) #define erf(__x) __tg_simple(__x, erf) #define erfc(__x) __tg_simple(__x, erfc) #define exp2(__x) __tg_simple(__x, exp2) #define expm1(__x) __tg_simple(__x, expm1) #define fdim(__x, __y) __tg_simple2(__x, __y, fdim) #define floor(__x) __tg_simple(__x, floor) #define fma(__x, __y, __z) __tg_impl_simple(__x, __y, __z, fma, fmaf, fmal, \ __x, __y, __z) #define fmax(__x, __y) __tg_simple2(__x, __y, fmax) #define fmin(__x, __y) __tg_simple2(__x, __y, fmin) #define fmod(__x, __y) __tg_simple2(__x, __y, fmod) #define frexp(__x, __y) __tg_simplev(__x, frexp, __x, __y) #define hypot(__x, __y) __tg_simple2(__x, __y, hypot) #define ilogb(__x) __tg_simple(__x, ilogb) #define ldexp(__x, __y) __tg_simplev(__x, ldexp, __x, __y) #define lgamma(__x) __tg_simple(__x, lgamma) #define llrint(__x) __tg_simple(__x, llrint) #define llround(__x) __tg_simple(__x, llround) #define log10(__x) __tg_simple(__x, log10) #define log1p(__x) __tg_simple(__x, log1p) #define log2(__x) __tg_simple(__x, log2) #define logb(__x) __tg_simple(__x, logb) #define lrint(__x) __tg_simple(__x, lrint) #define lround(__x) __tg_simple(__x, lround) #define nearbyint(__x) __tg_simple(__x, nearbyint) #define nextafter(__x, __y) __tg_simple2(__x, __y, nextafter) /* not yet implemented even for _LDBL_EQ_DBL platforms */ #ifdef __CYGWIN__ #define nexttoward(__x, __y) __tg_simplev(__x, nexttoward, __x, __y) #endif #define remainder(__x, __y) __tg_simple2(__x, __y, remainder) #define remquo(__x, __y, __z) __tg_impl_simple(__x, __x, __y, remquo, remquof, \ remquol, __x, __y, __z) #define rint(__x) __tg_simple(__x, rint) #define round(__x) __tg_simple(__x, round) #define scalbn(__x, __y) __tg_simplev(__x, scalbn, __x, __y) #define scalbln(__x, __y) __tg_simplev(__x, scalbln, __x, __y) #define tgamma(__x) __tg_simple(__x, tgamma) #define trunc(__x) __tg_simple(__x, trunc) /* 7.22#6 -- These macros always expand to complex functions. */ #define carg(__x) __tg_simple(__x, carg) #define cimag(__x) __tg_simple(__x, cimag) #define conj(__x) __tg_simple(__x, conj) #define cproj(__x) __tg_simple(__x, cproj) #define creal(__x) __tg_simple(__x, creal) #endif /* !_TGMATH_H_ */ 07070100000082000081a4000000000000000000000001630c8dd400000be0000000000000000000000000000000000000002300000000./usr/nvptx-none/include/threads.h/*- * Copyright (c) 2011 Ed Schouten * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _THREADS_H_ #define _THREADS_H_ #include #include typedef void (*tss_dtor_t)(void *); typedef int (*thrd_start_t)(void *); enum { mtx_plain = 0x1, mtx_recursive = 0x2, mtx_timed = 0x4 }; enum { thrd_busy = 1, thrd_error = 2, thrd_nomem = 3, thrd_success = 4, thrd_timedout = 5 }; #if !defined(__cplusplus) || __cplusplus < 201103L #define thread_local _Thread_local #endif __BEGIN_DECLS void call_once(once_flag *, void (*)(void)); int cnd_broadcast(cnd_t *); void cnd_destroy(cnd_t *); int cnd_init(cnd_t *); int cnd_signal(cnd_t *); int cnd_timedwait(cnd_t *__restrict, mtx_t *__restrict __mtx, const struct timespec *__restrict) __requires_exclusive(*__mtx); int cnd_wait(cnd_t *, mtx_t *__mtx) __requires_exclusive(*__mtx); void mtx_destroy(mtx_t *__mtx) __requires_unlocked(*__mtx); int mtx_init(mtx_t *__mtx, int) __requires_unlocked(*__mtx); int mtx_lock(mtx_t *__mtx) __locks_exclusive(*__mtx); int mtx_timedlock(mtx_t *__restrict __mtx, const struct timespec *__restrict) __trylocks_exclusive(thrd_success, *__mtx); int mtx_trylock(mtx_t *__mtx) __trylocks_exclusive(thrd_success, *__mtx); int mtx_unlock(mtx_t *__mtx) __unlocks(*__mtx); int thrd_create(thrd_t *, thrd_start_t, void *); thrd_t thrd_current(void); int thrd_detach(thrd_t); int thrd_equal(thrd_t, thrd_t); _Noreturn void thrd_exit(int); int thrd_join(thrd_t, int *); int thrd_sleep(const struct timespec *, struct timespec *); void thrd_yield(void); int tss_create(tss_t *, tss_dtor_t); void tss_delete(tss_t); void * tss_get(tss_t); int tss_set(tss_t, void *); __END_DECLS #endif /* !_THREADS_H_ */ 07070100000083000081a4000000000000000000000001630c8dd400001d70000000000000000000000000000000000000002000000000./usr/nvptx-none/include/time.h/* * time.h * * Struct and function declarations for dealing with time. */ #ifndef _TIME_H_ #define _TIME_H_ #include "_ansi.h" #include #include #define __need_size_t #define __need_NULL #include /* Get _CLOCKS_PER_SEC_ */ #include #ifndef _CLOCKS_PER_SEC_ #define _CLOCKS_PER_SEC_ 1000 #endif #define CLOCKS_PER_SEC _CLOCKS_PER_SEC_ #define CLK_TCK CLOCKS_PER_SEC #include #include #if __POSIX_VISIBLE >= 200809 #include #endif _BEGIN_STD_C struct tm { int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_year; int tm_wday; int tm_yday; int tm_isdst; #ifdef __TM_GMTOFF long __TM_GMTOFF; #endif #ifdef __TM_ZONE const char *__TM_ZONE; #endif }; clock_t clock (void); double difftime (time_t _time2, time_t _time1); time_t mktime (struct tm *_timeptr); time_t time (time_t *_timer); #ifndef _REENT_ONLY char *asctime (const struct tm *_tblock); char *ctime (const time_t *_time); struct tm *gmtime (const time_t *_timer); struct tm *localtime (const time_t *_timer); #endif size_t strftime (char *__restrict _s, size_t _maxsize, const char *__restrict _fmt, const struct tm *__restrict _t); #if __POSIX_VISIBLE >= 200809 extern size_t strftime_l (char *__restrict _s, size_t _maxsize, const char *__restrict _fmt, const struct tm *__restrict _t, locale_t _l); #endif char *asctime_r (const struct tm *__restrict, char *__restrict); char *ctime_r (const time_t *, char *); struct tm *gmtime_r (const time_t *__restrict, struct tm *__restrict); struct tm *localtime_r (const time_t *__restrict, struct tm *__restrict); _END_STD_C #ifdef __cplusplus extern "C" { #endif #if __XSI_VISIBLE char *strptime (const char *__restrict, const char *__restrict, struct tm *__restrict); #endif #if __GNU_VISIBLE char *strptime_l (const char *__restrict, const char *__restrict, struct tm *__restrict, locale_t); #endif #if __POSIX_VISIBLE void tzset (void); #endif void _tzset_r (struct _reent *); /* getdate functions */ #ifdef HAVE_GETDATE #if __XSI_VISIBLE >= 4 #ifndef _REENT_ONLY #define getdate_err (*__getdate_err()) int *__getdate_err (void); struct tm * getdate (const char *); /* getdate_err is set to one of the following values to indicate the error. 1 the DATEMSK environment variable is null or undefined, 2 the template file cannot be opened for reading, 3 failed to get file status information, 4 the template file is not a regular file, 5 an error is encountered while reading the template file, 6 memory allication failed (not enough memory available), 7 there is no line in the template that matches the input, 8 invalid input specification */ #endif /* !_REENT_ONLY */ #endif /* __XSI_VISIBLE >= 4 */ #if __GNU_VISIBLE /* getdate_r returns the error code as above */ int getdate_r (const char *, struct tm *); #endif /* __GNU_VISIBLE */ #endif /* HAVE_GETDATE */ /* defines for the opengroup specifications Derived from Issue 1 of the SVID. */ #if __SVID_VISIBLE || __XSI_VISIBLE extern __IMPORT long _timezone; extern __IMPORT int _daylight; #endif #if __POSIX_VISIBLE extern __IMPORT char *_tzname[2]; /* POSIX defines the external tzname being defined in time.h */ #ifndef tzname #define tzname _tzname #endif #endif /* __POSIX_VISIBLE */ #ifdef __cplusplus } #endif #include #ifdef __CYGWIN__ #include #endif /*__CYGWIN__*/ #if defined(_POSIX_TIMERS) #include #ifdef __cplusplus extern "C" { #endif /* Clocks, P1003.1b-1993, p. 263 */ int clock_settime (clockid_t clock_id, const struct timespec *tp); int clock_gettime (clockid_t clock_id, struct timespec *tp); int clock_getres (clockid_t clock_id, struct timespec *res); /* Create a Per-Process Timer, P1003.1b-1993, p. 264 */ int timer_create (clockid_t clock_id, struct sigevent *__restrict evp, timer_t *__restrict timerid); /* Delete a Per_process Timer, P1003.1b-1993, p. 266 */ int timer_delete (timer_t timerid); /* Per-Process Timers, P1003.1b-1993, p. 267 */ int timer_settime (timer_t timerid, int flags, const struct itimerspec *__restrict value, struct itimerspec *__restrict ovalue); int timer_gettime (timer_t timerid, struct itimerspec *value); int timer_getoverrun (timer_t timerid); /* High Resolution Sleep, P1003.1b-1993, p. 269 */ int nanosleep (const struct timespec *rqtp, struct timespec *rmtp); #ifdef __cplusplus } #endif #endif /* _POSIX_TIMERS */ #if defined(_POSIX_CLOCK_SELECTION) #ifdef __cplusplus extern "C" { #endif int clock_nanosleep (clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); #ifdef __cplusplus } #endif #endif /* _POSIX_CLOCK_SELECTION */ #ifdef __cplusplus extern "C" { #endif /* CPU-time Clock Attributes, P1003.4b/D8, p. 54 */ /* values for the clock enable attribute */ #define CLOCK_ENABLED 1 /* clock is enabled, i.e. counting execution time */ #define CLOCK_DISABLED 0 /* clock is disabled */ /* values for the pthread cputime_clock_allowed attribute */ #define CLOCK_ALLOWED 1 /* If a thread is created with this value a */ /* CPU-time clock attached to that thread */ /* shall be accessible. */ #define CLOCK_DISALLOWED 0 /* If a thread is created with this value, the */ /* thread shall not have a CPU-time clock */ /* accessible. */ /* Flag indicating time is "absolute" with respect to the clock associated with a time. Value 4 is historic. */ #define TIMER_ABSTIME 4 /* Manifest Constants, P1003.1b-1993, p. 262 */ #if __GNU_VISIBLE #define CLOCK_REALTIME_COARSE ((clockid_t) 0) #endif #define CLOCK_REALTIME ((clockid_t) 1) /* Manifest Constants, P1003.4b/D8, p. 55 */ #if defined(_POSIX_CPUTIME) /* When used in a clock or timer function call, this is interpreted as the identifier of the CPU_time clock associated with the PROCESS making the function call. */ #define CLOCK_PROCESS_CPUTIME_ID ((clockid_t) 2) #endif #if defined(_POSIX_THREAD_CPUTIME) /* When used in a clock or timer function call, this is interpreted as the identifier of the CPU_time clock associated with the THREAD making the function call. */ #define CLOCK_THREAD_CPUTIME_ID ((clockid_t) 3) #endif #if defined(_POSIX_MONOTONIC_CLOCK) /* The identifier for the system-wide monotonic clock, which is defined * as a clock whose value cannot be set via clock_settime() and which * cannot have backward clock jumps. */ #define CLOCK_MONOTONIC ((clockid_t) 4) #endif #if __GNU_VISIBLE #define CLOCK_MONOTONIC_RAW ((clockid_t) 5) #define CLOCK_MONOTONIC_COARSE ((clockid_t) 6) #define CLOCK_BOOTTIME ((clockid_t) 7) #define CLOCK_REALTIME_ALARM ((clockid_t) 8) #define CLOCK_BOOTTIME_ALARM ((clockid_t) 9) #endif #if defined(_POSIX_CPUTIME) /* Accessing a Process CPU-time CLock, P1003.4b/D8, p. 55 */ int clock_getcpuclockid (pid_t pid, clockid_t *clock_id); #endif /* _POSIX_CPUTIME */ #if defined(_POSIX_CPUTIME) || defined(_POSIX_THREAD_CPUTIME) /* CPU-time Clock Attribute Access, P1003.4b/D8, p. 56 */ int clock_setenable_attr (clockid_t clock_id, int attr); int clock_getenable_attr (clockid_t clock_id, int *attr); #endif /* _POSIX_CPUTIME or _POSIX_THREAD_CPUTIME */ #ifdef __cplusplus } #endif #endif /* _TIME_H_ */ 07070100000084000081a4000000000000000000000001630c8dd400000792000000000000000000000000000000000000002200000000./usr/nvptx-none/include/unctrl.h/* From curses.h. */ /* * Copyright (c) 1981, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _UNCTRL_H_ #define _UNCTRL_H_ #include <_ansi.h> #define unctrl(c) __unctrl[(c) & 0xff] #define unctrllen(ch) __unctrllen[(ch) & 0xff] extern __IMPORT const char * const __unctrl[256]; /* Control strings. */ extern __IMPORT const char __unctrllen[256]; /* Control strings length. */ #endif /* _UNCTRL_H_ */ 07070100000085000081a4000000000000000000000001630c8dd400000059000000000000000000000000000000000000002200000000./usr/nvptx-none/include/unistd.h#ifndef _UNISTD_H_ #define _UNISTD_H_ # include #endif /* _UNISTD_H_ */ 07070100000086000081a4000000000000000000000001630c8dd4000000b9000000000000000000000000000000000000002100000000./usr/nvptx-none/include/utime.h#ifdef __cplusplus extern "C" { #endif #include <_ansi.h> /* The utime function is defined in libc/sys//sys if it exists. */ #include #ifdef __cplusplus } #endif 07070100000087000081a4000000000000000000000001630c8dd50000005a000000000000000000000000000000000000002000000000./usr/nvptx-none/include/utmp.h#ifdef __cplusplus extern "C" { #endif #include #ifdef __cplusplus } #endif 07070100000088000081a4000000000000000000000001630c8dd500002ed4000000000000000000000000000000000000002100000000./usr/nvptx-none/include/wchar.h#ifndef _WCHAR_H_ #define _WCHAR_H_ #include <_ansi.h> #include #define __need_size_t #define __need_wchar_t #define __need_wint_t #define __need_NULL #include /* For _mbstate_t definition. */ #include #include /* For __STDC_ISO_10646__ */ #include /* typedef only __gnuc_va_list, used throughout the header */ #define __need___va_list #include /* typedef va_list only when required */ #if __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE #ifdef __GNUC__ #ifndef _VA_LIST_DEFINED typedef __gnuc_va_list va_list; #define _VA_LIST_DEFINED #endif #else /* !__GNUC__ */ #include #endif #endif /* __POSIX_VISIBLE >= 200809 || __XSI_VISIBLE */ #if __XSI_VISIBLE /* && __XSI_VISIBLE < 800 */ && !__GNU_VISIBLE #include #endif #ifndef WEOF # define WEOF ((wint_t)-1) #endif /* This must match definition in */ #ifndef WCHAR_MIN #ifdef __WCHAR_MIN__ #define WCHAR_MIN __WCHAR_MIN__ #elif defined(__WCHAR_UNSIGNED__) || (L'\0' - 1 > 0) #define WCHAR_MIN (0 + L'\0') #else #define WCHAR_MIN (-0x7fffffff - 1 + L'\0') #endif #endif /* This must match definition in */ #ifndef WCHAR_MAX #ifdef __WCHAR_MAX__ #define WCHAR_MAX __WCHAR_MAX__ #elif defined(__WCHAR_UNSIGNED__) || (L'\0' - 1 > 0) #define WCHAR_MAX (0xffffffffu + L'\0') #else #define WCHAR_MAX (0x7fffffff + L'\0') #endif #endif #if __POSIX_VISIBLE >= 200809 #include #endif _BEGIN_STD_C #if __POSIX_VISIBLE >= 200809 || _XSI_VISIBLE /* As in stdio.h, defines __FILE. */ #if !defined(__FILE_defined) typedef __FILE FILE; # define __FILE_defined #endif #endif /* As required by POSIX.1-2008, declare tm as incomplete type. The actual definition is in time.h. */ struct tm; #ifndef _MBSTATE_T #define _MBSTATE_T typedef _mbstate_t mbstate_t; #endif /* _MBSTATE_T */ wint_t btowc (int); int wctob (wint_t); size_t mbrlen (const char *__restrict, size_t, mbstate_t *__restrict); size_t mbrtowc (wchar_t *__restrict, const char *__restrict, size_t, mbstate_t *__restrict); size_t _mbrtowc_r (struct _reent *, wchar_t * , const char * , size_t, mbstate_t *); int mbsinit (const mbstate_t *); #if __POSIX_VISIBLE >= 200809 size_t mbsnrtowcs (wchar_t *__restrict, const char **__restrict, size_t, size_t, mbstate_t *__restrict); #endif size_t _mbsnrtowcs_r (struct _reent *, wchar_t * , const char ** , size_t, size_t, mbstate_t *); size_t mbsrtowcs (wchar_t *__restrict, const char **__restrict, size_t, mbstate_t *__restrict); size_t _mbsrtowcs_r (struct _reent *, wchar_t * , const char ** , size_t, mbstate_t *); size_t wcrtomb (char *__restrict, wchar_t, mbstate_t *__restrict); size_t _wcrtomb_r (struct _reent *, char * , wchar_t, mbstate_t *); #if __POSIX_VISIBLE >= 200809 size_t wcsnrtombs (char *__restrict, const wchar_t **__restrict, size_t, size_t, mbstate_t *__restrict); #endif size_t _wcsnrtombs_r (struct _reent *, char * , const wchar_t ** , size_t, size_t, mbstate_t *); size_t wcsrtombs (char *__restrict, const wchar_t **__restrict, size_t, mbstate_t *__restrict); size_t _wcsrtombs_r (struct _reent *, char * , const wchar_t ** , size_t, mbstate_t *); #if __POSIX_VISIBLE >= 200809 int wcscasecmp (const wchar_t *, const wchar_t *); #endif wchar_t *wcscat (wchar_t *__restrict, const wchar_t *__restrict); wchar_t *wcschr (const wchar_t *, wchar_t); int wcscmp (const wchar_t *, const wchar_t *); int wcscoll (const wchar_t *, const wchar_t *); wchar_t *wcscpy (wchar_t *__restrict, const wchar_t *__restrict); #if __POSIX_VISIBLE >= 200809 wchar_t *wcpcpy (wchar_t *__restrict, const wchar_t *__restrict); wchar_t *wcsdup (const wchar_t *) __malloc_like __result_use_check; #endif wchar_t *_wcsdup_r (struct _reent *, const wchar_t * ); size_t wcscspn (const wchar_t *, const wchar_t *); size_t wcsftime (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict); #if __GNU_VISIBLE size_t wcsftime_l (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict, locale_t); #endif size_t wcslcat (wchar_t *, const wchar_t *, size_t); size_t wcslcpy (wchar_t *, const wchar_t *, size_t); size_t wcslen (const wchar_t *); #if __POSIX_VISIBLE >= 200809 int wcsncasecmp (const wchar_t *, const wchar_t *, size_t); #endif wchar_t *wcsncat (wchar_t *__restrict, const wchar_t *__restrict, size_t); int wcsncmp (const wchar_t *, const wchar_t *, size_t); wchar_t *wcsncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); #if __POSIX_VISIBLE >= 200809 wchar_t *wcpncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); size_t wcsnlen (const wchar_t *, size_t); #endif wchar_t *wcspbrk (const wchar_t *, const wchar_t *); wchar_t *wcsrchr (const wchar_t *, wchar_t); size_t wcsspn (const wchar_t *, const wchar_t *); wchar_t *wcsstr (const wchar_t *__restrict, const wchar_t *__restrict); wchar_t *wcstok (wchar_t *__restrict, const wchar_t *__restrict, wchar_t **__restrict); double wcstod (const wchar_t *__restrict, wchar_t **__restrict); double _wcstod_r (struct _reent *, const wchar_t *, wchar_t **); #if __ISO_C_VISIBLE >= 1999 float wcstof (const wchar_t *__restrict, wchar_t **__restrict); #endif float _wcstof_r (struct _reent *, const wchar_t *, wchar_t **); #if __XSI_VISIBLE int wcswidth (const wchar_t *, size_t); #endif size_t wcsxfrm (wchar_t *__restrict, const wchar_t *__restrict, size_t); #if __POSIX_VISIBLE >= 200809 extern int wcscasecmp_l (const wchar_t *, const wchar_t *, locale_t); extern int wcsncasecmp_l (const wchar_t *, const wchar_t *, size_t, locale_t); extern int wcscoll_l (const wchar_t *, const wchar_t *, locale_t); extern size_t wcsxfrm_l (wchar_t *__restrict, const wchar_t *__restrict, size_t, locale_t); #endif #if __XSI_VISIBLE int wcwidth (const wchar_t); #endif wchar_t *wmemchr (const wchar_t *, wchar_t, size_t); int wmemcmp (const wchar_t *, const wchar_t *, size_t); wchar_t *wmemcpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); wchar_t *wmemmove (wchar_t *, const wchar_t *, size_t); #if __GNU_VISIBLE wchar_t *wmempcpy (wchar_t *__restrict, const wchar_t *__restrict, size_t); #endif wchar_t *wmemset (wchar_t *, wchar_t, size_t); long wcstol (const wchar_t *__restrict, wchar_t **__restrict, int); #if __ISO_C_VISIBLE >= 1999 long long wcstoll (const wchar_t *__restrict, wchar_t **__restrict, int); #endif unsigned long wcstoul (const wchar_t *__restrict, wchar_t **__restrict, int); #if __ISO_C_VISIBLE >= 1999 unsigned long long wcstoull (const wchar_t *__restrict, wchar_t **__restrict, int); #endif long _wcstol_r (struct _reent *, const wchar_t *, wchar_t **, int); long long _wcstoll_r (struct _reent *, const wchar_t *, wchar_t **, int); unsigned long _wcstoul_r (struct _reent *, const wchar_t *, wchar_t **, int); unsigned long long _wcstoull_r (struct _reent *, const wchar_t *, wchar_t **, int); #if __ISO_C_VISIBLE >= 1999 long double wcstold (const wchar_t *, wchar_t **); #endif #if __GNU_VISIBLE long wcstol_l (const wchar_t *__restrict, wchar_t **__restrict, int, locale_t); long long wcstoll_l (const wchar_t *__restrict, wchar_t **__restrict, int, locale_t); unsigned long wcstoul_l (const wchar_t *__restrict, wchar_t **__restrict, int, locale_t); unsigned long long wcstoull_l (const wchar_t *__restrict, wchar_t **__restrict, int, locale_t); double wcstod_l (const wchar_t *, wchar_t **, locale_t); float wcstof_l (const wchar_t *, wchar_t **, locale_t); long double wcstold_l (const wchar_t *, wchar_t **, locale_t); #endif wint_t fgetwc (__FILE *); wchar_t *fgetws (wchar_t *__restrict, int, __FILE *__restrict); wint_t fputwc (wchar_t, __FILE *); int fputws (const wchar_t *__restrict, __FILE *__restrict); #if __ISO_C_VISIBLE >= 1999 || __XSI_VISIBLE >= 500 int fwide (__FILE *, int); #endif wint_t getwc (__FILE *); wint_t getwchar (void); wint_t putwc (wchar_t, __FILE *); wint_t putwchar (wchar_t); wint_t ungetwc (wint_t wc, __FILE *); wint_t _fgetwc_r (struct _reent *, __FILE *); wint_t _fgetwc_unlocked_r (struct _reent *, __FILE *); wchar_t *_fgetws_r (struct _reent *, wchar_t *, int, __FILE *); wchar_t *_fgetws_unlocked_r (struct _reent *, wchar_t *, int, __FILE *); wint_t _fputwc_r (struct _reent *, wchar_t, __FILE *); wint_t _fputwc_unlocked_r (struct _reent *, wchar_t, __FILE *); int _fputws_r (struct _reent *, const wchar_t *, __FILE *); int _fputws_unlocked_r (struct _reent *, const wchar_t *, __FILE *); int _fwide_r (struct _reent *, __FILE *, int); wint_t _getwc_r (struct _reent *, __FILE *); wint_t _getwc_unlocked_r (struct _reent *, __FILE *); wint_t _getwchar_r (struct _reent *); wint_t _getwchar_unlocked_r (struct _reent *); wint_t _putwc_r (struct _reent *, wchar_t, __FILE *); wint_t _putwc_unlocked_r (struct _reent *, wchar_t, __FILE *); wint_t _putwchar_r (struct _reent *, wchar_t); wint_t _putwchar_unlocked_r (struct _reent *, wchar_t); wint_t _ungetwc_r (struct _reent *, wint_t wc, __FILE *); #if __GNU_VISIBLE wint_t fgetwc_unlocked (__FILE *); wchar_t *fgetws_unlocked (wchar_t *__restrict, int, __FILE *__restrict); wint_t fputwc_unlocked (wchar_t, __FILE *); int fputws_unlocked (const wchar_t *__restrict, __FILE *__restrict); wint_t getwc_unlocked (__FILE *); wint_t getwchar_unlocked (void); wint_t putwc_unlocked (wchar_t, __FILE *); wint_t putwchar_unlocked (wchar_t); #endif #if __POSIX_VISIBLE >= 200809 __FILE *open_wmemstream (wchar_t **, size_t *); #endif __FILE *_open_wmemstream_r (struct _reent *, wchar_t **, size_t *); #ifndef __VALIST #ifdef __GNUC__ #define __VALIST __gnuc_va_list #else #define __VALIST char* #endif #endif #if __ISO_C_VISIBLE >= 1999 || __XSI_VISIBLE >= 500 int fwprintf (__FILE *__restrict, const wchar_t *__restrict, ...); int swprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, ...); int vfwprintf (__FILE *__restrict, const wchar_t *__restrict, __VALIST); int vswprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, __VALIST); int vwprintf (const wchar_t *__restrict, __VALIST); int wprintf (const wchar_t *__restrict, ...); #endif int _fwprintf_r (struct _reent *, __FILE *, const wchar_t *, ...); int _swprintf_r (struct _reent *, wchar_t *, size_t, const wchar_t *, ...); int _vfwprintf_r (struct _reent *, __FILE *, const wchar_t *, __VALIST); int _vswprintf_r (struct _reent *, wchar_t *, size_t, const wchar_t *, __VALIST); int _vwprintf_r (struct _reent *, const wchar_t *, __VALIST); int _wprintf_r (struct _reent *, const wchar_t *, ...); #if __ISO_C_VISIBLE >= 1999 || __XSI_VISIBLE >= 500 int fwscanf (__FILE *__restrict, const wchar_t *__restrict, ...); int swscanf (const wchar_t *__restrict, const wchar_t *__restrict, ...); int vfwscanf (__FILE *__restrict, const wchar_t *__restrict, __VALIST); int vswscanf (const wchar_t *__restrict, const wchar_t *__restrict, __VALIST); int vwscanf (const wchar_t *__restrict, __VALIST); int wscanf (const wchar_t *__restrict, ...); #endif int _fwscanf_r (struct _reent *, __FILE *, const wchar_t *, ...); int _swscanf_r (struct _reent *, const wchar_t *, const wchar_t *, ...); int _vfwscanf_r (struct _reent *, __FILE *, const wchar_t *, __VALIST); int _vswscanf_r (struct _reent *, const wchar_t *, const wchar_t *, __VALIST); int _vwscanf_r (struct _reent *, const wchar_t *, __VALIST); int _wscanf_r (struct _reent *, const wchar_t *, ...); #define getwc(fp) fgetwc(fp) #define putwc(wc,fp) fputwc((wc), (fp)) #define getwchar() fgetwc(_REENT->_stdin) #define putwchar(wc) fputwc((wc), _REENT->_stdout) #if __GNU_VISIBLE #define getwc_unlocked(fp) fgetwc_unlocked(fp) #define putwc_unlocked(wc,fp) fputwc_unlocked((wc), (fp)) #define getwchar_unlocked() fgetwc_unlocked(_REENT->_stdin) #define putwchar_unlocked(wc) fputwc_unlocked((wc), _REENT->_stdout) #endif _END_STD_C #if __SSP_FORTIFY_LEVEL > 0 #include #endif #endif /* _WCHAR_H_ */ 07070100000089000081a4000000000000000000000001630c8dd5000006ea000000000000000000000000000000000000002200000000./usr/nvptx-none/include/wctype.h#ifndef _WCTYPE_H_ #define _WCTYPE_H_ #include <_ansi.h> #include #define __need_wint_t #include #if __POSIX_VISIBLE >= 200809 #include #endif #ifndef WEOF # define WEOF ((wint_t)-1) #endif _BEGIN_STD_C #ifndef _WCTYPE_T #define _WCTYPE_T typedef int wctype_t; #endif #ifndef _WCTRANS_T #define _WCTRANS_T typedef int wctrans_t; #endif int iswalpha (wint_t); int iswalnum (wint_t); #if __ISO_C_VISIBLE >= 1999 int iswblank (wint_t); #endif int iswcntrl (wint_t); int iswctype (wint_t, wctype_t); int iswdigit (wint_t); int iswgraph (wint_t); int iswlower (wint_t); int iswprint (wint_t); int iswpunct (wint_t); int iswspace (wint_t); int iswupper (wint_t); int iswxdigit (wint_t); wint_t towctrans (wint_t, wctrans_t); wint_t towupper (wint_t); wint_t towlower (wint_t); wctrans_t wctrans (const char *); wctype_t wctype (const char *); #if __POSIX_VISIBLE >= 200809 extern int iswalpha_l (wint_t, locale_t); extern int iswalnum_l (wint_t, locale_t); extern int iswblank_l (wint_t, locale_t); extern int iswcntrl_l (wint_t, locale_t); extern int iswctype_l (wint_t, wctype_t, locale_t); extern int iswdigit_l (wint_t, locale_t); extern int iswgraph_l (wint_t, locale_t); extern int iswlower_l (wint_t, locale_t); extern int iswprint_l (wint_t, locale_t); extern int iswpunct_l (wint_t, locale_t); extern int iswspace_l (wint_t, locale_t); extern int iswupper_l (wint_t, locale_t); extern int iswxdigit_l (wint_t, locale_t); extern wint_t towctrans_l (wint_t, wctrans_t, locale_t); extern wint_t towupper_l (wint_t, locale_t); extern wint_t towlower_l (wint_t, locale_t); extern wctrans_t wctrans_l (const char *, locale_t); extern wctype_t wctype_l (const char *, locale_t); #endif _END_STD_C #endif /* _WCTYPE_H_ */ 0707010000008a000081a4000000000000000000000001630c8dd5000005f6000000000000000000000000000000000000002300000000./usr/nvptx-none/include/wordexp.h/* Copyright (C) 2002, 2010 by Red Hat, Incorporated. All rights reserved. * * Permission to use, copy, modify, and distribute this software * is freely granted, provided that this notice is preserved. */ #ifndef _WORDEXP_H_ #define _WORDEXP_H_ #include #ifdef __cplusplus extern "C" { #endif struct _wordexp_t { size_t we_wordc; /* Count of words matched by words. */ char **we_wordv; /* Pointer to list of expanded words. */ size_t we_offs; /* Slots to reserve at the beginning of we_wordv. */ }; typedef struct _wordexp_t wordexp_t; #define WRDE_DOOFFS 0x0001 /* Use we_offs. */ #define WRDE_APPEND 0x0002 /* Append to output from previous call. */ #define WRDE_NOCMD 0x0004 /* Don't perform command substitution. */ #define WRDE_REUSE 0x0008 /* pwordexp points to a wordexp_t struct returned from a previous successful call to wordexp. */ #define WRDE_SHOWERR 0x0010 /* Print error messages to stderr. */ #define WRDE_UNDEF 0x0020 /* Report attempt to expand undefined shell variable. */ enum { WRDE_SUCCESS, WRDE_NOSPACE, WRDE_BADCHAR, WRDE_BADVAL, WRDE_CMDSUB, WRDE_SYNTAX, WRDE_NOSYS }; /* Note: This implementation of wordexp requires a version of bash that supports the --wordexp and --protected arguments to be present on the system. It does not support the WRDE_UNDEF flag. */ int wordexp(const char *__restrict, wordexp_t *__restrict, int); void wordfree(wordexp_t *); #ifdef __cplusplus } #endif #endif /* _WORDEXP_H_ */ 0707010000008b000041ed000000000000000000000001630c8f2800000000000000000000000000000000000000000000001500000000./usr/nvptx-none/lib0707010000008e000081a4000000000000000000000001630c8f26001191c0000000000000000000000000000000000000001c00000000./usr/nvptx-none/lib/libm.a! // 2306 ` lib_a-cephes_subr.o/ lib_a-cephes_subrf.o/ lib_a-cephes_subrl.o/ lib_a-copysignl.o/ lib_a-e_rem_pio2.o/ lib_a-e_remainder.o/ lib_a-e_tgamma.o/ lib_a-ef_acosh.o/ lib_a-ef_atan2.o/ lib_a-ef_atanh.o/ lib_a-ef_hypot.o/ lib_a-ef_log10.o/ lib_a-ef_rem_pio2.o/ lib_a-ef_remainder.o/ lib_a-ef_scalb.o/ lib_a-ef_tgamma.o/ lib_a-el_hypot.o/ lib_a-er_lgamma.o/ lib_a-erf_lgamma.o/ lib_a-exp_data.o/ lib_a-fe_dfl_env.o/ lib_a-feclearexcept.o/ lib_a-fegetenv.o/ lib_a-fegetexceptflag.o/ lib_a-fegetround.o/ lib_a-feholdexcept.o/ lib_a-feraiseexcept.o/ lib_a-fesetenv.o/ lib_a-fesetexceptflag.o/ lib_a-fesetround.o/ lib_a-fetestexcept.o/ lib_a-feupdateenv.o/ lib_a-k_rem_pio2.o/ lib_a-k_standard.o/ lib_a-kf_rem_pio2.o/ lib_a-llroundl.o/ lib_a-log2_data.o/ lib_a-log_data.o/ lib_a-math_err.o/ lib_a-math_errf.o/ lib_a-nearbyintl.o/ lib_a-nextafterl.o/ lib_a-nexttoward.o/ lib_a-nexttowardf.o/ lib_a-nexttowardl.o/ lib_a-pow_log_data.o/ lib_a-remainderl.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_infinity.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_llrint.o/ lib_a-s_llround.o/ lib_a-s_lround.o/ lib_a-s_nearbyint.o/ lib_a-s_nextafter.o/ lib_a-s_remquo.o/ lib_a-s_scalbln.o/ lib_a-s_scalbn.o/ lib_a-s_signbit.o/ lib_a-s_signif.o/ lib_a-scalblnl.o/ lib_a-sf_asinh.o/ lib_a-sf_copysign.o/ lib_a-sf_exp10.o/ lib_a-sf_exp2_data.o/ lib_a-sf_expm1.o/ lib_a-sf_finite.o/ lib_a-sf_floor.o/ lib_a-sf_fpclassify.o/ lib_a-sf_frexp.o/ lib_a-sf_ilogb.o/ lib_a-sf_infinity.o/ lib_a-sf_isinf.o/ lib_a-sf_isinff.o/ lib_a-sf_isnan.o/ lib_a-sf_isnanf.o/ lib_a-sf_ldexp.o/ lib_a-sf_llrint.o/ lib_a-sf_llround.o/ lib_a-sf_log1p.o/ lib_a-sf_log2_data.o/ lib_a-sf_log_data.o/ lib_a-sf_lrint.o/ lib_a-sf_lround.o/ lib_a-sf_nearbyint.o/ lib_a-sf_nextafter.o/ lib_a-sf_pow10.o/ lib_a-sf_pow_log2_data.o/ lib_a-sf_remquo.o/ lib_a-sf_round.o/ lib_a-sf_scalbln.o/ lib_a-sf_scalbn.o/ lib_a-sf_signif.o/ lib_a-sf_trunc.o/ lib_a-sincosf_data.o/ lib_a-sl_finite.o/ lib_a-w_lgamma.o/ lib_a-w_remainder.o/ lib_a-w_sincos.o/ lib_a-w_tgamma.o/ lib_a-wf_acosh.o/ lib_a-wf_atan2.o/ lib_a-wf_atanh.o/ lib_a-wf_gamma.o/ lib_a-wf_hypot.o/ lib_a-wf_lgamma.o/ lib_a-wf_log10.o/ lib_a-wf_remainder.o/ lib_a-wf_scalb.o/ lib_a-wf_sincos.o/ lib_a-wf_tgamma.o/ lib_a-wr_gamma.o/ lib_a-wr_lgamma.o/ lib_a-wrf_gamma.o/ lib_a-wrf_lgamma.o/ lib_a-acoshl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acoshl .visible .func (.param .f64 %value_out) acoshl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/acoshl.c" // BEGIN GLOBAL FUNCTION DECL: acosh .extern .func (.param .f64 %value_out) acosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: acoshl .visible .func (.param .f64 %value_out) acoshl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),acosh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-acosl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acosl .visible .func (.param .f64 %value_out) acosl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/acosl.c" // BEGIN GLOBAL FUNCTION DECL: acos .extern .func (.param .f64 %value_out) acos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: acosl .visible .func (.param .f64 %value_out) acosl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),acos,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-asinhl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinhl .visible .func (.param .f64 %value_out) asinhl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/asinhl.c" // BEGIN GLOBAL FUNCTION DECL: asinh .extern .func (.param .f64 %value_out) asinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinhl .visible .func (.param .f64 %value_out) asinhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),asinh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-asinl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinl .visible .func (.param .f64 %value_out) asinl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/asinl.c" // BEGIN GLOBAL FUNCTION DECL: asin .extern .func (.param .f64 %value_out) asin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinl .visible .func (.param .f64 %value_out) asinl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),asin,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-atan2l.o/ 0 0 0 644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan2l .visible .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/atan2l.c" // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atan2l .visible .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-atanhl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanhl .visible .func (.param .f64 %value_out) atanhl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/atanhl.c" // BEGIN GLOBAL FUNCTION DECL: atanh .extern .func (.param .f64 %value_out) atanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: atanhl .visible .func (.param .f64 %value_out) atanhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),atanh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-atanl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanl .visible .func (.param .f64 %value_out) atanl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/atanl.c" // BEGIN GLOBAL FUNCTION DECL: atan .extern .func (.param .f64 %value_out) atan (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: atanl .visible .func (.param .f64 %value_out) atanl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),atan,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-cabs.o/ 0 0 0 644 1706 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cabs .visible .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cabs.c" // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: hypot .extern .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cabs .visible .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r35; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 58 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; call (%value_in),hypot,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 59 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-cabsf.o/ 0 0 0 644 1720 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cabsf .visible .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cabsf.c" // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: hypotf .extern .func (.param .f32 %value_out) hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cabsf .visible .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r32; .reg .f32 %r35; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 18 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r29,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r32,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; call (%value_in),hypotf,(%out_arg1,%out_arg2); ld.param.f32 %r35,[%value_in]; } .loc 1 19 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } lib_a-cabsl.o/ 0 0 0 644 1001 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cabsl .visible .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cabsl.c" // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cabsl .visible .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 14 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 18 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-cacos.o/ 0 0 0 644 2224 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacos .visible .func cacos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cacos.c" // BEGIN GLOBAL FUNCTION DECL: casin .extern .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cacos .visible .func cacos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r28; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 94 9 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r32; call casin,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 95 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 96 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } .loc 1 95 16 mov.f64 %r44,0d3ff921fb54442d18; sub.f64 %r43,%r44,%r38; .loc 1 96 4 fma.rn.f64 %r28,%r41,0d8000000000000000,%r43; .loc 1 98 9 st.f64 [%r30],%r28; .loc 1 96 4 mov.f64 %r46,0d0000000000000000; sub.f64 %r45,%r46,%r41; .loc 1 98 9 st.f64 [%r30+8],%r45; .loc 1 99 1 ret; } lib_a-cacosf.o/ 0 0 0 644 2157 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacosf .visible .func cacosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cacosf.c" // BEGIN GLOBAL FUNCTION DECL: casinf .extern .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cacosf .visible .func cacosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[8]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r24; .reg .f32 %r26; .reg .f32 %r27; .reg .u64 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; mov.u64 %r30,%ar0; mov.f32 %r31,%ar1; mov.f32 %r32,%ar2; .loc 1 43 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r32; call casinf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r26,[%frame]; ld.f32 %r27,[%frame+4]; .loc 1 44 36 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r27; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r38,[%value_in]; } .loc 1 44 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r27; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } .loc 1 44 34 neg.f32 %r42,%r38; .loc 1 44 21 mov.f32 %r44,0f3fc90fdb; sub.f32 %r43,%r44,%r41; .loc 1 44 34 fma.rn.f32 %r24,%r38,0f80000000,%r43; .loc 1 45 9 st.f32 [%r30],%r24; st.f32 [%r30+4],%r42; .loc 1 46 1 ret; } lib_a-cacosh.o/ 0 0 0 644 3004 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacosh .visible .func cacosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cacosh.c" // BEGIN GLOBAL FUNCTION DECL: csqrt .extern .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: clog .extern .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: cacosh .visible .func cacosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .u64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r62; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .f64 %r88; .reg .f64 %r91; mov.u64 %r53,%ar0; mov.f64 %r54,%ar1; mov.f64 %r55,%ar2; .loc 1 90 15 add.f64 %r62,%r54,0d3ff0000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r62; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r25,[%frame]; ld.f64 %r26,[%frame+8]; .loc 1 90 30 mov.f64 %r73,0d3ff0000000000000; sub.f64 %r72,%r54,%r73; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r30,[%frame]; ld.f64 %r31,[%frame+8]; .loc 1 90 28 mul.f64 %r43,%r26,%r30; mul.f64 %r76,%r26,%r31; neg.f64 %r77,%r76; fma.rn.f64 %r44,%r25,%r30,%r77; fma.rn.f64 %r45,%r25,%r31,%r43; setp.num.f64 %r78,%r44,%r45; @ %r78 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r26; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r30; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r31; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r44,[%frame]; ld.f64 %r45,[%frame+8]; $L2: .loc 1 90 6 add.f64 %r88,%r55,%r45; add.f64 %r91,%r54,%r44; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r91; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r88; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r34,[%frame]; ld.f64 %r35,[%frame+8]; .loc 1 92 9 st.f64 [%r53],%r34; st.f64 [%r53+8],%r35; .loc 1 93 1 ret; } lib_a-cacoshf.o/0 0 0 644 2999 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacoshf .visible .func cacoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cacoshf.c" // BEGIN GLOBAL FUNCTION DECL: csqrtf .extern .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: clogf .extern .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: cacoshf .visible .func cacoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[8]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .u64 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r62; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .f32 %r88; .reg .f32 %r91; mov.u64 %r53,%ar0; mov.f32 %r54,%ar1; mov.f32 %r55,%ar2; .loc 1 45 16 add.f32 %r62,%r54,0f3f800000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r62; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r55; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r25,[%frame]; ld.f32 %r26,[%frame+4]; .loc 1 45 32 mov.f32 %r73,0f3f800000; sub.f32 %r72,%r54,%r73; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r72; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r55; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r30,[%frame]; ld.f32 %r31,[%frame+4]; .loc 1 45 30 mul.f32 %r43,%r26,%r30; mul.f32 %r76,%r26,%r31; neg.f32 %r77,%r76; fma.rn.f32 %r44,%r25,%r30,%r77; fma.rn.f32 %r45,%r25,%r31,%r43; setp.num.f32 %r78,%r44,%r45; @ %r78 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r25; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r26; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r30; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r31; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r44,[%frame]; ld.f32 %r45,[%frame+4]; $L2: .loc 1 45 6 add.f32 %r88,%r55,%r45; add.f32 %r91,%r54,%r44; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r91; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r88; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r34,[%frame]; ld.f32 %r35,[%frame+4]; .loc 1 47 9 st.f32 [%r53],%r34; st.f32 [%r53+4],%r35; .loc 1 48 1 ret; } lib_a-cacoshl.o/0 0 0 644 3058 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacoshl .visible .func cacoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cacoshl.c" // BEGIN GLOBAL FUNCTION DECL: csqrtl .extern .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: clogl .extern .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: cacoshl .visible .func cacoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .u64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r62; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .f64 %r89; .reg .f64 %r92; mov.u64 %r53,%ar0; mov.f64 %r54,%ar1; mov.f64 %r55,%ar2; .loc 1 42 16 add.f64 %r62,%r54,0d3ff0000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r62; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrtl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r25,[%frame]; ld.f64 %r26,[%frame+8]; .loc 1 42 32 mov.f64 %r73,0d3ff0000000000000; sub.f64 %r72,%r54,%r73; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrtl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r30,[%frame]; ld.f64 %r31,[%frame+8]; .loc 1 42 30 mul.f64 %r43,%r26,%r30; mul.f64 %r76,%r26,%r31; neg.f64 %r77,%r76; fma.rn.f64 %r44,%r25,%r30,%r77; fma.rn.f64 %r45,%r25,%r31,%r43; setp.num.f64 %r78,%r44,%r45; @ %r78 bra $L2; add.u64 %r79,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r26; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r30; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r31; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r44,[%frame+16]; ld.f64 %r45,[%frame+24]; $L2: .loc 1 42 6 add.f64 %r89,%r55,%r45; add.f64 %r92,%r54,%r44; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r92; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r89; call clogl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r34,[%frame]; ld.f64 %r35,[%frame+8]; .loc 1 44 9 st.f64 [%r53],%r34; st.f64 [%r53+8],%r35; .loc 1 45 1 ret; } lib_a-cacosl.o/ 0 0 0 644 2174 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacosl .visible .func cacosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cacosl.c" // BEGIN GLOBAL FUNCTION DECL: casinl .extern .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cacosl .visible .func cacosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r26; .reg .f64 %r27; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 41 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r32; call casinl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r26,[%frame]; ld.f64 %r27,[%frame+8]; .loc 1 42 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r27; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 42 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r27; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } .loc 1 42 28 neg.f64 %r42,%r38; .loc 1 42 15 mov.f64 %r44,0d3ff921fb54442d18; sub.f64 %r43,%r44,%r41; .loc 1 42 28 fma.rn.f64 %r24,%r38,0d8000000000000000,%r43; .loc 1 43 9 st.f64 [%r30],%r24; st.f64 [%r30+8],%r42; .loc 1 44 1 ret; } lib_a-carg.o/ 0 0 0 644 1706 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: carg .visible .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/carg.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: carg .visible .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r35; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 58 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 59 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-cargf.o/ 0 0 0 644 1720 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cargf .visible .func (.param .f32 %value_out) cargf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cargf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cargf .visible .func (.param .f32 %value_out) cargf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r32; .reg .f32 %r35; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 18 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r29,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r32,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r35,[%value_in]; } .loc 1 19 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } lib_a-cargl.o/ 0 0 0 644 1001 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cargl .visible .func (.param .f64 %value_out) cargl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cargl.c" // BEGIN GLOBAL FUNCTION DECL: carg .extern .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cargl .visible .func (.param .f64 %value_out) cargl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 14 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),carg,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 18 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-casin.o/ 0 0 0 644 5210 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casin .visible .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/casin.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: csqrt .extern .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: clog .extern .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: casin .visible .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r22; .reg .f64 %r27; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r59; .reg .u64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r72; .reg .pred %r73; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r85; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r106; .reg .pred %r107; .reg .f64 %r111; .reg .f64 %r112; mov.u64 %r63,%ar0; mov.f64 %r64,%ar1; mov.f64 %r65,%ar2; .loc 1 92 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r68,[%value_in]; } .loc 1 93 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 150 9 fma.rn.f64 %r22,%r71,0d0000000000000000,%r68; .loc 1 151 5 neg.f64 %r72,%r71; fma.rn.f64 %r47,%r22,0d0000000000000000,%r72; fma.rn.f64 %r48,%r71,0d0000000000000000,%r22; setp.num.f64 %r73,%r47,%r48; @ %r73 bra $L2; mov.f64 %r78,0d3ff0000000000000; mov.f64 %r77,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r22; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r71; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r77; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r78; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r47,[%frame]; ld.f64 %r48,[%frame+8]; $L2: .loc 1 155 32 add.f64 %r79,%r68,%r68; .loc 1 155 36 mul.f64 %r34,%r79,%r71; .loc 1 155 10 sub.f64 %r80,%r68,%r71; .loc 1 155 20 add.f64 %r81,%r68,%r71; .loc 1 155 25 mul.f64 %r82,%r34,0d0000000000000000; fma.rn.f64 %r27,%r80,%r81,%r82; .loc 1 157 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 157 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 157 23 neg.f64 %r89,%r85; .loc 1 157 11 mov.f64 %r91,0d3ff0000000000000; sub.f64 %r90,%r91,%r88; .loc 1 157 23 fma.rn.f64 %r30,%r85,0d8000000000000000,%r90; .loc 1 158 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r89; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r40,[%frame]; ld.f64 %r41,[%frame+8]; .loc 1 160 5 add.f64 %r101,%r40,%r47; add.f64 %r102,%r41,%r48; .loc 1 161 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r101; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r102; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r44,[%frame]; ld.f64 %r45,[%frame+8]; .loc 1 163 4 fma.rn.f64 %r59,%r44,0d8000000000000000,%r45; neg.f64 %r106,%r44; fma.rn.f64 %r46,%r45,0d8000000000000000,%r106; setp.num.f64 %r107,%r46,%r59; @ %r107 bra $L3; mov.f64 %r112,0dbff0000000000000; mov.f64 %r111,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r45; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r111; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r112; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r59,[%frame]; ld.f64 %r46,[%frame+8]; $L3: .loc 1 164 9 st.f64 [%r63],%r59; st.f64 [%r63+8],%r46; .loc 1 165 1 ret; } lib_a-casinf.o/ 0 0 0 644 5132 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinf .visible .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/casinf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: csqrtf .extern .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: clogf .extern .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: casinf .visible .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[8]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r22; .reg .f32 %r27; .reg .f32 %r30; .reg .f32 %r34; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r59; .reg .u64 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r68; .reg .f32 %r71; .reg .f32 %r72; .reg .pred %r73; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r85; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r106; .reg .pred %r107; .reg .f32 %r111; .reg .f32 %r112; mov.u64 %r63,%ar0; mov.f32 %r64,%ar1; mov.f32 %r65,%ar2; .loc 1 49 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r68,[%value_in]; } .loc 1 50 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r71,[%value_in]; } .loc 1 107 9 fma.rn.f32 %r22,%r71,0f00000000,%r68; .loc 1 108 5 neg.f32 %r72,%r71; fma.rn.f32 %r47,%r22,0f00000000,%r72; fma.rn.f32 %r48,%r71,0f00000000,%r22; setp.num.f32 %r73,%r47,%r48; @ %r73 bra $L2; mov.f32 %r78,0f3f800000; mov.f32 %r77,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r22; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r71; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r77; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r78; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r47,[%frame]; ld.f32 %r48,[%frame+4]; $L2: .loc 1 112 33 add.f32 %r79,%r68,%r68; .loc 1 112 37 mul.f32 %r34,%r79,%r71; .loc 1 112 10 sub.f32 %r80,%r68,%r71; .loc 1 112 20 add.f32 %r81,%r68,%r71; .loc 1 112 25 mul.f32 %r82,%r34,0f00000000; fma.rn.f32 %r27,%r80,%r81,%r82; .loc 1 114 27 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r85,[%value_in]; } .loc 1 114 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r88,[%value_in]; } .loc 1 114 25 neg.f32 %r89,%r85; .loc 1 114 12 mov.f32 %r91,0f3f800000; sub.f32 %r90,%r91,%r88; .loc 1 114 25 fma.rn.f32 %r30,%r85,0f80000000,%r90; .loc 1 115 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r89; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r40,[%frame]; ld.f32 %r41,[%frame+4]; .loc 1 117 5 add.f32 %r101,%r40,%r47; add.f32 %r102,%r41,%r48; .loc 1 118 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r101; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r102; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r44,[%frame]; ld.f32 %r45,[%frame+4]; .loc 1 120 4 fma.rn.f32 %r59,%r44,0f80000000,%r45; neg.f32 %r106,%r44; fma.rn.f32 %r46,%r45,0f80000000,%r106; setp.num.f32 %r107,%r46,%r59; @ %r107 bra $L3; mov.f32 %r112,0fbf800000; mov.f32 %r111,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r44; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r45; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r111; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r112; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r59,[%frame]; ld.f32 %r46,[%frame+4]; $L3: .loc 1 121 9 st.f32 [%r63],%r59; st.f32 [%r63+4],%r46; .loc 1 122 1 ret; } lib_a-casinh.o/ 0 0 0 644 2815 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinh .visible .func casinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/casinh.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: casin .extern .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: casinh .visible .func casinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r62; .reg .f64 %r63; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 95 17 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call casin,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 95 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r57,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r57; setp.num.f64 %r58,%r26,%r37; @ %r58 bra $L3; mov.f64 %r63,0dbff0000000000000; mov.f64 %r62,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r62; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r63; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 96 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 97 1 ret; } lib_a-casinhf.o/0 0 0 644 2758 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinhf .visible .func casinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/casinhf.c" // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: casinf .extern .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: casinhf .visible .func casinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[8]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r37; .reg .u64 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r57; .reg .pred %r58; .reg .f32 %r62; .reg .f32 %r63; mov.u64 %r40,%ar0; mov.f32 %r41,%ar1; mov.f32 %r42,%ar2; .loc 1 42 18 neg.f32 %r43,%r42; fma.rn.f32 %r29,%r41,0f00000000,%r43; fma.rn.f32 %r30,%r42,0f00000000,%r41; setp.num.f32 %r44,%r29,%r30; @ %r44 bra $L2; mov.f32 %r49,0f3f800000; mov.f32 %r48,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r42; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r48; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r49; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r29,[%frame]; ld.f32 %r30,[%frame+4]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r30; call casinf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 fma.rn.f32 %r37,%r24,0f80000000,%r25; neg.f32 %r57,%r24; fma.rn.f32 %r26,%r25,0f80000000,%r57; setp.num.f32 %r58,%r26,%r37; @ %r58 bra $L3; mov.f32 %r63,0fbf800000; mov.f32 %r62,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r25; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r62; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r63; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r37,[%frame]; ld.f32 %r26,[%frame+4]; $L3: .loc 1 43 9 st.f32 [%r40],%r37; st.f32 [%r40+4],%r26; .loc 1 44 1 ret; } lib_a-casinhl.o/0 0 0 644 2865 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinhl .visible .func casinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/casinhl.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: casinl .extern .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: casinhl .visible .func casinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .f64 %r58; .reg .pred %r59; .reg .f64 %r63; .reg .f64 %r64; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 39 18 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: add.u64 %r50,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call casinl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame+16]; ld.f64 %r25,[%frame+24]; .loc 1 39 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r58,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r58; setp.num.f64 %r59,%r26,%r37; @ %r59 bra $L3; mov.f64 %r64,0dbff0000000000000; mov.f64 %r63,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r63; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r64; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 40 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 41 1 ret; } lib_a-casinl.o/ 0 0 0 644 5273 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinl .visible .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/casinl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: csqrtl .extern .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: clogl .extern .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: casinl .visible .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r22; .reg .f64 %r27; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r59; .reg .u64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r72; .reg .pred %r73; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r85; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .u64 %r92; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r108; .reg .pred %r109; .reg .f64 %r113; .reg .f64 %r114; mov.u64 %r63,%ar0; mov.f64 %r64,%ar1; mov.f64 %r65,%ar2; .loc 1 46 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r68,[%value_in]; } .loc 1 47 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 104 9 fma.rn.f64 %r22,%r71,0d0000000000000000,%r68; .loc 1 105 5 neg.f64 %r72,%r71; fma.rn.f64 %r47,%r22,0d0000000000000000,%r72; fma.rn.f64 %r48,%r71,0d0000000000000000,%r22; setp.num.f64 %r73,%r47,%r48; @ %r73 bra $L2; mov.f64 %r78,0d3ff0000000000000; mov.f64 %r77,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r22; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r71; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r77; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r78; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r47,[%frame]; ld.f64 %r48,[%frame+8]; $L2: .loc 1 109 33 add.f64 %r79,%r68,%r68; .loc 1 109 37 mul.f64 %r34,%r79,%r71; .loc 1 109 10 sub.f64 %r80,%r68,%r71; .loc 1 109 20 add.f64 %r81,%r68,%r71; .loc 1 109 25 mul.f64 %r82,%r34,0d0000000000000000; fma.rn.f64 %r27,%r80,%r81,%r82; .loc 1 111 27 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 111 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 111 25 neg.f64 %r89,%r85; .loc 1 111 12 mov.f64 %r91,0d3ff0000000000000; sub.f64 %r90,%r91,%r88; .loc 1 111 25 fma.rn.f64 %r30,%r85,0d8000000000000000,%r90; .loc 1 112 7 add.u64 %r92,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r89; call csqrtl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r40,[%frame+16]; ld.f64 %r41,[%frame+24]; .loc 1 114 5 add.f64 %r102,%r40,%r47; add.f64 %r103,%r41,%r48; .loc 1 115 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r102; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r103; call clogl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r44,[%frame+16]; ld.f64 %r45,[%frame+24]; .loc 1 117 4 fma.rn.f64 %r59,%r44,0d8000000000000000,%r45; neg.f64 %r108,%r44; fma.rn.f64 %r46,%r45,0d8000000000000000,%r108; setp.num.f64 %r109,%r46,%r59; @ %r109 bra $L3; mov.f64 %r114,0dbff0000000000000; mov.f64 %r113,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r45; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r113; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r114; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r59,[%frame]; ld.f64 %r46,[%frame+8]; $L3: .loc 1 118 9 st.f64 [%r63],%r59; st.f64 [%r63+8],%r46; .loc 1 119 1 ret; } lib_a-catan.o/ 0 0 0 644 3759 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catan .visible .func catan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/catan.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _redupi .extern .func (.param .f64 %value_out) _redupi (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: catan .visible .func catan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r40; .reg .u64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r46; .reg .f64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .pred %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; mov.u64 %r41,%ar0; mov.f64 %r42,%ar1; mov.f64 %r43,%ar2; .loc 1 100 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } .loc 1 101 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r49,[%value_in]; } .loc 1 103 5 setp.neu.f64 %r50,%r46,0d0000000000000000; @ %r50 bra $L2; .loc 1 103 17 setp.gt.f64 %r51,%r49,0d3ff0000000000000; @ %r51 bra $L3; $L2: .loc 1 106 5 mul.f64 %r32,%r46,%r46; .loc 1 107 4 neg.f64 %r52,%r49; .loc 1 107 10 mov.f64 %r54,0d3ff0000000000000; sub.f64 %r53,%r54,%r32; .loc 1 107 4 fma.rn.f64 %r33,%r52,%r49,%r53; .loc 1 108 5 setp.eq.f64 %r55,%r33,0d0000000000000000; @ %r55 bra $L3; .loc 1 111 12 add.f64 %r58,%r46,%r46; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } .loc 1 111 4 mul.f64 %r61,%r59,0d3fe0000000000000; .loc 1 112 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),_redupi,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 114 4 sub.f64 %r35,%r49,%r54; .loc 1 115 4 fma.rn.f64 %r36,%r35,%r35,%r32; .loc 1 116 5 setp.eq.f64 %r64,%r36,0d0000000000000000; @ %r64 bra $L3; .loc 1 119 4 add.f64 %r37,%r49,0d3ff0000000000000; .loc 1 120 10 fma.rn.f64 %r26,%r37,%r37,%r32; .loc 1 120 4 div.rn.f64 %r66,%r26,%r36; .loc 1 121 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),log,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 121 16 mul.f64 %r39,%r67,0d3fd0000000000000; .loc 1 121 4 fma.rn.f64 %r28,%r39,0d0000000000000000,%r62; add.f64 %r40,%r39,0d0000000000000000; .loc 1 122 9 bra $L4; $L3: .loc 1 128 15 mov.f64 %r68,0d7ff0000000000000; fma.rn.f64 %r28,%r68,0d0000000000000000,%r68; .loc 1 129 9 mov.f64 %r40,%r68; $L4: .loc 1 122 9 st.f64 [%r41],%r28; st.f64 [%r41+8],%r40; .loc 1 130 1 ret; } lib_a-catanf.o/ 0 0 0 644 3657 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanf .visible .func catanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/catanf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _redupif .extern .func (.param .f32 %value_out) _redupif (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: catanf .visible .func catanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r26; .reg .f32 %r28; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r39; .reg .f32 %r40; .reg .u64 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r46; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .pred %r55; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; mov.u64 %r41,%ar0; mov.f32 %r42,%ar1; mov.f32 %r43,%ar2; .loc 1 49 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r43; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } .loc 1 50 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r43; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r49,[%value_in]; } .loc 1 52 5 setp.neu.f32 %r50,%r46,0f00000000; @ %r50 bra $L2; .loc 1 52 18 setp.gt.f32 %r51,%r49,0f3f800000; @ %r51 bra $L3; $L2: .loc 1 55 5 mul.f32 %r32,%r46,%r46; .loc 1 56 4 neg.f32 %r52,%r49; .loc 1 56 11 mov.f32 %r54,0f3f800000; sub.f32 %r53,%r54,%r32; .loc 1 56 4 fma.rn.f32 %r33,%r52,%r49,%r53; .loc 1 57 5 setp.eq.f32 %r55,%r33,0f00000000; @ %r55 bra $L3; .loc 1 60 13 add.f32 %r58,%r46,%r46; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } .loc 1 60 4 mul.f32 %r61,%r59,0f3f000000; .loc 1 61 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),_redupif,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 63 4 sub.f32 %r35,%r49,%r54; .loc 1 64 4 fma.rn.f32 %r36,%r35,%r35,%r32; .loc 1 65 5 setp.eq.f32 %r64,%r36,0f00000000; @ %r64 bra $L3; .loc 1 68 4 add.f32 %r37,%r49,0f3f800000; .loc 1 69 10 fma.rn.f32 %r26,%r37,%r37,%r32; .loc 1 69 4 div.rn.f32 %r66,%r26,%r36; .loc 1 70 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r66; call (%value_in),logf,(%out_arg1); ld.param.f32 %r67,[%value_in]; } .loc 1 70 17 mul.f32 %r39,%r67,0f3e800000; .loc 1 70 4 fma.rn.f32 %r28,%r39,0f00000000,%r62; add.f32 %r40,%r39,0f00000000; .loc 1 71 9 bra $L4; $L3: .loc 1 77 16 mov.f32 %r68,0f7f800000; fma.rn.f32 %r28,%r68,0f00000000,%r68; .loc 1 78 9 mov.f32 %r40,%r68; $L4: .loc 1 71 9 st.f32 [%r41],%r28; st.f32 [%r41+4],%r40; .loc 1 79 1 ret; } lib_a-catanh.o/ 0 0 0 644 2815 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanh .visible .func catanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/catanh.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: catan .extern .func catan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: catanh .visible .func catanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r62; .reg .f64 %r63; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 88 17 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call catan,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 88 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r57,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r57; setp.num.f64 %r58,%r26,%r37; @ %r58 bra $L3; mov.f64 %r63,0dbff0000000000000; mov.f64 %r62,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r62; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r63; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 89 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 90 1 ret; } lib_a-catanhf.o/0 0 0 644 2758 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanhf .visible .func catanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/catanhf.c" // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: catanf .extern .func catanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: catanhf .visible .func catanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[8]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r37; .reg .u64 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r57; .reg .pred %r58; .reg .f32 %r62; .reg .f32 %r63; mov.u64 %r40,%ar0; mov.f32 %r41,%ar1; mov.f32 %r42,%ar2; .loc 1 42 18 neg.f32 %r43,%r42; fma.rn.f32 %r29,%r41,0f00000000,%r43; fma.rn.f32 %r30,%r42,0f00000000,%r41; setp.num.f32 %r44,%r29,%r30; @ %r44 bra $L2; mov.f32 %r49,0f3f800000; mov.f32 %r48,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r42; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r48; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r49; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r29,[%frame]; ld.f32 %r30,[%frame+4]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r30; call catanf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 fma.rn.f32 %r37,%r24,0f80000000,%r25; neg.f32 %r57,%r24; fma.rn.f32 %r26,%r25,0f80000000,%r57; setp.num.f32 %r58,%r26,%r37; @ %r58 bra $L3; mov.f32 %r63,0fbf800000; mov.f32 %r62,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r25; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r62; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r63; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r37,[%frame]; ld.f32 %r26,[%frame+4]; $L3: .loc 1 43 9 st.f32 [%r40],%r37; st.f32 [%r40+4],%r26; .loc 1 44 1 ret; } lib_a-catanhl.o/0 0 0 644 2865 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanhl .visible .func catanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/catanhl.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: catanl .extern .func catanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: catanhl .visible .func catanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .f64 %r58; .reg .pred %r59; .reg .f64 %r63; .reg .f64 %r64; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 39 18 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: add.u64 %r50,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call catanl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame+16]; ld.f64 %r25,[%frame+24]; .loc 1 39 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r58,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r58; setp.num.f64 %r59,%r26,%r37; @ %r59 bra $L3; mov.f64 %r64,0dbff0000000000000; mov.f64 %r63,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r63; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r64; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 40 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 41 1 ret; } lib_a-catanl.o/ 0 0 0 644 3753 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanl .visible .func catanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/catanl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2l .extern .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _redupil .extern .func (.param .f64 %value_out) _redupil (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logl .extern .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: catanl .visible .func catanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r40; .reg .u64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r46; .reg .f64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .pred %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; mov.u64 %r41,%ar0; mov.f64 %r42,%ar1; mov.f64 %r43,%ar2; .loc 1 46 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } .loc 1 47 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r49,[%value_in]; } .loc 1 49 5 setp.neu.f64 %r50,%r46,0d0000000000000000; @ %r50 bra $L2; .loc 1 49 18 setp.gt.f64 %r51,%r49,0d3ff0000000000000; @ %r51 bra $L3; $L2: .loc 1 52 5 mul.f64 %r32,%r46,%r46; .loc 1 53 4 neg.f64 %r52,%r49; .loc 1 53 11 mov.f64 %r54,0d3ff0000000000000; sub.f64 %r53,%r54,%r32; .loc 1 53 4 fma.rn.f64 %r33,%r52,%r49,%r53; .loc 1 54 5 setp.eq.f64 %r55,%r33,0d0000000000000000; @ %r55 bra $L3; .loc 1 57 13 add.f64 %r58,%r46,%r46; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),atan2l,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } .loc 1 57 4 mul.f64 %r61,%r59,0d3fe0000000000000; .loc 1 58 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),_redupil,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 60 4 sub.f64 %r35,%r49,%r54; .loc 1 61 4 fma.rn.f64 %r36,%r35,%r35,%r32; .loc 1 62 5 setp.eq.f64 %r64,%r36,0d0000000000000000; @ %r64 bra $L3; .loc 1 65 4 add.f64 %r37,%r49,0d3ff0000000000000; .loc 1 66 10 fma.rn.f64 %r26,%r37,%r37,%r32; .loc 1 66 4 div.rn.f64 %r66,%r26,%r36; .loc 1 67 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),logl,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 67 17 mul.f64 %r39,%r67,0d3fd0000000000000; .loc 1 67 4 fma.rn.f64 %r28,%r39,0d0000000000000000,%r62; add.f64 %r40,%r39,0d0000000000000000; .loc 1 68 9 bra $L4; $L3: .loc 1 74 16 mov.f64 %r68,0d7ff0000000000000; fma.rn.f64 %r28,%r68,0d0000000000000000,%r68; .loc 1 75 9 mov.f64 %r40,%r68; $L4: .loc 1 68 9 st.f64 [%r41],%r28; st.f64 [%r41+8],%r40; .loc 1 76 1 ret; } lib_a-cbrtl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cbrtl .visible .func (.param .f64 %value_out) cbrtl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/cbrtl.c" // BEGIN GLOBAL FUNCTION DECL: cbrt .extern .func (.param .f64 %value_out) cbrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cbrtl .visible .func (.param .f64 %value_out) cbrtl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),cbrt,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-ccos.o/ 0 0 0 644 2953 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccos .visible .func ccos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ccos.c" // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchsh .extern .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccos .visible .func ccos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r30; .reg .f64 %r32; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .u64 %r43; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 78 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } add.u64 %r43,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchsh,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 79 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),sin,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 79 42 ld.f64 %r49,[%frame]; mul.f64 %r32,%r48,%r49; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r52,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),cos,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 79 25 mul.f64 %r56,%r32,0d8000000000000000; ld.f64 %r57,[%frame+8]; fma.rn.f64 %r30,%r54,%r57,%r56; .loc 1 80 9 st.f64 [%r34],%r30; .loc 1 79 25 neg.f64 %r58,%r32; .loc 1 80 9 st.f64 [%r34+8],%r58; .loc 1 81 1 ret; } lib_a-ccosf.o/ 0 0 0 644 2966 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccosf .visible .func ccosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ccosf.c" // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshf .extern .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccosf .visible .func ccosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r30; .reg .f32 %r32; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .u64 %r43; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r52; .reg .f32 %r54; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 45 2 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } add.u64 %r43,%frame,4; { .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshf,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 46 30 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } .loc 1 46 46 ld.f32 %r49,[%frame]; mul.f32 %r32,%r48,%r49; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r52,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r52; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r54,[%value_in]; } .loc 1 46 27 mul.f32 %r56,%r32,0f80000000; ld.f32 %r57,[%frame+4]; fma.rn.f32 %r30,%r54,%r57,%r56; .loc 1 47 9 st.f32 [%r34],%r30; .loc 1 46 27 neg.f32 %r58,%r32; .loc 1 47 9 st.f32 [%r34+4],%r58; .loc 1 48 1 ret; } lib_a-ccosh.o/ 0 0 0 644 2699 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccosh .visible .func ccosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ccosh.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccosh .visible .func ccosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 79 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 79 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sin,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 79 34 mul.f64 %r30,%r41,%r43; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 79 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cos,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 79 23 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 80 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 81 1 ret; } lib_a-ccoshf.o/ 0 0 0 644 2714 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccoshf .visible .func ccoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ccoshf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccoshf .visible .func ccoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r27; .reg .f32 %r30; .reg .u64 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r47; .reg .f32 %r48; mov.u64 %r31,%ar0; mov.f32 %r32,%ar1; mov.f32 %r33,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r36,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } .loc 1 46 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r41,[%value_in]; } .loc 1 46 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r43,[%value_in]; } .loc 1 46 37 mul.f32 %r30,%r41,%r43; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 46 17 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 46 25 mul.f32 %r48,%r30,0f00000000; fma.rn.f32 %r27,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r27; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-ccoshl.o/ 0 0 0 644 2722 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccoshl .visible .func ccoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ccoshl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccoshl .visible .func ccoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 43 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 43 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 43 37 mul.f64 %r30,%r41,%r43; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 43 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 43 25 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 44 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 45 1 ret; } lib_a-ccosl.o/ 0 0 0 644 2974 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccosl .visible .func ccosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ccosl.c" // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshl .extern .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccosl .visible .func ccosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r30; .reg .f64 %r32; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .u64 %r43; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 42 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } add.u64 %r43,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshl,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 43 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 43 46 ld.f64 %r49,[%frame]; mul.f64 %r32,%r48,%r49; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r52,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 43 27 mul.f64 %r56,%r32,0d8000000000000000; ld.f64 %r57,[%frame+8]; fma.rn.f64 %r30,%r54,%r57,%r56; .loc 1 44 9 st.f64 [%r34],%r30; .loc 1 43 27 neg.f64 %r58,%r32; .loc 1 44 9 st.f64 [%r34+8],%r58; .loc 1 45 1 ret; } lib_a-ceill.o/ 0 0 0 644 535 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ceill .visible .func (.param .f64 %value_out) ceill (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/ceill.c" // BEGIN GLOBAL FUNCTION DEF: ceill .visible .func (.param .f64 %value_out) ceill (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rpi.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } /0 0 0 0 644 7265 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _cchsh .visible .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cephes_subr.c" // BEGIN GLOBAL FUNCTION DECL: _redupi .visible .func (.param .f64 %value_out) _redupi (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctans .visible .func (.param .f64 %value_out) _ctans (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _cchsh .visible .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; mov.f64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 46 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r34,[%value_in]; } .loc 1 46 5 setp.le.f64 %r35,%r34,0d3fe0000000000000; @ ! %r35 bra $L6; .loc 1 47 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r37,[%value_in]; } .loc 1 47 6 st.f64 [%r31],%r37; .loc 1 48 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r39,[%value_in]; } .loc 1 48 6 st.f64 [%r32],%r39; bra $L1; $L6: .loc 1 50 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),exp,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 51 6 mov.f64 %r42,0d3fe0000000000000; div.rn.f64 %r28,%r42,%r41; .loc 1 53 10 neg.f64 %r43,%r28; fma.rn.f64 %r25,%r41,0d3fe0000000000000,%r43; .loc 1 53 6 st.f64 [%r32],%r25; .loc 1 54 10 fma.rn.f64 %r26,%r41,0d3fe0000000000000,%r28; .loc 1 54 6 st.f64 [%r31],%r26; $L1: .loc 1 56 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _redupi .visible .func (.param .f64 %value_out) _redupi (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r32; .reg .pred %r33; .reg .f64 %r34; mov.f64 %r32,%ar0; .loc 1 72 4 div.rn.f64 %r25,%r32,0d400921fb54442d18; .loc 1 73 5 setp.ge.f64 %r33,%r25,0d0000000000000000; @ ! %r33 bra $L12; .loc 1 74 5 add.f64 %r24,%r25,0d3fe0000000000000; bra $L10; $L12: .loc 1 76 5 mov.f64 %r34,0d3fe0000000000000; sub.f64 %r24,%r25,%r34; $L10: .loc 1 78 4 cvt.rzi.s64.f64 %r26,%r24; .loc 1 79 4 cvt.rn.f64.s64 %r27,%r26; .loc 1 80 10 fma.rn.f64 %r22,%r27,0dc00921fb54000000,%r32; .loc 1 80 21 fma.rn.f64 %r23,%r27,0dbe210b4610000000,%r22; .loc 1 80 4 fma.rn.f64 %value,%r27,0dbc6a62633145c06e,%r23; .loc 1 82 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ctans .visible .func (.param .f64 %value_out) _ctans (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .pred %r74; .reg .f64 %r75; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .pred %r82; mov.f64 %r60,%ar0; mov.f64 %r61,%ar1; .loc 1 92 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 92 6 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 93 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 93 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 72 4 div.rn.f64 %r49,%r67,0d400921fb54442d18; .loc 1 73 5 setp.ge.f64 %r74,%r49,0d0000000000000000; @ ! %r74 bra $L20; .loc 1 74 5 add.f64 %r50,%r49,0d3fe0000000000000; bra $L16; $L20: .loc 1 76 5 mov.f64 %r75,0d3fe0000000000000; sub.f64 %r50,%r49,%r75; $L16: .loc 1 78 4 cvt.rzi.s64.f64 %r51,%r50; .loc 1 79 4 cvt.rn.f64.s64 %r52,%r51; .loc 1 80 10 fma.rn.f64 %r53,%r52,0dc00921fb54000000,%r67; .loc 1 80 21 fma.rn.f64 %r54,%r52,0dbe210b4610000000,%r53; .loc 1 80 4 fma.rn.f64 %r55,%r52,0dbc6a62633145c06e,%r54; .loc 1 97 4 mul.f64 %r34,%r55,%r55; .loc 1 98 4 mul.f64 %r35,%r73,%r73; .loc 1 103 4 mov.f64 %r59,0d0000000000000000; .loc 1 102 5 mov.f64 %r31,%r59; .loc 1 100 5 mov.f64 %r30,0d3ff0000000000000; .loc 1 99 5 mov.f64 %r29,%r30; .loc 1 101 4 mov.f64 %r28,%r30; $L17: .loc 1 105 6 add.f64 %r36,%r31,0d3ff0000000000000; .loc 1 106 5 mul.f64 %r37,%r28,%r36; .loc 1 107 6 add.f64 %r38,%r36,0d3ff0000000000000; .loc 1 108 5 mul.f64 %r39,%r37,%r38; .loc 1 109 6 mul.f64 %r40,%r29,%r34; .loc 1 110 6 mul.f64 %r41,%r30,%r35; .loc 1 111 5 add.f64 %r42,%r40,%r41; .loc 1 112 5 div.rn.f64 %r78,%r42,%r39; .loc 1 113 5 add.f64 %r44,%r78,%r59; .loc 1 115 6 add.f64 %r45,%r38,0d3ff0000000000000; .loc 1 116 5 mul.f64 %r46,%r39,%r45; .loc 1 117 6 add.f64 %r31,%r45,0d3ff0000000000000; .loc 1 118 5 mul.f64 %r28,%r46,%r31; .loc 1 119 6 mul.f64 %r29,%r34,%r40; .loc 1 120 6 mul.f64 %r30,%r35,%r41; .loc 1 121 5 sub.f64 %r47,%r30,%r29; .loc 1 122 5 div.rn.f64 %r48,%r47,%r28; .loc 1 123 5 add.f64 %r59,%r44,%r48; .loc 1 124 11 div.rn.f64 %r80,%r48,%r59; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 124 21 setp.gt.f64 %r82,%r81,0d3c9fb49140a1644f; @ %r82 bra $L17; .loc 1 126 1 mov.f64 %value,%r59; st.param.f64 [%value_out],%value; ret; } /21 0 0 0 644 7485 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _cchshf .visible .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cephes_subrf.c" // BEGIN GLOBAL FUNCTION DECL: _redupif .visible .func (.param .f32 %value_out) _redupif (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansf .visible .func (.param .f32 %value_out) _ctansf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expf .extern .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _cchshf .visible .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .f32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .f32 %r34; .reg .pred %r35; .reg .f32 %r37; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; mov.f32 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r34,[%value_in]; } .loc 1 46 5 setp.le.f32 %r35,%r34,0f3f000000; @ ! %r35 bra $L6; .loc 1 47 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } .loc 1 47 6 st.f32 [%r31],%r37; .loc 1 48 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r39,[%value_in]; } .loc 1 48 6 st.f32 [%r32],%r39; bra $L1; $L6: .loc 1 50 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),expf,(%out_arg1); ld.param.f32 %r41,[%value_in]; } .loc 1 51 6 mov.f32 %r42,0f3f000000; div.rn.f32 %r28,%r42,%r41; .loc 1 53 10 neg.f32 %r43,%r28; fma.rn.f32 %r25,%r41,0f3f000000,%r43; .loc 1 53 6 st.f32 [%r32],%r25; .loc 1 54 10 fma.rn.f32 %r26,%r41,0f3f000000,%r28; .loc 1 54 6 st.f32 [%r31],%r26; $L1: .loc 1 56 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _redupif .visible .func (.param .f32 %value_out) _redupif (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r35; .reg .pred %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f64 %r40; mov.f32 %r35,%ar0; .loc 1 72 4 div.rn.f32 %r28,%r35,0f40490fdb; .loc 1 73 5 setp.ge.f32 %r36,%r28,0f00000000; @ ! %r36 bra $L12; .loc 1 74 5 add.f32 %r27,%r28,0f3f000000; bra $L10; $L12: .loc 1 76 5 mov.f32 %r37,0f3f000000; sub.f32 %r27,%r28,%r37; $L10: .loc 1 78 4 cvt.rzi.s64.f32 %r29,%r27; .loc 1 79 4 cvt.rn.f32.s64 %r38,%r29; .loc 1 80 14 cvt.f64.f32 %r23,%r38; .loc 1 80 10 cvt.f64.f32 %r40,%r35; fma.rn.f64 %r24,%r23,0dc009200000000000,%r40; .loc 1 80 21 fma.rn.f64 %r25,%r23,0dbf4fb40000000000,%r24; .loc 1 80 32 fma.rn.f64 %r26,%r23,0dbe84442d18469899,%r25; .loc 1 80 4 cvt.rn.f32.f64 %value,%r26; .loc 1 82 1 st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ctansf .visible .func (.param .f32 %value_out) _ctansf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .u64 %r52; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f32 %r59; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r68; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r74; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f64 %r82; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .f64 %r89; .reg .pred %r90; mov.f32 %r64,%ar0; mov.f32 %r65,%ar1; .loc 1 91 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r68,[%value_in]; } .loc 1 91 6 add.f32 %r70,%r68,%r68; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } .loc 1 92 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r74,[%value_in]; } .loc 1 92 6 add.f32 %r76,%r74,%r74; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r76; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r77,[%value_in]; } .loc 1 72 4 div.rn.f32 %r50,%r71,0f40490fdb; .loc 1 73 5 setp.ge.f32 %r78,%r50,0f00000000; @ ! %r78 bra $L20; .loc 1 74 5 add.f32 %r51,%r50,0f3f000000; bra $L16; $L20: .loc 1 76 5 mov.f32 %r79,0f3f000000; sub.f32 %r51,%r50,%r79; $L16: .loc 1 78 4 cvt.rzi.s64.f32 %r52,%r51; .loc 1 79 4 cvt.rn.f32.s64 %r80,%r52; .loc 1 80 14 cvt.f64.f32 %r55,%r80; .loc 1 80 10 cvt.f64.f32 %r82,%r71; fma.rn.f64 %r56,%r55,0dc009200000000000,%r82; .loc 1 80 21 fma.rn.f64 %r57,%r55,0dbf4fb40000000000,%r56; .loc 1 80 32 fma.rn.f64 %r58,%r55,0dbe84442d18469899,%r57; .loc 1 80 4 cvt.rn.f32.f64 %r59,%r58; .loc 1 96 4 mul.f32 %r35,%r59,%r59; .loc 1 97 4 mul.f32 %r36,%r77,%r77; .loc 1 102 4 mov.f32 %r63,0f00000000; .loc 1 101 5 mov.f32 %r32,%r63; .loc 1 99 5 mov.f32 %r31,0f3f800000; .loc 1 98 5 mov.f32 %r30,%r31; .loc 1 100 4 mov.f32 %r29,%r31; $L17: .loc 1 104 6 add.f32 %r37,%r32,0f3f800000; .loc 1 105 5 mul.f32 %r38,%r29,%r37; .loc 1 106 6 add.f32 %r39,%r37,0f3f800000; .loc 1 107 5 mul.f32 %r40,%r38,%r39; .loc 1 108 6 mul.f32 %r41,%r30,%r35; .loc 1 109 6 mul.f32 %r42,%r31,%r36; .loc 1 110 5 add.f32 %r43,%r41,%r42; .loc 1 111 5 div.rn.f32 %r85,%r43,%r40; .loc 1 112 5 add.f32 %r45,%r85,%r63; .loc 1 114 6 add.f32 %r46,%r39,0f3f800000; .loc 1 115 5 mul.f32 %r47,%r40,%r46; .loc 1 116 6 add.f32 %r32,%r46,0f3f800000; .loc 1 117 5 mul.f32 %r29,%r47,%r32; .loc 1 118 6 mul.f32 %r30,%r35,%r41; .loc 1 119 6 mul.f32 %r31,%r36,%r42; .loc 1 120 5 sub.f32 %r48,%r31,%r30; .loc 1 121 5 div.rn.f32 %r49,%r48,%r29; .loc 1 122 5 add.f32 %r63,%r45,%r49; .loc 1 123 11 div.rn.f32 %r87,%r49,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } cvt.f64.f32 %r89,%r88; .loc 1 123 22 setp.gt.f64 %r90,%r89,0d3e601b2b29a4692b; @ %r90 bra $L17; .loc 1 125 1 mov.f32 %value,%r63; st.param.f32 [%value_out],%value; ret; } /43 0 0 0 644 7301 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _cchshl .visible .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cephes_subrl.c" // BEGIN GLOBAL FUNCTION DECL: _redupil .visible .func (.param .f64 %value_out) _redupil (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansl .visible .func (.param .f64 %value_out) _ctansl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsl .extern .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expl .extern .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _cchshl .visible .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; mov.f64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r34,[%value_in]; } .loc 1 43 5 setp.le.f64 %r35,%r34,0d3fe0000000000000; @ ! %r35 bra $L6; .loc 1 44 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r37,[%value_in]; } .loc 1 44 6 st.f64 [%r31],%r37; .loc 1 45 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r39,[%value_in]; } .loc 1 45 6 st.f64 [%r32],%r39; bra $L1; $L6: .loc 1 47 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),expl,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 48 6 mov.f64 %r42,0d3fe0000000000000; div.rn.f64 %r28,%r42,%r41; .loc 1 50 10 neg.f64 %r43,%r28; fma.rn.f64 %r25,%r41,0d3fe0000000000000,%r43; .loc 1 50 6 st.f64 [%r32],%r25; .loc 1 51 10 fma.rn.f64 %r26,%r41,0d3fe0000000000000,%r28; .loc 1 51 6 st.f64 [%r31],%r26; $L1: .loc 1 53 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _redupil .visible .func (.param .f64 %value_out) _redupil (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r32; .reg .pred %r33; .reg .f64 %r34; mov.f64 %r32,%ar0; .loc 1 74 4 div.rn.f64 %r25,%r32,0d400921fb54442d18; .loc 1 75 5 setp.ge.f64 %r33,%r25,0d0000000000000000; @ ! %r33 bra $L12; .loc 1 76 5 add.f64 %r24,%r25,0d3fe0000000000000; bra $L10; $L12: .loc 1 78 5 mov.f64 %r34,0d3fe0000000000000; sub.f64 %r24,%r25,%r34; $L10: .loc 1 80 4 cvt.rzi.s64.f64 %r26,%r24; .loc 1 81 4 cvt.rn.f64.s64 %r27,%r26; .loc 1 82 10 fma.rn.f64 %r22,%r27,0dc00921fb54442d18,%r32; .loc 1 82 21 fma.rn.f64 %r23,%r27,0dbc0898cc51701b84,%r22; .loc 1 82 4 fma.rn.f64 %value,%r27,0db7e48127044533e6,%r23; .loc 1 84 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ctansl .visible .func (.param .f64 %value_out) _ctansl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .pred %r74; .reg .f64 %r75; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .pred %r82; mov.f64 %r60,%ar0; mov.f64 %r61,%ar1; .loc 1 94 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 94 6 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 95 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 95 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 74 4 div.rn.f64 %r49,%r67,0d400921fb54442d18; .loc 1 75 5 setp.ge.f64 %r74,%r49,0d0000000000000000; @ ! %r74 bra $L20; .loc 1 76 5 add.f64 %r50,%r49,0d3fe0000000000000; bra $L16; $L20: .loc 1 78 5 mov.f64 %r75,0d3fe0000000000000; sub.f64 %r50,%r49,%r75; $L16: .loc 1 80 4 cvt.rzi.s64.f64 %r51,%r50; .loc 1 81 4 cvt.rn.f64.s64 %r52,%r51; .loc 1 82 10 fma.rn.f64 %r53,%r52,0dc00921fb54442d18,%r67; .loc 1 82 21 fma.rn.f64 %r54,%r52,0dbc0898cc51701b84,%r53; .loc 1 82 4 fma.rn.f64 %r55,%r52,0db7e48127044533e6,%r54; .loc 1 99 4 mul.f64 %r34,%r55,%r55; .loc 1 100 4 mul.f64 %r35,%r73,%r73; .loc 1 105 4 mov.f64 %r59,0d0000000000000000; .loc 1 104 5 mov.f64 %r31,%r59; .loc 1 102 5 mov.f64 %r30,0d3ff0000000000000; .loc 1 101 5 mov.f64 %r29,%r30; .loc 1 103 4 mov.f64 %r28,%r30; $L17: .loc 1 107 6 add.f64 %r36,%r31,0d3ff0000000000000; .loc 1 108 5 mul.f64 %r37,%r28,%r36; .loc 1 109 6 add.f64 %r38,%r36,0d3ff0000000000000; .loc 1 110 5 mul.f64 %r39,%r37,%r38; .loc 1 111 6 mul.f64 %r40,%r29,%r34; .loc 1 112 6 mul.f64 %r41,%r30,%r35; .loc 1 113 5 add.f64 %r42,%r40,%r41; .loc 1 114 5 div.rn.f64 %r78,%r42,%r39; .loc 1 115 5 add.f64 %r44,%r78,%r59; .loc 1 117 6 add.f64 %r45,%r38,0d3ff0000000000000; .loc 1 118 5 mul.f64 %r46,%r39,%r45; .loc 1 119 6 add.f64 %r31,%r45,0d3ff0000000000000; .loc 1 120 5 mul.f64 %r28,%r46,%r31; .loc 1 121 6 mul.f64 %r29,%r34,%r40; .loc 1 122 6 mul.f64 %r30,%r35,%r41; .loc 1 123 5 sub.f64 %r47,%r30,%r29; .loc 1 124 5 div.rn.f64 %r48,%r47,%r28; .loc 1 125 5 add.f64 %r59,%r44,%r48; .loc 1 126 11 div.rn.f64 %r80,%r48,%r59; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 126 22 setp.gt.f64 %r82,%r81,0d380df1e193d51e95; @ %r82 bra $L17; .loc 1 128 1 mov.f64 %value,%r59; st.param.f64 [%value_out],%value; ret; } lib_a-cexp.o/ 0 0 0 644 2412 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cexp .visible .func cexp (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cexp.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cexp .visible .func cexp (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r29; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),exp,(%out_arg1); ld.param.f64 %r40,[%value_in]; } .loc 1 80 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sin,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 80 21 mul.f64 %r29,%r42,%r40; .loc 1 80 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),cos,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 80 17 mul.f64 %r45,%r29,0d0000000000000000; fma.rn.f64 %r25,%r44,%r40,%r45; .loc 1 81 9 st.f64 [%r30],%r25; st.f64 [%r30+8],%r29; .loc 1 82 1 ret; } lib_a-cexpf.o/ 0 0 0 644 2424 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cexpf .visible .func cexpf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cexpf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expf .extern .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cexpf .visible .func cexpf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r25; .reg .f32 %r29; .reg .u64 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r40; .reg .f32 %r42; .reg .f32 %r44; .reg .f32 %r45; mov.u64 %r30,%ar0; mov.f32 %r31,%ar1; mov.f32 %r32,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r32; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r35,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r32; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r38,[%value_in]; } .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),expf,(%out_arg1); ld.param.f32 %r40,[%value_in]; } .loc 1 47 24 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r42,[%value_in]; } .loc 1 47 22 mul.f32 %r29,%r42,%r40; .loc 1 47 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 47 18 mul.f32 %r45,%r29,0f00000000; fma.rn.f32 %r25,%r44,%r40,%r45; .loc 1 48 9 st.f32 [%r30],%r25; st.f32 [%r30+4],%r29; .loc 1 49 1 ret; } lib_a-cexpl.o/ 0 0 0 644 2432 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cexpl .visible .func cexpl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cexpl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expl .extern .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cexpl .visible .func cexpl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r29; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),expl,(%out_arg1); ld.param.f64 %r40,[%value_in]; } .loc 1 44 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 44 22 mul.f64 %r29,%r42,%r40; .loc 1 44 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 44 18 mul.f64 %r45,%r29,0d0000000000000000; fma.rn.f64 %r25,%r44,%r40,%r45; .loc 1 45 9 st.f64 [%r30],%r25; st.f64 [%r30+8],%r29; .loc 1 46 1 ret; } lib_a-cimag.o/ 0 0 0 644 567 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cimag .visible .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cimag.c" // BEGIN GLOBAL FUNCTION DEF: cimag .visible .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar1; .loc 1 59 1 st.param.f64 [%value_out],%value; ret; } lib_a-cimagf.o/ 0 0 0 644 572 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cimagf .visible .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cimagf.c" // BEGIN GLOBAL FUNCTION DEF: cimagf .visible .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; mov.f32 %value,%ar1; .loc 1 20 1 st.param.f32 [%value_out],%value; ret; } lib_a-cimagl.o/ 0 0 0 644 572 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cimagl .visible .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/cimagl.c" // BEGIN GLOBAL FUNCTION DEF: cimagl .visible .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar1; .loc 1 16 1 st.param.f64 [%value_out],%value; ret; } lib_a-clog.o/ 0 0 0 644 2471 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clog .visible .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/clog.c" // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clog .visible .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r24; .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r44; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 86 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 87 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),log,(%out_arg1); ld.param.f64 %r35,[%value_in]; } .loc 1 88 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 89 8 fma.rn.f64 %r24,%r44,0d0000000000000000,%r35; .loc 1 90 9 st.f64 [%r28],%r24; st.f64 [%r28+8],%r44; .loc 1 91 1 ret; } lib_a-clog10.o/ 0 0 0 644 2553 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clog10 .visible .func clog10 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/clog10.c" // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: log10 .extern .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clog10 .visible .func clog10 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r28; .reg .u64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r45; mov.u64 %r29,%ar0; mov.f64 %r30,%ar1; mov.f64 %r31,%ar2; .loc 1 41 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r34,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),log10,(%out_arg1); ld.param.f64 %r36,[%value_in]; } .loc 1 43 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } .loc 1 43 5 mul.f64 %r28,%r45,0d3fdbcb7b1526e50e; .loc 1 44 8 fma.rn.f64 %r25,%r28,0d0000000000000000,%r36; .loc 1 45 9 st.f64 [%r29],%r25; st.f64 [%r29+8],%r28; .loc 1 46 1 ret; } lib_a-clog10f.o/0 0 0 644 2557 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clog10f .visible .func clog10f (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/clog10f.c" // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: log10f .extern .func (.param .f32 %value_out) log10f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clog10f .visible .func clog10f (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r25; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r42; .reg .f32 %r45; mov.u64 %r29,%ar0; mov.f32 %r30,%ar1; mov.f32 %r31,%ar2; .loc 1 10 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r34,[%value_in]; } .loc 1 11 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),log10f,(%out_arg1); ld.param.f32 %r36,[%value_in]; } .loc 1 12 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } .loc 1 12 5 mul.f32 %r28,%r45,0f3ede5bd9; .loc 1 13 8 fma.rn.f32 %r25,%r28,0f00000000,%r36; .loc 1 14 9 st.f32 [%r29],%r25; st.f32 [%r29+4],%r28; .loc 1 15 1 ret; } lib_a-clogf.o/ 0 0 0 644 2483 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clogf .visible .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/clogf.c" // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clogf .visible .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r24; .reg .u64 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r44; mov.u64 %r28,%ar0; mov.f32 %r29,%ar1; mov.f32 %r30,%ar2; .loc 1 44 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),logf,(%out_arg1); ld.param.f32 %r35,[%value_in]; } .loc 1 46 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r38,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r38; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } .loc 1 47 8 fma.rn.f32 %r24,%r44,0f00000000,%r35; .loc 1 48 9 st.f32 [%r28],%r24; st.f32 [%r28+4],%r44; .loc 1 49 1 ret; } lib_a-clogl.o/ 0 0 0 644 2491 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clogl .visible .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/clogl.c" // BEGIN GLOBAL FUNCTION DECL: cabsl .extern .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: logl .extern .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2l .extern .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clogl .visible .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r24; .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r44; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 41 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cabsl,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),logl,(%out_arg1); ld.param.f64 %r35,[%value_in]; } .loc 1 43 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; call (%value_in),atan2l,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 44 8 fma.rn.f64 %r24,%r44,0d0000000000000000,%r35; .loc 1 45 9 st.f64 [%r28],%r24; st.f64 [%r28+8],%r44; .loc 1 46 1 ret; } lib_a-conj.o/ 0 0 0 644 821 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: conj .visible .func conj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/conj.c" // BEGIN GLOBAL FUNCTION DEF: conj .visible .func conj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; mov.u64 %r26,%ar0; mov.f64 %r27,%ar1; mov.f64 %r28,%ar2; .loc 1 52 17 neg.f64 %r29,%r28; .loc 1 54 11 st.f64 [%r26],%r27; st.f64 [%r26+8],%r29; .loc 1 55 1 ret; } lib_a-conjf.o/ 0 0 0 644 826 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: conjf .visible .func conjf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/conjf.c" // BEGIN GLOBAL FUNCTION DEF: conjf .visible .func conjf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; mov.u64 %r26,%ar0; mov.f32 %r27,%ar1; mov.f32 %r28,%ar2; .loc 1 19 17 neg.f32 %r29,%r28; .loc 1 21 11 st.f32 [%r26],%r27; st.f32 [%r26+4],%r29; .loc 1 22 1 ret; } lib_a-conjl.o/ 0 0 0 644 826 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: conjl .visible .func conjl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/conjl.c" // BEGIN GLOBAL FUNCTION DEF: conjl .visible .func conjl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; mov.u64 %r26,%ar0; mov.f64 %r27,%ar1; mov.f64 %r28,%ar2; .loc 1 43 17 neg.f64 %r29,%r28; .loc 1 45 11 st.f64 [%r26],%r27; st.f64 [%r26+8],%r29; .loc 1 46 1 ret; } /65 0 0 0 644 679 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysignl .visible .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/copysignl.c" // BEGIN GLOBAL FUNCTION DEF: copysignl .visible .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 copysign.f64 %value,%r24,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-cosf.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-coshl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: coshl .visible .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/coshl.c" // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: coshl .visible .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-cosl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cosl .visible .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/cosl.c" // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cosl .visible .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),cos,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-cpow.o/ 0 0 0 644 4678 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: cpow .visible .func cpow (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); .file 1 "../../../../../newlib/libm/complex/cpow.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: carg .extern .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {0,0 }; // BEGIN GLOBAL FUNCTION DEF: cpow .visible .func cpow (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %ar3; ld.param.f64 %ar3,[%in_ar3]; .reg .f64 %ar4; ld.param.f64 %ar4,[%in_ar4]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r36; .reg .u64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r47; .reg .f64 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; mov.u64 %r37,%ar0; mov.f64 %r38,%ar1; mov.f64 %r39,%ar2; mov.f64 %r40,%ar3; mov.f64 %r41,%ar4; .loc 1 86 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 87 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r47,[%value_in]; } .loc 1 88 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 89 5 setp.neu.f64 %r51,%r50,0d0000000000000000; @ %r51 bra $L2; .loc 1 90 15 ld.const.f64 %r52,[$LC0]; st.f64 [%r37],%r52; ld.const.f64 %r53,[$LC0+8]; st.f64 [%r37+8],%r53; bra $L1; $L2: .loc 1 92 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),carg,(%out_arg1,%out_arg2); ld.param.f64 %r56,[%value_in]; } .loc 1 93 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r30,%r59; .loc 1 94 8 mul.f64 %r31,%r44,%r56; .loc 1 95 5 setp.eq.f64 %r60,%r47,0d0000000000000000; @ %r60 bra $L4; .loc 1 96 15 neg.f64 %r62,%r47; .loc 1 96 11 mul.f64 %r63,%r62,%r56; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),exp,(%out_arg1); ld.param.f64 %r64,[%value_in]; } .loc 1 96 5 mul.f64 %r30,%r30,%r64; .loc 1 97 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),log,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 97 9 fma.rn.f64 %r31,%r66,%r47,%r31; $L4: .loc 1 99 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),sin,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 99 26 mul.f64 %r36,%r68,%r30; .loc 1 99 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),cos,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 99 21 mul.f64 %r71,%r36,0d0000000000000000; fma.rn.f64 %r29,%r70,%r30,%r71; .loc 1 100 9 st.f64 [%r37],%r29; st.f64 [%r37+8],%r36; $L1: .loc 1 101 1 ret; } lib_a-cpowf.o/ 0 0 0 644 4684 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: cpowf .visible .func cpowf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); .file 1 "../../../../../newlib/libm/complex/cpowf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cargf .extern .func (.param .f32 %value_out) cargf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expf .extern .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[2] = {0,0 }; // BEGIN GLOBAL FUNCTION DEF: cpowf .visible .func cpowf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %ar3; ld.param.f32 %ar3,[%in_ar3]; .reg .f32 %ar4; ld.param.f32 %ar4,[%in_ar4]; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r36; .reg .u64 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r47; .reg .f32 %r50; .reg .pred %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r56; .reg .f32 %r59; .reg .pred %r60; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r68; .reg .f32 %r70; .reg .f32 %r71; mov.u64 %r37,%ar0; mov.f32 %r38,%ar1; mov.f32 %r39,%ar2; mov.f32 %r40,%ar3; mov.f32 %r41,%ar4; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r47,[%value_in]; } .loc 1 46 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } .loc 1 47 5 setp.neu.f32 %r51,%r50,0f00000000; @ %r51 bra $L2; .loc 1 48 16 ld.const.f32 %r52,[$LC0]; st.f32 [%r37],%r52; ld.const.f32 %r53,[$LC0+4]; st.f32 [%r37+4],%r53; bra $L1; $L2: .loc 1 50 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),cargf,(%out_arg1,%out_arg2); ld.param.f32 %r56,[%value_in]; } .loc 1 51 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r44; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } mov.f32 %r30,%r59; .loc 1 52 8 mul.f32 %r31,%r44,%r56; .loc 1 53 5 setp.eq.f32 %r60,%r47,0f00000000; @ %r60 bra $L4; .loc 1 54 16 neg.f32 %r62,%r47; .loc 1 54 11 mul.f32 %r63,%r62,%r56; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),expf,(%out_arg1); ld.param.f32 %r64,[%value_in]; } .loc 1 54 5 mul.f32 %r30,%r30,%r64; .loc 1 55 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),logf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } .loc 1 55 9 fma.rn.f32 %r31,%r66,%r47,%r31; $L4: .loc 1 57 29 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 57 27 mul.f32 %r36,%r68,%r30; .loc 1 57 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r70,[%value_in]; } .loc 1 57 22 mul.f32 %r71,%r36,0f00000000; fma.rn.f32 %r29,%r70,%r30,%r71; .loc 1 58 9 st.f32 [%r37],%r29; st.f32 [%r37+4],%r36; $L1: .loc 1 59 1 ret; } lib_a-cpowl.o/ 0 0 0 644 4708 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: cpowl .visible .func cpowl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); .file 1 "../../../../../newlib/libm/complex/cpowl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cabsl .extern .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cargl .extern .func (.param .f64 %value_out) cargl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: powl .extern .func (.param .f64 %value_out) powl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expl .extern .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logl .extern .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {0,0 }; // BEGIN GLOBAL FUNCTION DEF: cpowl .visible .func cpowl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %ar3; ld.param.f64 %ar3,[%in_ar3]; .reg .f64 %ar4; ld.param.f64 %ar4,[%in_ar4]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r36; .reg .u64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r47; .reg .f64 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; mov.u64 %r37,%ar0; mov.f64 %r38,%ar1; mov.f64 %r39,%ar2; mov.f64 %r40,%ar3; mov.f64 %r41,%ar4; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r47,[%value_in]; } .loc 1 43 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),cabsl,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 44 5 setp.neu.f64 %r51,%r50,0d0000000000000000; @ %r51 bra $L2; .loc 1 45 16 ld.const.f64 %r52,[$LC0]; st.f64 [%r37],%r52; ld.const.f64 %r53,[$LC0+8]; st.f64 [%r37+8],%r53; bra $L1; $L2: .loc 1 47 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),cargl,(%out_arg1,%out_arg2); ld.param.f64 %r56,[%value_in]; } .loc 1 48 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; call (%value_in),powl,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r30,%r59; .loc 1 49 8 mul.f64 %r31,%r44,%r56; .loc 1 50 5 setp.eq.f64 %r60,%r47,0d0000000000000000; @ %r60 bra $L4; .loc 1 51 16 neg.f64 %r62,%r47; .loc 1 51 11 mul.f64 %r63,%r62,%r56; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),expl,(%out_arg1); ld.param.f64 %r64,[%value_in]; } .loc 1 51 5 mul.f64 %r30,%r30,%r64; .loc 1 52 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),logl,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 52 9 fma.rn.f64 %r31,%r66,%r47,%r31; $L4: .loc 1 54 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 54 27 mul.f64 %r36,%r68,%r30; .loc 1 54 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 54 22 mul.f64 %r71,%r36,0d0000000000000000; fma.rn.f64 %r29,%r70,%r30,%r71; .loc 1 55 9 st.f64 [%r37],%r29; st.f64 [%r37+8],%r36; $L1: .loc 1 56 1 ret; } lib_a-cproj.o/ 0 0 0 644 2579 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cproj .visible .func cproj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cproj.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cproj .visible .func cproj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r45; .reg .f64 %r46; .reg .pred %r47; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 96 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } abs.f64 %r34,%r33; .loc 1 96 5 setp.leu.f64 %r35,%r34,0d7fefffffffffffff; @ %r35 bra $L2; $L4: .loc 1 100 16 mov.f64 %r36,0d7ff0000000000000; st.f64 [%frame],%r36; .loc 1 102 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } mov.f64 %r40,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 105 11 ld.f64 %r29,[%frame]; mov.f64 %r30,%r42; bra $L3; $L2: .loc 1 96 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } abs.f64 %r46,%r45; .loc 1 96 5 setp.leu.f64 %r47,%r46,0d7fefffffffffffff; @ ! %r47 bra $L4; $L3: .loc 1 105 11 st.f64 [%r28],%r29; st.f64 [%r28+8],%r30; .loc 1 106 1 ret; } lib_a-cprojf.o/ 0 0 0 644 2557 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cprojf .visible .func cprojf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cprojf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cprojf .visible .func cprojf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r34; .reg .pred %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r42; .reg .f32 %r45; .reg .f32 %r46; .reg .pred %r47; mov.u64 %r28,%ar0; mov.f32 %r29,%ar1; mov.f32 %r30,%ar2; .loc 1 58 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } abs.f32 %r34,%r33; .loc 1 58 5 setp.leu.f32 %r35,%r34,0f7f7fffff; @ %r35 bra $L2; $L4: .loc 1 62 16 mov.f32 %r36,0f7f800000; st.f32 [%frame],%r36; .loc 1 64 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } mov.f32 %r40,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } .loc 1 67 11 ld.f32 %r29,[%frame]; mov.f32 %r30,%r42; bra $L3; $L2: .loc 1 58 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } abs.f32 %r46,%r45; .loc 1 58 5 setp.leu.f32 %r47,%r46,0f7f7fffff; @ ! %r47 bra $L4; $L3: .loc 1 67 11 st.f32 [%r28],%r29; st.f32 [%r28+4],%r30; .loc 1 68 1 ret; } lib_a-cprojl.o/ 0 0 0 644 2589 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cprojl .visible .func cprojl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/cprojl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysignl .extern .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cprojl .visible .func cprojl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r45; .reg .f64 %r46; .reg .pred %r47; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 54 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } abs.f64 %r34,%r33; .loc 1 54 5 setp.leu.f64 %r35,%r34,0d7fefffffffffffff; @ %r35 bra $L2; $L4: .loc 1 58 16 mov.f64 %r36,0d7ff0000000000000; st.f64 [%frame],%r36; .loc 1 60 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } mov.f64 %r40,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 63 11 ld.f64 %r29,[%frame]; mov.f64 %r30,%r42; bra $L3; $L2: .loc 1 54 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } abs.f64 %r46,%r45; .loc 1 54 5 setp.leu.f64 %r47,%r46,0d7fefffffffffffff; @ ! %r47 bra $L4; $L3: .loc 1 63 11 st.f64 [%r28],%r29; st.f64 [%r28+8],%r30; .loc 1 64 1 ret; } lib_a-creal.o/ 0 0 0 644 567 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: creal .visible .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/creal.c" // BEGIN GLOBAL FUNCTION DEF: creal .visible .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar0; .loc 1 59 1 st.param.f64 [%value_out],%value; ret; } lib_a-crealf.o/ 0 0 0 644 572 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: crealf .visible .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/complex/crealf.c" // BEGIN GLOBAL FUNCTION DEF: crealf .visible .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; mov.f32 %value,%ar0; .loc 1 20 1 st.param.f32 [%value_out],%value; ret; } lib_a-creall.o/ 0 0 0 644 572 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: creall .visible .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/complex/creall.c" // BEGIN GLOBAL FUNCTION DEF: creall .visible .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar0; .loc 1 16 1 st.param.f64 [%value_out],%value; ret; } lib_a-csin.o/ 0 0 0 644 2893 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csin .visible .func csin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csin.c" // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchsh .extern .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csin .visible .func csin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r30; .reg .f64 %r31; .reg .u64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .u64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; mov.u64 %r32,%ar0; mov.f64 %r33,%ar1; mov.f64 %r34,%ar2; .loc 1 78 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r37,[%value_in]; } add.u64 %r41,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchsh,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 79 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),cos,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 79 42 ld.f64 %r47,[%frame]; mul.f64 %r31,%r46,%r47; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),sin,(%out_arg1); ld.param.f64 %r52,[%value_in]; } .loc 1 79 25 mul.f64 %r53,%r31,0d0000000000000000; ld.f64 %r54,[%frame+8]; fma.rn.f64 %r30,%r52,%r54,%r53; .loc 1 80 9 st.f64 [%r32],%r30; st.f64 [%r32+8],%r31; .loc 1 81 1 ret; } lib_a-csinf.o/ 0 0 0 644 2906 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinf .visible .func csinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csinf.c" // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshf .extern .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinf .visible .func csinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r30; .reg .f32 %r31; .reg .u64 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r37; .reg .u64 %r41; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r50; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; mov.u64 %r32,%ar0; mov.f32 %r33,%ar1; mov.f32 %r34,%ar2; .loc 1 45 2 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r37,[%value_in]; } add.u64 %r41,%frame,4; { .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshf,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 46 30 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r44; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 46 46 ld.f32 %r47,[%frame]; mul.f32 %r31,%r46,%r47; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r52,[%value_in]; } .loc 1 46 27 mul.f32 %r53,%r31,0f00000000; ld.f32 %r54,[%frame+4]; fma.rn.f32 %r30,%r52,%r54,%r53; .loc 1 47 9 st.f32 [%r32],%r30; st.f32 [%r32+4],%r31; .loc 1 48 1 ret; } lib_a-csinh.o/ 0 0 0 644 2699 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinh .visible .func csinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csinh.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinh .visible .func csinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 76 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 78 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 78 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sin,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 78 34 mul.f64 %r30,%r41,%r43; .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 78 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cos,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 78 23 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 79 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 80 1 ret; } lib_a-csinhf.o/ 0 0 0 644 2714 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinhf .visible .func csinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csinhf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinhf .visible .func csinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r27; .reg .f32 %r30; .reg .u64 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r47; .reg .f32 %r48; mov.u64 %r31,%ar0; mov.f32 %r32,%ar1; mov.f32 %r33,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r36,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } .loc 1 46 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r41,[%value_in]; } .loc 1 46 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r43,[%value_in]; } .loc 1 46 37 mul.f32 %r30,%r41,%r43; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 46 17 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 46 25 mul.f32 %r48,%r30,0f00000000; fma.rn.f32 %r27,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r27; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-csinhl.o/ 0 0 0 644 2722 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinhl .visible .func csinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csinhl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinhl .visible .func csinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 43 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 43 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 43 37 mul.f64 %r30,%r41,%r43; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 43 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 43 25 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 44 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 45 1 ret; } lib_a-csinl.o/ 0 0 0 644 2914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinl .visible .func csinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csinl.c" // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshl .extern .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinl .visible .func csinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r30; .reg .f64 %r31; .reg .u64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .u64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; mov.u64 %r32,%ar0; mov.f64 %r33,%ar1; mov.f64 %r34,%ar2; .loc 1 42 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r37,[%value_in]; } add.u64 %r41,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshl,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 43 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 43 46 ld.f64 %r47,[%frame]; mul.f64 %r31,%r46,%r47; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r52,[%value_in]; } .loc 1 43 27 mul.f64 %r53,%r31,0d0000000000000000; ld.f64 %r54,[%frame+8]; fma.rn.f64 %r30,%r52,%r54,%r53; .loc 1 44 9 st.f64 [%r32],%r30; st.f64 [%r32+8],%r31; .loc 1 45 1 ret; } lib_a-csqrt.o/ 0 0 0 644 6598 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csqrt .visible .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csqrt.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sqrt .extern .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: csqrt .visible .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r31; .reg .f64 %r33; .reg .f64 %r38; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r65; .reg .u64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .f64 %r78; .reg .f64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .f64 %r84; .reg .f64 %r86; .reg .pred %r87; .reg .f64 %r91; .reg .pred %r92; .reg .f64 %r94; .reg .pred %r95; .reg .f64 %r102; .reg .pred %r103; .reg .f64 %r104; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .pred %r119; mov.u64 %r66,%ar0; mov.f64 %r67,%ar1; mov.f64 %r68,%ar2; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r74,[%value_in]; } .loc 1 82 5 setp.neu.f64 %r75,%r74,0d0000000000000000; @ %r75 bra $L2; .loc 1 83 6 setp.neu.f64 %r76,%r71,0d0000000000000000; @ %r76 bra $L3; .loc 1 84 12 fma.rn.f64 %r45,%r74,0d0000000000000000,0d0000000000000000; .loc 1 84 6 mov.f64 %r46,%r74; bra $L7; $L3: .loc 1 86 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r78,[%value_in]; } .loc 1 87 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r78; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r80,[%value_in]; } .loc 1 88 7 setp.lt.f64 %r81,%r71,0d0000000000000000; @ ! %r81 bra $L26; .loc 1 89 13 fma.rn.f64 %r45,%r80,0d0000000000000000,0d0000000000000000; .loc 1 89 7 mov.f64 %r46,%r80; bra $L7; $L26: .loc 1 91 11 fma.rn.f64 %r45,%r74,0d0000000000000000,%r80; .loc 1 91 7 mov.f64 %r46,%r74; .loc 1 94 10 bra $L7; $L2: .loc 1 96 5 setp.neu.f64 %r82,%r71,0d0000000000000000; @ %r82 bra $L8; .loc 1 97 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 98 7 mul.f64 %r25,%r84,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 99 6 setp.gt.f64 %r87,%r74,0d0000000000000000; @ ! %r87 bra $L27; .loc 1 100 10 fma.rn.f64 %r45,%r86,0d0000000000000000,%r86; .loc 1 100 6 mov.f64 %r46,%r86; bra $L7; $L27: .loc 1 102 10 fma.rn.f64 %r45,%r86,0d8000000000000000,%r86; .loc 1 102 6 neg.f64 %r46,%r86; .loc 1 103 10 bra $L7; $L8: .loc 1 106 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r91,[%value_in]; } .loc 1 106 5 setp.gt.f64 %r92,%r91,0d4010000000000000; @ ! %r92 bra $L28; $L15: .loc 1 107 5 mul.f64 %r47,%r71,0d3fd0000000000000; .loc 1 108 5 mul.f64 %r48,%r74,0d3fd0000000000000; .loc 1 109 9 mov.f64 %r51,0d4000000000000000; bra $L14; $L28: .loc 1 106 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 106 22 setp.gt.f64 %r95,%r94,0d4010000000000000; @ %r95 bra $L15; .loc 1 112 5 mul.f64 %r47,%r71,0d4350000000000000; .loc 1 113 5 mul.f64 %r48,%r74,0d4350000000000000; .loc 1 114 9 mov.f64 %r51,0d3e40000000000000; $L14: .loc 1 121 8 fma.rn.f64 %r31,%r48,0d0000000000000000,%r47; .loc 1 122 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r48; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r102,[%value_in]; } .loc 1 123 5 setp.gt.f64 %r103,%r47,0d0000000000000000; @ ! %r103 bra $L29; .loc 1 124 26 mul.f64 %r104,%r47,0d3fe0000000000000; .loc 1 124 7 fma.rn.f64 %r33,%r102,0d3fe0000000000000,%r104; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 125 25 mul.f64 %r108,%r48,0d3fe0000000000000; .loc 1 125 15 div.rn.f64 %r109,%r108,%r106; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r110,[%value_in]; } .loc 1 125 5 mul.f64 %r49,%r110,%r51; .loc 1 126 5 mul.f64 %r50,%r51,%r106; bra $L18; $L29: .loc 1 128 7 mul.f64 %r112,%r47,0dbfe0000000000000; fma.rn.f64 %r38,%r102,0d3fe0000000000000,%r112; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r114,[%value_in]; } .loc 1 129 25 mul.f64 %r116,%r48,0d3fe0000000000000; .loc 1 129 15 div.rn.f64 %r117,%r116,%r114; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r117; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r118,[%value_in]; } .loc 1 129 5 mul.f64 %r50,%r118,%r51; .loc 1 130 5 mul.f64 %r49,%r51,%r114; $L18: .loc 1 133 9 mul.f64 %r65,%r49,0d0000000000000000; .loc 1 132 5 setp.lt.f64 %r119,%r48,0d0000000000000000; @ ! %r119 bra $L30; .loc 1 133 5 sub.f64 %r45,%r50,%r65; neg.f64 %r46,%r49; bra $L7; $L30: .loc 1 135 9 add.f64 %r45,%r50,%r65; .loc 1 135 5 mov.f64 %r46,%r49; $L7: .loc 1 94 10 st.f64 [%r66],%r45; st.f64 [%r66+8],%r46; .loc 1 137 1 ret; } lib_a-csqrtf.o/ 0 0 0 644 6565 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csqrtf .visible .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csqrtf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sqrtf .extern .func (.param .f32 %value_out) sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: csqrtf .visible .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r40; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r68; .reg .u64 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r74; .reg .f32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .f32 %r85; .reg .pred %r86; .reg .f32 %r88; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r95; .reg .pred %r96; .reg .f32 %r98; .reg .pred %r99; .reg .f32 %r106; .reg .pred %r107; .reg .f32 %r108; .reg .f32 %r110; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r116; .reg .f32 %r118; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .pred %r123; mov.u64 %r69,%ar0; mov.f32 %r70,%ar1; mov.f32 %r71,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r71; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r74,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r71; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r77,[%value_in]; } .loc 1 47 5 setp.neu.f32 %r78,%r77,0f00000000; @ %r78 bra $L2; .loc 1 48 6 setp.lt.f32 %r79,%r74,0f00000000; @ ! %r79 bra $L25; .loc 1 49 15 neg.f32 %r81,%r74; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r81; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r82,[%value_in]; } .loc 1 49 13 fma.rn.f32 %r23,%r82,0f00000000,0f00000000; .loc 1 50 11 st.f32 [%r69],%r23; st.f32 [%r69+4],%r82; bra $L1; $L25: .loc 1 51 13 setp.neu.f32 %r83,%r74,0f00000000; @ %r83 bra $L6; .loc 1 52 17 fma.rn.f32 %r24,%r77,0f00000000,0f00000000; st.f32 [%r69],%r24; st.f32 [%r69+4],%r77; bra $L1; $L6: .loc 1 54 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r85,[%value_in]; } .loc 1 54 17 fma.rn.f32 %r26,%r77,0f00000000,%r85; .loc 1 55 11 st.f32 [%r69],%r26; st.f32 [%r69+4],%r77; bra $L1; $L2: .loc 1 59 5 setp.neu.f32 %r86,%r74,0f00000000; @ %r86 bra $L7; .loc 1 60 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } .loc 1 61 7 mul.f32 %r27,%r88,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r90,[%value_in]; } .loc 1 62 6 setp.gt.f32 %r91,%r77,0f00000000; @ ! %r91 bra $L26; .loc 1 63 10 fma.rn.f32 %r47,%r90,0f00000000,%r90; .loc 1 63 6 mov.f32 %r48,%r90; bra $L10; $L26: .loc 1 65 10 fma.rn.f32 %r47,%r90,0f80000000,%r90; .loc 1 65 6 neg.f32 %r48,%r90; $L10: .loc 1 66 10 st.f32 [%r69],%r47; st.f32 [%r69+4],%r48; bra $L1; $L7: .loc 1 70 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r95,[%value_in]; } .loc 1 70 5 setp.gt.f32 %r96,%r95,0f40800000; @ ! %r96 bra $L27; $L14: .loc 1 71 5 mul.f32 %r51,%r74,0f3e800000; .loc 1 72 5 mul.f32 %r52,%r77,0f3e800000; .loc 1 73 9 mov.f32 %r55,0f40000000; bra $L13; $L27: .loc 1 70 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r98,[%value_in]; } .loc 1 70 24 setp.gt.f32 %r99,%r98,0f40800000; @ %r99 bra $L14; .loc 1 76 5 mul.f32 %r51,%r74,0f4c800000; .loc 1 77 5 mul.f32 %r52,%r77,0f4c800000; .loc 1 78 9 mov.f32 %r55,0f39000000; $L13: .loc 1 85 8 fma.rn.f32 %r33,%r52,0f00000000,%r51; .loc 1 86 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r52; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r106,[%value_in]; } .loc 1 87 4 setp.gt.f32 %r107,%r51,0f00000000; @ ! %r107 bra $L28; .loc 1 88 29 mul.f32 %r108,%r51,0f3f000000; .loc 1 88 7 fma.rn.f32 %r35,%r106,0f3f000000,%r108; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r110,[%value_in]; } .loc 1 89 27 mul.f32 %r112,%r52,0f3f000000; .loc 1 89 15 div.rn.f32 %r113,%r112,%r110; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r113; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r114,[%value_in]; } .loc 1 89 5 mul.f32 %r53,%r114,%r55; .loc 1 90 5 mul.f32 %r54,%r55,%r110; bra $L17; $L28: .loc 1 92 7 mul.f32 %r116,%r51,0fbf000000; fma.rn.f32 %r40,%r106,0f3f000000,%r116; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r118,[%value_in]; } .loc 1 93 27 mul.f32 %r120,%r52,0f3f000000; .loc 1 93 15 div.rn.f32 %r121,%r120,%r118; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r121; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r122,[%value_in]; } .loc 1 93 5 mul.f32 %r54,%r122,%r55; .loc 1 94 5 mul.f32 %r53,%r55,%r118; $L17: .loc 1 98 9 mul.f32 %r68,%r53,0f00000000; .loc 1 97 5 setp.lt.f32 %r123,%r52,0f00000000; @ ! %r123 bra $L29; .loc 1 98 5 sub.f32 %r49,%r54,%r68; neg.f32 %r50,%r53; bra $L20; $L29: .loc 1 100 9 add.f32 %r49,%r54,%r68; .loc 1 100 5 mov.f32 %r50,%r53; $L20: .loc 1 101 9 st.f32 [%r69],%r49; st.f32 [%r69+4],%r50; $L1: .loc 1 102 1 ret; } lib_a-csqrtl.o/ 0 0 0 644 7084 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csqrtl .visible .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/csqrtl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysignl .extern .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsl .extern .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: hypotl .extern .func (.param .f64 %value_out) hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sqrtl .extern .func (.param .f64 %value_out) sqrtl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csqrtl .visible .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .f64 %r24; .reg .f64 %r42; .reg .f64 %r43; .reg .u32 %r44; .reg .f64 %r45; .reg .u64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r58; .reg .f64 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u32 %r71; .reg .f64 %r73; .reg .pred %r74; .reg .pred %r75; .reg .f64 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .f64 %r85; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r94; .reg .pred %r95; .reg .f64 %r97; .reg .pred %r98; .reg .pred %r99; .reg .f64 %r102; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .pred %r123; .reg .u16 %r124; mov.u64 %r53,%ar0; mov.f64 %r54,%ar1; mov.f64 %r55,%ar2; .loc 1 60 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r55; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r58,[%value_in]; } mov.f64 %r42,%r58; .loc 1 61 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r55; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r61,[%value_in]; } mov.f64 %r45,%r61; .loc 1 64 5 set.u32.eq.f64 %r63,%r54,0d0000000000000000; neg.s32 %r64,%r63; mov.u32 %r62,%r64; set.u32.eq.f64 %r66,%r55,0d0000000000000000; neg.s32 %r67,%r66; mov.u32 %r65,%r67; cvt.u16.u8 %r124,%r62; mov.u16 %r69,%r124; cvt.u16.u8 %r124,%r65; mov.u16 %r70,%r124; and.b16 %r68,%r69,%r70; cvt.u32.u16 %r71,%r68; cvt.u32.u8 %r44,%r71; setp.eq.u32 %r123,%r44,0; @ %r123 bra $L2; .loc 1 65 11 fma.rn.f64 %r22,%r45,0d0000000000000000,0d0000000000000000; bra $L3; $L2: .loc 1 66 6 abs.f64 %r73,%r45; .loc 1 66 5 setp.leu.f64 %r74,%r73,0d7fefffffffffffff; @ %r74 bra $L4; .loc 1 67 11 fma.rn.f64 %r22,%r45,0d0000000000000000,0d7ff0000000000000; bra $L3; $L4: .loc 1 68 5 setp.num.f64 %r75,%r58,%r58; @ %r75 bra $L5; .loc 1 69 10 sub.f64 %r24,%r45,%r45; .loc 1 69 5 div.rn.f64 %r45,%r24,%r24; .loc 1 70 11 fma.rn.f64 %r22,%r45,0d0000000000000000,%r58; bra $L3; $L5: .loc 1 72 6 abs.f64 %r76,%r58; .loc 1 72 5 setp.leu.f64 %r77,%r76,0d7fefffffffffffff; @ %r77 bra $L6; .loc 1 79 7 mov.b64 %r78,%r58; shr.u64 %r79,%r78,63; cvt.u32.u64 %r81,%r79; .loc 1 79 6 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L7; .loc 1 80 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r45; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } sub.f64 %r87,%r45,%r45; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r87; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r88,[%value_in]; } fma.rn.f64 %r22,%r85,0d0000000000000000,%r88; mov.f64 %r45,%r85; bra $L3; $L7: .loc 1 82 12 sub.f64 %r91,%r45,%r45; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r91; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r45; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r92,[%value_in]; } mov.f64 %r45,%r92; fma.rn.f64 %r22,%r45,0d0000000000000000,%r58; bra $L3; $L6: .loc 1 90 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 90 5 setp.ge.f64 %r95,%r94,0d7fda827999fcef32; @ ! %r95 bra $L17; $L11: .loc 1 91 5 mul.f64 %r42,%r58,0d3fd0000000000000; .loc 1 92 5 mul.f64 %r43,%r61,0d3fd0000000000000; setp.eq.u32 %r123,1,0; .loc 1 93 9 bra $L10; $L17: .loc 1 90 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r97,[%value_in]; } .loc 1 90 25 setp.ge.f64 %r98,%r97,0d7fda827999fcef32; @ %r98 bra $L11; .loc 1 61 6 mov.f64 %r43,%r61; $L10: .loc 1 99 5 setp.ge.f64 %r99,%r42,0d0000000000000000; @ ! %r99 bra $L18; .loc 1 100 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),hypotl,(%out_arg1,%out_arg2); ld.param.f64 %r102,[%value_in]; } .loc 1 100 16 add.f64 %r104,%r102,%r42; .loc 1 100 7 mul.f64 %r105,%r104,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r105; call (%value_in),sqrtl,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 101 12 add.f64 %r107,%r106,%r106; div.rn.f64 %r45,%r43,%r107; fma.rn.f64 %r22,%r45,0d0000000000000000,%r106; bra $L14; $L18: .loc 1 103 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),hypotl,(%out_arg1,%out_arg2); ld.param.f64 %r110,[%value_in]; } .loc 1 103 17 sub.f64 %r112,%r110,%r42; .loc 1 103 7 mul.f64 %r113,%r112,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r113; call (%value_in),sqrtl,(%out_arg1); ld.param.f64 %r114,[%value_in]; } .loc 1 104 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r114; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r117,[%value_in]; } mov.f64 %r45,%r117; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r119,[%value_in]; } add.f64 %r120,%r114,%r114; div.rn.f64 %r121,%r119,%r120; fma.rn.f64 %r22,%r45,0d0000000000000000,%r121; $L14: .loc 1 108 5 @ %r123 bra $L3; .loc 1 109 18 add.f64 %r22,%r22,%r22; add.f64 %r45,%r45,%r45; $L3: .loc 1 65 11 st.f64 [%r53],%r22; st.f64 [%r53+8],%r45; .loc 1 112 1 ret; } lib_a-ctan.o/ 0 0 0 644 4416 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctan .visible .func ctan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ctan.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctans .extern .func (.param .f64 %value_out) _ctans (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctan .visible .func ctan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r55; .reg .pred %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; mov.u64 %r39,%ar0; mov.f64 %r40,%ar1; mov.f64 %r41,%ar2; .loc 1 78 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 78 6 add.f64 %r46,%r44,%r44; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),cos,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 78 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 78 28 add.f64 %r52,%r50,%r50; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 78 4 add.f64 %r37,%r47,%r53; .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r55,[%value_in]; } .loc 1 80 5 setp.lt.f64 %r56,%r55,0d3fd0000000000000; @ ! %r56 bra $L2; .loc 1 81 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),_ctans,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r37,%r59; $L2: .loc 1 83 5 setp.neu.f64 %r60,%r37,0d0000000000000000; @ %r60 bra $L4; .loc 1 85 16 mov.f64 %r61,0d7ff0000000000000; fma.rn.f64 %r29,%r61,0d0000000000000000,%r61; .loc 1 86 10 mov.f64 %r38,%r61; bra $L5; $L4: .loc 1 89 44 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 89 33 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 89 54 div.rn.f64 %r38,%r67,%r37; .loc 1 89 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 89 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),sin,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 89 26 div.rn.f64 %r74,%r73,%r37; .loc 1 89 30 fma.rn.f64 %r29,%r38,0d0000000000000000,%r74; $L5: .loc 1 86 10 st.f64 [%r39],%r29; st.f64 [%r39+8],%r38; .loc 1 91 1 ret; } lib_a-ctanf.o/ 0 0 0 644 4407 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanf .visible .func ctanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ctanf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansf .extern .func (.param .f32 %value_out) _ctansf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanf .visible .func ctanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r29; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r50; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r55; .reg .pred %r56; .reg .f32 %r59; .reg .pred %r60; .reg .f32 %r61; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r70; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; mov.u64 %r39,%ar0; mov.f32 %r40,%ar1; mov.f32 %r41,%ar2; .loc 1 45 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } .loc 1 45 6 add.f32 %r46,%r44,%r44; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 45 44 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } .loc 1 45 31 add.f32 %r52,%r50,%r50; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r52; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } .loc 1 45 4 add.f32 %r37,%r47,%r53; .loc 1 47 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r55,[%value_in]; } .loc 1 47 5 setp.lt.f32 %r56,%r55,0f3e800000; @ ! %r56 bra $L2; .loc 1 48 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),_ctansf,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } mov.f32 %r37,%r59; $L2: .loc 1 50 5 setp.neu.f32 %r60,%r37,0f00000000; @ %r60 bra $L4; .loc 1 52 17 mov.f32 %r61,0f7f800000; fma.rn.f32 %r29,%r61,0f00000000,%r61; .loc 1 53 10 mov.f32 %r38,%r61; bra $L5; $L4: .loc 1 56 49 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r64,[%value_in]; } .loc 1 56 36 add.f32 %r66,%r64,%r64; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r66; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r67,[%value_in]; } .loc 1 56 60 div.rn.f32 %r38,%r67,%r37; .loc 1 56 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r70,[%value_in]; } .loc 1 56 6 add.f32 %r72,%r70,%r70; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 56 29 div.rn.f32 %r74,%r73,%r37; .loc 1 56 33 fma.rn.f32 %r29,%r38,0f00000000,%r74; $L5: .loc 1 53 10 st.f32 [%r39],%r29; st.f32 [%r39+4],%r38; .loc 1 58 1 ret; } lib_a-ctanh.o/ 0 0 0 644 2849 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanh .visible .func ctanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ctanh.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanh .visible .func ctanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .f64 %r24; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r33; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r50; .reg .f64 %r51; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 79 6 add.f64 %r22,%r39,%r39; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 79 22 add.f64 %r24,%r42,%r42; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),cos,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 79 4 add.f64 %r32,%r44,%r46; .loc 1 80 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),sin,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 80 42 div.rn.f64 %r33,%r48,%r32; .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 80 20 div.rn.f64 %r51,%r50,%r32; .loc 1 80 25 fma.rn.f64 %r29,%r33,0d0000000000000000,%r51; .loc 1 82 9 st.f64 [%r34],%r29; st.f64 [%r34+8],%r33; .loc 1 83 1 ret; } lib_a-ctanhf.o/ 0 0 0 644 2864 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanhf .visible .func ctanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ctanhf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanhf .visible .func ctanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r22; .reg .f32 %r24; .reg .f32 %r29; .reg .f32 %r32; .reg .f32 %r33; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r42; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r50; .reg .f32 %r51; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } .loc 1 46 6 add.f32 %r22,%r39,%r39; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r22; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 46 24 add.f32 %r24,%r42,%r42; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 46 4 add.f32 %r32,%r44,%r46; .loc 1 47 31 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } .loc 1 47 46 div.rn.f32 %r33,%r48,%r32; .loc 1 47 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r22; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r50,[%value_in]; } .loc 1 47 22 div.rn.f32 %r51,%r50,%r32; .loc 1 47 27 fma.rn.f32 %r29,%r33,0f00000000,%r51; .loc 1 49 9 st.f32 [%r34],%r29; st.f32 [%r34+4],%r33; .loc 1 50 1 ret; } lib_a-ctanhl.o/ 0 0 0 644 2872 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanhl .visible .func ctanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ctanhl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanhl .visible .func ctanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .f64 %r24; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r33; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r50; .reg .f64 %r51; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 43 6 add.f64 %r22,%r39,%r39; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 43 24 add.f64 %r24,%r42,%r42; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 43 4 add.f64 %r32,%r44,%r46; .loc 1 44 31 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 44 46 div.rn.f64 %r33,%r48,%r32; .loc 1 44 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 44 22 div.rn.f64 %r51,%r50,%r32; .loc 1 44 27 fma.rn.f64 %r29,%r33,0d0000000000000000,%r51; .loc 1 46 9 st.f64 [%r34],%r29; st.f64 [%r34+8],%r33; .loc 1 47 1 ret; } lib_a-ctanl.o/ 0 0 0 644 4447 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanl .visible .func ctanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/complex/ctanl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsl .extern .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansl .extern .func (.param .f64 %value_out) _ctansl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanl .visible .func ctanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r55; .reg .pred %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; mov.u64 %r39,%ar0; mov.f64 %r40,%ar1; mov.f64 %r41,%ar2; .loc 1 43 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 43 6 add.f64 %r46,%r44,%r44; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 43 44 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 43 31 add.f64 %r52,%r50,%r50; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 43 4 add.f64 %r37,%r47,%r53; .loc 1 45 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r55,[%value_in]; } .loc 1 45 5 setp.lt.f64 %r56,%r55,0d3fd0000000000000; @ ! %r56 bra $L2; .loc 1 46 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),_ctansl,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r37,%r59; $L2: .loc 1 48 5 setp.neu.f64 %r60,%r37,0d0000000000000000; @ %r60 bra $L4; .loc 1 50 17 mov.f64 %r61,0d7ff0000000000000; fma.rn.f64 %r29,%r61,0d0000000000000000,%r61; .loc 1 51 10 mov.f64 %r38,%r61; bra $L5; $L4: .loc 1 54 49 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 54 36 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 54 60 div.rn.f64 %r38,%r67,%r37; .loc 1 54 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 54 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 54 29 div.rn.f64 %r74,%r73,%r37; .loc 1 54 33 fma.rn.f64 %r29,%r38,0d0000000000000000,%r74; $L5: .loc 1 51 10 st.f64 [%r39],%r29; st.f64 [%r39+8],%r38; .loc 1 56 1 ret; } lib_a-e_acos.o/ 0 0 0 644 5906 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acos .visible .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acos .visible .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .u32 %r59; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .u64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .pred %r103; .reg .f64 %r104; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r113; .reg .u64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; mov.f64 %r85,%ar0; .loc 1 71 2 mov.b64 %r86,%r85; shr.u64 %r87,%r86,32; cvt.u32.u64 %r88,%r87; .loc 1 72 5 and.b32 %r59,%r88,2147483647; .loc 1 73 4 setp.le.s32 %r89,%r59,1072693247; @ %r89 bra $L2; .loc 1 76 13 add.u32 %r90,%r59,-1072693248; .loc 1 76 25 cvt.u32.u64 %r92,%r86; or.b32 %r94,%r90,%r92; .loc 1 76 8 setp.ne.u32 %r95,%r94,0; @ %r95 bra $L3; .loc 1 77 5 setp.gt.s32 %r96,%r88,0; .loc 1 78 17 selp.f64 %r84,0d0000000000000000,0d400921fb54442d18,%r96; bra $L1; $L3: .loc 1 80 15 sub.f64 %r25,%r85,%r85; .loc 1 80 18 div.rn.f64 %r84,%r25,%r25; bra $L1; $L2: .loc 1 82 4 setp.gt.s32 %r97,%r59,1071644671; @ %r97 bra $L5; .loc 1 83 8 setp.le.s32 %r98,%r59,1012924416; @ %r98 bra $L8; .loc 1 84 8 mul.f64 %r74,%r85,%r85; .loc 1 85 44 fma.rn.f64 %r26,%r74,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 85 37 fma.rn.f64 %r27,%r26,%r74,0dbfa48228b5688f3b; .loc 1 85 30 fma.rn.f64 %r28,%r27,%r74,0d3fc9c1550e884455; .loc 1 85 23 fma.rn.f64 %r29,%r28,%r74,0dbfd4d61203eb6f7d; .loc 1 85 16 fma.rn.f64 %r30,%r29,%r74,0d3fc5555555555555; .loc 1 85 8 mul.f64 %r75,%r30,%r74; .loc 1 86 34 fma.rn.f64 %r31,%r74,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 86 27 fma.rn.f64 %r32,%r31,%r74,0d40002ae59c598ac8; .loc 1 86 20 fma.rn.f64 %r33,%r32,%r74,0dc0033a271c8a2d4b; .loc 1 86 8 fma.rn.f64 %r76,%r33,%r74,0d3ff0000000000000; .loc 1 88 36 neg.f64 %r99,%r85; .loc 1 87 8 div.rn.f64 %r100,%r75,%r76; .loc 1 88 36 fma.rn.f64 %r34,%r99,%r100,0d3c91a62633145c07; .loc 1 88 26 sub.f64 %r101,%r85,%r34; .loc 1 88 21 mov.f64 %r102,0d3ff921fb54442d18; sub.f64 %r84,%r102,%r101; bra $L1; $L5: .loc 1 89 13 setp.ge.s32 %r103,%r88,0; @ %r103 bra $L6; .loc 1 90 14 add.f64 %r104,%r85,0d3ff0000000000000; .loc 1 90 8 mul.f64 %r68,%r104,0d3fe0000000000000; .loc 1 91 44 fma.rn.f64 %r37,%r68,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 91 37 fma.rn.f64 %r38,%r37,%r68,0dbfa48228b5688f3b; .loc 1 91 30 fma.rn.f64 %r39,%r38,%r68,0d3fc9c1550e884455; .loc 1 91 23 fma.rn.f64 %r40,%r39,%r68,0dbfd4d61203eb6f7d; .loc 1 91 16 fma.rn.f64 %r41,%r40,%r68,0d3fc5555555555555; .loc 1 91 8 mul.f64 %r69,%r41,%r68; .loc 1 92 34 fma.rn.f64 %r42,%r68,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 92 27 fma.rn.f64 %r43,%r42,%r68,0d40002ae59c598ac8; .loc 1 92 20 fma.rn.f64 %r44,%r43,%r68,0dc0033a271c8a2d4b; .loc 1 92 8 fma.rn.f64 %r70,%r44,%r68,0d3ff0000000000000; .loc 1 93 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 94 8 div.rn.f64 %r107,%r69,%r70; .loc 1 95 8 fma.rn.f64 %r73,%r106,%r107,0dbc91a62633145c07; .loc 1 96 24 add.f64 %r108,%r106,%r73; .loc 1 96 16 fma.rn.f64 %r84,%r108,0dc000000000000000,0d400921fb54442d18; bra $L1; $L6: .loc 1 98 14 mov.f64 %r111,0d3ff0000000000000; sub.f64 %r110,%r111,%r85; .loc 1 98 8 mul.f64 %r60,%r110,0d3fe0000000000000; .loc 1 99 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r113,[%value_in]; } .loc 1 101 6 mov.b64 %r83,%r113; and.b64 %r114,%r83,-4294967296; mov.b64 %r62,%r114; .loc 1 102 13 neg.f64 %r115,%r62; fma.rn.f64 %r47,%r115,%r62,%r60; .loc 1 102 23 add.f64 %r116,%r113,%r62; .loc 1 102 9 div.rn.f64 %r63,%r47,%r116; .loc 1 103 44 fma.rn.f64 %r49,%r60,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 37 fma.rn.f64 %r50,%r49,%r60,0dbfa48228b5688f3b; .loc 1 103 30 fma.rn.f64 %r51,%r50,%r60,0d3fc9c1550e884455; .loc 1 103 23 fma.rn.f64 %r52,%r51,%r60,0dbfd4d61203eb6f7d; .loc 1 103 16 fma.rn.f64 %r53,%r52,%r60,0d3fc5555555555555; .loc 1 103 8 mul.f64 %r64,%r53,%r60; .loc 1 104 34 fma.rn.f64 %r54,%r60,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 27 fma.rn.f64 %r55,%r54,%r60,0d40002ae59c598ac8; .loc 1 104 20 fma.rn.f64 %r56,%r55,%r60,0dc0033a271c8a2d4b; .loc 1 104 8 fma.rn.f64 %r65,%r56,%r60,0d3ff0000000000000; .loc 1 105 8 div.rn.f64 %r117,%r64,%r65; .loc 1 106 8 fma.rn.f64 %r67,%r113,%r117,%r63; .loc 1 107 20 add.f64 %r118,%r62,%r67; .loc 1 107 16 add.f64 %r84,%r118,%r118; bra $L1; $L8: .loc 1 83 39 mov.f64 %r84,0d3ff921fb54442d18; $L1: .loc 1 109 1 mov.f64 %value,%r84; st.param.f64 [%value_out],%value; ret; } lib_a-e_acosh.o/0 0 0 644 3361 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosh .visible .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acosh .visible .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r27; .reg .f64 %r31; .reg .f64 %r33; .reg .f64 %r37; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .f64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .pred %r57; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r63; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r72; mov.f64 %r42,%ar0; .loc 1 51 2 mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r45,%r44; .loc 1 52 4 setp.gt.s32 %r46,%r45,1072693247; @ %r46 bra $L2; .loc 1 53 15 sub.f64 %r22,%r42,%r42; .loc 1 53 18 div.rn.f64 %r41,%r22,%r22; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r47,%r45,1102053375; @ %r47 bra $L4; .loc 1 55 8 setp.le.s32 %r48,%r45,2146435071; @ %r48 bra $L5; .loc 1 56 18 add.f64 %r41,%r42,%r42; bra $L1; $L5: .loc 1 58 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 58 26 add.f64 %r41,%r50,0d3fe62e42fefa39ef; bra $L1; $L4: .loc 1 59 16 add.u32 %r51,%r45,-1072693248; .loc 1 59 28 cvt.u32.u64 %r53,%r43; or.b32 %r55,%r51,%r53; .loc 1 59 11 setp.eq.u32 %r56,%r55,0; @ %r56 bra $L7; .loc 1 61 12 setp.le.s32 %r57,%r45,1073741824; @ %r57 bra $L6; .loc 1 63 40 fma.rn.f64 %r27,%r42,%r42,0dbff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 63 39 add.f64 %r60,%r59,%r42; .loc 1 63 36 rcp.rn.f64 %r61,%r60; .loc 1 63 13 neg.f64 %r63,%r61; fma.rn.f64 %r31,%r42,0d4000000000000000,%r63; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r65,[%value_in]; } mov.f64 %r41,%r65; bra $L1; $L6: .loc 1 65 8 mov.f64 %r66,0d3ff0000000000000; sub.f64 %r37,%r42,%r66; .loc 1 66 43 mul.f64 %r67,%r37,%r37; .loc 1 66 21 fma.rn.f64 %r33,%r37,0d4000000000000000,%r67; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 66 13 add.f64 %r71,%r69,%r37; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r72,[%value_in]; } mov.f64 %r41,%r72; bra $L1; $L7: .loc 1 60 13 mov.f64 %r41,0d0000000000000000; $L1: .loc 1 68 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } lib_a-e_asin.o/ 0 0 0 644 5513 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_asin .visible .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_asin.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_asin .visible .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r63; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .u64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r86; .reg .pred %r87; .reg .f64 %r88; .reg .pred %r89; .reg .pred %r90; .reg .f64 %r91; .reg .pred %r92; .reg .f64 %r93; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r99; .reg .pred %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .u64 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r111; .reg .f64 %r112; .reg .pred %r113; mov.f64 %r77,%ar0; .loc 1 80 2 mov.b64 %r78,%r77; shr.u64 %r79,%r78,32; cvt.u32.u64 %r80,%r79; .loc 1 81 5 and.b32 %r53,%r80,2147483647; .loc 1 82 4 setp.le.s32 %r81,%r53,1072693247; @ %r81 bra $L2; .loc 1 85 13 add.u32 %r82,%r53,-1072693248; .loc 1 85 25 cvt.u32.u64 %r84,%r78; or.b32 %r86,%r82,%r84; .loc 1 85 8 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L3; .loc 1 87 21 mul.f64 %r88,%r77,0d3c91a62633145c07; .loc 1 87 19 fma.rn.f64 %r76,%r77,0d3ff921fb54442d18,%r88; bra $L1; $L3: .loc 1 88 15 sub.f64 %r26,%r77,%r77; .loc 1 88 18 div.rn.f64 %r76,%r26,%r26; bra $L1; $L2: .loc 1 89 12 setp.gt.s32 %r89,%r53,1071644671; @ %r89 bra $L5; .loc 1 90 8 setp.gt.s32 %r90,%r53,1044381695; @ %r90 bra $L6; .loc 1 91 10 add.f64 %r91,%r77,0d7e37e43c8800759c; .loc 1 91 5 setp.gt.f64 %r92,%r91,0d3ff0000000000000; @ ! %r92 bra $L5; bra $L9; $L6: .loc 1 93 5 mul.f64 %r54,%r77,%r77; .loc 1 94 41 fma.rn.f64 %r28,%r54,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 94 34 fma.rn.f64 %r29,%r28,%r54,0dbfa48228b5688f3b; .loc 1 94 27 fma.rn.f64 %r30,%r29,%r54,0d3fc9c1550e884455; .loc 1 94 20 fma.rn.f64 %r31,%r30,%r54,0dbfd4d61203eb6f7d; .loc 1 94 13 fma.rn.f64 %r32,%r31,%r54,0d3fc5555555555555; .loc 1 94 5 mul.f64 %r55,%r32,%r54; .loc 1 95 31 fma.rn.f64 %r33,%r54,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 95 24 fma.rn.f64 %r34,%r33,%r54,0d40002ae59c598ac8; .loc 1 95 17 fma.rn.f64 %r35,%r34,%r54,0dc0033a271c8a2d4b; .loc 1 95 5 fma.rn.f64 %r56,%r35,%r54,0d3ff0000000000000; .loc 1 96 5 div.rn.f64 %r93,%r55,%r56; .loc 1 97 11 fma.rn.f64 %r76,%r77,%r93,%r77; bra $L1; $L5: .loc 1 101 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r77; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r95,[%value_in]; } .loc 1 101 4 mov.f64 %r97,0d3ff0000000000000; sub.f64 %r96,%r97,%r95; .loc 1 102 4 mul.f64 %r59,%r96,0d3fe0000000000000; .loc 1 103 40 fma.rn.f64 %r37,%r59,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 33 fma.rn.f64 %r38,%r37,%r59,0dbfa48228b5688f3b; .loc 1 103 26 fma.rn.f64 %r39,%r38,%r59,0d3fc9c1550e884455; .loc 1 103 19 fma.rn.f64 %r40,%r39,%r59,0dbfd4d61203eb6f7d; .loc 1 103 12 fma.rn.f64 %r41,%r40,%r59,0d3fc5555555555555; .loc 1 103 4 mul.f64 %r60,%r41,%r59; .loc 1 104 30 fma.rn.f64 %r42,%r59,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 23 fma.rn.f64 %r43,%r42,%r59,0d40002ae59c598ac8; .loc 1 104 16 fma.rn.f64 %r44,%r43,%r59,0dc0033a271c8a2d4b; .loc 1 104 4 fma.rn.f64 %r61,%r44,%r59,0d3ff0000000000000; .loc 1 105 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 106 4 setp.le.s32 %r100,%r53,1072640818; @ %r100 bra $L7; .loc 1 107 8 div.rn.f64 %r101,%r60,%r61; .loc 1 108 25 fma.rn.f64 %r45,%r99,%r101,%r99; .loc 1 108 30 fma.rn.f64 %r46,%r45,0d4000000000000000,0dbc91a62633145c07; .loc 1 108 8 mov.f64 %r102,0d3ff921fb54442d18; sub.f64 %r76,%r102,%r46; bra $L8; $L7: .loc 1 111 6 mov.b64 %r75,%r99; and.b64 %r103,%r75,-4294967296; mov.b64 %r63,%r103; .loc 1 112 13 neg.f64 %r104,%r63; fma.rn.f64 %r47,%r104,%r63,%r59; .loc 1 113 9 div.rn.f64 %r65,%r60,%r61; .loc 1 112 21 add.f64 %r105,%r99,%r63; .loc 1 112 9 div.rn.f64 %r106,%r47,%r105; .loc 1 114 27 fma.rn.f64 %r50,%r106,0dc000000000000000,0d3c91a62633145c07; .loc 1 114 14 add.f64 %r108,%r99,%r99; .loc 1 114 9 neg.f64 %r109,%r50; fma.rn.f64 %r66,%r108,%r65,%r109; .loc 1 115 9 fma.rn.f64 %r67,%r104,0d4000000000000000,0d3fe921fb54442d18; .loc 1 116 21 sub.f64 %r111,%r66,%r67; .loc 1 116 9 mov.f64 %r112,0d3fe921fb54442d18; sub.f64 %r76,%r112,%r111; $L8: .loc 1 118 4 setp.gt.s32 %r113,%r80,0; @ %r113 bra $L1; .loc 1 118 33 neg.f64 %r76,%r76; bra $L1; $L9: .loc 1 91 25 mov.f64 %r76,%r77; $L1: .loc 1 119 1 mov.f64 %value,%r76; st.param.f64 [%value_out],%value; ret; } lib_a-e_atan2.o/0 0 0 644 6852 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2 .visible .func (.param .f64 %value_out) __ieee754_atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_atan2.c" // BEGIN GLOBAL FUNCTION DECL: atan .extern .func (.param .f64 %value_out) atan (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN VAR DEF: CSWTCH$8 .const .align 8 .u64 CSWTCH$8[3] = {-4618122579557470952,4612488097114038738,-4610883939740737070 }; // BEGIN VAR DEF: CSWTCH$9 .const .align 8 .u64 CSWTCH$9[3] = {-9223372036854775808,4614256656552045848,-4609115380302729960 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_atan2 .visible .func (.param .f64 %value_out) __ieee754_atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r35; .reg .u32 %r52; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r61; .reg .u64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .f64 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r137; .reg .u64 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .u16 %r153; mov.f64 %r65,%ar0; mov.f64 %r66,%ar1; .loc 1 69 2 mov.b64 %r67,%r66; shr.u64 %r68,%r67,32; cvt.u32.u64 %r69,%r68; cvt.u32.u64 %r71,%r67; .loc 1 70 5 and.b32 %r52,%r69,2147483647; .loc 1 73 15 neg.s32 %r72,%r71; .loc 1 73 14 or.b32 %r73,%r72,%r71; .loc 1 73 19 shr.u32 %r74,%r73,31; .loc 1 73 9 or.b32 %r75,%r74,%r52; .loc 1 73 4 setp.gt.u32 %r76,%r75,2146435072; @ %r76 bra $L2; mov.b64 %r77,%r65; shr.u64 %r78,%r77,32; cvt.u32.u64 %r79,%r78; cvt.u32.u64 %r81,%r77; .loc 1 72 5 and.b32 %r54,%r79,2147483647; .loc 1 74 15 neg.s32 %r82,%r81; .loc 1 74 14 or.b32 %r83,%r82,%r81; .loc 1 74 19 shr.u32 %r84,%r83,31; .loc 1 74 9 or.b32 %r85,%r84,%r54; .loc 1 73 37 setp.le.u32 %r86,%r85,2146435072; @ %r86 bra $L3; $L2: .loc 1 75 13 add.f64 %r64,%r66,%r65; bra $L1; $L3: .loc 1 76 9 add.u32 %r87,%r69,-1072693248; .loc 1 76 21 or.b32 %r88,%r87,%r71; .loc 1 76 4 setp.ne.u32 %r89,%r88,0; @ %r89 bra $L5; .loc 1 76 37 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),atan,(%out_arg1); ld.param.f64 %r91,[%value_in]; } mov.f64 %r64,%r91; bra $L1; $L5: .loc 1 77 23 shr.s32 %r92,%r69,30; .loc 1 77 28 and.b32 %r93,%r92,2; .loc 1 77 15 shr.u32 %r94,%r79,31; .loc 1 77 4 or.b32 %r55,%r93,%r94; .loc 1 80 8 or.b32 %r95,%r54,%r81; .loc 1 80 4 setp.ne.u32 %r96,%r95,0; @ %r96 bra $L6; .loc 1 81 6 setp.eq.u32 %r97,%r55,2; @ %r97 bra $L15; setp.ne.u32 %r98,%r55,3; .loc 1 85 21 selp.f64 %r64,%r65,0dc00921fb54442d18,%r98; bra $L1; $L6: .loc 1 89 8 or.b32 %r99,%r52,%r71; .loc 1 89 4 setp.ne.u32 %r100,%r99,0; @ %r100 bra $L7; .loc 1 89 45 setp.ge.s32 %r101,%r79,0; selp.f64 %r64,0d3ff921fb54442d18,0dbff921fb54442d18,%r101; bra $L1; $L7: .loc 1 92 4 setp.ne.u32 %r102,%r52,2146435072; @ %r102 bra $L8; add.u32 %r35,%r55,-1; .loc 1 93 8 setp.ne.u32 %r103,%r54,2146435072; @ %r103 bra $L9; setp.gt.u32 %r104,%r35,2; @ %r104 bra $L18; cvta.const.u64 %r105,CSWTCH$8; cvt.u64.u32 %r106,%r35; shl.b64 %r107,%r106,3; add.u64 %r108,%r105,%r107; ld.f64 %r64,[%r108]; bra $L1; $L9: setp.gt.u32 %r109,%r35,2; @ %r109 bra $L19; cvta.const.u64 %r110,CSWTCH$9; cvt.u64.u32 %r111,%r35; shl.b64 %r112,%r111,3; add.u64 %r113,%r110,%r112; ld.f64 %r64,[%r113]; bra $L1; $L8: .loc 1 110 4 setp.ne.u32 %r114,%r54,2146435072; @ %r114 bra $L10; .loc 1 110 48 setp.ge.s32 %r115,%r79,0; .loc 1 89 45 selp.f64 %r64,0d3ff921fb54442d18,0dbff921fb54442d18,%r115; bra $L1; $L10: .loc 1 113 9 sub.u32 %r116,%r54,%r52; .loc 1 113 4 shr.s32 %r61,%r116,20; .loc 1 114 4 setp.gt.s32 %r117,%r116,63963135; @ %r117 bra $L21; .loc 1 115 12 shr.u32 %r119,%r69,31; mov.u32 %r120,%r119; .loc 1 115 17 set.u32.lt.s32 %r122,%r61,-60; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 115 14 cvt.u16.u8 %r153,%r120; mov.u16 %r125,%r153; cvt.u16.u8 %r153,%r121; mov.u16 %r126,%r153; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 115 9 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L22; .loc 1 116 9 div.rn.f64 %r131,%r65,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r131; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r132,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r132; call (%value_in),atan,(%out_arg1); ld.param.f64 %r134,[%value_in]; } mov.f64 %r64,%r134; bra $L11; $L21: .loc 1 114 14 mov.f64 %r64,0d3ff921fb54442d18; bra $L11; $L22: .loc 1 115 24 mov.f64 %r64,0d0000000000000000; $L11: .loc 1 117 2 setp.eq.u32 %r135,%r55,1; @ %r135 bra $L12; setp.eq.u32 %r136,%r55,2; @ %r136 bra $L13; setp.eq.u32 %r137,%r55,0; @ ! %r137 bra $L26; bra $L1; $L12: .loc 1 122 9 mov.b64 %r63,%r64; shr.u64 %r139,%r63,32; cvt.u32.u64 %r140,%r139; add.u32 %r141,%r140,-2147483648; cvt.u64.u32 %r142,%r141; shl.b64 %r143,%r142,32; and.b64 %r144,%r63,4294967295; or.b64 %r145,%r144,%r143; mov.b64 %r64,%r145; .loc 1 124 20 bra $L1; $L13: .loc 1 125 27 mov.f64 %r147,0d3ca1a62633145c07; sub.f64 %r146,%r64,%r147; .loc 1 125 24 mov.f64 %r148,0d400921fb54442d18; sub.f64 %r64,%r148,%r146; bra $L1; $L26: .loc 1 127 21 mov.f64 %r150,0d3ca1a62633145c07; sub.f64 %r149,%r64,%r150; .loc 1 127 28 mov.f64 %r151,0d400921fb54442d18; sub.f64 %r64,%r149,%r151; bra $L1; $L15: .loc 1 81 6 mov.f64 %r64,0d400921fb54442d18; bra $L1; $L18: .loc 1 93 8 mov.f64 %r64,0d3fe921fb54442d18; bra $L1; $L19: mov.f64 %r64,0d0000000000000000; $L1: .loc 1 129 1 mov.f64 %value,%r64; st.param.f64 [%value_out],%value; ret; } lib_a-e_atanh.o/0 0 0 644 3321 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanh .visible .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_atanh.c" // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_atanh .visible .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r27; .reg .u32 %r38; .reg .u32 %r39; .reg .f64 %r40; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; mov.f64 %r46,%ar0; .loc 1 59 2 mov.b64 %r47,%r46; shr.u64 %r48,%r47,32; cvt.u32.u64 %r38,%r48; cvt.u32.u64 %r51,%r47; .loc 1 60 5 and.b32 %r39,%r38,2147483647; .loc 1 61 16 neg.s32 %r52,%r51; .loc 1 61 14 or.b32 %r53,%r52,%r51; .loc 1 61 21 shr.u32 %r54,%r53,31; .loc 1 61 9 or.b32 %r55,%r54,%r39; .loc 1 61 5 setp.le.u32 %r56,%r55,1072693248; @ %r56 bra $L2; .loc 1 62 15 sub.f64 %r27,%r46,%r46; .loc 1 62 18 div.rn.f64 %r45,%r27,%r27; bra $L1; $L2: .loc 1 63 4 setp.ne.u32 %r57,%r39,1072693248; @ %r57 bra $L4; .loc 1 64 14 div.rn.f64 %r45,%r46,0d0000000000000000; bra $L1; $L4: .loc 1 65 4 setp.gt.s32 %r58,%r39,1043333119; @ %r58 bra $L5; .loc 1 65 25 add.f64 %r59,%r46,0d7e37e43c8800759c; .loc 1 65 18 setp.gt.f64 %r60,%r59,0d0000000000000000; @ ! %r60 bra $L11; bra $L10; $L5: .loc 1 66 2 cvt.u64.u32 %r61,%r39; shl.b64 %r62,%r61,32; and.b64 %r63,%r47,4294967295; or.b64 %r64,%r63,%r62; mov.b64 %r43,%r64; .loc 1 67 4 setp.gt.s32 %r65,%r39,1071644671; @ %r65 bra $L7; $L9: .loc 1 68 8 add.f64 %r40,%r43,%r43; .loc 1 69 23 mul.f64 %r67,%r40,%r43; .loc 1 69 30 mov.f64 %r69,0d3ff0000000000000; sub.f64 %r68,%r69,%r43; .loc 1 69 25 div.rn.f64 %r70,%r67,%r68; .loc 1 69 14 add.f64 %r71,%r70,%r40; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 69 8 mul.f64 %r45,%r72,0d3fe0000000000000; bra $L8; $L7: .loc 1 71 22 add.f64 %r74,%r43,%r43; .loc 1 71 30 mov.f64 %r76,0d3ff0000000000000; sub.f64 %r75,%r76,%r43; .loc 1 71 14 div.rn.f64 %r77,%r74,%r75; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r77; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r78,[%value_in]; } .loc 1 71 8 mul.f64 %r45,%r78,0d3fe0000000000000; $L8: .loc 1 72 4 setp.ge.s32 %r79,%r38,0; @ %r79 bra $L1; .loc 1 72 34 neg.f64 %r45,%r45; bra $L1; $L10: .loc 1 65 42 mov.f64 %r45,%r46; bra $L1; $L11: .loc 1 66 2 cvt.u64.u32 %r81,%r39; shl.b64 %r82,%r81,32; and.b64 %r83,%r47,4294967295; or.b64 %r84,%r83,%r82; mov.b64 %r43,%r84; bra $L9; $L1: .loc 1 73 1 mov.f64 %value,%r45; st.param.f64 [%value_out],%value; ret; } lib_a-e_cosh.o/ 0 0 0 644 4694 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_cosh .visible .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_cosh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_cosh .visible .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r36; .reg .f64 %r43; .reg .f64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .pred %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .pred %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .pred %r65; .reg .f64 %r67; .reg .f64 %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u16 %r79; .reg .u16 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .pred %r84; .reg .f64 %r86; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .u32 %r91; .reg .f64 %r92; .reg .u16 %r94; mov.f64 %r44,%ar0; .loc 1 58 2 mov.b64 %r45,%r44; shr.u64 %r46,%r45,32; cvt.u32.u64 %r47,%r46; .loc 1 59 5 and.b32 %r36,%r47,2147483647; .loc 1 62 4 setp.le.s32 %r48,%r36,2146435071; @ %r48 bra $L2; .loc 1 62 29 mul.f64 %r43,%r44,%r44; bra $L1; $L2: .loc 1 65 4 setp.gt.s32 %r49,%r36,1071001154; @ %r49 bra $L4; .loc 1 66 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r51,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r51; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 67 8 add.f64 %r43,%r53,0d3ff0000000000000; .loc 1 68 9 setp.le.s32 %r54,%r36,1015021567; @ %r54 bra $L1; .loc 1 69 19 mul.f64 %r55,%r53,%r53; .loc 1 69 25 add.f64 %r56,%r43,%r43; .loc 1 69 22 div.rn.f64 %r57,%r55,%r56; .loc 1 69 16 add.f64 %r43,%r57,0d3ff0000000000000; bra $L1; $L4: .loc 1 73 5 setp.gt.s32 %r58,%r36,1077280767; @ %r58 bra $L5; .loc 1 74 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r60,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 75 21 mov.f64 %r64,0d3fe0000000000000; div.rn.f64 %r63,%r64,%r62; .loc 1 75 16 fma.rn.f64 %r43,%r62,0d3fe0000000000000,%r63; bra $L1; $L5: .loc 1 79 5 setp.gt.s32 %r65,%r36,1082535489; @ %r65 bra $L6; .loc 1 79 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r67,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 79 35 mul.f64 %r43,%r69,0d3fe0000000000000; bra $L1; $L6: cvt.u32.u64 %r71,%r45; .loc 1 83 5 setp.le.s32 %r72,%r36,1082536909; @ %r72 bra $L7; .loc 1 84 17 set.u32.eq.u32 %r74,%r36,1082536910; neg.s32 %r75,%r74; mov.u32 %r73,%r75; .loc 1 84 35 set.u32.le.u32 %r77,%r71,-1883637635; neg.s32 %r78,%r77; mov.u32 %r76,%r78; .loc 1 84 30 cvt.u16.u8 %r94,%r73; mov.u16 %r80,%r94; cvt.u16.u8 %r94,%r76; mov.u16 %r81,%r94; and.b16 %r79,%r80,%r81; cvt.u32.u16 %r82,%r79; .loc 1 83 20 cvt.u16.u8 %r83,%r82; setp.eq.u16 %r84,%r83,0; @ %r84 bra $L8; $L7: .loc 1 85 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 85 10 mul.f64 %r88,%r86,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r88; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 86 8 mul.f64 %r90,%r89,0d3fe0000000000000; .loc 1 87 14 mul.f64 %r43,%r90,%r89; bra $L1; $L8: .loc 1 91 9 mov.u32 %r91,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r92,[%value_in]; } mov.f64 %r43,%r92; $L1: .loc 1 92 1 mov.f64 %value,%r43; st.param.f64 [%value_out],%value; ret; } lib_a-e_exp.o/ 0 0 0 644 6911 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .visible .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_exp.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN VAR DEF: ln2LO .const .align 8 .u64 ln2LO[2] = {4461442080421002358,-4761929956433773450 }; // BEGIN VAR DEF: halF .const .align 8 .u64 halF[2] = {4602678819172646912,-4620693217682128896 }; // BEGIN VAR DEF: ln2HI .const .align 8 .u64 ln2HI[2] = {4604418534311723008,-4618953502543052800 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_exp .visible .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f64 %r28; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r73; .reg .f64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r82; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .u32 %r88; .reg .f64 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .f64 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .f64 %r99; .reg .u64 %r100; .reg .u64 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .f64 %r110; .reg .f64 %r112; .reg .pred %r113; .reg .pred %r114; .reg .f64 %r115; .reg .pred %r116; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .pred %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .f64 %r147; .reg .f64 %r148; mov.f64 %r74,%ar0; mov.b64 %r75,%r74; shr.u64 %r76,%r75,32; cvt.u32.u64 %r77,%r76; .loc 1 118 16 shr.u32 %r22,%r77,31; .loc 1 119 5 and.b32 %r54,%r77,2147483647; .loc 1 122 4 setp.le.u32 %r78,%r54,1082535489; @ %r78 bra $L2; .loc 1 123 15 setp.le.u32 %r79,%r54,2146435071; @ %r79 bra $L3; .loc 1 126 10 and.b32 %r80,%r77,1048575; .loc 1 126 19 cvt.u32.u64 %r82,%r75; or.b32 %r84,%r80,%r82; .loc 1 126 5 setp.eq.u32 %r85,%r84,0; @ %r85 bra $L4; .loc 1 127 16 add.f64 %r73,%r74,%r74; bra $L1; $L4: .loc 1 128 26 setp.eq.u32 %r86,%r22,0; selp.f64 %r73,%r74,0d0000000000000000,%r86; bra $L1; $L3: .loc 1 130 8 setp.gt.f64 %r87,%r74,0d40862e42fefa39ef; @ ! %r87 bra $L24; .loc 1 130 33 mov.u32 %r88,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r88; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r89,[%value_in]; } mov.f64 %r73,%r89; bra $L1; $L24: .loc 1 131 8 setp.lt.f64 %r90,%r74,0dc0874910d52d3051; @ ! %r90 bra $L8; .loc 1 131 33 mov.u32 %r91,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r92,[%value_in]; } mov.f64 %r73,%r92; bra $L1; $L2: .loc 1 135 4 setp.le.u32 %r93,%r54,1071001154; @ %r93 bra $L10; .loc 1 136 8 setp.gt.u32 %r94,%r54,1072734897; @ %r94 bra $L8; .loc 1 137 15 cvta.const.u64 %r95,ln2HI; cvt.s64.s32 %r96,%r22; shl.b64 %r97,%r96,3; add.u64 %r98,%r95,%r97; .loc 1 137 6 ld.f64 %r99,[%r98]; sub.f64 %r50,%r74,%r99; .loc 1 137 24 cvta.const.u64 %r100,ln2LO; add.u64 %r103,%r100,%r97; ld.f64 %r51,[%r103]; .loc 1 137 42 mov.u32 %r105,1; sub.u32 %r104,%r105,%r22; .loc 1 137 39 sub.u32 %r52,%r104,%r22; bra $L11; $L8: .loc 1 139 21 cvta.const.u64 %r106,halF; cvt.s64.s32 %r107,%r22; shl.b64 %r108,%r107,3; add.u64 %r109,%r106,%r108; .loc 1 139 16 ld.f64 %r110,[%r109]; fma.rn.f64 %r28,%r74,0d3ff71547652b82fe,%r110; .loc 1 139 6 cvt.rzi.s32.f64 %r52,%r28; .loc 1 140 6 cvt.rn.f64.s32 %r56,%r52; .loc 1 141 6 fma.rn.f64 %r50,%r56,0dbfe62e42fee00000,%r74; .loc 1 142 6 mul.f64 %r51,%r56,0d3dea39ef35793c76; $L11: .loc 1 144 9 sub.f64 %r74,%r50,%r51; .loc 1 151 5 mul.f64 %r57,%r74,%r74; .loc 1 152 34 fma.rn.f64 %r31,%r57,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 152 28 fma.rn.f64 %r32,%r31,%r57,0d3f11566aaf25de2c; .loc 1 152 22 fma.rn.f64 %r33,%r32,%r57,0dbf66c16c16bebd93; .loc 1 152 16 fma.rn.f64 %r34,%r33,%r57,0d3fc555555555553e; .loc 1 152 5 neg.f64 %r112,%r34; fma.rn.f64 %r65,%r112,%r57,%r74; .loc 1 154 24 mul.f64 %r148,%r74,%r65; .loc 1 153 4 setp.eq.u32 %r113,%r52,0; @ ! %r113 bra $L25; bra $L12; $L10: .loc 1 146 9 setp.gt.u32 %r114,%r54,1039138815; @ %r114 bra $L14; .loc 1 147 13 add.f64 %r115,%r74,0d7e37e43c8800759c; .loc 1 147 8 setp.gt.f64 %r116,%r115,0d3ff0000000000000; @ ! %r116 bra $L14; .loc 1 147 31 add.f64 %r73,%r74,0d3ff0000000000000; bra $L1; $L12: .loc 1 153 32 mov.f64 %r119,0d4000000000000000; sub.f64 %r118,%r65,%r119; .loc 1 153 29 div.rn.f64 %r120,%r148,%r118; .loc 1 153 37 sub.f64 %r121,%r120,%r74; .loc 1 153 22 mov.f64 %r122,0d3ff0000000000000; sub.f64 %r73,%r122,%r121; bra $L1; $L25: .loc 1 154 32 mov.f64 %r124,0d4000000000000000; sub.f64 %r123,%r124,%r65; .loc 1 154 27 div.rn.f64 %r125,%r148,%r123; .loc 1 154 21 sub.f64 %r126,%r51,%r125; .loc 1 154 36 sub.f64 %r127,%r126,%r50; .loc 1 154 11 mov.f64 %r128,0d3ff0000000000000; sub.f64 %r58,%r128,%r127; mov.b64 %r129,%r58; shr.u64 %r130,%r129,32; cvt.u32.u64 %r131,%r130; .loc 1 155 4 setp.lt.s32 %r132,%r52,-1021; @ %r132 bra $L16; .loc 1 158 6 shl.b32 %r133,%r52,20; add.u32 %r134,%r133,%r131; cvt.u64.u32 %r135,%r134; shl.b64 %r136,%r135,32; and.b64 %r137,%r129,4294967295; or.b64 %r138,%r137,%r136; mov.b64 %r73,%r138; .loc 1 159 13 bra $L1; $L16: .loc 1 163 6 add.u32 %r139,%r52,1000; shl.b32 %r140,%r139,20; add.u32 %r141,%r140,%r131; cvt.u64.u32 %r142,%r141; shl.b64 %r143,%r142,32; and.b64 %r144,%r129,4294967295; or.b64 %r145,%r144,%r143; mov.b64 %r59,%r145; .loc 1 164 14 mul.f64 %r73,%r59,0d0170000000000000; bra $L1; $L14: .loc 1 151 5 mul.f64 %r60,%r74,%r74; .loc 1 152 34 fma.rn.f64 %r61,%r60,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 152 28 fma.rn.f64 %r62,%r60,%r61,0d3f11566aaf25de2c; .loc 1 152 22 fma.rn.f64 %r63,%r60,%r62,0dbf66c16c16bebd93; .loc 1 152 16 fma.rn.f64 %r64,%r60,%r63,0d3fc555555555553e; .loc 1 152 5 neg.f64 %r147,%r60; fma.rn.f64 %r65,%r147,%r64,%r74; mul.f64 %r148,%r74,%r65; bra $L12; $L1: .loc 1 166 1 mov.f64 %value,%r73; st.param.f64 [%value_out],%value; ret; } lib_a-e_fmod.o/ 0 0 0 644 11932 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmod .visible .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_fmod.c" // BEGIN VAR DEF: Zero .const .align 8 .u64 Zero[2] = {0,-9223372036854775808 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_fmod .visible .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r30; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r76; .reg .u32 %r83; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r112; .reg .u32 %r114; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u32 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u32 %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u16 %r160; .reg .u16 %r161; .reg .u16 %r162; .reg .u32 %r163; .reg .u16 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .pred %r173; .reg .pred %r174; .reg .pred %r175; .reg .pred %r177; .reg .pred %r178; .reg .pred %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .pred %r183; .reg .pred %r184; .reg .pred %r185; .reg .pred %r187; .reg .pred %r188; .reg .pred %r190; .reg .u32 %r191; .reg .pred %r192; .reg .u32 %r193; .reg .pred %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .u32 %r197; .reg .u32 %r198; .reg .u32 %r200; .reg .pred %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .u32 %r205; .reg .pred %r206; .reg .pred %r207; .reg .pred %r208; .reg .pred %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .pred %r214; .reg .u64 %r215; .reg .u32 %r216; .reg .u64 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .pred %r223; .reg .pred %r224; .reg .pred %r225; .reg .u32 %r226; .reg .pred %r227; .reg .pred %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .pred %r237; .reg .u32 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u64 %r244; .reg .u64 %r248; .reg .u64 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .pred %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u32 %r259; .reg .u32 %r260; .reg .u64 %r261; .reg .u64 %r265; .reg .u64 %r266; .reg .u64 %r267; .reg .pred %r269; .reg .u16 %r270; mov.f64 %r123,%ar0; mov.f64 %r124,%ar1; .loc 1 40 2 mov.b64 %r125,%r123; shr.u64 %r126,%r125,32; cvt.u32.u64 %r127,%r126; .loc 1 41 2 mov.b64 %r128,%r124; shr.u64 %r129,%r128,32; cvt.u32.u64 %r130,%r129; cvt.u32.u64 %r132,%r128; mov.u32 %r93,%r132; .loc 1 43 5 and.b32 %r100,%r127,2147483647; .loc 1 44 5 and.b32 %r101,%r130,2147483647; .loc 1 47 8 or.b32 %r133,%r101,%r132; .loc 1 47 4 set.u32.eq.u32 %r135,%r133,0; neg.s32 %r136,%r135; mov.u32 %r134,%r136; .loc 1 47 15 set.u32.gt.s32 %r138,%r100,2146435071; neg.s32 %r139,%r138; mov.u32 %r137,%r139; cvt.u16.u8 %r270,%r134; mov.u16 %r141,%r270; cvt.u16.u8 %r270,%r137; mov.u16 %r142,%r270; or.b16 %r140,%r141,%r142; cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L2; .loc 1 48 14 neg.s32 %r146,%r132; .loc 1 48 13 or.b32 %r147,%r146,%r132; .loc 1 48 18 shr.u32 %r148,%r147,31; .loc 1 48 8 or.b32 %r149,%r148,%r101; .loc 1 47 33 setp.le.u32 %r150,%r149,2146435072; @ %r150 bra $L3; $L2: .loc 1 49 15 mul.f64 %r30,%r123,%r124; .loc 1 49 18 div.rn.f64 %r122,%r30,%r30; bra $L1; $L3: cvt.u32.u64 %r152,%r125; mov.u32 %r96,%r152; .loc 1 42 5 and.b32 %r118,%r127,-2147483648; .loc 1 50 4 setp.gt.s32 %r153,%r100,%r101; @ %r153 bra $L5; .loc 1 51 12 set.u32.lt.s32 %r155,%r100,%r101; neg.s32 %r156,%r155; mov.u32 %r154,%r156; .loc 1 51 21 set.u32.lt.u32 %r158,%r152,%r132; neg.s32 %r159,%r158; mov.u32 %r157,%r159; .loc 1 51 16 cvt.u16.u8 %r270,%r154; mov.u16 %r161,%r270; cvt.u16.u8 %r270,%r157; mov.u16 %r162,%r270; or.b16 %r160,%r161,%r162; cvt.u32.u16 %r163,%r160; .loc 1 51 8 cvt.u16.u8 %r164,%r163; setp.ne.u16 %r165,%r164,0; @ %r165 bra $L39; .loc 1 52 8 setp.ne.u32 %r166,%r152,%r132; @ %r166 bra $L5; .loc 1 53 14 cvta.const.u64 %r167,Zero; .loc 1 53 29 shr.u32 %r168,%r118,31; .loc 1 53 14 cvt.u64.u32 %r169,%r168; shl.b64 %r170,%r169,3; add.u64 %r171,%r167,%r170; ld.f64 %r122,[%r171]; bra $L1; $L5: .loc 1 57 4 and.b32 %r172,%r127,2146435072; setp.ne.u32 %r173,%r172,0; @ %r173 bra $L6; .loc 1 58 8 setp.ne.u32 %r174,%r100,0; @ %r174 bra $L7; .loc 1 59 21 mov.u32 %r106,%r152; .loc 1 59 27 setp.le.s32 %r175,%r152,0; @ %r175 bra $L40; .loc 1 59 11 mov.u32 %r90,-1043; $L9: .loc 1 59 41 add.u32 %r90,%r90,-1; .loc 1 59 32 add.u32 %r106,%r106,%r106; .loc 1 59 27 setp.gt.s32 %r177,%r106,0; @ %r177 bra $L9; bra $L8; $L7: .loc 1 61 20 shl.b32 %r104,%r100,11; .loc 1 61 32 setp.le.s32 %r178,%r104,0; @ %r178 bra $L41; .loc 1 61 11 mov.u32 %r90,-1022; $L10: .loc 1 61 46 add.u32 %r90,%r90,-1; .loc 1 61 37 add.u32 %r104,%r104,%r104; .loc 1 61 32 setp.gt.s32 %r180,%r104,0; @ %r180 bra $L10; bra $L8; $L6: .loc 1 63 17 shr.s32 %r181,%r100,20; .loc 1 63 12 add.u32 %r90,%r181,-1023; bra $L8; $L40: .loc 1 59 11 mov.u32 %r90,-1043; bra $L8; $L41: .loc 1 61 11 mov.u32 %r90,-1022; $L8: .loc 1 66 4 and.b32 %r182,%r130,2146435072; setp.ne.u32 %r183,%r182,0; @ %r183 bra $L11; .loc 1 67 8 setp.ne.u32 %r184,%r101,0; @ %r184 bra $L12; .loc 1 68 21 mov.u32 %r109,%r132; .loc 1 68 27 setp.le.s32 %r185,%r132,0; @ %r185 bra $L42; .loc 1 68 11 mov.u32 %r116,-1043; $L14: .loc 1 68 41 add.u32 %r116,%r116,-1; .loc 1 68 32 add.u32 %r109,%r109,%r109; .loc 1 68 27 setp.gt.s32 %r187,%r109,0; @ %r187 bra $L14; bra $L13; $L12: .loc 1 70 20 shl.b32 %r108,%r101,11; .loc 1 70 32 setp.le.s32 %r188,%r108,0; @ %r188 bra $L43; .loc 1 70 11 mov.u32 %r116,-1022; $L15: .loc 1 70 46 add.u32 %r116,%r116,-1; .loc 1 70 37 add.u32 %r108,%r108,%r108; .loc 1 70 32 setp.gt.s32 %r190,%r108,0; @ %r190 bra $L15; bra $L13; $L11: .loc 1 72 17 shr.s32 %r191,%r101,20; .loc 1 72 12 add.u32 %r116,%r191,-1023; bra $L13; $L42: .loc 1 68 11 mov.u32 %r116,-1043; bra $L13; $L43: .loc 1 70 11 mov.u32 %r116,-1022; $L13: .loc 1 75 4 setp.lt.s32 %r192,%r90,-1022; @ %r192 bra $L16; .loc 1 76 33 and.b32 %r38,%r127,1048575; .loc 1 76 9 or.b32 %r97,%r38,1048576; bra $L17; $L16: .loc 1 78 8 mov.u32 %r193,-1022; sub.u32 %r110,%r193,%r90; .loc 1 79 8 setp.gt.s32 %r194,%r110,31; @ %r194 bra $L18; .loc 1 80 18 shl.b32 %r39,%r100,%r110; .loc 1 80 31 add.u32 %r195,%r90,1054; .loc 1 80 26 shr.u32 %r196,%r152,%r195; .loc 1 80 13 or.b32 %r97,%r196,%r39; .loc 1 81 13 shl.b32 %r96,%r152,%r110; bra $L17; $L18: .loc 1 83 14 mov.u32 %r198,-1054; sub.u32 %r197,%r198,%r90; .loc 1 83 10 shl.b32 %r97,%r152,%r197; .loc 1 84 6 mov.u32 %r96,0; $L17: .loc 1 87 4 setp.lt.s32 %r269,%r116,-1022; @ %r269 bra $L19; .loc 1 88 33 and.b32 %r44,%r130,1048575; .loc 1 88 9 or.b32 %r87,%r44,1048576; .loc 1 111 13 sub.u32 %r91,%r96,%r132; bra $L20; $L19: .loc 1 90 8 mov.u32 %r200,-1022; sub.u32 %r112,%r200,%r116; .loc 1 91 8 setp.gt.s32 %r201,%r112,31; @ %r201 bra $L21; .loc 1 92 18 shl.b32 %r45,%r101,%r112; .loc 1 92 31 add.u32 %r202,%r116,1054; .loc 1 92 26 shr.u32 %r203,%r132,%r202; .loc 1 92 13 or.b32 %r87,%r203,%r45; .loc 1 93 13 shl.b32 %r93,%r132,%r112; .loc 1 111 13 sub.u32 %r91,%r96,%r93; bra $L20; $L21: .loc 1 95 14 mov.u32 %r205,-1054; sub.u32 %r204,%r205,%r116; .loc 1 95 10 shl.b32 %r87,%r132,%r204; .loc 1 101 4 sub.u32 %r92,%r90,%r116; .loc 1 102 8 setp.ne.u32 %r206,%r90,%r116; @ %r206 bra $L44; bra $L55; $L20: .loc 1 101 4 sub.u32 %r92,%r90,%r116; .loc 1 102 8 setp.eq.u32 %r207,%r90,%r116; @ ! %r207 bra $L22; bra $L24; $L44: .loc 1 96 6 mov.u32 %r93,0; $L22: mov.u32 %r119,%r92; $L29: .loc 1 103 8 sub.u32 %r88,%r97,%r87; .loc 1 103 27 setp.le.u32 %r208,%r93,%r96; @ %r208 bra $L25; .loc 1 103 38 add.u32 %r88,%r88,-1; $L25: .loc 1 104 8 setp.ge.s32 %r209,%r88,0; @ %r209 bra $L26; .loc 1 104 22 add.u32 %r210,%r97,%r97; .loc 1 104 29 shr.u32 %r211,%r96,31; .loc 1 104 25 add.u32 %r97,%r210,%r211; .loc 1 104 39 add.u32 %r96,%r96,%r96; bra $L27; $L26: .loc 1 103 17 sub.u32 %r117,%r96,%r93; .loc 1 106 13 or.b32 %r213,%r88,%r117; .loc 1 106 9 setp.ne.u32 %r214,%r213,0; @ %r214 bra $L28; .loc 1 107 18 cvta.const.u64 %r215,Zero; .loc 1 107 33 shr.u32 %r216,%r118,31; .loc 1 107 18 cvt.u64.u32 %r217,%r216; shl.b64 %r218,%r217,3; add.u64 %r219,%r215,%r218; ld.f64 %r122,[%r219]; bra $L1; $L28: .loc 1 108 14 add.u32 %r220,%r88,%r88; .loc 1 108 21 shr.u32 %r221,%r117,31; .loc 1 108 17 add.u32 %r97,%r220,%r221; .loc 1 108 31 add.u32 %r96,%r117,%r117; $L27: .loc 1 102 8 add.u32 %r119,%r119,-1; setp.ne.u32 %r223,%r119,0; @ %r223 bra $L29; .loc 1 111 13 sub.u32 %r91,%r96,%r93; $L24: .loc 1 111 4 sub.u32 %r89,%r97,%r87; .loc 1 111 23 setp.le.u32 %r224,%r93,%r96; @ %r224 bra $L30; .loc 1 111 34 add.u32 %r89,%r89,-1; $L30: .loc 1 112 4 setp.lt.s32 %r225,%r89,0; selp.u32 %r96,%r96,%r91,%r225; selp.u32 %r97,%r97,%r89,%r225; .loc 1 115 8 or.b32 %r226,%r97,%r96; .loc 1 115 4 setp.eq.u32 %r227,%r226,0; @ %r227 bra $L32; .loc 1 117 10 setp.le.s32 %r228,%r97,1048575; @ %r228 bra $L33; bra $L34; $L32: .loc 1 116 17 cvta.const.u64 %r229,Zero; .loc 1 116 32 shr.u32 %r230,%r118,31; .loc 1 116 17 cvt.u64.u32 %r231,%r230; shl.b64 %r232,%r231,3; add.u64 %r233,%r229,%r232; ld.f64 %r122,[%r233]; bra $L1; $L33: .loc 1 118 13 add.u32 %r234,%r97,%r97; .loc 1 118 20 shr.u32 %r235,%r96,31; .loc 1 118 16 add.u32 %r97,%r234,%r235; .loc 1 118 30 add.u32 %r96,%r96,%r96; .loc 1 119 9 add.u32 %r116,%r116,-1; .loc 1 117 10 setp.le.s32 %r237,%r97,1048575; @ %r237 bra $L33; setp.lt.s32 %r269,%r116,-1022; $L34: .loc 1 121 4 @ %r269 bra $L35; .loc 1 122 15 add.u32 %r239,%r97,-1048576; .loc 1 123 6 or.b32 %r240,%r239,%r118; .loc 1 122 32 add.u32 %r241,%r116,1023; .loc 1 122 38 shl.b32 %r242,%r241,20; .loc 1 123 6 or.b32 %r243,%r240,%r242; cvt.u64.u32 %r244,%r243; cvt.u64.u32 %r248,%r96; shl.b64 %r249,%r244,32; or.b64 %r250,%r249,%r248; mov.b64 %r122,%r250; bra $L1; $L35: .loc 1 125 8 mov.u32 %r251,-1022; sub.u32 %r114,%r251,%r116; .loc 1 126 8 setp.gt.s32 %r252,%r114,20; @ %r252 bra $L36; .loc 1 127 11 shr.u32 %r76,%r96,%r114; .loc 1 127 36 add.u32 %r253,%r116,1054; .loc 1 127 31 shl.b32 %r254,%r97,%r253; .loc 1 127 6 or.b32 %r94,%r254,%r76; .loc 1 128 6 shr.s32 %r255,%r97,%r114; .loc 1 134 6 or.b32 %r118,%r118,%r255; bra $L37; $L36: .loc 1 129 16 setp.gt.s32 %r256,%r114,31; @ %r256 bra $L38; .loc 1 130 24 shr.u32 %r83,%r96,%r114; .loc 1 130 16 add.u32 %r257,%r116,1054; .loc 1 130 11 shl.b32 %r258,%r97,%r257; .loc 1 130 6 or.b32 %r94,%r258,%r83; bra $L37; $L38: .loc 1 132 14 mov.u32 %r260,-1054; sub.u32 %r259,%r260,%r116; .loc 1 132 10 shr.s32 %r94,%r97,%r259; $L37: .loc 1 134 6 cvt.u64.u32 %r261,%r118; cvt.u64.u32 %r265,%r94; shl.b64 %r266,%r261,32; or.b64 %r267,%r266,%r265; mov.b64 %r122,%r267; bra $L1; $L39: .loc 1 51 34 mov.f64 %r122,%r123; bra $L1; $L55: .loc 1 111 4 sub.u32 %r89,%r97,%r87; mov.u32 %r91,%r96; bra $L30; $L1: .loc 1 138 1 mov.f64 %value,%r122; st.param.f64 [%value_out],%value; ret; } lib_a-e_hypot.o/0 0 0 644 6369 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypot .visible .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_hypot .visible .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r39; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r75; .reg .u64 %r76; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r83; .reg .u32 %r84; .reg .f64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u32 %r105; .reg .u32 %r107; .reg .u32 %r109; .reg .pred %r110; .reg .u32 %r111; .reg .u32 %r113; .reg .u32 %r115; .reg .pred %r116; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .pred %r126; .reg .u64 %r127; .reg .u32 %r128; .reg .u32 %r130; .reg .pred %r131; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .pred %r140; .reg .u64 %r142; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r149; .reg .u64 %r151; .reg .u32 %r154; .reg .u64 %r155; .reg .u64 %r156; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r162; .reg .pred %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u64 %r171; .reg .u64 %r172; mov.f64 %r82,%ar0; mov.f64 %r83,%ar1; .loc 1 60 2 mov.b64 %r86,%r82; shr.u64 %r87,%r86,32; cvt.u32.u64 %r88,%r87; .loc 1 61 5 and.b32 %r51,%r88,2147483647; .loc 1 62 2 mov.b64 %r89,%r83; shr.u64 %r90,%r89,32; cvt.u32.u64 %r91,%r90; .loc 1 63 5 and.b32 %r52,%r91,2147483647; .loc 1 64 4 setp.ge.s32 %r92,%r51,%r52; @ %r92 bra $L2; mov.u32 %r84,%r51; mov.u32 %r51,%r52; mov.u32 %r52,%r84; mov.f64 %r85,%r82; .loc 1 64 16 mov.f64 %r82,%r83; .loc 1 64 20 mov.f64 %r83,%r85; $L2: .loc 1 65 2 mov.b64 %r71,%r82; cvt.u64.u32 %r171,%r51; shl.b64 %r94,%r171,32; and.b64 %r95,%r71,4294967295; or.b64 %r96,%r95,%r94; mov.b64 %r81,%r96; .loc 1 66 2 mov.b64 %r72,%r83; cvt.u64.u32 %r172,%r52; shl.b64 %r98,%r172,32; and.b64 %r99,%r72,4294967295; or.b64 %r100,%r99,%r98; mov.b64 %r49,%r100; .loc 1 67 8 sub.u32 %r101,%r51,%r52; .loc 1 67 4 setp.le.s32 %r102,%r101,62914560; @ %r102 bra $L3; .loc 1 67 33 add.f64 %r81,%r81,%r49; bra $L1; $L3: .loc 1 69 4 setp.le.s32 %r103,%r51,1596981248; @ %r103 bra $L13; .loc 1 70 7 setp.le.s32 %r104,%r51,2146435071; @ %r104 bra $L6; .loc 1 74 16 and.b32 %r105,%r51,1048575; .loc 1 74 25 cvt.u32.u64 %r107,%r96; or.b32 %r109,%r105,%r107; .loc 1 74 11 setp.eq.u32 %r110,%r109,0; @ %r110 bra $L7; .loc 1 72 11 add.f64 %r81,%r81,%r49; $L7: .loc 1 76 16 xor.b32 %r111,%r52,2146435072; .loc 1 76 28 cvt.u32.u64 %r113,%r100; or.b32 %r115,%r111,%r113; .loc 1 76 11 setp.ne.u32 %r116,%r115,0; .loc 1 76 40 selp.f64 %r81,%r81,%r49,%r116; bra $L1; $L6: .loc 1 80 8 add.u32 %r51,%r51,-629145600; .loc 1 80 26 add.u32 %r52,%r52,-629145600; .loc 1 81 5 cvt.u64.u32 %r171,%r51; shl.b64 %r118,%r171,32; and.b64 %r119,%r96,4294967295; or.b64 %r120,%r119,%r118; mov.b64 %r81,%r120; .loc 1 82 5 cvt.u64.u32 %r172,%r52; shl.b64 %r122,%r172,32; and.b64 %r123,%r100,4294967295; or.b64 %r124,%r123,%r122; mov.b64 %r49,%r124; .loc 1 80 43 mov.u32 %r50,600; bra $L5; $L13: .loc 1 68 3 mov.u32 %r50,0; $L5: .loc 1 84 4 setp.gt.s32 %r125,%r52,548405247; @ %r125 bra $L8; .loc 1 85 8 setp.gt.s32 %r126,%r52,1048575; @ %r126 bra $L9; .loc 1 88 9 mov.b64 %r127,%r49; cvt.u32.u64 %r128,%r127; or.b32 %r130,%r52,%r128; .loc 1 88 5 setp.eq.u32 %r131,%r130,0; @ %r131 bra $L1; .loc 1 91 5 mul.f64 %r49,%r49,0d7fd0000000000000; .loc 1 92 5 mul.f64 %r81,%r81,0d7fd0000000000000; .loc 1 93 5 add.u32 %r50,%r50,-1022; bra $L8; $L9: .loc 1 95 13 add.u32 %r51,%r51,629145600; .loc 1 96 6 add.u32 %r52,%r52,629145600; .loc 1 97 5 add.u32 %r50,%r50,-600; .loc 1 98 3 mov.b64 %r75,%r81; cvt.u64.u32 %r171,%r51; shl.b64 %r133,%r171,32; and.b64 %r134,%r75,4294967295; or.b64 %r135,%r134,%r133; mov.b64 %r81,%r135; .loc 1 99 3 mov.b64 %r76,%r49; cvt.u64.u32 %r172,%r52; shl.b64 %r137,%r172,32; and.b64 %r138,%r76,4294967295; or.b64 %r139,%r138,%r137; mov.b64 %r49,%r139; $L8: .loc 1 103 4 sub.f64 %r60,%r81,%r49; .loc 1 104 5 setp.lt.f64 %r140,%r49,%r60; @ ! %r140 bra $L24; .loc 1 106 6 shl.b64 %r142,%r171,32; mov.b64 %r65,%r142; .loc 1 108 45 add.f64 %r145,%r81,%r65; .loc 1 107 9 sub.f64 %r146,%r81,%r65; .loc 1 108 42 mul.f64 %r147,%r145,%r146; fma.rn.f64 %r68,%r49,%r49,%r147; .loc 1 108 11 fma.rn.f64 %r39,%r65,%r65,%r68; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r149,[%value_in]; } mov.f64 %r81,%r149; bra $L12; $L24: .loc 1 112 6 shl.b64 %r151,%r172,32; mov.b64 %r61,%r151; .loc 1 113 9 sub.f64 %r62,%r49,%r61; .loc 1 115 6 add.u32 %r154,%r51,1048576; cvt.u64.u32 %r155,%r154; shl.b64 %r156,%r155,32; mov.b64 %r63,%r156; .loc 1 116 9 neg.f64 %r159,%r63; fma.rn.f64 %r64,%r81,0d4000000000000000,%r159; .loc 1 117 49 mul.f64 %r160,%r49,%r64; .loc 1 117 46 fma.rn.f64 %r44,%r62,%r63,%r160; fma.rn.f64 %r69,%r60,%r60,%r44; .loc 1 117 11 fma.rn.f64 %r45,%r61,%r63,%r69; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r45; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r162,[%value_in]; } mov.f64 %r81,%r162; $L12: .loc 1 119 4 setp.eq.u32 %r163,%r50,0; @ %r163 bra $L1; .loc 1 123 6 shl.b32 %r164,%r50,20; add.u32 %r165,%r164,1072693248; cvt.u64.u32 %r166,%r165; shl.b64 %r167,%r166,32; mov.b64 %r67,%r167; .loc 1 124 15 mul.f64 %r81,%r81,%r67; $L1: .loc 1 126 1 mov.f64 %value,%r81; st.param.f64 [%value_out],%value; ret; } lib_a-e_j0.o/ 0 0 0 644 18378 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: pzero .func (.param .f64 %value_out) pzero (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_j0.c" // BEGIN FUNCTION DECL: qzero .func (.param .f64 %value_out) qzero (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .visible .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .visible .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN FUNCTION DEF: pzero .func (.param .f64 %value_out) pzero (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .f64 %r58; .reg .f64 %r60; mov.f64 %r50,%ar0; .loc 1 339 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r53,%r52; .loc 1 340 5 and.b32 %r36,%r53,2147483647; .loc 1 341 5 setp.gt.s32 %r54,%r36,1102053375; @ %r54 bra $L4; .loc 1 342 9 setp.gt.s32 %r55,%r36,1075838975; @ %r55 bra $L5; .loc 1 343 9 setp.gt.s32 %r56,%r36,1074933386; @ %r56 bra $L6; .loc 1 344 9 setp.le.s32 %r57,%r36,1074191212; selp.f64 %r48,0d402d50b344391809,0d4065b296fc379081,%r57; selp.f64 %r47,0d40633c033ab6faff,0d40919ffcb8c39b7e,%r57; selp.f64 %r46,0d4070e78642ea079b,0d4092a66e6d1061d6,%r57; selp.f64 %r45,0d4061069e0ee8878f,0d40769839464a7c0e,%r57; selp.f64 %r44,0dc009de81af8fe70f,0dc03f72aca892d80f,%r57; selp.f64 %r43,0dc02662e6c5246303,0dc04d0a22420a1a45,%r57; selp.f64 %r42,0dc01e8af3edafa7f3,0dc035f74a4cb94e14,%r57; selp.f64 %r41,0dbff736398a24a843,0dc00345b2aea48074,%r57; selp.f64 %r40,0dbfb1ff62495e1e42,0dbfb1fff6f7c0e24b,%r57; selp.f64 %r28,0d40363865908b5959,0d4041ed9284077dd3,%r57; selp.f64 %r23,0dbe77d316e927026d,0dbe25e1036fe1aa86,%r57; bra $L3; $L5: mov.f64 %r48,0d40e741774f2c49dc; mov.f64 %r47,0d40fc810f8f9fa9bd; mov.f64 %r46,0d40e3d2bb6eb6b05f; mov.f64 %r45,0d40adf37d50596938; mov.f64 %r44,0dc0b4850b36cc643d; mov.f64 %r43,0dc0a36a6ecd4dcafc; mov.f64 %r42,0dc07011027b19e863; mov.f64 %r41,0dc02029d0b44fa779; mov.f64 %r40,0dbfb1fffffffffd32; .loc 1 342 36 mov.f64 %r28,0d405d223307a96751; .loc 1 342 28 mov.f64 %r23,0d0000000000000000; bra $L3; $L6: mov.f64 %r48,0d40a2cc1dc70be864; mov.f64 %r47,0d40c2ccb8fa76fa38; mov.f64 %r46,0d40b75af88fbe1d60; mov.f64 %r45,0d40906d025c7e2864; mov.f64 %r44,0dc075a6ef28a38bd7; mov.f64 %r43,0dc074b3b36742cc63; mov.f64 %r42,0dc050eb2f5a7d1783; mov.f64 %r41,0dc010a370f90c6bbf; mov.f64 %r40,0dbfb1ffffe69afbc6; .loc 1 343 36 mov.f64 %r28,0d404e60810c98c5de; .loc 1 343 28 mov.f64 %r23,0dbda918b147e495cc; $L3: .loc 1 346 12 mul.f64 %r58,%r50,%r50; .loc 1 346 4 rcp.rn.f64 %r37,%r58; .loc 1 347 42 fma.rn.f64 %r24,%r37,%r44,%r43; .loc 1 347 34 fma.rn.f64 %r25,%r24,%r37,%r42; .loc 1 347 26 fma.rn.f64 %r26,%r25,%r37,%r41; .loc 1 347 18 fma.rn.f64 %r27,%r26,%r37,%r40; .loc 1 347 4 fma.rn.f64 %r38,%r27,%r37,%r23; .loc 1 348 41 fma.rn.f64 %r30,%r37,%r48,%r47; .loc 1 348 33 fma.rn.f64 %r31,%r30,%r37,%r46; .loc 1 348 25 fma.rn.f64 %r32,%r31,%r37,%r45; .loc 1 348 17 fma.rn.f64 %r33,%r32,%r37,%r28; .loc 1 348 4 fma.rn.f64 %r39,%r33,%r37,0d3ff0000000000000; .loc 1 349 15 div.rn.f64 %r60,%r38,%r39; .loc 1 349 12 add.f64 %r49,%r60,0d3ff0000000000000; bra $L1; $L4: .loc 1 341 33 mov.f64 %r49,0d3ff0000000000000; $L1: .loc 1 350 1 mov.f64 %value,%r49; st.param.f64 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qzero .func (.param .f64 %value_out) qzero (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; mov.f64 %r53,%ar0; .loc 1 476 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r56,%r55; .loc 1 477 5 and.b32 %r38,%r56,2147483647; .loc 1 478 5 setp.le.s32 %r57,%r38,1102053375; @ %r57 bra $L9; .loc 1 478 38 mov.f64 %r58,0dbfc0000000000000; div.rn.f64 %r52,%r58,%r53; bra $L8; $L9: .loc 1 479 9 setp.gt.s32 %r59,%r38,1075838975; @ %r59 bra $L12; .loc 1 480 9 setp.gt.s32 %r60,%r38,1074933386; @ %r60 bra $L13; .loc 1 481 9 setp.le.s32 %r61,%r38,1074191212; selp.f64 %r51,0dc0153e6af8b32931,0dc062a7eb201cf40f,%r61; selp.f64 %r50,0d406a95530e001365,0d40a3a8aad94fb1c0,%r61; selp.f64 %r49,0d408b977c9c5cc214,0d40b93c6cd7c76a28,%r61; selp.f64 %r48,0d408a664522b3bf22,0d40acf04be44dfc63,%r61; selp.f64 %r47,0d4070d591e4d14b40,0d40862d8386544eb3,%r61; selp.f64 %r46,0d403040b171814bb4,0d4064d77c81fa21e0,%r61; selp.f64 %r45,0d403faa8e29fbdc4a,0d406559dbe25efd1f,%r61; selp.f64 %r44,0d402cfdbfaaf96fe5,0d40454f98962daedd,%r61; selp.f64 %r43,0d3ffff897e727779c,0d400ac0fc61149cf5,%r61; selp.f64 %r42,0d3fb2bec53e883e34,0d3fb2bfee0e8d0842,%r61; selp.f64 %r28,0d403e5d96f7c07aed,0d40486122bfe343a6,%r61; selp.f64 %r23,0d3e84313b54f76bdb,0d3e32cd036adecb82,%r61; bra $L11; $L12: mov.f64 %r51,0dc114fd6d2c9530c5; mov.f64 %r50,0d4129a66b28de0b3d; mov.f64 %r49,0d412883da83a52b43; mov.f64 %r48,0d4101665254d38c3f; mov.f64 %r47,0d40bfa2584e6b0563; mov.f64 %r46,0d40e212d40e901566; mov.f64 %r45,0d40c14d993e18f46d; mov.f64 %r44,0d40816d6315301825; mov.f64 %r43,0d402789525bb334d6; mov.f64 %r42,0d3fb2bffffffffe2c; .loc 1 479 36 mov.f64 %r28,0d406478d5365b39bc; .loc 1 479 28 mov.f64 %r23,0d0000000000000000; bra $L11; $L13: mov.f64 %r51,0dc0b4ea57bedbc609; mov.f64 %r50,0d40e191181f7a54a0; mov.f64 %r49,0d40ebb5e397e02372; mov.f64 %r48,0d40d267d27b591e6d; mov.f64 %r47,0d40a03ba0da21c0ce; mov.f64 %r46,0d409f17e953c6e3a6; mov.f64 %r45,0d40900cf99dc8c481; mov.f64 %r44,0d4060e3920a8788e9; mov.f64 %r43,0d401757b0b9953dd3; mov.f64 %r42,0d3fb2bfffd172b04c; .loc 1 480 36 mov.f64 %r28,0d4054b1b3fb5e1543; .loc 1 480 28 mov.f64 %r23,0d3db43d8f29cc8cd9; $L11: .loc 1 483 12 mul.f64 %r62,%r53,%r53; .loc 1 483 4 rcp.rn.f64 %r39,%r62; .loc 1 484 42 fma.rn.f64 %r24,%r39,%r46,%r45; .loc 1 484 34 fma.rn.f64 %r25,%r24,%r39,%r44; .loc 1 484 26 fma.rn.f64 %r26,%r25,%r39,%r43; .loc 1 484 18 fma.rn.f64 %r27,%r26,%r39,%r42; .loc 1 484 4 fma.rn.f64 %r40,%r27,%r39,%r23; .loc 1 485 49 fma.rn.f64 %r30,%r39,%r51,%r50; .loc 1 485 41 fma.rn.f64 %r31,%r30,%r39,%r49; .loc 1 485 33 fma.rn.f64 %r32,%r31,%r39,%r48; .loc 1 485 25 fma.rn.f64 %r33,%r32,%r39,%r47; .loc 1 485 17 fma.rn.f64 %r34,%r33,%r39,%r28; .loc 1 485 4 fma.rn.f64 %r41,%r34,%r39,0d3ff0000000000000; .loc 1 486 19 div.rn.f64 %r64,%r40,%r41; .loc 1 486 16 mov.f64 %r66,0d3fc0000000000000; sub.f64 %r65,%r64,%r66; .loc 1 486 22 div.rn.f64 %r52,%r65,%r53; $L8: .loc 1 487 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j0 .visible .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r45; .reg .f64 %r46; .reg .u32 %r48; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .f64 %r69; .reg .f64 %r72; .reg .u32 %r73; .reg .pred %r74; .reg .f64 %r76; .reg .f64 %r78; .reg .pred %r79; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r83; .reg .pred %r84; .reg .pred %r85; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r90; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r96; .reg .f64 %r97; .reg .pred %r98; .reg .f64 %r99; .reg .pred %r100; .reg .pred %r101; .reg .f64 %r103; .reg .pred %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r108; mov.f64 %r64,%ar0; .loc 1 104 2 mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r67,%r66; .loc 1 105 5 and.b32 %r48,%r67,2147483647; .loc 1 106 4 setp.le.s32 %r68,%r48,2146435071; @ %r68 bra $L16; .loc 1 106 34 mul.f64 %r69,%r64,%r64; .loc 1 106 31 rcp.rn.f64 %r63,%r69; bra $L15; $L16: .loc 1 107 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 108 4 and.b32 %r73,%r67,1073741824; setp.eq.u32 %r74,%r73,0; @ %r74 bra $L18; .loc 1 109 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),sin,(%out_arg1); ld.param.f64 %r76,[%value_in]; } .loc 1 110 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),cos,(%out_arg1); ld.param.f64 %r78,[%value_in]; } .loc 1 111 6 sub.f64 %r45,%r76,%r78; .loc 1 112 6 add.f64 %r46,%r76,%r78; .loc 1 113 5 setp.gt.s32 %r79,%r48,2145386495; @ %r79 bra $L19; .loc 1 114 12 add.f64 %r81,%r72,%r72; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),cos,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 114 9 neg.f64 %r56,%r82; .loc 1 115 13 mul.f64 %r83,%r76,%r78; .loc 1 115 10 setp.lt.f64 %r84,%r83,0d0000000000000000; @ ! %r84 bra $L29; .loc 1 115 26 div.rn.f64 %r46,%r56,%r45; bra $L19; $L29: .loc 1 116 20 div.rn.f64 %r45,%r56,%r46; $L19: .loc 1 122 5 setp.le.s32 %r85,%r48,1207959552; @ %r85 bra $L22; .loc 1 122 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 122 35 mul.f64 %r88,%r46,0d3fe20dd750429b6d; .loc 1 122 23 div.rn.f64 %r63,%r88,%r87; bra $L15; $L22: .loc 1 124 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),pzero,(%out_arg1); ld.param.f64 %r90,[%value_in]; } .loc 1 124 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),qzero,(%out_arg1); ld.param.f64 %r92,[%value_in]; } .loc 1 125 28 mul.f64 %r93,%r45,%r92; .loc 1 125 26 neg.f64 %r94,%r93; fma.rn.f64 %r29,%r46,%r90,%r94; .loc 1 125 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r96,[%value_in]; } .loc 1 125 20 mul.f64 %r97,%r29,0d3fe20dd750429b6d; .loc 1 125 9 div.rn.f64 %r63,%r97,%r96; bra $L15; $L18: .loc 1 129 4 setp.gt.s32 %r98,%r48,1059061759; @ %r98 bra $L23; .loc 1 130 13 add.f64 %r99,%r72,0d7e37e43c8800759c; .loc 1 130 8 setp.gt.f64 %r100,%r99,0d3ff0000000000000; @ ! %r100 bra $L23; .loc 1 131 12 setp.le.s32 %r101,%r48,1044381695; @ %r101 bra $L26; .loc 1 132 33 mul.f64 %r103,%r72,0dbfd0000000000000; fma.rn.f64 %r63,%r103,%r72,0d3ff0000000000000; bra $L15; $L23: .loc 1 135 4 mul.f64 %r51,%r72,%r72; .loc 1 136 27 fma.rn.f64 %r34,%r51,0dbe33d5e773d63fce,0d3ebeb1d10c503919; .loc 1 136 20 fma.rn.f64 %r35,%r34,%r51,0dbf28e6a5b61ac6e9; .loc 1 136 13 fma.rn.f64 %r36,%r35,%r51,0d3f8ffffffffffffd; .loc 1 136 4 mul.f64 %r52,%r36,%r51; .loc 1 137 31 fma.rn.f64 %r37,%r51,0d3e1408bcf4745d8f,0d3ea13b54ce84d5a9; .loc 1 137 24 fma.rn.f64 %r38,%r37,%r51,0d3f1ea6d2dd57dbf4; .loc 1 137 17 fma.rn.f64 %r39,%r38,%r51,0d3f8ffce882c8c2a4; .loc 1 137 4 fma.rn.f64 %r53,%r39,%r51,0d3ff0000000000000; .loc 1 139 30 div.rn.f64 %r62,%r52,%r53; .loc 1 138 4 setp.gt.s32 %r104,%r48,1072693247; @ %r104 bra $L25; .loc 1 139 27 mov.f64 %r106,0d3fd0000000000000; sub.f64 %r105,%r62,%r106; .loc 1 139 17 fma.rn.f64 %r63,%r105,%r51,0d3ff0000000000000; bra $L15; $L25: .loc 1 142 17 fma.rn.f64 %r41,%r72,0d3fe0000000000000,0d3ff0000000000000; .loc 1 142 25 fma.rn.f64 %r42,%r72,0dbfe0000000000000,0d3ff0000000000000; .loc 1 142 30 mul.f64 %r108,%r51,%r62; .loc 1 142 28 fma.rn.f64 %r63,%r41,%r42,%r108; bra $L15; $L26: .loc 1 131 35 mov.f64 %r63,0d3ff0000000000000; $L15: .loc 1 144 1 mov.f64 %value,%r63; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y0 .visible .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r46; .reg .f64 %r47; .reg .u32 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r62; .reg .f64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r70; .reg .u32 %r72; .reg .pred %r73; .reg .f64 %r74; .reg .pred %r75; .reg .f64 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .f64 %r80; .reg .f64 %r82; .reg .pred %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r94; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r100; .reg .pred %r101; .reg .f64 %r103; .reg .f64 %r105; .reg .f64 %r107; .reg .f64 %r108; mov.f64 %r63,%ar0; .loc 1 173 2 mov.b64 %r64,%r63; shr.u64 %r65,%r64,32; cvt.u32.u64 %r66,%r65; .loc 1 174 12 and.b32 %r50,%r66,2147483647; .loc 1 176 4 setp.le.s32 %r67,%r50,2146435071; @ %r67 bra $L31; .loc 1 176 35 fma.rn.f64 %r22,%r63,%r63,%r63; .loc 1 176 32 rcp.rn.f64 %r62,%r22; bra $L30; $L31: .loc 1 173 2 cvt.u32.u64 %r70,%r64; .loc 1 177 15 or.b32 %r72,%r70,%r50; .loc 1 177 11 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L33; .loc 1 177 35 mov.f64 %r74,0dbff0000000000000; div.rn.f64 %r62,%r74,0d0000000000000000; bra $L30; $L33: .loc 1 178 11 setp.ge.s32 %r75,%r66,0; @ %r75 bra $L34; .loc 1 178 29 mov.f64 %r76,0d0000000000000000; div.rn.f64 %r62,%r76,%r76; bra $L30; $L34: .loc 1 179 11 and.b32 %r77,%r66,1073741824; setp.eq.u32 %r78,%r77,0; @ %r78 bra $L35; .loc 1 191 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),sin,(%out_arg1); ld.param.f64 %r80,[%value_in]; } .loc 1 192 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),cos,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 193 20 sub.f64 %r46,%r80,%r82; .loc 1 194 20 add.f64 %r47,%r80,%r82; .loc 1 199 19 setp.gt.s32 %r83,%r50,2145386495; @ %r83 bra $L36; .loc 1 200 26 add.f64 %r85,%r63,%r63; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r85; call (%value_in),cos,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 200 23 neg.f64 %r56,%r86; .loc 1 201 27 mul.f64 %r87,%r80,%r82; .loc 1 201 24 setp.lt.f64 %r88,%r87,0d0000000000000000; @ ! %r88 bra $L42; .loc 1 201 40 div.rn.f64 %r47,%r56,%r46; bra $L36; $L42: .loc 1 202 40 div.rn.f64 %r46,%r56,%r47; $L36: .loc 1 204 19 setp.le.s32 %r89,%r50,1207959552; @ %r89 bra $L39; .loc 1 204 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r91,[%value_in]; } .loc 1 204 49 mul.f64 %r92,%r46,0d3fe20dd750429b6d; .loc 1 204 37 div.rn.f64 %r62,%r92,%r91; bra $L30; $L39: .loc 1 206 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),pzero,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 206 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),qzero,(%out_arg1); ld.param.f64 %r96,[%value_in]; } .loc 1 207 42 mul.f64 %r97,%r47,%r96; .loc 1 207 40 fma.rn.f64 %r30,%r46,%r94,%r97; .loc 1 207 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 207 34 mul.f64 %r100,%r30,0d3fe20dd750429b6d; .loc 1 207 23 div.rn.f64 %r62,%r100,%r99; bra $L30; $L35: .loc 1 211 4 setp.gt.s32 %r101,%r50,1044381696; @ %r101 bra $L40; .loc 1 212 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r103,[%value_in]; } .loc 1 212 17 fma.rn.f64 %r62,%r103,0d3fe45f306dc9c883,0dbfb2e4d699cbd01f; bra $L30; $L40: .loc 1 214 4 mul.f64 %r51,%r63,%r63; .loc 1 215 44 fma.rn.f64 %r34,%r51,0dbdc5e43d693fb3c8,0d3e5500573b4eabd4; .loc 1 215 37 fma.rn.f64 %r35,%r34,%r51,0dbecffea773d25cad; .loc 1 215 30 fma.rn.f64 %r36,%r35,%r51,0d3f36c54d20b29b6b; .loc 1 215 23 fma.rn.f64 %r37,%r36,%r51,0dbf8c4ce8b16cfa97; .loc 1 215 16 fma.rn.f64 %r38,%r37,%r51,0d3fc69d019de9e3fc; .loc 1 215 4 fma.rn.f64 %r52,%r38,%r51,0dbfb2e4d699cbd01f; .loc 1 216 30 fma.rn.f64 %r39,%r51,0d3dfe50183bd6d9ef,0d3e91642d7ff202fd; .loc 1 216 23 fma.rn.f64 %r40,%r39,%r51,0d3f13ecbbf578c6c1; .loc 1 216 16 fma.rn.f64 %r41,%r40,%r51,0d3f8a127091c9c71a; .loc 1 216 4 fma.rn.f64 %r53,%r41,%r51,0d3ff0000000000000; .loc 1 217 10 div.rn.f64 %r42,%r52,%r53; .loc 1 217 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r105,[%value_in]; } .loc 1 217 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r107,[%value_in]; } .loc 1 217 35 mul.f64 %r108,%r105,%r107; .loc 1 217 13 fma.rn.f64 %r62,%r108,0d3fe45f306dc9c883,%r42; $L30: .loc 1 218 1 mov.f64 %value,%r62; st.param.f64 [%value_out],%value; ret; } lib_a-e_j1.o/ 0 0 0 644 17696 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: pone .func (.param .f64 %value_out) pone (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_j1.c" // BEGIN FUNCTION DECL: qone .func (.param .f64 %value_out) qone (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .visible .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .visible .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN FUNCTION DEF: pone .func (.param .f64 %value_out) pone (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .f64 %r58; .reg .f64 %r60; mov.f64 %r50,%ar0; .loc 1 337 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r53,%r52; .loc 1 338 5 and.b32 %r36,%r53,2147483647; .loc 1 339 5 setp.gt.s32 %r54,%r36,1102053375; @ %r54 bra $L4; .loc 1 340 9 setp.gt.s32 %r55,%r36,1075838975; @ %r55 bra $L5; .loc 1 341 16 setp.gt.s32 %r56,%r36,1074933386; @ %r56 bra $L6; .loc 1 342 16 setp.le.s32 %r57,%r36,1074191212; selp.f64 %r48,0d4020bab1f44e5192,0d4059f26d7c2eed53,%r57; selp.f64 %r47,0d405d6b7ada1884a9,0d408bd67da32e31e9,%r57; selp.f64 %r46,0d406d08d8d5a2dbd9,0d40905b7c5037d523,%r57; selp.f64 %r45,0d405f529314f92cd5,0d40750c3307f1a75f,%r57; selp.f64 %r44,0d40144b49a574c1fe,0d4048478f8ea83ee5,%r57; selp.f64 %r43,0d4031b1a8177f8ee2,0d4056c3854d2c1837,%r57; selp.f64 %r42,0d40287c377f71a964,0d40418f489da6d129,%r57; selp.f64 %r41,0d4002f2b7f98faec0,0d400f76bce85ead8a,%r57; selp.f64 %r40,0d3fbdff42be760d83,0d3fbdfff55b21d17b,%r57; selp.f64 %r28,0d40356fbd8ad5ecdc,0d40416549a134069c,%r57; selp.f64 %r23,0d3e7ce9d4f65544f4,0d3e29fc21a7ad9edd,%r57; bra $L3; $L5: mov.f64 %r48,0d40de1511697a0b2d; mov.f64 %r47,0d40f7d42cb28f17bb; mov.f64 %r46,0d40e20b8697c5bb7f; mov.f64 %r45,0d40ac85dc964d274f; mov.f64 %r44,0d40beea7ac32782dd; mov.f64 %r43,0d40ae457da3a532cc; mov.f64 %r42,0d4079c0d4652ea590; mov.f64 %r41,0d402a7a9d357f7fce; mov.f64 %r40,0d3fbdfffffffffcce; .loc 1 340 36 mov.f64 %r28,0d405c8d458e656cac; .loc 1 340 28 mov.f64 %r23,0d0000000000000000; bra $L3; $L6: mov.f64 %r48,0d40978030036f5e51; mov.f64 %r47,0d40bea4b0b8a5bb15; mov.f64 %r46,0d40b4e9445706b6fb; mov.f64 %r45,0d408efb361b066701; mov.f64 %r44,0d408085b8bb7e0cb7; mov.f64 %r43,0d40802d16d052d649; mov.f64 %r42,0d405b13b9452602ed; mov.f64 %r41,0d401b36046e6315e3; mov.f64 %r40,0d3fbdffffe2c10043; .loc 1 341 43 mov.f64 %r28,0d404da3eaa8af633d; .loc 1 341 35 mov.f64 %r23,0d3dad0667dae1ca7d; $L3: .loc 1 344 19 mul.f64 %r58,%r50,%r50; .loc 1 344 11 rcp.rn.f64 %r37,%r58; .loc 1 345 49 fma.rn.f64 %r24,%r37,%r44,%r43; .loc 1 345 41 fma.rn.f64 %r25,%r24,%r37,%r42; .loc 1 345 33 fma.rn.f64 %r26,%r25,%r37,%r41; .loc 1 345 25 fma.rn.f64 %r27,%r26,%r37,%r40; .loc 1 345 11 fma.rn.f64 %r38,%r27,%r37,%r23; .loc 1 346 48 fma.rn.f64 %r30,%r37,%r48,%r47; .loc 1 346 40 fma.rn.f64 %r31,%r30,%r37,%r46; .loc 1 346 32 fma.rn.f64 %r32,%r31,%r37,%r45; .loc 1 346 24 fma.rn.f64 %r33,%r32,%r37,%r28; .loc 1 346 11 fma.rn.f64 %r39,%r33,%r37,0d3ff0000000000000; .loc 1 347 22 div.rn.f64 %r60,%r38,%r39; .loc 1 347 19 add.f64 %r49,%r60,0d3ff0000000000000; bra $L1; $L4: .loc 1 339 33 mov.f64 %r49,0d3ff0000000000000; $L1: .loc 1 348 1 mov.f64 %value,%r49; st.param.f64 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qone .func (.param .f64 %value_out) qone (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r65; mov.f64 %r53,%ar0; .loc 1 475 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r56,%r55; .loc 1 476 5 and.b32 %r38,%r56,2147483647; .loc 1 477 5 setp.le.s32 %r57,%r38,1102053375; @ %r57 bra $L9; .loc 1 477 37 mov.f64 %r58,0d3fd8000000000000; div.rn.f64 %r52,%r58,%r53; bra $L8; $L9: .loc 1 478 9 setp.gt.s32 %r59,%r38,1075838975; @ %r59 bra $L12; .loc 1 479 9 setp.gt.s32 %r60,%r38,1074933386; @ %r60 bra $L13; .loc 1 480 9 setp.le.s32 %r61,%r38,1074191212; selp.f64 %r51,0dc013d686e71be86b,0dc060e670290a311f,%r61; selp.f64 %r50,0d40637e5e3c3ed8d4,0d409dbc7a0dd4df4b,%r61; selp.f64 %r49,0d40871b2548d4c029,0d40b5abbaa61d54a6,%r61; selp.f64 %r48,0d4087ac05ce49a0f7,0d40aa684e448e7c9a,%r61; selp.f64 %r47,0d406f9f68db821cba,0d40850eebc031ee3e,%r61; selp.f64 %r46,0dc0355f3639cf6e52,0dc06b66b95f5c1bf6,%r61; selp.f64 %r45,0dc04529a3de104aaa,0dc06c87d34718d55f,%r61; selp.f64 %r44,0dc033a9e2c168907f,0dc04cec71c25d16da,%r61; selp.f64 %r43,0dc006048469bb4eda,0dc01270c23302d9ff,%r61; selp.f64 %r42,0dbfba3e8e9148b010,0dbfba3feb51aeed54,%r61; selp.f64 %r28,0d403d888a78ae64ff,0d4047d523ccd367e4,%r61; selp.f64 %r23,0dbe87f12644c626d2,0dbe35cfa9d38fc84f,%r61; bra $L11; $L12: mov.f64 %r51,0dc111f9690ea5aa18; mov.f64 %r50,0d412457d27719ad5c; mov.f64 %r49,0d4125f65372869c19; mov.f64 %r48,0d4100579ab0b75e98; mov.f64 %r47,0d40be9162d0d88419; mov.f64 %r46,0dc0e7a6d065d09c6a; mov.f64 %r45,0dc0c724e740f87415; mov.f64 %r44,0dc087bcd053e4b576; mov.f64 %r43,0dc0304591a26779f7; mov.f64 %r42,0dbfba3ffffffffdf3; .loc 1 478 36 mov.f64 %r28,0d40642ca6de5bcde5; .loc 1 478 28 mov.f64 %r23,0d0000000000000000; bra $L11; $L13: mov.f64 %r51,0dc0b26f2efcffa004; mov.f64 %r50,0d40db4b04cf7c364b; mov.f64 %r49,0d40e8576daabad197; mov.f64 %r48,0d40d10f1f0d64ce29; mov.f64 %r47,0d409f1f31e77bf839; mov.f64 %r46,0dc0a468e388fda79d; mov.f64 %r45,0dc09574c66931734f; mov.f64 %r44,0dc066f56d6ca7b9b0; mov.f64 %r43,0dc0201ce6ca03ad4b; mov.f64 %r42,0dbfba3fffcb597fef; .loc 1 479 36 mov.f64 %r28,0d405451b2ff5a11b2; .loc 1 479 28 mov.f64 %r23,0dbdb6fa431aa1a098; $L11: .loc 1 482 12 mul.f64 %r62,%r53,%r53; .loc 1 482 4 rcp.rn.f64 %r39,%r62; .loc 1 483 42 fma.rn.f64 %r24,%r39,%r46,%r45; .loc 1 483 34 fma.rn.f64 %r25,%r24,%r39,%r44; .loc 1 483 26 fma.rn.f64 %r26,%r25,%r39,%r43; .loc 1 483 18 fma.rn.f64 %r27,%r26,%r39,%r42; .loc 1 483 4 fma.rn.f64 %r40,%r27,%r39,%r23; .loc 1 484 49 fma.rn.f64 %r30,%r39,%r51,%r50; .loc 1 484 41 fma.rn.f64 %r31,%r30,%r39,%r49; .loc 1 484 33 fma.rn.f64 %r32,%r31,%r39,%r48; .loc 1 484 25 fma.rn.f64 %r33,%r32,%r39,%r47; .loc 1 484 17 fma.rn.f64 %r34,%r33,%r39,%r28; .loc 1 484 4 fma.rn.f64 %r41,%r34,%r39,0d3ff0000000000000; .loc 1 485 18 div.rn.f64 %r64,%r40,%r41; .loc 1 485 15 add.f64 %r65,%r64,0d3fd8000000000000; .loc 1 485 21 div.rn.f64 %r52,%r65,%r53; $L8: .loc 1 486 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j1 .visible .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r40; .reg .f64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .pred %r62; .reg .f64 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r72; .reg .pred %r73; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .pred %r79; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r84; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r90; .reg .f64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .f64 %r94; .reg .pred %r95; .reg .f64 %r96; .reg .f64 %r97; mov.f64 %r58,%ar0; .loc 1 105 2 mov.b64 %r59,%r58; shr.u64 %r60,%r59,32; cvt.u32.u64 %r42,%r60; .loc 1 106 5 and.b32 %r43,%r42,2147483647; .loc 1 107 4 setp.le.s32 %r62,%r43,2146435071; @ %r62 bra $L16; .loc 1 107 31 rcp.rn.f64 %r57,%r58; bra $L15; $L16: .loc 1 108 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r65,[%value_in]; } .loc 1 109 4 and.b32 %r66,%r42,1073741824; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L18; .loc 1 110 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),sin,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 111 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),cos,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 112 8 neg.f64 %r72,%r69; .loc 1 112 6 sub.f64 %r40,%r72,%r71; .loc 1 113 6 sub.f64 %r41,%r69,%r71; .loc 1 114 5 setp.gt.s32 %r73,%r43,2145386495; @ %r73 bra $L19; .loc 1 115 11 add.f64 %r75,%r65,%r65; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),cos,(%out_arg1); ld.param.f64 %r76,[%value_in]; } .loc 1 116 13 mul.f64 %r77,%r69,%r71; .loc 1 116 10 setp.gt.f64 %r78,%r77,0d0000000000000000; @ ! %r78 bra $L26; .loc 1 116 26 div.rn.f64 %r41,%r76,%r40; bra $L19; $L26: .loc 1 117 20 div.rn.f64 %r40,%r76,%r41; $L19: .loc 1 123 5 setp.le.s32 %r79,%r43,1207959552; @ %r79 bra $L22; .loc 1 123 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 123 35 mul.f64 %r82,%r41,0d3fe20dd750429b6d; .loc 1 123 23 div.rn.f64 %r57,%r82,%r81; bra $L23; $L22: .loc 1 125 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),pone,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 125 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),qone,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 126 28 mul.f64 %r87,%r40,%r86; .loc 1 126 26 neg.f64 %r88,%r87; fma.rn.f64 %r28,%r41,%r84,%r88; .loc 1 126 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r90,[%value_in]; } .loc 1 126 20 mul.f64 %r91,%r28,0d3fe20dd750429b6d; .loc 1 126 9 div.rn.f64 %r57,%r91,%r90; $L23: .loc 1 128 5 setp.ge.s32 %r92,%r42,0; @ %r92 bra $L15; .loc 1 128 19 neg.f64 %r57,%r57; bra $L15; $L18: .loc 1 132 31 mul.f64 %r57,%r58,0d3fe0000000000000; .loc 1 131 4 setp.gt.s32 %r93,%r43,1044381695; @ %r93 bra $L24; .loc 1 132 13 add.f64 %r94,%r58,0d7e37e43c8800759c; .loc 1 132 8 setp.gt.f64 %r95,%r94,0d3ff0000000000000; @ %r95 bra $L15; $L24: .loc 1 134 4 mul.f64 %r45,%r58,%r58; .loc 1 135 27 fma.rn.f64 %r32,%r45,0d3e6aaafa46ca0bd9,0dbef0c5c6ba169668; .loc 1 135 20 fma.rn.f64 %r33,%r32,%r45,0d3f570d9f98472c61; .loc 1 135 13 fma.rn.f64 %r34,%r33,%r45,0dbfb0000000000000; .loc 1 135 4 mul.f64 %r46,%r34,%r45; .loc 1 136 38 fma.rn.f64 %r35,%r45,0d3dab2acfcfb97ed8,0d3e35ac88c97dff2c; .loc 1 136 31 fma.rn.f64 %r36,%r35,%r45,0d3eb3bff8333f8498; .loc 1 136 24 fma.rn.f64 %r37,%r36,%r45,0d3f285f56b9cdf664; .loc 1 136 17 fma.rn.f64 %r38,%r37,%r45,0d3f939d0b12637e53; .loc 1 136 4 fma.rn.f64 %r47,%r38,%r45,0d3ff0000000000000; .loc 1 137 4 mul.f64 %r96,%r58,%r46; .loc 1 138 16 div.rn.f64 %r97,%r96,%r47; .loc 1 138 14 add.f64 %r57,%r57,%r97; $L15: .loc 1 139 1 mov.f64 %value,%r57; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y1 .visible .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r30; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r50; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u32 %r71; .reg .u32 %r73; .reg .pred %r74; .reg .f64 %r75; .reg .pred %r76; .reg .f64 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .f64 %r81; .reg .f64 %r83; .reg .f64 %r84; .reg .pred %r85; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r89; .reg .pred %r90; .reg .pred %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r96; .reg .f64 %r98; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .pred %r103; .reg .f64 %r104; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r111; .reg .f64 %r112; mov.f64 %r64,%ar0; .loc 1 174 2 mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r67,%r66; .loc 1 175 12 and.b32 %r53,%r67,2147483647; .loc 1 177 4 setp.le.s32 %r68,%r53,2146435071; @ %r68 bra $L28; .loc 1 177 35 fma.rn.f64 %r22,%r64,%r64,%r64; .loc 1 177 32 rcp.rn.f64 %r63,%r22; bra $L27; $L28: .loc 1 174 2 cvt.u32.u64 %r71,%r65; .loc 1 178 15 or.b32 %r73,%r71,%r53; .loc 1 178 11 setp.ne.u32 %r74,%r73,0; @ %r74 bra $L30; .loc 1 178 35 mov.f64 %r75,0dbff0000000000000; div.rn.f64 %r63,%r75,0d0000000000000000; bra $L27; $L30: .loc 1 179 11 setp.ge.s32 %r76,%r67,0; @ %r76 bra $L31; .loc 1 179 29 mov.f64 %r77,0d0000000000000000; div.rn.f64 %r63,%r77,%r77; bra $L27; $L31: .loc 1 180 11 and.b32 %r78,%r67,1073741824; setp.eq.u32 %r79,%r78,0; @ %r79 bra $L32; .loc 1 181 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),sin,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 182 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),cos,(%out_arg1); ld.param.f64 %r83,[%value_in]; } .loc 1 183 22 neg.f64 %r84,%r81; .loc 1 183 20 sub.f64 %r49,%r84,%r83; .loc 1 184 20 sub.f64 %r50,%r81,%r83; .loc 1 185 19 setp.gt.s32 %r85,%r53,2145386495; @ %r85 bra $L33; .loc 1 186 25 add.f64 %r87,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r87; call (%value_in),cos,(%out_arg1); ld.param.f64 %r88,[%value_in]; } .loc 1 187 27 mul.f64 %r89,%r81,%r83; .loc 1 187 24 setp.gt.f64 %r90,%r89,0d0000000000000000; @ ! %r90 bra $L39; .loc 1 187 40 div.rn.f64 %r50,%r88,%r49; bra $L33; $L39: .loc 1 188 40 div.rn.f64 %r49,%r88,%r50; $L33: .loc 1 201 19 setp.le.s32 %r91,%r53,1207959552; @ %r91 bra $L36; .loc 1 201 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r93,[%value_in]; } .loc 1 201 49 mul.f64 %r94,%r49,0d3fe20dd750429b6d; .loc 1 201 37 div.rn.f64 %r63,%r94,%r93; bra $L27; $L36: .loc 1 203 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),pone,(%out_arg1); ld.param.f64 %r96,[%value_in]; } .loc 1 203 38 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),qone,(%out_arg1); ld.param.f64 %r98,[%value_in]; } .loc 1 204 42 mul.f64 %r99,%r50,%r98; .loc 1 204 40 fma.rn.f64 %r30,%r49,%r96,%r99; .loc 1 204 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 204 34 mul.f64 %r102,%r30,0d3fe20dd750429b6d; .loc 1 204 23 div.rn.f64 %r63,%r102,%r101; bra $L27; $L32: .loc 1 208 11 setp.gt.s32 %r103,%r53,1016070144; @ %r103 bra $L37; .loc 1 209 24 mov.f64 %r104,0dbfe45f306dc9c883; div.rn.f64 %r63,%r104,%r64; bra $L27; $L37: .loc 1 211 11 mul.f64 %r54,%r64,%r64; .loc 1 212 45 fma.rn.f64 %r36,%r54,0dbe78ac00569105b8,0d3ef8ab038fa6b88e; .loc 1 212 36 fma.rn.f64 %r37,%r36,%r54,0dbf5f55e54844f50f; .loc 1 212 27 fma.rn.f64 %r38,%r37,%r54,0d3fa9d3c776292cd1; .loc 1 212 11 fma.rn.f64 %r55,%r38,%r54,0dbfc91866143cbc8a; .loc 1 213 52 fma.rn.f64 %r39,%r54,0d3db25039daca772a,0d3e3abf1d5ba69a86; .loc 1 213 43 fma.rn.f64 %r40,%r39,%r54,0d3eb6c05a894e8ca6; .loc 1 213 34 fma.rn.f64 %r41,%r40,%r54,0d3f2a8c896c257764; .loc 1 213 25 fma.rn.f64 %r42,%r41,%r54,0d3f94650d3f4da9f0; .loc 1 213 11 fma.rn.f64 %r56,%r42,%r54,0d3ff0000000000000; .loc 1 214 20 div.rn.f64 %r43,%r55,%r56; .loc 1 214 31 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 214 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r108,[%value_in]; } .loc 1 214 67 rcp.rn.f64 %r109,%r64; .loc 1 214 63 neg.f64 %r111,%r109; fma.rn.f64 %r47,%r106,%r108,%r111; .loc 1 214 29 mul.f64 %r112,%r47,0d3fe45f306dc9c883; .loc 1 214 24 fma.rn.f64 %r63,%r43,%r64,%r112; $L27: .loc 1 215 1 mov.f64 %value,%r63; st.param.f64 [%value_out],%value; ret; } lib_a-e_jn.o/ 0 0 0 644 19459 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_jn .visible .func (.param .f64 %value_out) __ieee754_jn (.param .u32 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_jn.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_yn .visible .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .extern .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .extern .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .extern .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .extern .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_jn .visible .func (.param .f64 %value_out) __ieee754_jn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r31; .reg .u32 %r32; .reg .f64 %r47; .reg .u32 %r49; .reg .f64 %r51; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .u32 %r69; .reg .f64 %r72; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .f64 %r82; .reg .f64 %r83; .reg .u32 %r84; .reg .f64 %r88; .reg .f64 %r90; .reg .f64 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .u32 %r101; .reg .f64 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .u32 %r106; .reg .f64 %r107; .reg .u32 %r108; .reg .f64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .f64 %r123; .reg .pred %r124; .reg .f64 %r126; .reg .u32 %r128; .reg .f64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u16 %r138; .reg .u16 %r139; .reg .u16 %r140; .reg .u32 %r141; .reg .u16 %r142; .reg .pred %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .f64 %r150; .reg .f64 %r152; .reg .f64 %r154; .reg .f64 %r156; .reg .f64 %r158; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r163; .reg .f64 %r165; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r170; .reg .f64 %r172; .reg .f64 %r174; .reg .f64 %r175; .reg .pred %r176; .reg .pred %r177; .reg .pred %r178; .reg .f64 %r179; .reg .pred %r180; .reg .f64 %r182; .reg .f64 %r183; .reg .pred %r184; .reg .f64 %r185; .reg .pred %r186; .reg .u32 %r187; .reg .u32 %r189; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .pred %r194; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r199; .reg .f64 %r200; .reg .pred %r201; .reg .f64 %r202; .reg .f64 %r203; .reg .pred %r204; .reg .f64 %r205; .reg .f64 %r206; .reg .pred %r207; .reg .pred %r208; .reg .f64 %r210; .reg .f64 %r211; .reg .pred %r212; .reg .f64 %r214; .reg .u16 %r215; mov.u32 %r108,%ar0; mov.f64 %r109,%ar1; mov.b64 %r110,%r109; shr.u64 %r111,%r110,32; cvt.u32.u64 %r77,%r111; .loc 1 73 2 cvt.u32.u64 %r78,%r110; .loc 1 74 5 and.b32 %r79,%r77,2147483647; .loc 1 76 26 neg.s32 %r115,%r78; .loc 1 76 25 or.b32 %r116,%r115,%r78; .loc 1 76 31 shr.u32 %r117,%r116,31; .loc 1 76 8 or.b32 %r118,%r117,%r79; .loc 1 76 4 setp.le.u32 %r119,%r118,2146435072; @ %r119 bra $L2; .loc 1 76 57 add.f64 %r107,%r109,%r109; bra $L1; $L2: .loc 1 77 4 setp.ge.s32 %r120,%r108,0; @ %r120 bra $L4; .loc 1 78 5 neg.s32 %r108,%r108; .loc 1 79 5 neg.f64 %r109,%r109; .loc 1 80 6 add.u32 %r77,%r77,-2147483648; bra $L5; $L4: .loc 1 82 4 setp.ne.u32 %r121,%r108,0; @ %r121 bra $L5; .loc 1 82 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r123,[%value_in]; } mov.f64 %r107,%r123; bra $L1; $L5: .loc 1 83 4 setp.ne.u32 %r124,%r108,1; @ %r124 bra $L6; .loc 1 83 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r126,[%value_in]; } mov.f64 %r107,%r126; bra $L1; $L6: .loc 1 84 6 shr.u32 %r128,%r77,31; and.b32 %r80,%r128,%r108; .loc 1 85 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 86 8 or.b32 %r131,%r78,%r79; .loc 1 86 4 set.u32.eq.u32 %r133,%r131,0; neg.s32 %r134,%r133; mov.u32 %r132,%r134; .loc 1 86 15 set.u32.gt.s32 %r136,%r79,2146435071; neg.s32 %r137,%r136; mov.u32 %r135,%r137; cvt.u16.u8 %r215,%r132; mov.u16 %r139,%r215; cvt.u16.u8 %r215,%r135; mov.u16 %r140,%r215; or.b16 %r138,%r139,%r140; cvt.u32.u16 %r141,%r138; cvt.u16.u8 %r142,%r141; setp.ne.u16 %r143,%r142,0; @ %r143 bra $L31; .loc 1 88 10 cvt.rn.f64.s32 %r31,%r108; .loc 1 88 9 setp.le.f64 %r144,%r31,%r130; @ ! %r144 bra $L47; .loc 1 90 8 setp.le.s32 %r145,%r79,1389363199; @ %r145 bra $L10; .loc 1 104 11 and.b32 %r32,%r108,3; .loc 1 104 3 setp.eq.u32 %r146,%r32,2; @ %r146 bra $L11; setp.eq.u32 %r147,%r32,3; @ %r147 bra $L12; setp.eq.u32 %r148,%r32,1; @ %r148 bra $L13; .loc 1 105 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r150,[%value_in]; } .loc 1 105 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r152,[%value_in]; } .loc 1 105 20 add.f64 %r68,%r150,%r152; .loc 1 105 38 bra $L14; $L13: .loc 1 106 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r154,[%value_in]; } .loc 1 106 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r156,[%value_in]; } .loc 1 106 20 sub.f64 %r68,%r154,%r156; .loc 1 106 38 bra $L14; $L11: .loc 1 107 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r158,[%value_in]; } .loc 1 107 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r160,[%value_in]; } .loc 1 107 22 neg.f64 %r161,%r158; .loc 1 107 20 sub.f64 %r68,%r161,%r160; .loc 1 107 38 bra $L14; $L12: .loc 1 108 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r163,[%value_in]; } .loc 1 108 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r165,[%value_in]; } .loc 1 108 20 sub.f64 %r68,%r163,%r165; $L14: .loc 1 110 22 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r167,[%value_in]; } .loc 1 110 16 mul.f64 %r168,%r68,0d3fe20dd750429b6d; .loc 1 110 5 div.rn.f64 %r107,%r168,%r167; bra $L7; $L10: .loc 1 112 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r170,[%value_in]; } mov.f64 %r47,%r170; .loc 1 113 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r172,[%value_in]; } mov.f64 %r107,%r172; add.u32 %r74,%r108,%r108; mov.u32 %r76,2; $L15: neg.f64 %r104,%r47; mov.f64 %r47,%r107; .loc 1 116 14 cvt.rn.f64.s32 %r174,%r76; .loc 1 116 27 div.rn.f64 %r175,%r174,%r130; .loc 1 116 9 fma.rn.f64 %r107,%r175,%r107,%r104; .loc 1 114 19 add.u32 %r76,%r76,2; setp.ne.u32 %r176,%r74,%r76; @ %r176 bra $L15; bra $L7; $L47: .loc 1 121 8 setp.gt.s32 %r177,%r79,1041235967; @ %r177 bra $L16; .loc 1 125 5 setp.gt.s32 %r178,%r108,33; @ %r178 bra $L32; .loc 1 128 12 mul.f64 %r98,%r130,0d3fe0000000000000; add.u32 %r69,%r108,1; .loc 1 128 23 mov.f64 %r100,%r98; .loc 1 129 13 mov.f64 %r99,0d3ff0000000000000; .loc 1 129 19 mov.u32 %r101,2; $L17: .loc 1 130 9 cvt.rn.f64.s32 %r179,%r101; .loc 1 130 6 mul.f64 %r99,%r99,%r179; .loc 1 131 6 mul.f64 %r100,%r100,%r98; .loc 1 129 28 add.u32 %r101,%r101,1; .loc 1 129 23 setp.ne.u32 %r180,%r69,%r101; @ %r180 bra $L17; .loc 1 133 9 div.rn.f64 %r107,%r100,%r99; bra $L7; $L16: .loc 1 167 10 add.u32 %r49,%r108,%r108; .loc 1 167 13 cvt.rn.f64.s32 %r182,%r49; .loc 1 167 6 div.rn.f64 %r51,%r182,%r130; .loc 1 167 27 mov.f64 %r183,0d4000000000000000; div.rn.f64 %r82,%r183,%r130; .loc 1 168 14 add.f64 %r96,%r51,%r82; .loc 1 168 24 fma.rn.f64 %r83,%r51,%r96,0dbff0000000000000; .loc 1 169 11 setp.lt.f64 %r184,%r83,0d41cdcd6500000000; @ ! %r184 bra $L48; .loc 1 168 38 mov.u32 %r95,1; bra $L20; $L33: .loc 1 173 7 mov.f64 %r83,%r97; $L20: .loc 1 170 6 add.u32 %r95,%r95,1; .loc 1 170 14 add.f64 %r96,%r96,%r82; .loc 1 171 8 neg.f64 %r185,%r51; fma.rn.f64 %r97,%r96,%r83,%r185; mov.f64 %r51,%r83; .loc 1 169 11 setp.lt.f64 %r186,%r97,0d41cdcd6500000000; @ %r186 bra $L33; bra $L49; $L48: .loc 1 176 23 add.u32 %r187,%r108,1; .loc 1 176 17 add.u32 %r84,%r187,%r187; bra $L22; $L49: .loc 1 176 23 add.u32 %r189,%r95,%r108; .loc 1 176 17 add.u32 %r84,%r189,%r189; $L22: .loc 1 176 8 mov.f64 %r72,0d0000000000000000; .loc 1 176 44 mov.f64 %r193,0d3ff0000000000000; $L23: .loc 1 176 52 cvt.rn.f64.s32 %r191,%r84; div.rn.f64 %r192,%r191,%r130; .loc 1 176 54 sub.f64 %r55,%r192,%r72; .loc 1 176 44 div.rn.f64 %r72,%r193,%r55; .loc 1 176 36 add.u32 %r84,%r84,-2; .loc 1 176 29 setp.le.s32 %r194,%r49,%r84; @ %r194 bra $L23; .loc 1 189 13 mul.f64 %r196,%r31,%r82; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r196; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r197,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r197; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r199,[%value_in]; } .loc 1 191 16 add.u32 %r94,%r108,-1; .loc 1 191 34 add.u32 %r106,%r49,-2; .loc 1 189 7 mul.f64 %r200,%r31,%r199; .loc 1 190 5 setp.lt.f64 %r201,%r200,0d40862e42fefa39ef; @ ! %r201 bra $L50; .loc 1 191 23 cvt.rn.f64.s32 %r93,%r106; .loc 1 176 44 mov.f64 %r103,%r72; .loc 1 178 5 mov.f64 %r105,0d3ff0000000000000; .loc 1 196 7 mov.f64 %r203,0d4000000000000000; bra $L26; $L34: .loc 1 194 7 mov.f64 %r105,%r67; $L26: .loc 1 193 6 mul.f64 %r202,%r105,%r93; .loc 1 194 10 div.rn.f64 %r59,%r202,%r130; .loc 1 194 7 sub.f64 %r67,%r59,%r103; .loc 1 196 7 sub.f64 %r93,%r93,%r203; .loc 1 191 43 add.u32 %r94,%r94,-1; mov.f64 %r103,%r105; .loc 1 191 39 setp.ne.u32 %r204,%r94,0; @ %r204 bra $L34; bra $L27; $L50: .loc 1 199 23 cvt.rn.f64.s32 %r90,%r106; .loc 1 176 44 mov.f64 %r66,%r72; .loc 1 178 5 mov.f64 %r67,0d3ff0000000000000; .loc 1 204 7 mov.f64 %r206,0d4000000000000000; .loc 1 209 11 mov.f64 %r214,%r67; $L30: .loc 1 201 6 mul.f64 %r205,%r67,%r90; .loc 1 202 10 div.rn.f64 %r60,%r205,%r130; .loc 1 202 7 sub.f64 %r88,%r60,%r66; .loc 1 204 7 sub.f64 %r90,%r90,%r206; .loc 1 206 6 setp.gt.f64 %r207,%r88,0d54b249ad2594c37d; @ ! %r207 bra $L51; .loc 1 207 10 div.rn.f64 %r66,%r67,%r88; .loc 1 208 10 div.rn.f64 %r72,%r72,%r88; .loc 1 209 11 mov.f64 %r67,%r214; bra $L28; $L51: mov.f64 %r66,%r67; .loc 1 202 7 mov.f64 %r67,%r88; $L28: .loc 1 199 43 add.u32 %r94,%r94,-1; .loc 1 199 39 setp.ne.u32 %r208,%r94,0; @ %r208 bra $L30; $L27: .loc 1 213 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r210,[%value_in]; } .loc 1 213 13 mul.f64 %r211,%r210,%r72; .loc 1 213 9 div.rn.f64 %r107,%r211,%r67; bra $L7; $L31: .loc 1 87 8 mov.f64 %r107,0d0000000000000000; bra $L7; $L32: mov.f64 %r107,0d0000000000000000; $L7: .loc 1 216 4 setp.eq.u32 %r212,%r80,0; @ %r212 bra $L1; .loc 1 216 20 neg.f64 %r107,%r107; $L1: .loc 1 217 1 mov.f64 %value,%r107; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_yn .visible .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r33; .reg .f64 %r48; .reg .f64 %r52; .reg .u32 %r55; .reg .u32 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .f64 %r66; .reg .u32 %r67; .reg .f64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .pred %r80; .reg .f64 %r81; .reg .pred %r82; .reg .f64 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .f64 %r101; .reg .f64 %r103; .reg .f64 %r105; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r121; .reg .f64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r126; .reg .pred %r127; .reg .u32 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u32 %r144; .reg .u16 %r145; .reg .pred %r146; .reg .pred %r147; .reg .u16 %r149; mov.u32 %r67,%ar0; mov.f64 %r68,%ar1; .loc 1 230 2 mov.b64 %r69,%r68; shr.u64 %r70,%r69,32; cvt.u32.u64 %r71,%r70; cvt.u32.u64 %r73,%r69; .loc 1 231 5 and.b32 %r55,%r71,2147483647; .loc 1 233 26 neg.s32 %r74,%r73; .loc 1 233 25 or.b32 %r75,%r74,%r73; .loc 1 233 31 shr.u32 %r76,%r75,31; .loc 1 233 8 or.b32 %r77,%r76,%r55; .loc 1 233 4 setp.le.u32 %r78,%r77,2146435072; @ %r78 bra $L53; .loc 1 233 57 add.f64 %r66,%r68,%r68; bra $L52; $L53: .loc 1 234 8 or.b32 %r79,%r73,%r55; .loc 1 234 4 setp.ne.u32 %r80,%r79,0; @ %r80 bra $L55; .loc 1 234 28 mov.f64 %r81,0dbff0000000000000; div.rn.f64 %r66,%r81,0d0000000000000000; bra $L52; $L55: .loc 1 235 4 setp.ge.s32 %r82,%r71,0; @ %r82 bra $L56; .loc 1 235 22 mov.f64 %r83,0d0000000000000000; div.rn.f64 %r66,%r83,%r83; bra $L52; $L56: .loc 1 237 4 setp.ge.s32 %r84,%r67,0; @ %r84 bra $L57; .loc 1 238 5 neg.s32 %r67,%r67; .loc 1 239 20 add.u32 %r85,%r67,%r67; and.b32 %r86,%r85,2; .loc 1 239 8 mov.u32 %r87,1; sub.u32 %r56,%r87,%r86; bra $L58; $L57: .loc 1 241 4 setp.ne.u32 %r88,%r67,0; @ %r88 bra $L67; .loc 1 241 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r90,[%value_in]; } mov.f64 %r66,%r90; bra $L52; $L67: .loc 1 236 7 mov.u32 %r56,1; $L58: .loc 1 242 4 setp.ne.u32 %r91,%r67,1; @ %r91 bra $L59; .loc 1 242 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r93,[%value_in]; } .loc 1 242 22 cvt.rn.f64.s32 %r94,%r56; mul.f64 %r66,%r94,%r93; bra $L52; $L59: .loc 1 243 4 setp.eq.u32 %r95,%r55,2146435072; @ %r95 bra $L68; .loc 1 244 4 setp.le.s32 %r96,%r55,1389363199; @ %r96 bra $L60; .loc 1 258 11 and.b32 %r33,%r67,3; .loc 1 258 3 setp.eq.u32 %r97,%r33,2; @ %r97 bra $L61; setp.eq.u32 %r98,%r33,3; @ %r98 bra $L62; setp.eq.u32 %r99,%r33,1; @ %r99 bra $L63; .loc 1 259 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 259 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r103,[%value_in]; } .loc 1 259 20 sub.f64 %r52,%r101,%r103; .loc 1 259 38 bra $L64; $L63: .loc 1 260 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r105,[%value_in]; } .loc 1 260 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r107,[%value_in]; } .loc 1 260 22 neg.f64 %r108,%r105; .loc 1 260 20 sub.f64 %r52,%r108,%r107; .loc 1 260 38 bra $L64; $L61: .loc 1 261 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r110,[%value_in]; } .loc 1 261 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r112,[%value_in]; } .loc 1 261 20 sub.f64 %r52,%r110,%r112; .loc 1 261 38 bra $L64; $L62: .loc 1 262 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r114,[%value_in]; } .loc 1 262 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r116,[%value_in]; } .loc 1 262 20 add.f64 %r52,%r114,%r116; $L64: .loc 1 264 22 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r118,[%value_in]; } .loc 1 264 16 mul.f64 %r119,%r52,0d3fe20dd750429b6d; .loc 1 264 5 div.rn.f64 %r66,%r119,%r118; bra $L65; $L60: .loc 1 267 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r121,[%value_in]; } mov.f64 %r48,%r121; .loc 1 268 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r123,[%value_in]; } mov.f64 %r57,%r123; .loc 1 271 17 mov.b64 %r124,%r57; shr.u64 %r125,%r124,32; cvt.u32.u64 %r126,%r125; setp.eq.u32 %r127,%r126,-1048576; @ %r127 bra $L69; .loc 1 271 11 mov.u32 %r58,1; bra $L66; $L70: .loc 1 273 5 mov.f64 %r57,%r66; $L66: .loc 1 273 18 add.u32 %r128,%r58,%r58; .loc 1 273 8 cvt.rn.f64.s32 %r129,%r128; .loc 1 273 21 div.rn.f64 %r130,%r129,%r68; .loc 1 273 5 neg.f64 %r131,%r48; fma.rn.f64 %r66,%r130,%r57,%r131; .loc 1 271 37 add.u32 %r58,%r58,1; mov.f64 %r48,%r57; .loc 1 271 15 set.u32.lt.s32 %r133,%r58,%r67; neg.s32 %r134,%r133; mov.u32 %r132,%r134; .loc 1 271 23 mov.b64 %r135,%r66; shr.u64 %r136,%r135,32; cvt.u32.u64 %r137,%r136; set.u32.ne.u32 %r139,%r137,-1048576; neg.s32 %r140,%r139; mov.u32 %r138,%r140; .loc 1 271 17 cvt.u16.u8 %r149,%r132; mov.u16 %r142,%r149; cvt.u16.u8 %r149,%r138; mov.u16 %r143,%r149; and.b16 %r141,%r142,%r143; cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.ne.u16 %r146,%r145,0; @ %r146 bra $L70; bra $L65; $L69: .loc 1 268 10 mov.f64 %r66,%r123; $L65: .loc 1 278 4 setp.eq.u32 %r147,%r56,1; @ %r147 bra $L52; .loc 1 278 35 neg.f64 %r66,%r66; bra $L52; $L68: .loc 1 243 28 mov.f64 %r66,0d0000000000000000; $L52: .loc 1 279 1 mov.f64 %value,%r66; st.param.f64 [%value_out],%value; ret; } lib_a-e_log.o/ 0 0 0 644 6086 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .visible .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_log.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_log .visible .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r49; .reg .f64 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r61; .reg .u32 %r62; .reg .f64 %r63; .reg .u32 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .u32 %r69; .reg .f64 %r70; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r82; .reg .f64 %r85; .reg .u64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r95; .reg .u32 %r97; .reg .pred %r98; .reg .f64 %r99; .reg .pred %r100; .reg .f64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u32 %r115; .reg .f64 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .f64 %r122; .reg .pred %r124; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .f64 %r131; .reg .pred %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .pred %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .pred %r141; .reg .f64 %r143; .reg .f64 %r144; mov.f64 %r88,%ar0; mov.b64 %r89,%r88; shr.u64 %r90,%r89,32; cvt.u32.u64 %r58,%r90; .loc 1 106 5 setp.gt.s32 %r92,%r58,1048575; @ %r92 bra $L13; .loc 1 107 14 and.b32 %r93,%r58,2147483647; .loc 1 107 26 cvt.u32.u64 %r95,%r89; or.b32 %r97,%r93,%r95; .loc 1 107 9 setp.ne.u32 %r98,%r97,0; @ %r98 bra $L3; .loc 1 108 16 mov.f64 %r99,0dc350000000000000; div.rn.f64 %r87,%r99,0d0000000000000000; bra $L1; $L3: .loc 1 109 9 setp.ge.s32 %r100,%r58,0; @ %r100 bra $L5; .loc 1 109 25 sub.f64 %r101,%r88,%r88; .loc 1 109 28 div.rn.f64 %r87,%r101,0d0000000000000000; bra $L1; $L5: .loc 1 110 17 mul.f64 %r88,%r88,0d4350000000000000; .loc 1 111 6 mov.b64 %r102,%r88; shr.u64 %r103,%r102,32; cvt.u32.u64 %r58,%r103; .loc 1 110 8 mov.u32 %r57,-54; bra $L2; $L13: .loc 1 105 3 mov.u32 %r57,0; $L2: .loc 1 113 5 setp.le.s32 %r105,%r58,2146435071; @ %r105 bra $L6; .loc 1 113 32 add.f64 %r87,%r88,%r88; bra $L1; $L6: .loc 1 114 10 shr.s32 %r106,%r58,20; .loc 1 114 15 add.u32 %r107,%r106,-1023; .loc 1 115 5 and.b32 %r61,%r58,1048575; .loc 1 116 9 add.u32 %r108,%r61,614244; .loc 1 116 4 and.b32 %r62,%r108,1048576; .loc 1 117 2 mov.b64 %r86,%r88; xor.b32 %r109,%r62,1072693248; or.b32 %r110,%r109,%r61; cvt.u64.u32 %r111,%r110; shl.b64 %r112,%r111,32; and.b64 %r113,%r86,4294967295; or.b64 %r114,%r113,%r112; mov.b64 %r63,%r114; .loc 1 118 9 shr.s32 %r115,%r62,20; .loc 1 118 4 vadd.u32.u32.u32.add %r64,%r57,%r107,%r115; .loc 1 119 4 mov.f64 %r116,0d3ff0000000000000; sub.f64 %r65,%r63,%r116; .loc 1 120 19 add.u32 %r117,%r61,2; .loc 1 120 16 and.b32 %r118,%r117,1048575; .loc 1 120 4 setp.gt.s32 %r119,%r118,2; @ %r119 bra $L7; .loc 1 121 13 setp.neu.f64 %r120,%r65,0d0000000000000000; @ %r120 bra $L8; .loc 1 121 27 setp.eq.u32 %r121,%r64,0; @ %r121 bra $L14; .loc 1 121 56 cvt.rn.f64.s32 %r78,%r64; .loc 1 122 51 mul.f64 %r122,%r78,0d3dea39ef35793c76; .loc 1 122 48 fma.rn.f64 %r87,%r78,0d3fe62e42fee00000,%r122; bra $L1; $L8: .loc 1 123 11 mul.f64 %r35,%r65,%r65; .loc 1 123 18 fma.rn.f64 %r36,%r65,0dbfd5555555555555,0d3fe0000000000000; .loc 1 123 8 mul.f64 %r76,%r35,%r36; .loc 1 124 8 setp.ne.u32 %r124,%r64,0; @ %r124 bra $L9; .loc 1 124 23 sub.f64 %r87,%r65,%r76; bra $L1; $L9: .loc 1 124 35 cvt.rn.f64.s32 %r77,%r64; .loc 1 125 32 fma.rn.f64 %r37,%r77,0dbdea39ef35793c76,%r76; .loc 1 125 43 sub.f64 %r126,%r37,%r65; .loc 1 125 28 neg.f64 %r127,%r126; fma.rn.f64 %r87,%r77,0d3fe62e42fee00000,%r127; bra $L1; $L7: .loc 1 127 13 add.f64 %r128,%r65,0d4000000000000000; .loc 1 127 5 div.rn.f64 %r66,%r65,%r128; .loc 1 128 5 cvt.rn.f64.s32 %r67,%r64; .loc 1 129 4 mul.f64 %r68,%r66,%r66; .loc 1 130 4 add.u32 %r69,%r61,-398458; .loc 1 131 4 mul.f64 %r70,%r68,%r68; .loc 1 133 19 fma.rn.f64 %r40,%r70,0d3fc39a09d078c69f,0d3fcc71c51d8e78af; .loc 1 133 12 fma.rn.f64 %r41,%r40,%r70,0d3fd999999997fa04; .loc 1 134 26 fma.rn.f64 %r42,%r70,0d3fc2f112df3e5244,0d3fc7466496cb03de; .loc 1 134 19 fma.rn.f64 %r43,%r42,%r70,0d3fd2492494229359; .loc 1 134 12 fma.rn.f64 %r44,%r43,%r70,0d3fe5555555555593; .loc 1 132 4 mov.u32 %r130,440401; sub.u32 %r129,%r130,%r61; .loc 1 135 4 or.b32 %r73,%r129,%r69; .loc 1 134 4 mul.f64 %r131,%r44,%r68; .loc 1 136 4 fma.rn.f64 %r74,%r41,%r70,%r131; .loc 1 137 4 setp.le.s32 %r132,%r73,0; @ %r132 bra $L10; .loc 1 138 14 mul.f64 %r133,%r65,0d3fe0000000000000; .loc 1 138 10 mul.f64 %r75,%r133,%r65; .loc 1 139 37 add.f64 %r134,%r74,%r75; .loc 1 139 31 mul.f64 %r85,%r134,%r66; .loc 1 139 8 setp.ne.u32 %r135,%r64,0; @ %r135 bra $L11; .loc 1 139 29 sub.f64 %r136,%r75,%r85; .loc 1 139 23 sub.f64 %r87,%r65,%r136; bra $L1; $L11: .loc 1 140 43 fma.rn.f64 %r49,%r67,0d3dea39ef35793c76,%r85; .loc 1 140 31 sub.f64 %r137,%r75,%r49; .loc 1 140 55 sub.f64 %r138,%r137,%r65; .loc 1 140 24 neg.f64 %r139,%r138; fma.rn.f64 %r87,%r67,0d3fe62e42fee00000,%r139; bra $L1; $L10: .loc 1 142 28 sub.f64 %r140,%r65,%r74; .loc 1 142 25 mul.f64 %r82,%r140,%r66; .loc 1 142 8 setp.ne.u32 %r141,%r64,0; @ %r141 bra $L12; .loc 1 142 23 sub.f64 %r87,%r65,%r82; bra $L1; $L12: .loc 1 143 34 fma.rn.f64 %r55,%r67,0dbdea39ef35793c76,%r82; .loc 1 143 45 sub.f64 %r143,%r55,%r65; .loc 1 143 24 neg.f64 %r144,%r143; fma.rn.f64 %r87,%r67,0d3fe62e42fee00000,%r144; bra $L1; $L14: .loc 1 121 41 mov.f64 %r87,0d0000000000000000; $L1: .loc 1 145 1 mov.f64 %value,%r87; st.param.f64 [%value_out],%value; ret; } lib_a-e_log10.o/0 0 0 644 3003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10 .visible .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_log10 .visible .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r29; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .u64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .f64 %r60; .reg .pred %r61; .reg .f64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .f64 %r79; .reg .f64 %r80; mov.f64 %r49,%ar0; mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r37,%r51; .loc 1 81 12 setp.gt.s32 %r53,%r37,1048575; @ %r53 bra $L7; .loc 1 82 21 and.b32 %r54,%r37,2147483647; .loc 1 82 33 cvt.u32.u64 %r56,%r50; or.b32 %r58,%r54,%r56; .loc 1 82 16 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L3; .loc 1 83 30 mov.f64 %r60,0dc350000000000000; div.rn.f64 %r48,%r60,0d0000000000000000; bra $L1; $L3: .loc 1 84 16 setp.ge.s32 %r61,%r37,0; @ %r61 bra $L5; .loc 1 84 32 sub.f64 %r62,%r49,%r49; .loc 1 84 35 div.rn.f64 %r48,%r62,0d0000000000000000; bra $L1; $L5: .loc 1 85 24 mul.f64 %r49,%r49,0d4350000000000000; .loc 1 86 6 mov.b64 %r63,%r49; shr.u64 %r64,%r63,32; cvt.u32.u64 %r37,%r64; .loc 1 85 15 mov.u32 %r36,-54; bra $L2; $L7: .loc 1 80 10 mov.u32 %r36,0; $L2: .loc 1 88 5 setp.le.s32 %r66,%r37,2146435071; @ %r66 bra $L6; .loc 1 88 32 add.f64 %r48,%r49,%r49; bra $L1; $L6: .loc 1 89 10 shr.s32 %r67,%r37,20; .loc 1 89 15 add.u32 %r68,%r67,-1023; .loc 1 89 4 add.u32 %r38,%r68,%r36; .loc 1 90 33 shr.u32 %r39,%r38,31; .loc 1 91 17 and.b32 %r29,%r37,1048575; .loc 1 92 24 add.u32 %r69,%r38,%r39; .loc 1 92 12 cvt.rn.f64.s32 %r41,%r69; .loc 1 93 2 mov.b64 %r47,%r49; .loc 1 91 37 mov.u32 %r71,1023; sub.u32 %r70,%r71,%r39; .loc 1 91 40 shl.b32 %r72,%r70,20; .loc 1 91 12 or.b32 %r73,%r72,%r29; .loc 1 93 2 cvt.u64.u32 %r74,%r73; shl.b64 %r75,%r74,32; and.b64 %r76,%r47,4294967295; or.b64 %r77,%r76,%r75; mov.b64 %r42,%r77; .loc 1 94 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r79,[%value_in]; } .loc 1 94 27 mul.f64 %r80,%r79,0d3fdbcb7b1526e50e; .loc 1 94 5 fma.rn.f64 %r43,%r41,0d3d59fef311f12b36,%r80; .loc 1 95 11 fma.rn.f64 %r48,%r41,0d3fd34413509f6000,%r43; $L1: .loc 1 96 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_pow.o/ 0 0 0 644 25152 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_pow .visible .func (.param .f64 %value_out) __ieee754_pow (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_pow.c" .file 2 "../../../../../newlib/libm/math/../common/math_config.h" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_pow .visible .func (.param .f64 %value_out) __ieee754_pow (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r34; .reg .u32 %r39; .reg .f64 %r48; .reg .u32 %r50; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r58; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r79; .reg .f64 %r81; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r90; .reg .u32 %r104; .reg .u32 %r120; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .u32 %r135; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .f64 %r149; .reg .u32 %r150; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r163; .reg .u32 %r165; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r169; .reg .f64 %r170; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .f64 %r175; .reg .f64 %r176; .reg .f64 %r177; .reg .f64 %r179; .reg .f64 %r181; .reg .f64 %r182; .reg .f64 %r183; .reg .f64 %r185; .reg .f64 %r186; .reg .f64 %r189; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .u32 %r197; .reg .u32 %r198; .reg .f64 %r199; .reg .f64 %r200; .reg .f64 %r201; .reg .f64 %r202; .reg .f64 %r203; .reg .f64 %r204; .reg .f64 %r205; .reg .f64 %r207; .reg .u32 %r209; .reg .u32 %r218; .reg .f64 %r222; .reg .f64 %r224; .reg .u32 %r225; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r249; .reg .f64 %r251; .reg .f64 %r252; .reg .f64 %r253; .reg .u64 %r254; .reg .u64 %r255; .reg .u32 %r259; .reg .pred %r260; .reg .u64 %r261; .reg .u64 %r262; .reg .u64 %r263; .reg .pred %r264; .reg .u64 %r265; .reg .u64 %r266; .reg .pred %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u16 %r277; .reg .u16 %r278; .reg .u16 %r279; .reg .u32 %r280; .reg .u16 %r281; .reg .pred %r282; .reg .pred %r283; .reg .u32 %r284; .reg .u32 %r285; .reg .u32 %r286; .reg .u32 %r287; .reg .u32 %r288; .reg .u32 %r289; .reg .u16 %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .u32 %r293; .reg .u16 %r294; .reg .pred %r295; .reg .u32 %r296; .reg .u32 %r297; .reg .pred %r298; .reg .u64 %r299; .reg .u64 %r300; .reg .u64 %r301; .reg .pred %r302; .reg .pred %r304; .reg .pred %r305; .reg .u32 %r306; .reg .pred %r307; .reg .u32 %r308; .reg .u32 %r309; .reg .pred %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .pred %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .u32 %r317; .reg .u32 %r318; .reg .pred %r319; .reg .pred %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .pred %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r330; .reg .u32 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .u16 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u32 %r341; .reg .u16 %r342; .reg .pred %r343; .reg .f64 %r345; .reg .f64 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .u32 %r351; .reg .u32 %r352; .reg .u32 %r353; .reg .u32 %r354; .reg .u32 %r355; .reg .u16 %r356; .reg .u16 %r357; .reg .u16 %r358; .reg .u32 %r359; .reg .u16 %r360; .reg .pred %r361; .reg .pred %r362; .reg .u32 %r365; .reg .u32 %r366; .reg .pred %r367; .reg .pred %r368; .reg .u32 %r370; .reg .pred %r371; .reg .pred %r372; .reg .pred %r373; .reg .pred %r374; .reg .pred %r375; .reg .u32 %r376; .reg .f64 %r377; .reg .u32 %r378; .reg .f64 %r379; .reg .pred %r380; .reg .pred %r381; .reg .pred %r382; .reg .pred %r383; .reg .pred %r384; .reg .f64 %r385; .reg .f64 %r387; .reg .f64 %r388; .reg .f64 %r390; .reg .u64 %r391; .reg .u32 %r393; .reg .pred %r394; .reg .u64 %r395; .reg .u64 %r396; .reg .u32 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .f64 %r406; .reg .u64 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u64 %r413; .reg .u64 %r414; .reg .f64 %r417; .reg .f64 %r418; .reg .f64 %r420; .reg .f64 %r421; .reg .f64 %r422; .reg .u64 %r423; .reg .f64 %r425; .reg .f64 %r426; .reg .f64 %r427; .reg .f64 %r428; .reg .u64 %r429; .reg .f64 %r431; .reg .f64 %r432; .reg .f64 %r433; .reg .f64 %r434; .reg .u64 %r435; .reg .f64 %r437; .reg .f64 %r438; .reg .u32 %r439; .reg .u32 %r440; .reg .pred %r441; .reg .u64 %r442; .reg .f64 %r443; .reg .f64 %r444; .reg .u64 %r445; .reg .u64 %r446; .reg .u32 %r447; .reg .u32 %r449; .reg .pred %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .pred %r453; .reg .u32 %r456; .reg .u32 %r457; .reg .f64 %r458; .reg .f64 %r459; .reg .f64 %r460; .reg .pred %r461; .reg .u32 %r464; .reg .u32 %r465; .reg .f64 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .pred %r470; .reg .u32 %r473; .reg .u32 %r474; .reg .f64 %r475; .reg .f64 %r476; .reg .pred %r477; .reg .u32 %r480; .reg .u32 %r481; .reg .f64 %r482; .reg .pred %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u64 %r492; .reg .u64 %r493; .reg .u32 %r496; .reg .u32 %r497; .reg .u32 %r498; .reg .pred %r499; .reg .u64 %r500; .reg .f64 %r501; .reg .f64 %r502; .reg .f64 %r503; .reg .f64 %r505; .reg .f64 %r506; .reg .f64 %r507; .reg .f64 %r508; .reg .f64 %r509; .reg .f64 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u32 %r513; .reg .pred %r515; .reg .f64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .u64 %r521; .reg .u64 %r522; .reg .u32 %r524; .reg .f64 %r526; .reg .pred %r527; .reg .u32 %r528; .reg .u32 %r529; .reg .u32 %r530; .reg .u32 %r531; .reg .u32 %r532; .reg .u32 %r533; .reg .u32 %r534; .reg .u16 %r535; .reg .u16 %r536; .reg .u16 %r537; .reg .u32 %r538; .reg .u16 %r539; .reg .pred %r540; .reg .pred %r541; .reg .u16 %r542; mov.f64 %r252,%ar0; mov.f64 %r253,%ar1; .loc 1 116 2 mov.b64 %r254,%r253; shr.u64 %r255,%r254,32; cvt.u32.u64 %r154,%r255; cvt.u32.u64 %r163,%r254; .loc 1 117 26 and.b32 %r155,%r154,2147483647; .loc 1 120 8 or.b32 %r259,%r155,%r163; .loc 1 120 4 setp.ne.u32 %r260,%r259,0; @ %r260 bra $L2; .loc 2 184 18 mov.b64 %r262,%r252; xor.b64 %r261,%r262,2251799813685248; .loc 2 184 12 add.u64 %r263,%r261,%r261; .loc 1 121 9 setp.le.u64 %r264,%r263,-4503599627370496; @ %r264 bra $L45; $L5: .loc 1 121 42 add.f64 %r251,%r252,%r253; bra $L1; $L2: mov.b64 %r265,%r252; shr.u64 %r266,%r265,32; cvt.u32.u64 %r160,%r266; cvt.u32.u64 %r161,%r265; .loc 1 117 5 and.b32 %r147,%r160,2147483647; .loc 1 126 4 setp.gt.s32 %r270,%r147,2146435072; @ %r270 bra $L4; .loc 1 126 28 set.u32.eq.u32 %r272,%r147,2146435072; neg.s32 %r273,%r272; mov.u32 %r271,%r273; .loc 1 126 46 set.u32.ne.u32 %r275,%r161,0; neg.s32 %r276,%r275; mov.u32 %r274,%r276; .loc 1 126 41 cvt.u16.u8 %r542,%r271; mov.u16 %r278,%r542; cvt.u16.u8 %r542,%r274; mov.u16 %r279,%r542; and.b16 %r277,%r278,%r279; cvt.u32.u16 %r280,%r277; .loc 1 126 21 cvt.u16.u8 %r281,%r280; setp.ne.u16 %r282,%r281,0; @ %r282 bra $L5; .loc 1 126 52 setp.gt.s32 %r283,%r155,2146435072; @ %r283 bra $L4; .loc 1 127 28 set.u32.eq.u32 %r285,%r155,2146435072; neg.s32 %r286,%r285; mov.u32 %r284,%r286; .loc 1 127 46 set.u32.ne.u32 %r288,%r163,0; neg.s32 %r289,%r288; mov.u32 %r287,%r289; .loc 1 127 41 cvt.u16.u8 %r542,%r284; mov.u16 %r291,%r542; cvt.u16.u8 %r542,%r287; mov.u16 %r292,%r542; and.b16 %r290,%r291,%r292; cvt.u32.u16 %r293,%r290; .loc 1 127 21 cvt.u16.u8 %r294,%r293; setp.eq.u16 %r295,%r294,0; @ %r295 bra $L6; $L4: .loc 1 128 13 add.u32 %r296,%r160,-1072693248; .loc 1 128 25 or.b32 %r297,%r296,%r161; .loc 1 128 8 setp.ne.u32 %r298,%r297,0; @ %r298 bra $L5; .loc 2 184 18 mov.b64 %r300,%r253; xor.b64 %r299,%r300,2251799813685248; .loc 2 184 12 add.u64 %r301,%r299,%r299; .loc 1 128 33 setp.le.u64 %r302,%r301,-4503599627370496; @ %r302 bra $L46; bra $L5; $L6: .loc 1 138 4 setp.ge.s32 %r541,%r160,0; @ %r541 bra $L47; .loc 1 139 8 setp.gt.s32 %r304,%r155,1128267775; @ %r304 bra $L48; .loc 1 140 13 setp.le.s32 %r305,%r155,1072693247; @ %r305 bra $L49; .loc 1 141 10 shr.s32 %r306,%r155,20; .loc 1 141 5 add.u32 %r157,%r306,-1023; .loc 1 142 5 setp.le.s32 %r307,%r157,20; @ %r307 bra $L8; .loc 1 143 18 mov.u32 %r308,52; sub.u32 %r34,%r308,%r157; .loc 1 143 13 shr.u32 %r159,%r163,%r34; .loc 1 144 12 shl.b32 %r309,%r159,%r34; .loc 1 144 9 setp.ne.u32 %r310,%r309,%r163; @ %r310 bra $L50; .loc 1 144 40 and.b32 %r311,%r159,1; .loc 1 144 34 mov.u32 %r312,2; sub.u32 %r135,%r312,%r311; bra $L7; $L8: .loc 1 145 12 setp.ne.u32 %r313,%r163,0; @ %r313 bra $L9; .loc 1 146 18 mov.u32 %r314,20; sub.u32 %r39,%r314,%r157; .loc 1 146 9 shr.s32 %r158,%r155,%r39; .loc 1 147 12 shl.b32 %r315,%r158,%r39; .loc 1 147 9 setp.ne.u32 %r316,%r315,%r155; @ %r316 bra $L51; .loc 1 147 40 and.b32 %r317,%r158,1; .loc 1 147 34 mov.u32 %r318,2; sub.u32 %r135,%r318,%r317; bra $L12; $L47: .loc 1 137 10 mov.u32 %r135,0; bra $L7; $L48: .loc 1 139 32 mov.u32 %r135,2; bra $L7; $L49: .loc 1 137 10 mov.u32 %r135,0; bra $L7; $L50: mov.u32 %r135,0; $L7: .loc 1 153 4 setp.ne.u32 %r319,%r163,0; @ %r319 bra $L11; .loc 1 154 9 setp.ne.u32 %r320,%r155,2146435072; @ %r320 bra $L12; .loc 1 155 17 add.u32 %r321,%r147,-1072693248; .loc 1 155 29 or.b32 %r322,%r321,%r161; .loc 1 155 12 setp.eq.u32 %r323,%r322,0; @ %r323 bra $L52; .loc 1 157 18 setp.le.s32 %r324,%r147,1072693247; @ %r324 bra $L13; .loc 1 158 24 setp.lt.s32 %r325,%r154,0; selp.f64 %r251,0d0000000000000000,%r253,%r325; bra $L1; $L13: .loc 1 160 23 setp.ge.s32 %r326,%r154,0; @ %r326 bra $L54; neg.f64 %r251,%r253; bra $L1; $L12: .loc 1 162 8 setp.ne.u32 %r327,%r155,1072693248; @ %r327 bra $L14; .loc 1 163 5 setp.ge.s32 %r328,%r154,0; @ %r328 bra $L55; .loc 1 163 22 rcp.rn.f64 %r251,%r252; bra $L1; $L14: .loc 1 165 8 setp.ne.u32 %r330,%r154,1073741824; @ %r330 bra $L15; .loc 1 165 33 mul.f64 %r251,%r252,%r252; bra $L1; $L15: .loc 1 166 8 set.u32.eq.u32 %r332,%r154,1071644672; neg.s32 %r333,%r332; mov.u32 %r331,%r333; .loc 1 167 5 not.b32 %r335,%r160; shr.u32 %r336,%r335,31; mov.u32 %r337,%r336; cvt.u16.u8 %r542,%r331; mov.u16 %r339,%r542; cvt.u16.u8 %r542,%r337; mov.u16 %r340,%r542; and.b16 %r338,%r339,%r340; cvt.u32.u16 %r341,%r338; cvt.u16.u8 %r342,%r341; setp.eq.u16 %r343,%r342,0; @ %r343 bra $L11; .loc 1 168 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r252; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r345,[%value_in]; } mov.f64 %r251,%r345; bra $L1; $L11: .loc 1 172 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r252; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r347,[%value_in]; } mov.f64 %r251,%r347; .loc 1 174 4 setp.ne.u32 %r348,%r161,0; @ %r348 bra $L16; .loc 1 175 30 and.b32 %r349,%r160,1073741823; set.u32.eq.u32 %r351,%r349,1072693248; neg.s32 %r352,%r351; mov.u32 %r350,%r352; .loc 1 175 27 set.u32.eq.u32 %r354,%r147,0; neg.s32 %r355,%r354; mov.u32 %r353,%r355; .loc 1 175 30 cvt.u16.u8 %r542,%r350; mov.u16 %r357,%r542; cvt.u16.u8 %r542,%r353; mov.u16 %r358,%r542; or.b16 %r356,%r357,%r358; cvt.u32.u16 %r359,%r356; cvt.u16.u8 %r360,%r359; setp.eq.u16 %r361,%r360,0; @ %r361 bra $L16; bra $L44; $L61: .loc 1 137 10 mov.u32 %r135,%r161; $L44: .loc 1 177 5 setp.ge.s32 %r362,%r154,0; @ %r362 bra $L17; .loc 1 177 14 rcp.rn.f64 %r251,%r251; $L17: .loc 1 178 5 @ %r541 bra $L1; .loc 1 179 14 add.u32 %r365,%r147,-1072693248; .loc 1 179 26 or.b32 %r366,%r365,%r135; .loc 1 179 9 setp.ne.u32 %r367,%r366,0; @ %r367 bra $L18; .loc 1 180 10 sub.f64 %r48,%r251,%r251; .loc 1 180 6 div.rn.f64 %r251,%r48,%r48; bra $L1; $L18: .loc 1 181 16 setp.ne.u32 %r368,%r135,1; @ %r368 bra $L1; .loc 1 182 6 neg.f64 %r251,%r251; bra $L1; $L16: .loc 1 193 27 set.u32.ge.s32 %r50,%r160,0; .loc 1 193 30 or.b32 %r370,%r135,%r50; .loc 1 193 4 setp.ne.u32 %r371,%r370,0; @ %r371 bra $L19; $L43: .loc 1 193 52 sub.f64 %r53,%r252,%r252; .loc 1 193 55 div.rn.f64 %r251,%r53,%r53; bra $L1; $L19: .loc 1 196 4 setp.le.s32 %r372,%r155,1105199104; @ %r372 bra $L20; .loc 1 197 8 setp.le.s32 %r373,%r155,1139802112; @ %r373 bra $L21; .loc 1 198 5 setp.gt.s32 %r374,%r147,1072693247; @ %r374 bra $L22; .loc 1 198 52 setp.ge.s32 %r375,%r154,0; @ %r375 bra $L23; $L24: .loc 1 198 37 mov.u32 %r376,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r376; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r377,[%value_in]; } mov.f64 %r251,%r377; bra $L1; $L23: .loc 1 198 53 mov.u32 %r378,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r378; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r379,[%value_in]; } mov.f64 %r251,%r379; bra $L1; $L22: .loc 1 199 52 setp.gt.s32 %r380,%r154,0; @ %r380 bra $L24; bra $L23; $L21: .loc 1 202 8 setp.gt.s32 %r381,%r147,1072693246; @ %r381 bra $L25; .loc 1 202 54 setp.lt.s32 %r382,%r154,0; @ ! %r382 bra $L23; bra $L24; $L25: .loc 1 203 8 setp.le.s32 %r383,%r147,1072693248; @ %r383 bra $L26; .loc 1 203 54 setp.gt.s32 %r384,%r154,0; @ %r384 bra $L24; bra $L23; $L26: .loc 1 206 8 mov.f64 %r385,0d3ff0000000000000; sub.f64 %r189,%r347,%r385; .loc 1 207 12 mul.f64 %r54,%r189,%r189; .loc 1 207 48 fma.rn.f64 %r55,%r189,0dbfd0000000000000,0d3fd5555555555555; .loc 1 207 20 neg.f64 %r387,%r55; fma.rn.f64 %r56,%r387,%r189,0d3fe0000000000000; .loc 1 207 8 mul.f64 %r388,%r54,%r56; .loc 1 209 8 mul.f64 %r390,%r388,0dbff71547652b82fe; fma.rn.f64 %r191,%r189,0d3e54ae0bf85ddf44,%r390; .loc 1 210 9 fma.rn.f64 %r192,%r189,0d3ff7154760000000,%r191; .loc 1 211 6 mov.b64 %r240,%r192; and.b64 %r391,%r240,-4294967296; mov.b64 %r141,%r391; .loc 1 212 16 fma.rn.f64 %r58,%r189,0dbff7154760000000,%r141; .loc 1 212 9 sub.f64 %r142,%r191,%r58; bra $L27; $L20: .loc 1 217 8 and.b32 %r393,%r160,2146435072; setp.ne.u32 %r394,%r393,0; @ %r394 bra $L56; .loc 1 218 7 mul.f64 %r251,%r347,0d4340000000000000; .loc 1 218 26 mov.b64 %r395,%r251; shr.u64 %r396,%r395,32; cvt.u32.u64 %r147,%r396; .loc 1 218 19 mov.u32 %r144,-53; bra $L28; $L56: .loc 1 215 8 mov.u32 %r144,0; $L28: .loc 1 219 17 shr.s32 %r398,%r147,20; .loc 1 219 22 add.u32 %r399,%r398,-1023; .loc 1 219 9 add.u32 %r145,%r399,%r144; .loc 1 220 9 and.b32 %r165,%r147,1048575; .loc 1 222 9 or.b32 %r148,%r165,1072693248; .loc 1 223 8 setp.le.s32 %r400,%r165,235662; @ %r400 bra $L57; .loc 1 224 13 setp.le.s32 %r401,%r165,767609; @ %r401 bra $L58; .loc 1 225 17 add.u32 %r145,%r145,1; .loc 1 225 24 add.u32 %r148,%r148,-1048576; mov.f64 %r138,0d0000000000000000; mov.f64 %r224,%r138; mov.u32 %r150,0; mov.f64 %r222,0d3ff0000000000000; bra $L29; $L57: mov.f64 %r138,0d0000000000000000; mov.f64 %r224,%r138; mov.u32 %r150,0; mov.f64 %r222,0d3ff0000000000000; bra $L29; $L58: mov.f64 %r138,0d3fe2b80340000000; mov.f64 %r224,0d3e4cfdeb43cfd006; mov.u32 %r150,262144; mov.f64 %r222,0d3ff8000000000000; $L29: .loc 1 226 6 mov.b64 %r241,%r251; cvt.u64.u32 %r402,%r148; shl.b64 %r403,%r402,32; and.b64 %r404,%r241,4294967295; or.b64 %r405,%r404,%r403; mov.b64 %r167,%r405; .loc 1 229 8 sub.f64 %r168,%r167,%r222; .loc 1 230 17 add.f64 %r406,%r167,%r222; .loc 1 230 8 rcp.rn.f64 %r169,%r406; .loc 1 231 8 mul.f64 %r170,%r168,%r169; .loc 1 233 6 mov.b64 %r242,%r170; and.b64 %r408,%r242,-4294967296; mov.b64 %r172,%r408; .loc 1 236 6 shr.s32 %r409,%r148,1; or.b32 %r410,%r409,536870912; add.u32 %r411,%r410,524288; add.u32 %r412,%r411,%r150; cvt.u64.u32 %r413,%r412; shl.b64 %r414,%r413,32; mov.b64 %r173,%r414; .loc 1 237 21 sub.f64 %r417,%r173,%r222; .loc 1 237 10 sub.f64 %r174,%r167,%r417; .loc 1 238 17 neg.f64 %r418,%r172; fma.rn.f64 %r69,%r418,%r173,%r168; .loc 1 238 26 fma.rn.f64 %r70,%r418,%r174,%r69; .loc 1 238 10 mul.f64 %r175,%r70,%r169; .loc 1 240 9 mul.f64 %r176,%r170,%r170; .loc 1 241 12 mul.f64 %r71,%r176,%r176; .loc 1 241 47 fma.rn.f64 %r72,%r176,0d3fca7e284a454eef,0d3fcd864a93c9db65; .loc 1 241 40 fma.rn.f64 %r73,%r72,%r176,0d3fd17460a91d4101; .loc 1 241 33 fma.rn.f64 %r74,%r73,%r176,0d3fd55555518f264d; .loc 1 241 26 fma.rn.f64 %r75,%r74,%r176,0d3fdb6db6db6fabff; .loc 1 241 19 fma.rn.f64 %r76,%r75,%r176,0d3fe3333333333303; .loc 1 242 19 add.f64 %r420,%r170,%r172; .loc 1 242 14 mul.f64 %r421,%r420,%r175; .loc 1 242 8 fma.rn.f64 %r177,%r71,%r76,%r421; .loc 1 244 15 fma.rn.f64 %r79,%r172,%r172,0d4008000000000000; .loc 1 244 10 add.f64 %r422,%r79,%r177; .loc 1 245 6 mov.b64 %r244,%r422; and.b64 %r423,%r244,-4294967296; mov.b64 %r179,%r423; .loc 1 246 19 mov.f64 %r426,0d4008000000000000; sub.f64 %r425,%r179,%r426; .loc 1 246 24 fma.rn.f64 %r81,%r418,%r172,%r425; .loc 1 246 10 sub.f64 %r427,%r177,%r81; .loc 1 249 21 mul.f64 %r428,%r427,%r170; .loc 1 249 8 fma.rn.f64 %r181,%r175,%r179,%r428; .loc 1 251 10 fma.rn.f64 %r182,%r172,%r179,%r181; .loc 1 252 6 mov.b64 %r245,%r182; and.b64 %r429,%r245,-4294967296; mov.b64 %r183,%r429; .loc 1 253 18 fma.rn.f64 %r83,%r418,%r179,%r183; .loc 1 253 10 sub.f64 %r431,%r181,%r83; .loc 1 255 24 mul.f64 %r432,%r431,0d3feec709dc3a03fd; .loc 1 255 20 fma.rn.f64 %r85,%r183,0dbe3e2fe0145b01f5,%r432; .loc 1 255 10 add.f64 %r185,%r85,%r224; .loc 1 257 8 cvt.rn.f64.s32 %r186,%r145; .loc 1 258 17 fma.rn.f64 %r86,%r183,0d3feec709e0000000,%r185; .loc 1 258 22 add.f64 %r433,%r86,%r138; .loc 1 258 9 add.f64 %r434,%r433,%r186; .loc 1 259 6 mov.b64 %r246,%r434; and.b64 %r435,%r246,-4294967296; mov.b64 %r141,%r435; .loc 1 260 20 sub.f64 %r437,%r141,%r186; .loc 1 260 23 sub.f64 %r438,%r437,%r138; .loc 1 260 32 fma.rn.f64 %r90,%r183,0dbfeec709e0000000,%r438; .loc 1 260 9 sub.f64 %r142,%r185,%r90; $L27: .loc 1 264 38 add.u32 %r439,%r135,-1; .loc 1 264 30 or.b32 %r440,%r439,%r50; .loc 1 264 4 setp.ne.u32 %r441,%r440,0; .loc 1 265 8 selp.f64 %r143,0d3ff0000000000000,0dbff0000000000000,%r441; .loc 1 269 2 mov.b64 %r247,%r253; and.b64 %r442,%r247,-4294967296; mov.b64 %r193,%r442; .loc 1 270 10 sub.f64 %r443,%r253,%r193; .loc 1 270 19 mul.f64 %r444,%r142,%r253; .loc 1 270 6 fma.rn.f64 %r194,%r443,%r141,%r444; .loc 1 271 6 mul.f64 %r140,%r141,%r193; .loc 1 272 4 add.f64 %r149,%r194,%r140; mov.b64 %r445,%r149; shr.u64 %r446,%r445,32; cvt.u32.u64 %r447,%r446; cvt.u32.u64 %r449,%r445; .loc 1 274 5 setp.le.s32 %r450,%r447,1083179007; @ %r450 bra $L31; .loc 1 275 12 add.u32 %r451,%r447,-1083179008; .loc 1 275 24 or.b32 %r452,%r451,%r449; .loc 1 275 8 setp.eq.u32 %r453,%r452,0; @ %r453 bra $L32; .loc 1 276 10 set.u32.lt.f64 %r456,%r143,0d0000000000000000; neg.s32 %r457,%r456; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r457; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r458,[%value_in]; } mov.f64 %r251,%r458; bra $L1; $L32: .loc 1 278 9 add.f64 %r459,%r194,0d3c971547652b82fe; .loc 1 278 15 sub.f64 %r460,%r149,%r140; .loc 1 278 5 setp.gt.f64 %r461,%r459,%r460; @ ! %r461 bra $L33; .loc 1 278 28 set.u32.lt.f64 %r464,%r143,0d0000000000000000; neg.s32 %r465,%r464; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r465; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r466,[%value_in]; } mov.f64 %r251,%r466; bra $L1; $L31: .loc 1 280 14 and.b32 %r104,%r447,2147483647; .loc 1 280 11 setp.le.s32 %r467,%r104,1083231231; @ %r467 bra $L35; .loc 1 281 12 add.u32 %r468,%r447,1064252416; .loc 1 281 24 or.b32 %r469,%r468,%r449; .loc 1 281 8 setp.eq.u32 %r470,%r469,0; @ %r470 bra $L36; .loc 1 282 10 set.u32.lt.f64 %r473,%r143,0d0000000000000000; neg.s32 %r474,%r473; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r474; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r475,[%value_in]; } mov.f64 %r251,%r475; bra $L1; $L36: .loc 1 284 12 sub.f64 %r476,%r149,%r140; .loc 1 284 5 setp.ge.f64 %r477,%r476,%r194; @ ! %r477 bra $L33; .loc 1 284 25 set.u32.lt.f64 %r480,%r143,0d0000000000000000; neg.s32 %r481,%r480; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r481; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r482,[%value_in]; } mov.f64 %r251,%r482; bra $L1; $L35: .loc 1 293 4 setp.le.s32 %r483,%r104,1071644672; @ %r483 bra $L60; .loc 1 291 8 shr.s32 %r225,%r104,20; $L42: .loc 1 294 27 add.u32 %r484,%r225,-1022; .loc 1 294 23 mov.u32 %r486,1048576; shr.s32 %r485,%r486,%r484; .loc 1 294 8 add.u32 %r197,%r485,%r447; .loc 1 295 25 shr.s32 %r487,%r197,20; and.b32 %r488,%r487,2047; .loc 1 295 8 add.u32 %r198,%r488,-1023; .loc 1 297 6 mov.u32 %r490,-1048576; shr.s32 %r489,%r490,%r198; and.b32 %r491,%r489,%r197; cvt.u64.u32 %r492,%r491; shl.b64 %r493,%r492,32; mov.b64 %r199,%r493; .loc 1 298 13 and.b32 %r496,%r197,1048575; .loc 1 298 25 or.b32 %r120,%r496,1048576; .loc 1 298 42 mov.u32 %r498,20; sub.u32 %r497,%r498,%r198; .loc 1 298 8 shr.s32 %r146,%r120,%r497; .loc 1 299 8 setp.ge.s32 %r499,%r447,0; @ %r499 bra $L39; .loc 1 299 16 neg.s32 %r146,%r146; $L39: .loc 1 300 10 sub.f64 %r140,%r140,%r199; .loc 1 313 9 shl.b32 %r218,%r146,20; .loc 1 302 4 add.f64 %r149,%r194,%r140; bra $L38; $L60: mov.u32 %r218,0; .loc 1 292 4 mov.u32 %r146,%r218; $L38: .loc 1 303 2 mov.b64 %r249,%r149; and.b64 %r500,%r249,-4294967296; mov.b64 %r200,%r500; .loc 1 305 13 sub.f64 %r501,%r200,%r140; .loc 1 305 10 sub.f64 %r502,%r194,%r501; .loc 1 305 25 mul.f64 %r503,%r200,0dbe205c610ca86c39; .loc 1 305 4 fma.rn.f64 %r201,%r502,0d3fe62e42fefa39ef,%r503; .loc 1 306 4 fma.rn.f64 %r202,%r200,0d3fe62e4300000000,%r201; .loc 1 307 10 fma.rn.f64 %r125,%r200,0dbfe62e4300000000,%r202; .loc 1 307 4 sub.f64 %r203,%r201,%r125; .loc 1 308 5 mul.f64 %r204,%r202,%r202; .loc 1 309 35 fma.rn.f64 %r126,%r204,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 309 29 fma.rn.f64 %r127,%r126,%r204,0d3f11566aaf25de2c; .loc 1 309 23 fma.rn.f64 %r128,%r127,%r204,0dbf66c16c16bebd93; .loc 1 309 17 fma.rn.f64 %r129,%r128,%r204,0d3fc555555555553e; .loc 1 309 6 neg.f64 %r505,%r129; fma.rn.f64 %r205,%r505,%r204,%r202; .loc 1 310 9 mul.f64 %r506,%r202,%r205; .loc 1 310 17 mov.f64 %r508,0d4000000000000000; sub.f64 %r507,%r205,%r508; .loc 1 310 13 div.rn.f64 %r132,%r506,%r507; .loc 1 310 25 fma.rn.f64 %r133,%r202,%r203,%r203; .loc 1 310 5 sub.f64 %r509,%r132,%r133; .loc 1 311 13 sub.f64 %r134,%r509,%r202; .loc 1 311 5 mov.f64 %r510,0d3ff0000000000000; sub.f64 %r207,%r510,%r134; .loc 1 312 2 mov.b64 %r511,%r207; shr.u64 %r512,%r511,32; cvt.u32.u64 %r513,%r512; .loc 1 313 4 add.u32 %r209,%r513,%r218; .loc 1 314 4 setp.gt.s32 %r515,%r209,1048575; @ %r515 bra $L40; .loc 1 314 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r207; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r146; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r518,[%value_in]; } mov.f64 %r139,%r518; bra $L41; $L40: .loc 1 315 7 cvt.u64.u32 %r519,%r209; shl.b64 %r520,%r519,32; and.b64 %r521,%r511,4294967295; or.b64 %r522,%r521,%r520; mov.b64 %r139,%r522; $L41: .loc 1 316 10 mul.f64 %r251,%r139,%r143; bra $L1; $L45: .loc 1 122 13 mov.f64 %r251,0d3ff0000000000000; bra $L1; $L46: mov.f64 %r251,0d3ff0000000000000; bra $L1; $L52: mov.f64 %r251,0d3ff0000000000000; bra $L1; $L54: .loc 1 158 24 mov.f64 %r251,0d0000000000000000; bra $L1; $L55: .loc 1 163 38 mov.f64 %r251,%r252; bra $L1; $L33: .loc 1 291 8 shr.s32 %r524,%r447,20; and.b32 %r225,%r524,2047; bra $L42; $L9: .loc 1 172 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r252; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r526,[%value_in]; } mov.f64 %r251,%r526; .loc 1 174 4 setp.ne.u32 %r527,%r161,0; @ %r527 bra $L43; .loc 1 175 30 and.b32 %r528,%r160,1073741823; set.u32.eq.u32 %r530,%r528,1072693248; neg.s32 %r531,%r530; mov.u32 %r529,%r531; .loc 1 175 27 set.u32.eq.u32 %r533,%r147,0; neg.s32 %r534,%r533; mov.u32 %r532,%r534; .loc 1 175 30 cvt.u16.u8 %r542,%r529; mov.u16 %r536,%r542; cvt.u16.u8 %r542,%r532; mov.u16 %r537,%r542; or.b16 %r535,%r536,%r537; cvt.u32.u16 %r538,%r535; cvt.u16.u8 %r539,%r538; setp.ne.u16 %r540,%r539,0; @ ! %r540 bra $L43; bra $L61; $L51: .loc 1 137 10 mov.u32 %r135,0; bra $L12; $L1: .loc 1 317 1 mov.f64 %value,%r251; st.param.f64 [%value_out],%value; ret; } /84 0 0 0 644 10360 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .visible .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2 .extern .func (.param .u32 %value_out) __kernel_rem_pio2 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); // BEGIN VAR DEF: npio2_hw .const .align 4 .u32 npio2_hw[32] = {1073291771,1074340347,1074977148,1075388923,1075800698,1076025724,1076231611,1076437499,1076643386,1076849274,1076971356,1077074300,1077177244,1077280187,1077383131,1077486075,1077589019,1077691962,1077794906,1077897850,1077968460,1078019932,1078071404,1078122876,1078174348,1078225820,1078277292,1078328763,1078380235,1078431707,1078483179,1078534651 }; // BEGIN VAR DEF: two_over_pi .const .align 4 .u32 two_over_pi[66] = {10680707,7228996,1387004,2578385,16069853,12639074,9804092,4427841,16666979,11263675,12935607,2387514,4345298,14681673,3074569,13734428,16653803,1880361,10960616,8533493,3062596,8710556,7349940,6258241,3772886,3769171,3798172,8675211,12450088,3874808,9961438,366607,15675153,9132554,7151469,3571407,2607881,12013382,4155038,6285869,7677882,13102053,15825725,473591,9065106,15363067,6271263,9264392,5636912,4652155,7056368,13614112,10155062,1944035,9527646,15080200,6658437,6231200,6832269,16767104,5075751,3212806,1398474,7579849,6349435,12618859 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_rem_pio2 .visible .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r22; .reg .f64 %r25; .reg .f64 %r28; .reg .u32 %r30; .reg .f64 %r32; .reg .f64 %r36; .reg .f64 %r40; .reg .u32 %r41; .reg .f64 %r46; .reg .f64 %r51; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r70; .reg .f64 %r71; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .u32 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .u32 %r101; .reg .f64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r107; .reg .f64 %r108; .reg .pred %r109; .reg .pred %r110; .reg .f64 %r111; .reg .pred %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .pred %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .pred %r127; .reg .f64 %r129; .reg .pred %r131; .reg .u64 %r132; .reg .u32 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .pred %r145; .reg .f64 %r148; .reg .f64 %r149; .reg .u64 %r150; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .pred %r162; .reg .f64 %r163; .reg .f64 %r164; .reg .pred %r165; .reg .u32 %r167; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u32 %r179; .reg .pred %r180; .reg .pred %r181; .reg .u32 %r186; .reg .u64 %r187; .reg .u32 %r188; .reg .pred %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r195; mov.f64 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 98 2 mov.b64 %r104,%r102; shr.u64 %r105,%r104,32; cvt.u32.u64 %r74,%r105; .loc 1 99 5 and.b32 %r75,%r74,2147483647; .loc 1 100 4 setp.gt.s32 %r107,%r75,1072243195; @ %r107 bra $L2; .loc 1 101 12 st.f64 [%r103],%r102; .loc 1 101 22 mov.f64 %r108,0d0000000000000000; st.f64 [%r103+8],%r108; .loc 1 101 34 mov.u32 %r101,0; bra $L1; $L2: .loc 1 102 4 setp.gt.s32 %r109,%r75,1073928571; @ %r109 bra $L4; .loc 1 103 8 setp.le.s32 %r110,%r74,0; @ %r110 bra $L5; .loc 1 104 5 mov.f64 %r111,0d3ff921fb54400000; sub.f64 %r87,%r102,%r111; .loc 1 105 5 setp.eq.u32 %r112,%r75,1073291771; @ %r112 bra $L6; .loc 1 106 16 mov.f64 %r113,0d3dd0b4611a626331; sub.f64 %r22,%r87,%r113; .loc 1 106 12 st.f64 [%r103],%r22; .loc 1 107 16 sub.f64 %r114,%r87,%r22; .loc 1 107 22 sub.f64 %r115,%r114,%r113; .loc 1 107 12 st.f64 [%r103+8],%r115; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L6: .loc 1 109 9 mov.f64 %r117,0d3dd0b4611a600000; sub.f64 %r88,%r87,%r117; .loc 1 110 16 mov.f64 %r118,0d3ba3198a2e037073; sub.f64 %r25,%r88,%r118; .loc 1 110 12 st.f64 [%r103],%r25; .loc 1 111 16 sub.f64 %r119,%r88,%r25; .loc 1 111 22 sub.f64 %r120,%r119,%r118; .loc 1 111 12 st.f64 [%r103+8],%r120; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L5: .loc 1 115 5 add.f64 %r85,%r102,0d3ff921fb54400000; .loc 1 116 5 setp.eq.u32 %r122,%r75,1073291771; @ %r122 bra $L7; .loc 1 117 16 add.f64 %r28,%r85,0d3dd0b4611a626331; .loc 1 117 12 st.f64 [%r103],%r28; .loc 1 118 16 sub.f64 %r123,%r85,%r28; .loc 1 118 22 add.f64 %r124,%r123,0d3dd0b4611a626331; .loc 1 118 12 st.f64 [%r103+8],%r124; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L7: .loc 1 120 9 add.f64 %r86,%r85,0d3dd0b4611a600000; .loc 1 121 16 add.f64 %r32,%r86,0d3ba3198a2e037073; .loc 1 121 12 st.f64 [%r103],%r32; .loc 1 122 16 sub.f64 %r125,%r86,%r32; .loc 1 122 22 add.f64 %r126,%r125,0d3ba3198a2e037073; .loc 1 122 12 st.f64 [%r103+8],%r126; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L4: .loc 1 127 4 setp.gt.s32 %r127,%r75,1094263291; @ %r127 bra $L8; .loc 1 128 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r102; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r129,[%value_in]; } .loc 1 129 33 fma.rn.f64 %r36,%r129,0d3fe45f306dc9c883,0d3fe0000000000000; .loc 1 129 9 cvt.rzi.s32.f64 %r101,%r36; .loc 1 130 9 cvt.rn.f64.s32 %r80,%r101; .loc 1 131 9 neg.f64 %r195,%r80; fma.rn.f64 %r71,%r80,0dbff921fb54400000,%r129; .loc 1 132 9 mul.f64 %r70,%r80,0d3dd0b4611a626331; .loc 1 133 8 setp.gt.s32 %r131,%r101,31; @ %r131 bra $L9; .loc 1 133 27 cvta.const.u64 %r132,npio2_hw; .loc 1 133 29 add.u32 %r133,%r101,-1; .loc 1 133 27 cvt.s64.s32 %r134,%r133; shl.b64 %r135,%r134,2; add.u64 %r136,%r132,%r135; .loc 1 133 13 ld.u32 %r137,[%r136]; setp.eq.u32 %r138,%r137,%r75; @ %r138 bra $L9; .loc 1 134 11 sub.f64 %r40,%r71,%r70; .loc 1 134 8 st.f64 [%r103],%r40; bra $L10; $L9: .loc 1 138 18 sub.f64 %r40,%r71,%r70; .loc 1 137 13 shr.s32 %r41,%r75,20; .loc 1 140 22 mov.b64 %r139,%r40; shr.u64 %r141,%r139,52; cvt.u32.u64 %r142,%r141; .loc 1 140 27 and.b32 %r143,%r142,2047; .loc 1 140 15 sub.u32 %r144,%r41,%r143; .loc 1 141 12 setp.gt.s32 %r145,%r144,16; @ %r145 bra $L11; .loc 1 138 15 st.f64 [%r103],%r40; bra $L10; $L11: .loc 1 144 10 fma.rn.f64 %r83,%r195,0d3dd0b4611a600000,%r71; .loc 1 145 26 sub.f64 %r148,%r71,%r83; .loc 1 145 29 fma.rn.f64 %r46,%r195,0d3dd0b4611a600000,%r148; .loc 1 145 10 neg.f64 %r149,%r46; fma.rn.f64 %r70,%r80,0d3ba3198a2e037073,%r149; .loc 1 146 15 sub.f64 %r40,%r83,%r70; .loc 1 148 19 mov.b64 %r150,%r40; shr.u64 %r152,%r150,52; cvt.u32.u64 %r153,%r152; .loc 1 148 24 and.b32 %r154,%r153,2047; .loc 1 148 12 sub.u32 %r155,%r41,%r154; .loc 1 149 9 setp.gt.s32 %r156,%r155,49; @ %r156 bra $L12; .loc 1 146 12 st.f64 [%r103],%r40; .loc 1 144 10 mov.f64 %r71,%r83; bra $L10; $L12: .loc 1 152 11 fma.rn.f64 %r71,%r195,0d3ba3198a2e000000,%r83; .loc 1 153 27 sub.f64 %r159,%r83,%r71; .loc 1 153 30 fma.rn.f64 %r51,%r195,0d3ba3198a2e000000,%r159; .loc 1 153 11 neg.f64 %r160,%r51; fma.rn.f64 %r70,%r80,0d397b839a252049c1,%r160; .loc 1 154 16 sub.f64 %r40,%r71,%r70; .loc 1 154 13 st.f64 [%r103],%r40; $L10: .loc 1 158 15 sub.f64 %r161,%r71,%r40; .loc 1 158 21 sub.f64 %r55,%r161,%r70; .loc 1 158 11 st.f64 [%r103+8],%r55; .loc 1 159 8 setp.ge.s32 %r162,%r74,0; @ %r162 bra $L1; .loc 1 159 24 neg.f64 %r163,%r40; .loc 1 159 22 st.f64 [%r103],%r163; .loc 1 159 38 neg.f64 %r164,%r55; .loc 1 159 36 st.f64 [%r103+8],%r164; .loc 1 159 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 165 4 setp.le.s32 %r165,%r75,2146435071; @ %r165 bra $L13; .loc 1 166 17 sub.f64 %r59,%r102,%r102; .loc 1 166 15 st.f64 [%r103+8],%r59; .loc 1 166 10 st.f64 [%r103],%r59; .loc 1 166 28 mov.u32 %r101,0; bra $L1; $L13: .loc 1 170 2 cvt.u32.u64 %r167,%r104; .loc 1 171 17 shr.s32 %r172,%r75,20; .loc 1 171 6 add.u32 %r77,%r172,-1046; .loc 1 172 2 shl.b32 %r173,%r77,20; sub.u32 %r174,%r75,%r173; cvt.u64.u32 %r175,%r174; shl.b64 %r176,%r175,32; cvt.u64.u32 %r177,%r167; or.b64 %r178,%r177,%r176; mov.b64 %r78,%r178; .loc 1 174 20 cvt.rzi.s32.f64 %r179,%r78; .loc 1 174 11 cvt.rn.f64.s32 %r91,%r179; .loc 1 174 9 st.f64 [%frame],%r91; .loc 1 175 13 sub.f64 %r92,%r78,%r91; .loc 1 175 9 mul.f64 %r93,%r92,0d4170000000000000; .loc 1 174 20 cvt.rzi.s32.f64 %r94,%r93; .loc 1 174 11 cvt.rn.f64.s32 %r95,%r94; .loc 1 174 9 st.f64 [%frame+8],%r95; .loc 1 175 13 sub.f64 %r96,%r93,%r95; .loc 1 175 9 mul.f64 %r97,%r96,0d4170000000000000; .loc 1 177 8 st.f64 [%frame+16],%r97; .loc 1 179 16 setp.neu.f64 %r180,%r97,0d0000000000000000; @ %r180 bra $L15; setp.ne.u32 %r181,%r94,0; .loc 1 179 13 selp.u32 %r30,2,1,%r181; bra $L14; $L15: .loc 1 178 5 mov.u32 %r30,3; $L14: .loc 1 180 8 cvta.const.u64 %r187,two_over_pi; mov.u32 %r186,2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r77; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r30; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r186; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r187; call (%value_in),__kernel_rem_pio2,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r188,[%value_in]; } mov.u32 %r101,%r188; .loc 1 181 4 setp.ge.s32 %r189,%r74,0; @ %r189 bra $L1; .loc 1 181 19 ld.f64 %r191,[%r103]; neg.f64 %r190,%r191; .loc 1 181 17 st.f64 [%r103],%r190; .loc 1 181 33 ld.f64 %r193,[%r103+8]; neg.f64 %r192,%r193; .loc 1 181 31 st.f64 [%r103+8],%r192; .loc 1 181 47 neg.s32 %r101,%r101; $L1: .loc 1 183 1 mov.u32 %value,%r101; st.param.u32 [%value_out],%value; ret; } /104 0 0 0 644 4439 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainder .visible .func (.param .f64 %value_out) __ieee754_remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmod .extern .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_remainder .visible .func (.param .f64 %value_out) __ieee754_remainder (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r29; .reg .f64 %r38; .reg .f64 %r39; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .f64 %r46; .reg .u32 %r47; .reg .u32 %r50; .reg .u64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .pred %r71; .reg .f64 %r74; .reg .f64 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .f64 %r84; .reg .f64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .f64 %r89; .reg .pred %r90; .reg .f64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u64 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; mov.f64 %r54,%ar0; mov.f64 %r55,%ar1; .loc 1 46 2 mov.b64 %r56,%r55; shr.u64 %r57,%r56,32; cvt.u32.u64 %r41,%r57; cvt.u32.u64 %r50,%r56; .loc 1 48 5 and.b32 %r43,%r41,2147483647; .loc 1 52 8 or.b32 %r61,%r43,%r50; .loc 1 52 4 setp.ne.u32 %r62,%r61,0; @ %r62 bra $L2; .loc 1 52 26 mul.f64 %r25,%r54,%r55; .loc 1 52 29 div.rn.f64 %r53,%r25,%r25; bra $L1; $L2: mov.b64 %r63,%r54; shr.u64 %r64,%r63,32; cvt.u32.u64 %r47,%r64; .loc 1 49 5 and.b32 %r44,%r47,2147483647; .loc 1 53 4 setp.gt.s32 %r66,%r44,2146435071; @ %r66 bra $L4; .loc 1 53 21 setp.le.s32 %r67,%r43,2146435071; @ %r67 bra $L5; .loc 1 55 9 add.u32 %r68,%r43,-2146435072; .loc 1 55 21 or.b32 %r69,%r68,%r50; .loc 1 54 21 setp.eq.u32 %r70,%r69,0; @ %r70 bra $L6; $L4: .loc 1 56 15 mul.f64 %r29,%r54,%r55; .loc 1 56 18 div.rn.f64 %r53,%r29,%r29; bra $L1; $L5: .loc 1 59 5 setp.gt.s32 %r71,%r43,2145386495; @ %r71 bra $L14; .loc 1 59 26 add.f64 %r74,%r55,%r55; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r74; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r75,[%value_in]; } mov.f64 %r38,%r75; bra $L7; $L14: mov.f64 %r38,%r54; $L7: .loc 1 60 10 sub.u32 %r76,%r44,%r43; .loc 1 60 18 mov.b64 %r77,%r54; cvt.u32.u64 %r78,%r77; sub.u32 %r80,%r78,%r50; .loc 1 60 14 or.b32 %r81,%r76,%r80; .loc 1 60 5 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L15; .loc 1 60 39 mul.f64 %r53,%r38,0d0000000000000000; bra $L1; $L15: mov.f64 %r54,%r38; $L6: .loc 1 61 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } mov.f64 %r39,%r84; .loc 1 62 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r55; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 63 5 and.b32 %r87,%r41,2145386496; setp.ne.u32 %r88,%r87,0; @ %r88 bra $L8; .loc 1 64 10 add.f64 %r89,%r39,%r39; .loc 1 64 8 setp.gt.f64 %r90,%r89,%r86; @ ! %r90 bra $L9; .loc 1 65 4 sub.f64 %r39,%r39,%r86; .loc 1 66 7 add.f64 %r91,%r39,%r39; .loc 1 66 5 setp.ge.f64 %r92,%r91,%r86; @ ! %r92 bra $L9; .loc 1 66 16 sub.f64 %r39,%r39,%r86; bra $L9; $L8: .loc 1 69 13 mul.f64 %r46,%r86,0d3fe0000000000000; .loc 1 70 8 setp.gt.f64 %r93,%r39,%r46; @ ! %r93 bra $L9; .loc 1 71 4 sub.f64 %r39,%r39,%r86; .loc 1 72 5 setp.le.f64 %r94,%r46,%r39; @ ! %r94 bra $L9; .loc 1 72 19 sub.f64 %r39,%r39,%r86; $L9: .loc 1 76 2 mov.b64 %r52,%r39; .loc 1 47 5 and.b32 %r95,%r47,-2147483648; .loc 1 76 2 shr.u64 %r97,%r52,32; cvt.u32.u64 %r98,%r97; xor.b32 %r99,%r95,%r98; cvt.u64.u32 %r100,%r99; shl.b64 %r101,%r100,32; and.b64 %r102,%r52,4294967295; or.b64 %r103,%r102,%r101; mov.b64 %r53,%r103; $L1: .loc 1 78 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-e_scalb.o/0 0 0 644 3051 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalb .visible .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/e_scalb.c" // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_scalb .visible .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r41; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .f64 %r46; .reg .u32 %r49; .reg .f64 %r50; mov.f64 %r28,%ar0; mov.f64 %r29,%ar1; .loc 1 43 5 setp.num.f64 %r30,%r28,%r29; @ %r30 bra $L2; $L5: .loc 1 43 35 mul.f64 %r27,%r28,%r29; bra $L1; $L2: .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; call (%value_in),finite,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 44 5 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 45 8 setp.gt.f64 %r34,%r29,0d0000000000000000; @ %r34 bra $L5; .loc 1 46 25 neg.f64 %r35,%r28; div.rn.f64 %r27,%r35,%r29; bra $L1; $L4: .loc 1 48 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; call (%value_in),rint,(%out_arg1); ld.param.f64 %r37,[%value_in]; } .loc 1 48 5 setp.eq.f64 %r38,%r37,%r29; @ %r38 bra $L6; .loc 1 48 30 sub.f64 %r25,%r29,%r29; .loc 1 48 34 div.rn.f64 %r27,%r25,%r25; bra $L1; $L6: .loc 1 53 5 setp.gt.f64 %r39,%r29,0d40efbd0000000000; @ ! %r39 bra $L13; .loc 1 53 28 mov.u32 %r41,65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } mov.f64 %r27,%r42; bra $L1; $L13: .loc 1 54 5 setp.lt.f64 %r43,%r29,0dc0efbd0000000000; @ ! %r43 bra $L14; .loc 1 54 28 mov.u32 %r45,-65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r45; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } mov.f64 %r27,%r46; bra $L1; $L14: .loc 1 56 9 cvt.rzi.s32.f64 %r49,%r29; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r49; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } mov.f64 %r27,%r50; $L1: .loc 1 58 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-e_sinh.o/ 0 0 0 644 4924 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinh .visible .func (.param .f64 %value_out) __ieee754_sinh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_sinh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_sinh .visible .func (.param .f64 %value_out) __ieee754_sinh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r27; .reg .f64 %r38; .reg .u32 %r40; .reg .f64 %r45; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .f64 %r62; .reg .pred %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .pred %r71; .reg .f64 %r73; .reg .f64 %r75; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u16 %r85; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .f64 %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r99; .reg .f64 %r101; .reg .u16 %r102; mov.f64 %r49,%ar0; .loc 1 54 2 mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r52,%r51; .loc 1 55 5 and.b32 %r40,%r52,2147483647; .loc 1 58 4 setp.le.s32 %r53,%r40,2146435071; @ %r53 bra $L2; .loc 1 58 29 add.f64 %r48,%r49,%r49; bra $L1; $L2: .loc 1 61 5 setp.ge.s32 %r54,%r52,0; .loc 1 61 14 selp.f64 %r38,0d3fe0000000000000,0dbfe0000000000000,%r54; .loc 1 63 5 setp.gt.s32 %r55,%r40,1077280767; @ %r55 bra $L5; .loc 1 64 9 setp.gt.s32 %r56,%r40,1043333119; @ %r56 bra $L6; .loc 1 65 11 add.f64 %r57,%r49,0d7fac7b1f3cac7433; .loc 1 65 5 setp.gt.f64 %r58,%r57,0d3ff0000000000000; @ ! %r58 bra $L15; bra $L14; $L6: .loc 1 66 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r60,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r62,[%value_in]; } mov.f64 %r45,%r62; .loc 1 67 8 setp.gt.s32 %r63,%r40,1072693247; @ %r63 bra $L8; $L12: .loc 1 67 41 mul.f64 %r64,%r45,%r45; .loc 1 67 46 add.f64 %r65,%r45,0d3ff0000000000000; .loc 1 67 43 div.rn.f64 %r66,%r64,%r65; .loc 1 67 39 neg.f64 %r67,%r66; fma.rn.f64 %r27,%r45,0d4000000000000000,%r67; .loc 1 67 32 mul.f64 %r48,%r27,%r38; bra $L1; $L8: .loc 1 68 22 add.f64 %r68,%r62,0d3ff0000000000000; .loc 1 68 19 div.rn.f64 %r69,%r62,%r68; .loc 1 68 17 add.f64 %r70,%r69,%r62; .loc 1 68 14 mul.f64 %r48,%r70,%r38; bra $L1; $L5: .loc 1 72 5 setp.gt.s32 %r71,%r40,1082535489; @ %r71 bra $L9; .loc 1 72 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r73,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r73; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r75,[%value_in]; } .loc 1 72 32 mul.f64 %r48,%r75,%r38; bra $L1; $L9: cvt.u32.u64 %r77,%r50; .loc 1 76 11 setp.le.s32 %r78,%r40,1082536909; @ %r78 bra $L10; .loc 1 76 32 set.u32.eq.u32 %r80,%r40,1082536910; neg.s32 %r81,%r80; mov.u32 %r79,%r81; .loc 1 76 50 set.u32.le.u32 %r83,%r77,-1883637635; neg.s32 %r84,%r83; mov.u32 %r82,%r84; .loc 1 76 45 cvt.u16.u8 %r102,%r79; mov.u16 %r86,%r102; cvt.u16.u8 %r102,%r82; mov.u16 %r87,%r102; and.b16 %r85,%r86,%r87; cvt.u32.u16 %r88,%r85; .loc 1 76 26 cvt.u16.u8 %r89,%r88; setp.eq.u16 %r90,%r89,0; @ %r90 bra $L11; $L10: .loc 1 77 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r92,[%value_in]; } .loc 1 77 10 mul.f64 %r94,%r92,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r94; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r95,[%value_in]; } .loc 1 78 8 mul.f64 %r96,%r38,%r95; .loc 1 79 14 mul.f64 %r48,%r96,%r95; bra $L1; $L11: .loc 1 83 10 mul.f64 %r48,%r49,0d7fac7b1f3cac7433; bra $L1; $L14: .loc 1 65 26 mov.f64 %r48,%r49; bra $L1; $L15: .loc 1 66 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r99,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r99; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r101,[%value_in]; } mov.f64 %r45,%r101; bra $L12; $L1: .loc 1 84 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_sqrt.o/ 0 0 0 644 7015 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .visible .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_sqrt.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_sqrt .visible .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r28; .reg .u32 %r32; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r45; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r70; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r78; .reg .u32 %r80; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r86; .reg .u32 %r88; .reg .f64 %r92; .reg .f64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .pred %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .pred %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r127; .reg .pred %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u16 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .pred %r141; .reg .pred %r142; .reg .pred %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .pred %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u64 %r157; .reg .u64 %r161; .reg .u64 %r162; .reg .u64 %r163; .reg .pred %r165; .reg .u16 %r166; mov.f64 %r93,%ar0; .loc 1 106 2 mov.b64 %r94,%r93; shr.u64 %r95,%r94,32; cvt.u32.u64 %r59,%r95; cvt.u32.u64 %r45,%r94; .loc 1 109 9 and.b32 %r99,%r59,2146435072; .loc 1 109 4 setp.ne.u32 %r100,%r99,2146435072; @ %r100 bra $L2; .loc 1 110 16 fma.rn.f64 %r92,%r93,%r93,%r93; bra $L1; $L2: .loc 1 114 4 setp.gt.s32 %r101,%r59,0; @ %r101 bra $L4; .loc 1 115 14 and.b32 %r102,%r59,2147483647; .loc 1 115 23 or.b32 %r103,%r102,%r45; .loc 1 115 8 setp.eq.u32 %r104,%r103,0; @ %r104 bra $L24; .loc 1 116 13 setp.eq.u32 %r105,%r59,0; @ %r105 bra $L25; .loc 1 117 12 sub.f64 %r28,%r93,%r93; .loc 1 117 15 div.rn.f64 %r92,%r28,%r28; bra $L1; $L4: .loc 1 120 4 shr.s32 %r40,%r59,20; .loc 1 121 4 setp.eq.u32 %r106,%r40,0; @ ! %r106 bra $L7; bra $L6; $L25: mov.u32 %r40,%r59; $L5: .loc 1 123 5 add.u32 %r40,%r40,-21; .loc 1 124 14 shr.u32 %r59,%r45,11; .loc 1 124 25 shl.b32 %r45,%r45,21; .loc 1 122 15 setp.eq.u32 %r107,%r59,0; @ %r107 bra $L5; .loc 1 126 18 and.b32 %r108,%r59,1048576; .loc 1 126 30 setp.ne.u32 %r109,%r108,0; @ %r109 bra $L26; $L6: mov.u32 %r70,0; $L9: .loc 1 126 42 add.u32 %r59,%r59,%r59; mov.u32 %r23,%r70; .loc 1 126 35 add.u32 %r70,%r23,1; .loc 1 126 18 and.b32 %r111,%r59,1048576; .loc 1 126 30 setp.eq.u32 %r112,%r111,0; @ %r112 bra $L9; .loc 1 128 22 mov.u32 %r113,32; sub.u32 %r86,%r113,%r70; .loc 1 129 10 mov.u32 %r84,%r45; shl.b32 %r45,%r45,%r70; bra $L8; $L26: .loc 1 124 25 mov.u32 %r84,%r45; .loc 1 126 30 mov.u32 %r86,32; mov.u32 %r23,-1; $L8: .loc 1 127 8 sub.u32 %r40,%r40,%r23; .loc 1 128 17 shr.u32 %r114,%r84,%r86; .loc 1 128 10 or.b32 %r59,%r59,%r114; $L7: .loc 1 131 4 add.u32 %r72,%r40,-1023; .loc 1 132 12 and.b32 %r32,%r59,1048575; .loc 1 132 6 or.b32 %r88,%r32,1048576; .loc 1 133 6 and.b32 %r115,%r72,1; .loc 1 133 4 setp.eq.u32 %r116,%r115,0; @ %r116 bra $L10; .loc 1 134 10 add.u32 %r117,%r88,%r88; shr.u32 %r118,%r45,31; add.u32 %r88,%r117,%r118; .loc 1 135 10 add.u32 %r45,%r45,%r45; $L10: .loc 1 137 4 shr.s32 %r74,%r72,1; .loc 1 140 6 add.u32 %r120,%r88,%r88; shr.u32 %r121,%r45,31; add.u32 %r63,%r120,%r121; .loc 1 141 6 add.u32 %r60,%r45,%r45; mov.u32 %r58,22; .loc 1 142 4 mov.u32 %r66,0; .loc 1 142 14 mov.u32 %r64,%r66; .loc 1 143 4 mov.u32 %r82,2097152; $L12: .loc 1 146 12 add.u32 %r39,%r64,%r82; .loc 1 147 8 setp.gt.s32 %r123,%r39,%r63; @ %r123 bra $L11; .loc 1 148 11 add.u32 %r64,%r39,%r82; .loc 1 149 7 sub.u32 %r63,%r63,%r39; .loc 1 150 7 add.u32 %r66,%r66,%r82; $L11: .loc 1 152 10 add.u32 %r124,%r63,%r63; shr.u32 %r125,%r60,31; add.u32 %r63,%r124,%r125; .loc 1 153 10 add.u32 %r60,%r60,%r60; .loc 1 154 7 shr.u32 %r82,%r82,1; .loc 1 145 9 add.u32 %r58,%r58,-1; setp.ne.u32 %r127,%r58,0; @ %r127 bra $L12; .loc 1 142 9 mov.u32 %r62,%r58; mov.u32 %r61,32; .loc 1 157 4 mov.u32 %r80,-2147483648; $L18: .loc 1 159 9 add.u32 %r78,%r80,%r58; .loc 1 161 8 setp.gt.s32 %r128,%r63,%r64; @ %r128 bra $L13; .loc 1 161 21 set.u32.eq.u32 %r130,%r63,%r64; neg.s32 %r131,%r130; mov.u32 %r129,%r131; .loc 1 161 32 set.u32.le.u32 %r133,%r78,%r60; neg.s32 %r134,%r133; mov.u32 %r132,%r134; .loc 1 161 27 cvt.u16.u8 %r166,%r129; mov.u16 %r136,%r166; cvt.u16.u8 %r166,%r132; mov.u16 %r137,%r166; and.b16 %r135,%r136,%r137; cvt.u32.u16 %r138,%r135; .loc 1 161 16 cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ %r140 bra $L14; bra $L15; $L13: .loc 1 162 7 add.u32 %r58,%r78,%r80; .loc 1 163 5 setp.ge.s32 %r141,%r78,0; @ %r141 bra $L27; $L23: .loc 1 163 23 setp.lt.s32 %r142,%r58,0; @ %r142 bra $L28; .loc 1 163 42 add.u32 %r65,%r64,1; bra $L16; $L27: mov.u32 %r65,%r64; bra $L16; $L28: mov.u32 %r65,%r64; $L16: .loc 1 164 7 sub.u32 %r63,%r63,%r64; .loc 1 165 6 setp.le.u32 %r143,%r78,%r60; @ %r143 bra $L17; .loc 1 165 21 add.u32 %r63,%r63,-1; $L17: .loc 1 166 7 sub.u32 %r60,%r60,%r78; .loc 1 167 7 add.u32 %r62,%r62,%r80; mov.u32 %r64,%r65; $L15: .loc 1 169 10 shr.u32 %r144,%r60,31; add.u32 %r145,%r63,%r63; add.u32 %r63,%r144,%r145; .loc 1 170 10 add.u32 %r60,%r60,%r60; .loc 1 171 7 shr.u32 %r80,%r80,1; .loc 1 158 9 add.u32 %r61,%r61,-1; setp.ne.u32 %r147,%r61,0; @ %r147 bra $L18; .loc 1 175 9 or.b32 %r148,%r63,%r60; .loc 1 175 4 setp.ne.u32 %r149,%r148,0; @ %r149 bra $L19; .loc 1 188 6 shr.u32 %r61,%r62,1; bra $L20; $L19: .loc 1 179 13 setp.ne.u32 %r150,%r62,-1; @ %r150 bra $L21; .loc 1 179 52 add.u32 %r66,%r66,1; bra $L20; $L21: .loc 1 184 17 add.u32 %r151,%r62,1; shr.u32 %r61,%r151,1; $L20: .loc 1 187 10 shr.s32 %r152,%r66,1; .loc 1 187 6 add.u32 %r76,%r152,1071644672; .loc 1 189 8 and.b32 %r153,%r66,1; .loc 1 189 5 setp.eq.u32 %r154,%r153,0; @ %r154 bra $L22; .loc 1 189 20 or.b32 %r61,%r61,-2147483648; $L22: .loc 1 190 12 shl.b32 %r155,%r74,20; .loc 1 190 6 add.u32 %r156,%r155,%r76; .loc 1 191 2 cvt.u64.u32 %r157,%r156; cvt.u64.u32 %r161,%r61; shl.b64 %r162,%r157,32; or.b64 %r163,%r162,%r161; mov.b64 %r92,%r163; .loc 1 192 9 bra $L1; $L24: .loc 1 115 40 mov.f64 %r92,%r93; bra $L1; $L14: .loc 1 162 7 add.u32 %r58,%r78,%r80; .loc 1 163 5 setp.lt.s32 %r165,%r78,0; @ %r165 bra $L23; mov.u32 %r65,%r64; .loc 1 164 7 mov.u32 %r63,0; bra $L17; $L1: .loc 1 193 1 mov.f64 %value,%r92; st.param.f64 [%value_out],%value; ret; } /125 0 0 0 644 1526 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgamma .visible .func (.param .f64 %value_out) __ieee754_tgamma (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/e_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .extern .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_tgamma .visible .func (.param .f64 %value_out) __ieee754_tgamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r28; .reg .f64 %r30; .reg .u32 %r31; .reg .pred %r32; mov.f64 %r25,%ar0; .loc 1 31 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r30,[%value_in]; } mov.f64 %r24,%r30; .loc 1 32 5 ld.u32 %r31,[%frame]; setp.ge.s32 %r32,%r31,0; @ %r32 bra $L1; .loc 1 33 5 neg.f64 %r24,%r24; $L1: .loc 1 35 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-ef_acos.o/0 0 0 644 5286 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosf .visible .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acosf .visible .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .f32 %r59; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .pred %r92; .reg .f32 %r93; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; mov.f32 %r82,%ar0; .loc 1 47 2 mov.b32 %r57,%r82; .loc 1 48 5 and.b32 %r58,%r57,2147483647; .loc 1 49 4 setp.ne.u32 %r83,%r58,1065353216; @ %r83 bra $L2; .loc 1 50 8 setp.gt.s32 %r84,%r57,0; .loc 1 51 20 selp.f32 %r81,0f00000000,0f40490fdb,%r84; bra $L1; $L2: .loc 1 52 11 setp.le.s32 %r85,%r58,1065353216; @ %r85 bra $L4; .loc 1 53 15 sub.f32 %r22,%r82,%r82; .loc 1 53 18 div.rn.f32 %r81,%r22,%r22; bra $L1; $L4: .loc 1 55 4 setp.gt.s32 %r86,%r58,1056964607; @ %r86 bra $L5; .loc 1 56 8 setp.le.s32 %r87,%r58,587202560; @ %r87 bra $L8; .loc 1 57 8 mul.f32 %r74,%r82,%r82; .loc 1 58 44 fma.rn.f32 %r23,%r74,0f3811ef08,0f3a4f7f04; .loc 1 58 37 fma.rn.f32 %r24,%r23,%r74,0fbd241146; .loc 1 58 30 fma.rn.f32 %r25,%r24,%r74,0f3e4e0aa8; .loc 1 58 23 fma.rn.f32 %r26,%r25,%r74,0fbea6b090; .loc 1 58 16 fma.rn.f32 %r27,%r26,%r74,0f3e2aaaab; .loc 1 58 8 mul.f32 %r75,%r27,%r74; .loc 1 59 34 fma.rn.f32 %r28,%r74,0f3d9dc62e,0fbf303361; .loc 1 59 27 fma.rn.f32 %r29,%r28,%r74,0f4001572d; .loc 1 59 20 fma.rn.f32 %r30,%r29,%r74,0fc019d139; .loc 1 59 8 fma.rn.f32 %r76,%r30,%r74,0f3f800000; .loc 1 61 36 neg.f32 %r88,%r82; .loc 1 60 8 div.rn.f32 %r89,%r75,%r76; .loc 1 61 36 fma.rn.f32 %r31,%r88,%r89,0f33a22168; .loc 1 61 26 sub.f32 %r90,%r82,%r31; .loc 1 61 21 mov.f32 %r91,0f3fc90fda; sub.f32 %r81,%r91,%r90; bra $L1; $L5: .loc 1 62 13 setp.ge.s32 %r92,%r57,0; @ %r92 bra $L6; .loc 1 63 14 add.f32 %r93,%r82,0f3f800000; .loc 1 63 8 mul.f32 %r68,%r93,0f3f000000; .loc 1 64 44 fma.rn.f32 %r34,%r68,0f3811ef08,0f3a4f7f04; .loc 1 64 37 fma.rn.f32 %r35,%r34,%r68,0fbd241146; .loc 1 64 30 fma.rn.f32 %r36,%r35,%r68,0f3e4e0aa8; .loc 1 64 23 fma.rn.f32 %r37,%r36,%r68,0fbea6b090; .loc 1 64 16 fma.rn.f32 %r38,%r37,%r68,0f3e2aaaab; .loc 1 64 8 mul.f32 %r69,%r38,%r68; .loc 1 65 34 fma.rn.f32 %r39,%r68,0f3d9dc62e,0fbf303361; .loc 1 65 27 fma.rn.f32 %r40,%r39,%r68,0f4001572d; .loc 1 65 20 fma.rn.f32 %r41,%r40,%r68,0fc019d139; .loc 1 65 8 fma.rn.f32 %r70,%r41,%r68,0f3f800000; .loc 1 66 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r95,[%value_in]; } .loc 1 67 8 div.rn.f32 %r96,%r69,%r70; .loc 1 68 8 fma.rn.f32 %r73,%r95,%r96,0fb3a22168; .loc 1 69 31 add.f32 %r97,%r95,%r73; .loc 1 69 16 fma.rn.f32 %r81,%r97,0fc0000000,0f40490fda; bra $L1; $L6: .loc 1 72 14 mov.f32 %r100,0f3f800000; sub.f32 %r99,%r100,%r82; .loc 1 72 8 mul.f32 %r59,%r99,0f3f000000; .loc 1 73 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r102,[%value_in]; } .loc 1 76 6 mov.b32 %r104,%r102; and.b32 %r103,%r104,-4096; mov.b32 %r62,%r103; .loc 1 77 13 neg.f32 %r105,%r62; fma.rn.f32 %r46,%r105,%r62,%r59; .loc 1 77 23 add.f32 %r106,%r102,%r62; .loc 1 77 9 div.rn.f32 %r63,%r46,%r106; .loc 1 78 44 fma.rn.f32 %r48,%r59,0f3811ef08,0f3a4f7f04; .loc 1 78 37 fma.rn.f32 %r49,%r48,%r59,0fbd241146; .loc 1 78 30 fma.rn.f32 %r50,%r49,%r59,0f3e4e0aa8; .loc 1 78 23 fma.rn.f32 %r51,%r50,%r59,0fbea6b090; .loc 1 78 16 fma.rn.f32 %r52,%r51,%r59,0f3e2aaaab; .loc 1 78 8 mul.f32 %r64,%r52,%r59; .loc 1 79 34 fma.rn.f32 %r53,%r59,0f3d9dc62e,0fbf303361; .loc 1 79 27 fma.rn.f32 %r54,%r53,%r59,0f4001572d; .loc 1 79 20 fma.rn.f32 %r55,%r54,%r59,0fc019d139; .loc 1 79 8 fma.rn.f32 %r65,%r55,%r59,0f3f800000; .loc 1 80 8 div.rn.f32 %r107,%r64,%r65; .loc 1 81 8 fma.rn.f32 %r67,%r102,%r107,%r63; .loc 1 82 27 add.f32 %r108,%r62,%r67; .loc 1 82 23 add.f32 %r81,%r108,%r108; bra $L1; $L8: .loc 1 56 39 mov.f32 %r81,0f3fc90fdb; $L1: .loc 1 84 1 mov.f32 %value,%r81; st.param.f32 [%value_out],%value; ret; } /143 0 0 0 644 3110 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acoshf .visible .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1pf .extern .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acoshf .visible .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r24; .reg .f32 %r28; .reg .f32 %r30; .reg .u32 %r33; .reg .f32 %r34; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r51; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r60; mov.f32 %r38,%ar0; .loc 1 36 2 mov.b32 %r33,%r38; .loc 1 37 4 setp.gt.s32 %r39,%r33,1065353215; @ %r39 bra $L2; .loc 1 38 15 sub.f32 %r22,%r38,%r38; .loc 1 38 18 div.rn.f32 %r37,%r22,%r22; bra $L1; $L2: .loc 1 39 11 setp.le.s32 %r40,%r33,1300234239; @ %r40 bra $L4; .loc 1 40 8 setp.le.s32 %r41,%r33,2139095039; @ %r41 bra $L5; .loc 1 41 18 add.f32 %r37,%r38,%r38; bra $L1; $L5: .loc 1 43 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r43,[%value_in]; } .loc 1 43 27 add.f32 %r37,%r43,0f3f317218; bra $L1; $L4: .loc 1 44 12 setp.eq.u32 %r44,%r33,1065353216; @ %r44 bra $L7; .loc 1 46 12 setp.le.s32 %r45,%r33,1073741824; @ %r45 bra $L6; .loc 1 48 48 fma.rn.f32 %r24,%r38,%r38,0fbf800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 48 47 add.f32 %r48,%r47,%r38; .loc 1 48 44 rcp.rn.f32 %r49,%r48; .loc 1 48 13 neg.f32 %r51,%r49; fma.rn.f32 %r28,%r38,0f40000000,%r51; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } mov.f32 %r37,%r53; bra $L1; $L6: .loc 1 50 8 mov.f32 %r54,0f3f800000; sub.f32 %r34,%r38,%r54; .loc 1 51 52 mul.f32 %r55,%r34,%r34; .loc 1 51 22 fma.rn.f32 %r30,%r34,0f40000000,%r55; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r57,[%value_in]; } .loc 1 51 13 add.f32 %r59,%r57,%r34; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r60,[%value_in]; } mov.f32 %r37,%r60; bra $L1; $L7: .loc 1 45 13 mov.f32 %r37,0f00000000; $L1: .loc 1 53 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-ef_asin.o/0 0 0 644 4950 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_asinf .visible .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_asin.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_asinf .visible .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r73; .reg .f32 %r74; .reg .pred %r75; .reg .f32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .f32 %r80; .reg .pred %r81; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r101; .reg .f32 %r102; .reg .pred %r103; mov.f32 %r74,%ar0; .loc 1 49 2 mov.b32 %r50,%r74; .loc 1 50 5 and.b32 %r51,%r50,2147483647; .loc 1 51 4 setp.ne.u32 %r75,%r51,1065353216; @ %r75 bra $L2; .loc 1 53 24 mul.f32 %r76,%r74,0fb33bbd2e; .loc 1 53 22 fma.rn.f32 %r73,%r74,0f3fc90fdb,%r76; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r77,%r51,1065353216; @ %r77 bra $L4; .loc 1 55 15 sub.f32 %r23,%r74,%r74; .loc 1 55 18 div.rn.f32 %r73,%r23,%r23; bra $L1; $L4: .loc 1 56 12 setp.gt.s32 %r78,%r51,1056964607; @ %r78 bra $L5; .loc 1 57 8 setp.gt.s32 %r79,%r51,838860799; @ %r79 bra $L6; .loc 1 58 10 add.f32 %r80,%r74,0f7149f2ca; .loc 1 58 5 setp.gt.f32 %r81,%r80,0f3f800000; @ ! %r81 bra $L5; bra $L9; $L6: .loc 1 60 5 mul.f32 %r52,%r74,%r74; .loc 1 61 41 fma.rn.f32 %r25,%r52,0f3811ef08,0f3a4f7f04; .loc 1 61 34 fma.rn.f32 %r26,%r25,%r52,0fbd241146; .loc 1 61 27 fma.rn.f32 %r27,%r26,%r52,0f3e4e0aa8; .loc 1 61 20 fma.rn.f32 %r28,%r27,%r52,0fbea6b090; .loc 1 61 13 fma.rn.f32 %r29,%r28,%r52,0f3e2aaaab; .loc 1 61 5 mul.f32 %r53,%r29,%r52; .loc 1 62 31 fma.rn.f32 %r30,%r52,0f3d9dc62e,0fbf303361; .loc 1 62 24 fma.rn.f32 %r31,%r30,%r52,0f4001572d; .loc 1 62 17 fma.rn.f32 %r32,%r31,%r52,0fc019d139; .loc 1 62 5 fma.rn.f32 %r54,%r32,%r52,0f3f800000; .loc 1 63 5 div.rn.f32 %r82,%r53,%r54; .loc 1 64 11 fma.rn.f32 %r73,%r74,%r82,%r74; bra $L1; $L5: .loc 1 68 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 68 4 mov.f32 %r86,0f3f800000; sub.f32 %r85,%r86,%r84; .loc 1 69 4 mul.f32 %r58,%r85,0f3f000000; .loc 1 70 40 fma.rn.f32 %r34,%r58,0f3811ef08,0f3a4f7f04; .loc 1 70 33 fma.rn.f32 %r35,%r34,%r58,0fbd241146; .loc 1 70 26 fma.rn.f32 %r36,%r35,%r58,0f3e4e0aa8; .loc 1 70 19 fma.rn.f32 %r37,%r36,%r58,0fbea6b090; .loc 1 70 12 fma.rn.f32 %r38,%r37,%r58,0f3e2aaaab; .loc 1 70 4 mul.f32 %r59,%r38,%r58; .loc 1 71 30 fma.rn.f32 %r39,%r58,0f3d9dc62e,0fbf303361; .loc 1 71 23 fma.rn.f32 %r40,%r39,%r58,0f4001572d; .loc 1 71 16 fma.rn.f32 %r41,%r40,%r58,0fc019d139; .loc 1 71 4 fma.rn.f32 %r60,%r41,%r58,0f3f800000; .loc 1 72 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } .loc 1 73 4 setp.le.s32 %r89,%r51,1064933785; @ %r89 bra $L7; .loc 1 74 8 div.rn.f32 %r90,%r59,%r60; .loc 1 75 32 fma.rn.f32 %r42,%r88,%r90,%r88; .loc 1 75 37 fma.rn.f32 %r43,%r42,0f40000000,0f333bbd2e; .loc 1 75 8 mov.f32 %r91,0f3fc90fdb; sub.f32 %r73,%r91,%r43; bra $L8; $L7: .loc 1 80 6 mov.b32 %r93,%r88; and.b32 %r92,%r93,-4096; mov.b32 %r63,%r92; .loc 1 81 13 neg.f32 %r94,%r63; fma.rn.f32 %r45,%r94,%r63,%r58; .loc 1 82 9 div.rn.f32 %r65,%r59,%r60; .loc 1 81 21 add.f32 %r95,%r88,%r63; .loc 1 81 9 div.rn.f32 %r96,%r45,%r95; .loc 1 83 34 fma.rn.f32 %r48,%r96,0fc0000000,0fb33bbd2e; .loc 1 83 21 add.f32 %r98,%r88,%r88; .loc 1 83 9 neg.f32 %r99,%r48; fma.rn.f32 %r66,%r98,%r65,%r99; .loc 1 84 9 fma.rn.f32 %r67,%r94,0f40000000,0f3f490fdb; .loc 1 85 21 sub.f32 %r101,%r66,%r67; .loc 1 85 9 mov.f32 %r102,0f3f490fdb; sub.f32 %r73,%r102,%r101; $L8: .loc 1 87 4 setp.gt.s32 %r103,%r50,0; @ %r103 bra $L1; .loc 1 87 33 neg.f32 %r73,%r73; bra $L1; $L9: .loc 1 58 25 mov.f32 %r73,%r74; $L1: .loc 1 88 1 mov.f32 %value,%r73; st.param.f32 [%value_out],%value; ret; } /161 0 0 0 644 5857 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2f .visible .func (.param .f32 %value_out) __ieee754_atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_atan2.c" // BEGIN GLOBAL FUNCTION DECL: atanf .extern .func (.param .f32 %value_out) atanf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN VAR DEF: CSWTCH$8 .const .align 4 .u32 CSWTCH$8[3] = {3209236443,1075235812,3222719460 }; // BEGIN VAR DEF: CSWTCH$9 .const .align 4 .u32 CSWTCH$9[3] = {2147483648,1078530011,3226013659 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_atan2f .visible .func (.param .f32 %value_out) __ieee754_atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r36; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u32 %r47; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u32 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .pred %r64; .reg .f32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .pred %r102; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .u32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .u16 %r117; mov.f32 %r50,%ar0; mov.f32 %r51,%ar1; .loc 1 41 2 mov.b32 %r39,%r51; .loc 1 42 5 and.b32 %r40,%r39,2147483647; .loc 1 43 2 mov.b32 %r44,%r50; .loc 1 44 5 and.b32 %r42,%r44,2147483647; .loc 1 45 5 set.u32.gt.s32 %r53,%r40,2139095040; neg.s32 %r54,%r53; mov.u32 %r52,%r54; .loc 1 46 5 set.u32.gt.s32 %r56,%r42,2139095040; neg.s32 %r57,%r56; mov.u32 %r55,%r57; .loc 1 45 25 cvt.u16.u8 %r117,%r52; mov.u16 %r59,%r117; cvt.u16.u8 %r117,%r55; mov.u16 %r60,%r117; or.b16 %r58,%r59,%r60; cvt.u32.u16 %r61,%r58; .loc 1 45 4 cvt.u16.u8 %r62,%r61; setp.eq.u16 %r63,%r62,0; @ %r63 bra $L2; .loc 1 47 13 add.f32 %r49,%r51,%r50; bra $L1; $L2: .loc 1 48 4 setp.ne.u32 %r64,%r39,1065353216; @ %r64 bra $L4; .loc 1 48 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } mov.f32 %r49,%r66; bra $L1; $L4: .loc 1 49 23 shr.s32 %r67,%r39,30; .loc 1 49 28 and.b32 %r68,%r67,2; .loc 1 49 15 shr.u32 %r69,%r44,31; .loc 1 49 4 or.b32 %r43,%r68,%r69; .loc 1 52 4 setp.ne.u32 %r70,%r42,0; @ %r70 bra $L5; .loc 1 53 6 setp.eq.u32 %r71,%r43,2; @ %r71 bra $L14; setp.ne.u32 %r72,%r43,3; .loc 1 57 21 selp.f32 %r49,%r50,0fc0490fdb,%r72; bra $L1; $L5: .loc 1 61 4 setp.ne.u32 %r73,%r40,0; @ %r73 bra $L6; .loc 1 61 56 setp.ge.s32 %r74,%r44,0; selp.f32 %r49,0f3fc90fdb,0fbfc90fdb,%r74; bra $L1; $L6: .loc 1 64 4 setp.ne.u32 %r75,%r40,2139095040; @ %r75 bra $L7; add.u32 %r47,%r43,-1; .loc 1 65 8 setp.ne.u32 %r76,%r42,2139095040; @ %r76 bra $L8; setp.gt.u32 %r77,%r47,2; @ %r77 bra $L17; cvta.const.u64 %r78,CSWTCH$8; cvt.u64.u32 %r79,%r47; shl.b64 %r80,%r79,2; add.u64 %r81,%r78,%r80; ld.f32 %r49,[%r81]; bra $L1; $L8: setp.gt.u32 %r82,%r47,2; @ %r82 bra $L18; cvta.const.u64 %r83,CSWTCH$9; cvt.u64.u32 %r84,%r47; shl.b64 %r85,%r84,2; add.u64 %r86,%r83,%r85; ld.f32 %r49,[%r86]; bra $L1; $L7: .loc 1 82 4 setp.ne.u32 %r87,%r42,2139095040; @ %r87 bra $L9; .loc 1 82 59 setp.ge.s32 %r88,%r44,0; .loc 1 61 56 selp.f32 %r49,0f3fc90fdb,0fbfc90fdb,%r88; bra $L1; $L9: .loc 1 85 9 sub.u32 %r89,%r42,%r40; .loc 1 85 4 shr.s32 %r46,%r89,23; .loc 1 86 4 setp.gt.s32 %r90,%r89,511705087; @ %r90 bra $L20; .loc 1 87 12 shr.u32 %r92,%r39,31; mov.u32 %r93,%r92; .loc 1 87 17 set.u32.lt.s32 %r95,%r46,-60; neg.s32 %r96,%r95; mov.u32 %r94,%r96; .loc 1 87 14 cvt.u16.u8 %r117,%r93; mov.u16 %r98,%r117; cvt.u16.u8 %r117,%r94; mov.u16 %r99,%r117; and.b16 %r97,%r98,%r99; cvt.u32.u16 %r100,%r97; .loc 1 87 9 cvt.u16.u8 %r101,%r100; setp.ne.u16 %r102,%r101,0; @ %r102 bra $L21; .loc 1 88 9 div.rn.f32 %r104,%r50,%r51; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r105,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r105; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r107,[%value_in]; } mov.f32 %r49,%r107; bra $L10; $L20: .loc 1 86 14 mov.f32 %r49,0f3fc90fdb; bra $L10; $L21: .loc 1 87 24 mov.f32 %r49,0f00000000; $L10: .loc 1 89 2 setp.eq.u32 %r108,%r43,1; @ %r108 bra $L11; setp.eq.u32 %r109,%r43,2; @ %r109 bra $L12; setp.eq.u32 %r110,%r43,0; @ ! %r110 bra $L25; bra $L1; $L11: .loc 1 94 9 mov.b32 %r111,%r49; add.u32 %r36,%r111,-2147483648; mov.b32 %r49,%r36; .loc 1 96 20 bra $L1; $L12: .loc 1 97 27 add.f32 %r112,%r49,0f33bbbd2e; .loc 1 97 24 mov.f32 %r113,0f40490fdb; sub.f32 %r49,%r113,%r112; bra $L1; $L25: .loc 1 99 21 add.f32 %r114,%r49,0f33bbbd2e; .loc 1 99 28 mov.f32 %r115,0f40490fdb; sub.f32 %r49,%r114,%r115; bra $L1; $L14: .loc 1 53 6 mov.f32 %r49,0f40490fdb; bra $L1; $L17: .loc 1 65 8 mov.f32 %r49,0f3f490fdb; bra $L1; $L18: mov.f32 %r49,0f00000000; $L1: .loc 1 101 1 mov.f32 %value,%r49; st.param.f32 [%value_out],%value; ret; } /179 0 0 0 644 2603 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanhf .visible .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_atanh.c" // BEGIN GLOBAL FUNCTION DECL: log1pf .extern .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_atanhf .visible .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r24; .reg .u32 %r32; .reg .u32 %r33; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r45; .reg .pred %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r55; .reg .f32 %r56; .reg .pred %r57; .reg .f32 %r59; mov.f32 %r39,%ar0; .loc 1 40 2 mov.b32 %r32,%r39; .loc 1 41 5 and.b32 %r33,%r32,2147483647; .loc 1 42 5 setp.le.s32 %r40,%r33,1065353216; @ %r40 bra $L2; .loc 1 43 15 sub.f32 %r22,%r39,%r39; .loc 1 43 18 div.rn.f32 %r38,%r22,%r22; bra $L1; $L2: .loc 1 44 4 setp.ne.u32 %r41,%r33,1065353216; @ %r41 bra $L4; .loc 1 45 14 div.rn.f32 %r38,%r39,0f00000000; bra $L1; $L4: .loc 1 46 4 setp.gt.s32 %r42,%r33,830472191; @ %r42 bra $L5; .loc 1 46 25 add.f32 %r43,%r39,0f7149f2ca; .loc 1 46 18 setp.gt.f32 %r44,%r43,0f00000000; @ ! %r44 bra $L11; bra $L10; $L5: .loc 1 47 2 mov.b32 %r24,%r33; .loc 1 52 30 add.f32 %r59,%r24,%r24; .loc 1 52 38 mov.f32 %r45,0f3f800000; sub.f32 %r37,%r45,%r24; .loc 1 48 4 setp.gt.s32 %r46,%r33,1056964607; @ %r46 bra $L7; $L9: .loc 1 50 31 mul.f32 %r48,%r59,%r24; .loc 1 50 38 mov.f32 %r50,0f3f800000; sub.f32 %r49,%r50,%r24; .loc 1 50 33 div.rn.f32 %r51,%r48,%r49; .loc 1 50 21 add.f32 %r52,%r51,%r59; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r52; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } .loc 1 50 8 mul.f32 %r38,%r53,0f3f000000; bra $L8; $L7: .loc 1 52 21 div.rn.f32 %r55,%r59,%r37; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r55; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } .loc 1 52 8 mul.f32 %r38,%r56,0f3f000000; $L8: .loc 1 53 4 setp.ge.s32 %r57,%r32,0; @ %r57 bra $L1; .loc 1 53 34 neg.f32 %r38,%r38; bra $L1; $L10: .loc 1 46 42 mov.f32 %r38,%r39; bra $L1; $L11: .loc 1 47 2 mov.b32 %r24,%r33; add.f32 %r59,%r24,%r24; bra $L9; $L1: .loc 1 54 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-ef_cosh.o/0 0 0 644 3934 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_coshf .visible .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_cosh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1f .extern .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_coshf .visible .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r32; .reg .u32 %r33; .reg .f32 %r39; .reg .f32 %r40; .reg .pred %r41; .reg .pred %r42; .reg .f32 %r44; .reg .f32 %r46; .reg .pred %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .pred %r51; .reg .f32 %r53; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .pred %r58; .reg .f32 %r60; .reg .f32 %r62; .reg .pred %r63; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .u32 %r70; .reg .f32 %r71; mov.f32 %r40,%ar0; .loc 1 39 2 mov.b32 %r32,%r40; .loc 1 40 5 and.b32 %r33,%r32,2147483647; .loc 1 43 4 setp.le.s32 %r41,%r33,2139095039; @ %r41 bra $L2; .loc 1 43 39 mul.f32 %r39,%r40,%r40; bra $L1; $L2: .loc 1 46 4 setp.gt.s32 %r42,%r33,1051816471; @ %r42 bra $L4; .loc 1 47 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r44; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 48 8 add.f32 %r39,%r46,0f3f800000; .loc 1 49 9 setp.le.s32 %r47,%r33,603979775; @ %r47 bra $L1; .loc 1 50 19 mul.f32 %r48,%r46,%r46; .loc 1 50 25 add.f32 %r49,%r39,%r39; .loc 1 50 22 div.rn.f32 %r50,%r48,%r49; .loc 1 50 16 add.f32 %r39,%r50,0f3f800000; bra $L1; $L4: .loc 1 54 5 setp.gt.s32 %r51,%r33,1102053375; @ %r51 bra $L5; .loc 1 55 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r53; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r55,[%value_in]; } .loc 1 56 21 mov.f32 %r57,0f3f000000; div.rn.f32 %r56,%r57,%r55; .loc 1 56 16 fma.rn.f32 %r39,%r55,0f3f000000,%r56; bra $L1; $L5: .loc 1 60 5 setp.gt.s32 %r58,%r33,1118925335; @ %r58 bra $L6; .loc 1 61 16 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r60,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 61 15 mul.f32 %r39,%r62,0f3f000000; bra $L1; $L6: .loc 1 64 5 setp.gt.s32 %r63,%r33,1119016188; @ %r63 bra $L7; .loc 1 65 30 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r65,[%value_in]; } .loc 1 65 10 mul.f32 %r67,%r65,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 66 8 mul.f32 %r69,%r68,0f3f000000; .loc 1 67 14 mul.f32 %r39,%r69,%r68; bra $L1; $L7: .loc 1 71 9 mov.u32 %r70,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r70; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } mov.f32 %r39,%r71; $L1: .loc 1 72 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-ef_exp.o/ 0 0 0 644 6342 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .visible .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_exp.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflowf .extern .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0); // BEGIN VAR DEF: ln2LO .const .align 4 .u32 ln2LO[2] = {924317649,3071801297 }; // BEGIN VAR DEF: halF .const .align 4 .u32 halF[2] = {1056964608,3204448256 }; // BEGIN VAR DEF: ln2HI .const .align 4 .u32 ln2HI[2] = {1060204928,3207688576 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_expf .visible .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f32 %r29; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r50; .reg .f32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .u32 %r70; .reg .f32 %r72; .reg .f32 %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .f32 %r79; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u32 %r89; .reg .u16 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .f32 %r93; .reg .pred %r94; .reg .pred %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .f32 %r100; .reg .u64 %r101; .reg .u64 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .f32 %r111; .reg .f32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .f32 %r116; .reg .pred %r117; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .f32 %r137; .reg .f32 %r139; .reg .f32 %r140; .reg .u16 %r141; mov.f32 %r73,%ar0; .loc 1 55 2 mov.b32 %r53,%r73; .loc 1 57 5 and.b32 %r56,%r53,2147483647; .loc 1 60 11 setp.le.u32 %r74,%r56,2139095040; @ %r74 bra $L2; .loc 1 61 21 add.f32 %r72,%r73,%r73; bra $L1; $L2: .loc 1 56 16 shr.u32 %r22,%r53,31; .loc 1 62 11 setp.ne.u32 %r75,%r56,2139095040; @ %r75 bra $L4; .loc 1 63 24 setp.eq.u32 %r76,%r22,0; selp.f32 %r72,%r73,0f00000000,%r76; bra $L1; $L4: .loc 1 64 4 setp.le.s32 %r77,%r53,1118925335; @ %r77 bra $L5; .loc 1 65 13 mov.u32 %r78,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r78; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r79,[%value_in]; } mov.f32 %r72,%r79; bra $L1; $L5: .loc 1 66 8 mov.u32 %r82,%r22; .loc 1 66 18 set.u32.gt.u32 %r84,%r56,1120924085; neg.s32 %r85,%r84; mov.u32 %r83,%r85; .loc 1 66 12 cvt.u16.u8 %r141,%r82; mov.u16 %r87,%r141; cvt.u16.u8 %r141,%r83; mov.u16 %r88,%r141; and.b16 %r86,%r87,%r88; cvt.u32.u16 %r89,%r86; .loc 1 66 4 cvt.u16.u8 %r90,%r89; setp.eq.u16 %r91,%r90,0; @ %r91 bra $L6; .loc 1 67 13 mov.u32 %r92,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r92; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } mov.f32 %r72,%r93; bra $L1; $L6: .loc 1 70 4 setp.le.u32 %r94,%r56,1051816472; @ %r94 bra $L7; .loc 1 71 8 setp.gt.u32 %r95,%r56,1065686417; @ %r95 bra $L8; .loc 1 72 15 cvta.const.u64 %r96,ln2HI; cvt.s64.s32 %r97,%r22; shl.b64 %r98,%r97,2; add.u64 %r99,%r96,%r98; .loc 1 72 6 ld.f32 %r100,[%r99]; sub.f32 %r50,%r73,%r100; .loc 1 72 24 cvta.const.u64 %r101,ln2LO; add.u64 %r104,%r101,%r98; ld.f32 %r51,[%r104]; .loc 1 72 42 mov.u32 %r106,1; sub.u32 %r105,%r106,%r22; .loc 1 72 39 sub.u32 %r52,%r105,%r22; bra $L9; $L8: .loc 1 74 21 cvta.const.u64 %r107,halF; cvt.s64.s32 %r108,%r22; shl.b64 %r109,%r108,2; add.u64 %r110,%r107,%r109; .loc 1 74 16 ld.f32 %r111,[%r110]; fma.rn.f32 %r29,%r73,0f3fb8aa3b,%r111; .loc 1 74 6 cvt.rzi.s32.f32 %r52,%r29; .loc 1 75 6 cvt.rn.f32.s32 %r57,%r52; .loc 1 76 6 fma.rn.f32 %r50,%r57,0fbf317180,%r73; .loc 1 77 6 mul.f32 %r51,%r57,0f3717f7d1; $L9: .loc 1 79 9 sub.f32 %r73,%r50,%r51; .loc 1 86 5 mul.f32 %r58,%r73,%r73; .loc 1 87 34 fma.rn.f32 %r31,%r58,0f3331bb4c,0fb5ddea0e; .loc 1 87 28 fma.rn.f32 %r32,%r31,%r58,0f388ab355; .loc 1 87 22 fma.rn.f32 %r33,%r32,%r58,0fbb360b61; .loc 1 87 16 fma.rn.f32 %r34,%r33,%r58,0f3e2aaaab; .loc 1 87 5 neg.f32 %r113,%r34; fma.rn.f32 %r66,%r113,%r58,%r73; .loc 1 89 24 mul.f32 %r140,%r73,%r66; .loc 1 88 4 setp.eq.u32 %r114,%r52,0; @ ! %r114 bra $L20; bra $L10; $L7: .loc 1 81 9 setp.gt.u32 %r115,%r56,872415231; @ %r115 bra $L12; .loc 1 82 13 add.f32 %r116,%r73,0f7149f2ca; .loc 1 82 8 setp.gt.f32 %r117,%r116,0f3f800000; @ ! %r117 bra $L12; .loc 1 82 31 add.f32 %r72,%r73,0f3f800000; bra $L1; $L10: .loc 1 88 32 mov.f32 %r120,0f40000000; sub.f32 %r119,%r66,%r120; .loc 1 88 29 div.rn.f32 %r121,%r140,%r119; .loc 1 88 44 sub.f32 %r122,%r121,%r73; .loc 1 88 22 mov.f32 %r123,0f3f800000; sub.f32 %r72,%r123,%r122; bra $L1; $L20: .loc 1 89 39 mov.f32 %r125,0f40000000; sub.f32 %r124,%r125,%r66; .loc 1 89 27 div.rn.f32 %r126,%r140,%r124; .loc 1 89 21 sub.f32 %r127,%r51,%r126; .loc 1 89 43 sub.f32 %r128,%r127,%r50; .loc 1 89 11 mov.f32 %r130,0f3f800000; sub.f32 %r129,%r130,%r128; .loc 1 92 6 mov.b32 %r70,%r129; .loc 1 90 4 setp.lt.s32 %r131,%r52,-125; @ %r131 bra $L14; .loc 1 93 6 shl.b32 %r132,%r52,23; add.u32 %r133,%r132,%r70; mov.b32 %r72,%r133; .loc 1 94 13 bra $L1; $L14: .loc 1 98 6 add.u32 %r134,%r52,100; shl.b32 %r135,%r134,23; add.u32 %r136,%r135,%r70; .loc 1 99 14 mov.b32 %r137,%r136; mul.f32 %r72,%r137,0f0d800000; bra $L1; $L12: .loc 1 86 5 mul.f32 %r61,%r73,%r73; .loc 1 87 34 fma.rn.f32 %r62,%r61,0f3331bb4c,0fb5ddea0e; .loc 1 87 28 fma.rn.f32 %r63,%r61,%r62,0f388ab355; .loc 1 87 22 fma.rn.f32 %r64,%r61,%r63,0fbb360b61; .loc 1 87 16 fma.rn.f32 %r65,%r61,%r64,0f3e2aaaab; .loc 1 87 5 neg.f32 %r139,%r61; fma.rn.f32 %r66,%r139,%r65,%r73; mul.f32 %r140,%r73,%r66; bra $L10; $L1: .loc 1 101 1 mov.f32 %value,%r72; st.param.f32 [%value_out],%value; ret; } lib_a-ef_fmod.o/0 0 0 644 6603 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmodf .visible .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_fmod.c" // BEGIN VAR DEF: Zero .const .align 4 .u32 Zero[2] = {0,2147483648 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_fmodf .visible .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r26; .reg .f32 %r27; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r64; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r117; .reg .u64 %r118; .reg .u32 %r119; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .u64 %r128; .reg .u32 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .pred %r134; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .pred %r146; .reg .u16 %r147; mov.f32 %r68,%ar0; mov.f32 %r69,%ar1; .loc 1 39 2 mov.b32 %r45,%r68; .loc 1 40 2 mov.b32 %r46,%r69; .loc 1 42 5 and.b32 %r48,%r45,2147483647; .loc 1 43 5 and.b32 %r49,%r46,2147483647; .loc 1 47 29 set.u32.gt.s32 %r71,%r49,2139095040; neg.s32 %r72,%r71; mov.u32 %r70,%r72; .loc 1 46 5 set.u32.eq.u32 %r74,%r49,0; neg.s32 %r75,%r74; mov.u32 %r73,%r75; .loc 1 47 29 cvt.u16.u8 %r147,%r70; mov.u16 %r77,%r147; cvt.u16.u8 %r147,%r73; mov.u16 %r78,%r147; or.b16 %r76,%r77,%r78; cvt.u32.u16 %r79,%r76; .loc 1 47 5 set.u32.gt.s32 %r81,%r48,2139095039; neg.s32 %r82,%r81; mov.u32 %r80,%r82; .loc 1 47 29 cvt.u16.u8 %r147,%r79; mov.u16 %r84,%r147; cvt.u16.u8 %r147,%r80; mov.u16 %r85,%r147; or.b16 %r83,%r84,%r85; cvt.u32.u16 %r86,%r83; cvt.u16.u8 %r87,%r86; setp.eq.u16 %r88,%r87,0; @ %r88 bra $L2; .loc 1 49 15 mul.f32 %r27,%r68,%r69; .loc 1 49 18 div.rn.f32 %r67,%r27,%r27; bra $L1; $L2: .loc 1 50 4 setp.lt.s32 %r89,%r48,%r49; @ %r89 bra $L25; .loc 1 41 5 and.b32 %r47,%r45,-2147483648; .loc 1 51 4 setp.ne.u32 %r90,%r48,%r49; @ %r90 bra $L4; .loc 1 52 17 cvta.const.u64 %r91,Zero; .loc 1 52 32 shr.u32 %r92,%r47,31; .loc 1 52 17 cvt.u64.u32 %r93,%r92; shl.b64 %r94,%r93,2; add.u64 %r95,%r91,%r94; ld.f32 %r67,[%r95]; bra $L1; $L4: .loc 1 57 4 and.b32 %r96,%r45,2139095040; setp.ne.u32 %r97,%r96,0; @ %r97 bra $L5; .loc 1 58 22 shl.b32 %r52,%r48,8; .loc 1 58 33 setp.le.s32 %r98,%r52,0; @ %r98 bra $L26; .loc 1 58 14 mov.u32 %r51,-126; $L7: .loc 1 58 47 add.u32 %r51,%r51,-1; .loc 1 58 38 add.u32 %r52,%r52,%r52; .loc 1 58 33 setp.gt.s32 %r100,%r52,0; @ %r100 bra $L7; bra $L6; $L5: .loc 1 59 17 shr.s32 %r101,%r48,23; .loc 1 59 12 add.u32 %r51,%r101,-127; bra $L6; $L26: .loc 1 58 14 mov.u32 %r51,-126; $L6: .loc 1 62 4 and.b32 %r102,%r46,2139095040; setp.ne.u32 %r103,%r102,0; @ %r103 bra $L8; .loc 1 63 22 shl.b32 %r55,%r49,8; .loc 1 63 33 setp.lt.s32 %r104,%r55,0; @ %r104 bra $L27; .loc 1 63 14 mov.u32 %r54,-126; $L10: .loc 1 63 48 add.u32 %r54,%r54,-1; .loc 1 63 39 add.u32 %r55,%r55,%r55; .loc 1 63 33 setp.ge.s32 %r106,%r55,0; @ %r106 bra $L10; bra $L9; $L8: .loc 1 64 17 shr.s32 %r107,%r49,23; .loc 1 64 12 add.u32 %r54,%r107,-127; bra $L9; $L27: .loc 1 63 14 mov.u32 %r54,-126; $L9: .loc 1 67 4 setp.lt.s32 %r108,%r51,-126; @ %r108 bra $L11; .loc 1 68 33 and.b32 %r32,%r45,8388607; .loc 1 68 9 or.b32 %r22,%r32,8388608; bra $L12; $L11: .loc 1 70 8 mov.u32 %r110,-126; sub.u32 %r109,%r110,%r51; .loc 1 71 9 shl.b32 %r22,%r48,%r109; $L12: .loc 1 73 4 setp.lt.s32 %r146,%r54,-126; @ %r146 bra $L13; .loc 1 74 33 and.b32 %r33,%r46,8388607; .loc 1 74 9 or.b32 %r44,%r33,8388608; bra $L14; $L13: .loc 1 76 8 mov.u32 %r113,-126; sub.u32 %r112,%r113,%r54; .loc 1 77 9 shl.b32 %r44,%r49,%r112; $L14: .loc 1 81 4 sub.u32 %r58,%r51,%r54; .loc 1 82 8 setp.eq.u32 %r114,%r51,%r54; @ %r114 bra $L15; mov.u32 %r26,%r58; $L19: .loc 1 83 8 sub.u32 %r64,%r22,%r44; .loc 1 84 8 setp.ge.s32 %r115,%r64,0; @ %r115 bra $L16; .loc 1 84 18 add.u32 %r22,%r22,%r22; bra $L17; $L16: .loc 1 86 9 setp.ne.u32 %r117,%r64,0; @ %r117 bra $L18; .loc 1 87 18 cvta.const.u64 %r118,Zero; .loc 1 87 33 shr.u32 %r119,%r47,31; .loc 1 87 18 cvt.u64.u32 %r120,%r119; shl.b64 %r121,%r120,2; add.u64 %r122,%r118,%r121; ld.f32 %r67,[%r122]; bra $L1; $L18: .loc 1 88 10 add.u32 %r22,%r64,%r64; $L17: .loc 1 82 8 add.u32 %r26,%r26,-1; setp.ne.u32 %r124,%r26,0; @ %r124 bra $L19; $L15: .loc 1 91 4 sub.u32 %r59,%r22,%r44; .loc 1 92 4 setp.lt.s32 %r125,%r59,0; selp.u32 %r22,%r22,%r59,%r125; .loc 1 95 4 setp.eq.u32 %r126,%r22,0; @ %r126 bra $L21; .loc 1 97 10 setp.le.s32 %r127,%r22,8388607; @ %r127 bra $L22; bra $L23; $L21: .loc 1 96 17 cvta.const.u64 %r128,Zero; .loc 1 96 32 shr.u32 %r129,%r47,31; .loc 1 96 17 cvt.u64.u32 %r130,%r129; shl.b64 %r131,%r130,2; add.u64 %r132,%r128,%r131; ld.f32 %r67,[%r132]; bra $L1; $L22: .loc 1 98 9 add.u32 %r22,%r22,%r22; .loc 1 99 9 add.u32 %r54,%r54,-1; .loc 1 97 10 setp.le.s32 %r134,%r22,8388607; @ %r134 bra $L22; setp.lt.s32 %r146,%r54,-126; $L23: .loc 1 101 4 @ %r146 bra $L24; .loc 1 102 32 add.u32 %r136,%r54,127; .loc 1 102 37 shl.b32 %r137,%r136,23; .loc 1 102 15 add.u32 %r138,%r22,-8388608; .loc 1 103 6 or.b32 %r139,%r138,%r47; or.b32 %r140,%r137,%r139; mov.b32 %r67,%r140; bra $L1; $L24: .loc 1 107 8 mov.u32 %r142,-126; sub.u32 %r141,%r142,%r54; .loc 1 108 9 shr.s32 %r143,%r22,%r141; .loc 1 109 6 or.b32 %r144,%r143,%r47; mov.b32 %r67,%r144; bra $L1; $L25: .loc 1 50 19 mov.f32 %r67,%r68; $L1: .loc 1 113 1 mov.f32 %value,%r67; st.param.f32 [%value_out],%value; ret; } /197 0 0 0 644 4418 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypotf .visible .func (.param .f32 %value_out) __ieee754_hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_hypotf .visible .func (.param .f32 %value_out) __ieee754_hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r31; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .f32 %r92; mov.f32 %r62,%ar0; mov.f32 %r63,%ar1; .loc 1 28 2 mov.b32 %r47,%r62; .loc 1 29 5 and.b32 %r45,%r47,2147483647; .loc 1 30 2 mov.b32 %r48,%r63; .loc 1 31 5 and.b32 %r46,%r48,2147483647; .loc 1 32 4 setp.ge.s32 %r65,%r45,%r46; @ %r65 bra $L2; mov.u32 %r64,%r45; mov.u32 %r45,%r46; mov.u32 %r46,%r64; $L2: .loc 1 33 2 mov.b32 %r61,%r45; .loc 1 34 2 mov.b32 %r43,%r46; .loc 1 35 8 sub.u32 %r66,%r45,%r46; .loc 1 35 4 setp.le.s32 %r67,%r66,251658240; @ %r67 bra $L3; .loc 1 35 34 add.f32 %r61,%r61,%r43; bra $L1; $L3: .loc 1 37 4 setp.le.s32 %r68,%r45,1484783616; @ %r68 bra $L13; .loc 1 38 7 setp.le.s32 %r69,%r45,2139095039; @ %r69 bra $L6; .loc 1 40 11 setp.eq.u32 %r70,%r45,2139095040; @ %r70 bra $L14; .loc 1 39 11 add.f32 %r61,%r61,%r43; bra $L7; $L14: .loc 1 40 41 mov.f32 %r61,0f7f800000; $L7: .loc 1 41 11 setp.ne.u32 %r71,%r46,2139095040; .loc 1 41 41 selp.f32 %r61,%r61,0f7f800000,%r71; bra $L1; $L6: .loc 1 45 8 add.u32 %r45,%r45,-570425344; .loc 1 45 27 add.u32 %r46,%r46,-570425344; .loc 1 46 5 mov.b32 %r61,%r45; .loc 1 47 5 mov.b32 %r43,%r46; .loc 1 45 45 mov.u32 %r44,68; bra $L5; $L13: .loc 1 36 3 mov.u32 %r44,0; $L5: .loc 1 49 4 setp.gt.s32 %r72,%r46,645922815; @ %r72 bra $L8; .loc 1 50 8 setp.eq.u32 %r73,%r46,0; @ %r73 bra $L1; .loc 1 52 15 setp.gt.s32 %r74,%r46,8388607; @ %r74 bra $L9; .loc 1 54 5 mul.f32 %r43,%r43,0f7e800000; .loc 1 55 5 mul.f32 %r61,%r61,0f7e800000; .loc 1 56 5 add.u32 %r44,%r44,-126; bra $L8; $L9: .loc 1 58 13 add.u32 %r45,%r45,570425344; .loc 1 59 6 add.u32 %r46,%r46,570425344; .loc 1 60 5 add.u32 %r44,%r44,-68; .loc 1 61 3 mov.b32 %r61,%r45; .loc 1 62 3 mov.b32 %r43,%r46; $L8: .loc 1 66 4 sub.f32 %r51,%r61,%r43; .loc 1 67 5 setp.lt.f32 %r75,%r43,%r51; @ ! %r75 bra $L22; .loc 1 68 6 and.b32 %r76,%r45,-4096; mov.b32 %r56,%r76; .loc 1 70 46 add.f32 %r77,%r61,%r56; .loc 1 69 9 sub.f32 %r78,%r61,%r56; .loc 1 70 43 mul.f32 %r79,%r77,%r78; fma.rn.f32 %r59,%r43,%r43,%r79; .loc 1 70 11 fma.rn.f32 %r31,%r56,%r56,%r59; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r81,[%value_in]; } mov.f32 %r61,%r81; bra $L12; $L22: .loc 1 73 6 and.b32 %r82,%r46,-4096; mov.b32 %r52,%r82; .loc 1 74 9 sub.f32 %r53,%r43,%r52; .loc 1 75 6 add.u32 %r83,%r45,8388608; and.b32 %r84,%r83,-4096; mov.b32 %r54,%r84; .loc 1 76 9 neg.f32 %r85,%r54; fma.rn.f32 %r55,%r61,0f40000000,%r85; .loc 1 77 50 mul.f32 %r86,%r43,%r55; .loc 1 77 47 fma.rn.f32 %r38,%r53,%r54,%r86; fma.rn.f32 %r60,%r51,%r51,%r38; .loc 1 77 11 fma.rn.f32 %r39,%r52,%r54,%r60; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } mov.f32 %r61,%r88; $L12: .loc 1 79 4 setp.eq.u32 %r89,%r44,0; @ %r89 bra $L1; .loc 1 80 6 shl.b32 %r90,%r44,23; add.u32 %r91,%r90,1065353216; .loc 1 81 15 mov.b32 %r92,%r91; mul.f32 %r61,%r61,%r92; $L1: .loc 1 83 1 mov.f32 %value,%r61; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j0.o/ 0 0 0 644 16398 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: pzerof .func (.param .f32 %value_out) pzerof (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_j0.c" // BEGIN FUNCTION DECL: qzerof .func (.param .f32 %value_out) qzerof (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .visible .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .visible .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN FUNCTION DEF: pzerof .func (.param .f32 %value_out) pzerof (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .f32 %r54; .reg .f32 %r57; mov.f32 %r50,%ar0; .loc 1 293 2 mov.b32 %r35,%r50; .loc 1 294 5 and.b32 %r36,%r35,2147483647; .loc 1 295 4 setp.gt.s32 %r51,%r36,1090519039; @ %r51 bra $L3; .loc 1 296 9 setp.gt.s32 %r52,%r36,1089936471; @ %r52 bra $L4; .loc 1 297 9 setp.le.s32 %r53,%r36,1077336935; selp.f32 %r48,0f416a859a,0f432d94b8,%r53; selp.f32 %r47,0f4319e01a,0f448cffe6,%r53; selp.f32 %r46,0f43873c32,0f44953373,%r53; selp.f32 %r45,0f430834f0,0f43b4c1ca,%r53; selp.f32 %r44,0fc04ef40d,0fc1fb9565,%r53; selp.f32 %r43,0fc1331736,0fc2685112,%r53; selp.f32 %r42,0fc0f4579f,0fc1afba52,%r53; selp.f32 %r41,0fbfb9b1cc,0fc01a2d95,%r53; selp.f32 %r40,0fbd8ffb12,0fbd8fffb8,%r53; selp.f32 %r28,0f41b1c32d,0f420f6c94,%r53; selp.f32 %r23,0fb3be98b7,0fb12f081b,%r53; bra $L2; $L3: mov.f32 %r48,0f473a0bba; mov.f32 %r47,0f47e4087c; mov.f32 %r46,0f471e95db; mov.f32 %r45,0f456f9beb; mov.f32 %r44,0fc5a4285a; mov.f32 %r43,0fc51b5376; mov.f32 %r42,0fc3808814; mov.f32 %r41,0fc1014e86; mov.f32 %r40,0fbd900000; .loc 1 295 36 mov.f32 %r28,0f42e91198; .loc 1 295 28 mov.f32 %r23,0f00000000; bra $L2; $L4: mov.f32 %r48,0f451660ee; mov.f32 %r47,0f461665c8; mov.f32 %r46,0f45bad7c4; mov.f32 %r45,0f44836813; mov.f32 %r44,0fc3ad3779; mov.f32 %r43,0fc3a59d9b; mov.f32 %r42,0fc287597b; mov.f32 %r41,0fc0851b88; mov.f32 %r40,0fbd8fffff; .loc 1 296 36 mov.f32 %r28,0f42730408; .loc 1 296 28 mov.f32 %r23,0fad48c58a; $L2: .loc 1 299 12 mul.f32 %r54,%r50,%r50; .loc 1 299 4 rcp.rn.f32 %r37,%r54; .loc 1 300 42 fma.rn.f32 %r24,%r37,%r44,%r43; .loc 1 300 34 fma.rn.f32 %r25,%r24,%r37,%r42; .loc 1 300 26 fma.rn.f32 %r26,%r25,%r37,%r41; .loc 1 300 18 fma.rn.f32 %r27,%r26,%r37,%r40; .loc 1 300 4 fma.rn.f32 %r38,%r27,%r37,%r23; .loc 1 301 41 fma.rn.f32 %r30,%r37,%r48,%r47; .loc 1 301 33 fma.rn.f32 %r31,%r30,%r37,%r46; .loc 1 301 25 fma.rn.f32 %r32,%r31,%r37,%r45; .loc 1 301 17 fma.rn.f32 %r33,%r32,%r37,%r28; .loc 1 301 4 fma.rn.f32 %r39,%r33,%r37,0f3f800000; .loc 1 302 15 div.rn.f32 %r57,%r38,%r39; .loc 1 302 12 add.f32 %value,%r57,0f3f800000; .loc 1 303 1 st.param.f32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qzerof .func (.param .f32 %value_out) qzerof (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .u32 %r37; .reg .u32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .f32 %r57; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; mov.f32 %r53,%ar0; .loc 1 429 2 mov.b32 %r37,%r53; .loc 1 430 5 and.b32 %r38,%r37,2147483647; .loc 1 431 4 setp.gt.s32 %r54,%r38,1090519039; @ %r54 bra $L8; .loc 1 432 9 setp.gt.s32 %r55,%r38,1089936471; @ %r55 bra $L9; .loc 1 433 9 setp.le.s32 %r56,%r38,1077336935; selp.f32 %r51,0fc0a9f358,0fc3153f59,%r56; selp.f32 %r50,0f4354aa98,0f451d4557,%r56; selp.f32 %r49,0f445cbbe5,0f45c9e367,%r56; selp.f32 %r48,0f44533229,0f4567825f,%r56; selp.f32 %r47,0f4386ac8f,0f44316c1c,%r56; selp.f32 %r46,0f4182058c,0f4326bbe4,%r56; selp.f32 %r45,0f41fd5471,0f432acedf,%r56; selp.f32 %r44,0f4167edfd,0f422a7cc5,%r56; selp.f32 %r43,0f3fffc4bf,0f405607e3,%r56; selp.f32 %r42,0f3d95f62a,0f3d95ff70,%r56; selp.f32 %r28,0f41f2ecb8,0f42430916,%r56; selp.f32 %r23,0f342189db,0f3196681b,%r56; bra $L7; $L8: mov.f32 %r51,0fc8a7eb69; mov.f32 %r50,0f494d3359; mov.f32 %r49,0f49441ed4; mov.f32 %r48,0f480b3293; mov.f32 %r47,0f45fd12c2; mov.f32 %r46,0f471096a0; mov.f32 %r45,0f460a6cca; mov.f32 %r44,0f440b6b19; mov.f32 %r43,0f413c4a93; mov.f32 %r42,0f3d960000; .loc 1 431 36 mov.f32 %r28,0f4323c6aa; .loc 1 431 28 mov.f32 %r23,0f00000000; bra $L7; $L9: mov.f32 %r51,0fc5a752be; mov.f32 %r50,0f470c88c1; mov.f32 %r49,0f475daf1d; mov.f32 %r48,0f46933e94; mov.f32 %r47,0f4501dd07; mov.f32 %r46,0f44f8bf4b; mov.f32 %r45,0f448067cd; mov.f32 %r44,0f43071c90; mov.f32 %r43,0f40babd86; mov.f32 %r42,0f3d95ffff; .loc 1 432 36 mov.f32 %r28,0f42a58da0; .loc 1 432 28 mov.f32 %r23,0f2da1ec79; $L7: .loc 1 435 12 mul.f32 %r57,%r53,%r53; .loc 1 435 4 rcp.rn.f32 %r39,%r57; .loc 1 436 42 fma.rn.f32 %r24,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r25,%r24,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r26,%r25,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r27,%r26,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r40,%r27,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r30,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r31,%r30,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r32,%r31,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r33,%r32,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r34,%r33,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r41,%r34,%r39,0f3f800000; .loc 1 438 26 div.rn.f32 %r60,%r40,%r41; .loc 1 438 23 mov.f32 %r62,0f3e000000; sub.f32 %r61,%r60,%r62; .loc 1 438 29 div.rn.f32 %value,%r61,%r53; .loc 1 439 1 st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j0f .visible .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r29; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r56; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .pred %r65; .reg .f32 %r66; .reg .f32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f32 %r73; .reg .f32 %r75; .reg .pred %r76; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r93; .reg .f32 %r94; .reg .pred %r95; .reg .f32 %r96; .reg .pred %r97; .reg .pred %r98; .reg .f32 %r100; .reg .pred %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r105; mov.f32 %r64,%ar0; .loc 1 59 2 mov.b32 %r47,%r64; .loc 1 60 5 and.b32 %r48,%r47,2147483647; .loc 1 61 4 setp.le.s32 %r65,%r48,2139095039; @ %r65 bra $L12; .loc 1 61 44 mul.f32 %r66,%r64,%r64; .loc 1 61 41 rcp.rn.f32 %r63,%r66; bra $L11; $L12: .loc 1 62 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r69,[%value_in]; } .loc 1 63 4 and.b32 %r70,%r47,1073741824; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L14; .loc 1 64 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 65 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 66 6 sub.f32 %r45,%r73,%r75; .loc 1 67 6 add.f32 %r46,%r73,%r75; .loc 1 68 5 setp.gt.s32 %r76,%r48,2130706431; @ %r76 bra $L15; .loc 1 69 12 add.f32 %r78,%r69,%r69; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r78; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r79,[%value_in]; } .loc 1 69 9 neg.f32 %r56,%r79; .loc 1 70 13 mul.f32 %r80,%r73,%r75; .loc 1 70 10 setp.lt.f32 %r81,%r80,0f00000000; @ ! %r81 bra $L25; .loc 1 70 26 div.rn.f32 %r46,%r56,%r45; bra $L15; $L25: .loc 1 71 20 div.rn.f32 %r45,%r56,%r46; $L15: .loc 1 77 5 setp.le.s32 %r82,%r48,1543503872; @ %r82 bra $L18; .loc 1 77 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 77 35 mul.f32 %r85,%r46,0f3f106ebb; .loc 1 77 23 div.rn.f32 %r63,%r85,%r84; bra $L11; $L18: .loc 1 79 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r87,[%value_in]; } .loc 1 79 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r89,[%value_in]; } .loc 1 80 28 mul.f32 %r90,%r45,%r89; .loc 1 80 26 neg.f32 %r91,%r90; fma.rn.f32 %r29,%r46,%r87,%r91; .loc 1 80 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 80 20 mul.f32 %r94,%r29,0f3f106ebb; .loc 1 80 9 div.rn.f32 %r63,%r94,%r93; bra $L11; $L14: .loc 1 84 4 setp.gt.s32 %r95,%r48,956301311; @ %r95 bra $L19; .loc 1 85 13 add.f32 %r96,%r69,0f7149f2ca; .loc 1 85 8 setp.gt.f32 %r97,%r96,0f3f800000; @ ! %r97 bra $L19; .loc 1 86 12 setp.le.s32 %r98,%r48,838860799; @ %r98 bra $L22; .loc 1 87 33 mul.f32 %r100,%r69,0fbe800000; fma.rn.f32 %r63,%r100,%r69,0f3f800000; bra $L11; $L19: .loc 1 90 4 mul.f32 %r51,%r69,%r69; .loc 1 91 27 fma.rn.f32 %r34,%r51,0fb19eaf3c,0f35f58e88; .loc 1 91 20 fma.rn.f32 %r35,%r34,%r51,0fb947352e; .loc 1 91 13 fma.rn.f32 %r36,%r35,%r51,0f3c800000; .loc 1 91 4 mul.f32 %r52,%r36,%r51; .loc 1 92 31 fma.rn.f32 %r37,%r51,0f30a045e8,0f3509daa6; .loc 1 92 24 fma.rn.f32 %r38,%r37,%r51,0f38f53697; .loc 1 92 17 fma.rn.f32 %r39,%r38,%r51,0f3c7fe744; .loc 1 92 4 fma.rn.f32 %r53,%r39,%r51,0f3f800000; .loc 1 94 37 div.rn.f32 %r62,%r52,%r53; .loc 1 93 4 setp.gt.s32 %r101,%r48,1065353215; @ %r101 bra $L21; .loc 1 94 34 mov.f32 %r103,0f3e800000; sub.f32 %r102,%r62,%r103; .loc 1 94 17 fma.rn.f32 %r63,%r102,%r51,0f3f800000; bra $L11; $L21: .loc 1 97 17 fma.rn.f32 %r41,%r69,0f3f000000,0f3f800000; .loc 1 97 25 fma.rn.f32 %r42,%r69,0fbf000000,0f3f800000; .loc 1 97 30 mul.f32 %r105,%r51,%r62; .loc 1 97 28 fma.rn.f32 %r63,%r41,%r42,%r105; bra $L11; $L22: .loc 1 86 35 mov.f32 %r63,0f3f800000; $L11: .loc 1 99 1 mov.f32 %value,%r63; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y0f .visible .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r29; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r54; .reg .f32 %r59; .reg .f32 %r60; .reg .pred %r61; .reg .pred %r63; .reg .f32 %r64; .reg .pred %r65; .reg .f32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .f32 %r70; .reg .f32 %r72; .reg .pred %r73; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r89; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r93; .reg .f32 %r95; .reg .f32 %r97; .reg .f32 %r98; mov.f32 %r60,%ar0; .loc 1 128 2 mov.b32 %r47,%r60; .loc 1 129 12 and.b32 %r48,%r47,2147483647; .loc 1 131 4 setp.le.s32 %r61,%r48,2139095039; @ %r61 bra $L27; .loc 1 131 45 fma.rn.f32 %r22,%r60,%r60,%r60; .loc 1 131 42 rcp.rn.f32 %r59,%r22; bra $L26; $L27: .loc 1 132 11 setp.ne.u32 %r63,%r48,0; @ %r63 bra $L29; .loc 1 132 46 mov.f32 %r64,0fbf800000; div.rn.f32 %r59,%r64,0f00000000; bra $L26; $L29: .loc 1 133 11 setp.ge.s32 %r65,%r47,0; @ %r65 bra $L30; .loc 1 133 29 mov.f32 %r66,0f00000000; div.rn.f32 %r59,%r66,%r66; bra $L26; $L30: .loc 1 134 11 and.b32 %r67,%r47,1073741824; setp.eq.u32 %r68,%r67,0; @ %r68 bra $L31; .loc 1 146 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r70,[%value_in]; } .loc 1 147 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r72,[%value_in]; } .loc 1 148 20 sub.f32 %r45,%r70,%r72; .loc 1 149 20 add.f32 %r46,%r70,%r72; .loc 1 154 19 setp.gt.s32 %r73,%r48,2130706431; @ %r73 bra $L32; .loc 1 155 26 add.f32 %r75,%r60,%r60; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r75; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r76,[%value_in]; } .loc 1 155 23 neg.f32 %r54,%r76; .loc 1 156 27 mul.f32 %r77,%r70,%r72; .loc 1 156 24 setp.lt.f32 %r78,%r77,0f00000000; @ ! %r78 bra $L38; .loc 1 156 40 div.rn.f32 %r46,%r54,%r45; bra $L32; $L38: .loc 1 157 40 div.rn.f32 %r45,%r54,%r46; $L32: .loc 1 159 19 setp.le.s32 %r79,%r48,1543503872; @ %r79 bra $L35; .loc 1 159 54 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r81,[%value_in]; } .loc 1 159 49 mul.f32 %r82,%r45,0f3f106ebb; .loc 1 159 37 div.rn.f32 %r59,%r82,%r81; bra $L26; $L35: .loc 1 161 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 161 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 162 42 mul.f32 %r87,%r46,%r86; .loc 1 162 40 fma.rn.f32 %r29,%r45,%r84,%r87; .loc 1 162 47 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r89,[%value_in]; } .loc 1 162 34 mul.f32 %r90,%r29,0f3f106ebb; .loc 1 162 23 div.rn.f32 %r59,%r90,%r89; bra $L26; $L31: .loc 1 166 4 setp.gt.s32 %r91,%r48,964689920; @ %r91 bra $L36; .loc 1 167 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 167 17 fma.rn.f32 %r59,%r93,0f3f22f983,0fbd9726b5; bra $L26; $L36: .loc 1 169 4 mul.f32 %r49,%r60,%r60; .loc 1 170 44 fma.rn.f32 %r33,%r49,0fae2f21eb,0f32a802ba; .loc 1 170 37 fma.rn.f32 %r34,%r33,%r49,0fb67ff53c; .loc 1 170 30 fma.rn.f32 %r35,%r34,%r49,0f39b62a69; .loc 1 170 23 fma.rn.f32 %r36,%r35,%r49,0fbc626746; .loc 1 170 16 fma.rn.f32 %r37,%r36,%r49,0f3e34e80d; .loc 1 170 4 fma.rn.f32 %r50,%r37,%r49,0fbd9726b5; .loc 1 171 30 fma.rn.f32 %r38,%r49,0f2ff280c2,0f348b216c; .loc 1 171 23 fma.rn.f32 %r39,%r38,%r49,0f389f65e0; .loc 1 171 16 fma.rn.f32 %r40,%r39,%r49,0f3c509385; .loc 1 171 4 fma.rn.f32 %r51,%r40,%r49,0f3f800000; .loc 1 172 10 div.rn.f32 %r41,%r50,%r51; .loc 1 172 20 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r95,[%value_in]; } .loc 1 172 37 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r97,[%value_in]; } .loc 1 172 36 mul.f32 %r98,%r95,%r97; .loc 1 172 13 fma.rn.f32 %r59,%r98,0f3f22f983,%r41; $L26: .loc 1 173 1 mov.f32 %value,%r59; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j1.o/ 0 0 0 644 14943 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: ponef .func (.param .f32 %value_out) ponef (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_j1.c" // BEGIN FUNCTION DECL: qonef .func (.param .f32 %value_out) qonef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .visible .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .visible .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN FUNCTION DEF: ponef .func (.param .f32 %value_out) ponef (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .f32 %r54; .reg .f32 %r57; mov.f32 %r50,%ar0; .loc 1 292 2 mov.b32 %r35,%r50; .loc 1 293 5 and.b32 %r36,%r35,2147483647; .loc 1 294 11 setp.gt.s32 %r51,%r36,1090519039; @ %r51 bra $L3; .loc 1 295 16 setp.gt.s32 %r52,%r36,1089936471; @ %r52 bra $L4; .loc 1 296 16 setp.le.s32 %r53,%r36,1077336935; selp.f32 %r48,0f4105d590,0f42cf936c,%r53; selp.f32 %r47,0f42eb5bd7,0f445eb3ed,%r53; selp.f32 %r46,0f436846c7,0f4482dbe3,%r53; selp.f32 %r45,0f42fa9499,0f43a86198,%r53; selp.f32 %r44,0f40a25a4d,0f42423c7c,%r53; selp.f32 %r43,0f418d8d41,0f42b61c2a,%r53; selp.f32 %r42,0f4143e1bc,0f420c7a45,%r53; selp.f32 %r41,0f401795c0,0f407bb5e7,%r53; selp.f32 %r40,0f3deffa16,0f3defffab,%r53; selp.f32 %r28,0f41ab7dec,0f420b2a4d,%r53; selp.f32 %r23,0f33e74ea8,0f314fe10d,%r53; bra $L2; $L3: mov.f32 %r48,0f46f0a88b; mov.f32 %r47,0f47bea166; mov.f32 %r46,0f47105c35; mov.f32 %r45,0f45642ee5; mov.f32 %r44,0f45f753d6; mov.f32 %r43,0f45722bed; mov.f32 %r42,0f43ce06a3; mov.f32 %r41,0f4153d4ea; mov.f32 %r40,0f3df00000; .loc 1 294 43 mov.f32 %r28,0f42e46a2c; .loc 1 294 35 mov.f32 %r23,0f00000000; bra $L2; $L4: mov.f32 %r48,0f44bc0180; mov.f32 %r47,0f45f52586; mov.f32 %r46,0f45a74a23; mov.f32 %r45,0f4477d9b1; mov.f32 %r44,0f44042dc6; mov.f32 %r43,0f440168b7; mov.f32 %r42,0f42d89dca; mov.f32 %r41,0f40d9b023; mov.f32 %r40,0f3defffff; .loc 1 295 43 mov.f32 %r28,0f426d1f55; .loc 1 295 35 mov.f32 %r23,0f2d68333f; $L2: .loc 1 298 19 mul.f32 %r54,%r50,%r50; .loc 1 298 11 rcp.rn.f32 %r37,%r54; .loc 1 299 49 fma.rn.f32 %r24,%r37,%r44,%r43; .loc 1 299 41 fma.rn.f32 %r25,%r24,%r37,%r42; .loc 1 299 33 fma.rn.f32 %r26,%r25,%r37,%r41; .loc 1 299 25 fma.rn.f32 %r27,%r26,%r37,%r40; .loc 1 299 11 fma.rn.f32 %r38,%r27,%r37,%r23; .loc 1 300 48 fma.rn.f32 %r30,%r37,%r48,%r47; .loc 1 300 40 fma.rn.f32 %r31,%r30,%r37,%r46; .loc 1 300 32 fma.rn.f32 %r32,%r31,%r37,%r45; .loc 1 300 24 fma.rn.f32 %r33,%r32,%r37,%r28; .loc 1 300 11 fma.rn.f32 %r39,%r33,%r37,0f3f800000; .loc 1 301 22 div.rn.f32 %r57,%r38,%r39; .loc 1 301 19 add.f32 %value,%r57,0f3f800000; .loc 1 302 1 st.param.f32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qonef .func (.param .f32 %value_out) qonef (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .u32 %r37; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f32 %r56; .reg .f32 %r59; .reg .f32 %r60; mov.f32 %r53,%ar0; .loc 1 429 2 mov.b32 %r37,%r53; .loc 1 430 5 and.b32 %r54,%r37,2147483647; .loc 1 431 4 setp.le.s32 %r55,%r54,1075838975; selp.f32 %r51,0fc09eb437,0fc88fcb48,%r55; selp.f32 %r50,0f431bf2f2,0f4922be94,%r55; selp.f32 %r49,0f4438d92a,0f492fb29c,%r55; selp.f32 %r48,0f443d602e,0f4802bcd6,%r55; selp.f32 %r47,0f437cfb47,0f45f48b17,%r55; selp.f32 %r46,0fc1aaf9b2,0fc73d3683,%r55; selp.f32 %r45,0fc2294d1f,0fc639273a,%r55; selp.f32 %r44,0fc19d4f16,0fc43de683,%r55; selp.f32 %r43,0fc0302423,0fc1822c8d,%r55; selp.f32 %r42,0fbdd1f475,0fbdd20000,%r55; selp.f32 %r28,0f41ec4454,0f43216537,%r55; selp.f32 %r23,0fb43f8932,0f00000000,%r55; .loc 1 435 12 mul.f32 %r56,%r53,%r53; .loc 1 435 4 rcp.rn.f32 %r39,%r56; .loc 1 436 42 fma.rn.f32 %r24,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r25,%r24,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r26,%r25,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r27,%r26,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r40,%r27,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r30,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r31,%r30,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r32,%r31,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r33,%r32,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r34,%r33,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r41,%r34,%r39,0f3f800000; .loc 1 438 25 div.rn.f32 %r59,%r40,%r41; .loc 1 438 22 add.f32 %r60,%r59,0f3ec00000; .loc 1 438 28 div.rn.f32 %value,%r60,%r53; .loc 1 439 1 st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j1f .visible .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r28; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .f32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .f32 %r66; .reg .f32 %r68; .reg .f32 %r69; .reg .pred %r70; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .pred %r89; .reg .pred %r90; .reg .f32 %r91; .reg .pred %r92; .reg .f32 %r93; .reg .f32 %r94; mov.f32 %r58,%ar0; .loc 1 60 2 mov.b32 %r42,%r58; .loc 1 61 5 and.b32 %r43,%r42,2147483647; .loc 1 62 4 setp.le.s32 %r59,%r43,2139095039; @ %r59 bra $L10; .loc 1 62 41 rcp.rn.f32 %r57,%r58; bra $L9; $L10: .loc 1 63 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 64 4 and.b32 %r63,%r42,1073741824; setp.eq.u32 %r64,%r63,0; @ %r64 bra $L12; .loc 1 65 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } .loc 1 66 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 67 8 neg.f32 %r69,%r66; .loc 1 67 6 sub.f32 %r40,%r69,%r68; .loc 1 68 6 sub.f32 %r41,%r66,%r68; .loc 1 69 5 setp.gt.s32 %r70,%r43,2130706431; @ %r70 bra $L13; .loc 1 70 11 add.f32 %r72,%r62,%r62; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 71 13 mul.f32 %r74,%r66,%r68; .loc 1 71 10 setp.gt.f32 %r75,%r74,0f00000000; @ ! %r75 bra $L20; .loc 1 71 26 div.rn.f32 %r41,%r73,%r40; bra $L13; $L20: .loc 1 72 20 div.rn.f32 %r40,%r73,%r41; $L13: .loc 1 78 5 setp.le.s32 %r76,%r43,1543503872; @ %r76 bra $L16; .loc 1 78 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r78,[%value_in]; } .loc 1 78 35 mul.f32 %r79,%r41,0f3f106ebb; .loc 1 78 23 div.rn.f32 %r57,%r79,%r78; bra $L17; $L16: .loc 1 80 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),ponef,(%out_arg1); ld.param.f32 %r81,[%value_in]; } .loc 1 80 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),qonef,(%out_arg1); ld.param.f32 %r83,[%value_in]; } .loc 1 81 28 mul.f32 %r84,%r40,%r83; .loc 1 81 26 neg.f32 %r85,%r84; fma.rn.f32 %r28,%r41,%r81,%r85; .loc 1 81 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r87,[%value_in]; } .loc 1 81 20 mul.f32 %r88,%r28,0f3f106ebb; .loc 1 81 9 div.rn.f32 %r57,%r88,%r87; $L17: .loc 1 83 5 setp.ge.s32 %r89,%r42,0; @ %r89 bra $L9; .loc 1 83 19 neg.f32 %r57,%r57; bra $L9; $L12: .loc 1 87 38 mul.f32 %r57,%r58,0f3f000000; .loc 1 86 4 setp.gt.s32 %r90,%r43,838860799; @ %r90 bra $L18; .loc 1 87 13 add.f32 %r91,%r58,0f7149f2ca; .loc 1 87 8 setp.gt.f32 %r92,%r91,0f3f800000; @ %r92 bra $L9; $L18: .loc 1 89 4 mul.f32 %r45,%r58,%r58; .loc 1 90 27 fma.rn.f32 %r32,%r45,0f335557d2,0fb7862e36; .loc 1 90 20 fma.rn.f32 %r33,%r32,%r45,0f3ab86cfd; .loc 1 90 13 fma.rn.f32 %r34,%r33,%r45,0fbd800000; .loc 1 90 4 mul.f32 %r46,%r34,%r45; .loc 1 91 38 fma.rn.f32 %r35,%r45,0f2d59567e,0f31ad6446; .loc 1 91 31 fma.rn.f32 %r36,%r35,%r45,0f359dffc2; .loc 1 91 24 fma.rn.f32 %r37,%r36,%r45,0f3942fab6; .loc 1 91 17 fma.rn.f32 %r38,%r37,%r45,0f3c9ce859; .loc 1 91 4 fma.rn.f32 %r47,%r38,%r45,0f3f800000; .loc 1 92 4 mul.f32 %r93,%r58,%r46; .loc 1 93 23 div.rn.f32 %r94,%r93,%r47; .loc 1 93 21 add.f32 %r57,%r57,%r94; $L9: .loc 1 94 1 mov.f32 %value,%r57; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y1f .visible .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r29; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r45; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r60; .reg .f32 %r61; .reg .pred %r62; .reg .pred %r64; .reg .f32 %r65; .reg .pred %r66; .reg .f32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f32 %r71; .reg .f32 %r73; .reg .f32 %r74; .reg .pred %r75; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .pred %r80; .reg .pred %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r91; .reg .f32 %r92; .reg .pred %r93; .reg .f32 %r94; .reg .f32 %r96; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r101; .reg .f32 %r102; mov.f32 %r61,%ar0; .loc 1 129 2 mov.b32 %r49,%r61; .loc 1 130 12 and.b32 %r50,%r49,2147483647; .loc 1 132 4 setp.le.s32 %r62,%r50,2139095039; @ %r62 bra $L22; .loc 1 132 44 fma.rn.f32 %r22,%r61,%r61,%r61; .loc 1 132 41 rcp.rn.f32 %r60,%r22; bra $L21; $L22: .loc 1 133 11 setp.ne.u32 %r64,%r50,0; @ %r64 bra $L24; .loc 1 133 46 mov.f32 %r65,0fbf800000; div.rn.f32 %r60,%r65,0f00000000; bra $L21; $L24: .loc 1 134 11 setp.ge.s32 %r66,%r49,0; @ %r66 bra $L25; .loc 1 134 29 mov.f32 %r67,0f00000000; div.rn.f32 %r60,%r67,%r67; bra $L21; $L25: .loc 1 135 11 and.b32 %r68,%r49,1073741824; setp.eq.u32 %r69,%r68,0; @ %r69 bra $L26; .loc 1 136 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } .loc 1 137 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 138 22 neg.f32 %r74,%r71; .loc 1 138 20 sub.f32 %r47,%r74,%r73; .loc 1 139 20 sub.f32 %r48,%r71,%r73; .loc 1 140 19 setp.gt.s32 %r75,%r50,2130706431; @ %r75 bra $L27; .loc 1 141 25 add.f32 %r77,%r61,%r61; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r78,[%value_in]; } .loc 1 142 27 mul.f32 %r79,%r71,%r73; .loc 1 142 24 setp.gt.f32 %r80,%r79,0f00000000; @ ! %r80 bra $L33; .loc 1 142 40 div.rn.f32 %r48,%r78,%r47; bra $L27; $L33: .loc 1 143 40 div.rn.f32 %r47,%r78,%r48; $L27: .loc 1 156 19 setp.le.s32 %r81,%r50,1543503872; @ %r81 bra $L30; .loc 1 156 54 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r83,[%value_in]; } .loc 1 156 49 mul.f32 %r84,%r47,0f3f106ebb; .loc 1 156 37 div.rn.f32 %r60,%r84,%r83; bra $L21; $L30: .loc 1 158 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),ponef,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 158 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),qonef,(%out_arg1); ld.param.f32 %r88,[%value_in]; } .loc 1 159 42 mul.f32 %r89,%r48,%r88; .loc 1 159 40 fma.rn.f32 %r29,%r47,%r86,%r89; .loc 1 159 47 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r91,[%value_in]; } .loc 1 159 34 mul.f32 %r92,%r29,0f3f106ebb; .loc 1 159 23 div.rn.f32 %r60,%r92,%r91; bra $L21; $L26: .loc 1 163 11 setp.gt.s32 %r93,%r50,612368384; @ %r93 bra $L31; .loc 1 164 24 mov.f32 %r94,0fbf22f983; div.rn.f32 %r60,%r94,%r61; bra $L21; $L31: .loc 1 166 11 mul.f32 %r51,%r61,%r61; .loc 1 167 45 fma.rn.f32 %r34,%r51,0fb3c56003,0f37c5581c; .loc 1 167 36 fma.rn.f32 %r35,%r34,%r51,0fbafaaf2a; .loc 1 167 27 fma.rn.f32 %r36,%r35,%r51,0f3d4e9e3c; .loc 1 167 11 fma.rn.f32 %r52,%r36,%r51,0fbe48c331; .loc 1 168 52 fma.rn.f32 %r37,%r51,0f2d9281cf,0f31d5f8eb; .loc 1 168 43 fma.rn.f32 %r38,%r37,%r51,0f35b602d4; .loc 1 168 34 fma.rn.f32 %r39,%r38,%r51,0f3954644b; .loc 1 168 25 fma.rn.f32 %r40,%r39,%r51,0f3ca3286a; .loc 1 168 11 fma.rn.f32 %r53,%r40,%r51,0f3f800000; .loc 1 169 20 div.rn.f32 %r41,%r52,%r53; .loc 1 169 31 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r96,[%value_in]; } .loc 1 169 48 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r98,[%value_in]; } .loc 1 169 69 rcp.rn.f32 %r99,%r61; .loc 1 169 65 neg.f32 %r101,%r99; fma.rn.f32 %r45,%r96,%r98,%r101; .loc 1 169 29 mul.f32 %r102,%r45,0f3f22f983; .loc 1 169 24 fma.rn.f32 %r60,%r41,%r61,%r102; $L21: .loc 1 170 1 mov.f32 %value,%r60; st.param.f32 [%value_out],%value; ret; } lib_a-ef_jn.o/ 0 0 0 644 13108 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_jnf .visible .func (.param .f32 %value_out) __ieee754_jnf (.param .u32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_jn.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_ynf .visible .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .extern .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .extern .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .extern .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .extern .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_jnf .visible .func (.param .f32 %value_out) __ieee754_jnf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r27; .reg .f32 %r31; .reg .u32 %r33; .reg .f32 %r35; .reg .f32 %r39; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r47; .reg .u32 %r48; .reg .f32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r53; .reg .u32 %r56; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .u32 %r80; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .u32 %r86; .reg .f32 %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .f32 %r92; .reg .pred %r93; .reg .f32 %r95; .reg .u32 %r97; .reg .f32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .pred %r112; .reg .f32 %r114; .reg .f32 %r116; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r126; .reg .f32 %r127; .reg .pred %r128; .reg .f32 %r129; .reg .pred %r130; .reg .u32 %r131; .reg .u32 %r133; .reg .f32 %r135; .reg .f32 %r136; .reg .f32 %r137; .reg .pred %r138; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r143; .reg .f32 %r144; .reg .pred %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .pred %r151; .reg .pred %r152; .reg .f32 %r154; .reg .f32 %r155; .reg .pred %r156; .reg .f32 %r158; .reg .u16 %r159; mov.u32 %r86,%ar0; mov.f32 %r87,%ar1; .loc 1 46 2 mov.b32 %r58,%r87; .loc 1 47 5 and.b32 %r59,%r58,2147483647; .loc 1 49 4 setp.le.s32 %r88,%r59,2139095040; @ %r88 bra $L2; .loc 1 49 35 add.f32 %r85,%r87,%r87; bra $L1; $L2: .loc 1 50 4 setp.ge.s32 %r89,%r86,0; @ %r89 bra $L4; .loc 1 51 5 neg.s32 %r86,%r86; .loc 1 52 5 neg.f32 %r87,%r87; .loc 1 53 6 add.u32 %r58,%r58,-2147483648; bra $L5; $L4: .loc 1 55 4 setp.ne.u32 %r90,%r86,0; @ %r90 bra $L5; .loc 1 55 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r92,[%value_in]; } mov.f32 %r85,%r92; bra $L1; $L5: .loc 1 56 4 setp.ne.u32 %r93,%r86,1; @ %r93 bra $L6; .loc 1 56 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r95,[%value_in]; } mov.f32 %r85,%r95; bra $L1; $L6: .loc 1 57 6 shr.u32 %r97,%r58,31; and.b32 %r60,%r97,%r86; .loc 1 58 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r99,[%value_in]; } .loc 1 59 5 set.u32.eq.u32 %r101,%r59,0; neg.s32 %r102,%r101; mov.u32 %r100,%r102; .loc 1 59 28 set.u32.eq.u32 %r104,%r59,2139095040; neg.s32 %r105,%r104; mov.u32 %r103,%r105; .loc 1 59 26 cvt.u16.u8 %r159,%r100; mov.u16 %r107,%r159; cvt.u16.u8 %r159,%r103; mov.u16 %r108,%r159; or.b16 %r106,%r107,%r108; cvt.u32.u16 %r109,%r106; .loc 1 59 4 cvt.u16.u8 %r110,%r109; setp.ne.u16 %r111,%r110,0; @ %r111 bra $L26; .loc 1 61 10 cvt.rn.f32.s32 %r27,%r86; .loc 1 61 9 setp.le.f32 %r112,%r27,%r99; @ ! %r112 bra $L42; .loc 1 63 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r114,[%value_in]; } mov.f32 %r31,%r114; .loc 1 64 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r116,[%value_in]; } mov.f32 %r85,%r116; add.u32 %r56,%r86,%r86; mov.u32 %r64,2; $L10: neg.f32 %r83,%r31; mov.f32 %r31,%r85; .loc 1 67 10 cvt.rn.f32.s32 %r118,%r64; .loc 1 67 22 div.rn.f32 %r119,%r118,%r99; .loc 1 67 5 fma.rn.f32 %r85,%r119,%r85,%r83; .loc 1 65 15 add.u32 %r64,%r64,2; setp.ne.u32 %r120,%r56,%r64; @ %r120 bra $L10; bra $L7; $L42: .loc 1 71 8 setp.gt.s32 %r121,%r59,813694975; @ %r121 bra $L11; .loc 1 75 5 setp.gt.s32 %r122,%r86,33; @ %r122 bra $L27; .loc 1 78 12 mul.f32 %r77,%r99,0f3f000000; add.u32 %r51,%r86,1; .loc 1 78 30 mov.f32 %r79,%r77; .loc 1 79 13 mov.f32 %r78,0f3f800000; .loc 1 79 19 mov.u32 %r50,2; $L12: .loc 1 80 9 cvt.rn.f32.s32 %r123,%r50; .loc 1 80 6 mul.f32 %r78,%r78,%r123; .loc 1 81 6 mul.f32 %r79,%r79,%r77; .loc 1 79 28 add.u32 %r50,%r50,1; .loc 1 79 23 setp.ne.u32 %r124,%r51,%r50; @ %r124 bra $L12; .loc 1 83 9 div.rn.f32 %r85,%r79,%r78; bra $L7; $L11: .loc 1 117 10 add.u32 %r33,%r86,%r86; .loc 1 117 13 cvt.rn.f32.s32 %r126,%r33; .loc 1 117 6 div.rn.f32 %r35,%r126,%r99; .loc 1 117 26 mov.f32 %r127,0f40000000; div.rn.f32 %r62,%r127,%r99; .loc 1 118 14 add.f32 %r75,%r35,%r62; .loc 1 118 24 fma.rn.f32 %r63,%r35,%r75,0fbf800000; .loc 1 119 11 setp.lt.f32 %r128,%r63,0f4e6e6b28; @ ! %r128 bra $L43; .loc 1 118 45 mov.u32 %r74,1; bra $L15; $L28: .loc 1 123 7 mov.f32 %r63,%r76; $L15: .loc 1 120 6 add.u32 %r74,%r74,1; .loc 1 120 14 add.f32 %r75,%r75,%r62; .loc 1 121 8 neg.f32 %r129,%r35; fma.rn.f32 %r76,%r75,%r63,%r129; mov.f32 %r35,%r63; .loc 1 119 11 setp.lt.f32 %r130,%r76,0f4e6e6b28; @ %r130 bra $L28; bra $L44; $L43: .loc 1 126 23 add.u32 %r131,%r86,1; .loc 1 126 17 add.u32 %r48,%r131,%r131; bra $L17; $L44: .loc 1 126 23 add.u32 %r133,%r74,%r86; .loc 1 126 17 add.u32 %r48,%r133,%r133; $L17: .loc 1 126 8 mov.f32 %r53,0f00000000; .loc 1 126 44 mov.f32 %r137,0f3f800000; $L18: .loc 1 126 52 cvt.rn.f32.s32 %r135,%r48; div.rn.f32 %r136,%r135,%r99; .loc 1 126 54 sub.f32 %r39,%r136,%r53; .loc 1 126 44 div.rn.f32 %r53,%r137,%r39; .loc 1 126 36 add.u32 %r48,%r48,-2; .loc 1 126 29 setp.le.s32 %r138,%r33,%r48; @ %r138 bra $L18; .loc 1 139 13 mul.f32 %r140,%r27,%r62; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r140; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r141,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r141; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r143,[%value_in]; } .loc 1 141 16 add.u32 %r73,%r86,-1; .loc 1 141 33 add.u32 %r80,%r33,-2; .loc 1 139 7 mul.f32 %r144,%r27,%r143; .loc 1 140 5 setp.lt.f32 %r145,%r144,0f42b17180; @ ! %r145 bra $L45; .loc 1 141 23 cvt.rn.f32.s32 %r72,%r80; .loc 1 126 44 mov.f32 %r82,%r53; .loc 1 128 5 mov.f32 %r84,0f3f800000; .loc 1 146 7 mov.f32 %r147,0f40000000; bra $L21; $L29: .loc 1 144 7 mov.f32 %r84,%r49; $L21: .loc 1 143 6 mul.f32 %r146,%r84,%r72; .loc 1 144 10 div.rn.f32 %r43,%r146,%r99; .loc 1 144 7 sub.f32 %r49,%r43,%r82; .loc 1 146 7 sub.f32 %r72,%r72,%r147; .loc 1 141 42 add.u32 %r73,%r73,-1; mov.f32 %r82,%r84; .loc 1 141 38 setp.ne.u32 %r148,%r73,0; @ %r148 bra $L29; bra $L22; $L45: .loc 1 149 23 cvt.rn.f32.s32 %r70,%r80; .loc 1 126 44 mov.f32 %r47,%r53; .loc 1 128 5 mov.f32 %r49,0f3f800000; .loc 1 154 7 mov.f32 %r150,0f40000000; .loc 1 159 11 mov.f32 %r158,%r49; $L25: .loc 1 151 6 mul.f32 %r149,%r49,%r70; .loc 1 152 10 div.rn.f32 %r44,%r149,%r99; .loc 1 152 7 sub.f32 %r69,%r44,%r47; .loc 1 154 7 sub.f32 %r70,%r70,%r150; .loc 1 156 6 setp.gt.f32 %r151,%r69,0f501502f9; @ ! %r151 bra $L46; .loc 1 157 10 div.rn.f32 %r47,%r49,%r69; .loc 1 158 10 div.rn.f32 %r53,%r53,%r69; .loc 1 159 11 mov.f32 %r49,%r158; bra $L23; $L46: mov.f32 %r47,%r49; .loc 1 152 7 mov.f32 %r49,%r69; $L23: .loc 1 149 42 add.u32 %r73,%r73,-1; .loc 1 149 38 setp.ne.u32 %r152,%r73,0; @ %r152 bra $L25; $L22: .loc 1 163 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r154,[%value_in]; } .loc 1 163 13 mul.f32 %r155,%r154,%r53; .loc 1 163 9 div.rn.f32 %r85,%r155,%r49; bra $L7; $L26: .loc 1 60 8 mov.f32 %r85,0f00000000; bra $L7; $L27: mov.f32 %r85,0f00000000; $L7: .loc 1 166 4 setp.eq.u32 %r156,%r60,0; @ %r156 bra $L1; .loc 1 166 20 neg.f32 %r85,%r85; $L1: .loc 1 167 1 mov.f32 %value,%r85; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_ynf .visible .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r29; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r36; .reg .u32 %r41; .reg .f32 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .f32 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .f32 %r58; .reg .pred %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; .reg .f32 %r65; .reg .f32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u16 %r85; .reg .pred %r86; .reg .pred %r87; .reg .u16 %r89; mov.u32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 180 2 mov.b32 %r33,%r46; .loc 1 181 5 and.b32 %r34,%r33,2147483647; .loc 1 183 4 setp.le.s32 %r47,%r34,2139095040; @ %r47 bra $L48; .loc 1 183 35 add.f32 %r44,%r46,%r46; bra $L47; $L48: .loc 1 184 4 setp.ne.u32 %r48,%r34,0; @ %r48 bra $L50; .loc 1 184 39 mov.f32 %r49,0fbf800000; div.rn.f32 %r44,%r49,0f00000000; bra $L47; $L50: .loc 1 185 4 setp.ge.s32 %r50,%r33,0; @ %r50 bra $L51; .loc 1 185 22 mov.f32 %r51,0f00000000; div.rn.f32 %r44,%r51,%r51; bra $L47; $L51: .loc 1 187 4 setp.ge.s32 %r52,%r45,0; @ %r52 bra $L52; .loc 1 188 5 neg.s32 %r45,%r45; .loc 1 189 20 add.u32 %r53,%r45,%r45; and.b32 %r54,%r53,2; .loc 1 189 8 mov.u32 %r55,1; sub.u32 %r35,%r55,%r54; bra $L53; $L52: .loc 1 191 4 setp.ne.u32 %r56,%r45,0; @ %r56 bra $L57; .loc 1 191 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r58,[%value_in]; } mov.f32 %r44,%r58; bra $L47; $L57: .loc 1 186 7 mov.u32 %r35,1; $L53: .loc 1 192 4 setp.ne.u32 %r59,%r45,1; @ %r59 bra $L54; .loc 1 192 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r61,[%value_in]; } .loc 1 192 22 cvt.rn.f32.s32 %r62,%r35; mul.f32 %r44,%r62,%r61; bra $L47; $L54: .loc 1 193 4 setp.eq.u32 %r63,%r34,2139095040; @ %r63 bra $L58; .loc 1 195 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r65,[%value_in]; } mov.f32 %r29,%r65; .loc 1 196 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r67,[%value_in]; } mov.f32 %r36,%r67; .loc 1 199 13 mov.b32 %r68,%r36; setp.eq.u32 %r69,%r68,-8388608; @ %r69 bra $L59; .loc 1 199 7 mov.u32 %r41,1; bra $L56; $L60: .loc 1 201 8 mov.f32 %r36,%r44; $L56: .loc 1 201 20 add.u32 %r70,%r41,%r41; .loc 1 201 11 cvt.rn.f32.s32 %r71,%r70; .loc 1 201 23 div.rn.f32 %r72,%r71,%r46; .loc 1 201 8 neg.f32 %r73,%r29; fma.rn.f32 %r44,%r72,%r36,%r73; .loc 1 199 31 add.u32 %r41,%r41,1; mov.f32 %r29,%r36; .loc 1 199 11 set.u32.lt.s32 %r75,%r41,%r45; neg.s32 %r76,%r75; mov.u32 %r74,%r76; .loc 1 199 17 mov.b32 %r78,%r44; set.u32.ne.u32 %r79,%r78,-8388608; neg.s32 %r80,%r79; mov.u32 %r77,%r80; .loc 1 199 13 cvt.u16.u8 %r89,%r74; mov.u16 %r82,%r89; cvt.u16.u8 %r89,%r77; mov.u16 %r83,%r89; and.b16 %r81,%r82,%r83; cvt.u32.u16 %r84,%r81; cvt.u16.u8 %r85,%r84; setp.ne.u16 %r86,%r85,0; @ %r86 bra $L60; bra $L55; $L59: .loc 1 196 6 mov.f32 %r44,%r67; $L55: .loc 1 205 4 setp.eq.u32 %r87,%r35,1; @ %r87 bra $L47; .loc 1 205 35 neg.f32 %r44,%r44; bra $L47; $L58: .loc 1 193 39 mov.f32 %r44,0f00000000; $L47: .loc 1 206 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_log.o/ 0 0 0 644 5354 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .visible .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_log.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_logf .visible .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r45; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .f32 %r65; .reg .u32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .pred %r91; .reg .pred %r92; .reg .f32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .f32 %r107; .reg .pred %r109; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .f32 %r116; .reg .pred %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .pred %r126; .reg .f32 %r128; .reg .f32 %r129; mov.f32 %r85,%ar0; .loc 1 51 2 mov.b32 %r51,%r85; .loc 1 54 6 and.b32 %r86,%r51,2147483647; .loc 1 54 5 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L2; .loc 1 55 19 mov.f32 %r88,0fcc000000; div.rn.f32 %r84,%r88,0f00000000; bra $L1; $L2: .loc 1 56 12 setp.ge.s32 %r89,%r51,0; @ %r89 bra $L4; .loc 1 56 28 sub.f32 %r90,%r85,%r85; .loc 1 56 31 div.rn.f32 %r84,%r90,0f00000000; bra $L1; $L4: .loc 1 57 5 setp.le.s32 %r91,%r51,2139095039; @ %r91 bra $L5; .loc 1 57 40 add.f32 %r84,%r85,%r85; bra $L1; $L5: .loc 1 58 5 setp.gt.s32 %r92,%r51,8388607; @ %r92 bra $L13; .loc 1 59 17 mul.f32 %r93,%r85,0f4c000000; .loc 1 60 6 mov.b32 %r51,%r93; .loc 1 59 8 mov.u32 %r50,-25; bra $L6; $L13: .loc 1 53 3 mov.u32 %r50,0; $L6: .loc 1 62 10 shr.s32 %r94,%r51,23; .loc 1 62 15 add.u32 %r95,%r94,-127; .loc 1 63 5 and.b32 %r56,%r51,8388607; .loc 1 64 9 add.u32 %r96,%r56,4913952; .loc 1 64 4 and.b32 %r57,%r96,8388608; .loc 1 66 9 shr.u32 %r97,%r96,23; .loc 1 66 4 vadd.u32.u32.u32.add %r59,%r50,%r95,%r97; .loc 1 65 2 xor.b32 %r98,%r57,1065353216; or.b32 %r99,%r98,%r56; .loc 1 67 4 mov.b32 %r100,%r99; mov.f32 %r101,0f3f800000; sub.f32 %r60,%r100,%r101; .loc 1 68 20 add.u32 %r102,%r56,15; .loc 1 68 25 and.b32 %r103,%r102,8388592; .loc 1 68 4 setp.ne.u32 %r104,%r103,0; @ %r104 bra $L7; .loc 1 69 14 setp.neu.f32 %r105,%r60,0f00000000; @ %r105 bra $L8; .loc 1 69 28 setp.eq.u32 %r106,%r59,0; @ %r106 bra $L14; .loc 1 69 57 cvt.rn.f32.s32 %r73,%r59; .loc 1 70 52 mul.f32 %r107,%r73,0f3717f7d1; .loc 1 70 49 fma.rn.f32 %r84,%r73,0f3f317180,%r107; bra $L1; $L8: .loc 1 71 11 mul.f32 %r33,%r60,%r60; .loc 1 71 25 fma.rn.f32 %r34,%r60,0fbeaaaaab,0f3f000000; .loc 1 71 8 mul.f32 %r71,%r33,%r34; .loc 1 72 8 setp.ne.u32 %r109,%r59,0; @ %r109 bra $L9; .loc 1 72 23 sub.f32 %r84,%r60,%r71; bra $L1; $L9: .loc 1 72 35 cvt.rn.f32.s32 %r72,%r59; .loc 1 73 32 fma.rn.f32 %r35,%r72,0fb717f7d1,%r71; .loc 1 73 43 sub.f32 %r111,%r35,%r60; .loc 1 73 28 neg.f32 %r112,%r111; fma.rn.f32 %r84,%r72,0f3f317180,%r112; bra $L1; $L7: .loc 1 75 20 add.f32 %r113,%r60,0f40000000; .loc 1 75 5 div.rn.f32 %r61,%r60,%r113; .loc 1 76 5 cvt.rn.f32.s32 %r62,%r59; .loc 1 77 4 mul.f32 %r63,%r61,%r61; .loc 1 78 4 add.u32 %r64,%r56,-3187664; .loc 1 79 4 mul.f32 %r65,%r63,%r63; .loc 1 81 19 fma.rn.f32 %r38,%r65,0f3e1cd04f,0f3e638e29; .loc 1 81 12 fma.rn.f32 %r39,%r38,%r65,0f3ecccccd; .loc 1 82 26 fma.rn.f32 %r40,%r65,0f3e178897,0f3e3a3325; .loc 1 82 19 fma.rn.f32 %r41,%r40,%r65,0f3e924925; .loc 1 82 12 fma.rn.f32 %r42,%r41,%r65,0f3f2aaaab; .loc 1 80 4 mov.u32 %r115,3523208; sub.u32 %r114,%r115,%r56; .loc 1 83 4 or.b32 %r68,%r114,%r64; .loc 1 82 4 mul.f32 %r116,%r42,%r63; .loc 1 84 4 fma.rn.f32 %r69,%r39,%r65,%r116; .loc 1 85 4 setp.le.s32 %r117,%r68,0; @ %r117 bra $L10; .loc 1 86 21 mul.f32 %r118,%r60,0f3f000000; .loc 1 86 10 mul.f32 %r70,%r118,%r60; .loc 1 87 37 add.f32 %r119,%r69,%r70; .loc 1 87 31 mul.f32 %r81,%r119,%r61; .loc 1 87 8 setp.ne.u32 %r120,%r59,0; @ %r120 bra $L11; .loc 1 87 29 sub.f32 %r121,%r70,%r81; .loc 1 87 23 sub.f32 %r84,%r60,%r121; bra $L1; $L11: .loc 1 88 43 fma.rn.f32 %r45,%r62,0f3717f7d1,%r81; .loc 1 88 31 sub.f32 %r122,%r70,%r45; .loc 1 88 55 sub.f32 %r123,%r122,%r60; .loc 1 88 24 neg.f32 %r124,%r123; fma.rn.f32 %r84,%r62,0f3f317180,%r124; bra $L1; $L10: .loc 1 90 28 sub.f32 %r125,%r60,%r69; .loc 1 90 25 mul.f32 %r83,%r125,%r61; .loc 1 90 8 setp.ne.u32 %r126,%r59,0; @ %r126 bra $L12; .loc 1 90 23 sub.f32 %r84,%r60,%r83; bra $L1; $L12: .loc 1 91 34 fma.rn.f32 %r48,%r62,0fb717f7d1,%r83; .loc 1 91 45 sub.f32 %r128,%r48,%r60; .loc 1 91 24 neg.f32 %r129,%r128; fma.rn.f32 %r84,%r62,0f3f317180,%r129; bra $L1; $L14: .loc 1 69 42 mov.f32 %r84,0f00000000; $L1: .loc 1 93 1 mov.f32 %value,%r84; st.param.f32 [%value_out],%value; ret; } /215 0 0 0 644 2515 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10f .visible .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_log10f .visible .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r39; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .f32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .f32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .f32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .f32 %r63; .reg .f32 %r64; mov.f32 %r46,%ar0; .loc 1 44 2 mov.b32 %r35,%r46; .loc 1 47 13 and.b32 %r47,%r35,2147483647; .loc 1 47 12 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L2; .loc 1 48 26 mov.f32 %r49,0fcc000000; div.rn.f32 %r45,%r49,0f00000000; bra $L1; $L2: .loc 1 49 12 setp.ge.s32 %r50,%r35,0; @ %r50 bra $L4; .loc 1 49 28 sub.f32 %r51,%r46,%r46; .loc 1 49 31 div.rn.f32 %r45,%r51,0f00000000; bra $L1; $L4: .loc 1 50 5 setp.le.s32 %r52,%r35,2139095039; @ %r52 bra $L5; .loc 1 50 40 add.f32 %r45,%r46,%r46; bra $L1; $L5: .loc 1 51 12 setp.gt.s32 %r53,%r35,8388607; @ %r53 bra $L7; .loc 1 52 24 mul.f32 %r54,%r46,0f4c000000; .loc 1 53 6 mov.b32 %r35,%r54; .loc 1 52 15 mov.u32 %r34,-25; bra $L6; $L7: .loc 1 46 10 mov.u32 %r34,0; $L6: .loc 1 55 10 shr.s32 %r55,%r35,23; .loc 1 55 15 add.u32 %r56,%r55,-127; .loc 1 55 4 add.u32 %r39,%r56,%r34; .loc 1 56 33 shr.u32 %r40,%r39,31; .loc 1 57 17 and.b32 %r28,%r35,8388607; .loc 1 58 23 add.u32 %r57,%r39,%r40; .loc 1 58 12 cvt.rn.f32.s32 %r42,%r57; .loc 1 57 36 mov.u32 %r60,127; sub.u32 %r59,%r60,%r40; .loc 1 57 39 shl.b32 %r61,%r59,23; .loc 1 57 12 or.b32 %r62,%r61,%r28; .loc 1 60 28 mov.b32 %r58,%r62; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r63,[%value_in]; } .loc 1 60 27 mul.f32 %r64,%r63,0f3ede5bd9; .loc 1 60 5 fma.rn.f32 %r44,%r42,0f355427db,%r64; .loc 1 61 11 fma.rn.f32 %r45,%r42,0f3e9a2080,%r44; $L1: .loc 1 62 1 mov.f32 %value,%r45; st.param.f32 [%value_out],%value; ret; } lib_a-ef_pow.o/ 0 0 0 644 22210 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_powf .visible .func (.param .f32 %value_out) __ieee754_powf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_pow.c" .file 2 "../../../../../newlib/libm/math/../common/math_config.h" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflowf .extern .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_powf .visible .func (.param .f32 %value_out) __ieee754_powf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .u32 %r28; .reg .f32 %r34; .reg .u32 %r37; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .u32 %r45; .reg .f32 %r46; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r68; .reg .u32 %r69; .reg .f32 %r71; .reg .u32 %r73; .reg .f32 %r74; .reg .f32 %r76; .reg .f32 %r77; .reg .u32 %r79; .reg .f32 %r82; .reg .u32 %r109; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r139; .reg .u32 %r142; .reg .u32 %r147; .reg .u32 %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r154; .reg .f32 %r155; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r161; .reg .f32 %r163; .reg .f32 %r164; .reg .f32 %r165; .reg .f32 %r167; .reg .f32 %r168; .reg .f32 %r170; .reg .f32 %r172; .reg .f32 %r173; .reg .f32 %r174; .reg .f32 %r175; .reg .f32 %r176; .reg .u32 %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r183; .reg .f32 %r184; .reg .f32 %r185; .reg .f32 %r186; .reg .f32 %r187; .reg .f32 %r189; .reg .u32 %r190; .reg .u32 %r191; .reg .u32 %r196; .reg .u32 %r202; .reg .u32 %r204; .reg .u32 %r205; .reg .u32 %r215; .reg .u32 %r219; .reg .u32 %r222; .reg .u32 %r237; .reg .u32 %r241; .reg .u32 %r244; .reg .f32 %r247; .reg .u32 %r248; .reg .f32 %r249; .reg .f32 %r250; .reg .u32 %r252; .reg .f32 %r253; .reg .f32 %r254; .reg .f32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .pred %r259; .reg .u32 %r260; .reg .u32 %r261; .reg .u32 %r262; .reg .u32 %r263; .reg .u32 %r264; .reg .u32 %r265; .reg .u16 %r266; .reg .u16 %r267; .reg .u16 %r268; .reg .u32 %r269; .reg .u16 %r270; .reg .pred %r271; .reg .pred %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .pred %r275; .reg .pred %r277; .reg .pred %r278; .reg .u32 %r279; .reg .u32 %r281; .reg .u32 %r282; .reg .pred %r283; .reg .u32 %r284; .reg .u32 %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .pred %r289; .reg .pred %r290; .reg .pred %r291; .reg .pred %r292; .reg .pred %r294; .reg .u32 %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .u16 %r302; .reg .u16 %r303; .reg .u16 %r304; .reg .u32 %r305; .reg .u16 %r306; .reg .pred %r307; .reg .f32 %r309; .reg .f32 %r311; .reg .u32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r317; .reg .u32 %r318; .reg .u16 %r319; .reg .u16 %r320; .reg .u16 %r321; .reg .u32 %r322; .reg .u16 %r323; .reg .pred %r324; .reg .pred %r325; .reg .u32 %r328; .reg .u32 %r329; .reg .pred %r330; .reg .pred %r331; .reg .u32 %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .u32 %r338; .reg .f32 %r339; .reg .u32 %r340; .reg .f32 %r341; .reg .pred %r342; .reg .pred %r343; .reg .f32 %r344; .reg .f32 %r346; .reg .f32 %r347; .reg .f32 %r349; .reg .u32 %r350; .reg .u32 %r352; .reg .pred %r353; .reg .f32 %r354; .reg .u32 %r355; .reg .u32 %r356; .reg .pred %r357; .reg .pred %r358; .reg .f32 %r359; .reg .u32 %r361; .reg .u32 %r362; .reg .u32 %r363; .reg .u32 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .f32 %r367; .reg .f32 %r368; .reg .f32 %r370; .reg .f32 %r371; .reg .f32 %r372; .reg .u32 %r373; .reg .f32 %r375; .reg .f32 %r376; .reg .f32 %r377; .reg .f32 %r378; .reg .u32 %r379; .reg .f32 %r381; .reg .f32 %r382; .reg .f32 %r383; .reg .f32 %r384; .reg .u32 %r385; .reg .f32 %r387; .reg .f32 %r388; .reg .u32 %r389; .reg .u32 %r390; .reg .pred %r391; .reg .u32 %r392; .reg .f32 %r393; .reg .f32 %r394; .reg .pred %r395; .reg .pred %r396; .reg .u32 %r399; .reg .u32 %r400; .reg .f32 %r401; .reg .pred %r402; .reg .f32 %r403; .reg .f32 %r404; .reg .pred %r405; .reg .u32 %r408; .reg .u32 %r409; .reg .f32 %r410; .reg .pred %r411; .reg .u32 %r414; .reg .u32 %r415; .reg .f32 %r416; .reg .pred %r417; .reg .f32 %r418; .reg .pred %r419; .reg .u32 %r422; .reg .u32 %r423; .reg .f32 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .u32 %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u32 %r430; .reg .u32 %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .u32 %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .u32 %r437; .reg .f32 %r438; .reg .u32 %r439; .reg .f32 %r440; .reg .f32 %r441; .reg .f32 %r442; .reg .f32 %r444; .reg .f32 %r445; .reg .f32 %r446; .reg .f32 %r447; .reg .f32 %r448; .reg .f32 %r449; .reg .pred %r451; .reg .f32 %r454; .reg .u32 %r460; .reg .u32 %r461; .reg .u32 %r462; .reg .u32 %r463; .reg .u32 %r464; .reg .u32 %r465; .reg .u32 %r466; .reg .u32 %r467; .reg .pred %r468; .reg .u32 %r469; .reg .u32 %r470; .reg .u32 %r471; .reg .u32 %r472; .reg .u32 %r473; .reg .u32 %r474; .reg .u32 %r475; .reg .u32 %r476; .reg .u32 %r477; .reg .u32 %r478; .reg .u32 %r479; .reg .pred %r480; .reg .u32 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u32 %r492; .reg .pred %r493; .reg .u16 %r494; mov.f32 %r254,%ar0; mov.f32 %r255,%ar1; .loc 1 71 2 mov.b32 %r196,%r254; .loc 1 72 2 mov.b32 %r26,%r255; .loc 1 73 26 and.b32 %r139,%r26,2147483647; .loc 1 76 4 setp.ne.u32 %r256,%r139,0; @ %r256 bra $L2; .loc 2 175 18 xor.b32 %r257,%r196,4194304; .loc 2 175 12 add.u32 %r258,%r257,%r257; .loc 1 77 9 setp.le.u32 %r259,%r258,-8388608; @ %r259 bra $L42; $L5: .loc 1 77 43 add.f32 %r253,%r254,%r255; bra $L1; $L2: .loc 1 73 5 and.b32 %r135,%r196,2147483647; .loc 1 82 5 set.u32.gt.s32 %r261,%r135,2139095040; neg.s32 %r262,%r261; mov.u32 %r260,%r262; .loc 1 83 5 set.u32.gt.s32 %r264,%r139,2139095040; neg.s32 %r265,%r264; mov.u32 %r263,%r265; .loc 1 82 26 cvt.u16.u8 %r494,%r260; mov.u16 %r267,%r494; cvt.u16.u8 %r494,%r263; mov.u16 %r268,%r494; or.b16 %r266,%r267,%r268; cvt.u32.u16 %r269,%r266; .loc 1 82 4 cvt.u16.u8 %r270,%r269; setp.eq.u16 %r271,%r270,0; @ %r271 bra $L4; .loc 1 84 8 setp.ne.u32 %r272,%r196,1065353216; @ %r272 bra $L5; .loc 2 175 18 xor.b32 %r273,%r26,4194304; .loc 2 175 12 add.u32 %r274,%r273,%r273; .loc 1 84 24 setp.le.u32 %r275,%r274,-8388608; @ %r275 bra $L43; bra $L5; $L4: .loc 1 94 4 setp.ge.s32 %r493,%r196,0; @ %r493 bra $L44; .loc 1 95 8 setp.gt.s32 %r277,%r139,1266679807; @ %r277 bra $L45; .loc 1 96 13 setp.le.s32 %r278,%r139,1065353215; @ %r278 bra $L46; .loc 1 97 10 shr.s32 %r279,%r139,23; .loc 1 98 14 mov.u32 %r281,150; sub.u32 %r28,%r281,%r279; .loc 1 98 5 shr.s32 %r142,%r139,%r28; .loc 1 99 8 shl.b32 %r282,%r142,%r28; .loc 1 99 5 setp.ne.u32 %r283,%r282,%r139; @ %r283 bra $L47; .loc 1 99 36 and.b32 %r284,%r142,1; .loc 1 99 30 mov.u32 %r285,2; sub.u32 %r131,%r285,%r284; bra $L8; $L44: .loc 1 93 10 mov.u32 %r131,0; bra $L6; $L45: .loc 1 95 32 mov.u32 %r131,2; $L6: .loc 1 104 5 setp.ne.u32 %r286,%r139,2139095040; @ %r286 bra $L8; .loc 1 105 9 setp.eq.u32 %r287,%r135,1065353216; @ %r287 bra $L48; .loc 1 107 14 setp.le.s32 %r288,%r135,1065353216; @ %r288 bra $L9; .loc 1 108 27 setp.lt.s32 %r289,%r26,0; selp.f32 %r253,0f00000000,%r255,%r289; bra $L1; $L9: .loc 1 110 26 setp.ge.s32 %r290,%r26,0; @ %r290 bra $L50; neg.f32 %r253,%r255; bra $L1; $L8: .loc 1 112 4 setp.ne.u32 %r291,%r139,1065353216; @ %r291 bra $L10; .loc 1 113 8 setp.ge.s32 %r292,%r26,0; @ %r292 bra $L51; .loc 1 113 25 rcp.rn.f32 %r253,%r254; bra $L1; $L10: .loc 1 115 4 setp.ne.u32 %r294,%r26,1073741824; @ %r294 bra $L11; .loc 1 115 29 mul.f32 %r253,%r254,%r254; bra $L1; $L11: .loc 1 117 8 not.b32 %r296,%r196; shr.u32 %r297,%r296,31; mov.u32 %r298,%r297; .loc 1 116 4 set.u32.eq.u32 %r300,%r26,1056964608; neg.s32 %r301,%r300; mov.u32 %r299,%r301; .loc 1 117 8 cvt.u16.u8 %r494,%r298; mov.u16 %r303,%r494; cvt.u16.u8 %r494,%r299; mov.u16 %r304,%r494; and.b16 %r302,%r303,%r304; cvt.u32.u16 %r305,%r302; cvt.u16.u8 %r306,%r305; setp.eq.u16 %r307,%r306,0; @ %r307 bra $L12; .loc 1 118 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r254; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r309,[%value_in]; } mov.f32 %r253,%r309; bra $L1; $L12: .loc 1 121 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r254; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r311,[%value_in]; } mov.f32 %r253,%r311; .loc 1 123 53 and.b32 %r312,%r196,1073741823; set.u32.eq.u32 %r314,%r312,1065353216; neg.s32 %r315,%r314; mov.u32 %r313,%r315; .loc 1 123 32 set.u32.eq.u32 %r317,%r135,0; neg.s32 %r318,%r317; mov.u32 %r316,%r318; .loc 1 123 53 cvt.u16.u8 %r494,%r313; mov.u16 %r320,%r494; cvt.u16.u8 %r494,%r316; mov.u16 %r321,%r494; or.b16 %r319,%r320,%r321; cvt.u32.u16 %r322,%r319; cvt.u16.u8 %r323,%r322; setp.eq.u16 %r324,%r323,0; @ %r324 bra $L13; .loc 1 125 8 setp.ge.s32 %r325,%r26,0; @ %r325 bra $L14; .loc 1 125 17 rcp.rn.f32 %r253,%r253; $L14: .loc 1 126 8 @ %r493 bra $L1; .loc 1 127 10 add.u32 %r328,%r135,-1065353216; .loc 1 127 22 or.b32 %r329,%r328,%r131; .loc 1 127 5 setp.ne.u32 %r330,%r329,0; @ %r330 bra $L15; .loc 1 128 13 sub.f32 %r34,%r253,%r253; .loc 1 128 9 div.rn.f32 %r253,%r34,%r34; bra $L1; $L15: .loc 1 129 12 setp.ne.u32 %r331,%r131,1; @ %r331 bra $L1; .loc 1 130 9 neg.f32 %r253,%r253; bra $L1; $L13: .loc 1 136 27 set.u32.ge.s32 %r37,%r196,0; .loc 1 136 30 or.b32 %r333,%r131,%r37; .loc 1 136 4 setp.ne.u32 %r334,%r333,0; @ %r334 bra $L16; .loc 1 136 52 sub.f32 %r40,%r254,%r254; .loc 1 136 55 div.rn.f32 %r253,%r40,%r40; bra $L1; $L16: .loc 1 139 4 setp.le.s32 %r335,%r139,1291845632; @ %r335 bra $L17; .loc 1 141 8 setp.gt.s32 %r336,%r135,1065353203; @ %r336 bra $L18; .loc 1 141 55 setp.ge.s32 %r337,%r26,0; @ %r337 bra $L19; $L21: .loc 1 141 39 mov.u32 %r338,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r338; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r339,[%value_in]; } mov.f32 %r253,%r339; bra $L1; $L19: .loc 1 141 56 mov.u32 %r340,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r340; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r341,[%value_in]; } mov.f32 %r253,%r341; bra $L1; $L18: .loc 1 142 8 setp.le.s32 %r342,%r135,1065353223; @ %r342 bra $L20; .loc 1 142 55 setp.gt.s32 %r343,%r26,0; @ %r343 bra $L21; bra $L19; $L20: .loc 1 145 8 mov.f32 %r344,0f3f800000; sub.f32 %r170,%r311,%r344; .loc 1 146 12 mul.f32 %r41,%r170,%r170; .loc 1 146 52 fma.rn.f32 %r42,%r170,0fbe800000,0f3eaaaaab; .loc 1 146 27 neg.f32 %r346,%r42; fma.rn.f32 %r43,%r346,%r170,0f3f000000; .loc 1 146 8 mul.f32 %r347,%r41,%r43; .loc 1 148 8 mul.f32 %r349,%r347,0fbfb8aa3b; fma.rn.f32 %r172,%r170,0f36eca570,%r349; .loc 1 149 9 fma.rn.f32 %r173,%r170,0f3fb8aa00,%r172; .loc 1 151 6 mov.b32 %r350,%r173; and.b32 %r45,%r350,-4096; mov.b32 %r128,%r45; .loc 1 152 16 fma.rn.f32 %r46,%r170,0fbfb8aa00,%r128; .loc 1 152 9 sub.f32 %r129,%r172,%r46; bra $L22; $L17: .loc 1 157 8 and.b32 %r352,%r196,2139095040; setp.ne.u32 %r353,%r352,0; @ %r353 bra $L52; .loc 1 158 7 mul.f32 %r354,%r311,0f4b800000; .loc 1 158 26 mov.b32 %r135,%r354; .loc 1 158 19 mov.u32 %r132,-24; bra $L23; $L52: .loc 1 155 8 mov.u32 %r132,0; $L23: .loc 1 159 17 shr.s32 %r355,%r135,23; .loc 1 159 22 add.u32 %r356,%r355,-127; .loc 1 159 9 add.u32 %r133,%r356,%r132; .loc 1 160 9 and.b32 %r147,%r135,8388607; .loc 1 162 9 or.b32 %r136,%r147,1065353216; .loc 1 163 8 setp.le.s32 %r357,%r147,1885297; @ %r357 bra $L53; .loc 1 164 13 setp.le.s32 %r358,%r147,6140886; @ %r358 bra $L54; .loc 1 165 17 add.u32 %r133,%r133,1; .loc 1 165 24 add.u32 %r136,%r136,-8388608; mov.f32 %r250,0f00000000; mov.f32 %r249,%r250; mov.u32 %r248,0; mov.f32 %r247,0f3f800000; bra $L24; $L53: mov.f32 %r250,0f00000000; mov.f32 %r249,%r250; mov.u32 %r248,0; mov.f32 %r247,0f3f800000; bra $L24; $L54: mov.f32 %r250,0f3f15c000; mov.f32 %r249,0f35d1cfdc; mov.u32 %r248,2097152; mov.f32 %r247,0f3fc00000; $L24: .loc 1 166 6 mov.b32 %r149,%r136; .loc 1 169 8 sub.f32 %r150,%r149,%r247; .loc 1 170 17 add.f32 %r359,%r149,%r247; .loc 1 170 8 rcp.rn.f32 %r151,%r359; .loc 1 171 8 mul.f32 %r152,%r150,%r151; .loc 1 174 6 mov.b32 %r362,%r152; and.b32 %r361,%r362,-4096; mov.b32 %r154,%r361; .loc 1 176 6 shr.s32 %r363,%r136,1; or.b32 %r364,%r363,536870912; add.u32 %r365,%r364,262144; add.u32 %r366,%r365,%r248; mov.b32 %r155,%r366; .loc 1 177 21 sub.f32 %r367,%r155,%r247; .loc 1 177 10 sub.f32 %r156,%r149,%r367; .loc 1 178 17 neg.f32 %r368,%r154; fma.rn.f32 %r58,%r368,%r155,%r150; .loc 1 178 26 fma.rn.f32 %r59,%r368,%r156,%r58; .loc 1 178 10 mul.f32 %r157,%r59,%r151; .loc 1 180 9 mul.f32 %r158,%r152,%r152; .loc 1 181 12 mul.f32 %r60,%r158,%r158; .loc 1 181 47 fma.rn.f32 %r61,%r158,0f3e53f142,0f3e6c3255; .loc 1 181 40 fma.rn.f32 %r62,%r61,%r158,0f3e8ba305; .loc 1 181 33 fma.rn.f32 %r63,%r62,%r158,0f3eaaaaab; .loc 1 181 26 fma.rn.f32 %r64,%r63,%r158,0f3edb6db7; .loc 1 181 19 fma.rn.f32 %r65,%r64,%r158,0f3f19999a; .loc 1 182 19 add.f32 %r370,%r152,%r154; .loc 1 182 14 mul.f32 %r371,%r370,%r157; .loc 1 182 8 fma.rn.f32 %r159,%r60,%r65,%r371; .loc 1 184 22 fma.rn.f32 %r68,%r154,%r154,0f40400000; .loc 1 184 10 add.f32 %r372,%r68,%r159; .loc 1 186 6 mov.b32 %r373,%r372; and.b32 %r69,%r373,-4096; mov.b32 %r161,%r69; .loc 1 187 19 mov.f32 %r376,0f40400000; sub.f32 %r375,%r161,%r376; .loc 1 187 31 fma.rn.f32 %r71,%r368,%r154,%r375; .loc 1 187 10 sub.f32 %r377,%r159,%r71; .loc 1 190 21 mul.f32 %r378,%r377,%r152; .loc 1 190 8 fma.rn.f32 %r163,%r157,%r161,%r378; .loc 1 192 10 fma.rn.f32 %r164,%r154,%r161,%r163; .loc 1 194 6 mov.b32 %r379,%r164; and.b32 %r73,%r379,-4096; mov.b32 %r165,%r73; .loc 1 195 18 fma.rn.f32 %r74,%r368,%r161,%r165; .loc 1 195 10 sub.f32 %r381,%r163,%r74; .loc 1 197 24 mul.f32 %r382,%r381,0f3f76384f; .loc 1 197 20 fma.rn.f32 %r76,%r165,0f369dc3a0,%r382; .loc 1 197 10 add.f32 %r167,%r76,%r249; .loc 1 199 8 cvt.rn.f32.s32 %r168,%r133; .loc 1 200 17 fma.rn.f32 %r77,%r165,0f3f763800,%r167; .loc 1 200 22 add.f32 %r383,%r77,%r250; .loc 1 200 9 add.f32 %r384,%r383,%r168; .loc 1 202 6 mov.b32 %r385,%r384; and.b32 %r79,%r385,-4096; mov.b32 %r128,%r79; .loc 1 203 20 sub.f32 %r387,%r128,%r168; .loc 1 203 23 sub.f32 %r388,%r387,%r250; .loc 1 203 32 fma.rn.f32 %r82,%r165,0fbf763800,%r388; .loc 1 203 9 sub.f32 %r129,%r167,%r82; $L22: .loc 1 207 38 add.u32 %r389,%r131,-1; .loc 1 207 30 or.b32 %r390,%r389,%r37; .loc 1 207 4 setp.ne.u32 %r391,%r390,0; .loc 1 208 8 selp.f32 %r130,0f3f800000,0fbf800000,%r391; .loc 1 212 2 and.b32 %r392,%r26,-4096; mov.b32 %r174,%r392; .loc 1 213 10 sub.f32 %r393,%r255,%r174; .loc 1 213 19 mul.f32 %r394,%r129,%r255; .loc 1 213 6 fma.rn.f32 %r175,%r393,%r128,%r394; .loc 1 214 6 mul.f32 %r127,%r128,%r174; .loc 1 215 4 add.f32 %r176,%r175,%r127; .loc 1 216 2 mov.b32 %r148,%r176; .loc 1 217 4 and.b32 %r178,%r148,2147483647; .loc 1 218 5 setp.le.s32 %r395,%r148,0; @ %r395 bra $L26; .loc 1 219 9 setp.le.s32 %r396,%r178,1124073472; @ %r396 bra $L27; .loc 1 220 17 set.u32.lt.f32 %r399,%r130,0f00000000; neg.s32 %r400,%r399; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r400; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r401,[%value_in]; } mov.f32 %r253,%r401; bra $L1; $L27: .loc 1 221 14 setp.ne.u32 %r402,%r178,1124073472; @ %r402 bra $L28; .loc 1 222 16 add.f32 %r403,%r175,0f3338aa3c; .loc 1 222 22 sub.f32 %r404,%r176,%r127; .loc 1 222 12 setp.gt.f32 %r405,%r403,%r404; @ ! %r405 bra $L59; .loc 1 222 35 set.u32.lt.f32 %r408,%r130,0f00000000; neg.s32 %r409,%r408; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r409; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r410,[%value_in]; } mov.f32 %r253,%r410; bra $L1; $L26: .loc 1 224 9 setp.le.s32 %r411,%r178,1125515264; @ %r411 bra $L31; .loc 1 225 17 set.u32.lt.f32 %r414,%r130,0f00000000; neg.s32 %r415,%r414; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r415; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r416,[%value_in]; } mov.f32 %r253,%r416; bra $L1; $L31: .loc 1 226 14 setp.ne.u32 %r417,%r178,1125515264; @ %r417 bra $L32; .loc 1 227 12 sub.f32 %r418,%r176,%r127; .loc 1 227 5 setp.ge.f32 %r419,%r418,%r175; @ ! %r419 bra $L60; .loc 1 227 25 set.u32.lt.f32 %r422,%r130,0f00000000; neg.s32 %r423,%r422; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r423; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r424,[%value_in]; } mov.f32 %r253,%r424; bra $L1; $L32: .loc 1 234 4 setp.le.s32 %r425,%r178,1056964608; @ %r425 bra $L56; .loc 1 232 8 shr.s32 %r426,%r178,23; .loc 1 235 27 add.u32 %r427,%r426,-126; .loc 1 235 23 mov.u32 %r429,8388608; shr.s32 %r428,%r429,%r427; .loc 1 235 8 add.u32 %r244,%r428,%r148; .loc 1 236 25 shr.s32 %r430,%r244,23; and.b32 %r431,%r430,255; .loc 1 236 8 add.u32 %r241,%r431,-127; .loc 1 237 6 mov.u32 %r433,-8388608; shr.s32 %r432,%r433,%r241; and.b32 %r434,%r432,%r244; mov.b32 %r181,%r434; .loc 1 238 13 and.b32 %r435,%r244,8388607; .loc 1 238 25 or.b32 %r237,%r435,8388608; .loc 1 238 42 mov.u32 %r437,23; sub.u32 %r436,%r437,%r241; .loc 1 238 8 shr.s32 %r134,%r237,%r436; $L38: .loc 1 239 16 neg.s32 %r134,%r134; $L39: .loc 1 240 10 sub.f32 %r127,%r127,%r181; .loc 1 242 4 add.f32 %r438,%r175,%r127; .loc 1 243 2 mov.b32 %r148,%r438; .loc 1 254 9 shl.b32 %r252,%r134,23; bra $L35; $L56: mov.u32 %r252,0; .loc 1 233 4 mov.u32 %r134,%r252; $L35: .loc 1 244 2 and.b32 %r439,%r148,-4096; mov.b32 %r182,%r439; .loc 1 246 13 sub.f32 %r440,%r182,%r127; .loc 1 246 10 sub.f32 %r441,%r175,%r440; .loc 1 246 25 mul.f32 %r442,%r182,0f35bfbe8c; .loc 1 246 4 fma.rn.f32 %r183,%r441,0f3f317218,%r442; .loc 1 247 4 fma.rn.f32 %r184,%r182,0f3f317200,%r183; .loc 1 248 10 fma.rn.f32 %r115,%r182,0fbf317200,%r184; .loc 1 248 4 sub.f32 %r185,%r183,%r115; .loc 1 249 5 mul.f32 %r186,%r184,%r184; .loc 1 250 35 fma.rn.f32 %r116,%r186,0f3331bb4c,0fb5ddea0e; .loc 1 250 29 fma.rn.f32 %r117,%r116,%r186,0f388ab355; .loc 1 250 23 fma.rn.f32 %r118,%r117,%r186,0fbb360b61; .loc 1 250 17 fma.rn.f32 %r119,%r118,%r186,0f3e2aaaab; .loc 1 250 6 neg.f32 %r444,%r119; fma.rn.f32 %r187,%r444,%r186,%r184; .loc 1 251 9 mul.f32 %r445,%r184,%r187; .loc 1 251 17 mov.f32 %r447,0f40000000; sub.f32 %r446,%r187,%r447; .loc 1 251 13 div.rn.f32 %r122,%r445,%r446; .loc 1 251 25 fma.rn.f32 %r123,%r184,%r185,%r185; .loc 1 251 5 sub.f32 %r448,%r122,%r123; .loc 1 252 13 sub.f32 %r124,%r448,%r184; .loc 1 252 5 mov.f32 %r449,0f3f800000; sub.f32 %r189,%r449,%r124; .loc 1 253 2 mov.b32 %r190,%r189; .loc 1 254 4 add.u32 %r191,%r190,%r252; .loc 1 255 4 setp.gt.s32 %r451,%r191,8388607; @ %r451 bra $L36; .loc 1 255 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r189; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r454,[%value_in]; } mov.f32 %r126,%r454; bra $L37; $L36: .loc 1 256 7 mov.b32 %r126,%r191; $L37: .loc 1 257 10 mul.f32 %r253,%r126,%r130; bra $L1; $L42: .loc 1 78 13 mov.f32 %r253,0f3f800000; bra $L1; $L43: mov.f32 %r253,0f3f800000; bra $L1; $L48: mov.f32 %r253,0f3f800000; bra $L1; $L50: .loc 1 108 27 mov.f32 %r253,0f00000000; bra $L1; $L51: .loc 1 113 41 mov.f32 %r253,%r254; bra $L1; $L60: .loc 1 235 8 add.u32 %r179,%r148,32768; .loc 1 236 25 shr.s32 %r460,%r179,23; and.b32 %r461,%r460,255; .loc 1 236 8 add.u32 %r180,%r461,-127; .loc 1 237 6 mov.u32 %r463,-8388608; shr.s32 %r462,%r463,%r180; and.b32 %r464,%r462,%r179; mov.b32 %r181,%r464; .loc 1 238 13 and.b32 %r465,%r179,8388607; .loc 1 238 25 or.b32 %r109,%r465,8388608; .loc 1 238 42 mov.u32 %r467,23; sub.u32 %r466,%r467,%r180; .loc 1 238 8 shr.s32 %r134,%r109,%r466; .loc 1 239 8 setp.lt.s32 %r468,%r148,0; @ %r468 bra $L38; bra $L39; $L40: .loc 1 232 8 shr.s32 %r469,%r178,23; .loc 1 235 27 add.u32 %r470,%r469,-126; .loc 1 235 23 mov.u32 %r472,8388608; shr.s32 %r471,%r472,%r470; .loc 1 235 8 add.u32 %r205,%r471,%r148; .loc 1 236 25 shr.s32 %r473,%r205,23; .loc 1 236 8 add.u32 %r204,%r473,-127; .loc 1 237 6 mov.u32 %r475,-8388608; shr.s32 %r474,%r475,%r204; and.b32 %r476,%r474,%r205; mov.b32 %r181,%r476; .loc 1 238 13 and.b32 %r477,%r205,8388607; .loc 1 238 25 or.b32 %r202,%r477,8388608; .loc 1 238 42 mov.u32 %r479,23; sub.u32 %r478,%r479,%r204; .loc 1 238 8 shr.s32 %r134,%r202,%r478; bra $L39; $L28: .loc 1 234 4 setp.gt.s32 %r480,%r178,1056964608; @ %r480 bra $L40; mov.u32 %r252,0; .loc 1 233 4 mov.u32 %r134,%r252; bra $L35; $L46: .loc 1 93 10 mov.u32 %r131,0; bra $L8; $L47: mov.u32 %r131,0; bra $L8; $L59: .loc 1 235 8 add.u32 %r222,%r148,32768; .loc 1 236 25 shr.s32 %r485,%r222,23; and.b32 %r486,%r485,255; .loc 1 236 8 add.u32 %r219,%r486,-127; .loc 1 237 6 mov.u32 %r488,-8388608; shr.s32 %r487,%r488,%r219; and.b32 %r489,%r487,%r222; mov.b32 %r181,%r489; .loc 1 238 13 and.b32 %r490,%r222,8388607; .loc 1 238 25 or.b32 %r215,%r490,8388608; .loc 1 238 42 mov.u32 %r492,23; sub.u32 %r491,%r492,%r219; .loc 1 238 8 shr.s32 %r134,%r215,%r491; bra $L39; $L1: .loc 1 258 1 mov.f32 %value,%r253; st.param.f32 [%value_out],%value; ret; } /233 0 0 0 644 10074 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .visible .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2f .extern .func (.param .u32 %value_out) __kernel_rem_pio2f (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); // BEGIN VAR DEF: npio2_hw .const .align 4 .u32 npio2_hw[32] = {1070141184,1078529792,1083624192,1086918400,1090212608,1092012800,1093659904,1095307008,1096954112,1098601216,1099577856,1100401408,1101224960,1102048512,1102872064,1103695616,1104519168,1105342720,1106166272,1106989824,1107554816,1107966464,1108378368,1108790016,1109201920,1109613568,1110025472,1110437120,1110849024,1111260672,1111672576,1112084224 }; // BEGIN VAR DEF: two_over_pi .const .align 4 .u32 two_over_pi[198] = {162,249,131,110,78,68,21,41,252,39,87,209,245,52,221,192,219,98,149,153,60,67,144,65,254,81,99,171,222,187,197,97,183,36,110,58,66,77,210,224,6,73,46,234,9,209,146,28,254,29,235,28,177,41,167,62,232,130,53,245,46,187,68,132,233,156,112,38,180,95,126,65,57,145,214,57,131,83,57,244,156,132,95,139,189,249,40,59,31,248,151,255,222,5,152,15,239,47,17,139,90,10,109,31,109,54,126,207,39,203,9,183,79,70,63,102,158,95,234,45,117,39,186,199,235,229,241,123,61,7,57,247,138,82,146,234,107,251,95,177,31,141,93,8,86,3,48,70,252,123,107,171,240,207,188,32,154,244,54,29,169,227,145,97,94,230,27,8,101,153,133,95,20,160,104,64,141,255,216,128,77,115,39,49,6,6,21,86,202,115,168,201,96,226,123,192,140,107 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_rem_pio2f .visible .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .f32 %r24; .reg .f32 %r28; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r45; .reg .u32 %r46; .reg .f32 %r51; .reg .f32 %r56; .reg .f32 %r59; .reg .f32 %r62; .reg .f32 %r71; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .u32 %r101; .reg .f32 %r102; .reg .u64 %r103; .reg .pred %r104; .reg .f32 %r105; .reg .pred %r106; .reg .pred %r107; .reg .f32 %r108; .reg .pred %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r114; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .pred %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r126; .reg .pred %r128; .reg .u32 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .pred %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .pred %r141; .reg .f32 %r144; .reg .f32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r155; .reg .pred %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .pred %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u32 %r171; .reg .u64 %r172; .reg .u32 %r173; .reg .pred %r174; .reg .f32 %r175; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r180; mov.f32 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 110 2 mov.b32 %r76,%r102; .loc 1 111 5 and.b32 %r77,%r76,2147483647; .loc 1 112 4 setp.gt.s32 %r104,%r77,1061752792; @ %r104 bra $L2; .loc 1 113 12 st.f32 [%r103],%r102; .loc 1 113 22 mov.f32 %r105,0f00000000; st.f32 [%r103+4],%r105; .loc 1 113 34 mov.u32 %r101,0; bra $L1; $L2: .loc 1 114 4 setp.gt.s32 %r106,%r77,1075235811; @ %r106 bra $L4; .loc 1 117 9 and.b32 %r73,%r76,2147483632; .loc 1 115 8 setp.le.s32 %r107,%r76,0; @ %r107 bra $L5; .loc 1 116 5 mov.f32 %r108,0f3fc90f80; sub.f32 %r88,%r102,%r108; .loc 1 117 5 setp.eq.u32 %r109,%r73,1070141392; @ %r109 bra $L6; .loc 1 118 16 mov.f32 %r110,0f37354443; sub.f32 %r24,%r88,%r110; .loc 1 118 12 st.f32 [%r103],%r24; .loc 1 119 16 sub.f32 %r111,%r88,%r24; .loc 1 119 22 sub.f32 %r112,%r111,%r110; .loc 1 119 12 st.f32 [%r103+4],%r112; .loc 1 125 10 mov.u32 %r101,1; bra $L1; $L6: .loc 1 121 9 mov.f32 %r114,0f37354400; sub.f32 %r89,%r88,%r114; .loc 1 122 16 mov.f32 %r115,0f2e85a308; sub.f32 %r28,%r89,%r115; .loc 1 122 12 st.f32 [%r103],%r28; .loc 1 123 16 sub.f32 %r116,%r89,%r28; .loc 1 123 22 sub.f32 %r117,%r116,%r115; .loc 1 123 12 st.f32 [%r103+4],%r117; .loc 1 125 10 mov.u32 %r101,1; bra $L1; $L5: .loc 1 127 5 add.f32 %r86,%r102,0f3fc90f80; .loc 1 128 5 setp.eq.u32 %r119,%r73,1070141392; @ %r119 bra $L7; .loc 1 129 16 add.f32 %r33,%r86,0f37354443; .loc 1 129 12 st.f32 [%r103],%r33; .loc 1 130 16 sub.f32 %r120,%r86,%r33; .loc 1 130 22 add.f32 %r121,%r120,0f37354443; .loc 1 130 12 st.f32 [%r103+4],%r121; .loc 1 136 10 mov.u32 %r101,-1; bra $L1; $L7: .loc 1 132 9 add.f32 %r87,%r86,0f37354400; .loc 1 133 16 add.f32 %r36,%r87,0f2e85a308; .loc 1 133 12 st.f32 [%r103],%r36; .loc 1 134 16 sub.f32 %r122,%r87,%r36; .loc 1 134 22 add.f32 %r123,%r122,0f2e85a308; .loc 1 134 12 st.f32 [%r103+4],%r123; .loc 1 136 10 mov.u32 %r101,-1; bra $L1; $L4: .loc 1 139 4 setp.gt.s32 %r124,%r77,1128861568; @ %r124 bra $L8; .loc 1 140 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r102; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r126,[%value_in]; } .loc 1 141 33 fma.rn.f32 %r39,%r126,0f3f22f984,0f3f000000; .loc 1 141 9 cvt.rzi.s32.f32 %r101,%r39; .loc 1 142 9 cvt.rn.f32.s32 %r81,%r101; .loc 1 143 9 neg.f32 %r180,%r81; fma.rn.f32 %r72,%r81,0fbfc90f80,%r126; .loc 1 144 9 mul.f32 %r71,%r81,0f37354443; .loc 1 145 8 setp.gt.s32 %r128,%r101,31; @ %r128 bra $L9; .loc 1 145 18 and.b32 %r129,%r76,2147483392; .loc 1 145 40 cvta.const.u64 %r130,npio2_hw; .loc 1 145 42 add.u32 %r131,%r101,-1; .loc 1 145 40 cvt.s64.s32 %r132,%r131; shl.b64 %r133,%r132,2; add.u64 %r134,%r130,%r133; .loc 1 145 13 ld.u32 %r135,[%r134]; setp.eq.u32 %r136,%r129,%r135; @ %r136 bra $L9; .loc 1 146 11 sub.f32 %r45,%r72,%r71; .loc 1 146 8 st.f32 [%r103],%r45; bra $L10; $L9: .loc 1 150 18 sub.f32 %r45,%r72,%r71; .loc 1 149 13 shr.s32 %r46,%r77,23; .loc 1 152 22 mov.b32 %r138,%r45; shr.u32 %r137,%r138,23; .loc 1 152 27 and.b32 %r139,%r137,255; .loc 1 152 15 sub.u32 %r140,%r46,%r139; .loc 1 153 12 setp.gt.s32 %r141,%r140,8; @ %r141 bra $L11; .loc 1 150 15 st.f32 [%r103],%r45; bra $L10; $L11: .loc 1 156 10 fma.rn.f32 %r84,%r180,0f37354400,%r72; .loc 1 157 26 sub.f32 %r144,%r72,%r84; .loc 1 157 29 fma.rn.f32 %r51,%r180,0f37354400,%r144; .loc 1 157 10 neg.f32 %r145,%r51; fma.rn.f32 %r71,%r81,0f2e85a308,%r145; .loc 1 158 15 sub.f32 %r45,%r84,%r71; .loc 1 160 19 mov.b32 %r147,%r45; shr.u32 %r146,%r147,23; .loc 1 160 24 and.b32 %r148,%r146,255; .loc 1 160 12 sub.u32 %r149,%r46,%r148; .loc 1 161 9 setp.gt.s32 %r150,%r149,25; @ %r150 bra $L12; .loc 1 158 12 st.f32 [%r103],%r45; .loc 1 156 10 mov.f32 %r72,%r84; bra $L10; $L12: .loc 1 164 11 fma.rn.f32 %r72,%r180,0f2e85a300,%r84; .loc 1 165 27 sub.f32 %r153,%r84,%r72; .loc 1 165 30 fma.rn.f32 %r56,%r180,0f2e85a300,%r153; .loc 1 165 11 neg.f32 %r154,%r56; fma.rn.f32 %r71,%r81,0f248d3132,%r154; .loc 1 166 16 sub.f32 %r45,%r72,%r71; .loc 1 166 13 st.f32 [%r103],%r45; $L10: .loc 1 170 15 sub.f32 %r155,%r72,%r45; .loc 1 170 21 sub.f32 %r59,%r155,%r71; .loc 1 170 11 st.f32 [%r103+4],%r59; .loc 1 171 8 setp.ge.s32 %r156,%r76,0; @ %r156 bra $L1; .loc 1 171 24 neg.f32 %r157,%r45; .loc 1 171 22 st.f32 [%r103],%r157; .loc 1 171 38 neg.f32 %r158,%r59; .loc 1 171 36 st.f32 [%r103+4],%r158; .loc 1 171 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 177 4 setp.le.s32 %r159,%r77,2139095039; @ %r159 bra $L13; .loc 1 178 17 sub.f32 %r62,%r102,%r102; .loc 1 178 15 st.f32 [%r103+4],%r62; .loc 1 178 10 st.f32 [%r103],%r62; .loc 1 178 28 mov.u32 %r101,0; bra $L1; $L13: .loc 1 181 17 shr.s32 %r160,%r77,23; .loc 1 181 6 add.u32 %r78,%r160,-134; .loc 1 182 2 shl.b32 %r161,%r78,23; sub.u32 %r162,%r77,%r161; mov.b32 %r79,%r162; .loc 1 184 19 cvt.rzi.s32.f32 %r163,%r79; .loc 1 184 11 cvt.rn.f32.s32 %r93,%r163; .loc 1 184 9 st.f32 [%frame],%r93; .loc 1 185 13 sub.f32 %r94,%r79,%r93; .loc 1 185 9 mul.f32 %r95,%r94,0f43800000; .loc 1 184 19 cvt.rzi.s32.f32 %r164,%r95; .loc 1 184 11 cvt.rn.f32.s32 %r98,%r164; .loc 1 184 9 st.f32 [%frame+4],%r98; .loc 1 185 13 sub.f32 %r99,%r95,%r98; .loc 1 185 9 mul.f32 %r100,%r99,0f43800000; .loc 1 187 8 st.f32 [%frame+8],%r100; .loc 1 189 16 setp.neu.f32 %r165,%r100,0f00000000; @ %r165 bra $L15; setp.neu.f32 %r166,%r98,0f00000000; .loc 1 189 13 selp.u32 %r22,2,1,%r166; bra $L14; $L15: .loc 1 188 5 mov.u32 %r22,3; $L14: .loc 1 190 8 cvta.const.u64 %r172,two_over_pi; mov.u32 %r171,2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r78; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r22; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r171; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r172; call (%value_in),__kernel_rem_pio2f,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r173,[%value_in]; } mov.u32 %r101,%r173; .loc 1 191 4 setp.ge.s32 %r174,%r76,0; @ %r174 bra $L1; .loc 1 191 19 ld.f32 %r176,[%r103]; neg.f32 %r175,%r176; .loc 1 191 17 st.f32 [%r103],%r175; .loc 1 191 33 ld.f32 %r178,[%r103+4]; neg.f32 %r177,%r178; .loc 1 191 31 st.f32 [%r103+4],%r177; .loc 1 191 47 neg.s32 %r101,%r101; $L1: .loc 1 193 1 mov.u32 %value,%r101; st.param.u32 [%value_out],%value; ret; } /254 0 0 0 644 4017 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainderf .visible .func (.param .f32 %value_out) __ieee754_remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmodf .extern .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_remainderf .visible .func (.param .f32 %value_out) __ieee754_remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .u32 %r29; .reg .u32 %r30; .reg .f32 %r31; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r38; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u32 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .f32 %r69; .reg .f32 %r70; .reg .pred %r71; .reg .f32 %r73; .reg .f32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .f32 %r78; .reg .pred %r79; .reg .f32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u16 %r87; mov.f32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 36 2 mov.b32 %r29,%r45; .loc 1 37 2 mov.b32 %r33,%r46; .loc 1 39 5 and.b32 %r35,%r33,2147483647; .loc 1 40 5 and.b32 %r36,%r29,2147483647; .loc 1 43 5 set.u32.eq.u32 %r48,%r35,0; neg.s32 %r49,%r48; mov.u32 %r47,%r49; .loc 1 44 29 set.u32.gt.s32 %r51,%r35,2139095040; neg.s32 %r52,%r51; mov.u32 %r50,%r52; cvt.u16.u8 %r87,%r47; mov.u16 %r54,%r87; cvt.u16.u8 %r87,%r50; mov.u16 %r55,%r87; or.b16 %r53,%r54,%r55; cvt.u32.u16 %r56,%r53; .loc 1 44 5 set.u32.gt.s32 %r58,%r36,2139095039; neg.s32 %r59,%r58; mov.u32 %r57,%r59; .loc 1 44 29 cvt.u16.u8 %r87,%r56; mov.u16 %r61,%r87; cvt.u16.u8 %r87,%r57; mov.u16 %r62,%r87; or.b16 %r60,%r61,%r62; cvt.u32.u16 %r63,%r60; cvt.u16.u8 %r64,%r63; setp.eq.u16 %r65,%r64,0; @ %r65 bra $L2; .loc 1 46 15 mul.f32 %r25,%r45,%r46; .loc 1 46 18 div.rn.f32 %r44,%r25,%r25; bra $L1; $L2: .loc 1 49 5 setp.gt.s32 %r66,%r35,2130706431; @ %r66 bra $L4; .loc 1 49 34 add.f32 %r69,%r46,%r46; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r69; call (%value_in),__ieee754_fmodf,(%out_arg1,%out_arg2); ld.param.f32 %r70,[%value_in]; } mov.f32 %r45,%r70; $L4: .loc 1 50 5 setp.ne.u32 %r71,%r35,%r36; @ %r71 bra $L5; .loc 1 50 29 mul.f32 %r44,%r45,0f00000000; bra $L1; $L5: .loc 1 51 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } mov.f32 %r31,%r73; .loc 1 52 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 53 5 and.b32 %r76,%r33,2130706432; setp.ne.u32 %r77,%r76,0; @ %r77 bra $L6; .loc 1 54 10 add.f32 %r78,%r31,%r31; .loc 1 54 8 setp.gt.f32 %r79,%r78,%r75; @ ! %r79 bra $L7; .loc 1 55 4 sub.f32 %r31,%r31,%r75; .loc 1 56 7 add.f32 %r80,%r31,%r31; .loc 1 56 5 setp.ge.f32 %r81,%r80,%r75; @ ! %r81 bra $L7; .loc 1 56 16 sub.f32 %r31,%r31,%r75; bra $L7; $L6: .loc 1 59 13 mul.f32 %r38,%r75,0f3f000000; .loc 1 60 8 setp.gt.f32 %r82,%r31,%r38; @ ! %r82 bra $L7; .loc 1 61 4 sub.f32 %r31,%r31,%r75; .loc 1 62 5 setp.le.f32 %r83,%r38,%r31; @ ! %r83 bra $L7; .loc 1 62 19 sub.f32 %r31,%r31,%r75; $L7: .loc 1 38 5 and.b32 %r84,%r29,-2147483648; .loc 1 66 2 mov.b32 %r85,%r31; xor.b32 %r30,%r84,%r85; mov.b32 %r44,%r30; $L1: .loc 1 68 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } /276 0 0 0 644 3043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalbf .visible .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/ef_scalb.c" // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: rintf .extern .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_scalbf .visible .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r41; .reg .f32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .f32 %r46; .reg .u32 %r49; .reg .f32 %r50; mov.f32 %r28,%ar0; mov.f32 %r29,%ar1; .loc 1 38 5 setp.num.f32 %r30,%r28,%r29; @ %r30 bra $L2; $L5: .loc 1 38 35 mul.f32 %r27,%r28,%r29; bra $L1; $L2: .loc 1 39 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 39 5 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 40 8 setp.gt.f32 %r34,%r29,0f00000000; @ %r34 bra $L5; .loc 1 41 25 neg.f32 %r35,%r28; div.rn.f32 %r27,%r35,%r29; bra $L1; $L4: .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; call (%value_in),rintf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } .loc 1 43 5 setp.eq.f32 %r38,%r37,%r29; @ %r38 bra $L6; .loc 1 43 31 sub.f32 %r25,%r29,%r29; .loc 1 43 35 div.rn.f32 %r27,%r25,%r25; bra $L1; $L6: .loc 1 45 5 setp.gt.f32 %r39,%r29,0f477de800; @ ! %r39 bra $L13; .loc 1 45 35 mov.u32 %r41,65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } mov.f32 %r27,%r42; bra $L1; $L13: .loc 1 46 5 setp.lt.f32 %r43,%r29,0fc77de800; @ ! %r43 bra $L14; .loc 1 46 35 mov.u32 %r45,-65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r45; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } mov.f32 %r27,%r46; bra $L1; $L14: .loc 1 51 9 cvt.rzi.s32.f32 %r49,%r29; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r49; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } mov.f32 %r27,%r50; $L1: .loc 1 53 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sinh.o/0 0 0 644 4134 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinhf .visible .func (.param .f32 %value_out) __ieee754_sinhf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_sinh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1f .extern .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_sinhf .visible .func (.param .f32 %value_out) __ieee754_sinhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r27; .reg .f32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .f32 %r50; .reg .pred %r51; .reg .f32 %r53; .reg .f32 %r55; .reg .pred %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .pred %r64; .reg .f32 %r66; .reg .f32 %r68; .reg .pred %r69; .reg .f32 %r71; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r78; .reg .f32 %r80; mov.f32 %r45,%ar0; .loc 1 34 2 mov.b32 %r36,%r45; .loc 1 35 5 and.b32 %r37,%r36,2147483647; .loc 1 38 4 setp.le.s32 %r46,%r37,2139095039; @ %r46 bra $L2; .loc 1 38 39 add.f32 %r44,%r45,%r45; bra $L1; $L2: .loc 1 41 5 setp.ge.s32 %r47,%r36,0; .loc 1 41 14 selp.f32 %r35,0f3f000000,0fbf000000,%r47; .loc 1 43 5 setp.gt.s32 %r48,%r37,1102053375; @ %r48 bra $L5; .loc 1 44 9 setp.gt.s32 %r49,%r37,830472191; @ %r49 bra $L6; .loc 1 45 11 add.f32 %r50,%r45,0f7cf0bdc2; .loc 1 45 5 setp.gt.f32 %r51,%r50,0f3f800000; @ ! %r51 bra $L14; bra $L13; $L6: .loc 1 46 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r53; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r55,[%value_in]; } mov.f32 %r41,%r55; .loc 1 47 8 setp.gt.s32 %r56,%r37,1065353215; @ %r56 bra $L8; $L11: .loc 1 47 48 mul.f32 %r57,%r41,%r41; .loc 1 47 53 add.f32 %r58,%r41,0f3f800000; .loc 1 47 50 div.rn.f32 %r59,%r57,%r58; .loc 1 47 46 neg.f32 %r60,%r59; fma.rn.f32 %r27,%r41,0f40000000,%r60; .loc 1 47 32 mul.f32 %r44,%r27,%r35; bra $L1; $L8: .loc 1 48 22 add.f32 %r61,%r55,0f3f800000; .loc 1 48 19 div.rn.f32 %r62,%r55,%r61; .loc 1 48 17 add.f32 %r63,%r62,%r55; .loc 1 48 14 mul.f32 %r44,%r63,%r35; bra $L1; $L5: .loc 1 52 5 setp.gt.s32 %r64,%r37,1118925335; @ %r64 bra $L9; .loc 1 52 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r66; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 52 38 mul.f32 %r44,%r68,%r35; bra $L1; $L9: .loc 1 55 5 setp.gt.s32 %r69,%r37,1119016188; @ %r69 bra $L10; .loc 1 56 36 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } .loc 1 56 10 mul.f32 %r73,%r71,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r73; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 57 8 mul.f32 %r75,%r35,%r74; .loc 1 58 14 mul.f32 %r44,%r75,%r74; bra $L1; $L10: .loc 1 62 10 mul.f32 %r44,%r45,0f7cf0bdc2; bra $L1; $L13: .loc 1 45 26 mov.f32 %r44,%r45; bra $L1; $L14: .loc 1 46 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r78,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r78; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r80,[%value_in]; } mov.f32 %r41,%r80; bra $L11; $L1: .loc 1 63 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sqrt.o/0 0 0 644 3203 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .visible .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_sqrt.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_sqrtf .visible .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u32 %r24; .reg .f32 %r25; .reg .u32 %r26; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r34; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r70; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; mov.f32 %r56,%ar0; .loc 1 35 2 mov.b32 %r30,%r56; .loc 1 36 5 and.b32 %r45,%r30,2147483647; .loc 1 39 4 setp.le.u32 %r57,%r45,2139095039; @ %r57 bra $L2; .loc 1 40 16 fma.rn.f32 %r55,%r56,%r56,%r56; bra $L1; $L2: .loc 1 43 4 setp.eq.u32 %r58,%r45,0; @ %r58 bra $L12; .loc 1 35 2 mov.u32 %r22,%r30; .loc 1 44 4 setp.ge.s32 %r59,%r30,0; @ %r59 bra $L4; .loc 1 44 20 sub.f32 %r25,%r56,%r56; .loc 1 44 23 div.rn.f32 %r55,%r25,%r25; bra $L1; $L4: .loc 1 47 4 shr.s32 %r44,%r22,23; .loc 1 48 4 and.b32 %r60,%r22,2139095040; setp.ne.u32 %r61,%r60,0; @ %r61 bra $L5; and.b32 %r43,%r22,8388608; .loc 1 49 30 setp.ne.u32 %r62,%r43,0; @ %r62 bra $L13; $L7: .loc 1 49 41 add.u32 %r22,%r22,%r22; mov.u32 %r24,%r43; .loc 1 49 35 add.u32 %r43,%r43,1; .loc 1 49 30 and.b32 %r64,%r22,8388608; setp.eq.u32 %r65,%r64,0; @ %r65 bra $L7; bra $L6; $L13: mov.u32 %r24,-1; $L6: .loc 1 50 8 sub.u32 %r44,%r44,%r24; $L5: .loc 1 52 4 add.u32 %r46,%r44,-127; .loc 1 53 10 and.b32 %r26,%r22,8388607; .loc 1 53 5 or.b32 %r39,%r26,8388608; .loc 1 54 6 and.b32 %r66,%r46,1; .loc 1 54 4 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L8; .loc 1 55 9 add.u32 %r39,%r39,%r39; $L8: .loc 1 56 4 shr.s32 %r47,%r46,1; .loc 1 59 5 add.u32 %r52,%r39,%r39; mov.u32 %r54,25; .loc 1 60 4 mov.u32 %r42,0; .loc 1 60 8 mov.u32 %r41,%r42; .loc 1 61 4 mov.u32 %r53,16777216; $L10: .loc 1 64 11 add.u32 %r29,%r41,%r53; .loc 1 65 8 setp.gt.s32 %r70,%r29,%r52; @ %r70 bra $L14; .loc 1 66 11 add.u32 %r41,%r29,%r53; .loc 1 67 7 sub.u32 %r40,%r52,%r29; .loc 1 68 7 add.u32 %r42,%r42,%r53; bra $L9; $L14: mov.u32 %r40,%r52; $L9: .loc 1 70 9 add.u32 %r52,%r40,%r40; .loc 1 71 7 shr.u32 %r53,%r53,1; .loc 1 63 9 add.u32 %r54,%r54,-1; setp.ne.u32 %r72,%r54,0; @ %r72 bra $L10; .loc 1 75 4 setp.eq.u32 %r73,%r40,0; @ %r73 bra $L11; .loc 1 82 9 add.u32 %r34,%r42,1; and.b32 %r42,%r34,-2; $L11: .loc 1 85 9 shr.s32 %r74,%r42,1; .loc 1 85 13 add.u32 %r49,%r74,1056964608; .loc 1 86 11 shl.b32 %r75,%r47,23; .loc 1 86 5 add.u32 %r76,%r75,%r49; .loc 1 87 2 mov.b32 %r55,%r76; .loc 1 88 9 bra $L1; $L12: .loc 1 43 35 mov.f32 %r55,%r56; $L1: .loc 1 89 1 mov.f32 %value,%r55; st.param.f32 [%value_out],%value; ret; } /294 0 0 0 644 1537 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgammaf .visible .func (.param .f32 %value_out) __ieee754_tgammaf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/ef_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .extern .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_tgammaf .visible .func (.param .f32 %value_out) __ieee754_tgammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r28; .reg .f32 %r30; .reg .u32 %r31; .reg .pred %r32; mov.f32 %r25,%ar0; .loc 1 32 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r28,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } mov.f32 %r24,%r30; .loc 1 33 5 ld.u32 %r31,[%frame]; setp.ge.s32 %r32,%r31,0; @ %r32 bra $L1; .loc 1 34 5 neg.f32 %r24,%r24; $L1: .loc 1 36 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /313 0 0 0 644 1078 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypotl .visible .func (.param .f64 %value_out) __ieee754_hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/el_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypot .extern .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_hypotl .visible .func (.param .f64 %value_out) __ieee754_hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 13 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),__ieee754_hypot,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 18 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /331 0 0 0 644 19698 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .visible .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/er_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .extern .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .extern .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_lgamma_r .visible .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r78; .reg .f64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .u32 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r128; .reg .f64 %r130; .reg .f64 %r132; .reg .u32 %r137; .reg .u32 %r138; .reg .f64 %r139; .reg .f64 %r142; .reg .f64 %r145; .reg .f64 %r151; .reg .f64 %r154; .reg .f64 %r158; .reg .f64 %r168; .reg .f64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u64 %r172; .reg .u32 %r174; .reg .pred %r175; .reg .u32 %r178; .reg .pred %r179; .reg .pred %r180; .reg .u32 %r181; .reg .f64 %r182; .reg .pred %r184; .reg .pred %r185; .reg .u32 %r186; .reg .f64 %r188; .reg .f64 %r189; .reg .f64 %r191; .reg .pred %r193; .reg .pred %r194; .reg .f64 %r196; .reg .u32 %r197; .reg .f64 %r198; .reg .f64 %r199; .reg .f64 %r201; .reg .pred %r202; .reg .f64 %r204; .reg .f64 %r205; .reg .pred %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .u64 %r209; .reg .u32 %r210; .reg .pred %r211; .reg .pred %r212; .reg .u32 %r213; .reg .pred %r214; .reg .f64 %r215; .reg .f64 %r216; .reg .f64 %r218; .reg .f64 %r219; .reg .u32 %r220; .reg .pred %r221; .reg .f64 %r223; .reg .f64 %r225; .reg .f64 %r226; .reg .f64 %r227; .reg .f64 %r229; .reg .u32 %r230; .reg .f64 %r231; .reg .f64 %r233; .reg .f64 %r234; .reg .f64 %r235; .reg .f64 %r236; .reg .f64 %r237; .reg .f64 %r238; .reg .f64 %r239; .reg .f64 %r241; .reg .u32 %r242; .reg .f64 %r243; .reg .pred %r244; .reg .f64 %r246; .reg .f64 %r247; .reg .f64 %r249; .reg .f64 %r250; .reg .f64 %r251; .reg .pred %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .pred %r259; .reg .u32 %r260; .reg .pred %r261; .reg .pred %r262; .reg .f64 %r264; .reg .pred %r265; .reg .f64 %r266; .reg .pred %r267; .reg .f64 %r268; .reg .pred %r269; .reg .f64 %r270; .reg .pred %r271; .reg .f64 %r272; .reg .f64 %r273; .reg .f64 %r274; .reg .f64 %r276; .reg .f64 %r277; .reg .f64 %r278; .reg .f64 %r279; .reg .f64 %r280; .reg .pred %r281; .reg .f64 %r282; .reg .f64 %r283; .reg .pred %r284; .reg .pred %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .pred %r289; .reg .f64 %r290; .reg .f64 %r291; .reg .f64 %r292; .reg .f64 %r294; .reg .f64 %r295; .reg .f64 %r296; .reg .pred %r297; .reg .f64 %r299; .reg .f64 %r300; .reg .f64 %r301; .reg .f64 %r302; .reg .f64 %r303; .reg .f64 %r306; .reg .f64 %r307; .reg .f64 %r308; .reg .u32 %r311; .reg .u32 %r312; .reg .pred %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .pred %r317; mov.f64 %r169,%ar0; mov.u64 %r170,%ar1; .loc 1 223 2 mov.b64 %r171,%r169; shr.u64 %r172,%r171,32; cvt.u32.u64 %r98,%r172; .loc 1 226 12 mov.u32 %r174,1; st.u32 [%r170],%r174; .loc 1 227 5 and.b32 %r100,%r98,2147483647; .loc 1 228 4 setp.le.s32 %r175,%r100,2146435071; @ %r175 bra $L2; .loc 1 229 14 mul.f64 %r168,%r169,%r169; bra $L1; $L2: .loc 1 223 2 cvt.u32.u64 %r99,%r171; .loc 1 231 8 or.b32 %r178,%r99,%r100; .loc 1 231 4 setp.ne.u32 %r179,%r178,0; @ %r179 bra $L4; .loc 1 232 8 setp.ge.s32 %r180,%r98,0; @ %r180 bra $L5; .loc 1 233 20 mov.u32 %r181,-1; st.u32 [%r170],%r181; $L5: .loc 1 234 19 sub.f64 %r182,%r169,%r169; .loc 1 234 16 rcp.rn.f64 %r168,%r182; bra $L1; $L4: .loc 1 236 4 setp.gt.s32 %r184,%r100,999292927; @ %r184 bra $L6; .loc 1 237 8 setp.ge.s32 %r185,%r98,0; @ %r185 bra $L7; .loc 1 238 20 mov.u32 %r186,-1; st.u32 [%r170],%r186; .loc 1 239 18 neg.f64 %r188,%r169; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r188; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r189,[%value_in]; } .loc 1 239 17 neg.f64 %r168,%r189; bra $L1; $L7: .loc 1 240 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r191,[%value_in]; } .loc 1 240 20 neg.f64 %r168,%r191; bra $L1; $L6: .loc 1 242 4 setp.ge.s32 %r317,%r98,0; @ %r317 bra $L8; .loc 1 243 8 setp.gt.s32 %r193,%r100,1127219199; @ %r193 bra $L5; .loc 1 175 4 setp.gt.s32 %r194,%r100,1070596095; @ %r194 bra $L9; .loc 1 175 27 mul.f64 %r198,%r169,0d400921fb54442d18; mov.u32 %r197,0; mov.f64 %r196,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r198; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r196; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r197; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r199,[%value_in]; } mov.f64 %r154,%r199; bra $L10; $L9: .loc 1 176 4 neg.f64 %r128,%r169; .loc 1 182 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r128; call (%value_in),floor,(%out_arg1); ld.param.f64 %r201,[%value_in]; } .loc 1 183 4 setp.eq.f64 %r202,%r128,%r201; @ %r202 bra $L11; .loc 1 184 9 mul.f64 %r130,%r128,0d3fe0000000000000; .loc 1 185 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),floor,(%out_arg1); ld.param.f64 %r204,[%value_in]; } .loc 1 185 19 sub.f64 %r132,%r130,%r204; .loc 1 185 10 add.f64 %r158,%r132,%r132; .loc 1 186 26 mul.f64 %r205,%r158,0d4010000000000000; .loc 1 186 10 cvt.rzi.s32.f64 %r138,%r205; .loc 1 198 2 setp.gt.s32 %r206,%r138,4; @ %r206 bra $L12; bra $L13; $L11: .loc 1 192 3 mov.f64 %r208,0d4330000000000000; sub.f64 %r207,%r208,%r169; mov.b64 %r209,%r207; cvt.u32.u64 %r210,%r209; .loc 1 193 5 and.b32 %r137,%r210,1; .loc 1 194 20 cvt.rn.f64.s32 %r158,%r137; .loc 1 195 18 shl.b32 %r138,%r137,2; $L13: .loc 1 198 2 setp.gt.s32 %r211,%r138,2; @ %r211 bra $L14; setp.eq.u32 %r212,%r138,0; @ %r212 bra $L15; add.u32 %r213,%r138,-1; setp.gt.u32 %r214,%r213,1; @ %r214 bra $L16; .loc 1 201 41 mov.f64 %r216,0d3fe0000000000000; sub.f64 %r215,%r216,%r158; .loc 1 201 21 mul.f64 %r142,%r215,0d400921fb54442d18; mov.f64 %r218,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r142; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r218; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r219,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r219; .loc 1 201 52 bra $L10; $L12: .loc 1 198 2 add.u32 %r220,%r138,-5; setp.gt.u32 %r221,%r220,1; @ ! %r221 bra $L52; bra $L16; $L15: .loc 1 199 21 mul.f64 %r139,%r158,0d400921fb54442d18; mov.f64 %r223,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r139; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r223; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r138; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r225,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r225; .loc 1 199 48 bra $L10; $L14: .loc 1 203 41 mov.f64 %r227,0d3ff0000000000000; sub.f64 %r226,%r227,%r158; .loc 1 203 21 mul.f64 %r145,%r226,0d400921fb54442d18; mov.u32 %r230,0; mov.f64 %r229,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r145; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r229; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r230; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r231,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r231; .loc 1 203 54 bra $L10; $L52: .loc 1 205 39 mov.f64 %r235,0d3ff8000000000000; sub.f64 %r234,%r158,%r235; .loc 1 205 21 mul.f64 %r236,%r234,0d400921fb54442d18; mov.f64 %r233,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r236; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r233; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r237,[%value_in]; } mov.f64 %r154,%r237; .loc 1 205 52 bra $L10; $L16: .loc 1 206 39 mov.f64 %r239,0d4000000000000000; sub.f64 %r238,%r158,%r239; .loc 1 206 21 mul.f64 %r151,%r238,0d400921fb54442d18; mov.u32 %r242,0; mov.f64 %r241,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r151; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r241; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r242; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r243,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r243; $L10: .loc 1 247 8 setp.eq.f64 %r244,%r154,0d0000000000000000; @ %r244 bra $L5; .loc 1 250 30 mul.f64 %r246,%r169,%r154; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r246; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r247,[%value_in]; } .loc 1 250 13 mov.f64 %r250,0d400921fb54442d18; div.rn.f64 %r249,%r250,%r247; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r249; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r251,[%value_in]; } mov.f64 %r168,%r251; .loc 1 251 8 setp.lt.f64 %r252,%r154,0d0000000000000000; @ ! %r252 bra $L19; .loc 1 251 27 mov.u32 %r253,-1; st.u32 [%r170],%r253; $L19: .loc 1 256 10 add.u32 %r254,%r100,-1072693248; .loc 1 256 22 or.b32 %r255,%r254,%r99; .loc 1 256 4 setp.eq.u32 %r256,%r255,0; @ %r256 bra $L1; .loc 1 252 8 neg.f64 %r169,%r169; .loc 1 256 37 add.u32 %r257,%r100,-1073741824; .loc 1 256 49 or.b32 %r258,%r257,%r99; .loc 1 256 30 setp.eq.u32 %r259,%r258,0; @ %r259 bra $L40; $L39: .loc 1 258 9 and.b32 %r260,%r98,1073741824; setp.ne.u32 %r261,%r260,0; @ %r261 bra $L23; .loc 1 259 8 setp.gt.s32 %r262,%r100,1072483532; @ %r262 bra $L24; .loc 1 260 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r264,[%value_in]; } .loc 1 260 5 neg.f64 %r115,%r264; .loc 1 261 5 setp.le.s32 %r265,%r100,1072130371; @ %r265 bra $L25; .loc 1 261 25 mov.f64 %r266,0d3ff0000000000000; sub.f64 %r114,%r266,%r169; bra $L26; $L25: .loc 1 262 10 setp.le.s32 %r267,%r100,1070442080; @ %r267 bra $L27; .loc 1 262 29 mov.f64 %r268,0d3fdd8b618d5af8fc; sub.f64 %r113,%r169,%r268; bra $L28; $L24: .loc 1 266 12 setp.le.s32 %r269,%r100,1073460418; @ %r269 bra $L29; .loc 1 266 31 mov.f64 %r270,0d4000000000000000; sub.f64 %r114,%r270,%r169; .loc 1 265 7 mov.f64 %r115,0d0000000000000000; bra $L26; $L29: .loc 1 267 17 setp.le.s32 %r271,%r100,1072936131; @ %r271 bra $L30; .loc 1 267 36 mov.f64 %r272,0d3ff762d86356be3f; sub.f64 %r113,%r169,%r272; .loc 1 265 7 mov.f64 %r115,0d0000000000000000; bra $L28; $L30: .loc 1 268 10 mov.f64 %r273,0d3ff0000000000000; sub.f64 %r169,%r169,%r273; .loc 1 265 7 mov.f64 %r115,0d0000000000000000; bra $L27; $L26: .loc 1 272 5 mul.f64 %r124,%r114,%r114; .loc 1 273 34 fma.rn.f64 %r31,%r124,0d3efa7074428cfa52,0d3f2cf2eced10e54d; .loc 1 273 28 fma.rn.f64 %r32,%r31,%r124,0d3f538a94116f3f5d; .loc 1 273 22 fma.rn.f64 %r33,%r32,%r124,0d3f7e404fb68fefe8; .loc 1 273 16 fma.rn.f64 %r34,%r33,%r124,0d3fb13e001a5562a7; .loc 1 273 6 fma.rn.f64 %r125,%r34,%r124,0d3fb3c467e37db0c8; .loc 1 274 37 fma.rn.f64 %r35,%r124,0d3f07858e90a45837,0d3f1c5088987dfb07; .loc 1 274 31 fma.rn.f64 %r36,%r35,%r124,0d3f40b6c689b99c00; .loc 1 274 25 fma.rn.f64 %r37,%r36,%r124,0d3f67add8ccb7926b; .loc 1 274 19 fma.rn.f64 %r38,%r37,%r124,0d3f951322ac92547b; .loc 1 274 13 fma.rn.f64 %r39,%r38,%r124,0d3fd4a34cc4a60fad; .loc 1 275 9 mul.f64 %r274,%r125,%r114; .loc 1 275 6 fma.rn.f64 %r126,%r39,%r124,%r274; .loc 1 276 11 fma.rn.f64 %r41,%r114,0dbfe0000000000000,%r126; .loc 1 276 6 add.f64 %r95,%r41,%r115; .loc 1 276 20 bra $L31; $L28: .loc 1 278 5 mul.f64 %r118,%r113,%r113; .loc 1 279 5 mul.f64 %r119,%r118,%r113; .loc 1 280 29 fma.rn.f64 %r42,%r119,0d3f34af6d6c0ebbf7,0dbf56fe8ebf2d1af1; .loc 1 280 22 fma.rn.f64 %r43,%r42,%r119,0d3f78fce0e370e344; .loc 1 280 16 fma.rn.f64 %r44,%r43,%r119,0dbfa0c9a8df35b713; .loc 1 280 6 fma.rn.f64 %r120,%r44,%r119,0d3fdef72bc8ee38a2; .loc 1 281 29 fma.rn.f64 %r45,%r119,0dbf347f24ecc38c38,0d3f4cdf0cef61a8e9; .loc 1 281 22 fma.rn.f64 %r46,%r45,%r119,0dbf6e2effb3e914d7; .loc 1 281 16 fma.rn.f64 %r47,%r46,%r119,0d3f9266e7970af9ec; .loc 1 281 6 fma.rn.f64 %r121,%r47,%r119,0dbfc2e4278dc6c509; .loc 1 282 29 fma.rn.f64 %r48,%r119,0d3f35fd3ee8c2d3f4,0dbf41a6109c73e0ec; .loc 1 282 22 fma.rn.f64 %r49,%r48,%r119,0d3f6282d32e15c915; .loc 1 282 16 fma.rn.f64 %r50,%r49,%r119,0dbf851f9fba91ec6a; .loc 1 282 6 fma.rn.f64 %r122,%r50,%r119,0d3fb08b4294d5419b; .loc 1 283 22 fma.rn.f64 %r51,%r122,%r113,%r121; .loc 1 283 16 neg.f64 %r276,%r51; fma.rn.f64 %r52,%r276,%r119,0dbc50c7caa48a971f; .loc 1 283 6 neg.f64 %r277,%r52; fma.rn.f64 %r123,%r118,%r120,%r277; .loc 1 284 12 mov.f64 %r279,0d3fbf19b9bcc38a42; sub.f64 %r278,%r123,%r279; .loc 1 284 5 add.f64 %r95,%r278,%r115; .loc 1 284 18 bra $L31; $L27: .loc 1 286 37 fma.rn.f64 %r54,%r169,0d3f8b678bbf2bab09,0d3fcd4eaef6010924; .loc 1 286 31 fma.rn.f64 %r55,%r54,%r169,0d3fef497644ea8450; .loc 1 286 25 fma.rn.f64 %r56,%r55,%r169,0d3ff7475cd119bd6f; .loc 1 286 19 fma.rn.f64 %r57,%r56,%r169,0d3fe4401e8b005dff; .loc 1 286 13 fma.rn.f64 %r58,%r57,%r169,0dbfb3c467e37db0c8; .loc 1 286 6 mul.f64 %r116,%r58,%r169; .loc 1 287 35 fma.rn.f64 %r59,%r169,0d3f6a5abb57d0cf61,0d3fbaae55d6537c88; .loc 1 287 29 fma.rn.f64 %r60,%r59,%r169,0d3fe89dfbe45050af; .loc 1 287 23 fma.rn.f64 %r61,%r60,%r169,0d40010725a42b18f5; .loc 1 287 17 fma.rn.f64 %r62,%r61,%r169,0d4003a5d7c2bd619c; .loc 1 287 6 fma.rn.f64 %r117,%r62,%r169,0d3ff0000000000000; .loc 1 288 20 div.rn.f64 %r280,%r116,%r117; .loc 1 288 16 fma.rn.f64 %r64,%r169,0dbfe0000000000000,%r280; .loc 1 288 5 add.f64 %r95,%r64,%r115; bra $L31; $L23: .loc 1 291 9 setp.gt.s32 %r281,%r100,1075838975; @ %r281 bra $L32; .loc 1 292 8 cvt.rzi.s32.f64 %r105,%r169; .loc 1 294 12 cvt.rn.f64.s32 %r282,%r105; .loc 1 294 8 sub.f64 %r106,%r169,%r282; .loc 1 295 45 fma.rn.f64 %r66,%r106,0d3f00bfecdd17e945,0d3f5e26b67368f239; .loc 1 295 39 fma.rn.f64 %r67,%r66,%r106,0d3f9b481c7e939961; .loc 1 295 33 fma.rn.f64 %r68,%r67,%r106,0d3fc2bb9cbee5f2f7; .loc 1 295 27 fma.rn.f64 %r69,%r68,%r106,0d3fd4d98f4f139f59; .loc 1 295 21 fma.rn.f64 %r70,%r69,%r106,0d3fcb848b36e20878; .loc 1 295 15 fma.rn.f64 %r71,%r70,%r106,0dbfb3c467e37db0c8; .loc 1 295 8 mul.f64 %r107,%r71,%r106; .loc 1 296 43 fma.rn.f64 %r72,%r106,0d3edebaf7a5b38140,0d3f497ddaca41a95b; .loc 1 296 37 fma.rn.f64 %r73,%r72,%r106,0d3f9317ea742ed475; .loc 1 296 31 fma.rn.f64 %r74,%r73,%r106,0d3fc601edccfbdf27; .loc 1 296 25 fma.rn.f64 %r75,%r74,%r106,0d3fe71a1893d3dcdc; .loc 1 296 19 fma.rn.f64 %r76,%r75,%r106,0d3ff645a762c4ab74; .loc 1 296 8 fma.rn.f64 %r108,%r76,%r106,0d3ff0000000000000; .loc 1 297 18 div.rn.f64 %r283,%r107,%r108; .loc 1 297 8 fma.rn.f64 %r95,%r106,0d3fe0000000000000,%r283; .loc 1 299 6 setp.eq.u32 %r284,%r105,5; @ %r284 bra $L41; setp.gt.s32 %r285,%r105,5; @ %r285 bra $L34; setp.eq.u32 %r286,%r105,3; @ %r286 bra $L42; setp.eq.u32 %r287,%r105,4; @ %r287 bra $L43; bra $L31; $L34: setp.eq.u32 %r288,%r105,6; @ %r288 bra $L44; setp.ne.u32 %r289,%r105,7; @ %r289 bra $L31; .loc 1 300 21 add.f64 %r78,%r106,0d4018000000000000; bra $L37; $L44: .loc 1 299 6 mov.f64 %r78,0d3ff0000000000000; $L37: .loc 1 301 21 add.f64 %r290,%r106,0d4014000000000000; .loc 1 301 16 mul.f64 %r92,%r290,%r78; bra $L33; $L41: .loc 1 299 6 mov.f64 %r92,0d3ff0000000000000; $L33: .loc 1 302 21 add.f64 %r291,%r106,0d4010000000000000; .loc 1 302 16 mul.f64 %r93,%r291,%r92; bra $L36; $L43: .loc 1 299 6 mov.f64 %r93,0d3ff0000000000000; $L36: .loc 1 303 21 add.f64 %r292,%r106,0d4008000000000000; .loc 1 303 16 mul.f64 %r94,%r292,%r93; bra $L35; $L42: .loc 1 299 6 mov.f64 %r94,0d3ff0000000000000; $L35: .loc 1 304 21 add.f64 %r294,%r106,0d4000000000000000; .loc 1 304 16 mul.f64 %r295,%r294,%r94; .loc 1 305 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r295; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r296,[%value_in]; } .loc 1 305 9 add.f64 %r95,%r95,%r296; .loc 1 305 30 bra $L31; $L32: .loc 1 308 12 setp.gt.s32 %r297,%r100,1133510655; @ %r297 bra $L38; .loc 1 309 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r299,[%value_in]; } .loc 1 310 8 mov.f64 %r300,0d3ff0000000000000; div.rn.f64 %r102,%r300,%r169; .loc 1 311 8 mul.f64 %r103,%r102,%r102; .loc 1 312 42 fma.rn.f64 %r83,%r103,0dbf5ab89d0b9e43e4,0d3f4b67ba4cdad5d1; .loc 1 312 36 fma.rn.f64 %r84,%r83,%r103,0dbf4380cb8c0fe741; .loc 1 312 30 fma.rn.f64 %r85,%r84,%r103,0d3f4a019f98cf38b6; .loc 1 312 24 fma.rn.f64 %r86,%r85,%r103,0dbf66c16c16b02e5c; .loc 1 312 18 fma.rn.f64 %r87,%r86,%r103,0d3fb555555555553b; .loc 1 312 8 fma.rn.f64 %r104,%r87,%r102,0d3fdacfe390c97d69; .loc 1 313 12 mov.f64 %r302,0d3fe0000000000000; sub.f64 %r301,%r169,%r302; .loc 1 313 21 sub.f64 %r303,%r299,%r300; .loc 1 313 8 fma.rn.f64 %r95,%r301,%r303,%r104; bra $L31; $L38: .loc 1 316 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r306,[%value_in]; } .loc 1 316 30 mov.f64 %r308,0d3ff0000000000000; sub.f64 %r307,%r306,%r308; .loc 1 316 8 mul.f64 %r95,%r307,%r169; $L31: .loc 1 317 4 @ ! %r317 bra $L22; bra $L45; $L40: .loc 1 256 61 mov.f64 %r95,0d0000000000000000; $L22: .loc 1 317 13 sub.f64 %r168,%r168,%r95; bra $L1; $L45: mov.f64 %r168,%r95; bra $L1; $L46: .loc 1 256 61 mov.f64 %r168,0d0000000000000000; bra $L1; $L47: mov.f64 %r168,0d0000000000000000; bra $L1; $L8: .loc 1 256 10 add.u32 %r311,%r100,-1072693248; .loc 1 256 22 or.b32 %r312,%r311,%r99; .loc 1 256 4 setp.eq.u32 %r313,%r312,0; @ %r313 bra $L46; .loc 1 256 37 add.u32 %r314,%r100,-1073741824; .loc 1 256 49 or.b32 %r315,%r314,%r99; .loc 1 256 30 setp.eq.u32 %r316,%r315,0; @ %r316 bra $L47; .loc 1 220 15 mov.f64 %r168,0d0000000000000000; bra $L39; $L1: .loc 1 319 1 mov.f64 %value,%r168; st.param.f64 [%value_out],%value; ret; } /350 0 0 0 644 18083 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .visible .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/erf_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .extern .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: floorf .extern .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .extern .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_lgammaf_r .visible .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r77; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .u32 %r97; .reg .u32 %r98; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .u32 %r104; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r126; .reg .f32 %r128; .reg .f32 %r130; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .f32 %r138; .reg .f32 %r141; .reg .f32 %r144; .reg .f32 %r150; .reg .f32 %r153; .reg .f32 %r156; .reg .f32 %r161; .reg .f32 %r163; .reg .f32 %r164; .reg .u64 %r165; .reg .u32 %r166; .reg .pred %r167; .reg .pred %r168; .reg .pred %r169; .reg .u32 %r170; .reg .f32 %r171; .reg .pred %r173; .reg .pred %r174; .reg .u32 %r175; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r180; .reg .pred %r182; .reg .pred %r183; .reg .f32 %r185; .reg .u32 %r186; .reg .f32 %r187; .reg .f32 %r188; .reg .f32 %r190; .reg .pred %r191; .reg .f32 %r193; .reg .f32 %r194; .reg .pred %r195; .reg .f32 %r196; .reg .f32 %r197; .reg .pred %r198; .reg .pred %r199; .reg .u32 %r200; .reg .pred %r201; .reg .f32 %r202; .reg .f32 %r203; .reg .f32 %r205; .reg .f32 %r206; .reg .u32 %r207; .reg .pred %r208; .reg .f32 %r210; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r216; .reg .u32 %r217; .reg .f32 %r218; .reg .f32 %r220; .reg .f32 %r221; .reg .f32 %r222; .reg .f32 %r223; .reg .f32 %r224; .reg .f32 %r225; .reg .f32 %r226; .reg .f32 %r228; .reg .u32 %r229; .reg .f32 %r230; .reg .pred %r231; .reg .f32 %r233; .reg .f32 %r234; .reg .f32 %r236; .reg .f32 %r237; .reg .f32 %r238; .reg .pred %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .pred %r243; .reg .u32 %r244; .reg .pred %r245; .reg .pred %r246; .reg .f32 %r248; .reg .pred %r249; .reg .f32 %r250; .reg .pred %r251; .reg .f32 %r252; .reg .pred %r253; .reg .f32 %r254; .reg .pred %r255; .reg .f32 %r256; .reg .f32 %r257; .reg .f32 %r258; .reg .f32 %r260; .reg .f32 %r261; .reg .f32 %r262; .reg .f32 %r263; .reg .f32 %r264; .reg .pred %r265; .reg .f32 %r266; .reg .f32 %r267; .reg .pred %r268; .reg .pred %r269; .reg .pred %r270; .reg .pred %r271; .reg .pred %r272; .reg .pred %r273; .reg .f32 %r274; .reg .f32 %r275; .reg .f32 %r276; .reg .f32 %r278; .reg .f32 %r279; .reg .f32 %r280; .reg .pred %r281; .reg .f32 %r283; .reg .f32 %r284; .reg .f32 %r285; .reg .f32 %r286; .reg .f32 %r287; .reg .f32 %r290; .reg .f32 %r291; .reg .f32 %r292; .reg .u32 %r295; .reg .u32 %r296; .reg .pred %r297; .reg .pred %r298; mov.f32 %r164,%ar0; mov.u64 %r165,%ar1; .loc 1 158 2 mov.b32 %r97,%r164; .loc 1 161 12 mov.u32 %r166,1; st.u32 [%r165],%r166; .loc 1 162 5 and.b32 %r98,%r97,2147483647; .loc 1 163 4 setp.le.s32 %r167,%r98,2139095039; @ %r167 bra $L2; .loc 1 164 14 mul.f32 %r163,%r164,%r164; bra $L1; $L2: .loc 1 166 4 setp.ne.u32 %r168,%r98,0; @ %r168 bra $L4; .loc 1 167 8 setp.ge.s32 %r169,%r97,0; @ %r169 bra $L5; .loc 1 168 20 mov.u32 %r170,-1; st.u32 [%r165],%r170; $L5: .loc 1 169 19 sub.f32 %r171,%r164,%r164; .loc 1 169 16 rcp.rn.f32 %r163,%r171; bra $L1; $L4: .loc 1 171 4 setp.gt.s32 %r173,%r98,478150655; @ %r173 bra $L6; .loc 1 172 8 setp.ge.s32 %r174,%r97,0; @ %r174 bra $L7; .loc 1 173 20 mov.u32 %r175,-1; st.u32 [%r165],%r175; .loc 1 174 18 neg.f32 %r177,%r164; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r177; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r178,[%value_in]; } .loc 1 174 17 neg.f32 %r163,%r178; bra $L1; $L7: .loc 1 175 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r180,[%value_in]; } .loc 1 175 20 neg.f32 %r163,%r180; bra $L1; $L6: .loc 1 177 4 setp.ge.s32 %r298,%r97,0; @ %r298 bra $L8; .loc 1 178 8 setp.gt.s32 %r182,%r98,1258291199; @ %r182 bra $L5; .loc 1 110 4 setp.gt.s32 %r183,%r98,1048575999; @ %r183 bra $L9; .loc 1 110 27 mul.f32 %r187,%r164,0f40490fdb; mov.u32 %r186,0; mov.f32 %r185,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r187; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r185; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r186; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r188,[%value_in]; } mov.f32 %r153,%r188; bra $L10; $L9: .loc 1 111 4 neg.f32 %r126,%r164; .loc 1 117 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r126; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r190,[%value_in]; } .loc 1 118 4 setp.eq.f32 %r191,%r126,%r190; @ %r191 bra $L11; .loc 1 119 9 mul.f32 %r128,%r126,0f3f000000; .loc 1 120 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r128; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r193,[%value_in]; } .loc 1 120 26 sub.f32 %r130,%r128,%r193; .loc 1 120 10 add.f32 %r161,%r130,%r130; .loc 1 121 26 mul.f32 %r194,%r161,0f40800000; .loc 1 121 10 cvt.rzi.s32.f32 %r136,%r194; .loc 1 133 2 setp.gt.s32 %r195,%r136,4; @ %r195 bra $L12; bra $L13; $L11: .loc 1 127 3 mov.f32 %r197,0f4b000000; sub.f32 %r196,%r197,%r164; mov.b32 %r134,%r196; .loc 1 128 5 and.b32 %r135,%r134,1; .loc 1 129 20 cvt.rn.f32.s32 %r161,%r135; .loc 1 130 18 shl.b32 %r136,%r135,2; $L13: .loc 1 133 2 setp.gt.s32 %r198,%r136,2; @ %r198 bra $L14; setp.eq.u32 %r199,%r136,0; @ %r199 bra $L15; add.u32 %r200,%r136,-1; setp.gt.u32 %r201,%r200,1; @ %r201 bra $L16; .loc 1 136 49 mov.f32 %r203,0f3f000000; sub.f32 %r202,%r203,%r161; .loc 1 136 21 mul.f32 %r141,%r202,0f40490fdb; mov.f32 %r205,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r141; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r205; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r206,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r206; .loc 1 136 60 bra $L10; $L12: .loc 1 133 2 add.u32 %r207,%r136,-5; setp.gt.u32 %r208,%r207,1; @ ! %r208 bra $L48; bra $L16; $L15: .loc 1 134 21 mul.f32 %r138,%r161,0f40490fdb; mov.f32 %r210,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r138; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r210; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r136; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r212,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r212; .loc 1 134 49 bra $L10; $L14: .loc 1 138 42 mov.f32 %r214,0f3f800000; sub.f32 %r213,%r214,%r161; .loc 1 138 21 mul.f32 %r144,%r213,0f40490fdb; mov.u32 %r217,0; mov.f32 %r216,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r144; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r216; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r217; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r218,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r218; .loc 1 138 55 bra $L10; $L48: .loc 1 140 40 mov.f32 %r222,0f3fc00000; sub.f32 %r221,%r161,%r222; .loc 1 140 21 mul.f32 %r223,%r221,0f40490fdb; mov.f32 %r220,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r223; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r220; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r224,[%value_in]; } mov.f32 %r153,%r224; .loc 1 140 60 bra $L10; $L16: .loc 1 141 40 mov.f32 %r226,0f40000000; sub.f32 %r225,%r161,%r226; .loc 1 141 21 mul.f32 %r150,%r225,0f40490fdb; mov.u32 %r229,0; mov.f32 %r228,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r150; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r228; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r229; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r230,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r230; $L10: .loc 1 182 8 setp.eq.f32 %r231,%r153,0f00000000; @ %r231 bra $L5; .loc 1 186 31 mul.f32 %r233,%r164,%r153; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r233; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r234,[%value_in]; } .loc 1 186 13 mov.f32 %r237,0f40490fdb; div.rn.f32 %r236,%r237,%r234; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r236; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r238,[%value_in]; } mov.f32 %r163,%r238; .loc 1 187 8 setp.lt.f32 %r239,%r153,0f00000000; @ ! %r239 bra $L19; .loc 1 187 27 mov.u32 %r240,-1; st.u32 [%r165],%r240; $L19: .loc 1 192 8 add.u32 %r241,%r98,-1065353216; and.b32 %r242,%r241,-8388609; .loc 1 192 5 setp.eq.u32 %r243,%r242,0; @ %r243 bra $L1; .loc 1 188 8 neg.f32 %r164,%r164; .loc 1 186 13 mov.f32 %r156,%r238; $L38: .loc 1 194 9 and.b32 %r244,%r97,1073741824; setp.ne.u32 %r245,%r244,0; @ %r245 bra $L22; .loc 1 195 8 setp.gt.s32 %r246,%r98,1063675494; @ %r246 bra $L23; .loc 1 196 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r248,[%value_in]; } .loc 1 196 5 neg.f32 %r113,%r248; .loc 1 197 5 setp.le.s32 %r249,%r98,1060850207; @ %r249 bra $L24; .loc 1 197 25 mov.f32 %r250,0f3f800000; sub.f32 %r112,%r250,%r164; bra $L25; $L24: .loc 1 198 10 setp.le.s32 %r251,%r98,1047343879; @ %r251 bra $L26; .loc 1 198 29 mov.f32 %r252,0f3eec5b0c; sub.f32 %r111,%r164,%r252; bra $L27; $L23: .loc 1 202 12 setp.le.s32 %r253,%r98,1071490583; @ %r253 bra $L28; .loc 1 202 31 mov.f32 %r254,0f40000000; sub.f32 %r112,%r254,%r164; .loc 1 201 7 mov.f32 %r113,0f00000000; bra $L25; $L28: .loc 1 203 17 setp.le.s32 %r255,%r98,1067296287; @ %r255 bra $L29; .loc 1 203 36 mov.f32 %r256,0f3fbb16c3; sub.f32 %r111,%r164,%r256; .loc 1 201 7 mov.f32 %r113,0f00000000; bra $L27; $L29: .loc 1 204 10 mov.f32 %r257,0f3f800000; sub.f32 %r164,%r164,%r257; .loc 1 201 7 mov.f32 %r113,0f00000000; bra $L26; $L25: .loc 1 208 5 mul.f32 %r122,%r112,%r112; .loc 1 209 34 fma.rn.f32 %r30,%r122,0f37d383a2,0f39679767; .loc 1 209 28 fma.rn.f32 %r31,%r30,%r122,0f3a9c54a1; .loc 1 209 22 fma.rn.f32 %r32,%r31,%r122,0f3bf2027e; .loc 1 209 16 fma.rn.f32 %r33,%r32,%r122,0f3d89f001; .loc 1 209 6 fma.rn.f32 %r123,%r33,%r122,0f3d9e233f; .loc 1 210 37 fma.rn.f32 %r34,%r122,0f383c2c75,0f38e28445; .loc 1 210 31 fma.rn.f32 %r35,%r34,%r122,0f3a05b634; .loc 1 210 25 fma.rn.f32 %r36,%r35,%r122,0f3b3d6ec6; .loc 1 210 19 fma.rn.f32 %r37,%r36,%r122,0f3ca89915; .loc 1 210 13 fma.rn.f32 %r38,%r37,%r122,0f3ea51a66; .loc 1 211 9 mul.f32 %r258,%r123,%r112; .loc 1 211 6 fma.rn.f32 %r124,%r38,%r122,%r258; .loc 1 212 11 fma.rn.f32 %r40,%r112,0fbf000000,%r124; .loc 1 212 6 add.f32 %r163,%r40,%r113; .loc 1 212 27 bra $L30; $L27: .loc 1 214 5 mul.f32 %r116,%r111,%r111; .loc 1 215 5 mul.f32 %r117,%r116,%r111; .loc 1 216 29 fma.rn.f32 %r41,%r117,0f39a57b6b,0fbab7f476; .loc 1 216 22 fma.rn.f32 %r42,%r41,%r117,0f3bc7e707; .loc 1 216 16 fma.rn.f32 %r43,%r42,%r117,0fbd064d47; .loc 1 216 6 fma.rn.f32 %r118,%r43,%r117,0f3ef7b95e; .loc 1 217 29 fma.rn.f32 %r44,%r117,0fb9a3f927,0f3a66f867; .loc 1 217 22 fma.rn.f32 %r45,%r44,%r117,0fbb7177fe; .loc 1 217 16 fma.rn.f32 %r46,%r45,%r117,0f3c93373d; .loc 1 217 6 fma.rn.f32 %r119,%r46,%r117,0fbe17213c; .loc 1 218 29 fma.rn.f32 %r47,%r117,0f39afe9f7,0fba0d3085; .loc 1 218 22 fma.rn.f32 %r48,%r47,%r117,0f3b141699; .loc 1 218 16 fma.rn.f32 %r49,%r48,%r117,0fbc28fcfe; .loc 1 218 6 fma.rn.f32 %r120,%r49,%r117,0f3d845a15; .loc 1 219 22 fma.rn.f32 %r50,%r120,%r111,%r119; .loc 1 219 16 neg.f32 %r260,%r50; fma.rn.f32 %r51,%r260,%r117,0f31e61c52; .loc 1 219 6 neg.f32 %r261,%r51; fma.rn.f32 %r121,%r116,%r118,%r261; .loc 1 220 12 mov.f32 %r263,0f3df8cdcd; sub.f32 %r262,%r121,%r263; .loc 1 220 5 add.f32 %r163,%r262,%r113; .loc 1 220 18 bra $L30; $L26: .loc 1 222 37 fma.rn.f32 %r53,%r164,0f3c5b3c5e,0f3e6a7578; .loc 1 222 31 fma.rn.f32 %r54,%r53,%r164,0f3f7a4bb2; .loc 1 222 25 fma.rn.f32 %r55,%r54,%r164,0f3fba3ae7; .loc 1 222 19 fma.rn.f32 %r56,%r55,%r164,0f3f2200f4; .loc 1 222 13 fma.rn.f32 %r57,%r56,%r164,0fbd9e233f; .loc 1 222 6 mul.f32 %r114,%r57,%r164; .loc 1 223 35 fma.rn.f32 %r58,%r164,0f3b52d5db,0f3dd572af; .loc 1 223 29 fma.rn.f32 %r59,%r58,%r164,0f3f44efdf; .loc 1 223 23 fma.rn.f32 %r60,%r59,%r164,0f4008392d; .loc 1 223 17 fma.rn.f32 %r61,%r60,%r164,0f401d2ebe; .loc 1 223 6 fma.rn.f32 %r115,%r61,%r164,0f3f800000; .loc 1 224 27 div.rn.f32 %r264,%r114,%r115; .loc 1 224 23 fma.rn.f32 %r63,%r164,0fbf000000,%r264; .loc 1 224 5 add.f32 %r163,%r63,%r113; bra $L30; $L22: .loc 1 227 9 setp.gt.s32 %r265,%r98,1090519039; @ %r265 bra $L31; .loc 1 228 8 cvt.rzi.s32.f32 %r104,%r164; .loc 1 230 12 cvt.rn.f32.s32 %r266,%r104; .loc 1 230 8 sub.f32 %r106,%r164,%r266; .loc 1 231 45 fma.rn.f32 %r65,%r106,0f3805ff67,0f3af135b4; .loc 1 231 39 fma.rn.f32 %r66,%r65,%r106,0f3cda40e4; .loc 1 231 33 fma.rn.f32 %r67,%r66,%r106,0f3e15dce6; .loc 1 231 27 fma.rn.f32 %r68,%r67,%r106,0f3ea6cc7a; .loc 1 231 21 fma.rn.f32 %r69,%r68,%r106,0f3e5c245a; .loc 1 231 15 fma.rn.f32 %r70,%r69,%r106,0fbd9e233f; .loc 1 231 8 mul.f32 %r107,%r70,%r106; .loc 1 232 43 fma.rn.f32 %r71,%r106,0f36f5d7bd,0f3a4beed6; .loc 1 232 37 fma.rn.f32 %r72,%r71,%r106,0f3c98bf54; .loc 1 232 31 fma.rn.f32 %r73,%r72,%r106,0f3e300f6e; .loc 1 232 25 fma.rn.f32 %r74,%r73,%r106,0f3f38d0c5; .loc 1 232 19 fma.rn.f32 %r75,%r74,%r106,0f3fb22d3b; .loc 1 232 8 fma.rn.f32 %r108,%r75,%r106,0f3f800000; .loc 1 233 18 div.rn.f32 %r267,%r107,%r108; .loc 1 233 8 fma.rn.f32 %r163,%r106,0f3f000000,%r267; .loc 1 235 6 setp.eq.u32 %r268,%r104,5; @ %r268 bra $L39; setp.gt.s32 %r269,%r104,5; @ %r269 bra $L33; setp.eq.u32 %r270,%r104,3; @ %r270 bra $L40; setp.eq.u32 %r271,%r104,4; @ %r271 bra $L41; bra $L30; $L33: setp.eq.u32 %r272,%r104,6; @ %r272 bra $L42; setp.ne.u32 %r273,%r104,7; @ %r273 bra $L30; .loc 1 236 21 add.f32 %r77,%r106,0f40c00000; bra $L36; $L42: .loc 1 235 6 mov.f32 %r77,0f3f800000; $L36: .loc 1 237 21 add.f32 %r274,%r106,0f40a00000; .loc 1 237 16 mul.f32 %r92,%r274,%r77; bra $L32; $L39: .loc 1 235 6 mov.f32 %r92,0f3f800000; $L32: .loc 1 238 21 add.f32 %r275,%r106,0f40800000; .loc 1 238 16 mul.f32 %r93,%r275,%r92; bra $L35; $L41: .loc 1 235 6 mov.f32 %r93,0f3f800000; $L35: .loc 1 239 21 add.f32 %r276,%r106,0f40400000; .loc 1 239 16 mul.f32 %r94,%r276,%r93; bra $L34; $L40: .loc 1 235 6 mov.f32 %r94,0f3f800000; $L34: .loc 1 240 21 add.f32 %r278,%r106,0f40000000; .loc 1 240 16 mul.f32 %r279,%r278,%r94; .loc 1 241 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r279; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r280,[%value_in]; } .loc 1 241 9 add.f32 %r163,%r163,%r280; .loc 1 241 31 bra $L30; $L31: .loc 1 244 12 setp.gt.s32 %r281,%r98,1551892479; @ %r281 bra $L37; .loc 1 245 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r283,[%value_in]; } .loc 1 246 8 mov.f32 %r284,0f3f800000; div.rn.f32 %r101,%r284,%r164; .loc 1 247 8 mul.f32 %r102,%r101,%r101; .loc 1 248 42 fma.rn.f32 %r82,%r102,0fbad5c4e8,0f3a5b3dd2; .loc 1 248 36 fma.rn.f32 %r83,%r82,%r102,0fba1c065c; .loc 1 248 30 fma.rn.f32 %r84,%r83,%r102,0f3a500cfd; .loc 1 248 24 fma.rn.f32 %r85,%r84,%r102,0fbb360b61; .loc 1 248 18 fma.rn.f32 %r86,%r85,%r102,0f3daaaaab; .loc 1 248 8 fma.rn.f32 %r103,%r86,%r101,0f3ed67f1d; .loc 1 249 12 mov.f32 %r286,0f3f000000; sub.f32 %r285,%r164,%r286; .loc 1 249 21 sub.f32 %r287,%r283,%r284; .loc 1 249 8 fma.rn.f32 %r163,%r285,%r287,%r103; bra $L30; $L37: .loc 1 252 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r290,[%value_in]; } .loc 1 252 31 mov.f32 %r292,0f3f800000; sub.f32 %r291,%r290,%r292; .loc 1 252 8 mul.f32 %r163,%r291,%r164; $L30: .loc 1 253 4 @ %r298 bra $L1; .loc 1 253 13 sub.f32 %r163,%r156,%r163; bra $L1; $L43: .loc 1 192 40 mov.f32 %r163,0f00000000; bra $L1; $L8: .loc 1 192 8 add.u32 %r295,%r98,-1065353216; and.b32 %r296,%r295,-8388609; .loc 1 192 5 setp.eq.u32 %r297,%r296,0; @ %r297 bra $L43; .loc 1 155 14 mov.f32 %r156,0f00000000; bra $L38; $L1: .loc 1 255 1 mov.f32 %value,%r163; st.param.f32 [%value_out],%value; ret; } lib_a-erfcl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erfcl .visible .func (.param .f64 %value_out) erfcl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/erfcl.c" // BEGIN GLOBAL FUNCTION DECL: erfc .extern .func (.param .f64 %value_out) erfc (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erfcl .visible .func (.param .f64 %value_out) erfcl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),erfc,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-erfl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erfl .visible .func (.param .f64 %value_out) erfl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/erfl.c" // BEGIN GLOBAL FUNCTION DECL: erf .extern .func (.param .f64 %value_out) erf (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erfl .visible .func (.param .f64 %value_out) erfl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),erf,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-exp.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-exp2.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-exp2l.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp2l .visible .func (.param .f64 %value_out) exp2l (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/exp2l.c" // BEGIN GLOBAL FUNCTION DECL: exp2 .extern .func (.param .f64 %value_out) exp2 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: exp2l .visible .func (.param .f64 %value_out) exp2l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),exp2,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /370 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-expl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expl .visible .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/expl.c" // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expl .visible .func (.param .f64 %value_out) expl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),exp,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-expm1l.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expm1l .visible .func (.param .f64 %value_out) expm1l (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/expm1l.c" // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expm1l .visible .func (.param .f64 %value_out) expm1l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-fabsl.o/ 0 0 0 644 527 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fabsl .visible .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/fabsl.c" // BEGIN GLOBAL FUNCTION DEF: fabsl .visible .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 abs.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-fdiml.o/ 0 0 0 644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fdiml .visible .func (.param .f64 %value_out) fdiml (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/fdiml.c" // BEGIN GLOBAL FUNCTION DECL: fdim .extern .func (.param .f64 %value_out) fdim (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fdiml .visible .func (.param .f64 %value_out) fdiml (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fdim,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /388 0 0 0 644 275 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL VAR DEF: __fe_dfl_env .visible .global .align 4 .u32 __fe_dfl_env[1]; // END PREAMBLE // BEGIN GLOBAL VAR DEF: _fe_dfl_env .visible .global .align 8 .u64 _fe_dfl_env[1] = {generic(__fe_dfl_env) }; /408 0 0 0 644 615 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feclearexcept .visible .func (.param .u32 %value_out) feclearexcept (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/feclearexcept.c" // BEGIN GLOBAL FUNCTION DEF: feclearexcept .visible .func (.param .u32 %value_out) feclearexcept (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .pred %r24; mov.u32 %r23,%ar0; .loc 1 66 32 setp.ne.u32 %r24,%r23,0; selp.u32 %value,-134,0,%r24; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /431 0 0 0 644 505 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fegetenv .visible .func (.param .u32 %value_out) fegetenv (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/fegetenv.c" // BEGIN GLOBAL FUNCTION DEF: fegetenv .visible .func (.param .u32 %value_out) fegetenv (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 66 10 mov.u32 %value,-134; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /449 0 0 0 644 627 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fegetexceptflag .visible .func (.param .u32 %value_out) fegetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/fenv/fegetexceptflag.c" // BEGIN GLOBAL FUNCTION DEF: fegetexceptflag .visible .func (.param .u32 %value_out) fegetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .loc 1 67 10 mov.u32 %value,-134; .loc 1 68 1 st.param.u32 [%value_out],%value; ret; } /474 0 0 0 644 426 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fegetround .visible .func (.param .u32 %value_out) fegetround; .file 1 "../../../../../newlib/libm/fenv/fegetround.c" // BEGIN GLOBAL FUNCTION DEF: fegetround .visible .func (.param .u32 %value_out) fegetround { .reg .u32 %value; .loc 1 65 10 mov.u32 %value,-134; .loc 1 66 1 st.param.u32 [%value_out],%value; ret; } /494 0 0 0 644 525 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feholdexcept .visible .func (.param .u32 %value_out) feholdexcept (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/feholdexcept.c" // BEGIN GLOBAL FUNCTION DEF: feholdexcept .visible .func (.param .u32 %value_out) feholdexcept (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 69 10 mov.u32 %value,-134; .loc 1 70 1 st.param.u32 [%value_out],%value; ret; } /516 0 0 0 644 615 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feraiseexcept .visible .func (.param .u32 %value_out) feraiseexcept (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/feraiseexcept.c" // BEGIN GLOBAL FUNCTION DEF: feraiseexcept .visible .func (.param .u32 %value_out) feraiseexcept (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .pred %r24; mov.u32 %r23,%ar0; .loc 1 66 32 setp.ne.u32 %r24,%r23,0; selp.u32 %value,-134,0,%r24; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /539 0 0 0 644 505 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fesetenv .visible .func (.param .u32 %value_out) fesetenv (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/fesetenv.c" // BEGIN GLOBAL FUNCTION DEF: fesetenv .visible .func (.param .u32 %value_out) fesetenv (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 71 10 mov.u32 %value,-134; .loc 1 72 1 st.param.u32 [%value_out],%value; ret; } /557 0 0 0 644 627 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fesetexceptflag .visible .func (.param .u32 %value_out) fesetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/fenv/fesetexceptflag.c" // BEGIN GLOBAL FUNCTION DEF: fesetexceptflag .visible .func (.param .u32 %value_out) fesetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .loc 1 72 10 mov.u32 %value,-134; .loc 1 73 1 st.param.u32 [%value_out],%value; ret; } /582 0 0 0 644 515 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fesetround .visible .func (.param .u32 %value_out) fesetround (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/fesetround.c" // BEGIN GLOBAL FUNCTION DEF: fesetround .visible .func (.param .u32 %value_out) fesetround (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .loc 1 66 10 mov.u32 %value,-134; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /602 0 0 0 644 522 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fetestexcept .visible .func (.param .u32 %value_out) fetestexcept (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/fetestexcept.c" // BEGIN GLOBAL FUNCTION DEF: fetestexcept .visible .func (.param .u32 %value_out) fetestexcept (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .loc 1 67 10 mov.u32 %value,0; .loc 1 68 1 st.param.u32 [%value_out],%value; ret; } /624 0 0 0 644 520 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feupdateenv .visible .func (.param .u32 %value_out) feupdateenv (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/fenv/feupdateenv.c" // BEGIN GLOBAL FUNCTION DEF: feupdateenv .visible .func (.param .u32 %value_out) feupdateenv (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 71 10 mov.u32 %value,-134; .loc 1 72 1 st.param.u32 [%value_out],%value; ret; } lib_a-floorl.o/ 0 0 0 644 540 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: floorl .visible .func (.param .f64 %value_out) floorl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/floorl.c" // BEGIN GLOBAL FUNCTION DEF: floorl .visible .func (.param .f64 %value_out) floorl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rmi.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-fmal.o/ 0 0 0 644 779 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmal .visible .func (.param .f64 %value_out) fmal (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/common/fmal.c" // BEGIN GLOBAL FUNCTION DEF: fmal .visible .func (.param .f64 %value_out) fmal (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.f64 %r25,%ar2; .loc 1 39 10 fma.rn.f64 %value,%r23,%r24,%r25; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-fmaxl.o/ 0 0 0 644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmaxl .visible .func (.param .f64 %value_out) fmaxl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/fmaxl.c" // BEGIN GLOBAL FUNCTION DECL: fmax .extern .func (.param .f64 %value_out) fmax (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fmaxl .visible .func (.param .f64 %value_out) fmaxl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fmax,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-fminl.o/ 0 0 0 644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fminl .visible .func (.param .f64 %value_out) fminl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/fminl.c" // BEGIN GLOBAL FUNCTION DECL: fmin .extern .func (.param .f64 %value_out) fmin (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fminl .visible .func (.param .f64 %value_out) fminl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fmin,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-fmodl.o/ 0 0 0 644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmodl .visible .func (.param .f64 %value_out) fmodl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/fmodl.c" // BEGIN GLOBAL FUNCTION DECL: fmod .extern .func (.param .f64 %value_out) fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fmodl .visible .func (.param .f64 %value_out) fmodl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fmod,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-frexpl.o/ 0 0 0 644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexpl .visible .func (.param .f64 %value_out) frexpl (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/frexpl.c" // BEGIN GLOBAL FUNCTION DECL: frexp .extern .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: frexpl .visible .func (.param .f64 %value_out) frexpl (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),frexp,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-hypotl.o/ 0 0 0 644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: hypotl .visible .func (.param .f64 %value_out) hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/hypotl.c" // BEGIN GLOBAL FUNCTION DECL: hypot .extern .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: hypotl .visible .func (.param .f64 %value_out) hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 41 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),hypot,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 61 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-ilogbl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ilogbl .visible .func (.param .u32 %value_out) ilogbl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/ilogbl.c" // BEGIN GLOBAL FUNCTION DECL: ilogb .extern .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ilogbl .visible .func (.param .u32 %value_out) ilogbl (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u32 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),ilogb,(%out_arg1); ld.param.u32 %r25,[%value_in]; } .loc 1 40 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-k_cos.o/ 0 0 0 644 3362 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .visible .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/k_cos.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_cos .visible .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r36; .reg .u32 %r38; .reg .f64 %r40; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .pred %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; mov.f64 %r55,%ar0; mov.f64 %r56,%ar1; .loc 1 75 2 mov.b64 %r57,%r55; shr.u64 %r58,%r57,32; cvt.u32.u64 %r59,%r58; .loc 1 76 5 and.b32 %r38,%r59,2147483647; .loc 1 77 4 setp.gt.s32 %r60,%r38,1044381695; @ %r60 bra $L2; .loc 1 78 10 cvt.rzi.s32.f64 %r61,%r55; .loc 1 78 8 setp.eq.u32 %r62,%r61,0; @ ! %r62 bra $L10; bra $L8; $L2: .loc 1 80 5 mul.f64 %r44,%r55,%r55; .loc 1 81 36 fma.rn.f64 %r23,%r44,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r24,%r23,%r44,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r25,%r24,%r44,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r26,%r25,%r44,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r27,%r26,%r44,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r50,%r27,%r44; .loc 1 82 4 setp.gt.s32 %r63,%r38,1070805810; @ %r63 bra $L5; $L7: .loc 1 83 36 mul.f64 %r64,%r55,%r56; .loc 1 83 33 neg.f64 %r65,%r64; fma.rn.f64 %r29,%r44,%r50,%r65; .loc 1 83 26 neg.f64 %r66,%r29; fma.rn.f64 %r30,%r44,0d3fe0000000000000,%r66; .loc 1 83 17 mov.f64 %r67,0d3ff0000000000000; sub.f64 %r54,%r67,%r30; bra $L1; $L5: .loc 1 85 8 setp.gt.s32 %r68,%r38,1072234496; @ %r68 bra $L9; .loc 1 88 10 add.u32 %r69,%r38,-2097152; cvt.u64.u32 %r70,%r69; shl.b64 %r74,%r70,32; mov.b64 %r36,%r74; .loc 1 91 9 mov.f64 %r75,0d3ff0000000000000; sub.f64 %r52,%r75,%r36; bra $L6; $L9: mov.f64 %r52,0d3fe7000000000000; .loc 1 86 6 mov.f64 %r36,0d3fd2000000000000; $L6: .loc 1 90 9 neg.f64 %r76,%r36; fma.rn.f64 %r40,%r44,0d3fe0000000000000,%r76; .loc 1 92 29 mul.f64 %r77,%r55,%r56; .loc 1 92 27 neg.f64 %r78,%r77; fma.rn.f64 %r34,%r44,%r50,%r78; .loc 1 92 21 sub.f64 %r79,%r40,%r34; .loc 1 92 15 sub.f64 %r54,%r52,%r79; bra $L1; $L8: .loc 1 78 29 mov.f64 %r54,0d3ff0000000000000; bra $L1; $L10: .loc 1 80 5 mul.f64 %r44,%r55,%r55; .loc 1 81 36 fma.rn.f64 %r45,%r44,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r46,%r44,%r45,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r47,%r44,%r46,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r48,%r44,%r47,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r49,%r44,%r48,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r50,%r44,%r49; bra $L7; $L1: .loc 1 94 1 mov.f64 %value,%r54; st.param.f64 [%value_out],%value; ret; } /645 0 0 0 644 25700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2 .visible .func (.param .u32 %value_out) __kernel_rem_pio2 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../newlib/libm/math/k_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN VAR DEF: init_jk .const .align 4 .u32 init_jk[4] = {2,3,4,6 }; // BEGIN VAR DEF: PIo2 .const .align 8 .u64 PIo2[8] = {4609753056584663040,4500296887714185216,4393339057296375808,4285399695318056960,4174867106174599168,4069606033725587456,3955147982449410048,3848874662444400640 }; // BEGIN GLOBAL FUNCTION DEF: __kernel_rem_pio2 .visible .func (.param .u32 %value_out) __kernel_rem_pio2 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .local .align 16 .b8 %frame_ar[560]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .f64 %r30; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r49; .reg .u32 %r53; .reg .u32 %r64; .reg .f64 %r65; .reg .f64 %r79; .reg .f64 %r82; .reg .u32 %r91; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .f64 %r106; .reg .u64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .u32 %r115; .reg .u32 %r116; .reg .f64 %r118; .reg .u32 %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .f64 %r123; .reg .u32 %r124; .reg .u32 %r127; .reg .u32 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .u32 %r135; .reg .f64 %r136; .reg .u64 %r137; .reg .f64 %r138; .reg .f64 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u32 %r152; .reg .u32 %r154; .reg .u64 %r160; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r184; .reg .f64 %r185; .reg .f64 %r187; .reg .f64 %r188; .reg .f64 %r189; .reg .u64 %r191; .reg .u64 %r193; .reg .u64 %r194; .reg .u32 %r197; .reg .u64 %r198; .reg .u64 %r200; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r206; .reg .u64 %r207; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r219; .reg .u64 %r220; .reg .f64 %r224; .reg .u64 %r227; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r235; .reg .u32 %r236; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .f64 %r252; .reg .u64 %r257; .reg .u64 %r258; .reg .u64 %r267; .reg .u64 %r268; .reg .u64 %r280; .reg .u64 %r282; .reg .u64 %r284; .reg .u64 %r285; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r304; .reg .u64 %r305; .reg .u32 %r306; .reg .u32 %r310; .reg .u64 %r311; .reg .u64 %r312; .reg .u32 %r319; .reg .u64 %r322; .reg .u64 %r323; .reg .u32 %r324; .reg .u32 %r325; .reg .u32 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .pred %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r336; .reg .u32 %r337; .reg .pred %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r346; .reg .u32 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .pred %r350; .reg .u64 %r352; .reg .u64 %r353; .reg .f64 %r354; .reg .f64 %r355; .reg .pred %r356; .reg .pred %r357; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u64 %r364; .reg .u64 %r365; .reg .u64 %r367; .reg .u64 %r368; .reg .u64 %r372; .reg .u32 %r373; .reg .u64 %r374; .reg .u64 %r375; .reg .f64 %r377; .reg .u32 %r378; .reg .u32 %r380; .reg .f64 %r381; .reg .pred %r382; .reg .f64 %r385; .reg .f64 %r387; .reg .f64 %r388; .reg .f64 %r390; .reg .u64 %r392; .reg .u64 %r393; .reg .u64 %r394; .reg .u64 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r408; .reg .u32 %r410; .reg .pred %r411; .reg .pred %r412; .reg .pred %r414; .reg .pred %r415; .reg .pred %r417; .reg .pred %r418; .reg .u64 %r419; .reg .u64 %r420; .reg .u64 %r421; .reg .u32 %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u64 %r426; .reg .u64 %r427; .reg .u64 %r428; .reg .u32 %r433; .reg .u32 %r434; .reg .u64 %r435; .reg .u64 %r437; .reg .u64 %r438; .reg .u32 %r441; .reg .u32 %r442; .reg .pred %r443; .reg .u64 %r447; .reg .u64 %r448; .reg .u64 %r449; .reg .u64 %r450; .reg .u32 %r455; .reg .u32 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u64 %r459; .reg .u64 %r460; .reg .u32 %r465; .reg .u32 %r466; .reg .pred %r467; .reg .f64 %r468; .reg .pred %r469; .reg .f64 %r472; .reg .pred %r473; .reg .pred %r474; .reg .u64 %r477; .reg .u64 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u64 %r483; .reg .u64 %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .u32 %r493; .reg .pred %r494; .reg .u32 %r495; .reg .pred %r496; .reg .u64 %r497; .reg .u64 %r498; .reg .u64 %r499; .reg .u64 %r501; .reg .u64 %r502; .reg .u64 %r504; .reg .u64 %r505; .reg .u64 %r507; .reg .u32 %r508; .reg .f64 %r511; .reg .pred %r512; .reg .u64 %r513; .reg .u64 %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u64 %r517; .reg .u64 %r518; .reg .u64 %r519; .reg .u32 %r521; .reg .pred %r522; .reg .u64 %r524; .reg .u32 %r525; .reg .pred %r526; .reg .u32 %r529; .reg .f64 %r530; .reg .pred %r531; .reg .f64 %r532; .reg .f64 %r533; .reg .u64 %r536; .reg .u64 %r537; .reg .u32 %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u64 %r542; .reg .u64 %r545; .reg .u64 %r546; .reg .u32 %r548; .reg .f64 %r549; .reg .f64 %r551; .reg .pred %r552; .reg .f64 %r561; .reg .u32 %r562; .reg .f64 %r563; .reg .pred %r564; .reg .f64 %r565; .reg .pred %r566; .reg .pred %r567; .reg .pred %r568; .reg .pred %r570; .reg .pred %r571; .reg .u64 %r573; .reg .u64 %r574; .reg .u64 %r576; .reg .f64 %r577; .reg .pred %r578; .reg .pred %r579; .reg .f64 %r580; .reg .pred %r581; .reg .f64 %r583; .reg .f64 %r584; .reg .pred %r585; .reg .f64 %r587; .reg .pred %r588; .reg .u64 %r591; .reg .u64 %r592; .reg .u64 %r596; .reg .u64 %r599; .reg .u32 %r600; .reg .u64 %r601; .reg .u64 %r602; .reg .f64 %r603; .reg .f64 %r604; .reg .pred %r605; .reg .u64 %r607; .reg .u64 %r608; .reg .u64 %r612; .reg .u32 %r613; .reg .u64 %r614; .reg .u64 %r616; .reg .f64 %r617; .reg .f64 %r618; .reg .pred %r619; .reg .u64 %r621; .reg .u64 %r622; .reg .f64 %r623; .reg .pred %r624; .reg .pred %r625; .reg .f64 %r626; .reg .f64 %r627; .reg .f64 %r628; .reg .u32 %r629; .reg .f64 %r630; .reg .pred %r631; .reg .pred %r632; .reg .pred %r633; .reg .pred %r634; .reg .pred %r635; .reg .pred %r636; .reg .pred %r637; .reg .pred %r638; .reg .pred %r639; .reg .pred %r640; .reg .f64 %r641; .reg .u64 %r649; .reg .u32 %r650; .reg .pred %r651; .reg .pred %r652; .reg .pred %r653; .reg .pred %r654; .reg .u64 %r656; .reg .pred %r657; .reg .u64 %r658; .reg .u64 %r659; .reg .u64 %r660; .reg .f64 %r661; .reg .u64 %r662; .reg .u64 %r663; .reg .pred %r664; .reg .pred %r665; .reg .pred %r666; .reg .u64 %r667; .reg .u32 %r668; .reg .u64 %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .pred %r674; .reg .u64 %r675; .reg .f64 %r676; mov.u64 %r322,%ar0; mov.u64 %r323,%ar1; mov.u32 %r324,%ar2; mov.u32 %r325,%ar3; mov.u32 %r326,%ar4; mov.u64 %r327,%ar5; .loc 1 176 5 cvta.const.u64 %r328,init_jk; cvt.s64.s32 %r329,%r326; shl.b64 %r330,%r329,2; add.u64 %r331,%r328,%r330; ld.u32 %r112,[%r331]; .loc 1 180 5 add.u32 %r650,%r325,-1; .loc 1 181 20 setp.lt.s32 %r332,%r324,-20; @ %r332 bra $L76; .loc 1 181 10 add.u32 %r333,%r324,-3; .loc 1 181 5 div.s32 %r96,%r333,24; .loc 1 182 17 add.u32 %r334,%r96,1; .loc 1 182 13 shl.b32 %r336,%r334,2; sub.u32 %r337,%r334,%r336; shl.b32 %r182,%r337,3; bra $L2; $L76: mov.u32 %r182,-24; .loc 1 181 29 mov.u32 %r96,0; $L2: .loc 1 182 5 add.u32 %r128,%r324,%r182; .loc 1 185 4 sub.u32 %r147,%r96,%r650; .loc 1 185 15 add.u32 %r115,%r112,%r650; .loc 1 186 11 setp.ge.s32 %r339,%r115,0; @ %r339 bra $L3; $L8: .loc 1 189 12 setp.lt.s32 %r654,%r112,0; @ %r654 bra $L4; mov.u64 %r305,%frame; mov.u32 %r306,%r650; add.u32 %r310,%r112,%r325; cvt.u64.u32 %r342,%r650; shl.b64 %r343,%r342,3; add.u64 %r344,%r322,8; add.u64 %r304,%r343,%r344; setp.ge.s32 %r653,%r650,0; add.u64 %r675,%frame,320; bra $L5; $L3: add.u64 %r311,%frame,320; cvt.s64.s32 %r345,%r147; shl.b64 %r346,%r345,2; add.u64 %r312,%r327,%r346; add.u32 %r347,%r115,1; add.u32 %r319,%r347,%r147; .loc 1 186 43 mov.f64 %r676,0d0000000000000000; $L7: setp.lt.s32 %r348,%r147,0; @ %r348 bra $L77; ld.u32 %r349,[%r312]; cvt.rn.f64.s32 %r109,%r349; bra $L6; $L77: mov.f64 %r109,%r676; $L6: .loc 1 186 29 st.f64 [%r311],%r109; .loc 1 186 20 add.u32 %r147,%r147,1; .loc 1 186 11 add.u64 %r311,%r311,8; add.u64 %r312,%r312,4; setp.ne.u32 %r350,%r147,%r319; @ %r350 bra $L7; bra $L8; $L10: cvt.s64.s32 %r352,%r306; shl.b64 %r353,%r352,3; add.u64 %r296,%r675,%r353; .loc 1 190 47 mov.u64 %r295,%r322; .loc 1 190 16 mov.f64 %r146,0d0000000000000000; $L9: .loc 1 190 35 ld.f64 %r354,[%r295]; ld.f64 %r355,[%r296]; fma.rn.f64 %r146,%r354,%r355,%r146; .loc 1 190 22 add.u64 %r295,%r295,8; add.u64 %r296,%r296,-8; setp.ne.u64 %r356,%r295,%r304; @ %r356 bra $L9; $L11: .loc 1 191 11 st.f64 [%r305],%r146; .loc 1 189 12 add.u64 %r305,%r305,8; add.u32 %r306,%r306,1; setp.eq.u32 %r357,%r306,%r310; @ %r357 bra $L4; $L5: .loc 1 190 22 @ %r653 bra $L10; .loc 1 190 16 mov.f64 %r146,0d0000000000000000; bra $L11; $L4: add.u64 %r659,%frame,480; cvt.s64.s32 %r360,%r112; shl.b64 %r361,%r360,2; add.u64 %r362,%r361,-8; add.u64 %r251,%r659,%r362; cvt.u64.u32 %r364,%r650; shl.b64 %r365,%r364,3; add.u64 %r227,%r322,%r365; .loc 1 176 5 mov.u32 %r95,%r112; setp.le.s32 %r657,%r128,0; add.u64 %r663,%frame,484; .loc 1 228 10 setp.eq.u32 %r664,%r128,1; setp.eq.u32 %r665,%r128,2; .loc 1 214 9 setp.ne.u32 %r666,%r128,0; add.u64 %r667,%frame,472; .loc 1 246 16 add.u32 %r668,%r112,-1; .loc 1 246 13 cvt.s64.s32 %r669,%r668; shl.b64 %r670,%r669,2; add.u64 %r671,%frame,%r670; add.u64 %r672,%r671,480; add.u64 %r673,%frame,320; setp.lt.s32 %r674,%r650,0; $L12: .loc 1 197 16 cvt.s64.s32 %r660,%r95; shl.b64 %r367,%r660,3; add.u64 %r368,%frame,%r367; ld.f64 %r145,[%r368]; .loc 1 197 24 setp.le.s32 %r652,%r95,0; @ %r652 bra $L13; mov.u64 %r284,%r659; add.u64 %r372,%r367,-8; add.u64 %r285,%frame,%r372; add.u32 %r373,%r95,-1; cvt.u64.u32 %r374,%r373; shl.b64 %r375,%r374,2; add.u64 %r294,%r375,%r663; $L14: .loc 1 198 42 mul.f64 %r377,%r145,0d3e70000000000000; .loc 1 198 24 cvt.rzi.s32.f64 %r378,%r377; .loc 1 198 12 cvt.rn.f64.s32 %r144,%r378; .loc 1 199 28 fma.rn.f64 %r30,%r144,0dc170000000000000,%r145; .loc 1 199 15 cvt.rzi.s32.f64 %r380,%r30; st.u32 [%r284],%r380; .loc 1 200 12 ld.f64 %r381,[%r285]; add.f64 %r145,%r144,%r381; .loc 1 197 24 add.u64 %r284,%r284,4; add.u64 %r285,%r285,-8; setp.ne.u64 %r382,%r284,%r294; @ %r382 bra $L14; $L13: .loc 1 204 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r145; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r385,[%value_in]; } .loc 1 205 11 mul.f64 %r387,%r385,0d3fc0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r387; call (%value_in),floor,(%out_arg1); ld.param.f64 %r388,[%value_in]; } .loc 1 205 4 fma.rn.f64 %r118,%r388,0dc020000000000000,%r385; .loc 1 206 5 cvt.rzi.s32.f64 %r97,%r118; .loc 1 207 7 cvt.rn.f64.s32 %r390,%r97; .loc 1 207 4 sub.f64 %r106,%r118,%r390; .loc 1 209 4 @ %r657 bra $L15; .loc 1 210 17 add.u32 %r36,%r95,-1; .loc 1 210 14 cvt.s64.s32 %r392,%r36; shl.b64 %r393,%r392,2; add.u64 %r394,%frame,%r393; add.u64 %r395,%r394,480; ld.u32 %r37,[%r395]; .loc 1 210 25 mov.u32 %r396,24; sub.u32 %r38,%r396,%r128; .loc 1 210 9 shr.s32 %r119,%r37,%r38; .loc 1 210 34 add.u32 %r97,%r97,%r119; .loc 1 211 19 shl.b32 %r397,%r119,%r38; .loc 1 211 15 sub.u32 %r42,%r37,%r397; st.u32 [%r395],%r42; .loc 1 212 24 mov.u32 %r403,23; sub.u32 %r402,%r403,%r128; .loc 1 212 9 shr.s32 %r91,%r42,%r402; bra $L16; $L15: .loc 1 214 9 @ %r666 bra $L17; .loc 1 214 27 add.u32 %r405,%r95,-1; .loc 1 214 24 cvt.s64.s32 %r406,%r405; shl.b64 %r407,%r406,2; add.u64 %r408,%frame,%r407; .loc 1 214 20 ld.u32 %r410,[%r408+480]; shr.s32 %r91,%r410,23; bra $L16; $L17: .loc 1 215 9 setp.ge.f64 %r411,%r106,0d3fe0000000000000; @ %r411 bra $L18; .loc 1 208 5 mov.u32 %r91,0; bra $L19; $L16: .loc 1 217 4 setp.le.s32 %r412,%r91,0; @ %r412 bra $L19; .loc 1 218 8 add.u32 %r97,%r97,1; .loc 1 219 15 @ ! %r652 bra $L75; bra $L78; $L87: .loc 1 215 20 mov.u32 %r91,2; $L75: .loc 1 220 5 ld.u32 %r121,[%frame+480]; .loc 1 222 9 setp.ne.u32 %r414,%r121,0; @ %r414 bra $L79; .loc 1 219 15 setp.eq.u32 %r415,%r95,1; @ %r415 bra $L20; add.u64 %r282,%frame,484; .loc 1 219 21 mov.u32 %r154,1; bra $L22; $L23: .loc 1 219 15 add.u64 %r282,%r282,4; setp.eq.u32 %r417,%r95,%r184; @ %r417 bra $L20; mov.u32 %r154,%r184; $L22: .loc 1 220 5 ld.u32 %r121,[%r282]; .loc 1 219 21 add.u32 %r184,%r154,1; .loc 1 222 9 setp.eq.u32 %r418,%r121,0; @ %r418 bra $L23; bra $L21; $L79: mov.u32 %r184,1; mov.u32 %r154,0; $L21: .loc 1 223 21 cvt.s64.s32 %r419,%r154; shl.b64 %r420,%r419,2; add.u64 %r421,%frame,%r420; .loc 1 223 32 mov.u32 %r424,16777216; sub.u32 %r423,%r424,%r121; .loc 1 223 21 st.u32 [%r421+480],%r423; .loc 1 219 15 setp.le.s32 %r425,%r95,%r184; @ %r425 bra $L80; .loc 1 220 5 cvt.s64.s32 %r426,%r184; shl.b64 %r427,%r426,2; add.u64 %r428,%frame,%r427; ld.u32 %r116,[%r428+480]; add.u64 %r268,%r659,%r427; add.u32 %r433,%r95,-1; sub.u32 %r434,%r433,%r184; cvt.u64.u32 %r435,%r434; add.u64 %r437,%r435,%r426; shl.b64 %r438,%r437,2; add.u64 %r280,%r438,%r663; .loc 1 225 28 mov.u32 %r442,16777215; $L24: sub.u32 %r441,%r442,%r116; .loc 1 225 17 st.u32 [%r268],%r441; .loc 1 219 15 add.u64 %r268,%r268,4; setp.eq.u64 %r443,%r268,%r280; @ %r443 bra $L81; .loc 1 220 5 ld.u32 %r116,[%r268]; bra $L24; $L78: .loc 1 218 20 mov.u32 %r121,0; bra $L20; $L80: .loc 1 223 10 mov.u32 %r121,1; bra $L20; $L81: mov.u32 %r121,1; $L20: .loc 1 227 8 @ %r657 bra $L25; .loc 1 228 10 @ %r664 bra $L26; @ %r665 bra $L27; bra $L25; $L26: .loc 1 230 19 add.u32 %r49,%r95,-1; cvt.s64.s32 %r447,%r49; shl.b64 %r448,%r447,2; add.u64 %r449,%frame,%r448; add.u64 %r450,%r449,480; ld.u32 %r456,[%r450]; and.b32 %r455,%r456,8388607; st.u32 [%r450],%r455; .loc 1 230 32 bra $L25; $L27: .loc 1 232 19 add.u32 %r53,%r95,-1; cvt.s64.s32 %r457,%r53; shl.b64 %r458,%r457,2; add.u64 %r459,%frame,%r458; add.u64 %r460,%r459,480; ld.u32 %r466,[%r460]; and.b32 %r465,%r466,4194303; st.u32 [%r460],%r465; $L25: .loc 1 235 8 setp.ne.u32 %r467,%r91,2; @ %r467 bra $L19; .loc 1 236 5 mov.f64 %r468,0d3ff0000000000000; sub.f64 %r106,%r468,%r106; .loc 1 237 5 setp.eq.u32 %r469,%r121,0; @ %r469 bra $L19; .loc 1 237 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r468; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r472,[%value_in]; } .loc 1 237 18 sub.f64 %r106,%r106,%r472; $L19: .loc 1 242 4 setp.neu.f64 %r473,%r106,0d0000000000000000; @ %r473 bra $L28; .loc 1 244 12 add.u32 %r127,%r95,-1; .loc 1 244 19 setp.gt.s32 %r474,%r112,%r127; @ %r474 bra $L29; shl.b64 %r258,%r660,2; add.u64 %r477,%r258,-4; add.u64 %r257,%r659,%r477; add.u64 %r480,%r667,%r258; sub.u32 %r481,%r95,%r112; add.u32 %r482,%r481,-1; cvt.u64.u32 %r483,%r482; shl.b64 %r484,%r483,2; sub.u64 %r267,%r480,%r484; .loc 1 243 8 mov.u32 %r39,0; $L30: .loc 1 244 31 ld.u32 %r485,[%r257]; or.b32 %r39,%r39,%r485; .loc 1 244 19 add.u64 %r257,%r257,-4; setp.ne.u64 %r486,%r257,%r267; @ %r486 bra $L30; .loc 1 245 8 setp.ne.u32 %r487,%r39,0; @ %r487 bra $L31; $L29: .loc 1 246 19 ld.u32 %r493,[%r672]; setp.ne.u32 %r494,%r493,0; @ %r494 bra $L32; mov.u64 %r250,%r251; .loc 1 246 8 mov.u32 %r124,1; $L33: .loc 1 246 24 add.u32 %r124,%r124,1; .loc 1 246 19 add.u64 %r250,%r250,-4; ld.u32 %r495,[%r250+4]; setp.eq.u32 %r496,%r495,0; @ %r496 bra $L33; bra $L115; $L32: .loc 1 248 8 add.u32 %r122,%r95,1; .loc 1 248 19 mov.u32 %r152,%r122; bra $L35; $L115: .loc 1 248 8 add.u32 %r122,%r95,1; .loc 1 248 19 add.u32 %r152,%r95,%r124; $L35: cvt.s64.s32 %r229,%r122; cvt.s64.s32 %r497,%r96; add.u64 %r498,%r497,%r229; shl.b64 %r499,%r498,2; add.u64 %r230,%r327,%r499; add.u32 %r236,%r650,%r122; cvt.s64.s32 %r501,%r236; shl.b64 %r502,%r501,3; add.u64 %r235,%r673,%r502; cvt.s64.s32 %r504,%r325; add.u64 %r505,%r660,%r504; sub.u64 %r507,%r505,%r501; shl.b64 %r249,%r507,3; add.u64 %r662,%r249,-8; $L38: .loc 1 249 17 ld.u32 %r508,[%r230]; cvt.rn.f64.s32 %r187,%r508; .loc 1 249 15 st.f64 [%r235],%r187; .loc 1 250 23 @ %r674 bra $L82; add.u64 %r220,%r662,%r235; mov.u64 %r219,%r322; .loc 1 250 17 mov.f64 %r123,0d0000000000000000; $L37: .loc 1 250 36 ld.f64 %r511,[%r219]; fma.rn.f64 %r123,%r511,%r187,%r123; .loc 1 250 23 setp.eq.u64 %r512,%r219,%r227; @ %r512 bra $L36; .loc 1 250 45 ld.f64 %r187,[%r220]; add.u64 %r219,%r219,8; add.u64 %r220,%r220,-8; bra $L37; $L82: .loc 1 250 17 mov.f64 %r123,0d0000000000000000; $L36: .loc 1 251 12 shl.b64 %r513,%r229,3; add.u64 %r514,%frame,%r513; st.f64 [%r514],%r123; .loc 1 248 15 add.u64 %r229,%r229,1; add.u64 %r230,%r230,4; add.u64 %r235,%r235,8; cvt.u32.u64 %r515,%r229; setp.ge.s32 %r516,%r152,%r515; @ %r516 bra $L38; mov.u32 %r95,%r152; bra $L12; $L31: .loc 1 260 18 add.u32 %r128,%r128,-24; .loc 1 261 14 cvt.s64.s32 %r517,%r127; shl.b64 %r518,%r517,2; add.u64 %r519,%frame,%r518; .loc 1 261 18 ld.u32 %r521,[%r519+480]; setp.ne.u32 %r522,%r521,0; @ %r522 bra $L39; add.u64 %r524,%r258,-8; add.u64 %r215,%r659,%r524; $L40: .loc 1 261 27 add.u32 %r127,%r127,-1; .loc 1 261 33 add.u32 %r128,%r128,-24; .loc 1 261 18 add.u64 %r215,%r215,-4; ld.u32 %r525,[%r215+4]; setp.eq.u32 %r526,%r525,0; @ %r526 bra $L40; bra $L39; $L28: .loc 1 263 10 neg.s32 %r529,%r128; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r106; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r529; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r530,[%value_in]; } .loc 1 264 8 setp.ge.f64 %r531,%r530,0d4170000000000000; @ ! %r531 bra $L116; .loc 1 265 35 mul.f64 %r532,%r530,0d3e70000000000000; .loc 1 265 17 cvt.rzi.s32.f64 %r64,%r532; .loc 1 265 6 cvt.rn.f64.s32 %r533,%r64; .loc 1 266 25 fma.rn.f64 %r65,%r533,0dc170000000000000,%r530; .loc 1 266 10 shl.b64 %r536,%r660,2; add.u64 %r537,%frame,%r536; .loc 1 266 12 cvt.rzi.s32.f64 %r539,%r65; st.u32 [%r537+480],%r539; .loc 1 267 6 add.u32 %r127,%r95,1; .loc 1 267 15 add.u32 %r128,%r128,24; .loc 1 268 10 cvt.s64.s32 %r540,%r127; shl.b64 %r541,%r540,2; add.u64 %r542,%frame,%r541; st.u32 [%r542+480],%r64; bra $L39; $L116: .loc 1 269 20 shl.b64 %r545,%r660,2; add.u64 %r546,%frame,%r545; .loc 1 269 22 cvt.rzi.s32.f64 %r548,%r530; st.u32 [%r546+480],%r548; .loc 1 269 20 mov.u32 %r127,%r95; $L39: .loc 1 273 7 mov.f64 %r549,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r549; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r551,[%value_in]; } mov.f64 %r143,%r551; .loc 1 274 12 setp.lt.s32 %r552,%r127,0; @ %r552 bra $L43; cvt.s64.s32 %r649,%r127; shl.b64 %r204,%r649,2; add.u64 %r203,%r659,%r204; shl.b64 %r207,%r649,3; add.u64 %r200,%frame,%r207; add.u64 %r214,%frame,476; mov.u64 %r206,%r200; $L44: .loc 1 275 16 ld.u32 %r562,[%r203]; cvt.rn.f64.s32 %r561,%r562; .loc 1 275 15 mul.f64 %r563,%r561,%r143; .loc 1 275 11 st.f64 [%r206],%r563; .loc 1 275 33 mul.f64 %r143,%r143,0d3e70000000000000; .loc 1 274 12 add.u64 %r203,%r203,-4; add.u64 %r206,%r206,-8; setp.ne.u64 %r564,%r203,%r214; @ %r564 bra $L44; add.u64 %r658,%frame,160; mov.u64 %r198,%r658; mov.u32 %r142,%r127; mov.u32 %r197,0; .loc 1 280 26 mov.f64 %r661,0d3ff921fb40000000; bra $L45; $L47: .loc 1 280 51 ld.f64 %r185,[%r194]; $L49: .loc 1 280 44 ld.f64 %r565,[%r193]; fma.rn.f64 %r140,%r565,%r185,%r140; .loc 1 280 37 add.u32 %r141,%r141,1; .loc 1 280 26 setp.lt.s32 %r566,%r112,%r141; @ %r566 bra $L46; add.u64 %r193,%r193,8; add.u64 %r194,%r194,8; setp.le.s32 %r567,%r141,%r197; @ %r567 bra $L47; bra $L46; $L83: .loc 1 280 12 mov.f64 %r140,0d0000000000000000; $L46: .loc 1 281 15 st.f64 [%r198],%r140; .loc 1 279 17 add.u32 %r142,%r142,-1; .loc 1 279 12 add.u32 %r197,%r197,1; add.u64 %r198,%r198,8; add.u64 %r200,%r200,-8; setp.eq.u32 %r568,%r142,-1; @ %r568 bra $L48; $L45: .loc 1 280 26 @ %r654 bra $L83; cvta.const.u64 %r194,PIo2; mov.u64 %r193,%r200; mov.f64 %r185,%r661; .loc 1 280 12 mov.f64 %r140,0d0000000000000000; .loc 1 280 18 mov.u32 %r141,0; bra $L49; $L71: .loc 1 301 14 setp.ne.u32 %r570,%r127,0; @ %r570 bra $L50; bra $L117; $L118: .loc 1 306 14 setp.gt.s32 %r571,%r127,1; @ %r571 bra $L51; $L117: .loc 1 311 10 mov.f64 %r129,0d0000000000000000; bra $L52; $L69: add.u64 %r160,%r658,%r207; add.u64 %r573,%r658,-8; add.u64 %r574,%r573,%r207; shl.b64 %r576,%r649,3; sub.u64 %r151,%r574,%r576; .loc 1 285 2 mov.f64 %r138,0d0000000000000000; $L53: .loc 1 288 26 ld.f64 %r577,[%r160]; add.f64 %r138,%r138,%r577; .loc 1 288 14 add.u64 %r160,%r160,-8; setp.ne.u64 %r578,%r151,%r160; @ %r578 bra $L53; bra $L74; $L85: .loc 1 285 2 mov.f64 %r138,0d0000000000000000; $L74: .loc 1 289 21 setp.eq.u32 %r579,%r91,0; @ %r579 bra $L54; neg.f64 %r138,%r138; $L54: .loc 1 289 8 st.f64 [%r323],%r138; .loc 1 290 3 bra $L55; $L56: .loc 1 294 26 ld.f64 %r580,[%r148]; add.f64 %r136,%r136,%r580; .loc 1 294 14 add.u64 %r148,%r148,-8; setp.ne.u64 %r581,%r110,%r148; @ %r581 bra $L56; bra $L73; $L84: .loc 1 293 6 mov.f64 %r136,0d0000000000000000; $L73: .loc 1 295 21 setp.eq.u32 %r651,%r91,0; @ %r651 bra $L57; neg.f64 %r583,%r136; .loc 1 295 8 st.f64 [%r323],%r583; .loc 1 296 6 ld.f64 %r584,[%frame+160]; sub.f64 %r108,%r584,%r136; .loc 1 297 13 setp.le.s32 %r585,%r127,0; @ %r585 bra $L58; $L66: add.u64 %r150,%frame,168; .loc 1 297 9 mov.u32 %r135,1; $L59: .loc 1 297 26 ld.f64 %r587,[%r150]; add.f64 %r108,%r108,%r587; .loc 1 297 19 add.u32 %r135,%r135,1; .loc 1 297 13 add.u64 %r150,%r150,8; setp.ge.s32 %r588,%r127,%r135; @ %r588 bra $L59; .loc 1 298 21 @ %r651 bra $L60; $L58: neg.f64 %r108,%r108; $L60: .loc 1 298 8 st.f64 [%r323+8],%r108; .loc 1 299 3 bra $L55; $L50: .loc 1 302 27 shl.b64 %r591,%r649,3; add.u64 %r592,%frame,%r591; ld.f64 %r131,[%r592+160]; add.u64 %r596,%r591,-8; add.u64 %r40,%r658,%r596; add.u64 %r656,%frame,144; add.u64 %r599,%r656,%r591; add.u32 %r600,%r127,-1; cvt.u64.u32 %r601,%r600; shl.b64 %r602,%r601,3; sub.u64 %r191,%r599,%r602; $L61: .loc 1 302 19 ld.f64 %r79,[%r40]; mov.f64 %r252,%r131; .loc 1 302 15 add.f64 %r131,%r131,%r79; .loc 1 303 24 sub.f64 %r603,%r79,%r131; .loc 1 303 14 add.f64 %r604,%r603,%r252; st.f64 [%r40+8],%r604; .loc 1 304 15 st.f64 [%r40],%r131; .loc 1 301 14 add.u64 %r40,%r40,-8; setp.ne.u64 %r605,%r40,%r191; @ %r605 bra $L61; bra $L118; $L51: .loc 1 307 27 shl.b64 %r607,%r649,3; add.u64 %r608,%frame,%r607; ld.f64 %r130,[%r608+160]; add.u64 %r612,%r607,-8; add.u64 %r98,%r658,%r612; add.u32 %r613,%r127,-2; cvt.u64.u32 %r614,%r613; shl.b64 %r181,%r614,3; add.u64 %r616,%r656,%r607; sub.u64 %r23,%r616,%r181; $L63: .loc 1 307 19 ld.f64 %r82,[%r98]; mov.f64 %r224,%r130; .loc 1 307 15 add.f64 %r130,%r130,%r82; .loc 1 308 24 sub.f64 %r617,%r82,%r130; .loc 1 308 14 add.f64 %r618,%r617,%r224; st.f64 [%r98+8],%r618; .loc 1 309 15 st.f64 [%r98],%r130; .loc 1 306 14 add.u64 %r98,%r98,-8; setp.ne.u64 %r619,%r23,%r98; @ %r619 bra $L63; add.u64 %r107,%r658,%r607; add.u64 %r621,%r658,-8; add.u64 %r622,%r621,%r607; sub.u64 %r99,%r622,%r181; mov.f64 %r129,0d0000000000000000; $L64: .loc 1 311 33 ld.f64 %r623,[%r107]; add.f64 %r129,%r129,%r623; .loc 1 311 21 add.u64 %r107,%r107,-8; setp.ne.u64 %r624,%r99,%r107; @ %r624 bra $L64; bra $L52; $L86: .loc 1 311 10 mov.f64 %r129,0d0000000000000000; $L52: .loc 1 313 17 ld.f64 %r188,[%frame+160]; .loc 1 313 32 ld.f64 %r189,[%frame+168]; .loc 1 312 5 setp.ne.u32 %r625,%r91,0; @ %r625 bra $L65; .loc 1 313 12 st.f64 [%r323],%r188; .loc 1 313 27 st.f64 [%r323+8],%r189; .loc 1 313 42 st.f64 [%r323+16],%r129; bra $L55; $L65: .loc 1 315 14 neg.f64 %r626,%r188; .loc 1 315 12 st.f64 [%r323],%r626; .loc 1 315 29 neg.f64 %r627,%r189; .loc 1 315 27 st.f64 [%r323+8],%r627; .loc 1 315 44 neg.f64 %r628,%r129; .loc 1 315 42 st.f64 [%r323+16],%r628; $L55: .loc 1 318 10 and.b32 %r629,%r97,7; bra $L119; $L57: .loc 1 295 8 st.f64 [%r323],%r136; .loc 1 296 6 ld.f64 %r630,[%frame+160]; sub.f64 %r108,%r630,%r136; .loc 1 297 13 setp.gt.s32 %r631,%r127,0; @ %r631 bra $L66; bra $L60; $L48: .loc 1 285 2 setp.gt.s32 %r632,%r326,2; @ %r632 bra $L67; setp.gt.s32 %r633,%r326,0; @ %r633 bra $L68; setp.eq.u32 %r634,%r326,0; @ %r634 bra $L69; bra $L55; $L67: setp.eq.u32 %r635,%r326,3; @ %r635 bra $L71; bra $L55; $L43: setp.gt.s32 %r636,%r326,2; @ %r636 bra $L72; setp.gt.s32 %r637,%r326,0; @ %r637 bra $L84; setp.eq.u32 %r638,%r326,0; @ %r638 bra $L85; bra $L55; $L72: setp.eq.u32 %r639,%r326,3; @ %r639 bra $L86; bra $L55; $L18: .loc 1 218 8 add.u32 %r97,%r97,1; .loc 1 219 15 setp.gt.s32 %r640,%r95,0; @ %r640 bra $L87; .loc 1 236 5 mov.f64 %r641,0d3ff0000000000000; sub.f64 %r106,%r641,%r106; mov.u32 %r91,2; bra $L19; $L68: shl.b64 %r137,%r649,3; add.u64 %r148,%r658,%r137; add.u64 %r110,%frame,152; .loc 1 293 6 mov.f64 %r136,0d0000000000000000; bra $L56; $L119: .loc 1 319 1 mov.u32 %value,%r629; st.param.u32 [%value_out],%value; ret; } lib_a-k_sin.o/ 0 0 0 644 2234 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .visible .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libm/math/k_sin.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_sin .visible .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; mov.f64 %r40,%ar0; mov.f64 %r41,%ar1; mov.u32 %r42,%ar2; .loc 1 68 2 mov.b64 %r43,%r40; shr.u64 %r44,%r43,32; cvt.u32.u64 %r45,%r44; .loc 1 69 5 and.b32 %r46,%r45,2147483647; .loc 1 70 4 setp.gt.s32 %r47,%r46,1044381695; @ %r47 bra $L2; .loc 1 71 9 cvt.rzi.s32.f64 %r48,%r40; .loc 1 71 8 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L5; $L2: .loc 1 72 4 mul.f64 %r33,%r40,%r40; .loc 1 73 4 mul.f64 %r34,%r40,%r33; .loc 1 74 27 fma.rn.f64 %r23,%r33,0d3de5d93a5acfd57c,0dbe5ae5e68a2b9ceb; .loc 1 74 21 fma.rn.f64 %r24,%r23,%r33,0d3ec71de357b1fe7d; .loc 1 74 15 fma.rn.f64 %r25,%r24,%r33,0dbf2a01a019c161d5; .loc 1 74 4 fma.rn.f64 %r35,%r25,%r33,0d3f8111111110f8a6; .loc 1 75 4 setp.ne.u32 %r50,%r42,0; @ %r50 bra $L4; .loc 1 75 26 fma.rn.f64 %r26,%r33,%r35,0dbfc5555555555549; .loc 1 75 20 fma.rn.f64 %r39,%r26,%r34,%r40; bra $L1; $L4: .loc 1 76 34 mul.f64 %r51,%r34,%r35; .loc 1 76 32 neg.f64 %r52,%r51; fma.rn.f64 %r28,%r41,0d3fe0000000000000,%r52; .loc 1 76 37 neg.f64 %r53,%r41; fma.rn.f64 %r29,%r28,%r33,%r53; .loc 1 76 40 fma.rn.f64 %r30,%r34,0d3fc5555555555549,%r29; .loc 1 76 20 sub.f64 %r39,%r40,%r30; bra $L1; $L5: .loc 1 71 27 mov.f64 %r39,%r40; $L1: .loc 1 77 1 mov.f64 %value,%r39; st.param.f64 [%value_out],%value; ret; } /665 0 0 0 644 22607 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_standard .visible .func (.param .f64 %value_out) __kernel_standard (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libm/math/k_standard.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __kernel_standard .visible .func (.param .f64 %value_out) __kernel_standard (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r131; .reg .pred %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r137; .reg .pred %r138; .reg .pred %r139; .reg .pred %r140; .reg .pred %r141; .reg .pred %r142; .reg .pred %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r157; .reg .pred %r158; .reg .pred %r159; .reg .pred %r160; .reg .pred %r161; .reg .pred %r162; .reg .pred %r163; .reg .pred %r164; .reg .pred %r165; .reg .pred %r166; .reg .pred %r167; .reg .pred %r168; .reg .pred %r169; .reg .pred %r170; .reg .pred %r171; .reg .pred %r172; .reg .pred %r173; .reg .pred %r174; .reg .pred %r175; .reg .pred %r176; .reg .pred %r177; .reg .pred %r178; .reg .pred %r179; .reg .pred %r180; .reg .pred %r181; .reg .pred %r182; .reg .u64 %r183; .reg .u32 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u64 %r187; .reg .u32 %r188; .reg .u64 %r189; .reg .u32 %r190; .reg .u64 %r191; .reg .u32 %r192; .reg .u64 %r193; .reg .u32 %r194; .reg .u64 %r195; .reg .u32 %r196; .reg .u64 %r197; .reg .u32 %r198; .reg .u64 %r199; .reg .u32 %r200; .reg .u64 %r201; .reg .u32 %r202; .reg .u64 %r203; .reg .u32 %r204; .reg .u64 %r205; .reg .u32 %r206; .reg .u64 %r207; .reg .u32 %r208; .reg .u64 %r209; .reg .u32 %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r213; .reg .u32 %r214; .reg .u64 %r215; .reg .u32 %r216; .reg .u64 %r217; .reg .u32 %r218; .reg .u64 %r219; .reg .u32 %r220; .reg .pred %r221; .reg .f64 %r223; .reg .pred %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u32 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .f64 %r231; .reg .u64 %r232; .reg .u32 %r233; .reg .pred %r234; .reg .u64 %r235; .reg .u32 %r236; .reg .f64 %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .f64 %r240; .reg .u64 %r241; .reg .u32 %r242; .reg .f64 %r243; .reg .u64 %r244; .reg .u32 %r245; .reg .f64 %r246; .reg .u64 %r247; .reg .u32 %r248; .reg .f64 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .u64 %r252; .reg .u32 %r253; .reg .pred %r254; .reg .u64 %r255; .reg .u32 %r256; .reg .f64 %r257; .reg .f64 %r259; .reg .u64 %r260; .reg .u32 %r261; .reg .u64 %r262; .reg .u32 %r263; .reg .u64 %r264; .reg .u32 %r265; .reg .u64 %r266; .reg .u32 %r267; .reg .u64 %r268; .reg .u32 %r269; .reg .u64 %r270; .reg .u32 %r271; .reg .u64 %r272; .reg .u32 %r273; .reg .f64 %r274; .reg .f64 %r276; .reg .u64 %r277; .reg .u32 %r278; .reg .u64 %r279; .reg .u32 %r280; mov.f64 %r65,%ar0; mov.f64 %r66,%ar1; mov.u32 %r67,%ar2; .loc 1 93 2 setp.eq.u32 %r68,%r67,101; @ %r68 bra $L2; setp.gt.s32 %r69,%r67,101; @ %r69 bra $L3; setp.eq.u32 %r70,%r67,22; @ %r70 bra $L4; setp.gt.s32 %r71,%r67,22; @ %r71 bra $L5; setp.eq.u32 %r72,%r67,11; @ %r72 bra $L6; setp.gt.s32 %r73,%r67,11; @ %r73 bra $L7; setp.eq.u32 %r74,%r67,6; @ %r74 bra $L8; setp.gt.s32 %r75,%r67,6; @ %r75 bra $L9; setp.eq.u32 %r76,%r67,3; @ %r76 bra $L10; setp.gt.s32 %r77,%r67,3; @ %r77 bra $L11; setp.eq.u32 %r78,%r67,1; @ %r78 bra $L2; setp.eq.u32 %r79,%r67,2; @ %r79 bra $L12; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L11: .loc 1 93 2 setp.eq.u32 %r80,%r67,4; @ %r80 bra $L14; setp.eq.u32 %r81,%r67,5; @ %r81 bra $L15; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L9: .loc 1 93 2 setp.eq.u32 %r82,%r67,9; @ %r82 bra $L16; setp.gt.s32 %r83,%r67,9; @ %r83 bra $L17; setp.eq.u32 %r84,%r67,7; @ %r84 bra $L18; setp.eq.u32 %r85,%r67,8; @ %r85 bra $L19; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L17: .loc 1 93 2 setp.eq.u32 %r86,%r67,10; @ %r86 bra $L20; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L7: .loc 1 93 2 setp.eq.u32 %r87,%r67,17; @ %r87 bra $L21; setp.gt.s32 %r88,%r67,17; @ %r88 bra $L22; setp.eq.u32 %r89,%r67,14; @ %r89 bra $L23; setp.gt.s32 %r90,%r67,14; @ %r90 bra $L24; setp.eq.u32 %r91,%r67,12; @ %r91 bra $L25; setp.eq.u32 %r92,%r67,13; @ %r92 bra $L26; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L24: .loc 1 93 2 setp.eq.u32 %r93,%r67,15; @ %r93 bra $L27; setp.eq.u32 %r94,%r67,16; @ %r94 bra $L28; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L22: .loc 1 93 2 setp.eq.u32 %r95,%r67,20; @ %r95 bra $L79; setp.gt.s32 %r96,%r67,20; @ %r96 bra $L29; setp.eq.u32 %r97,%r67,18; @ %r97 bra $L30; setp.eq.u32 %r98,%r67,19; @ %r98 bra $L31; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L29: .loc 1 93 2 setp.eq.u32 %r99,%r67,21; @ %r99 bra $L32; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L5: .loc 1 93 2 setp.eq.u32 %r100,%r67,33; @ %r100 bra $L33; setp.gt.s32 %r101,%r67,33; @ %r101 bra $L34; setp.eq.u32 %r102,%r67,28; @ %r102 bra $L35; setp.gt.s32 %r103,%r67,28; @ %r103 bra $L36; setp.eq.u32 %r104,%r67,25; @ %r104 bra $L37; setp.gt.s32 %r105,%r67,25; @ %r105 bra $L38; setp.eq.u32 %r106,%r67,23; @ %r106 bra $L39; setp.eq.u32 %r107,%r67,24; @ %r107 bra $L40; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L38: .loc 1 93 2 setp.eq.u32 %r108,%r67,26; @ %r108 bra $L41; setp.eq.u32 %r109,%r67,27; @ %r109 bra $L42; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L36: .loc 1 93 2 setp.eq.u32 %r110,%r67,31; @ %r110 bra $L43; setp.gt.s32 %r111,%r67,31; @ %r111 bra $L44; setp.eq.u32 %r112,%r67,29; @ %r112 bra $L45; setp.eq.u32 %r113,%r67,30; @ %r113 bra $L46; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L44: .loc 1 93 2 setp.eq.u32 %r114,%r67,32; @ %r114 bra $L47; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L34: .loc 1 93 2 setp.eq.u32 %r115,%r67,38; @ %r115 bra $L48; setp.gt.s32 %r116,%r67,38; @ %r116 bra $L49; setp.eq.u32 %r117,%r67,36; @ %r117 bra $L50; setp.gt.s32 %r118,%r67,36; @ %r118 bra $L51; setp.eq.u32 %r119,%r67,34; @ %r119 bra $L52; setp.eq.u32 %r120,%r67,35; @ %r120 bra $L53; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L51: .loc 1 93 2 setp.eq.u32 %r121,%r67,37; @ %r121 bra $L54; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L49: .loc 1 93 2 setp.eq.u32 %r122,%r67,41; @ %r122 bra $L55; setp.gt.s32 %r123,%r67,41; @ %r123 bra $L56; setp.eq.u32 %r124,%r67,39; @ %r124 bra $L57; setp.eq.u32 %r125,%r67,40; @ %r125 bra $L58; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L56: .loc 1 93 2 setp.ne.u32 %r126,%r67,42; selp.f64 %r64,0d0000000000000000,0d3ff0000000000000,%r126; bra $L1; $L3: setp.eq.u32 %r127,%r67,122; @ %r127 bra $L4; setp.gt.s32 %r128,%r67,122; @ %r128 bra $L59; setp.eq.u32 %r129,%r67,112; @ %r129 bra $L25; setp.gt.s32 %r130,%r67,112; @ %r130 bra $L60; setp.eq.u32 %r131,%r67,107; @ %r131 bra $L18; setp.gt.s32 %r132,%r67,107; @ %r132 bra $L61; setp.eq.u32 %r133,%r67,104; @ %r133 bra $L14; setp.gt.s32 %r134,%r67,104; @ %r134 bra $L62; setp.eq.u32 %r135,%r67,102; @ %r135 bra $L12; setp.eq.u32 %r136,%r67,103; @ %r136 bra $L10; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L62: .loc 1 93 2 setp.eq.u32 %r137,%r67,105; @ %r137 bra $L15; setp.eq.u32 %r138,%r67,106; @ %r138 bra $L8; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L61: .loc 1 93 2 setp.eq.u32 %r139,%r67,110; @ %r139 bra $L20; setp.gt.s32 %r140,%r67,110; @ %r140 bra $L63; setp.eq.u32 %r141,%r67,108; @ %r141 bra $L19; setp.eq.u32 %r142,%r67,109; @ %r142 bra $L16; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L63: .loc 1 93 2 setp.eq.u32 %r143,%r67,111; @ %r143 bra $L6; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L60: .loc 1 93 2 setp.eq.u32 %r144,%r67,117; @ %r144 bra $L21; setp.gt.s32 %r145,%r67,117; @ %r145 bra $L64; setp.eq.u32 %r146,%r67,115; @ %r146 bra $L27; setp.gt.s32 %r147,%r67,115; @ %r147 bra $L65; setp.eq.u32 %r148,%r67,113; @ %r148 bra $L26; setp.eq.u32 %r149,%r67,114; @ %r149 bra $L23; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L65: .loc 1 93 2 setp.eq.u32 %r150,%r67,116; @ %r150 bra $L28; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L64: .loc 1 93 2 setp.eq.u32 %r151,%r67,120; @ %r151 bra $L81; setp.gt.s32 %r152,%r67,120; @ %r152 bra $L66; setp.eq.u32 %r153,%r67,118; @ %r153 bra $L30; setp.eq.u32 %r154,%r67,119; @ %r154 bra $L31; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L66: .loc 1 93 2 setp.eq.u32 %r155,%r67,121; @ %r155 bra $L32; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L59: .loc 1 93 2 setp.eq.u32 %r156,%r67,133; @ %r156 bra $L33; setp.gt.s32 %r157,%r67,133; @ %r157 bra $L67; setp.eq.u32 %r158,%r67,128; @ %r158 bra $L35; setp.gt.s32 %r159,%r67,128; @ %r159 bra $L68; setp.eq.u32 %r160,%r67,125; @ %r160 bra $L37; setp.gt.s32 %r161,%r67,125; @ %r161 bra $L69; setp.eq.u32 %r162,%r67,123; @ %r162 bra $L39; setp.eq.u32 %r163,%r67,124; @ %r163 bra $L40; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L69: .loc 1 93 2 setp.eq.u32 %r164,%r67,126; @ %r164 bra $L41; setp.eq.u32 %r165,%r67,127; @ %r165 bra $L42; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L68: .loc 1 93 2 setp.eq.u32 %r166,%r67,131; @ %r166 bra $L43; setp.gt.s32 %r167,%r67,131; @ %r167 bra $L70; setp.eq.u32 %r168,%r67,129; @ %r168 bra $L45; setp.eq.u32 %r169,%r67,130; @ %r169 bra $L46; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L70: .loc 1 93 2 setp.eq.u32 %r170,%r67,132; @ %r170 bra $L47; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L67: .loc 1 93 2 setp.eq.u32 %r171,%r67,138; @ %r171 bra $L48; setp.gt.s32 %r172,%r67,138; @ %r172 bra $L71; setp.eq.u32 %r173,%r67,136; @ %r173 bra $L50; setp.gt.s32 %r174,%r67,136; @ %r174 bra $L72; setp.eq.u32 %r175,%r67,134; @ %r175 bra $L52; setp.eq.u32 %r176,%r67,135; @ %r176 bra $L53; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L72: .loc 1 93 2 setp.eq.u32 %r177,%r67,137; @ %r177 bra $L54; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L71: .loc 1 93 2 setp.eq.u32 %r178,%r67,141; @ %r178 bra $L55; setp.gt.s32 %r179,%r67,141; @ %r179 bra $L73; setp.eq.u32 %r180,%r67,139; @ %r180 bra $L57; setp.eq.u32 %r181,%r67,140; @ %r181 bra $L58; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L73: .loc 1 93 2 setp.ne.u32 %r182,%r67,142; selp.f64 %r64,0d0000000000000000,0d3ff0000000000000,%r182; bra $L1; $L2: .loc 1 98 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r183,[%value_in]; } .loc 1 98 9 mov.u32 %r184,33; st.u32 [%r183],%r184; .loc 1 97 10 mov.f64 %r64,0d0000000000000000; .loc 1 99 3 bra $L1; $L12: .loc 1 104 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r185,[%value_in]; } .loc 1 104 9 mov.u32 %r186,33; st.u32 [%r185],%r186; .loc 1 103 10 mov.f64 %r64,0d0000000000000000; .loc 1 105 3 bra $L1; $L10: .loc 1 110 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r187,[%value_in]; } .loc 1 110 9 mov.u32 %r188,33; st.u32 [%r187],%r188; .loc 1 109 10 mov.f64 %r64,0d0000000000000000; .loc 1 111 3 bra $L1; $L14: .loc 1 116 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r189,[%value_in]; } .loc 1 116 9 mov.u32 %r190,34; st.u32 [%r189],%r190; .loc 1 115 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 117 3 bra $L1; $L15: .loc 1 122 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r191,[%value_in]; } .loc 1 122 9 mov.u32 %r192,34; st.u32 [%r191],%r192; .loc 1 121 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 123 3 bra $L1; $L8: .loc 1 128 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r193,[%value_in]; } .loc 1 128 9 mov.u32 %r194,34; st.u32 [%r193],%r194; .loc 1 127 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 129 3 bra $L1; $L18: .loc 1 134 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r195,[%value_in]; } .loc 1 134 9 mov.u32 %r196,34; st.u32 [%r195],%r196; .loc 1 133 10 mov.f64 %r64,0d0000000000000000; .loc 1 135 3 bra $L1; $L19: .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r197,[%value_in]; } .loc 1 140 9 mov.u32 %r198,33; st.u32 [%r197],%r198; .loc 1 139 10 mov.f64 %r64,0dfff0000000000000; .loc 1 141 3 bra $L1; $L16: .loc 1 146 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r199,[%value_in]; } .loc 1 146 9 mov.u32 %r200,33; st.u32 [%r199],%r200; .loc 1 145 10 mov.f64 %r64,0dfff0000000000000; .loc 1 147 3 bra $L1; $L20: .loc 1 152 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r201,[%value_in]; } .loc 1 152 9 mov.u32 %r202,33; st.u32 [%r201],%r202; .loc 1 151 10 mov.f64 %r64,0dfff0000000000000; .loc 1 153 3 bra $L1; $L6: .loc 1 158 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r203,[%value_in]; } .loc 1 158 9 mov.u32 %r204,33; st.u32 [%r203],%r204; .loc 1 157 10 mov.f64 %r64,0dfff0000000000000; .loc 1 159 3 bra $L1; $L25: .loc 1 164 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r205,[%value_in]; } .loc 1 164 9 mov.u32 %r206,33; st.u32 [%r205],%r206; .loc 1 163 10 mov.f64 %r64,0dfff0000000000000; .loc 1 165 3 bra $L1; $L26: .loc 1 170 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r207,[%value_in]; } .loc 1 170 9 mov.u32 %r208,33; st.u32 [%r207],%r208; .loc 1 169 10 mov.f64 %r64,0dfff0000000000000; .loc 1 171 3 bra $L1; $L23: .loc 1 176 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r209,[%value_in]; } .loc 1 176 9 mov.u32 %r210,34; st.u32 [%r209],%r210; .loc 1 175 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 177 3 bra $L1; $L27: .loc 1 182 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r211,[%value_in]; } .loc 1 182 9 mov.u32 %r212,33; st.u32 [%r211],%r212; .loc 1 181 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 183 3 bra $L1; $L28: .loc 1 188 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r213,[%value_in]; } .loc 1 188 9 mov.u32 %r214,33; st.u32 [%r213],%r214; .loc 1 187 10 mov.f64 %r64,0dfff0000000000000; .loc 1 189 3 bra $L1; $L21: .loc 1 194 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r215,[%value_in]; } .loc 1 194 9 mov.u32 %r216,33; st.u32 [%r215],%r216; .loc 1 193 10 mov.f64 %r64,0dfff0000000000000; .loc 1 195 3 bra $L1; $L30: .loc 1 200 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r217,[%value_in]; } .loc 1 200 9 mov.u32 %r218,33; st.u32 [%r217],%r218; .loc 1 199 10 mov.f64 %r64,0dfff0000000000000; .loc 1 201 3 bra $L1; $L31: .loc 1 206 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r219,[%value_in]; } .loc 1 206 9 mov.u32 %r220,33; st.u32 [%r219],%r220; .loc 1 205 10 mov.f64 %r64,0dfff0000000000000; .loc 1 207 3 bra $L1; $L32: .loc 1 219 5 setp.lt.f64 %r221,%r65,0d0000000000000000; @ %r221 bra $L74; $L76: .loc 1 217 10 mov.f64 %r64,0d7ff0000000000000; bra $L75; $L74: .loc 1 218 5 mul.f64 %r63,%r66,0d3fe0000000000000; .loc 1 219 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),rint,(%out_arg1); ld.param.f64 %r223,[%value_in]; } .loc 1 219 12 setp.eq.f64 %r224,%r223,%r63; @ %r224 bra $L76; .loc 1 220 12 mov.f64 %r64,0dfff0000000000000; $L75: .loc 1 221 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r225,[%value_in]; } .loc 1 221 9 mov.u32 %r226,34; st.u32 [%r225],%r226; .loc 1 222 3 bra $L1; $L4: .loc 1 227 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r227,[%value_in]; } .loc 1 227 9 mov.u32 %r228,34; st.u32 [%r227],%r228; .loc 1 226 10 mov.f64 %r64,0d0000000000000000; .loc 1 228 3 bra $L1; $L39: .loc 1 233 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r229,[%value_in]; } .loc 1 233 9 mov.u32 %r230,33; st.u32 [%r229],%r230; .loc 1 232 10 mov.f64 %r64,0dfff0000000000000; .loc 1 234 3 bra $L1; $L40: .loc 1 238 10 mov.f64 %r231,0d0000000000000000; div.rn.f64 %r64,%r231,%r231; .loc 1 239 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r232,[%value_in]; } .loc 1 239 9 mov.u32 %r233,33; st.u32 [%r232],%r233; .loc 1 240 3 bra $L1; $L37: .loc 1 244 34 setp.gt.f64 %r234,%r65,0d0000000000000000; selp.f64 %r64,0d7ff0000000000000,0dfff0000000000000,%r234; .loc 1 245 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r235,[%value_in]; } .loc 1 245 9 mov.u32 %r236,34; st.u32 [%r235],%r236; .loc 1 246 3 bra $L1; $L41: .loc 1 250 10 mov.f64 %r237,0d0000000000000000; div.rn.f64 %r64,%r237,%r237; .loc 1 251 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r238,[%value_in]; } .loc 1 251 9 mov.u32 %r239,33; st.u32 [%r238],%r239; .loc 1 252 3 bra $L1; $L42: .loc 1 256 10 mov.f64 %r240,0d0000000000000000; div.rn.f64 %r64,%r240,%r240; .loc 1 257 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r241,[%value_in]; } .loc 1 257 9 mov.u32 %r242,33; st.u32 [%r241],%r242; .loc 1 258 17 bra $L1; $L35: .loc 1 262 10 mov.f64 %r243,0d0000000000000000; div.rn.f64 %r64,%r243,%r243; .loc 1 263 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r244,[%value_in]; } .loc 1 263 9 mov.u32 %r245,33; st.u32 [%r244],%r245; .loc 1 264 17 bra $L1; $L45: .loc 1 268 10 mov.f64 %r246,0d0000000000000000; div.rn.f64 %r64,%r246,%r246; .loc 1 269 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r247,[%value_in]; } .loc 1 269 9 mov.u32 %r248,33; st.u32 [%r247],%r248; .loc 1 270 17 bra $L1; $L46: .loc 1 274 10 mov.f64 %r249,0d0000000000000000; div.rn.f64 %r64,%r249,%r249; .loc 1 275 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r250,[%value_in]; } .loc 1 275 9 mov.u32 %r251,33; st.u32 [%r250],%r251; .loc 1 276 17 bra $L1; $L43: .loc 1 280 10 div.rn.f64 %r64,%r65,0d0000000000000000; .loc 1 281 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r252,[%value_in]; } .loc 1 281 9 mov.u32 %r253,33; st.u32 [%r252],%r253; .loc 1 282 17 bra $L1; $L47: .loc 1 286 32 setp.gt.f64 %r254,%r65,0d0000000000000000; selp.f64 %r64,0d7ff0000000000000,0dfff0000000000000,%r254; .loc 1 287 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r255,[%value_in]; } .loc 1 287 9 mov.u32 %r256,34; st.u32 [%r255],%r256; .loc 1 288 3 bra $L1; $L33: .loc 1 292 12 mov.f64 %r257,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r257; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r259,[%value_in]; } mov.f64 %r64,%r259; .loc 1 293 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r260,[%value_in]; } .loc 1 293 9 mov.u32 %r261,34; st.u32 [%r260],%r261; .loc 1 294 3 bra $L1; $L52: .loc 1 299 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r262,[%value_in]; } .loc 1 299 9 mov.u32 %r263,34; st.u32 [%r262],%r263; .loc 1 298 10 mov.f64 %r64,0d0000000000000000; .loc 1 300 3 bra $L1; $L53: .loc 1 305 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r264,[%value_in]; } .loc 1 305 9 mov.u32 %r265,34; st.u32 [%r264],%r265; .loc 1 304 10 mov.f64 %r64,0d0000000000000000; .loc 1 306 3 bra $L1; $L50: .loc 1 311 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r266,[%value_in]; } .loc 1 311 9 mov.u32 %r267,34; st.u32 [%r266],%r267; .loc 1 310 10 mov.f64 %r64,0d0000000000000000; .loc 1 312 3 bra $L1; $L54: .loc 1 317 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r268,[%value_in]; } .loc 1 317 9 mov.u32 %r269,34; st.u32 [%r268],%r269; .loc 1 316 10 mov.f64 %r64,0d0000000000000000; .loc 1 318 3 bra $L1; $L48: .loc 1 323 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r270,[%value_in]; } .loc 1 323 9 mov.u32 %r271,34; st.u32 [%r270],%r271; .loc 1 322 10 mov.f64 %r64,0d0000000000000000; .loc 1 324 3 bra $L1; $L57: .loc 1 329 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r272,[%value_in]; } .loc 1 329 9 mov.u32 %r273,34; st.u32 [%r272],%r273; .loc 1 328 10 mov.f64 %r64,0d0000000000000000; .loc 1 330 3 bra $L1; $L58: .loc 1 334 12 mov.f64 %r274,0d7ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r274; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r276,[%value_in]; } mov.f64 %r64,%r276; .loc 1 335 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r277,[%value_in]; } .loc 1 335 9 mov.u32 %r278,34; st.u32 [%r277],%r278; .loc 1 336 3 bra $L1; $L55: .loc 1 341 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r279,[%value_in]; } .loc 1 341 9 mov.u32 %r280,33; st.u32 [%r279],%r280; .loc 1 340 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 342 3 bra $L1; $L79: .loc 1 93 2 mov.f64 %r64,0d3ff0000000000000; bra $L1; $L81: mov.f64 %r64,0d3ff0000000000000; $L1: .loc 1 351 1 mov.f64 %value,%r64; st.param.f64 [%value_out],%value; ret; } lib_a-k_tan.o/ 0 0 0 644 5953 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_tan .visible .func (.param .f64 %value_out) __kernel_tan (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libm/math/k_tan.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __kernel_tan .visible .func (.param .f64 %value_out) __kernel_tan (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r50; .reg .f64 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .f64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .pred %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r95; .reg .u32 %r97; .reg .u32 %r98; .reg .pred %r99; .reg .f64 %r101; .reg .pred %r103; .reg .u64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .u64 %r107; .reg .pred %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .f64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .u64 %r129; .reg .pred %r131; mov.f64 %r84,%ar0; mov.f64 %r85,%ar1; mov.u32 %r86,%ar2; .loc 1 85 2 mov.b64 %r87,%r84; shr.u64 %r88,%r87,32; cvt.u32.u64 %r53,%r88; .loc 1 86 5 and.b32 %r54,%r53,2147483647; .loc 1 87 4 setp.gt.s32 %r90,%r54,1043333119; @ %r90 bra $L2; .loc 1 88 6 cvt.rzi.s32.f64 %r91,%r84; .loc 1 88 5 setp.ne.u32 %r92,%r91,0; @ ! %r92 bra $L13; setp.le.s32 %r131,%r54,1072010279; bra $L3; $L13: .loc 1 91 20 add.u32 %r93,%r86,1; .loc 1 91 16 cvt.u32.u64 %r95,%r87; or.b32 %r97,%r93,%r95; or.b32 %r98,%r97,%r54; .loc 1 91 6 setp.ne.u32 %r99,%r98,0; @ %r99 bra $L4; .loc 1 91 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r84; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 91 39 rcp.rn.f64 %r83,%r101; bra $L1; $L4: .loc 1 93 7 setp.eq.u32 %r103,%r86,1; @ %r103 bra $L8; .loc 1 97 12 add.f64 %r55,%r84,%r85; .loc 1 98 6 mov.b64 %r79,%r55; and.b64 %r104,%r79,-4294967296; mov.b64 %r56,%r104; .loc 1 99 17 sub.f64 %r105,%r56,%r84; .loc 1 99 8 sub.f64 %r57,%r85,%r105; .loc 1 100 12 mov.f64 %r106,0dbff0000000000000; div.rn.f64 %r58,%r106,%r55; .loc 1 101 6 mov.b64 %r80,%r58; and.b64 %r107,%r80,-4294967296; mov.b64 %r59,%r107; .loc 1 102 8 fma.rn.f64 %r60,%r56,%r59,0d3ff0000000000000; .loc 1 103 24 fma.rn.f64 %r29,%r57,%r59,%r60; .loc 1 103 15 fma.rn.f64 %r83,%r29,%r58,%r59; bra $L1; $L2: .loc 1 108 4 setp.le.s32 %r131,%r54,1072010279; @ %r131 bra $L3; .loc 1 109 8 setp.ge.s32 %r109,%r53,0; @ %r109 bra $L6; .loc 1 109 18 neg.f64 %r84,%r84; .loc 1 109 26 neg.f64 %r85,%r85; $L6: .loc 1 110 8 mov.f64 %r110,0d3fe921fb54442d18; sub.f64 %r62,%r110,%r84; .loc 1 111 8 mov.f64 %r112,0d3c81a62633145c07; sub.f64 %r111,%r112,%r85; .loc 1 112 8 add.f64 %r84,%r111,%r62; .loc 1 112 17 mov.f64 %r85,0d0000000000000000; $L3: .loc 1 114 4 mul.f64 %r65,%r84,%r84; .loc 1 115 5 mul.f64 %r66,%r65,%r65; .loc 1 120 42 fma.rn.f64 %r30,%r66,0dbef375cbdb605373,0d3f147e88a03792a6; .loc 1 120 34 fma.rn.f64 %r31,%r30,%r66,0d3f4344d8f2f26501; .loc 1 120 26 fma.rn.f64 %r32,%r31,%r66,0d3f6d6d22c9560328; .loc 1 120 18 fma.rn.f64 %r33,%r32,%r66,0d3f9664f48406d637; .loc 1 120 4 fma.rn.f64 %r67,%r33,%r66,0d3fc111111110fe7a; .loc 1 121 46 fma.rn.f64 %r34,%r66,0d3efb2a7074bf7ad4,0d3f12b80f32f0a7e9; .loc 1 121 37 fma.rn.f64 %r35,%r34,%r66,0d3f3026f71a8d1068; .loc 1 121 29 fma.rn.f64 %r36,%r35,%r66,0d3f57dbc8fee08315; .loc 1 121 21 fma.rn.f64 %r37,%r36,%r66,0d3f8226e3e96e8493; .loc 1 121 13 fma.rn.f64 %r38,%r37,%r66,0d3faba1ba1bb341fe; .loc 1 122 4 mul.f64 %r68,%r84,%r65; .loc 1 123 17 fma.rn.f64 %r39,%r38,%r65,%r67; .loc 1 123 20 fma.rn.f64 %r40,%r39,%r68,%r85; .loc 1 123 4 fma.rn.f64 %r69,%r40,%r65,%r85; .loc 1 124 4 fma.rn.f64 %r70,%r68,0d3fd5555555555563,%r69; .loc 1 125 4 add.f64 %r83,%r84,%r70; .loc 1 126 4 @ %r131 bra $L7; .loc 1 127 8 cvt.rn.f64.s32 %r76,%r86; .loc 1 128 50 mul.f64 %r114,%r83,%r83; .loc 1 128 55 add.f64 %r115,%r83,%r76; .loc 1 128 52 div.rn.f64 %r116,%r114,%r115; .loc 1 128 58 sub.f64 %r117,%r116,%r70; .loc 1 128 47 sub.f64 %r118,%r84,%r117; .loc 1 128 40 fma.rn.f64 %r50,%r118,0dc000000000000000,%r76; .loc 1 128 28 shr.s32 %r120,%r53,30; .loc 1 128 33 and.b32 %r121,%r120,2; .loc 1 128 23 mov.u32 %r123,1; sub.u32 %r122,%r123,%r121; .loc 1 128 13 cvt.rn.f64.s32 %r124,%r122; .loc 1 128 37 mul.f64 %r83,%r124,%r50; bra $L1; $L7: .loc 1 130 4 setp.eq.u32 %r125,%r86,1; @ %r125 bra $L1; .loc 1 136 6 mov.b64 %r81,%r83; and.b64 %r126,%r81,-4294967296; mov.b64 %r71,%r126; .loc 1 137 16 sub.f64 %r127,%r71,%r84; .loc 1 137 9 sub.f64 %r72,%r70,%r127; .loc 1 138 13 mov.f64 %r128,0dbff0000000000000; div.rn.f64 %r73,%r128,%r83; .loc 1 139 6 mov.b64 %r82,%r73; and.b64 %r129,%r82,-4294967296; mov.b64 %r74,%r129; .loc 1 140 9 fma.rn.f64 %r75,%r71,%r74,0d3ff0000000000000; .loc 1 141 19 fma.rn.f64 %r52,%r72,%r74,%r75; .loc 1 141 14 fma.rn.f64 %r83,%r52,%r73,%r74; bra $L1; $L8: .loc 1 94 13 mov.f64 %r83,%r84; $L1: .loc 1 143 1 mov.f64 %value,%r83; st.param.f64 [%value_out],%value; ret; } lib_a-kf_cos.o/ 0 0 0 644 3061 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .visible .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/kf_cos.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_cosf .visible .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r39; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; mov.f32 %r53,%ar0; mov.f32 %r54,%ar1; .loc 1 40 2 mov.b32 %r36,%r53; .loc 1 41 5 and.b32 %r37,%r36,2147483647; .loc 1 42 4 setp.gt.s32 %r55,%r37,838860799; @ %r55 bra $L2; .loc 1 43 10 cvt.rzi.s32.f32 %r56,%r53; .loc 1 43 8 setp.eq.u32 %r57,%r56,0; @ ! %r57 bra $L10; bra $L8; $L2: .loc 1 45 5 mul.f32 %r44,%r53,%r53; .loc 1 46 36 fma.rn.f32 %r23,%r44,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r24,%r23,%r44,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r25,%r24,%r44,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r26,%r25,%r44,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r27,%r26,%r44,0f3d2aaaab; .loc 1 46 5 mul.f32 %r50,%r27,%r44; .loc 1 47 4 setp.gt.s32 %r58,%r37,1050253721; @ %r58 bra $L5; $L7: .loc 1 48 43 mul.f32 %r59,%r53,%r54; .loc 1 48 40 neg.f32 %r60,%r59; fma.rn.f32 %r29,%r44,%r50,%r60; .loc 1 48 33 neg.f32 %r61,%r29; fma.rn.f32 %r30,%r44,0f3f000000,%r61; .loc 1 48 17 mov.f32 %r62,0f3f800000; sub.f32 %r52,%r62,%r30; bra $L1; $L5: .loc 1 50 8 setp.gt.s32 %r63,%r37,1061683200; @ %r63 bra $L9; .loc 1 53 10 add.u32 %r64,%r37,-16777216; mov.b32 %r35,%r64; .loc 1 56 9 mov.f32 %r65,0f3f800000; sub.f32 %r51,%r65,%r35; bra $L6; $L9: mov.f32 %r51,0f3f380000; .loc 1 51 6 mov.f32 %r35,0f3e900000; $L6: .loc 1 55 9 neg.f32 %r66,%r35; fma.rn.f32 %r39,%r44,0f3f000000,%r66; .loc 1 57 29 mul.f32 %r67,%r53,%r54; .loc 1 57 27 neg.f32 %r68,%r67; fma.rn.f32 %r33,%r44,%r50,%r68; .loc 1 57 21 sub.f32 %r69,%r39,%r33; .loc 1 57 15 sub.f32 %r52,%r51,%r69; bra $L1; $L8: .loc 1 43 29 mov.f32 %r52,0f3f800000; bra $L1; $L10: .loc 1 45 5 mul.f32 %r44,%r53,%r53; .loc 1 46 36 fma.rn.f32 %r45,%r44,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r46,%r44,%r45,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r47,%r44,%r46,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r48,%r44,%r47,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r49,%r44,%r48,0f3d2aaaab; .loc 1 46 5 mul.f32 %r50,%r44,%r49; bra $L7; $L1: .loc 1 59 1 mov.f32 %value,%r52; st.param.f32 [%value_out],%value; ret; } /685 0 0 0 644 25462 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2f .visible .func (.param .u32 %value_out) __kernel_rem_pio2f (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../newlib/libm/math/kf_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: floorf .extern .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); // BEGIN VAR DEF: init_jk .const .align 4 .u32 init_jk[3] = {4,7,9 }; // BEGIN VAR DEF: PIo2 .const .align 4 .u32 PIo2[11] = {1070137344,972029952,937033728,866254848,780402688,726663168,667025408,584056832,532938752,465960960,390332416 }; // BEGIN GLOBAL FUNCTION DEF: __kernel_rem_pio2f .visible .func (.param .u32 %value_out) __kernel_rem_pio2f (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .local .align 16 .b8 %frame_ar[320]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .f32 %r30; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r49; .reg .u32 %r53; .reg .f32 %r65; .reg .f32 %r80; .reg .f32 %r83; .reg .u32 %r92; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .f32 %r107; .reg .u64 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .u64 %r111; .reg .u32 %r113; .reg .u32 %r116; .reg .u32 %r117; .reg .f32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .f32 %r124; .reg .u32 %r125; .reg .f32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .u32 %r136; .reg .f32 %r137; .reg .u64 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .f32 %r143; .reg .u32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r148; .reg .u32 %r149; .reg .u64 %r150; .reg .u64 %r152; .reg .u64 %r153; .reg .u32 %r154; .reg .u32 %r156; .reg .u64 %r162; .reg .u64 %r182; .reg .u32 %r183; .reg .u32 %r185; .reg .f32 %r186; .reg .f32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .u64 %r192; .reg .u64 %r194; .reg .u64 %r195; .reg .u32 %r198; .reg .u64 %r199; .reg .u64 %r201; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r207; .reg .u64 %r211; .reg .u64 %r215; .reg .u64 %r216; .reg .f32 %r220; .reg .u64 %r223; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r231; .reg .u32 %r232; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .f32 %r248; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r276; .reg .u64 %r278; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r290; .reg .u64 %r291; .reg .u64 %r292; .reg .u64 %r300; .reg .u64 %r301; .reg .u32 %r302; .reg .u32 %r306; .reg .u64 %r307; .reg .u64 %r308; .reg .u32 %r315; .reg .u64 %r318; .reg .u64 %r319; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u64 %r323; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .pred %r328; .reg .u32 %r329; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r336; .reg .pred %r337; .reg .u64 %r340; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .u32 %r345; .reg .pred %r346; .reg .u32 %r347; .reg .pred %r348; .reg .u64 %r350; .reg .u64 %r351; .reg .f32 %r352; .reg .f32 %r353; .reg .pred %r354; .reg .pred %r355; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r365; .reg .u64 %r366; .reg .u64 %r370; .reg .u32 %r371; .reg .u64 %r372; .reg .u64 %r373; .reg .f32 %r375; .reg .u32 %r376; .reg .u32 %r378; .reg .f32 %r379; .reg .pred %r380; .reg .f32 %r383; .reg .f32 %r385; .reg .f32 %r386; .reg .f32 %r388; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u64 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r400; .reg .u32 %r401; .reg .u32 %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .u64 %r406; .reg .u32 %r408; .reg .pred %r409; .reg .pred %r410; .reg .pred %r412; .reg .pred %r413; .reg .pred %r415; .reg .pred %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .u64 %r419; .reg .u32 %r421; .reg .u32 %r422; .reg .pred %r423; .reg .u64 %r424; .reg .u64 %r425; .reg .u64 %r426; .reg .u32 %r431; .reg .u32 %r432; .reg .u64 %r433; .reg .u64 %r435; .reg .u64 %r436; .reg .u32 %r439; .reg .u32 %r440; .reg .pred %r441; .reg .u64 %r445; .reg .u64 %r446; .reg .u64 %r447; .reg .u64 %r448; .reg .u32 %r453; .reg .u32 %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u32 %r463; .reg .u32 %r464; .reg .pred %r465; .reg .f32 %r466; .reg .pred %r467; .reg .f32 %r470; .reg .pred %r471; .reg .pred %r472; .reg .u64 %r475; .reg .u64 %r478; .reg .u32 %r479; .reg .u32 %r480; .reg .u64 %r481; .reg .u64 %r482; .reg .u32 %r483; .reg .pred %r484; .reg .pred %r485; .reg .u32 %r491; .reg .pred %r492; .reg .u32 %r493; .reg .pred %r494; .reg .u64 %r495; .reg .u64 %r496; .reg .u64 %r497; .reg .u64 %r499; .reg .u64 %r500; .reg .u64 %r502; .reg .u64 %r503; .reg .u64 %r505; .reg .u32 %r506; .reg .f32 %r509; .reg .pred %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u32 %r513; .reg .pred %r514; .reg .u64 %r515; .reg .u64 %r516; .reg .u64 %r517; .reg .u32 %r519; .reg .pred %r520; .reg .u64 %r522; .reg .u32 %r523; .reg .pred %r524; .reg .u32 %r527; .reg .f32 %r528; .reg .pred %r529; .reg .f32 %r530; .reg .u32 %r531; .reg .u64 %r534; .reg .u64 %r535; .reg .u32 %r537; .reg .u64 %r538; .reg .u64 %r539; .reg .u64 %r540; .reg .u32 %r542; .reg .u64 %r544; .reg .u64 %r545; .reg .u32 %r547; .reg .f32 %r548; .reg .f32 %r550; .reg .pred %r551; .reg .f32 %r554; .reg .u32 %r555; .reg .f32 %r556; .reg .pred %r557; .reg .f32 %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r563; .reg .pred %r564; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r569; .reg .f32 %r570; .reg .pred %r571; .reg .pred %r572; .reg .f32 %r573; .reg .pred %r574; .reg .f32 %r576; .reg .f32 %r577; .reg .pred %r578; .reg .f32 %r580; .reg .pred %r581; .reg .u64 %r584; .reg .u64 %r585; .reg .u64 %r589; .reg .u64 %r592; .reg .u32 %r593; .reg .u64 %r594; .reg .u64 %r595; .reg .f32 %r596; .reg .f32 %r597; .reg .pred %r598; .reg .u64 %r600; .reg .u64 %r601; .reg .u64 %r605; .reg .u32 %r606; .reg .u64 %r607; .reg .u64 %r609; .reg .f32 %r610; .reg .f32 %r611; .reg .pred %r612; .reg .u64 %r614; .reg .u64 %r615; .reg .f32 %r616; .reg .pred %r617; .reg .pred %r618; .reg .f32 %r619; .reg .f32 %r620; .reg .f32 %r621; .reg .u32 %r622; .reg .f32 %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .pred %r627; .reg .pred %r628; .reg .pred %r629; .reg .pred %r630; .reg .pred %r631; .reg .pred %r632; .reg .pred %r633; .reg .f32 %r634; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .u32 %r645; .reg .u64 %r646; .reg .u64 %r647; .reg .pred %r648; .reg .pred %r649; .reg .pred %r650; .reg .pred %r651; .reg .pred %r653; .reg .f32 %r654; .reg .u64 %r655; .reg .u64 %r656; .reg .pred %r657; .reg .pred %r658; .reg .pred %r659; .reg .u64 %r660; .reg .u32 %r661; .reg .u64 %r662; .reg .u64 %r663; .reg .u64 %r664; .reg .u64 %r665; .reg .u64 %r666; .reg .pred %r667; .reg .u64 %r668; .reg .f32 %r669; mov.u64 %r318,%ar0; mov.u64 %r319,%ar1; mov.u32 %r320,%ar2; mov.u32 %r321,%ar3; mov.u32 %r322,%ar4; mov.u64 %r323,%ar5; .loc 1 66 5 cvta.const.u64 %r324,init_jk; cvt.s64.s32 %r325,%r322; shl.b64 %r326,%r325,2; add.u64 %r327,%r324,%r326; ld.u32 %r113,[%r327]; .loc 1 70 5 add.u32 %r645,%r321,-1; .loc 1 71 19 setp.lt.s32 %r328,%r320,-4; @ %r328 bra $L76; .loc 1 71 10 add.u32 %r329,%r320,-3; .loc 1 71 5 shr.s32 %r332,%r329,31; and.b32 %r333,%r332,7; add.u32 %r334,%r333,%r329; shr.s32 %r97,%r334,3; .loc 1 72 16 add.u32 %r336,%r97,1; .loc 1 72 12 shl.b32 %r183,%r336,3; bra $L2; $L76: mov.u32 %r183,8; .loc 1 71 28 mov.u32 %r97,0; $L2: .loc 1 72 5 sub.u32 %r129,%r320,%r183; .loc 1 75 4 sub.u32 %r149,%r97,%r645; .loc 1 75 15 add.u32 %r116,%r113,%r645; .loc 1 76 11 setp.ge.s32 %r337,%r116,0; @ %r337 bra $L3; $L8: .loc 1 79 12 setp.lt.s32 %r651,%r113,0; @ %r651 bra $L4; mov.u64 %r301,%frame; mov.u32 %r302,%r645; add.u32 %r306,%r113,%r321; cvt.u64.u32 %r340,%r645; shl.b64 %r341,%r340,2; add.u64 %r342,%r318,4; add.u64 %r300,%r341,%r342; setp.ge.s32 %r650,%r645,0; add.u64 %r668,%frame,160; bra $L5; $L3: add.u64 %r307,%frame,160; cvt.s64.s32 %r343,%r149; shl.b64 %r344,%r343,2; add.u64 %r308,%r323,%r344; add.u32 %r345,%r116,1; add.u32 %r315,%r345,%r149; .loc 1 76 43 mov.f32 %r669,0f00000000; $L7: setp.lt.s32 %r346,%r149,0; @ %r346 bra $L77; ld.u32 %r347,[%r308]; cvt.rn.f32.s32 %r110,%r347; bra $L6; $L77: mov.f32 %r110,%r669; $L6: .loc 1 76 29 st.f32 [%r307],%r110; .loc 1 76 20 add.u32 %r149,%r149,1; .loc 1 76 11 add.u64 %r307,%r307,4; add.u64 %r308,%r308,4; setp.ne.u32 %r348,%r149,%r315; @ %r348 bra $L7; bra $L8; $L10: cvt.s64.s32 %r350,%r302; shl.b64 %r351,%r350,2; add.u64 %r292,%r668,%r351; .loc 1 80 47 mov.u64 %r291,%r318; .loc 1 80 16 mov.f32 %r148,0f00000000; $L9: .loc 1 80 35 ld.f32 %r352,[%r291]; ld.f32 %r353,[%r292]; fma.rn.f32 %r148,%r352,%r353,%r148; .loc 1 80 22 add.u64 %r291,%r291,4; add.u64 %r292,%r292,-4; setp.ne.u64 %r354,%r291,%r300; @ %r354 bra $L9; $L11: .loc 1 81 11 st.f32 [%r301],%r148; .loc 1 79 12 add.u64 %r301,%r301,4; add.u32 %r302,%r302,1; setp.eq.u32 %r355,%r302,%r306; @ %r355 bra $L4; $L5: .loc 1 80 22 @ %r650 bra $L10; .loc 1 80 16 mov.f32 %r148,0f00000000; bra $L11; $L4: add.u64 %r643,%frame,240; cvt.s64.s32 %r358,%r113; shl.b64 %r359,%r358,2; add.u64 %r360,%r359,-8; add.u64 %r247,%r643,%r360; cvt.u64.u32 %r362,%r645; shl.b64 %r363,%r362,2; add.u64 %r223,%r318,%r363; .loc 1 66 5 mov.u32 %r96,%r113; setp.le.s32 %r653,%r129,0; add.u64 %r656,%frame,244; .loc 1 118 10 setp.eq.u32 %r657,%r129,1; setp.eq.u32 %r658,%r129,2; .loc 1 104 9 setp.ne.u32 %r659,%r129,0; add.u64 %r660,%frame,232; .loc 1 136 16 add.u32 %r661,%r113,-1; .loc 1 136 13 cvt.s64.s32 %r662,%r661; shl.b64 %r663,%r662,2; add.u64 %r664,%frame,%r663; add.u64 %r665,%r664,240; add.u64 %r666,%frame,160; setp.lt.s32 %r667,%r645,0; $L12: .loc 1 87 16 cvt.s64.s32 %r642,%r96; shl.b64 %r365,%r642,2; add.u64 %r366,%frame,%r365; ld.f32 %r146,[%r366]; .loc 1 87 24 setp.le.s32 %r649,%r96,0; @ %r649 bra $L13; mov.u64 %r280,%r643; add.u64 %r370,%r365,-4; add.u64 %r281,%frame,%r370; add.u32 %r371,%r96,-1; cvt.u64.u32 %r372,%r371; shl.b64 %r373,%r372,2; add.u64 %r290,%r373,%r656; $L14: .loc 1 88 40 mul.f32 %r375,%r146,0f3b800000; .loc 1 88 23 cvt.rzi.s32.f32 %r376,%r375; .loc 1 88 12 cvt.rn.f32.s32 %r145,%r376; .loc 1 89 28 fma.rn.f32 %r30,%r145,0fc3800000,%r146; .loc 1 89 15 cvt.rzi.s32.f32 %r378,%r30; st.u32 [%r280],%r378; .loc 1 90 12 ld.f32 %r379,[%r281]; add.f32 %r146,%r145,%r379; .loc 1 87 24 add.u64 %r280,%r280,4; add.u64 %r281,%r281,-4; setp.ne.u64 %r380,%r280,%r290; @ %r380 bra $L14; $L13: .loc 1 94 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r146; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r383,[%value_in]; } .loc 1 95 18 mul.f32 %r385,%r383,0f3e000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r385; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r386,[%value_in]; } .loc 1 95 4 fma.rn.f32 %r119,%r386,0fc1000000,%r383; .loc 1 96 5 cvt.rzi.s32.f32 %r98,%r119; .loc 1 97 7 cvt.rn.f32.s32 %r388,%r98; .loc 1 97 4 sub.f32 %r107,%r119,%r388; .loc 1 99 4 @ %r653 bra $L15; .loc 1 100 17 add.u32 %r36,%r96,-1; .loc 1 100 14 cvt.s64.s32 %r390,%r36; shl.b64 %r391,%r390,2; add.u64 %r392,%frame,%r391; add.u64 %r393,%r392,240; ld.u32 %r37,[%r393]; .loc 1 100 24 mov.u32 %r394,8; sub.u32 %r38,%r394,%r129; .loc 1 100 9 shr.s32 %r120,%r37,%r38; .loc 1 100 33 add.u32 %r98,%r98,%r120; .loc 1 101 19 shl.b32 %r395,%r120,%r38; .loc 1 101 15 sub.u32 %r42,%r37,%r395; st.u32 [%r393],%r42; .loc 1 102 23 mov.u32 %r401,7; sub.u32 %r400,%r401,%r129; .loc 1 102 9 shr.s32 %r92,%r42,%r400; bra $L16; $L15: .loc 1 104 9 @ %r659 bra $L17; .loc 1 104 27 add.u32 %r403,%r96,-1; .loc 1 104 24 cvt.s64.s32 %r404,%r403; shl.b64 %r405,%r404,2; add.u64 %r406,%frame,%r405; .loc 1 104 20 ld.u32 %r408,[%r406+240]; shr.s32 %r92,%r408,7; bra $L16; $L17: .loc 1 105 9 setp.ge.f32 %r409,%r107,0f3f000000; @ %r409 bra $L18; .loc 1 98 5 mov.u32 %r92,0; bra $L19; $L16: .loc 1 107 4 setp.le.s32 %r410,%r92,0; @ %r410 bra $L19; .loc 1 108 8 add.u32 %r98,%r98,1; .loc 1 109 15 @ ! %r649 bra $L75; bra $L78; $L87: .loc 1 105 27 mov.u32 %r92,2; $L75: .loc 1 110 5 ld.u32 %r122,[%frame+240]; .loc 1 112 9 setp.ne.u32 %r412,%r122,0; @ %r412 bra $L79; .loc 1 109 15 setp.eq.u32 %r413,%r96,1; @ %r413 bra $L20; add.u64 %r278,%frame,244; .loc 1 109 21 mov.u32 %r156,1; bra $L22; $L23: .loc 1 109 15 add.u64 %r278,%r278,4; setp.eq.u32 %r415,%r96,%r185; @ %r415 bra $L20; mov.u32 %r156,%r185; $L22: .loc 1 110 5 ld.u32 %r122,[%r278]; .loc 1 109 21 add.u32 %r185,%r156,1; .loc 1 112 9 setp.eq.u32 %r416,%r122,0; @ %r416 bra $L23; bra $L21; $L79: mov.u32 %r185,1; mov.u32 %r156,0; $L21: .loc 1 113 21 cvt.s64.s32 %r417,%r156; shl.b64 %r418,%r417,2; add.u64 %r419,%frame,%r418; .loc 1 113 28 mov.u32 %r422,256; sub.u32 %r421,%r422,%r122; .loc 1 113 21 st.u32 [%r419+240],%r421; .loc 1 109 15 setp.le.s32 %r423,%r96,%r185; @ %r423 bra $L80; .loc 1 110 5 cvt.s64.s32 %r424,%r185; shl.b64 %r425,%r424,2; add.u64 %r426,%frame,%r425; ld.u32 %r117,[%r426+240]; add.u64 %r264,%r643,%r425; add.u32 %r431,%r96,-1; sub.u32 %r432,%r431,%r185; cvt.u64.u32 %r433,%r432; add.u64 %r435,%r433,%r424; shl.b64 %r436,%r435,2; add.u64 %r276,%r436,%r656; .loc 1 115 24 mov.u32 %r440,255; $L24: sub.u32 %r439,%r440,%r117; .loc 1 115 17 st.u32 [%r264],%r439; .loc 1 109 15 add.u64 %r264,%r264,4; setp.eq.u64 %r441,%r264,%r276; @ %r441 bra $L81; .loc 1 110 5 ld.u32 %r117,[%r264]; bra $L24; $L78: .loc 1 108 20 mov.u32 %r122,0; bra $L20; $L80: .loc 1 113 10 mov.u32 %r122,1; bra $L20; $L81: mov.u32 %r122,1; $L20: .loc 1 117 8 @ %r653 bra $L25; .loc 1 118 10 @ %r657 bra $L26; @ %r658 bra $L27; bra $L25; $L26: .loc 1 120 19 add.u32 %r49,%r96,-1; cvt.s64.s32 %r445,%r49; shl.b64 %r446,%r445,2; add.u64 %r447,%frame,%r446; add.u64 %r448,%r447,240; ld.u32 %r454,[%r448]; and.b32 %r453,%r454,127; st.u32 [%r448],%r453; .loc 1 120 28 bra $L25; $L27: .loc 1 122 19 add.u32 %r53,%r96,-1; cvt.s64.s32 %r455,%r53; shl.b64 %r456,%r455,2; add.u64 %r457,%frame,%r456; add.u64 %r458,%r457,240; ld.u32 %r464,[%r458]; and.b32 %r463,%r464,63; st.u32 [%r458],%r463; $L25: .loc 1 125 8 setp.ne.u32 %r465,%r92,2; @ %r465 bra $L19; .loc 1 126 5 mov.f32 %r466,0f3f800000; sub.f32 %r107,%r466,%r107; .loc 1 127 5 setp.eq.u32 %r467,%r122,0; @ %r467 bra $L19; .loc 1 127 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r466; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r470,[%value_in]; } .loc 1 127 18 sub.f32 %r107,%r107,%r470; $L19: .loc 1 132 4 setp.neu.f32 %r471,%r107,0f00000000; @ %r471 bra $L28; .loc 1 134 12 add.u32 %r128,%r96,-1; .loc 1 134 19 setp.gt.s32 %r472,%r113,%r128; @ %r472 bra $L29; shl.b64 %r254,%r642,2; add.u64 %r475,%r254,-4; add.u64 %r253,%r643,%r475; add.u64 %r478,%r660,%r254; sub.u32 %r479,%r96,%r113; add.u32 %r480,%r479,-1; cvt.u64.u32 %r481,%r480; shl.b64 %r482,%r481,2; sub.u64 %r263,%r478,%r482; .loc 1 133 8 mov.u32 %r39,0; $L30: .loc 1 134 31 ld.u32 %r483,[%r253]; or.b32 %r39,%r39,%r483; .loc 1 134 19 add.u64 %r253,%r253,-4; setp.ne.u64 %r484,%r253,%r263; @ %r484 bra $L30; .loc 1 135 8 setp.ne.u32 %r485,%r39,0; @ %r485 bra $L31; $L29: .loc 1 136 19 ld.u32 %r491,[%r665]; setp.ne.u32 %r492,%r491,0; @ %r492 bra $L32; mov.u64 %r246,%r247; .loc 1 136 8 mov.u32 %r125,1; $L33: .loc 1 136 24 add.u32 %r125,%r125,1; .loc 1 136 19 add.u64 %r246,%r246,-4; ld.u32 %r493,[%r246+4]; setp.eq.u32 %r494,%r493,0; @ %r494 bra $L33; bra $L115; $L32: .loc 1 138 8 add.u32 %r123,%r96,1; .loc 1 138 19 mov.u32 %r154,%r123; bra $L35; $L115: .loc 1 138 8 add.u32 %r123,%r96,1; .loc 1 138 19 add.u32 %r154,%r96,%r125; $L35: cvt.s64.s32 %r225,%r123; cvt.s64.s32 %r495,%r97; add.u64 %r496,%r495,%r225; shl.b64 %r497,%r496,2; add.u64 %r226,%r323,%r497; add.u32 %r232,%r645,%r123; cvt.s64.s32 %r499,%r232; shl.b64 %r500,%r499,2; add.u64 %r231,%r666,%r500; cvt.s64.s32 %r502,%r321; add.u64 %r503,%r642,%r502; sub.u64 %r505,%r503,%r499; shl.b64 %r245,%r505,2; add.u64 %r655,%r245,-4; $L38: .loc 1 139 17 ld.u32 %r506,[%r226]; cvt.rn.f32.s32 %r188,%r506; .loc 1 139 15 st.f32 [%r231],%r188; .loc 1 140 23 @ %r667 bra $L82; add.u64 %r216,%r655,%r231; mov.u64 %r215,%r318; .loc 1 140 17 mov.f32 %r124,0f00000000; $L37: .loc 1 140 36 ld.f32 %r509,[%r215]; fma.rn.f32 %r124,%r509,%r188,%r124; .loc 1 140 23 setp.eq.u64 %r510,%r215,%r223; @ %r510 bra $L36; .loc 1 140 45 ld.f32 %r188,[%r216]; add.u64 %r215,%r215,4; add.u64 %r216,%r216,-4; bra $L37; $L82: .loc 1 140 17 mov.f32 %r124,0f00000000; $L36: .loc 1 141 12 shl.b64 %r511,%r225,2; add.u64 %r512,%frame,%r511; st.f32 [%r512],%r124; .loc 1 138 15 add.u64 %r225,%r225,1; add.u64 %r226,%r226,4; add.u64 %r231,%r231,4; cvt.u32.u64 %r513,%r225; setp.ge.s32 %r514,%r154,%r513; @ %r514 bra $L38; mov.u32 %r96,%r154; bra $L12; $L31: .loc 1 150 18 add.u32 %r129,%r129,-8; .loc 1 151 14 cvt.s64.s32 %r515,%r128; shl.b64 %r516,%r515,2; add.u64 %r517,%frame,%r516; .loc 1 151 18 ld.u32 %r519,[%r517+240]; setp.ne.u32 %r520,%r519,0; @ %r520 bra $L39; add.u64 %r522,%r254,-8; add.u64 %r211,%r643,%r522; $L40: .loc 1 151 27 add.u32 %r128,%r128,-1; .loc 1 151 33 add.u32 %r129,%r129,-8; .loc 1 151 18 add.u64 %r211,%r211,-4; ld.u32 %r523,[%r211+4]; setp.eq.u32 %r524,%r523,0; @ %r524 bra $L40; bra $L39; $L28: .loc 1 153 10 sub.u32 %r527,%r183,%r320; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r107; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r527; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r528,[%value_in]; } .loc 1 154 8 setp.ge.f32 %r529,%r528,0f43800000; @ ! %r529 bra $L116; .loc 1 155 33 mul.f32 %r530,%r528,0f3b800000; .loc 1 155 16 cvt.rzi.s32.f32 %r531,%r530; .loc 1 155 6 cvt.rn.f32.s32 %r127,%r531; .loc 1 156 25 fma.rn.f32 %r65,%r127,0fc3800000,%r528; .loc 1 156 10 shl.b64 %r534,%r642,2; add.u64 %r535,%frame,%r534; .loc 1 156 12 cvt.rzi.s32.f32 %r537,%r65; st.u32 [%r535+240],%r537; .loc 1 157 6 add.u32 %r128,%r96,1; .loc 1 157 15 add.u32 %r129,%r129,8; .loc 1 158 10 cvt.s64.s32 %r538,%r128; shl.b64 %r539,%r538,2; add.u64 %r540,%frame,%r539; .loc 1 158 12 cvt.rzi.s32.f32 %r542,%r127; st.u32 [%r540+240],%r542; bra $L39; $L116: .loc 1 159 20 shl.b64 %r544,%r642,2; add.u64 %r545,%frame,%r544; .loc 1 159 22 cvt.rzi.s32.f32 %r547,%r528; st.u32 [%r545+240],%r547; .loc 1 159 20 mov.u32 %r128,%r96; $L39: .loc 1 163 7 mov.f32 %r548,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r548; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r550,[%value_in]; } mov.f32 %r143,%r550; .loc 1 164 12 setp.lt.s32 %r551,%r128,0; @ %r551 bra $L43; cvt.s64.s32 %r644,%r128; shl.b64 %r205,%r644,2; add.u64 %r204,%r643,%r205; add.u64 %r201,%frame,%r205; mov.u64 %r207,%r201; mov.u32 %r144,%r128; $L44: .loc 1 165 16 ld.u32 %r555,[%r204]; cvt.rn.f32.s32 %r554,%r555; .loc 1 165 15 mul.f32 %r556,%r554,%r143; .loc 1 165 11 st.f32 [%r207],%r556; .loc 1 165 32 mul.f32 %r143,%r143,0f3b800000; .loc 1 164 17 add.u32 %r144,%r144,-1; .loc 1 164 12 add.u64 %r204,%r204,-4; add.u64 %r207,%r207,-4; setp.ne.u32 %r557,%r144,-1; @ %r557 bra $L44; add.u64 %r647,%frame,80; mov.u64 %r199,%r647; mov.u32 %r142,%r128; mov.u32 %r198,0; .loc 1 170 26 mov.f32 %r654,0f3fc90000; bra $L45; $L47: .loc 1 170 51 ld.f32 %r186,[%r195]; add.u64 %r195,%r195,4; $L49: .loc 1 170 44 ld.f32 %r558,[%r194]; fma.rn.f32 %r140,%r558,%r186,%r140; .loc 1 170 37 add.u32 %r141,%r141,1; .loc 1 170 26 setp.lt.s32 %r559,%r113,%r141; @ %r559 bra $L46; add.u64 %r194,%r194,4; setp.le.s32 %r560,%r141,%r198; @ %r560 bra $L47; bra $L46; $L83: .loc 1 170 12 mov.f32 %r140,0f00000000; $L46: .loc 1 171 15 st.f32 [%r199],%r140; .loc 1 169 17 add.u32 %r142,%r142,-1; .loc 1 169 12 add.u32 %r198,%r198,1; add.u64 %r199,%r199,4; add.u64 %r201,%r201,-4; setp.eq.u32 %r561,%r142,-1; @ %r561 bra $L48; $L45: .loc 1 170 26 @ %r651 bra $L83; cvta.const.u64 %r195,PIo2+4; mov.u64 %r194,%r201; mov.f32 %r186,%r654; .loc 1 170 12 mov.f32 %r140,0f00000000; .loc 1 170 18 mov.u32 %r141,0; bra $L49; $L71: .loc 1 191 14 setp.ne.u32 %r563,%r128,0; @ %r563 bra $L50; bra $L117; $L118: .loc 1 196 14 setp.gt.s32 %r564,%r128,1; @ %r564 bra $L51; $L117: .loc 1 201 10 mov.f32 %r130,0f00000000; bra $L52; $L69: add.u64 %r162,%r647,%r205; add.u64 %r566,%r647,-4; add.u64 %r567,%r566,%r205; shl.b64 %r569,%r644,2; sub.u64 %r153,%r567,%r569; .loc 1 175 2 mov.f32 %r139,0f00000000; $L53: .loc 1 178 26 ld.f32 %r570,[%r162]; add.f32 %r139,%r139,%r570; .loc 1 178 14 add.u64 %r162,%r162,-4; setp.ne.u64 %r571,%r153,%r162; @ %r571 bra $L53; bra $L74; $L85: .loc 1 175 2 mov.f32 %r139,0f00000000; $L74: .loc 1 179 21 setp.eq.u32 %r572,%r92,0; @ %r572 bra $L54; neg.f32 %r139,%r139; $L54: .loc 1 179 8 st.f32 [%r319],%r139; .loc 1 180 3 bra $L55; $L56: .loc 1 184 26 ld.f32 %r573,[%r150]; add.f32 %r137,%r137,%r573; .loc 1 184 14 add.u64 %r150,%r150,-4; setp.ne.u64 %r574,%r111,%r150; @ %r574 bra $L56; bra $L73; $L84: .loc 1 183 6 mov.f32 %r137,0f00000000; $L73: .loc 1 185 21 setp.eq.u32 %r648,%r92,0; @ %r648 bra $L57; neg.f32 %r576,%r137; .loc 1 185 8 st.f32 [%r319],%r576; .loc 1 186 6 ld.f32 %r577,[%frame+80]; sub.f32 %r109,%r577,%r137; .loc 1 187 13 setp.le.s32 %r578,%r128,0; @ %r578 bra $L58; $L66: add.u64 %r152,%frame,84; .loc 1 187 9 mov.u32 %r136,1; $L59: .loc 1 187 26 ld.f32 %r580,[%r152]; add.f32 %r109,%r109,%r580; .loc 1 187 19 add.u32 %r136,%r136,1; .loc 1 187 13 add.u64 %r152,%r152,4; setp.ge.s32 %r581,%r128,%r136; @ %r581 bra $L59; .loc 1 188 21 @ %r648 bra $L60; $L58: neg.f32 %r109,%r109; $L60: .loc 1 188 8 st.f32 [%r319+4],%r109; .loc 1 189 3 bra $L55; $L50: .loc 1 192 27 shl.b64 %r584,%r644,2; add.u64 %r585,%frame,%r584; ld.f32 %r132,[%r585+80]; add.u64 %r589,%r584,-4; add.u64 %r40,%r647,%r589; add.u64 %r646,%frame,72; add.u64 %r592,%r646,%r584; add.u32 %r593,%r128,-1; cvt.u64.u32 %r594,%r593; shl.b64 %r595,%r594,2; sub.u64 %r192,%r592,%r595; $L61: .loc 1 192 19 ld.f32 %r80,[%r40]; mov.f32 %r248,%r132; .loc 1 192 15 add.f32 %r132,%r132,%r80; .loc 1 193 24 sub.f32 %r596,%r80,%r132; .loc 1 193 14 add.f32 %r597,%r596,%r248; st.f32 [%r40+4],%r597; .loc 1 194 15 st.f32 [%r40],%r132; .loc 1 191 14 add.u64 %r40,%r40,-4; setp.ne.u64 %r598,%r40,%r192; @ %r598 bra $L61; bra $L118; $L51: .loc 1 197 27 shl.b64 %r600,%r644,2; add.u64 %r601,%frame,%r600; ld.f32 %r131,[%r601+80]; add.u64 %r605,%r600,-4; add.u64 %r99,%r647,%r605; add.u32 %r606,%r128,-2; cvt.u64.u32 %r607,%r606; shl.b64 %r182,%r607,2; add.u64 %r609,%r646,%r600; sub.u64 %r23,%r609,%r182; $L63: .loc 1 197 19 ld.f32 %r83,[%r99]; mov.f32 %r220,%r131; .loc 1 197 15 add.f32 %r131,%r131,%r83; .loc 1 198 24 sub.f32 %r610,%r83,%r131; .loc 1 198 14 add.f32 %r611,%r610,%r220; st.f32 [%r99+4],%r611; .loc 1 199 15 st.f32 [%r99],%r131; .loc 1 196 14 add.u64 %r99,%r99,-4; setp.ne.u64 %r612,%r23,%r99; @ %r612 bra $L63; add.u64 %r108,%r647,%r600; add.u64 %r614,%r647,-4; add.u64 %r615,%r614,%r600; sub.u64 %r100,%r615,%r182; mov.f32 %r130,0f00000000; $L64: .loc 1 201 33 ld.f32 %r616,[%r108]; add.f32 %r130,%r130,%r616; .loc 1 201 21 add.u64 %r108,%r108,-4; setp.ne.u64 %r617,%r100,%r108; @ %r617 bra $L64; bra $L52; $L86: .loc 1 201 10 mov.f32 %r130,0f00000000; $L52: .loc 1 203 17 ld.f32 %r189,[%frame+80]; .loc 1 203 32 ld.f32 %r190,[%frame+84]; .loc 1 202 5 setp.ne.u32 %r618,%r92,0; @ %r618 bra $L65; .loc 1 203 12 st.f32 [%r319],%r189; .loc 1 203 27 st.f32 [%r319+4],%r190; .loc 1 203 42 st.f32 [%r319+8],%r130; bra $L55; $L65: .loc 1 205 14 neg.f32 %r619,%r189; .loc 1 205 12 st.f32 [%r319],%r619; .loc 1 205 29 neg.f32 %r620,%r190; .loc 1 205 27 st.f32 [%r319+4],%r620; .loc 1 205 44 neg.f32 %r621,%r130; .loc 1 205 42 st.f32 [%r319+8],%r621; $L55: .loc 1 208 10 and.b32 %r622,%r98,7; bra $L119; $L57: .loc 1 185 8 st.f32 [%r319],%r137; .loc 1 186 6 ld.f32 %r623,[%frame+80]; sub.f32 %r109,%r623,%r137; .loc 1 187 13 setp.gt.s32 %r624,%r128,0; @ %r624 bra $L66; bra $L60; $L48: .loc 1 175 2 setp.gt.s32 %r625,%r322,2; @ %r625 bra $L67; setp.gt.s32 %r626,%r322,0; @ %r626 bra $L68; setp.eq.u32 %r627,%r322,0; @ %r627 bra $L69; bra $L55; $L67: setp.eq.u32 %r628,%r322,3; @ %r628 bra $L71; bra $L55; $L43: setp.gt.s32 %r629,%r322,2; @ %r629 bra $L72; setp.gt.s32 %r630,%r322,0; @ %r630 bra $L84; setp.eq.u32 %r631,%r322,0; @ %r631 bra $L85; bra $L55; $L72: setp.eq.u32 %r632,%r322,3; @ %r632 bra $L86; bra $L55; $L18: .loc 1 108 8 add.u32 %r98,%r98,1; .loc 1 109 15 setp.gt.s32 %r633,%r96,0; @ %r633 bra $L87; .loc 1 126 5 mov.f32 %r634,0f3f800000; sub.f32 %r107,%r634,%r107; mov.u32 %r92,2; bra $L19; $L68: shl.b64 %r138,%r644,2; add.u64 %r150,%r647,%r138; add.u64 %r111,%frame,76; .loc 1 183 6 mov.f32 %r137,0f00000000; bra $L56; $L119: .loc 1 209 1 mov.u32 %value,%r622; st.param.u32 [%value_out],%value; ret; } lib_a-kf_sin.o/ 0 0 0 644 2097 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .visible .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libm/math/kf_sin.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_sinf .visible .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .u32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; mov.u32 %r42,%ar2; .loc 1 40 2 mov.b32 %r31,%r40; .loc 1 41 5 and.b32 %r43,%r31,2147483647; .loc 1 42 4 setp.gt.s32 %r44,%r43,838860799; @ %r44 bra $L2; .loc 1 43 9 cvt.rzi.s32.f32 %r45,%r40; .loc 1 43 8 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L5; $L2: .loc 1 44 4 mul.f32 %r34,%r40,%r40; .loc 1 45 4 mul.f32 %r35,%r40,%r34; .loc 1 46 27 fma.rn.f32 %r23,%r34,0f2f2ec9d3,0fb2d72f34; .loc 1 46 21 fma.rn.f32 %r24,%r23,%r34,0f3638ef1b; .loc 1 46 15 fma.rn.f32 %r25,%r24,%r34,0fb9500d01; .loc 1 46 4 fma.rn.f32 %r36,%r25,%r34,0f3c088889; .loc 1 47 4 setp.ne.u32 %r47,%r42,0; @ %r47 bra $L4; .loc 1 47 26 fma.rn.f32 %r26,%r34,%r36,0fbe2aaaab; .loc 1 47 20 fma.rn.f32 %r39,%r26,%r35,%r40; bra $L1; $L4: .loc 1 48 34 mul.f32 %r48,%r35,%r36; .loc 1 48 32 neg.f32 %r49,%r48; fma.rn.f32 %r28,%r41,0f3f000000,%r49; .loc 1 48 37 neg.f32 %r50,%r41; fma.rn.f32 %r29,%r28,%r34,%r50; .loc 1 48 40 fma.rn.f32 %r30,%r35,0f3e2aaaab,%r29; .loc 1 48 20 sub.f32 %r39,%r40,%r30; bra $L1; $L5: .loc 1 43 27 mov.f32 %r39,%r40; $L1: .loc 1 49 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-kf_tan.o/ 0 0 0 644 4910 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_tanf .visible .func (.param .f32 %value_out) __kernel_tanf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libm/math/kf_tan.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __kernel_tanf .visible .func (.param .f32 %value_out) __kernel_tanf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r46; .reg .f32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .f32 %r55; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .f32 %r82; .reg .pred %r84; .reg .f32 %r85; .reg .pred %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .f32 %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .pred %r111; mov.f32 %r72,%ar0; mov.f32 %r73,%ar1; mov.u32 %r74,%ar2; .loc 1 50 2 mov.b32 %r51,%r72; .loc 1 51 5 and.b32 %r52,%r51,2147483647; .loc 1 52 4 setp.gt.s32 %r75,%r52,830472191; @ %r75 bra $L2; .loc 1 53 10 cvt.rzi.s32.f32 %r76,%r72; .loc 1 53 9 setp.ne.u32 %r77,%r76,0; @ ! %r77 bra $L13; setp.le.s32 %r111,%r52,1059889471; bra $L3; $L13: .loc 1 54 13 add.u32 %r78,%r74,1; .loc 1 54 9 or.b32 %r79,%r78,%r52; .loc 1 54 5 setp.ne.u32 %r80,%r79,0; @ %r80 bra $L4; .loc 1 54 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r82,[%value_in]; } .loc 1 54 32 rcp.rn.f32 %r71,%r82; bra $L1; $L4: .loc 1 55 25 setp.eq.u32 %r84,%r74,1; @ %r84 bra $L8; mov.f32 %r85,0fbf800000; div.rn.f32 %r71,%r85,%r72; bra $L1; $L2: .loc 1 58 4 setp.le.s32 %r111,%r52,1059889471; @ %r111 bra $L3; .loc 1 59 8 setp.ge.s32 %r87,%r51,0; @ %r87 bra $L6; .loc 1 59 18 neg.f32 %r72,%r72; .loc 1 59 26 neg.f32 %r73,%r73; $L6: .loc 1 60 8 mov.f32 %r88,0f3f490fda; sub.f32 %r55,%r88,%r72; .loc 1 61 8 mov.f32 %r90,0f33222168; sub.f32 %r89,%r90,%r73; .loc 1 62 8 add.f32 %r72,%r89,%r55; .loc 1 62 17 mov.f32 %r73,0f00000000; $L3: .loc 1 64 4 mul.f32 %r58,%r72,%r72; .loc 1 65 5 mul.f32 %r59,%r58,%r58; .loc 1 70 42 fma.rn.f32 %r26,%r59,0fb79bae5f,0f38a3f445; .loc 1 70 34 fma.rn.f32 %r27,%r26,%r59,0f3a1a26c8; .loc 1 70 26 fma.rn.f32 %r28,%r27,%r59,0f3b6b6916; .loc 1 70 18 fma.rn.f32 %r29,%r28,%r59,0f3cb327a4; .loc 1 70 4 fma.rn.f32 %r60,%r29,%r59,0f3e088889; .loc 1 71 46 fma.rn.f32 %r30,%r59,0f37d95384,0f3895c07a; .loc 1 71 37 fma.rn.f32 %r31,%r30,%r59,0f398137b9; .loc 1 71 29 fma.rn.f32 %r32,%r31,%r59,0f3abede48; .loc 1 71 21 fma.rn.f32 %r33,%r32,%r59,0f3c11371f; .loc 1 71 13 fma.rn.f32 %r34,%r33,%r59,0f3d5d0dd1; .loc 1 72 4 mul.f32 %r61,%r72,%r58; .loc 1 73 17 fma.rn.f32 %r35,%r34,%r58,%r60; .loc 1 73 20 fma.rn.f32 %r36,%r35,%r61,%r73; .loc 1 73 4 fma.rn.f32 %r62,%r36,%r58,%r73; .loc 1 74 4 fma.rn.f32 %r63,%r61,0f3eaaaaab,%r62; .loc 1 75 4 add.f32 %r71,%r72,%r63; .loc 1 76 4 @ %r111 bra $L7; .loc 1 77 8 cvt.rn.f32.s32 %r69,%r74; .loc 1 78 56 mul.f32 %r92,%r71,%r71; .loc 1 78 61 add.f32 %r93,%r71,%r69; .loc 1 78 58 div.rn.f32 %r94,%r92,%r93; .loc 1 78 64 sub.f32 %r95,%r94,%r63; .loc 1 78 53 sub.f32 %r96,%r72,%r95; .loc 1 78 39 fma.rn.f32 %r46,%r96,0fc0000000,%r69; .loc 1 78 27 shr.s32 %r98,%r51,30; .loc 1 78 32 and.b32 %r99,%r98,2; .loc 1 78 22 mov.u32 %r101,1; sub.u32 %r100,%r101,%r99; .loc 1 78 13 cvt.rn.f32.s32 %r102,%r100; .loc 1 78 36 mul.f32 %r71,%r102,%r46; bra $L1; $L7: .loc 1 80 4 setp.eq.u32 %r103,%r74,1; @ %r103 bra $L1; .loc 1 88 6 mov.b32 %r105,%r71; and.b32 %r104,%r105,-4096; mov.b32 %r64,%r104; .loc 1 89 16 sub.f32 %r106,%r64,%r72; .loc 1 89 9 sub.f32 %r65,%r63,%r106; .loc 1 90 13 mov.f32 %r107,0fbf800000; div.rn.f32 %r66,%r107,%r71; .loc 1 92 6 mov.b32 %r109,%r66; and.b32 %r108,%r109,-4096; mov.b32 %r67,%r108; .loc 1 93 9 fma.rn.f32 %r68,%r64,%r67,0f3f800000; .loc 1 94 19 fma.rn.f32 %r50,%r65,%r67,%r68; .loc 1 94 14 fma.rn.f32 %r71,%r50,%r66,%r67; bra $L1; $L8: .loc 1 55 25 mov.f32 %r71,%r72; $L1: .loc 1 96 1 mov.f32 %value,%r71; st.param.f32 [%value_out],%value; ret; } lib_a-ldexpl.o/ 0 0 0 644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexpl .visible .func (.param .f64 %value_out) ldexpl (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/ldexpl.c" // BEGIN GLOBAL FUNCTION DECL: ldexp .extern .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: ldexpl .visible .func (.param .f64 %value_out) ldexpl (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u32 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-lgammal.o/0 0 0 644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgammal .visible .func (.param .f64 %value_out) lgammal (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/lgammal.c" // BEGIN GLOBAL FUNCTION DECL: lgamma .extern .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: lgammal .visible .func (.param .f64 %value_out) lgammal (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lgamma,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-llrintl.o/0 0 0 644 806 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llrintl .visible .func (.param .u64 %value_out) llrintl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/llrintl.c" // BEGIN GLOBAL FUNCTION DECL: lrint .extern .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: llrintl .visible .func (.param .u64 %value_out) llrintl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lrint,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } /706 0 0 0 644 814 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llroundl .visible .func (.param .u64 %value_out) llroundl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/llroundl.c" // BEGIN GLOBAL FUNCTION DECL: lround .extern .func (.param .u64 %value_out) lround (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: llroundl .visible .func (.param .u64 %value_out) llroundl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lround,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-log.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-log10l.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log10l .visible .func (.param .f64 %value_out) log10l (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/log10l.c" // BEGIN GLOBAL FUNCTION DECL: log10 .extern .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log10l .visible .func (.param .f64 %value_out) log10l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),log10,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-log1pl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log1pl .visible .func (.param .f64 %value_out) log1pl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/log1pl.c" // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log1pl .visible .func (.param .f64 %value_out) log1pl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-log2.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /724 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-log2l.o/ 0 0 0 644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log2l .visible .func (.param .f64 %value_out) log2l (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/log2l.c" // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log2l .visible .func (.param .f64 %value_out) log2l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r24,%ar0; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),log,(%out_arg1); ld.param.f64 %r26,[%value_in]; } div.rn.f64 %value,%r26,0d3fe62e42fefa39ef; .loc 1 36 1 st.param.f64 [%value_out],%value; ret; } /743 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-logbl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logbl .visible .func (.param .f64 %value_out) logbl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/logbl.c" // BEGIN GLOBAL FUNCTION DECL: logb .extern .func (.param .f64 %value_out) logb (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: logbl .visible .func (.param .f64 %value_out) logbl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),logb,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 36 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-logl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logl .visible .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/logl.c" // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: logl .visible .func (.param .f64 %value_out) logl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),log,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-lrintl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lrintl .visible .func (.param .u64 %value_out) lrintl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/lrintl.c" // BEGIN GLOBAL FUNCTION DECL: lrint .extern .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: lrintl .visible .func (.param .u64 %value_out) lrintl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lrint,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-lroundl.o/0 0 0 644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lroundl .visible .func (.param .u64 %value_out) lroundl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/lroundl.c" // BEGIN GLOBAL FUNCTION DECL: lround .extern .func (.param .u64 %value_out) lround (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: lroundl .visible .func (.param .u64 %value_out) lroundl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lround,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } /761 0 0 0 644 7855 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: with_errno .func (.param .f64 %value_out) with_errno (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/math_err.c" // BEGIN FUNCTION DECL: xflow .func (.param .f64 %value_out) xflow (.param .u32 %in_ar0, .param .f64 %in_ar1); .file 2 "../../../../../newlib/libm/common/math_config.h" // BEGIN GLOBAL FUNCTION DECL: __math_uflow .visible .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_may_uflow .visible .func (.param .f64 %value_out) __math_may_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflow .visible .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_divzero .visible .func (.param .f64 %value_out) __math_divzero (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalid .visible .func (.param .f64 %value_out) __math_invalid (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_check_uflow .visible .func (.param .f64 %value_out) __math_check_uflow (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_check_oflow .visible .func (.param .f64 %value_out) __math_check_oflow (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN FUNCTION DEF: with_errno .func (.param .f64 %value_out) with_errno (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .u32 %r25; .reg .u64 %r26; mov.f64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 38 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r26,[%value_in]; } .loc 1 38 9 st.u32 [%r26],%r25; .loc 1 40 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: xflow .func (.param .f64 %value_out) xflow (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r22; .reg .f64 %r24; .reg .u32 %r26; .reg .f64 %r27; .reg .pred %r28; .reg .u32 %r30; .reg .f64 %r31; .reg .f64 %r32; mov.u32 %r26,%ar0; mov.f64 %r27,%ar1; .loc 1 49 7 setp.eq.u32 %r28,%r26,0; @ %r28 bra $L4; neg.f64 %r22,%r27; bra $L3; $L4: mov.f64 %r22,%r27; $L3: .loc 2 222 19 st.f64 [%frame],%r22; .loc 2 223 10 ld.f64 %r24,[%frame]; .loc 1 49 5 mul.f64 %r31,%r27,%r24; .loc 1 50 10 mov.u32 %r30,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r30; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } .loc 1 51 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_uflow .visible .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r25; .reg .f64 %r26; mov.u32 %r23,%ar0; .loc 1 56 10 mov.f64 %r25,0d1000000000000000; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),xflow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 57 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_may_uflow .visible .func (.param .f64 %value_out) __math_may_uflow (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r25; .reg .f64 %r26; mov.u32 %r23,%ar0; .loc 1 65 10 mov.f64 %r25,0d1e58000000000000; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),xflow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 66 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_oflow .visible .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r25; .reg .f64 %r26; mov.u32 %r23,%ar0; .loc 1 72 10 mov.f64 %r25,0d7000000000000000; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),xflow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 73 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_divzero .visible .func (.param .f64 %value_out) __math_divzero (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r22; .reg .f64 %r24; .reg .u32 %r26; .reg .pred %r27; .reg .u32 %r29; .reg .f64 %r30; .reg .f64 %r31; mov.u32 %r26,%ar0; .loc 1 78 14 setp.ne.u32 %r27,%r26,0; selp.f64 %r22,0dbff0000000000000,0d3ff0000000000000,%r27; .loc 2 222 19 st.f64 [%frame],%r22; .loc 2 223 10 ld.f64 %r24,[%frame]; .loc 1 78 10 div.rn.f64 %r30,%r24,0d0000000000000000; .loc 1 79 10 mov.u32 %r29,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } .loc 1 80 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_invalid .visible .func (.param .f64 %value_out) __math_invalid (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .pred %r25; .reg .u32 %r27; .reg .f64 %r28; mov.f64 %r24,%ar0; .loc 1 85 17 sub.f64 %r22,%r24,%r24; .loc 1 85 10 div.rn.f64 %r23,%r22,%r22; .loc 1 86 24 setp.nan.f64 %r25,%r24,%r24; @ %r25 bra $L11; .loc 1 86 26 mov.u32 %r27,33; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } mov.f64 %r23,%r28; $L11: .loc 1 87 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_check_uflow .visible .func (.param .f64 %value_out) __math_check_uflow (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .pred %r24; .reg .u32 %r26; .reg .f64 %r27; mov.f64 %r23,%ar0; .loc 1 94 44 setp.neu.f64 %r24,%r23,0d0000000000000000; @ %r24 bra $L14; .loc 1 94 21 mov.u32 %r26,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } mov.f64 %r23,%r27; $L14: .loc 1 95 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_check_oflow .visible .func (.param .f64 %value_out) __math_check_oflow (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .pred %r26; .reg .u32 %r28; .reg .f64 %r29; mov.f64 %r24,%ar0; .loc 1 100 10 abs.f64 %r25,%r24; .loc 1 100 45 setp.leu.f64 %r26,%r25,0d7fefffffffffffff; @ %r26 bra $L16; .loc 1 100 22 mov.u32 %r28,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } mov.f64 %r24,%r29; $L16: .loc 1 101 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } /779 0 0 0 644 4981 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: with_errnof .func (.param .f32 %value_out) with_errnof (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/math_errf.c" // BEGIN FUNCTION DECL: xflowf .func (.param .f32 %value_out) xflowf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __math_uflowf .visible .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .visible .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_divzerof .visible .func (.param .f32 %value_out) __math_divzerof (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalidf .visible .func (.param .f32 %value_out) __math_invalidf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN FUNCTION DEF: with_errnof .func (.param .f32 %value_out) with_errnof (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r26,[%value_in]; } .loc 1 39 9 st.u32 [%r26],%r25; .loc 1 41 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: xflowf .func (.param .f32 %value_out) xflowf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r22; .reg .u32 %r25; .reg .f32 %r26; .reg .pred %r27; .reg .u32 %r29; .reg .f32 %r30; .reg .f32 %r31; mov.u32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 50 18 setp.eq.u32 %r27,%r25,0; @ %r27 bra $L4; neg.f32 %r22,%r26; bra $L3; $L4: mov.f32 %r22,%r26; $L3: .loc 1 50 5 mul.f32 %r30,%r22,%r26; .loc 1 51 10 mov.u32 %r29,34; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; call (%value_in),with_errnof,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } .loc 1 52 1 mov.f32 %value,%r31; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_uflowf .visible .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r25; .reg .f32 %r26; mov.u32 %r23,%ar0; .loc 1 57 10 mov.f32 %r25,0f10000000; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r25; call (%value_in),xflowf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 58 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_oflowf .visible .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r25; .reg .f32 %r26; mov.u32 %r23,%ar0; .loc 1 75 10 mov.f32 %r25,0f70000000; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r25; call (%value_in),xflowf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 76 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_divzerof .visible .func (.param .f32 %value_out) __math_divzerof (.param .u32 %in_ar0) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .u32 %r25; .reg .pred %r26; .reg .u32 %r28; .reg .f32 %r29; .reg .f32 %r30; mov.u32 %r25,%ar0; .loc 1 82 10 setp.ne.u32 %r26,%r25,0; selp.f32 %r23,0fbf800000,0f3f800000,%r26; div.rn.f32 %r29,%r23,0f00000000; mov.u32 %r28,34; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; call (%value_in),with_errnof,(%out_arg1,%out_arg2); ld.param.f32 %r30,[%value_in]; } .loc 1 83 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_invalidf .visible .func (.param .f32 %value_out) __math_invalidf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .pred %r25; .reg .u32 %r27; .reg .f32 %r28; mov.f32 %r24,%ar0; .loc 1 88 16 sub.f32 %r22,%r24,%r24; .loc 1 88 9 div.rn.f32 %r23,%r22,%r22; .loc 1 89 24 setp.nan.f32 %r25,%r24,%r24; @ %r25 bra $L10; .loc 1 89 26 mov.u32 %r27,33; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),with_errnof,(%out_arg1,%out_arg2); ld.param.f32 %r28,[%value_in]; } mov.f32 %r23,%r28; $L10: .loc 1 90 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } lib_a-modfl.o/ 0 0 0 644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modfl .visible .func (.param .f64 %value_out) modfl (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/modfl.c" // BEGIN GLOBAL FUNCTION DECL: modf .extern .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: modfl .visible .func (.param .f64 %value_out) modfl (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),modf,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-nanl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nanl .visible .func (.param .f64 %value_out) nanl (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/common/nanl.c" // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: nanl .visible .func (.param .f64 %value_out) nanl (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .f64 %r25; mov.u64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),nan,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /798 0 0 0 644 560 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nearbyintl .visible .func (.param .f64 %value_out) nearbyintl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/nearbyintl.c" // BEGIN GLOBAL FUNCTION DEF: nearbyintl .visible .func (.param .f64 %value_out) nearbyintl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rni.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } /818 0 0 0 644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nextafterl .visible .func (.param .f64 %value_out) nextafterl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/nextafterl.c" // BEGIN GLOBAL FUNCTION DECL: nextafter .extern .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: nextafterl .visible .func (.param .f64 %value_out) nextafterl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),nextafter,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /838 0 0 0 644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nexttoward .visible .func (.param .f64 %value_out) nexttoward (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/nexttoward.c" // BEGIN GLOBAL FUNCTION DECL: nextafter .extern .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: nexttoward .visible .func (.param .f64 %value_out) nexttoward (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),nextafter,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 36 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /858 0 0 0 644 2995 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nexttowardf .visible .func (.param .f32 %value_out) nexttowardf (.param .f32 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/nexttowardf.c" // BEGIN GLOBAL FUNCTION DEF: nexttowardf .visible .func (.param .f32 %value_out) nexttowardf (.param .f32 %in_ar0, .param .f64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .f64 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f64 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u16 %r44; .reg .u16 %r45; .reg .u16 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .f32 %r65; .reg .u16 %r67; mov.f32 %r36,%ar0; mov.f64 %r37,%ar1; .loc 1 45 14 cvt.f64.f32 %r33,%r36; .loc 1 44 7 set.u32.nan.f32 %r39,%r36,%r36; neg.s32 %r40,%r39; mov.u32 %r38,%r40; .loc 1 44 19 set.u32.nan.f64 %r42,%r37,%r37; neg.s32 %r43,%r42; mov.u32 %r41,%r43; .loc 1 44 16 cvt.u16.u8 %r67,%r38; mov.u16 %r45,%r67; cvt.u16.u8 %r67,%r41; mov.u16 %r46,%r67; or.b16 %r44,%r45,%r46; cvt.u32.u16 %r47,%r44; .loc 1 44 6 cvt.u16.u8 %r48,%r47; setp.eq.u16 %r49,%r48,0; @ %r49 bra $L2; .loc 1 45 14 add.f64 %r50,%r37,%r33; cvt.rn.f32.f64 %r35,%r50; bra $L1; $L2: .loc 1 46 6 setp.neu.f64 %r51,%r37,%r33; @ %r51 bra $L4; .loc 1 47 12 cvt.rn.f32.f64 %r35,%r37; bra $L1; $L4: .loc 1 49 6 setp.neu.f32 %r52,%r36,0f00000000; @ %r52 bra $L5; .loc 1 51 9 mov.b64 %r53,%r37; shr.u64 %r54,%r53,63; cvt.u32.u64 %r56,%r54; .loc 1 51 8 setp.eq.u32 %r57,%r56,0; selp.f32 %r35,0f00000001,0f80000001,%r57; bra $L13; $L5: .loc 1 48 12 mov.b32 %r32,%r36; .loc 1 54 9 and.b32 %r59,%r32,-2147483648; .loc 1 53 13 setp.gt.f64 %r60,%r37,%r33; @ ! %r60 bra $L20; .loc 1 54 8 setp.eq.u32 %r61,%r59,0; @ %r61 bra $L9; .loc 1 55 14 add.u32 %r27,%r32,-1; bra $L10; $L9: .loc 1 57 14 add.u32 %r27,%r32,1; bra $L10; $L20: .loc 1 59 8 setp.eq.u32 %r62,%r59,0; @ %r62 bra $L11; .loc 1 60 14 add.u32 %r27,%r32,1; bra $L10; $L11: .loc 1 62 14 add.u32 %r27,%r32,-1; $L10: .loc 1 64 5 and.b32 %r31,%r27,2139095040; .loc 1 73 26 mov.b32 %r35,%r27; .loc 1 66 6 setp.eq.u32 %r63,%r31,2139095040; @ %r63 bra $L12; .loc 1 71 6 setp.eq.u32 %r64,%r31,0; @ ! %r64 bra $L1; bra $L13; $L12: .loc 1 68 20 add.f32 %r28,%r36,%r36; .loc 1 68 16 st.f32 [%frame+4],%r28; bra $L1; $L13: .loc 1 73 32 mul.f32 %r65,%r35,%r35; .loc 1 73 22 fma.rn.f32 %r30,%r36,%r36,%r65; .loc 1 73 16 st.f32 [%frame],%r30; $L1: .loc 1 76 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } /879 0 0 0 644 1045 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nexttowardl .visible .func (.param .f64 %value_out) nexttowardl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/nexttowardl.c" // BEGIN GLOBAL FUNCTION DECL: nextafter .extern .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: nexttowardl .visible .func (.param .f64 %value_out) nexttowardl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),nextafter,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 36 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-pow.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /900 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-powl.o/ 0 0 0 644 992 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: powl .visible .func (.param .f64 %value_out) powl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/powl.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: powl .visible .func (.param .f64 %value_out) powl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /922 0 0 0 644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remainderl .visible .func (.param .f64 %value_out) remainderl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/remainderl.c" // BEGIN GLOBAL FUNCTION DECL: remainder .extern .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: remainderl .visible .func (.param .f64 %value_out) remainderl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),remainder,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-remquol.o/0 0 0 644 1223 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remquol .visible .func (.param .f64 %value_out) remquol (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/common/remquol.c" // BEGIN GLOBAL FUNCTION DECL: remquo .extern .func (.param .f64 %value_out) remquo (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: remquol .visible .func (.param .f64 %value_out) remquol (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .u64 %r25; .reg .f64 %r29; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),remquo,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r29,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r29; st.param.f64 [%value_out],%value; ret; } lib_a-rintl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rintl .visible .func (.param .f64 %value_out) rintl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/rintl.c" // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: rintl .visible .func (.param .f64 %value_out) rintl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),rint,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-roundl.o/ 0 0 0 644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: roundl .visible .func (.param .f64 %value_out) roundl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/roundl.c" // BEGIN GLOBAL FUNCTION DECL: round .extern .func (.param .f64 %value_out) round (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: roundl .visible .func (.param .f64 %value_out) roundl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),round,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-s_asinh.o/0 0 0 644 3906 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinh .visible .func (.param .f64 %value_out) asinh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_asinh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinh .visible .func (.param .f64 %value_out) asinh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r29; .reg .u32 %r36; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .pred %r50; .reg .f64 %r52; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r57; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .pred %r75; mov.f64 %r42,%ar0; .loc 1 81 2 mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r36,%r44; .loc 1 82 5 and.b32 %r37,%r36,2147483647; .loc 1 83 4 setp.le.s32 %r46,%r37,2146435071; @ %r46 bra $L2; .loc 1 83 29 add.f64 %r41,%r42,%r42; bra $L1; $L2: .loc 1 84 4 setp.gt.s32 %r47,%r37,1043333119; @ %r47 bra $L4; .loc 1 85 13 add.f64 %r48,%r42,0d7e37e43c8800759c; .loc 1 85 8 setp.gt.f64 %r49,%r48,0d3ff0000000000000; @ ! %r49 bra $L5; bra $L8; $L4: .loc 1 87 4 setp.le.s32 %r50,%r37,1102053376; @ %r50 bra $L6; .loc 1 88 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r52,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 88 8 add.f64 %r41,%r54,0d3fe62e42fefa39ef; bra $L7; $L6: .loc 1 89 12 setp.le.s32 %r55,%r37,1073741824; @ %r55 bra $L5; .loc 1 90 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r57,[%value_in]; } .loc 1 91 35 fma.rn.f64 %r25,%r42,%r42,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 91 58 add.f64 %r60,%r59,%r57; .loc 1 91 33 rcp.rn.f64 %r61,%r60; .loc 1 91 10 fma.rn.f64 %r29,%r57,0d4000000000000000,%r61; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r64,[%value_in]; } mov.f64 %r41,%r64; bra $L7; $L5: .loc 1 93 8 mul.f64 %r38,%r42,%r42; .loc 1 94 15 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 94 30 add.f64 %r68,%r38,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 94 29 add.f64 %r71,%r69,0d3ff0000000000000; .loc 1 94 24 div.rn.f64 %r72,%r38,%r71; .loc 1 94 9 add.f64 %r73,%r72,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r73; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r74,[%value_in]; } mov.f64 %r41,%r74; $L7: .loc 1 96 4 setp.gt.s32 %r75,%r36,0; @ %r75 bra $L1; .loc 1 96 33 neg.f64 %r41,%r41; bra $L1; $L8: .loc 1 85 28 mov.f64 %r41,%r42; $L1: .loc 1 97 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } lib_a-s_atan.o/ 0 0 0 644 5599 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan .visible .func (.param .f64 %value_out) atan (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_atan.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN VAR DEF: atanhi .const .align 8 .u64 atanhi[4] = {4602023952714414927,4605249457297304856,4607027438436873883,4609753056924675352 }; // BEGIN VAR DEF: atanlo .const .align 8 .u64 atanlo[4] = {4357843414468748770,4359948597267291143,4354989122426817469,4364452196894661639 }; // BEGIN GLOBAL FUNCTION DEF: atan .visible .func (.param .f64 %value_out) atan (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u16 %r72; .reg .u16 %r73; .reg .u16 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .f64 %r81; .reg .pred %r82; .reg .f64 %r84; .reg .pred %r85; .reg .pred %r86; .reg .f64 %r87; .reg .pred %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .pred %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .u16 %r107; mov.f64 %r57,%ar0; .loc 1 130 2 mov.b64 %r58,%r57; shr.u64 %r59,%r58,32; cvt.u32.u64 %r46,%r59; .loc 1 131 5 and.b32 %r47,%r46,2147483647; .loc 1 132 4 setp.le.s32 %r61,%r47,1141899263; @ %r61 bra $L2; .loc 1 135 8 setp.gt.s32 %r62,%r47,2146435072; @ %r62 bra $L3; .loc 1 136 6 set.u32.eq.u32 %r64,%r47,2146435072; neg.s32 %r65,%r64; mov.u32 %r63,%r65; .loc 1 136 24 cvt.u32.u64 %r67,%r58; set.u32.ne.u32 %r70,%r67,0; neg.s32 %r71,%r70; mov.u32 %r69,%r71; .loc 1 136 18 cvt.u16.u8 %r107,%r63; mov.u16 %r73,%r107; cvt.u16.u8 %r107,%r69; mov.u16 %r74,%r107; and.b16 %r72,%r73,%r74; cvt.u32.u16 %r75,%r72; .loc 1 135 22 cvt.u16.u8 %r76,%r75; setp.eq.u16 %r77,%r76,0; @ %r77 bra $L4; $L3: .loc 1 137 11 add.f64 %r56,%r57,%r57; bra $L1; $L4: .loc 1 138 8 setp.gt.s32 %r78,%r46,0; .loc 1 139 32 selp.f64 %r56,0d3ff921fb54442d18,0dbff921fb54442d18,%r78; bra $L1; $L2: .loc 1 140 7 setp.gt.s32 %r79,%r47,1071382527; @ %r79 bra $L6; .loc 1 141 9 setp.gt.s32 %r80,%r47,1042284543; @ %r80 bra $L13; .loc 1 142 10 add.f64 %r81,%r57,0d7e37e43c8800759c; .loc 1 142 5 setp.gt.f64 %r82,%r81,0d3ff0000000000000; @ %r82 bra $L14; .loc 1 144 9 mov.u32 %r45,-1; bra $L7; $L6: .loc 1 146 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r57; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 147 5 setp.gt.s32 %r85,%r47,1072889855; @ %r85 bra $L8; .loc 1 148 9 setp.gt.s32 %r86,%r47,1072037887; @ %r86 bra $L9; .loc 1 149 21 fma.rn.f64 %r26,%r84,0d4000000000000000,0dbff0000000000000; .loc 1 149 31 add.f64 %r27,%r84,0d4000000000000000; .loc 1 149 13 div.rn.f64 %r57,%r26,%r27; .loc 1 149 6 mov.u32 %r45,0; bra $L7; $L9: .loc 1 151 18 mov.f64 %r87,0d3ff0000000000000; sub.f64 %r28,%r84,%r87; .loc 1 151 26 add.f64 %r29,%r84,0d3ff0000000000000; .loc 1 151 14 div.rn.f64 %r57,%r28,%r29; .loc 1 151 6 mov.u32 %r45,1; bra $L7; $L8: .loc 1 154 9 setp.gt.s32 %r88,%r47,1073971199; @ %r88 bra $L10; .loc 1 155 18 mov.f64 %r89,0d3ff8000000000000; sub.f64 %r30,%r84,%r89; .loc 1 155 28 fma.rn.f64 %r31,%r84,0d3ff8000000000000,0d3ff0000000000000; .loc 1 155 14 div.rn.f64 %r57,%r30,%r31; .loc 1 155 6 mov.u32 %r45,2; bra $L7; $L10: .loc 1 157 14 mov.f64 %r90,0dbff0000000000000; div.rn.f64 %r57,%r90,%r84; .loc 1 157 6 mov.u32 %r45,3; bra $L7; $L13: .loc 1 144 9 mov.u32 %r45,-1; $L7: .loc 1 161 4 mul.f64 %r51,%r57,%r57; .loc 1 162 4 mul.f64 %r52,%r51,%r51; .loc 1 164 51 fma.rn.f64 %r32,%r52,0d3f90ad3ae322da11,0d3fa97b4b24760deb; .loc 1 164 42 fma.rn.f64 %r33,%r32,%r52,0d3fb10d66a0d03d51; .loc 1 164 33 fma.rn.f64 %r34,%r33,%r52,0d3fb745cdc54c206e; .loc 1 164 24 fma.rn.f64 %r35,%r34,%r52,0d3fc24924920083ff; .loc 1 164 15 fma.rn.f64 %r36,%r35,%r52,0d3fd555555555550d; .loc 1 165 42 fma.rn.f64 %r37,%r52,0dbfa2b4442c6a6c2f,0dbfadde2d52defd9a; .loc 1 165 33 fma.rn.f64 %r38,%r37,%r52,0dbfb3b0f2af749a6d; .loc 1 165 24 fma.rn.f64 %r39,%r38,%r52,0dbfbc71c6fe231671; .loc 1 165 15 fma.rn.f64 %r40,%r39,%r52,0dbfc999999998ebc4; .loc 1 165 5 mul.f64 %r91,%r40,%r52; .loc 1 166 28 fma.rn.f64 %r54,%r36,%r51,%r91; .loc 1 166 24 mul.f64 %r55,%r57,%r54; .loc 1 166 5 setp.ne.u32 %r92,%r45,-1; @ %r92 bra $L11; .loc 1 166 21 sub.f64 %r56,%r57,%r55; bra $L1; $L11: .loc 1 168 16 cvta.const.u64 %r93,atanhi; cvt.s64.s32 %r94,%r45; shl.b64 %r95,%r94,3; add.u64 %r96,%r93,%r95; .loc 1 168 43 cvta.const.u64 %r97,atanlo; add.u64 %r100,%r97,%r95; .loc 1 168 35 ld.f64 %r102,[%r100]; sub.f64 %r101,%r55,%r102; .loc 1 168 49 sub.f64 %r103,%r101,%r57; .loc 1 168 8 ld.f64 %r104,[%r96]; sub.f64 %r56,%r104,%r103; .loc 1 169 23 setp.ge.s32 %r105,%r46,0; @ %r105 bra $L1; neg.f64 %r56,%r56; bra $L1; $L14: .loc 1 142 25 mov.f64 %r56,%r57; $L1: .loc 1 171 1 mov.f64 %value,%r56; st.param.f64 [%value_out],%value; ret; } lib_a-s_cbrt.o/ 0 0 0 644 3805 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cbrt .visible .func (.param .f64 %value_out) cbrt (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_cbrt.c" // BEGIN GLOBAL FUNCTION DEF: cbrt .visible .func (.param .f64 %value_out) cbrt (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r59; .reg .u64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .pred %r68; .reg .u32 %r70; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u32 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .u32 %r120; .reg .u64 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; mov.f64 %r64,%ar0; mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r52,%r66; .loc 1 79 6 and.b32 %r22,%r52,2147483647; .loc 1 80 4 setp.le.u32 %r68,%r22,2146435071; @ %r68 bra $L2; .loc 1 80 29 add.f64 %r63,%r64,%r64; bra $L1; $L2: .loc 1 82 8 cvt.u32.u64 %r70,%r65; or.b32 %r72,%r70,%r22; .loc 1 82 4 setp.eq.u32 %r73,%r72,0; @ %r73 bra $L6; .loc 1 85 2 cvt.u64.u32 %r74,%r22; shl.b64 %r75,%r74,32; and.b64 %r76,%r65,4294967295; or.b64 %r77,%r76,%r75; mov.b64 %r42,%r77; .loc 1 87 4 and.b32 %r78,%r52,2146435072; setp.ne.u32 %r79,%r78,0; @ %r79 bra $L4; .loc 1 89 6 mul.f64 %r43,%r42,0d4350000000000000; .loc 1 89 34 mov.b64 %r59,%r43; shr.u64 %r81,%r59,32; cvt.u32.u64 %r82,%r81; div.u32 %r84,%r82,3; add.u32 %r85,%r84,696219795; cvt.u64.u32 %r86,%r85; shl.b64 %r87,%r86,32; and.b64 %r88,%r59,4294967295; or.b64 %r89,%r88,%r87; mov.b64 %r39,%r89; bra $L5; $L4: .loc 1 92 4 div.s32 %r93,%r22,3; add.u32 %r94,%r93,715094163; cvt.u64.u32 %r95,%r94; shl.b64 %r96,%r95,32; mov.b64 %r39,%r96; $L5: .loc 1 96 5 mul.f64 %r99,%r39,%r39; .loc 1 96 3 div.rn.f64 %r100,%r99,%r42; .loc 1 97 3 fma.rn.f64 %r45,%r39,%r100,0d3fe15f15f15f15f1; .loc 1 98 11 add.f64 %r101,%r45,0d3ff6a0ea0ea0ea0f; .loc 1 98 15 mov.f64 %r103,0dbfe691de2532c834; div.rn.f64 %r102,%r103,%r45; .loc 1 98 13 add.f64 %r104,%r101,%r102; .loc 1 98 8 mov.f64 %r106,0d3ff9b6db6db6db6e; div.rn.f64 %r105,%r106,%r104; .loc 1 98 6 add.f64 %r107,%r105,0d3fd6db6db6db6db7; .loc 1 98 3 mul.f64 %r108,%r107,%r39; .loc 1 102 2 mov.b64 %r109,%r108; shr.u64 %r110,%r109,32; cvt.u32.u64 %r111,%r110; add.u32 %r112,%r111,1; cvt.u64.u32 %r113,%r112; shl.b64 %r117,%r113,32; mov.b64 %r47,%r117; .loc 1 106 3 mul.f64 %r118,%r47,%r47; .loc 1 107 3 div.rn.f64 %r49,%r42,%r118; .loc 1 109 6 sub.f64 %r36,%r49,%r47; .loc 1 109 12 fma.rn.f64 %r37,%r47,0d4000000000000000,%r49; .loc 1 109 3 div.rn.f64 %r119,%r36,%r37; .loc 1 110 3 fma.rn.f64 %r51,%r47,%r119,%r47; .loc 1 114 2 mov.b64 %r62,%r51; .loc 1 78 6 and.b32 %r120,%r52,-2147483648; .loc 1 114 2 shr.u64 %r122,%r62,32; cvt.u32.u64 %r123,%r122; or.b32 %r124,%r120,%r123; cvt.u64.u32 %r125,%r124; shl.b64 %r126,%r125,32; and.b64 %r127,%r62,4294967295; or.b64 %r128,%r127,%r126; mov.b64 %r63,%r128; .loc 1 115 8 bra $L1; $L6: .loc 1 83 12 mov.f64 %r63,%r64; $L1: .loc 1 116 1 mov.f64 %value,%r63; st.param.f64 [%value_out],%value; ret; } lib_a-s_ceil.o/ 0 0 0 644 3838 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ceil .visible .func (.param .f64 %value_out) ceil (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_ceil.c" // BEGIN GLOBAL FUNCTION DEF: ceil .visible .func (.param .f64 %value_out) ceil (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r27; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r46; .reg .u32 %r47; .reg .f64 %r51; .reg .f64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .f64 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f64 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .f64 %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; mov.f64 %r52,%ar0; mov.b64 %r53,%r52; shr.u64 %r54,%r53,32; cvt.u32.u64 %r46,%r54; .loc 1 42 2 mov.u32 %r39,%r46; cvt.u32.u64 %r27,%r53; mov.u32 %r40,%r27; .loc 1 43 11 shr.s32 %r58,%r46,20; .loc 1 43 16 and.b32 %r23,%r58,2047; .loc 1 43 5 add.u32 %r41,%r23,-1023; .loc 1 44 4 setp.gt.s32 %r59,%r41,19; @ %r59 bra $L2; .loc 1 45 8 setp.ge.s32 %r60,%r41,0; @ %r60 bra $L3; .loc 1 46 10 add.f64 %r61,%r52,0d7e37e43c8800759c; .loc 1 46 5 setp.gt.f64 %r62,%r61,0d0000000000000000; @ ! %r62 bra $L4; .loc 1 47 9 setp.lt.s32 %r63,%r46,0; @ %r63 bra $L13; .loc 1 48 18 or.b32 %r64,%r46,%r27; .loc 1 48 14 setp.eq.u32 %r65,%r64,0; @ %r65 bra $L14; mov.u32 %r27,0; mov.u32 %r46,1072693248; bra $L4; $L3: .loc 1 51 19 mov.u32 %r66,1048575; shr.s32 %r47,%r66,%r41; .loc 1 52 10 and.b32 %r67,%r39,%r47; .loc 1 52 13 or.b32 %r68,%r67,%r40; .loc 1 52 5 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L15; .loc 1 53 10 add.f64 %r70,%r52,0d7e37e43c8800759c; .loc 1 53 5 setp.gt.f64 %r71,%r70,0d0000000000000000; @ ! %r71 bra $L4; .loc 1 54 9 setp.le.s32 %r72,%r39,0; @ %r72 bra $L8; .loc 1 54 34 mov.u32 %r74,1048576; shr.s32 %r73,%r74,%r41; .loc 1 54 19 add.u32 %r39,%r39,%r73; $L8: .loc 1 55 14 not.b32 %r75,%r47; .loc 1 76 2 and.b32 %r46,%r75,%r39; mov.u32 %r27,0; bra $L4; $L2: .loc 1 58 12 setp.le.s32 %r76,%r41,51; @ %r76 bra $L9; .loc 1 59 8 setp.ne.u32 %r77,%r41,1024; @ %r77 bra $L16; .loc 1 59 28 add.f64 %r51,%r52,%r52; bra $L1; $L9: .loc 1 62 41 add.u32 %r78,%r23,-1043; .loc 1 62 8 mov.u32 %r79,-1; shr.u32 %r42,%r79,%r78; .loc 1 63 12 and.b32 %r80,%r40,%r42; .loc 1 63 8 setp.eq.u32 %r81,%r80,0; @ %r81 bra $L17; .loc 1 64 13 add.f64 %r82,%r52,0d7e37e43c8800759c; .loc 1 64 8 setp.gt.f64 %r83,%r82,0d0000000000000000; @ ! %r83 bra $L4; .loc 1 65 5 setp.le.s32 %r84,%r46,0; @ %r84 bra $L11; .loc 1 66 9 setp.ne.u32 %r85,%r41,20; @ %r85 bra $L12; .loc 1 66 20 add.u32 %r46,%r46,1; bra $L11; $L12: .loc 1 68 20 mov.u32 %r87,52; sub.u32 %r86,%r87,%r41; .loc 1 68 15 mov.u32 %r89,1; shl.b32 %r88,%r89,%r86; .loc 1 68 11 add.u32 %r40,%r40,%r88; .loc 1 69 6 setp.le.u32 %r90,%r27,%r40; @ %r90 bra $L11; .loc 1 69 15 add.u32 %r46,%r46,1; $L11: .loc 1 73 10 not.b32 %r91,%r42; .loc 1 76 2 and.b32 %r27,%r91,%r40; bra $L4; $L13: mov.u32 %r27,0; mov.u32 %r46,-2147483648; bra $L4; $L14: mov.u32 %r27,%r64; mov.u32 %r46,%r27; $L4: cvt.u64.u32 %r92,%r46; cvt.u64.u32 %r96,%r27; shl.b64 %r97,%r92,32; or.b64 %r98,%r97,%r96; mov.b64 %r51,%r98; .loc 1 77 9 bra $L1; $L15: .loc 1 52 29 mov.f64 %r51,%r52; bra $L1; $L16: mov.f64 %r51,%r52; bra $L1; $L17: mov.f64 %r51,%r52; $L1: .loc 1 78 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } /942 0 0 0 644 1183 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; mov.f64 %r29,%ar0; mov.f64 %r30,%ar1; .loc 1 68 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r33,%r32; and.b32 %r34,%r33,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; and.b32 %r38,%r37,-2147483648; or.b32 %r39,%r34,%r38; cvt.u64.u32 %r40,%r39; shl.b64 %r41,%r40,32; and.b64 %r42,%r27,4294967295; or.b64 %r43,%r42,%r41; mov.b64 %value,%r43; .loc 1 70 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_cos.o/ 0 0 0 644 3887 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cos .visible .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_cos.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .extern .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .extern .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .extern .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: cos .visible .func (.param .f64 %value_out) cos (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .f64 %r44; .reg .f64 %r45; .reg .pred %r46; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .f64 %r53; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u32 %r68; .reg .f64 %r69; .reg .f64 %r70; mov.f64 %r38,%ar0; .loc 1 60 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r41,%r40; .loc 1 63 5 and.b32 %r34,%r41,2147483647; .loc 1 64 4 setp.gt.s32 %r42,%r34,1072243195; @ %r42 bra $L2; .loc 1 64 30 mov.f64 %r44,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } mov.f64 %r37,%r45; bra $L1; $L2: .loc 1 67 10 setp.le.s32 %r46,%r34,2146435071; @ %r46 bra $L4; .loc 1 67 35 sub.f64 %r37,%r38,%r38; bra $L1; $L4: .loc 1 71 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2,(%out_arg1,%out_arg2); ld.param.u32 %r49,[%value_in]; } .loc 1 72 14 and.b32 %r22,%r49,3; .loc 1 72 6 setp.eq.u32 %r50,%r22,1; @ %r50 bra $L5; setp.eq.u32 %r51,%r22,2; @ %r51 bra $L6; setp.ne.u32 %r52,%r22,0; @ %r52 bra $L7; .loc 1 73 19 ld.f64 %r55,[%frame+8]; ld.f64 %r53,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r53; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r55; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r56,[%value_in]; } mov.f64 %r37,%r56; bra $L1; $L5: .loc 1 74 19 ld.f64 %r60,[%frame+8]; ld.f64 %r57,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r57; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r22; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r61,[%value_in]; } .loc 1 74 18 neg.f64 %r37,%r61; bra $L1; $L6: .loc 1 75 19 ld.f64 %r64,[%frame+8]; ld.f64 %r62,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r64; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r65,[%value_in]; } .loc 1 75 18 neg.f64 %r37,%r65; bra $L1; $L7: .loc 1 77 19 ld.f64 %r69,[%frame+8]; mov.u32 %r68,1; ld.f64 %r66,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r69; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r68; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r70,[%value_in]; } mov.f64 %r37,%r70; $L1: .loc 1 80 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_erf.o/ 0 0 0 644 17887 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erf .visible .func (.param .f64 %value_out) erf (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_erf.c" // BEGIN GLOBAL FUNCTION DECL: erfc .visible .func (.param .f64 %value_out) erfc (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erf .visible .func (.param .f64 %value_out) erf (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r75; .reg .f64 %r80; .reg .f64 %r84; .reg .f64 %r85; .reg .u32 %r87; .reg .f64 %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r99; .reg .u64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .pred %r116; .reg .pred %r117; .reg .u32 %r118; .reg .pred %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .pred %r122; .reg .f64 %r124; .reg .f64 %r125; .reg .pred %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .pred %r130; .reg .pred %r131; .reg .f64 %r133; .reg .f64 %r134; .reg .pred %r136; .reg .u64 %r137; .reg .f64 %r138; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r145; .reg .pred %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; mov.f64 %r104,%ar0; mov.b64 %r105,%r104; shr.u64 %r106,%r105,32; cvt.u32.u64 %r107,%r106; .loc 1 248 5 and.b32 %r87,%r107,2147483647; .loc 1 249 4 setp.le.s32 %r108,%r87,2146435071; @ %r108 bra $L2; .loc 1 250 25 shr.u32 %r109,%r107,31; .loc 1 250 30 add.u32 %r110,%r109,%r109; .loc 1 251 23 mov.u32 %r112,1; sub.u32 %r111,%r112,%r110; .loc 1 251 13 cvt.rn.f64.s32 %r113,%r111; .loc 1 251 30 rcp.rn.f64 %r114,%r104; .loc 1 251 26 add.f64 %r103,%r113,%r114; bra $L1; $L2: .loc 1 254 4 setp.gt.s32 %r116,%r87,1072365567; @ %r116 bra $L4; .loc 1 255 8 setp.gt.s32 %r117,%r87,1043333119; @ %r117 bra $L5; .loc 1 256 13 and.b32 %r118,%r107,2139095040; setp.ne.u32 %r119,%r118,0; @ %r119 bra $L6; .loc 1 257 31 mul.f64 %r120,%r104,0d3ff06eba8214db69; .loc 1 257 26 fma.rn.f64 %r28,%r104,0d4020000000000000,%r120; .loc 1 257 19 mul.f64 %r103,%r28,0d3fc0000000000000; bra $L1; $L6: .loc 1 258 12 fma.rn.f64 %r103,%r104,0d3fc06eba8214db69,%r104; bra $L1; $L5: .loc 1 260 8 mul.f64 %r97,%r104,%r104; .loc 1 261 34 fma.rn.f64 %r29,%r97,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 261 27 fma.rn.f64 %r30,%r29,%r97,0dbf9d2a51dbd7194f; .loc 1 261 20 fma.rn.f64 %r31,%r30,%r97,0dbfd4cd7d691cb913; .loc 1 261 8 fma.rn.f64 %r98,%r31,%r97,0d3fc06eba8214db68; .loc 1 262 41 fma.rn.f64 %r32,%r97,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 262 34 fma.rn.f64 %r33,%r32,%r97,0d3f74d022c4d36b0f; .loc 1 262 27 fma.rn.f64 %r34,%r33,%r97,0d3fb0a54c5536ceba; .loc 1 262 20 fma.rn.f64 %r35,%r34,%r97,0d3fd97779cddadc09; .loc 1 262 8 fma.rn.f64 %r99,%r35,%r97,0d3ff0000000000000; .loc 1 263 8 div.rn.f64 %r121,%r98,%r99; .loc 1 264 15 fma.rn.f64 %r103,%r104,%r121,%r104; bra $L1; $L4: .loc 1 266 4 setp.gt.s32 %r122,%r87,1072955391; @ %r122 bra $L7; .loc 1 267 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r104; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r124,[%value_in]; } .loc 1 267 8 mov.f64 %r125,0d3ff0000000000000; sub.f64 %r94,%r124,%r125; .loc 1 268 48 fma.rn.f64 %r37,%r94,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 268 41 fma.rn.f64 %r38,%r37,%r94,0dbfbc63983d3e28ec; .loc 1 268 34 fma.rn.f64 %r39,%r38,%r94,0d3fd45fca805120e4; .loc 1 268 27 fma.rn.f64 %r40,%r39,%r94,0dbfd7d240fbb8c3f1; .loc 1 268 20 fma.rn.f64 %r41,%r40,%r94,0d3fda8d00ad92b34d; .loc 1 268 8 fma.rn.f64 %r95,%r41,%r94,0dbf6359b8bef77538; .loc 1 269 48 fma.rn.f64 %r42,%r94,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 269 41 fma.rn.f64 %r43,%r42,%r94,0d3fc02660e763351f; .loc 1 269 34 fma.rn.f64 %r44,%r43,%r94,0d3fb2635cd99fe9a7; .loc 1 269 27 fma.rn.f64 %r45,%r44,%r94,0d3fe14af092eb6f33; .loc 1 269 20 fma.rn.f64 %r46,%r45,%r94,0d3fbb3e6618eee323; .loc 1 269 8 fma.rn.f64 %r96,%r46,%r94,0d3ff0000000000000; .loc 1 270 8 setp.lt.s32 %r126,%r107,0; @ %r126 bra $L8; .loc 1 270 30 div.rn.f64 %r127,%r95,%r96; .loc 1 270 27 add.f64 %r103,%r127,0d3feb0ac160000000; bra $L1; $L8: .loc 1 270 54 div.rn.f64 %r128,%r95,%r96; .loc 1 270 51 mov.f64 %r129,0dbfeb0ac160000000; sub.f64 %r103,%r129,%r128; bra $L1; $L7: .loc 1 272 5 setp.le.s32 %r130,%r87,1075314687; @ %r130 bra $L9; .loc 1 273 8 setp.ge.s32 %r131,%r107,0; .loc 1 273 49 selp.f64 %r103,0d3ff0000000000000,0dbff0000000000000,%r131; bra $L1; $L9: .loc 1 275 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r104; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r133,[%value_in]; } .loc 1 276 13 mul.f64 %r134,%r133,%r133; .loc 1 276 5 rcp.rn.f64 %r89,%r134; .loc 1 277 4 setp.gt.s32 %r136,%r87,1074191213; @ %r136 bra $L10; .loc 1 279 15 fma.rn.f64 %r50,%r89,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 279 8 fma.rn.f64 %r51,%r50,%r89,0dc067135cebccabb2; .loc 1 278 39 fma.rn.f64 %r52,%r51,%r89,0dc0644cb184282266; .loc 1 278 32 fma.rn.f64 %r53,%r52,%r89,0dc04f300ae4cba38d; .loc 1 278 25 fma.rn.f64 %r54,%r53,%r89,0dc0251e0441b0e726; .loc 1 278 18 fma.rn.f64 %r55,%r54,%r89,0dbfe63416e4ba7360; .loc 1 278 7 fma.rn.f64 %r84,%r55,%r89,0dbf843412600d6435; .loc 1 281 22 fma.rn.f64 %r56,%r89,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 281 15 fma.rn.f64 %r57,%r56,%r89,0d405b28a3ee48ae2c; .loc 1 281 8 fma.rn.f64 %r58,%r57,%r89,0d407ad02157700314; .loc 1 280 39 fma.rn.f64 %r59,%r58,%r89,0d40842b1921ec2868; .loc 1 280 32 fma.rn.f64 %r60,%r59,%r89,0d407b290dd58a1a71; .loc 1 280 25 fma.rn.f64 %r61,%r60,%r89,0d4061350c526ae721; .loc 1 280 18 fma.rn.f64 %r62,%r61,%r89,0d4033a6b9bd707687; .loc 1 280 7 fma.rn.f64 %r85,%r62,%r89,0d3ff0000000000000; bra $L11; $L10: .loc 1 284 8 fma.rn.f64 %r63,%r89,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 283 39 fma.rn.f64 %r64,%r63,%r89,0dc083ec881375f228; .loc 1 283 32 fma.rn.f64 %r65,%r64,%r89,0dc064145d43c5ed98; .loc 1 283 25 fma.rn.f64 %r66,%r65,%r89,0dc031c209555f995a; .loc 1 283 18 fma.rn.f64 %r67,%r66,%r89,0dbfe993ba70c285de; .loc 1 283 7 fma.rn.f64 %r84,%r67,%r89,0dbf84341239e86f4a; .loc 1 286 15 fma.rn.f64 %r68,%r89,0dc03670e242712d62,0d407da874e79fe763; .loc 1 286 8 fma.rn.f64 %r69,%r68,%r89,0d40a3f219cedf3be6; .loc 1 285 39 fma.rn.f64 %r70,%r69,%r89,0d40a8ffb7688c246a; .loc 1 285 32 fma.rn.f64 %r71,%r70,%r89,0d409802eb189d5118; .loc 1 285 25 fma.rn.f64 %r72,%r71,%r89,0d40745cae221b9f0a; .loc 1 285 18 fma.rn.f64 %r73,%r72,%r89,0d403e568b261d5190; .loc 1 285 7 fma.rn.f64 %r85,%r73,%r89,0d3ff0000000000000; $L11: .loc 1 289 2 mov.b64 %r102,%r133; and.b64 %r137,%r102,-4294967296; mov.b64 %r91,%r137; .loc 1 290 22 neg.f64 %r138,%r91; .loc 1 290 8 fma.rn.f64 %r75,%r138,%r91,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r140,[%value_in]; } .loc 1 290 51 sub.f64 %r141,%r91,%r133; .loc 1 290 57 add.f64 %r142,%r133,%r91; .loc 1 290 62 div.rn.f64 %r143,%r84,%r85; .loc 1 290 35 fma.rn.f64 %r80,%r141,%r142,%r143; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r145,[%value_in]; } .loc 1 290 5 mul.f64 %r92,%r140,%r145; .loc 1 291 4 setp.lt.s32 %r146,%r107,0; @ %r146 bra $L12; .loc 1 291 24 div.rn.f64 %r147,%r92,%r133; .loc 1 291 22 mov.f64 %r148,0d3ff0000000000000; sub.f64 %r103,%r148,%r147; bra $L1; $L12: .loc 1 291 42 div.rn.f64 %r149,%r92,%r133; .loc 1 291 44 mov.f64 %r150,0d3ff0000000000000; sub.f64 %r103,%r149,%r150; $L1: .loc 1 292 1 mov.f64 %value,%r103; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: erfc .visible .func (.param .f64 %value_out) erfc (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r77; .reg .f64 %r82; .reg .f64 %r85; .reg .f64 %r86; .reg .u32 %r88; .reg .f64 %r90; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r104; .reg .u64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .pred %r117; .reg .pred %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .pred %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .pred %r128; .reg .f64 %r130; .reg .f64 %r131; .reg .pred %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .f64 %r136; .reg .pred %r137; .reg .f64 %r139; .reg .f64 %r140; .reg .pred %r142; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u16 %r149; .reg .u16 %r150; .reg .u16 %r151; .reg .u32 %r152; .reg .u16 %r153; .reg .pred %r154; .reg .u64 %r155; .reg .f64 %r156; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r163; .reg .pred %r164; .reg .f64 %r165; .reg .f64 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .f64 %r169; .reg .u16 %r171; mov.f64 %r107,%ar0; mov.b64 %r108,%r107; shr.u64 %r109,%r108,32; cvt.u32.u64 %r110,%r109; .loc 1 304 5 and.b32 %r88,%r110,2147483647; .loc 1 305 4 setp.le.s32 %r111,%r88,2146435071; @ %r111 bra $L15; .loc 1 307 37 shr.u32 %r112,%r110,31; .loc 1 307 42 add.u32 %r113,%r112,%r112; .loc 1 307 13 cvt.rn.f64.s32 %r114,%r113; .loc 1 307 50 rcp.rn.f64 %r115,%r107; .loc 1 307 46 add.f64 %r106,%r114,%r115; bra $L14; $L15: .loc 1 310 4 setp.gt.s32 %r117,%r88,1072365567; @ %r117 bra $L17; .loc 1 311 8 setp.gt.s32 %r118,%r88,1013972991; @ %r118 bra $L18; .loc 1 312 13 mov.f64 %r119,0d3ff0000000000000; sub.f64 %r106,%r119,%r107; bra $L14; $L18: .loc 1 313 8 mul.f64 %r99,%r107,%r107; .loc 1 314 34 fma.rn.f64 %r26,%r99,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 314 27 fma.rn.f64 %r27,%r26,%r99,0dbf9d2a51dbd7194f; .loc 1 314 20 fma.rn.f64 %r28,%r27,%r99,0dbfd4cd7d691cb913; .loc 1 314 8 fma.rn.f64 %r100,%r28,%r99,0d3fc06eba8214db68; .loc 1 315 41 fma.rn.f64 %r29,%r99,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 315 34 fma.rn.f64 %r30,%r29,%r99,0d3f74d022c4d36b0f; .loc 1 315 27 fma.rn.f64 %r31,%r30,%r99,0d3fb0a54c5536ceba; .loc 1 315 20 fma.rn.f64 %r32,%r31,%r99,0d3fd97779cddadc09; .loc 1 315 8 fma.rn.f64 %r101,%r32,%r99,0d3ff0000000000000; .loc 1 316 8 div.rn.f64 %r120,%r100,%r101; .loc 1 318 18 mul.f64 %r104,%r120,%r107; .loc 1 317 8 setp.gt.s32 %r121,%r110,1070596095; @ %r121 bra $L19; .loc 1 318 16 add.f64 %r122,%r107,%r104; .loc 1 318 13 mov.f64 %r123,0d3ff0000000000000; sub.f64 %r106,%r123,%r122; bra $L14; $L19: .loc 1 321 10 mov.f64 %r125,0d3fe0000000000000; sub.f64 %r124,%r107,%r125; .loc 1 321 5 add.f64 %r126,%r124,%r104; .loc 1 322 22 sub.f64 %r106,%r125,%r126; bra $L14; $L17: .loc 1 325 4 setp.gt.s32 %r128,%r88,1072955391; @ %r128 bra $L20; .loc 1 326 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r107; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 326 8 mov.f64 %r131,0d3ff0000000000000; sub.f64 %r95,%r130,%r131; .loc 1 327 48 fma.rn.f64 %r36,%r95,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 327 41 fma.rn.f64 %r37,%r36,%r95,0dbfbc63983d3e28ec; .loc 1 327 34 fma.rn.f64 %r38,%r37,%r95,0d3fd45fca805120e4; .loc 1 327 27 fma.rn.f64 %r39,%r38,%r95,0dbfd7d240fbb8c3f1; .loc 1 327 20 fma.rn.f64 %r40,%r39,%r95,0d3fda8d00ad92b34d; .loc 1 327 8 fma.rn.f64 %r96,%r40,%r95,0dbf6359b8bef77538; .loc 1 328 48 fma.rn.f64 %r41,%r95,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 328 41 fma.rn.f64 %r42,%r41,%r95,0d3fc02660e763351f; .loc 1 328 34 fma.rn.f64 %r43,%r42,%r95,0d3fb2635cd99fe9a7; .loc 1 328 27 fma.rn.f64 %r44,%r43,%r95,0d3fe14af092eb6f33; .loc 1 328 20 fma.rn.f64 %r45,%r44,%r95,0d3fbb3e6618eee323; .loc 1 328 8 fma.rn.f64 %r97,%r45,%r95,0d3ff0000000000000; .loc 1 329 8 setp.lt.s32 %r132,%r110,0; @ %r132 bra $L21; .loc 1 330 36 div.rn.f64 %r133,%r96,%r97; .loc 1 330 33 mov.f64 %r134,0d3fc3d4fa80000000; sub.f64 %r106,%r134,%r133; bra $L14; $L21: .loc 1 332 12 div.rn.f64 %r135,%r96,%r97; .loc 1 332 5 add.f64 %r136,%r135,0d3feb0ac160000000; .loc 1 332 26 add.f64 %r106,%r136,0d3ff0000000000000; bra $L14; $L20: .loc 1 335 5 setp.gt.s32 %r137,%r88,1077673983; @ %r137 bra $L22; .loc 1 336 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r107; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r139,[%value_in]; } .loc 1 337 17 mul.f64 %r140,%r139,%r139; .loc 1 337 9 rcp.rn.f64 %r90,%r140; .loc 1 338 8 setp.gt.s32 %r142,%r88,1074191212; @ %r142 bra $L23; .loc 1 340 15 fma.rn.f64 %r49,%r90,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 340 8 fma.rn.f64 %r50,%r49,%r90,0dc067135cebccabb2; .loc 1 339 43 fma.rn.f64 %r51,%r50,%r90,0dc0644cb184282266; .loc 1 339 36 fma.rn.f64 %r52,%r51,%r90,0dc04f300ae4cba38d; .loc 1 339 29 fma.rn.f64 %r53,%r52,%r90,0dc0251e0441b0e726; .loc 1 339 22 fma.rn.f64 %r54,%r53,%r90,0dbfe63416e4ba7360; .loc 1 339 11 fma.rn.f64 %r85,%r54,%r90,0dbf843412600d6435; .loc 1 342 22 fma.rn.f64 %r55,%r90,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 342 15 fma.rn.f64 %r56,%r55,%r90,0d405b28a3ee48ae2c; .loc 1 342 8 fma.rn.f64 %r57,%r56,%r90,0d407ad02157700314; .loc 1 341 43 fma.rn.f64 %r58,%r57,%r90,0d40842b1921ec2868; .loc 1 341 36 fma.rn.f64 %r59,%r58,%r90,0d407b290dd58a1a71; .loc 1 341 29 fma.rn.f64 %r60,%r59,%r90,0d4061350c526ae721; .loc 1 341 22 fma.rn.f64 %r61,%r60,%r90,0d4033a6b9bd707687; .loc 1 341 11 fma.rn.f64 %r86,%r61,%r90,0d3ff0000000000000; bra $L24; $L23: .loc 1 344 8 shr.u32 %r144,%r110,31; mov.u32 %r145,%r144; .loc 1 344 14 set.u32.gt.s32 %r147,%r88,1075314687; neg.s32 %r148,%r147; mov.u32 %r146,%r148; .loc 1 344 10 cvt.u16.u8 %r171,%r145; mov.u16 %r150,%r171; cvt.u16.u8 %r171,%r146; mov.u16 %r151,%r171; and.b16 %r149,%r150,%r151; cvt.u32.u16 %r152,%r149; .loc 1 344 5 cvt.u16.u8 %r153,%r152; setp.eq.u16 %r154,%r153,0; @ %r154 bra $L25; $L27: .loc 1 344 38 mov.f64 %r106,0d4000000000000000; bra $L14; $L25: .loc 1 346 8 fma.rn.f64 %r65,%r90,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 345 43 fma.rn.f64 %r66,%r65,%r90,0dc083ec881375f228; .loc 1 345 36 fma.rn.f64 %r67,%r66,%r90,0dc064145d43c5ed98; .loc 1 345 29 fma.rn.f64 %r68,%r67,%r90,0dc031c209555f995a; .loc 1 345 22 fma.rn.f64 %r69,%r68,%r90,0dbfe993ba70c285de; .loc 1 345 11 fma.rn.f64 %r85,%r69,%r90,0dbf84341239e86f4a; .loc 1 348 15 fma.rn.f64 %r70,%r90,0dc03670e242712d62,0d407da874e79fe763; .loc 1 348 8 fma.rn.f64 %r71,%r70,%r90,0d40a3f219cedf3be6; .loc 1 347 43 fma.rn.f64 %r72,%r71,%r90,0d40a8ffb7688c246a; .loc 1 347 36 fma.rn.f64 %r73,%r72,%r90,0d409802eb189d5118; .loc 1 347 29 fma.rn.f64 %r74,%r73,%r90,0d40745cae221b9f0a; .loc 1 347 22 fma.rn.f64 %r75,%r74,%r90,0d403e568b261d5190; .loc 1 347 11 fma.rn.f64 %r86,%r75,%r90,0d3ff0000000000000; $L24: .loc 1 351 6 mov.b64 %r105,%r139; and.b64 %r155,%r105,-4294967296; mov.b64 %r93,%r155; .loc 1 352 26 neg.f64 %r156,%r93; .loc 1 352 12 fma.rn.f64 %r77,%r156,%r93,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r77; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r158,[%value_in]; } .loc 1 353 20 sub.f64 %r159,%r93,%r139; .loc 1 353 26 add.f64 %r160,%r139,%r93; .loc 1 353 31 div.rn.f64 %r161,%r85,%r86; .loc 1 353 4 fma.rn.f64 %r82,%r159,%r160,%r161; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r163,[%value_in]; } .loc 1 352 9 mul.f64 %r94,%r158,%r163; .loc 1 354 8 setp.le.s32 %r164,%r110,0; @ %r164 bra $L26; .loc 1 354 23 div.rn.f64 %r106,%r94,%r139; bra $L14; $L26: .loc 1 354 44 div.rn.f64 %r165,%r94,%r139; .loc 1 354 42 mov.f64 %r166,0d4000000000000000; sub.f64 %r106,%r166,%r165; bra $L14; $L22: .loc 1 356 8 setp.le.s32 %r167,%r110,0; @ %r167 bra $L27; .loc 1 356 22 mov.u32 %r168,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r168; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r169,[%value_in]; } mov.f64 %r106,%r169; $L14: .loc 1 358 1 mov.f64 %value,%r106; st.param.f64 [%value_out],%value; ret; } lib_a-s_exp10.o/0 0 0 644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp10 .visible .func (.param .f64 %value_out) exp10 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_exp10.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp10 .visible .func (.param .f64 %value_out) exp10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r23,%ar0; .loc 1 66 10 mov.f64 %r24,0d4024000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r23; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 67 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-s_expm1.o/0 0 0 644 8471 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expm1 .visible .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_expm1.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expm1 .visible .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .u32 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r88; .reg .u32 %r90; .reg .u64 %r91; .reg .u64 %r93; .reg .u64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .u32 %r112; .reg .f64 %r113; .reg .pred %r114; .reg .f64 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .f64 %r120; .reg .pred %r121; .reg .f64 %r122; .reg .f64 %r124; .reg .pred %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .pred %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .pred %r133; .reg .f64 %r134; .reg .pred %r135; .reg .pred %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .u32 %r140; .reg .pred %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .u64 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u64 %r151; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .f64 %r162; .reg .u64 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .f64 %r178; .reg .u64 %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; mov.f64 %r97,%ar0; mov.b64 %r98,%r97; shr.u64 %r99,%r98,32; cvt.u32.u64 %r100,%r99; .loc 1 182 5 and.b32 %r61,%r100,2147483647; .loc 1 185 4 setp.le.u32 %r101,%r61,1078159481; @ %r101 bra $L2; .loc 1 186 8 setp.le.u32 %r102,%r61,1082535489; @ %r102 bra $L3; .loc 1 187 19 setp.le.u32 %r103,%r61,2146435071; @ %r103 bra $L4; .loc 1 190 14 and.b32 %r104,%r100,1048575; .loc 1 190 23 cvt.u32.u64 %r106,%r98; or.b32 %r108,%r104,%r106; .loc 1 190 9 setp.eq.u32 %r109,%r108,0; @ %r109 bra $L5; .loc 1 191 20 add.f64 %r96,%r97,%r97; bra $L1; $L5: .loc 1 192 30 setp.lt.s32 %r110,%r100,0; selp.f64 %r96,0dbff0000000000000,%r97,%r110; bra $L1; $L4: .loc 1 194 12 setp.gt.f64 %r111,%r97,0d40862e42fefa39ef; @ ! %r111 bra $L3; .loc 1 194 37 mov.u32 %r112,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r112; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r113,[%value_in]; } mov.f64 %r96,%r113; bra $L1; $L3: .loc 1 196 8 setp.ge.s32 %r114,%r100,0; @ %r114 bra $L8; .loc 1 197 7 add.f64 %r115,%r97,0d01a56e1fc2f8f359; .loc 1 197 5 setp.lt.f64 %r116,%r115,0d0000000000000000; @ ! %r116 bra $L29; bra $L24; $L2: .loc 1 203 4 setp.le.u32 %r117,%r61,1071001154; @ %r117 bra $L10; .loc 1 204 8 setp.gt.u32 %r118,%r61,1072734897; @ %r118 bra $L11; .loc 1 205 5 setp.lt.s32 %r119,%r100,0; @ %r119 bra $L12; .loc 1 206 11 mov.f64 %r120,0d3fe62e42fee00000; sub.f64 %r56,%r97,%r120; .loc 1 206 42 mov.u32 %r59,1; .loc 1 206 28 mov.f64 %r57,0d3dea39ef35793c76; bra $L13; $L12: .loc 1 208 11 add.f64 %r56,%r97,0d3fe62e42fee00000; .loc 1 208 42 mov.u32 %r59,-1; .loc 1 208 28 mov.f64 %r57,0dbdea39ef35793c76; bra $L13; $L11: .loc 1 210 14 mul.f64 %r88,%r97,0d3ff71547652b82fe; .loc 1 210 30 setp.ge.s32 %r121,%r100,0; selp.f64 %r60,0d3fe0000000000000,0dbfe0000000000000,%r121; $L14: .loc 1 210 16 add.f64 %r122,%r60,%r88; .loc 1 210 6 cvt.rzi.s32.f64 %r59,%r122; .loc 1 211 6 cvt.rn.f64.s32 %r63,%r59; .loc 1 212 6 fma.rn.f64 %r56,%r63,0dbfe62e42fee00000,%r97; .loc 1 213 6 mul.f64 %r57,%r63,0d3dea39ef35793c76; $L13: .loc 1 215 9 sub.f64 %r97,%r56,%r57; .loc 1 216 14 sub.f64 %r124,%r56,%r97; .loc 1 216 9 sub.f64 %r58,%r124,%r57; bra $L15; $L10: .loc 1 218 9 setp.gt.u32 %r125,%r61,1016070143; @ %r125 bra $L26; .loc 1 219 8 add.f64 %r62,%r97,0d7e37e43c8800759c; .loc 1 220 19 sub.f64 %r126,%r62,%r62; .loc 1 220 15 sub.f64 %r96,%r97,%r126; bra $L1; $L26: .loc 1 222 9 mov.u32 %r59,0; $L15: .loc 1 225 6 mul.f64 %r66,%r97,0d3fe0000000000000; .loc 1 226 6 mul.f64 %r67,%r97,%r66; .loc 1 227 42 fma.rn.f64 %r29,%r67,0dbe8afdb76e09c32d,0d3ed0cfca86e65239; .loc 1 227 34 fma.rn.f64 %r30,%r29,%r67,0dbf14ce199eaadbb7; .loc 1 227 26 fma.rn.f64 %r31,%r30,%r67,0d3f5a01a019fe5585; .loc 1 227 18 fma.rn.f64 %r32,%r31,%r67,0dbfa11111111110f4; .loc 1 227 5 fma.rn.f64 %r68,%r32,%r67,0d3ff0000000000000; .loc 1 228 5 neg.f64 %r127,%r66; fma.rn.f64 %r69,%r127,%r68,0d4008000000000000; .loc 1 229 15 sub.f64 %r33,%r68,%r69; .loc 1 229 24 neg.f64 %r128,%r97; fma.rn.f64 %r34,%r128,%r69,0d4018000000000000; .loc 1 229 18 div.rn.f64 %r129,%r33,%r34; .loc 1 229 5 mul.f64 %r70,%r129,%r67; .loc 1 230 4 setp.ne.u32 %r130,%r59,0; @ %r130 bra $L16; .loc 1 230 26 neg.f64 %r131,%r67; fma.rn.f64 %r36,%r97,%r70,%r131; .loc 1 230 20 sub.f64 %r96,%r97,%r36; bra $L1; $L16: .loc 1 232 16 sub.f64 %r37,%r70,%r58; .loc 1 232 9 neg.f64 %r132,%r58; fma.rn.f64 %r71,%r37,%r97,%r132; .loc 1 233 8 sub.f64 %r72,%r71,%r67; .loc 1 234 8 setp.ne.u32 %r133,%r59,-1; @ %r133 bra $L17; .loc 1 234 30 sub.f64 %r134,%r97,%r72; .loc 1 234 33 fma.rn.f64 %r96,%r134,0d3fe0000000000000,0dbfe0000000000000; bra $L1; $L17: .loc 1 235 13 setp.ne.u32 %r135,%r59,1; @ %r135 bra $L18; .loc 1 236 12 setp.lt.f64 %r136,%r97,0dbfd0000000000000; @ ! %r136 bra $L30; .loc 1 236 41 add.f64 %r137,%r97,0d3fe0000000000000; .loc 1 236 38 sub.f64 %r138,%r72,%r137; .loc 1 236 35 mul.f64 %r96,%r138,0dc000000000000000; bra $L1; $L30: .loc 1 237 40 sub.f64 %r139,%r97,%r72; .loc 1 237 33 fma.rn.f64 %r96,%r139,0d4000000000000000,0d3ff0000000000000; bra $L1; $L18: .loc 1 243 3 shl.b32 %r90,%r59,20; .loc 1 239 18 add.u32 %r140,%r59,1; .loc 1 239 9 setp.le.u32 %r141,%r140,57; @ %r141 bra $L21; .loc 1 241 20 sub.f64 %r142,%r72,%r97; .loc 1 241 12 mov.f64 %r143,0d3ff0000000000000; sub.f64 %r80,%r143,%r142; .loc 1 243 3 mov.b64 %r91,%r80; shr.u64 %r145,%r91,32; cvt.u32.u64 %r146,%r145; add.u32 %r147,%r146,%r90; cvt.u64.u32 %r148,%r147; shl.b64 %r149,%r148,32; and.b64 %r150,%r91,4294967295; or.b64 %r151,%r150,%r149; mov.b64 %r81,%r151; .loc 1 244 18 sub.f64 %r96,%r81,%r143; bra $L1; $L21: .loc 1 247 8 setp.gt.s32 %r153,%r59,19; @ %r153 bra $L22; .loc 1 249 10 mov.u32 %r155,2097152; shr.s32 %r154,%r155,%r59; mov.u32 %r157,1072693248; sub.u32 %r156,%r157,%r154; cvt.u64.u32 %r158,%r156; shl.b64 %r159,%r158,32; mov.b64 %r77,%r159; .loc 1 250 18 sub.f64 %r162,%r72,%r97; .loc 1 250 12 sub.f64 %r78,%r77,%r162; .loc 1 252 3 mov.b64 %r93,%r78; shr.u64 %r164,%r93,32; cvt.u32.u64 %r165,%r164; add.u32 %r166,%r165,%r90; cvt.u64.u32 %r167,%r166; shl.b64 %r168,%r167,32; and.b64 %r169,%r93,4294967295; or.b64 %r170,%r169,%r168; mov.b64 %r96,%r170; bra $L1; $L22: .loc 1 255 3 mov.u32 %r172,1023; sub.u32 %r171,%r172,%r59; shl.b32 %r173,%r171,20; cvt.u64.u32 %r174,%r173; shl.b64 %r175,%r174,32; mov.b64 %r74,%r175; .loc 1 256 18 add.f64 %r178,%r72,%r74; .loc 1 256 12 sub.f64 %r75,%r97,%r178; .loc 1 257 12 add.f64 %r76,%r75,0d3ff0000000000000; .loc 1 259 3 mov.b64 %r95,%r76; shr.u64 %r180,%r95,32; cvt.u32.u64 %r181,%r180; add.u32 %r182,%r181,%r90; cvt.u64.u32 %r183,%r182; shl.b64 %r184,%r183,32; and.b64 %r185,%r95,4294967295; or.b64 %r186,%r185,%r184; mov.b64 %r96,%r186; bra $L1; $L24: .loc 1 192 30 mov.f64 %r96,0dbff0000000000000; bra $L1; $L8: .loc 1 210 14 mul.f64 %r88,%r97,0d3ff71547652b82fe; .loc 1 210 30 mov.f64 %r60,0d3fe0000000000000; bra $L14; $L29: .loc 1 210 14 mul.f64 %r88,%r97,0d3ff71547652b82fe; .loc 1 210 30 mov.f64 %r60,0dbfe0000000000000; bra $L14; $L1: .loc 1 263 1 mov.f64 %value,%r96; st.param.f64 [%value_out],%value; ret; } lib_a-s_fabs.o/ 0 0 0 644 611 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fabs .visible .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_fabs.c" // BEGIN GLOBAL FUNCTION DEF: fabs .visible .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .f64 %r26; .reg .u64 %r34; mov.f64 %r26,%ar0; .loc 1 61 2 mov.b64 %r24,%r26; and.b64 %r34,%r24,9223372036854775807; mov.b64 %value,%r34; .loc 1 63 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fdim.o/ 0 0 0 644 1475 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fdim .visible .func (.param .f64 %value_out) fdim (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_fdim.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fdim .visible .func (.param .f64 %value_out) fdim (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 52 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 52 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 53 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 53 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 55 24 setp.gt.f64 %r33,%r25,%r26; @ ! %r33 bra $L10; sub.f64 %r25,%r25,%r26; bra $L2; $L4: .loc 1 53 42 mov.f64 %r25,%r26; bra $L2; $L10: .loc 1 55 24 mov.f64 %r25,0d0000000000000000; $L2: .loc 1 56 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /962 0 0 0 644 780 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_finite.c" // BEGIN GLOBAL FUNCTION DEF: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; mov.f64 %r29,%ar0; .loc 1 31 2 mov.b64 %r31,%r29; shr.u64 %r32,%r31,32; cvt.u32.u64 %r33,%r32; .loc 1 32 32 and.b32 %r34,%r33,2147483647; .loc 1 32 44 add.u32 %r35,%r34,-2146435072; .loc 1 32 56 shr.u32 %value,%r35,31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_floor.o/0 0 0 644 3869 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: floor .visible .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_floor.c" // BEGIN GLOBAL FUNCTION DEF: floor .visible .func (.param .f64 %value_out) floor (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r28; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r47; .reg .u32 %r48; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .f64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .f64 %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; mov.f64 %r53,%ar0; mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r47,%r55; .loc 1 84 2 mov.u32 %r40,%r47; cvt.u32.u64 %r28,%r54; mov.u32 %r41,%r28; .loc 1 85 11 shr.s32 %r59,%r47,20; .loc 1 85 16 and.b32 %r23,%r59,2047; .loc 1 85 5 add.u32 %r42,%r23,-1023; .loc 1 86 4 setp.gt.s32 %r60,%r42,19; @ %r60 bra $L2; .loc 1 87 8 setp.ge.s32 %r61,%r42,0; @ %r61 bra $L3; .loc 1 88 10 add.f64 %r62,%r53,0d7e37e43c8800759c; .loc 1 88 5 setp.gt.f64 %r63,%r62,0d0000000000000000; @ ! %r63 bra $L4; .loc 1 89 9 setp.ge.s32 %r64,%r47,0; @ %r64 bra $L13; .loc 1 90 19 and.b32 %r65,%r47,2147483647; .loc 1 90 31 or.b32 %r66,%r65,%r28; .loc 1 90 14 setp.eq.u32 %r67,%r66,0; mov.u32 %r28,0; selp.u32 %r47,-2147483648,-1074790400,%r67; bra $L4; $L3: .loc 1 94 19 mov.u32 %r68,1048575; shr.s32 %r48,%r68,%r42; .loc 1 95 10 and.b32 %r69,%r40,%r48; .loc 1 95 13 or.b32 %r70,%r69,%r41; .loc 1 95 5 setp.eq.u32 %r71,%r70,0; @ %r71 bra $L15; .loc 1 96 10 add.f64 %r72,%r53,0d7e37e43c8800759c; .loc 1 96 5 setp.gt.f64 %r73,%r72,0d0000000000000000; @ ! %r73 bra $L4; .loc 1 97 9 setp.ge.s32 %r74,%r40,0; @ %r74 bra $L8; .loc 1 97 34 mov.u32 %r76,1048576; shr.s32 %r75,%r76,%r42; .loc 1 97 19 add.u32 %r40,%r40,%r75; $L8: .loc 1 98 14 not.b32 %r77,%r48; .loc 1 119 2 and.b32 %r47,%r77,%r40; mov.u32 %r28,0; bra $L4; $L2: .loc 1 101 12 setp.le.s32 %r78,%r42,51; @ %r78 bra $L9; .loc 1 102 8 setp.ne.u32 %r79,%r42,1024; @ %r79 bra $L16; .loc 1 102 28 add.f64 %r52,%r53,%r53; bra $L1; $L9: .loc 1 105 41 add.u32 %r80,%r23,-1043; .loc 1 105 8 mov.u32 %r81,-1; shr.u32 %r43,%r81,%r80; .loc 1 106 12 and.b32 %r82,%r41,%r43; .loc 1 106 8 setp.eq.u32 %r83,%r82,0; @ %r83 bra $L17; .loc 1 107 13 add.f64 %r84,%r53,0d7e37e43c8800759c; .loc 1 107 8 setp.gt.f64 %r85,%r84,0d0000000000000000; @ ! %r85 bra $L4; .loc 1 108 5 setp.ge.s32 %r86,%r47,0; @ %r86 bra $L11; .loc 1 109 9 setp.ne.u32 %r87,%r42,20; @ %r87 bra $L12; .loc 1 109 20 add.u32 %r47,%r47,1; bra $L11; $L12: .loc 1 111 18 mov.u32 %r89,52; sub.u32 %r88,%r89,%r42; .loc 1 111 13 mov.u32 %r91,1; shl.b32 %r90,%r91,%r88; .loc 1 111 10 add.u32 %r41,%r41,%r90; .loc 1 112 6 setp.le.u32 %r92,%r28,%r41; @ %r92 bra $L11; .loc 1 112 16 add.u32 %r47,%r47,1; $L11: .loc 1 116 10 not.b32 %r93,%r43; .loc 1 119 2 and.b32 %r28,%r93,%r41; bra $L4; $L13: mov.u32 %r28,0; mov.u32 %r47,%r28; $L4: cvt.u64.u32 %r94,%r47; cvt.u64.u32 %r98,%r28; shl.b64 %r99,%r94,32; or.b64 %r100,%r99,%r98; mov.b64 %r52,%r100; .loc 1 120 9 bra $L1; $L15: .loc 1 95 29 mov.f64 %r52,%r53; bra $L1; $L16: mov.f64 %r52,%r53; bra $L1; $L17: mov.f64 %r52,%r53; $L1: .loc 1 121 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_fma.o/ 0 0 0 644 776 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fma .visible .func (.param .f64 %value_out) fma (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../newlib/libm/common/s_fma.c" // BEGIN GLOBAL FUNCTION DEF: fma .visible .func (.param .f64 %value_out) fma (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.f64 %r25,%ar2; .loc 1 55 18 fma.rn.f64 %value,%r23,%r24,%r25; .loc 1 56 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fmax.o/ 0 0 0 644 1460 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmax .visible .func (.param .f64 %value_out) fmax (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_fmax.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fmax .visible .func (.param .f64 %value_out) fmax (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 44 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 46 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 46 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 49 20 setp.gt.f64 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f64 %r24,%r26; bra $L1; $L4: .loc 1 47 12 mov.f64 %r24,%r25; bra $L1; $L5: mov.f64 %r24,%r25; $L1: .loc 1 50 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-s_fmin.o/ 0 0 0 644 1460 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmin .visible .func (.param .f64 %value_out) fmin (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_fmin.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fmin .visible .func (.param .f64 %value_out) fmin (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 44 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 46 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 46 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 49 20 setp.lt.f64 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f64 %r24,%r26; bra $L1; $L4: .loc 1 47 12 mov.f64 %r24,%r25; bra $L1; $L5: mov.f64 %r24,%r25; $L1: .loc 1 50 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } /980 0 0 0 644 2168 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u32 %r64; .reg .u16 %r66; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; cvt.u32.u64 %r39,%r35; .loc 1 16 26 or.b32 %r40,%r37,%r39; .loc 1 16 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r42,%r39,0; neg.s32 %r24,%r42; .loc 1 17 12 set.u32.eq.u32 %r46,%r37,-2147483648; neg.s32 %r47,%r46; mov.u32 %r45,%r47; .loc 1 17 26 cvt.u16.u8 %r66,%r45; mov.u16 %r49,%r66; cvt.u16.u32 %r50,%r24; and.b16 %r48,%r49,%r50; cvt.u32.u16 %r51,%r48; .loc 1 16 48 cvt.u16.u8 %r52,%r51; setp.ne.u16 %r53,%r52,0; @ %r53 bra $L4; .loc 1 19 31 and.b32 %r31,%r37,2147483647; add.u32 %r54,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r55,%r54,2145386495; @ %r55 bra $L5; .loc 1 22 31 and.b32 %r56,%r37,2146435072; .loc 1 22 11 setp.eq.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r59,%r31,2146435072; neg.s32 %r60,%r59; mov.u32 %r58,%r60; .loc 1 26 53 cvt.u16.u8 %r66,%r58; mov.u16 %r62,%r66; and.b16 %r61,%r62,%r50; cvt.u32.u16 %r64,%r61; .loc 1 18 12 cvt.u32.u8 %r33,%r64; bra $L1; $L3: mov.u32 %r33,2; bra $L1; $L4: mov.u32 %r33,2; bra $L1; $L5: .loc 1 21 12 mov.u32 %r33,4; bra $L1; $L6: .loc 1 25 12 mov.u32 %r33,3; $L1: .loc 1 31 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-s_frexp.o/0 0 0 644 2040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/s_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r28; .reg .u32 %r33; .reg .u32 %r35; .reg .u64 %r36; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 88 5 and.b32 %r28,%r33,2147483647; .loc 1 89 8 mov.u32 %r43,0; st.u32 [%r39],%r43; .loc 1 90 4 setp.gt.s32 %r44,%r28,2146435071; @ %r44 bra $L2; .loc 1 87 2 cvt.u32.u64 %r46,%r40; .loc 1 90 25 or.b32 %r48,%r46,%r28; .loc 1 90 19 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L2; .loc 1 91 5 and.b32 %r50,%r33,2146435072; setp.ne.u32 %r51,%r50,0; @ %r51 bra $L4; .loc 1 92 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r52,%r38; shr.u64 %r53,%r52,32; cvt.u32.u64 %r33,%r53; .loc 1 94 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r43; $L3: .loc 1 97 14 shr.s32 %r55,%r28,20; .loc 1 97 19 add.u32 %r56,%r55,-1022; .loc 1 97 8 add.u32 %r57,%r56,%r35; st.u32 [%r39],%r57; .loc 1 99 2 mov.b64 %r36,%r38; .loc 1 98 10 and.b32 %r58,%r33,-2146435073; .loc 1 98 22 or.b32 %r59,%r58,1071644672; .loc 1 99 2 cvt.u64.u32 %r60,%r59; shl.b64 %r61,%r60,32; and.b64 %r62,%r36,4294967295; or.b64 %r63,%r62,%r61; mov.b64 %r38,%r63; $L2: .loc 1 101 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-s_ilogb.o/0 0 0 644 2031 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ilogb .visible .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_ilogb.c" // BEGIN GLOBAL FUNCTION DEF: ilogb .visible .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r29; .reg .u32 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r45; .reg .pred %r46; .reg .pred %r48; .reg .pred %r49; .reg .u32 %r50; mov.f64 %r32,%ar0; .loc 1 77 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r35,%r34; .loc 1 78 5 and.b32 %r25,%r35,2147483647; .loc 1 79 4 and.b32 %r36,%r35,2146435072; setp.ne.u32 %r37,%r36,0; @ %r37 bra $L2; .loc 1 77 2 cvt.u32.u64 %r29,%r33; .loc 1 80 12 or.b32 %r40,%r29,%r25; .loc 1 80 8 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L7; .loc 1 83 5 setp.ne.u32 %r42,%r25,0; @ %r42 bra $L4; .loc 1 84 26 setp.le.s32 %r43,%r29,0; @ %r43 bra $L8; .loc 1 84 15 mov.u32 %r31,-1043; $L5: .loc 1 84 41 add.u32 %r31,%r31,-1; .loc 1 84 32 add.u32 %r29,%r29,%r29; .loc 1 84 26 setp.gt.s32 %r45,%r29,0; @ %r45 bra $L5; bra $L1; $L4: .loc 1 86 25 shl.b32 %r27,%r25,11; .loc 1 86 34 setp.le.s32 %r46,%r27,0; @ %r46 bra $L9; .loc 1 86 15 mov.u32 %r31,-1022; $L6: .loc 1 86 49 add.u32 %r31,%r31,-1; .loc 1 86 40 add.u32 %r27,%r27,%r27; .loc 1 86 34 setp.gt.s32 %r48,%r27,0; @ %r48 bra $L6; bra $L1; $L2: .loc 1 90 10 setp.gt.s32 %r49,%r25,2146435071; @ %r49 bra $L10; .loc 1 90 36 shr.s32 %r50,%r25,20; .loc 1 90 41 add.u32 %r31,%r50,-1023; bra $L1; $L7: .loc 1 81 10 mov.u32 %r31,-2147483647; bra $L1; $L8: .loc 1 84 15 mov.u32 %r31,-1043; bra $L1; $L9: .loc 1 86 15 mov.u32 %r31,-1022; bra $L1; $L10: .loc 1 94 14 mov.u32 %r31,2147483647; $L1: .loc 1 95 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } /1002 0 0 0 644 433 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: infinity .visible .func (.param .f64 %value_out) infinity; .file 1 "../../../../../newlib/libm/common/s_infinity.c" // BEGIN GLOBAL FUNCTION DEF: infinity .visible .func (.param .f64 %value_out) infinity { .reg .f64 %value; .loc 1 46 9 mov.f64 %value,0d7ff0000000000000; .loc 1 47 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_isinf.o/0 0 0 644 1245 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 22 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 23 5 and.b32 %r33,%r43,2147483647; .loc 1 24 25 neg.s32 %r46,%r45; .loc 1 24 23 or.b32 %r47,%r46,%r45; .loc 1 24 30 shr.u32 %r48,%r47,31; .loc 1 24 5 or.b32 %r34,%r48,%r33; .loc 1 26 36 add.u32 %r50,%r34,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 26 34 or.b32 %r53,%r50,%r51; .loc 1 26 41 shr.u32 %r54,%r53,31; .loc 1 26 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 27 1 st.param.u32 [%value_out],%value; ret; } /1022 0 0 0 644 1258 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isinfd.c" // BEGIN GLOBAL FUNCTION DEF: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 15 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 16 5 and.b32 %r33,%r43,2147483647; .loc 1 17 25 neg.s32 %r46,%r45; .loc 1 17 23 or.b32 %r47,%r46,%r45; .loc 1 17 30 shr.u32 %r48,%r47,31; .loc 1 17 5 or.b32 %r34,%r48,%r33; .loc 1 19 36 add.u32 %r50,%r34,-2146435072; .loc 1 18 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 19 34 or.b32 %r53,%r50,%r51; .loc 1 19 41 shr.u32 %r54,%r53,31; .loc 1 19 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 20 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/0 0 0 644 1057 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 203 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 204 5 and.b32 %r30,%r40,2147483647; .loc 1 205 25 neg.s32 %r43,%r42; .loc 1 205 23 or.b32 %r44,%r43,%r42; .loc 1 205 30 shr.u32 %r45,%r44,31; .loc 1 205 5 or.b32 %r31,%r45,%r30; .loc 1 206 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 207 33 shr.u32 %value,%r47,31; .loc 1 208 1 st.param.u32 [%value_out],%value; ret; } /1040 0 0 0 644 1069 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isnand.c" // BEGIN GLOBAL FUNCTION DEF: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 99 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 100 5 and.b32 %r30,%r40,2147483647; .loc 1 101 25 neg.s32 %r43,%r42; .loc 1 101 23 or.b32 %r44,%r43,%r42; .loc 1 101 30 shr.u32 %r45,%r44,31; .loc 1 101 5 or.b32 %r31,%r45,%r30; .loc 1 102 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 103 33 shr.u32 %value,%r47,31; .loc 1 104 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/0 0 0 644 2915 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/math/s_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f64 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 63 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 63 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 63 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 63 19 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 64 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } mov.f64 %r32,%r50; .loc 1 65 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 65 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 65 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 65 19 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 65 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 65 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 67 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /1058 0 0 0 644 4353 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llrint .visible .func (.param .u64 %value_out) llrint (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_llrint.c" // BEGIN VAR DEF: TWO52 .const .align 8 .u64 TWO52[2] = {4841369599423283200,-4382002437431492608 }; // BEGIN GLOBAL FUNCTION DEF: llrint .visible .func (.param .u64 %value_out) llrint (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .u32 %r45; .reg .u32 %r48; .reg .u32 %r53; .reg .f64 %r54; .reg .u32 %r57; .reg .u32 %r63; .reg .u64 %r70; .reg .f64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .f64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .pred %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r99; .reg .u32 %r100; .reg .u64 %r101; .reg .u32 %r103; .reg .u64 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r125; .reg .u64 %r126; .reg .pred %r127; mov.f64 %r71,%ar0; mov.b64 %r72,%r71; shr.u64 %r73,%r72,32; cvt.u32.u64 %r74,%r73; .loc 1 60 16 shr.u32 %r22,%r74,31; .loc 1 63 27 shr.s32 %r75,%r74,20; and.b32 %r24,%r75,2047; .loc 1 63 6 add.u32 %r53,%r24,-1023; .loc 1 66 5 setp.gt.s32 %r76,%r53,19; @ %r76 bra $L2; .loc 1 69 9 setp.ge.s32 %r77,%r53,-1; @ %r77 bra $L3; $L5: .loc 1 70 16 mov.u64 %r70,0; bra $L1; $L3: .loc 1 75 20 cvta.const.u64 %r78,TWO52; cvt.s64.s32 %r79,%r22; shl.b64 %r80,%r79,3; add.u64 %r81,%r78,%r80; ld.f64 %r25,[%r81]; .loc 1 75 25 add.f64 %r26,%r25,%r71; .loc 1 75 13 st.f64 [%frame],%r26; .loc 1 76 17 ld.f64 %r27,[%frame]; .loc 1 76 13 sub.f64 %r82,%r27,%r25; .loc 1 77 11 mov.b64 %r83,%r82; shr.u64 %r84,%r83,32; cvt.u32.u64 %r85,%r84; .loc 1 80 19 and.b32 %r86,%r85,2147483647; .loc 1 80 14 setp.eq.u32 %r87,%r86,0; @ %r87 bra $L5; .loc 1 84 14 and.b32 %r63,%r85,1048575; .loc 1 85 14 or.b32 %r88,%r63,1048576; .loc 1 83 35 shr.s32 %r89,%r85,20; and.b32 %r90,%r89,2047; .loc 1 87 30 mov.u32 %r93,1043; sub.u32 %r92,%r93,%r90; .loc 1 87 23 shr.s32 %r94,%r88,%r92; .loc 1 87 18 cvt.s64.s32 %r70,%r94; bra $L6; $L2: .loc 1 90 11 setp.gt.s32 %r95,%r53,62; @ %r95 bra $L7; .loc 1 93 10 setp.le.s32 %r96,%r53,51; @ %r96 bra $L8; .loc 1 96 40 and.b32 %r97,%r74,1048575; .loc 1 96 54 or.b32 %r98,%r97,1048576; .loc 1 96 19 cvt.s64.s32 %r99,%r98; .loc 1 96 75 add.u32 %r100,%r24,-1043; .loc 1 96 68 shl.b64 %r101,%r99,%r100; .loc 1 98 21 cvt.u32.u64 %r103,%r72; cvt.u64.u32 %r105,%r103; .loc 1 98 47 add.u32 %r106,%r24,-1075; .loc 1 98 40 shl.b64 %r107,%r105,%r106; .loc 1 96 16 or.b64 %r70,%r101,%r107; bra $L6; $L8: .loc 1 102 20 cvta.const.u64 %r108,TWO52; cvt.s64.s32 %r109,%r22; shl.b64 %r110,%r109,3; add.u64 %r111,%r108,%r110; ld.f64 %r41,[%r111]; .loc 1 102 25 add.f64 %r42,%r41,%r71; .loc 1 102 13 st.f64 [%frame],%r42; .loc 1 103 17 ld.f64 %r43,[%frame]; .loc 1 103 13 sub.f64 %r54,%r43,%r41; .loc 1 104 11 mov.b64 %r112,%r54; shr.u64 %r113,%r112,32; cvt.u32.u64 %r114,%r113; .loc 1 105 35 shr.s32 %r115,%r114,20; and.b32 %r45,%r115,2047; .loc 1 106 14 and.b32 %r57,%r114,1048575; .loc 1 107 14 or.b32 %r116,%r57,1048576; .loc 1 112 21 cvt.s64.s32 %r117,%r116; .loc 1 112 47 add.u32 %r118,%r45,-1043; .loc 1 112 40 shl.b64 %r70,%r117,%r118; .loc 1 113 6 mov.u32 %r120,1075; sub.u32 %r48,%r120,%r45; setp.gt.u32 %r121,%r48,31; @ %r121 bra $L6; cvt.u32.u64 %r123,%r112; shr.u32 %r125,%r123,%r48; cvt.u64.u32 %r126,%r125; .loc 1 112 18 or.b64 %r70,%r70,%r126; bra $L6; $L7: .loc 1 118 14 cvt.rzi.s64.f64 %r70,%r71; bra $L1; $L6: .loc 1 121 23 setp.eq.u32 %r127,%r22,0; @ %r127 bra $L1; neg.s64 %r70,%r70; $L1: .loc 1 122 1 mov.u64 %value,%r70; st.param.u64 [%value_out],%value; ret; } /1076 0 0 0 644 2961 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llround .visible .func (.param .u64 %value_out) llround (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_llround.c" // BEGIN GLOBAL FUNCTION DEF: llround .visible .func (.param .u64 %value_out) llround (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r49; .reg .u32 %r52; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .u64 %r86; mov.f64 %r54,%ar0; mov.b64 %r55,%r54; shr.u64 %r56,%r55,32; cvt.u32.u64 %r49,%r56; .loc 1 28 35 setp.lt.s32 %r58,%r49,0; selp.u32 %r42,-1,1,%r58; .loc 1 30 44 shr.u32 %r59,%r49,20; and.b32 %r24,%r59,2047; .loc 1 30 51 add.u32 %r43,%r24,-1023; .loc 1 31 7 and.b32 %r44,%r49,1048575; .loc 1 32 7 or.b32 %r40,%r44,1048576; .loc 1 35 6 setp.gt.s32 %r60,%r43,19; @ %r60 bra $L3; .loc 1 38 10 setp.ge.s32 %r61,%r43,0; @ %r61 bra $L4; .loc 1 40 14 setp.ne.u32 %r62,%r43,-1; @ %r62 bra $L12; .loc 1 43 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 49 26 mov.u32 %r64,524288; shr.s32 %r63,%r64,%r43; .loc 1 49 15 add.u32 %r65,%r63,%r40; .loc 1 51 31 mov.u32 %r67,20; sub.u32 %r66,%r67,%r43; .loc 1 51 24 shr.u32 %r68,%r65,%r66; .loc 1 51 18 cvt.u64.u32 %r41,%r68; bra $L6; $L3: .loc 1 54 11 setp.gt.u32 %r69,%r43,62; @ %r69 bra $L7; cvt.u32.u64 %r71,%r55; .loc 1 60 62 add.u32 %r52,%r24,-1043; .loc 1 57 10 setp.le.s32 %r72,%r43,51; @ %r72 bra $L8; .loc 1 62 51 add.u32 %r73,%r24,-1075; .loc 1 62 28 shl.b32 %r74,%r71,%r73; cvt.u64.u32 %r75,%r74; .loc 1 60 19 cvt.u64.u32 %r76,%r40; .loc 1 60 39 shl.b64 %r77,%r76,%r52; .loc 1 60 16 or.b64 %r41,%r75,%r77; bra $L6; $L8: .loc 1 68 35 mov.u32 %r79,-2147483648; shr.u32 %r78,%r79,%r52; .loc 1 66 24 add.u32 %r45,%r78,%r71; .loc 1 69 14 setp.ge.u32 %r80,%r45,%r71; @ %r80 bra $L9; .loc 1 70 13 add.u32 %r40,%r40,1; $L9: .loc 1 72 21 cvt.u64.u32 %r81,%r40; .loc 1 72 41 shl.b64 %r41,%r81,%r52; .loc 1 74 23 mov.u32 %r82,52; sub.u32 %r37,%r82,%r43; setp.eq.u32 %r83,%r37,32; @ %r83 bra $L6; shr.u32 %r84,%r45,%r37; cvt.u64.u32 %r85,%r84; .loc 1 72 18 or.b64 %r41,%r41,%r85; bra $L6; $L7: .loc 1 79 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 81 15 cvt.s64.s32 %r86,%r42; mul.lo.u64 %r53,%r86,%r41; bra $L1; $L12: .loc 1 41 20 mov.u64 %r53,0; $L1: .loc 1 82 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-s_log1p.o/0 0 0 644 7768 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log1p .visible .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_log1p.c" // BEGIN GLOBAL FUNCTION DECL: __math_divzero .extern .func (.param .f64 %value_out) __math_divzero (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalid .extern .func (.param .f64 %value_out) __math_invalid (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log1p .visible .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .u32 %r62; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r76; .reg .f64 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .u32 %r90; .reg .f64 %r91; .reg .f64 %r93; .reg .pred %r94; .reg .f64 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u16 %r102; .reg .u16 %r103; .reg .u16 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .pred %r107; .reg .f64 %r108; .reg .u32 %r110; .reg .pred %r111; .reg .f64 %r112; .reg .pred %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u32 %r117; .reg .pred %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .u32 %r123; .reg .pred %r124; .reg .u32 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .pred %r138; .reg .pred %r139; .reg .pred %r140; .reg .pred %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .pred %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .u16 %r154; mov.f64 %r82,%ar0; mov.b64 %r83,%r82; shr.u64 %r84,%r83,32; cvt.u32.u64 %r58,%r84; .loc 1 152 2 mov.u32 %r85,%r58; .loc 1 156 5 setp.le.s32 %r86,%r58,1071284857; @ %r86 bra $L2; .loc 1 173 5 setp.gt.s32 %r87,%r58,2146435071; @ ! %r87 bra $L22; bra $L3; $L2: .loc 1 153 5 and.b32 %r62,%r85,2147483647; .loc 1 157 8 setp.le.s32 %r88,%r62,1072693247; @ %r88 bra $L5; .loc 1 158 5 setp.neu.f64 %r89,%r82,0dbff0000000000000; @ %r89 bra $L6; .loc 1 159 14 mov.u32 %r90,1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r90; call (%value_in),__math_divzero,(%out_arg1); ld.param.f64 %r91,[%value_in]; } mov.f64 %r81,%r91; bra $L1; $L6: .loc 1 161 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),__math_invalid,(%out_arg1); ld.param.f64 %r93,[%value_in]; } mov.f64 %r81,%r93; bra $L1; $L5: .loc 1 163 8 setp.gt.s32 %r94,%r62,1042284543; @ %r94 bra $L8; .loc 1 164 11 add.f64 %r95,%r82,0d4350000000000000; .loc 1 164 5 set.u32.gt.f64 %r97,%r95,0d0000000000000000; neg.s32 %r98,%r97; mov.u32 %r96,%r98; .loc 1 165 14 set.u32.le.s32 %r100,%r62,1016070143; neg.s32 %r101,%r100; mov.u32 %r99,%r101; cvt.u16.u8 %r154,%r96; mov.u16 %r103,%r154; cvt.u16.u8 %r154,%r99; mov.u16 %r104,%r154; and.b16 %r102,%r103,%r104; cvt.u32.u16 %r105,%r102; cvt.u16.u8 %r106,%r105; setp.ne.u16 %r107,%r106,0; @ %r107 bra $L20; .loc 1 168 19 mul.f64 %r108,%r82,%r82; .loc 1 168 16 fma.rn.f64 %r81,%r108,0dbfe0000000000000,%r82; bra $L1; $L8: .loc 1 170 13 add.u32 %r110,%r85,1076707644; .loc 1 170 8 setp.le.u32 %r111,%r110,1076707644; @ %r111 bra $L9; .loc 1 197 10 mul.f64 %r112,%r82,0d3fe0000000000000; .loc 1 197 6 mul.f64 %r65,%r112,%r82; mov.u32 %r57,0; bra $L10; $L3: .loc 1 173 32 add.f64 %r81,%r82,%r82; bra $L1; $L22: .loc 1 175 8 setp.gt.s32 %r113,%r58,1128267775; @ %r113 bra $L11; $L9: .loc 1 176 6 add.f64 %r55,%r82,0d3ff0000000000000; .loc 1 177 3 mov.b64 %r114,%r55; shr.u64 %r115,%r114,32; cvt.u32.u64 %r58,%r115; .loc 1 178 18 shr.s32 %r117,%r58,20; .loc 1 178 13 add.u32 %r57,%r117,-1023; .loc 1 179 31 setp.le.s32 %r118,%r57,0; @ %r118 bra $L12; .loc 1 179 28 sub.f64 %r119,%r55,%r82; .loc 1 179 31 mov.f64 %r120,0d3ff0000000000000; sub.f64 %r60,%r120,%r119; bra $L13; $L12: .loc 1 179 36 mov.f64 %r122,0d3ff0000000000000; sub.f64 %r121,%r55,%r122; .loc 1 179 31 sub.f64 %r60,%r82,%r121; $L13: .loc 1 180 5 div.rn.f64 %r54,%r60,%r55; bra $L14; $L11: .loc 1 184 18 shr.s32 %r123,%r58,20; .loc 1 184 13 add.u32 %r57,%r123,-1023; .loc 1 182 6 mov.f64 %r55,%r82; .loc 1 185 6 mov.f64 %r54,0d0000000000000000; $L14: .loc 1 187 9 and.b32 %r59,%r58,1048575; .loc 1 188 8 setp.gt.s32 %r124,%r59,434333; @ %r124 bra $L15; .loc 1 189 10 mov.b64 %r79,%r55; or.b32 %r125,%r59,1072693248; cvt.u64.u32 %r126,%r125; shl.b64 %r127,%r126,32; and.b64 %r128,%r79,4294967295; or.b64 %r129,%r128,%r127; mov.b64 %r56,%r129; bra $L16; $L15: .loc 1 191 12 add.u32 %r57,%r57,1; .loc 1 192 3 mov.b64 %r80,%r55; or.b32 %r130,%r59,1071644672; cvt.u64.u32 %r131,%r130; shl.b64 %r132,%r131,32; and.b64 %r133,%r80,4294967295; or.b64 %r134,%r133,%r132; mov.b64 %r56,%r134; .loc 1 193 26 mov.u32 %r135,1048576; sub.u32 %r33,%r135,%r59; .loc 1 193 13 shr.s32 %r59,%r33,2; $L16: .loc 1 195 8 mov.f64 %r136,0d3ff0000000000000; sub.f64 %r82,%r56,%r136; .loc 1 197 10 mul.f64 %r137,%r82,0d3fe0000000000000; .loc 1 197 6 mul.f64 %r65,%r137,%r82; .loc 1 198 4 setp.ne.u32 %r138,%r59,0; @ %r138 bra $L10; .loc 1 199 13 setp.neu.f64 %r139,%r82,0d0000000000000000; @ %r139 bra $L17; .loc 1 199 27 setp.eq.u32 %r140,%r57,0; @ %r140 bra $L21; .loc 1 200 35 cvt.rn.f64.s32 %r35,%r57; .loc 1 200 31 fma.rn.f64 %r69,%r35,0d3dea39ef35793c76,%r54; .loc 1 200 59 fma.rn.f64 %r81,%r35,0d3fe62e42fee00000,%r69; bra $L1; $L17: .loc 1 201 19 fma.rn.f64 %r36,%r82,0dbfe5555555555555,0d3ff0000000000000; .loc 1 201 8 mul.f64 %r68,%r36,%r65; .loc 1 202 8 setp.ne.u32 %r142,%r57,0; @ %r142 bra $L18; .loc 1 202 23 sub.f64 %r81,%r82,%r68; bra $L1; $L18: .loc 1 203 20 cvt.rn.f64.s32 %r37,%r57; .loc 1 203 41 fma.rn.f64 %r38,%r37,0d3dea39ef35793c76,%r54; .loc 1 203 31 sub.f64 %r143,%r68,%r38; .loc 1 203 45 sub.f64 %r144,%r143,%r82; .loc 1 203 27 neg.f64 %r145,%r144; fma.rn.f64 %r81,%r37,0d3fe62e42fee00000,%r145; bra $L1; $L10: .loc 1 205 13 add.f64 %r146,%r82,0d4000000000000000; .loc 1 205 5 div.rn.f64 %r66,%r82,%r146; .loc 1 206 4 mul.f64 %r67,%r66,%r66; .loc 1 207 47 fma.rn.f64 %r42,%r67,0d3fc2f112df3e5244,0d3fc39a09d078c69f; .loc 1 207 40 fma.rn.f64 %r43,%r42,%r67,0d3fc7466496cb03de; .loc 1 207 33 fma.rn.f64 %r44,%r43,%r67,0d3fcc71c51d8e78af; .loc 1 207 26 fma.rn.f64 %r45,%r44,%r67,0d3fd2492494229359; .loc 1 207 19 fma.rn.f64 %r46,%r45,%r67,0d3fd999999997fa04; .loc 1 207 12 fma.rn.f64 %r47,%r46,%r67,0d3fe5555555555593; .loc 1 208 33 fma.rn.f64 %r76,%r47,%r67,%r65; .loc 1 208 27 mul.f64 %r77,%r66,%r76; .loc 1 208 4 setp.ne.u32 %r147,%r57,0; @ %r147 bra $L19; .loc 1 208 25 sub.f64 %r148,%r65,%r77; .loc 1 208 19 sub.f64 %r81,%r82,%r148; bra $L1; $L19: .loc 1 209 12 cvt.rn.f64.s32 %r49,%r57; .loc 1 209 48 fma.rn.f64 %r50,%r49,0d3dea39ef35793c76,%r54; .loc 1 209 38 add.f64 %r149,%r50,%r77; .loc 1 209 26 sub.f64 %r150,%r65,%r149; .loc 1 209 53 sub.f64 %r151,%r150,%r82; .loc 1 209 19 neg.f64 %r152,%r151; fma.rn.f64 %r81,%r49,0d3fe62e42fee00000,%r152; bra $L1; $L20: .loc 1 166 14 mov.f64 %r81,%r82; bra $L1; $L21: .loc 1 199 41 mov.f64 %r81,0d0000000000000000; $L1: .loc 1 210 1 mov.f64 %value,%r81; st.param.f64 [%value_out],%value; ret; } lib_a-s_log2.o/ 0 0 0 644 822 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log2 .visible .func (.param .f64 %value_out) log2 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_log2.c" // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log2 .visible .func (.param .f64 %value_out) log2 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r24,%ar0; .loc 1 78 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),log,(%out_arg1); ld.param.f64 %r26,[%value_in]; } .loc 1 78 18 div.rn.f64 %value,%r26,0d3fe62e42fefa39ef; .loc 1 79 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_logb.o/ 0 0 0 644 2872 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logb .visible .func (.param .f64 %value_out) logb (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_logb.c" // BEGIN GLOBAL FUNCTION DEF: logb .visible .func (.param .f64 %value_out) logb (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r52; .reg .pred %r53; .reg .pred %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .pred %r70; .reg .u16 %r72; mov.f64 %r38,%ar0; .loc 1 88 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r41,%r40; cvt.u32.u64 %r36,%r39; .loc 1 89 5 and.b32 %r30,%r41,2147483647; .loc 1 90 4 and.b32 %r44,%r41,2146435072; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L2; .loc 1 91 12 or.b32 %r46,%r36,%r30; .loc 1 91 8 setp.ne.u32 %r47,%r46,0; @ %r47 bra $L3; .loc 1 95 13 mov.f64 %r48,0dbff0000000000000; div.rn.f64 %r37,%r48,0d0000000000000000; bra $L1; $L3: .loc 1 98 5 setp.ne.u32 %r49,%r30,0; @ %r49 bra $L5; .loc 1 99 26 setp.le.s32 %r50,%r36,0; @ %r50 bra $L10; .loc 1 99 15 mov.u32 %r35,-1043; $L7: .loc 1 99 41 add.u32 %r35,%r35,-1; .loc 1 99 32 add.u32 %r36,%r36,%r36; .loc 1 99 26 setp.gt.s32 %r52,%r36,0; @ %r52 bra $L7; .loc 1 103 13 cvt.rn.f64.s32 %r37,%r35; bra $L1; $L5: .loc 1 101 25 shl.b32 %r33,%r30,11; .loc 1 101 34 setp.le.s32 %r53,%r33,0; @ %r53 bra $L11; .loc 1 101 15 mov.u32 %r32,-1022; $L8: .loc 1 101 49 add.u32 %r32,%r32,-1; .loc 1 101 40 add.u32 %r33,%r33,%r33; .loc 1 101 34 setp.gt.s32 %r55,%r33,0; @ %r55 bra $L8; .loc 1 103 13 cvt.rn.f64.s32 %r37,%r32; bra $L1; $L10: .loc 1 99 26 mov.f64 %r37,0dc0904c0000000000; bra $L1; $L11: .loc 1 101 34 mov.f64 %r37,0dc08ff00000000000; .loc 1 103 13 bra $L1; $L2: .loc 1 105 10 setp.gt.s32 %r56,%r30,2146435071; @ %r56 bra $L9; .loc 1 105 36 shr.s32 %r57,%r30,20; .loc 1 105 41 add.u32 %r58,%r57,-1023; cvt.rn.f64.s32 %r37,%r58; bra $L1; $L9: .loc 1 106 13 set.u32.gt.s32 %r60,%r30,2146435072; neg.s32 %r61,%r60; mov.u32 %r59,%r61; .loc 1 106 25 set.u32.ne.u32 %r63,%r36,0; neg.s32 %r64,%r63; mov.u32 %r62,%r64; cvt.u16.u8 %r72,%r59; mov.u16 %r66,%r72; cvt.u16.u8 %r72,%r62; mov.u16 %r67,%r72; or.b16 %r65,%r66,%r67; cvt.u32.u16 %r68,%r65; .loc 1 106 10 cvt.u16.u8 %r69,%r68; setp.ne.u16 %r70,%r69,0; .loc 1 107 15 selp.f64 %r37,%r38,0d7ff0000000000000,%r70; $L1: .loc 1 108 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_lrint.o/0 0 0 644 4424 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lrint .visible .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_lrint.c" // BEGIN VAR DEF: TWO52 .const .align 8 .u64 TWO52[2] = {4841369599423283200,-4382002437431492608 }; // BEGIN GLOBAL FUNCTION DEF: lrint .visible .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .u32 %r46; .reg .u32 %r49; .reg .u32 %r54; .reg .f64 %r55; .reg .u32 %r58; .reg .u32 %r64; .reg .u64 %r71; .reg .f64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .f64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .pred %r97; .reg .pred %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u64 %r101; .reg .u32 %r102; .reg .u64 %r103; .reg .u32 %r105; .reg .u64 %r107; .reg .u32 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u64 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r125; .reg .u32 %r127; .reg .u64 %r128; .reg .pred %r129; mov.f64 %r72,%ar0; mov.b64 %r73,%r72; shr.u64 %r74,%r73,32; cvt.u32.u64 %r75,%r74; .loc 1 97 16 shr.u32 %r22,%r75,31; .loc 1 100 27 shr.s32 %r76,%r75,20; and.b32 %r24,%r76,2047; .loc 1 100 6 add.u32 %r54,%r24,-1023; .loc 1 103 5 setp.gt.s32 %r77,%r54,19; @ %r77 bra $L2; .loc 1 106 9 setp.ge.s32 %r78,%r54,-1; @ %r78 bra $L3; $L5: .loc 1 107 16 mov.u64 %r71,0; bra $L1; $L3: .loc 1 112 20 cvta.const.u64 %r79,TWO52; cvt.s64.s32 %r80,%r22; shl.b64 %r81,%r80,3; add.u64 %r82,%r79,%r81; ld.f64 %r25,[%r82]; .loc 1 112 25 add.f64 %r26,%r25,%r72; .loc 1 112 13 st.f64 [%frame],%r26; .loc 1 113 17 ld.f64 %r27,[%frame]; .loc 1 113 13 sub.f64 %r83,%r27,%r25; .loc 1 114 11 mov.b64 %r84,%r83; shr.u64 %r85,%r84,32; cvt.u32.u64 %r86,%r85; .loc 1 117 19 cvt.s64.s32 %r87,%r86; and.b64 %r88,%r87,-2147483649; .loc 1 117 14 setp.eq.u64 %r89,%r88,0; @ %r89 bra $L5; .loc 1 121 14 and.b32 %r64,%r86,1048575; .loc 1 122 14 or.b32 %r90,%r64,1048576; .loc 1 120 35 shr.s32 %r91,%r86,20; and.b32 %r92,%r91,2047; .loc 1 124 30 mov.u32 %r95,1043; sub.u32 %r94,%r95,%r92; .loc 1 124 23 shr.s32 %r96,%r90,%r94; .loc 1 124 18 cvt.s64.s32 %r71,%r96; bra $L6; $L2: .loc 1 127 11 setp.gt.s32 %r97,%r54,62; @ %r97 bra $L7; .loc 1 131 10 setp.le.s32 %r98,%r54,51; @ %r98 bra $L8; .loc 1 134 35 and.b32 %r99,%r75,1048575; .loc 1 134 49 or.b32 %r100,%r99,1048576; .loc 1 134 19 cvt.s64.s32 %r101,%r100; .loc 1 134 70 add.u32 %r102,%r24,-1043; .loc 1 134 63 shl.b64 %r103,%r101,%r102; .loc 1 136 21 cvt.u32.u64 %r105,%r73; cvt.u64.u32 %r107,%r105; .loc 1 136 42 add.u32 %r108,%r24,-1075; .loc 1 136 35 shl.b64 %r109,%r107,%r108; .loc 1 134 16 or.b64 %r71,%r103,%r109; bra $L6; $L8: .loc 1 141 20 cvta.const.u64 %r110,TWO52; cvt.s64.s32 %r111,%r22; shl.b64 %r112,%r111,3; add.u64 %r113,%r110,%r112; ld.f64 %r42,[%r113]; .loc 1 141 25 add.f64 %r43,%r42,%r72; .loc 1 141 13 st.f64 [%frame],%r43; .loc 1 142 17 ld.f64 %r44,[%frame]; .loc 1 142 13 sub.f64 %r55,%r44,%r42; .loc 1 143 11 mov.b64 %r114,%r55; shr.u64 %r115,%r114,32; cvt.u32.u64 %r116,%r115; .loc 1 144 35 shr.s32 %r117,%r116,20; and.b32 %r46,%r117,2047; .loc 1 145 14 and.b32 %r58,%r116,1048575; .loc 1 146 14 or.b32 %r118,%r58,1048576; .loc 1 154 21 cvt.s64.s32 %r119,%r118; .loc 1 154 42 add.u32 %r120,%r46,-1043; .loc 1 154 35 shl.b64 %r71,%r119,%r120; .loc 1 155 6 mov.u32 %r122,1075; sub.u32 %r49,%r122,%r46; setp.gt.u32 %r123,%r49,31; @ %r123 bra $L6; cvt.u32.u64 %r125,%r114; shr.u32 %r127,%r125,%r49; cvt.u64.u32 %r128,%r127; .loc 1 154 18 or.b64 %r71,%r71,%r128; bra $L6; $L7: .loc 1 160 14 cvt.rzi.s64.f64 %r71,%r72; bra $L1; $L6: .loc 1 163 23 setp.eq.u32 %r129,%r22,0; @ %r129 bra $L1; neg.s64 %r71,%r71; $L1: .loc 1 164 1 mov.u64 %value,%r71; st.param.u64 [%value_out],%value; ret; } /1095 0 0 0 644 2973 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lround .visible .func (.param .u64 %value_out) lround (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_lround.c" // BEGIN GLOBAL FUNCTION DEF: lround .visible .func (.param .u64 %value_out) lround (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r49; .reg .u32 %r52; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .u64 %r86; mov.f64 %r54,%ar0; mov.b64 %r55,%r54; shr.u64 %r56,%r55,32; cvt.u32.u64 %r49,%r56; .loc 1 69 35 setp.lt.s32 %r58,%r49,0; selp.u32 %r42,-1,1,%r58; .loc 1 71 44 shr.u32 %r59,%r49,20; and.b32 %r24,%r59,2047; .loc 1 71 51 add.u32 %r43,%r24,-1023; .loc 1 72 7 and.b32 %r44,%r49,1048575; .loc 1 73 7 or.b32 %r40,%r44,1048576; .loc 1 75 6 setp.gt.s32 %r60,%r43,19; @ %r60 bra $L3; .loc 1 78 10 setp.ge.s32 %r61,%r43,0; @ %r61 bra $L4; .loc 1 80 14 setp.ne.u32 %r62,%r43,-1; @ %r62 bra $L12; .loc 1 83 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 89 26 mov.u32 %r64,524288; shr.s32 %r63,%r64,%r43; .loc 1 89 15 add.u32 %r65,%r63,%r40; .loc 1 91 31 mov.u32 %r67,20; sub.u32 %r66,%r67,%r43; .loc 1 91 24 shr.u32 %r68,%r65,%r66; .loc 1 91 18 cvt.u64.u32 %r41,%r68; bra $L6; $L3: .loc 1 94 11 setp.gt.u32 %r69,%r43,62; @ %r69 bra $L7; cvt.u32.u64 %r71,%r55; .loc 1 101 57 add.u32 %r52,%r24,-1043; .loc 1 98 10 setp.le.s32 %r72,%r43,51; @ %r72 bra $L8; .loc 1 103 47 add.u32 %r73,%r24,-1075; .loc 1 103 24 shl.b32 %r74,%r71,%r73; cvt.u64.u32 %r75,%r74; .loc 1 101 19 cvt.u64.u32 %r76,%r40; .loc 1 101 34 shl.b64 %r77,%r76,%r52; .loc 1 101 16 or.b64 %r41,%r75,%r77; bra $L6; $L8: .loc 1 111 35 mov.u32 %r79,-2147483648; shr.u32 %r78,%r79,%r52; .loc 1 108 24 add.u32 %r45,%r78,%r71; .loc 1 112 14 setp.ge.u32 %r80,%r45,%r71; @ %r80 bra $L9; .loc 1 113 13 add.u32 %r40,%r40,1; $L9: .loc 1 116 21 cvt.u64.u32 %r81,%r40; .loc 1 116 36 shl.b64 %r41,%r81,%r52; .loc 1 119 23 mov.u32 %r82,52; sub.u32 %r37,%r82,%r43; setp.eq.u32 %r83,%r37,32; @ %r83 bra $L6; shr.u32 %r84,%r45,%r37; cvt.u64.u32 %r85,%r84; .loc 1 116 18 or.b64 %r41,%r41,%r85; bra $L6; $L7: .loc 1 124 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 126 15 cvt.s64.s32 %r86,%r42; mul.lo.u64 %r53,%r86,%r41; bra $L1; $L12: .loc 1 81 20 mov.u64 %r53,0; $L1: .loc 1 127 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-s_modf.o/ 0 0 0 644 3651 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .f64 %r32; .reg .f64 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .f64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r86; .reg .pred %r87; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u64 %r102; .reg .u64 %r106; .reg .u64 %r107; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; mov.f64 %r54,%ar0; mov.u64 %r55,%ar1; mov.b64 %r56,%r54; shr.u64 %r57,%r56,32; cvt.u32.u64 %r58,%r57; cvt.u32.u64 %r60,%r56; .loc 1 76 11 shr.s32 %r61,%r58,20; .loc 1 76 16 and.b32 %r23,%r61,2047; .loc 1 76 5 add.u32 %r44,%r23,-1023; .loc 1 77 4 setp.gt.s32 %r62,%r44,19; @ %r62 bra $L2; .loc 1 78 8 setp.ge.s32 %r63,%r44,0; @ %r63 bra $L3; .loc 1 79 10 and.b32 %r64,%r58,-2147483648; cvt.u64.u32 %r65,%r64; shl.b64 %r69,%r65,32; st.u64 [%r55],%r69; .loc 1 80 10 mov.f64 %r53,%r54; bra $L1; $L3: .loc 1 82 19 mov.u32 %r70,1048575; shr.s32 %r46,%r70,%r44; .loc 1 83 10 and.b32 %r71,%r58,%r46; .loc 1 83 13 or.b32 %r72,%r71,%r60; .loc 1 83 5 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L5; .loc 1 84 13 st.f64 [%r55],%r54; .loc 1 85 7 and.b32 %r74,%r58,-2147483648; cvt.u64.u32 %r75,%r74; shl.b64 %r79,%r75,32; mov.b64 %r53,%r79; .loc 1 86 14 bra $L1; $L5: .loc 1 88 7 not.b32 %r80,%r46; and.b32 %r81,%r80,%r58; cvt.u64.u32 %r82,%r81; shl.b64 %r86,%r82,32; mov.b64 %r32,%r86; st.f64 [%r55],%r32; .loc 1 89 16 sub.f64 %r53,%r54,%r32; bra $L1; $L2: .loc 1 92 12 setp.le.s32 %r87,%r44,51; @ %r87 bra $L6; .loc 1 93 12 st.f64 [%r55],%r54; .loc 1 94 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r89,[%value_in]; } .loc 1 94 9 setp.ne.u32 %r90,%r89,0; @ %r90 bra $L7; .loc 1 94 54 add.f64 %r53,%r54,%r54; .loc 1 94 51 st.f64 [%r55],%r53; bra $L1; $L7: .loc 1 95 6 and.b32 %r91,%r58,-2147483648; cvt.u64.u32 %r92,%r91; shl.b64 %r96,%r92,32; mov.b64 %r53,%r96; .loc 1 96 13 bra $L1; $L6: .loc 1 98 41 add.u32 %r97,%r23,-1043; .loc 1 98 8 mov.u32 %r98,-1; shr.u32 %r45,%r98,%r97; .loc 1 99 12 and.b32 %r99,%r60,%r45; .loc 1 99 8 setp.ne.u32 %r100,%r99,0; @ %r100 bra $L8; .loc 1 100 9 st.f64 [%r55],%r54; .loc 1 101 3 and.b32 %r101,%r58,-2147483648; cvt.u64.u32 %r102,%r101; shl.b64 %r106,%r102,32; mov.b64 %r53,%r106; .loc 1 102 10 bra $L1; $L8: .loc 1 104 10 cvt.u64.u32 %r107,%r58; not.b32 %r111,%r45; and.b32 %r112,%r111,%r60; cvt.u64.u32 %r113,%r112; shl.b64 %r114,%r107,32; or.b64 %r115,%r114,%r113; mov.b64 %r42,%r115; st.f64 [%r55],%r42; .loc 1 105 12 sub.f64 %r53,%r54,%r42; $L1: .loc 1 108 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 0 0 0 644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_nan.c" // BEGIN GLOBAL FUNCTION DEF: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 44 9 mov.f64 %value,0d7ff8000000000000; .loc 1 45 1 st.param.f64 [%value_out],%value; ret; } /1113 0 0 0 644 815 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nearbyint .visible .func (.param .f64 %value_out) nearbyint (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_nearbyint.c" // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: nearbyint .visible .func (.param .f64 %value_out) nearbyint (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 61 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),rint,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 62 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /1134 0 0 0 644 5769 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nextafter .visible .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_nextafter.c" // BEGIN GLOBAL FUNCTION DEF: nextafter .visible .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r85; .reg .u64 %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u32 %r114; .reg .u16 %r115; .reg .pred %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u16 %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r131; .reg .pred %r132; .reg .f64 %r133; .reg .pred %r134; .reg .u64 %r135; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u16 %r150; mov.f64 %r57,%ar0; mov.f64 %r58,%ar1; .loc 1 65 2 mov.b64 %r59,%r57; shr.u64 %r60,%r59,32; cvt.u32.u64 %r40,%r60; cvt.u32.u64 %r49,%r59; mov.b64 %r64,%r58; shr.u64 %r65,%r64,32; cvt.u32.u64 %r50,%r65; cvt.u32.u64 %r51,%r64; .loc 1 67 5 and.b32 %r43,%r40,2147483647; .loc 1 68 5 and.b32 %r44,%r50,2147483647; .loc 1 70 4 setp.le.s32 %r69,%r43,2146435071; @ %r69 bra $L2; .loc 1 70 28 add.u32 %r70,%r43,-2146435072; .loc 1 70 40 or.b32 %r71,%r70,%r49; .loc 1 70 22 setp.ne.u32 %r72,%r71,0; @ %r72 bra $L3; $L2: .loc 1 70 49 setp.le.s32 %r73,%r44,2146435071; @ %r73 bra $L4; .loc 1 71 28 add.u32 %r74,%r44,-2146435072; .loc 1 71 40 or.b32 %r75,%r74,%r51; .loc 1 71 22 setp.eq.u32 %r76,%r75,0; @ %r76 bra $L4; $L3: .loc 1 72 13 add.f64 %r56,%r57,%r58; bra $L1; $L4: .loc 1 73 4 setp.eq.f64 %r77,%r57,%r58; @ %r77 bra $L17; .loc 1 74 8 or.b32 %r78,%r43,%r49; .loc 1 74 4 setp.ne.u32 %r79,%r78,0; @ %r79 bra $L6; .loc 1 75 6 and.b32 %r80,%r50,-2147483648; cvt.u64.u32 %r81,%r80; shl.b64 %r85,%r81,32; or.b64 %r86,%r85,1; mov.b64 %r47,%r86; .loc 1 76 8 mul.f64 %r56,%r47,%r47; .loc 1 77 8 setp.eq.f64 %r87,%r47,%r56; .loc 1 77 37 selp.f64 %r56,%r56,%r47,%r87; bra $L1; $L6: .loc 1 79 4 setp.lt.s32 %r88,%r40,0; @ %r88 bra $L7; .loc 1 80 8 setp.gt.s32 %r89,%r40,%r50; @ %r89 bra $L8; .loc 1 80 20 set.u32.eq.u32 %r91,%r40,%r50; neg.s32 %r92,%r91; mov.u32 %r90,%r92; .loc 1 80 30 set.u32.gt.u32 %r94,%r49,%r51; neg.s32 %r95,%r94; mov.u32 %r93,%r95; .loc 1 80 25 cvt.u16.u8 %r150,%r90; mov.u16 %r97,%r150; cvt.u16.u8 %r150,%r93; mov.u16 %r98,%r150; and.b16 %r96,%r97,%r98; cvt.u32.u16 %r99,%r96; .loc 1 80 14 cvt.u16.u8 %r100,%r99; setp.eq.u16 %r101,%r100,0; @ %r101 bra $L9; $L8: .loc 1 81 5 setp.ne.u32 %r102,%r49,0; @ %r102 bra $L10; .loc 1 81 16 add.u32 %r40,%r40,-1; $L10: .loc 1 82 6 add.u32 %r41,%r49,-1; bra $L11; $L9: .loc 1 84 6 add.u32 %r41,%r49,1; .loc 1 85 5 setp.ne.u32 %r103,%r49,-1; @ %r103 bra $L11; .loc 1 85 16 add.u32 %r40,%r40,1; bra $L11; $L7: .loc 1 88 11 not.b32 %r105,%r50; shr.u32 %r106,%r105,31; mov.u32 %r107,%r106; .loc 1 88 18 set.u32.gt.s32 %r109,%r40,%r50; neg.s32 %r110,%r109; mov.u32 %r108,%r110; .loc 1 88 14 cvt.u16.u8 %r150,%r107; mov.u16 %r112,%r150; cvt.u16.u8 %r150,%r108; mov.u16 %r113,%r150; or.b16 %r111,%r112,%r113; cvt.u32.u16 %r114,%r111; .loc 1 88 8 cvt.u16.u8 %r115,%r114; setp.ne.u16 %r116,%r115,0; @ %r116 bra $L12; .loc 1 88 27 set.u32.eq.u32 %r118,%r40,%r50; neg.s32 %r119,%r118; mov.u32 %r117,%r119; .loc 1 88 37 set.u32.gt.u32 %r121,%r49,%r51; neg.s32 %r122,%r121; mov.u32 %r120,%r122; .loc 1 88 32 cvt.u16.u8 %r150,%r117; mov.u16 %r124,%r150; cvt.u16.u8 %r150,%r120; mov.u16 %r125,%r150; and.b16 %r123,%r124,%r125; cvt.u32.u16 %r126,%r123; .loc 1 88 21 cvt.u16.u8 %r127,%r126; setp.eq.u16 %r128,%r127,0; @ %r128 bra $L13; $L12: .loc 1 89 5 setp.ne.u32 %r129,%r49,0; @ %r129 bra $L14; .loc 1 89 16 add.u32 %r40,%r40,-1; $L14: .loc 1 90 6 add.u32 %r41,%r49,-1; bra $L11; $L13: .loc 1 92 6 add.u32 %r41,%r49,1; .loc 1 93 5 setp.ne.u32 %r130,%r49,-1; @ %r130 bra $L11; .loc 1 93 16 add.u32 %r40,%r40,1; $L11: .loc 1 96 5 and.b32 %r45,%r40,2146435072; .loc 1 97 4 setp.ne.u32 %r131,%r45,2146435072; @ %r131 bra $L15; .loc 1 97 29 add.f64 %r56,%r57,%r57; bra $L1; $L15: .loc 1 98 4 setp.gt.s32 %r132,%r45,1048575; @ %r132 bra $L16; .loc 1 99 8 mul.f64 %r133,%r57,%r57; .loc 1 100 8 setp.eq.f64 %r134,%r57,%r133; @ %r134 bra $L16; .loc 1 101 10 cvt.u64.u32 %r135,%r40; cvt.u64.u32 %r139,%r41; shl.b64 %r140,%r135,32; or.b64 %r141,%r140,%r139; mov.b64 %r56,%r141; .loc 1 102 10 bra $L1; $L16: .loc 1 105 2 cvt.u64.u32 %r142,%r40; cvt.u64.u32 %r146,%r41; shl.b64 %r147,%r142,32; or.b64 %r148,%r147,%r146; mov.b64 %r56,%r148; .loc 1 106 9 bra $L1; $L17: .loc 1 73 18 mov.f64 %r56,%r57; $L1: .loc 1 107 1 mov.f64 %value,%r56; st.param.f64 [%value_out],%value; ret; } lib_a-s_pow10.o/0 0 0 644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: pow10 .visible .func (.param .f64 %value_out) pow10 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_pow10.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: pow10 .visible .func (.param .f64 %value_out) pow10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r23,%ar0; .loc 1 65 10 mov.f64 %r24,0d4024000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r23; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 66 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } /1155 0 0 0 644 13903 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remquo .visible .func (.param .f64 %value_out) remquo (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/common/s_remquo.c" // BEGIN VAR DEF: Zero .const .align 8 .u64 Zero[2] = {0,-9223372036854775808 }; // BEGIN GLOBAL FUNCTION DEF: remquo .visible .func (.param .f64 %value_out) remquo (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r67; .reg .u32 %r70; .reg .u32 %r77; .reg .f64 %r81; .reg .f64 %r83; .reg .f64 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r118; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .f64 %r124; .reg .u32 %r125; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u16 %r152; .reg .u16 %r153; .reg .u16 %r154; .reg .u32 %r155; .reg .u16 %r156; .reg .pred %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .pred %r162; .reg .u32 %r163; .reg .pred %r166; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u16 %r173; .reg .u16 %r174; .reg .u16 %r175; .reg .u32 %r176; .reg .u16 %r177; .reg .pred %r178; .reg .pred %r179; .reg .pred %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .pred %r187; .reg .pred %r188; .reg .pred %r189; .reg .pred %r191; .reg .pred %r192; .reg .pred %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .pred %r197; .reg .pred %r198; .reg .pred %r199; .reg .pred %r201; .reg .pred %r202; .reg .pred %r204; .reg .u32 %r205; .reg .pred %r206; .reg .u32 %r207; .reg .pred %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u32 %r214; .reg .pred %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .u32 %r218; .reg .u32 %r219; .reg .pred %r220; .reg .pred %r221; .reg .pred %r222; .reg .pred %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r227; .reg .u32 %r228; .reg .pred %r231; .reg .pred %r232; .reg .pred %r233; .reg .u32 %r234; .reg .pred %r235; .reg .pred %r236; .reg .pred %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .pred %r246; .reg .u32 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u32 %r252; .reg .u32 %r253; .reg .pred %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u64 %r259; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r265; .reg .pred %r266; .reg .pred %r267; .reg .pred %r268; .reg .u32 %r269; .reg .pred %r270; .reg .pred %r271; .reg .pred %r272; .reg .u32 %r273; .reg .pred %r274; .reg .u64 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u64 %r279; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .pred %r283; .reg .pred %r285; .reg .u16 %r287; mov.f64 %r134,%ar0; mov.f64 %r135,%ar1; mov.u64 %r136,%ar2; mov.b64 %r137,%r134; shr.u64 %r138,%r137,32; cvt.u32.u64 %r139,%r138; mov.b64 %r140,%r135; shr.u64 %r141,%r140,32; cvt.u32.u64 %r142,%r141; cvt.u32.u64 %r144,%r140; mov.u32 %r94,%r144; .loc 1 92 5 and.b32 %r89,%r139,2147483647; .loc 1 93 5 and.b32 %r102,%r142,2147483647; .loc 1 96 8 or.b32 %r145,%r102,%r144; .loc 1 96 4 set.u32.eq.u32 %r147,%r145,0; neg.s32 %r148,%r147; mov.u32 %r146,%r148; .loc 1 96 15 set.u32.gt.s32 %r150,%r89,2146435071; neg.s32 %r151,%r150; mov.u32 %r149,%r151; cvt.u16.u8 %r287,%r146; mov.u16 %r153,%r287; cvt.u16.u8 %r287,%r149; mov.u16 %r154,%r287; or.b16 %r152,%r153,%r154; cvt.u32.u16 %r155,%r152; cvt.u16.u8 %r156,%r155; setp.ne.u16 %r157,%r156,0; @ %r157 bra $L2; .loc 1 97 14 neg.s32 %r158,%r144; .loc 1 97 13 or.b32 %r159,%r158,%r144; .loc 1 97 18 shr.u32 %r160,%r159,31; .loc 1 97 8 or.b32 %r161,%r160,%r102; .loc 1 96 33 setp.le.u32 %r162,%r161,2146435072; @ %r162 bra $L3; $L2: .loc 1 98 11 mov.u32 %r163,0; st.u32 [%r136],%r163; .loc 1 99 15 mul.f64 %r29,%r134,%r135; .loc 1 99 18 div.rn.f64 %r133,%r29,%r29; bra $L1; $L3: cvt.u32.u64 %r93,%r137; .loc 1 91 5 and.b32 %r101,%r139,-2147483648; .loc 1 90 12 xor.b32 %r128,%r139,%r142; .loc 1 101 4 setp.gt.s32 %r166,%r89,%r102; @ %r166 bra $L5; .loc 1 102 12 set.u32.lt.s32 %r168,%r89,%r102; neg.s32 %r169,%r168; mov.u32 %r167,%r169; .loc 1 102 21 set.u32.lt.u32 %r171,%r93,%r144; neg.s32 %r172,%r171; mov.u32 %r170,%r172; .loc 1 102 16 cvt.u16.u8 %r287,%r167; mov.u16 %r174,%r287; cvt.u16.u8 %r287,%r170; mov.u16 %r175,%r287; or.b16 %r173,%r174,%r175; cvt.u32.u16 %r176,%r173; .loc 1 102 8 cvt.u16.u8 %r177,%r176; setp.ne.u16 %r178,%r177,0; @ %r178 bra $L50; .loc 1 106 8 setp.ne.u32 %r179,%r93,%r144; @ %r179 bra $L5; .loc 1 107 20 setp.lt.s32 %r180,%r128,0; selp.u32 %r96,-1,1,%r180; .loc 1 107 8 st.u32 [%r136],%r96; .loc 1 108 14 cvta.const.u64 %r181,Zero; .loc 1 108 29 shr.u32 %r182,%r101,31; .loc 1 108 14 cvt.u64.u32 %r183,%r182; shl.b64 %r184,%r183,3; add.u64 %r185,%r181,%r184; ld.f64 %r133,[%r185]; bra $L1; $L5: .loc 1 113 4 and.b32 %r186,%r139,2146435072; setp.ne.u32 %r187,%r186,0; @ %r187 bra $L8; .loc 1 114 8 setp.ne.u32 %r188,%r89,0; @ %r188 bra $L9; .loc 1 115 21 mov.u32 %r108,%r93; .loc 1 115 27 setp.le.s32 %r189,%r93,0; @ %r189 bra $L52; .loc 1 115 11 mov.u32 %r92,-1043; $L11: .loc 1 115 41 add.u32 %r92,%r92,-1; .loc 1 115 32 add.u32 %r108,%r108,%r108; .loc 1 115 27 setp.gt.s32 %r191,%r108,0; @ %r191 bra $L11; bra $L10; $L9: .loc 1 117 20 shl.b32 %r107,%r89,11; .loc 1 117 32 setp.le.s32 %r192,%r107,0; @ %r192 bra $L53; .loc 1 117 11 mov.u32 %r92,-1022; $L12: .loc 1 117 46 add.u32 %r92,%r92,-1; .loc 1 117 37 add.u32 %r107,%r107,%r107; .loc 1 117 32 setp.gt.s32 %r194,%r107,0; @ %r194 bra $L12; bra $L10; $L8: .loc 1 119 17 shr.s32 %r195,%r89,20; .loc 1 119 12 add.u32 %r92,%r195,-1023; bra $L10; $L52: .loc 1 115 11 mov.u32 %r92,-1043; bra $L10; $L53: .loc 1 117 11 mov.u32 %r92,-1022; $L10: .loc 1 122 4 and.b32 %r196,%r142,2146435072; setp.ne.u32 %r197,%r196,0; @ %r197 bra $L13; .loc 1 123 8 setp.ne.u32 %r198,%r102,0; @ %r198 bra $L14; .loc 1 124 21 mov.u32 %r111,%r144; .loc 1 124 27 setp.le.s32 %r199,%r144,0; @ %r199 bra $L54; .loc 1 124 11 mov.u32 %r121,-1043; $L16: .loc 1 124 41 add.u32 %r121,%r121,-1; .loc 1 124 32 add.u32 %r111,%r111,%r111; .loc 1 124 27 setp.gt.s32 %r201,%r111,0; @ %r201 bra $L16; bra $L15; $L14: .loc 1 126 20 shl.b32 %r109,%r102,11; .loc 1 126 32 setp.le.s32 %r202,%r109,0; @ %r202 bra $L55; .loc 1 126 11 mov.u32 %r121,-1022; $L17: .loc 1 126 46 add.u32 %r121,%r121,-1; .loc 1 126 37 add.u32 %r109,%r109,%r109; .loc 1 126 32 setp.gt.s32 %r204,%r109,0; @ %r204 bra $L17; bra $L15; $L13: .loc 1 128 17 shr.s32 %r205,%r102,20; .loc 1 128 12 add.u32 %r121,%r205,-1023; bra $L15; $L54: .loc 1 124 11 mov.u32 %r121,-1043; bra $L15; $L55: .loc 1 126 11 mov.u32 %r121,-1022; $L15: .loc 1 131 4 setp.lt.s32 %r206,%r92,-1022; @ %r206 bra $L18; .loc 1 132 33 and.b32 %r37,%r139,1048575; .loc 1 132 9 or.b32 %r88,%r37,1048576; bra $L19; $L18: .loc 1 134 8 mov.u32 %r207,-1022; sub.u32 %r112,%r207,%r92; .loc 1 135 8 setp.gt.s32 %r208,%r112,31; @ %r208 bra $L20; .loc 1 136 18 shl.b32 %r38,%r89,%r112; .loc 1 136 31 add.u32 %r209,%r92,1054; .loc 1 136 26 shr.u32 %r210,%r93,%r209; .loc 1 136 13 or.b32 %r88,%r210,%r38; .loc 1 137 13 shl.b32 %r93,%r93,%r112; bra $L19; $L20: .loc 1 139 14 mov.u32 %r212,-1054; sub.u32 %r211,%r212,%r92; .loc 1 139 10 shl.b32 %r88,%r93,%r211; .loc 1 140 6 mov.u32 %r93,0; $L19: .loc 1 143 4 setp.lt.s32 %r285,%r121,-1022; @ %r285 bra $L21; .loc 1 144 33 and.b32 %r43,%r142,1048575; .loc 1 144 9 or.b32 %r90,%r43,1048576; .loc 1 165 13 sub.u32 %r129,%r93,%r144; bra $L22; $L21: .loc 1 146 8 mov.u32 %r214,-1022; sub.u32 %r113,%r214,%r121; .loc 1 147 8 setp.gt.s32 %r215,%r113,31; @ %r215 bra $L23; .loc 1 148 18 shl.b32 %r44,%r102,%r113; .loc 1 148 31 add.u32 %r216,%r121,1054; .loc 1 148 26 shr.u32 %r217,%r144,%r216; .loc 1 148 13 or.b32 %r90,%r217,%r44; .loc 1 149 13 shl.b32 %r94,%r144,%r113; .loc 1 165 13 sub.u32 %r129,%r93,%r94; bra $L22; $L23: .loc 1 151 14 mov.u32 %r219,-1054; sub.u32 %r218,%r219,%r121; .loc 1 151 10 shl.b32 %r90,%r144,%r218; .loc 1 157 4 sub.u32 %r130,%r92,%r121; .loc 1 159 9 add.u32 %r115,%r130,-1; .loc 1 159 8 setp.ne.u32 %r220,%r130,0; @ %r220 bra $L56; bra $L72; $L22: .loc 1 157 4 sub.u32 %r114,%r92,%r121; .loc 1 159 9 add.u32 %r115,%r114,-1; .loc 1 159 8 setp.eq.u32 %r221,%r114,0; @ ! %r221 bra $L24; bra $L57; $L56: .loc 1 152 6 mov.u32 %r94,0; $L24: .loc 1 158 4 mov.u32 %r95,0; $L30: .loc 1 160 8 sub.u32 %r91,%r88,%r90; .loc 1 160 27 setp.ge.u32 %r222,%r93,%r94; @ %r222 bra $L27; .loc 1 160 38 add.u32 %r91,%r91,-1; $L27: .loc 1 161 8 setp.ge.s32 %r223,%r91,0; @ %r223 bra $L28; .loc 1 161 22 add.u32 %r224,%r88,%r88; .loc 1 161 29 shr.u32 %r225,%r93,31; .loc 1 161 25 add.u32 %r88,%r224,%r225; .loc 1 161 39 add.u32 %r93,%r93,%r93; bra $L29; $L28: .loc 1 160 17 sub.u32 %r123,%r93,%r94; .loc 1 162 19 add.u32 %r227,%r91,%r91; .loc 1 162 26 shr.u32 %r228,%r123,31; .loc 1 162 22 add.u32 %r88,%r227,%r228; .loc 1 162 36 add.u32 %r93,%r123,%r123; .loc 1 162 46 add.u32 %r95,%r95,1; $L29: .loc 1 163 8 add.u32 %r95,%r95,%r95; .loc 1 159 9 add.u32 %r115,%r115,-1; .loc 1 159 8 setp.ne.u32 %r231,%r115,-1; @ %r231 bra $L30; .loc 1 165 13 sub.u32 %r129,%r93,%r94; bra $L26; $L57: .loc 1 158 4 mov.u32 %r95,%r114; $L26: .loc 1 165 4 sub.u32 %r116,%r88,%r90; .loc 1 165 23 setp.lt.u32 %r232,%r93,%r94; @ ! %r232 bra $L32; .loc 1 165 34 add.u32 %r116,%r116,-1; $L32: .loc 1 166 4 setp.lt.s32 %r233,%r116,0; @ %r233 bra $L33; .loc 1 166 26 add.u32 %r95,%r95,1; mov.u32 %r93,%r129; mov.u32 %r88,%r116; $L33: .loc 1 169 8 or.b32 %r234,%r88,%r93; .loc 1 169 4 setp.eq.u32 %r235,%r234,0; @ %r235 bra $L34; .loc 1 174 10 setp.le.s32 %r236,%r88,1048575; @ %r236 bra $L35; bra $L36; $L34: .loc 1 170 8 and.b32 %r122,%r95,2147483647; .loc 1 171 23 setp.ge.s32 %r237,%r128,0; @ %r237 bra $L37; .loc 1 171 20 neg.s32 %r97,%r122; bra $L38; $L37: .loc 1 171 23 mov.u32 %r97,%r122; $L38: .loc 1 171 11 st.u32 [%r136],%r97; .loc 1 172 17 cvta.const.u64 %r238,Zero; .loc 1 172 32 shr.u32 %r239,%r101,31; .loc 1 172 17 cvt.u64.u32 %r240,%r239; shl.b64 %r241,%r240,3; add.u64 %r242,%r238,%r241; ld.f64 %r133,[%r242]; bra $L1; $L35: .loc 1 175 13 add.u32 %r243,%r88,%r88; .loc 1 175 20 shr.u32 %r244,%r93,31; .loc 1 175 16 add.u32 %r88,%r243,%r244; .loc 1 175 30 add.u32 %r93,%r93,%r93; .loc 1 176 9 add.u32 %r121,%r121,-1; .loc 1 174 10 setp.le.s32 %r246,%r88,1048575; @ %r246 bra $L35; setp.lt.s32 %r285,%r121,-1022; $L36: .loc 1 178 4 @ %r285 bra $L39; .loc 1 179 15 add.u32 %r67,%r88,-1048576; .loc 1 179 32 add.u32 %r248,%r121,1023; .loc 1 179 38 shl.b32 %r249,%r248,20; .loc 1 179 9 or.b32 %r89,%r249,%r67; bra $L6; $L39: .loc 1 181 8 mov.u32 %r250,-1022; sub.u32 %r118,%r250,%r121; .loc 1 182 8 setp.gt.s32 %r251,%r118,20; @ %r251 bra $L40; .loc 1 183 11 shr.u32 %r70,%r93,%r118; .loc 1 183 36 add.u32 %r252,%r121,1054; .loc 1 183 31 shl.b32 %r253,%r88,%r252; .loc 1 183 6 or.b32 %r93,%r253,%r70; .loc 1 184 6 shr.s32 %r89,%r88,%r118; bra $L6; $L40: .loc 1 185 16 setp.gt.s32 %r254,%r118,31; @ %r254 bra $L41; .loc 1 186 24 shr.u32 %r77,%r93,%r118; .loc 1 186 16 add.u32 %r255,%r121,1054; .loc 1 186 11 shl.b32 %r256,%r88,%r255; .loc 1 186 6 or.b32 %r93,%r256,%r77; .loc 1 186 33 mov.u32 %r89,%r101; bra $L6; $L41: .loc 1 188 14 mov.u32 %r258,-1054; sub.u32 %r257,%r258,%r121; .loc 1 188 10 shr.s32 %r93,%r88,%r257; .loc 1 188 23 mov.u32 %r89,%r101; bra $L6; $L50: .loc 1 103 5 mov.u32 %r95,0; $L6: .loc 1 192 2 cvt.u64.u32 %r259,%r89; cvt.u64.u32 %r263,%r93; shl.b64 %r264,%r259,32; or.b64 %r265,%r264,%r263; mov.b64 %r87,%r265; .loc 1 193 4 abs.f64 %r124,%r135; .loc 1 194 5 setp.lt.f64 %r266,%r124,0d0020000000000000; @ ! %r266 bra $L73; .loc 1 195 11 add.f64 %r81,%r87,%r87; .loc 1 195 9 setp.gt.f64 %r267,%r81,%r124; @ %r267 bra $L44; .loc 1 195 16 setp.neu.f64 %r268,%r81,%r124; @ %r268 bra $L45; .loc 1 195 33 and.b32 %r269,%r95,1; .loc 1 195 27 setp.eq.u32 %r270,%r269,0; @ %r270 bra $L45; $L44: .loc 1 196 4 add.u32 %r95,%r95,1; .loc 1 197 4 sub.f64 %r87,%r87,%r124; bra $L45; $L73: .loc 1 199 18 mul.f64 %r83,%r124,0d3fe0000000000000; .loc 1 199 12 setp.lt.f64 %r271,%r83,%r87; @ %r271 bra $L46; .loc 1 199 21 setp.neu.f64 %r272,%r83,%r87; @ %r272 bra $L45; .loc 1 199 40 and.b32 %r273,%r95,1; .loc 1 199 34 setp.eq.u32 %r274,%r273,0; @ %r274 bra $L45; $L46: .loc 1 200 7 add.u32 %r95,%r95,1; .loc 1 201 7 sub.f64 %r87,%r87,%r124; $L45: .loc 1 204 2 mov.b64 %r132,%r87; shr.u64 %r276,%r132,32; cvt.u32.u64 %r277,%r276; xor.b32 %r278,%r101,%r277; cvt.u64.u32 %r279,%r278; shl.b64 %r280,%r279,32; and.b64 %r281,%r132,4294967295; or.b64 %r282,%r281,%r280; mov.b64 %r133,%r282; .loc 1 205 4 and.b32 %r125,%r95,2147483647; .loc 1 206 19 setp.ge.s32 %r283,%r128,0; @ %r283 bra $L47; .loc 1 206 16 neg.s32 %r98,%r125; bra $L48; $L47: .loc 1 206 19 mov.u32 %r98,%r125; $L48: .loc 1 206 7 st.u32 [%r136],%r98; .loc 1 207 9 bra $L1; $L72: .loc 1 165 4 sub.u32 %r116,%r88,%r90; mov.u32 %r129,%r93; .loc 1 158 4 mov.u32 %r95,%r130; bra $L32; $L1: .loc 1 208 1 mov.f64 %value,%r133; st.param.f64 [%value_out],%value; ret; } lib_a-s_rint.o/ 0 0 0 644 5485 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rint .visible .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_rint.c" // BEGIN VAR DEF: TWO52 .const .align 8 .u64 TWO52[2] = {4841369599423283200,-4382002437431492608 }; // BEGIN GLOBAL FUNCTION DEF: rint .visible .func (.param .f64 %value_out) rint (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r51; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r73; .reg .u64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u32 %r87; .reg .pred %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r125; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .pred %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .pred %r135; .reg .u32 %r136; .reg .pred %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u64 %r151; .reg .u64 %r152; mov.f64 %r81,%ar0; mov.b64 %r82,%r81; shr.u64 %r83,%r82,32; cvt.u32.u64 %r48,%r83; cvt.u32.u64 %r46,%r82; .loc 1 94 15 shr.u32 %r62,%r48,31; .loc 1 95 11 shr.s32 %r87,%r48,20; .loc 1 95 16 and.b32 %r24,%r87,2047; .loc 1 95 5 add.u32 %r63,%r24,-1023; .loc 1 96 4 setp.gt.s32 %r88,%r63,19; @ %r88 bra $L2; .loc 1 97 8 setp.ge.s32 %r89,%r63,0; @ %r89 bra $L3; .loc 1 98 10 and.b32 %r90,%r48,2147483647; .loc 1 98 22 or.b32 %r91,%r90,%r46; .loc 1 98 5 setp.eq.u32 %r92,%r91,0; @ %r92 bra $L7; .loc 1 99 12 and.b32 %r93,%r48,1048575; .loc 1 99 6 or.b32 %r68,%r93,%r46; .loc 1 101 14 neg.s32 %r94,%r68; .loc 1 101 13 or.b32 %r95,%r94,%r68; .loc 1 101 18 shr.u32 %r96,%r95,12; .loc 1 101 23 and.b32 %r97,%r96,524288; .loc 1 100 6 and.b32 %r98,%r48,-131072; .loc 1 101 6 or.b32 %r99,%r97,%r98; .loc 1 102 3 cvt.u64.u32 %r100,%r99; shl.b64 %r101,%r100,32; and.b64 %r102,%r82,4294967295; or.b64 %r103,%r102,%r101; mov.b64 %r70,%r103; .loc 1 103 19 cvta.const.u64 %r104,TWO52; cvt.s64.s32 %r105,%r62; shl.b64 %r106,%r105,3; add.u64 %r107,%r104,%r106; ld.f64 %r35,[%r107]; .loc 1 103 23 add.f64 %r36,%r35,%r70; .loc 1 103 12 st.f64 [%frame],%r36; .loc 1 104 16 ld.f64 %r37,[%frame]; .loc 1 104 12 sub.f64 %r71,%r37,%r35; .loc 1 106 3 mov.b64 %r78,%r71; .loc 1 105 3 shr.u64 %r109,%r78,32; cvt.u32.u64 %r110,%r109; .loc 1 106 3 and.b32 %r111,%r110,2147483647; and.b32 %r112,%r48,-2147483648; or.b32 %r113,%r111,%r112; cvt.u64.u32 %r114,%r113; shl.b64 %r115,%r114,32; and.b64 %r116,%r78,4294967295; or.b64 %r117,%r116,%r115; mov.b64 %r80,%r117; .loc 1 107 17 bra $L1; $L3: .loc 1 109 19 mov.u32 %r118,1048575; shr.s32 %r66,%r118,%r63; .loc 1 110 10 and.b32 %r119,%r48,%r66; .loc 1 110 13 or.b32 %r120,%r119,%r46; .loc 1 110 5 setp.eq.u32 %r121,%r120,0; @ %r121 bra $L8; .loc 1 111 4 shr.u32 %r67,%r66,1; .loc 1 112 10 and.b32 %r122,%r48,%r67; .loc 1 112 13 or.b32 %r46,%r46,%r122; .loc 1 112 5 setp.eq.u32 %r123,%r46,0; @ %r123 bra $L5; .loc 1 114 9 set.u32.eq.u32 %r125,%r63,19; shl.b32 %r46,%r125,31; .loc 1 115 17 not.b32 %r127,%r67; .loc 1 115 15 and.b32 %r128,%r127,%r48; .loc 1 115 32 mov.u32 %r130,262144; shr.s32 %r129,%r130,%r63; .loc 1 127 2 or.b32 %r48,%r128,%r129; bra $L5; $L2: .loc 1 118 12 setp.le.s32 %r131,%r63,51; @ %r131 bra $L6; .loc 1 119 8 setp.ne.u32 %r132,%r63,1024; @ %r132 bra $L9; .loc 1 119 28 add.f64 %r80,%r81,%r81; bra $L1; $L6: .loc 1 122 41 add.u32 %r51,%r24,-1043; .loc 1 122 8 mov.u32 %r133,-1; shr.u32 %r64,%r133,%r51; .loc 1 123 12 and.b32 %r134,%r64,%r46; .loc 1 123 8 setp.eq.u32 %r135,%r134,0; @ %r135 bra $L10; .loc 1 124 7 shr.u32 %r65,%r64,1; .loc 1 125 12 and.b32 %r136,%r65,%r46; .loc 1 125 8 setp.eq.u32 %r137,%r136,0; @ %r137 bra $L5; .loc 1 125 30 not.b32 %r138,%r65; .loc 1 125 28 and.b32 %r139,%r138,%r46; .loc 1 125 48 mov.u32 %r141,1073741824; shr.s32 %r140,%r141,%r51; .loc 1 125 23 or.b32 %r46,%r139,%r140; $L5: .loc 1 127 2 cvt.u64.u32 %r142,%r48; cvt.u64.u32 %r146,%r46; shl.b64 %r147,%r142,32; or.b64 %r148,%r147,%r146; mov.b64 %r73,%r148; .loc 1 128 11 cvta.const.u64 %r149,TWO52; cvt.s64.s32 %r150,%r62; shl.b64 %r151,%r150,3; add.u64 %r152,%r149,%r151; ld.f64 %r58,[%r152]; .loc 1 128 15 add.f64 %r59,%r58,%r73; .loc 1 128 4 st.f64 [%frame],%r59; .loc 1 129 10 ld.f64 %r60,[%frame]; sub.f64 %r80,%r60,%r58; bra $L1; $L7: .loc 1 98 38 mov.f64 %r80,%r81; bra $L1; $L8: mov.f64 %r80,%r81; bra $L1; $L9: mov.f64 %r80,%r81; bra $L1; $L10: mov.f64 %r80,%r81; $L1: .loc 1 130 1 mov.f64 %value,%r80; st.param.f64 [%value_out],%value; ret; } lib_a-s_round.o/0 0 0 644 3034 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: round .visible .func (.param .f64 %value_out) round (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_round.c" // BEGIN GLOBAL FUNCTION DEF: round .visible .func (.param .f64 %value_out) round (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r35; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r44; .reg .u32 %r46; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; mov.f64 %r50,%ar0; mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r46,%r52; cvt.u32.u64 %r55,%r51; .loc 1 62 44 shr.s32 %r56,%r46,20; and.b32 %r23,%r56,2047; .loc 1 62 22 add.u32 %r37,%r23,-1023; .loc 1 64 6 setp.gt.s32 %r57,%r37,19; @ %r57 bra $L2; .loc 1 66 10 setp.ge.s32 %r58,%r37,0; @ %r58 bra $L3; .loc 1 68 15 and.b32 %r44,%r46,-2147483648; .loc 1 69 14 setp.eq.u32 %r59,%r37,-1; @ %r59 bra $L4; .loc 1 110 3 mov.u32 %r46,%r44; .loc 1 72 15 mov.u32 %r35,0; bra $L5; $L4: .loc 1 71 17 or.b32 %r46,%r44,1072693248; .loc 1 72 15 mov.u32 %r35,0; bra $L5; $L3: .loc 1 76 49 mov.u32 %r60,1048575; shr.s32 %r41,%r60,%r37; .loc 1 77 20 and.b32 %r61,%r46,%r41; .loc 1 77 42 or.b32 %r62,%r61,%r55; .loc 1 77 14 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L9; .loc 1 81 29 mov.u32 %r65,524288; shr.s32 %r64,%r65,%r37; .loc 1 81 15 add.u32 %r66,%r64,%r46; .loc 1 82 18 not.b32 %r67,%r41; .loc 1 110 3 and.b32 %r46,%r66,%r67; .loc 1 83 15 mov.u32 %r35,0; bra $L5; $L2: .loc 1 86 11 setp.le.s32 %r68,%r37,51; @ %r68 bra $L7; .loc 1 88 10 setp.ne.u32 %r69,%r37,1024; @ %r69 bra $L10; .loc 1 90 18 add.f64 %r49,%r50,%r50; bra $L1; $L7: .loc 1 96 68 add.u32 %r70,%r23,-1043; .loc 1 96 18 mov.u32 %r71,-1; shr.u32 %r38,%r71,%r70; .loc 1 99 16 and.b32 %r72,%r38,%r55; .loc 1 99 10 setp.eq.u32 %r73,%r72,0; @ %r73 bra $L11; .loc 1 103 29 mov.u32 %r75,51; sub.u32 %r74,%r75,%r37; .loc 1 103 22 mov.u32 %r77,1; shl.b32 %r76,%r77,%r74; .loc 1 103 11 add.u32 %r39,%r76,%r55; .loc 1 104 10 setp.ge.u32 %r78,%r39,%r55; @ %r78 bra $L8; .loc 1 105 13 add.u32 %r46,%r46,1; $L8: .loc 1 108 14 not.b32 %r79,%r38; .loc 1 108 11 and.b32 %r35,%r79,%r39; $L5: .loc 1 110 3 cvt.u64.u32 %r80,%r46; cvt.u64.u32 %r84,%r35; shl.b64 %r85,%r80,32; or.b64 %r86,%r85,%r84; mov.b64 %r49,%r86; .loc 1 112 10 bra $L1; $L9: .loc 1 79 20 mov.f64 %r49,%r50; bra $L1; $L10: mov.f64 %r49,%r50; bra $L1; $L11: mov.f64 %r49,%r50; $L1: .loc 1 113 1 mov.f64 %value,%r49; st.param.f64 [%value_out],%value; ret; } /1173 0 0 0 644 3987 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbln .visible .func (.param .f64 %value_out) scalbln (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_scalbln.c" // BEGIN GLOBAL FUNCTION DEF: scalbln .visible .func (.param .f64 %value_out) scalbln (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r29; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r40; .reg .u32 %r46; .reg .u32 %r48; .reg .f64 %r51; .reg .u64 %r55; .reg .u64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .u16 %r86; .reg .u32 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .pred %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .pred %r101; .reg .f64 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u16 %r112; mov.f64 %r58,%ar0; mov.u64 %r59,%ar1; .loc 1 42 2 mov.b64 %r60,%r58; shr.u64 %r61,%r60,32; cvt.u32.u64 %r46,%r61; .loc 1 43 28 shr.s32 %r63,%r46,20; .loc 1 43 11 and.b32 %r48,%r63,2047; .loc 1 44 12 setp.ne.u32 %r64,%r48,0; @ %r64 bra $L2; .loc 1 45 24 and.b32 %r65,%r46,2147483647; .loc 1 42 2 cvt.u32.u64 %r67,%r60; .loc 1 45 20 or.b32 %r69,%r65,%r67; .loc 1 45 16 setp.eq.u32 %r70,%r69,0; @ %r70 bra $L9; .loc 1 46 8 mul.f64 %r58,%r58,0d4350000000000000; .loc 1 47 6 mov.b64 %r71,%r58; shr.u64 %r72,%r71,32; cvt.u32.u64 %r46,%r72; .loc 1 48 26 shr.s32 %r74,%r46,20; and.b32 %r75,%r74,2047; .loc 1 48 8 add.u32 %r48,%r75,-54; bra $L4; $L2: .loc 1 50 12 setp.ne.u32 %r76,%r48,2047; @ %r76 bra $L4; .loc 1 50 31 add.f64 %r57,%r58,%r58; bra $L1; $L4: .loc 1 51 14 cvt.u32.u64 %r77,%r59; add.u32 %r29,%r77,%r48; .loc 1 52 14 set.u32.gt.s64 %r79,%r59,50000; neg.s32 %r80,%r79; mov.u32 %r78,%r80; .loc 1 52 27 set.u32.gt.s32 %r82,%r29,2046; neg.s32 %r83,%r82; mov.u32 %r81,%r83; .loc 1 52 22 cvt.u16.u8 %r112,%r78; mov.u16 %r85,%r112; cvt.u16.u8 %r112,%r81; mov.u16 %r86,%r112; or.b16 %r84,%r85,%r86; cvt.u32.u16 %r87,%r84; .loc 1 52 12 cvt.u16.u8 %r88,%r87; setp.eq.u16 %r89,%r88,0; @ %r89 bra $L5; .loc 1 53 16 mov.f64 %r90,0d7e37e43c8800759c; copysign.f64 %r33,%r58,%r90; .loc 1 53 15 mul.f64 %r57,%r33,0d7e37e43c8800759c; bra $L1; $L5: .loc 1 54 5 setp.ge.s64 %r91,%r59,-50000; @ %r91 bra $L6; .loc 1 54 29 mov.f64 %r92,0d01a56e1fc2f8f359; copysign.f64 %r34,%r58,%r92; .loc 1 54 28 mul.f64 %r57,%r34,0d01a56e1fc2f8f359; bra $L1; $L6: .loc 1 55 12 setp.le.s32 %r93,%r29,0; @ %r93 bra $L7; .loc 1 56 7 mov.b64 %r55,%r58; and.b32 %r94,%r46,-2146435073; shl.b32 %r95,%r29,20; or.b32 %r96,%r94,%r95; cvt.u64.u32 %r97,%r96; shl.b64 %r98,%r97,32; and.b64 %r99,%r55,4294967295; or.b64 %r100,%r99,%r98; mov.b64 %r57,%r100; .loc 1 56 56 bra $L1; $L7: .loc 1 57 12 setp.ge.s32 %r101,%r29,-53; @ %r101 bra $L8; .loc 1 58 16 mov.f64 %r102,0d01a56e1fc2f8f359; copysign.f64 %r40,%r58,%r102; .loc 1 58 15 mul.f64 %r57,%r40,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 60 2 mov.b64 %r56,%r58; .loc 1 59 11 add.u32 %r103,%r29,54; .loc 1 60 2 shl.b32 %r104,%r103,20; and.b32 %r105,%r46,-2146435073; or.b32 %r106,%r104,%r105; cvt.u64.u32 %r107,%r106; shl.b64 %r108,%r107,32; and.b64 %r109,%r56,4294967295; or.b64 %r110,%r109,%r108; mov.b64 %r51,%r110; .loc 1 61 17 mul.f64 %r57,%r51,0d3c90000000000000; bra $L1; $L9: .loc 1 45 49 mov.f64 %r57,%r58; $L1: .loc 1 62 1 mov.f64 %value,%r57; st.param.f64 [%value_out],%value; ret; } /1192 0 0 0 644 3281 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r27; .reg .f64 %r33; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .f64 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .f64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; .loc 1 86 2 mov.b64 %r53,%r51; shr.u64 %r54,%r53,32; cvt.u32.u64 %r39,%r54; .loc 1 87 28 shr.s32 %r56,%r39,20; .loc 1 87 11 and.b32 %r41,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r41,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r39,2147483647; .loc 1 86 2 cvt.u32.u64 %r60,%r53; .loc 1 89 20 or.b32 %r62,%r58,%r60; .loc 1 89 16 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L9; .loc 1 90 8 mul.f64 %r51,%r51,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r64,%r52,-50000; @ %r64 bra $L4; .loc 1 93 39 mul.f64 %r50,%r51,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r65,%r41,2047; @ %r65 bra $L5; .loc 1 95 31 add.f64 %r50,%r51,%r51; bra $L1; $L4: .loc 1 91 6 mov.b64 %r66,%r51; shr.u64 %r67,%r66,32; cvt.u32.u64 %r39,%r67; .loc 1 92 26 shr.s32 %r69,%r39,20; and.b32 %r70,%r69,2047; .loc 1 92 8 add.u32 %r41,%r70,-54; $L5: .loc 1 96 11 add.u32 %r42,%r52,%r41; .loc 1 97 12 setp.le.s32 %r71,%r42,2046; @ %r71 bra $L6; .loc 1 97 37 mov.f64 %r72,0d7e37e43c8800759c; copysign.f64 %r27,%r51,%r72; .loc 1 97 36 mul.f64 %r50,%r27,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r42,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r48,%r51; and.b32 %r74,%r39,-2146435073; shl.b32 %r75,%r42,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r48,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r50,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r42,-53; @ %r81 bra $L8; .loc 1 103 23 mov.f64 %r82,0d01a56e1fc2f8f359; copysign.f64 %r33,%r51,%r82; .loc 1 103 22 mul.f64 %r50,%r33,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r49,%r51; .loc 1 105 11 add.u32 %r83,%r42,54; .loc 1 106 2 shl.b32 %r84,%r83,20; and.b32 %r85,%r39,-2146435073; or.b32 %r86,%r84,%r85; cvt.u64.u32 %r87,%r86; shl.b64 %r88,%r87,32; and.b64 %r89,%r49,4294967295; or.b64 %r90,%r89,%r88; mov.b64 %r44,%r90; .loc 1 107 17 mul.f64 %r50,%r44,0d3c90000000000000; bra $L1; $L9: .loc 1 89 49 mov.f64 %r50,%r51; $L1: .loc 1 108 1 mov.f64 %value,%r50; st.param.f64 [%value_out],%value; ret; } /1210 0 0 0 644 1121 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __signbitf .visible .func (.param .u32 %value_out) __signbitf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_signbit.c" // BEGIN GLOBAL FUNCTION DECL: __signbitd .visible .func (.param .u32 %value_out) __signbitd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __signbitf .visible .func (.param .u32 %value_out) __signbitf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .u32 %r29; mov.f32 %r26,%ar0; .loc 1 48 27 mov.b32 %r29,%r26; shr.u32 %value,%r29,31; .loc 1 49 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __signbitd .visible .func (.param .u32 %value_out) __signbitd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; mov.f64 %r26,%ar0; .loc 1 58 29 mov.b64 %r28,%r26; shr.u64 %r29,%r28,32; cvt.u32.u64 %r30,%r29; shr.u32 %value,%r30,31; .loc 1 59 1 st.param.u32 [%value_out],%value; ret; } /1229 0 0 0 644 1307 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: significand .visible .func (.param .f64 %value_out) significand (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_signif.c" // BEGIN GLOBAL FUNCTION DECL: ilogb .extern .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalb .extern .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: significand .visible .func (.param .f64 %value_out) significand (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .u32 %r28; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; mov.f64 %r26,%ar0; .loc 1 31 37 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),ilogb,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 31 36 neg.s32 %r31,%r28; .loc 1 31 9 cvt.rn.f64.s32 %r32,%r31; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),__ieee754_scalb,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 32 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-s_sin.o/ 0 0 0 644 4030 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sin .visible .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_sin.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .extern .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .extern .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .extern .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: sin .visible .func (.param .f64 %value_out) sin (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .f64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .pred %r47; .reg .u32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .f64 %r54; .reg .u32 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .u32 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; mov.f64 %r38,%ar0; .loc 1 98 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r41,%r40; .loc 1 101 5 and.b32 %r34,%r41,2147483647; .loc 1 102 4 setp.gt.s32 %r42,%r34,1072243195; @ %r42 bra $L2; .loc 1 102 30 mov.u32 %r45,0; mov.f64 %r44,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r45; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r46,[%value_in]; } mov.f64 %r37,%r46; bra $L1; $L2: .loc 1 105 10 setp.le.s32 %r47,%r34,2146435071; @ %r47 bra $L4; .loc 1 105 35 sub.f64 %r37,%r38,%r38; bra $L1; $L4: .loc 1 109 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2,(%out_arg1,%out_arg2); ld.param.u32 %r50,[%value_in]; } .loc 1 110 14 and.b32 %r22,%r50,3; .loc 1 110 6 setp.eq.u32 %r51,%r22,1; @ %r51 bra $L5; setp.eq.u32 %r52,%r22,2; @ %r52 bra $L6; setp.ne.u32 %r53,%r22,0; @ %r53 bra $L7; .loc 1 111 19 ld.f64 %r57,[%frame+8]; mov.u32 %r56,1; ld.f64 %r54,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r56; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r58,[%value_in]; } mov.f64 %r37,%r58; bra $L1; $L5: .loc 1 112 19 ld.f64 %r61,[%frame+8]; ld.f64 %r59,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r62,[%value_in]; } mov.f64 %r37,%r62; bra $L1; $L6: .loc 1 113 19 ld.f64 %r66,[%frame+8]; mov.u32 %r65,1; ld.f64 %r63,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r66; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r65; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r67,[%value_in]; } .loc 1 113 18 neg.f64 %r37,%r67; bra $L1; $L7: .loc 1 115 12 ld.f64 %r70,[%frame+8]; ld.f64 %r68,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r70; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 115 11 neg.f64 %r37,%r71; $L1: .loc 1 118 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_tan.o/ 0 0 0 644 2573 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tan .visible .func (.param .f64 %value_out) tan (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_tan.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_tan .extern .func (.param .f64 %value_out) __kernel_tan (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .extern .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: tan .visible .func (.param .f64 %value_out) tan (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r28; .reg .f64 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .f64 %r40; .reg .pred %r41; .reg .u32 %r44; .reg .f64 %r45; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f64 %r52; .reg .f64 %r53; mov.f64 %r32,%ar0; .loc 1 88 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r35,%r34; .loc 1 91 5 and.b32 %r28,%r35,2147483647; .loc 1 92 4 setp.gt.s32 %r36,%r28,1072243195; @ %r36 bra $L2; .loc 1 92 30 mov.u32 %r39,1; mov.f64 %r38,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r39; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r40,[%value_in]; } mov.f64 %r31,%r40; bra $L1; $L2: .loc 1 95 10 setp.le.s32 %r41,%r28,2146435071; @ %r41 bra $L4; .loc 1 95 35 sub.f64 %r31,%r32,%r32; bra $L1; $L4: .loc 1 99 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2,(%out_arg1,%out_arg2); ld.param.u32 %r44,[%value_in]; } .loc 1 100 44 add.u32 %r48,%r44,%r44; and.b32 %r49,%r48,2; .loc 1 100 13 mov.u32 %r51,1; sub.u32 %r50,%r51,%r49; ld.f64 %r52,[%frame+8]; ld.f64 %r45,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r45; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r50; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r53,[%value_in]; } mov.f64 %r31,%r53; $L1: .loc 1 103 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } lib_a-s_tanh.o/ 0 0 0 644 3042 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanh .visible .func (.param .f64 %value_out) tanh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/s_tanh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanh .visible .func (.param .f64 %value_out) tanh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r42; .reg .f64 %r43; .reg .pred %r44; .reg .pred %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .pred %r66; mov.f64 %r38,%ar0; .loc 1 92 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r31,%r40; .loc 1 93 5 and.b32 %r32,%r31,2147483647; .loc 1 96 4 setp.le.s32 %r42,%r32,2146435071; @ %r42 bra $L2; .loc 1 97 27 mov.f64 %r43,0d3ff0000000000000; div.rn.f64 %r36,%r43,%r38; .loc 1 97 9 setp.lt.s32 %r44,%r31,0; @ %r44 bra $L3; .loc 1 97 29 add.f64 %r37,%r36,0d3ff0000000000000; bra $L1; $L3: .loc 1 98 29 sub.f64 %r37,%r36,%r43; bra $L1; $L2: .loc 1 102 5 setp.gt.s32 %r46,%r32,1077280767; @ %r46 bra $L8; .loc 1 103 9 setp.gt.s32 %r47,%r32,1015021567; @ %r47 bra $L6; .loc 1 104 16 add.f64 %r48,%r38,0d3ff0000000000000; .loc 1 104 11 mul.f64 %r37,%r48,%r38; bra $L1; $L6: .loc 1 105 9 setp.le.s32 %r49,%r32,1072693247; @ %r49 bra $L7; .loc 1 106 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r51,[%value_in]; } .loc 1 106 7 add.f64 %r53,%r51,%r51; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r53; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 107 19 add.f64 %r55,%r54,0d4000000000000000; .loc 1 107 16 mov.f64 %r57,0d4000000000000000; div.rn.f64 %r56,%r57,%r55; .loc 1 107 5 mov.f64 %r58,0d3ff0000000000000; sub.f64 %r37,%r58,%r56; bra $L5; $L7: .loc 1 109 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r60,[%value_in]; } .loc 1 109 14 mul.f64 %r62,%r60,0dc000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r63,[%value_in]; } .loc 1 110 13 neg.f64 %r64,%r63; .loc 1 110 18 add.f64 %r65,%r63,0d4000000000000000; .loc 1 110 11 div.rn.f64 %r37,%r64,%r65; bra $L5; $L8: .loc 1 114 8 mov.f64 %r37,0d3ff0000000000000; $L5: .loc 1 116 19 setp.ge.s32 %r66,%r31,0; @ %r66 bra $L1; neg.f64 %r37,%r37; $L1: .loc 1 117 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_trunc.o/0 0 0 644 2005 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: trunc .visible .func (.param .f64 %value_out) trunc (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_trunc.c" // BEGIN GLOBAL FUNCTION DEF: trunc .visible .func (.param .f64 %value_out) trunc (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r34; .reg .f64 %r40; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; mov.f64 %r41,%ar0; mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r44,%r43; .loc 1 64 44 shr.s32 %r45,%r44,20; and.b32 %r23,%r45,2047; .loc 1 64 22 add.u32 %r34,%r23,-1023; .loc 1 66 6 setp.gt.s32 %r46,%r34,19; @ %r46 bra $L2; .loc 1 69 10 setp.ge.s32 %r47,%r34,0; @ %r47 bra $L3; .loc 1 61 11 and.b32 %r48,%r44,-2147483648; .loc 1 72 11 cvt.u64.u32 %r49,%r48; shl.b64 %r53,%r49,32; mov.b64 %r40,%r53; bra $L1; $L3: .loc 1 77 11 mov.u32 %r55,-1048576; shr.s32 %r54,%r55,%r34; and.b32 %r56,%r54,%r44; cvt.u64.u32 %r57,%r56; shl.b64 %r61,%r57,32; mov.b64 %r40,%r61; bra $L1; $L2: .loc 1 80 11 setp.le.s32 %r62,%r34,51; @ %r62 bra $L5; .loc 1 82 10 setp.ne.u32 %r63,%r34,1024; @ %r63 bra $L6; .loc 1 85 20 add.f64 %r40,%r41,%r41; bra $L1; $L5: .loc 1 93 7 cvt.u64.u32 %r64,%r44; add.u32 %r68,%r23,-1043; mov.u32 %r70,-1; shr.u32 %r69,%r70,%r68; not.b32 %r71,%r69; cvt.u32.u64 %r73,%r42; and.b32 %r75,%r71,%r73; cvt.u64.u32 %r76,%r75; shl.b64 %r77,%r64,32; or.b64 %r78,%r77,%r76; mov.b64 %r40,%r78; bra $L1; $L6: mov.f64 %r40,%r41; $L1: .loc 1 96 1 mov.f64 %value,%r40; st.param.f64 [%value_out],%value; ret; } /1247 0 0 0 644 1024 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalblnl .visible .func (.param .f64 %value_out) scalblnl (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/scalblnl.c" // BEGIN GLOBAL FUNCTION DECL: scalbln .extern .func (.param .f64 %value_out) scalbln (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalblnl .visible .func (.param .f64 %value_out) scalblnl (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),scalbln,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-scalbnl.o/0 0 0 644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbnl .visible .func (.param .f64 %value_out) scalbnl (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/scalbnl.c" // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalbnl .visible .func (.param .f64 %value_out) scalbnl (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u32 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /1265 0 0 0 644 3793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinhf .visible .func (.param .f32 %value_out) asinhf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_asinh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1pf .extern .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinhf .visible .func (.param .f32 %value_out) asinhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r29; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .f32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .f32 %r49; .reg .f32 %r51; .reg .pred %r52; .reg .f32 %r54; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .pred %r72; mov.f32 %r42,%ar0; .loc 1 36 2 mov.b32 %r36,%r42; .loc 1 37 5 and.b32 %r37,%r36,2147483647; .loc 1 38 4 setp.le.s32 %r43,%r37,2139095039; @ %r43 bra $L2; .loc 1 38 39 add.f32 %r41,%r42,%r42; bra $L1; $L2: .loc 1 39 4 setp.gt.s32 %r44,%r37,830472191; @ %r44 bra $L4; .loc 1 40 13 add.f32 %r45,%r42,0f7149f2ca; .loc 1 40 8 setp.gt.f32 %r46,%r45,0f3f800000; @ ! %r46 bra $L5; bra $L8; $L4: .loc 1 42 4 setp.le.s32 %r47,%r37,1300234240; @ %r47 bra $L6; .loc 1 43 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r49; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r51,[%value_in]; } .loc 1 43 8 add.f32 %r41,%r51,0f3f317218; bra $L7; $L6: .loc 1 44 12 setp.le.s32 %r52,%r37,1073741824; @ %r52 bra $L5; .loc 1 45 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r54,[%value_in]; } .loc 1 46 43 fma.rn.f32 %r25,%r42,%r42,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } .loc 1 46 67 add.f32 %r57,%r56,%r54; .loc 1 46 41 rcp.rn.f32 %r58,%r57; .loc 1 46 10 fma.rn.f32 %r29,%r54,0f40000000,%r58; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r61,[%value_in]; } mov.f32 %r41,%r61; bra $L7; $L5: .loc 1 48 8 mul.f32 %r39,%r42,%r42; .loc 1 49 16 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r63,[%value_in]; } .loc 1 49 32 add.f32 %r65,%r39,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r65; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } .loc 1 49 31 add.f32 %r68,%r66,0f3f800000; .loc 1 49 26 div.rn.f32 %r69,%r39,%r68; .loc 1 49 9 add.f32 %r70,%r69,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } mov.f32 %r41,%r71; $L7: .loc 1 51 4 setp.gt.s32 %r72,%r36,0; @ %r72 bra $L1; .loc 1 51 33 neg.f32 %r41,%r41; bra $L1; $L8: .loc 1 40 28 mov.f32 %r41,%r42; $L1: .loc 1 52 1 mov.f32 %value,%r41; st.param.f32 [%value_out],%value; ret; } lib_a-sf_atan.o/0 0 0 644 4565 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanf .visible .func (.param .f32 %value_out) atanf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_atan.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN VAR DEF: atanhi .const .align 4 .u32 atanhi[4] = {1055744824,1061752794,1065064542,1070141402 }; // BEGIN VAR DEF: atanlo .const .align 4 .u32 atanlo[4] = {833369961,857874792,856952756,866263400 }; // BEGIN GLOBAL FUNCTION DEF: atanf .visible .func (.param .f32 %value_out) atanf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f32 %r59; .reg .pred %r60; .reg .f32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .f32 %r65; .reg .pred %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; mov.f32 %r53,%ar0; .loc 1 77 2 mov.b32 %r43,%r53; .loc 1 78 5 and.b32 %r44,%r43,2147483647; .loc 1 79 4 setp.le.s32 %r54,%r44,1350565887; @ %r54 bra $L2; .loc 1 80 8 setp.le.s32 %r55,%r44,2139095040; @ %r55 bra $L3; .loc 1 81 11 add.f32 %r52,%r53,%r53; bra $L1; $L3: .loc 1 82 8 setp.gt.s32 %r56,%r43,0; .loc 1 83 32 selp.f32 %r52,0f3fc90fdb,0fbfc90fdb,%r56; bra $L1; $L2: .loc 1 84 7 setp.gt.s32 %r57,%r44,1054867455; @ %r57 bra $L5; .loc 1 85 9 setp.gt.s32 %r58,%r44,822083583; @ %r58 bra $L12; .loc 1 86 10 add.f32 %r59,%r53,0f7149f2ca; .loc 1 86 5 setp.gt.f32 %r60,%r59,0f3f800000; @ %r60 bra $L13; .loc 1 88 9 mov.u32 %r42,-1; bra $L6; $L5: .loc 1 90 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r53; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 91 5 setp.gt.s32 %r63,%r44,1066926079; @ %r63 bra $L7; .loc 1 92 9 setp.gt.s32 %r64,%r44,1060110335; @ %r64 bra $L8; .loc 1 93 28 fma.rn.f32 %r23,%r62,0f40000000,0fbf800000; .loc 1 93 45 add.f32 %r24,%r62,0f40000000; .loc 1 93 13 div.rn.f32 %r53,%r23,%r24; .loc 1 93 6 mov.u32 %r42,0; bra $L6; $L8: .loc 1 95 18 mov.f32 %r65,0f3f800000; sub.f32 %r25,%r62,%r65; .loc 1 95 26 add.f32 %r26,%r62,0f3f800000; .loc 1 95 14 div.rn.f32 %r53,%r25,%r26; .loc 1 95 6 mov.u32 %r42,1; bra $L6; $L7: .loc 1 98 9 setp.gt.s32 %r66,%r44,1075576831; @ %r66 bra $L9; .loc 1 99 18 mov.f32 %r67,0f3fc00000; sub.f32 %r27,%r62,%r67; .loc 1 99 35 fma.rn.f32 %r28,%r62,0f3fc00000,0f3f800000; .loc 1 99 14 div.rn.f32 %r53,%r27,%r28; .loc 1 99 6 mov.u32 %r42,2; bra $L6; $L9: .loc 1 101 14 mov.f32 %r68,0fbf800000; div.rn.f32 %r53,%r68,%r62; .loc 1 101 6 mov.u32 %r42,3; bra $L6; $L12: .loc 1 88 9 mov.u32 %r42,-1; $L6: .loc 1 105 4 mul.f32 %r47,%r53,%r53; .loc 1 106 4 mul.f32 %r48,%r47,%r47; .loc 1 108 51 fma.rn.f32 %r29,%r48,0f3c8569d7,0f3d4bda59; .loc 1 108 42 fma.rn.f32 %r30,%r29,%r48,0f3d886b35; .loc 1 108 33 fma.rn.f32 %r31,%r30,%r48,0f3dba2e6e; .loc 1 108 24 fma.rn.f32 %r32,%r31,%r48,0f3e124925; .loc 1 108 15 fma.rn.f32 %r33,%r32,%r48,0f3eaaaaab; .loc 1 109 42 fma.rn.f32 %r34,%r48,0fbd15a221,0fbd6ef16b; .loc 1 109 33 fma.rn.f32 %r35,%r34,%r48,0fbd9d8795; .loc 1 109 24 fma.rn.f32 %r36,%r35,%r48,0fbde38e38; .loc 1 109 15 fma.rn.f32 %r37,%r36,%r48,0fbe4ccccd; .loc 1 109 5 mul.f32 %r69,%r37,%r48; .loc 1 110 28 fma.rn.f32 %r50,%r33,%r47,%r69; .loc 1 110 24 mul.f32 %r51,%r53,%r50; .loc 1 110 5 setp.ne.u32 %r70,%r42,-1; @ %r70 bra $L10; .loc 1 110 21 sub.f32 %r52,%r53,%r51; bra $L1; $L10: .loc 1 112 16 cvta.const.u64 %r71,atanhi; cvt.s64.s32 %r72,%r42; shl.b64 %r73,%r72,2; add.u64 %r74,%r71,%r73; .loc 1 112 43 cvta.const.u64 %r75,atanlo; add.u64 %r78,%r75,%r73; .loc 1 112 35 ld.f32 %r80,[%r78]; sub.f32 %r79,%r51,%r80; .loc 1 112 49 sub.f32 %r81,%r79,%r53; .loc 1 112 8 ld.f32 %r82,[%r74]; sub.f32 %r52,%r82,%r81; .loc 1 113 23 setp.ge.s32 %r83,%r43,0; @ %r83 bra $L1; neg.f32 %r52,%r52; bra $L1; $L13: .loc 1 86 25 mov.f32 %r52,%r53; $L1: .loc 1 115 1 mov.f32 %value,%r52; st.param.f32 [%value_out],%value; ret; } lib_a-sf_cbrt.o/0 0 0 644 2130 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cbrtf .visible .func (.param .f32 %value_out) cbrtf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_cbrt.c" // BEGIN GLOBAL FUNCTION DEF: cbrtf .visible .func (.param .f32 %value_out) cbrtf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u32 %r24; .reg .u32 %r27; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .f32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r58; .reg .u32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .u32 %r70; .reg .u32 %r71; mov.f32 %r47,%ar0; .loc 1 53 2 mov.b32 %r22,%r47; .loc 1 55 6 and.b32 %r24,%r22,2147483647; .loc 1 56 4 setp.le.u32 %r48,%r24,2139095039; @ %r48 bra $L2; .loc 1 57 14 add.f32 %r46,%r47,%r47; bra $L1; $L2: .loc 1 58 4 setp.eq.u32 %r49,%r24,0; @ %r49 bra $L6; .loc 1 61 2 mov.b32 %r41,%r24; .loc 1 63 4 setp.gt.s32 %r50,%r24,8388607; @ %r50 bra $L4; .loc 1 65 6 mul.f32 %r51,%r41,0f4b800000; .loc 1 65 35 mov.b32 %r53,%r51; div.u32 %r54,%r53,3; add.u32 %r27,%r54,642849266; mov.b32 %r38,%r27; bra $L5; $L4: .loc 1 68 4 div.s32 %r58,%r24,3; add.u32 %r59,%r58,709958130; mov.b32 %r38,%r59; $L5: .loc 1 72 5 mul.f32 %r60,%r38,%r38; .loc 1 72 3 div.rn.f32 %r61,%r60,%r41; .loc 1 73 3 fma.rn.f32 %r44,%r38,%r61,0f3f0af8b0; .loc 1 74 11 add.f32 %r62,%r44,0f3fb50750; .loc 1 74 15 mov.f32 %r64,0fbf348ef1; div.rn.f32 %r63,%r64,%r44; .loc 1 74 13 add.f32 %r65,%r62,%r63; .loc 1 74 8 mov.f32 %r67,0f3fcdb6db; div.rn.f32 %r66,%r67,%r65; .loc 1 74 6 add.f32 %r68,%r66,0f3eb6db6e; .loc 1 74 3 mul.f32 %r69,%r68,%r38; .loc 1 54 6 and.b32 %r70,%r22,-2147483648; .loc 1 78 2 mov.b32 %r71,%r69; or.b32 %r37,%r70,%r71; mov.b32 %r46,%r37; .loc 1 79 8 bra $L1; $L6: .loc 1 59 12 mov.f32 %r46,%r47; $L1: .loc 1 80 1 mov.f32 %value,%r46; st.param.f32 [%value_out],%value; ret; } lib_a-sf_ceil.o/0 0 0 644 2271 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ceilf .visible .func (.param .f32 %value_out) ceilf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_ceil.c" // BEGIN GLOBAL FUNCTION DEF: ceilf .visible .func (.param .f32 %value_out) ceilf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; mov.f32 %r38,%ar0; .loc 1 33 2 mov.b32 %r34,%r38; .loc 1 34 5 and.b32 %r32,%r34,2147483647; .loc 1 35 10 shr.u32 %r39,%r32,23; .loc 1 35 15 add.u32 %r33,%r39,-127; .loc 1 36 4 setp.gt.s32 %r40,%r33,22; @ %r40 bra $L2; .loc 1 33 2 mov.u32 %r31,%r34; .loc 1 37 8 setp.ge.s32 %r41,%r33,0; @ %r41 bra $L3; .loc 1 38 10 add.f32 %r42,%r38,0f7149f2ca; .loc 1 38 5 setp.gt.f32 %r43,%r42,0f00000000; @ ! %r43 bra $L17; .loc 1 39 9 setp.lt.s32 %r44,%r34,0; @ %r44 bra $L10; .loc 1 40 14 setp.eq.u32 %r45,%r32,0; selp.f32 %r37,%r38,0f3f800000,%r45; bra $L1; $L3: .loc 1 43 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r33; .loc 1 44 9 and.b32 %r47,%r34,%r35; .loc 1 44 5 setp.eq.u32 %r48,%r47,0; @ %r48 bra $L12; .loc 1 45 10 add.f32 %r49,%r38,0f7149f2ca; .loc 1 45 5 setp.gt.f32 %r50,%r49,0f00000000; @ ! %r50 bra $L18; .loc 1 46 9 setp.le.s32 %r51,%r31,0; @ %r51 bra $L8; .loc 1 46 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r33; .loc 1 46 19 add.u32 %r31,%r31,%r52; $L8: .loc 1 47 14 not.b32 %r54,%r35; .loc 1 47 10 and.b32 %r55,%r54,%r31; .loc 1 54 2 mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 51 8 setp.le.u32 %r56,%r32,2139095039; @ %r56 bra $L14; .loc 1 51 43 add.f32 %r37,%r38,%r38; bra $L1; $L17: mov.f32 %r37,%r38; bra $L1; $L10: mov.f32 %r37,0f80000000; bra $L1; $L18: mov.f32 %r37,%r38; .loc 1 55 9 bra $L1; $L12: .loc 1 44 24 mov.f32 %r37,%r38; bra $L1; $L14: mov.f32 %r37,%r38; $L1: .loc 1 56 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1283 0 0 0 644 885 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .f32 %r28; .reg .f32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; mov.f32 %r28,%ar0; mov.f32 %r29,%ar1; .loc 1 34 2 mov.b32 %r31,%r28; and.b32 %r30,%r31,2147483647; mov.b32 %r33,%r29; and.b32 %r32,%r33,-2147483648; or.b32 %r24,%r30,%r32; .loc 1 35 16 mov.b32 %value,%r24; .loc 1 36 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_cos.o/ 0 0 0 644 3819 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cosf .visible .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_cos.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .extern .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .extern .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .extern .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: cosf .visible .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .pred %r43; .reg .u32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .f32 %r50; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r65; .reg .f32 %r66; .reg .f32 %r67; mov.f32 %r38,%ar0; .loc 1 29 2 mov.b32 %r34,%r38; .loc 1 32 5 and.b32 %r35,%r34,2147483647; .loc 1 33 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 33 30 mov.f32 %r41,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } mov.f32 %r37,%r42; bra $L1; $L2: .loc 1 36 10 setp.le.s32 %r43,%r35,2139095039; @ %r43 bra $L4; .loc 1 36 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 40 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2f,(%out_arg1,%out_arg2); ld.param.u32 %r46,[%value_in]; } .loc 1 41 14 and.b32 %r22,%r46,3; .loc 1 41 6 setp.eq.u32 %r47,%r22,1; @ %r47 bra $L5; setp.eq.u32 %r48,%r22,2; @ %r48 bra $L6; setp.ne.u32 %r49,%r22,0; @ %r49 bra $L7; .loc 1 42 19 ld.f32 %r52,[%frame+4]; ld.f32 %r50,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r52; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r53,[%value_in]; } mov.f32 %r37,%r53; bra $L1; $L5: .loc 1 43 19 ld.f32 %r57,[%frame+4]; ld.f32 %r54,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r54; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r22; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r58,[%value_in]; } .loc 1 43 18 neg.f32 %r37,%r58; bra $L1; $L6: .loc 1 44 19 ld.f32 %r61,[%frame+4]; ld.f32 %r59,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r61; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r62,[%value_in]; } .loc 1 44 18 neg.f32 %r37,%r62; bra $L1; $L7: .loc 1 46 19 ld.f32 %r66,[%frame+4]; mov.u32 %r65,1; ld.f32 %r63,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r66; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r65; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r67,[%value_in]; } mov.f32 %r37,%r67; $L1: .loc 1 49 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_erf.o/ 0 0 0 644 16677 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erff .visible .func (.param .f32 %value_out) erff (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_erf.c" // BEGIN GLOBAL FUNCTION DECL: erfcf .visible .func (.param .f32 %value_out) erfcf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erff .visible .func (.param .f32 %value_out) erff (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r77; .reg .f32 %r82; .reg .f32 %r86; .reg .f32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r104; .reg .f32 %r105; .reg .pred %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r116; .reg .pred %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .f32 %r122; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .pred %r128; .reg .pred %r129; .reg .f32 %r131; .reg .f32 %r132; .reg .pred %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .f32 %r137; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r144; .reg .pred %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; mov.f32 %r105,%ar0; .loc 1 111 2 mov.b32 %r88,%r105; .loc 1 112 5 and.b32 %r89,%r88,2147483647; .loc 1 113 4 setp.le.s32 %r106,%r89,2139095039; @ %r106 bra $L2; .loc 1 114 25 shr.u32 %r107,%r88,31; .loc 1 114 30 add.u32 %r108,%r107,%r107; .loc 1 115 22 mov.u32 %r110,1; sub.u32 %r109,%r110,%r108; .loc 1 115 13 cvt.rn.f32.s32 %r111,%r109; .loc 1 115 29 rcp.rn.f32 %r112,%r105; .loc 1 115 25 add.f32 %r104,%r111,%r112; bra $L1; $L2: .loc 1 118 4 setp.gt.s32 %r114,%r89,1062731775; @ %r114 bra $L4; .loc 1 119 8 setp.gt.s32 %r115,%r89,830472191; @ %r115 bra $L5; .loc 1 120 13 and.b32 %r116,%r88,2080374784; setp.ne.u32 %r117,%r116,0; @ %r117 bra $L6; .loc 1 122 45 mul.f32 %r118,%r105,0f3f8375d4; .loc 1 122 40 fma.rn.f32 %r28,%r105,0f41000000,%r118; .loc 1 122 26 mul.f32 %r104,%r28,0f3e000000; bra $L1; $L6: .loc 1 123 12 fma.rn.f32 %r104,%r105,0f3e0375d4,%r105; bra $L1; $L5: .loc 1 125 8 mul.f32 %r99,%r105,%r105; .loc 1 126 34 fma.rn.f32 %r29,%r99,0fb7c756b1,0fbbbd1489; .loc 1 126 27 fma.rn.f32 %r30,%r29,%r99,0fbce9528f; .loc 1 126 20 fma.rn.f32 %r31,%r30,%r99,0fbea66beb; .loc 1 126 8 fma.rn.f32 %r100,%r31,%r99,0f3e0375d4; .loc 1 127 41 fma.rn.f32 %r32,%r99,0fb684e21a,0f390aee49; .loc 1 127 34 fma.rn.f32 %r33,%r32,%r99,0f3ba68116; .loc 1 127 27 fma.rn.f32 %r34,%r33,%r99,0f3d852a63; .loc 1 127 20 fma.rn.f32 %r35,%r34,%r99,0f3ecbbbce; .loc 1 127 8 fma.rn.f32 %r101,%r35,%r99,0f3f800000; .loc 1 128 8 div.rn.f32 %r119,%r100,%r101; .loc 1 129 15 fma.rn.f32 %r104,%r105,%r119,%r105; bra $L1; $L4: .loc 1 131 4 setp.gt.s32 %r120,%r89,1067450367; @ %r120 bra $L7; .loc 1 132 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r105; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r122,[%value_in]; } .loc 1 132 8 mov.f32 %r123,0f3f800000; sub.f32 %r96,%r122,%r123; .loc 1 133 48 fma.rn.f32 %r37,%r96,0fbb0df9c0,0f3d1151b3; .loc 1 133 41 fma.rn.f32 %r38,%r37,%r96,0fbde31cc2; .loc 1 133 34 fma.rn.f32 %r39,%r38,%r96,0f3ea2fe54; .loc 1 133 27 fma.rn.f32 %r40,%r39,%r96,0fbebe9208; .loc 1 133 20 fma.rn.f32 %r41,%r40,%r96,0f3ed46805; .loc 1 133 8 fma.rn.f32 %r97,%r41,%r96,0fbb1acdc6; .loc 1 134 48 fma.rn.f32 %r42,%r96,0f3c445aa3,0f3c5f6e13; .loc 1 134 41 fma.rn.f32 %r43,%r42,%r96,0f3e013307; .loc 1 134 34 fma.rn.f32 %r44,%r43,%r96,0f3d931ae7; .loc 1 134 27 fma.rn.f32 %r45,%r44,%r96,0f3f0a5785; .loc 1 134 20 fma.rn.f32 %r46,%r45,%r96,0f3dd9f331; .loc 1 134 8 fma.rn.f32 %r98,%r46,%r96,0f3f800000; .loc 1 135 8 setp.lt.s32 %r124,%r88,0; @ %r124 bra $L8; .loc 1 135 30 div.rn.f32 %r125,%r97,%r98; .loc 1 135 27 add.f32 %r104,%r125,0f3f58560b; bra $L1; $L8: .loc 1 135 54 div.rn.f32 %r126,%r97,%r98; .loc 1 135 51 mov.f32 %r127,0fbf58560b; sub.f32 %r104,%r127,%r126; bra $L1; $L7: .loc 1 137 5 setp.le.s32 %r128,%r89,1086324735; @ %r128 bra $L9; .loc 1 138 8 setp.ge.s32 %r129,%r88,0; .loc 1 138 49 selp.f32 %r104,0f3f800000,0fbf800000,%r129; bra $L1; $L9: .loc 1 140 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r105; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r131,[%value_in]; } .loc 1 141 13 mul.f32 %r132,%r131,%r131; .loc 1 141 5 rcp.rn.f32 %r91,%r132; .loc 1 142 4 setp.gt.s32 %r134,%r89,1077336941; @ %r134 bra $L10; .loc 1 144 15 fma.rn.f32 %r50,%r91,0fc11d077e,0fc2a2932b; .loc 1 144 8 fma.rn.f32 %r51,%r50,%r91,0fc3389ae7; .loc 1 143 39 fma.rn.f32 %r52,%r51,%r91,0fc322658c; .loc 1 143 32 fma.rn.f32 %r53,%r52,%r91,0fc2798057; .loc 1 143 25 fma.rn.f32 %r54,%r53,%r91,0fc128f022; .loc 1 143 18 fma.rn.f32 %r55,%r54,%r91,0fbf31a0b7; .loc 1 143 7 fma.rn.f32 %r86,%r55,%r91,0fbc21a093; .loc 1 146 22 fma.rn.f32 %r56,%r91,0fbd777f97,0f40d23f7c; .loc 1 146 15 fma.rn.f32 %r57,%r56,%r91,0f42d9451f; .loc 1 146 8 fma.rn.f32 %r58,%r57,%r91,0f43d6810b; .loc 1 145 39 fma.rn.f32 %r59,%r58,%r91,0f442158c9; .loc 1 145 32 fma.rn.f32 %r60,%r59,%r91,0f43d9486f; .loc 1 145 25 fma.rn.f32 %r61,%r60,%r91,0f4309a863; .loc 1 145 18 fma.rn.f32 %r62,%r61,%r91,0f419d35ce; .loc 1 145 7 fma.rn.f32 %r87,%r62,%r91,0f3f800000; bra $L11; $L10: .loc 1 149 8 fma.rn.f32 %r63,%r91,0fc3f1c275,0fc480230b; .loc 1 148 39 fma.rn.f32 %r64,%r63,%r91,0fc41f6441; .loc 1 148 32 fma.rn.f32 %r65,%r64,%r91,0fc320a2ea; .loc 1 148 25 fma.rn.f32 %r66,%r65,%r91,0fc18e104b; .loc 1 148 18 fma.rn.f32 %r67,%r66,%r91,0fbf4c9dd4; .loc 1 148 7 fma.rn.f32 %r86,%r67,%r91,0fbc21a092; .loc 1 151 15 fma.rn.f32 %r68,%r91,0fc1b38712,0f43ed43a7; .loc 1 151 8 fma.rn.f32 %r69,%r68,%r91,0f451f90ce; .loc 1 150 39 fma.rn.f32 %r70,%r69,%r91,0f4547fdbb; .loc 1 150 32 fma.rn.f32 %r71,%r70,%r91,0f44c01759; .loc 1 150 25 fma.rn.f32 %r72,%r71,%r91,0f43a2e571; .loc 1 150 18 fma.rn.f32 %r73,%r72,%r91,0f41f2b459; .loc 1 150 7 fma.rn.f32 %r87,%r73,%r91,0f3f800000; $L11: .loc 1 154 2 mov.b32 %r136,%r131; and.b32 %r135,%r136,-4096; mov.b32 %r92,%r135; .loc 1 155 23 neg.f32 %r137,%r92; .loc 1 155 8 fma.rn.f32 %r77,%r137,%r92,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r139,[%value_in]; } .loc 1 155 60 sub.f32 %r140,%r92,%r131; .loc 1 155 66 add.f32 %r141,%r131,%r92; .loc 1 155 71 div.rn.f32 %r142,%r86,%r87; .loc 1 155 43 fma.rn.f32 %r82,%r140,%r141,%r142; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r82; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r144,[%value_in]; } .loc 1 155 5 mul.f32 %r93,%r139,%r144; .loc 1 156 4 setp.lt.s32 %r145,%r88,0; @ %r145 bra $L12; .loc 1 156 24 div.rn.f32 %r146,%r93,%r131; .loc 1 156 22 mov.f32 %r147,0f3f800000; sub.f32 %r104,%r147,%r146; bra $L1; $L12: .loc 1 156 42 div.rn.f32 %r148,%r93,%r131; .loc 1 156 44 mov.f32 %r149,0f3f800000; sub.f32 %r104,%r148,%r149; $L1: .loc 1 157 1 mov.f32 %value,%r104; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: erfcf .visible .func (.param .f32 %value_out) erfcf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r79; .reg .f32 %r84; .reg .f32 %r88; .reg .f32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .f32 %r94; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .pred %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .pred %r116; .reg .pred %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .pred %r127; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .pred %r136; .reg .f32 %r138; .reg .f32 %r139; .reg .pred %r141; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u16 %r148; .reg .u16 %r149; .reg .u16 %r150; .reg .u32 %r151; .reg .u16 %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .f32 %r156; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r163; .reg .pred %r164; .reg .f32 %r165; .reg .f32 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .f64 %r169; .reg .u16 %r171; mov.f32 %r109,%ar0; .loc 1 168 2 mov.b32 %r90,%r109; .loc 1 169 5 and.b32 %r91,%r90,2147483647; .loc 1 170 4 setp.le.s32 %r110,%r91,2139095039; @ %r110 bra $L15; .loc 1 172 36 shr.u32 %r111,%r90,31; .loc 1 172 41 add.u32 %r112,%r111,%r111; .loc 1 172 13 cvt.rn.f32.s32 %r113,%r112; .loc 1 172 49 rcp.rn.f32 %r114,%r109; .loc 1 172 45 add.f32 %r108,%r113,%r114; bra $L14; $L15: .loc 1 175 4 setp.gt.s32 %r116,%r91,1062731775; @ %r116 bra $L17; .loc 1 176 8 setp.gt.s32 %r117,%r91,595591167; @ %r117 bra $L18; .loc 1 177 13 mov.f32 %r118,0f3f800000; sub.f32 %r108,%r118,%r109; bra $L14; $L18: .loc 1 178 8 mul.f32 %r102,%r109,%r109; .loc 1 179 34 fma.rn.f32 %r26,%r102,0fb7c756b1,0fbbbd1489; .loc 1 179 27 fma.rn.f32 %r27,%r26,%r102,0fbce9528f; .loc 1 179 20 fma.rn.f32 %r28,%r27,%r102,0fbea66beb; .loc 1 179 8 fma.rn.f32 %r103,%r28,%r102,0f3e0375d4; .loc 1 180 41 fma.rn.f32 %r29,%r102,0fb684e21a,0f390aee49; .loc 1 180 34 fma.rn.f32 %r30,%r29,%r102,0f3ba68116; .loc 1 180 27 fma.rn.f32 %r31,%r30,%r102,0f3d852a63; .loc 1 180 20 fma.rn.f32 %r32,%r31,%r102,0f3ecbbbce; .loc 1 180 8 fma.rn.f32 %r104,%r32,%r102,0f3f800000; .loc 1 181 8 div.rn.f32 %r119,%r103,%r104; .loc 1 183 18 mul.f32 %r107,%r119,%r109; .loc 1 182 8 setp.gt.s32 %r120,%r90,1048575999; @ %r120 bra $L19; .loc 1 183 16 add.f32 %r121,%r109,%r107; .loc 1 183 13 mov.f32 %r122,0f3f800000; sub.f32 %r108,%r122,%r121; bra $L14; $L19: .loc 1 186 10 mov.f32 %r124,0f3f000000; sub.f32 %r123,%r109,%r124; .loc 1 186 5 add.f32 %r125,%r123,%r107; .loc 1 187 22 sub.f32 %r108,%r124,%r125; bra $L14; $L17: .loc 1 190 4 setp.gt.s32 %r127,%r91,1067450367; @ %r127 bra $L20; .loc 1 191 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r109; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r129,[%value_in]; } .loc 1 191 8 mov.f32 %r130,0f3f800000; sub.f32 %r98,%r129,%r130; .loc 1 192 48 fma.rn.f32 %r36,%r98,0fbb0df9c0,0f3d1151b3; .loc 1 192 41 fma.rn.f32 %r37,%r36,%r98,0fbde31cc2; .loc 1 192 34 fma.rn.f32 %r38,%r37,%r98,0f3ea2fe54; .loc 1 192 27 fma.rn.f32 %r39,%r38,%r98,0fbebe9208; .loc 1 192 20 fma.rn.f32 %r40,%r39,%r98,0f3ed46805; .loc 1 192 8 fma.rn.f32 %r99,%r40,%r98,0fbb1acdc6; .loc 1 193 48 fma.rn.f32 %r41,%r98,0f3c445aa3,0f3c5f6e13; .loc 1 193 41 fma.rn.f32 %r42,%r41,%r98,0f3e013307; .loc 1 193 34 fma.rn.f32 %r43,%r42,%r98,0f3d931ae7; .loc 1 193 27 fma.rn.f32 %r44,%r43,%r98,0f3f0a5785; .loc 1 193 20 fma.rn.f32 %r45,%r44,%r98,0f3dd9f331; .loc 1 193 8 fma.rn.f32 %r100,%r45,%r98,0f3f800000; .loc 1 194 8 setp.lt.s32 %r131,%r90,0; @ %r131 bra $L21; .loc 1 195 36 div.rn.f32 %r132,%r99,%r100; .loc 1 195 33 mov.f32 %r133,0f3e1ea7d4; sub.f32 %r108,%r133,%r132; bra $L14; $L21: .loc 1 197 12 div.rn.f32 %r134,%r99,%r100; .loc 1 197 5 add.f32 %r135,%r134,0f3f58560b; .loc 1 197 26 add.f32 %r108,%r135,0f3f800000; bra $L14; $L20: .loc 1 200 5 setp.gt.s32 %r136,%r91,1105199103; @ %r136 bra $L22; .loc 1 201 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r109; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r138,[%value_in]; } .loc 1 202 17 mul.f32 %r139,%r138,%r138; .loc 1 202 9 rcp.rn.f32 %r94,%r139; .loc 1 203 8 setp.gt.s32 %r141,%r91,1077336940; @ %r141 bra $L23; .loc 1 205 15 fma.rn.f32 %r49,%r94,0fc11d077e,0fc2a2932b; .loc 1 205 8 fma.rn.f32 %r50,%r49,%r94,0fc3389ae7; .loc 1 204 43 fma.rn.f32 %r51,%r50,%r94,0fc322658c; .loc 1 204 36 fma.rn.f32 %r52,%r51,%r94,0fc2798057; .loc 1 204 29 fma.rn.f32 %r53,%r52,%r94,0fc128f022; .loc 1 204 22 fma.rn.f32 %r54,%r53,%r94,0fbf31a0b7; .loc 1 204 11 fma.rn.f32 %r88,%r54,%r94,0fbc21a093; .loc 1 207 22 fma.rn.f32 %r55,%r94,0fbd777f97,0f40d23f7c; .loc 1 207 15 fma.rn.f32 %r56,%r55,%r94,0f42d9451f; .loc 1 207 8 fma.rn.f32 %r57,%r56,%r94,0f43d6810b; .loc 1 206 43 fma.rn.f32 %r58,%r57,%r94,0f442158c9; .loc 1 206 36 fma.rn.f32 %r59,%r58,%r94,0f43d9486f; .loc 1 206 29 fma.rn.f32 %r60,%r59,%r94,0f4309a863; .loc 1 206 22 fma.rn.f32 %r61,%r60,%r94,0f419d35ce; .loc 1 206 11 fma.rn.f32 %r89,%r61,%r94,0f3f800000; bra $L24; $L23: .loc 1 209 8 shr.u32 %r143,%r90,31; mov.u32 %r144,%r143; .loc 1 209 14 set.u32.gt.s32 %r146,%r91,1086324735; neg.s32 %r147,%r146; mov.u32 %r145,%r147; .loc 1 209 10 cvt.u16.u8 %r171,%r144; mov.u16 %r149,%r171; cvt.u16.u8 %r171,%r145; mov.u16 %r150,%r171; and.b16 %r148,%r149,%r150; cvt.u32.u16 %r151,%r148; .loc 1 209 5 cvt.u16.u8 %r152,%r151; setp.eq.u16 %r153,%r152,0; @ %r153 bra $L25; $L27: .loc 1 209 38 mov.f32 %r108,0f40000000; bra $L14; $L25: .loc 1 211 8 fma.rn.f32 %r65,%r94,0fc3f1c275,0fc480230b; .loc 1 210 43 fma.rn.f32 %r66,%r65,%r94,0fc41f6441; .loc 1 210 36 fma.rn.f32 %r67,%r66,%r94,0fc320a2ea; .loc 1 210 29 fma.rn.f32 %r68,%r67,%r94,0fc18e104b; .loc 1 210 22 fma.rn.f32 %r69,%r68,%r94,0fbf4c9dd4; .loc 1 210 11 fma.rn.f32 %r88,%r69,%r94,0fbc21a092; .loc 1 213 15 fma.rn.f32 %r70,%r94,0fc1b38712,0f43ed43a7; .loc 1 213 8 fma.rn.f32 %r71,%r70,%r94,0f451f90ce; .loc 1 212 43 fma.rn.f32 %r72,%r71,%r94,0f4547fdbb; .loc 1 212 36 fma.rn.f32 %r73,%r72,%r94,0f44c01759; .loc 1 212 29 fma.rn.f32 %r74,%r73,%r94,0f43a2e571; .loc 1 212 22 fma.rn.f32 %r75,%r74,%r94,0f41f2b459; .loc 1 212 11 fma.rn.f32 %r89,%r75,%r94,0f3f800000; $L24: .loc 1 216 6 mov.b32 %r155,%r138; and.b32 %r154,%r155,-4096; mov.b32 %r96,%r154; .loc 1 217 27 neg.f32 %r156,%r96; .loc 1 217 12 fma.rn.f32 %r79,%r156,%r96,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r158,[%value_in]; } .loc 1 218 21 sub.f32 %r159,%r96,%r138; .loc 1 218 27 add.f32 %r160,%r138,%r96; .loc 1 218 32 div.rn.f32 %r161,%r88,%r89; .loc 1 218 4 fma.rn.f32 %r84,%r159,%r160,%r161; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r84; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r163,[%value_in]; } .loc 1 217 9 mul.f32 %r97,%r158,%r163; .loc 1 219 8 setp.le.s32 %r164,%r90,0; @ %r164 bra $L26; .loc 1 219 23 div.rn.f32 %r108,%r97,%r138; bra $L14; $L26: .loc 1 219 44 div.rn.f32 %r165,%r97,%r138; .loc 1 219 42 mov.f32 %r166,0f40000000; sub.f32 %r108,%r166,%r165; bra $L14; $L22: .loc 1 221 8 setp.le.s32 %r167,%r90,0; @ %r167 bra $L27; .loc 1 221 22 mov.u32 %r168,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r168; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r169,[%value_in]; } cvt.rn.f32.f64 %r108,%r169; $L14: .loc 1 223 1 mov.f32 %value,%r108; st.param.f32 [%value_out],%value; ret; } lib_a-sf_exp.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1304 0 0 0 644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp10f .visible .func (.param .f32 %value_out) exp10f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_exp10.c" // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp10f .visible .func (.param .f32 %value_out) exp10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r23,%ar0; .loc 1 32 10 mov.f32 %r24,0f41200000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r23; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 33 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-sf_exp2.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1322 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1344 0 0 0 644 7425 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expm1f .visible .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_expm1.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expm1f .visible .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .u32 %r46; .reg .u32 %r50; .reg .u32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .u32 %r58; .reg .f32 %r59; .reg .u32 %r60; .reg .f32 %r61; .reg .u32 %r62; .reg .f32 %r64; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r75; .reg .f32 %r84; .reg .u32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u16 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .f32 %r111; .reg .pred %r112; .reg .f32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .f32 %r118; .reg .pred %r119; .reg .f32 %r120; .reg .f32 %r122; .reg .pred %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .pred %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .f32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .f32 %r135; .reg .f32 %r136; .reg .f32 %r137; .reg .u32 %r138; .reg .pred %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .u32 %r143; .reg .f32 %r144; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .u32 %r161; .reg .u16 %r163; mov.f32 %r92,%ar0; .loc 1 52 2 mov.b32 %r62,%r92; .loc 1 55 5 and.b32 %r60,%r62,2147483647; .loc 1 58 4 setp.le.u32 %r93,%r60,1100331075; @ %r93 bra $L2; .loc 1 59 8 setp.le.u32 %r94,%r60,2139095040; @ %r94 bra $L3; .loc 1 60 18 add.f32 %r91,%r92,%r92; bra $L1; $L3: .loc 1 61 8 setp.ne.u32 %r95,%r60,2139095040; @ %r95 bra $L5; .loc 1 62 21 setp.lt.s32 %r96,%r62,0; selp.f32 %r91,0fbf800000,%r92,%r96; bra $L1; $L5: .loc 1 63 13 not.b32 %r98,%r62; shr.u32 %r99,%r98,31; mov.u32 %r100,%r99; .loc 1 63 24 set.u32.gt.u32 %r102,%r60,1118925335; neg.s32 %r103,%r102; mov.u32 %r101,%r103; .loc 1 63 18 cvt.u16.u8 %r163,%r100; mov.u16 %r105,%r163; cvt.u16.u8 %r163,%r101; mov.u16 %r106,%r163; and.b16 %r104,%r105,%r106; cvt.u32.u16 %r107,%r104; .loc 1 63 8 cvt.u16.u8 %r108,%r107; setp.eq.u16 %r109,%r108,0; @ %r109 bra $L6; .loc 1 64 10 mov.u32 %r110,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r110; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r111,[%value_in]; } mov.f32 %r91,%r111; bra $L1; $L6: .loc 1 65 8 setp.ge.s32 %r112,%r62,0; @ %r112 bra $L7; .loc 1 66 7 add.f32 %r113,%r92,0f0da24260; .loc 1 66 5 setp.lt.f32 %r114,%r113,0f00000000; @ ! %r114 bra $L27; bra $L23; $L2: .loc 1 72 4 setp.le.u32 %r115,%r60,1051816472; @ %r115 bra $L9; .loc 1 73 8 setp.gt.u32 %r116,%r60,1065686417; @ %r116 bra $L10; .loc 1 74 5 setp.lt.s32 %r117,%r62,0; @ %r117 bra $L11; .loc 1 75 11 mov.f32 %r118,0f3f317180; sub.f32 %r55,%r92,%r118; .loc 1 75 42 mov.u32 %r58,1; .loc 1 75 28 mov.f32 %r56,0f3717f7d1; bra $L12; $L11: .loc 1 77 11 add.f32 %r55,%r92,0f3f317180; .loc 1 77 42 mov.u32 %r58,-1; .loc 1 77 28 mov.f32 %r56,0fb717f7d1; bra $L12; $L10: .loc 1 79 14 mul.f32 %r84,%r92,0f3fb8aa3b; .loc 1 79 37 setp.ge.s32 %r119,%r62,0; selp.f32 %r59,0f3f000000,0fbf000000,%r119; $L13: .loc 1 79 16 add.f32 %r120,%r59,%r84; .loc 1 79 6 cvt.rzi.s32.f32 %r58,%r120; .loc 1 80 6 cvt.rn.f32.s32 %r64,%r58; .loc 1 81 6 fma.rn.f32 %r55,%r64,0fbf317180,%r92; .loc 1 82 6 mul.f32 %r56,%r64,0f3717f7d1; $L12: .loc 1 84 9 sub.f32 %r92,%r55,%r56; .loc 1 85 14 sub.f32 %r122,%r55,%r92; .loc 1 85 9 sub.f32 %r57,%r122,%r56; bra $L14; $L9: .loc 1 87 9 setp.gt.u32 %r123,%r60,855638015; @ %r123 bra $L25; .loc 1 88 8 add.f32 %r61,%r92,0f7149f2ca; .loc 1 89 19 sub.f32 %r124,%r61,%r61; .loc 1 89 15 sub.f32 %r91,%r92,%r124; bra $L1; $L25: .loc 1 91 9 mov.u32 %r58,0; $L14: .loc 1 94 6 mul.f32 %r67,%r92,0f3f000000; .loc 1 95 6 mul.f32 %r68,%r92,%r67; .loc 1 96 42 fma.rn.f32 %r30,%r68,0fb457edbb,0f36867e54; .loc 1 96 34 fma.rn.f32 %r31,%r30,%r68,0fb8a670cd; .loc 1 96 26 fma.rn.f32 %r32,%r31,%r68,0f3ad00d01; .loc 1 96 18 fma.rn.f32 %r33,%r32,%r68,0fbd088889; .loc 1 96 5 fma.rn.f32 %r69,%r33,%r68,0f3f800000; .loc 1 97 5 neg.f32 %r125,%r67; fma.rn.f32 %r70,%r125,%r69,0f40400000; .loc 1 98 15 sub.f32 %r34,%r69,%r70; .loc 1 98 31 neg.f32 %r126,%r92; fma.rn.f32 %r35,%r126,%r70,0f40c00000; .loc 1 98 18 div.rn.f32 %r127,%r34,%r35; .loc 1 98 5 mul.f32 %r71,%r127,%r68; .loc 1 99 4 setp.ne.u32 %r128,%r58,0; @ %r128 bra $L15; .loc 1 99 26 neg.f32 %r129,%r68; fma.rn.f32 %r37,%r92,%r71,%r129; .loc 1 99 20 sub.f32 %r91,%r92,%r37; bra $L1; $L15: .loc 1 101 16 sub.f32 %r38,%r71,%r57; .loc 1 101 9 neg.f32 %r130,%r57; fma.rn.f32 %r72,%r38,%r92,%r130; .loc 1 102 8 sub.f32 %r73,%r72,%r68; .loc 1 103 8 setp.ne.u32 %r131,%r58,-1; @ %r131 bra $L16; .loc 1 103 37 sub.f32 %r132,%r92,%r73; .loc 1 103 40 fma.rn.f32 %r91,%r132,0f3f000000,0fbf000000; bra $L1; $L16: .loc 1 104 14 setp.ne.u32 %r133,%r58,1; @ %r133 bra $L17; .loc 1 105 12 setp.lt.f32 %r134,%r92,0fbe800000; @ ! %r134 bra $L28; .loc 1 105 55 add.f32 %r135,%r92,0f3f000000; .loc 1 105 52 sub.f32 %r136,%r73,%r135; .loc 1 105 49 mul.f32 %r91,%r136,0fc0000000; bra $L1; $L28: .loc 1 106 47 sub.f32 %r137,%r92,%r73; .loc 1 106 33 fma.rn.f32 %r91,%r137,0f40000000,0f3f800000; bra $L1; $L17: .loc 1 112 3 shl.b32 %r90,%r58,23; .loc 1 108 18 add.u32 %r138,%r58,1; .loc 1 108 9 setp.le.u32 %r139,%r138,57; @ %r139 bra $L20; .loc 1 110 20 sub.f32 %r140,%r73,%r92; .loc 1 110 12 mov.f32 %r142,0f3f800000; sub.f32 %r141,%r142,%r140; .loc 1 112 3 mov.b32 %r143,%r141; add.u32 %r46,%r90,%r143; .loc 1 113 18 mov.b32 %r144,%r46; sub.f32 %r91,%r144,%r142; bra $L1; $L20: .loc 1 116 8 setp.gt.s32 %r146,%r58,22; @ %r146 bra $L21; .loc 1 118 10 mov.u32 %r148,16777216; shr.s32 %r147,%r148,%r58; mov.u32 %r150,1065353216; sub.u32 %r149,%r150,%r147; .loc 1 119 18 sub.f32 %r151,%r73,%r92; .loc 1 119 12 mov.b32 %r153,%r149; sub.f32 %r152,%r153,%r151; .loc 1 121 3 mov.b32 %r154,%r152; add.u32 %r50,%r90,%r154; mov.b32 %r91,%r50; bra $L1; $L21: .loc 1 124 3 mov.u32 %r156,127; sub.u32 %r155,%r156,%r58; shl.b32 %r157,%r155,23; .loc 1 125 18 mov.b32 %r159,%r157; add.f32 %r158,%r73,%r159; .loc 1 125 12 sub.f32 %r75,%r92,%r158; .loc 1 126 12 add.f32 %r160,%r75,0f3f800000; .loc 1 128 3 mov.b32 %r161,%r160; add.u32 %r54,%r90,%r161; mov.b32 %r91,%r54; bra $L1; $L23: .loc 1 62 21 mov.f32 %r91,0fbf800000; bra $L1; $L7: .loc 1 79 14 mul.f32 %r84,%r92,0f3fb8aa3b; .loc 1 79 37 mov.f32 %r59,0f3f000000; bra $L13; $L27: .loc 1 79 14 mul.f32 %r84,%r92,0f3fb8aa3b; .loc 1 79 37 mov.f32 %r59,0fbf000000; bra $L13; $L1: .loc 1 132 1 mov.f32 %value,%r91; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fabs.o/0 0 0 644 620 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fabsf .visible .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_fabs.c" // BEGIN GLOBAL FUNCTION DEF: fabsf .visible .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f32 %r25; .reg .u32 %r26; mov.f32 %r25,%ar0; .loc 1 31 2 mov.b32 %r26,%r25; and.b32 %r22,%r26,2147483647; .loc 1 32 16 mov.b32 %value,%r22; .loc 1 33 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_fdim.o/0 0 0 644 1472 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fdimf .visible .func (.param .f32 %value_out) fdimf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_fdim.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fdimf .visible .func (.param .f32 %value_out) fdimf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 17 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 18 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 18 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 20 24 setp.gt.f32 %r33,%r25,%r26; @ ! %r33 bra $L10; sub.f32 %r25,%r25,%r26; bra $L2; $L4: .loc 1 18 42 mov.f32 %r25,%r26; bra $L2; $L10: .loc 1 20 24 mov.f32 %r25,0f00000000; $L2: .loc 1 21 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /1362 0 0 0 644 697 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_finite.c" // BEGIN GLOBAL FUNCTION DEF: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 10 set.u32.le.s32 %r31,%r29,2139095039; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /1381 0 0 0 644 2276 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: floorf .visible .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_floor.c" // BEGIN GLOBAL FUNCTION DEF: floorf .visible .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; mov.f32 %r38,%ar0; .loc 1 42 2 mov.b32 %r34,%r38; .loc 1 43 5 and.b32 %r32,%r34,2147483647; .loc 1 44 10 shr.u32 %r39,%r32,23; .loc 1 44 15 add.u32 %r33,%r39,-127; .loc 1 45 4 setp.gt.s32 %r40,%r33,22; @ %r40 bra $L2; .loc 1 42 2 mov.u32 %r31,%r34; .loc 1 46 8 setp.ge.s32 %r41,%r33,0; @ %r41 bra $L3; .loc 1 47 10 add.f32 %r42,%r38,0f7149f2ca; .loc 1 47 5 setp.gt.f32 %r43,%r42,0f00000000; @ ! %r43 bra $L17; .loc 1 48 9 setp.ge.s32 %r44,%r34,0; @ %r44 bra $L10; .loc 1 49 14 setp.eq.u32 %r45,%r32,0; selp.f32 %r37,%r38,0fbf800000,%r45; bra $L1; $L3: .loc 1 53 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r33; .loc 1 54 9 and.b32 %r47,%r34,%r35; .loc 1 54 5 setp.eq.u32 %r48,%r47,0; @ %r48 bra $L12; .loc 1 55 10 add.f32 %r49,%r38,0f7149f2ca; .loc 1 55 5 setp.gt.f32 %r50,%r49,0f00000000; @ ! %r50 bra $L18; .loc 1 56 9 setp.ge.s32 %r51,%r31,0; @ %r51 bra $L8; .loc 1 56 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r33; .loc 1 56 19 add.u32 %r31,%r31,%r52; $L8: .loc 1 57 14 not.b32 %r54,%r35; .loc 1 57 10 and.b32 %r55,%r54,%r31; .loc 1 64 2 mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 61 8 setp.le.u32 %r56,%r32,2139095039; @ %r56 bra $L14; .loc 1 61 43 add.f32 %r37,%r38,%r38; bra $L1; $L17: mov.f32 %r37,%r38; bra $L1; $L10: mov.f32 %r37,0f00000000; bra $L1; $L18: mov.f32 %r37,%r38; .loc 1 65 9 bra $L1; $L12: .loc 1 54 24 mov.f32 %r37,%r38; bra $L1; $L14: mov.f32 %r37,%r38; $L1: .loc 1 66 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fma.o/ 0 0 0 644 992 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmaf .visible .func (.param .f32 %value_out) fmaf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../newlib/libm/common/sf_fma.c" // BEGIN GLOBAL FUNCTION DEF: fmaf .visible .func (.param .f32 %value_out) fmaf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; mov.f32 %r29,%ar2; .loc 1 27 20 cvt.f64.f32 %r30,%r27; .loc 1 27 33 cvt.f64.f32 %r31,%r28; .loc 1 27 47 cvt.f64.f32 %r32,%r29; .loc 1 27 45 fma.rn.f64 %r25,%r30,%r31,%r32; .loc 1 27 10 cvt.rn.f32.f64 %value,%r25; .loc 1 28 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_fmax.o/0 0 0 644 1465 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmaxf .visible .func (.param .f32 %value_out) fmaxf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_fmax.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fmaxf .visible .func (.param .f32 %value_out) fmaxf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 17 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 19 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 19 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 22 20 setp.gt.f32 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f32 %r24,%r26; bra $L1; $L4: .loc 1 20 12 mov.f32 %r24,%r25; bra $L1; $L5: mov.f32 %r24,%r25; $L1: .loc 1 23 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fmin.o/0 0 0 644 1465 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fminf .visible .func (.param .f32 %value_out) fminf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_fmin.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fminf .visible .func (.param .f32 %value_out) fminf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 17 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 19 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 19 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 22 20 setp.lt.f32 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f32 %r24,%r26; bra $L1; $L4: .loc 1 20 12 mov.f32 %r24,%r25; bra $L1; $L5: mov.f32 %r24,%r25; $L1: .loc 1 23 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /1399 0 0 0 644 1217 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u32 %r27; .reg .f32 %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; mov.f32 %r28,%ar0; .loc 1 16 9 mov.b32 %r29,%r28; and.b32 %r26,%r29,2147483647; .loc 1 16 6 setp.eq.u32 %r30,%r26,0; @ %r30 bra $L3; .loc 1 18 29 add.u32 %r31,%r26,-8388608; .loc 1 18 11 setp.le.u32 %r32,%r31,2130706431; @ %r32 bra $L4; .loc 1 21 29 add.u32 %r33,%r26,-1; .loc 1 21 11 setp.le.u32 %r34,%r33,8388606; @ %r34 bra $L5; .loc 1 24 14 set.u32.eq.u32 %r36,%r26,2139095040; neg.s32 %r27,%r36; bra $L1; $L3: .loc 1 17 12 mov.u32 %r27,2; bra $L1; $L4: .loc 1 20 12 mov.u32 %r27,4; bra $L1; $L5: .loc 1 23 12 mov.u32 %r27,3; $L1: .loc 1 28 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } /1422 0 0 0 644 2124 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/sf_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .f32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r62; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r30,%r38; .loc 1 34 5 and.b32 %r31,%r30,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r31,2139095039; neg.s32 %r43,%r42; mov.u32 %r41,%r43; .loc 1 36 31 set.u32.eq.u32 %r45,%r31,0; neg.s32 %r46,%r45; mov.u32 %r44,%r46; .loc 1 36 29 cvt.u16.u8 %r62,%r41; mov.u16 %r48,%r62; cvt.u16.u8 %r62,%r44; mov.u16 %r49,%r62; or.b16 %r47,%r48,%r49; cvt.u32.u16 %r50,%r47; .loc 1 36 4 cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r30,2139095040; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 38 8 mul.f32 %r55,%r38,0f4c000000; .loc 1 39 6 mov.b32 %r30,%r55; .loc 1 40 9 and.b32 %r31,%r30,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r31,23; .loc 1 43 19 add.u32 %r57,%r56,-126; .loc 1 43 8 add.u32 %r58,%r57,%r36; st.u32 [%r39],%r58; .loc 1 44 10 and.b32 %r59,%r30,-2139095041; .loc 1 44 22 or.b32 %r60,%r59,1056964608; .loc 1 45 2 mov.b32 %r37,%r60; .loc 1 46 9 bra $L1; $L4: .loc 1 36 61 mov.f32 %r37,%r38; $L1: .loc 1 47 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1440 0 0 0 644 1467 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ilogbf .visible .func (.param .u32 %value_out) ilogbf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_ilogb.c" // BEGIN GLOBAL FUNCTION DEF: ilogbf .visible .func (.param .u32 %value_out) ilogbf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r27; .reg .u32 %r28; .reg .f32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; .reg .pred %r35; .reg .pred %r36; .reg .u32 %r37; mov.f32 %r29,%ar0; .loc 1 28 2 mov.b32 %r23,%r29; .loc 1 29 5 and.b32 %r24,%r23,2147483647; .loc 1 30 4 setp.eq.u32 %r30,%r24,0; @ %r30 bra $L5; .loc 1 32 4 and.b32 %r31,%r23,2139095040; setp.ne.u32 %r32,%r31,0; @ %r32 bra $L3; .loc 1 33 23 shl.b32 %r27,%r24,8; .loc 1 33 31 setp.le.s32 %r33,%r27,0; @ %r33 bra $L6; .loc 1 33 14 mov.u32 %r28,-126; $L4: .loc 1 33 46 add.u32 %r28,%r28,-1; .loc 1 33 37 add.u32 %r27,%r27,%r27; .loc 1 33 31 setp.gt.s32 %r35,%r27,0; @ %r35 bra $L4; bra $L1; $L3: .loc 1 39 10 setp.gt.s32 %r36,%r24,2139095039; @ %r36 bra $L7; .loc 1 40 17 shr.s32 %r37,%r24,23; .loc 1 40 22 add.u32 %r28,%r37,-127; bra $L1; $L5: .loc 1 31 13 mov.u32 %r28,-2147483647; bra $L1; $L6: .loc 1 33 14 mov.u32 %r28,-126; bra $L1; $L7: .loc 1 39 44 mov.u32 %r28,2147483647; $L1: .loc 1 41 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /1458 0 0 0 644 430 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: infinityf .visible .func (.param .f32 %value_out) infinityf; .file 1 "../../../../../newlib/libm/common/sf_infinity.c" // BEGIN GLOBAL FUNCTION DEF: infinityf .visible .func (.param .f32 %value_out) infinityf { .reg .f32 %value; .loc 1 13 9 mov.f32 %value,0f7f800000; .loc 1 14 1 st.param.f32 [%value_out],%value; ret; } /1479 0 0 0 644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 19 2 mov.b32 %r23,%r27; .loc 1 20 5 and.b32 %r29,%r23,2147483647; .loc 1 21 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 22 1 st.param.u32 [%value_out],%value; ret; } /1497 0 0 0 644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isinff.c" // BEGIN GLOBAL FUNCTION DEF: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 12 2 mov.b32 %r23,%r27; .loc 1 13 5 and.b32 %r29,%r23,2147483647; .loc 1 14 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 15 1 st.param.u32 [%value_out],%value; ret; } /1516 0 0 0 644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 30 2 mov.b32 %r23,%r27; .loc 1 31 5 and.b32 %r29,%r23,2147483647; .loc 1 32 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /1534 0 0 0 644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isnanf.c" // BEGIN GLOBAL FUNCTION DEF: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 22 2 mov.b32 %r23,%r27; .loc 1 23 5 and.b32 %r29,%r23,2147483647; .loc 1 24 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 25 1 st.param.u32 [%value_out],%value; ret; } /1553 0 0 0 644 2911 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/math/sf_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f32 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 26 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 26 20 set.u32.eq.f32 %r37,%r32,0f00000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 26 20 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 27 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } mov.f32 %r32,%r50; .loc 1 28 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 28 20 set.u32.eq.f32 %r54,%r32,0f00000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 28 20 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 28 41 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 28 47 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 30 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } /1571 0 0 0 644 2613 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llrintf .visible .func (.param .u64 %value_out) llrintf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_llrint.c" // BEGIN VAR DEF: TWO23 .const .align 4 .u32 TWO23[2] = {1258291200,3405774848 }; // BEGIN GLOBAL FUNCTION DEF: llrintf .visible .func (.param .u64 %value_out) llrintf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r24; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .u32 %r40; .reg .u32 %r43; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .f32 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .f32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; mov.f32 %r49,%ar0; .loc 1 53 3 mov.b32 %r46,%r49; .loc 1 59 27 shr.u32 %r50,%r46,23; and.b32 %r24,%r50,255; .loc 1 59 34 add.u32 %r40,%r24,-127; .loc 1 61 6 setp.gt.s32 %r51,%r40,62; @ %r51 bra $L2; .loc 1 63 10 setp.ge.s32 %r52,%r40,-1; @ %r52 bra $L3; $L7: .loc 1 64 16 mov.u64 %r48,0; bra $L1; $L3: .loc 1 56 12 shr.u32 %r22,%r46,31; .loc 1 65 15 setp.le.s32 %r53,%r40,22; @ %r53 bra $L5; .loc 1 66 39 and.b32 %r54,%r46,8388607; .loc 1 66 51 or.b32 %r55,%r54,8388608; .loc 1 66 18 cvt.u64.u32 %r56,%r55; .loc 1 66 70 add.u32 %r57,%r24,-150; .loc 1 66 16 shl.b64 %r48,%r56,%r57; bra $L6; $L5: .loc 1 69 20 cvta.const.u64 %r58,TWO23; cvt.s64.s32 %r59,%r22; shl.b64 %r60,%r59,2; add.u64 %r61,%r58,%r60; ld.f32 %r30,[%r61]; .loc 1 69 25 add.f32 %r31,%r30,%r49; .loc 1 69 13 st.f32 [%frame],%r31; .loc 1 70 17 ld.f32 %r32,[%frame]; .loc 1 70 13 sub.f32 %r62,%r32,%r30; .loc 1 71 11 mov.b32 %r47,%r62; .loc 1 74 19 and.b32 %r63,%r47,2147483647; .loc 1 74 14 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L7; .loc 1 77 14 and.b32 %r43,%r47,8388607; .loc 1 78 14 or.b32 %r65,%r43,8388608; .loc 1 76 21 shr.u32 %r66,%r47,23; .loc 1 76 28 and.b32 %r67,%r66,255; .loc 1 79 30 mov.u32 %r70,150; sub.u32 %r69,%r70,%r67; .loc 1 79 23 shr.u32 %r71,%r65,%r69; .loc 1 79 18 cvt.u64.u32 %r48,%r71; bra $L6; $L2: .loc 1 84 14 cvt.rzi.s64.f32 %r48,%r49; bra $L1; $L6: .loc 1 86 23 setp.eq.u32 %r72,%r22,0; @ %r72 bra $L1; neg.s64 %r48,%r48; $L1: .loc 1 87 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } /1590 0 0 0 644 1919 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llroundf .visible .func (.param .u64 %value_out) llroundf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_llround.c" // BEGIN GLOBAL FUNCTION DEF: llroundf .visible .func (.param .u64 %value_out) llroundf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r41; .reg .f32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; mov.f32 %r42,%ar0; .loc 1 23 3 mov.b32 %r37,%r42; .loc 1 24 41 shr.u32 %r43,%r37,23; and.b32 %r23,%r43,255; .loc 1 24 48 add.u32 %r35,%r23,-127; .loc 1 25 37 setp.lt.s32 %r44,%r37,0; selp.u32 %r34,-1,1,%r44; .loc 1 29 6 setp.gt.s32 %r45,%r35,62; @ %r45 bra $L3; .loc 1 31 10 setp.ge.s32 %r46,%r35,0; @ %r46 bra $L4; .loc 1 32 43 setp.eq.u32 %r47,%r35,-1; selp.u32 %r34,%r34,0,%r47; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 26 5 and.b32 %r38,%r37,8388607; .loc 1 27 5 or.b32 %r39,%r38,8388608; .loc 1 33 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L7; .loc 1 34 18 cvt.u64.u32 %r49,%r39; .loc 1 34 58 add.u32 %r50,%r23,-150; .loc 1 34 16 shl.b64 %r33,%r49,%r50; bra $L8; $L7: .loc 1 37 25 mov.u32 %r52,4194304; shr.s32 %r51,%r52,%r35; .loc 1 37 13 add.u32 %r53,%r51,%r39; .loc 1 38 29 mov.u32 %r55,23; sub.u32 %r54,%r55,%r35; .loc 1 38 22 shr.u32 %r56,%r53,%r54; .loc 1 38 18 cvt.u64.u32 %r33,%r56; bra $L8; $L3: .loc 1 42 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L8: .loc 1 44 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; $L1: .loc 1 45 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } lib_a-sf_log.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1610 0 0 0 644 6821 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log1pf .visible .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_log1p.c" // BEGIN GLOBAL FUNCTION DECL: __math_divzerof .extern .func (.param .f32 %value_out) __math_divzerof (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalidf .extern .func (.param .f32 %value_out) __math_invalidf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log1pf .visible .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r54; .reg .f32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f32 %r60; .reg .u32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r83; .reg .f32 %r84; .reg .f32 %r86; .reg .pred %r87; .reg .f32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .f32 %r101; .reg .u32 %r103; .reg .pred %r104; .reg .f32 %r105; .reg .pred %r106; .reg .u32 %r107; .reg .pred %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .pred %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .u16 %r136; mov.f32 %r78,%ar0; .loc 1 51 2 mov.b32 %r58,%r78; .loc 1 55 5 setp.le.s32 %r79,%r58,2139095039; @ %r79 bra $L2; .loc 1 55 40 add.f32 %r77,%r78,%r78; bra $L1; $L2: .loc 1 56 5 setp.gt.s32 %r80,%r58,1054086102; @ %r80 bra $L4; .loc 1 52 5 and.b32 %r61,%r58,2147483647; .loc 1 57 8 setp.le.s32 %r81,%r61,1065353215; @ %r81 bra $L5; .loc 1 58 5 setp.neu.f32 %r82,%r78,0fbf800000; @ %r82 bra $L6; .loc 1 59 14 mov.u32 %r83,1; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r83; call (%value_in),__math_divzerof,(%out_arg1); ld.param.f32 %r84,[%value_in]; } mov.f32 %r77,%r84; bra $L1; $L6: .loc 1 61 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r78; call (%value_in),__math_invalidf,(%out_arg1); ld.param.f32 %r86,[%value_in]; } mov.f32 %r77,%r86; bra $L1; $L5: .loc 1 63 8 setp.gt.s32 %r87,%r61,822083583; @ %r87 bra $L7; .loc 1 64 11 add.f32 %r88,%r78,0f4c000000; .loc 1 64 5 set.u32.gt.f32 %r90,%r88,0f00000000; neg.s32 %r91,%r90; mov.u32 %r89,%r91; .loc 1 65 14 set.u32.le.s32 %r93,%r61,612368383; neg.s32 %r94,%r93; mov.u32 %r92,%r94; cvt.u16.u8 %r136,%r89; mov.u16 %r96,%r136; cvt.u16.u8 %r136,%r92; mov.u16 %r97,%r136; and.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L19; .loc 1 68 19 mul.f32 %r101,%r78,%r78; .loc 1 68 16 fma.rn.f32 %r77,%r101,0fbf000000,%r78; bra $L1; $L7: .loc 1 70 13 add.u32 %r103,%r58,1097468384; .loc 1 70 8 setp.le.u32 %r104,%r103,1097468384; @ %r104 bra $L8; .loc 1 97 17 mul.f32 %r105,%r78,0f3f000000; .loc 1 97 6 mul.f32 %r63,%r105,%r78; .loc 1 71 4 mov.u32 %r57,0; bra $L9; $L4: .loc 1 74 8 setp.gt.s32 %r106,%r58,1509949439; @ %r106 bra $L10; $L8: .loc 1 75 6 add.f32 %r62,%r78,0f3f800000; .loc 1 76 3 mov.b32 %r58,%r62; .loc 1 77 18 shr.s32 %r107,%r58,23; .loc 1 77 13 add.u32 %r57,%r107,-127; .loc 1 79 38 setp.le.s32 %r108,%r57,0; @ %r108 bra $L11; .loc 1 79 35 sub.f32 %r109,%r62,%r78; .loc 1 79 38 mov.f32 %r110,0f3f800000; sub.f32 %r60,%r110,%r109; bra $L12; $L11: .loc 1 79 43 mov.f32 %r112,0f3f800000; sub.f32 %r111,%r62,%r112; .loc 1 79 38 sub.f32 %r60,%r78,%r111; $L12: .loc 1 80 5 div.rn.f32 %r54,%r60,%r62; bra $L13; $L10: .loc 1 84 18 shr.s32 %r113,%r58,23; .loc 1 84 13 add.u32 %r57,%r113,-127; .loc 1 85 6 mov.f32 %r54,0f00000000; $L13: .loc 1 87 9 and.b32 %r59,%r58,8388607; .loc 1 88 8 setp.gt.s32 %r114,%r59,3474678; @ %r114 bra $L14; .loc 1 89 10 or.b32 %r115,%r59,1065353216; mov.b32 %r55,%r115; bra $L15; $L14: .loc 1 91 12 add.u32 %r57,%r57,1; .loc 1 92 3 or.b32 %r116,%r59,1056964608; mov.b32 %r55,%r116; .loc 1 93 26 mov.u32 %r117,8388608; sub.u32 %r32,%r117,%r59; .loc 1 93 13 shr.s32 %r59,%r32,2; $L15: .loc 1 95 8 mov.f32 %r118,0f3f800000; sub.f32 %r78,%r55,%r118; .loc 1 97 17 mul.f32 %r119,%r78,0f3f000000; .loc 1 97 6 mul.f32 %r63,%r119,%r78; .loc 1 98 4 setp.ne.u32 %r120,%r59,0; @ %r120 bra $L9; .loc 1 99 14 setp.neu.f32 %r121,%r78,0f00000000; @ %r121 bra $L16; .loc 1 99 28 setp.eq.u32 %r122,%r57,0; @ %r122 bra $L20; .loc 1 100 36 cvt.rn.f32.s32 %r34,%r57; .loc 1 100 32 fma.rn.f32 %r67,%r34,0f3717f7d1,%r54; .loc 1 100 60 fma.rn.f32 %r77,%r34,0f3f317180,%r67; bra $L1; $L16: .loc 1 101 26 fma.rn.f32 %r35,%r78,0fbf2aaaab,0f3f800000; .loc 1 101 8 mul.f32 %r66,%r35,%r63; .loc 1 102 8 setp.ne.u32 %r124,%r57,0; @ %r124 bra $L17; .loc 1 102 23 sub.f32 %r77,%r78,%r66; bra $L1; $L17: .loc 1 103 20 cvt.rn.f32.s32 %r36,%r57; .loc 1 103 41 fma.rn.f32 %r37,%r36,0f3717f7d1,%r54; .loc 1 103 31 sub.f32 %r125,%r66,%r37; .loc 1 103 45 sub.f32 %r126,%r125,%r78; .loc 1 103 27 neg.f32 %r127,%r126; fma.rn.f32 %r77,%r36,0f3f317180,%r127; bra $L1; $L9: .loc 1 105 20 add.f32 %r128,%r78,0f40000000; .loc 1 105 5 div.rn.f32 %r64,%r78,%r128; .loc 1 106 4 mul.f32 %r65,%r64,%r64; .loc 1 107 47 fma.rn.f32 %r41,%r65,0f3e178897,0f3e1cd04f; .loc 1 107 40 fma.rn.f32 %r42,%r41,%r65,0f3e3a3325; .loc 1 107 33 fma.rn.f32 %r43,%r42,%r65,0f3e638e29; .loc 1 107 26 fma.rn.f32 %r44,%r43,%r65,0f3e924925; .loc 1 107 19 fma.rn.f32 %r45,%r44,%r65,0f3ecccccd; .loc 1 107 12 fma.rn.f32 %r46,%r45,%r65,0f3f2aaaab; .loc 1 108 33 fma.rn.f32 %r75,%r46,%r65,%r63; .loc 1 108 27 mul.f32 %r76,%r64,%r75; .loc 1 108 4 setp.ne.u32 %r129,%r57,0; @ %r129 bra $L18; .loc 1 108 25 sub.f32 %r130,%r63,%r76; .loc 1 108 19 sub.f32 %r77,%r78,%r130; bra $L1; $L18: .loc 1 109 12 cvt.rn.f32.s32 %r48,%r57; .loc 1 109 48 fma.rn.f32 %r49,%r48,0f3717f7d1,%r54; .loc 1 109 38 add.f32 %r131,%r49,%r76; .loc 1 109 26 sub.f32 %r132,%r63,%r131; .loc 1 109 53 sub.f32 %r133,%r132,%r78; .loc 1 109 19 neg.f32 %r134,%r133; fma.rn.f32 %r77,%r48,0f3f317180,%r134; bra $L1; $L19: .loc 1 66 14 mov.f32 %r77,%r78; bra $L1; $L20: .loc 1 99 42 mov.f32 %r77,0f00000000; $L1: .loc 1 110 1 mov.f32 %value,%r77; st.param.f32 [%value_out],%value; ret; } lib_a-sf_log2.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1628 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1650 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sf_logb.o/0 0 0 644 1765 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logbf .visible .func (.param .f32 %value_out) logbf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_logb.c" // BEGIN GLOBAL FUNCTION DEF: logbf .visible .func (.param .f32 %value_out) logbf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r28; .reg .u32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .pred %r32; .reg .f32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r41; .reg .u32 %r42; mov.f32 %r31,%ar0; .loc 1 33 2 mov.b32 %r24,%r31; .loc 1 34 5 and.b32 %r25,%r24,2147483647; .loc 1 35 4 setp.ne.u32 %r32,%r25,0; @ %r32 bra $L2; .loc 1 39 13 mov.f32 %r33,0fbf800000; div.rn.f32 %r30,%r33,0f00000000; bra $L1; $L2: .loc 1 41 4 and.b32 %r34,%r24,2139095040; setp.ne.u32 %r35,%r34,0; @ %r35 bra $L4; .loc 1 42 23 shl.b32 %r29,%r25,8; .loc 1 42 31 setp.le.s32 %r36,%r29,0; @ %r36 bra $L7; .loc 1 42 14 mov.u32 %r28,-126; $L6: .loc 1 42 46 add.u32 %r28,%r28,-1; .loc 1 42 37 add.u32 %r29,%r29,%r29; .loc 1 42 31 setp.gt.s32 %r38,%r29,0; @ %r38 bra $L6; .loc 1 43 13 cvt.rn.f32.s32 %r30,%r28; bra $L1; $L7: .loc 1 42 31 mov.f32 %r30,0fc2fc0000; .loc 1 43 13 bra $L1; $L4: .loc 1 45 10 setp.eq.u32 %r39,%r25,2139095040; @ %r39 bra $L8; .loc 1 46 10 setp.gt.s32 %r40,%r25,2139095040; @ %r40 bra $L9; .loc 1 47 26 shr.s32 %r41,%r25,23; .loc 1 47 31 add.u32 %r42,%r41,-127; .loc 1 47 14 cvt.rn.f32.s32 %r30,%r42; bra $L1; $L8: .loc 1 45 45 mov.f32 %r30,0f7f800000; bra $L1; $L9: .loc 1 46 40 mov.f32 %r30,%r31; $L1: .loc 1 48 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /1671 0 0 0 644 2648 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lrintf .visible .func (.param .u64 %value_out) lrintf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_lrint.c" // BEGIN VAR DEF: TWO23 .const .align 4 .u32 TWO23[2] = {1258291200,3405774848 }; // BEGIN GLOBAL FUNCTION DEF: lrintf .visible .func (.param .u64 %value_out) lrintf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r24; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .u32 %r41; .reg .u32 %r44; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .f32 %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .f32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .pred %r74; mov.f32 %r50,%ar0; .loc 1 53 3 mov.b32 %r47,%r50; .loc 1 59 27 shr.u32 %r51,%r47,23; and.b32 %r24,%r51,255; .loc 1 59 34 add.u32 %r41,%r24,-127; .loc 1 61 6 setp.gt.s32 %r52,%r41,62; @ %r52 bra $L2; .loc 1 63 10 setp.ge.s32 %r53,%r41,-1; @ %r53 bra $L3; $L7: .loc 1 64 16 mov.u64 %r49,0; bra $L1; $L3: .loc 1 56 12 shr.u32 %r22,%r47,31; .loc 1 65 15 setp.le.s32 %r54,%r41,22; @ %r54 bra $L5; .loc 1 66 34 and.b32 %r55,%r47,8388607; .loc 1 66 46 or.b32 %r56,%r55,8388608; .loc 1 66 18 cvt.u64.u32 %r57,%r56; .loc 1 66 65 add.u32 %r58,%r24,-150; .loc 1 66 16 shl.b64 %r49,%r57,%r58; bra $L6; $L5: .loc 1 69 20 cvta.const.u64 %r59,TWO23; cvt.s64.s32 %r60,%r22; shl.b64 %r61,%r60,2; add.u64 %r62,%r59,%r61; ld.f32 %r30,[%r62]; .loc 1 69 25 add.f32 %r31,%r30,%r50; .loc 1 69 13 st.f32 [%frame],%r31; .loc 1 70 17 ld.f32 %r32,[%frame]; .loc 1 70 13 sub.f32 %r63,%r32,%r30; .loc 1 71 11 mov.b32 %r48,%r63; .loc 1 74 19 cvt.u64.u32 %r64,%r48; and.b64 %r65,%r64,-2147483649; .loc 1 74 14 setp.eq.u64 %r66,%r65,0; @ %r66 bra $L7; .loc 1 77 14 and.b32 %r44,%r48,8388607; .loc 1 78 14 or.b32 %r67,%r44,8388608; .loc 1 76 21 shr.u32 %r68,%r48,23; .loc 1 76 28 and.b32 %r69,%r68,255; .loc 1 79 30 mov.u32 %r72,150; sub.u32 %r71,%r72,%r69; .loc 1 79 23 shr.u32 %r73,%r67,%r71; .loc 1 79 18 cvt.u64.u32 %r49,%r73; bra $L6; $L2: .loc 1 84 14 cvt.rzi.s64.f32 %r49,%r50; bra $L1; $L6: .loc 1 86 23 setp.eq.u32 %r74,%r22,0; @ %r74 bra $L1; neg.s64 %r49,%r49; $L1: .loc 1 87 1 mov.u64 %value,%r49; st.param.u64 [%value_out],%value; ret; } /1689 0 0 0 644 1914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lroundf .visible .func (.param .u64 %value_out) lroundf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_lround.c" // BEGIN GLOBAL FUNCTION DEF: lroundf .visible .func (.param .u64 %value_out) lroundf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r41; .reg .f32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; mov.f32 %r42,%ar0; .loc 1 26 3 mov.b32 %r37,%r42; .loc 1 27 41 shr.u32 %r43,%r37,23; and.b32 %r23,%r43,255; .loc 1 27 48 add.u32 %r35,%r23,-127; .loc 1 28 37 setp.lt.s32 %r44,%r37,0; selp.u32 %r34,-1,1,%r44; .loc 1 32 6 setp.gt.s32 %r45,%r35,62; @ %r45 bra $L3; .loc 1 34 10 setp.ge.s32 %r46,%r35,0; @ %r46 bra $L4; .loc 1 35 43 setp.eq.u32 %r47,%r35,-1; selp.u32 %r34,%r34,0,%r47; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 29 5 and.b32 %r38,%r37,8388607; .loc 1 30 5 or.b32 %r39,%r38,8388608; .loc 1 36 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L7; .loc 1 37 18 cvt.u64.u32 %r49,%r39; .loc 1 37 53 add.u32 %r50,%r23,-150; .loc 1 37 16 shl.b64 %r33,%r49,%r50; bra $L8; $L7: .loc 1 40 25 mov.u32 %r52,4194304; shr.s32 %r51,%r52,%r35; .loc 1 40 13 add.u32 %r53,%r51,%r39; .loc 1 41 29 mov.u32 %r55,23; sub.u32 %r54,%r55,%r35; .loc 1 41 22 shr.u32 %r56,%r53,%r54; .loc 1 41 18 cvt.u64.u32 %r33,%r56; bra $L8; $L3: .loc 1 45 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L8: .loc 1 47 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; $L1: .loc 1 48 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } lib_a-sf_modf.o/0 0 0 644 2243 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r31; .reg .u32 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; mov.f32 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 27 2 mov.b32 %r33,%r39; .loc 1 28 11 shr.s32 %r41,%r33,23; .loc 1 28 16 and.b32 %r42,%r41,255; .loc 1 28 5 add.u32 %r36,%r42,-127; .loc 1 29 4 setp.gt.s32 %r43,%r36,22; @ %r43 bra $L2; .loc 1 30 8 setp.ge.s32 %r44,%r36,0; @ %r44 bra $L3; .loc 1 31 10 and.b32 %r45,%r33,-2147483648; st.u32 [%r40],%r45; .loc 1 32 10 mov.f32 %r38,%r39; bra $L1; $L3: .loc 1 34 19 mov.u32 %r46,8388607; shr.s32 %r37,%r46,%r36; .loc 1 35 9 and.b32 %r47,%r33,%r37; .loc 1 35 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 36 13 st.f32 [%r40],%r39; .loc 1 37 7 and.b32 %r49,%r33,-2147483648; mov.b32 %r38,%r49; .loc 1 38 14 bra $L1; $L5: .loc 1 40 7 not.b32 %r50,%r37; and.b32 %r51,%r50,%r33; mov.b32 %r31,%r51; st.f32 [%r40],%r31; .loc 1 41 16 sub.f32 %r38,%r39,%r31; bra $L1; $L2: .loc 1 45 12 st.f32 [%r40],%r39; .loc 1 46 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 46 9 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L6; .loc 1 46 54 add.f32 %r38,%r39,%r39; .loc 1 46 51 st.f32 [%r40],%r38; bra $L1; $L6: .loc 1 47 6 and.b32 %r55,%r33,-2147483648; mov.b32 %r38,%r55; $L1: .loc 1 50 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 0 0 0 644 494 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_nan.c" // BEGIN GLOBAL FUNCTION DEF: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 17 9 mov.f32 %value,0f7fc00000; .loc 1 18 1 st.param.f32 [%value_out],%value; ret; } /1708 0 0 0 644 823 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nearbyintf .visible .func (.param .f32 %value_out) nearbyintf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_nearbyint.c" // BEGIN GLOBAL FUNCTION DECL: rintf .extern .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: nearbyintf .visible .func (.param .f32 %value_out) nearbyintf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r25; mov.f32 %r23,%ar0; .loc 1 23 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; call (%value_in),rintf,(%out_arg1); ld.param.f32 %r25,[%value_in]; } .loc 1 24 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /1730 0 0 0 644 3139 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nextafterf .visible .func (.param .f32 %value_out) nextafterf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_nextafter.c" // BEGIN GLOBAL FUNCTION DEF: nextafterf .visible .func (.param .f32 %value_out) nextafterf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .u32 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u16 %r78; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; .loc 1 27 2 mov.b32 %r31,%r40; .loc 1 28 2 mov.b32 %r37,%r41; .loc 1 29 5 and.b32 %r33,%r31,2147483647; .loc 1 30 5 and.b32 %r42,%r37,2147483647; .loc 1 33 5 set.u32.gt.s32 %r44,%r42,2139095040; neg.s32 %r45,%r44; mov.u32 %r43,%r45; .loc 1 32 5 set.u32.gt.s32 %r47,%r33,2139095040; neg.s32 %r48,%r47; mov.u32 %r46,%r48; .loc 1 32 26 cvt.u16.u8 %r78,%r43; mov.u16 %r50,%r78; cvt.u16.u8 %r78,%r46; mov.u16 %r51,%r78; or.b16 %r49,%r50,%r51; cvt.u32.u16 %r52,%r49; .loc 1 32 4 cvt.u16.u8 %r53,%r52; setp.eq.u16 %r54,%r53,0; @ %r54 bra $L2; .loc 1 34 13 add.f32 %r39,%r40,%r41; bra $L1; $L2: .loc 1 35 4 setp.eq.f32 %r55,%r40,%r41; @ %r55 bra $L10; .loc 1 36 4 setp.ne.u32 %r56,%r33,0; @ %r56 bra $L4; .loc 1 37 6 and.b32 %r57,%r37,-2147483648; or.b32 %r58,%r57,1; mov.b32 %r38,%r58; .loc 1 38 8 mul.f32 %r39,%r38,%r38; .loc 1 39 8 setp.eq.f32 %r59,%r38,%r39; .loc 1 39 37 selp.f32 %r39,%r39,%r38,%r59; bra $L1; $L4: .loc 1 41 4 setp.lt.s32 %r60,%r31,0; @ %r60 bra $L5; .loc 1 42 8 setp.le.s32 %r61,%r31,%r37; @ %r61 bra $L6; .loc 1 43 6 add.u32 %r30,%r31,-1; bra $L7; $L6: .loc 1 45 6 add.u32 %r30,%r31,1; bra $L7; $L5: .loc 1 48 11 not.b32 %r63,%r37; shr.u32 %r64,%r63,31; mov.u32 %r65,%r64; .loc 1 48 18 set.u32.gt.s32 %r67,%r31,%r37; neg.s32 %r68,%r67; mov.u32 %r66,%r68; .loc 1 48 14 cvt.u16.u8 %r78,%r65; mov.u16 %r70,%r78; cvt.u16.u8 %r78,%r66; mov.u16 %r71,%r78; or.b16 %r69,%r70,%r71; cvt.u32.u16 %r72,%r69; .loc 1 48 8 cvt.u16.u8 %r73,%r72; setp.eq.u16 %r74,%r73,0; @ %r74 bra $L8; .loc 1 49 6 add.u32 %r30,%r31,-1; bra $L9; $L8: .loc 1 51 6 add.u32 %r30,%r31,1; $L7: .loc 1 54 5 and.b32 %r75,%r30,2139095040; .loc 1 55 4 setp.ne.u32 %r76,%r75,2139095040; @ %r76 bra $L9; .loc 1 55 31 add.f32 %r39,%r40,%r40; bra $L1; $L9: .loc 1 59 10 mov.b32 %r39,%r30; bra $L1; $L10: .loc 1 35 18 mov.f32 %r39,%r40; $L1: .loc 1 65 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-sf_pow.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1752 0 0 0 644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: pow10f .visible .func (.param .f32 %value_out) pow10f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_pow10.c" // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: pow10f .visible .func (.param .f32 %value_out) pow10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r23,%ar0; .loc 1 32 10 mov.f32 %r24,0f41200000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r23; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 33 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } /1770 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1796 0 0 0 644 8258 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remquof .visible .func (.param .f32 %value_out) remquof (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/common/sf_remquo.c" // BEGIN VAR DEF: Zero .const .align 4 .u32 Zero[2] = {0,2147483648 }; // BEGIN GLOBAL FUNCTION DEF: remquof .visible .func (.param .f32 %value_out) remquof (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .f32 %r26; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r35; .reg .f32 %r38; .reg .f32 %r40; .reg .u32 %r42; .reg .f32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .f32 %r71; .reg .u32 %r72; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u32 %r97; .reg .u16 %r98; .reg .pred %r99; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .u32 %r103; .reg .u64 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r119; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .u64 %r137; .reg .u32 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .pred %r143; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .u32 %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .u32 %r156; .reg .pred %r157; .reg .u32 %r158; .reg .pred %r159; .reg .pred %r161; .reg .u16 %r162; mov.f32 %r78,%ar0; mov.f32 %r79,%ar1; mov.u64 %r80,%ar2; .loc 1 42 2 mov.b32 %r53,%r78; .loc 1 43 2 mov.b32 %r54,%r79; .loc 1 46 5 and.b32 %r46,%r53,2147483647; .loc 1 47 5 and.b32 %r56,%r54,2147483647; .loc 1 50 7 set.u32.eq.u32 %r82,%r56,0; neg.s32 %r83,%r82; mov.u32 %r81,%r83; .loc 1 50 26 set.u32.gt.s32 %r85,%r56,2139095040; neg.s32 %r86,%r85; mov.u32 %r84,%r86; cvt.u16.u8 %r162,%r81; mov.u16 %r88,%r162; cvt.u16.u8 %r162,%r84; mov.u16 %r89,%r162; or.b16 %r87,%r88,%r89; cvt.u32.u16 %r90,%r87; .loc 1 50 14 set.u32.gt.s32 %r92,%r46,2139095039; neg.s32 %r93,%r92; mov.u32 %r91,%r93; .loc 1 50 26 cvt.u16.u8 %r162,%r90; mov.u16 %r95,%r162; cvt.u16.u8 %r162,%r91; mov.u16 %r96,%r162; or.b16 %r94,%r95,%r96; cvt.u32.u16 %r97,%r94; cvt.u16.u8 %r98,%r97; setp.eq.u16 %r99,%r98,0; @ %r99 bra $L2; .loc 1 51 11 mov.u32 %r100,0; st.u32 [%r80],%r100; .loc 1 52 15 mul.f32 %r26,%r78,%r79; .loc 1 52 18 div.rn.f32 %r77,%r26,%r26; bra $L1; $L2: .loc 1 44 12 xor.b32 %r23,%r53,%r54; .loc 1 45 5 and.b32 %r49,%r53,-2147483648; .loc 1 54 4 setp.lt.s32 %r101,%r46,%r56; @ %r101 bra $L34; .loc 1 57 11 setp.ne.u32 %r102,%r46,%r56; @ %r102 bra $L5; .loc 1 58 11 mov.u32 %r103,1; st.u32 [%r80],%r103; .loc 1 59 17 cvta.const.u64 %r104,Zero; .loc 1 59 32 shr.u32 %r105,%r49,31; .loc 1 59 17 cvt.u64.u32 %r106,%r105; shl.b64 %r107,%r106,2; add.u64 %r108,%r104,%r107; ld.f32 %r77,[%r108]; bra $L1; $L5: .loc 1 63 4 and.b32 %r109,%r53,2139095040; setp.ne.u32 %r110,%r109,0; @ %r110 bra $L6; .loc 1 64 22 shl.b32 %r59,%r46,8; .loc 1 64 33 setp.le.s32 %r111,%r59,0; @ %r111 bra $L35; .loc 1 64 14 mov.u32 %r58,-126; $L8: .loc 1 64 47 add.u32 %r58,%r58,-1; .loc 1 64 38 add.u32 %r59,%r59,%r59; .loc 1 64 33 setp.gt.s32 %r113,%r59,0; @ %r113 bra $L8; bra $L7; $L6: .loc 1 65 17 shr.s32 %r114,%r46,23; .loc 1 65 12 add.u32 %r58,%r114,-127; bra $L7; $L35: .loc 1 64 14 mov.u32 %r58,-126; $L7: .loc 1 68 4 and.b32 %r115,%r54,2139095040; setp.ne.u32 %r116,%r115,0; @ %r116 bra $L9; .loc 1 69 22 shl.b32 %r61,%r56,8; .loc 1 69 33 setp.le.s32 %r117,%r61,0; @ %r117 bra $L36; .loc 1 69 14 mov.u32 %r68,-126; $L11: .loc 1 69 47 add.u32 %r68,%r68,-1; .loc 1 69 38 add.u32 %r61,%r61,%r61; .loc 1 69 33 setp.gt.s32 %r119,%r61,0; @ %r119 bra $L11; bra $L10; $L9: .loc 1 70 17 shr.s32 %r120,%r56,23; .loc 1 70 12 add.u32 %r68,%r120,-127; bra $L10; $L36: .loc 1 69 14 mov.u32 %r68,-126; $L10: .loc 1 73 4 setp.lt.s32 %r121,%r58,-126; @ %r121 bra $L12; .loc 1 74 33 and.b32 %r30,%r53,8388607; .loc 1 74 9 or.b32 %r45,%r30,8388608; bra $L13; $L12: .loc 1 76 8 mov.u32 %r123,-126; sub.u32 %r122,%r123,%r58; .loc 1 77 9 shl.b32 %r45,%r46,%r122; $L13: .loc 1 79 4 setp.lt.s32 %r161,%r68,-126; @ %r161 bra $L14; .loc 1 80 33 and.b32 %r31,%r54,8388607; .loc 1 80 9 or.b32 %r47,%r31,8388608; bra $L15; $L14: .loc 1 82 8 mov.u32 %r126,-126; sub.u32 %r125,%r126,%r68; .loc 1 83 9 shl.b32 %r47,%r56,%r125; $L15: .loc 1 87 4 sub.u32 %r64,%r58,%r68; .loc 1 89 9 add.u32 %r65,%r64,-1; .loc 1 89 8 setp.eq.u32 %r127,%r64,0; @ %r127 bra $L37; .loc 1 88 4 mov.u32 %r50,0; $L19: .loc 1 90 8 sub.u32 %r69,%r45,%r47; .loc 1 91 8 setp.ge.s32 %r128,%r69,0; @ %r128 bra $L17; .loc 1 91 18 add.u32 %r45,%r45,%r45; bra $L18; $L17: .loc 1 92 15 add.u32 %r45,%r69,%r69; .loc 1 92 27 add.u32 %r50,%r50,1; $L18: .loc 1 93 8 add.u32 %r50,%r50,%r50; .loc 1 89 9 add.u32 %r65,%r65,-1; .loc 1 89 8 setp.ne.u32 %r132,%r65,-1; @ %r132 bra $L19; bra $L16; $L37: .loc 1 88 4 mov.u32 %r50,%r64; $L16: .loc 1 95 4 sub.u32 %r66,%r45,%r47; .loc 1 96 4 setp.lt.s32 %r133,%r66,0; @ %r133 bra $L20; .loc 1 96 20 add.u32 %r50,%r50,1; mov.u32 %r45,%r66; $L20: .loc 1 99 4 setp.eq.u32 %r134,%r45,0; @ %r134 bra $L21; .loc 1 103 10 setp.le.s32 %r135,%r45,8388607; @ %r135 bra $L22; bra $L23; $L21: .loc 1 100 23 setp.ge.s32 %r136,%r23,0; @ %r136 bra $L24; .loc 1 100 20 neg.s32 %r51,%r50; bra $L25; $L24: .loc 1 100 23 mov.u32 %r51,%r50; $L25: .loc 1 100 11 st.u32 [%r80],%r51; .loc 1 101 17 cvta.const.u64 %r137,Zero; .loc 1 101 32 shr.u32 %r138,%r49,31; .loc 1 101 17 cvt.u64.u32 %r139,%r138; shl.b64 %r140,%r139,2; add.u64 %r141,%r137,%r140; ld.f32 %r77,[%r141]; bra $L1; $L22: .loc 1 104 9 add.u32 %r45,%r45,%r45; .loc 1 105 9 add.u32 %r68,%r68,-1; .loc 1 103 10 setp.le.s32 %r143,%r45,8388607; @ %r143 bra $L22; setp.lt.s32 %r161,%r68,-126; $L23: .loc 1 107 4 @ %r161 bra $L26; .loc 1 108 15 add.u32 %r35,%r45,-8388608; .loc 1 108 32 add.u32 %r145,%r68,127; .loc 1 108 37 shl.b32 %r146,%r145,23; .loc 1 108 9 or.b32 %r46,%r146,%r35; bra $L4; $L26: .loc 1 110 8 mov.u32 %r148,-126; sub.u32 %r147,%r148,%r68; .loc 1 111 9 shr.s32 %r46,%r45,%r147; bra $L4; $L34: .loc 1 55 8 mov.u32 %r50,0; $L4: .loc 1 114 2 mov.b32 %r44,%r46; .loc 1 115 4 abs.f32 %r71,%r79; .loc 1 116 5 setp.lt.f32 %r149,%r71,0f01000000; @ ! %r149 bra $L50; .loc 1 117 11 add.f32 %r38,%r44,%r44; .loc 1 117 9 setp.gt.f32 %r150,%r38,%r71; @ %r150 bra $L29; .loc 1 117 16 setp.neu.f32 %r151,%r38,%r71; @ %r151 bra $L30; .loc 1 117 33 and.b32 %r152,%r50,1; .loc 1 117 27 setp.eq.u32 %r153,%r152,0; @ %r153 bra $L30; $L29: .loc 1 118 4 add.u32 %r50,%r50,1; .loc 1 119 4 sub.f32 %r44,%r44,%r71; bra $L30; $L50: .loc 1 121 19 mul.f32 %r40,%r71,0f3f000000; .loc 1 121 12 setp.lt.f32 %r154,%r40,%r44; @ %r154 bra $L31; .loc 1 121 22 setp.neu.f32 %r155,%r40,%r44; @ %r155 bra $L30; .loc 1 121 42 and.b32 %r156,%r50,1; .loc 1 121 36 setp.eq.u32 %r157,%r156,0; @ %r157 bra $L30; $L31: .loc 1 122 7 add.u32 %r50,%r50,1; .loc 1 123 7 sub.f32 %r44,%r44,%r71; $L30: .loc 1 126 2 mov.b32 %r158,%r44; xor.b32 %r42,%r49,%r158; mov.b32 %r77,%r42; .loc 1 127 4 and.b32 %r72,%r50,2147483647; .loc 1 128 19 setp.ge.s32 %r159,%r23,0; @ %r159 bra $L32; .loc 1 128 16 neg.s32 %r52,%r72; bra $L33; $L32: .loc 1 128 19 mov.u32 %r52,%r72; $L33: .loc 1 128 7 st.u32 [%r80],%r52; $L1: .loc 1 130 1 mov.f32 %value,%r77; st.param.f32 [%value_out],%value; ret; } lib_a-sf_rint.o/0 0 0 644 3310 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rintf .visible .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_rint.c" // BEGIN VAR DEF: TWO23 .const .align 4 .u32 TWO23[2] = {1258291200,3405774848 }; // BEGIN GLOBAL FUNCTION DEF: rintf .visible .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .u32 %r37; .reg .u32 %r40; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .f32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f32 %r62,%ar0; .loc 1 39 2 mov.b32 %r40,%r62; .loc 1 41 5 and.b32 %r51,%r40,2147483647; .loc 1 42 10 shr.u32 %r63,%r51,23; .loc 1 42 15 add.u32 %r52,%r63,-127; .loc 1 43 4 setp.gt.s32 %r64,%r52,22; @ %r64 bra $L2; .loc 1 44 8 setp.eq.u32 %r65,%r51,0; @ %r65 bra $L3; .loc 1 40 15 shr.u32 %r50,%r40,31; .loc 1 46 8 setp.ge.s32 %r66,%r52,0; @ %r66 bra $L4; .loc 1 47 6 and.b32 %r56,%r40,8388607; .loc 1 51 19 cvta.const.u64 %r67,TWO23; cvt.s64.s32 %r68,%r50; shl.b64 %r69,%r68,2; add.u64 %r70,%r67,%r69; ld.f32 %r32,[%r70]; .loc 1 49 14 neg.s32 %r71,%r56; .loc 1 49 18 shr.u32 %r73,%r71,9; .loc 1 49 22 and.b32 %r74,%r73,4194304; .loc 1 48 6 and.b32 %r75,%r40,-1048576; .loc 1 49 6 or.b32 %r76,%r74,%r75; .loc 1 51 23 mov.b32 %r77,%r76; add.f32 %r33,%r32,%r77; .loc 1 51 12 st.f32 [%frame],%r33; .loc 1 52 16 ld.f32 %r34,[%frame]; .loc 1 52 12 sub.f32 %r78,%r34,%r32; .loc 1 54 3 mov.b32 %r80,%r78; and.b32 %r79,%r80,2147483647; and.b32 %r81,%r40,-2147483648; or.b32 %r37,%r79,%r81; mov.b32 %r62,%r37; .loc 1 55 17 bra $L3; $L4: .loc 1 57 19 mov.u32 %r82,8388607; shr.s32 %r53,%r82,%r52; .loc 1 58 9 and.b32 %r83,%r40,%r53; .loc 1 58 5 setp.eq.u32 %r84,%r83,0; @ %r84 bra $L3; .loc 1 59 4 shr.u32 %r54,%r53,1; .loc 1 60 9 and.b32 %r85,%r40,%r54; .loc 1 60 5 setp.eq.u32 %r86,%r85,0; @ %r86 bra $L5; .loc 1 60 27 not.b32 %r87,%r54; .loc 1 60 25 and.b32 %r88,%r87,%r40; .loc 1 60 43 mov.u32 %r90,2097152; shr.s32 %r89,%r90,%r52; .loc 1 60 20 or.b32 %r91,%r88,%r89; .loc 1 67 2 mov.b32 %r62,%r91; bra $L5; $L2: .loc 1 63 8 setp.le.u32 %r92,%r51,2139095039; @ %r92 bra $L3; .loc 1 63 43 add.f32 %r62,%r62,%r62; bra $L3; $L5: .loc 1 68 11 cvta.const.u64 %r93,TWO23; cvt.s64.s32 %r94,%r50; shl.b64 %r95,%r94,2; add.u64 %r96,%r93,%r95; ld.f32 %r46,[%r96]; .loc 1 68 15 add.f32 %r47,%r46,%r62; .loc 1 68 4 st.f32 [%frame],%r47; .loc 1 69 10 ld.f32 %r48,[%frame]; sub.f32 %r62,%r48,%r46; $L3: .loc 1 70 1 mov.f32 %value,%r62; st.param.f32 [%value_out],%value; ret; } /1815 0 0 0 644 1780 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: roundf .visible .func (.param .f32 %value_out) roundf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_round.c" // BEGIN GLOBAL FUNCTION DEF: roundf .visible .func (.param .f32 %value_out) roundf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; mov.f32 %r36,%ar0; .loc 1 25 3 mov.b32 %r32,%r36; .loc 1 28 46 shr.u32 %r37,%r32,23; .loc 1 28 23 and.b32 %r38,%r37,255; .loc 1 28 21 add.u32 %r31,%r38,-127; .loc 1 30 6 setp.gt.s32 %r39,%r31,22; @ %r39 bra $L2; .loc 1 32 10 setp.ge.s32 %r40,%r31,0; @ %r40 bra $L3; .loc 1 34 13 and.b32 %r30,%r32,-2147483648; .loc 1 35 14 setp.ne.u32 %r41,%r31,-1; @ %r41 bra $L4; .loc 1 37 15 or.b32 %r30,%r30,1065353216; bra $L4; $L3: .loc 1 41 51 mov.u32 %r42,8388607; shr.s32 %r33,%r42,%r31; .loc 1 42 18 and.b32 %r43,%r32,%r33; .loc 1 42 14 setp.eq.u32 %r44,%r43,0; @ %r44 bra $L6; .loc 1 46 27 mov.u32 %r46,4194304; shr.s32 %r45,%r46,%r31; .loc 1 46 13 add.u32 %r34,%r45,%r32; .loc 1 47 16 not.b32 %r47,%r33; .loc 1 47 13 and.b32 %r30,%r47,%r34; bra $L4; $L2: .loc 1 52 10 setp.ne.u32 %r48,%r31,128; @ %r48 bra $L7; .loc 1 54 18 add.f32 %r35,%r36,%r36; bra $L1; $L4: .loc 1 58 3 mov.b32 %r35,%r30; .loc 1 59 10 bra $L1; $L6: .loc 1 44 20 mov.f32 %r35,%r36; bra $L1; $L7: mov.f32 %r35,%r36; $L1: .loc 1 60 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } /1833 0 0 0 644 3223 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalblnf .visible .func (.param .f32 %value_out) scalblnf (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_scalbln.c" // BEGIN GLOBAL FUNCTION DEF: scalblnf .visible .func (.param .f32 %value_out) scalblnf (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r28; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r39; .reg .u32 %r45; .reg .u32 %r46; .reg .f32 %r52; .reg .f32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .u32 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .f32 %r75; .reg .pred %r76; .reg .f32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .f32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .f32 %r88; .reg .u16 %r90; mov.f32 %r53,%ar0; mov.u64 %r54,%ar1; .loc 1 36 2 mov.b32 %r45,%r53; .loc 1 37 28 shr.s32 %r55,%r45,23; .loc 1 37 11 and.b32 %r46,%r55,255; .loc 1 38 12 setp.ne.u32 %r56,%r46,0; @ %r56 bra $L2; .loc 1 39 20 and.b32 %r57,%r45,2147483647; .loc 1 39 16 setp.eq.u32 %r58,%r57,0; @ %r58 bra $L9; .loc 1 40 8 mul.f32 %r53,%r53,0f4c000000; .loc 1 41 6 mov.b32 %r45,%r53; .loc 1 42 26 shr.s32 %r59,%r45,23; and.b32 %r60,%r59,255; .loc 1 42 8 add.u32 %r46,%r60,-25; bra $L4; $L2: .loc 1 44 12 setp.ne.u32 %r61,%r46,255; @ %r61 bra $L4; .loc 1 44 30 add.f32 %r52,%r53,%r53; bra $L1; $L4: .loc 1 45 14 cvt.u32.u64 %r62,%r54; add.u32 %r28,%r62,%r46; .loc 1 46 14 set.u32.gt.s64 %r64,%r54,50000; neg.s32 %r65,%r64; mov.u32 %r63,%r65; .loc 1 46 27 set.u32.gt.s32 %r67,%r28,254; neg.s32 %r68,%r67; mov.u32 %r66,%r68; .loc 1 46 22 cvt.u16.u8 %r90,%r63; mov.u16 %r70,%r90; cvt.u16.u8 %r90,%r66; mov.u16 %r71,%r90; or.b16 %r69,%r70,%r71; cvt.u32.u16 %r72,%r69; .loc 1 46 12 cvt.u16.u8 %r73,%r72; setp.eq.u16 %r74,%r73,0; @ %r74 bra $L5; .loc 1 47 16 mov.f32 %r75,0f7149f2ca; copysign.f32 %r32,%r53,%r75; .loc 1 47 15 mul.f32 %r52,%r32,0f7149f2ca; bra $L1; $L5: .loc 1 48 5 setp.ge.s64 %r76,%r54,-50000; @ %r76 bra $L6; .loc 1 49 16 mov.f32 %r77,0f0da24260; copysign.f32 %r33,%r53,%r77; .loc 1 49 15 mul.f32 %r52,%r33,0f0da24260; bra $L1; $L6: .loc 1 50 12 setp.le.s32 %r78,%r28,0; @ %r78 bra $L7; .loc 1 51 7 and.b32 %r79,%r45,-2139095041; shl.b32 %r80,%r28,23; or.b32 %r81,%r79,%r80; mov.b32 %r52,%r81; .loc 1 51 57 bra $L1; $L7: .loc 1 52 12 setp.ge.s32 %r82,%r28,-24; @ %r82 bra $L8; .loc 1 53 18 mov.f32 %r83,0f0da24260; copysign.f32 %r39,%r53,%r83; .loc 1 53 17 mul.f32 %r52,%r39,0f0da24260; bra $L1; $L8: .loc 1 54 11 add.u32 %r84,%r28,25; .loc 1 55 2 shl.b32 %r85,%r84,23; and.b32 %r86,%r45,-2139095041; or.b32 %r87,%r85,%r86; .loc 1 56 17 mov.b32 %r88,%r87; mul.f32 %r52,%r88,0f33000000; bra $L1; $L9: .loc 1 39 44 mov.f32 %r52,%r53; $L1: .loc 1 57 1 mov.f32 %value,%r52; st.param.f32 [%value_out],%value; ret; } /1853 0 0 0 644 2617 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r32; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .f32 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .f32 %r68; mov.f32 %r47,%ar0; mov.u32 %r48,%ar1; .loc 1 46 2 mov.b32 %r44,%r47; .loc 1 47 5 and.b32 %r40,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r49,%r40,0; @ %r49 bra $L10; .loc 1 51 12 setp.le.u32 %r50,%r40,2139095039; @ %r50 bra $L3; .loc 1 52 14 add.f32 %r46,%r47,%r47; bra $L1; $L3: .loc 1 53 12 and.b32 %r51,%r44,2139095040; setp.ne.u32 %r52,%r51,0; @ %r52 bra $L4; .loc 1 54 8 mul.f32 %r47,%r47,0f4c000000; .loc 1 57 16 setp.lt.s32 %r53,%r48,-50000; @ %r53 bra $L5; .loc 1 55 6 mov.b32 %r39,%r47; .loc 1 56 26 shr.s32 %r54,%r39,23; and.b32 %r55,%r54,255; .loc 1 56 8 add.u32 %r38,%r55,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r46,%r47,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r39,%r44; .loc 1 48 15 shr.u32 %r38,%r40,23; $L6: .loc 1 59 11 add.u32 %r41,%r38,%r48; .loc 1 60 12 setp.le.s32 %r56,%r41,254; @ %r56 bra $L7; .loc 1 60 46 mov.f32 %r57,0f7149f2ca; copysign.f32 %r26,%r47,%r57; .loc 1 60 45 mul.f32 %r46,%r26,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r58,%r41,0; @ %r58 bra $L8; .loc 1 62 7 and.b32 %r59,%r39,-2139095041; shl.b32 %r60,%r41,23; or.b32 %r61,%r59,%r60; mov.b32 %r46,%r61; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r62,%r41,-22; @ %r62 bra $L9; .loc 1 66 23 mov.f32 %r63,0f0da24260; copysign.f32 %r32,%r47,%r63; .loc 1 66 22 mul.f32 %r46,%r32,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r64,%r41,25; .loc 1 69 2 shl.b32 %r65,%r64,23; and.b32 %r66,%r39,-2139095041; or.b32 %r67,%r65,%r66; .loc 1 70 17 mov.b32 %r68,%r67; mul.f32 %r46,%r68,0f33000000; bra $L1; $L10: .loc 1 50 13 mov.f32 %r46,%r47; $L1: .loc 1 71 1 mov.f32 %value,%r46; st.param.f32 [%value_out],%value; ret; } /1872 0 0 0 644 1318 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: significandf .visible .func (.param .f32 %value_out) significandf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_signif.c" // BEGIN GLOBAL FUNCTION DECL: ilogbf .extern .func (.param .u32 %value_out) ilogbf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalbf .extern .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: significandf .visible .func (.param .f32 %value_out) significandf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .u32 %r28; .reg .u32 %r31; .reg .f32 %r32; .reg .f32 %r33; mov.f32 %r26,%ar0; .loc 1 25 37 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),ilogbf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 25 36 neg.s32 %r31,%r28; .loc 1 25 9 cvt.rn.f32.s32 %r32,%r31; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r32; call (%value_in),__ieee754_scalbf,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } .loc 1 26 1 mov.f32 %value,%r33; st.param.f32 [%value_out],%value; ret; } lib_a-sf_sin.o/ 0 0 0 644 3947 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinf .visible .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_sin.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .extern .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .extern .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .extern .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: sinf .visible .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .f32 %r41; .reg .u32 %r42; .reg .f32 %r43; .reg .pred %r44; .reg .u32 %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .f32 %r51; .reg .u32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .u32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; mov.f32 %r38,%ar0; .loc 1 29 2 mov.b32 %r34,%r38; .loc 1 32 5 and.b32 %r35,%r34,2147483647; .loc 1 33 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 33 30 mov.u32 %r42,0; mov.f32 %r41,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r42; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r43,[%value_in]; } mov.f32 %r37,%r43; bra $L1; $L2: .loc 1 36 10 setp.le.s32 %r44,%r35,2139095039; @ %r44 bra $L4; .loc 1 36 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 40 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2f,(%out_arg1,%out_arg2); ld.param.u32 %r47,[%value_in]; } .loc 1 41 14 and.b32 %r22,%r47,3; .loc 1 41 6 setp.eq.u32 %r48,%r22,1; @ %r48 bra $L5; setp.eq.u32 %r49,%r22,2; @ %r49 bra $L6; setp.ne.u32 %r50,%r22,0; @ %r50 bra $L7; .loc 1 42 19 ld.f32 %r54,[%frame+4]; mov.u32 %r53,1; ld.f32 %r51,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r51; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r54; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r53; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r55,[%value_in]; } mov.f32 %r37,%r55; bra $L1; $L5: .loc 1 43 19 ld.f32 %r58,[%frame+4]; ld.f32 %r56,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r56; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r58; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } mov.f32 %r37,%r59; bra $L1; $L6: .loc 1 44 19 ld.f32 %r63,[%frame+4]; mov.u32 %r62,1; ld.f32 %r60,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r63; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r62; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r64,[%value_in]; } .loc 1 44 18 neg.f32 %r37,%r64; bra $L1; $L7: .loc 1 46 12 ld.f32 %r67,[%frame+4]; ld.f32 %r65,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r65; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r67; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r68,[%value_in]; } .loc 1 46 11 neg.f32 %r37,%r68; $L1: .loc 1 49 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_tan.o/ 0 0 0 644 2497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanf .visible .func (.param .f32 %value_out) tanf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_tan.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_tanf .extern .func (.param .f32 %value_out) __kernel_tanf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .extern .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: tanf .visible .func (.param .f32 %value_out) tanf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r28; .reg .u32 %r29; .reg .f32 %r31; .reg .f32 %r32; .reg .pred %r33; .reg .f32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .pred %r38; .reg .u32 %r41; .reg .f32 %r42; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r49; .reg .f32 %r50; mov.f32 %r32,%ar0; .loc 1 28 2 mov.b32 %r28,%r32; .loc 1 31 5 and.b32 %r29,%r28,2147483647; .loc 1 32 4 setp.gt.s32 %r33,%r29,1061752794; @ %r33 bra $L2; .loc 1 32 30 mov.u32 %r36,1; mov.f32 %r35,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r35; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r36; call (%value_in),__kernel_tanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r37,[%value_in]; } mov.f32 %r31,%r37; bra $L1; $L2: .loc 1 35 10 setp.le.s32 %r38,%r29,2139095039; @ %r38 bra $L4; .loc 1 35 45 sub.f32 %r31,%r32,%r32; bra $L1; $L4: .loc 1 39 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2f,(%out_arg1,%out_arg2); ld.param.u32 %r41,[%value_in]; } .loc 1 40 45 add.u32 %r45,%r41,%r41; and.b32 %r46,%r45,2; .loc 1 40 13 mov.u32 %r48,1; sub.u32 %r47,%r48,%r46; ld.f32 %r49,[%frame+4]; ld.f32 %r42,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r49; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r47; call (%value_in),__kernel_tanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r50,[%value_in]; } mov.f32 %r31,%r50; $L1: .loc 1 43 1 mov.f32 %value,%r31; st.param.f32 [%value_out],%value; ret; } lib_a-sf_tanh.o/0 0 0 644 2887 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanhf .visible .func (.param .f32 %value_out) tanhf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/sf_tanh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1f .extern .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanhf .visible .func (.param .f32 %value_out) tanhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .f32 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .f32 %r45; .reg .pred %r46; .reg .f32 %r48; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; mov.f32 %r38,%ar0; .loc 1 34 2 mov.b32 %r31,%r38; .loc 1 35 5 and.b32 %r32,%r31,2147483647; .loc 1 38 4 setp.le.s32 %r39,%r32,2139095039; @ %r39 bra $L2; .loc 1 39 27 mov.f32 %r40,0f3f800000; div.rn.f32 %r36,%r40,%r38; .loc 1 39 9 setp.lt.s32 %r41,%r31,0; @ %r41 bra $L3; .loc 1 39 29 add.f32 %r37,%r36,0f3f800000; bra $L1; $L3: .loc 1 40 29 sub.f32 %r37,%r36,%r40; bra $L1; $L2: .loc 1 44 5 setp.gt.s32 %r43,%r32,1102053375; @ %r43 bra $L8; .loc 1 45 9 setp.gt.s32 %r44,%r32,603979775; @ %r44 bra $L6; .loc 1 46 16 add.f32 %r45,%r38,0f3f800000; .loc 1 46 11 mul.f32 %r37,%r45,%r38; bra $L1; $L6: .loc 1 47 9 setp.le.s32 %r46,%r32,1065353215; @ %r46 bra $L7; .loc 1 48 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } .loc 1 48 7 add.f32 %r50,%r48,%r48; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r51,[%value_in]; } .loc 1 49 19 add.f32 %r52,%r51,0f40000000; .loc 1 49 16 mov.f32 %r54,0f40000000; div.rn.f32 %r53,%r54,%r52; .loc 1 49 5 mov.f32 %r55,0f3f800000; sub.f32 %r37,%r55,%r53; bra $L5; $L7: .loc 1 51 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r57,[%value_in]; } .loc 1 51 14 mul.f32 %r59,%r57,0fc0000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r60,[%value_in]; } .loc 1 52 13 neg.f32 %r61,%r60; .loc 1 52 18 add.f32 %r62,%r60,0f40000000; .loc 1 52 11 div.rn.f32 %r37,%r61,%r62; bra $L5; $L8: .loc 1 56 8 mov.f32 %r37,0f3f800000; $L5: .loc 1 58 19 setp.ge.s32 %r63,%r31,0; @ %r63 bra $L1; neg.f32 %r37,%r37; $L1: .loc 1 59 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1891 0 0 0 644 1288 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: truncf .visible .func (.param .f32 %value_out) truncf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_trunc.c" // BEGIN GLOBAL FUNCTION DEF: truncf .visible .func (.param .f32 %value_out) truncf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .pred %r40; mov.f32 %r31,%ar0; .loc 1 23 3 mov.b32 %r26,%r31; .loc 1 29 41 shr.s32 %r32,%r26,23; and.b32 %r33,%r32,255; .loc 1 29 21 add.u32 %r28,%r33,-127; .loc 1 31 6 setp.gt.s32 %r34,%r28,22; @ %r34 bra $L2; .loc 1 33 10 setp.ge.s32 %r35,%r28,0; @ %r35 bra $L3; .loc 1 26 11 and.b32 %r36,%r26,-2147483648; .loc 1 36 11 mov.b32 %r30,%r36; bra $L1; $L3: .loc 1 40 11 mov.u32 %r38,-8388608; shr.s32 %r37,%r38,%r28; and.b32 %r39,%r37,%r26; mov.b32 %r30,%r39; bra $L1; $L2: .loc 1 45 10 setp.ne.u32 %r40,%r28,128; @ %r40 bra $L5; .loc 1 47 18 add.f32 %r30,%r31,%r31; bra $L1; $L5: mov.f32 %r30,%r31; $L1: .loc 1 52 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } lib_a-sincosf.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1909 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sinf.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sinhl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinhl .visible .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/sinhl.c" // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sinhl .visible .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-sinl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinl .visible .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/sinl.c" // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sinl .visible .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),sin,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /1931 0 0 0 644 858 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finitel .visible .func (.param .u32 %value_out) finitel (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/sl_finite.c" // BEGIN GLOBAL FUNCTION DEF: finitel .visible .func (.param .u32 %value_out) finitel (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .u32 %r34; .reg .u16 %r35; mov.f64 %r26,%ar0; .loc 1 15 10 abs.f64 %r28,%r26; set.u32.gtu.f64 %r30,%r28,0d7fefffffffffffff; neg.s32 %r31,%r30; mov.u32 %r29,%r31; cvt.u16.u8 %r35,%r29; mov.u16 %r33,%r35; xor.b16 %r32,%r33,1; cvt.u32.u16 %r34,%r32; cvt.u32.u8 %value,%r34; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } lib_a-sqrtl.o/ 0 0 0 644 531 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sqrtl .visible .func (.param .f64 %value_out) sqrtl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/sqrtl.c" // BEGIN GLOBAL FUNCTION DEF: sqrtl .visible .func (.param .f64 %value_out) sqrtl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 sqrt.rn.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-tanhl.o/ 0 0 0 644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanhl .visible .func (.param .f64 %value_out) tanhl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/tanhl.c" // BEGIN GLOBAL FUNCTION DECL: tanh .extern .func (.param .f64 %value_out) tanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanhl .visible .func (.param .f64 %value_out) tanhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),tanh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-tanl.o/ 0 0 0 644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanl .visible .func (.param .f64 %value_out) tanl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/tanl.c" // BEGIN GLOBAL FUNCTION DECL: tan .extern .func (.param .f64 %value_out) tan (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanl .visible .func (.param .f64 %value_out) tanl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),tan,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-tgammal.o/0 0 0 644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tgammal .visible .func (.param .f64 %value_out) tgammal (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/tgammal.c" // BEGIN GLOBAL FUNCTION DECL: tgamma .extern .func (.param .f64 %value_out) tgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tgammal .visible .func (.param .f64 %value_out) tgammal (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),tgamma,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-truncl.o/ 0 0 0 644 540 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: truncl .visible .func (.param .f64 %value_out) truncl (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/truncl.c" // BEGIN GLOBAL FUNCTION DEF: truncl .visible .func (.param .f64 %value_out) truncl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rzi.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-w_acos.o/ 0 0 0 644 1960 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: acos .visible .func (.param .f64 %value_out) acos (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acos .extern .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: acos .visible .func (.param .f64 %value_out) acos (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f64 %r35; mov.f64 %r25,%ar0; .loc 1 82 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_acos,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 83 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 84 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 84 4 setp.gt.f64 %r31,%r30,0d3ff0000000000000; @ ! %r31 bra $L1; .loc 1 86 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 86 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 87 13 cvta.const.u64 %r34,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nan,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r24,%r35; $L1: .loc 1 91 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_acosh.o/0 0 0 644 1382 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acosh .visible .func (.param .f64 %value_out) acosh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosh .extern .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: acosh .visible .func (.param .f64 %value_out) acosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f64 %r31; mov.f64 %r24,%ar0; .loc 1 89 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),__ieee754_acosh,(%out_arg1); ld.param.f64 %r26,[%value_in]; } mov.f64 %r23,%r26; .loc 1 90 4 setp.nan.f64 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 91 4 setp.lt.f64 %r28,%r24,0d3ff0000000000000; @ ! %r28 bra $L1; .loc 1 93 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 93 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 94 16 mov.f64 %r31,0d0000000000000000; div.rn.f64 %r23,%r31,%r31; $L1: .loc 1 98 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } lib_a-w_asin.o/ 0 0 0 644 1959 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: asin .visible .func (.param .f64 %value_out) asin (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_asin.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_asin .extern .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: asin .visible .func (.param .f64 %value_out) asin (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f64 %r35; mov.f64 %r25,%ar0; .loc 1 86 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_asin,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 87 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 88 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 88 4 setp.gt.f64 %r31,%r30,0d3ff0000000000000; @ ! %r31 bra $L1; .loc 1 90 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 90 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 91 13 cvta.const.u64 %r34,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nan,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r24,%r35; $L1: .loc 1 95 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_atan2.o/0 0 0 644 1032 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan2 .visible .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_atan2.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2 .extern .func (.param .f64 %value_out) __ieee754_atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atan2 .visible .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 75 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),__ieee754_atan2,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 76 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-w_atanh.o/0 0 0 644 1994 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanh .visible .func (.param .f64 %value_out) atanh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_atanh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanh .extern .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: atanh .visible .func (.param .f64 %value_out) atanh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .pred %r29; .reg .f64 %r31; .reg .pred %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .f64 %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f64 %r26,%ar0; .loc 1 87 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_atanh,(%out_arg1); ld.param.f64 %r28,[%value_in]; } mov.f64 %r25,%r28; .loc 1 88 4 setp.nan.f64 %r29,%r26,%r26; @ %r29 bra $L1; .loc 1 89 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r31,[%value_in]; } .loc 1 90 4 setp.ge.f64 %r32,%r31,0d3ff0000000000000; @ ! %r32 bra $L1; .loc 1 91 8 setp.gt.f64 %r33,%r31,0d3ff0000000000000; @ ! %r33 bra $L8; .loc 1 93 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 93 9 mov.u32 %r35,33; st.u32 [%r34],%r35; .loc 1 94 13 mov.f64 %r36,0d0000000000000000; div.rn.f64 %r25,%r36,%r36; bra $L1; $L8: .loc 1 97 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 97 9 mov.u32 %r38,33; st.u32 [%r37],%r38; .loc 1 98 11 div.rn.f64 %r25,%r26,0d0000000000000000; $L1: .loc 1 103 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_cosh.o/ 0 0 0 644 1609 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cosh .visible .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_cosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_cosh .extern .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: cosh .visible .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f64 %r25,%ar0; .loc 1 73 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_cosh,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 74 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 75 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 75 4 setp.gt.f64 %r31,%r30,0d408633ce8fb9f87d; @ ! %r31 bra $L1; .loc 1 77 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 77 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 78 13 mov.f64 %r24,0d7ff0000000000000; $L1: .loc 1 82 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_drem.o/ 0 0 0 644 1009 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: drem .visible .func (.param .f64 %value_out) drem (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_drem.c" // BEGIN GLOBAL FUNCTION DECL: remainder .extern .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: drem .visible .func (.param .f64 %value_out) drem (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 14 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),remainder,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 15 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-w_exp.o/ 0 0 0 644 1931 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp .visible .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_exp.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: exp .visible .func (.param .f64 %value_out) exp (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; mov.f64 %r26,%ar0; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r28,[%value_in]; } mov.f64 %r25,%r28; .loc 1 79 5 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 79 4 setp.eq.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 80 8 setp.gt.f64 %r32,%r26,0d40862e42fefa39ef; @ ! %r32 bra $L11; .loc 1 82 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 82 9 mov.u32 %r34,34; st.u32 [%r33],%r34; .loc 1 83 10 mov.f64 %r25,0d7ff0000000000000; bra $L1; $L11: .loc 1 84 15 setp.lt.f64 %r35,%r26,0dc0874910d52d3051; @ ! %r35 bra $L1; .loc 1 86 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 86 9 mov.u32 %r37,34; st.u32 [%r36],%r37; .loc 1 87 10 mov.f64 %r25,0d0000000000000000; $L1: .loc 1 92 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_exp2.o/ 0 0 0 644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp2 .visible .func (.param .f64 %value_out) exp2 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_exp2.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp2 .visible .func (.param .f64 %value_out) exp2 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r23,%ar0; .loc 1 65 10 mov.f64 %r24,0d4000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r23; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 66 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_fmod.o/ 0 0 0 644 2008 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmod .visible .func (.param .f64 %value_out) fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_fmod.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmod .extern .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: fmod .visible .func (.param .f64 %value_out) fmod (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u16 %r48; mov.f64 %r27,%ar0; mov.f64 %r28,%ar1; .loc 1 70 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r26,%r31; .loc 1 72 4 set.u32.eq.f64 %r33,%r28,0d0000000000000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 71 4 set.u32.num.f64 %r36,%r27,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 72 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 74 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 74 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 75 16 mov.f64 %r46,0d0000000000000000; div.rn.f64 %r26,%r46,%r46; $L1: .loc 1 79 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_gamma.o/0 0 0 644 800 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gamma .visible .func (.param .f64 %value_out) gamma (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgamma .extern .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: gamma .visible .func (.param .f64 %value_out) gamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 151 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lgamma,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 152 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_hypot.o/0 0 0 644 2235 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: hypot .visible .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypot .extern .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: hypot .visible .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u32 %r42; mov.f64 %r27,%ar0; mov.f64 %r28,%ar1; .loc 1 67 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; call (%value_in),__ieee754_hypot,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r26,%r31; .loc 1 69 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 69 4 setp.ne.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 69 19 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; call (%value_in),finite,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 69 17 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L1; .loc 1 69 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 69 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 71 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r41,[%value_in]; } .loc 1 71 12 mov.u32 %r42,34; st.u32 [%r41],%r42; .loc 1 72 13 mov.f64 %r26,0d7ff0000000000000; $L1: .loc 1 76 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_j0.o/ 0 0 0 644 3195 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j0 .visible .func (.param .f64 %value_out) j0 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_j0.c" // BEGIN GLOBAL FUNCTION DECL: y0 .visible .func (.param .f64 %value_out) y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .extern .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .extern .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j0 .visible .func (.param .f64 %value_out) j0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f64 %r25,%ar0; .loc 1 107 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 108 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 109 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 109 4 setp.gt.f64 %r31,%r30,0d434921fb54442d18; @ ! %r31 bra $L1; .loc 1 111 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 111 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 112 13 mov.f64 %r24,0d0000000000000000; $L1: .loc 1 116 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y0 .visible .func (.param .f64 %value_out) y0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f64 %r26,%ar0; .loc 1 129 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r28,[%value_in]; } .loc 1 130 4 setp.num.f64 %r29,%r26,%r26; @ ! %r29 bra $L5; .loc 1 131 11 setp.lt.f64 %r30,%r26,0d0000000000000000; @ ! %r30 bra $L15; .loc 1 133 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 133 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L10; $L15: .loc 1 135 11 setp.neu.f64 %r33,%r26,0d0000000000000000; @ %r33 bra $L10; .loc 1 137 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 137 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L10: .loc 1 139 4 setp.gt.f64 %r36,%r26,0d434921fb54442d18; @ ! %r36 bra $L5; .loc 1 141 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 141 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L5: .loc 1 145 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-w_j1.o/ 0 0 0 644 3174 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j1 .visible .func (.param .f64 %value_out) j1 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_j1.c" // BEGIN GLOBAL FUNCTION DECL: y1 .visible .func (.param .f64 %value_out) y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .extern .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .extern .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j1 .visible .func (.param .f64 %value_out) j1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f64 %r25,%ar0; .loc 1 34 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 35 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 36 4 setp.gt.f64 %r31,%r30,0d434921fb54442d18; @ ! %r31 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 38 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 39 13 mov.f64 %r24,0d0000000000000000; $L1: .loc 1 43 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y1 .visible .func (.param .f64 %value_out) y1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f64 %r26,%ar0; .loc 1 56 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r28,[%value_in]; } .loc 1 57 4 setp.num.f64 %r29,%r26,%r26; @ ! %r29 bra $L5; .loc 1 58 11 setp.lt.f64 %r30,%r26,0d0000000000000000; @ ! %r30 bra $L15; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 60 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L10; $L15: .loc 1 62 11 setp.neu.f64 %r33,%r26,0d0000000000000000; @ %r33 bra $L10; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 64 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L10: .loc 1 66 4 setp.gt.f64 %r36,%r26,0d434921fb54442d18; @ ! %r36 bra $L5; .loc 1 68 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 68 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L5: .loc 1 72 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-w_jn.o/ 0 0 0 644 3588 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: jn .visible .func (.param .f64 %value_out) jn (.param .u32 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_jn.c" // BEGIN GLOBAL FUNCTION DECL: yn .visible .func (.param .f64 %value_out) yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_jn .extern .func (.param .f64 %value_out) __ieee754_jn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_yn .extern .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: jn .visible .func (.param .f64 %value_out) jn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .u32 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .pred %r30; .reg .f64 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; mov.u32 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 56 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),__ieee754_jn,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } mov.f64 %r24,%r29; .loc 1 57 4 setp.nan.f64 %r30,%r26,%r26; @ %r30 bra $L1; .loc 1 58 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r32,[%value_in]; } .loc 1 58 4 setp.gt.f64 %r33,%r32,0d434921fb54442d18; @ ! %r33 bra $L1; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 60 12 mov.u32 %r35,34; st.u32 [%r34],%r35; .loc 1 61 13 mov.f64 %r24,0d0000000000000000; $L1: .loc 1 65 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: yn .visible .func (.param .f64 %value_out) yn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .f64 %r27; .reg .f64 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u32 %r40; mov.u32 %r26,%ar0; mov.f64 %r27,%ar1; .loc 1 78 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r27; call (%value_in),__ieee754_yn,(%out_arg1,%out_arg2); ld.param.f64 %r30,[%value_in]; } .loc 1 79 4 setp.num.f64 %r31,%r27,%r27; @ ! %r31 bra $L5; .loc 1 80 11 setp.lt.f64 %r32,%r27,0d0000000000000000; @ ! %r32 bra $L15; .loc 1 82 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 82 12 mov.u32 %r34,33; st.u32 [%r33],%r34; bra $L10; $L15: .loc 1 84 11 setp.neu.f64 %r35,%r27,0d0000000000000000; @ %r35 bra $L10; .loc 1 86 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 86 12 mov.u32 %r37,34; st.u32 [%r36],%r37; $L10: .loc 1 88 4 setp.gt.f64 %r38,%r27,0d434921fb54442d18; @ ! %r38 bra $L5; .loc 1 90 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r39,[%value_in]; } .loc 1 90 12 mov.u32 %r40,34; st.u32 [%r39],%r40; $L5: .loc 1 94 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } /1950 0 0 0 644 1975 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgamma .visible .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_lgamma.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .extern .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgamma .visible .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .f64 %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; mov.f64 %r28,%ar0; .loc 1 38 13 ld.global.u64 %r32,[_impure_ptr]; add.u64 %r31,%r32,224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 40 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),finite,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 40 11 setp.eq.u32 %r36,%r35,0; @ ! %r36 bra $L1; .loc 1 40 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r38,[%value_in]; } .loc 1 40 22 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L1; .loc 1 42 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r40,[%value_in]; } .loc 1 42 12 mov.u32 %r41,34; st.u32 [%r40],%r41; $L1: .loc 1 46 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-w_log.o/ 0 0 0 644 1998 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: log .visible .func (.param .f64 %value_out) log (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_log.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: log .visible .func (.param .f64 %value_out) log (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f64 %r36; mov.f64 %r25,%ar0; .loc 1 64 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 65 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 65 40 setp.gt.f64 %r29,%r25,0d0000000000000000; @ %r29 bra $L1; .loc 1 66 4 setp.neu.f64 %r30,%r25,0d0000000000000000; @ %r30 bra $L3; .loc 1 68 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 68 12 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 69 13 mov.f64 %r24,0dfff0000000000000; bra $L1; $L3: .loc 1 72 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 72 12 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 73 13 cvta.const.u64 %r35,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nan,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r24,%r36; $L1: .loc 1 76 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_log10.o/0 0 0 644 2013 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: log10 .visible .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10 .extern .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: log10 .visible .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f64 %r36; mov.f64 %r25,%ar0; .loc 1 64 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_log10,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 65 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 66 4 setp.le.f64 %r29,%r25,0d0000000000000000; @ ! %r29 bra $L1; .loc 1 67 8 setp.neu.f64 %r30,%r25,0d0000000000000000; @ %r30 bra $L4; .loc 1 69 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 69 9 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 70 10 mov.f64 %r24,0dfff0000000000000; bra $L1; $L4: .loc 1 73 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 73 9 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 74 10 cvta.const.u64 %r35,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nan,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r24,%r36; $L1: .loc 1 79 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_pow.o/ 0 0 0 644 4054 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: pow .visible .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_pow.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_pow .extern .func (.param .f64 %value_out) __ieee754_pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: pow .visible .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .pred %r52; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; mov.f64 %r33,%ar0; mov.f64 %r34,%ar1; .loc 1 69 4 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),__ieee754_pow,(%out_arg1,%out_arg2); ld.param.f64 %r37,[%value_in]; } mov.f64 %r32,%r37; .loc 1 70 4 setp.nan.f64 %r38,%r34,%r34; @ %r38 bra $L1; .loc 1 71 4 setp.neu.f64 %r39,%r33,0d0000000000000000; @ %r39 bra $L3; .loc 1 72 8 setp.eq.f64 %r40,%r34,0d0000000000000000; @ %r40 bra $L7; .loc 1 77 9 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 77 8 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 77 18 setp.lt.f64 %r44,%r34,0d0000000000000000; @ ! %r44 bra $L1; .loc 1 79 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 79 9 mov.u32 %r46,34; st.u32 [%r45],%r46; bra $L1; $L3: .loc 1 83 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 83 4 setp.ne.u32 %r49,%r48,0; @ %r49 bra $L5; .loc 1 84 9 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),finite,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 84 8 setp.eq.u32 %r52,%r51,0; @ %r52 bra $L5; .loc 1 84 20 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 84 18 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L5; .loc 1 85 12 setp.num.f64 %r56,%r32,%r32; @ %r56 bra $L6; .loc 1 87 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 87 13 mov.u32 %r58,33; st.u32 [%r57],%r58; bra $L1; $L6: .loc 1 90 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 90 13 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L1; $L5: .loc 1 95 4 setp.neu.f64 %r61,%r37,0d0000000000000000; @ %r61 bra $L1; .loc 1 95 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),finite,(%out_arg1); ld.param.u32 %r63,[%value_in]; } .loc 1 95 11 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L1; .loc 1 95 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 95 22 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L1; .loc 1 97 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 97 12 mov.u32 %r69,34; st.u32 [%r68],%r69; bra $L1; $L7: .loc 1 75 10 mov.f64 %r32,0d3ff0000000000000; $L1: .loc 1 101 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /1968 0 0 0 644 2048 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remainder .visible .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainder .extern .func (.param .f64 %value_out) __ieee754_remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: remainder .visible .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u16 %r48; mov.f64 %r27,%ar0; mov.f64 %r28,%ar1; .loc 1 60 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; call (%value_in),__ieee754_remainder,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r26,%r31; .loc 1 62 4 set.u32.eq.f64 %r33,%r28,0d0000000000000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 61 4 set.u32.num.f64 %r36,%r28,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 62 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 64 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 65 16 mov.f64 %r46,0d0000000000000000; div.rn.f64 %r26,%r46,%r46; $L1: .loc 1 69 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_scalb.o/0 0 0 644 4237 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalb .visible .func (.param .f64 %value_out) scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/math/w_scalb.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalb .extern .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalb .visible .func (.param .f64 %value_out) scalb (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .u32 %r69; .reg .u16 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r76; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u16 %r83; mov.f64 %r35,%ar0; mov.f64 %r36,%ar1; .loc 1 44 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),__ieee754_scalb,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } mov.f64 %r34,%r39; .loc 1 46 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 46 5 set.u32.num.f64 %r43,%r34,%r34; neg.s32 %r44,%r43; mov.u32 %r42,%r44; .loc 1 46 4 set.u32.eq.u32 %r46,%r41,0; neg.s32 %r47,%r46; mov.u32 %r45,%r47; .loc 1 46 5 cvt.u16.u8 %r83,%r42; mov.u16 %r49,%r83; cvt.u16.u8 %r83,%r45; mov.u16 %r50,%r83; and.b16 %r48,%r49,%r50; cvt.u32.u16 %r51,%r48; cvt.u16.u8 %r52,%r51; setp.eq.u16 %r53,%r52,0; @ %r53 bra $L2; .loc 1 46 29 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),finite,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 46 27 setp.eq.u32 %r56,%r55,0; @ %r56 bra $L2; .loc 1 48 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 48 12 mov.u32 %r58,34; st.u32 [%r57],%r58; .loc 1 49 33 setp.gt.f64 %r59,%r35,0d0000000000000000; selp.f64 %r34,0d7ff0000000000000,0dfff0000000000000,%r59; bra $L1; $L2: .loc 1 51 6 set.u32.eq.f64 %r61,%r39,0d0000000000000000; neg.s32 %r62,%r61; mov.u32 %r60,%r62; .loc 1 51 14 set.u32.neu.f64 %r64,%r35,%r39; neg.s32 %r65,%r64; mov.u32 %r63,%r65; .loc 1 51 11 cvt.u16.u8 %r83,%r60; mov.u16 %r67,%r83; cvt.u16.u8 %r83,%r63; mov.u16 %r68,%r83; and.b16 %r66,%r67,%r68; cvt.u32.u16 %r69,%r66; .loc 1 51 4 cvt.u16.u8 %r70,%r69; setp.eq.u16 %r71,%r70,0; @ %r71 bra $L4; .loc 1 53 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 53 12 mov.u32 %r73,34; st.u32 [%r72],%r73; .loc 1 54 13 mov.f64 %r74,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r76,[%value_in]; } mov.f64 %r34,%r76; bra $L1; $L4: .loc 1 57 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),finite,(%out_arg1); ld.param.u32 %r78,[%value_in]; } .loc 1 57 4 setp.ne.u32 %r79,%r78,0; @ %r79 bra $L1; .loc 1 57 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 57 24 mov.u32 %r81,34; st.u32 [%r80],%r81; $L1: .loc 1 61 1 mov.f64 %value,%r34; st.param.f64 [%value_out],%value; ret; } /1989 0 0 0 644 1256 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sincos .visible .func sincos (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/math/w_sincos.c" // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sincos .visible .func sincos (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .f64 %r28; .reg .f64 %r30; mov.f64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 18 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),sin,(%out_arg1); ld.param.f64 %r28,[%value_in]; } .loc 1 18 9 st.f64 [%r25],%r28; .loc 1 19 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),cos,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 19 9 st.f64 [%r26],%r30; .loc 1 20 1 ret; } lib_a-w_sinh.o/ 0 0 0 644 1855 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinh .visible .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_sinh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinh .extern .func (.param .f64 %value_out) __ieee754_sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sinh .visible .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; mov.f64 %r26,%ar0; .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_sinh,(%out_arg1); ld.param.f64 %r28,[%value_in]; } mov.f64 %r25,%r28; .loc 1 80 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),finite,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 80 4 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 80 17 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 80 15 setp.eq.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 82 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r35,[%value_in]; } .loc 1 82 12 mov.u32 %r36,34; st.u32 [%r35],%r36; .loc 1 83 33 setp.gt.f64 %r37,%r26,0d0000000000000000; selp.f64 %r25,0d7ff0000000000000,0dfff0000000000000,%r37; $L1: .loc 1 87 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_sqrt.o/ 0 0 0 644 1374 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sqrt .visible .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_sqrt.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sqrt .visible .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f64 %r31; mov.f64 %r24,%ar0; .loc 1 61 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r26,[%value_in]; } mov.f64 %r23,%r26; .loc 1 62 4 setp.nan.f64 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 63 4 setp.lt.f64 %r28,%r24,0d0000000000000000; @ ! %r28 bra $L1; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 64 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 65 16 mov.f64 %r31,0d0000000000000000; div.rn.f64 %r23,%r31,%r31; $L1: .loc 1 69 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } /2007 0 0 0 644 2346 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tgamma .visible .func (.param .f64 %value_out) tgamma (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/math/w_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgamma .extern .func (.param .f64 %value_out) __ieee754_tgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: tgamma .visible .func (.param .f64 %value_out) tgamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .f64 %r30; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .f64 %r36; .reg .pred %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; mov.f64 %r28,%ar0; .loc 1 31 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),__ieee754_tgamma,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 37 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),finite,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 37 4 setp.eq.u32 %r33,%r32,0; @ ! %r33 bra $L1; .loc 1 38 6 setp.lt.f64 %r34,%r28,0d0000000000000000; @ ! %r34 bra $L4; .loc 1 38 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),floor,(%out_arg1); ld.param.f64 %r36,[%value_in]; } .loc 1 38 15 setp.neu.f64 %r37,%r36,%r28; @ %r37 bra $L4; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r38,[%value_in]; } .loc 1 39 12 mov.u32 %r39,33; st.u32 [%r38],%r39; bra $L1; $L4: .loc 1 40 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 40 12 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 41 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r43,[%value_in]; } .loc 1 41 12 mov.u32 %r44,34; st.u32 [%r43],%r44; $L1: .loc 1 45 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } lib_a-wf_acos.o/0 0 0 644 1965 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: acosf .visible .func (.param .f32 %value_out) acosf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosf .extern .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: acosf .visible .func (.param .f32 %value_out) acosf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f32 %r35; mov.f32 %r25,%ar0; .loc 1 29 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_acosf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 30 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 31 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 31 4 setp.gt.f32 %r31,%r30,0f3f800000; @ ! %r31 bra $L1; .loc 1 33 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 33 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 34 13 cvta.const.u64 %r34,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r35,[%value_in]; } mov.f32 %r24,%r35; $L1: .loc 1 38 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /2025 0 0 0 644 1374 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acoshf .visible .func (.param .f32 %value_out) acoshf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acoshf .extern .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: acoshf .visible .func (.param .f32 %value_out) acoshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f32 %r31; mov.f32 %r24,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),__ieee754_acoshf,(%out_arg1); ld.param.f32 %r26,[%value_in]; } mov.f32 %r23,%r26; .loc 1 36 4 setp.nan.f32 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 37 4 setp.lt.f32 %r28,%r24,0f3f800000; @ ! %r28 bra $L1; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 39 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 40 17 mov.f32 %r31,0f00000000; div.rn.f32 %r23,%r31,%r31; $L1: .loc 1 44 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } lib_a-wf_asin.o/0 0 0 644 1965 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: asinf .visible .func (.param .f32 %value_out) asinf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_asin.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_asinf .extern .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: asinf .visible .func (.param .f32 %value_out) asinf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f32 %r35; mov.f32 %r25,%ar0; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_asinf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 37 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 38 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 38 4 setp.gt.f32 %r31,%r30,0f3f800000; @ ! %r31 bra $L1; .loc 1 40 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 40 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 41 13 cvta.const.u64 %r34,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r35,[%value_in]; } mov.f32 %r24,%r35; $L1: .loc 1 45 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /2043 0 0 0 644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan2f .visible .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_atan2.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2f .extern .func (.param .f32 %value_out) __ieee754_atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atan2f .visible .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r27; mov.f32 %r23,%ar0; mov.f32 %r24,%ar1; .loc 1 31 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; call (%value_in),__ieee754_atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r27,[%value_in]; } .loc 1 32 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } /2061 0 0 0 644 1972 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanhf .visible .func (.param .f32 %value_out) atanhf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_atanh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanhf .extern .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: atanhf .visible .func (.param .f32 %value_out) atanhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .pred %r29; .reg .f32 %r31; .reg .pred %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .f32 %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f32 %r26,%ar0; .loc 1 33 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_atanhf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } mov.f32 %r25,%r28; .loc 1 34 4 setp.nan.f32 %r29,%r26,%r26; @ %r29 bra $L1; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r31,[%value_in]; } .loc 1 36 4 setp.ge.f32 %r32,%r31,0f3f800000; @ ! %r32 bra $L1; .loc 1 37 8 setp.gt.f32 %r33,%r31,0f3f800000; @ ! %r33 bra $L8; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 39 9 mov.u32 %r35,33; st.u32 [%r34],%r35; .loc 1 40 14 mov.f32 %r36,0f00000000; div.rn.f32 %r25,%r36,%r36; bra $L1; $L8: .loc 1 43 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 43 9 mov.u32 %r38,33; st.u32 [%r37],%r38; .loc 1 44 11 div.rn.f32 %r25,%r26,0f00000000; $L1: .loc 1 49 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-wf_cosh.o/0 0 0 644 1604 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: coshf .visible .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_cosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_coshf .extern .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: coshf .visible .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f32 %r25,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_coshf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 35 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 36 4 setp.gt.f32 %r31,%r30,0f42b2d4fc; @ ! %r31 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 38 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 39 13 mov.f32 %r24,0f7f800000; $L1: .loc 1 43 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } lib_a-wf_drem.o/0 0 0 644 1017 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: dremf .visible .func (.param .f32 %value_out) dremf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_drem.c" // BEGIN GLOBAL FUNCTION DECL: remainderf .extern .func (.param .f32 %value_out) remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: dremf .visible .func (.param .f32 %value_out) dremf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r27; mov.f32 %r23,%ar0; mov.f32 %r24,%ar1; .loc 1 18 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; call (%value_in),remainderf,(%out_arg1,%out_arg2); ld.param.f32 %r27,[%value_in]; } .loc 1 19 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } lib_a-wf_exp.o/ 0 0 0 644 1910 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expf .visible .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_exp.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: expf .visible .func (.param .f32 %value_out) expf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; mov.f32 %r26,%ar0; .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } mov.f32 %r25,%r28; .loc 1 45 5 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 45 4 setp.eq.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 46 8 setp.gt.f32 %r32,%r26,0f42b17180; @ ! %r32 bra $L11; .loc 1 48 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 48 9 mov.u32 %r34,34; st.u32 [%r33],%r34; .loc 1 49 17 mov.f32 %r25,0f7f800000; bra $L1; $L11: .loc 1 50 15 setp.lt.f32 %r35,%r26,0fc2cff1b5; @ ! %r35 bra $L1; .loc 1 52 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 52 9 mov.u32 %r37,34; st.u32 [%r36],%r37; .loc 1 53 10 mov.f32 %r25,0f00000000; $L1: .loc 1 58 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-wf_exp2.o/0 0 0 644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp2f .visible .func (.param .f32 %value_out) exp2f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_exp2.c" // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp2f .visible .func (.param .f32 %value_out) exp2f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r23,%ar0; .loc 1 32 10 mov.f32 %r24,0f40000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r23; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 33 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-wf_fmod.o/0 0 0 644 2000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmodf .visible .func (.param .f32 %value_out) fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_fmod.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmodf .extern .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: fmodf .visible .func (.param .f32 %value_out) fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .u16 %r48; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r28; call (%value_in),__ieee754_fmodf,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } mov.f32 %r26,%r31; .loc 1 36 4 set.u32.eq.f32 %r33,%r28,0f00000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 35 4 set.u32.num.f32 %r36,%r27,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 36 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 38 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 39 18 mov.f32 %r46,0f00000000; div.rn.f32 %r26,%r46,%r46; $L1: .loc 1 43 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } /2079 0 0 0 644 806 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gammaf .visible .func (.param .f32 %value_out) gammaf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgammaf .extern .func (.param .f32 %value_out) lgammaf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: gammaf .visible .func (.param .f32 %value_out) gammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r25; mov.f32 %r23,%ar0; .loc 1 28 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; call (%value_in),lgammaf,(%out_arg1); ld.param.f32 %r25,[%value_in]; } .loc 1 29 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /2097 0 0 0 644 2240 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: hypotf .visible .func (.param .f32 %value_out) hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypotf .extern .func (.param .f32 %value_out) __ieee754_hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: hypotf .visible .func (.param .f32 %value_out) hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u32 %r42; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r28; call (%value_in),__ieee754_hypotf,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } mov.f32 %r26,%r31; .loc 1 36 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 36 4 setp.ne.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 36 20 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 36 18 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L1; .loc 1 36 32 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 36 30 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r41,[%value_in]; } .loc 1 38 12 mov.u32 %r42,34; st.u32 [%r41],%r42; .loc 1 39 13 mov.f32 %r26,0f7f800000; $L1: .loc 1 43 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j0.o/ 0 0 0 644 3081 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j0f .visible .func (.param .f32 %value_out) j0f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_j0.c" // BEGIN GLOBAL FUNCTION DECL: y0f .visible .func (.param .f32 %value_out) y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .extern .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .extern .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j0f .visible .func (.param .f32 %value_out) j0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f32 %r25,%ar0; .loc 1 33 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r27,[%value_in]; } .loc 1 34 4 setp.num.f32 %r28,%r25,%r25; @ ! %r28 bra $L1; .loc 1 35 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 35 4 setp.gt.f32 %r31,%r30,0f5a490fdb; @ ! %r31 bra $L1; .loc 1 37 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 37 12 mov.u32 %r33,34; st.u32 [%r32],%r33; $L1: .loc 1 41 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y0f .visible .func (.param .f32 %value_out) y0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .f32 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f32 %r26,%ar0; .loc 1 54 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r28,[%value_in]; } .loc 1 55 4 setp.num.f32 %r29,%r26,%r26; @ ! %r29 bra $L7; .loc 1 56 11 setp.lt.f32 %r30,%r26,0f00000000; @ ! %r30 bra $L17; .loc 1 58 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 58 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L12; $L17: .loc 1 60 5 setp.neu.f32 %r33,%r26,0f00000000; @ %r33 bra $L12; .loc 1 62 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 62 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L12: .loc 1 64 4 setp.gt.f32 %r36,%r26,0f5a490fdb; @ ! %r36 bra $L7; .loc 1 66 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 66 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L7: .loc 1 70 1 mov.f32 %value,%r28; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j1.o/ 0 0 0 644 3151 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j1f .visible .func (.param .f32 %value_out) j1f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_j1.c" // BEGIN GLOBAL FUNCTION DECL: y1f .visible .func (.param .f32 %value_out) y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .extern .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .extern .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j1f .visible .func (.param .f32 %value_out) j1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f32 %r25,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 36 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 37 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 37 4 setp.gt.f32 %r31,%r30,0f5a490fdb; @ ! %r31 bra $L1; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 39 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 40 13 mov.f32 %r24,0f00000000; $L1: .loc 1 44 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y1f .visible .func (.param .f32 %value_out) y1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .f32 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f32 %r26,%ar0; .loc 1 57 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r28,[%value_in]; } .loc 1 58 4 setp.num.f32 %r29,%r26,%r26; @ ! %r29 bra $L5; .loc 1 59 11 setp.lt.f32 %r30,%r26,0f00000000; @ ! %r30 bra $L15; .loc 1 61 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 61 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L10; $L15: .loc 1 63 5 setp.neu.f32 %r33,%r26,0f00000000; @ %r33 bra $L10; .loc 1 65 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 65 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L10: .loc 1 67 4 setp.gt.f32 %r36,%r26,0f5a490fdb; @ ! %r36 bra $L5; .loc 1 69 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 69 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L5: .loc 1 73 1 mov.f32 %value,%r28; st.param.f32 [%value_out],%value; ret; } lib_a-wf_jn.o/ 0 0 0 644 3494 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: jnf .visible .func (.param .f32 %value_out) jnf (.param .u32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_jn.c" // BEGIN GLOBAL FUNCTION DECL: ynf .visible .func (.param .f32 %value_out) ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_jnf .extern .func (.param .f32 %value_out) __ieee754_jnf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_ynf .extern .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: jnf .visible .func (.param .f32 %value_out) jnf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .pred %r30; .reg .f32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; mov.u32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 31 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),__ieee754_jnf,(%out_arg1,%out_arg2); ld.param.f32 %r29,[%value_in]; } .loc 1 32 4 setp.num.f32 %r30,%r26,%r26; @ ! %r30 bra $L1; .loc 1 33 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r32,[%value_in]; } .loc 1 33 4 setp.gt.f32 %r33,%r32,0f5a490fdb; @ ! %r33 bra $L1; .loc 1 35 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 35 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L1: .loc 1 39 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ynf .visible .func (.param .f32 %value_out) ynf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .f32 %r27; .reg .f32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u32 %r40; mov.u32 %r26,%ar0; mov.f32 %r27,%ar1; .loc 1 52 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r27; call (%value_in),__ieee754_ynf,(%out_arg1,%out_arg2); ld.param.f32 %r30,[%value_in]; } .loc 1 53 4 setp.num.f32 %r31,%r27,%r27; @ ! %r31 bra $L7; .loc 1 54 11 setp.lt.f32 %r32,%r27,0f00000000; @ ! %r32 bra $L17; .loc 1 56 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 56 12 mov.u32 %r34,33; st.u32 [%r33],%r34; bra $L12; $L17: .loc 1 58 5 setp.neu.f32 %r35,%r27,0f00000000; @ %r35 bra $L12; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 60 12 mov.u32 %r37,34; st.u32 [%r36],%r37; $L12: .loc 1 62 4 setp.gt.f32 %r38,%r27,0f5a490fdb; @ ! %r38 bra $L7; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r39,[%value_in]; } .loc 1 64 12 mov.u32 %r40,34; st.u32 [%r39],%r40; $L7: .loc 1 68 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /2115 0 0 0 644 1987 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgammaf .visible .func (.param .f32 %value_out) lgammaf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_lgamma.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .extern .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgammaf .visible .func (.param .f32 %value_out) lgammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .f32 %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; mov.f32 %r28,%ar0; .loc 1 32 13 ld.global.u64 %r32,[_impure_ptr]; add.u64 %r31,%r32,224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } .loc 1 34 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 34 11 setp.eq.u32 %r36,%r35,0; @ ! %r36 bra $L1; .loc 1 34 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r38,[%value_in]; } .loc 1 34 23 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L1; .loc 1 36 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r40,[%value_in]; } .loc 1 36 12 mov.u32 %r41,34; st.u32 [%r40],%r41; $L1: .loc 1 40 1 mov.f32 %value,%r33; st.param.f32 [%value_out],%value; ret; } lib_a-wf_log.o/ 0 0 0 644 1985 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: logf .visible .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_log.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: logf .visible .func (.param .f32 %value_out) logf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f32 %r36; mov.f32 %r25,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 36 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 40 setp.gt.f32 %r29,%r25,0f00000000; @ %r29 bra $L1; .loc 1 37 4 setp.neu.f32 %r30,%r25,0f00000000; @ %r30 bra $L3; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 39 12 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 40 13 mov.f32 %r24,0fff800000; bra $L1; $L3: .loc 1 43 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 43 12 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 44 13 cvta.const.u64 %r35,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r36,[%value_in]; } mov.f32 %r24,%r36; $L1: .loc 1 47 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /2134 0 0 0 644 2000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: log10f .visible .func (.param .f32 %value_out) log10f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10f .extern .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: log10f .visible .func (.param .f32 %value_out) log10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f32 %r36; mov.f32 %r25,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_log10f,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 35 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 4 setp.le.f32 %r29,%r25,0f00000000; @ ! %r29 bra $L1; .loc 1 37 8 setp.neu.f32 %r30,%r25,0f00000000; @ %r30 bra $L4; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 39 9 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 40 10 mov.f32 %r24,0fff800000; bra $L1; $L4: .loc 1 43 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 43 9 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 44 10 cvta.const.u64 %r35,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r36,[%value_in]; } mov.f32 %r24,%r36; $L1: .loc 1 49 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } lib_a-wf_log2.o/0 0 0 644 820 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log2f .visible .func (.param .f32 %value_out) log2f (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_log2.c" // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log2f .visible .func (.param .f32 %value_out) log2f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r24,%ar0; .loc 1 34 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),logf,(%out_arg1); ld.param.f32 %r26,[%value_in]; } .loc 1 34 19 div.rn.f32 %value,%r26,0f3f317218; .loc 1 35 1 st.param.f32 [%value_out],%value; ret; } lib_a-wf_pow.o/ 0 0 0 644 4028 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: powf .visible .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_pow.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_powf .extern .func (.param .f32 %value_out) __ieee754_powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: powf .visible .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .pred %r52; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; mov.f32 %r33,%ar0; mov.f32 %r34,%ar1; .loc 1 35 4 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),__ieee754_powf,(%out_arg1,%out_arg2); ld.param.f32 %r37,[%value_in]; } mov.f32 %r32,%r37; .loc 1 36 4 setp.nan.f32 %r38,%r34,%r34; @ %r38 bra $L1; .loc 1 37 4 setp.neu.f32 %r39,%r33,0f00000000; @ %r39 bra $L3; .loc 1 38 8 setp.eq.f32 %r40,%r34,0f00000000; @ %r40 bra $L7; .loc 1 43 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 43 8 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 43 19 setp.lt.f32 %r44,%r34,0f00000000; @ ! %r44 bra $L1; .loc 1 45 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 45 9 mov.u32 %r46,34; st.u32 [%r45],%r46; bra $L1; $L3: .loc 1 49 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 49 4 setp.ne.u32 %r49,%r48,0; @ %r49 bra $L5; .loc 1 50 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 50 8 setp.eq.u32 %r52,%r51,0; @ %r52 bra $L5; .loc 1 50 21 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 50 19 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L5; .loc 1 51 5 setp.num.f32 %r56,%r32,%r32; @ %r56 bra $L6; .loc 1 53 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 53 13 mov.u32 %r58,33; st.u32 [%r57],%r58; bra $L1; $L6: .loc 1 58 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 58 13 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L1; $L5: .loc 1 63 4 setp.neu.f32 %r61,%r37,0f00000000; @ %r61 bra $L1; .loc 1 63 14 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r63,[%value_in]; } .loc 1 63 12 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L1; .loc 1 63 26 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 63 24 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L1; .loc 1 65 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 65 12 mov.u32 %r69,34; st.u32 [%r68],%r69; bra $L1; $L7: .loc 1 41 10 mov.f32 %r32,0f3f800000; $L1: .loc 1 69 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } /2152 0 0 0 644 2040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remainderf .visible .func (.param .f32 %value_out) remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainderf .extern .func (.param .f32 %value_out) __ieee754_remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: remainderf .visible .func (.param .f32 %value_out) remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .u16 %r48; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r28; call (%value_in),__ieee754_remainderf,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } mov.f32 %r26,%r31; .loc 1 36 4 set.u32.eq.f32 %r33,%r28,0f00000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 35 4 set.u32.num.f32 %r36,%r28,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 36 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 38 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 39 17 mov.f32 %r46,0f00000000; div.rn.f32 %r26,%r46,%r46; $L1: .loc 1 43 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } /2174 0 0 0 644 4264 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbf .visible .func (.param .f32 %value_out) scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/math/wf_scalb.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalbf .extern .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalbf .visible .func (.param .f32 %value_out) scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .u32 %r53; .reg .u16 %r54; .reg .pred %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u32 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .f64 %r76; .reg .f64 %r78; .reg .f64 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .u16 %r86; mov.f32 %r37,%ar0; mov.f32 %r38,%ar1; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r38; call (%value_in),__ieee754_scalbf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } mov.f32 %r36,%r41; .loc 1 46 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r43,[%value_in]; } .loc 1 46 5 set.u32.num.f32 %r45,%r36,%r36; neg.s32 %r46,%r45; mov.u32 %r44,%r46; .loc 1 46 4 set.u32.eq.u32 %r48,%r43,0; neg.s32 %r49,%r48; mov.u32 %r47,%r49; .loc 1 46 5 cvt.u16.u8 %r86,%r44; mov.u16 %r51,%r86; cvt.u16.u8 %r86,%r47; mov.u16 %r52,%r86; and.b16 %r50,%r51,%r52; cvt.u32.u16 %r53,%r50; cvt.u16.u8 %r54,%r53; setp.eq.u16 %r55,%r54,0; @ %r55 bra $L2; .loc 1 46 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 46 28 setp.eq.u32 %r58,%r57,0; @ %r58 bra $L2; .loc 1 48 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 48 12 mov.u32 %r60,34; st.u32 [%r59],%r60; .loc 1 49 34 setp.gt.f32 %r61,%r37,0f00000000; selp.f32 %r36,0f7f800000,0fff800000,%r61; bra $L1; $L2: .loc 1 51 6 set.u32.eq.f32 %r63,%r41,0f00000000; neg.s32 %r64,%r63; mov.u32 %r62,%r64; .loc 1 51 15 set.u32.neu.f32 %r66,%r37,%r41; neg.s32 %r67,%r66; mov.u32 %r65,%r67; .loc 1 51 12 cvt.u16.u8 %r86,%r62; mov.u16 %r69,%r86; cvt.u16.u8 %r86,%r65; mov.u16 %r70,%r86; and.b16 %r68,%r69,%r70; cvt.u32.u16 %r71,%r68; .loc 1 51 4 cvt.u16.u8 %r72,%r71; setp.eq.u16 %r73,%r72,0; @ %r73 bra $L4; .loc 1 53 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 53 12 mov.u32 %r75,34; st.u32 [%r74],%r75; .loc 1 54 13 cvt.f64.f32 %r78,%r37; mov.f64 %r76,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r76; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r78; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r79,[%value_in]; } cvt.rn.f32.f64 %r36,%r79; bra $L1; $L4: .loc 1 57 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r81,[%value_in]; } .loc 1 57 4 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L1; .loc 1 57 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 57 25 mov.u32 %r84,34; st.u32 [%r83],%r84; $L1: .loc 1 61 1 mov.f32 %value,%r36; st.param.f32 [%value_out],%value; ret; } /2192 0 0 0 644 1267 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sincosf .visible .func sincosf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libm/math/wf_sincos.c" // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sincosf .visible .func sincosf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .f32 %r28; .reg .f32 %r30; mov.f32 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 17 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } .loc 1 17 9 st.f32 [%r25],%r28; .loc 1 18 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 18 9 st.f32 [%r26],%r30; .loc 1 19 1 ret; } lib_a-wf_sinh.o/0 0 0 644 1843 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinhf .visible .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_sinh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinhf .extern .func (.param .f32 %value_out) __ieee754_sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sinhf .visible .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; mov.f32 %r26,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_sinhf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } mov.f32 %r25,%r28; .loc 1 36 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 36 4 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 36 18 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 36 16 setp.eq.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r35,[%value_in]; } .loc 1 38 12 mov.u32 %r36,34; st.u32 [%r35],%r36; .loc 1 39 36 setp.gt.f32 %r37,%r26,0f00000000; selp.f32 %r25,0f7f800000,0fff800000,%r37; $L1: .loc 1 43 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-wf_sqrt.o/0 0 0 644 1366 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sqrtf .visible .func (.param .f32 %value_out) sqrtf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_sqrt.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sqrtf .visible .func (.param .f32 %value_out) sqrtf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f32 %r31; mov.f32 %r24,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r26,[%value_in]; } mov.f32 %r23,%r26; .loc 1 35 4 setp.nan.f32 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 36 4 setp.lt.f32 %r28,%r24,0f00000000; @ ! %r28 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 38 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 39 17 mov.f32 %r31,0f00000000; div.rn.f32 %r23,%r31,%r31; $L1: .loc 1 43 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } /2211 0 0 0 644 2179 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tgammaf .visible .func (.param .f32 %value_out) tgammaf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/math/wf_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgammaf .extern .func (.param .f32 %value_out) __ieee754_tgammaf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tgammaf .visible .func (.param .f32 %value_out) tgammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f32 %r28; .reg .f32 %r30; .reg .pred %r31; .reg .f64 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; mov.f32 %r28,%ar0; .loc 1 28 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),__ieee754_tgammaf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 34 4 setp.lt.f32 %r31,%r28,0f00000000; @ ! %r31 bra $L10; .loc 1 34 16 cvt.f64.f32 %r26,%r28; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),floor,(%out_arg1); ld.param.f64 %r33,[%value_in]; } .loc 1 34 13 setp.neu.f64 %r34,%r26,%r33; @ %r34 bra $L4; .loc 1 35 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r35,[%value_in]; } .loc 1 35 12 mov.u32 %r36,33; st.u32 [%r35],%r36; bra $L1; $L10: .loc 1 34 16 cvt.f64.f32 %r26,%r28; $L4: .loc 1 36 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r38,[%value_in]; } .loc 1 36 12 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L1; .loc 1 37 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r40,[%value_in]; } .loc 1 37 12 mov.u32 %r41,34; st.u32 [%r40],%r41; $L1: .loc 1 40 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /2230 0 0 0 644 1020 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gamma_r .visible .func (.param .f64 %value_out) gamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/wr_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgamma_r .extern .func (.param .f64 %value_out) lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: gamma_r .visible .func (.param .f64 %value_out) gamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 30 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 31 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /2248 0 0 0 644 2570 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgamma_r .visible .func (.param .f64 %value_out) lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/wr_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .extern .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgamma_r .visible .func (.param .f64 %value_out) lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .u64 %r29; .reg .f64 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r37; .reg .pred %r38; .reg .f64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; mov.f64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 34 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } .loc 1 36 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 36 11 setp.eq.u32 %r35,%r34,0; @ ! %r35 bra $L1; .loc 1 36 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r37,[%value_in]; } .loc 1 36 22 setp.eq.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 37 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),floor,(%out_arg1); ld.param.f64 %r40,[%value_in]; } .loc 1 37 8 setp.neu.f64 %r41,%r40,%r28; @ %r41 bra $L5; .loc 1 37 20 setp.le.f64 %r42,%r28,0d0000000000000000; @ ! %r42 bra $L5; .loc 1 39 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r43,[%value_in]; } .loc 1 39 14 mov.u32 %r44,33; st.u32 [%r43],%r44; bra $L1; $L5: .loc 1 42 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 42 14 mov.u32 %r46,34; st.u32 [%r45],%r46; $L1: .loc 1 46 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /2267 0 0 0 644 1028 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gammaf_r .visible .func (.param .f32 %value_out) gammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/wrf_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgammaf_r .extern .func (.param .f32 %value_out) lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: gammaf_r .visible .func (.param .f32 %value_out) gammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .u64 %r24; .reg .f32 %r27; mov.f32 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 30 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r27,[%value_in]; } .loc 1 31 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } /2286 0 0 0 644 2575 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgammaf_r .visible .func (.param .f32 %value_out) lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/wrf_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .extern .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floorf .extern .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgammaf_r .visible .func (.param .f32 %value_out) lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r37; .reg .pred %r38; .reg .f32 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; mov.f32 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 34 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r32,[%value_in]; } .loc 1 36 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 36 11 setp.eq.u32 %r35,%r34,0; @ ! %r35 bra $L1; .loc 1 36 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r37,[%value_in]; } .loc 1 36 23 setp.eq.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 37 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r40,[%value_in]; } .loc 1 37 8 setp.neu.f32 %r41,%r40,%r28; @ %r41 bra $L5; .loc 1 37 21 setp.le.f32 %r42,%r28,0f00000000; @ ! %r42 bra $L5; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r43,[%value_in]; } .loc 1 39 9 mov.u32 %r44,33; st.u32 [%r43],%r44; bra $L1; $L5: .loc 1 42 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 42 9 mov.u32 %r46,34; st.u32 [%r45],%r46; $L1: .loc 1 47 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } 0707010000008f000041ed000000000000000000000001630c8f2500000000000000000000000000000000000000000000001b00000000./usr/nvptx-none/lib/mgomp07070100000092000081a4000000000000000000000001630c8f240011dfaa000000000000000000000000000000000000002200000000./usr/nvptx-none/lib/mgomp/libm.a! // 2306 ` lib_a-cephes_subr.o/ lib_a-cephes_subrf.o/ lib_a-cephes_subrl.o/ lib_a-copysignl.o/ lib_a-e_rem_pio2.o/ lib_a-e_remainder.o/ lib_a-e_tgamma.o/ lib_a-ef_acosh.o/ lib_a-ef_atan2.o/ lib_a-ef_atanh.o/ lib_a-ef_hypot.o/ lib_a-ef_log10.o/ lib_a-ef_rem_pio2.o/ lib_a-ef_remainder.o/ lib_a-ef_scalb.o/ lib_a-ef_tgamma.o/ lib_a-el_hypot.o/ lib_a-er_lgamma.o/ lib_a-erf_lgamma.o/ lib_a-exp_data.o/ lib_a-fe_dfl_env.o/ lib_a-feclearexcept.o/ lib_a-fegetenv.o/ lib_a-fegetexceptflag.o/ lib_a-fegetround.o/ lib_a-feholdexcept.o/ lib_a-feraiseexcept.o/ lib_a-fesetenv.o/ lib_a-fesetexceptflag.o/ lib_a-fesetround.o/ lib_a-fetestexcept.o/ lib_a-feupdateenv.o/ lib_a-k_rem_pio2.o/ lib_a-k_standard.o/ lib_a-kf_rem_pio2.o/ lib_a-llroundl.o/ lib_a-log2_data.o/ lib_a-log_data.o/ lib_a-math_err.o/ lib_a-math_errf.o/ lib_a-nearbyintl.o/ lib_a-nextafterl.o/ lib_a-nexttoward.o/ lib_a-nexttowardf.o/ lib_a-nexttowardl.o/ lib_a-pow_log_data.o/ lib_a-remainderl.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_infinity.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_llrint.o/ lib_a-s_llround.o/ lib_a-s_lround.o/ lib_a-s_nearbyint.o/ lib_a-s_nextafter.o/ lib_a-s_remquo.o/ lib_a-s_scalbln.o/ lib_a-s_scalbn.o/ lib_a-s_signbit.o/ lib_a-s_signif.o/ lib_a-scalblnl.o/ lib_a-sf_asinh.o/ lib_a-sf_copysign.o/ lib_a-sf_exp10.o/ lib_a-sf_exp2_data.o/ lib_a-sf_expm1.o/ lib_a-sf_finite.o/ lib_a-sf_floor.o/ lib_a-sf_fpclassify.o/ lib_a-sf_frexp.o/ lib_a-sf_ilogb.o/ lib_a-sf_infinity.o/ lib_a-sf_isinf.o/ lib_a-sf_isinff.o/ lib_a-sf_isnan.o/ lib_a-sf_isnanf.o/ lib_a-sf_ldexp.o/ lib_a-sf_llrint.o/ lib_a-sf_llround.o/ lib_a-sf_log1p.o/ lib_a-sf_log2_data.o/ lib_a-sf_log_data.o/ lib_a-sf_lrint.o/ lib_a-sf_lround.o/ lib_a-sf_nearbyint.o/ lib_a-sf_nextafter.o/ lib_a-sf_pow10.o/ lib_a-sf_pow_log2_data.o/ lib_a-sf_remquo.o/ lib_a-sf_round.o/ lib_a-sf_scalbln.o/ lib_a-sf_scalbn.o/ lib_a-sf_signif.o/ lib_a-sf_trunc.o/ lib_a-sincosf_data.o/ lib_a-sl_finite.o/ lib_a-w_lgamma.o/ lib_a-w_remainder.o/ lib_a-w_sincos.o/ lib_a-w_tgamma.o/ lib_a-wf_acosh.o/ lib_a-wf_atan2.o/ lib_a-wf_atanh.o/ lib_a-wf_gamma.o/ lib_a-wf_hypot.o/ lib_a-wf_lgamma.o/ lib_a-wf_log10.o/ lib_a-wf_remainder.o/ lib_a-wf_scalb.o/ lib_a-wf_sincos.o/ lib_a-wf_tgamma.o/ lib_a-wr_gamma.o/ lib_a-wr_lgamma.o/ lib_a-wrf_gamma.o/ lib_a-wrf_lgamma.o/ lib_a-acoshl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acoshl .visible .func (.param .f64 %value_out) acoshl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/acoshl.c" // BEGIN GLOBAL FUNCTION DECL: acosh .extern .func (.param .f64 %value_out) acosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: acoshl .visible .func (.param .f64 %value_out) acoshl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),acosh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-acosl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acosl .visible .func (.param .f64 %value_out) acosl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/acosl.c" // BEGIN GLOBAL FUNCTION DECL: acos .extern .func (.param .f64 %value_out) acos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: acosl .visible .func (.param .f64 %value_out) acosl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),acos,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-asinhl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinhl .visible .func (.param .f64 %value_out) asinhl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/asinhl.c" // BEGIN GLOBAL FUNCTION DECL: asinh .extern .func (.param .f64 %value_out) asinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinhl .visible .func (.param .f64 %value_out) asinhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),asinh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-asinl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinl .visible .func (.param .f64 %value_out) asinl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/asinl.c" // BEGIN GLOBAL FUNCTION DECL: asin .extern .func (.param .f64 %value_out) asin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinl .visible .func (.param .f64 %value_out) asinl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),asin,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-atan2l.o/ 0 0 0 644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan2l .visible .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/atan2l.c" // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atan2l .visible .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-atanhl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanhl .visible .func (.param .f64 %value_out) atanhl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/atanhl.c" // BEGIN GLOBAL FUNCTION DECL: atanh .extern .func (.param .f64 %value_out) atanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: atanhl .visible .func (.param .f64 %value_out) atanhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),atanh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-atanl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanl .visible .func (.param .f64 %value_out) atanl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/atanl.c" // BEGIN GLOBAL FUNCTION DECL: atan .extern .func (.param .f64 %value_out) atan (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: atanl .visible .func (.param .f64 %value_out) atanl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),atan,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-cabs.o/ 0 0 0 644 1709 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cabs .visible .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cabs.c" // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: hypot .extern .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cabs .visible .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r35; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 58 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; call (%value_in),hypot,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 59 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-cabsf.o/ 0 0 0 644 1723 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cabsf .visible .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cabsf.c" // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: hypotf .extern .func (.param .f32 %value_out) hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cabsf .visible .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r32; .reg .f32 %r35; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 18 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r29,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r32,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; call (%value_in),hypotf,(%out_arg1,%out_arg2); ld.param.f32 %r35,[%value_in]; } .loc 1 19 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } lib_a-cabsl.o/ 0 0 0 644 1004 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cabsl .visible .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cabsl.c" // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cabsl .visible .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 14 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 18 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-cacos.o/ 0 0 0 644 2637 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacos .visible .func cacos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cacos.c" // BEGIN GLOBAL FUNCTION DECL: casin .extern .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cacos .visible .func cacos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r28; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 94 9 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r32; call casin,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 95 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 96 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } .loc 1 95 16 mov.f64 %r44,0d3ff921fb54442d18; sub.f64 %r43,%r44,%r38; .loc 1 96 4 fma.rn.f64 %r28,%r41,0d8000000000000000,%r43; .loc 1 98 9 st.f64 [%r30],%r28; .loc 1 96 4 mov.f64 %r46,0d0000000000000000; sub.f64 %r45,%r46,%r41; .loc 1 98 9 st.f64 [%r30+8],%r45; .loc 1 99 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacosf.o/ 0 0 0 644 2571 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacosf .visible .func cacosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cacosf.c" // BEGIN GLOBAL FUNCTION DECL: casinf .extern .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cacosf .visible .func cacosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r24; .reg .f32 %r26; .reg .f32 %r27; .reg .u64 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; mov.u64 %r30,%ar0; mov.f32 %r31,%ar1; mov.f32 %r32,%ar2; .loc 1 43 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r32; call casinf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r26,[%frame]; ld.f32 %r27,[%frame+4]; .loc 1 44 36 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r27; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r38,[%value_in]; } .loc 1 44 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r27; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } .loc 1 44 34 neg.f32 %r42,%r38; .loc 1 44 21 mov.f32 %r44,0f3fc90fdb; sub.f32 %r43,%r44,%r41; .loc 1 44 34 fma.rn.f32 %r24,%r38,0f80000000,%r43; .loc 1 45 9 st.f32 [%r30],%r24; st.f32 [%r30+4],%r42; .loc 1 46 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacosh.o/ 0 0 0 644 3417 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacosh .visible .func cacosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cacosh.c" // BEGIN GLOBAL FUNCTION DECL: csqrt .extern .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: clog .extern .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cacosh .visible .func cacosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .u64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r62; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .f64 %r88; .reg .f64 %r91; mov.u64 %r53,%ar0; mov.f64 %r54,%ar1; mov.f64 %r55,%ar2; .loc 1 90 15 add.f64 %r62,%r54,0d3ff0000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r62; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r25,[%frame]; ld.f64 %r26,[%frame+8]; .loc 1 90 30 mov.f64 %r73,0d3ff0000000000000; sub.f64 %r72,%r54,%r73; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r30,[%frame]; ld.f64 %r31,[%frame+8]; .loc 1 90 28 mul.f64 %r43,%r26,%r30; mul.f64 %r76,%r26,%r31; neg.f64 %r77,%r76; fma.rn.f64 %r44,%r25,%r30,%r77; fma.rn.f64 %r45,%r25,%r31,%r43; setp.num.f64 %r78,%r44,%r45; @ %r78 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r26; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r30; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r31; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r44,[%frame]; ld.f64 %r45,[%frame+8]; $L2: .loc 1 90 6 add.f64 %r88,%r55,%r45; add.f64 %r91,%r54,%r44; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r91; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r88; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r34,[%frame]; ld.f64 %r35,[%frame+8]; .loc 1 92 9 st.f64 [%r53],%r34; st.f64 [%r53+8],%r35; .loc 1 93 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacoshf.o/0 0 0 644 3413 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacoshf .visible .func cacoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cacoshf.c" // BEGIN GLOBAL FUNCTION DECL: csqrtf .extern .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: clogf .extern .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cacoshf .visible .func cacoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .u64 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r62; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .f32 %r88; .reg .f32 %r91; mov.u64 %r53,%ar0; mov.f32 %r54,%ar1; mov.f32 %r55,%ar2; .loc 1 45 16 add.f32 %r62,%r54,0f3f800000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r62; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r55; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r25,[%frame]; ld.f32 %r26,[%frame+4]; .loc 1 45 32 mov.f32 %r73,0f3f800000; sub.f32 %r72,%r54,%r73; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r72; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r55; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r30,[%frame]; ld.f32 %r31,[%frame+4]; .loc 1 45 30 mul.f32 %r43,%r26,%r30; mul.f32 %r76,%r26,%r31; neg.f32 %r77,%r76; fma.rn.f32 %r44,%r25,%r30,%r77; fma.rn.f32 %r45,%r25,%r31,%r43; setp.num.f32 %r78,%r44,%r45; @ %r78 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r25; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r26; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r30; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r31; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r44,[%frame]; ld.f32 %r45,[%frame+4]; $L2: .loc 1 45 6 add.f32 %r88,%r55,%r45; add.f32 %r91,%r54,%r44; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r91; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r88; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r34,[%frame]; ld.f32 %r35,[%frame+4]; .loc 1 47 9 st.f32 [%r53],%r34; st.f32 [%r53+4],%r35; .loc 1 48 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacoshl.o/0 0 0 644 3471 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacoshl .visible .func cacoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cacoshl.c" // BEGIN GLOBAL FUNCTION DECL: csqrtl .extern .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: clogl .extern .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cacoshl .visible .func cacoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .u64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r62; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .f64 %r89; .reg .f64 %r92; mov.u64 %r53,%ar0; mov.f64 %r54,%ar1; mov.f64 %r55,%ar2; .loc 1 42 16 add.f64 %r62,%r54,0d3ff0000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r62; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrtl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r25,[%frame]; ld.f64 %r26,[%frame+8]; .loc 1 42 32 mov.f64 %r73,0d3ff0000000000000; sub.f64 %r72,%r54,%r73; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r55; call csqrtl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r30,[%frame]; ld.f64 %r31,[%frame+8]; .loc 1 42 30 mul.f64 %r43,%r26,%r30; mul.f64 %r76,%r26,%r31; neg.f64 %r77,%r76; fma.rn.f64 %r44,%r25,%r30,%r77; fma.rn.f64 %r45,%r25,%r31,%r43; setp.num.f64 %r78,%r44,%r45; @ %r78 bra $L2; add.u64 %r79,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r26; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r30; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r31; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r44,[%frame+16]; ld.f64 %r45,[%frame+24]; $L2: .loc 1 42 6 add.f64 %r89,%r55,%r45; add.f64 %r92,%r54,%r44; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r92; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r89; call clogl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r34,[%frame]; ld.f64 %r35,[%frame+8]; .loc 1 44 9 st.f64 [%r53],%r34; st.f64 [%r53+8],%r35; .loc 1 45 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacosl.o/ 0 0 0 644 2587 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cacosl .visible .func cacosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cacosl.c" // BEGIN GLOBAL FUNCTION DECL: casinl .extern .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cacosl .visible .func cacosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r26; .reg .f64 %r27; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 41 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r32; call casinl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r26,[%frame]; ld.f64 %r27,[%frame+8]; .loc 1 42 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r27; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 42 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r27; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } .loc 1 42 28 neg.f64 %r42,%r38; .loc 1 42 15 mov.f64 %r44,0d3ff921fb54442d18; sub.f64 %r43,%r44,%r41; .loc 1 42 28 fma.rn.f64 %r24,%r38,0d8000000000000000,%r43; .loc 1 43 9 st.f64 [%r30],%r24; st.f64 [%r30+8],%r42; .loc 1 44 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-carg.o/ 0 0 0 644 1709 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: carg .visible .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/carg.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: carg .visible .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r35; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 58 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 59 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-cargf.o/ 0 0 0 644 1723 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cargf .visible .func (.param .f32 %value_out) cargf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cargf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cargf .visible .func (.param .f32 %value_out) cargf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r32; .reg .f32 %r35; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 18 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r29,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r32,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r35,[%value_in]; } .loc 1 19 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } lib_a-cargl.o/ 0 0 0 644 1004 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cargl .visible .func (.param .f64 %value_out) cargl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cargl.c" // BEGIN GLOBAL FUNCTION DECL: carg .extern .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: cargl .visible .func (.param .f64 %value_out) cargl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 14 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),carg,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 18 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-casin.o/ 0 0 0 644 5623 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casin .visible .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/casin.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: csqrt .extern .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: clog .extern .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: casin .visible .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r22; .reg .f64 %r27; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r59; .reg .u64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r72; .reg .pred %r73; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r85; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r106; .reg .pred %r107; .reg .f64 %r111; .reg .f64 %r112; mov.u64 %r63,%ar0; mov.f64 %r64,%ar1; mov.f64 %r65,%ar2; .loc 1 92 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r68,[%value_in]; } .loc 1 93 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 150 9 fma.rn.f64 %r22,%r71,0d0000000000000000,%r68; .loc 1 151 5 neg.f64 %r72,%r71; fma.rn.f64 %r47,%r22,0d0000000000000000,%r72; fma.rn.f64 %r48,%r71,0d0000000000000000,%r22; setp.num.f64 %r73,%r47,%r48; @ %r73 bra $L2; mov.f64 %r78,0d3ff0000000000000; mov.f64 %r77,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r22; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r71; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r77; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r78; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r47,[%frame]; ld.f64 %r48,[%frame+8]; $L2: .loc 1 155 32 add.f64 %r79,%r68,%r68; .loc 1 155 36 mul.f64 %r34,%r79,%r71; .loc 1 155 10 sub.f64 %r80,%r68,%r71; .loc 1 155 20 add.f64 %r81,%r68,%r71; .loc 1 155 25 mul.f64 %r82,%r34,0d0000000000000000; fma.rn.f64 %r27,%r80,%r81,%r82; .loc 1 157 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 157 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 157 23 neg.f64 %r89,%r85; .loc 1 157 11 mov.f64 %r91,0d3ff0000000000000; sub.f64 %r90,%r91,%r88; .loc 1 157 23 fma.rn.f64 %r30,%r85,0d8000000000000000,%r90; .loc 1 158 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r89; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r40,[%frame]; ld.f64 %r41,[%frame+8]; .loc 1 160 5 add.f64 %r101,%r40,%r47; add.f64 %r102,%r41,%r48; .loc 1 161 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r101; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r102; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r44,[%frame]; ld.f64 %r45,[%frame+8]; .loc 1 163 4 fma.rn.f64 %r59,%r44,0d8000000000000000,%r45; neg.f64 %r106,%r44; fma.rn.f64 %r46,%r45,0d8000000000000000,%r106; setp.num.f64 %r107,%r46,%r59; @ %r107 bra $L3; mov.f64 %r112,0dbff0000000000000; mov.f64 %r111,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r45; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r111; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r112; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r59,[%frame]; ld.f64 %r46,[%frame+8]; $L3: .loc 1 164 9 st.f64 [%r63],%r59; st.f64 [%r63+8],%r46; .loc 1 165 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinf.o/ 0 0 0 644 5546 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinf .visible .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/casinf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: csqrtf .extern .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: clogf .extern .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: casinf .visible .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r22; .reg .f32 %r27; .reg .f32 %r30; .reg .f32 %r34; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r59; .reg .u64 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r68; .reg .f32 %r71; .reg .f32 %r72; .reg .pred %r73; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r85; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r106; .reg .pred %r107; .reg .f32 %r111; .reg .f32 %r112; mov.u64 %r63,%ar0; mov.f32 %r64,%ar1; mov.f32 %r65,%ar2; .loc 1 49 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r68,[%value_in]; } .loc 1 50 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r71,[%value_in]; } .loc 1 107 9 fma.rn.f32 %r22,%r71,0f00000000,%r68; .loc 1 108 5 neg.f32 %r72,%r71; fma.rn.f32 %r47,%r22,0f00000000,%r72; fma.rn.f32 %r48,%r71,0f00000000,%r22; setp.num.f32 %r73,%r47,%r48; @ %r73 bra $L2; mov.f32 %r78,0f3f800000; mov.f32 %r77,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r22; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r71; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r77; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r78; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r47,[%frame]; ld.f32 %r48,[%frame+4]; $L2: .loc 1 112 33 add.f32 %r79,%r68,%r68; .loc 1 112 37 mul.f32 %r34,%r79,%r71; .loc 1 112 10 sub.f32 %r80,%r68,%r71; .loc 1 112 20 add.f32 %r81,%r68,%r71; .loc 1 112 25 mul.f32 %r82,%r34,0f00000000; fma.rn.f32 %r27,%r80,%r81,%r82; .loc 1 114 27 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r85,[%value_in]; } .loc 1 114 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r88,[%value_in]; } .loc 1 114 25 neg.f32 %r89,%r85; .loc 1 114 12 mov.f32 %r91,0f3f800000; sub.f32 %r90,%r91,%r88; .loc 1 114 25 fma.rn.f32 %r30,%r85,0f80000000,%r90; .loc 1 115 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r89; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r40,[%frame]; ld.f32 %r41,[%frame+4]; .loc 1 117 5 add.f32 %r101,%r40,%r47; add.f32 %r102,%r41,%r48; .loc 1 118 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r101; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r102; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r44,[%frame]; ld.f32 %r45,[%frame+4]; .loc 1 120 4 fma.rn.f32 %r59,%r44,0f80000000,%r45; neg.f32 %r106,%r44; fma.rn.f32 %r46,%r45,0f80000000,%r106; setp.num.f32 %r107,%r46,%r59; @ %r107 bra $L3; mov.f32 %r112,0fbf800000; mov.f32 %r111,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r44; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r45; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r111; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r112; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r59,[%frame]; ld.f32 %r46,[%frame+4]; $L3: .loc 1 121 9 st.f32 [%r63],%r59; st.f32 [%r63+4],%r46; .loc 1 122 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinh.o/ 0 0 0 644 3228 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinh .visible .func casinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/casinh.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: casin .extern .func casin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: casinh .visible .func casinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r62; .reg .f64 %r63; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 95 17 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call casin,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 95 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r57,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r57; setp.num.f64 %r58,%r26,%r37; @ %r58 bra $L3; mov.f64 %r63,0dbff0000000000000; mov.f64 %r62,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r62; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r63; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 96 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 97 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinhf.o/0 0 0 644 3172 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinhf .visible .func casinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/casinhf.c" // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: casinf .extern .func casinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: casinhf .visible .func casinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r37; .reg .u64 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r57; .reg .pred %r58; .reg .f32 %r62; .reg .f32 %r63; mov.u64 %r40,%ar0; mov.f32 %r41,%ar1; mov.f32 %r42,%ar2; .loc 1 42 18 neg.f32 %r43,%r42; fma.rn.f32 %r29,%r41,0f00000000,%r43; fma.rn.f32 %r30,%r42,0f00000000,%r41; setp.num.f32 %r44,%r29,%r30; @ %r44 bra $L2; mov.f32 %r49,0f3f800000; mov.f32 %r48,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r42; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r48; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r49; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r29,[%frame]; ld.f32 %r30,[%frame+4]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r30; call casinf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 fma.rn.f32 %r37,%r24,0f80000000,%r25; neg.f32 %r57,%r24; fma.rn.f32 %r26,%r25,0f80000000,%r57; setp.num.f32 %r58,%r26,%r37; @ %r58 bra $L3; mov.f32 %r63,0fbf800000; mov.f32 %r62,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r25; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r62; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r63; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r37,[%frame]; ld.f32 %r26,[%frame+4]; $L3: .loc 1 43 9 st.f32 [%r40],%r37; st.f32 [%r40+4],%r26; .loc 1 44 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinhl.o/0 0 0 644 3278 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinhl .visible .func casinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/casinhl.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: casinl .extern .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: casinhl .visible .func casinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .f64 %r58; .reg .pred %r59; .reg .f64 %r63; .reg .f64 %r64; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 39 18 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: add.u64 %r50,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call casinl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame+16]; ld.f64 %r25,[%frame+24]; .loc 1 39 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r58,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r58; setp.num.f64 %r59,%r26,%r37; @ %r59 bra $L3; mov.f64 %r64,0dbff0000000000000; mov.f64 %r63,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r63; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r64; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 40 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 41 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinl.o/ 0 0 0 644 5686 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: casinl .visible .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/casinl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: csqrtl .extern .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: clogl .extern .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: casinl .visible .func casinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r22; .reg .f64 %r27; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r59; .reg .u64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r72; .reg .pred %r73; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r85; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .u64 %r92; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r108; .reg .pred %r109; .reg .f64 %r113; .reg .f64 %r114; mov.u64 %r63,%ar0; mov.f64 %r64,%ar1; mov.f64 %r65,%ar2; .loc 1 46 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r68,[%value_in]; } .loc 1 47 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 104 9 fma.rn.f64 %r22,%r71,0d0000000000000000,%r68; .loc 1 105 5 neg.f64 %r72,%r71; fma.rn.f64 %r47,%r22,0d0000000000000000,%r72; fma.rn.f64 %r48,%r71,0d0000000000000000,%r22; setp.num.f64 %r73,%r47,%r48; @ %r73 bra $L2; mov.f64 %r78,0d3ff0000000000000; mov.f64 %r77,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r22; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r71; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r77; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r78; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r47,[%frame]; ld.f64 %r48,[%frame+8]; $L2: .loc 1 109 33 add.f64 %r79,%r68,%r68; .loc 1 109 37 mul.f64 %r34,%r79,%r71; .loc 1 109 10 sub.f64 %r80,%r68,%r71; .loc 1 109 20 add.f64 %r81,%r68,%r71; .loc 1 109 25 mul.f64 %r82,%r34,0d0000000000000000; fma.rn.f64 %r27,%r80,%r81,%r82; .loc 1 111 27 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 111 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 111 25 neg.f64 %r89,%r85; .loc 1 111 12 mov.f64 %r91,0d3ff0000000000000; sub.f64 %r90,%r91,%r88; .loc 1 111 25 fma.rn.f64 %r30,%r85,0d8000000000000000,%r90; .loc 1 112 7 add.u64 %r92,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r89; call csqrtl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r40,[%frame+16]; ld.f64 %r41,[%frame+24]; .loc 1 114 5 add.f64 %r102,%r40,%r47; add.f64 %r103,%r41,%r48; .loc 1 115 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r102; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r103; call clogl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r44,[%frame+16]; ld.f64 %r45,[%frame+24]; .loc 1 117 4 fma.rn.f64 %r59,%r44,0d8000000000000000,%r45; neg.f64 %r108,%r44; fma.rn.f64 %r46,%r45,0d8000000000000000,%r108; setp.num.f64 %r109,%r46,%r59; @ %r109 bra $L3; mov.f64 %r114,0dbff0000000000000; mov.f64 %r113,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r45; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r113; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r114; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r59,[%frame]; ld.f64 %r46,[%frame+8]; $L3: .loc 1 118 9 st.f64 [%r63],%r59; st.f64 [%r63+8],%r46; .loc 1 119 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-catan.o/ 0 0 0 644 3762 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catan .visible .func catan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/catan.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _redupi .extern .func (.param .f64 %value_out) _redupi (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: catan .visible .func catan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r40; .reg .u64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r46; .reg .f64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .pred %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; mov.u64 %r41,%ar0; mov.f64 %r42,%ar1; mov.f64 %r43,%ar2; .loc 1 100 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } .loc 1 101 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r49,[%value_in]; } .loc 1 103 5 setp.neu.f64 %r50,%r46,0d0000000000000000; @ %r50 bra $L2; .loc 1 103 17 setp.gt.f64 %r51,%r49,0d3ff0000000000000; @ %r51 bra $L3; $L2: .loc 1 106 5 mul.f64 %r32,%r46,%r46; .loc 1 107 4 neg.f64 %r52,%r49; .loc 1 107 10 mov.f64 %r54,0d3ff0000000000000; sub.f64 %r53,%r54,%r32; .loc 1 107 4 fma.rn.f64 %r33,%r52,%r49,%r53; .loc 1 108 5 setp.eq.f64 %r55,%r33,0d0000000000000000; @ %r55 bra $L3; .loc 1 111 12 add.f64 %r58,%r46,%r46; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } .loc 1 111 4 mul.f64 %r61,%r59,0d3fe0000000000000; .loc 1 112 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),_redupi,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 114 4 sub.f64 %r35,%r49,%r54; .loc 1 115 4 fma.rn.f64 %r36,%r35,%r35,%r32; .loc 1 116 5 setp.eq.f64 %r64,%r36,0d0000000000000000; @ %r64 bra $L3; .loc 1 119 4 add.f64 %r37,%r49,0d3ff0000000000000; .loc 1 120 10 fma.rn.f64 %r26,%r37,%r37,%r32; .loc 1 120 4 div.rn.f64 %r66,%r26,%r36; .loc 1 121 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),log,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 121 16 mul.f64 %r39,%r67,0d3fd0000000000000; .loc 1 121 4 fma.rn.f64 %r28,%r39,0d0000000000000000,%r62; add.f64 %r40,%r39,0d0000000000000000; .loc 1 122 9 bra $L4; $L3: .loc 1 128 15 mov.f64 %r68,0d7ff0000000000000; fma.rn.f64 %r28,%r68,0d0000000000000000,%r68; .loc 1 129 9 mov.f64 %r40,%r68; $L4: .loc 1 122 9 st.f64 [%r41],%r28; st.f64 [%r41+8],%r40; .loc 1 130 1 ret; } lib_a-catanf.o/ 0 0 0 644 3660 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanf .visible .func catanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/catanf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _redupif .extern .func (.param .f32 %value_out) _redupif (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: catanf .visible .func catanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r26; .reg .f32 %r28; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r39; .reg .f32 %r40; .reg .u64 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r46; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .pred %r55; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; mov.u64 %r41,%ar0; mov.f32 %r42,%ar1; mov.f32 %r43,%ar2; .loc 1 49 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r43; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } .loc 1 50 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r43; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r49,[%value_in]; } .loc 1 52 5 setp.neu.f32 %r50,%r46,0f00000000; @ %r50 bra $L2; .loc 1 52 18 setp.gt.f32 %r51,%r49,0f3f800000; @ %r51 bra $L3; $L2: .loc 1 55 5 mul.f32 %r32,%r46,%r46; .loc 1 56 4 neg.f32 %r52,%r49; .loc 1 56 11 mov.f32 %r54,0f3f800000; sub.f32 %r53,%r54,%r32; .loc 1 56 4 fma.rn.f32 %r33,%r52,%r49,%r53; .loc 1 57 5 setp.eq.f32 %r55,%r33,0f00000000; @ %r55 bra $L3; .loc 1 60 13 add.f32 %r58,%r46,%r46; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } .loc 1 60 4 mul.f32 %r61,%r59,0f3f000000; .loc 1 61 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),_redupif,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 63 4 sub.f32 %r35,%r49,%r54; .loc 1 64 4 fma.rn.f32 %r36,%r35,%r35,%r32; .loc 1 65 5 setp.eq.f32 %r64,%r36,0f00000000; @ %r64 bra $L3; .loc 1 68 4 add.f32 %r37,%r49,0f3f800000; .loc 1 69 10 fma.rn.f32 %r26,%r37,%r37,%r32; .loc 1 69 4 div.rn.f32 %r66,%r26,%r36; .loc 1 70 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r66; call (%value_in),logf,(%out_arg1); ld.param.f32 %r67,[%value_in]; } .loc 1 70 17 mul.f32 %r39,%r67,0f3e800000; .loc 1 70 4 fma.rn.f32 %r28,%r39,0f00000000,%r62; add.f32 %r40,%r39,0f00000000; .loc 1 71 9 bra $L4; $L3: .loc 1 77 16 mov.f32 %r68,0f7f800000; fma.rn.f32 %r28,%r68,0f00000000,%r68; .loc 1 78 9 mov.f32 %r40,%r68; $L4: .loc 1 71 9 st.f32 [%r41],%r28; st.f32 [%r41+4],%r40; .loc 1 79 1 ret; } lib_a-catanh.o/ 0 0 0 644 3228 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanh .visible .func catanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/catanh.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: catan .extern .func catan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: catanh .visible .func catanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r62; .reg .f64 %r63; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 88 17 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call catan,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 88 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r57,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r57; setp.num.f64 %r58,%r26,%r37; @ %r58 bra $L3; mov.f64 %r63,0dbff0000000000000; mov.f64 %r62,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r62; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r63; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 89 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 90 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-catanhf.o/0 0 0 644 3172 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanhf .visible .func catanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/catanhf.c" // BEGIN GLOBAL FUNCTION DECL: __mulsc3 .extern .func __mulsc3 (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: catanf .extern .func catanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: catanhf .visible .func catanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r37; .reg .u64 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r57; .reg .pred %r58; .reg .f32 %r62; .reg .f32 %r63; mov.u64 %r40,%ar0; mov.f32 %r41,%ar1; mov.f32 %r42,%ar2; .loc 1 42 18 neg.f32 %r43,%r42; fma.rn.f32 %r29,%r41,0f00000000,%r43; fma.rn.f32 %r30,%r42,0f00000000,%r41; setp.num.f32 %r44,%r29,%r30; @ %r44 bra $L2; mov.f32 %r49,0f3f800000; mov.f32 %r48,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r42; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r48; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r49; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r29,[%frame]; ld.f32 %r30,[%frame+4]; $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r29; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r30; call catanf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 fma.rn.f32 %r37,%r24,0f80000000,%r25; neg.f32 %r57,%r24; fma.rn.f32 %r26,%r25,0f80000000,%r57; setp.num.f32 %r58,%r26,%r37; @ %r58 bra $L3; mov.f32 %r63,0fbf800000; mov.f32 %r62,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r25; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r62; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r63; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r37,[%frame]; ld.f32 %r26,[%frame+4]; $L3: .loc 1 43 9 st.f32 [%r40],%r37; st.f32 [%r40+4],%r26; .loc 1 44 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-catanhl.o/0 0 0 644 3278 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanhl .visible .func catanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/catanhl.c" // BEGIN GLOBAL FUNCTION DECL: __muldc3 .extern .func __muldc3 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: catanl .extern .func catanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: catanhl .visible .func catanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r37; .reg .u64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .pred %r44; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .f64 %r58; .reg .pred %r59; .reg .f64 %r63; .reg .f64 %r64; mov.u64 %r40,%ar0; mov.f64 %r41,%ar1; mov.f64 %r42,%ar2; .loc 1 39 18 neg.f64 %r43,%r42; fma.rn.f64 %r29,%r41,0d0000000000000000,%r43; fma.rn.f64 %r30,%r42,0d0000000000000000,%r41; setp.num.f64 %r44,%r29,%r30; @ %r44 bra $L2; mov.f64 %r49,0d3ff0000000000000; mov.f64 %r48,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r42; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r48; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r49; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r29,[%frame]; ld.f64 %r30,[%frame+8]; $L2: add.u64 %r50,%frame,16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r30; call catanl,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame+16]; ld.f64 %r25,[%frame+24]; .loc 1 39 4 fma.rn.f64 %r37,%r24,0d8000000000000000,%r25; neg.f64 %r58,%r24; fma.rn.f64 %r26,%r25,0d8000000000000000,%r58; setp.num.f64 %r59,%r26,%r37; @ %r59 bra $L3; mov.f64 %r64,0dbff0000000000000; mov.f64 %r63,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r63; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r64; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r37,[%frame]; ld.f64 %r26,[%frame+8]; $L3: .loc 1 40 9 st.f64 [%r40],%r37; st.f64 [%r40+8],%r26; .loc 1 41 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-catanl.o/ 0 0 0 644 3756 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: catanl .visible .func catanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/catanl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2l .extern .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _redupil .extern .func (.param .f64 %value_out) _redupil (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logl .extern .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: catanl .visible .func catanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r40; .reg .u64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r46; .reg .f64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .pred %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; mov.u64 %r41,%ar0; mov.f64 %r42,%ar1; mov.f64 %r43,%ar2; .loc 1 46 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } .loc 1 47 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r49,[%value_in]; } .loc 1 49 5 setp.neu.f64 %r50,%r46,0d0000000000000000; @ %r50 bra $L2; .loc 1 49 18 setp.gt.f64 %r51,%r49,0d3ff0000000000000; @ %r51 bra $L3; $L2: .loc 1 52 5 mul.f64 %r32,%r46,%r46; .loc 1 53 4 neg.f64 %r52,%r49; .loc 1 53 11 mov.f64 %r54,0d3ff0000000000000; sub.f64 %r53,%r54,%r32; .loc 1 53 4 fma.rn.f64 %r33,%r52,%r49,%r53; .loc 1 54 5 setp.eq.f64 %r55,%r33,0d0000000000000000; @ %r55 bra $L3; .loc 1 57 13 add.f64 %r58,%r46,%r46; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),atan2l,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } .loc 1 57 4 mul.f64 %r61,%r59,0d3fe0000000000000; .loc 1 58 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),_redupil,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 60 4 sub.f64 %r35,%r49,%r54; .loc 1 61 4 fma.rn.f64 %r36,%r35,%r35,%r32; .loc 1 62 5 setp.eq.f64 %r64,%r36,0d0000000000000000; @ %r64 bra $L3; .loc 1 65 4 add.f64 %r37,%r49,0d3ff0000000000000; .loc 1 66 10 fma.rn.f64 %r26,%r37,%r37,%r32; .loc 1 66 4 div.rn.f64 %r66,%r26,%r36; .loc 1 67 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),logl,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 67 17 mul.f64 %r39,%r67,0d3fd0000000000000; .loc 1 67 4 fma.rn.f64 %r28,%r39,0d0000000000000000,%r62; add.f64 %r40,%r39,0d0000000000000000; .loc 1 68 9 bra $L4; $L3: .loc 1 74 16 mov.f64 %r68,0d7ff0000000000000; fma.rn.f64 %r28,%r68,0d0000000000000000,%r68; .loc 1 75 9 mov.f64 %r40,%r68; $L4: .loc 1 68 9 st.f64 [%r41],%r28; st.f64 [%r41+8],%r40; .loc 1 76 1 ret; } lib_a-cbrtl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cbrtl .visible .func (.param .f64 %value_out) cbrtl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/cbrtl.c" // BEGIN GLOBAL FUNCTION DECL: cbrt .extern .func (.param .f64 %value_out) cbrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cbrtl .visible .func (.param .f64 %value_out) cbrtl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),cbrt,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-ccos.o/ 0 0 0 644 3366 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccos .visible .func ccos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ccos.c" // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchsh .extern .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: ccos .visible .func ccos (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r30; .reg .f64 %r32; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .u64 %r43; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 78 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } add.u64 %r43,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchsh,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 79 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),sin,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 79 42 ld.f64 %r49,[%frame]; mul.f64 %r32,%r48,%r49; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r52,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),cos,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 79 25 mul.f64 %r56,%r32,0d8000000000000000; ld.f64 %r57,[%frame+8]; fma.rn.f64 %r30,%r54,%r57,%r56; .loc 1 80 9 st.f64 [%r34],%r30; .loc 1 79 25 neg.f64 %r58,%r32; .loc 1 80 9 st.f64 [%r34+8],%r58; .loc 1 81 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-ccosf.o/ 0 0 0 644 3379 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccosf .visible .func ccosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ccosf.c" // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshf .extern .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: ccosf .visible .func ccosf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r30; .reg .f32 %r32; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .u64 %r43; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r52; .reg .f32 %r54; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 45 2 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } add.u64 %r43,%frame,4; { .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshf,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 46 30 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } .loc 1 46 46 ld.f32 %r49,[%frame]; mul.f32 %r32,%r48,%r49; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r52,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r52; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r54,[%value_in]; } .loc 1 46 27 mul.f32 %r56,%r32,0f80000000; ld.f32 %r57,[%frame+4]; fma.rn.f32 %r30,%r54,%r57,%r56; .loc 1 47 9 st.f32 [%r34],%r30; .loc 1 46 27 neg.f32 %r58,%r32; .loc 1 47 9 st.f32 [%r34+4],%r58; .loc 1 48 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-ccosh.o/ 0 0 0 644 2702 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccosh .visible .func ccosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ccosh.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccosh .visible .func ccosh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 79 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 79 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sin,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 79 34 mul.f64 %r30,%r41,%r43; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 79 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cos,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 79 23 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 80 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 81 1 ret; } lib_a-ccoshf.o/ 0 0 0 644 2717 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccoshf .visible .func ccoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ccoshf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccoshf .visible .func ccoshf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r27; .reg .f32 %r30; .reg .u64 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r47; .reg .f32 %r48; mov.u64 %r31,%ar0; mov.f32 %r32,%ar1; mov.f32 %r33,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r36,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } .loc 1 46 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r41,[%value_in]; } .loc 1 46 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r43,[%value_in]; } .loc 1 46 37 mul.f32 %r30,%r41,%r43; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 46 17 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 46 25 mul.f32 %r48,%r30,0f00000000; fma.rn.f32 %r27,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r27; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-ccoshl.o/ 0 0 0 644 2725 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccoshl .visible .func ccoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ccoshl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ccoshl .visible .func ccoshl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 43 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 43 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 43 37 mul.f64 %r30,%r41,%r43; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 43 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 43 25 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 44 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 45 1 ret; } lib_a-ccosl.o/ 0 0 0 644 3387 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ccosl .visible .func ccosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ccosl.c" // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshl .extern .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: ccosl .visible .func ccosl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r30; .reg .f64 %r32; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .u64 %r43; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 42 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } add.u64 %r43,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshl,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 43 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 43 46 ld.f64 %r49,[%frame]; mul.f64 %r32,%r48,%r49; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r52,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 43 27 mul.f64 %r56,%r32,0d8000000000000000; ld.f64 %r57,[%frame+8]; fma.rn.f64 %r30,%r54,%r57,%r56; .loc 1 44 9 st.f64 [%r34],%r30; .loc 1 43 27 neg.f64 %r58,%r32; .loc 1 44 9 st.f64 [%r34+8],%r58; .loc 1 45 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-ceill.o/ 0 0 0 644 538 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ceill .visible .func (.param .f64 %value_out) ceill (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/ceill.c" // BEGIN GLOBAL FUNCTION DEF: ceill .visible .func (.param .f64 %value_out) ceill (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rpi.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } /0 0 0 0 644 7268 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _cchsh .visible .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cephes_subr.c" // BEGIN GLOBAL FUNCTION DECL: _redupi .visible .func (.param .f64 %value_out) _redupi (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctans .visible .func (.param .f64 %value_out) _ctans (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _cchsh .visible .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; mov.f64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 46 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r34,[%value_in]; } .loc 1 46 5 setp.le.f64 %r35,%r34,0d3fe0000000000000; @ ! %r35 bra $L6; .loc 1 47 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r37,[%value_in]; } .loc 1 47 6 st.f64 [%r31],%r37; .loc 1 48 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r39,[%value_in]; } .loc 1 48 6 st.f64 [%r32],%r39; bra $L1; $L6: .loc 1 50 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),exp,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 51 6 mov.f64 %r42,0d3fe0000000000000; div.rn.f64 %r28,%r42,%r41; .loc 1 53 10 neg.f64 %r43,%r28; fma.rn.f64 %r25,%r41,0d3fe0000000000000,%r43; .loc 1 53 6 st.f64 [%r32],%r25; .loc 1 54 10 fma.rn.f64 %r26,%r41,0d3fe0000000000000,%r28; .loc 1 54 6 st.f64 [%r31],%r26; $L1: .loc 1 56 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _redupi .visible .func (.param .f64 %value_out) _redupi (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r32; .reg .pred %r33; .reg .f64 %r34; mov.f64 %r32,%ar0; .loc 1 72 4 div.rn.f64 %r25,%r32,0d400921fb54442d18; .loc 1 73 5 setp.ge.f64 %r33,%r25,0d0000000000000000; @ ! %r33 bra $L12; .loc 1 74 5 add.f64 %r24,%r25,0d3fe0000000000000; bra $L10; $L12: .loc 1 76 5 mov.f64 %r34,0d3fe0000000000000; sub.f64 %r24,%r25,%r34; $L10: .loc 1 78 4 cvt.rzi.s64.f64 %r26,%r24; .loc 1 79 4 cvt.rn.f64.s64 %r27,%r26; .loc 1 80 10 fma.rn.f64 %r22,%r27,0dc00921fb54000000,%r32; .loc 1 80 21 fma.rn.f64 %r23,%r27,0dbe210b4610000000,%r22; .loc 1 80 4 fma.rn.f64 %value,%r27,0dbc6a62633145c06e,%r23; .loc 1 82 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ctans .visible .func (.param .f64 %value_out) _ctans (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .pred %r74; .reg .f64 %r75; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .pred %r82; mov.f64 %r60,%ar0; mov.f64 %r61,%ar1; .loc 1 92 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 92 6 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 93 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 93 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 72 4 div.rn.f64 %r49,%r67,0d400921fb54442d18; .loc 1 73 5 setp.ge.f64 %r74,%r49,0d0000000000000000; @ ! %r74 bra $L20; .loc 1 74 5 add.f64 %r50,%r49,0d3fe0000000000000; bra $L16; $L20: .loc 1 76 5 mov.f64 %r75,0d3fe0000000000000; sub.f64 %r50,%r49,%r75; $L16: .loc 1 78 4 cvt.rzi.s64.f64 %r51,%r50; .loc 1 79 4 cvt.rn.f64.s64 %r52,%r51; .loc 1 80 10 fma.rn.f64 %r53,%r52,0dc00921fb54000000,%r67; .loc 1 80 21 fma.rn.f64 %r54,%r52,0dbe210b4610000000,%r53; .loc 1 80 4 fma.rn.f64 %r55,%r52,0dbc6a62633145c06e,%r54; .loc 1 97 4 mul.f64 %r34,%r55,%r55; .loc 1 98 4 mul.f64 %r35,%r73,%r73; .loc 1 103 4 mov.f64 %r59,0d0000000000000000; .loc 1 102 5 mov.f64 %r31,%r59; .loc 1 100 5 mov.f64 %r30,0d3ff0000000000000; .loc 1 99 5 mov.f64 %r29,%r30; .loc 1 101 4 mov.f64 %r28,%r30; $L17: .loc 1 105 6 add.f64 %r36,%r31,0d3ff0000000000000; .loc 1 106 5 mul.f64 %r37,%r28,%r36; .loc 1 107 6 add.f64 %r38,%r36,0d3ff0000000000000; .loc 1 108 5 mul.f64 %r39,%r37,%r38; .loc 1 109 6 mul.f64 %r40,%r29,%r34; .loc 1 110 6 mul.f64 %r41,%r30,%r35; .loc 1 111 5 add.f64 %r42,%r40,%r41; .loc 1 112 5 div.rn.f64 %r78,%r42,%r39; .loc 1 113 5 add.f64 %r44,%r78,%r59; .loc 1 115 6 add.f64 %r45,%r38,0d3ff0000000000000; .loc 1 116 5 mul.f64 %r46,%r39,%r45; .loc 1 117 6 add.f64 %r31,%r45,0d3ff0000000000000; .loc 1 118 5 mul.f64 %r28,%r46,%r31; .loc 1 119 6 mul.f64 %r29,%r34,%r40; .loc 1 120 6 mul.f64 %r30,%r35,%r41; .loc 1 121 5 sub.f64 %r47,%r30,%r29; .loc 1 122 5 div.rn.f64 %r48,%r47,%r28; .loc 1 123 5 add.f64 %r59,%r44,%r48; .loc 1 124 11 div.rn.f64 %r80,%r48,%r59; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 124 21 setp.gt.f64 %r82,%r81,0d3c9fb49140a1644f; @ %r82 bra $L17; .loc 1 126 1 mov.f64 %value,%r59; st.param.f64 [%value_out],%value; ret; } /21 0 0 0 644 7488 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _cchshf .visible .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cephes_subrf.c" // BEGIN GLOBAL FUNCTION DECL: _redupif .visible .func (.param .f32 %value_out) _redupif (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansf .visible .func (.param .f32 %value_out) _ctansf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expf .extern .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _cchshf .visible .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .f32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .f32 %r34; .reg .pred %r35; .reg .f32 %r37; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; mov.f32 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r34,[%value_in]; } .loc 1 46 5 setp.le.f32 %r35,%r34,0f3f000000; @ ! %r35 bra $L6; .loc 1 47 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } .loc 1 47 6 st.f32 [%r31],%r37; .loc 1 48 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r39,[%value_in]; } .loc 1 48 6 st.f32 [%r32],%r39; bra $L1; $L6: .loc 1 50 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),expf,(%out_arg1); ld.param.f32 %r41,[%value_in]; } .loc 1 51 6 mov.f32 %r42,0f3f000000; div.rn.f32 %r28,%r42,%r41; .loc 1 53 10 neg.f32 %r43,%r28; fma.rn.f32 %r25,%r41,0f3f000000,%r43; .loc 1 53 6 st.f32 [%r32],%r25; .loc 1 54 10 fma.rn.f32 %r26,%r41,0f3f000000,%r28; .loc 1 54 6 st.f32 [%r31],%r26; $L1: .loc 1 56 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _redupif .visible .func (.param .f32 %value_out) _redupif (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r35; .reg .pred %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f64 %r40; mov.f32 %r35,%ar0; .loc 1 72 4 div.rn.f32 %r28,%r35,0f40490fdb; .loc 1 73 5 setp.ge.f32 %r36,%r28,0f00000000; @ ! %r36 bra $L12; .loc 1 74 5 add.f32 %r27,%r28,0f3f000000; bra $L10; $L12: .loc 1 76 5 mov.f32 %r37,0f3f000000; sub.f32 %r27,%r28,%r37; $L10: .loc 1 78 4 cvt.rzi.s64.f32 %r29,%r27; .loc 1 79 4 cvt.rn.f32.s64 %r38,%r29; .loc 1 80 14 cvt.f64.f32 %r23,%r38; .loc 1 80 10 cvt.f64.f32 %r40,%r35; fma.rn.f64 %r24,%r23,0dc009200000000000,%r40; .loc 1 80 21 fma.rn.f64 %r25,%r23,0dbf4fb40000000000,%r24; .loc 1 80 32 fma.rn.f64 %r26,%r23,0dbe84442d18469899,%r25; .loc 1 80 4 cvt.rn.f32.f64 %value,%r26; .loc 1 82 1 st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ctansf .visible .func (.param .f32 %value_out) _ctansf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .u64 %r52; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f32 %r59; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r68; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r74; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f64 %r82; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .f64 %r89; .reg .pred %r90; mov.f32 %r64,%ar0; mov.f32 %r65,%ar1; .loc 1 91 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r68,[%value_in]; } .loc 1 91 6 add.f32 %r70,%r68,%r68; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } .loc 1 92 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r65; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r74,[%value_in]; } .loc 1 92 6 add.f32 %r76,%r74,%r74; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r76; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r77,[%value_in]; } .loc 1 72 4 div.rn.f32 %r50,%r71,0f40490fdb; .loc 1 73 5 setp.ge.f32 %r78,%r50,0f00000000; @ ! %r78 bra $L20; .loc 1 74 5 add.f32 %r51,%r50,0f3f000000; bra $L16; $L20: .loc 1 76 5 mov.f32 %r79,0f3f000000; sub.f32 %r51,%r50,%r79; $L16: .loc 1 78 4 cvt.rzi.s64.f32 %r52,%r51; .loc 1 79 4 cvt.rn.f32.s64 %r80,%r52; .loc 1 80 14 cvt.f64.f32 %r55,%r80; .loc 1 80 10 cvt.f64.f32 %r82,%r71; fma.rn.f64 %r56,%r55,0dc009200000000000,%r82; .loc 1 80 21 fma.rn.f64 %r57,%r55,0dbf4fb40000000000,%r56; .loc 1 80 32 fma.rn.f64 %r58,%r55,0dbe84442d18469899,%r57; .loc 1 80 4 cvt.rn.f32.f64 %r59,%r58; .loc 1 96 4 mul.f32 %r35,%r59,%r59; .loc 1 97 4 mul.f32 %r36,%r77,%r77; .loc 1 102 4 mov.f32 %r63,0f00000000; .loc 1 101 5 mov.f32 %r32,%r63; .loc 1 99 5 mov.f32 %r31,0f3f800000; .loc 1 98 5 mov.f32 %r30,%r31; .loc 1 100 4 mov.f32 %r29,%r31; $L17: .loc 1 104 6 add.f32 %r37,%r32,0f3f800000; .loc 1 105 5 mul.f32 %r38,%r29,%r37; .loc 1 106 6 add.f32 %r39,%r37,0f3f800000; .loc 1 107 5 mul.f32 %r40,%r38,%r39; .loc 1 108 6 mul.f32 %r41,%r30,%r35; .loc 1 109 6 mul.f32 %r42,%r31,%r36; .loc 1 110 5 add.f32 %r43,%r41,%r42; .loc 1 111 5 div.rn.f32 %r85,%r43,%r40; .loc 1 112 5 add.f32 %r45,%r85,%r63; .loc 1 114 6 add.f32 %r46,%r39,0f3f800000; .loc 1 115 5 mul.f32 %r47,%r40,%r46; .loc 1 116 6 add.f32 %r32,%r46,0f3f800000; .loc 1 117 5 mul.f32 %r29,%r47,%r32; .loc 1 118 6 mul.f32 %r30,%r35,%r41; .loc 1 119 6 mul.f32 %r31,%r36,%r42; .loc 1 120 5 sub.f32 %r48,%r31,%r30; .loc 1 121 5 div.rn.f32 %r49,%r48,%r29; .loc 1 122 5 add.f32 %r63,%r45,%r49; .loc 1 123 11 div.rn.f32 %r87,%r49,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } cvt.f64.f32 %r89,%r88; .loc 1 123 22 setp.gt.f64 %r90,%r89,0d3e601b2b29a4692b; @ %r90 bra $L17; .loc 1 125 1 mov.f32 %value,%r63; st.param.f32 [%value_out],%value; ret; } /43 0 0 0 644 7304 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _cchshl .visible .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cephes_subrl.c" // BEGIN GLOBAL FUNCTION DECL: _redupil .visible .func (.param .f64 %value_out) _redupil (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansl .visible .func (.param .f64 %value_out) _ctansl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsl .extern .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expl .extern .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _cchshl .visible .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; mov.f64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r34,[%value_in]; } .loc 1 43 5 setp.le.f64 %r35,%r34,0d3fe0000000000000; @ ! %r35 bra $L6; .loc 1 44 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r37,[%value_in]; } .loc 1 44 6 st.f64 [%r31],%r37; .loc 1 45 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r39,[%value_in]; } .loc 1 45 6 st.f64 [%r32],%r39; bra $L1; $L6: .loc 1 47 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),expl,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 48 6 mov.f64 %r42,0d3fe0000000000000; div.rn.f64 %r28,%r42,%r41; .loc 1 50 10 neg.f64 %r43,%r28; fma.rn.f64 %r25,%r41,0d3fe0000000000000,%r43; .loc 1 50 6 st.f64 [%r32],%r25; .loc 1 51 10 fma.rn.f64 %r26,%r41,0d3fe0000000000000,%r28; .loc 1 51 6 st.f64 [%r31],%r26; $L1: .loc 1 53 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _redupil .visible .func (.param .f64 %value_out) _redupil (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r32; .reg .pred %r33; .reg .f64 %r34; mov.f64 %r32,%ar0; .loc 1 74 4 div.rn.f64 %r25,%r32,0d400921fb54442d18; .loc 1 75 5 setp.ge.f64 %r33,%r25,0d0000000000000000; @ ! %r33 bra $L12; .loc 1 76 5 add.f64 %r24,%r25,0d3fe0000000000000; bra $L10; $L12: .loc 1 78 5 mov.f64 %r34,0d3fe0000000000000; sub.f64 %r24,%r25,%r34; $L10: .loc 1 80 4 cvt.rzi.s64.f64 %r26,%r24; .loc 1 81 4 cvt.rn.f64.s64 %r27,%r26; .loc 1 82 10 fma.rn.f64 %r22,%r27,0dc00921fb54442d18,%r32; .loc 1 82 21 fma.rn.f64 %r23,%r27,0dbc0898cc51701b84,%r22; .loc 1 82 4 fma.rn.f64 %value,%r27,0db7e48127044533e6,%r23; .loc 1 84 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ctansl .visible .func (.param .f64 %value_out) _ctansl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .pred %r74; .reg .f64 %r75; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .pred %r82; mov.f64 %r60,%ar0; mov.f64 %r61,%ar1; .loc 1 94 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 94 6 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 95 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 95 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 74 4 div.rn.f64 %r49,%r67,0d400921fb54442d18; .loc 1 75 5 setp.ge.f64 %r74,%r49,0d0000000000000000; @ ! %r74 bra $L20; .loc 1 76 5 add.f64 %r50,%r49,0d3fe0000000000000; bra $L16; $L20: .loc 1 78 5 mov.f64 %r75,0d3fe0000000000000; sub.f64 %r50,%r49,%r75; $L16: .loc 1 80 4 cvt.rzi.s64.f64 %r51,%r50; .loc 1 81 4 cvt.rn.f64.s64 %r52,%r51; .loc 1 82 10 fma.rn.f64 %r53,%r52,0dc00921fb54442d18,%r67; .loc 1 82 21 fma.rn.f64 %r54,%r52,0dbc0898cc51701b84,%r53; .loc 1 82 4 fma.rn.f64 %r55,%r52,0db7e48127044533e6,%r54; .loc 1 99 4 mul.f64 %r34,%r55,%r55; .loc 1 100 4 mul.f64 %r35,%r73,%r73; .loc 1 105 4 mov.f64 %r59,0d0000000000000000; .loc 1 104 5 mov.f64 %r31,%r59; .loc 1 102 5 mov.f64 %r30,0d3ff0000000000000; .loc 1 101 5 mov.f64 %r29,%r30; .loc 1 103 4 mov.f64 %r28,%r30; $L17: .loc 1 107 6 add.f64 %r36,%r31,0d3ff0000000000000; .loc 1 108 5 mul.f64 %r37,%r28,%r36; .loc 1 109 6 add.f64 %r38,%r36,0d3ff0000000000000; .loc 1 110 5 mul.f64 %r39,%r37,%r38; .loc 1 111 6 mul.f64 %r40,%r29,%r34; .loc 1 112 6 mul.f64 %r41,%r30,%r35; .loc 1 113 5 add.f64 %r42,%r40,%r41; .loc 1 114 5 div.rn.f64 %r78,%r42,%r39; .loc 1 115 5 add.f64 %r44,%r78,%r59; .loc 1 117 6 add.f64 %r45,%r38,0d3ff0000000000000; .loc 1 118 5 mul.f64 %r46,%r39,%r45; .loc 1 119 6 add.f64 %r31,%r45,0d3ff0000000000000; .loc 1 120 5 mul.f64 %r28,%r46,%r31; .loc 1 121 6 mul.f64 %r29,%r34,%r40; .loc 1 122 6 mul.f64 %r30,%r35,%r41; .loc 1 123 5 sub.f64 %r47,%r30,%r29; .loc 1 124 5 div.rn.f64 %r48,%r47,%r28; .loc 1 125 5 add.f64 %r59,%r44,%r48; .loc 1 126 11 div.rn.f64 %r80,%r48,%r59; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 126 22 setp.gt.f64 %r82,%r81,0d380df1e193d51e95; @ %r82 bra $L17; .loc 1 128 1 mov.f64 %value,%r59; st.param.f64 [%value_out],%value; ret; } lib_a-cexp.o/ 0 0 0 644 2415 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cexp .visible .func cexp (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cexp.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cexp .visible .func cexp (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r29; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),exp,(%out_arg1); ld.param.f64 %r40,[%value_in]; } .loc 1 80 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sin,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 80 21 mul.f64 %r29,%r42,%r40; .loc 1 80 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),cos,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 80 17 mul.f64 %r45,%r29,0d0000000000000000; fma.rn.f64 %r25,%r44,%r40,%r45; .loc 1 81 9 st.f64 [%r30],%r25; st.f64 [%r30+8],%r29; .loc 1 82 1 ret; } lib_a-cexpf.o/ 0 0 0 644 2427 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cexpf .visible .func cexpf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cexpf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expf .extern .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cexpf .visible .func cexpf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r25; .reg .f32 %r29; .reg .u64 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r40; .reg .f32 %r42; .reg .f32 %r44; .reg .f32 %r45; mov.u64 %r30,%ar0; mov.f32 %r31,%ar1; mov.f32 %r32,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r32; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r35,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r32; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r38,[%value_in]; } .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),expf,(%out_arg1); ld.param.f32 %r40,[%value_in]; } .loc 1 47 24 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r42,[%value_in]; } .loc 1 47 22 mul.f32 %r29,%r42,%r40; .loc 1 47 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 47 18 mul.f32 %r45,%r29,0f00000000; fma.rn.f32 %r25,%r44,%r40,%r45; .loc 1 48 9 st.f32 [%r30],%r25; st.f32 [%r30+4],%r29; .loc 1 49 1 ret; } lib_a-cexpl.o/ 0 0 0 644 2435 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cexpl .visible .func cexpl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cexpl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expl .extern .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cexpl .visible .func cexpl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r29; .reg .u64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r45; mov.u64 %r30,%ar0; mov.f64 %r31,%ar1; mov.f64 %r32,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r35,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),expl,(%out_arg1); ld.param.f64 %r40,[%value_in]; } .loc 1 44 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 44 22 mul.f64 %r29,%r42,%r40; .loc 1 44 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 44 18 mul.f64 %r45,%r29,0d0000000000000000; fma.rn.f64 %r25,%r44,%r40,%r45; .loc 1 45 9 st.f64 [%r30],%r25; st.f64 [%r30+8],%r29; .loc 1 46 1 ret; } lib_a-cimag.o/ 0 0 0 644 570 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cimag .visible .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cimag.c" // BEGIN GLOBAL FUNCTION DEF: cimag .visible .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar1; .loc 1 59 1 st.param.f64 [%value_out],%value; ret; } lib_a-cimagf.o/ 0 0 0 644 575 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cimagf .visible .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cimagf.c" // BEGIN GLOBAL FUNCTION DEF: cimagf .visible .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; mov.f32 %value,%ar1; .loc 1 20 1 st.param.f32 [%value_out],%value; ret; } lib_a-cimagl.o/ 0 0 0 644 575 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cimagl .visible .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/cimagl.c" // BEGIN GLOBAL FUNCTION DEF: cimagl .visible .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar1; .loc 1 16 1 st.param.f64 [%value_out],%value; ret; } lib_a-clog.o/ 0 0 0 644 2474 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clog .visible .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/clog.c" // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clog .visible .func clog (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r24; .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r44; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 86 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 87 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),log,(%out_arg1); ld.param.f64 %r35,[%value_in]; } .loc 1 88 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 89 8 fma.rn.f64 %r24,%r44,0d0000000000000000,%r35; .loc 1 90 9 st.f64 [%r28],%r24; st.f64 [%r28+8],%r44; .loc 1 91 1 ret; } lib_a-clog10.o/ 0 0 0 644 2556 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clog10 .visible .func clog10 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/clog10.c" // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: log10 .extern .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2 .extern .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clog10 .visible .func clog10 (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r28; .reg .u64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r34; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r45; mov.u64 %r29,%ar0; mov.f64 %r30,%ar1; mov.f64 %r31,%ar2; .loc 1 41 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r34,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),log10,(%out_arg1); ld.param.f64 %r36,[%value_in]; } .loc 1 43 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r31; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),atan2,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } .loc 1 43 5 mul.f64 %r28,%r45,0d3fdbcb7b1526e50e; .loc 1 44 8 fma.rn.f64 %r25,%r28,0d0000000000000000,%r36; .loc 1 45 9 st.f64 [%r29],%r25; st.f64 [%r29+8],%r28; .loc 1 46 1 ret; } lib_a-clog10f.o/0 0 0 644 2560 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clog10f .visible .func clog10f (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/clog10f.c" // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: log10f .extern .func (.param .f32 %value_out) log10f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clog10f .visible .func clog10f (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r25; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r42; .reg .f32 %r45; mov.u64 %r29,%ar0; mov.f32 %r30,%ar1; mov.f32 %r31,%ar2; .loc 1 10 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r34,[%value_in]; } .loc 1 11 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),log10f,(%out_arg1); ld.param.f32 %r36,[%value_in]; } .loc 1 12 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r31; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } .loc 1 12 5 mul.f32 %r28,%r45,0f3ede5bd9; .loc 1 13 8 fma.rn.f32 %r25,%r28,0f00000000,%r36; .loc 1 14 9 st.f32 [%r29],%r25; st.f32 [%r29+4],%r28; .loc 1 15 1 ret; } lib_a-clogf.o/ 0 0 0 644 2486 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clogf .visible .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/clogf.c" // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2f .extern .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clogf .visible .func clogf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r24; .reg .u64 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r44; mov.u64 %r28,%ar0; mov.f32 %r29,%ar1; mov.f32 %r30,%ar2; .loc 1 44 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),logf,(%out_arg1); ld.param.f32 %r35,[%value_in]; } .loc 1 46 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r38,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r38; call (%value_in),atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } .loc 1 47 8 fma.rn.f32 %r24,%r44,0f00000000,%r35; .loc 1 48 9 st.f32 [%r28],%r24; st.f32 [%r28+4],%r44; .loc 1 49 1 ret; } lib_a-clogl.o/ 0 0 0 644 2494 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clogl .visible .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/clogl.c" // BEGIN GLOBAL FUNCTION DECL: cabsl .extern .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: logl .extern .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: atan2l .extern .func (.param .f64 %value_out) atan2l (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clogl .visible .func clogl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r24; .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r44; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 41 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cabsl,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),logl,(%out_arg1); ld.param.f64 %r35,[%value_in]; } .loc 1 43 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; call (%value_in),atan2l,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 44 8 fma.rn.f64 %r24,%r44,0d0000000000000000,%r35; .loc 1 45 9 st.f64 [%r28],%r24; st.f64 [%r28+8],%r44; .loc 1 46 1 ret; } lib_a-conj.o/ 0 0 0 644 1166 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: conj .visible .func conj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/conj.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: conj .visible .func conj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; mov.u64 %r26,%ar0; mov.f64 %r27,%ar1; mov.f64 %r28,%ar2; .loc 1 52 17 neg.f64 %r29,%r28; .loc 1 54 11 st.f64 [%r26],%r27; st.f64 [%r26+8],%r29; .loc 1 55 1 ret; } lib_a-conjf.o/ 0 0 0 644 1171 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: conjf .visible .func conjf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/conjf.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: conjf .visible .func conjf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u64 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; mov.u64 %r26,%ar0; mov.f32 %r27,%ar1; mov.f32 %r28,%ar2; .loc 1 19 17 neg.f32 %r29,%r28; .loc 1 21 11 st.f32 [%r26],%r27; st.f32 [%r26+4],%r29; .loc 1 22 1 ret; } lib_a-conjl.o/ 0 0 0 644 1171 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: conjl .visible .func conjl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/conjl.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: conjl .visible .func conjl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; mov.u64 %r26,%ar0; mov.f64 %r27,%ar1; mov.f64 %r28,%ar2; .loc 1 43 17 neg.f64 %r29,%r28; .loc 1 45 11 st.f64 [%r26],%r27; st.f64 [%r26+8],%r29; .loc 1 46 1 ret; } /65 0 0 0 644 682 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysignl .visible .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/copysignl.c" // BEGIN GLOBAL FUNCTION DEF: copysignl .visible .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 copysign.f64 %value,%r24,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-cosf.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-coshl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: coshl .visible .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/coshl.c" // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: coshl .visible .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-cosl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cosl .visible .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/cosl.c" // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: cosl .visible .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),cos,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-cpow.o/ 0 0 0 644 4681 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: cpow .visible .func cpow (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); .file 1 "../../../../../../newlib/libm/complex/cpow.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: carg .extern .func (.param .f64 %value_out) carg (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {0,0 }; // BEGIN GLOBAL FUNCTION DEF: cpow .visible .func cpow (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %ar3; ld.param.f64 %ar3,[%in_ar3]; .reg .f64 %ar4; ld.param.f64 %ar4,[%in_ar4]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r36; .reg .u64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r47; .reg .f64 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; mov.u64 %r37,%ar0; mov.f64 %r38,%ar1; mov.f64 %r39,%ar2; mov.f64 %r40,%ar3; mov.f64 %r41,%ar4; .loc 1 86 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 87 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r47,[%value_in]; } .loc 1 88 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 89 5 setp.neu.f64 %r51,%r50,0d0000000000000000; @ %r51 bra $L2; .loc 1 90 15 ld.const.f64 %r52,[$LC0]; st.f64 [%r37],%r52; ld.const.f64 %r53,[$LC0+8]; st.f64 [%r37+8],%r53; bra $L1; $L2: .loc 1 92 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),carg,(%out_arg1,%out_arg2); ld.param.f64 %r56,[%value_in]; } .loc 1 93 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r30,%r59; .loc 1 94 8 mul.f64 %r31,%r44,%r56; .loc 1 95 5 setp.eq.f64 %r60,%r47,0d0000000000000000; @ %r60 bra $L4; .loc 1 96 15 neg.f64 %r62,%r47; .loc 1 96 11 mul.f64 %r63,%r62,%r56; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),exp,(%out_arg1); ld.param.f64 %r64,[%value_in]; } .loc 1 96 5 mul.f64 %r30,%r30,%r64; .loc 1 97 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),log,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 97 9 fma.rn.f64 %r31,%r66,%r47,%r31; $L4: .loc 1 99 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),sin,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 99 26 mul.f64 %r36,%r68,%r30; .loc 1 99 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),cos,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 99 21 mul.f64 %r71,%r36,0d0000000000000000; fma.rn.f64 %r29,%r70,%r30,%r71; .loc 1 100 9 st.f64 [%r37],%r29; st.f64 [%r37+8],%r36; $L1: .loc 1 101 1 ret; } lib_a-cpowf.o/ 0 0 0 644 4687 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: cpowf .visible .func cpowf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4); .file 1 "../../../../../../newlib/libm/complex/cpowf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cargf .extern .func (.param .f32 %value_out) cargf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expf .extern .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[2] = {0,0 }; // BEGIN GLOBAL FUNCTION DEF: cpowf .visible .func cpowf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2, .param .f32 %in_ar3, .param .f32 %in_ar4) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %ar3; ld.param.f32 %ar3,[%in_ar3]; .reg .f32 %ar4; ld.param.f32 %ar4,[%in_ar4]; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r36; .reg .u64 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r47; .reg .f32 %r50; .reg .pred %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r56; .reg .f32 %r59; .reg .pred %r60; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r68; .reg .f32 %r70; .reg .f32 %r71; mov.u64 %r37,%ar0; mov.f32 %r38,%ar1; mov.f32 %r39,%ar2; mov.f32 %r40,%ar3; mov.f32 %r41,%ar4; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r47,[%value_in]; } .loc 1 46 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } .loc 1 47 5 setp.neu.f32 %r51,%r50,0f00000000; @ %r51 bra $L2; .loc 1 48 16 ld.const.f32 %r52,[$LC0]; st.f32 [%r37],%r52; ld.const.f32 %r53,[$LC0+4]; st.f32 [%r37+4],%r53; bra $L1; $L2: .loc 1 50 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),cargf,(%out_arg1,%out_arg2); ld.param.f32 %r56,[%value_in]; } .loc 1 51 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r44; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } mov.f32 %r30,%r59; .loc 1 52 8 mul.f32 %r31,%r44,%r56; .loc 1 53 5 setp.eq.f32 %r60,%r47,0f00000000; @ %r60 bra $L4; .loc 1 54 16 neg.f32 %r62,%r47; .loc 1 54 11 mul.f32 %r63,%r62,%r56; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),expf,(%out_arg1); ld.param.f32 %r64,[%value_in]; } .loc 1 54 5 mul.f32 %r30,%r30,%r64; .loc 1 55 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),logf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } .loc 1 55 9 fma.rn.f32 %r31,%r66,%r47,%r31; $L4: .loc 1 57 29 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 57 27 mul.f32 %r36,%r68,%r30; .loc 1 57 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r70,[%value_in]; } .loc 1 57 22 mul.f32 %r71,%r36,0f00000000; fma.rn.f32 %r29,%r70,%r30,%r71; .loc 1 58 9 st.f32 [%r37],%r29; st.f32 [%r37+4],%r36; $L1: .loc 1 59 1 ret; } lib_a-cpowl.o/ 0 0 0 644 4711 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: cpowl .visible .func cpowl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4); .file 1 "../../../../../../newlib/libm/complex/cpowl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cabsl .extern .func (.param .f64 %value_out) cabsl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cargl .extern .func (.param .f64 %value_out) cargl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: powl .extern .func (.param .f64 %value_out) powl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: expl .extern .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: logl .extern .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {0,0 }; // BEGIN GLOBAL FUNCTION DEF: cpowl .visible .func cpowl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2, .param .f64 %in_ar3, .param .f64 %in_ar4) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %ar3; ld.param.f64 %ar3,[%in_ar3]; .reg .f64 %ar4; ld.param.f64 %ar4,[%in_ar4]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r36; .reg .u64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r47; .reg .f64 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; mov.u64 %r37,%ar0; mov.f64 %r38,%ar1; mov.f64 %r39,%ar2; mov.f64 %r40,%ar3; mov.f64 %r41,%ar4; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r47,[%value_in]; } .loc 1 43 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),cabsl,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 44 5 setp.neu.f64 %r51,%r50,0d0000000000000000; @ %r51 bra $L2; .loc 1 45 16 ld.const.f64 %r52,[$LC0]; st.f64 [%r37],%r52; ld.const.f64 %r53,[$LC0+8]; st.f64 [%r37+8],%r53; bra $L1; $L2: .loc 1 47 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),cargl,(%out_arg1,%out_arg2); ld.param.f64 %r56,[%value_in]; } .loc 1 48 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; call (%value_in),powl,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r30,%r59; .loc 1 49 8 mul.f64 %r31,%r44,%r56; .loc 1 50 5 setp.eq.f64 %r60,%r47,0d0000000000000000; @ %r60 bra $L4; .loc 1 51 16 neg.f64 %r62,%r47; .loc 1 51 11 mul.f64 %r63,%r62,%r56; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),expl,(%out_arg1); ld.param.f64 %r64,[%value_in]; } .loc 1 51 5 mul.f64 %r30,%r30,%r64; .loc 1 52 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),logl,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 52 9 fma.rn.f64 %r31,%r66,%r47,%r31; $L4: .loc 1 54 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 54 27 mul.f64 %r36,%r68,%r30; .loc 1 54 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 54 22 mul.f64 %r71,%r36,0d0000000000000000; fma.rn.f64 %r29,%r70,%r30,%r71; .loc 1 55 9 st.f64 [%r37],%r29; st.f64 [%r37+8],%r36; $L1: .loc 1 56 1 ret; } lib_a-cproj.o/ 0 0 0 644 2992 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cproj .visible .func cproj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cproj.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cproj .visible .func cproj (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r45; .reg .f64 %r46; .reg .pred %r47; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 96 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } abs.f64 %r34,%r33; .loc 1 96 5 setp.leu.f64 %r35,%r34,0d7fefffffffffffff; @ %r35 bra $L2; $L4: .loc 1 100 16 mov.f64 %r36,0d7ff0000000000000; st.f64 [%frame],%r36; .loc 1 102 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } mov.f64 %r40,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 105 11 ld.f64 %r29,[%frame]; mov.f64 %r30,%r42; bra $L3; $L2: .loc 1 96 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } abs.f64 %r46,%r45; .loc 1 96 5 setp.leu.f64 %r47,%r46,0d7fefffffffffffff; @ ! %r47 bra $L4; $L3: .loc 1 105 11 st.f64 [%r28],%r29; st.f64 [%r28+8],%r30; .loc 1 106 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cprojf.o/ 0 0 0 644 2970 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cprojf .visible .func cprojf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cprojf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cprojf .visible .func cprojf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r34; .reg .pred %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r42; .reg .f32 %r45; .reg .f32 %r46; .reg .pred %r47; mov.u64 %r28,%ar0; mov.f32 %r29,%ar1; mov.f32 %r30,%ar2; .loc 1 58 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } abs.f32 %r34,%r33; .loc 1 58 5 setp.leu.f32 %r35,%r34,0f7f7fffff; @ %r35 bra $L2; $L4: .loc 1 62 16 mov.f32 %r36,0f7f800000; st.f32 [%frame],%r36; .loc 1 64 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } mov.f32 %r40,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r39; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } .loc 1 67 11 ld.f32 %r29,[%frame]; mov.f32 %r30,%r42; bra $L3; $L2: .loc 1 58 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r30; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } abs.f32 %r46,%r45; .loc 1 58 5 setp.leu.f32 %r47,%r46,0f7f7fffff; @ ! %r47 bra $L4; $L3: .loc 1 67 11 st.f32 [%r28],%r29; st.f32 [%r28+4],%r30; .loc 1 68 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cprojl.o/ 0 0 0 644 3002 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cprojl .visible .func cprojl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/cprojl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysignl .extern .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cprojl .visible .func cprojl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r34; .reg .pred %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r42; .reg .f64 %r45; .reg .f64 %r46; .reg .pred %r47; mov.u64 %r28,%ar0; mov.f64 %r29,%ar1; mov.f64 %r30,%ar2; .loc 1 54 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } abs.f64 %r34,%r33; .loc 1 54 5 setp.leu.f64 %r35,%r34,0d7fefffffffffffff; @ %r35 bra $L2; $L4: .loc 1 58 16 mov.f64 %r36,0d7ff0000000000000; st.f64 [%frame],%r36; .loc 1 60 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } mov.f64 %r40,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 63 11 ld.f64 %r29,[%frame]; mov.f64 %r30,%r42; bra $L3; $L2: .loc 1 54 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r30; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } abs.f64 %r46,%r45; .loc 1 54 5 setp.leu.f64 %r47,%r46,0d7fefffffffffffff; @ ! %r47 bra $L4; $L3: .loc 1 63 11 st.f64 [%r28],%r29; st.f64 [%r28+8],%r30; .loc 1 64 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-creal.o/ 0 0 0 644 570 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: creal .visible .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/creal.c" // BEGIN GLOBAL FUNCTION DEF: creal .visible .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar0; .loc 1 59 1 st.param.f64 [%value_out],%value; ret; } lib_a-crealf.o/ 0 0 0 644 575 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: crealf .visible .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/crealf.c" // BEGIN GLOBAL FUNCTION DEF: crealf .visible .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; mov.f32 %value,%ar0; .loc 1 20 1 st.param.f32 [%value_out],%value; ret; } lib_a-creall.o/ 0 0 0 644 575 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: creall .visible .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/complex/creall.c" // BEGIN GLOBAL FUNCTION DEF: creall .visible .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; mov.f64 %value,%ar0; .loc 1 16 1 st.param.f64 [%value_out],%value; ret; } lib_a-csin.o/ 0 0 0 644 3306 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csin .visible .func csin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csin.c" // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchsh .extern .func _cchsh (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: csin .visible .func csin (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r30; .reg .f64 %r31; .reg .u64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .u64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; mov.u64 %r32,%ar0; mov.f64 %r33,%ar1; mov.f64 %r34,%ar2; .loc 1 78 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r37,[%value_in]; } add.u64 %r41,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchsh,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 79 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),cos,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 79 42 ld.f64 %r47,[%frame]; mul.f64 %r31,%r46,%r47; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),sin,(%out_arg1); ld.param.f64 %r52,[%value_in]; } .loc 1 79 25 mul.f64 %r53,%r31,0d0000000000000000; ld.f64 %r54,[%frame+8]; fma.rn.f64 %r30,%r52,%r54,%r53; .loc 1 80 9 st.f64 [%r32],%r30; st.f64 [%r32+8],%r31; .loc 1 81 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-csinf.o/ 0 0 0 644 3319 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinf .visible .func csinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csinf.c" // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshf .extern .func _cchshf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: csinf .visible .func csinf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r30; .reg .f32 %r31; .reg .u64 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r37; .reg .u64 %r41; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r50; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; mov.u64 %r32,%ar0; mov.f32 %r33,%ar1; mov.f32 %r34,%ar2; .loc 1 45 2 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r37,[%value_in]; } add.u64 %r41,%frame,4; { .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshf,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 46 30 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r44; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 46 46 ld.f32 %r47,[%frame]; mul.f32 %r31,%r46,%r47; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r52,[%value_in]; } .loc 1 46 27 mul.f32 %r53,%r31,0f00000000; ld.f32 %r54,[%frame+4]; fma.rn.f32 %r30,%r52,%r54,%r53; .loc 1 47 9 st.f32 [%r32],%r30; st.f32 [%r32+4],%r31; .loc 1 48 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-csinh.o/ 0 0 0 644 2702 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinh .visible .func csinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csinh.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinh .visible .func csinh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 76 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 78 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 78 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sin,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 78 34 mul.f64 %r30,%r41,%r43; .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 78 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cos,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 78 23 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 79 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 80 1 ret; } lib_a-csinhf.o/ 0 0 0 644 2717 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinhf .visible .func csinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csinhf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinhf .visible .func csinhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r27; .reg .f32 %r30; .reg .u64 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r47; .reg .f32 %r48; mov.u64 %r31,%ar0; mov.f32 %r32,%ar1; mov.f32 %r33,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r36,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r33; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } .loc 1 46 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r41,[%value_in]; } .loc 1 46 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r43,[%value_in]; } .loc 1 46 37 mul.f32 %r30,%r41,%r43; .loc 1 46 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 46 17 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 46 25 mul.f32 %r48,%r30,0f00000000; fma.rn.f32 %r27,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r27; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-csinhl.o/ 0 0 0 644 2725 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinhl .visible .func csinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csinhl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csinhl .visible .func csinhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r27; .reg .f64 %r30; .reg .u64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r48; mov.u64 %r31,%ar0; mov.f64 %r32,%ar1; mov.f64 %r33,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r36,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r33; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 43 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r41,[%value_in]; } .loc 1 43 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 43 37 mul.f64 %r30,%r41,%r43; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 43 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 43 25 mul.f64 %r48,%r30,0d0000000000000000; fma.rn.f64 %r27,%r45,%r47,%r48; .loc 1 44 9 st.f64 [%r31],%r27; st.f64 [%r31+8],%r30; .loc 1 45 1 ret; } lib_a-csinl.o/ 0 0 0 644 3327 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csinl .visible .func csinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csinl.c" // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cchshl .extern .func _cchshl (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: csinl .visible .func csinl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r30; .reg .f64 %r31; .reg .u64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .u64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; mov.u64 %r32,%ar0; mov.f64 %r33,%ar1; mov.f64 %r34,%ar2; .loc 1 42 2 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r37,[%value_in]; } add.u64 %r41,%frame,8; { .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call _cchshl,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 43 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 43 46 ld.f64 %r47,[%frame]; mul.f64 %r31,%r46,%r47; .loc 1 43 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r52,[%value_in]; } .loc 1 43 27 mul.f64 %r53,%r31,0d0000000000000000; ld.f64 %r54,[%frame+8]; fma.rn.f64 %r30,%r52,%r54,%r53; .loc 1 44 9 st.f64 [%r32],%r30; st.f64 [%r32+8],%r31; .loc 1 45 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-csqrt.o/ 0 0 0 644 6601 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csqrt .visible .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csqrt.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sqrt .extern .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cabs .extern .func (.param .f64 %value_out) cabs (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: csqrt .visible .func csqrt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f64 %r31; .reg .f64 %r33; .reg .f64 %r38; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r65; .reg .u64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .f64 %r78; .reg .f64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .f64 %r84; .reg .f64 %r86; .reg .pred %r87; .reg .f64 %r91; .reg .pred %r92; .reg .f64 %r94; .reg .pred %r95; .reg .f64 %r102; .reg .pred %r103; .reg .f64 %r104; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .pred %r119; mov.u64 %r66,%ar0; mov.f64 %r67,%ar1; mov.f64 %r68,%ar2; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r74,[%value_in]; } .loc 1 82 5 setp.neu.f64 %r75,%r74,0d0000000000000000; @ %r75 bra $L2; .loc 1 83 6 setp.neu.f64 %r76,%r71,0d0000000000000000; @ %r76 bra $L3; .loc 1 84 12 fma.rn.f64 %r45,%r74,0d0000000000000000,0d0000000000000000; .loc 1 84 6 mov.f64 %r46,%r74; bra $L7; $L3: .loc 1 86 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r78,[%value_in]; } .loc 1 87 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r78; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r80,[%value_in]; } .loc 1 88 7 setp.lt.f64 %r81,%r71,0d0000000000000000; @ ! %r81 bra $L26; .loc 1 89 13 fma.rn.f64 %r45,%r80,0d0000000000000000,0d0000000000000000; .loc 1 89 7 mov.f64 %r46,%r80; bra $L7; $L26: .loc 1 91 11 fma.rn.f64 %r45,%r74,0d0000000000000000,%r80; .loc 1 91 7 mov.f64 %r46,%r74; .loc 1 94 10 bra $L7; $L2: .loc 1 96 5 setp.neu.f64 %r82,%r71,0d0000000000000000; @ %r82 bra $L8; .loc 1 97 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 98 7 mul.f64 %r25,%r84,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 99 6 setp.gt.f64 %r87,%r74,0d0000000000000000; @ ! %r87 bra $L27; .loc 1 100 10 fma.rn.f64 %r45,%r86,0d0000000000000000,%r86; .loc 1 100 6 mov.f64 %r46,%r86; bra $L7; $L27: .loc 1 102 10 fma.rn.f64 %r45,%r86,0d8000000000000000,%r86; .loc 1 102 6 neg.f64 %r46,%r86; .loc 1 103 10 bra $L7; $L8: .loc 1 106 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r91,[%value_in]; } .loc 1 106 5 setp.gt.f64 %r92,%r91,0d4010000000000000; @ ! %r92 bra $L28; $L15: .loc 1 107 5 mul.f64 %r47,%r71,0d3fd0000000000000; .loc 1 108 5 mul.f64 %r48,%r74,0d3fd0000000000000; .loc 1 109 9 mov.f64 %r51,0d4000000000000000; bra $L14; $L28: .loc 1 106 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 106 22 setp.gt.f64 %r95,%r94,0d4010000000000000; @ %r95 bra $L15; .loc 1 112 5 mul.f64 %r47,%r71,0d4350000000000000; .loc 1 113 5 mul.f64 %r48,%r74,0d4350000000000000; .loc 1 114 9 mov.f64 %r51,0d3e40000000000000; $L14: .loc 1 121 8 fma.rn.f64 %r31,%r48,0d0000000000000000,%r47; .loc 1 122 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r48; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r102,[%value_in]; } .loc 1 123 5 setp.gt.f64 %r103,%r47,0d0000000000000000; @ ! %r103 bra $L29; .loc 1 124 26 mul.f64 %r104,%r47,0d3fe0000000000000; .loc 1 124 7 fma.rn.f64 %r33,%r102,0d3fe0000000000000,%r104; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 125 25 mul.f64 %r108,%r48,0d3fe0000000000000; .loc 1 125 15 div.rn.f64 %r109,%r108,%r106; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r110,[%value_in]; } .loc 1 125 5 mul.f64 %r49,%r110,%r51; .loc 1 126 5 mul.f64 %r50,%r51,%r106; bra $L18; $L29: .loc 1 128 7 mul.f64 %r112,%r47,0dbfe0000000000000; fma.rn.f64 %r38,%r102,0d3fe0000000000000,%r112; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r114,[%value_in]; } .loc 1 129 25 mul.f64 %r116,%r48,0d3fe0000000000000; .loc 1 129 15 div.rn.f64 %r117,%r116,%r114; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r117; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r118,[%value_in]; } .loc 1 129 5 mul.f64 %r50,%r118,%r51; .loc 1 130 5 mul.f64 %r49,%r51,%r114; $L18: .loc 1 133 9 mul.f64 %r65,%r49,0d0000000000000000; .loc 1 132 5 setp.lt.f64 %r119,%r48,0d0000000000000000; @ ! %r119 bra $L30; .loc 1 133 5 sub.f64 %r45,%r50,%r65; neg.f64 %r46,%r49; bra $L7; $L30: .loc 1 135 9 add.f64 %r45,%r50,%r65; .loc 1 135 5 mov.f64 %r46,%r49; $L7: .loc 1 94 10 st.f64 [%r66],%r45; st.f64 [%r66+8],%r46; .loc 1 137 1 ret; } lib_a-csqrtf.o/ 0 0 0 644 6568 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csqrtf .visible .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csqrtf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sqrtf .extern .func (.param .f32 %value_out) sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cabsf .extern .func (.param .f32 %value_out) cabsf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: csqrtf .visible .func csqrtf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r40; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r68; .reg .u64 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r74; .reg .f32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .f32 %r85; .reg .pred %r86; .reg .f32 %r88; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r95; .reg .pred %r96; .reg .f32 %r98; .reg .pred %r99; .reg .f32 %r106; .reg .pred %r107; .reg .f32 %r108; .reg .f32 %r110; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r116; .reg .f32 %r118; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .pred %r123; mov.u64 %r69,%ar0; mov.f32 %r70,%ar1; mov.f32 %r71,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r71; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r74,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r71; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r77,[%value_in]; } .loc 1 47 5 setp.neu.f32 %r78,%r77,0f00000000; @ %r78 bra $L2; .loc 1 48 6 setp.lt.f32 %r79,%r74,0f00000000; @ ! %r79 bra $L25; .loc 1 49 15 neg.f32 %r81,%r74; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r81; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r82,[%value_in]; } .loc 1 49 13 fma.rn.f32 %r23,%r82,0f00000000,0f00000000; .loc 1 50 11 st.f32 [%r69],%r23; st.f32 [%r69+4],%r82; bra $L1; $L25: .loc 1 51 13 setp.neu.f32 %r83,%r74,0f00000000; @ %r83 bra $L6; .loc 1 52 17 fma.rn.f32 %r24,%r77,0f00000000,0f00000000; st.f32 [%r69],%r24; st.f32 [%r69+4],%r77; bra $L1; $L6: .loc 1 54 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r85,[%value_in]; } .loc 1 54 17 fma.rn.f32 %r26,%r77,0f00000000,%r85; .loc 1 55 11 st.f32 [%r69],%r26; st.f32 [%r69+4],%r77; bra $L1; $L2: .loc 1 59 5 setp.neu.f32 %r86,%r74,0f00000000; @ %r86 bra $L7; .loc 1 60 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } .loc 1 61 7 mul.f32 %r27,%r88,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r90,[%value_in]; } .loc 1 62 6 setp.gt.f32 %r91,%r77,0f00000000; @ ! %r91 bra $L26; .loc 1 63 10 fma.rn.f32 %r47,%r90,0f00000000,%r90; .loc 1 63 6 mov.f32 %r48,%r90; bra $L10; $L26: .loc 1 65 10 fma.rn.f32 %r47,%r90,0f80000000,%r90; .loc 1 65 6 neg.f32 %r48,%r90; $L10: .loc 1 66 10 st.f32 [%r69],%r47; st.f32 [%r69+4],%r48; bra $L1; $L7: .loc 1 70 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r95,[%value_in]; } .loc 1 70 5 setp.gt.f32 %r96,%r95,0f40800000; @ ! %r96 bra $L27; $L14: .loc 1 71 5 mul.f32 %r51,%r74,0f3e800000; .loc 1 72 5 mul.f32 %r52,%r77,0f3e800000; .loc 1 73 9 mov.f32 %r55,0f40000000; bra $L13; $L27: .loc 1 70 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r98,[%value_in]; } .loc 1 70 24 setp.gt.f32 %r99,%r98,0f40800000; @ %r99 bra $L14; .loc 1 76 5 mul.f32 %r51,%r74,0f4c800000; .loc 1 77 5 mul.f32 %r52,%r77,0f4c800000; .loc 1 78 9 mov.f32 %r55,0f39000000; $L13: .loc 1 85 8 fma.rn.f32 %r33,%r52,0f00000000,%r51; .loc 1 86 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r52; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r106,[%value_in]; } .loc 1 87 4 setp.gt.f32 %r107,%r51,0f00000000; @ ! %r107 bra $L28; .loc 1 88 29 mul.f32 %r108,%r51,0f3f000000; .loc 1 88 7 fma.rn.f32 %r35,%r106,0f3f000000,%r108; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r110,[%value_in]; } .loc 1 89 27 mul.f32 %r112,%r52,0f3f000000; .loc 1 89 15 div.rn.f32 %r113,%r112,%r110; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r113; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r114,[%value_in]; } .loc 1 89 5 mul.f32 %r53,%r114,%r55; .loc 1 90 5 mul.f32 %r54,%r55,%r110; bra $L17; $L28: .loc 1 92 7 mul.f32 %r116,%r51,0fbf000000; fma.rn.f32 %r40,%r106,0f3f000000,%r116; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r118,[%value_in]; } .loc 1 93 27 mul.f32 %r120,%r52,0f3f000000; .loc 1 93 15 div.rn.f32 %r121,%r120,%r118; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r121; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r122,[%value_in]; } .loc 1 93 5 mul.f32 %r54,%r122,%r55; .loc 1 94 5 mul.f32 %r53,%r55,%r118; $L17: .loc 1 98 9 mul.f32 %r68,%r53,0f00000000; .loc 1 97 5 setp.lt.f32 %r123,%r52,0f00000000; @ ! %r123 bra $L29; .loc 1 98 5 sub.f32 %r49,%r54,%r68; neg.f32 %r50,%r53; bra $L20; $L29: .loc 1 100 9 add.f32 %r49,%r54,%r68; .loc 1 100 5 mov.f32 %r50,%r53; $L20: .loc 1 101 9 st.f32 [%r69],%r49; st.f32 [%r69+4],%r50; $L1: .loc 1 102 1 ret; } lib_a-csqrtl.o/ 0 0 0 644 7087 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: csqrtl .visible .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/csqrtl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: copysignl .extern .func (.param .f64 %value_out) copysignl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsl .extern .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: hypotl .extern .func (.param .f64 %value_out) hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sqrtl .extern .func (.param .f64 %value_out) sqrtl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: csqrtl .visible .func csqrtl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .f64 %r24; .reg .f64 %r42; .reg .f64 %r43; .reg .u32 %r44; .reg .f64 %r45; .reg .u64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r58; .reg .f64 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u32 %r71; .reg .f64 %r73; .reg .pred %r74; .reg .pred %r75; .reg .f64 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .f64 %r85; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r94; .reg .pred %r95; .reg .f64 %r97; .reg .pred %r98; .reg .pred %r99; .reg .f64 %r102; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .pred %r123; .reg .u16 %r124; mov.u64 %r53,%ar0; mov.f64 %r54,%ar1; mov.f64 %r55,%ar2; .loc 1 60 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r55; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r58,[%value_in]; } mov.f64 %r42,%r58; .loc 1 61 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r55; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r61,[%value_in]; } mov.f64 %r45,%r61; .loc 1 64 5 set.u32.eq.f64 %r63,%r54,0d0000000000000000; neg.s32 %r64,%r63; mov.u32 %r62,%r64; set.u32.eq.f64 %r66,%r55,0d0000000000000000; neg.s32 %r67,%r66; mov.u32 %r65,%r67; cvt.u16.u8 %r124,%r62; mov.u16 %r69,%r124; cvt.u16.u8 %r124,%r65; mov.u16 %r70,%r124; and.b16 %r68,%r69,%r70; cvt.u32.u16 %r71,%r68; cvt.u32.u8 %r44,%r71; setp.eq.u32 %r123,%r44,0; @ %r123 bra $L2; .loc 1 65 11 fma.rn.f64 %r22,%r45,0d0000000000000000,0d0000000000000000; bra $L3; $L2: .loc 1 66 6 abs.f64 %r73,%r45; .loc 1 66 5 setp.leu.f64 %r74,%r73,0d7fefffffffffffff; @ %r74 bra $L4; .loc 1 67 11 fma.rn.f64 %r22,%r45,0d0000000000000000,0d7ff0000000000000; bra $L3; $L4: .loc 1 68 5 setp.num.f64 %r75,%r58,%r58; @ %r75 bra $L5; .loc 1 69 10 sub.f64 %r24,%r45,%r45; .loc 1 69 5 div.rn.f64 %r45,%r24,%r24; .loc 1 70 11 fma.rn.f64 %r22,%r45,0d0000000000000000,%r58; bra $L3; $L5: .loc 1 72 6 abs.f64 %r76,%r58; .loc 1 72 5 setp.leu.f64 %r77,%r76,0d7fefffffffffffff; @ %r77 bra $L6; .loc 1 79 7 mov.b64 %r78,%r58; shr.u64 %r79,%r78,63; cvt.u32.u64 %r81,%r79; .loc 1 79 6 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L7; .loc 1 80 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r45; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } sub.f64 %r87,%r45,%r45; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r87; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r88,[%value_in]; } fma.rn.f64 %r22,%r85,0d0000000000000000,%r88; mov.f64 %r45,%r85; bra $L3; $L7: .loc 1 82 12 sub.f64 %r91,%r45,%r45; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r91; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r45; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r92,[%value_in]; } mov.f64 %r45,%r92; fma.rn.f64 %r22,%r45,0d0000000000000000,%r58; bra $L3; $L6: .loc 1 90 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 90 5 setp.ge.f64 %r95,%r94,0d7fda827999fcef32; @ ! %r95 bra $L17; $L11: .loc 1 91 5 mul.f64 %r42,%r58,0d3fd0000000000000; .loc 1 92 5 mul.f64 %r43,%r61,0d3fd0000000000000; setp.eq.u32 %r123,1,0; .loc 1 93 9 bra $L10; $L17: .loc 1 90 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r97,[%value_in]; } .loc 1 90 25 setp.ge.f64 %r98,%r97,0d7fda827999fcef32; @ %r98 bra $L11; .loc 1 61 6 mov.f64 %r43,%r61; $L10: .loc 1 99 5 setp.ge.f64 %r99,%r42,0d0000000000000000; @ ! %r99 bra $L18; .loc 1 100 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),hypotl,(%out_arg1,%out_arg2); ld.param.f64 %r102,[%value_in]; } .loc 1 100 16 add.f64 %r104,%r102,%r42; .loc 1 100 7 mul.f64 %r105,%r104,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r105; call (%value_in),sqrtl,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 101 12 add.f64 %r107,%r106,%r106; div.rn.f64 %r45,%r43,%r107; fma.rn.f64 %r22,%r45,0d0000000000000000,%r106; bra $L14; $L18: .loc 1 103 19 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),hypotl,(%out_arg1,%out_arg2); ld.param.f64 %r110,[%value_in]; } .loc 1 103 17 sub.f64 %r112,%r110,%r42; .loc 1 103 7 mul.f64 %r113,%r112,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r113; call (%value_in),sqrtl,(%out_arg1); ld.param.f64 %r114,[%value_in]; } .loc 1 104 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r114; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),copysignl,(%out_arg1,%out_arg2); ld.param.f64 %r117,[%value_in]; } mov.f64 %r45,%r117; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r119,[%value_in]; } add.f64 %r120,%r114,%r114; div.rn.f64 %r121,%r119,%r120; fma.rn.f64 %r22,%r45,0d0000000000000000,%r121; $L14: .loc 1 108 5 @ %r123 bra $L3; .loc 1 109 18 add.f64 %r22,%r22,%r22; add.f64 %r45,%r45,%r45; $L3: .loc 1 65 11 st.f64 [%r53],%r22; st.f64 [%r53+8],%r45; .loc 1 112 1 ret; } lib_a-ctan.o/ 0 0 0 644 4419 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctan .visible .func ctan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ctan.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctans .extern .func (.param .f64 %value_out) _ctans (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctan .visible .func ctan (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r55; .reg .pred %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; mov.u64 %r39,%ar0; mov.f64 %r40,%ar1; mov.f64 %r41,%ar2; .loc 1 78 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 78 6 add.f64 %r46,%r44,%r44; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),cos,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 78 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 78 28 add.f64 %r52,%r50,%r50; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 78 4 add.f64 %r37,%r47,%r53; .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r55,[%value_in]; } .loc 1 80 5 setp.lt.f64 %r56,%r55,0d3fd0000000000000; @ ! %r56 bra $L2; .loc 1 81 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),_ctans,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r37,%r59; $L2: .loc 1 83 5 setp.neu.f64 %r60,%r37,0d0000000000000000; @ %r60 bra $L4; .loc 1 85 16 mov.f64 %r61,0d7ff0000000000000; fma.rn.f64 %r29,%r61,0d0000000000000000,%r61; .loc 1 86 10 mov.f64 %r38,%r61; bra $L5; $L4: .loc 1 89 44 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 89 33 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 89 54 div.rn.f64 %r38,%r67,%r37; .loc 1 89 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 89 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),sin,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 89 26 div.rn.f64 %r74,%r73,%r37; .loc 1 89 30 fma.rn.f64 %r29,%r38,0d0000000000000000,%r74; $L5: .loc 1 86 10 st.f64 [%r39],%r29; st.f64 [%r39+8],%r38; .loc 1 91 1 ret; } lib_a-ctanf.o/ 0 0 0 644 4410 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanf .visible .func ctanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ctanf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansf .extern .func (.param .f32 %value_out) _ctansf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanf .visible .func ctanf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r29; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r50; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r55; .reg .pred %r56; .reg .f32 %r59; .reg .pred %r60; .reg .f32 %r61; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r70; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; mov.u64 %r39,%ar0; mov.f32 %r40,%ar1; mov.f32 %r41,%ar2; .loc 1 45 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } .loc 1 45 6 add.f32 %r46,%r44,%r44; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 45 44 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } .loc 1 45 31 add.f32 %r52,%r50,%r50; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r52; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } .loc 1 45 4 add.f32 %r37,%r47,%r53; .loc 1 47 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r55,[%value_in]; } .loc 1 47 5 setp.lt.f32 %r56,%r55,0f3e800000; @ ! %r56 bra $L2; .loc 1 48 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),_ctansf,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } mov.f32 %r37,%r59; $L2: .loc 1 50 5 setp.neu.f32 %r60,%r37,0f00000000; @ %r60 bra $L4; .loc 1 52 17 mov.f32 %r61,0f7f800000; fma.rn.f32 %r29,%r61,0f00000000,%r61; .loc 1 53 10 mov.f32 %r38,%r61; bra $L5; $L4: .loc 1 56 49 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r64,[%value_in]; } .loc 1 56 36 add.f32 %r66,%r64,%r64; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r66; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r67,[%value_in]; } .loc 1 56 60 div.rn.f32 %r38,%r67,%r37; .loc 1 56 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r70,[%value_in]; } .loc 1 56 6 add.f32 %r72,%r70,%r70; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 56 29 div.rn.f32 %r74,%r73,%r37; .loc 1 56 33 fma.rn.f32 %r29,%r38,0f00000000,%r74; $L5: .loc 1 53 10 st.f32 [%r39],%r29; st.f32 [%r39+4],%r38; .loc 1 58 1 ret; } lib_a-ctanh.o/ 0 0 0 644 2852 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanh .visible .func ctanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ctanh.c" // BEGIN GLOBAL FUNCTION DECL: creal .extern .func (.param .f64 %value_out) creal (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimag .extern .func (.param .f64 %value_out) cimag (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosh .extern .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanh .visible .func ctanh (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .f64 %r24; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r33; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r50; .reg .f64 %r51; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 79 6 add.f64 %r22,%r39,%r39; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),cosh,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 79 22 add.f64 %r24,%r42,%r42; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),cos,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 79 4 add.f64 %r32,%r44,%r46; .loc 1 80 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),sin,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 80 42 div.rn.f64 %r33,%r48,%r32; .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 80 20 div.rn.f64 %r51,%r50,%r32; .loc 1 80 25 fma.rn.f64 %r29,%r33,0d0000000000000000,%r51; .loc 1 82 9 st.f64 [%r34],%r29; st.f64 [%r34+8],%r33; .loc 1 83 1 ret; } lib_a-ctanhf.o/ 0 0 0 644 2867 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanhf .visible .func ctanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ctanhf.c" // BEGIN GLOBAL FUNCTION DECL: crealf .extern .func (.param .f32 %value_out) crealf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagf .extern .func (.param .f32 %value_out) cimagf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshf .extern .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhf .extern .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanhf .visible .func ctanhf (.param .u64 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f32 %r22; .reg .f32 %r24; .reg .f32 %r29; .reg .f32 %r32; .reg .f32 %r33; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r42; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r50; .reg .f32 %r51; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r39,[%value_in]; } .loc 1 45 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } .loc 1 46 6 add.f32 %r22,%r39,%r39; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r22; call (%value_in),coshf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 46 24 add.f32 %r24,%r42,%r42; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 46 4 add.f32 %r32,%r44,%r46; .loc 1 47 31 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } .loc 1 47 46 div.rn.f32 %r33,%r48,%r32; .loc 1 47 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r22; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r50,[%value_in]; } .loc 1 47 22 div.rn.f32 %r51,%r50,%r32; .loc 1 47 27 fma.rn.f32 %r29,%r33,0f00000000,%r51; .loc 1 49 9 st.f32 [%r34],%r29; st.f32 [%r34+4],%r33; .loc 1 50 1 ret; } lib_a-ctanhl.o/ 0 0 0 644 2875 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanhl .visible .func ctanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ctanhl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanhl .visible .func ctanhl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .f64 %r24; .reg .f64 %r29; .reg .f64 %r32; .reg .f64 %r33; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r48; .reg .f64 %r50; .reg .f64 %r51; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 41 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } .loc 1 42 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } .loc 1 43 6 add.f64 %r22,%r39,%r39; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 43 24 add.f64 %r24,%r42,%r42; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r46,[%value_in]; } .loc 1 43 4 add.f64 %r32,%r44,%r46; .loc 1 44 31 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r48,[%value_in]; } .loc 1 44 46 div.rn.f64 %r33,%r48,%r32; .loc 1 44 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r22; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 44 22 div.rn.f64 %r51,%r50,%r32; .loc 1 44 27 fma.rn.f64 %r29,%r33,0d0000000000000000,%r51; .loc 1 46 9 st.f64 [%r34],%r29; st.f64 [%r34+8],%r33; .loc 1 47 1 ret; } lib_a-ctanl.o/ 0 0 0 644 4450 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctanl .visible .func ctanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/complex/ctanl.c" // BEGIN GLOBAL FUNCTION DECL: creall .extern .func (.param .f64 %value_out) creall (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: cosl .extern .func (.param .f64 %value_out) cosl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cimagl .extern .func (.param .f64 %value_out) cimagl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: coshl .extern .func (.param .f64 %value_out) coshl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsl .extern .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _ctansl .extern .func (.param .f64 %value_out) _ctansl (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sinhl .extern .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinl .extern .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctanl .visible .func ctanl (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r55; .reg .pred %r56; .reg .f64 %r59; .reg .pred %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; mov.u64 %r39,%ar0; mov.f64 %r40,%ar1; mov.f64 %r41,%ar2; .loc 1 43 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } .loc 1 43 6 add.f64 %r46,%r44,%r44; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),cosl,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 43 44 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } .loc 1 43 31 add.f64 %r52,%r50,%r50; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),coshl,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 43 4 add.f64 %r37,%r47,%r53; .loc 1 45 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),fabsl,(%out_arg1); ld.param.f64 %r55,[%value_in]; } .loc 1 45 5 setp.lt.f64 %r56,%r55,0d3fd0000000000000; @ ! %r56 bra $L2; .loc 1 46 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),_ctansl,(%out_arg1,%out_arg2); ld.param.f64 %r59,[%value_in]; } mov.f64 %r37,%r59; $L2: .loc 1 48 5 setp.neu.f64 %r60,%r37,0d0000000000000000; @ %r60 bra $L4; .loc 1 50 17 mov.f64 %r61,0d7ff0000000000000; fma.rn.f64 %r29,%r61,0d0000000000000000,%r61; .loc 1 51 10 mov.f64 %r38,%r61; bra $L5; $L4: .loc 1 54 49 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),cimagl,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 54 36 add.f64 %r66,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sinhl,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 54 60 div.rn.f64 %r38,%r67,%r37; .loc 1 54 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r40; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r41; call (%value_in),creall,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 54 6 add.f64 %r72,%r70,%r70; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),sinl,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 54 29 div.rn.f64 %r74,%r73,%r37; .loc 1 54 33 fma.rn.f64 %r29,%r38,0d0000000000000000,%r74; $L5: .loc 1 51 10 st.f64 [%r39],%r29; st.f64 [%r39+8],%r38; .loc 1 56 1 ret; } lib_a-e_acos.o/ 0 0 0 644 5909 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acos .visible .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acos .visible .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .u32 %r59; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .u64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .pred %r103; .reg .f64 %r104; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r113; .reg .u64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; mov.f64 %r85,%ar0; .loc 1 71 2 mov.b64 %r86,%r85; shr.u64 %r87,%r86,32; cvt.u32.u64 %r88,%r87; .loc 1 72 5 and.b32 %r59,%r88,2147483647; .loc 1 73 4 setp.le.s32 %r89,%r59,1072693247; @ %r89 bra $L2; .loc 1 76 13 add.u32 %r90,%r59,-1072693248; .loc 1 76 25 cvt.u32.u64 %r92,%r86; or.b32 %r94,%r90,%r92; .loc 1 76 8 setp.ne.u32 %r95,%r94,0; @ %r95 bra $L3; .loc 1 77 5 setp.gt.s32 %r96,%r88,0; .loc 1 78 17 selp.f64 %r84,0d0000000000000000,0d400921fb54442d18,%r96; bra $L1; $L3: .loc 1 80 15 sub.f64 %r25,%r85,%r85; .loc 1 80 18 div.rn.f64 %r84,%r25,%r25; bra $L1; $L2: .loc 1 82 4 setp.gt.s32 %r97,%r59,1071644671; @ %r97 bra $L5; .loc 1 83 8 setp.le.s32 %r98,%r59,1012924416; @ %r98 bra $L8; .loc 1 84 8 mul.f64 %r74,%r85,%r85; .loc 1 85 44 fma.rn.f64 %r26,%r74,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 85 37 fma.rn.f64 %r27,%r26,%r74,0dbfa48228b5688f3b; .loc 1 85 30 fma.rn.f64 %r28,%r27,%r74,0d3fc9c1550e884455; .loc 1 85 23 fma.rn.f64 %r29,%r28,%r74,0dbfd4d61203eb6f7d; .loc 1 85 16 fma.rn.f64 %r30,%r29,%r74,0d3fc5555555555555; .loc 1 85 8 mul.f64 %r75,%r30,%r74; .loc 1 86 34 fma.rn.f64 %r31,%r74,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 86 27 fma.rn.f64 %r32,%r31,%r74,0d40002ae59c598ac8; .loc 1 86 20 fma.rn.f64 %r33,%r32,%r74,0dc0033a271c8a2d4b; .loc 1 86 8 fma.rn.f64 %r76,%r33,%r74,0d3ff0000000000000; .loc 1 88 36 neg.f64 %r99,%r85; .loc 1 87 8 div.rn.f64 %r100,%r75,%r76; .loc 1 88 36 fma.rn.f64 %r34,%r99,%r100,0d3c91a62633145c07; .loc 1 88 26 sub.f64 %r101,%r85,%r34; .loc 1 88 21 mov.f64 %r102,0d3ff921fb54442d18; sub.f64 %r84,%r102,%r101; bra $L1; $L5: .loc 1 89 13 setp.ge.s32 %r103,%r88,0; @ %r103 bra $L6; .loc 1 90 14 add.f64 %r104,%r85,0d3ff0000000000000; .loc 1 90 8 mul.f64 %r68,%r104,0d3fe0000000000000; .loc 1 91 44 fma.rn.f64 %r37,%r68,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 91 37 fma.rn.f64 %r38,%r37,%r68,0dbfa48228b5688f3b; .loc 1 91 30 fma.rn.f64 %r39,%r38,%r68,0d3fc9c1550e884455; .loc 1 91 23 fma.rn.f64 %r40,%r39,%r68,0dbfd4d61203eb6f7d; .loc 1 91 16 fma.rn.f64 %r41,%r40,%r68,0d3fc5555555555555; .loc 1 91 8 mul.f64 %r69,%r41,%r68; .loc 1 92 34 fma.rn.f64 %r42,%r68,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 92 27 fma.rn.f64 %r43,%r42,%r68,0d40002ae59c598ac8; .loc 1 92 20 fma.rn.f64 %r44,%r43,%r68,0dc0033a271c8a2d4b; .loc 1 92 8 fma.rn.f64 %r70,%r44,%r68,0d3ff0000000000000; .loc 1 93 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 94 8 div.rn.f64 %r107,%r69,%r70; .loc 1 95 8 fma.rn.f64 %r73,%r106,%r107,0dbc91a62633145c07; .loc 1 96 24 add.f64 %r108,%r106,%r73; .loc 1 96 16 fma.rn.f64 %r84,%r108,0dc000000000000000,0d400921fb54442d18; bra $L1; $L6: .loc 1 98 14 mov.f64 %r111,0d3ff0000000000000; sub.f64 %r110,%r111,%r85; .loc 1 98 8 mul.f64 %r60,%r110,0d3fe0000000000000; .loc 1 99 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r113,[%value_in]; } .loc 1 101 6 mov.b64 %r83,%r113; and.b64 %r114,%r83,-4294967296; mov.b64 %r62,%r114; .loc 1 102 13 neg.f64 %r115,%r62; fma.rn.f64 %r47,%r115,%r62,%r60; .loc 1 102 23 add.f64 %r116,%r113,%r62; .loc 1 102 9 div.rn.f64 %r63,%r47,%r116; .loc 1 103 44 fma.rn.f64 %r49,%r60,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 37 fma.rn.f64 %r50,%r49,%r60,0dbfa48228b5688f3b; .loc 1 103 30 fma.rn.f64 %r51,%r50,%r60,0d3fc9c1550e884455; .loc 1 103 23 fma.rn.f64 %r52,%r51,%r60,0dbfd4d61203eb6f7d; .loc 1 103 16 fma.rn.f64 %r53,%r52,%r60,0d3fc5555555555555; .loc 1 103 8 mul.f64 %r64,%r53,%r60; .loc 1 104 34 fma.rn.f64 %r54,%r60,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 27 fma.rn.f64 %r55,%r54,%r60,0d40002ae59c598ac8; .loc 1 104 20 fma.rn.f64 %r56,%r55,%r60,0dc0033a271c8a2d4b; .loc 1 104 8 fma.rn.f64 %r65,%r56,%r60,0d3ff0000000000000; .loc 1 105 8 div.rn.f64 %r117,%r64,%r65; .loc 1 106 8 fma.rn.f64 %r67,%r113,%r117,%r63; .loc 1 107 20 add.f64 %r118,%r62,%r67; .loc 1 107 16 add.f64 %r84,%r118,%r118; bra $L1; $L8: .loc 1 83 39 mov.f64 %r84,0d3ff921fb54442d18; $L1: .loc 1 109 1 mov.f64 %value,%r84; st.param.f64 [%value_out],%value; ret; } lib_a-e_acosh.o/0 0 0 644 3364 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosh .visible .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acosh .visible .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r27; .reg .f64 %r31; .reg .f64 %r33; .reg .f64 %r37; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .f64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .pred %r57; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r63; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r72; mov.f64 %r42,%ar0; .loc 1 51 2 mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r45,%r44; .loc 1 52 4 setp.gt.s32 %r46,%r45,1072693247; @ %r46 bra $L2; .loc 1 53 15 sub.f64 %r22,%r42,%r42; .loc 1 53 18 div.rn.f64 %r41,%r22,%r22; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r47,%r45,1102053375; @ %r47 bra $L4; .loc 1 55 8 setp.le.s32 %r48,%r45,2146435071; @ %r48 bra $L5; .loc 1 56 18 add.f64 %r41,%r42,%r42; bra $L1; $L5: .loc 1 58 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 58 26 add.f64 %r41,%r50,0d3fe62e42fefa39ef; bra $L1; $L4: .loc 1 59 16 add.u32 %r51,%r45,-1072693248; .loc 1 59 28 cvt.u32.u64 %r53,%r43; or.b32 %r55,%r51,%r53; .loc 1 59 11 setp.eq.u32 %r56,%r55,0; @ %r56 bra $L7; .loc 1 61 12 setp.le.s32 %r57,%r45,1073741824; @ %r57 bra $L6; .loc 1 63 40 fma.rn.f64 %r27,%r42,%r42,0dbff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 63 39 add.f64 %r60,%r59,%r42; .loc 1 63 36 rcp.rn.f64 %r61,%r60; .loc 1 63 13 neg.f64 %r63,%r61; fma.rn.f64 %r31,%r42,0d4000000000000000,%r63; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r65,[%value_in]; } mov.f64 %r41,%r65; bra $L1; $L6: .loc 1 65 8 mov.f64 %r66,0d3ff0000000000000; sub.f64 %r37,%r42,%r66; .loc 1 66 43 mul.f64 %r67,%r37,%r37; .loc 1 66 21 fma.rn.f64 %r33,%r37,0d4000000000000000,%r67; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 66 13 add.f64 %r71,%r69,%r37; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r72,[%value_in]; } mov.f64 %r41,%r72; bra $L1; $L7: .loc 1 60 13 mov.f64 %r41,0d0000000000000000; $L1: .loc 1 68 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } lib_a-e_asin.o/ 0 0 0 644 5516 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_asin .visible .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_asin.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_asin .visible .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r50; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r63; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .u64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r86; .reg .pred %r87; .reg .f64 %r88; .reg .pred %r89; .reg .pred %r90; .reg .f64 %r91; .reg .pred %r92; .reg .f64 %r93; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r99; .reg .pred %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .u64 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r111; .reg .f64 %r112; .reg .pred %r113; mov.f64 %r77,%ar0; .loc 1 80 2 mov.b64 %r78,%r77; shr.u64 %r79,%r78,32; cvt.u32.u64 %r80,%r79; .loc 1 81 5 and.b32 %r53,%r80,2147483647; .loc 1 82 4 setp.le.s32 %r81,%r53,1072693247; @ %r81 bra $L2; .loc 1 85 13 add.u32 %r82,%r53,-1072693248; .loc 1 85 25 cvt.u32.u64 %r84,%r78; or.b32 %r86,%r82,%r84; .loc 1 85 8 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L3; .loc 1 87 21 mul.f64 %r88,%r77,0d3c91a62633145c07; .loc 1 87 19 fma.rn.f64 %r76,%r77,0d3ff921fb54442d18,%r88; bra $L1; $L3: .loc 1 88 15 sub.f64 %r26,%r77,%r77; .loc 1 88 18 div.rn.f64 %r76,%r26,%r26; bra $L1; $L2: .loc 1 89 12 setp.gt.s32 %r89,%r53,1071644671; @ %r89 bra $L5; .loc 1 90 8 setp.gt.s32 %r90,%r53,1044381695; @ %r90 bra $L6; .loc 1 91 10 add.f64 %r91,%r77,0d7e37e43c8800759c; .loc 1 91 5 setp.gt.f64 %r92,%r91,0d3ff0000000000000; @ ! %r92 bra $L5; bra $L9; $L6: .loc 1 93 5 mul.f64 %r54,%r77,%r77; .loc 1 94 41 fma.rn.f64 %r28,%r54,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 94 34 fma.rn.f64 %r29,%r28,%r54,0dbfa48228b5688f3b; .loc 1 94 27 fma.rn.f64 %r30,%r29,%r54,0d3fc9c1550e884455; .loc 1 94 20 fma.rn.f64 %r31,%r30,%r54,0dbfd4d61203eb6f7d; .loc 1 94 13 fma.rn.f64 %r32,%r31,%r54,0d3fc5555555555555; .loc 1 94 5 mul.f64 %r55,%r32,%r54; .loc 1 95 31 fma.rn.f64 %r33,%r54,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 95 24 fma.rn.f64 %r34,%r33,%r54,0d40002ae59c598ac8; .loc 1 95 17 fma.rn.f64 %r35,%r34,%r54,0dc0033a271c8a2d4b; .loc 1 95 5 fma.rn.f64 %r56,%r35,%r54,0d3ff0000000000000; .loc 1 96 5 div.rn.f64 %r93,%r55,%r56; .loc 1 97 11 fma.rn.f64 %r76,%r77,%r93,%r77; bra $L1; $L5: .loc 1 101 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r77; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r95,[%value_in]; } .loc 1 101 4 mov.f64 %r97,0d3ff0000000000000; sub.f64 %r96,%r97,%r95; .loc 1 102 4 mul.f64 %r59,%r96,0d3fe0000000000000; .loc 1 103 40 fma.rn.f64 %r37,%r59,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 33 fma.rn.f64 %r38,%r37,%r59,0dbfa48228b5688f3b; .loc 1 103 26 fma.rn.f64 %r39,%r38,%r59,0d3fc9c1550e884455; .loc 1 103 19 fma.rn.f64 %r40,%r39,%r59,0dbfd4d61203eb6f7d; .loc 1 103 12 fma.rn.f64 %r41,%r40,%r59,0d3fc5555555555555; .loc 1 103 4 mul.f64 %r60,%r41,%r59; .loc 1 104 30 fma.rn.f64 %r42,%r59,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 23 fma.rn.f64 %r43,%r42,%r59,0d40002ae59c598ac8; .loc 1 104 16 fma.rn.f64 %r44,%r43,%r59,0dc0033a271c8a2d4b; .loc 1 104 4 fma.rn.f64 %r61,%r44,%r59,0d3ff0000000000000; .loc 1 105 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 106 4 setp.le.s32 %r100,%r53,1072640818; @ %r100 bra $L7; .loc 1 107 8 div.rn.f64 %r101,%r60,%r61; .loc 1 108 25 fma.rn.f64 %r45,%r99,%r101,%r99; .loc 1 108 30 fma.rn.f64 %r46,%r45,0d4000000000000000,0dbc91a62633145c07; .loc 1 108 8 mov.f64 %r102,0d3ff921fb54442d18; sub.f64 %r76,%r102,%r46; bra $L8; $L7: .loc 1 111 6 mov.b64 %r75,%r99; and.b64 %r103,%r75,-4294967296; mov.b64 %r63,%r103; .loc 1 112 13 neg.f64 %r104,%r63; fma.rn.f64 %r47,%r104,%r63,%r59; .loc 1 113 9 div.rn.f64 %r65,%r60,%r61; .loc 1 112 21 add.f64 %r105,%r99,%r63; .loc 1 112 9 div.rn.f64 %r106,%r47,%r105; .loc 1 114 27 fma.rn.f64 %r50,%r106,0dc000000000000000,0d3c91a62633145c07; .loc 1 114 14 add.f64 %r108,%r99,%r99; .loc 1 114 9 neg.f64 %r109,%r50; fma.rn.f64 %r66,%r108,%r65,%r109; .loc 1 115 9 fma.rn.f64 %r67,%r104,0d4000000000000000,0d3fe921fb54442d18; .loc 1 116 21 sub.f64 %r111,%r66,%r67; .loc 1 116 9 mov.f64 %r112,0d3fe921fb54442d18; sub.f64 %r76,%r112,%r111; $L8: .loc 1 118 4 setp.gt.s32 %r113,%r80,0; @ %r113 bra $L1; .loc 1 118 33 neg.f64 %r76,%r76; bra $L1; $L9: .loc 1 91 25 mov.f64 %r76,%r77; $L1: .loc 1 119 1 mov.f64 %value,%r76; st.param.f64 [%value_out],%value; ret; } lib_a-e_atan2.o/0 0 0 644 6855 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2 .visible .func (.param .f64 %value_out) __ieee754_atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_atan2.c" // BEGIN GLOBAL FUNCTION DECL: atan .extern .func (.param .f64 %value_out) atan (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN VAR DEF: CSWTCH$8 .const .align 8 .u64 CSWTCH$8[3] = {-4618122579557470952,4612488097114038738,-4610883939740737070 }; // BEGIN VAR DEF: CSWTCH$9 .const .align 8 .u64 CSWTCH$9[3] = {-9223372036854775808,4614256656552045848,-4609115380302729960 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_atan2 .visible .func (.param .f64 %value_out) __ieee754_atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r35; .reg .u32 %r52; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r61; .reg .u64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .f64 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r137; .reg .u64 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .u16 %r153; mov.f64 %r65,%ar0; mov.f64 %r66,%ar1; .loc 1 69 2 mov.b64 %r67,%r66; shr.u64 %r68,%r67,32; cvt.u32.u64 %r69,%r68; cvt.u32.u64 %r71,%r67; .loc 1 70 5 and.b32 %r52,%r69,2147483647; .loc 1 73 15 neg.s32 %r72,%r71; .loc 1 73 14 or.b32 %r73,%r72,%r71; .loc 1 73 19 shr.u32 %r74,%r73,31; .loc 1 73 9 or.b32 %r75,%r74,%r52; .loc 1 73 4 setp.gt.u32 %r76,%r75,2146435072; @ %r76 bra $L2; mov.b64 %r77,%r65; shr.u64 %r78,%r77,32; cvt.u32.u64 %r79,%r78; cvt.u32.u64 %r81,%r77; .loc 1 72 5 and.b32 %r54,%r79,2147483647; .loc 1 74 15 neg.s32 %r82,%r81; .loc 1 74 14 or.b32 %r83,%r82,%r81; .loc 1 74 19 shr.u32 %r84,%r83,31; .loc 1 74 9 or.b32 %r85,%r84,%r54; .loc 1 73 37 setp.le.u32 %r86,%r85,2146435072; @ %r86 bra $L3; $L2: .loc 1 75 13 add.f64 %r64,%r66,%r65; bra $L1; $L3: .loc 1 76 9 add.u32 %r87,%r69,-1072693248; .loc 1 76 21 or.b32 %r88,%r87,%r71; .loc 1 76 4 setp.ne.u32 %r89,%r88,0; @ %r89 bra $L5; .loc 1 76 37 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),atan,(%out_arg1); ld.param.f64 %r91,[%value_in]; } mov.f64 %r64,%r91; bra $L1; $L5: .loc 1 77 23 shr.s32 %r92,%r69,30; .loc 1 77 28 and.b32 %r93,%r92,2; .loc 1 77 15 shr.u32 %r94,%r79,31; .loc 1 77 4 or.b32 %r55,%r93,%r94; .loc 1 80 8 or.b32 %r95,%r54,%r81; .loc 1 80 4 setp.ne.u32 %r96,%r95,0; @ %r96 bra $L6; .loc 1 81 6 setp.eq.u32 %r97,%r55,2; @ %r97 bra $L15; setp.ne.u32 %r98,%r55,3; .loc 1 85 21 selp.f64 %r64,%r65,0dc00921fb54442d18,%r98; bra $L1; $L6: .loc 1 89 8 or.b32 %r99,%r52,%r71; .loc 1 89 4 setp.ne.u32 %r100,%r99,0; @ %r100 bra $L7; .loc 1 89 45 setp.ge.s32 %r101,%r79,0; selp.f64 %r64,0d3ff921fb54442d18,0dbff921fb54442d18,%r101; bra $L1; $L7: .loc 1 92 4 setp.ne.u32 %r102,%r52,2146435072; @ %r102 bra $L8; add.u32 %r35,%r55,-1; .loc 1 93 8 setp.ne.u32 %r103,%r54,2146435072; @ %r103 bra $L9; setp.gt.u32 %r104,%r35,2; @ %r104 bra $L18; cvta.const.u64 %r105,CSWTCH$8; cvt.u64.u32 %r106,%r35; shl.b64 %r107,%r106,3; add.u64 %r108,%r105,%r107; ld.f64 %r64,[%r108]; bra $L1; $L9: setp.gt.u32 %r109,%r35,2; @ %r109 bra $L19; cvta.const.u64 %r110,CSWTCH$9; cvt.u64.u32 %r111,%r35; shl.b64 %r112,%r111,3; add.u64 %r113,%r110,%r112; ld.f64 %r64,[%r113]; bra $L1; $L8: .loc 1 110 4 setp.ne.u32 %r114,%r54,2146435072; @ %r114 bra $L10; .loc 1 110 48 setp.ge.s32 %r115,%r79,0; .loc 1 89 45 selp.f64 %r64,0d3ff921fb54442d18,0dbff921fb54442d18,%r115; bra $L1; $L10: .loc 1 113 9 sub.u32 %r116,%r54,%r52; .loc 1 113 4 shr.s32 %r61,%r116,20; .loc 1 114 4 setp.gt.s32 %r117,%r116,63963135; @ %r117 bra $L21; .loc 1 115 12 shr.u32 %r119,%r69,31; mov.u32 %r120,%r119; .loc 1 115 17 set.u32.lt.s32 %r122,%r61,-60; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 115 14 cvt.u16.u8 %r153,%r120; mov.u16 %r125,%r153; cvt.u16.u8 %r153,%r121; mov.u16 %r126,%r153; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 115 9 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L22; .loc 1 116 9 div.rn.f64 %r131,%r65,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r131; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r132,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r132; call (%value_in),atan,(%out_arg1); ld.param.f64 %r134,[%value_in]; } mov.f64 %r64,%r134; bra $L11; $L21: .loc 1 114 14 mov.f64 %r64,0d3ff921fb54442d18; bra $L11; $L22: .loc 1 115 24 mov.f64 %r64,0d0000000000000000; $L11: .loc 1 117 2 setp.eq.u32 %r135,%r55,1; @ %r135 bra $L12; setp.eq.u32 %r136,%r55,2; @ %r136 bra $L13; setp.eq.u32 %r137,%r55,0; @ ! %r137 bra $L26; bra $L1; $L12: .loc 1 122 9 mov.b64 %r63,%r64; shr.u64 %r139,%r63,32; cvt.u32.u64 %r140,%r139; add.u32 %r141,%r140,-2147483648; cvt.u64.u32 %r142,%r141; shl.b64 %r143,%r142,32; and.b64 %r144,%r63,4294967295; or.b64 %r145,%r144,%r143; mov.b64 %r64,%r145; .loc 1 124 20 bra $L1; $L13: .loc 1 125 27 mov.f64 %r147,0d3ca1a62633145c07; sub.f64 %r146,%r64,%r147; .loc 1 125 24 mov.f64 %r148,0d400921fb54442d18; sub.f64 %r64,%r148,%r146; bra $L1; $L26: .loc 1 127 21 mov.f64 %r150,0d3ca1a62633145c07; sub.f64 %r149,%r64,%r150; .loc 1 127 28 mov.f64 %r151,0d400921fb54442d18; sub.f64 %r64,%r149,%r151; bra $L1; $L15: .loc 1 81 6 mov.f64 %r64,0d400921fb54442d18; bra $L1; $L18: .loc 1 93 8 mov.f64 %r64,0d3fe921fb54442d18; bra $L1; $L19: mov.f64 %r64,0d0000000000000000; $L1: .loc 1 129 1 mov.f64 %value,%r64; st.param.f64 [%value_out],%value; ret; } lib_a-e_atanh.o/0 0 0 644 3324 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanh .visible .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_atanh.c" // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_atanh .visible .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r27; .reg .u32 %r38; .reg .u32 %r39; .reg .f64 %r40; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; mov.f64 %r46,%ar0; .loc 1 59 2 mov.b64 %r47,%r46; shr.u64 %r48,%r47,32; cvt.u32.u64 %r38,%r48; cvt.u32.u64 %r51,%r47; .loc 1 60 5 and.b32 %r39,%r38,2147483647; .loc 1 61 16 neg.s32 %r52,%r51; .loc 1 61 14 or.b32 %r53,%r52,%r51; .loc 1 61 21 shr.u32 %r54,%r53,31; .loc 1 61 9 or.b32 %r55,%r54,%r39; .loc 1 61 5 setp.le.u32 %r56,%r55,1072693248; @ %r56 bra $L2; .loc 1 62 15 sub.f64 %r27,%r46,%r46; .loc 1 62 18 div.rn.f64 %r45,%r27,%r27; bra $L1; $L2: .loc 1 63 4 setp.ne.u32 %r57,%r39,1072693248; @ %r57 bra $L4; .loc 1 64 14 div.rn.f64 %r45,%r46,0d0000000000000000; bra $L1; $L4: .loc 1 65 4 setp.gt.s32 %r58,%r39,1043333119; @ %r58 bra $L5; .loc 1 65 25 add.f64 %r59,%r46,0d7e37e43c8800759c; .loc 1 65 18 setp.gt.f64 %r60,%r59,0d0000000000000000; @ ! %r60 bra $L11; bra $L10; $L5: .loc 1 66 2 cvt.u64.u32 %r61,%r39; shl.b64 %r62,%r61,32; and.b64 %r63,%r47,4294967295; or.b64 %r64,%r63,%r62; mov.b64 %r43,%r64; .loc 1 67 4 setp.gt.s32 %r65,%r39,1071644671; @ %r65 bra $L7; $L9: .loc 1 68 8 add.f64 %r40,%r43,%r43; .loc 1 69 23 mul.f64 %r67,%r40,%r43; .loc 1 69 30 mov.f64 %r69,0d3ff0000000000000; sub.f64 %r68,%r69,%r43; .loc 1 69 25 div.rn.f64 %r70,%r67,%r68; .loc 1 69 14 add.f64 %r71,%r70,%r40; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 69 8 mul.f64 %r45,%r72,0d3fe0000000000000; bra $L8; $L7: .loc 1 71 22 add.f64 %r74,%r43,%r43; .loc 1 71 30 mov.f64 %r76,0d3ff0000000000000; sub.f64 %r75,%r76,%r43; .loc 1 71 14 div.rn.f64 %r77,%r74,%r75; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r77; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r78,[%value_in]; } .loc 1 71 8 mul.f64 %r45,%r78,0d3fe0000000000000; $L8: .loc 1 72 4 setp.ge.s32 %r79,%r38,0; @ %r79 bra $L1; .loc 1 72 34 neg.f64 %r45,%r45; bra $L1; $L10: .loc 1 65 42 mov.f64 %r45,%r46; bra $L1; $L11: .loc 1 66 2 cvt.u64.u32 %r81,%r39; shl.b64 %r82,%r81,32; and.b64 %r83,%r47,4294967295; or.b64 %r84,%r83,%r82; mov.b64 %r43,%r84; bra $L9; $L1: .loc 1 73 1 mov.f64 %value,%r45; st.param.f64 [%value_out],%value; ret; } lib_a-e_cosh.o/ 0 0 0 644 4697 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_cosh .visible .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_cosh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_cosh .visible .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r36; .reg .f64 %r43; .reg .f64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .pred %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .pred %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .pred %r65; .reg .f64 %r67; .reg .f64 %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u16 %r79; .reg .u16 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .pred %r84; .reg .f64 %r86; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .u32 %r91; .reg .f64 %r92; .reg .u16 %r94; mov.f64 %r44,%ar0; .loc 1 58 2 mov.b64 %r45,%r44; shr.u64 %r46,%r45,32; cvt.u32.u64 %r47,%r46; .loc 1 59 5 and.b32 %r36,%r47,2147483647; .loc 1 62 4 setp.le.s32 %r48,%r36,2146435071; @ %r48 bra $L2; .loc 1 62 29 mul.f64 %r43,%r44,%r44; bra $L1; $L2: .loc 1 65 4 setp.gt.s32 %r49,%r36,1071001154; @ %r49 bra $L4; .loc 1 66 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r51,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r51; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 67 8 add.f64 %r43,%r53,0d3ff0000000000000; .loc 1 68 9 setp.le.s32 %r54,%r36,1015021567; @ %r54 bra $L1; .loc 1 69 19 mul.f64 %r55,%r53,%r53; .loc 1 69 25 add.f64 %r56,%r43,%r43; .loc 1 69 22 div.rn.f64 %r57,%r55,%r56; .loc 1 69 16 add.f64 %r43,%r57,0d3ff0000000000000; bra $L1; $L4: .loc 1 73 5 setp.gt.s32 %r58,%r36,1077280767; @ %r58 bra $L5; .loc 1 74 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r60,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 75 21 mov.f64 %r64,0d3fe0000000000000; div.rn.f64 %r63,%r64,%r62; .loc 1 75 16 fma.rn.f64 %r43,%r62,0d3fe0000000000000,%r63; bra $L1; $L5: .loc 1 79 5 setp.gt.s32 %r65,%r36,1082535489; @ %r65 bra $L6; .loc 1 79 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r67,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 79 35 mul.f64 %r43,%r69,0d3fe0000000000000; bra $L1; $L6: cvt.u32.u64 %r71,%r45; .loc 1 83 5 setp.le.s32 %r72,%r36,1082536909; @ %r72 bra $L7; .loc 1 84 17 set.u32.eq.u32 %r74,%r36,1082536910; neg.s32 %r75,%r74; mov.u32 %r73,%r75; .loc 1 84 35 set.u32.le.u32 %r77,%r71,-1883637635; neg.s32 %r78,%r77; mov.u32 %r76,%r78; .loc 1 84 30 cvt.u16.u8 %r94,%r73; mov.u16 %r80,%r94; cvt.u16.u8 %r94,%r76; mov.u16 %r81,%r94; and.b16 %r79,%r80,%r81; cvt.u32.u16 %r82,%r79; .loc 1 83 20 cvt.u16.u8 %r83,%r82; setp.eq.u16 %r84,%r83,0; @ %r84 bra $L8; $L7: .loc 1 85 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 85 10 mul.f64 %r88,%r86,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r88; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 86 8 mul.f64 %r90,%r89,0d3fe0000000000000; .loc 1 87 14 mul.f64 %r43,%r90,%r89; bra $L1; $L8: .loc 1 91 9 mov.u32 %r91,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r92,[%value_in]; } mov.f64 %r43,%r92; $L1: .loc 1 92 1 mov.f64 %value,%r43; st.param.f64 [%value_out],%value; ret; } lib_a-e_exp.o/ 0 0 0 644 6914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .visible .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_exp.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN VAR DEF: ln2LO .const .align 8 .u64 ln2LO[2] = {4461442080421002358,-4761929956433773450 }; // BEGIN VAR DEF: halF .const .align 8 .u64 halF[2] = {4602678819172646912,-4620693217682128896 }; // BEGIN VAR DEF: ln2HI .const .align 8 .u64 ln2HI[2] = {4604418534311723008,-4618953502543052800 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_exp .visible .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f64 %r28; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r73; .reg .f64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r82; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .u32 %r88; .reg .f64 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .f64 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .f64 %r99; .reg .u64 %r100; .reg .u64 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .f64 %r110; .reg .f64 %r112; .reg .pred %r113; .reg .pred %r114; .reg .f64 %r115; .reg .pred %r116; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .pred %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .f64 %r147; .reg .f64 %r148; mov.f64 %r74,%ar0; mov.b64 %r75,%r74; shr.u64 %r76,%r75,32; cvt.u32.u64 %r77,%r76; .loc 1 118 16 shr.u32 %r22,%r77,31; .loc 1 119 5 and.b32 %r54,%r77,2147483647; .loc 1 122 4 setp.le.u32 %r78,%r54,1082535489; @ %r78 bra $L2; .loc 1 123 15 setp.le.u32 %r79,%r54,2146435071; @ %r79 bra $L3; .loc 1 126 10 and.b32 %r80,%r77,1048575; .loc 1 126 19 cvt.u32.u64 %r82,%r75; or.b32 %r84,%r80,%r82; .loc 1 126 5 setp.eq.u32 %r85,%r84,0; @ %r85 bra $L4; .loc 1 127 16 add.f64 %r73,%r74,%r74; bra $L1; $L4: .loc 1 128 26 setp.eq.u32 %r86,%r22,0; selp.f64 %r73,%r74,0d0000000000000000,%r86; bra $L1; $L3: .loc 1 130 8 setp.gt.f64 %r87,%r74,0d40862e42fefa39ef; @ ! %r87 bra $L24; .loc 1 130 33 mov.u32 %r88,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r88; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r89,[%value_in]; } mov.f64 %r73,%r89; bra $L1; $L24: .loc 1 131 8 setp.lt.f64 %r90,%r74,0dc0874910d52d3051; @ ! %r90 bra $L8; .loc 1 131 33 mov.u32 %r91,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r92,[%value_in]; } mov.f64 %r73,%r92; bra $L1; $L2: .loc 1 135 4 setp.le.u32 %r93,%r54,1071001154; @ %r93 bra $L10; .loc 1 136 8 setp.gt.u32 %r94,%r54,1072734897; @ %r94 bra $L8; .loc 1 137 15 cvta.const.u64 %r95,ln2HI; cvt.s64.s32 %r96,%r22; shl.b64 %r97,%r96,3; add.u64 %r98,%r95,%r97; .loc 1 137 6 ld.f64 %r99,[%r98]; sub.f64 %r50,%r74,%r99; .loc 1 137 24 cvta.const.u64 %r100,ln2LO; add.u64 %r103,%r100,%r97; ld.f64 %r51,[%r103]; .loc 1 137 42 mov.u32 %r105,1; sub.u32 %r104,%r105,%r22; .loc 1 137 39 sub.u32 %r52,%r104,%r22; bra $L11; $L8: .loc 1 139 21 cvta.const.u64 %r106,halF; cvt.s64.s32 %r107,%r22; shl.b64 %r108,%r107,3; add.u64 %r109,%r106,%r108; .loc 1 139 16 ld.f64 %r110,[%r109]; fma.rn.f64 %r28,%r74,0d3ff71547652b82fe,%r110; .loc 1 139 6 cvt.rzi.s32.f64 %r52,%r28; .loc 1 140 6 cvt.rn.f64.s32 %r56,%r52; .loc 1 141 6 fma.rn.f64 %r50,%r56,0dbfe62e42fee00000,%r74; .loc 1 142 6 mul.f64 %r51,%r56,0d3dea39ef35793c76; $L11: .loc 1 144 9 sub.f64 %r74,%r50,%r51; .loc 1 151 5 mul.f64 %r57,%r74,%r74; .loc 1 152 34 fma.rn.f64 %r31,%r57,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 152 28 fma.rn.f64 %r32,%r31,%r57,0d3f11566aaf25de2c; .loc 1 152 22 fma.rn.f64 %r33,%r32,%r57,0dbf66c16c16bebd93; .loc 1 152 16 fma.rn.f64 %r34,%r33,%r57,0d3fc555555555553e; .loc 1 152 5 neg.f64 %r112,%r34; fma.rn.f64 %r65,%r112,%r57,%r74; .loc 1 154 24 mul.f64 %r148,%r74,%r65; .loc 1 153 4 setp.eq.u32 %r113,%r52,0; @ ! %r113 bra $L25; bra $L12; $L10: .loc 1 146 9 setp.gt.u32 %r114,%r54,1039138815; @ %r114 bra $L14; .loc 1 147 13 add.f64 %r115,%r74,0d7e37e43c8800759c; .loc 1 147 8 setp.gt.f64 %r116,%r115,0d3ff0000000000000; @ ! %r116 bra $L14; .loc 1 147 31 add.f64 %r73,%r74,0d3ff0000000000000; bra $L1; $L12: .loc 1 153 32 mov.f64 %r119,0d4000000000000000; sub.f64 %r118,%r65,%r119; .loc 1 153 29 div.rn.f64 %r120,%r148,%r118; .loc 1 153 37 sub.f64 %r121,%r120,%r74; .loc 1 153 22 mov.f64 %r122,0d3ff0000000000000; sub.f64 %r73,%r122,%r121; bra $L1; $L25: .loc 1 154 32 mov.f64 %r124,0d4000000000000000; sub.f64 %r123,%r124,%r65; .loc 1 154 27 div.rn.f64 %r125,%r148,%r123; .loc 1 154 21 sub.f64 %r126,%r51,%r125; .loc 1 154 36 sub.f64 %r127,%r126,%r50; .loc 1 154 11 mov.f64 %r128,0d3ff0000000000000; sub.f64 %r58,%r128,%r127; mov.b64 %r129,%r58; shr.u64 %r130,%r129,32; cvt.u32.u64 %r131,%r130; .loc 1 155 4 setp.lt.s32 %r132,%r52,-1021; @ %r132 bra $L16; .loc 1 158 6 shl.b32 %r133,%r52,20; add.u32 %r134,%r133,%r131; cvt.u64.u32 %r135,%r134; shl.b64 %r136,%r135,32; and.b64 %r137,%r129,4294967295; or.b64 %r138,%r137,%r136; mov.b64 %r73,%r138; .loc 1 159 13 bra $L1; $L16: .loc 1 163 6 add.u32 %r139,%r52,1000; shl.b32 %r140,%r139,20; add.u32 %r141,%r140,%r131; cvt.u64.u32 %r142,%r141; shl.b64 %r143,%r142,32; and.b64 %r144,%r129,4294967295; or.b64 %r145,%r144,%r143; mov.b64 %r59,%r145; .loc 1 164 14 mul.f64 %r73,%r59,0d0170000000000000; bra $L1; $L14: .loc 1 151 5 mul.f64 %r60,%r74,%r74; .loc 1 152 34 fma.rn.f64 %r61,%r60,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 152 28 fma.rn.f64 %r62,%r60,%r61,0d3f11566aaf25de2c; .loc 1 152 22 fma.rn.f64 %r63,%r60,%r62,0dbf66c16c16bebd93; .loc 1 152 16 fma.rn.f64 %r64,%r60,%r63,0d3fc555555555553e; .loc 1 152 5 neg.f64 %r147,%r60; fma.rn.f64 %r65,%r147,%r64,%r74; mul.f64 %r148,%r74,%r65; bra $L12; $L1: .loc 1 166 1 mov.f64 %value,%r73; st.param.f64 [%value_out],%value; ret; } lib_a-e_fmod.o/ 0 0 0 644 11935 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmod .visible .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_fmod.c" // BEGIN VAR DEF: Zero .const .align 8 .u64 Zero[2] = {0,-9223372036854775808 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_fmod .visible .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r30; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r76; .reg .u32 %r83; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r112; .reg .u32 %r114; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u32 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u32 %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u16 %r160; .reg .u16 %r161; .reg .u16 %r162; .reg .u32 %r163; .reg .u16 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .pred %r173; .reg .pred %r174; .reg .pred %r175; .reg .pred %r177; .reg .pred %r178; .reg .pred %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .pred %r183; .reg .pred %r184; .reg .pred %r185; .reg .pred %r187; .reg .pred %r188; .reg .pred %r190; .reg .u32 %r191; .reg .pred %r192; .reg .u32 %r193; .reg .pred %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .u32 %r197; .reg .u32 %r198; .reg .u32 %r200; .reg .pred %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .u32 %r205; .reg .pred %r206; .reg .pred %r207; .reg .pred %r208; .reg .pred %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .pred %r214; .reg .u64 %r215; .reg .u32 %r216; .reg .u64 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .pred %r223; .reg .pred %r224; .reg .pred %r225; .reg .u32 %r226; .reg .pred %r227; .reg .pred %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .pred %r237; .reg .u32 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u64 %r244; .reg .u64 %r248; .reg .u64 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .pred %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u32 %r259; .reg .u32 %r260; .reg .u64 %r261; .reg .u64 %r265; .reg .u64 %r266; .reg .u64 %r267; .reg .pred %r269; .reg .u16 %r270; mov.f64 %r123,%ar0; mov.f64 %r124,%ar1; .loc 1 40 2 mov.b64 %r125,%r123; shr.u64 %r126,%r125,32; cvt.u32.u64 %r127,%r126; .loc 1 41 2 mov.b64 %r128,%r124; shr.u64 %r129,%r128,32; cvt.u32.u64 %r130,%r129; cvt.u32.u64 %r132,%r128; mov.u32 %r93,%r132; .loc 1 43 5 and.b32 %r100,%r127,2147483647; .loc 1 44 5 and.b32 %r101,%r130,2147483647; .loc 1 47 8 or.b32 %r133,%r101,%r132; .loc 1 47 4 set.u32.eq.u32 %r135,%r133,0; neg.s32 %r136,%r135; mov.u32 %r134,%r136; .loc 1 47 15 set.u32.gt.s32 %r138,%r100,2146435071; neg.s32 %r139,%r138; mov.u32 %r137,%r139; cvt.u16.u8 %r270,%r134; mov.u16 %r141,%r270; cvt.u16.u8 %r270,%r137; mov.u16 %r142,%r270; or.b16 %r140,%r141,%r142; cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L2; .loc 1 48 14 neg.s32 %r146,%r132; .loc 1 48 13 or.b32 %r147,%r146,%r132; .loc 1 48 18 shr.u32 %r148,%r147,31; .loc 1 48 8 or.b32 %r149,%r148,%r101; .loc 1 47 33 setp.le.u32 %r150,%r149,2146435072; @ %r150 bra $L3; $L2: .loc 1 49 15 mul.f64 %r30,%r123,%r124; .loc 1 49 18 div.rn.f64 %r122,%r30,%r30; bra $L1; $L3: cvt.u32.u64 %r152,%r125; mov.u32 %r96,%r152; .loc 1 42 5 and.b32 %r118,%r127,-2147483648; .loc 1 50 4 setp.gt.s32 %r153,%r100,%r101; @ %r153 bra $L5; .loc 1 51 12 set.u32.lt.s32 %r155,%r100,%r101; neg.s32 %r156,%r155; mov.u32 %r154,%r156; .loc 1 51 21 set.u32.lt.u32 %r158,%r152,%r132; neg.s32 %r159,%r158; mov.u32 %r157,%r159; .loc 1 51 16 cvt.u16.u8 %r270,%r154; mov.u16 %r161,%r270; cvt.u16.u8 %r270,%r157; mov.u16 %r162,%r270; or.b16 %r160,%r161,%r162; cvt.u32.u16 %r163,%r160; .loc 1 51 8 cvt.u16.u8 %r164,%r163; setp.ne.u16 %r165,%r164,0; @ %r165 bra $L39; .loc 1 52 8 setp.ne.u32 %r166,%r152,%r132; @ %r166 bra $L5; .loc 1 53 14 cvta.const.u64 %r167,Zero; .loc 1 53 29 shr.u32 %r168,%r118,31; .loc 1 53 14 cvt.u64.u32 %r169,%r168; shl.b64 %r170,%r169,3; add.u64 %r171,%r167,%r170; ld.f64 %r122,[%r171]; bra $L1; $L5: .loc 1 57 4 and.b32 %r172,%r127,2146435072; setp.ne.u32 %r173,%r172,0; @ %r173 bra $L6; .loc 1 58 8 setp.ne.u32 %r174,%r100,0; @ %r174 bra $L7; .loc 1 59 21 mov.u32 %r106,%r152; .loc 1 59 27 setp.le.s32 %r175,%r152,0; @ %r175 bra $L40; .loc 1 59 11 mov.u32 %r90,-1043; $L9: .loc 1 59 41 add.u32 %r90,%r90,-1; .loc 1 59 32 add.u32 %r106,%r106,%r106; .loc 1 59 27 setp.gt.s32 %r177,%r106,0; @ %r177 bra $L9; bra $L8; $L7: .loc 1 61 20 shl.b32 %r104,%r100,11; .loc 1 61 32 setp.le.s32 %r178,%r104,0; @ %r178 bra $L41; .loc 1 61 11 mov.u32 %r90,-1022; $L10: .loc 1 61 46 add.u32 %r90,%r90,-1; .loc 1 61 37 add.u32 %r104,%r104,%r104; .loc 1 61 32 setp.gt.s32 %r180,%r104,0; @ %r180 bra $L10; bra $L8; $L6: .loc 1 63 17 shr.s32 %r181,%r100,20; .loc 1 63 12 add.u32 %r90,%r181,-1023; bra $L8; $L40: .loc 1 59 11 mov.u32 %r90,-1043; bra $L8; $L41: .loc 1 61 11 mov.u32 %r90,-1022; $L8: .loc 1 66 4 and.b32 %r182,%r130,2146435072; setp.ne.u32 %r183,%r182,0; @ %r183 bra $L11; .loc 1 67 8 setp.ne.u32 %r184,%r101,0; @ %r184 bra $L12; .loc 1 68 21 mov.u32 %r109,%r132; .loc 1 68 27 setp.le.s32 %r185,%r132,0; @ %r185 bra $L42; .loc 1 68 11 mov.u32 %r116,-1043; $L14: .loc 1 68 41 add.u32 %r116,%r116,-1; .loc 1 68 32 add.u32 %r109,%r109,%r109; .loc 1 68 27 setp.gt.s32 %r187,%r109,0; @ %r187 bra $L14; bra $L13; $L12: .loc 1 70 20 shl.b32 %r108,%r101,11; .loc 1 70 32 setp.le.s32 %r188,%r108,0; @ %r188 bra $L43; .loc 1 70 11 mov.u32 %r116,-1022; $L15: .loc 1 70 46 add.u32 %r116,%r116,-1; .loc 1 70 37 add.u32 %r108,%r108,%r108; .loc 1 70 32 setp.gt.s32 %r190,%r108,0; @ %r190 bra $L15; bra $L13; $L11: .loc 1 72 17 shr.s32 %r191,%r101,20; .loc 1 72 12 add.u32 %r116,%r191,-1023; bra $L13; $L42: .loc 1 68 11 mov.u32 %r116,-1043; bra $L13; $L43: .loc 1 70 11 mov.u32 %r116,-1022; $L13: .loc 1 75 4 setp.lt.s32 %r192,%r90,-1022; @ %r192 bra $L16; .loc 1 76 33 and.b32 %r38,%r127,1048575; .loc 1 76 9 or.b32 %r97,%r38,1048576; bra $L17; $L16: .loc 1 78 8 mov.u32 %r193,-1022; sub.u32 %r110,%r193,%r90; .loc 1 79 8 setp.gt.s32 %r194,%r110,31; @ %r194 bra $L18; .loc 1 80 18 shl.b32 %r39,%r100,%r110; .loc 1 80 31 add.u32 %r195,%r90,1054; .loc 1 80 26 shr.u32 %r196,%r152,%r195; .loc 1 80 13 or.b32 %r97,%r196,%r39; .loc 1 81 13 shl.b32 %r96,%r152,%r110; bra $L17; $L18: .loc 1 83 14 mov.u32 %r198,-1054; sub.u32 %r197,%r198,%r90; .loc 1 83 10 shl.b32 %r97,%r152,%r197; .loc 1 84 6 mov.u32 %r96,0; $L17: .loc 1 87 4 setp.lt.s32 %r269,%r116,-1022; @ %r269 bra $L19; .loc 1 88 33 and.b32 %r44,%r130,1048575; .loc 1 88 9 or.b32 %r87,%r44,1048576; .loc 1 111 13 sub.u32 %r91,%r96,%r132; bra $L20; $L19: .loc 1 90 8 mov.u32 %r200,-1022; sub.u32 %r112,%r200,%r116; .loc 1 91 8 setp.gt.s32 %r201,%r112,31; @ %r201 bra $L21; .loc 1 92 18 shl.b32 %r45,%r101,%r112; .loc 1 92 31 add.u32 %r202,%r116,1054; .loc 1 92 26 shr.u32 %r203,%r132,%r202; .loc 1 92 13 or.b32 %r87,%r203,%r45; .loc 1 93 13 shl.b32 %r93,%r132,%r112; .loc 1 111 13 sub.u32 %r91,%r96,%r93; bra $L20; $L21: .loc 1 95 14 mov.u32 %r205,-1054; sub.u32 %r204,%r205,%r116; .loc 1 95 10 shl.b32 %r87,%r132,%r204; .loc 1 101 4 sub.u32 %r92,%r90,%r116; .loc 1 102 8 setp.ne.u32 %r206,%r90,%r116; @ %r206 bra $L44; bra $L55; $L20: .loc 1 101 4 sub.u32 %r92,%r90,%r116; .loc 1 102 8 setp.eq.u32 %r207,%r90,%r116; @ ! %r207 bra $L22; bra $L24; $L44: .loc 1 96 6 mov.u32 %r93,0; $L22: mov.u32 %r119,%r92; $L29: .loc 1 103 8 sub.u32 %r88,%r97,%r87; .loc 1 103 27 setp.le.u32 %r208,%r93,%r96; @ %r208 bra $L25; .loc 1 103 38 add.u32 %r88,%r88,-1; $L25: .loc 1 104 8 setp.ge.s32 %r209,%r88,0; @ %r209 bra $L26; .loc 1 104 22 add.u32 %r210,%r97,%r97; .loc 1 104 29 shr.u32 %r211,%r96,31; .loc 1 104 25 add.u32 %r97,%r210,%r211; .loc 1 104 39 add.u32 %r96,%r96,%r96; bra $L27; $L26: .loc 1 103 17 sub.u32 %r117,%r96,%r93; .loc 1 106 13 or.b32 %r213,%r88,%r117; .loc 1 106 9 setp.ne.u32 %r214,%r213,0; @ %r214 bra $L28; .loc 1 107 18 cvta.const.u64 %r215,Zero; .loc 1 107 33 shr.u32 %r216,%r118,31; .loc 1 107 18 cvt.u64.u32 %r217,%r216; shl.b64 %r218,%r217,3; add.u64 %r219,%r215,%r218; ld.f64 %r122,[%r219]; bra $L1; $L28: .loc 1 108 14 add.u32 %r220,%r88,%r88; .loc 1 108 21 shr.u32 %r221,%r117,31; .loc 1 108 17 add.u32 %r97,%r220,%r221; .loc 1 108 31 add.u32 %r96,%r117,%r117; $L27: .loc 1 102 8 add.u32 %r119,%r119,-1; setp.ne.u32 %r223,%r119,0; @ %r223 bra $L29; .loc 1 111 13 sub.u32 %r91,%r96,%r93; $L24: .loc 1 111 4 sub.u32 %r89,%r97,%r87; .loc 1 111 23 setp.le.u32 %r224,%r93,%r96; @ %r224 bra $L30; .loc 1 111 34 add.u32 %r89,%r89,-1; $L30: .loc 1 112 4 setp.lt.s32 %r225,%r89,0; selp.u32 %r96,%r96,%r91,%r225; selp.u32 %r97,%r97,%r89,%r225; .loc 1 115 8 or.b32 %r226,%r97,%r96; .loc 1 115 4 setp.eq.u32 %r227,%r226,0; @ %r227 bra $L32; .loc 1 117 10 setp.le.s32 %r228,%r97,1048575; @ %r228 bra $L33; bra $L34; $L32: .loc 1 116 17 cvta.const.u64 %r229,Zero; .loc 1 116 32 shr.u32 %r230,%r118,31; .loc 1 116 17 cvt.u64.u32 %r231,%r230; shl.b64 %r232,%r231,3; add.u64 %r233,%r229,%r232; ld.f64 %r122,[%r233]; bra $L1; $L33: .loc 1 118 13 add.u32 %r234,%r97,%r97; .loc 1 118 20 shr.u32 %r235,%r96,31; .loc 1 118 16 add.u32 %r97,%r234,%r235; .loc 1 118 30 add.u32 %r96,%r96,%r96; .loc 1 119 9 add.u32 %r116,%r116,-1; .loc 1 117 10 setp.le.s32 %r237,%r97,1048575; @ %r237 bra $L33; setp.lt.s32 %r269,%r116,-1022; $L34: .loc 1 121 4 @ %r269 bra $L35; .loc 1 122 15 add.u32 %r239,%r97,-1048576; .loc 1 123 6 or.b32 %r240,%r239,%r118; .loc 1 122 32 add.u32 %r241,%r116,1023; .loc 1 122 38 shl.b32 %r242,%r241,20; .loc 1 123 6 or.b32 %r243,%r240,%r242; cvt.u64.u32 %r244,%r243; cvt.u64.u32 %r248,%r96; shl.b64 %r249,%r244,32; or.b64 %r250,%r249,%r248; mov.b64 %r122,%r250; bra $L1; $L35: .loc 1 125 8 mov.u32 %r251,-1022; sub.u32 %r114,%r251,%r116; .loc 1 126 8 setp.gt.s32 %r252,%r114,20; @ %r252 bra $L36; .loc 1 127 11 shr.u32 %r76,%r96,%r114; .loc 1 127 36 add.u32 %r253,%r116,1054; .loc 1 127 31 shl.b32 %r254,%r97,%r253; .loc 1 127 6 or.b32 %r94,%r254,%r76; .loc 1 128 6 shr.s32 %r255,%r97,%r114; .loc 1 134 6 or.b32 %r118,%r118,%r255; bra $L37; $L36: .loc 1 129 16 setp.gt.s32 %r256,%r114,31; @ %r256 bra $L38; .loc 1 130 24 shr.u32 %r83,%r96,%r114; .loc 1 130 16 add.u32 %r257,%r116,1054; .loc 1 130 11 shl.b32 %r258,%r97,%r257; .loc 1 130 6 or.b32 %r94,%r258,%r83; bra $L37; $L38: .loc 1 132 14 mov.u32 %r260,-1054; sub.u32 %r259,%r260,%r116; .loc 1 132 10 shr.s32 %r94,%r97,%r259; $L37: .loc 1 134 6 cvt.u64.u32 %r261,%r118; cvt.u64.u32 %r265,%r94; shl.b64 %r266,%r261,32; or.b64 %r267,%r266,%r265; mov.b64 %r122,%r267; bra $L1; $L39: .loc 1 51 34 mov.f64 %r122,%r123; bra $L1; $L55: .loc 1 111 4 sub.u32 %r89,%r97,%r87; mov.u32 %r91,%r96; bra $L30; $L1: .loc 1 138 1 mov.f64 %value,%r122; st.param.f64 [%value_out],%value; ret; } lib_a-e_hypot.o/0 0 0 644 6372 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypot .visible .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_hypot .visible .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r39; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r75; .reg .u64 %r76; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r83; .reg .u32 %r84; .reg .f64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u32 %r105; .reg .u32 %r107; .reg .u32 %r109; .reg .pred %r110; .reg .u32 %r111; .reg .u32 %r113; .reg .u32 %r115; .reg .pred %r116; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .pred %r126; .reg .u64 %r127; .reg .u32 %r128; .reg .u32 %r130; .reg .pred %r131; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .pred %r140; .reg .u64 %r142; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r149; .reg .u64 %r151; .reg .u32 %r154; .reg .u64 %r155; .reg .u64 %r156; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r162; .reg .pred %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u64 %r171; .reg .u64 %r172; mov.f64 %r82,%ar0; mov.f64 %r83,%ar1; .loc 1 60 2 mov.b64 %r86,%r82; shr.u64 %r87,%r86,32; cvt.u32.u64 %r88,%r87; .loc 1 61 5 and.b32 %r51,%r88,2147483647; .loc 1 62 2 mov.b64 %r89,%r83; shr.u64 %r90,%r89,32; cvt.u32.u64 %r91,%r90; .loc 1 63 5 and.b32 %r52,%r91,2147483647; .loc 1 64 4 setp.ge.s32 %r92,%r51,%r52; @ %r92 bra $L2; mov.u32 %r84,%r51; mov.u32 %r51,%r52; mov.u32 %r52,%r84; mov.f64 %r85,%r82; .loc 1 64 16 mov.f64 %r82,%r83; .loc 1 64 20 mov.f64 %r83,%r85; $L2: .loc 1 65 2 mov.b64 %r71,%r82; cvt.u64.u32 %r171,%r51; shl.b64 %r94,%r171,32; and.b64 %r95,%r71,4294967295; or.b64 %r96,%r95,%r94; mov.b64 %r81,%r96; .loc 1 66 2 mov.b64 %r72,%r83; cvt.u64.u32 %r172,%r52; shl.b64 %r98,%r172,32; and.b64 %r99,%r72,4294967295; or.b64 %r100,%r99,%r98; mov.b64 %r49,%r100; .loc 1 67 8 sub.u32 %r101,%r51,%r52; .loc 1 67 4 setp.le.s32 %r102,%r101,62914560; @ %r102 bra $L3; .loc 1 67 33 add.f64 %r81,%r81,%r49; bra $L1; $L3: .loc 1 69 4 setp.le.s32 %r103,%r51,1596981248; @ %r103 bra $L13; .loc 1 70 7 setp.le.s32 %r104,%r51,2146435071; @ %r104 bra $L6; .loc 1 74 16 and.b32 %r105,%r51,1048575; .loc 1 74 25 cvt.u32.u64 %r107,%r96; or.b32 %r109,%r105,%r107; .loc 1 74 11 setp.eq.u32 %r110,%r109,0; @ %r110 bra $L7; .loc 1 72 11 add.f64 %r81,%r81,%r49; $L7: .loc 1 76 16 xor.b32 %r111,%r52,2146435072; .loc 1 76 28 cvt.u32.u64 %r113,%r100; or.b32 %r115,%r111,%r113; .loc 1 76 11 setp.ne.u32 %r116,%r115,0; .loc 1 76 40 selp.f64 %r81,%r81,%r49,%r116; bra $L1; $L6: .loc 1 80 8 add.u32 %r51,%r51,-629145600; .loc 1 80 26 add.u32 %r52,%r52,-629145600; .loc 1 81 5 cvt.u64.u32 %r171,%r51; shl.b64 %r118,%r171,32; and.b64 %r119,%r96,4294967295; or.b64 %r120,%r119,%r118; mov.b64 %r81,%r120; .loc 1 82 5 cvt.u64.u32 %r172,%r52; shl.b64 %r122,%r172,32; and.b64 %r123,%r100,4294967295; or.b64 %r124,%r123,%r122; mov.b64 %r49,%r124; .loc 1 80 43 mov.u32 %r50,600; bra $L5; $L13: .loc 1 68 3 mov.u32 %r50,0; $L5: .loc 1 84 4 setp.gt.s32 %r125,%r52,548405247; @ %r125 bra $L8; .loc 1 85 8 setp.gt.s32 %r126,%r52,1048575; @ %r126 bra $L9; .loc 1 88 9 mov.b64 %r127,%r49; cvt.u32.u64 %r128,%r127; or.b32 %r130,%r52,%r128; .loc 1 88 5 setp.eq.u32 %r131,%r130,0; @ %r131 bra $L1; .loc 1 91 5 mul.f64 %r49,%r49,0d7fd0000000000000; .loc 1 92 5 mul.f64 %r81,%r81,0d7fd0000000000000; .loc 1 93 5 add.u32 %r50,%r50,-1022; bra $L8; $L9: .loc 1 95 13 add.u32 %r51,%r51,629145600; .loc 1 96 6 add.u32 %r52,%r52,629145600; .loc 1 97 5 add.u32 %r50,%r50,-600; .loc 1 98 3 mov.b64 %r75,%r81; cvt.u64.u32 %r171,%r51; shl.b64 %r133,%r171,32; and.b64 %r134,%r75,4294967295; or.b64 %r135,%r134,%r133; mov.b64 %r81,%r135; .loc 1 99 3 mov.b64 %r76,%r49; cvt.u64.u32 %r172,%r52; shl.b64 %r137,%r172,32; and.b64 %r138,%r76,4294967295; or.b64 %r139,%r138,%r137; mov.b64 %r49,%r139; $L8: .loc 1 103 4 sub.f64 %r60,%r81,%r49; .loc 1 104 5 setp.lt.f64 %r140,%r49,%r60; @ ! %r140 bra $L24; .loc 1 106 6 shl.b64 %r142,%r171,32; mov.b64 %r65,%r142; .loc 1 108 45 add.f64 %r145,%r81,%r65; .loc 1 107 9 sub.f64 %r146,%r81,%r65; .loc 1 108 42 mul.f64 %r147,%r145,%r146; fma.rn.f64 %r68,%r49,%r49,%r147; .loc 1 108 11 fma.rn.f64 %r39,%r65,%r65,%r68; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r149,[%value_in]; } mov.f64 %r81,%r149; bra $L12; $L24: .loc 1 112 6 shl.b64 %r151,%r172,32; mov.b64 %r61,%r151; .loc 1 113 9 sub.f64 %r62,%r49,%r61; .loc 1 115 6 add.u32 %r154,%r51,1048576; cvt.u64.u32 %r155,%r154; shl.b64 %r156,%r155,32; mov.b64 %r63,%r156; .loc 1 116 9 neg.f64 %r159,%r63; fma.rn.f64 %r64,%r81,0d4000000000000000,%r159; .loc 1 117 49 mul.f64 %r160,%r49,%r64; .loc 1 117 46 fma.rn.f64 %r44,%r62,%r63,%r160; fma.rn.f64 %r69,%r60,%r60,%r44; .loc 1 117 11 fma.rn.f64 %r45,%r61,%r63,%r69; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r45; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r162,[%value_in]; } mov.f64 %r81,%r162; $L12: .loc 1 119 4 setp.eq.u32 %r163,%r50,0; @ %r163 bra $L1; .loc 1 123 6 shl.b32 %r164,%r50,20; add.u32 %r165,%r164,1072693248; cvt.u64.u32 %r166,%r165; shl.b64 %r167,%r166,32; mov.b64 %r67,%r167; .loc 1 124 15 mul.f64 %r81,%r81,%r67; $L1: .loc 1 126 1 mov.f64 %value,%r81; st.param.f64 [%value_out],%value; ret; } lib_a-e_j0.o/ 0 0 0 644 18381 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: pzero .func (.param .f64 %value_out) pzero (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_j0.c" // BEGIN FUNCTION DECL: qzero .func (.param .f64 %value_out) qzero (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .visible .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .visible .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN FUNCTION DEF: pzero .func (.param .f64 %value_out) pzero (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .f64 %r58; .reg .f64 %r60; mov.f64 %r50,%ar0; .loc 1 339 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r53,%r52; .loc 1 340 5 and.b32 %r36,%r53,2147483647; .loc 1 341 5 setp.gt.s32 %r54,%r36,1102053375; @ %r54 bra $L4; .loc 1 342 9 setp.gt.s32 %r55,%r36,1075838975; @ %r55 bra $L5; .loc 1 343 9 setp.gt.s32 %r56,%r36,1074933386; @ %r56 bra $L6; .loc 1 344 9 setp.le.s32 %r57,%r36,1074191212; selp.f64 %r48,0d402d50b344391809,0d4065b296fc379081,%r57; selp.f64 %r47,0d40633c033ab6faff,0d40919ffcb8c39b7e,%r57; selp.f64 %r46,0d4070e78642ea079b,0d4092a66e6d1061d6,%r57; selp.f64 %r45,0d4061069e0ee8878f,0d40769839464a7c0e,%r57; selp.f64 %r44,0dc009de81af8fe70f,0dc03f72aca892d80f,%r57; selp.f64 %r43,0dc02662e6c5246303,0dc04d0a22420a1a45,%r57; selp.f64 %r42,0dc01e8af3edafa7f3,0dc035f74a4cb94e14,%r57; selp.f64 %r41,0dbff736398a24a843,0dc00345b2aea48074,%r57; selp.f64 %r40,0dbfb1ff62495e1e42,0dbfb1fff6f7c0e24b,%r57; selp.f64 %r28,0d40363865908b5959,0d4041ed9284077dd3,%r57; selp.f64 %r23,0dbe77d316e927026d,0dbe25e1036fe1aa86,%r57; bra $L3; $L5: mov.f64 %r48,0d40e741774f2c49dc; mov.f64 %r47,0d40fc810f8f9fa9bd; mov.f64 %r46,0d40e3d2bb6eb6b05f; mov.f64 %r45,0d40adf37d50596938; mov.f64 %r44,0dc0b4850b36cc643d; mov.f64 %r43,0dc0a36a6ecd4dcafc; mov.f64 %r42,0dc07011027b19e863; mov.f64 %r41,0dc02029d0b44fa779; mov.f64 %r40,0dbfb1fffffffffd32; .loc 1 342 36 mov.f64 %r28,0d405d223307a96751; .loc 1 342 28 mov.f64 %r23,0d0000000000000000; bra $L3; $L6: mov.f64 %r48,0d40a2cc1dc70be864; mov.f64 %r47,0d40c2ccb8fa76fa38; mov.f64 %r46,0d40b75af88fbe1d60; mov.f64 %r45,0d40906d025c7e2864; mov.f64 %r44,0dc075a6ef28a38bd7; mov.f64 %r43,0dc074b3b36742cc63; mov.f64 %r42,0dc050eb2f5a7d1783; mov.f64 %r41,0dc010a370f90c6bbf; mov.f64 %r40,0dbfb1ffffe69afbc6; .loc 1 343 36 mov.f64 %r28,0d404e60810c98c5de; .loc 1 343 28 mov.f64 %r23,0dbda918b147e495cc; $L3: .loc 1 346 12 mul.f64 %r58,%r50,%r50; .loc 1 346 4 rcp.rn.f64 %r37,%r58; .loc 1 347 42 fma.rn.f64 %r24,%r37,%r44,%r43; .loc 1 347 34 fma.rn.f64 %r25,%r24,%r37,%r42; .loc 1 347 26 fma.rn.f64 %r26,%r25,%r37,%r41; .loc 1 347 18 fma.rn.f64 %r27,%r26,%r37,%r40; .loc 1 347 4 fma.rn.f64 %r38,%r27,%r37,%r23; .loc 1 348 41 fma.rn.f64 %r30,%r37,%r48,%r47; .loc 1 348 33 fma.rn.f64 %r31,%r30,%r37,%r46; .loc 1 348 25 fma.rn.f64 %r32,%r31,%r37,%r45; .loc 1 348 17 fma.rn.f64 %r33,%r32,%r37,%r28; .loc 1 348 4 fma.rn.f64 %r39,%r33,%r37,0d3ff0000000000000; .loc 1 349 15 div.rn.f64 %r60,%r38,%r39; .loc 1 349 12 add.f64 %r49,%r60,0d3ff0000000000000; bra $L1; $L4: .loc 1 341 33 mov.f64 %r49,0d3ff0000000000000; $L1: .loc 1 350 1 mov.f64 %value,%r49; st.param.f64 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qzero .func (.param .f64 %value_out) qzero (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; mov.f64 %r53,%ar0; .loc 1 476 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r56,%r55; .loc 1 477 5 and.b32 %r38,%r56,2147483647; .loc 1 478 5 setp.le.s32 %r57,%r38,1102053375; @ %r57 bra $L9; .loc 1 478 38 mov.f64 %r58,0dbfc0000000000000; div.rn.f64 %r52,%r58,%r53; bra $L8; $L9: .loc 1 479 9 setp.gt.s32 %r59,%r38,1075838975; @ %r59 bra $L12; .loc 1 480 9 setp.gt.s32 %r60,%r38,1074933386; @ %r60 bra $L13; .loc 1 481 9 setp.le.s32 %r61,%r38,1074191212; selp.f64 %r51,0dc0153e6af8b32931,0dc062a7eb201cf40f,%r61; selp.f64 %r50,0d406a95530e001365,0d40a3a8aad94fb1c0,%r61; selp.f64 %r49,0d408b977c9c5cc214,0d40b93c6cd7c76a28,%r61; selp.f64 %r48,0d408a664522b3bf22,0d40acf04be44dfc63,%r61; selp.f64 %r47,0d4070d591e4d14b40,0d40862d8386544eb3,%r61; selp.f64 %r46,0d403040b171814bb4,0d4064d77c81fa21e0,%r61; selp.f64 %r45,0d403faa8e29fbdc4a,0d406559dbe25efd1f,%r61; selp.f64 %r44,0d402cfdbfaaf96fe5,0d40454f98962daedd,%r61; selp.f64 %r43,0d3ffff897e727779c,0d400ac0fc61149cf5,%r61; selp.f64 %r42,0d3fb2bec53e883e34,0d3fb2bfee0e8d0842,%r61; selp.f64 %r28,0d403e5d96f7c07aed,0d40486122bfe343a6,%r61; selp.f64 %r23,0d3e84313b54f76bdb,0d3e32cd036adecb82,%r61; bra $L11; $L12: mov.f64 %r51,0dc114fd6d2c9530c5; mov.f64 %r50,0d4129a66b28de0b3d; mov.f64 %r49,0d412883da83a52b43; mov.f64 %r48,0d4101665254d38c3f; mov.f64 %r47,0d40bfa2584e6b0563; mov.f64 %r46,0d40e212d40e901566; mov.f64 %r45,0d40c14d993e18f46d; mov.f64 %r44,0d40816d6315301825; mov.f64 %r43,0d402789525bb334d6; mov.f64 %r42,0d3fb2bffffffffe2c; .loc 1 479 36 mov.f64 %r28,0d406478d5365b39bc; .loc 1 479 28 mov.f64 %r23,0d0000000000000000; bra $L11; $L13: mov.f64 %r51,0dc0b4ea57bedbc609; mov.f64 %r50,0d40e191181f7a54a0; mov.f64 %r49,0d40ebb5e397e02372; mov.f64 %r48,0d40d267d27b591e6d; mov.f64 %r47,0d40a03ba0da21c0ce; mov.f64 %r46,0d409f17e953c6e3a6; mov.f64 %r45,0d40900cf99dc8c481; mov.f64 %r44,0d4060e3920a8788e9; mov.f64 %r43,0d401757b0b9953dd3; mov.f64 %r42,0d3fb2bfffd172b04c; .loc 1 480 36 mov.f64 %r28,0d4054b1b3fb5e1543; .loc 1 480 28 mov.f64 %r23,0d3db43d8f29cc8cd9; $L11: .loc 1 483 12 mul.f64 %r62,%r53,%r53; .loc 1 483 4 rcp.rn.f64 %r39,%r62; .loc 1 484 42 fma.rn.f64 %r24,%r39,%r46,%r45; .loc 1 484 34 fma.rn.f64 %r25,%r24,%r39,%r44; .loc 1 484 26 fma.rn.f64 %r26,%r25,%r39,%r43; .loc 1 484 18 fma.rn.f64 %r27,%r26,%r39,%r42; .loc 1 484 4 fma.rn.f64 %r40,%r27,%r39,%r23; .loc 1 485 49 fma.rn.f64 %r30,%r39,%r51,%r50; .loc 1 485 41 fma.rn.f64 %r31,%r30,%r39,%r49; .loc 1 485 33 fma.rn.f64 %r32,%r31,%r39,%r48; .loc 1 485 25 fma.rn.f64 %r33,%r32,%r39,%r47; .loc 1 485 17 fma.rn.f64 %r34,%r33,%r39,%r28; .loc 1 485 4 fma.rn.f64 %r41,%r34,%r39,0d3ff0000000000000; .loc 1 486 19 div.rn.f64 %r64,%r40,%r41; .loc 1 486 16 mov.f64 %r66,0d3fc0000000000000; sub.f64 %r65,%r64,%r66; .loc 1 486 22 div.rn.f64 %r52,%r65,%r53; $L8: .loc 1 487 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j0 .visible .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r45; .reg .f64 %r46; .reg .u32 %r48; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .f64 %r69; .reg .f64 %r72; .reg .u32 %r73; .reg .pred %r74; .reg .f64 %r76; .reg .f64 %r78; .reg .pred %r79; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r83; .reg .pred %r84; .reg .pred %r85; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r90; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r96; .reg .f64 %r97; .reg .pred %r98; .reg .f64 %r99; .reg .pred %r100; .reg .pred %r101; .reg .f64 %r103; .reg .pred %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r108; mov.f64 %r64,%ar0; .loc 1 104 2 mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r67,%r66; .loc 1 105 5 and.b32 %r48,%r67,2147483647; .loc 1 106 4 setp.le.s32 %r68,%r48,2146435071; @ %r68 bra $L16; .loc 1 106 34 mul.f64 %r69,%r64,%r64; .loc 1 106 31 rcp.rn.f64 %r63,%r69; bra $L15; $L16: .loc 1 107 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 108 4 and.b32 %r73,%r67,1073741824; setp.eq.u32 %r74,%r73,0; @ %r74 bra $L18; .loc 1 109 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),sin,(%out_arg1); ld.param.f64 %r76,[%value_in]; } .loc 1 110 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),cos,(%out_arg1); ld.param.f64 %r78,[%value_in]; } .loc 1 111 6 sub.f64 %r45,%r76,%r78; .loc 1 112 6 add.f64 %r46,%r76,%r78; .loc 1 113 5 setp.gt.s32 %r79,%r48,2145386495; @ %r79 bra $L19; .loc 1 114 12 add.f64 %r81,%r72,%r72; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),cos,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 114 9 neg.f64 %r56,%r82; .loc 1 115 13 mul.f64 %r83,%r76,%r78; .loc 1 115 10 setp.lt.f64 %r84,%r83,0d0000000000000000; @ ! %r84 bra $L29; .loc 1 115 26 div.rn.f64 %r46,%r56,%r45; bra $L19; $L29: .loc 1 116 20 div.rn.f64 %r45,%r56,%r46; $L19: .loc 1 122 5 setp.le.s32 %r85,%r48,1207959552; @ %r85 bra $L22; .loc 1 122 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 122 35 mul.f64 %r88,%r46,0d3fe20dd750429b6d; .loc 1 122 23 div.rn.f64 %r63,%r88,%r87; bra $L15; $L22: .loc 1 124 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),pzero,(%out_arg1); ld.param.f64 %r90,[%value_in]; } .loc 1 124 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),qzero,(%out_arg1); ld.param.f64 %r92,[%value_in]; } .loc 1 125 28 mul.f64 %r93,%r45,%r92; .loc 1 125 26 neg.f64 %r94,%r93; fma.rn.f64 %r29,%r46,%r90,%r94; .loc 1 125 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r96,[%value_in]; } .loc 1 125 20 mul.f64 %r97,%r29,0d3fe20dd750429b6d; .loc 1 125 9 div.rn.f64 %r63,%r97,%r96; bra $L15; $L18: .loc 1 129 4 setp.gt.s32 %r98,%r48,1059061759; @ %r98 bra $L23; .loc 1 130 13 add.f64 %r99,%r72,0d7e37e43c8800759c; .loc 1 130 8 setp.gt.f64 %r100,%r99,0d3ff0000000000000; @ ! %r100 bra $L23; .loc 1 131 12 setp.le.s32 %r101,%r48,1044381695; @ %r101 bra $L26; .loc 1 132 33 mul.f64 %r103,%r72,0dbfd0000000000000; fma.rn.f64 %r63,%r103,%r72,0d3ff0000000000000; bra $L15; $L23: .loc 1 135 4 mul.f64 %r51,%r72,%r72; .loc 1 136 27 fma.rn.f64 %r34,%r51,0dbe33d5e773d63fce,0d3ebeb1d10c503919; .loc 1 136 20 fma.rn.f64 %r35,%r34,%r51,0dbf28e6a5b61ac6e9; .loc 1 136 13 fma.rn.f64 %r36,%r35,%r51,0d3f8ffffffffffffd; .loc 1 136 4 mul.f64 %r52,%r36,%r51; .loc 1 137 31 fma.rn.f64 %r37,%r51,0d3e1408bcf4745d8f,0d3ea13b54ce84d5a9; .loc 1 137 24 fma.rn.f64 %r38,%r37,%r51,0d3f1ea6d2dd57dbf4; .loc 1 137 17 fma.rn.f64 %r39,%r38,%r51,0d3f8ffce882c8c2a4; .loc 1 137 4 fma.rn.f64 %r53,%r39,%r51,0d3ff0000000000000; .loc 1 139 30 div.rn.f64 %r62,%r52,%r53; .loc 1 138 4 setp.gt.s32 %r104,%r48,1072693247; @ %r104 bra $L25; .loc 1 139 27 mov.f64 %r106,0d3fd0000000000000; sub.f64 %r105,%r62,%r106; .loc 1 139 17 fma.rn.f64 %r63,%r105,%r51,0d3ff0000000000000; bra $L15; $L25: .loc 1 142 17 fma.rn.f64 %r41,%r72,0d3fe0000000000000,0d3ff0000000000000; .loc 1 142 25 fma.rn.f64 %r42,%r72,0dbfe0000000000000,0d3ff0000000000000; .loc 1 142 30 mul.f64 %r108,%r51,%r62; .loc 1 142 28 fma.rn.f64 %r63,%r41,%r42,%r108; bra $L15; $L26: .loc 1 131 35 mov.f64 %r63,0d3ff0000000000000; $L15: .loc 1 144 1 mov.f64 %value,%r63; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y0 .visible .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r46; .reg .f64 %r47; .reg .u32 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r56; .reg .f64 %r62; .reg .f64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r70; .reg .u32 %r72; .reg .pred %r73; .reg .f64 %r74; .reg .pred %r75; .reg .f64 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .f64 %r80; .reg .f64 %r82; .reg .pred %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r94; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r100; .reg .pred %r101; .reg .f64 %r103; .reg .f64 %r105; .reg .f64 %r107; .reg .f64 %r108; mov.f64 %r63,%ar0; .loc 1 173 2 mov.b64 %r64,%r63; shr.u64 %r65,%r64,32; cvt.u32.u64 %r66,%r65; .loc 1 174 12 and.b32 %r50,%r66,2147483647; .loc 1 176 4 setp.le.s32 %r67,%r50,2146435071; @ %r67 bra $L31; .loc 1 176 35 fma.rn.f64 %r22,%r63,%r63,%r63; .loc 1 176 32 rcp.rn.f64 %r62,%r22; bra $L30; $L31: .loc 1 173 2 cvt.u32.u64 %r70,%r64; .loc 1 177 15 or.b32 %r72,%r70,%r50; .loc 1 177 11 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L33; .loc 1 177 35 mov.f64 %r74,0dbff0000000000000; div.rn.f64 %r62,%r74,0d0000000000000000; bra $L30; $L33: .loc 1 178 11 setp.ge.s32 %r75,%r66,0; @ %r75 bra $L34; .loc 1 178 29 mov.f64 %r76,0d0000000000000000; div.rn.f64 %r62,%r76,%r76; bra $L30; $L34: .loc 1 179 11 and.b32 %r77,%r66,1073741824; setp.eq.u32 %r78,%r77,0; @ %r78 bra $L35; .loc 1 191 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),sin,(%out_arg1); ld.param.f64 %r80,[%value_in]; } .loc 1 192 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),cos,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 193 20 sub.f64 %r46,%r80,%r82; .loc 1 194 20 add.f64 %r47,%r80,%r82; .loc 1 199 19 setp.gt.s32 %r83,%r50,2145386495; @ %r83 bra $L36; .loc 1 200 26 add.f64 %r85,%r63,%r63; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r85; call (%value_in),cos,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 200 23 neg.f64 %r56,%r86; .loc 1 201 27 mul.f64 %r87,%r80,%r82; .loc 1 201 24 setp.lt.f64 %r88,%r87,0d0000000000000000; @ ! %r88 bra $L42; .loc 1 201 40 div.rn.f64 %r47,%r56,%r46; bra $L36; $L42: .loc 1 202 40 div.rn.f64 %r46,%r56,%r47; $L36: .loc 1 204 19 setp.le.s32 %r89,%r50,1207959552; @ %r89 bra $L39; .loc 1 204 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r91,[%value_in]; } .loc 1 204 49 mul.f64 %r92,%r46,0d3fe20dd750429b6d; .loc 1 204 37 div.rn.f64 %r62,%r92,%r91; bra $L30; $L39: .loc 1 206 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),pzero,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 206 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),qzero,(%out_arg1); ld.param.f64 %r96,[%value_in]; } .loc 1 207 42 mul.f64 %r97,%r47,%r96; .loc 1 207 40 fma.rn.f64 %r30,%r46,%r94,%r97; .loc 1 207 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 207 34 mul.f64 %r100,%r30,0d3fe20dd750429b6d; .loc 1 207 23 div.rn.f64 %r62,%r100,%r99; bra $L30; $L35: .loc 1 211 4 setp.gt.s32 %r101,%r50,1044381696; @ %r101 bra $L40; .loc 1 212 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r103,[%value_in]; } .loc 1 212 17 fma.rn.f64 %r62,%r103,0d3fe45f306dc9c883,0dbfb2e4d699cbd01f; bra $L30; $L40: .loc 1 214 4 mul.f64 %r51,%r63,%r63; .loc 1 215 44 fma.rn.f64 %r34,%r51,0dbdc5e43d693fb3c8,0d3e5500573b4eabd4; .loc 1 215 37 fma.rn.f64 %r35,%r34,%r51,0dbecffea773d25cad; .loc 1 215 30 fma.rn.f64 %r36,%r35,%r51,0d3f36c54d20b29b6b; .loc 1 215 23 fma.rn.f64 %r37,%r36,%r51,0dbf8c4ce8b16cfa97; .loc 1 215 16 fma.rn.f64 %r38,%r37,%r51,0d3fc69d019de9e3fc; .loc 1 215 4 fma.rn.f64 %r52,%r38,%r51,0dbfb2e4d699cbd01f; .loc 1 216 30 fma.rn.f64 %r39,%r51,0d3dfe50183bd6d9ef,0d3e91642d7ff202fd; .loc 1 216 23 fma.rn.f64 %r40,%r39,%r51,0d3f13ecbbf578c6c1; .loc 1 216 16 fma.rn.f64 %r41,%r40,%r51,0d3f8a127091c9c71a; .loc 1 216 4 fma.rn.f64 %r53,%r41,%r51,0d3ff0000000000000; .loc 1 217 10 div.rn.f64 %r42,%r52,%r53; .loc 1 217 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r105,[%value_in]; } .loc 1 217 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r107,[%value_in]; } .loc 1 217 35 mul.f64 %r108,%r105,%r107; .loc 1 217 13 fma.rn.f64 %r62,%r108,0d3fe45f306dc9c883,%r42; $L30: .loc 1 218 1 mov.f64 %value,%r62; st.param.f64 [%value_out],%value; ret; } lib_a-e_j1.o/ 0 0 0 644 17699 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: pone .func (.param .f64 %value_out) pone (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_j1.c" // BEGIN FUNCTION DECL: qone .func (.param .f64 %value_out) qone (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .visible .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .visible .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN FUNCTION DEF: pone .func (.param .f64 %value_out) pone (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .f64 %r58; .reg .f64 %r60; mov.f64 %r50,%ar0; .loc 1 337 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r53,%r52; .loc 1 338 5 and.b32 %r36,%r53,2147483647; .loc 1 339 5 setp.gt.s32 %r54,%r36,1102053375; @ %r54 bra $L4; .loc 1 340 9 setp.gt.s32 %r55,%r36,1075838975; @ %r55 bra $L5; .loc 1 341 16 setp.gt.s32 %r56,%r36,1074933386; @ %r56 bra $L6; .loc 1 342 16 setp.le.s32 %r57,%r36,1074191212; selp.f64 %r48,0d4020bab1f44e5192,0d4059f26d7c2eed53,%r57; selp.f64 %r47,0d405d6b7ada1884a9,0d408bd67da32e31e9,%r57; selp.f64 %r46,0d406d08d8d5a2dbd9,0d40905b7c5037d523,%r57; selp.f64 %r45,0d405f529314f92cd5,0d40750c3307f1a75f,%r57; selp.f64 %r44,0d40144b49a574c1fe,0d4048478f8ea83ee5,%r57; selp.f64 %r43,0d4031b1a8177f8ee2,0d4056c3854d2c1837,%r57; selp.f64 %r42,0d40287c377f71a964,0d40418f489da6d129,%r57; selp.f64 %r41,0d4002f2b7f98faec0,0d400f76bce85ead8a,%r57; selp.f64 %r40,0d3fbdff42be760d83,0d3fbdfff55b21d17b,%r57; selp.f64 %r28,0d40356fbd8ad5ecdc,0d40416549a134069c,%r57; selp.f64 %r23,0d3e7ce9d4f65544f4,0d3e29fc21a7ad9edd,%r57; bra $L3; $L5: mov.f64 %r48,0d40de1511697a0b2d; mov.f64 %r47,0d40f7d42cb28f17bb; mov.f64 %r46,0d40e20b8697c5bb7f; mov.f64 %r45,0d40ac85dc964d274f; mov.f64 %r44,0d40beea7ac32782dd; mov.f64 %r43,0d40ae457da3a532cc; mov.f64 %r42,0d4079c0d4652ea590; mov.f64 %r41,0d402a7a9d357f7fce; mov.f64 %r40,0d3fbdfffffffffcce; .loc 1 340 36 mov.f64 %r28,0d405c8d458e656cac; .loc 1 340 28 mov.f64 %r23,0d0000000000000000; bra $L3; $L6: mov.f64 %r48,0d40978030036f5e51; mov.f64 %r47,0d40bea4b0b8a5bb15; mov.f64 %r46,0d40b4e9445706b6fb; mov.f64 %r45,0d408efb361b066701; mov.f64 %r44,0d408085b8bb7e0cb7; mov.f64 %r43,0d40802d16d052d649; mov.f64 %r42,0d405b13b9452602ed; mov.f64 %r41,0d401b36046e6315e3; mov.f64 %r40,0d3fbdffffe2c10043; .loc 1 341 43 mov.f64 %r28,0d404da3eaa8af633d; .loc 1 341 35 mov.f64 %r23,0d3dad0667dae1ca7d; $L3: .loc 1 344 19 mul.f64 %r58,%r50,%r50; .loc 1 344 11 rcp.rn.f64 %r37,%r58; .loc 1 345 49 fma.rn.f64 %r24,%r37,%r44,%r43; .loc 1 345 41 fma.rn.f64 %r25,%r24,%r37,%r42; .loc 1 345 33 fma.rn.f64 %r26,%r25,%r37,%r41; .loc 1 345 25 fma.rn.f64 %r27,%r26,%r37,%r40; .loc 1 345 11 fma.rn.f64 %r38,%r27,%r37,%r23; .loc 1 346 48 fma.rn.f64 %r30,%r37,%r48,%r47; .loc 1 346 40 fma.rn.f64 %r31,%r30,%r37,%r46; .loc 1 346 32 fma.rn.f64 %r32,%r31,%r37,%r45; .loc 1 346 24 fma.rn.f64 %r33,%r32,%r37,%r28; .loc 1 346 11 fma.rn.f64 %r39,%r33,%r37,0d3ff0000000000000; .loc 1 347 22 div.rn.f64 %r60,%r38,%r39; .loc 1 347 19 add.f64 %r49,%r60,0d3ff0000000000000; bra $L1; $L4: .loc 1 339 33 mov.f64 %r49,0d3ff0000000000000; $L1: .loc 1 348 1 mov.f64 %value,%r49; st.param.f64 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qone .func (.param .f64 %value_out) qone (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r65; mov.f64 %r53,%ar0; .loc 1 475 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r56,%r55; .loc 1 476 5 and.b32 %r38,%r56,2147483647; .loc 1 477 5 setp.le.s32 %r57,%r38,1102053375; @ %r57 bra $L9; .loc 1 477 37 mov.f64 %r58,0d3fd8000000000000; div.rn.f64 %r52,%r58,%r53; bra $L8; $L9: .loc 1 478 9 setp.gt.s32 %r59,%r38,1075838975; @ %r59 bra $L12; .loc 1 479 9 setp.gt.s32 %r60,%r38,1074933386; @ %r60 bra $L13; .loc 1 480 9 setp.le.s32 %r61,%r38,1074191212; selp.f64 %r51,0dc013d686e71be86b,0dc060e670290a311f,%r61; selp.f64 %r50,0d40637e5e3c3ed8d4,0d409dbc7a0dd4df4b,%r61; selp.f64 %r49,0d40871b2548d4c029,0d40b5abbaa61d54a6,%r61; selp.f64 %r48,0d4087ac05ce49a0f7,0d40aa684e448e7c9a,%r61; selp.f64 %r47,0d406f9f68db821cba,0d40850eebc031ee3e,%r61; selp.f64 %r46,0dc0355f3639cf6e52,0dc06b66b95f5c1bf6,%r61; selp.f64 %r45,0dc04529a3de104aaa,0dc06c87d34718d55f,%r61; selp.f64 %r44,0dc033a9e2c168907f,0dc04cec71c25d16da,%r61; selp.f64 %r43,0dc006048469bb4eda,0dc01270c23302d9ff,%r61; selp.f64 %r42,0dbfba3e8e9148b010,0dbfba3feb51aeed54,%r61; selp.f64 %r28,0d403d888a78ae64ff,0d4047d523ccd367e4,%r61; selp.f64 %r23,0dbe87f12644c626d2,0dbe35cfa9d38fc84f,%r61; bra $L11; $L12: mov.f64 %r51,0dc111f9690ea5aa18; mov.f64 %r50,0d412457d27719ad5c; mov.f64 %r49,0d4125f65372869c19; mov.f64 %r48,0d4100579ab0b75e98; mov.f64 %r47,0d40be9162d0d88419; mov.f64 %r46,0dc0e7a6d065d09c6a; mov.f64 %r45,0dc0c724e740f87415; mov.f64 %r44,0dc087bcd053e4b576; mov.f64 %r43,0dc0304591a26779f7; mov.f64 %r42,0dbfba3ffffffffdf3; .loc 1 478 36 mov.f64 %r28,0d40642ca6de5bcde5; .loc 1 478 28 mov.f64 %r23,0d0000000000000000; bra $L11; $L13: mov.f64 %r51,0dc0b26f2efcffa004; mov.f64 %r50,0d40db4b04cf7c364b; mov.f64 %r49,0d40e8576daabad197; mov.f64 %r48,0d40d10f1f0d64ce29; mov.f64 %r47,0d409f1f31e77bf839; mov.f64 %r46,0dc0a468e388fda79d; mov.f64 %r45,0dc09574c66931734f; mov.f64 %r44,0dc066f56d6ca7b9b0; mov.f64 %r43,0dc0201ce6ca03ad4b; mov.f64 %r42,0dbfba3fffcb597fef; .loc 1 479 36 mov.f64 %r28,0d405451b2ff5a11b2; .loc 1 479 28 mov.f64 %r23,0dbdb6fa431aa1a098; $L11: .loc 1 482 12 mul.f64 %r62,%r53,%r53; .loc 1 482 4 rcp.rn.f64 %r39,%r62; .loc 1 483 42 fma.rn.f64 %r24,%r39,%r46,%r45; .loc 1 483 34 fma.rn.f64 %r25,%r24,%r39,%r44; .loc 1 483 26 fma.rn.f64 %r26,%r25,%r39,%r43; .loc 1 483 18 fma.rn.f64 %r27,%r26,%r39,%r42; .loc 1 483 4 fma.rn.f64 %r40,%r27,%r39,%r23; .loc 1 484 49 fma.rn.f64 %r30,%r39,%r51,%r50; .loc 1 484 41 fma.rn.f64 %r31,%r30,%r39,%r49; .loc 1 484 33 fma.rn.f64 %r32,%r31,%r39,%r48; .loc 1 484 25 fma.rn.f64 %r33,%r32,%r39,%r47; .loc 1 484 17 fma.rn.f64 %r34,%r33,%r39,%r28; .loc 1 484 4 fma.rn.f64 %r41,%r34,%r39,0d3ff0000000000000; .loc 1 485 18 div.rn.f64 %r64,%r40,%r41; .loc 1 485 15 add.f64 %r65,%r64,0d3fd8000000000000; .loc 1 485 21 div.rn.f64 %r52,%r65,%r53; $L8: .loc 1 486 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j1 .visible .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r40; .reg .f64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .pred %r62; .reg .f64 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r72; .reg .pred %r73; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .pred %r79; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r84; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r90; .reg .f64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .f64 %r94; .reg .pred %r95; .reg .f64 %r96; .reg .f64 %r97; mov.f64 %r58,%ar0; .loc 1 105 2 mov.b64 %r59,%r58; shr.u64 %r60,%r59,32; cvt.u32.u64 %r42,%r60; .loc 1 106 5 and.b32 %r43,%r42,2147483647; .loc 1 107 4 setp.le.s32 %r62,%r43,2146435071; @ %r62 bra $L16; .loc 1 107 31 rcp.rn.f64 %r57,%r58; bra $L15; $L16: .loc 1 108 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r65,[%value_in]; } .loc 1 109 4 and.b32 %r66,%r42,1073741824; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L18; .loc 1 110 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),sin,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 111 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),cos,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 112 8 neg.f64 %r72,%r69; .loc 1 112 6 sub.f64 %r40,%r72,%r71; .loc 1 113 6 sub.f64 %r41,%r69,%r71; .loc 1 114 5 setp.gt.s32 %r73,%r43,2145386495; @ %r73 bra $L19; .loc 1 115 11 add.f64 %r75,%r65,%r65; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),cos,(%out_arg1); ld.param.f64 %r76,[%value_in]; } .loc 1 116 13 mul.f64 %r77,%r69,%r71; .loc 1 116 10 setp.gt.f64 %r78,%r77,0d0000000000000000; @ ! %r78 bra $L26; .loc 1 116 26 div.rn.f64 %r41,%r76,%r40; bra $L19; $L26: .loc 1 117 20 div.rn.f64 %r40,%r76,%r41; $L19: .loc 1 123 5 setp.le.s32 %r79,%r43,1207959552; @ %r79 bra $L22; .loc 1 123 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 123 35 mul.f64 %r82,%r41,0d3fe20dd750429b6d; .loc 1 123 23 div.rn.f64 %r57,%r82,%r81; bra $L23; $L22: .loc 1 125 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),pone,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 125 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),qone,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 126 28 mul.f64 %r87,%r40,%r86; .loc 1 126 26 neg.f64 %r88,%r87; fma.rn.f64 %r28,%r41,%r84,%r88; .loc 1 126 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r90,[%value_in]; } .loc 1 126 20 mul.f64 %r91,%r28,0d3fe20dd750429b6d; .loc 1 126 9 div.rn.f64 %r57,%r91,%r90; $L23: .loc 1 128 5 setp.ge.s32 %r92,%r42,0; @ %r92 bra $L15; .loc 1 128 19 neg.f64 %r57,%r57; bra $L15; $L18: .loc 1 132 31 mul.f64 %r57,%r58,0d3fe0000000000000; .loc 1 131 4 setp.gt.s32 %r93,%r43,1044381695; @ %r93 bra $L24; .loc 1 132 13 add.f64 %r94,%r58,0d7e37e43c8800759c; .loc 1 132 8 setp.gt.f64 %r95,%r94,0d3ff0000000000000; @ %r95 bra $L15; $L24: .loc 1 134 4 mul.f64 %r45,%r58,%r58; .loc 1 135 27 fma.rn.f64 %r32,%r45,0d3e6aaafa46ca0bd9,0dbef0c5c6ba169668; .loc 1 135 20 fma.rn.f64 %r33,%r32,%r45,0d3f570d9f98472c61; .loc 1 135 13 fma.rn.f64 %r34,%r33,%r45,0dbfb0000000000000; .loc 1 135 4 mul.f64 %r46,%r34,%r45; .loc 1 136 38 fma.rn.f64 %r35,%r45,0d3dab2acfcfb97ed8,0d3e35ac88c97dff2c; .loc 1 136 31 fma.rn.f64 %r36,%r35,%r45,0d3eb3bff8333f8498; .loc 1 136 24 fma.rn.f64 %r37,%r36,%r45,0d3f285f56b9cdf664; .loc 1 136 17 fma.rn.f64 %r38,%r37,%r45,0d3f939d0b12637e53; .loc 1 136 4 fma.rn.f64 %r47,%r38,%r45,0d3ff0000000000000; .loc 1 137 4 mul.f64 %r96,%r58,%r46; .loc 1 138 16 div.rn.f64 %r97,%r96,%r47; .loc 1 138 14 add.f64 %r57,%r57,%r97; $L15: .loc 1 139 1 mov.f64 %value,%r57; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y1 .visible .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r30; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r50; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u32 %r71; .reg .u32 %r73; .reg .pred %r74; .reg .f64 %r75; .reg .pred %r76; .reg .f64 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .f64 %r81; .reg .f64 %r83; .reg .f64 %r84; .reg .pred %r85; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r89; .reg .pred %r90; .reg .pred %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r96; .reg .f64 %r98; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .pred %r103; .reg .f64 %r104; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r111; .reg .f64 %r112; mov.f64 %r64,%ar0; .loc 1 174 2 mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r67,%r66; .loc 1 175 12 and.b32 %r53,%r67,2147483647; .loc 1 177 4 setp.le.s32 %r68,%r53,2146435071; @ %r68 bra $L28; .loc 1 177 35 fma.rn.f64 %r22,%r64,%r64,%r64; .loc 1 177 32 rcp.rn.f64 %r63,%r22; bra $L27; $L28: .loc 1 174 2 cvt.u32.u64 %r71,%r65; .loc 1 178 15 or.b32 %r73,%r71,%r53; .loc 1 178 11 setp.ne.u32 %r74,%r73,0; @ %r74 bra $L30; .loc 1 178 35 mov.f64 %r75,0dbff0000000000000; div.rn.f64 %r63,%r75,0d0000000000000000; bra $L27; $L30: .loc 1 179 11 setp.ge.s32 %r76,%r67,0; @ %r76 bra $L31; .loc 1 179 29 mov.f64 %r77,0d0000000000000000; div.rn.f64 %r63,%r77,%r77; bra $L27; $L31: .loc 1 180 11 and.b32 %r78,%r67,1073741824; setp.eq.u32 %r79,%r78,0; @ %r79 bra $L32; .loc 1 181 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),sin,(%out_arg1); ld.param.f64 %r81,[%value_in]; } .loc 1 182 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),cos,(%out_arg1); ld.param.f64 %r83,[%value_in]; } .loc 1 183 22 neg.f64 %r84,%r81; .loc 1 183 20 sub.f64 %r49,%r84,%r83; .loc 1 184 20 sub.f64 %r50,%r81,%r83; .loc 1 185 19 setp.gt.s32 %r85,%r53,2145386495; @ %r85 bra $L33; .loc 1 186 25 add.f64 %r87,%r64,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r87; call (%value_in),cos,(%out_arg1); ld.param.f64 %r88,[%value_in]; } .loc 1 187 27 mul.f64 %r89,%r81,%r83; .loc 1 187 24 setp.gt.f64 %r90,%r89,0d0000000000000000; @ ! %r90 bra $L39; .loc 1 187 40 div.rn.f64 %r50,%r88,%r49; bra $L33; $L39: .loc 1 188 40 div.rn.f64 %r49,%r88,%r50; $L33: .loc 1 201 19 setp.le.s32 %r91,%r53,1207959552; @ %r91 bra $L36; .loc 1 201 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r93,[%value_in]; } .loc 1 201 49 mul.f64 %r94,%r49,0d3fe20dd750429b6d; .loc 1 201 37 div.rn.f64 %r63,%r94,%r93; bra $L27; $L36: .loc 1 203 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),pone,(%out_arg1); ld.param.f64 %r96,[%value_in]; } .loc 1 203 38 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),qone,(%out_arg1); ld.param.f64 %r98,[%value_in]; } .loc 1 204 42 mul.f64 %r99,%r50,%r98; .loc 1 204 40 fma.rn.f64 %r30,%r49,%r96,%r99; .loc 1 204 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 204 34 mul.f64 %r102,%r30,0d3fe20dd750429b6d; .loc 1 204 23 div.rn.f64 %r63,%r102,%r101; bra $L27; $L32: .loc 1 208 11 setp.gt.s32 %r103,%r53,1016070144; @ %r103 bra $L37; .loc 1 209 24 mov.f64 %r104,0dbfe45f306dc9c883; div.rn.f64 %r63,%r104,%r64; bra $L27; $L37: .loc 1 211 11 mul.f64 %r54,%r64,%r64; .loc 1 212 45 fma.rn.f64 %r36,%r54,0dbe78ac00569105b8,0d3ef8ab038fa6b88e; .loc 1 212 36 fma.rn.f64 %r37,%r36,%r54,0dbf5f55e54844f50f; .loc 1 212 27 fma.rn.f64 %r38,%r37,%r54,0d3fa9d3c776292cd1; .loc 1 212 11 fma.rn.f64 %r55,%r38,%r54,0dbfc91866143cbc8a; .loc 1 213 52 fma.rn.f64 %r39,%r54,0d3db25039daca772a,0d3e3abf1d5ba69a86; .loc 1 213 43 fma.rn.f64 %r40,%r39,%r54,0d3eb6c05a894e8ca6; .loc 1 213 34 fma.rn.f64 %r41,%r40,%r54,0d3f2a8c896c257764; .loc 1 213 25 fma.rn.f64 %r42,%r41,%r54,0d3f94650d3f4da9f0; .loc 1 213 11 fma.rn.f64 %r56,%r42,%r54,0d3ff0000000000000; .loc 1 214 20 div.rn.f64 %r43,%r55,%r56; .loc 1 214 31 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 214 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r108,[%value_in]; } .loc 1 214 67 rcp.rn.f64 %r109,%r64; .loc 1 214 63 neg.f64 %r111,%r109; fma.rn.f64 %r47,%r106,%r108,%r111; .loc 1 214 29 mul.f64 %r112,%r47,0d3fe45f306dc9c883; .loc 1 214 24 fma.rn.f64 %r63,%r43,%r64,%r112; $L27: .loc 1 215 1 mov.f64 %value,%r63; st.param.f64 [%value_out],%value; ret; } lib_a-e_jn.o/ 0 0 0 644 19462 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_jn .visible .func (.param .f64 %value_out) __ieee754_jn (.param .u32 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_jn.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_yn .visible .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .extern .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .extern .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .extern .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .extern .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_jn .visible .func (.param .f64 %value_out) __ieee754_jn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r31; .reg .u32 %r32; .reg .f64 %r47; .reg .u32 %r49; .reg .f64 %r51; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .u32 %r69; .reg .f64 %r72; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .f64 %r82; .reg .f64 %r83; .reg .u32 %r84; .reg .f64 %r88; .reg .f64 %r90; .reg .f64 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .u32 %r101; .reg .f64 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .u32 %r106; .reg .f64 %r107; .reg .u32 %r108; .reg .f64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .f64 %r123; .reg .pred %r124; .reg .f64 %r126; .reg .u32 %r128; .reg .f64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u16 %r138; .reg .u16 %r139; .reg .u16 %r140; .reg .u32 %r141; .reg .u16 %r142; .reg .pred %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .f64 %r150; .reg .f64 %r152; .reg .f64 %r154; .reg .f64 %r156; .reg .f64 %r158; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r163; .reg .f64 %r165; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r170; .reg .f64 %r172; .reg .f64 %r174; .reg .f64 %r175; .reg .pred %r176; .reg .pred %r177; .reg .pred %r178; .reg .f64 %r179; .reg .pred %r180; .reg .f64 %r182; .reg .f64 %r183; .reg .pred %r184; .reg .f64 %r185; .reg .pred %r186; .reg .u32 %r187; .reg .u32 %r189; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .pred %r194; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r199; .reg .f64 %r200; .reg .pred %r201; .reg .f64 %r202; .reg .f64 %r203; .reg .pred %r204; .reg .f64 %r205; .reg .f64 %r206; .reg .pred %r207; .reg .pred %r208; .reg .f64 %r210; .reg .f64 %r211; .reg .pred %r212; .reg .f64 %r214; .reg .u16 %r215; mov.u32 %r108,%ar0; mov.f64 %r109,%ar1; mov.b64 %r110,%r109; shr.u64 %r111,%r110,32; cvt.u32.u64 %r77,%r111; .loc 1 73 2 cvt.u32.u64 %r78,%r110; .loc 1 74 5 and.b32 %r79,%r77,2147483647; .loc 1 76 26 neg.s32 %r115,%r78; .loc 1 76 25 or.b32 %r116,%r115,%r78; .loc 1 76 31 shr.u32 %r117,%r116,31; .loc 1 76 8 or.b32 %r118,%r117,%r79; .loc 1 76 4 setp.le.u32 %r119,%r118,2146435072; @ %r119 bra $L2; .loc 1 76 57 add.f64 %r107,%r109,%r109; bra $L1; $L2: .loc 1 77 4 setp.ge.s32 %r120,%r108,0; @ %r120 bra $L4; .loc 1 78 5 neg.s32 %r108,%r108; .loc 1 79 5 neg.f64 %r109,%r109; .loc 1 80 6 add.u32 %r77,%r77,-2147483648; bra $L5; $L4: .loc 1 82 4 setp.ne.u32 %r121,%r108,0; @ %r121 bra $L5; .loc 1 82 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r123,[%value_in]; } mov.f64 %r107,%r123; bra $L1; $L5: .loc 1 83 4 setp.ne.u32 %r124,%r108,1; @ %r124 bra $L6; .loc 1 83 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r126,[%value_in]; } mov.f64 %r107,%r126; bra $L1; $L6: .loc 1 84 6 shr.u32 %r128,%r77,31; and.b32 %r80,%r128,%r108; .loc 1 85 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r109; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 86 8 or.b32 %r131,%r78,%r79; .loc 1 86 4 set.u32.eq.u32 %r133,%r131,0; neg.s32 %r134,%r133; mov.u32 %r132,%r134; .loc 1 86 15 set.u32.gt.s32 %r136,%r79,2146435071; neg.s32 %r137,%r136; mov.u32 %r135,%r137; cvt.u16.u8 %r215,%r132; mov.u16 %r139,%r215; cvt.u16.u8 %r215,%r135; mov.u16 %r140,%r215; or.b16 %r138,%r139,%r140; cvt.u32.u16 %r141,%r138; cvt.u16.u8 %r142,%r141; setp.ne.u16 %r143,%r142,0; @ %r143 bra $L31; .loc 1 88 10 cvt.rn.f64.s32 %r31,%r108; .loc 1 88 9 setp.le.f64 %r144,%r31,%r130; @ ! %r144 bra $L47; .loc 1 90 8 setp.le.s32 %r145,%r79,1389363199; @ %r145 bra $L10; .loc 1 104 11 and.b32 %r32,%r108,3; .loc 1 104 3 setp.eq.u32 %r146,%r32,2; @ %r146 bra $L11; setp.eq.u32 %r147,%r32,3; @ %r147 bra $L12; setp.eq.u32 %r148,%r32,1; @ %r148 bra $L13; .loc 1 105 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r150,[%value_in]; } .loc 1 105 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r152,[%value_in]; } .loc 1 105 20 add.f64 %r68,%r150,%r152; .loc 1 105 38 bra $L14; $L13: .loc 1 106 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r154,[%value_in]; } .loc 1 106 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r156,[%value_in]; } .loc 1 106 20 sub.f64 %r68,%r154,%r156; .loc 1 106 38 bra $L14; $L11: .loc 1 107 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r158,[%value_in]; } .loc 1 107 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r160,[%value_in]; } .loc 1 107 22 neg.f64 %r161,%r158; .loc 1 107 20 sub.f64 %r68,%r161,%r160; .loc 1 107 38 bra $L14; $L12: .loc 1 108 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),cos,(%out_arg1); ld.param.f64 %r163,[%value_in]; } .loc 1 108 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),sin,(%out_arg1); ld.param.f64 %r165,[%value_in]; } .loc 1 108 20 sub.f64 %r68,%r163,%r165; $L14: .loc 1 110 22 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r167,[%value_in]; } .loc 1 110 16 mul.f64 %r168,%r68,0d3fe20dd750429b6d; .loc 1 110 5 div.rn.f64 %r107,%r168,%r167; bra $L7; $L10: .loc 1 112 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r170,[%value_in]; } mov.f64 %r47,%r170; .loc 1 113 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r172,[%value_in]; } mov.f64 %r107,%r172; add.u32 %r74,%r108,%r108; mov.u32 %r76,2; $L15: neg.f64 %r104,%r47; mov.f64 %r47,%r107; .loc 1 116 14 cvt.rn.f64.s32 %r174,%r76; .loc 1 116 27 div.rn.f64 %r175,%r174,%r130; .loc 1 116 9 fma.rn.f64 %r107,%r175,%r107,%r104; .loc 1 114 19 add.u32 %r76,%r76,2; setp.ne.u32 %r176,%r74,%r76; @ %r176 bra $L15; bra $L7; $L47: .loc 1 121 8 setp.gt.s32 %r177,%r79,1041235967; @ %r177 bra $L16; .loc 1 125 5 setp.gt.s32 %r178,%r108,33; @ %r178 bra $L32; .loc 1 128 12 mul.f64 %r98,%r130,0d3fe0000000000000; add.u32 %r69,%r108,1; .loc 1 128 23 mov.f64 %r100,%r98; .loc 1 129 13 mov.f64 %r99,0d3ff0000000000000; .loc 1 129 19 mov.u32 %r101,2; $L17: .loc 1 130 9 cvt.rn.f64.s32 %r179,%r101; .loc 1 130 6 mul.f64 %r99,%r99,%r179; .loc 1 131 6 mul.f64 %r100,%r100,%r98; .loc 1 129 28 add.u32 %r101,%r101,1; .loc 1 129 23 setp.ne.u32 %r180,%r69,%r101; @ %r180 bra $L17; .loc 1 133 9 div.rn.f64 %r107,%r100,%r99; bra $L7; $L16: .loc 1 167 10 add.u32 %r49,%r108,%r108; .loc 1 167 13 cvt.rn.f64.s32 %r182,%r49; .loc 1 167 6 div.rn.f64 %r51,%r182,%r130; .loc 1 167 27 mov.f64 %r183,0d4000000000000000; div.rn.f64 %r82,%r183,%r130; .loc 1 168 14 add.f64 %r96,%r51,%r82; .loc 1 168 24 fma.rn.f64 %r83,%r51,%r96,0dbff0000000000000; .loc 1 169 11 setp.lt.f64 %r184,%r83,0d41cdcd6500000000; @ ! %r184 bra $L48; .loc 1 168 38 mov.u32 %r95,1; bra $L20; $L33: .loc 1 173 7 mov.f64 %r83,%r97; $L20: .loc 1 170 6 add.u32 %r95,%r95,1; .loc 1 170 14 add.f64 %r96,%r96,%r82; .loc 1 171 8 neg.f64 %r185,%r51; fma.rn.f64 %r97,%r96,%r83,%r185; mov.f64 %r51,%r83; .loc 1 169 11 setp.lt.f64 %r186,%r97,0d41cdcd6500000000; @ %r186 bra $L33; bra $L49; $L48: .loc 1 176 23 add.u32 %r187,%r108,1; .loc 1 176 17 add.u32 %r84,%r187,%r187; bra $L22; $L49: .loc 1 176 23 add.u32 %r189,%r95,%r108; .loc 1 176 17 add.u32 %r84,%r189,%r189; $L22: .loc 1 176 8 mov.f64 %r72,0d0000000000000000; .loc 1 176 44 mov.f64 %r193,0d3ff0000000000000; $L23: .loc 1 176 52 cvt.rn.f64.s32 %r191,%r84; div.rn.f64 %r192,%r191,%r130; .loc 1 176 54 sub.f64 %r55,%r192,%r72; .loc 1 176 44 div.rn.f64 %r72,%r193,%r55; .loc 1 176 36 add.u32 %r84,%r84,-2; .loc 1 176 29 setp.le.s32 %r194,%r49,%r84; @ %r194 bra $L23; .loc 1 189 13 mul.f64 %r196,%r31,%r82; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r196; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r197,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r197; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r199,[%value_in]; } .loc 1 191 16 add.u32 %r94,%r108,-1; .loc 1 191 34 add.u32 %r106,%r49,-2; .loc 1 189 7 mul.f64 %r200,%r31,%r199; .loc 1 190 5 setp.lt.f64 %r201,%r200,0d40862e42fefa39ef; @ ! %r201 bra $L50; .loc 1 191 23 cvt.rn.f64.s32 %r93,%r106; .loc 1 176 44 mov.f64 %r103,%r72; .loc 1 178 5 mov.f64 %r105,0d3ff0000000000000; .loc 1 196 7 mov.f64 %r203,0d4000000000000000; bra $L26; $L34: .loc 1 194 7 mov.f64 %r105,%r67; $L26: .loc 1 193 6 mul.f64 %r202,%r105,%r93; .loc 1 194 10 div.rn.f64 %r59,%r202,%r130; .loc 1 194 7 sub.f64 %r67,%r59,%r103; .loc 1 196 7 sub.f64 %r93,%r93,%r203; .loc 1 191 43 add.u32 %r94,%r94,-1; mov.f64 %r103,%r105; .loc 1 191 39 setp.ne.u32 %r204,%r94,0; @ %r204 bra $L34; bra $L27; $L50: .loc 1 199 23 cvt.rn.f64.s32 %r90,%r106; .loc 1 176 44 mov.f64 %r66,%r72; .loc 1 178 5 mov.f64 %r67,0d3ff0000000000000; .loc 1 204 7 mov.f64 %r206,0d4000000000000000; .loc 1 209 11 mov.f64 %r214,%r67; $L30: .loc 1 201 6 mul.f64 %r205,%r67,%r90; .loc 1 202 10 div.rn.f64 %r60,%r205,%r130; .loc 1 202 7 sub.f64 %r88,%r60,%r66; .loc 1 204 7 sub.f64 %r90,%r90,%r206; .loc 1 206 6 setp.gt.f64 %r207,%r88,0d54b249ad2594c37d; @ ! %r207 bra $L51; .loc 1 207 10 div.rn.f64 %r66,%r67,%r88; .loc 1 208 10 div.rn.f64 %r72,%r72,%r88; .loc 1 209 11 mov.f64 %r67,%r214; bra $L28; $L51: mov.f64 %r66,%r67; .loc 1 202 7 mov.f64 %r67,%r88; $L28: .loc 1 199 43 add.u32 %r94,%r94,-1; .loc 1 199 39 setp.ne.u32 %r208,%r94,0; @ %r208 bra $L30; $L27: .loc 1 213 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r210,[%value_in]; } .loc 1 213 13 mul.f64 %r211,%r210,%r72; .loc 1 213 9 div.rn.f64 %r107,%r211,%r67; bra $L7; $L31: .loc 1 87 8 mov.f64 %r107,0d0000000000000000; bra $L7; $L32: mov.f64 %r107,0d0000000000000000; $L7: .loc 1 216 4 setp.eq.u32 %r212,%r80,0; @ %r212 bra $L1; .loc 1 216 20 neg.f64 %r107,%r107; $L1: .loc 1 217 1 mov.f64 %value,%r107; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_yn .visible .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r33; .reg .f64 %r48; .reg .f64 %r52; .reg .u32 %r55; .reg .u32 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .f64 %r66; .reg .u32 %r67; .reg .f64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .pred %r80; .reg .f64 %r81; .reg .pred %r82; .reg .f64 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .f64 %r101; .reg .f64 %r103; .reg .f64 %r105; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r121; .reg .f64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r126; .reg .pred %r127; .reg .u32 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u32 %r144; .reg .u16 %r145; .reg .pred %r146; .reg .pred %r147; .reg .u16 %r149; mov.u32 %r67,%ar0; mov.f64 %r68,%ar1; .loc 1 230 2 mov.b64 %r69,%r68; shr.u64 %r70,%r69,32; cvt.u32.u64 %r71,%r70; cvt.u32.u64 %r73,%r69; .loc 1 231 5 and.b32 %r55,%r71,2147483647; .loc 1 233 26 neg.s32 %r74,%r73; .loc 1 233 25 or.b32 %r75,%r74,%r73; .loc 1 233 31 shr.u32 %r76,%r75,31; .loc 1 233 8 or.b32 %r77,%r76,%r55; .loc 1 233 4 setp.le.u32 %r78,%r77,2146435072; @ %r78 bra $L53; .loc 1 233 57 add.f64 %r66,%r68,%r68; bra $L52; $L53: .loc 1 234 8 or.b32 %r79,%r73,%r55; .loc 1 234 4 setp.ne.u32 %r80,%r79,0; @ %r80 bra $L55; .loc 1 234 28 mov.f64 %r81,0dbff0000000000000; div.rn.f64 %r66,%r81,0d0000000000000000; bra $L52; $L55: .loc 1 235 4 setp.ge.s32 %r82,%r71,0; @ %r82 bra $L56; .loc 1 235 22 mov.f64 %r83,0d0000000000000000; div.rn.f64 %r66,%r83,%r83; bra $L52; $L56: .loc 1 237 4 setp.ge.s32 %r84,%r67,0; @ %r84 bra $L57; .loc 1 238 5 neg.s32 %r67,%r67; .loc 1 239 20 add.u32 %r85,%r67,%r67; and.b32 %r86,%r85,2; .loc 1 239 8 mov.u32 %r87,1; sub.u32 %r56,%r87,%r86; bra $L58; $L57: .loc 1 241 4 setp.ne.u32 %r88,%r67,0; @ %r88 bra $L67; .loc 1 241 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r90,[%value_in]; } mov.f64 %r66,%r90; bra $L52; $L67: .loc 1 236 7 mov.u32 %r56,1; $L58: .loc 1 242 4 setp.ne.u32 %r91,%r67,1; @ %r91 bra $L59; .loc 1 242 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r93,[%value_in]; } .loc 1 242 22 cvt.rn.f64.s32 %r94,%r56; mul.f64 %r66,%r94,%r93; bra $L52; $L59: .loc 1 243 4 setp.eq.u32 %r95,%r55,2146435072; @ %r95 bra $L68; .loc 1 244 4 setp.le.s32 %r96,%r55,1389363199; @ %r96 bra $L60; .loc 1 258 11 and.b32 %r33,%r67,3; .loc 1 258 3 setp.eq.u32 %r97,%r33,2; @ %r97 bra $L61; setp.eq.u32 %r98,%r33,3; @ %r98 bra $L62; setp.eq.u32 %r99,%r33,1; @ %r99 bra $L63; .loc 1 259 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 259 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r103,[%value_in]; } .loc 1 259 20 sub.f64 %r52,%r101,%r103; .loc 1 259 38 bra $L64; $L63: .loc 1 260 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r105,[%value_in]; } .loc 1 260 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r107,[%value_in]; } .loc 1 260 22 neg.f64 %r108,%r105; .loc 1 260 20 sub.f64 %r52,%r108,%r107; .loc 1 260 38 bra $L64; $L61: .loc 1 261 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r110,[%value_in]; } .loc 1 261 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r112,[%value_in]; } .loc 1 261 20 sub.f64 %r52,%r110,%r112; .loc 1 261 38 bra $L64; $L62: .loc 1 262 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),sin,(%out_arg1); ld.param.f64 %r114,[%value_in]; } .loc 1 262 30 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),cos,(%out_arg1); ld.param.f64 %r116,[%value_in]; } .loc 1 262 20 add.f64 %r52,%r114,%r116; $L64: .loc 1 264 22 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r118,[%value_in]; } .loc 1 264 16 mul.f64 %r119,%r52,0d3fe20dd750429b6d; .loc 1 264 5 div.rn.f64 %r66,%r119,%r118; bra $L65; $L60: .loc 1 267 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r121,[%value_in]; } mov.f64 %r48,%r121; .loc 1 268 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r123,[%value_in]; } mov.f64 %r57,%r123; .loc 1 271 17 mov.b64 %r124,%r57; shr.u64 %r125,%r124,32; cvt.u32.u64 %r126,%r125; setp.eq.u32 %r127,%r126,-1048576; @ %r127 bra $L69; .loc 1 271 11 mov.u32 %r58,1; bra $L66; $L70: .loc 1 273 5 mov.f64 %r57,%r66; $L66: .loc 1 273 18 add.u32 %r128,%r58,%r58; .loc 1 273 8 cvt.rn.f64.s32 %r129,%r128; .loc 1 273 21 div.rn.f64 %r130,%r129,%r68; .loc 1 273 5 neg.f64 %r131,%r48; fma.rn.f64 %r66,%r130,%r57,%r131; .loc 1 271 37 add.u32 %r58,%r58,1; mov.f64 %r48,%r57; .loc 1 271 15 set.u32.lt.s32 %r133,%r58,%r67; neg.s32 %r134,%r133; mov.u32 %r132,%r134; .loc 1 271 23 mov.b64 %r135,%r66; shr.u64 %r136,%r135,32; cvt.u32.u64 %r137,%r136; set.u32.ne.u32 %r139,%r137,-1048576; neg.s32 %r140,%r139; mov.u32 %r138,%r140; .loc 1 271 17 cvt.u16.u8 %r149,%r132; mov.u16 %r142,%r149; cvt.u16.u8 %r149,%r138; mov.u16 %r143,%r149; and.b16 %r141,%r142,%r143; cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.ne.u16 %r146,%r145,0; @ %r146 bra $L70; bra $L65; $L69: .loc 1 268 10 mov.f64 %r66,%r123; $L65: .loc 1 278 4 setp.eq.u32 %r147,%r56,1; @ %r147 bra $L52; .loc 1 278 35 neg.f64 %r66,%r66; bra $L52; $L68: .loc 1 243 28 mov.f64 %r66,0d0000000000000000; $L52: .loc 1 279 1 mov.f64 %value,%r66; st.param.f64 [%value_out],%value; ret; } lib_a-e_log.o/ 0 0 0 644 6089 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .visible .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_log.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_log .visible .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r49; .reg .f64 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r61; .reg .u32 %r62; .reg .f64 %r63; .reg .u32 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .u32 %r69; .reg .f64 %r70; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r82; .reg .f64 %r85; .reg .u64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r95; .reg .u32 %r97; .reg .pred %r98; .reg .f64 %r99; .reg .pred %r100; .reg .f64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u32 %r115; .reg .f64 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .f64 %r122; .reg .pred %r124; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .f64 %r131; .reg .pred %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .pred %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .pred %r141; .reg .f64 %r143; .reg .f64 %r144; mov.f64 %r88,%ar0; mov.b64 %r89,%r88; shr.u64 %r90,%r89,32; cvt.u32.u64 %r58,%r90; .loc 1 106 5 setp.gt.s32 %r92,%r58,1048575; @ %r92 bra $L13; .loc 1 107 14 and.b32 %r93,%r58,2147483647; .loc 1 107 26 cvt.u32.u64 %r95,%r89; or.b32 %r97,%r93,%r95; .loc 1 107 9 setp.ne.u32 %r98,%r97,0; @ %r98 bra $L3; .loc 1 108 16 mov.f64 %r99,0dc350000000000000; div.rn.f64 %r87,%r99,0d0000000000000000; bra $L1; $L3: .loc 1 109 9 setp.ge.s32 %r100,%r58,0; @ %r100 bra $L5; .loc 1 109 25 sub.f64 %r101,%r88,%r88; .loc 1 109 28 div.rn.f64 %r87,%r101,0d0000000000000000; bra $L1; $L5: .loc 1 110 17 mul.f64 %r88,%r88,0d4350000000000000; .loc 1 111 6 mov.b64 %r102,%r88; shr.u64 %r103,%r102,32; cvt.u32.u64 %r58,%r103; .loc 1 110 8 mov.u32 %r57,-54; bra $L2; $L13: .loc 1 105 3 mov.u32 %r57,0; $L2: .loc 1 113 5 setp.le.s32 %r105,%r58,2146435071; @ %r105 bra $L6; .loc 1 113 32 add.f64 %r87,%r88,%r88; bra $L1; $L6: .loc 1 114 10 shr.s32 %r106,%r58,20; .loc 1 114 15 add.u32 %r107,%r106,-1023; .loc 1 115 5 and.b32 %r61,%r58,1048575; .loc 1 116 9 add.u32 %r108,%r61,614244; .loc 1 116 4 and.b32 %r62,%r108,1048576; .loc 1 117 2 mov.b64 %r86,%r88; xor.b32 %r109,%r62,1072693248; or.b32 %r110,%r109,%r61; cvt.u64.u32 %r111,%r110; shl.b64 %r112,%r111,32; and.b64 %r113,%r86,4294967295; or.b64 %r114,%r113,%r112; mov.b64 %r63,%r114; .loc 1 118 9 shr.s32 %r115,%r62,20; .loc 1 118 4 vadd.u32.u32.u32.add %r64,%r57,%r107,%r115; .loc 1 119 4 mov.f64 %r116,0d3ff0000000000000; sub.f64 %r65,%r63,%r116; .loc 1 120 19 add.u32 %r117,%r61,2; .loc 1 120 16 and.b32 %r118,%r117,1048575; .loc 1 120 4 setp.gt.s32 %r119,%r118,2; @ %r119 bra $L7; .loc 1 121 13 setp.neu.f64 %r120,%r65,0d0000000000000000; @ %r120 bra $L8; .loc 1 121 27 setp.eq.u32 %r121,%r64,0; @ %r121 bra $L14; .loc 1 121 56 cvt.rn.f64.s32 %r78,%r64; .loc 1 122 51 mul.f64 %r122,%r78,0d3dea39ef35793c76; .loc 1 122 48 fma.rn.f64 %r87,%r78,0d3fe62e42fee00000,%r122; bra $L1; $L8: .loc 1 123 11 mul.f64 %r35,%r65,%r65; .loc 1 123 18 fma.rn.f64 %r36,%r65,0dbfd5555555555555,0d3fe0000000000000; .loc 1 123 8 mul.f64 %r76,%r35,%r36; .loc 1 124 8 setp.ne.u32 %r124,%r64,0; @ %r124 bra $L9; .loc 1 124 23 sub.f64 %r87,%r65,%r76; bra $L1; $L9: .loc 1 124 35 cvt.rn.f64.s32 %r77,%r64; .loc 1 125 32 fma.rn.f64 %r37,%r77,0dbdea39ef35793c76,%r76; .loc 1 125 43 sub.f64 %r126,%r37,%r65; .loc 1 125 28 neg.f64 %r127,%r126; fma.rn.f64 %r87,%r77,0d3fe62e42fee00000,%r127; bra $L1; $L7: .loc 1 127 13 add.f64 %r128,%r65,0d4000000000000000; .loc 1 127 5 div.rn.f64 %r66,%r65,%r128; .loc 1 128 5 cvt.rn.f64.s32 %r67,%r64; .loc 1 129 4 mul.f64 %r68,%r66,%r66; .loc 1 130 4 add.u32 %r69,%r61,-398458; .loc 1 131 4 mul.f64 %r70,%r68,%r68; .loc 1 133 19 fma.rn.f64 %r40,%r70,0d3fc39a09d078c69f,0d3fcc71c51d8e78af; .loc 1 133 12 fma.rn.f64 %r41,%r40,%r70,0d3fd999999997fa04; .loc 1 134 26 fma.rn.f64 %r42,%r70,0d3fc2f112df3e5244,0d3fc7466496cb03de; .loc 1 134 19 fma.rn.f64 %r43,%r42,%r70,0d3fd2492494229359; .loc 1 134 12 fma.rn.f64 %r44,%r43,%r70,0d3fe5555555555593; .loc 1 132 4 mov.u32 %r130,440401; sub.u32 %r129,%r130,%r61; .loc 1 135 4 or.b32 %r73,%r129,%r69; .loc 1 134 4 mul.f64 %r131,%r44,%r68; .loc 1 136 4 fma.rn.f64 %r74,%r41,%r70,%r131; .loc 1 137 4 setp.le.s32 %r132,%r73,0; @ %r132 bra $L10; .loc 1 138 14 mul.f64 %r133,%r65,0d3fe0000000000000; .loc 1 138 10 mul.f64 %r75,%r133,%r65; .loc 1 139 37 add.f64 %r134,%r74,%r75; .loc 1 139 31 mul.f64 %r85,%r134,%r66; .loc 1 139 8 setp.ne.u32 %r135,%r64,0; @ %r135 bra $L11; .loc 1 139 29 sub.f64 %r136,%r75,%r85; .loc 1 139 23 sub.f64 %r87,%r65,%r136; bra $L1; $L11: .loc 1 140 43 fma.rn.f64 %r49,%r67,0d3dea39ef35793c76,%r85; .loc 1 140 31 sub.f64 %r137,%r75,%r49; .loc 1 140 55 sub.f64 %r138,%r137,%r65; .loc 1 140 24 neg.f64 %r139,%r138; fma.rn.f64 %r87,%r67,0d3fe62e42fee00000,%r139; bra $L1; $L10: .loc 1 142 28 sub.f64 %r140,%r65,%r74; .loc 1 142 25 mul.f64 %r82,%r140,%r66; .loc 1 142 8 setp.ne.u32 %r141,%r64,0; @ %r141 bra $L12; .loc 1 142 23 sub.f64 %r87,%r65,%r82; bra $L1; $L12: .loc 1 143 34 fma.rn.f64 %r55,%r67,0dbdea39ef35793c76,%r82; .loc 1 143 45 sub.f64 %r143,%r55,%r65; .loc 1 143 24 neg.f64 %r144,%r143; fma.rn.f64 %r87,%r67,0d3fe62e42fee00000,%r144; bra $L1; $L14: .loc 1 121 41 mov.f64 %r87,0d0000000000000000; $L1: .loc 1 145 1 mov.f64 %value,%r87; st.param.f64 [%value_out],%value; ret; } lib_a-e_log10.o/0 0 0 644 3006 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10 .visible .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_log10 .visible .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r29; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .u64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .f64 %r60; .reg .pred %r61; .reg .f64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .f64 %r79; .reg .f64 %r80; mov.f64 %r49,%ar0; mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r37,%r51; .loc 1 81 12 setp.gt.s32 %r53,%r37,1048575; @ %r53 bra $L7; .loc 1 82 21 and.b32 %r54,%r37,2147483647; .loc 1 82 33 cvt.u32.u64 %r56,%r50; or.b32 %r58,%r54,%r56; .loc 1 82 16 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L3; .loc 1 83 30 mov.f64 %r60,0dc350000000000000; div.rn.f64 %r48,%r60,0d0000000000000000; bra $L1; $L3: .loc 1 84 16 setp.ge.s32 %r61,%r37,0; @ %r61 bra $L5; .loc 1 84 32 sub.f64 %r62,%r49,%r49; .loc 1 84 35 div.rn.f64 %r48,%r62,0d0000000000000000; bra $L1; $L5: .loc 1 85 24 mul.f64 %r49,%r49,0d4350000000000000; .loc 1 86 6 mov.b64 %r63,%r49; shr.u64 %r64,%r63,32; cvt.u32.u64 %r37,%r64; .loc 1 85 15 mov.u32 %r36,-54; bra $L2; $L7: .loc 1 80 10 mov.u32 %r36,0; $L2: .loc 1 88 5 setp.le.s32 %r66,%r37,2146435071; @ %r66 bra $L6; .loc 1 88 32 add.f64 %r48,%r49,%r49; bra $L1; $L6: .loc 1 89 10 shr.s32 %r67,%r37,20; .loc 1 89 15 add.u32 %r68,%r67,-1023; .loc 1 89 4 add.u32 %r38,%r68,%r36; .loc 1 90 33 shr.u32 %r39,%r38,31; .loc 1 91 17 and.b32 %r29,%r37,1048575; .loc 1 92 24 add.u32 %r69,%r38,%r39; .loc 1 92 12 cvt.rn.f64.s32 %r41,%r69; .loc 1 93 2 mov.b64 %r47,%r49; .loc 1 91 37 mov.u32 %r71,1023; sub.u32 %r70,%r71,%r39; .loc 1 91 40 shl.b32 %r72,%r70,20; .loc 1 91 12 or.b32 %r73,%r72,%r29; .loc 1 93 2 cvt.u64.u32 %r74,%r73; shl.b64 %r75,%r74,32; and.b64 %r76,%r47,4294967295; or.b64 %r77,%r76,%r75; mov.b64 %r42,%r77; .loc 1 94 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r79,[%value_in]; } .loc 1 94 27 mul.f64 %r80,%r79,0d3fdbcb7b1526e50e; .loc 1 94 5 fma.rn.f64 %r43,%r41,0d3d59fef311f12b36,%r80; .loc 1 95 11 fma.rn.f64 %r48,%r41,0d3fd34413509f6000,%r43; $L1: .loc 1 96 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_pow.o/ 0 0 0 644 25158 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_pow .visible .func (.param .f64 %value_out) __ieee754_pow (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_pow.c" .file 2 "../../../../../../newlib/libm/math/../common/math_config.h" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_pow .visible .func (.param .f64 %value_out) __ieee754_pow (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r34; .reg .u32 %r39; .reg .f64 %r48; .reg .u32 %r50; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r58; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r79; .reg .f64 %r81; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r90; .reg .u32 %r104; .reg .u32 %r120; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .u32 %r135; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .f64 %r149; .reg .u32 %r150; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r163; .reg .u32 %r165; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r169; .reg .f64 %r170; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .f64 %r175; .reg .f64 %r176; .reg .f64 %r177; .reg .f64 %r179; .reg .f64 %r181; .reg .f64 %r182; .reg .f64 %r183; .reg .f64 %r185; .reg .f64 %r186; .reg .f64 %r189; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .u32 %r197; .reg .u32 %r198; .reg .f64 %r199; .reg .f64 %r200; .reg .f64 %r201; .reg .f64 %r202; .reg .f64 %r203; .reg .f64 %r204; .reg .f64 %r205; .reg .f64 %r207; .reg .u32 %r209; .reg .u32 %r218; .reg .f64 %r222; .reg .f64 %r224; .reg .u32 %r225; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r249; .reg .f64 %r251; .reg .f64 %r252; .reg .f64 %r253; .reg .u64 %r254; .reg .u64 %r255; .reg .u32 %r259; .reg .pred %r260; .reg .u64 %r261; .reg .u64 %r262; .reg .u64 %r263; .reg .pred %r264; .reg .u64 %r265; .reg .u64 %r266; .reg .pred %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u16 %r277; .reg .u16 %r278; .reg .u16 %r279; .reg .u32 %r280; .reg .u16 %r281; .reg .pred %r282; .reg .pred %r283; .reg .u32 %r284; .reg .u32 %r285; .reg .u32 %r286; .reg .u32 %r287; .reg .u32 %r288; .reg .u32 %r289; .reg .u16 %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .u32 %r293; .reg .u16 %r294; .reg .pred %r295; .reg .u32 %r296; .reg .u32 %r297; .reg .pred %r298; .reg .u64 %r299; .reg .u64 %r300; .reg .u64 %r301; .reg .pred %r302; .reg .pred %r304; .reg .pred %r305; .reg .u32 %r306; .reg .pred %r307; .reg .u32 %r308; .reg .u32 %r309; .reg .pred %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .pred %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .u32 %r317; .reg .u32 %r318; .reg .pred %r319; .reg .pred %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .pred %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r330; .reg .u32 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .u16 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u32 %r341; .reg .u16 %r342; .reg .pred %r343; .reg .f64 %r345; .reg .f64 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .u32 %r351; .reg .u32 %r352; .reg .u32 %r353; .reg .u32 %r354; .reg .u32 %r355; .reg .u16 %r356; .reg .u16 %r357; .reg .u16 %r358; .reg .u32 %r359; .reg .u16 %r360; .reg .pred %r361; .reg .pred %r362; .reg .u32 %r365; .reg .u32 %r366; .reg .pred %r367; .reg .pred %r368; .reg .u32 %r370; .reg .pred %r371; .reg .pred %r372; .reg .pred %r373; .reg .pred %r374; .reg .pred %r375; .reg .u32 %r376; .reg .f64 %r377; .reg .u32 %r378; .reg .f64 %r379; .reg .pred %r380; .reg .pred %r381; .reg .pred %r382; .reg .pred %r383; .reg .pred %r384; .reg .f64 %r385; .reg .f64 %r387; .reg .f64 %r388; .reg .f64 %r390; .reg .u64 %r391; .reg .u32 %r393; .reg .pred %r394; .reg .u64 %r395; .reg .u64 %r396; .reg .u32 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .f64 %r406; .reg .u64 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u64 %r413; .reg .u64 %r414; .reg .f64 %r417; .reg .f64 %r418; .reg .f64 %r420; .reg .f64 %r421; .reg .f64 %r422; .reg .u64 %r423; .reg .f64 %r425; .reg .f64 %r426; .reg .f64 %r427; .reg .f64 %r428; .reg .u64 %r429; .reg .f64 %r431; .reg .f64 %r432; .reg .f64 %r433; .reg .f64 %r434; .reg .u64 %r435; .reg .f64 %r437; .reg .f64 %r438; .reg .u32 %r439; .reg .u32 %r440; .reg .pred %r441; .reg .u64 %r442; .reg .f64 %r443; .reg .f64 %r444; .reg .u64 %r445; .reg .u64 %r446; .reg .u32 %r447; .reg .u32 %r449; .reg .pred %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .pred %r453; .reg .u32 %r456; .reg .u32 %r457; .reg .f64 %r458; .reg .f64 %r459; .reg .f64 %r460; .reg .pred %r461; .reg .u32 %r464; .reg .u32 %r465; .reg .f64 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .pred %r470; .reg .u32 %r473; .reg .u32 %r474; .reg .f64 %r475; .reg .f64 %r476; .reg .pred %r477; .reg .u32 %r480; .reg .u32 %r481; .reg .f64 %r482; .reg .pred %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u64 %r492; .reg .u64 %r493; .reg .u32 %r496; .reg .u32 %r497; .reg .u32 %r498; .reg .pred %r499; .reg .u64 %r500; .reg .f64 %r501; .reg .f64 %r502; .reg .f64 %r503; .reg .f64 %r505; .reg .f64 %r506; .reg .f64 %r507; .reg .f64 %r508; .reg .f64 %r509; .reg .f64 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u32 %r513; .reg .pred %r515; .reg .f64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .u64 %r521; .reg .u64 %r522; .reg .u32 %r524; .reg .f64 %r526; .reg .pred %r527; .reg .u32 %r528; .reg .u32 %r529; .reg .u32 %r530; .reg .u32 %r531; .reg .u32 %r532; .reg .u32 %r533; .reg .u32 %r534; .reg .u16 %r535; .reg .u16 %r536; .reg .u16 %r537; .reg .u32 %r538; .reg .u16 %r539; .reg .pred %r540; .reg .pred %r541; .reg .u16 %r542; mov.f64 %r252,%ar0; mov.f64 %r253,%ar1; .loc 1 116 2 mov.b64 %r254,%r253; shr.u64 %r255,%r254,32; cvt.u32.u64 %r154,%r255; cvt.u32.u64 %r163,%r254; .loc 1 117 26 and.b32 %r155,%r154,2147483647; .loc 1 120 8 or.b32 %r259,%r155,%r163; .loc 1 120 4 setp.ne.u32 %r260,%r259,0; @ %r260 bra $L2; .loc 2 184 18 mov.b64 %r262,%r252; xor.b64 %r261,%r262,2251799813685248; .loc 2 184 12 add.u64 %r263,%r261,%r261; .loc 1 121 9 setp.le.u64 %r264,%r263,-4503599627370496; @ %r264 bra $L45; $L5: .loc 1 121 42 add.f64 %r251,%r252,%r253; bra $L1; $L2: mov.b64 %r265,%r252; shr.u64 %r266,%r265,32; cvt.u32.u64 %r160,%r266; cvt.u32.u64 %r161,%r265; .loc 1 117 5 and.b32 %r147,%r160,2147483647; .loc 1 126 4 setp.gt.s32 %r270,%r147,2146435072; @ %r270 bra $L4; .loc 1 126 28 set.u32.eq.u32 %r272,%r147,2146435072; neg.s32 %r273,%r272; mov.u32 %r271,%r273; .loc 1 126 46 set.u32.ne.u32 %r275,%r161,0; neg.s32 %r276,%r275; mov.u32 %r274,%r276; .loc 1 126 41 cvt.u16.u8 %r542,%r271; mov.u16 %r278,%r542; cvt.u16.u8 %r542,%r274; mov.u16 %r279,%r542; and.b16 %r277,%r278,%r279; cvt.u32.u16 %r280,%r277; .loc 1 126 21 cvt.u16.u8 %r281,%r280; setp.ne.u16 %r282,%r281,0; @ %r282 bra $L5; .loc 1 126 52 setp.gt.s32 %r283,%r155,2146435072; @ %r283 bra $L4; .loc 1 127 28 set.u32.eq.u32 %r285,%r155,2146435072; neg.s32 %r286,%r285; mov.u32 %r284,%r286; .loc 1 127 46 set.u32.ne.u32 %r288,%r163,0; neg.s32 %r289,%r288; mov.u32 %r287,%r289; .loc 1 127 41 cvt.u16.u8 %r542,%r284; mov.u16 %r291,%r542; cvt.u16.u8 %r542,%r287; mov.u16 %r292,%r542; and.b16 %r290,%r291,%r292; cvt.u32.u16 %r293,%r290; .loc 1 127 21 cvt.u16.u8 %r294,%r293; setp.eq.u16 %r295,%r294,0; @ %r295 bra $L6; $L4: .loc 1 128 13 add.u32 %r296,%r160,-1072693248; .loc 1 128 25 or.b32 %r297,%r296,%r161; .loc 1 128 8 setp.ne.u32 %r298,%r297,0; @ %r298 bra $L5; .loc 2 184 18 mov.b64 %r300,%r253; xor.b64 %r299,%r300,2251799813685248; .loc 2 184 12 add.u64 %r301,%r299,%r299; .loc 1 128 33 setp.le.u64 %r302,%r301,-4503599627370496; @ %r302 bra $L46; bra $L5; $L6: .loc 1 138 4 setp.ge.s32 %r541,%r160,0; @ %r541 bra $L47; .loc 1 139 8 setp.gt.s32 %r304,%r155,1128267775; @ %r304 bra $L48; .loc 1 140 13 setp.le.s32 %r305,%r155,1072693247; @ %r305 bra $L49; .loc 1 141 10 shr.s32 %r306,%r155,20; .loc 1 141 5 add.u32 %r157,%r306,-1023; .loc 1 142 5 setp.le.s32 %r307,%r157,20; @ %r307 bra $L8; .loc 1 143 18 mov.u32 %r308,52; sub.u32 %r34,%r308,%r157; .loc 1 143 13 shr.u32 %r159,%r163,%r34; .loc 1 144 12 shl.b32 %r309,%r159,%r34; .loc 1 144 9 setp.ne.u32 %r310,%r309,%r163; @ %r310 bra $L50; .loc 1 144 40 and.b32 %r311,%r159,1; .loc 1 144 34 mov.u32 %r312,2; sub.u32 %r135,%r312,%r311; bra $L7; $L8: .loc 1 145 12 setp.ne.u32 %r313,%r163,0; @ %r313 bra $L9; .loc 1 146 18 mov.u32 %r314,20; sub.u32 %r39,%r314,%r157; .loc 1 146 9 shr.s32 %r158,%r155,%r39; .loc 1 147 12 shl.b32 %r315,%r158,%r39; .loc 1 147 9 setp.ne.u32 %r316,%r315,%r155; @ %r316 bra $L51; .loc 1 147 40 and.b32 %r317,%r158,1; .loc 1 147 34 mov.u32 %r318,2; sub.u32 %r135,%r318,%r317; bra $L12; $L47: .loc 1 137 10 mov.u32 %r135,0; bra $L7; $L48: .loc 1 139 32 mov.u32 %r135,2; bra $L7; $L49: .loc 1 137 10 mov.u32 %r135,0; bra $L7; $L50: mov.u32 %r135,0; $L7: .loc 1 153 4 setp.ne.u32 %r319,%r163,0; @ %r319 bra $L11; .loc 1 154 9 setp.ne.u32 %r320,%r155,2146435072; @ %r320 bra $L12; .loc 1 155 17 add.u32 %r321,%r147,-1072693248; .loc 1 155 29 or.b32 %r322,%r321,%r161; .loc 1 155 12 setp.eq.u32 %r323,%r322,0; @ %r323 bra $L52; .loc 1 157 18 setp.le.s32 %r324,%r147,1072693247; @ %r324 bra $L13; .loc 1 158 24 setp.lt.s32 %r325,%r154,0; selp.f64 %r251,0d0000000000000000,%r253,%r325; bra $L1; $L13: .loc 1 160 23 setp.ge.s32 %r326,%r154,0; @ %r326 bra $L54; neg.f64 %r251,%r253; bra $L1; $L12: .loc 1 162 8 setp.ne.u32 %r327,%r155,1072693248; @ %r327 bra $L14; .loc 1 163 5 setp.ge.s32 %r328,%r154,0; @ %r328 bra $L55; .loc 1 163 22 rcp.rn.f64 %r251,%r252; bra $L1; $L14: .loc 1 165 8 setp.ne.u32 %r330,%r154,1073741824; @ %r330 bra $L15; .loc 1 165 33 mul.f64 %r251,%r252,%r252; bra $L1; $L15: .loc 1 166 8 set.u32.eq.u32 %r332,%r154,1071644672; neg.s32 %r333,%r332; mov.u32 %r331,%r333; .loc 1 167 5 not.b32 %r335,%r160; shr.u32 %r336,%r335,31; mov.u32 %r337,%r336; cvt.u16.u8 %r542,%r331; mov.u16 %r339,%r542; cvt.u16.u8 %r542,%r337; mov.u16 %r340,%r542; and.b16 %r338,%r339,%r340; cvt.u32.u16 %r341,%r338; cvt.u16.u8 %r342,%r341; setp.eq.u16 %r343,%r342,0; @ %r343 bra $L11; .loc 1 168 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r252; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r345,[%value_in]; } mov.f64 %r251,%r345; bra $L1; $L11: .loc 1 172 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r252; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r347,[%value_in]; } mov.f64 %r251,%r347; .loc 1 174 4 setp.ne.u32 %r348,%r161,0; @ %r348 bra $L16; .loc 1 175 30 and.b32 %r349,%r160,1073741823; set.u32.eq.u32 %r351,%r349,1072693248; neg.s32 %r352,%r351; mov.u32 %r350,%r352; .loc 1 175 27 set.u32.eq.u32 %r354,%r147,0; neg.s32 %r355,%r354; mov.u32 %r353,%r355; .loc 1 175 30 cvt.u16.u8 %r542,%r350; mov.u16 %r357,%r542; cvt.u16.u8 %r542,%r353; mov.u16 %r358,%r542; or.b16 %r356,%r357,%r358; cvt.u32.u16 %r359,%r356; cvt.u16.u8 %r360,%r359; setp.eq.u16 %r361,%r360,0; @ %r361 bra $L16; bra $L44; $L61: .loc 1 137 10 mov.u32 %r135,%r161; $L44: .loc 1 177 5 setp.ge.s32 %r362,%r154,0; @ %r362 bra $L17; .loc 1 177 14 rcp.rn.f64 %r251,%r251; $L17: .loc 1 178 5 @ %r541 bra $L1; .loc 1 179 14 add.u32 %r365,%r147,-1072693248; .loc 1 179 26 or.b32 %r366,%r365,%r135; .loc 1 179 9 setp.ne.u32 %r367,%r366,0; @ %r367 bra $L18; .loc 1 180 10 sub.f64 %r48,%r251,%r251; .loc 1 180 6 div.rn.f64 %r251,%r48,%r48; bra $L1; $L18: .loc 1 181 16 setp.ne.u32 %r368,%r135,1; @ %r368 bra $L1; .loc 1 182 6 neg.f64 %r251,%r251; bra $L1; $L16: .loc 1 193 27 set.u32.ge.s32 %r50,%r160,0; .loc 1 193 30 or.b32 %r370,%r135,%r50; .loc 1 193 4 setp.ne.u32 %r371,%r370,0; @ %r371 bra $L19; $L43: .loc 1 193 52 sub.f64 %r53,%r252,%r252; .loc 1 193 55 div.rn.f64 %r251,%r53,%r53; bra $L1; $L19: .loc 1 196 4 setp.le.s32 %r372,%r155,1105199104; @ %r372 bra $L20; .loc 1 197 8 setp.le.s32 %r373,%r155,1139802112; @ %r373 bra $L21; .loc 1 198 5 setp.gt.s32 %r374,%r147,1072693247; @ %r374 bra $L22; .loc 1 198 52 setp.ge.s32 %r375,%r154,0; @ %r375 bra $L23; $L24: .loc 1 198 37 mov.u32 %r376,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r376; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r377,[%value_in]; } mov.f64 %r251,%r377; bra $L1; $L23: .loc 1 198 53 mov.u32 %r378,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r378; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r379,[%value_in]; } mov.f64 %r251,%r379; bra $L1; $L22: .loc 1 199 52 setp.gt.s32 %r380,%r154,0; @ %r380 bra $L24; bra $L23; $L21: .loc 1 202 8 setp.gt.s32 %r381,%r147,1072693246; @ %r381 bra $L25; .loc 1 202 54 setp.lt.s32 %r382,%r154,0; @ ! %r382 bra $L23; bra $L24; $L25: .loc 1 203 8 setp.le.s32 %r383,%r147,1072693248; @ %r383 bra $L26; .loc 1 203 54 setp.gt.s32 %r384,%r154,0; @ %r384 bra $L24; bra $L23; $L26: .loc 1 206 8 mov.f64 %r385,0d3ff0000000000000; sub.f64 %r189,%r347,%r385; .loc 1 207 12 mul.f64 %r54,%r189,%r189; .loc 1 207 48 fma.rn.f64 %r55,%r189,0dbfd0000000000000,0d3fd5555555555555; .loc 1 207 20 neg.f64 %r387,%r55; fma.rn.f64 %r56,%r387,%r189,0d3fe0000000000000; .loc 1 207 8 mul.f64 %r388,%r54,%r56; .loc 1 209 8 mul.f64 %r390,%r388,0dbff71547652b82fe; fma.rn.f64 %r191,%r189,0d3e54ae0bf85ddf44,%r390; .loc 1 210 9 fma.rn.f64 %r192,%r189,0d3ff7154760000000,%r191; .loc 1 211 6 mov.b64 %r240,%r192; and.b64 %r391,%r240,-4294967296; mov.b64 %r141,%r391; .loc 1 212 16 fma.rn.f64 %r58,%r189,0dbff7154760000000,%r141; .loc 1 212 9 sub.f64 %r142,%r191,%r58; bra $L27; $L20: .loc 1 217 8 and.b32 %r393,%r160,2146435072; setp.ne.u32 %r394,%r393,0; @ %r394 bra $L56; .loc 1 218 7 mul.f64 %r251,%r347,0d4340000000000000; .loc 1 218 26 mov.b64 %r395,%r251; shr.u64 %r396,%r395,32; cvt.u32.u64 %r147,%r396; .loc 1 218 19 mov.u32 %r144,-53; bra $L28; $L56: .loc 1 215 8 mov.u32 %r144,0; $L28: .loc 1 219 17 shr.s32 %r398,%r147,20; .loc 1 219 22 add.u32 %r399,%r398,-1023; .loc 1 219 9 add.u32 %r145,%r399,%r144; .loc 1 220 9 and.b32 %r165,%r147,1048575; .loc 1 222 9 or.b32 %r148,%r165,1072693248; .loc 1 223 8 setp.le.s32 %r400,%r165,235662; @ %r400 bra $L57; .loc 1 224 13 setp.le.s32 %r401,%r165,767609; @ %r401 bra $L58; .loc 1 225 17 add.u32 %r145,%r145,1; .loc 1 225 24 add.u32 %r148,%r148,-1048576; mov.f64 %r138,0d0000000000000000; mov.f64 %r224,%r138; mov.u32 %r150,0; mov.f64 %r222,0d3ff0000000000000; bra $L29; $L57: mov.f64 %r138,0d0000000000000000; mov.f64 %r224,%r138; mov.u32 %r150,0; mov.f64 %r222,0d3ff0000000000000; bra $L29; $L58: mov.f64 %r138,0d3fe2b80340000000; mov.f64 %r224,0d3e4cfdeb43cfd006; mov.u32 %r150,262144; mov.f64 %r222,0d3ff8000000000000; $L29: .loc 1 226 6 mov.b64 %r241,%r251; cvt.u64.u32 %r402,%r148; shl.b64 %r403,%r402,32; and.b64 %r404,%r241,4294967295; or.b64 %r405,%r404,%r403; mov.b64 %r167,%r405; .loc 1 229 8 sub.f64 %r168,%r167,%r222; .loc 1 230 17 add.f64 %r406,%r167,%r222; .loc 1 230 8 rcp.rn.f64 %r169,%r406; .loc 1 231 8 mul.f64 %r170,%r168,%r169; .loc 1 233 6 mov.b64 %r242,%r170; and.b64 %r408,%r242,-4294967296; mov.b64 %r172,%r408; .loc 1 236 6 shr.s32 %r409,%r148,1; or.b32 %r410,%r409,536870912; add.u32 %r411,%r410,524288; add.u32 %r412,%r411,%r150; cvt.u64.u32 %r413,%r412; shl.b64 %r414,%r413,32; mov.b64 %r173,%r414; .loc 1 237 21 sub.f64 %r417,%r173,%r222; .loc 1 237 10 sub.f64 %r174,%r167,%r417; .loc 1 238 17 neg.f64 %r418,%r172; fma.rn.f64 %r69,%r418,%r173,%r168; .loc 1 238 26 fma.rn.f64 %r70,%r418,%r174,%r69; .loc 1 238 10 mul.f64 %r175,%r70,%r169; .loc 1 240 9 mul.f64 %r176,%r170,%r170; .loc 1 241 12 mul.f64 %r71,%r176,%r176; .loc 1 241 47 fma.rn.f64 %r72,%r176,0d3fca7e284a454eef,0d3fcd864a93c9db65; .loc 1 241 40 fma.rn.f64 %r73,%r72,%r176,0d3fd17460a91d4101; .loc 1 241 33 fma.rn.f64 %r74,%r73,%r176,0d3fd55555518f264d; .loc 1 241 26 fma.rn.f64 %r75,%r74,%r176,0d3fdb6db6db6fabff; .loc 1 241 19 fma.rn.f64 %r76,%r75,%r176,0d3fe3333333333303; .loc 1 242 19 add.f64 %r420,%r170,%r172; .loc 1 242 14 mul.f64 %r421,%r420,%r175; .loc 1 242 8 fma.rn.f64 %r177,%r71,%r76,%r421; .loc 1 244 15 fma.rn.f64 %r79,%r172,%r172,0d4008000000000000; .loc 1 244 10 add.f64 %r422,%r79,%r177; .loc 1 245 6 mov.b64 %r244,%r422; and.b64 %r423,%r244,-4294967296; mov.b64 %r179,%r423; .loc 1 246 19 mov.f64 %r426,0d4008000000000000; sub.f64 %r425,%r179,%r426; .loc 1 246 24 fma.rn.f64 %r81,%r418,%r172,%r425; .loc 1 246 10 sub.f64 %r427,%r177,%r81; .loc 1 249 21 mul.f64 %r428,%r427,%r170; .loc 1 249 8 fma.rn.f64 %r181,%r175,%r179,%r428; .loc 1 251 10 fma.rn.f64 %r182,%r172,%r179,%r181; .loc 1 252 6 mov.b64 %r245,%r182; and.b64 %r429,%r245,-4294967296; mov.b64 %r183,%r429; .loc 1 253 18 fma.rn.f64 %r83,%r418,%r179,%r183; .loc 1 253 10 sub.f64 %r431,%r181,%r83; .loc 1 255 24 mul.f64 %r432,%r431,0d3feec709dc3a03fd; .loc 1 255 20 fma.rn.f64 %r85,%r183,0dbe3e2fe0145b01f5,%r432; .loc 1 255 10 add.f64 %r185,%r85,%r224; .loc 1 257 8 cvt.rn.f64.s32 %r186,%r145; .loc 1 258 17 fma.rn.f64 %r86,%r183,0d3feec709e0000000,%r185; .loc 1 258 22 add.f64 %r433,%r86,%r138; .loc 1 258 9 add.f64 %r434,%r433,%r186; .loc 1 259 6 mov.b64 %r246,%r434; and.b64 %r435,%r246,-4294967296; mov.b64 %r141,%r435; .loc 1 260 20 sub.f64 %r437,%r141,%r186; .loc 1 260 23 sub.f64 %r438,%r437,%r138; .loc 1 260 32 fma.rn.f64 %r90,%r183,0dbfeec709e0000000,%r438; .loc 1 260 9 sub.f64 %r142,%r185,%r90; $L27: .loc 1 264 38 add.u32 %r439,%r135,-1; .loc 1 264 30 or.b32 %r440,%r439,%r50; .loc 1 264 4 setp.ne.u32 %r441,%r440,0; .loc 1 265 8 selp.f64 %r143,0d3ff0000000000000,0dbff0000000000000,%r441; .loc 1 269 2 mov.b64 %r247,%r253; and.b64 %r442,%r247,-4294967296; mov.b64 %r193,%r442; .loc 1 270 10 sub.f64 %r443,%r253,%r193; .loc 1 270 19 mul.f64 %r444,%r142,%r253; .loc 1 270 6 fma.rn.f64 %r194,%r443,%r141,%r444; .loc 1 271 6 mul.f64 %r140,%r141,%r193; .loc 1 272 4 add.f64 %r149,%r194,%r140; mov.b64 %r445,%r149; shr.u64 %r446,%r445,32; cvt.u32.u64 %r447,%r446; cvt.u32.u64 %r449,%r445; .loc 1 274 5 setp.le.s32 %r450,%r447,1083179007; @ %r450 bra $L31; .loc 1 275 12 add.u32 %r451,%r447,-1083179008; .loc 1 275 24 or.b32 %r452,%r451,%r449; .loc 1 275 8 setp.eq.u32 %r453,%r452,0; @ %r453 bra $L32; .loc 1 276 10 set.u32.lt.f64 %r456,%r143,0d0000000000000000; neg.s32 %r457,%r456; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r457; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r458,[%value_in]; } mov.f64 %r251,%r458; bra $L1; $L32: .loc 1 278 9 add.f64 %r459,%r194,0d3c971547652b82fe; .loc 1 278 15 sub.f64 %r460,%r149,%r140; .loc 1 278 5 setp.gt.f64 %r461,%r459,%r460; @ ! %r461 bra $L33; .loc 1 278 28 set.u32.lt.f64 %r464,%r143,0d0000000000000000; neg.s32 %r465,%r464; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r465; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r466,[%value_in]; } mov.f64 %r251,%r466; bra $L1; $L31: .loc 1 280 14 and.b32 %r104,%r447,2147483647; .loc 1 280 11 setp.le.s32 %r467,%r104,1083231231; @ %r467 bra $L35; .loc 1 281 12 add.u32 %r468,%r447,1064252416; .loc 1 281 24 or.b32 %r469,%r468,%r449; .loc 1 281 8 setp.eq.u32 %r470,%r469,0; @ %r470 bra $L36; .loc 1 282 10 set.u32.lt.f64 %r473,%r143,0d0000000000000000; neg.s32 %r474,%r473; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r474; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r475,[%value_in]; } mov.f64 %r251,%r475; bra $L1; $L36: .loc 1 284 12 sub.f64 %r476,%r149,%r140; .loc 1 284 5 setp.ge.f64 %r477,%r476,%r194; @ ! %r477 bra $L33; .loc 1 284 25 set.u32.lt.f64 %r480,%r143,0d0000000000000000; neg.s32 %r481,%r480; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r481; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r482,[%value_in]; } mov.f64 %r251,%r482; bra $L1; $L35: .loc 1 293 4 setp.le.s32 %r483,%r104,1071644672; @ %r483 bra $L60; .loc 1 291 8 shr.s32 %r225,%r104,20; $L42: .loc 1 294 27 add.u32 %r484,%r225,-1022; .loc 1 294 23 mov.u32 %r486,1048576; shr.s32 %r485,%r486,%r484; .loc 1 294 8 add.u32 %r197,%r485,%r447; .loc 1 295 25 shr.s32 %r487,%r197,20; and.b32 %r488,%r487,2047; .loc 1 295 8 add.u32 %r198,%r488,-1023; .loc 1 297 6 mov.u32 %r490,-1048576; shr.s32 %r489,%r490,%r198; and.b32 %r491,%r489,%r197; cvt.u64.u32 %r492,%r491; shl.b64 %r493,%r492,32; mov.b64 %r199,%r493; .loc 1 298 13 and.b32 %r496,%r197,1048575; .loc 1 298 25 or.b32 %r120,%r496,1048576; .loc 1 298 42 mov.u32 %r498,20; sub.u32 %r497,%r498,%r198; .loc 1 298 8 shr.s32 %r146,%r120,%r497; .loc 1 299 8 setp.ge.s32 %r499,%r447,0; @ %r499 bra $L39; .loc 1 299 16 neg.s32 %r146,%r146; $L39: .loc 1 300 10 sub.f64 %r140,%r140,%r199; .loc 1 313 9 shl.b32 %r218,%r146,20; .loc 1 302 4 add.f64 %r149,%r194,%r140; bra $L38; $L60: mov.u32 %r218,0; .loc 1 292 4 mov.u32 %r146,%r218; $L38: .loc 1 303 2 mov.b64 %r249,%r149; and.b64 %r500,%r249,-4294967296; mov.b64 %r200,%r500; .loc 1 305 13 sub.f64 %r501,%r200,%r140; .loc 1 305 10 sub.f64 %r502,%r194,%r501; .loc 1 305 25 mul.f64 %r503,%r200,0dbe205c610ca86c39; .loc 1 305 4 fma.rn.f64 %r201,%r502,0d3fe62e42fefa39ef,%r503; .loc 1 306 4 fma.rn.f64 %r202,%r200,0d3fe62e4300000000,%r201; .loc 1 307 10 fma.rn.f64 %r125,%r200,0dbfe62e4300000000,%r202; .loc 1 307 4 sub.f64 %r203,%r201,%r125; .loc 1 308 5 mul.f64 %r204,%r202,%r202; .loc 1 309 35 fma.rn.f64 %r126,%r204,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 309 29 fma.rn.f64 %r127,%r126,%r204,0d3f11566aaf25de2c; .loc 1 309 23 fma.rn.f64 %r128,%r127,%r204,0dbf66c16c16bebd93; .loc 1 309 17 fma.rn.f64 %r129,%r128,%r204,0d3fc555555555553e; .loc 1 309 6 neg.f64 %r505,%r129; fma.rn.f64 %r205,%r505,%r204,%r202; .loc 1 310 9 mul.f64 %r506,%r202,%r205; .loc 1 310 17 mov.f64 %r508,0d4000000000000000; sub.f64 %r507,%r205,%r508; .loc 1 310 13 div.rn.f64 %r132,%r506,%r507; .loc 1 310 25 fma.rn.f64 %r133,%r202,%r203,%r203; .loc 1 310 5 sub.f64 %r509,%r132,%r133; .loc 1 311 13 sub.f64 %r134,%r509,%r202; .loc 1 311 5 mov.f64 %r510,0d3ff0000000000000; sub.f64 %r207,%r510,%r134; .loc 1 312 2 mov.b64 %r511,%r207; shr.u64 %r512,%r511,32; cvt.u32.u64 %r513,%r512; .loc 1 313 4 add.u32 %r209,%r513,%r218; .loc 1 314 4 setp.gt.s32 %r515,%r209,1048575; @ %r515 bra $L40; .loc 1 314 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r207; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r146; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r518,[%value_in]; } mov.f64 %r139,%r518; bra $L41; $L40: .loc 1 315 7 cvt.u64.u32 %r519,%r209; shl.b64 %r520,%r519,32; and.b64 %r521,%r511,4294967295; or.b64 %r522,%r521,%r520; mov.b64 %r139,%r522; $L41: .loc 1 316 10 mul.f64 %r251,%r139,%r143; bra $L1; $L45: .loc 1 122 13 mov.f64 %r251,0d3ff0000000000000; bra $L1; $L46: mov.f64 %r251,0d3ff0000000000000; bra $L1; $L52: mov.f64 %r251,0d3ff0000000000000; bra $L1; $L54: .loc 1 158 24 mov.f64 %r251,0d0000000000000000; bra $L1; $L55: .loc 1 163 38 mov.f64 %r251,%r252; bra $L1; $L33: .loc 1 291 8 shr.s32 %r524,%r447,20; and.b32 %r225,%r524,2047; bra $L42; $L9: .loc 1 172 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r252; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r526,[%value_in]; } mov.f64 %r251,%r526; .loc 1 174 4 setp.ne.u32 %r527,%r161,0; @ %r527 bra $L43; .loc 1 175 30 and.b32 %r528,%r160,1073741823; set.u32.eq.u32 %r530,%r528,1072693248; neg.s32 %r531,%r530; mov.u32 %r529,%r531; .loc 1 175 27 set.u32.eq.u32 %r533,%r147,0; neg.s32 %r534,%r533; mov.u32 %r532,%r534; .loc 1 175 30 cvt.u16.u8 %r542,%r529; mov.u16 %r536,%r542; cvt.u16.u8 %r542,%r532; mov.u16 %r537,%r542; or.b16 %r535,%r536,%r537; cvt.u32.u16 %r538,%r535; cvt.u16.u8 %r539,%r538; setp.ne.u16 %r540,%r539,0; @ ! %r540 bra $L43; bra $L61; $L51: .loc 1 137 10 mov.u32 %r135,0; bra $L12; $L1: .loc 1 317 1 mov.f64 %value,%r251; st.param.f64 [%value_out],%value; ret; } /84 0 0 0 644 10773 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .visible .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2 .extern .func (.param .u32 %value_out) __kernel_rem_pio2 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: npio2_hw .const .align 4 .u32 npio2_hw[32] = {1073291771,1074340347,1074977148,1075388923,1075800698,1076025724,1076231611,1076437499,1076643386,1076849274,1076971356,1077074300,1077177244,1077280187,1077383131,1077486075,1077589019,1077691962,1077794906,1077897850,1077968460,1078019932,1078071404,1078122876,1078174348,1078225820,1078277292,1078328763,1078380235,1078431707,1078483179,1078534651 }; // BEGIN VAR DEF: two_over_pi .const .align 4 .u32 two_over_pi[66] = {10680707,7228996,1387004,2578385,16069853,12639074,9804092,4427841,16666979,11263675,12935607,2387514,4345298,14681673,3074569,13734428,16653803,1880361,10960616,8533493,3062596,8710556,7349940,6258241,3772886,3769171,3798172,8675211,12450088,3874808,9961438,366607,15675153,9132554,7151469,3571407,2607881,12013382,4155038,6285869,7677882,13102053,15825725,473591,9065106,15363067,6271263,9264392,5636912,4652155,7056368,13614112,10155062,1944035,9527646,15080200,6658437,6231200,6832269,16767104,5075751,3212806,1398474,7579849,6349435,12618859 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_rem_pio2 .visible .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r22; .reg .f64 %r25; .reg .f64 %r28; .reg .u32 %r30; .reg .f64 %r32; .reg .f64 %r36; .reg .f64 %r40; .reg .u32 %r41; .reg .f64 %r46; .reg .f64 %r51; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r70; .reg .f64 %r71; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .u32 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .u32 %r101; .reg .f64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r107; .reg .f64 %r108; .reg .pred %r109; .reg .pred %r110; .reg .f64 %r111; .reg .pred %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .pred %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .pred %r127; .reg .f64 %r129; .reg .pred %r131; .reg .u64 %r132; .reg .u32 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .pred %r145; .reg .f64 %r148; .reg .f64 %r149; .reg .u64 %r150; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .pred %r162; .reg .f64 %r163; .reg .f64 %r164; .reg .pred %r165; .reg .u32 %r167; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u32 %r179; .reg .pred %r180; .reg .pred %r181; .reg .u32 %r186; .reg .u64 %r187; .reg .u32 %r188; .reg .pred %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r195; mov.f64 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 98 2 mov.b64 %r104,%r102; shr.u64 %r105,%r104,32; cvt.u32.u64 %r74,%r105; .loc 1 99 5 and.b32 %r75,%r74,2147483647; .loc 1 100 4 setp.gt.s32 %r107,%r75,1072243195; @ %r107 bra $L2; .loc 1 101 12 st.f64 [%r103],%r102; .loc 1 101 22 mov.f64 %r108,0d0000000000000000; st.f64 [%r103+8],%r108; .loc 1 101 34 mov.u32 %r101,0; bra $L1; $L2: .loc 1 102 4 setp.gt.s32 %r109,%r75,1073928571; @ %r109 bra $L4; .loc 1 103 8 setp.le.s32 %r110,%r74,0; @ %r110 bra $L5; .loc 1 104 5 mov.f64 %r111,0d3ff921fb54400000; sub.f64 %r87,%r102,%r111; .loc 1 105 5 setp.eq.u32 %r112,%r75,1073291771; @ %r112 bra $L6; .loc 1 106 16 mov.f64 %r113,0d3dd0b4611a626331; sub.f64 %r22,%r87,%r113; .loc 1 106 12 st.f64 [%r103],%r22; .loc 1 107 16 sub.f64 %r114,%r87,%r22; .loc 1 107 22 sub.f64 %r115,%r114,%r113; .loc 1 107 12 st.f64 [%r103+8],%r115; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L6: .loc 1 109 9 mov.f64 %r117,0d3dd0b4611a600000; sub.f64 %r88,%r87,%r117; .loc 1 110 16 mov.f64 %r118,0d3ba3198a2e037073; sub.f64 %r25,%r88,%r118; .loc 1 110 12 st.f64 [%r103],%r25; .loc 1 111 16 sub.f64 %r119,%r88,%r25; .loc 1 111 22 sub.f64 %r120,%r119,%r118; .loc 1 111 12 st.f64 [%r103+8],%r120; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L5: .loc 1 115 5 add.f64 %r85,%r102,0d3ff921fb54400000; .loc 1 116 5 setp.eq.u32 %r122,%r75,1073291771; @ %r122 bra $L7; .loc 1 117 16 add.f64 %r28,%r85,0d3dd0b4611a626331; .loc 1 117 12 st.f64 [%r103],%r28; .loc 1 118 16 sub.f64 %r123,%r85,%r28; .loc 1 118 22 add.f64 %r124,%r123,0d3dd0b4611a626331; .loc 1 118 12 st.f64 [%r103+8],%r124; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L7: .loc 1 120 9 add.f64 %r86,%r85,0d3dd0b4611a600000; .loc 1 121 16 add.f64 %r32,%r86,0d3ba3198a2e037073; .loc 1 121 12 st.f64 [%r103],%r32; .loc 1 122 16 sub.f64 %r125,%r86,%r32; .loc 1 122 22 add.f64 %r126,%r125,0d3ba3198a2e037073; .loc 1 122 12 st.f64 [%r103+8],%r126; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L4: .loc 1 127 4 setp.gt.s32 %r127,%r75,1094263291; @ %r127 bra $L8; .loc 1 128 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r102; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r129,[%value_in]; } .loc 1 129 33 fma.rn.f64 %r36,%r129,0d3fe45f306dc9c883,0d3fe0000000000000; .loc 1 129 9 cvt.rzi.s32.f64 %r101,%r36; .loc 1 130 9 cvt.rn.f64.s32 %r80,%r101; .loc 1 131 9 neg.f64 %r195,%r80; fma.rn.f64 %r71,%r80,0dbff921fb54400000,%r129; .loc 1 132 9 mul.f64 %r70,%r80,0d3dd0b4611a626331; .loc 1 133 8 setp.gt.s32 %r131,%r101,31; @ %r131 bra $L9; .loc 1 133 27 cvta.const.u64 %r132,npio2_hw; .loc 1 133 29 add.u32 %r133,%r101,-1; .loc 1 133 27 cvt.s64.s32 %r134,%r133; shl.b64 %r135,%r134,2; add.u64 %r136,%r132,%r135; .loc 1 133 13 ld.u32 %r137,[%r136]; setp.eq.u32 %r138,%r137,%r75; @ %r138 bra $L9; .loc 1 134 11 sub.f64 %r40,%r71,%r70; .loc 1 134 8 st.f64 [%r103],%r40; bra $L10; $L9: .loc 1 138 18 sub.f64 %r40,%r71,%r70; .loc 1 137 13 shr.s32 %r41,%r75,20; .loc 1 140 22 mov.b64 %r139,%r40; shr.u64 %r141,%r139,52; cvt.u32.u64 %r142,%r141; .loc 1 140 27 and.b32 %r143,%r142,2047; .loc 1 140 15 sub.u32 %r144,%r41,%r143; .loc 1 141 12 setp.gt.s32 %r145,%r144,16; @ %r145 bra $L11; .loc 1 138 15 st.f64 [%r103],%r40; bra $L10; $L11: .loc 1 144 10 fma.rn.f64 %r83,%r195,0d3dd0b4611a600000,%r71; .loc 1 145 26 sub.f64 %r148,%r71,%r83; .loc 1 145 29 fma.rn.f64 %r46,%r195,0d3dd0b4611a600000,%r148; .loc 1 145 10 neg.f64 %r149,%r46; fma.rn.f64 %r70,%r80,0d3ba3198a2e037073,%r149; .loc 1 146 15 sub.f64 %r40,%r83,%r70; .loc 1 148 19 mov.b64 %r150,%r40; shr.u64 %r152,%r150,52; cvt.u32.u64 %r153,%r152; .loc 1 148 24 and.b32 %r154,%r153,2047; .loc 1 148 12 sub.u32 %r155,%r41,%r154; .loc 1 149 9 setp.gt.s32 %r156,%r155,49; @ %r156 bra $L12; .loc 1 146 12 st.f64 [%r103],%r40; .loc 1 144 10 mov.f64 %r71,%r83; bra $L10; $L12: .loc 1 152 11 fma.rn.f64 %r71,%r195,0d3ba3198a2e000000,%r83; .loc 1 153 27 sub.f64 %r159,%r83,%r71; .loc 1 153 30 fma.rn.f64 %r51,%r195,0d3ba3198a2e000000,%r159; .loc 1 153 11 neg.f64 %r160,%r51; fma.rn.f64 %r70,%r80,0d397b839a252049c1,%r160; .loc 1 154 16 sub.f64 %r40,%r71,%r70; .loc 1 154 13 st.f64 [%r103],%r40; $L10: .loc 1 158 15 sub.f64 %r161,%r71,%r40; .loc 1 158 21 sub.f64 %r55,%r161,%r70; .loc 1 158 11 st.f64 [%r103+8],%r55; .loc 1 159 8 setp.ge.s32 %r162,%r74,0; @ %r162 bra $L1; .loc 1 159 24 neg.f64 %r163,%r40; .loc 1 159 22 st.f64 [%r103],%r163; .loc 1 159 38 neg.f64 %r164,%r55; .loc 1 159 36 st.f64 [%r103+8],%r164; .loc 1 159 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 165 4 setp.le.s32 %r165,%r75,2146435071; @ %r165 bra $L13; .loc 1 166 17 sub.f64 %r59,%r102,%r102; .loc 1 166 15 st.f64 [%r103+8],%r59; .loc 1 166 10 st.f64 [%r103],%r59; .loc 1 166 28 mov.u32 %r101,0; bra $L1; $L13: .loc 1 170 2 cvt.u32.u64 %r167,%r104; .loc 1 171 17 shr.s32 %r172,%r75,20; .loc 1 171 6 add.u32 %r77,%r172,-1046; .loc 1 172 2 shl.b32 %r173,%r77,20; sub.u32 %r174,%r75,%r173; cvt.u64.u32 %r175,%r174; shl.b64 %r176,%r175,32; cvt.u64.u32 %r177,%r167; or.b64 %r178,%r177,%r176; mov.b64 %r78,%r178; .loc 1 174 20 cvt.rzi.s32.f64 %r179,%r78; .loc 1 174 11 cvt.rn.f64.s32 %r91,%r179; .loc 1 174 9 st.f64 [%frame],%r91; .loc 1 175 13 sub.f64 %r92,%r78,%r91; .loc 1 175 9 mul.f64 %r93,%r92,0d4170000000000000; .loc 1 174 20 cvt.rzi.s32.f64 %r94,%r93; .loc 1 174 11 cvt.rn.f64.s32 %r95,%r94; .loc 1 174 9 st.f64 [%frame+8],%r95; .loc 1 175 13 sub.f64 %r96,%r93,%r95; .loc 1 175 9 mul.f64 %r97,%r96,0d4170000000000000; .loc 1 177 8 st.f64 [%frame+16],%r97; .loc 1 179 16 setp.neu.f64 %r180,%r97,0d0000000000000000; @ %r180 bra $L15; setp.ne.u32 %r181,%r94,0; .loc 1 179 13 selp.u32 %r30,2,1,%r181; bra $L14; $L15: .loc 1 178 5 mov.u32 %r30,3; $L14: .loc 1 180 8 cvta.const.u64 %r187,two_over_pi; mov.u32 %r186,2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r77; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r30; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r186; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r187; call (%value_in),__kernel_rem_pio2,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r188,[%value_in]; } mov.u32 %r101,%r188; .loc 1 181 4 setp.ge.s32 %r189,%r74,0; @ %r189 bra $L1; .loc 1 181 19 ld.f64 %r191,[%r103]; neg.f64 %r190,%r191; .loc 1 181 17 st.f64 [%r103],%r190; .loc 1 181 33 ld.f64 %r193,[%r103+8]; neg.f64 %r192,%r193; .loc 1 181 31 st.f64 [%r103+8],%r192; .loc 1 181 47 neg.s32 %r101,%r101; $L1: .loc 1 183 1 mov.u32 %value,%r101; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /104 0 0 0 644 4442 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainder .visible .func (.param .f64 %value_out) __ieee754_remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmod .extern .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_remainder .visible .func (.param .f64 %value_out) __ieee754_remainder (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r29; .reg .f64 %r38; .reg .f64 %r39; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .f64 %r46; .reg .u32 %r47; .reg .u32 %r50; .reg .u64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .pred %r71; .reg .f64 %r74; .reg .f64 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .f64 %r84; .reg .f64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .f64 %r89; .reg .pred %r90; .reg .f64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u64 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; mov.f64 %r54,%ar0; mov.f64 %r55,%ar1; .loc 1 46 2 mov.b64 %r56,%r55; shr.u64 %r57,%r56,32; cvt.u32.u64 %r41,%r57; cvt.u32.u64 %r50,%r56; .loc 1 48 5 and.b32 %r43,%r41,2147483647; .loc 1 52 8 or.b32 %r61,%r43,%r50; .loc 1 52 4 setp.ne.u32 %r62,%r61,0; @ %r62 bra $L2; .loc 1 52 26 mul.f64 %r25,%r54,%r55; .loc 1 52 29 div.rn.f64 %r53,%r25,%r25; bra $L1; $L2: mov.b64 %r63,%r54; shr.u64 %r64,%r63,32; cvt.u32.u64 %r47,%r64; .loc 1 49 5 and.b32 %r44,%r47,2147483647; .loc 1 53 4 setp.gt.s32 %r66,%r44,2146435071; @ %r66 bra $L4; .loc 1 53 21 setp.le.s32 %r67,%r43,2146435071; @ %r67 bra $L5; .loc 1 55 9 add.u32 %r68,%r43,-2146435072; .loc 1 55 21 or.b32 %r69,%r68,%r50; .loc 1 54 21 setp.eq.u32 %r70,%r69,0; @ %r70 bra $L6; $L4: .loc 1 56 15 mul.f64 %r29,%r54,%r55; .loc 1 56 18 div.rn.f64 %r53,%r29,%r29; bra $L1; $L5: .loc 1 59 5 setp.gt.s32 %r71,%r43,2145386495; @ %r71 bra $L14; .loc 1 59 26 add.f64 %r74,%r55,%r55; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r74; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r75,[%value_in]; } mov.f64 %r38,%r75; bra $L7; $L14: mov.f64 %r38,%r54; $L7: .loc 1 60 10 sub.u32 %r76,%r44,%r43; .loc 1 60 18 mov.b64 %r77,%r54; cvt.u32.u64 %r78,%r77; sub.u32 %r80,%r78,%r50; .loc 1 60 14 or.b32 %r81,%r76,%r80; .loc 1 60 5 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L15; .loc 1 60 39 mul.f64 %r53,%r38,0d0000000000000000; bra $L1; $L15: mov.f64 %r54,%r38; $L6: .loc 1 61 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } mov.f64 %r39,%r84; .loc 1 62 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r55; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r86,[%value_in]; } .loc 1 63 5 and.b32 %r87,%r41,2145386496; setp.ne.u32 %r88,%r87,0; @ %r88 bra $L8; .loc 1 64 10 add.f64 %r89,%r39,%r39; .loc 1 64 8 setp.gt.f64 %r90,%r89,%r86; @ ! %r90 bra $L9; .loc 1 65 4 sub.f64 %r39,%r39,%r86; .loc 1 66 7 add.f64 %r91,%r39,%r39; .loc 1 66 5 setp.ge.f64 %r92,%r91,%r86; @ ! %r92 bra $L9; .loc 1 66 16 sub.f64 %r39,%r39,%r86; bra $L9; $L8: .loc 1 69 13 mul.f64 %r46,%r86,0d3fe0000000000000; .loc 1 70 8 setp.gt.f64 %r93,%r39,%r46; @ ! %r93 bra $L9; .loc 1 71 4 sub.f64 %r39,%r39,%r86; .loc 1 72 5 setp.le.f64 %r94,%r46,%r39; @ ! %r94 bra $L9; .loc 1 72 19 sub.f64 %r39,%r39,%r86; $L9: .loc 1 76 2 mov.b64 %r52,%r39; .loc 1 47 5 and.b32 %r95,%r47,-2147483648; .loc 1 76 2 shr.u64 %r97,%r52,32; cvt.u32.u64 %r98,%r97; xor.b32 %r99,%r95,%r98; cvt.u64.u32 %r100,%r99; shl.b64 %r101,%r100,32; and.b64 %r102,%r52,4294967295; or.b64 %r103,%r102,%r101; mov.b64 %r53,%r103; $L1: .loc 1 78 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-e_scalb.o/0 0 0 644 3054 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalb .visible .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/e_scalb.c" // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_scalb .visible .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r41; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .f64 %r46; .reg .u32 %r49; .reg .f64 %r50; mov.f64 %r28,%ar0; mov.f64 %r29,%ar1; .loc 1 43 5 setp.num.f64 %r30,%r28,%r29; @ %r30 bra $L2; $L5: .loc 1 43 35 mul.f64 %r27,%r28,%r29; bra $L1; $L2: .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; call (%value_in),finite,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 44 5 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 45 8 setp.gt.f64 %r34,%r29,0d0000000000000000; @ %r34 bra $L5; .loc 1 46 25 neg.f64 %r35,%r28; div.rn.f64 %r27,%r35,%r29; bra $L1; $L4: .loc 1 48 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; call (%value_in),rint,(%out_arg1); ld.param.f64 %r37,[%value_in]; } .loc 1 48 5 setp.eq.f64 %r38,%r37,%r29; @ %r38 bra $L6; .loc 1 48 30 sub.f64 %r25,%r29,%r29; .loc 1 48 34 div.rn.f64 %r27,%r25,%r25; bra $L1; $L6: .loc 1 53 5 setp.gt.f64 %r39,%r29,0d40efbd0000000000; @ ! %r39 bra $L13; .loc 1 53 28 mov.u32 %r41,65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r42,[%value_in]; } mov.f64 %r27,%r42; bra $L1; $L13: .loc 1 54 5 setp.lt.f64 %r43,%r29,0dc0efbd0000000000; @ ! %r43 bra $L14; .loc 1 54 28 mov.u32 %r45,-65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r45; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } mov.f64 %r27,%r46; bra $L1; $L14: .loc 1 56 9 cvt.rzi.s32.f64 %r49,%r29; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r49; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } mov.f64 %r27,%r50; $L1: .loc 1 58 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-e_sinh.o/ 0 0 0 644 4927 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinh .visible .func (.param .f64 %value_out) __ieee754_sinh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_sinh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_sinh .visible .func (.param .f64 %value_out) __ieee754_sinh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r27; .reg .f64 %r38; .reg .u32 %r40; .reg .f64 %r45; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .f64 %r62; .reg .pred %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .pred %r71; .reg .f64 %r73; .reg .f64 %r75; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u16 %r85; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .f64 %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r99; .reg .f64 %r101; .reg .u16 %r102; mov.f64 %r49,%ar0; .loc 1 54 2 mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r52,%r51; .loc 1 55 5 and.b32 %r40,%r52,2147483647; .loc 1 58 4 setp.le.s32 %r53,%r40,2146435071; @ %r53 bra $L2; .loc 1 58 29 add.f64 %r48,%r49,%r49; bra $L1; $L2: .loc 1 61 5 setp.ge.s32 %r54,%r52,0; .loc 1 61 14 selp.f64 %r38,0d3fe0000000000000,0dbfe0000000000000,%r54; .loc 1 63 5 setp.gt.s32 %r55,%r40,1077280767; @ %r55 bra $L5; .loc 1 64 9 setp.gt.s32 %r56,%r40,1043333119; @ %r56 bra $L6; .loc 1 65 11 add.f64 %r57,%r49,0d7fac7b1f3cac7433; .loc 1 65 5 setp.gt.f64 %r58,%r57,0d3ff0000000000000; @ ! %r58 bra $L15; bra $L14; $L6: .loc 1 66 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r60,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r62,[%value_in]; } mov.f64 %r45,%r62; .loc 1 67 8 setp.gt.s32 %r63,%r40,1072693247; @ %r63 bra $L8; $L12: .loc 1 67 41 mul.f64 %r64,%r45,%r45; .loc 1 67 46 add.f64 %r65,%r45,0d3ff0000000000000; .loc 1 67 43 div.rn.f64 %r66,%r64,%r65; .loc 1 67 39 neg.f64 %r67,%r66; fma.rn.f64 %r27,%r45,0d4000000000000000,%r67; .loc 1 67 32 mul.f64 %r48,%r27,%r38; bra $L1; $L8: .loc 1 68 22 add.f64 %r68,%r62,0d3ff0000000000000; .loc 1 68 19 div.rn.f64 %r69,%r62,%r68; .loc 1 68 17 add.f64 %r70,%r69,%r62; .loc 1 68 14 mul.f64 %r48,%r70,%r38; bra $L1; $L5: .loc 1 72 5 setp.gt.s32 %r71,%r40,1082535489; @ %r71 bra $L9; .loc 1 72 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r73,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r73; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r75,[%value_in]; } .loc 1 72 32 mul.f64 %r48,%r75,%r38; bra $L1; $L9: cvt.u32.u64 %r77,%r50; .loc 1 76 11 setp.le.s32 %r78,%r40,1082536909; @ %r78 bra $L10; .loc 1 76 32 set.u32.eq.u32 %r80,%r40,1082536910; neg.s32 %r81,%r80; mov.u32 %r79,%r81; .loc 1 76 50 set.u32.le.u32 %r83,%r77,-1883637635; neg.s32 %r84,%r83; mov.u32 %r82,%r84; .loc 1 76 45 cvt.u16.u8 %r102,%r79; mov.u16 %r86,%r102; cvt.u16.u8 %r102,%r82; mov.u16 %r87,%r102; and.b16 %r85,%r86,%r87; cvt.u32.u16 %r88,%r85; .loc 1 76 26 cvt.u16.u8 %r89,%r88; setp.eq.u16 %r90,%r89,0; @ %r90 bra $L11; $L10: .loc 1 77 28 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r92,[%value_in]; } .loc 1 77 10 mul.f64 %r94,%r92,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r94; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r95,[%value_in]; } .loc 1 78 8 mul.f64 %r96,%r38,%r95; .loc 1 79 14 mul.f64 %r48,%r96,%r95; bra $L1; $L11: .loc 1 83 10 mul.f64 %r48,%r49,0d7fac7b1f3cac7433; bra $L1; $L14: .loc 1 65 26 mov.f64 %r48,%r49; bra $L1; $L15: .loc 1 66 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r99,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r99; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r101,[%value_in]; } mov.f64 %r45,%r101; bra $L12; $L1: .loc 1 84 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_sqrt.o/ 0 0 0 644 7018 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .visible .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_sqrt.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_sqrt .visible .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r28; .reg .u32 %r32; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r45; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r70; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r78; .reg .u32 %r80; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r86; .reg .u32 %r88; .reg .f64 %r92; .reg .f64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .pred %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .pred %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r127; .reg .pred %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u16 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .pred %r141; .reg .pred %r142; .reg .pred %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .pred %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u64 %r157; .reg .u64 %r161; .reg .u64 %r162; .reg .u64 %r163; .reg .pred %r165; .reg .u16 %r166; mov.f64 %r93,%ar0; .loc 1 106 2 mov.b64 %r94,%r93; shr.u64 %r95,%r94,32; cvt.u32.u64 %r59,%r95; cvt.u32.u64 %r45,%r94; .loc 1 109 9 and.b32 %r99,%r59,2146435072; .loc 1 109 4 setp.ne.u32 %r100,%r99,2146435072; @ %r100 bra $L2; .loc 1 110 16 fma.rn.f64 %r92,%r93,%r93,%r93; bra $L1; $L2: .loc 1 114 4 setp.gt.s32 %r101,%r59,0; @ %r101 bra $L4; .loc 1 115 14 and.b32 %r102,%r59,2147483647; .loc 1 115 23 or.b32 %r103,%r102,%r45; .loc 1 115 8 setp.eq.u32 %r104,%r103,0; @ %r104 bra $L24; .loc 1 116 13 setp.eq.u32 %r105,%r59,0; @ %r105 bra $L25; .loc 1 117 12 sub.f64 %r28,%r93,%r93; .loc 1 117 15 div.rn.f64 %r92,%r28,%r28; bra $L1; $L4: .loc 1 120 4 shr.s32 %r40,%r59,20; .loc 1 121 4 setp.eq.u32 %r106,%r40,0; @ ! %r106 bra $L7; bra $L6; $L25: mov.u32 %r40,%r59; $L5: .loc 1 123 5 add.u32 %r40,%r40,-21; .loc 1 124 14 shr.u32 %r59,%r45,11; .loc 1 124 25 shl.b32 %r45,%r45,21; .loc 1 122 15 setp.eq.u32 %r107,%r59,0; @ %r107 bra $L5; .loc 1 126 18 and.b32 %r108,%r59,1048576; .loc 1 126 30 setp.ne.u32 %r109,%r108,0; @ %r109 bra $L26; $L6: mov.u32 %r70,0; $L9: .loc 1 126 42 add.u32 %r59,%r59,%r59; mov.u32 %r23,%r70; .loc 1 126 35 add.u32 %r70,%r23,1; .loc 1 126 18 and.b32 %r111,%r59,1048576; .loc 1 126 30 setp.eq.u32 %r112,%r111,0; @ %r112 bra $L9; .loc 1 128 22 mov.u32 %r113,32; sub.u32 %r86,%r113,%r70; .loc 1 129 10 mov.u32 %r84,%r45; shl.b32 %r45,%r45,%r70; bra $L8; $L26: .loc 1 124 25 mov.u32 %r84,%r45; .loc 1 126 30 mov.u32 %r86,32; mov.u32 %r23,-1; $L8: .loc 1 127 8 sub.u32 %r40,%r40,%r23; .loc 1 128 17 shr.u32 %r114,%r84,%r86; .loc 1 128 10 or.b32 %r59,%r59,%r114; $L7: .loc 1 131 4 add.u32 %r72,%r40,-1023; .loc 1 132 12 and.b32 %r32,%r59,1048575; .loc 1 132 6 or.b32 %r88,%r32,1048576; .loc 1 133 6 and.b32 %r115,%r72,1; .loc 1 133 4 setp.eq.u32 %r116,%r115,0; @ %r116 bra $L10; .loc 1 134 10 add.u32 %r117,%r88,%r88; shr.u32 %r118,%r45,31; add.u32 %r88,%r117,%r118; .loc 1 135 10 add.u32 %r45,%r45,%r45; $L10: .loc 1 137 4 shr.s32 %r74,%r72,1; .loc 1 140 6 add.u32 %r120,%r88,%r88; shr.u32 %r121,%r45,31; add.u32 %r63,%r120,%r121; .loc 1 141 6 add.u32 %r60,%r45,%r45; mov.u32 %r58,22; .loc 1 142 4 mov.u32 %r66,0; .loc 1 142 14 mov.u32 %r64,%r66; .loc 1 143 4 mov.u32 %r82,2097152; $L12: .loc 1 146 12 add.u32 %r39,%r64,%r82; .loc 1 147 8 setp.gt.s32 %r123,%r39,%r63; @ %r123 bra $L11; .loc 1 148 11 add.u32 %r64,%r39,%r82; .loc 1 149 7 sub.u32 %r63,%r63,%r39; .loc 1 150 7 add.u32 %r66,%r66,%r82; $L11: .loc 1 152 10 add.u32 %r124,%r63,%r63; shr.u32 %r125,%r60,31; add.u32 %r63,%r124,%r125; .loc 1 153 10 add.u32 %r60,%r60,%r60; .loc 1 154 7 shr.u32 %r82,%r82,1; .loc 1 145 9 add.u32 %r58,%r58,-1; setp.ne.u32 %r127,%r58,0; @ %r127 bra $L12; .loc 1 142 9 mov.u32 %r62,%r58; mov.u32 %r61,32; .loc 1 157 4 mov.u32 %r80,-2147483648; $L18: .loc 1 159 9 add.u32 %r78,%r80,%r58; .loc 1 161 8 setp.gt.s32 %r128,%r63,%r64; @ %r128 bra $L13; .loc 1 161 21 set.u32.eq.u32 %r130,%r63,%r64; neg.s32 %r131,%r130; mov.u32 %r129,%r131; .loc 1 161 32 set.u32.le.u32 %r133,%r78,%r60; neg.s32 %r134,%r133; mov.u32 %r132,%r134; .loc 1 161 27 cvt.u16.u8 %r166,%r129; mov.u16 %r136,%r166; cvt.u16.u8 %r166,%r132; mov.u16 %r137,%r166; and.b16 %r135,%r136,%r137; cvt.u32.u16 %r138,%r135; .loc 1 161 16 cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ %r140 bra $L14; bra $L15; $L13: .loc 1 162 7 add.u32 %r58,%r78,%r80; .loc 1 163 5 setp.ge.s32 %r141,%r78,0; @ %r141 bra $L27; $L23: .loc 1 163 23 setp.lt.s32 %r142,%r58,0; @ %r142 bra $L28; .loc 1 163 42 add.u32 %r65,%r64,1; bra $L16; $L27: mov.u32 %r65,%r64; bra $L16; $L28: mov.u32 %r65,%r64; $L16: .loc 1 164 7 sub.u32 %r63,%r63,%r64; .loc 1 165 6 setp.le.u32 %r143,%r78,%r60; @ %r143 bra $L17; .loc 1 165 21 add.u32 %r63,%r63,-1; $L17: .loc 1 166 7 sub.u32 %r60,%r60,%r78; .loc 1 167 7 add.u32 %r62,%r62,%r80; mov.u32 %r64,%r65; $L15: .loc 1 169 10 shr.u32 %r144,%r60,31; add.u32 %r145,%r63,%r63; add.u32 %r63,%r144,%r145; .loc 1 170 10 add.u32 %r60,%r60,%r60; .loc 1 171 7 shr.u32 %r80,%r80,1; .loc 1 158 9 add.u32 %r61,%r61,-1; setp.ne.u32 %r147,%r61,0; @ %r147 bra $L18; .loc 1 175 9 or.b32 %r148,%r63,%r60; .loc 1 175 4 setp.ne.u32 %r149,%r148,0; @ %r149 bra $L19; .loc 1 188 6 shr.u32 %r61,%r62,1; bra $L20; $L19: .loc 1 179 13 setp.ne.u32 %r150,%r62,-1; @ %r150 bra $L21; .loc 1 179 52 add.u32 %r66,%r66,1; bra $L20; $L21: .loc 1 184 17 add.u32 %r151,%r62,1; shr.u32 %r61,%r151,1; $L20: .loc 1 187 10 shr.s32 %r152,%r66,1; .loc 1 187 6 add.u32 %r76,%r152,1071644672; .loc 1 189 8 and.b32 %r153,%r66,1; .loc 1 189 5 setp.eq.u32 %r154,%r153,0; @ %r154 bra $L22; .loc 1 189 20 or.b32 %r61,%r61,-2147483648; $L22: .loc 1 190 12 shl.b32 %r155,%r74,20; .loc 1 190 6 add.u32 %r156,%r155,%r76; .loc 1 191 2 cvt.u64.u32 %r157,%r156; cvt.u64.u32 %r161,%r61; shl.b64 %r162,%r157,32; or.b64 %r163,%r162,%r161; mov.b64 %r92,%r163; .loc 1 192 9 bra $L1; $L24: .loc 1 115 40 mov.f64 %r92,%r93; bra $L1; $L14: .loc 1 162 7 add.u32 %r58,%r78,%r80; .loc 1 163 5 setp.lt.s32 %r165,%r78,0; @ %r165 bra $L23; mov.u32 %r65,%r64; .loc 1 164 7 mov.u32 %r63,0; bra $L17; $L1: .loc 1 193 1 mov.f64 %value,%r92; st.param.f64 [%value_out],%value; ret; } /125 0 0 0 644 1939 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgamma .visible .func (.param .f64 %value_out) __ieee754_tgamma (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/e_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .extern .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: __ieee754_tgamma .visible .func (.param .f64 %value_out) __ieee754_tgamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r28; .reg .f64 %r30; .reg .u32 %r31; .reg .pred %r32; mov.f64 %r25,%ar0; .loc 1 31 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r30,[%value_in]; } mov.f64 %r24,%r30; .loc 1 32 5 ld.u32 %r31,[%frame]; setp.ge.s32 %r32,%r31,0; @ %r32 bra $L1; .loc 1 33 5 neg.f64 %r24,%r24; $L1: .loc 1 35 1 mov.f64 %value,%r24; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-ef_acos.o/0 0 0 644 5289 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosf .visible .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acosf .visible .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .f32 %r59; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .pred %r92; .reg .f32 %r93; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; mov.f32 %r82,%ar0; .loc 1 47 2 mov.b32 %r57,%r82; .loc 1 48 5 and.b32 %r58,%r57,2147483647; .loc 1 49 4 setp.ne.u32 %r83,%r58,1065353216; @ %r83 bra $L2; .loc 1 50 8 setp.gt.s32 %r84,%r57,0; .loc 1 51 20 selp.f32 %r81,0f00000000,0f40490fdb,%r84; bra $L1; $L2: .loc 1 52 11 setp.le.s32 %r85,%r58,1065353216; @ %r85 bra $L4; .loc 1 53 15 sub.f32 %r22,%r82,%r82; .loc 1 53 18 div.rn.f32 %r81,%r22,%r22; bra $L1; $L4: .loc 1 55 4 setp.gt.s32 %r86,%r58,1056964607; @ %r86 bra $L5; .loc 1 56 8 setp.le.s32 %r87,%r58,587202560; @ %r87 bra $L8; .loc 1 57 8 mul.f32 %r74,%r82,%r82; .loc 1 58 44 fma.rn.f32 %r23,%r74,0f3811ef08,0f3a4f7f04; .loc 1 58 37 fma.rn.f32 %r24,%r23,%r74,0fbd241146; .loc 1 58 30 fma.rn.f32 %r25,%r24,%r74,0f3e4e0aa8; .loc 1 58 23 fma.rn.f32 %r26,%r25,%r74,0fbea6b090; .loc 1 58 16 fma.rn.f32 %r27,%r26,%r74,0f3e2aaaab; .loc 1 58 8 mul.f32 %r75,%r27,%r74; .loc 1 59 34 fma.rn.f32 %r28,%r74,0f3d9dc62e,0fbf303361; .loc 1 59 27 fma.rn.f32 %r29,%r28,%r74,0f4001572d; .loc 1 59 20 fma.rn.f32 %r30,%r29,%r74,0fc019d139; .loc 1 59 8 fma.rn.f32 %r76,%r30,%r74,0f3f800000; .loc 1 61 36 neg.f32 %r88,%r82; .loc 1 60 8 div.rn.f32 %r89,%r75,%r76; .loc 1 61 36 fma.rn.f32 %r31,%r88,%r89,0f33a22168; .loc 1 61 26 sub.f32 %r90,%r82,%r31; .loc 1 61 21 mov.f32 %r91,0f3fc90fda; sub.f32 %r81,%r91,%r90; bra $L1; $L5: .loc 1 62 13 setp.ge.s32 %r92,%r57,0; @ %r92 bra $L6; .loc 1 63 14 add.f32 %r93,%r82,0f3f800000; .loc 1 63 8 mul.f32 %r68,%r93,0f3f000000; .loc 1 64 44 fma.rn.f32 %r34,%r68,0f3811ef08,0f3a4f7f04; .loc 1 64 37 fma.rn.f32 %r35,%r34,%r68,0fbd241146; .loc 1 64 30 fma.rn.f32 %r36,%r35,%r68,0f3e4e0aa8; .loc 1 64 23 fma.rn.f32 %r37,%r36,%r68,0fbea6b090; .loc 1 64 16 fma.rn.f32 %r38,%r37,%r68,0f3e2aaaab; .loc 1 64 8 mul.f32 %r69,%r38,%r68; .loc 1 65 34 fma.rn.f32 %r39,%r68,0f3d9dc62e,0fbf303361; .loc 1 65 27 fma.rn.f32 %r40,%r39,%r68,0f4001572d; .loc 1 65 20 fma.rn.f32 %r41,%r40,%r68,0fc019d139; .loc 1 65 8 fma.rn.f32 %r70,%r41,%r68,0f3f800000; .loc 1 66 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r95,[%value_in]; } .loc 1 67 8 div.rn.f32 %r96,%r69,%r70; .loc 1 68 8 fma.rn.f32 %r73,%r95,%r96,0fb3a22168; .loc 1 69 31 add.f32 %r97,%r95,%r73; .loc 1 69 16 fma.rn.f32 %r81,%r97,0fc0000000,0f40490fda; bra $L1; $L6: .loc 1 72 14 mov.f32 %r100,0f3f800000; sub.f32 %r99,%r100,%r82; .loc 1 72 8 mul.f32 %r59,%r99,0f3f000000; .loc 1 73 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r102,[%value_in]; } .loc 1 76 6 mov.b32 %r104,%r102; and.b32 %r103,%r104,-4096; mov.b32 %r62,%r103; .loc 1 77 13 neg.f32 %r105,%r62; fma.rn.f32 %r46,%r105,%r62,%r59; .loc 1 77 23 add.f32 %r106,%r102,%r62; .loc 1 77 9 div.rn.f32 %r63,%r46,%r106; .loc 1 78 44 fma.rn.f32 %r48,%r59,0f3811ef08,0f3a4f7f04; .loc 1 78 37 fma.rn.f32 %r49,%r48,%r59,0fbd241146; .loc 1 78 30 fma.rn.f32 %r50,%r49,%r59,0f3e4e0aa8; .loc 1 78 23 fma.rn.f32 %r51,%r50,%r59,0fbea6b090; .loc 1 78 16 fma.rn.f32 %r52,%r51,%r59,0f3e2aaaab; .loc 1 78 8 mul.f32 %r64,%r52,%r59; .loc 1 79 34 fma.rn.f32 %r53,%r59,0f3d9dc62e,0fbf303361; .loc 1 79 27 fma.rn.f32 %r54,%r53,%r59,0f4001572d; .loc 1 79 20 fma.rn.f32 %r55,%r54,%r59,0fc019d139; .loc 1 79 8 fma.rn.f32 %r65,%r55,%r59,0f3f800000; .loc 1 80 8 div.rn.f32 %r107,%r64,%r65; .loc 1 81 8 fma.rn.f32 %r67,%r102,%r107,%r63; .loc 1 82 27 add.f32 %r108,%r62,%r67; .loc 1 82 23 add.f32 %r81,%r108,%r108; bra $L1; $L8: .loc 1 56 39 mov.f32 %r81,0f3fc90fdb; $L1: .loc 1 84 1 mov.f32 %value,%r81; st.param.f32 [%value_out],%value; ret; } /143 0 0 0 644 3113 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_acoshf .visible .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1pf .extern .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_acoshf .visible .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r24; .reg .f32 %r28; .reg .f32 %r30; .reg .u32 %r33; .reg .f32 %r34; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r51; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r60; mov.f32 %r38,%ar0; .loc 1 36 2 mov.b32 %r33,%r38; .loc 1 37 4 setp.gt.s32 %r39,%r33,1065353215; @ %r39 bra $L2; .loc 1 38 15 sub.f32 %r22,%r38,%r38; .loc 1 38 18 div.rn.f32 %r37,%r22,%r22; bra $L1; $L2: .loc 1 39 11 setp.le.s32 %r40,%r33,1300234239; @ %r40 bra $L4; .loc 1 40 8 setp.le.s32 %r41,%r33,2139095039; @ %r41 bra $L5; .loc 1 41 18 add.f32 %r37,%r38,%r38; bra $L1; $L5: .loc 1 43 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r43,[%value_in]; } .loc 1 43 27 add.f32 %r37,%r43,0f3f317218; bra $L1; $L4: .loc 1 44 12 setp.eq.u32 %r44,%r33,1065353216; @ %r44 bra $L7; .loc 1 46 12 setp.le.s32 %r45,%r33,1073741824; @ %r45 bra $L6; .loc 1 48 48 fma.rn.f32 %r24,%r38,%r38,0fbf800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 48 47 add.f32 %r48,%r47,%r38; .loc 1 48 44 rcp.rn.f32 %r49,%r48; .loc 1 48 13 neg.f32 %r51,%r49; fma.rn.f32 %r28,%r38,0f40000000,%r51; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } mov.f32 %r37,%r53; bra $L1; $L6: .loc 1 50 8 mov.f32 %r54,0f3f800000; sub.f32 %r34,%r38,%r54; .loc 1 51 52 mul.f32 %r55,%r34,%r34; .loc 1 51 22 fma.rn.f32 %r30,%r34,0f40000000,%r55; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r57,[%value_in]; } .loc 1 51 13 add.f32 %r59,%r57,%r34; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r60,[%value_in]; } mov.f32 %r37,%r60; bra $L1; $L7: .loc 1 45 13 mov.f32 %r37,0f00000000; $L1: .loc 1 53 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-ef_asin.o/0 0 0 644 4953 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_asinf .visible .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_asin.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_asinf .visible .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r73; .reg .f32 %r74; .reg .pred %r75; .reg .f32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .f32 %r80; .reg .pred %r81; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r101; .reg .f32 %r102; .reg .pred %r103; mov.f32 %r74,%ar0; .loc 1 49 2 mov.b32 %r50,%r74; .loc 1 50 5 and.b32 %r51,%r50,2147483647; .loc 1 51 4 setp.ne.u32 %r75,%r51,1065353216; @ %r75 bra $L2; .loc 1 53 24 mul.f32 %r76,%r74,0fb33bbd2e; .loc 1 53 22 fma.rn.f32 %r73,%r74,0f3fc90fdb,%r76; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r77,%r51,1065353216; @ %r77 bra $L4; .loc 1 55 15 sub.f32 %r23,%r74,%r74; .loc 1 55 18 div.rn.f32 %r73,%r23,%r23; bra $L1; $L4: .loc 1 56 12 setp.gt.s32 %r78,%r51,1056964607; @ %r78 bra $L5; .loc 1 57 8 setp.gt.s32 %r79,%r51,838860799; @ %r79 bra $L6; .loc 1 58 10 add.f32 %r80,%r74,0f7149f2ca; .loc 1 58 5 setp.gt.f32 %r81,%r80,0f3f800000; @ ! %r81 bra $L5; bra $L9; $L6: .loc 1 60 5 mul.f32 %r52,%r74,%r74; .loc 1 61 41 fma.rn.f32 %r25,%r52,0f3811ef08,0f3a4f7f04; .loc 1 61 34 fma.rn.f32 %r26,%r25,%r52,0fbd241146; .loc 1 61 27 fma.rn.f32 %r27,%r26,%r52,0f3e4e0aa8; .loc 1 61 20 fma.rn.f32 %r28,%r27,%r52,0fbea6b090; .loc 1 61 13 fma.rn.f32 %r29,%r28,%r52,0f3e2aaaab; .loc 1 61 5 mul.f32 %r53,%r29,%r52; .loc 1 62 31 fma.rn.f32 %r30,%r52,0f3d9dc62e,0fbf303361; .loc 1 62 24 fma.rn.f32 %r31,%r30,%r52,0f4001572d; .loc 1 62 17 fma.rn.f32 %r32,%r31,%r52,0fc019d139; .loc 1 62 5 fma.rn.f32 %r54,%r32,%r52,0f3f800000; .loc 1 63 5 div.rn.f32 %r82,%r53,%r54; .loc 1 64 11 fma.rn.f32 %r73,%r74,%r82,%r74; bra $L1; $L5: .loc 1 68 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 68 4 mov.f32 %r86,0f3f800000; sub.f32 %r85,%r86,%r84; .loc 1 69 4 mul.f32 %r58,%r85,0f3f000000; .loc 1 70 40 fma.rn.f32 %r34,%r58,0f3811ef08,0f3a4f7f04; .loc 1 70 33 fma.rn.f32 %r35,%r34,%r58,0fbd241146; .loc 1 70 26 fma.rn.f32 %r36,%r35,%r58,0f3e4e0aa8; .loc 1 70 19 fma.rn.f32 %r37,%r36,%r58,0fbea6b090; .loc 1 70 12 fma.rn.f32 %r38,%r37,%r58,0f3e2aaaab; .loc 1 70 4 mul.f32 %r59,%r38,%r58; .loc 1 71 30 fma.rn.f32 %r39,%r58,0f3d9dc62e,0fbf303361; .loc 1 71 23 fma.rn.f32 %r40,%r39,%r58,0f4001572d; .loc 1 71 16 fma.rn.f32 %r41,%r40,%r58,0fc019d139; .loc 1 71 4 fma.rn.f32 %r60,%r41,%r58,0f3f800000; .loc 1 72 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } .loc 1 73 4 setp.le.s32 %r89,%r51,1064933785; @ %r89 bra $L7; .loc 1 74 8 div.rn.f32 %r90,%r59,%r60; .loc 1 75 32 fma.rn.f32 %r42,%r88,%r90,%r88; .loc 1 75 37 fma.rn.f32 %r43,%r42,0f40000000,0f333bbd2e; .loc 1 75 8 mov.f32 %r91,0f3fc90fdb; sub.f32 %r73,%r91,%r43; bra $L8; $L7: .loc 1 80 6 mov.b32 %r93,%r88; and.b32 %r92,%r93,-4096; mov.b32 %r63,%r92; .loc 1 81 13 neg.f32 %r94,%r63; fma.rn.f32 %r45,%r94,%r63,%r58; .loc 1 82 9 div.rn.f32 %r65,%r59,%r60; .loc 1 81 21 add.f32 %r95,%r88,%r63; .loc 1 81 9 div.rn.f32 %r96,%r45,%r95; .loc 1 83 34 fma.rn.f32 %r48,%r96,0fc0000000,0fb33bbd2e; .loc 1 83 21 add.f32 %r98,%r88,%r88; .loc 1 83 9 neg.f32 %r99,%r48; fma.rn.f32 %r66,%r98,%r65,%r99; .loc 1 84 9 fma.rn.f32 %r67,%r94,0f40000000,0f3f490fdb; .loc 1 85 21 sub.f32 %r101,%r66,%r67; .loc 1 85 9 mov.f32 %r102,0f3f490fdb; sub.f32 %r73,%r102,%r101; $L8: .loc 1 87 4 setp.gt.s32 %r103,%r50,0; @ %r103 bra $L1; .loc 1 87 33 neg.f32 %r73,%r73; bra $L1; $L9: .loc 1 58 25 mov.f32 %r73,%r74; $L1: .loc 1 88 1 mov.f32 %value,%r73; st.param.f32 [%value_out],%value; ret; } /161 0 0 0 644 5860 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2f .visible .func (.param .f32 %value_out) __ieee754_atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_atan2.c" // BEGIN GLOBAL FUNCTION DECL: atanf .extern .func (.param .f32 %value_out) atanf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN VAR DEF: CSWTCH$8 .const .align 4 .u32 CSWTCH$8[3] = {3209236443,1075235812,3222719460 }; // BEGIN VAR DEF: CSWTCH$9 .const .align 4 .u32 CSWTCH$9[3] = {2147483648,1078530011,3226013659 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_atan2f .visible .func (.param .f32 %value_out) __ieee754_atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r36; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u32 %r47; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u32 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .pred %r64; .reg .f32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .pred %r102; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .u32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .u16 %r117; mov.f32 %r50,%ar0; mov.f32 %r51,%ar1; .loc 1 41 2 mov.b32 %r39,%r51; .loc 1 42 5 and.b32 %r40,%r39,2147483647; .loc 1 43 2 mov.b32 %r44,%r50; .loc 1 44 5 and.b32 %r42,%r44,2147483647; .loc 1 45 5 set.u32.gt.s32 %r53,%r40,2139095040; neg.s32 %r54,%r53; mov.u32 %r52,%r54; .loc 1 46 5 set.u32.gt.s32 %r56,%r42,2139095040; neg.s32 %r57,%r56; mov.u32 %r55,%r57; .loc 1 45 25 cvt.u16.u8 %r117,%r52; mov.u16 %r59,%r117; cvt.u16.u8 %r117,%r55; mov.u16 %r60,%r117; or.b16 %r58,%r59,%r60; cvt.u32.u16 %r61,%r58; .loc 1 45 4 cvt.u16.u8 %r62,%r61; setp.eq.u16 %r63,%r62,0; @ %r63 bra $L2; .loc 1 47 13 add.f32 %r49,%r51,%r50; bra $L1; $L2: .loc 1 48 4 setp.ne.u32 %r64,%r39,1065353216; @ %r64 bra $L4; .loc 1 48 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } mov.f32 %r49,%r66; bra $L1; $L4: .loc 1 49 23 shr.s32 %r67,%r39,30; .loc 1 49 28 and.b32 %r68,%r67,2; .loc 1 49 15 shr.u32 %r69,%r44,31; .loc 1 49 4 or.b32 %r43,%r68,%r69; .loc 1 52 4 setp.ne.u32 %r70,%r42,0; @ %r70 bra $L5; .loc 1 53 6 setp.eq.u32 %r71,%r43,2; @ %r71 bra $L14; setp.ne.u32 %r72,%r43,3; .loc 1 57 21 selp.f32 %r49,%r50,0fc0490fdb,%r72; bra $L1; $L5: .loc 1 61 4 setp.ne.u32 %r73,%r40,0; @ %r73 bra $L6; .loc 1 61 56 setp.ge.s32 %r74,%r44,0; selp.f32 %r49,0f3fc90fdb,0fbfc90fdb,%r74; bra $L1; $L6: .loc 1 64 4 setp.ne.u32 %r75,%r40,2139095040; @ %r75 bra $L7; add.u32 %r47,%r43,-1; .loc 1 65 8 setp.ne.u32 %r76,%r42,2139095040; @ %r76 bra $L8; setp.gt.u32 %r77,%r47,2; @ %r77 bra $L17; cvta.const.u64 %r78,CSWTCH$8; cvt.u64.u32 %r79,%r47; shl.b64 %r80,%r79,2; add.u64 %r81,%r78,%r80; ld.f32 %r49,[%r81]; bra $L1; $L8: setp.gt.u32 %r82,%r47,2; @ %r82 bra $L18; cvta.const.u64 %r83,CSWTCH$9; cvt.u64.u32 %r84,%r47; shl.b64 %r85,%r84,2; add.u64 %r86,%r83,%r85; ld.f32 %r49,[%r86]; bra $L1; $L7: .loc 1 82 4 setp.ne.u32 %r87,%r42,2139095040; @ %r87 bra $L9; .loc 1 82 59 setp.ge.s32 %r88,%r44,0; .loc 1 61 56 selp.f32 %r49,0f3fc90fdb,0fbfc90fdb,%r88; bra $L1; $L9: .loc 1 85 9 sub.u32 %r89,%r42,%r40; .loc 1 85 4 shr.s32 %r46,%r89,23; .loc 1 86 4 setp.gt.s32 %r90,%r89,511705087; @ %r90 bra $L20; .loc 1 87 12 shr.u32 %r92,%r39,31; mov.u32 %r93,%r92; .loc 1 87 17 set.u32.lt.s32 %r95,%r46,-60; neg.s32 %r96,%r95; mov.u32 %r94,%r96; .loc 1 87 14 cvt.u16.u8 %r117,%r93; mov.u16 %r98,%r117; cvt.u16.u8 %r117,%r94; mov.u16 %r99,%r117; and.b16 %r97,%r98,%r99; cvt.u32.u16 %r100,%r97; .loc 1 87 9 cvt.u16.u8 %r101,%r100; setp.ne.u16 %r102,%r101,0; @ %r102 bra $L21; .loc 1 88 9 div.rn.f32 %r104,%r50,%r51; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r105,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r105; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r107,[%value_in]; } mov.f32 %r49,%r107; bra $L10; $L20: .loc 1 86 14 mov.f32 %r49,0f3fc90fdb; bra $L10; $L21: .loc 1 87 24 mov.f32 %r49,0f00000000; $L10: .loc 1 89 2 setp.eq.u32 %r108,%r43,1; @ %r108 bra $L11; setp.eq.u32 %r109,%r43,2; @ %r109 bra $L12; setp.eq.u32 %r110,%r43,0; @ ! %r110 bra $L25; bra $L1; $L11: .loc 1 94 9 mov.b32 %r111,%r49; add.u32 %r36,%r111,-2147483648; mov.b32 %r49,%r36; .loc 1 96 20 bra $L1; $L12: .loc 1 97 27 add.f32 %r112,%r49,0f33bbbd2e; .loc 1 97 24 mov.f32 %r113,0f40490fdb; sub.f32 %r49,%r113,%r112; bra $L1; $L25: .loc 1 99 21 add.f32 %r114,%r49,0f33bbbd2e; .loc 1 99 28 mov.f32 %r115,0f40490fdb; sub.f32 %r49,%r114,%r115; bra $L1; $L14: .loc 1 53 6 mov.f32 %r49,0f40490fdb; bra $L1; $L17: .loc 1 65 8 mov.f32 %r49,0f3f490fdb; bra $L1; $L18: mov.f32 %r49,0f00000000; $L1: .loc 1 101 1 mov.f32 %value,%r49; st.param.f32 [%value_out],%value; ret; } /179 0 0 0 644 2606 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanhf .visible .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_atanh.c" // BEGIN GLOBAL FUNCTION DECL: log1pf .extern .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_atanhf .visible .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r24; .reg .u32 %r32; .reg .u32 %r33; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r45; .reg .pred %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r55; .reg .f32 %r56; .reg .pred %r57; .reg .f32 %r59; mov.f32 %r39,%ar0; .loc 1 40 2 mov.b32 %r32,%r39; .loc 1 41 5 and.b32 %r33,%r32,2147483647; .loc 1 42 5 setp.le.s32 %r40,%r33,1065353216; @ %r40 bra $L2; .loc 1 43 15 sub.f32 %r22,%r39,%r39; .loc 1 43 18 div.rn.f32 %r38,%r22,%r22; bra $L1; $L2: .loc 1 44 4 setp.ne.u32 %r41,%r33,1065353216; @ %r41 bra $L4; .loc 1 45 14 div.rn.f32 %r38,%r39,0f00000000; bra $L1; $L4: .loc 1 46 4 setp.gt.s32 %r42,%r33,830472191; @ %r42 bra $L5; .loc 1 46 25 add.f32 %r43,%r39,0f7149f2ca; .loc 1 46 18 setp.gt.f32 %r44,%r43,0f00000000; @ ! %r44 bra $L11; bra $L10; $L5: .loc 1 47 2 mov.b32 %r24,%r33; .loc 1 52 30 add.f32 %r59,%r24,%r24; .loc 1 52 38 mov.f32 %r45,0f3f800000; sub.f32 %r37,%r45,%r24; .loc 1 48 4 setp.gt.s32 %r46,%r33,1056964607; @ %r46 bra $L7; $L9: .loc 1 50 31 mul.f32 %r48,%r59,%r24; .loc 1 50 38 mov.f32 %r50,0f3f800000; sub.f32 %r49,%r50,%r24; .loc 1 50 33 div.rn.f32 %r51,%r48,%r49; .loc 1 50 21 add.f32 %r52,%r51,%r59; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r52; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } .loc 1 50 8 mul.f32 %r38,%r53,0f3f000000; bra $L8; $L7: .loc 1 52 21 div.rn.f32 %r55,%r59,%r37; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r55; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } .loc 1 52 8 mul.f32 %r38,%r56,0f3f000000; $L8: .loc 1 53 4 setp.ge.s32 %r57,%r32,0; @ %r57 bra $L1; .loc 1 53 34 neg.f32 %r38,%r38; bra $L1; $L10: .loc 1 46 42 mov.f32 %r38,%r39; bra $L1; $L11: .loc 1 47 2 mov.b32 %r24,%r33; add.f32 %r59,%r24,%r24; bra $L9; $L1: .loc 1 54 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-ef_cosh.o/0 0 0 644 3937 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_coshf .visible .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_cosh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1f .extern .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_coshf .visible .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r32; .reg .u32 %r33; .reg .f32 %r39; .reg .f32 %r40; .reg .pred %r41; .reg .pred %r42; .reg .f32 %r44; .reg .f32 %r46; .reg .pred %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .pred %r51; .reg .f32 %r53; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .pred %r58; .reg .f32 %r60; .reg .f32 %r62; .reg .pred %r63; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .u32 %r70; .reg .f32 %r71; mov.f32 %r40,%ar0; .loc 1 39 2 mov.b32 %r32,%r40; .loc 1 40 5 and.b32 %r33,%r32,2147483647; .loc 1 43 4 setp.le.s32 %r41,%r33,2139095039; @ %r41 bra $L2; .loc 1 43 39 mul.f32 %r39,%r40,%r40; bra $L1; $L2: .loc 1 46 4 setp.gt.s32 %r42,%r33,1051816471; @ %r42 bra $L4; .loc 1 47 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r44; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 48 8 add.f32 %r39,%r46,0f3f800000; .loc 1 49 9 setp.le.s32 %r47,%r33,603979775; @ %r47 bra $L1; .loc 1 50 19 mul.f32 %r48,%r46,%r46; .loc 1 50 25 add.f32 %r49,%r39,%r39; .loc 1 50 22 div.rn.f32 %r50,%r48,%r49; .loc 1 50 16 add.f32 %r39,%r50,0f3f800000; bra $L1; $L4: .loc 1 54 5 setp.gt.s32 %r51,%r33,1102053375; @ %r51 bra $L5; .loc 1 55 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r53; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r55,[%value_in]; } .loc 1 56 21 mov.f32 %r57,0f3f000000; div.rn.f32 %r56,%r57,%r55; .loc 1 56 16 fma.rn.f32 %r39,%r55,0f3f000000,%r56; bra $L1; $L5: .loc 1 60 5 setp.gt.s32 %r58,%r33,1118925335; @ %r58 bra $L6; .loc 1 61 16 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r60,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 61 15 mul.f32 %r39,%r62,0f3f000000; bra $L1; $L6: .loc 1 64 5 setp.gt.s32 %r63,%r33,1119016188; @ %r63 bra $L7; .loc 1 65 30 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r65,[%value_in]; } .loc 1 65 10 mul.f32 %r67,%r65,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 66 8 mul.f32 %r69,%r68,0f3f000000; .loc 1 67 14 mul.f32 %r39,%r69,%r68; bra $L1; $L7: .loc 1 71 9 mov.u32 %r70,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r70; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } mov.f32 %r39,%r71; $L1: .loc 1 72 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-ef_exp.o/ 0 0 0 644 6345 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .visible .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_exp.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflowf .extern .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0); // BEGIN VAR DEF: ln2LO .const .align 4 .u32 ln2LO[2] = {924317649,3071801297 }; // BEGIN VAR DEF: halF .const .align 4 .u32 halF[2] = {1056964608,3204448256 }; // BEGIN VAR DEF: ln2HI .const .align 4 .u32 ln2HI[2] = {1060204928,3207688576 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_expf .visible .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f32 %r29; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r50; .reg .f32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .u32 %r70; .reg .f32 %r72; .reg .f32 %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .f32 %r79; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u32 %r89; .reg .u16 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .f32 %r93; .reg .pred %r94; .reg .pred %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .f32 %r100; .reg .u64 %r101; .reg .u64 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .f32 %r111; .reg .f32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .f32 %r116; .reg .pred %r117; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .f32 %r137; .reg .f32 %r139; .reg .f32 %r140; .reg .u16 %r141; mov.f32 %r73,%ar0; .loc 1 55 2 mov.b32 %r53,%r73; .loc 1 57 5 and.b32 %r56,%r53,2147483647; .loc 1 60 11 setp.le.u32 %r74,%r56,2139095040; @ %r74 bra $L2; .loc 1 61 21 add.f32 %r72,%r73,%r73; bra $L1; $L2: .loc 1 56 16 shr.u32 %r22,%r53,31; .loc 1 62 11 setp.ne.u32 %r75,%r56,2139095040; @ %r75 bra $L4; .loc 1 63 24 setp.eq.u32 %r76,%r22,0; selp.f32 %r72,%r73,0f00000000,%r76; bra $L1; $L4: .loc 1 64 4 setp.le.s32 %r77,%r53,1118925335; @ %r77 bra $L5; .loc 1 65 13 mov.u32 %r78,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r78; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r79,[%value_in]; } mov.f32 %r72,%r79; bra $L1; $L5: .loc 1 66 8 mov.u32 %r82,%r22; .loc 1 66 18 set.u32.gt.u32 %r84,%r56,1120924085; neg.s32 %r85,%r84; mov.u32 %r83,%r85; .loc 1 66 12 cvt.u16.u8 %r141,%r82; mov.u16 %r87,%r141; cvt.u16.u8 %r141,%r83; mov.u16 %r88,%r141; and.b16 %r86,%r87,%r88; cvt.u32.u16 %r89,%r86; .loc 1 66 4 cvt.u16.u8 %r90,%r89; setp.eq.u16 %r91,%r90,0; @ %r91 bra $L6; .loc 1 67 13 mov.u32 %r92,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r92; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } mov.f32 %r72,%r93; bra $L1; $L6: .loc 1 70 4 setp.le.u32 %r94,%r56,1051816472; @ %r94 bra $L7; .loc 1 71 8 setp.gt.u32 %r95,%r56,1065686417; @ %r95 bra $L8; .loc 1 72 15 cvta.const.u64 %r96,ln2HI; cvt.s64.s32 %r97,%r22; shl.b64 %r98,%r97,2; add.u64 %r99,%r96,%r98; .loc 1 72 6 ld.f32 %r100,[%r99]; sub.f32 %r50,%r73,%r100; .loc 1 72 24 cvta.const.u64 %r101,ln2LO; add.u64 %r104,%r101,%r98; ld.f32 %r51,[%r104]; .loc 1 72 42 mov.u32 %r106,1; sub.u32 %r105,%r106,%r22; .loc 1 72 39 sub.u32 %r52,%r105,%r22; bra $L9; $L8: .loc 1 74 21 cvta.const.u64 %r107,halF; cvt.s64.s32 %r108,%r22; shl.b64 %r109,%r108,2; add.u64 %r110,%r107,%r109; .loc 1 74 16 ld.f32 %r111,[%r110]; fma.rn.f32 %r29,%r73,0f3fb8aa3b,%r111; .loc 1 74 6 cvt.rzi.s32.f32 %r52,%r29; .loc 1 75 6 cvt.rn.f32.s32 %r57,%r52; .loc 1 76 6 fma.rn.f32 %r50,%r57,0fbf317180,%r73; .loc 1 77 6 mul.f32 %r51,%r57,0f3717f7d1; $L9: .loc 1 79 9 sub.f32 %r73,%r50,%r51; .loc 1 86 5 mul.f32 %r58,%r73,%r73; .loc 1 87 34 fma.rn.f32 %r31,%r58,0f3331bb4c,0fb5ddea0e; .loc 1 87 28 fma.rn.f32 %r32,%r31,%r58,0f388ab355; .loc 1 87 22 fma.rn.f32 %r33,%r32,%r58,0fbb360b61; .loc 1 87 16 fma.rn.f32 %r34,%r33,%r58,0f3e2aaaab; .loc 1 87 5 neg.f32 %r113,%r34; fma.rn.f32 %r66,%r113,%r58,%r73; .loc 1 89 24 mul.f32 %r140,%r73,%r66; .loc 1 88 4 setp.eq.u32 %r114,%r52,0; @ ! %r114 bra $L20; bra $L10; $L7: .loc 1 81 9 setp.gt.u32 %r115,%r56,872415231; @ %r115 bra $L12; .loc 1 82 13 add.f32 %r116,%r73,0f7149f2ca; .loc 1 82 8 setp.gt.f32 %r117,%r116,0f3f800000; @ ! %r117 bra $L12; .loc 1 82 31 add.f32 %r72,%r73,0f3f800000; bra $L1; $L10: .loc 1 88 32 mov.f32 %r120,0f40000000; sub.f32 %r119,%r66,%r120; .loc 1 88 29 div.rn.f32 %r121,%r140,%r119; .loc 1 88 44 sub.f32 %r122,%r121,%r73; .loc 1 88 22 mov.f32 %r123,0f3f800000; sub.f32 %r72,%r123,%r122; bra $L1; $L20: .loc 1 89 39 mov.f32 %r125,0f40000000; sub.f32 %r124,%r125,%r66; .loc 1 89 27 div.rn.f32 %r126,%r140,%r124; .loc 1 89 21 sub.f32 %r127,%r51,%r126; .loc 1 89 43 sub.f32 %r128,%r127,%r50; .loc 1 89 11 mov.f32 %r130,0f3f800000; sub.f32 %r129,%r130,%r128; .loc 1 92 6 mov.b32 %r70,%r129; .loc 1 90 4 setp.lt.s32 %r131,%r52,-125; @ %r131 bra $L14; .loc 1 93 6 shl.b32 %r132,%r52,23; add.u32 %r133,%r132,%r70; mov.b32 %r72,%r133; .loc 1 94 13 bra $L1; $L14: .loc 1 98 6 add.u32 %r134,%r52,100; shl.b32 %r135,%r134,23; add.u32 %r136,%r135,%r70; .loc 1 99 14 mov.b32 %r137,%r136; mul.f32 %r72,%r137,0f0d800000; bra $L1; $L12: .loc 1 86 5 mul.f32 %r61,%r73,%r73; .loc 1 87 34 fma.rn.f32 %r62,%r61,0f3331bb4c,0fb5ddea0e; .loc 1 87 28 fma.rn.f32 %r63,%r61,%r62,0f388ab355; .loc 1 87 22 fma.rn.f32 %r64,%r61,%r63,0fbb360b61; .loc 1 87 16 fma.rn.f32 %r65,%r61,%r64,0f3e2aaaab; .loc 1 87 5 neg.f32 %r139,%r61; fma.rn.f32 %r66,%r139,%r65,%r73; mul.f32 %r140,%r73,%r66; bra $L10; $L1: .loc 1 101 1 mov.f32 %value,%r72; st.param.f32 [%value_out],%value; ret; } lib_a-ef_fmod.o/0 0 0 644 6606 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmodf .visible .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_fmod.c" // BEGIN VAR DEF: Zero .const .align 4 .u32 Zero[2] = {0,2147483648 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_fmodf .visible .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r26; .reg .f32 %r27; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r64; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r117; .reg .u64 %r118; .reg .u32 %r119; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .u64 %r128; .reg .u32 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .pred %r134; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .pred %r146; .reg .u16 %r147; mov.f32 %r68,%ar0; mov.f32 %r69,%ar1; .loc 1 39 2 mov.b32 %r45,%r68; .loc 1 40 2 mov.b32 %r46,%r69; .loc 1 42 5 and.b32 %r48,%r45,2147483647; .loc 1 43 5 and.b32 %r49,%r46,2147483647; .loc 1 47 29 set.u32.gt.s32 %r71,%r49,2139095040; neg.s32 %r72,%r71; mov.u32 %r70,%r72; .loc 1 46 5 set.u32.eq.u32 %r74,%r49,0; neg.s32 %r75,%r74; mov.u32 %r73,%r75; .loc 1 47 29 cvt.u16.u8 %r147,%r70; mov.u16 %r77,%r147; cvt.u16.u8 %r147,%r73; mov.u16 %r78,%r147; or.b16 %r76,%r77,%r78; cvt.u32.u16 %r79,%r76; .loc 1 47 5 set.u32.gt.s32 %r81,%r48,2139095039; neg.s32 %r82,%r81; mov.u32 %r80,%r82; .loc 1 47 29 cvt.u16.u8 %r147,%r79; mov.u16 %r84,%r147; cvt.u16.u8 %r147,%r80; mov.u16 %r85,%r147; or.b16 %r83,%r84,%r85; cvt.u32.u16 %r86,%r83; cvt.u16.u8 %r87,%r86; setp.eq.u16 %r88,%r87,0; @ %r88 bra $L2; .loc 1 49 15 mul.f32 %r27,%r68,%r69; .loc 1 49 18 div.rn.f32 %r67,%r27,%r27; bra $L1; $L2: .loc 1 50 4 setp.lt.s32 %r89,%r48,%r49; @ %r89 bra $L25; .loc 1 41 5 and.b32 %r47,%r45,-2147483648; .loc 1 51 4 setp.ne.u32 %r90,%r48,%r49; @ %r90 bra $L4; .loc 1 52 17 cvta.const.u64 %r91,Zero; .loc 1 52 32 shr.u32 %r92,%r47,31; .loc 1 52 17 cvt.u64.u32 %r93,%r92; shl.b64 %r94,%r93,2; add.u64 %r95,%r91,%r94; ld.f32 %r67,[%r95]; bra $L1; $L4: .loc 1 57 4 and.b32 %r96,%r45,2139095040; setp.ne.u32 %r97,%r96,0; @ %r97 bra $L5; .loc 1 58 22 shl.b32 %r52,%r48,8; .loc 1 58 33 setp.le.s32 %r98,%r52,0; @ %r98 bra $L26; .loc 1 58 14 mov.u32 %r51,-126; $L7: .loc 1 58 47 add.u32 %r51,%r51,-1; .loc 1 58 38 add.u32 %r52,%r52,%r52; .loc 1 58 33 setp.gt.s32 %r100,%r52,0; @ %r100 bra $L7; bra $L6; $L5: .loc 1 59 17 shr.s32 %r101,%r48,23; .loc 1 59 12 add.u32 %r51,%r101,-127; bra $L6; $L26: .loc 1 58 14 mov.u32 %r51,-126; $L6: .loc 1 62 4 and.b32 %r102,%r46,2139095040; setp.ne.u32 %r103,%r102,0; @ %r103 bra $L8; .loc 1 63 22 shl.b32 %r55,%r49,8; .loc 1 63 33 setp.lt.s32 %r104,%r55,0; @ %r104 bra $L27; .loc 1 63 14 mov.u32 %r54,-126; $L10: .loc 1 63 48 add.u32 %r54,%r54,-1; .loc 1 63 39 add.u32 %r55,%r55,%r55; .loc 1 63 33 setp.ge.s32 %r106,%r55,0; @ %r106 bra $L10; bra $L9; $L8: .loc 1 64 17 shr.s32 %r107,%r49,23; .loc 1 64 12 add.u32 %r54,%r107,-127; bra $L9; $L27: .loc 1 63 14 mov.u32 %r54,-126; $L9: .loc 1 67 4 setp.lt.s32 %r108,%r51,-126; @ %r108 bra $L11; .loc 1 68 33 and.b32 %r32,%r45,8388607; .loc 1 68 9 or.b32 %r22,%r32,8388608; bra $L12; $L11: .loc 1 70 8 mov.u32 %r110,-126; sub.u32 %r109,%r110,%r51; .loc 1 71 9 shl.b32 %r22,%r48,%r109; $L12: .loc 1 73 4 setp.lt.s32 %r146,%r54,-126; @ %r146 bra $L13; .loc 1 74 33 and.b32 %r33,%r46,8388607; .loc 1 74 9 or.b32 %r44,%r33,8388608; bra $L14; $L13: .loc 1 76 8 mov.u32 %r113,-126; sub.u32 %r112,%r113,%r54; .loc 1 77 9 shl.b32 %r44,%r49,%r112; $L14: .loc 1 81 4 sub.u32 %r58,%r51,%r54; .loc 1 82 8 setp.eq.u32 %r114,%r51,%r54; @ %r114 bra $L15; mov.u32 %r26,%r58; $L19: .loc 1 83 8 sub.u32 %r64,%r22,%r44; .loc 1 84 8 setp.ge.s32 %r115,%r64,0; @ %r115 bra $L16; .loc 1 84 18 add.u32 %r22,%r22,%r22; bra $L17; $L16: .loc 1 86 9 setp.ne.u32 %r117,%r64,0; @ %r117 bra $L18; .loc 1 87 18 cvta.const.u64 %r118,Zero; .loc 1 87 33 shr.u32 %r119,%r47,31; .loc 1 87 18 cvt.u64.u32 %r120,%r119; shl.b64 %r121,%r120,2; add.u64 %r122,%r118,%r121; ld.f32 %r67,[%r122]; bra $L1; $L18: .loc 1 88 10 add.u32 %r22,%r64,%r64; $L17: .loc 1 82 8 add.u32 %r26,%r26,-1; setp.ne.u32 %r124,%r26,0; @ %r124 bra $L19; $L15: .loc 1 91 4 sub.u32 %r59,%r22,%r44; .loc 1 92 4 setp.lt.s32 %r125,%r59,0; selp.u32 %r22,%r22,%r59,%r125; .loc 1 95 4 setp.eq.u32 %r126,%r22,0; @ %r126 bra $L21; .loc 1 97 10 setp.le.s32 %r127,%r22,8388607; @ %r127 bra $L22; bra $L23; $L21: .loc 1 96 17 cvta.const.u64 %r128,Zero; .loc 1 96 32 shr.u32 %r129,%r47,31; .loc 1 96 17 cvt.u64.u32 %r130,%r129; shl.b64 %r131,%r130,2; add.u64 %r132,%r128,%r131; ld.f32 %r67,[%r132]; bra $L1; $L22: .loc 1 98 9 add.u32 %r22,%r22,%r22; .loc 1 99 9 add.u32 %r54,%r54,-1; .loc 1 97 10 setp.le.s32 %r134,%r22,8388607; @ %r134 bra $L22; setp.lt.s32 %r146,%r54,-126; $L23: .loc 1 101 4 @ %r146 bra $L24; .loc 1 102 32 add.u32 %r136,%r54,127; .loc 1 102 37 shl.b32 %r137,%r136,23; .loc 1 102 15 add.u32 %r138,%r22,-8388608; .loc 1 103 6 or.b32 %r139,%r138,%r47; or.b32 %r140,%r137,%r139; mov.b32 %r67,%r140; bra $L1; $L24: .loc 1 107 8 mov.u32 %r142,-126; sub.u32 %r141,%r142,%r54; .loc 1 108 9 shr.s32 %r143,%r22,%r141; .loc 1 109 6 or.b32 %r144,%r143,%r47; mov.b32 %r67,%r144; bra $L1; $L25: .loc 1 50 19 mov.f32 %r67,%r68; $L1: .loc 1 113 1 mov.f32 %value,%r67; st.param.f32 [%value_out],%value; ret; } /197 0 0 0 644 4421 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypotf .visible .func (.param .f32 %value_out) __ieee754_hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_hypotf .visible .func (.param .f32 %value_out) __ieee754_hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r31; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .f32 %r92; mov.f32 %r62,%ar0; mov.f32 %r63,%ar1; .loc 1 28 2 mov.b32 %r47,%r62; .loc 1 29 5 and.b32 %r45,%r47,2147483647; .loc 1 30 2 mov.b32 %r48,%r63; .loc 1 31 5 and.b32 %r46,%r48,2147483647; .loc 1 32 4 setp.ge.s32 %r65,%r45,%r46; @ %r65 bra $L2; mov.u32 %r64,%r45; mov.u32 %r45,%r46; mov.u32 %r46,%r64; $L2: .loc 1 33 2 mov.b32 %r61,%r45; .loc 1 34 2 mov.b32 %r43,%r46; .loc 1 35 8 sub.u32 %r66,%r45,%r46; .loc 1 35 4 setp.le.s32 %r67,%r66,251658240; @ %r67 bra $L3; .loc 1 35 34 add.f32 %r61,%r61,%r43; bra $L1; $L3: .loc 1 37 4 setp.le.s32 %r68,%r45,1484783616; @ %r68 bra $L13; .loc 1 38 7 setp.le.s32 %r69,%r45,2139095039; @ %r69 bra $L6; .loc 1 40 11 setp.eq.u32 %r70,%r45,2139095040; @ %r70 bra $L14; .loc 1 39 11 add.f32 %r61,%r61,%r43; bra $L7; $L14: .loc 1 40 41 mov.f32 %r61,0f7f800000; $L7: .loc 1 41 11 setp.ne.u32 %r71,%r46,2139095040; .loc 1 41 41 selp.f32 %r61,%r61,0f7f800000,%r71; bra $L1; $L6: .loc 1 45 8 add.u32 %r45,%r45,-570425344; .loc 1 45 27 add.u32 %r46,%r46,-570425344; .loc 1 46 5 mov.b32 %r61,%r45; .loc 1 47 5 mov.b32 %r43,%r46; .loc 1 45 45 mov.u32 %r44,68; bra $L5; $L13: .loc 1 36 3 mov.u32 %r44,0; $L5: .loc 1 49 4 setp.gt.s32 %r72,%r46,645922815; @ %r72 bra $L8; .loc 1 50 8 setp.eq.u32 %r73,%r46,0; @ %r73 bra $L1; .loc 1 52 15 setp.gt.s32 %r74,%r46,8388607; @ %r74 bra $L9; .loc 1 54 5 mul.f32 %r43,%r43,0f7e800000; .loc 1 55 5 mul.f32 %r61,%r61,0f7e800000; .loc 1 56 5 add.u32 %r44,%r44,-126; bra $L8; $L9: .loc 1 58 13 add.u32 %r45,%r45,570425344; .loc 1 59 6 add.u32 %r46,%r46,570425344; .loc 1 60 5 add.u32 %r44,%r44,-68; .loc 1 61 3 mov.b32 %r61,%r45; .loc 1 62 3 mov.b32 %r43,%r46; $L8: .loc 1 66 4 sub.f32 %r51,%r61,%r43; .loc 1 67 5 setp.lt.f32 %r75,%r43,%r51; @ ! %r75 bra $L22; .loc 1 68 6 and.b32 %r76,%r45,-4096; mov.b32 %r56,%r76; .loc 1 70 46 add.f32 %r77,%r61,%r56; .loc 1 69 9 sub.f32 %r78,%r61,%r56; .loc 1 70 43 mul.f32 %r79,%r77,%r78; fma.rn.f32 %r59,%r43,%r43,%r79; .loc 1 70 11 fma.rn.f32 %r31,%r56,%r56,%r59; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r81,[%value_in]; } mov.f32 %r61,%r81; bra $L12; $L22: .loc 1 73 6 and.b32 %r82,%r46,-4096; mov.b32 %r52,%r82; .loc 1 74 9 sub.f32 %r53,%r43,%r52; .loc 1 75 6 add.u32 %r83,%r45,8388608; and.b32 %r84,%r83,-4096; mov.b32 %r54,%r84; .loc 1 76 9 neg.f32 %r85,%r54; fma.rn.f32 %r55,%r61,0f40000000,%r85; .loc 1 77 50 mul.f32 %r86,%r43,%r55; .loc 1 77 47 fma.rn.f32 %r38,%r53,%r54,%r86; fma.rn.f32 %r60,%r51,%r51,%r38; .loc 1 77 11 fma.rn.f32 %r39,%r52,%r54,%r60; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r88,[%value_in]; } mov.f32 %r61,%r88; $L12: .loc 1 79 4 setp.eq.u32 %r89,%r44,0; @ %r89 bra $L1; .loc 1 80 6 shl.b32 %r90,%r44,23; add.u32 %r91,%r90,1065353216; .loc 1 81 15 mov.b32 %r92,%r91; mul.f32 %r61,%r61,%r92; $L1: .loc 1 83 1 mov.f32 %value,%r61; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j0.o/ 0 0 0 644 16401 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: pzerof .func (.param .f32 %value_out) pzerof (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_j0.c" // BEGIN FUNCTION DECL: qzerof .func (.param .f32 %value_out) qzerof (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .visible .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .visible .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN FUNCTION DEF: pzerof .func (.param .f32 %value_out) pzerof (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .f32 %r54; .reg .f32 %r57; mov.f32 %r50,%ar0; .loc 1 293 2 mov.b32 %r35,%r50; .loc 1 294 5 and.b32 %r36,%r35,2147483647; .loc 1 295 4 setp.gt.s32 %r51,%r36,1090519039; @ %r51 bra $L3; .loc 1 296 9 setp.gt.s32 %r52,%r36,1089936471; @ %r52 bra $L4; .loc 1 297 9 setp.le.s32 %r53,%r36,1077336935; selp.f32 %r48,0f416a859a,0f432d94b8,%r53; selp.f32 %r47,0f4319e01a,0f448cffe6,%r53; selp.f32 %r46,0f43873c32,0f44953373,%r53; selp.f32 %r45,0f430834f0,0f43b4c1ca,%r53; selp.f32 %r44,0fc04ef40d,0fc1fb9565,%r53; selp.f32 %r43,0fc1331736,0fc2685112,%r53; selp.f32 %r42,0fc0f4579f,0fc1afba52,%r53; selp.f32 %r41,0fbfb9b1cc,0fc01a2d95,%r53; selp.f32 %r40,0fbd8ffb12,0fbd8fffb8,%r53; selp.f32 %r28,0f41b1c32d,0f420f6c94,%r53; selp.f32 %r23,0fb3be98b7,0fb12f081b,%r53; bra $L2; $L3: mov.f32 %r48,0f473a0bba; mov.f32 %r47,0f47e4087c; mov.f32 %r46,0f471e95db; mov.f32 %r45,0f456f9beb; mov.f32 %r44,0fc5a4285a; mov.f32 %r43,0fc51b5376; mov.f32 %r42,0fc3808814; mov.f32 %r41,0fc1014e86; mov.f32 %r40,0fbd900000; .loc 1 295 36 mov.f32 %r28,0f42e91198; .loc 1 295 28 mov.f32 %r23,0f00000000; bra $L2; $L4: mov.f32 %r48,0f451660ee; mov.f32 %r47,0f461665c8; mov.f32 %r46,0f45bad7c4; mov.f32 %r45,0f44836813; mov.f32 %r44,0fc3ad3779; mov.f32 %r43,0fc3a59d9b; mov.f32 %r42,0fc287597b; mov.f32 %r41,0fc0851b88; mov.f32 %r40,0fbd8fffff; .loc 1 296 36 mov.f32 %r28,0f42730408; .loc 1 296 28 mov.f32 %r23,0fad48c58a; $L2: .loc 1 299 12 mul.f32 %r54,%r50,%r50; .loc 1 299 4 rcp.rn.f32 %r37,%r54; .loc 1 300 42 fma.rn.f32 %r24,%r37,%r44,%r43; .loc 1 300 34 fma.rn.f32 %r25,%r24,%r37,%r42; .loc 1 300 26 fma.rn.f32 %r26,%r25,%r37,%r41; .loc 1 300 18 fma.rn.f32 %r27,%r26,%r37,%r40; .loc 1 300 4 fma.rn.f32 %r38,%r27,%r37,%r23; .loc 1 301 41 fma.rn.f32 %r30,%r37,%r48,%r47; .loc 1 301 33 fma.rn.f32 %r31,%r30,%r37,%r46; .loc 1 301 25 fma.rn.f32 %r32,%r31,%r37,%r45; .loc 1 301 17 fma.rn.f32 %r33,%r32,%r37,%r28; .loc 1 301 4 fma.rn.f32 %r39,%r33,%r37,0f3f800000; .loc 1 302 15 div.rn.f32 %r57,%r38,%r39; .loc 1 302 12 add.f32 %value,%r57,0f3f800000; .loc 1 303 1 st.param.f32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qzerof .func (.param .f32 %value_out) qzerof (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .u32 %r37; .reg .u32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .f32 %r57; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; mov.f32 %r53,%ar0; .loc 1 429 2 mov.b32 %r37,%r53; .loc 1 430 5 and.b32 %r38,%r37,2147483647; .loc 1 431 4 setp.gt.s32 %r54,%r38,1090519039; @ %r54 bra $L8; .loc 1 432 9 setp.gt.s32 %r55,%r38,1089936471; @ %r55 bra $L9; .loc 1 433 9 setp.le.s32 %r56,%r38,1077336935; selp.f32 %r51,0fc0a9f358,0fc3153f59,%r56; selp.f32 %r50,0f4354aa98,0f451d4557,%r56; selp.f32 %r49,0f445cbbe5,0f45c9e367,%r56; selp.f32 %r48,0f44533229,0f4567825f,%r56; selp.f32 %r47,0f4386ac8f,0f44316c1c,%r56; selp.f32 %r46,0f4182058c,0f4326bbe4,%r56; selp.f32 %r45,0f41fd5471,0f432acedf,%r56; selp.f32 %r44,0f4167edfd,0f422a7cc5,%r56; selp.f32 %r43,0f3fffc4bf,0f405607e3,%r56; selp.f32 %r42,0f3d95f62a,0f3d95ff70,%r56; selp.f32 %r28,0f41f2ecb8,0f42430916,%r56; selp.f32 %r23,0f342189db,0f3196681b,%r56; bra $L7; $L8: mov.f32 %r51,0fc8a7eb69; mov.f32 %r50,0f494d3359; mov.f32 %r49,0f49441ed4; mov.f32 %r48,0f480b3293; mov.f32 %r47,0f45fd12c2; mov.f32 %r46,0f471096a0; mov.f32 %r45,0f460a6cca; mov.f32 %r44,0f440b6b19; mov.f32 %r43,0f413c4a93; mov.f32 %r42,0f3d960000; .loc 1 431 36 mov.f32 %r28,0f4323c6aa; .loc 1 431 28 mov.f32 %r23,0f00000000; bra $L7; $L9: mov.f32 %r51,0fc5a752be; mov.f32 %r50,0f470c88c1; mov.f32 %r49,0f475daf1d; mov.f32 %r48,0f46933e94; mov.f32 %r47,0f4501dd07; mov.f32 %r46,0f44f8bf4b; mov.f32 %r45,0f448067cd; mov.f32 %r44,0f43071c90; mov.f32 %r43,0f40babd86; mov.f32 %r42,0f3d95ffff; .loc 1 432 36 mov.f32 %r28,0f42a58da0; .loc 1 432 28 mov.f32 %r23,0f2da1ec79; $L7: .loc 1 435 12 mul.f32 %r57,%r53,%r53; .loc 1 435 4 rcp.rn.f32 %r39,%r57; .loc 1 436 42 fma.rn.f32 %r24,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r25,%r24,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r26,%r25,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r27,%r26,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r40,%r27,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r30,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r31,%r30,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r32,%r31,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r33,%r32,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r34,%r33,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r41,%r34,%r39,0f3f800000; .loc 1 438 26 div.rn.f32 %r60,%r40,%r41; .loc 1 438 23 mov.f32 %r62,0f3e000000; sub.f32 %r61,%r60,%r62; .loc 1 438 29 div.rn.f32 %value,%r61,%r53; .loc 1 439 1 st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j0f .visible .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r29; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r56; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .pred %r65; .reg .f32 %r66; .reg .f32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f32 %r73; .reg .f32 %r75; .reg .pred %r76; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r93; .reg .f32 %r94; .reg .pred %r95; .reg .f32 %r96; .reg .pred %r97; .reg .pred %r98; .reg .f32 %r100; .reg .pred %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r105; mov.f32 %r64,%ar0; .loc 1 59 2 mov.b32 %r47,%r64; .loc 1 60 5 and.b32 %r48,%r47,2147483647; .loc 1 61 4 setp.le.s32 %r65,%r48,2139095039; @ %r65 bra $L12; .loc 1 61 44 mul.f32 %r66,%r64,%r64; .loc 1 61 41 rcp.rn.f32 %r63,%r66; bra $L11; $L12: .loc 1 62 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r64; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r69,[%value_in]; } .loc 1 63 4 and.b32 %r70,%r47,1073741824; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L14; .loc 1 64 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 65 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 66 6 sub.f32 %r45,%r73,%r75; .loc 1 67 6 add.f32 %r46,%r73,%r75; .loc 1 68 5 setp.gt.s32 %r76,%r48,2130706431; @ %r76 bra $L15; .loc 1 69 12 add.f32 %r78,%r69,%r69; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r78; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r79,[%value_in]; } .loc 1 69 9 neg.f32 %r56,%r79; .loc 1 70 13 mul.f32 %r80,%r73,%r75; .loc 1 70 10 setp.lt.f32 %r81,%r80,0f00000000; @ ! %r81 bra $L25; .loc 1 70 26 div.rn.f32 %r46,%r56,%r45; bra $L15; $L25: .loc 1 71 20 div.rn.f32 %r45,%r56,%r46; $L15: .loc 1 77 5 setp.le.s32 %r82,%r48,1543503872; @ %r82 bra $L18; .loc 1 77 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 77 35 mul.f32 %r85,%r46,0f3f106ebb; .loc 1 77 23 div.rn.f32 %r63,%r85,%r84; bra $L11; $L18: .loc 1 79 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r87,[%value_in]; } .loc 1 79 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r89,[%value_in]; } .loc 1 80 28 mul.f32 %r90,%r45,%r89; .loc 1 80 26 neg.f32 %r91,%r90; fma.rn.f32 %r29,%r46,%r87,%r91; .loc 1 80 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 80 20 mul.f32 %r94,%r29,0f3f106ebb; .loc 1 80 9 div.rn.f32 %r63,%r94,%r93; bra $L11; $L14: .loc 1 84 4 setp.gt.s32 %r95,%r48,956301311; @ %r95 bra $L19; .loc 1 85 13 add.f32 %r96,%r69,0f7149f2ca; .loc 1 85 8 setp.gt.f32 %r97,%r96,0f3f800000; @ ! %r97 bra $L19; .loc 1 86 12 setp.le.s32 %r98,%r48,838860799; @ %r98 bra $L22; .loc 1 87 33 mul.f32 %r100,%r69,0fbe800000; fma.rn.f32 %r63,%r100,%r69,0f3f800000; bra $L11; $L19: .loc 1 90 4 mul.f32 %r51,%r69,%r69; .loc 1 91 27 fma.rn.f32 %r34,%r51,0fb19eaf3c,0f35f58e88; .loc 1 91 20 fma.rn.f32 %r35,%r34,%r51,0fb947352e; .loc 1 91 13 fma.rn.f32 %r36,%r35,%r51,0f3c800000; .loc 1 91 4 mul.f32 %r52,%r36,%r51; .loc 1 92 31 fma.rn.f32 %r37,%r51,0f30a045e8,0f3509daa6; .loc 1 92 24 fma.rn.f32 %r38,%r37,%r51,0f38f53697; .loc 1 92 17 fma.rn.f32 %r39,%r38,%r51,0f3c7fe744; .loc 1 92 4 fma.rn.f32 %r53,%r39,%r51,0f3f800000; .loc 1 94 37 div.rn.f32 %r62,%r52,%r53; .loc 1 93 4 setp.gt.s32 %r101,%r48,1065353215; @ %r101 bra $L21; .loc 1 94 34 mov.f32 %r103,0f3e800000; sub.f32 %r102,%r62,%r103; .loc 1 94 17 fma.rn.f32 %r63,%r102,%r51,0f3f800000; bra $L11; $L21: .loc 1 97 17 fma.rn.f32 %r41,%r69,0f3f000000,0f3f800000; .loc 1 97 25 fma.rn.f32 %r42,%r69,0fbf000000,0f3f800000; .loc 1 97 30 mul.f32 %r105,%r51,%r62; .loc 1 97 28 fma.rn.f32 %r63,%r41,%r42,%r105; bra $L11; $L22: .loc 1 86 35 mov.f32 %r63,0f3f800000; $L11: .loc 1 99 1 mov.f32 %value,%r63; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y0f .visible .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r29; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r54; .reg .f32 %r59; .reg .f32 %r60; .reg .pred %r61; .reg .pred %r63; .reg .f32 %r64; .reg .pred %r65; .reg .f32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .f32 %r70; .reg .f32 %r72; .reg .pred %r73; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r89; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r93; .reg .f32 %r95; .reg .f32 %r97; .reg .f32 %r98; mov.f32 %r60,%ar0; .loc 1 128 2 mov.b32 %r47,%r60; .loc 1 129 12 and.b32 %r48,%r47,2147483647; .loc 1 131 4 setp.le.s32 %r61,%r48,2139095039; @ %r61 bra $L27; .loc 1 131 45 fma.rn.f32 %r22,%r60,%r60,%r60; .loc 1 131 42 rcp.rn.f32 %r59,%r22; bra $L26; $L27: .loc 1 132 11 setp.ne.u32 %r63,%r48,0; @ %r63 bra $L29; .loc 1 132 46 mov.f32 %r64,0fbf800000; div.rn.f32 %r59,%r64,0f00000000; bra $L26; $L29: .loc 1 133 11 setp.ge.s32 %r65,%r47,0; @ %r65 bra $L30; .loc 1 133 29 mov.f32 %r66,0f00000000; div.rn.f32 %r59,%r66,%r66; bra $L26; $L30: .loc 1 134 11 and.b32 %r67,%r47,1073741824; setp.eq.u32 %r68,%r67,0; @ %r68 bra $L31; .loc 1 146 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r70,[%value_in]; } .loc 1 147 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r72,[%value_in]; } .loc 1 148 20 sub.f32 %r45,%r70,%r72; .loc 1 149 20 add.f32 %r46,%r70,%r72; .loc 1 154 19 setp.gt.s32 %r73,%r48,2130706431; @ %r73 bra $L32; .loc 1 155 26 add.f32 %r75,%r60,%r60; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r75; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r76,[%value_in]; } .loc 1 155 23 neg.f32 %r54,%r76; .loc 1 156 27 mul.f32 %r77,%r70,%r72; .loc 1 156 24 setp.lt.f32 %r78,%r77,0f00000000; @ ! %r78 bra $L38; .loc 1 156 40 div.rn.f32 %r46,%r54,%r45; bra $L32; $L38: .loc 1 157 40 div.rn.f32 %r45,%r54,%r46; $L32: .loc 1 159 19 setp.le.s32 %r79,%r48,1543503872; @ %r79 bra $L35; .loc 1 159 54 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r81,[%value_in]; } .loc 1 159 49 mul.f32 %r82,%r45,0f3f106ebb; .loc 1 159 37 div.rn.f32 %r59,%r82,%r81; bra $L26; $L35: .loc 1 161 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 161 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 162 42 mul.f32 %r87,%r46,%r86; .loc 1 162 40 fma.rn.f32 %r29,%r45,%r84,%r87; .loc 1 162 47 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r89,[%value_in]; } .loc 1 162 34 mul.f32 %r90,%r29,0f3f106ebb; .loc 1 162 23 div.rn.f32 %r59,%r90,%r89; bra $L26; $L31: .loc 1 166 4 setp.gt.s32 %r91,%r48,964689920; @ %r91 bra $L36; .loc 1 167 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 167 17 fma.rn.f32 %r59,%r93,0f3f22f983,0fbd9726b5; bra $L26; $L36: .loc 1 169 4 mul.f32 %r49,%r60,%r60; .loc 1 170 44 fma.rn.f32 %r33,%r49,0fae2f21eb,0f32a802ba; .loc 1 170 37 fma.rn.f32 %r34,%r33,%r49,0fb67ff53c; .loc 1 170 30 fma.rn.f32 %r35,%r34,%r49,0f39b62a69; .loc 1 170 23 fma.rn.f32 %r36,%r35,%r49,0fbc626746; .loc 1 170 16 fma.rn.f32 %r37,%r36,%r49,0f3e34e80d; .loc 1 170 4 fma.rn.f32 %r50,%r37,%r49,0fbd9726b5; .loc 1 171 30 fma.rn.f32 %r38,%r49,0f2ff280c2,0f348b216c; .loc 1 171 23 fma.rn.f32 %r39,%r38,%r49,0f389f65e0; .loc 1 171 16 fma.rn.f32 %r40,%r39,%r49,0f3c509385; .loc 1 171 4 fma.rn.f32 %r51,%r40,%r49,0f3f800000; .loc 1 172 10 div.rn.f32 %r41,%r50,%r51; .loc 1 172 20 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r95,[%value_in]; } .loc 1 172 37 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r97,[%value_in]; } .loc 1 172 36 mul.f32 %r98,%r95,%r97; .loc 1 172 13 fma.rn.f32 %r59,%r98,0f3f22f983,%r41; $L26: .loc 1 173 1 mov.f32 %value,%r59; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j1.o/ 0 0 0 644 14946 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: ponef .func (.param .f32 %value_out) ponef (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_j1.c" // BEGIN FUNCTION DECL: qonef .func (.param .f32 %value_out) qonef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .visible .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .visible .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN FUNCTION DEF: ponef .func (.param .f32 %value_out) ponef (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .f32 %r54; .reg .f32 %r57; mov.f32 %r50,%ar0; .loc 1 292 2 mov.b32 %r35,%r50; .loc 1 293 5 and.b32 %r36,%r35,2147483647; .loc 1 294 11 setp.gt.s32 %r51,%r36,1090519039; @ %r51 bra $L3; .loc 1 295 16 setp.gt.s32 %r52,%r36,1089936471; @ %r52 bra $L4; .loc 1 296 16 setp.le.s32 %r53,%r36,1077336935; selp.f32 %r48,0f4105d590,0f42cf936c,%r53; selp.f32 %r47,0f42eb5bd7,0f445eb3ed,%r53; selp.f32 %r46,0f436846c7,0f4482dbe3,%r53; selp.f32 %r45,0f42fa9499,0f43a86198,%r53; selp.f32 %r44,0f40a25a4d,0f42423c7c,%r53; selp.f32 %r43,0f418d8d41,0f42b61c2a,%r53; selp.f32 %r42,0f4143e1bc,0f420c7a45,%r53; selp.f32 %r41,0f401795c0,0f407bb5e7,%r53; selp.f32 %r40,0f3deffa16,0f3defffab,%r53; selp.f32 %r28,0f41ab7dec,0f420b2a4d,%r53; selp.f32 %r23,0f33e74ea8,0f314fe10d,%r53; bra $L2; $L3: mov.f32 %r48,0f46f0a88b; mov.f32 %r47,0f47bea166; mov.f32 %r46,0f47105c35; mov.f32 %r45,0f45642ee5; mov.f32 %r44,0f45f753d6; mov.f32 %r43,0f45722bed; mov.f32 %r42,0f43ce06a3; mov.f32 %r41,0f4153d4ea; mov.f32 %r40,0f3df00000; .loc 1 294 43 mov.f32 %r28,0f42e46a2c; .loc 1 294 35 mov.f32 %r23,0f00000000; bra $L2; $L4: mov.f32 %r48,0f44bc0180; mov.f32 %r47,0f45f52586; mov.f32 %r46,0f45a74a23; mov.f32 %r45,0f4477d9b1; mov.f32 %r44,0f44042dc6; mov.f32 %r43,0f440168b7; mov.f32 %r42,0f42d89dca; mov.f32 %r41,0f40d9b023; mov.f32 %r40,0f3defffff; .loc 1 295 43 mov.f32 %r28,0f426d1f55; .loc 1 295 35 mov.f32 %r23,0f2d68333f; $L2: .loc 1 298 19 mul.f32 %r54,%r50,%r50; .loc 1 298 11 rcp.rn.f32 %r37,%r54; .loc 1 299 49 fma.rn.f32 %r24,%r37,%r44,%r43; .loc 1 299 41 fma.rn.f32 %r25,%r24,%r37,%r42; .loc 1 299 33 fma.rn.f32 %r26,%r25,%r37,%r41; .loc 1 299 25 fma.rn.f32 %r27,%r26,%r37,%r40; .loc 1 299 11 fma.rn.f32 %r38,%r27,%r37,%r23; .loc 1 300 48 fma.rn.f32 %r30,%r37,%r48,%r47; .loc 1 300 40 fma.rn.f32 %r31,%r30,%r37,%r46; .loc 1 300 32 fma.rn.f32 %r32,%r31,%r37,%r45; .loc 1 300 24 fma.rn.f32 %r33,%r32,%r37,%r28; .loc 1 300 11 fma.rn.f32 %r39,%r33,%r37,0f3f800000; .loc 1 301 22 div.rn.f32 %r57,%r38,%r39; .loc 1 301 19 add.f32 %value,%r57,0f3f800000; .loc 1 302 1 st.param.f32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: qonef .func (.param .f32 %value_out) qonef (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .u32 %r37; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f32 %r56; .reg .f32 %r59; .reg .f32 %r60; mov.f32 %r53,%ar0; .loc 1 429 2 mov.b32 %r37,%r53; .loc 1 430 5 and.b32 %r54,%r37,2147483647; .loc 1 431 4 setp.le.s32 %r55,%r54,1075838975; selp.f32 %r51,0fc09eb437,0fc88fcb48,%r55; selp.f32 %r50,0f431bf2f2,0f4922be94,%r55; selp.f32 %r49,0f4438d92a,0f492fb29c,%r55; selp.f32 %r48,0f443d602e,0f4802bcd6,%r55; selp.f32 %r47,0f437cfb47,0f45f48b17,%r55; selp.f32 %r46,0fc1aaf9b2,0fc73d3683,%r55; selp.f32 %r45,0fc2294d1f,0fc639273a,%r55; selp.f32 %r44,0fc19d4f16,0fc43de683,%r55; selp.f32 %r43,0fc0302423,0fc1822c8d,%r55; selp.f32 %r42,0fbdd1f475,0fbdd20000,%r55; selp.f32 %r28,0f41ec4454,0f43216537,%r55; selp.f32 %r23,0fb43f8932,0f00000000,%r55; .loc 1 435 12 mul.f32 %r56,%r53,%r53; .loc 1 435 4 rcp.rn.f32 %r39,%r56; .loc 1 436 42 fma.rn.f32 %r24,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r25,%r24,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r26,%r25,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r27,%r26,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r40,%r27,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r30,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r31,%r30,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r32,%r31,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r33,%r32,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r34,%r33,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r41,%r34,%r39,0f3f800000; .loc 1 438 25 div.rn.f32 %r59,%r40,%r41; .loc 1 438 22 add.f32 %r60,%r59,0f3ec00000; .loc 1 438 28 div.rn.f32 %value,%r60,%r53; .loc 1 439 1 st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_j1f .visible .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r28; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .f32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .f32 %r66; .reg .f32 %r68; .reg .f32 %r69; .reg .pred %r70; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .pred %r89; .reg .pred %r90; .reg .f32 %r91; .reg .pred %r92; .reg .f32 %r93; .reg .f32 %r94; mov.f32 %r58,%ar0; .loc 1 60 2 mov.b32 %r42,%r58; .loc 1 61 5 and.b32 %r43,%r42,2147483647; .loc 1 62 4 setp.le.s32 %r59,%r43,2139095039; @ %r59 bra $L10; .loc 1 62 41 rcp.rn.f32 %r57,%r58; bra $L9; $L10: .loc 1 63 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 64 4 and.b32 %r63,%r42,1073741824; setp.eq.u32 %r64,%r63,0; @ %r64 bra $L12; .loc 1 65 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } .loc 1 66 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 67 8 neg.f32 %r69,%r66; .loc 1 67 6 sub.f32 %r40,%r69,%r68; .loc 1 68 6 sub.f32 %r41,%r66,%r68; .loc 1 69 5 setp.gt.s32 %r70,%r43,2130706431; @ %r70 bra $L13; .loc 1 70 11 add.f32 %r72,%r62,%r62; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 71 13 mul.f32 %r74,%r66,%r68; .loc 1 71 10 setp.gt.f32 %r75,%r74,0f00000000; @ ! %r75 bra $L20; .loc 1 71 26 div.rn.f32 %r41,%r73,%r40; bra $L13; $L20: .loc 1 72 20 div.rn.f32 %r40,%r73,%r41; $L13: .loc 1 78 5 setp.le.s32 %r76,%r43,1543503872; @ %r76 bra $L16; .loc 1 78 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r78,[%value_in]; } .loc 1 78 35 mul.f32 %r79,%r41,0f3f106ebb; .loc 1 78 23 div.rn.f32 %r57,%r79,%r78; bra $L17; $L16: .loc 1 80 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),ponef,(%out_arg1); ld.param.f32 %r81,[%value_in]; } .loc 1 80 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),qonef,(%out_arg1); ld.param.f32 %r83,[%value_in]; } .loc 1 81 28 mul.f32 %r84,%r40,%r83; .loc 1 81 26 neg.f32 %r85,%r84; fma.rn.f32 %r28,%r41,%r81,%r85; .loc 1 81 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r87,[%value_in]; } .loc 1 81 20 mul.f32 %r88,%r28,0f3f106ebb; .loc 1 81 9 div.rn.f32 %r57,%r88,%r87; $L17: .loc 1 83 5 setp.ge.s32 %r89,%r42,0; @ %r89 bra $L9; .loc 1 83 19 neg.f32 %r57,%r57; bra $L9; $L12: .loc 1 87 38 mul.f32 %r57,%r58,0f3f000000; .loc 1 86 4 setp.gt.s32 %r90,%r43,838860799; @ %r90 bra $L18; .loc 1 87 13 add.f32 %r91,%r58,0f7149f2ca; .loc 1 87 8 setp.gt.f32 %r92,%r91,0f3f800000; @ %r92 bra $L9; $L18: .loc 1 89 4 mul.f32 %r45,%r58,%r58; .loc 1 90 27 fma.rn.f32 %r32,%r45,0f335557d2,0fb7862e36; .loc 1 90 20 fma.rn.f32 %r33,%r32,%r45,0f3ab86cfd; .loc 1 90 13 fma.rn.f32 %r34,%r33,%r45,0fbd800000; .loc 1 90 4 mul.f32 %r46,%r34,%r45; .loc 1 91 38 fma.rn.f32 %r35,%r45,0f2d59567e,0f31ad6446; .loc 1 91 31 fma.rn.f32 %r36,%r35,%r45,0f359dffc2; .loc 1 91 24 fma.rn.f32 %r37,%r36,%r45,0f3942fab6; .loc 1 91 17 fma.rn.f32 %r38,%r37,%r45,0f3c9ce859; .loc 1 91 4 fma.rn.f32 %r47,%r38,%r45,0f3f800000; .loc 1 92 4 mul.f32 %r93,%r58,%r46; .loc 1 93 23 div.rn.f32 %r94,%r93,%r47; .loc 1 93 21 add.f32 %r57,%r57,%r94; $L9: .loc 1 94 1 mov.f32 %value,%r57; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_y1f .visible .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r29; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r45; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r60; .reg .f32 %r61; .reg .pred %r62; .reg .pred %r64; .reg .f32 %r65; .reg .pred %r66; .reg .f32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f32 %r71; .reg .f32 %r73; .reg .f32 %r74; .reg .pred %r75; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .pred %r80; .reg .pred %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r91; .reg .f32 %r92; .reg .pred %r93; .reg .f32 %r94; .reg .f32 %r96; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r101; .reg .f32 %r102; mov.f32 %r61,%ar0; .loc 1 129 2 mov.b32 %r49,%r61; .loc 1 130 12 and.b32 %r50,%r49,2147483647; .loc 1 132 4 setp.le.s32 %r62,%r50,2139095039; @ %r62 bra $L22; .loc 1 132 44 fma.rn.f32 %r22,%r61,%r61,%r61; .loc 1 132 41 rcp.rn.f32 %r60,%r22; bra $L21; $L22: .loc 1 133 11 setp.ne.u32 %r64,%r50,0; @ %r64 bra $L24; .loc 1 133 46 mov.f32 %r65,0fbf800000; div.rn.f32 %r60,%r65,0f00000000; bra $L21; $L24: .loc 1 134 11 setp.ge.s32 %r66,%r49,0; @ %r66 bra $L25; .loc 1 134 29 mov.f32 %r67,0f00000000; div.rn.f32 %r60,%r67,%r67; bra $L21; $L25: .loc 1 135 11 and.b32 %r68,%r49,1073741824; setp.eq.u32 %r69,%r68,0; @ %r69 bra $L26; .loc 1 136 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } .loc 1 137 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 138 22 neg.f32 %r74,%r71; .loc 1 138 20 sub.f32 %r47,%r74,%r73; .loc 1 139 20 sub.f32 %r48,%r71,%r73; .loc 1 140 19 setp.gt.s32 %r75,%r50,2130706431; @ %r75 bra $L27; .loc 1 141 25 add.f32 %r77,%r61,%r61; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r78,[%value_in]; } .loc 1 142 27 mul.f32 %r79,%r71,%r73; .loc 1 142 24 setp.gt.f32 %r80,%r79,0f00000000; @ ! %r80 bra $L33; .loc 1 142 40 div.rn.f32 %r48,%r78,%r47; bra $L27; $L33: .loc 1 143 40 div.rn.f32 %r47,%r78,%r48; $L27: .loc 1 156 19 setp.le.s32 %r81,%r50,1543503872; @ %r81 bra $L30; .loc 1 156 54 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r83,[%value_in]; } .loc 1 156 49 mul.f32 %r84,%r47,0f3f106ebb; .loc 1 156 37 div.rn.f32 %r60,%r84,%r83; bra $L21; $L30: .loc 1 158 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),ponef,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 158 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),qonef,(%out_arg1); ld.param.f32 %r88,[%value_in]; } .loc 1 159 42 mul.f32 %r89,%r48,%r88; .loc 1 159 40 fma.rn.f32 %r29,%r47,%r86,%r89; .loc 1 159 47 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r91,[%value_in]; } .loc 1 159 34 mul.f32 %r92,%r29,0f3f106ebb; .loc 1 159 23 div.rn.f32 %r60,%r92,%r91; bra $L21; $L26: .loc 1 163 11 setp.gt.s32 %r93,%r50,612368384; @ %r93 bra $L31; .loc 1 164 24 mov.f32 %r94,0fbf22f983; div.rn.f32 %r60,%r94,%r61; bra $L21; $L31: .loc 1 166 11 mul.f32 %r51,%r61,%r61; .loc 1 167 45 fma.rn.f32 %r34,%r51,0fb3c56003,0f37c5581c; .loc 1 167 36 fma.rn.f32 %r35,%r34,%r51,0fbafaaf2a; .loc 1 167 27 fma.rn.f32 %r36,%r35,%r51,0f3d4e9e3c; .loc 1 167 11 fma.rn.f32 %r52,%r36,%r51,0fbe48c331; .loc 1 168 52 fma.rn.f32 %r37,%r51,0f2d9281cf,0f31d5f8eb; .loc 1 168 43 fma.rn.f32 %r38,%r37,%r51,0f35b602d4; .loc 1 168 34 fma.rn.f32 %r39,%r38,%r51,0f3954644b; .loc 1 168 25 fma.rn.f32 %r40,%r39,%r51,0f3ca3286a; .loc 1 168 11 fma.rn.f32 %r53,%r40,%r51,0f3f800000; .loc 1 169 20 div.rn.f32 %r41,%r52,%r53; .loc 1 169 31 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r96,[%value_in]; } .loc 1 169 48 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r61; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r98,[%value_in]; } .loc 1 169 69 rcp.rn.f32 %r99,%r61; .loc 1 169 65 neg.f32 %r101,%r99; fma.rn.f32 %r45,%r96,%r98,%r101; .loc 1 169 29 mul.f32 %r102,%r45,0f3f22f983; .loc 1 169 24 fma.rn.f32 %r60,%r41,%r61,%r102; $L21: .loc 1 170 1 mov.f32 %value,%r60; st.param.f32 [%value_out],%value; ret; } lib_a-ef_jn.o/ 0 0 0 644 13111 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_jnf .visible .func (.param .f32 %value_out) __ieee754_jnf (.param .u32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_jn.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_ynf .visible .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .extern .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .extern .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .extern .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .extern .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_jnf .visible .func (.param .f32 %value_out) __ieee754_jnf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r27; .reg .f32 %r31; .reg .u32 %r33; .reg .f32 %r35; .reg .f32 %r39; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r47; .reg .u32 %r48; .reg .f32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r53; .reg .u32 %r56; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .u32 %r80; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .u32 %r86; .reg .f32 %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .f32 %r92; .reg .pred %r93; .reg .f32 %r95; .reg .u32 %r97; .reg .f32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .pred %r112; .reg .f32 %r114; .reg .f32 %r116; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r126; .reg .f32 %r127; .reg .pred %r128; .reg .f32 %r129; .reg .pred %r130; .reg .u32 %r131; .reg .u32 %r133; .reg .f32 %r135; .reg .f32 %r136; .reg .f32 %r137; .reg .pred %r138; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r143; .reg .f32 %r144; .reg .pred %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .pred %r151; .reg .pred %r152; .reg .f32 %r154; .reg .f32 %r155; .reg .pred %r156; .reg .f32 %r158; .reg .u16 %r159; mov.u32 %r86,%ar0; mov.f32 %r87,%ar1; .loc 1 46 2 mov.b32 %r58,%r87; .loc 1 47 5 and.b32 %r59,%r58,2147483647; .loc 1 49 4 setp.le.s32 %r88,%r59,2139095040; @ %r88 bra $L2; .loc 1 49 35 add.f32 %r85,%r87,%r87; bra $L1; $L2: .loc 1 50 4 setp.ge.s32 %r89,%r86,0; @ %r89 bra $L4; .loc 1 51 5 neg.s32 %r86,%r86; .loc 1 52 5 neg.f32 %r87,%r87; .loc 1 53 6 add.u32 %r58,%r58,-2147483648; bra $L5; $L4: .loc 1 55 4 setp.ne.u32 %r90,%r86,0; @ %r90 bra $L5; .loc 1 55 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r92,[%value_in]; } mov.f32 %r85,%r92; bra $L1; $L5: .loc 1 56 4 setp.ne.u32 %r93,%r86,1; @ %r93 bra $L6; .loc 1 56 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r95,[%value_in]; } mov.f32 %r85,%r95; bra $L1; $L6: .loc 1 57 6 shr.u32 %r97,%r58,31; and.b32 %r60,%r97,%r86; .loc 1 58 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r99,[%value_in]; } .loc 1 59 5 set.u32.eq.u32 %r101,%r59,0; neg.s32 %r102,%r101; mov.u32 %r100,%r102; .loc 1 59 28 set.u32.eq.u32 %r104,%r59,2139095040; neg.s32 %r105,%r104; mov.u32 %r103,%r105; .loc 1 59 26 cvt.u16.u8 %r159,%r100; mov.u16 %r107,%r159; cvt.u16.u8 %r159,%r103; mov.u16 %r108,%r159; or.b16 %r106,%r107,%r108; cvt.u32.u16 %r109,%r106; .loc 1 59 4 cvt.u16.u8 %r110,%r109; setp.ne.u16 %r111,%r110,0; @ %r111 bra $L26; .loc 1 61 10 cvt.rn.f32.s32 %r27,%r86; .loc 1 61 9 setp.le.f32 %r112,%r27,%r99; @ ! %r112 bra $L42; .loc 1 63 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r114,[%value_in]; } mov.f32 %r31,%r114; .loc 1 64 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r116,[%value_in]; } mov.f32 %r85,%r116; add.u32 %r56,%r86,%r86; mov.u32 %r64,2; $L10: neg.f32 %r83,%r31; mov.f32 %r31,%r85; .loc 1 67 10 cvt.rn.f32.s32 %r118,%r64; .loc 1 67 22 div.rn.f32 %r119,%r118,%r99; .loc 1 67 5 fma.rn.f32 %r85,%r119,%r85,%r83; .loc 1 65 15 add.u32 %r64,%r64,2; setp.ne.u32 %r120,%r56,%r64; @ %r120 bra $L10; bra $L7; $L42: .loc 1 71 8 setp.gt.s32 %r121,%r59,813694975; @ %r121 bra $L11; .loc 1 75 5 setp.gt.s32 %r122,%r86,33; @ %r122 bra $L27; .loc 1 78 12 mul.f32 %r77,%r99,0f3f000000; add.u32 %r51,%r86,1; .loc 1 78 30 mov.f32 %r79,%r77; .loc 1 79 13 mov.f32 %r78,0f3f800000; .loc 1 79 19 mov.u32 %r50,2; $L12: .loc 1 80 9 cvt.rn.f32.s32 %r123,%r50; .loc 1 80 6 mul.f32 %r78,%r78,%r123; .loc 1 81 6 mul.f32 %r79,%r79,%r77; .loc 1 79 28 add.u32 %r50,%r50,1; .loc 1 79 23 setp.ne.u32 %r124,%r51,%r50; @ %r124 bra $L12; .loc 1 83 9 div.rn.f32 %r85,%r79,%r78; bra $L7; $L11: .loc 1 117 10 add.u32 %r33,%r86,%r86; .loc 1 117 13 cvt.rn.f32.s32 %r126,%r33; .loc 1 117 6 div.rn.f32 %r35,%r126,%r99; .loc 1 117 26 mov.f32 %r127,0f40000000; div.rn.f32 %r62,%r127,%r99; .loc 1 118 14 add.f32 %r75,%r35,%r62; .loc 1 118 24 fma.rn.f32 %r63,%r35,%r75,0fbf800000; .loc 1 119 11 setp.lt.f32 %r128,%r63,0f4e6e6b28; @ ! %r128 bra $L43; .loc 1 118 45 mov.u32 %r74,1; bra $L15; $L28: .loc 1 123 7 mov.f32 %r63,%r76; $L15: .loc 1 120 6 add.u32 %r74,%r74,1; .loc 1 120 14 add.f32 %r75,%r75,%r62; .loc 1 121 8 neg.f32 %r129,%r35; fma.rn.f32 %r76,%r75,%r63,%r129; mov.f32 %r35,%r63; .loc 1 119 11 setp.lt.f32 %r130,%r76,0f4e6e6b28; @ %r130 bra $L28; bra $L44; $L43: .loc 1 126 23 add.u32 %r131,%r86,1; .loc 1 126 17 add.u32 %r48,%r131,%r131; bra $L17; $L44: .loc 1 126 23 add.u32 %r133,%r74,%r86; .loc 1 126 17 add.u32 %r48,%r133,%r133; $L17: .loc 1 126 8 mov.f32 %r53,0f00000000; .loc 1 126 44 mov.f32 %r137,0f3f800000; $L18: .loc 1 126 52 cvt.rn.f32.s32 %r135,%r48; div.rn.f32 %r136,%r135,%r99; .loc 1 126 54 sub.f32 %r39,%r136,%r53; .loc 1 126 44 div.rn.f32 %r53,%r137,%r39; .loc 1 126 36 add.u32 %r48,%r48,-2; .loc 1 126 29 setp.le.s32 %r138,%r33,%r48; @ %r138 bra $L18; .loc 1 139 13 mul.f32 %r140,%r27,%r62; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r140; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r141,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r141; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r143,[%value_in]; } .loc 1 141 16 add.u32 %r73,%r86,-1; .loc 1 141 33 add.u32 %r80,%r33,-2; .loc 1 139 7 mul.f32 %r144,%r27,%r143; .loc 1 140 5 setp.lt.f32 %r145,%r144,0f42b17180; @ ! %r145 bra $L45; .loc 1 141 23 cvt.rn.f32.s32 %r72,%r80; .loc 1 126 44 mov.f32 %r82,%r53; .loc 1 128 5 mov.f32 %r84,0f3f800000; .loc 1 146 7 mov.f32 %r147,0f40000000; bra $L21; $L29: .loc 1 144 7 mov.f32 %r84,%r49; $L21: .loc 1 143 6 mul.f32 %r146,%r84,%r72; .loc 1 144 10 div.rn.f32 %r43,%r146,%r99; .loc 1 144 7 sub.f32 %r49,%r43,%r82; .loc 1 146 7 sub.f32 %r72,%r72,%r147; .loc 1 141 42 add.u32 %r73,%r73,-1; mov.f32 %r82,%r84; .loc 1 141 38 setp.ne.u32 %r148,%r73,0; @ %r148 bra $L29; bra $L22; $L45: .loc 1 149 23 cvt.rn.f32.s32 %r70,%r80; .loc 1 126 44 mov.f32 %r47,%r53; .loc 1 128 5 mov.f32 %r49,0f3f800000; .loc 1 154 7 mov.f32 %r150,0f40000000; .loc 1 159 11 mov.f32 %r158,%r49; $L25: .loc 1 151 6 mul.f32 %r149,%r49,%r70; .loc 1 152 10 div.rn.f32 %r44,%r149,%r99; .loc 1 152 7 sub.f32 %r69,%r44,%r47; .loc 1 154 7 sub.f32 %r70,%r70,%r150; .loc 1 156 6 setp.gt.f32 %r151,%r69,0f501502f9; @ ! %r151 bra $L46; .loc 1 157 10 div.rn.f32 %r47,%r49,%r69; .loc 1 158 10 div.rn.f32 %r53,%r53,%r69; .loc 1 159 11 mov.f32 %r49,%r158; bra $L23; $L46: mov.f32 %r47,%r49; .loc 1 152 7 mov.f32 %r49,%r69; $L23: .loc 1 149 42 add.u32 %r73,%r73,-1; .loc 1 149 38 setp.ne.u32 %r152,%r73,0; @ %r152 bra $L25; $L22: .loc 1 163 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r154,[%value_in]; } .loc 1 163 13 mul.f32 %r155,%r154,%r53; .loc 1 163 9 div.rn.f32 %r85,%r155,%r49; bra $L7; $L26: .loc 1 60 8 mov.f32 %r85,0f00000000; bra $L7; $L27: mov.f32 %r85,0f00000000; $L7: .loc 1 166 4 setp.eq.u32 %r156,%r60,0; @ %r156 bra $L1; .loc 1 166 20 neg.f32 %r85,%r85; $L1: .loc 1 167 1 mov.f32 %value,%r85; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ieee754_ynf .visible .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r29; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r36; .reg .u32 %r41; .reg .f32 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .f32 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .f32 %r58; .reg .pred %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; .reg .f32 %r65; .reg .f32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u16 %r85; .reg .pred %r86; .reg .pred %r87; .reg .u16 %r89; mov.u32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 180 2 mov.b32 %r33,%r46; .loc 1 181 5 and.b32 %r34,%r33,2147483647; .loc 1 183 4 setp.le.s32 %r47,%r34,2139095040; @ %r47 bra $L48; .loc 1 183 35 add.f32 %r44,%r46,%r46; bra $L47; $L48: .loc 1 184 4 setp.ne.u32 %r48,%r34,0; @ %r48 bra $L50; .loc 1 184 39 mov.f32 %r49,0fbf800000; div.rn.f32 %r44,%r49,0f00000000; bra $L47; $L50: .loc 1 185 4 setp.ge.s32 %r50,%r33,0; @ %r50 bra $L51; .loc 1 185 22 mov.f32 %r51,0f00000000; div.rn.f32 %r44,%r51,%r51; bra $L47; $L51: .loc 1 187 4 setp.ge.s32 %r52,%r45,0; @ %r52 bra $L52; .loc 1 188 5 neg.s32 %r45,%r45; .loc 1 189 20 add.u32 %r53,%r45,%r45; and.b32 %r54,%r53,2; .loc 1 189 8 mov.u32 %r55,1; sub.u32 %r35,%r55,%r54; bra $L53; $L52: .loc 1 191 4 setp.ne.u32 %r56,%r45,0; @ %r56 bra $L57; .loc 1 191 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r58,[%value_in]; } mov.f32 %r44,%r58; bra $L47; $L57: .loc 1 186 7 mov.u32 %r35,1; $L53: .loc 1 192 4 setp.ne.u32 %r59,%r45,1; @ %r59 bra $L54; .loc 1 192 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r61,[%value_in]; } .loc 1 192 22 cvt.rn.f32.s32 %r62,%r35; mul.f32 %r44,%r62,%r61; bra $L47; $L54: .loc 1 193 4 setp.eq.u32 %r63,%r34,2139095040; @ %r63 bra $L58; .loc 1 195 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r65,[%value_in]; } mov.f32 %r29,%r65; .loc 1 196 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r67,[%value_in]; } mov.f32 %r36,%r67; .loc 1 199 13 mov.b32 %r68,%r36; setp.eq.u32 %r69,%r68,-8388608; @ %r69 bra $L59; .loc 1 199 7 mov.u32 %r41,1; bra $L56; $L60: .loc 1 201 8 mov.f32 %r36,%r44; $L56: .loc 1 201 20 add.u32 %r70,%r41,%r41; .loc 1 201 11 cvt.rn.f32.s32 %r71,%r70; .loc 1 201 23 div.rn.f32 %r72,%r71,%r46; .loc 1 201 8 neg.f32 %r73,%r29; fma.rn.f32 %r44,%r72,%r36,%r73; .loc 1 199 31 add.u32 %r41,%r41,1; mov.f32 %r29,%r36; .loc 1 199 11 set.u32.lt.s32 %r75,%r41,%r45; neg.s32 %r76,%r75; mov.u32 %r74,%r76; .loc 1 199 17 mov.b32 %r78,%r44; set.u32.ne.u32 %r79,%r78,-8388608; neg.s32 %r80,%r79; mov.u32 %r77,%r80; .loc 1 199 13 cvt.u16.u8 %r89,%r74; mov.u16 %r82,%r89; cvt.u16.u8 %r89,%r77; mov.u16 %r83,%r89; and.b16 %r81,%r82,%r83; cvt.u32.u16 %r84,%r81; cvt.u16.u8 %r85,%r84; setp.ne.u16 %r86,%r85,0; @ %r86 bra $L60; bra $L55; $L59: .loc 1 196 6 mov.f32 %r44,%r67; $L55: .loc 1 205 4 setp.eq.u32 %r87,%r35,1; @ %r87 bra $L47; .loc 1 205 35 neg.f32 %r44,%r44; bra $L47; $L58: .loc 1 193 39 mov.f32 %r44,0f00000000; $L47: .loc 1 206 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_log.o/ 0 0 0 644 5357 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .visible .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_log.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_logf .visible .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r45; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .f32 %r65; .reg .u32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .pred %r91; .reg .pred %r92; .reg .f32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .f32 %r107; .reg .pred %r109; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .f32 %r116; .reg .pred %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .pred %r126; .reg .f32 %r128; .reg .f32 %r129; mov.f32 %r85,%ar0; .loc 1 51 2 mov.b32 %r51,%r85; .loc 1 54 6 and.b32 %r86,%r51,2147483647; .loc 1 54 5 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L2; .loc 1 55 19 mov.f32 %r88,0fcc000000; div.rn.f32 %r84,%r88,0f00000000; bra $L1; $L2: .loc 1 56 12 setp.ge.s32 %r89,%r51,0; @ %r89 bra $L4; .loc 1 56 28 sub.f32 %r90,%r85,%r85; .loc 1 56 31 div.rn.f32 %r84,%r90,0f00000000; bra $L1; $L4: .loc 1 57 5 setp.le.s32 %r91,%r51,2139095039; @ %r91 bra $L5; .loc 1 57 40 add.f32 %r84,%r85,%r85; bra $L1; $L5: .loc 1 58 5 setp.gt.s32 %r92,%r51,8388607; @ %r92 bra $L13; .loc 1 59 17 mul.f32 %r93,%r85,0f4c000000; .loc 1 60 6 mov.b32 %r51,%r93; .loc 1 59 8 mov.u32 %r50,-25; bra $L6; $L13: .loc 1 53 3 mov.u32 %r50,0; $L6: .loc 1 62 10 shr.s32 %r94,%r51,23; .loc 1 62 15 add.u32 %r95,%r94,-127; .loc 1 63 5 and.b32 %r56,%r51,8388607; .loc 1 64 9 add.u32 %r96,%r56,4913952; .loc 1 64 4 and.b32 %r57,%r96,8388608; .loc 1 66 9 shr.u32 %r97,%r96,23; .loc 1 66 4 vadd.u32.u32.u32.add %r59,%r50,%r95,%r97; .loc 1 65 2 xor.b32 %r98,%r57,1065353216; or.b32 %r99,%r98,%r56; .loc 1 67 4 mov.b32 %r100,%r99; mov.f32 %r101,0f3f800000; sub.f32 %r60,%r100,%r101; .loc 1 68 20 add.u32 %r102,%r56,15; .loc 1 68 25 and.b32 %r103,%r102,8388592; .loc 1 68 4 setp.ne.u32 %r104,%r103,0; @ %r104 bra $L7; .loc 1 69 14 setp.neu.f32 %r105,%r60,0f00000000; @ %r105 bra $L8; .loc 1 69 28 setp.eq.u32 %r106,%r59,0; @ %r106 bra $L14; .loc 1 69 57 cvt.rn.f32.s32 %r73,%r59; .loc 1 70 52 mul.f32 %r107,%r73,0f3717f7d1; .loc 1 70 49 fma.rn.f32 %r84,%r73,0f3f317180,%r107; bra $L1; $L8: .loc 1 71 11 mul.f32 %r33,%r60,%r60; .loc 1 71 25 fma.rn.f32 %r34,%r60,0fbeaaaaab,0f3f000000; .loc 1 71 8 mul.f32 %r71,%r33,%r34; .loc 1 72 8 setp.ne.u32 %r109,%r59,0; @ %r109 bra $L9; .loc 1 72 23 sub.f32 %r84,%r60,%r71; bra $L1; $L9: .loc 1 72 35 cvt.rn.f32.s32 %r72,%r59; .loc 1 73 32 fma.rn.f32 %r35,%r72,0fb717f7d1,%r71; .loc 1 73 43 sub.f32 %r111,%r35,%r60; .loc 1 73 28 neg.f32 %r112,%r111; fma.rn.f32 %r84,%r72,0f3f317180,%r112; bra $L1; $L7: .loc 1 75 20 add.f32 %r113,%r60,0f40000000; .loc 1 75 5 div.rn.f32 %r61,%r60,%r113; .loc 1 76 5 cvt.rn.f32.s32 %r62,%r59; .loc 1 77 4 mul.f32 %r63,%r61,%r61; .loc 1 78 4 add.u32 %r64,%r56,-3187664; .loc 1 79 4 mul.f32 %r65,%r63,%r63; .loc 1 81 19 fma.rn.f32 %r38,%r65,0f3e1cd04f,0f3e638e29; .loc 1 81 12 fma.rn.f32 %r39,%r38,%r65,0f3ecccccd; .loc 1 82 26 fma.rn.f32 %r40,%r65,0f3e178897,0f3e3a3325; .loc 1 82 19 fma.rn.f32 %r41,%r40,%r65,0f3e924925; .loc 1 82 12 fma.rn.f32 %r42,%r41,%r65,0f3f2aaaab; .loc 1 80 4 mov.u32 %r115,3523208; sub.u32 %r114,%r115,%r56; .loc 1 83 4 or.b32 %r68,%r114,%r64; .loc 1 82 4 mul.f32 %r116,%r42,%r63; .loc 1 84 4 fma.rn.f32 %r69,%r39,%r65,%r116; .loc 1 85 4 setp.le.s32 %r117,%r68,0; @ %r117 bra $L10; .loc 1 86 21 mul.f32 %r118,%r60,0f3f000000; .loc 1 86 10 mul.f32 %r70,%r118,%r60; .loc 1 87 37 add.f32 %r119,%r69,%r70; .loc 1 87 31 mul.f32 %r81,%r119,%r61; .loc 1 87 8 setp.ne.u32 %r120,%r59,0; @ %r120 bra $L11; .loc 1 87 29 sub.f32 %r121,%r70,%r81; .loc 1 87 23 sub.f32 %r84,%r60,%r121; bra $L1; $L11: .loc 1 88 43 fma.rn.f32 %r45,%r62,0f3717f7d1,%r81; .loc 1 88 31 sub.f32 %r122,%r70,%r45; .loc 1 88 55 sub.f32 %r123,%r122,%r60; .loc 1 88 24 neg.f32 %r124,%r123; fma.rn.f32 %r84,%r62,0f3f317180,%r124; bra $L1; $L10: .loc 1 90 28 sub.f32 %r125,%r60,%r69; .loc 1 90 25 mul.f32 %r83,%r125,%r61; .loc 1 90 8 setp.ne.u32 %r126,%r59,0; @ %r126 bra $L12; .loc 1 90 23 sub.f32 %r84,%r60,%r83; bra $L1; $L12: .loc 1 91 34 fma.rn.f32 %r48,%r62,0fb717f7d1,%r83; .loc 1 91 45 sub.f32 %r128,%r48,%r60; .loc 1 91 24 neg.f32 %r129,%r128; fma.rn.f32 %r84,%r62,0f3f317180,%r129; bra $L1; $L14: .loc 1 69 42 mov.f32 %r84,0f00000000; $L1: .loc 1 93 1 mov.f32 %value,%r84; st.param.f32 [%value_out],%value; ret; } /215 0 0 0 644 2518 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10f .visible .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_log10f .visible .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r39; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .f32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .f32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .f32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .f32 %r63; .reg .f32 %r64; mov.f32 %r46,%ar0; .loc 1 44 2 mov.b32 %r35,%r46; .loc 1 47 13 and.b32 %r47,%r35,2147483647; .loc 1 47 12 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L2; .loc 1 48 26 mov.f32 %r49,0fcc000000; div.rn.f32 %r45,%r49,0f00000000; bra $L1; $L2: .loc 1 49 12 setp.ge.s32 %r50,%r35,0; @ %r50 bra $L4; .loc 1 49 28 sub.f32 %r51,%r46,%r46; .loc 1 49 31 div.rn.f32 %r45,%r51,0f00000000; bra $L1; $L4: .loc 1 50 5 setp.le.s32 %r52,%r35,2139095039; @ %r52 bra $L5; .loc 1 50 40 add.f32 %r45,%r46,%r46; bra $L1; $L5: .loc 1 51 12 setp.gt.s32 %r53,%r35,8388607; @ %r53 bra $L7; .loc 1 52 24 mul.f32 %r54,%r46,0f4c000000; .loc 1 53 6 mov.b32 %r35,%r54; .loc 1 52 15 mov.u32 %r34,-25; bra $L6; $L7: .loc 1 46 10 mov.u32 %r34,0; $L6: .loc 1 55 10 shr.s32 %r55,%r35,23; .loc 1 55 15 add.u32 %r56,%r55,-127; .loc 1 55 4 add.u32 %r39,%r56,%r34; .loc 1 56 33 shr.u32 %r40,%r39,31; .loc 1 57 17 and.b32 %r28,%r35,8388607; .loc 1 58 23 add.u32 %r57,%r39,%r40; .loc 1 58 12 cvt.rn.f32.s32 %r42,%r57; .loc 1 57 36 mov.u32 %r60,127; sub.u32 %r59,%r60,%r40; .loc 1 57 39 shl.b32 %r61,%r59,23; .loc 1 57 12 or.b32 %r62,%r61,%r28; .loc 1 60 28 mov.b32 %r58,%r62; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r63,[%value_in]; } .loc 1 60 27 mul.f32 %r64,%r63,0f3ede5bd9; .loc 1 60 5 fma.rn.f32 %r44,%r42,0f355427db,%r64; .loc 1 61 11 fma.rn.f32 %r45,%r42,0f3e9a2080,%r44; $L1: .loc 1 62 1 mov.f32 %value,%r45; st.param.f32 [%value_out],%value; ret; } lib_a-ef_pow.o/ 0 0 0 644 22216 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_powf .visible .func (.param .f32 %value_out) __ieee754_powf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_pow.c" .file 2 "../../../../../../newlib/libm/math/../common/math_config.h" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflowf .extern .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_powf .visible .func (.param .f32 %value_out) __ieee754_powf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .u32 %r28; .reg .f32 %r34; .reg .u32 %r37; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .u32 %r45; .reg .f32 %r46; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r68; .reg .u32 %r69; .reg .f32 %r71; .reg .u32 %r73; .reg .f32 %r74; .reg .f32 %r76; .reg .f32 %r77; .reg .u32 %r79; .reg .f32 %r82; .reg .u32 %r109; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r139; .reg .u32 %r142; .reg .u32 %r147; .reg .u32 %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r154; .reg .f32 %r155; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r161; .reg .f32 %r163; .reg .f32 %r164; .reg .f32 %r165; .reg .f32 %r167; .reg .f32 %r168; .reg .f32 %r170; .reg .f32 %r172; .reg .f32 %r173; .reg .f32 %r174; .reg .f32 %r175; .reg .f32 %r176; .reg .u32 %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r183; .reg .f32 %r184; .reg .f32 %r185; .reg .f32 %r186; .reg .f32 %r187; .reg .f32 %r189; .reg .u32 %r190; .reg .u32 %r191; .reg .u32 %r196; .reg .u32 %r202; .reg .u32 %r204; .reg .u32 %r205; .reg .u32 %r215; .reg .u32 %r219; .reg .u32 %r222; .reg .u32 %r237; .reg .u32 %r241; .reg .u32 %r244; .reg .f32 %r247; .reg .u32 %r248; .reg .f32 %r249; .reg .f32 %r250; .reg .u32 %r252; .reg .f32 %r253; .reg .f32 %r254; .reg .f32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .pred %r259; .reg .u32 %r260; .reg .u32 %r261; .reg .u32 %r262; .reg .u32 %r263; .reg .u32 %r264; .reg .u32 %r265; .reg .u16 %r266; .reg .u16 %r267; .reg .u16 %r268; .reg .u32 %r269; .reg .u16 %r270; .reg .pred %r271; .reg .pred %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .pred %r275; .reg .pred %r277; .reg .pred %r278; .reg .u32 %r279; .reg .u32 %r281; .reg .u32 %r282; .reg .pred %r283; .reg .u32 %r284; .reg .u32 %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .pred %r289; .reg .pred %r290; .reg .pred %r291; .reg .pred %r292; .reg .pred %r294; .reg .u32 %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .u16 %r302; .reg .u16 %r303; .reg .u16 %r304; .reg .u32 %r305; .reg .u16 %r306; .reg .pred %r307; .reg .f32 %r309; .reg .f32 %r311; .reg .u32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r317; .reg .u32 %r318; .reg .u16 %r319; .reg .u16 %r320; .reg .u16 %r321; .reg .u32 %r322; .reg .u16 %r323; .reg .pred %r324; .reg .pred %r325; .reg .u32 %r328; .reg .u32 %r329; .reg .pred %r330; .reg .pred %r331; .reg .u32 %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .u32 %r338; .reg .f32 %r339; .reg .u32 %r340; .reg .f32 %r341; .reg .pred %r342; .reg .pred %r343; .reg .f32 %r344; .reg .f32 %r346; .reg .f32 %r347; .reg .f32 %r349; .reg .u32 %r350; .reg .u32 %r352; .reg .pred %r353; .reg .f32 %r354; .reg .u32 %r355; .reg .u32 %r356; .reg .pred %r357; .reg .pred %r358; .reg .f32 %r359; .reg .u32 %r361; .reg .u32 %r362; .reg .u32 %r363; .reg .u32 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .f32 %r367; .reg .f32 %r368; .reg .f32 %r370; .reg .f32 %r371; .reg .f32 %r372; .reg .u32 %r373; .reg .f32 %r375; .reg .f32 %r376; .reg .f32 %r377; .reg .f32 %r378; .reg .u32 %r379; .reg .f32 %r381; .reg .f32 %r382; .reg .f32 %r383; .reg .f32 %r384; .reg .u32 %r385; .reg .f32 %r387; .reg .f32 %r388; .reg .u32 %r389; .reg .u32 %r390; .reg .pred %r391; .reg .u32 %r392; .reg .f32 %r393; .reg .f32 %r394; .reg .pred %r395; .reg .pred %r396; .reg .u32 %r399; .reg .u32 %r400; .reg .f32 %r401; .reg .pred %r402; .reg .f32 %r403; .reg .f32 %r404; .reg .pred %r405; .reg .u32 %r408; .reg .u32 %r409; .reg .f32 %r410; .reg .pred %r411; .reg .u32 %r414; .reg .u32 %r415; .reg .f32 %r416; .reg .pred %r417; .reg .f32 %r418; .reg .pred %r419; .reg .u32 %r422; .reg .u32 %r423; .reg .f32 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .u32 %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u32 %r430; .reg .u32 %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .u32 %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .u32 %r437; .reg .f32 %r438; .reg .u32 %r439; .reg .f32 %r440; .reg .f32 %r441; .reg .f32 %r442; .reg .f32 %r444; .reg .f32 %r445; .reg .f32 %r446; .reg .f32 %r447; .reg .f32 %r448; .reg .f32 %r449; .reg .pred %r451; .reg .f32 %r454; .reg .u32 %r460; .reg .u32 %r461; .reg .u32 %r462; .reg .u32 %r463; .reg .u32 %r464; .reg .u32 %r465; .reg .u32 %r466; .reg .u32 %r467; .reg .pred %r468; .reg .u32 %r469; .reg .u32 %r470; .reg .u32 %r471; .reg .u32 %r472; .reg .u32 %r473; .reg .u32 %r474; .reg .u32 %r475; .reg .u32 %r476; .reg .u32 %r477; .reg .u32 %r478; .reg .u32 %r479; .reg .pred %r480; .reg .u32 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u32 %r492; .reg .pred %r493; .reg .u16 %r494; mov.f32 %r254,%ar0; mov.f32 %r255,%ar1; .loc 1 71 2 mov.b32 %r196,%r254; .loc 1 72 2 mov.b32 %r26,%r255; .loc 1 73 26 and.b32 %r139,%r26,2147483647; .loc 1 76 4 setp.ne.u32 %r256,%r139,0; @ %r256 bra $L2; .loc 2 175 18 xor.b32 %r257,%r196,4194304; .loc 2 175 12 add.u32 %r258,%r257,%r257; .loc 1 77 9 setp.le.u32 %r259,%r258,-8388608; @ %r259 bra $L42; $L5: .loc 1 77 43 add.f32 %r253,%r254,%r255; bra $L1; $L2: .loc 1 73 5 and.b32 %r135,%r196,2147483647; .loc 1 82 5 set.u32.gt.s32 %r261,%r135,2139095040; neg.s32 %r262,%r261; mov.u32 %r260,%r262; .loc 1 83 5 set.u32.gt.s32 %r264,%r139,2139095040; neg.s32 %r265,%r264; mov.u32 %r263,%r265; .loc 1 82 26 cvt.u16.u8 %r494,%r260; mov.u16 %r267,%r494; cvt.u16.u8 %r494,%r263; mov.u16 %r268,%r494; or.b16 %r266,%r267,%r268; cvt.u32.u16 %r269,%r266; .loc 1 82 4 cvt.u16.u8 %r270,%r269; setp.eq.u16 %r271,%r270,0; @ %r271 bra $L4; .loc 1 84 8 setp.ne.u32 %r272,%r196,1065353216; @ %r272 bra $L5; .loc 2 175 18 xor.b32 %r273,%r26,4194304; .loc 2 175 12 add.u32 %r274,%r273,%r273; .loc 1 84 24 setp.le.u32 %r275,%r274,-8388608; @ %r275 bra $L43; bra $L5; $L4: .loc 1 94 4 setp.ge.s32 %r493,%r196,0; @ %r493 bra $L44; .loc 1 95 8 setp.gt.s32 %r277,%r139,1266679807; @ %r277 bra $L45; .loc 1 96 13 setp.le.s32 %r278,%r139,1065353215; @ %r278 bra $L46; .loc 1 97 10 shr.s32 %r279,%r139,23; .loc 1 98 14 mov.u32 %r281,150; sub.u32 %r28,%r281,%r279; .loc 1 98 5 shr.s32 %r142,%r139,%r28; .loc 1 99 8 shl.b32 %r282,%r142,%r28; .loc 1 99 5 setp.ne.u32 %r283,%r282,%r139; @ %r283 bra $L47; .loc 1 99 36 and.b32 %r284,%r142,1; .loc 1 99 30 mov.u32 %r285,2; sub.u32 %r131,%r285,%r284; bra $L8; $L44: .loc 1 93 10 mov.u32 %r131,0; bra $L6; $L45: .loc 1 95 32 mov.u32 %r131,2; $L6: .loc 1 104 5 setp.ne.u32 %r286,%r139,2139095040; @ %r286 bra $L8; .loc 1 105 9 setp.eq.u32 %r287,%r135,1065353216; @ %r287 bra $L48; .loc 1 107 14 setp.le.s32 %r288,%r135,1065353216; @ %r288 bra $L9; .loc 1 108 27 setp.lt.s32 %r289,%r26,0; selp.f32 %r253,0f00000000,%r255,%r289; bra $L1; $L9: .loc 1 110 26 setp.ge.s32 %r290,%r26,0; @ %r290 bra $L50; neg.f32 %r253,%r255; bra $L1; $L8: .loc 1 112 4 setp.ne.u32 %r291,%r139,1065353216; @ %r291 bra $L10; .loc 1 113 8 setp.ge.s32 %r292,%r26,0; @ %r292 bra $L51; .loc 1 113 25 rcp.rn.f32 %r253,%r254; bra $L1; $L10: .loc 1 115 4 setp.ne.u32 %r294,%r26,1073741824; @ %r294 bra $L11; .loc 1 115 29 mul.f32 %r253,%r254,%r254; bra $L1; $L11: .loc 1 117 8 not.b32 %r296,%r196; shr.u32 %r297,%r296,31; mov.u32 %r298,%r297; .loc 1 116 4 set.u32.eq.u32 %r300,%r26,1056964608; neg.s32 %r301,%r300; mov.u32 %r299,%r301; .loc 1 117 8 cvt.u16.u8 %r494,%r298; mov.u16 %r303,%r494; cvt.u16.u8 %r494,%r299; mov.u16 %r304,%r494; and.b16 %r302,%r303,%r304; cvt.u32.u16 %r305,%r302; cvt.u16.u8 %r306,%r305; setp.eq.u16 %r307,%r306,0; @ %r307 bra $L12; .loc 1 118 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r254; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r309,[%value_in]; } mov.f32 %r253,%r309; bra $L1; $L12: .loc 1 121 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r254; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r311,[%value_in]; } mov.f32 %r253,%r311; .loc 1 123 53 and.b32 %r312,%r196,1073741823; set.u32.eq.u32 %r314,%r312,1065353216; neg.s32 %r315,%r314; mov.u32 %r313,%r315; .loc 1 123 32 set.u32.eq.u32 %r317,%r135,0; neg.s32 %r318,%r317; mov.u32 %r316,%r318; .loc 1 123 53 cvt.u16.u8 %r494,%r313; mov.u16 %r320,%r494; cvt.u16.u8 %r494,%r316; mov.u16 %r321,%r494; or.b16 %r319,%r320,%r321; cvt.u32.u16 %r322,%r319; cvt.u16.u8 %r323,%r322; setp.eq.u16 %r324,%r323,0; @ %r324 bra $L13; .loc 1 125 8 setp.ge.s32 %r325,%r26,0; @ %r325 bra $L14; .loc 1 125 17 rcp.rn.f32 %r253,%r253; $L14: .loc 1 126 8 @ %r493 bra $L1; .loc 1 127 10 add.u32 %r328,%r135,-1065353216; .loc 1 127 22 or.b32 %r329,%r328,%r131; .loc 1 127 5 setp.ne.u32 %r330,%r329,0; @ %r330 bra $L15; .loc 1 128 13 sub.f32 %r34,%r253,%r253; .loc 1 128 9 div.rn.f32 %r253,%r34,%r34; bra $L1; $L15: .loc 1 129 12 setp.ne.u32 %r331,%r131,1; @ %r331 bra $L1; .loc 1 130 9 neg.f32 %r253,%r253; bra $L1; $L13: .loc 1 136 27 set.u32.ge.s32 %r37,%r196,0; .loc 1 136 30 or.b32 %r333,%r131,%r37; .loc 1 136 4 setp.ne.u32 %r334,%r333,0; @ %r334 bra $L16; .loc 1 136 52 sub.f32 %r40,%r254,%r254; .loc 1 136 55 div.rn.f32 %r253,%r40,%r40; bra $L1; $L16: .loc 1 139 4 setp.le.s32 %r335,%r139,1291845632; @ %r335 bra $L17; .loc 1 141 8 setp.gt.s32 %r336,%r135,1065353203; @ %r336 bra $L18; .loc 1 141 55 setp.ge.s32 %r337,%r26,0; @ %r337 bra $L19; $L21: .loc 1 141 39 mov.u32 %r338,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r338; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r339,[%value_in]; } mov.f32 %r253,%r339; bra $L1; $L19: .loc 1 141 56 mov.u32 %r340,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r340; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r341,[%value_in]; } mov.f32 %r253,%r341; bra $L1; $L18: .loc 1 142 8 setp.le.s32 %r342,%r135,1065353223; @ %r342 bra $L20; .loc 1 142 55 setp.gt.s32 %r343,%r26,0; @ %r343 bra $L21; bra $L19; $L20: .loc 1 145 8 mov.f32 %r344,0f3f800000; sub.f32 %r170,%r311,%r344; .loc 1 146 12 mul.f32 %r41,%r170,%r170; .loc 1 146 52 fma.rn.f32 %r42,%r170,0fbe800000,0f3eaaaaab; .loc 1 146 27 neg.f32 %r346,%r42; fma.rn.f32 %r43,%r346,%r170,0f3f000000; .loc 1 146 8 mul.f32 %r347,%r41,%r43; .loc 1 148 8 mul.f32 %r349,%r347,0fbfb8aa3b; fma.rn.f32 %r172,%r170,0f36eca570,%r349; .loc 1 149 9 fma.rn.f32 %r173,%r170,0f3fb8aa00,%r172; .loc 1 151 6 mov.b32 %r350,%r173; and.b32 %r45,%r350,-4096; mov.b32 %r128,%r45; .loc 1 152 16 fma.rn.f32 %r46,%r170,0fbfb8aa00,%r128; .loc 1 152 9 sub.f32 %r129,%r172,%r46; bra $L22; $L17: .loc 1 157 8 and.b32 %r352,%r196,2139095040; setp.ne.u32 %r353,%r352,0; @ %r353 bra $L52; .loc 1 158 7 mul.f32 %r354,%r311,0f4b800000; .loc 1 158 26 mov.b32 %r135,%r354; .loc 1 158 19 mov.u32 %r132,-24; bra $L23; $L52: .loc 1 155 8 mov.u32 %r132,0; $L23: .loc 1 159 17 shr.s32 %r355,%r135,23; .loc 1 159 22 add.u32 %r356,%r355,-127; .loc 1 159 9 add.u32 %r133,%r356,%r132; .loc 1 160 9 and.b32 %r147,%r135,8388607; .loc 1 162 9 or.b32 %r136,%r147,1065353216; .loc 1 163 8 setp.le.s32 %r357,%r147,1885297; @ %r357 bra $L53; .loc 1 164 13 setp.le.s32 %r358,%r147,6140886; @ %r358 bra $L54; .loc 1 165 17 add.u32 %r133,%r133,1; .loc 1 165 24 add.u32 %r136,%r136,-8388608; mov.f32 %r250,0f00000000; mov.f32 %r249,%r250; mov.u32 %r248,0; mov.f32 %r247,0f3f800000; bra $L24; $L53: mov.f32 %r250,0f00000000; mov.f32 %r249,%r250; mov.u32 %r248,0; mov.f32 %r247,0f3f800000; bra $L24; $L54: mov.f32 %r250,0f3f15c000; mov.f32 %r249,0f35d1cfdc; mov.u32 %r248,2097152; mov.f32 %r247,0f3fc00000; $L24: .loc 1 166 6 mov.b32 %r149,%r136; .loc 1 169 8 sub.f32 %r150,%r149,%r247; .loc 1 170 17 add.f32 %r359,%r149,%r247; .loc 1 170 8 rcp.rn.f32 %r151,%r359; .loc 1 171 8 mul.f32 %r152,%r150,%r151; .loc 1 174 6 mov.b32 %r362,%r152; and.b32 %r361,%r362,-4096; mov.b32 %r154,%r361; .loc 1 176 6 shr.s32 %r363,%r136,1; or.b32 %r364,%r363,536870912; add.u32 %r365,%r364,262144; add.u32 %r366,%r365,%r248; mov.b32 %r155,%r366; .loc 1 177 21 sub.f32 %r367,%r155,%r247; .loc 1 177 10 sub.f32 %r156,%r149,%r367; .loc 1 178 17 neg.f32 %r368,%r154; fma.rn.f32 %r58,%r368,%r155,%r150; .loc 1 178 26 fma.rn.f32 %r59,%r368,%r156,%r58; .loc 1 178 10 mul.f32 %r157,%r59,%r151; .loc 1 180 9 mul.f32 %r158,%r152,%r152; .loc 1 181 12 mul.f32 %r60,%r158,%r158; .loc 1 181 47 fma.rn.f32 %r61,%r158,0f3e53f142,0f3e6c3255; .loc 1 181 40 fma.rn.f32 %r62,%r61,%r158,0f3e8ba305; .loc 1 181 33 fma.rn.f32 %r63,%r62,%r158,0f3eaaaaab; .loc 1 181 26 fma.rn.f32 %r64,%r63,%r158,0f3edb6db7; .loc 1 181 19 fma.rn.f32 %r65,%r64,%r158,0f3f19999a; .loc 1 182 19 add.f32 %r370,%r152,%r154; .loc 1 182 14 mul.f32 %r371,%r370,%r157; .loc 1 182 8 fma.rn.f32 %r159,%r60,%r65,%r371; .loc 1 184 22 fma.rn.f32 %r68,%r154,%r154,0f40400000; .loc 1 184 10 add.f32 %r372,%r68,%r159; .loc 1 186 6 mov.b32 %r373,%r372; and.b32 %r69,%r373,-4096; mov.b32 %r161,%r69; .loc 1 187 19 mov.f32 %r376,0f40400000; sub.f32 %r375,%r161,%r376; .loc 1 187 31 fma.rn.f32 %r71,%r368,%r154,%r375; .loc 1 187 10 sub.f32 %r377,%r159,%r71; .loc 1 190 21 mul.f32 %r378,%r377,%r152; .loc 1 190 8 fma.rn.f32 %r163,%r157,%r161,%r378; .loc 1 192 10 fma.rn.f32 %r164,%r154,%r161,%r163; .loc 1 194 6 mov.b32 %r379,%r164; and.b32 %r73,%r379,-4096; mov.b32 %r165,%r73; .loc 1 195 18 fma.rn.f32 %r74,%r368,%r161,%r165; .loc 1 195 10 sub.f32 %r381,%r163,%r74; .loc 1 197 24 mul.f32 %r382,%r381,0f3f76384f; .loc 1 197 20 fma.rn.f32 %r76,%r165,0f369dc3a0,%r382; .loc 1 197 10 add.f32 %r167,%r76,%r249; .loc 1 199 8 cvt.rn.f32.s32 %r168,%r133; .loc 1 200 17 fma.rn.f32 %r77,%r165,0f3f763800,%r167; .loc 1 200 22 add.f32 %r383,%r77,%r250; .loc 1 200 9 add.f32 %r384,%r383,%r168; .loc 1 202 6 mov.b32 %r385,%r384; and.b32 %r79,%r385,-4096; mov.b32 %r128,%r79; .loc 1 203 20 sub.f32 %r387,%r128,%r168; .loc 1 203 23 sub.f32 %r388,%r387,%r250; .loc 1 203 32 fma.rn.f32 %r82,%r165,0fbf763800,%r388; .loc 1 203 9 sub.f32 %r129,%r167,%r82; $L22: .loc 1 207 38 add.u32 %r389,%r131,-1; .loc 1 207 30 or.b32 %r390,%r389,%r37; .loc 1 207 4 setp.ne.u32 %r391,%r390,0; .loc 1 208 8 selp.f32 %r130,0f3f800000,0fbf800000,%r391; .loc 1 212 2 and.b32 %r392,%r26,-4096; mov.b32 %r174,%r392; .loc 1 213 10 sub.f32 %r393,%r255,%r174; .loc 1 213 19 mul.f32 %r394,%r129,%r255; .loc 1 213 6 fma.rn.f32 %r175,%r393,%r128,%r394; .loc 1 214 6 mul.f32 %r127,%r128,%r174; .loc 1 215 4 add.f32 %r176,%r175,%r127; .loc 1 216 2 mov.b32 %r148,%r176; .loc 1 217 4 and.b32 %r178,%r148,2147483647; .loc 1 218 5 setp.le.s32 %r395,%r148,0; @ %r395 bra $L26; .loc 1 219 9 setp.le.s32 %r396,%r178,1124073472; @ %r396 bra $L27; .loc 1 220 17 set.u32.lt.f32 %r399,%r130,0f00000000; neg.s32 %r400,%r399; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r400; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r401,[%value_in]; } mov.f32 %r253,%r401; bra $L1; $L27: .loc 1 221 14 setp.ne.u32 %r402,%r178,1124073472; @ %r402 bra $L28; .loc 1 222 16 add.f32 %r403,%r175,0f3338aa3c; .loc 1 222 22 sub.f32 %r404,%r176,%r127; .loc 1 222 12 setp.gt.f32 %r405,%r403,%r404; @ ! %r405 bra $L59; .loc 1 222 35 set.u32.lt.f32 %r408,%r130,0f00000000; neg.s32 %r409,%r408; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r409; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r410,[%value_in]; } mov.f32 %r253,%r410; bra $L1; $L26: .loc 1 224 9 setp.le.s32 %r411,%r178,1125515264; @ %r411 bra $L31; .loc 1 225 17 set.u32.lt.f32 %r414,%r130,0f00000000; neg.s32 %r415,%r414; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r415; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r416,[%value_in]; } mov.f32 %r253,%r416; bra $L1; $L31: .loc 1 226 14 setp.ne.u32 %r417,%r178,1125515264; @ %r417 bra $L32; .loc 1 227 12 sub.f32 %r418,%r176,%r127; .loc 1 227 5 setp.ge.f32 %r419,%r418,%r175; @ ! %r419 bra $L60; .loc 1 227 25 set.u32.lt.f32 %r422,%r130,0f00000000; neg.s32 %r423,%r422; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r423; call (%value_in),__math_uflowf,(%out_arg1); ld.param.f32 %r424,[%value_in]; } mov.f32 %r253,%r424; bra $L1; $L32: .loc 1 234 4 setp.le.s32 %r425,%r178,1056964608; @ %r425 bra $L56; .loc 1 232 8 shr.s32 %r426,%r178,23; .loc 1 235 27 add.u32 %r427,%r426,-126; .loc 1 235 23 mov.u32 %r429,8388608; shr.s32 %r428,%r429,%r427; .loc 1 235 8 add.u32 %r244,%r428,%r148; .loc 1 236 25 shr.s32 %r430,%r244,23; and.b32 %r431,%r430,255; .loc 1 236 8 add.u32 %r241,%r431,-127; .loc 1 237 6 mov.u32 %r433,-8388608; shr.s32 %r432,%r433,%r241; and.b32 %r434,%r432,%r244; mov.b32 %r181,%r434; .loc 1 238 13 and.b32 %r435,%r244,8388607; .loc 1 238 25 or.b32 %r237,%r435,8388608; .loc 1 238 42 mov.u32 %r437,23; sub.u32 %r436,%r437,%r241; .loc 1 238 8 shr.s32 %r134,%r237,%r436; $L38: .loc 1 239 16 neg.s32 %r134,%r134; $L39: .loc 1 240 10 sub.f32 %r127,%r127,%r181; .loc 1 242 4 add.f32 %r438,%r175,%r127; .loc 1 243 2 mov.b32 %r148,%r438; .loc 1 254 9 shl.b32 %r252,%r134,23; bra $L35; $L56: mov.u32 %r252,0; .loc 1 233 4 mov.u32 %r134,%r252; $L35: .loc 1 244 2 and.b32 %r439,%r148,-4096; mov.b32 %r182,%r439; .loc 1 246 13 sub.f32 %r440,%r182,%r127; .loc 1 246 10 sub.f32 %r441,%r175,%r440; .loc 1 246 25 mul.f32 %r442,%r182,0f35bfbe8c; .loc 1 246 4 fma.rn.f32 %r183,%r441,0f3f317218,%r442; .loc 1 247 4 fma.rn.f32 %r184,%r182,0f3f317200,%r183; .loc 1 248 10 fma.rn.f32 %r115,%r182,0fbf317200,%r184; .loc 1 248 4 sub.f32 %r185,%r183,%r115; .loc 1 249 5 mul.f32 %r186,%r184,%r184; .loc 1 250 35 fma.rn.f32 %r116,%r186,0f3331bb4c,0fb5ddea0e; .loc 1 250 29 fma.rn.f32 %r117,%r116,%r186,0f388ab355; .loc 1 250 23 fma.rn.f32 %r118,%r117,%r186,0fbb360b61; .loc 1 250 17 fma.rn.f32 %r119,%r118,%r186,0f3e2aaaab; .loc 1 250 6 neg.f32 %r444,%r119; fma.rn.f32 %r187,%r444,%r186,%r184; .loc 1 251 9 mul.f32 %r445,%r184,%r187; .loc 1 251 17 mov.f32 %r447,0f40000000; sub.f32 %r446,%r187,%r447; .loc 1 251 13 div.rn.f32 %r122,%r445,%r446; .loc 1 251 25 fma.rn.f32 %r123,%r184,%r185,%r185; .loc 1 251 5 sub.f32 %r448,%r122,%r123; .loc 1 252 13 sub.f32 %r124,%r448,%r184; .loc 1 252 5 mov.f32 %r449,0f3f800000; sub.f32 %r189,%r449,%r124; .loc 1 253 2 mov.b32 %r190,%r189; .loc 1 254 4 add.u32 %r191,%r190,%r252; .loc 1 255 4 setp.gt.s32 %r451,%r191,8388607; @ %r451 bra $L36; .loc 1 255 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r189; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r454,[%value_in]; } mov.f32 %r126,%r454; bra $L37; $L36: .loc 1 256 7 mov.b32 %r126,%r191; $L37: .loc 1 257 10 mul.f32 %r253,%r126,%r130; bra $L1; $L42: .loc 1 78 13 mov.f32 %r253,0f3f800000; bra $L1; $L43: mov.f32 %r253,0f3f800000; bra $L1; $L48: mov.f32 %r253,0f3f800000; bra $L1; $L50: .loc 1 108 27 mov.f32 %r253,0f00000000; bra $L1; $L51: .loc 1 113 41 mov.f32 %r253,%r254; bra $L1; $L60: .loc 1 235 8 add.u32 %r179,%r148,32768; .loc 1 236 25 shr.s32 %r460,%r179,23; and.b32 %r461,%r460,255; .loc 1 236 8 add.u32 %r180,%r461,-127; .loc 1 237 6 mov.u32 %r463,-8388608; shr.s32 %r462,%r463,%r180; and.b32 %r464,%r462,%r179; mov.b32 %r181,%r464; .loc 1 238 13 and.b32 %r465,%r179,8388607; .loc 1 238 25 or.b32 %r109,%r465,8388608; .loc 1 238 42 mov.u32 %r467,23; sub.u32 %r466,%r467,%r180; .loc 1 238 8 shr.s32 %r134,%r109,%r466; .loc 1 239 8 setp.lt.s32 %r468,%r148,0; @ %r468 bra $L38; bra $L39; $L40: .loc 1 232 8 shr.s32 %r469,%r178,23; .loc 1 235 27 add.u32 %r470,%r469,-126; .loc 1 235 23 mov.u32 %r472,8388608; shr.s32 %r471,%r472,%r470; .loc 1 235 8 add.u32 %r205,%r471,%r148; .loc 1 236 25 shr.s32 %r473,%r205,23; .loc 1 236 8 add.u32 %r204,%r473,-127; .loc 1 237 6 mov.u32 %r475,-8388608; shr.s32 %r474,%r475,%r204; and.b32 %r476,%r474,%r205; mov.b32 %r181,%r476; .loc 1 238 13 and.b32 %r477,%r205,8388607; .loc 1 238 25 or.b32 %r202,%r477,8388608; .loc 1 238 42 mov.u32 %r479,23; sub.u32 %r478,%r479,%r204; .loc 1 238 8 shr.s32 %r134,%r202,%r478; bra $L39; $L28: .loc 1 234 4 setp.gt.s32 %r480,%r178,1056964608; @ %r480 bra $L40; mov.u32 %r252,0; .loc 1 233 4 mov.u32 %r134,%r252; bra $L35; $L46: .loc 1 93 10 mov.u32 %r131,0; bra $L8; $L47: mov.u32 %r131,0; bra $L8; $L59: .loc 1 235 8 add.u32 %r222,%r148,32768; .loc 1 236 25 shr.s32 %r485,%r222,23; and.b32 %r486,%r485,255; .loc 1 236 8 add.u32 %r219,%r486,-127; .loc 1 237 6 mov.u32 %r488,-8388608; shr.s32 %r487,%r488,%r219; and.b32 %r489,%r487,%r222; mov.b32 %r181,%r489; .loc 1 238 13 and.b32 %r490,%r222,8388607; .loc 1 238 25 or.b32 %r215,%r490,8388608; .loc 1 238 42 mov.u32 %r492,23; sub.u32 %r491,%r492,%r219; .loc 1 238 8 shr.s32 %r134,%r215,%r491; bra $L39; $L1: .loc 1 258 1 mov.f32 %value,%r253; st.param.f32 [%value_out],%value; ret; } /233 0 0 0 644 10487 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .visible .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2f .extern .func (.param .u32 %value_out) __kernel_rem_pio2f (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: npio2_hw .const .align 4 .u32 npio2_hw[32] = {1070141184,1078529792,1083624192,1086918400,1090212608,1092012800,1093659904,1095307008,1096954112,1098601216,1099577856,1100401408,1101224960,1102048512,1102872064,1103695616,1104519168,1105342720,1106166272,1106989824,1107554816,1107966464,1108378368,1108790016,1109201920,1109613568,1110025472,1110437120,1110849024,1111260672,1111672576,1112084224 }; // BEGIN VAR DEF: two_over_pi .const .align 4 .u32 two_over_pi[198] = {162,249,131,110,78,68,21,41,252,39,87,209,245,52,221,192,219,98,149,153,60,67,144,65,254,81,99,171,222,187,197,97,183,36,110,58,66,77,210,224,6,73,46,234,9,209,146,28,254,29,235,28,177,41,167,62,232,130,53,245,46,187,68,132,233,156,112,38,180,95,126,65,57,145,214,57,131,83,57,244,156,132,95,139,189,249,40,59,31,248,151,255,222,5,152,15,239,47,17,139,90,10,109,31,109,54,126,207,39,203,9,183,79,70,63,102,158,95,234,45,117,39,186,199,235,229,241,123,61,7,57,247,138,82,146,234,107,251,95,177,31,141,93,8,86,3,48,70,252,123,107,171,240,207,188,32,154,244,54,29,169,227,145,97,94,230,27,8,101,153,133,95,20,160,104,64,141,255,216,128,77,115,39,49,6,6,21,86,202,115,168,201,96,226,123,192,140,107 }; // BEGIN GLOBAL FUNCTION DEF: __ieee754_rem_pio2f .visible .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .f32 %r24; .reg .f32 %r28; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r45; .reg .u32 %r46; .reg .f32 %r51; .reg .f32 %r56; .reg .f32 %r59; .reg .f32 %r62; .reg .f32 %r71; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .u32 %r101; .reg .f32 %r102; .reg .u64 %r103; .reg .pred %r104; .reg .f32 %r105; .reg .pred %r106; .reg .pred %r107; .reg .f32 %r108; .reg .pred %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r114; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .pred %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r126; .reg .pred %r128; .reg .u32 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .pred %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .pred %r141; .reg .f32 %r144; .reg .f32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r155; .reg .pred %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .pred %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u32 %r171; .reg .u64 %r172; .reg .u32 %r173; .reg .pred %r174; .reg .f32 %r175; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r180; mov.f32 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 110 2 mov.b32 %r76,%r102; .loc 1 111 5 and.b32 %r77,%r76,2147483647; .loc 1 112 4 setp.gt.s32 %r104,%r77,1061752792; @ %r104 bra $L2; .loc 1 113 12 st.f32 [%r103],%r102; .loc 1 113 22 mov.f32 %r105,0f00000000; st.f32 [%r103+4],%r105; .loc 1 113 34 mov.u32 %r101,0; bra $L1; $L2: .loc 1 114 4 setp.gt.s32 %r106,%r77,1075235811; @ %r106 bra $L4; .loc 1 117 9 and.b32 %r73,%r76,2147483632; .loc 1 115 8 setp.le.s32 %r107,%r76,0; @ %r107 bra $L5; .loc 1 116 5 mov.f32 %r108,0f3fc90f80; sub.f32 %r88,%r102,%r108; .loc 1 117 5 setp.eq.u32 %r109,%r73,1070141392; @ %r109 bra $L6; .loc 1 118 16 mov.f32 %r110,0f37354443; sub.f32 %r24,%r88,%r110; .loc 1 118 12 st.f32 [%r103],%r24; .loc 1 119 16 sub.f32 %r111,%r88,%r24; .loc 1 119 22 sub.f32 %r112,%r111,%r110; .loc 1 119 12 st.f32 [%r103+4],%r112; .loc 1 125 10 mov.u32 %r101,1; bra $L1; $L6: .loc 1 121 9 mov.f32 %r114,0f37354400; sub.f32 %r89,%r88,%r114; .loc 1 122 16 mov.f32 %r115,0f2e85a308; sub.f32 %r28,%r89,%r115; .loc 1 122 12 st.f32 [%r103],%r28; .loc 1 123 16 sub.f32 %r116,%r89,%r28; .loc 1 123 22 sub.f32 %r117,%r116,%r115; .loc 1 123 12 st.f32 [%r103+4],%r117; .loc 1 125 10 mov.u32 %r101,1; bra $L1; $L5: .loc 1 127 5 add.f32 %r86,%r102,0f3fc90f80; .loc 1 128 5 setp.eq.u32 %r119,%r73,1070141392; @ %r119 bra $L7; .loc 1 129 16 add.f32 %r33,%r86,0f37354443; .loc 1 129 12 st.f32 [%r103],%r33; .loc 1 130 16 sub.f32 %r120,%r86,%r33; .loc 1 130 22 add.f32 %r121,%r120,0f37354443; .loc 1 130 12 st.f32 [%r103+4],%r121; .loc 1 136 10 mov.u32 %r101,-1; bra $L1; $L7: .loc 1 132 9 add.f32 %r87,%r86,0f37354400; .loc 1 133 16 add.f32 %r36,%r87,0f2e85a308; .loc 1 133 12 st.f32 [%r103],%r36; .loc 1 134 16 sub.f32 %r122,%r87,%r36; .loc 1 134 22 add.f32 %r123,%r122,0f2e85a308; .loc 1 134 12 st.f32 [%r103+4],%r123; .loc 1 136 10 mov.u32 %r101,-1; bra $L1; $L4: .loc 1 139 4 setp.gt.s32 %r124,%r77,1128861568; @ %r124 bra $L8; .loc 1 140 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r102; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r126,[%value_in]; } .loc 1 141 33 fma.rn.f32 %r39,%r126,0f3f22f984,0f3f000000; .loc 1 141 9 cvt.rzi.s32.f32 %r101,%r39; .loc 1 142 9 cvt.rn.f32.s32 %r81,%r101; .loc 1 143 9 neg.f32 %r180,%r81; fma.rn.f32 %r72,%r81,0fbfc90f80,%r126; .loc 1 144 9 mul.f32 %r71,%r81,0f37354443; .loc 1 145 8 setp.gt.s32 %r128,%r101,31; @ %r128 bra $L9; .loc 1 145 18 and.b32 %r129,%r76,2147483392; .loc 1 145 40 cvta.const.u64 %r130,npio2_hw; .loc 1 145 42 add.u32 %r131,%r101,-1; .loc 1 145 40 cvt.s64.s32 %r132,%r131; shl.b64 %r133,%r132,2; add.u64 %r134,%r130,%r133; .loc 1 145 13 ld.u32 %r135,[%r134]; setp.eq.u32 %r136,%r129,%r135; @ %r136 bra $L9; .loc 1 146 11 sub.f32 %r45,%r72,%r71; .loc 1 146 8 st.f32 [%r103],%r45; bra $L10; $L9: .loc 1 150 18 sub.f32 %r45,%r72,%r71; .loc 1 149 13 shr.s32 %r46,%r77,23; .loc 1 152 22 mov.b32 %r138,%r45; shr.u32 %r137,%r138,23; .loc 1 152 27 and.b32 %r139,%r137,255; .loc 1 152 15 sub.u32 %r140,%r46,%r139; .loc 1 153 12 setp.gt.s32 %r141,%r140,8; @ %r141 bra $L11; .loc 1 150 15 st.f32 [%r103],%r45; bra $L10; $L11: .loc 1 156 10 fma.rn.f32 %r84,%r180,0f37354400,%r72; .loc 1 157 26 sub.f32 %r144,%r72,%r84; .loc 1 157 29 fma.rn.f32 %r51,%r180,0f37354400,%r144; .loc 1 157 10 neg.f32 %r145,%r51; fma.rn.f32 %r71,%r81,0f2e85a308,%r145; .loc 1 158 15 sub.f32 %r45,%r84,%r71; .loc 1 160 19 mov.b32 %r147,%r45; shr.u32 %r146,%r147,23; .loc 1 160 24 and.b32 %r148,%r146,255; .loc 1 160 12 sub.u32 %r149,%r46,%r148; .loc 1 161 9 setp.gt.s32 %r150,%r149,25; @ %r150 bra $L12; .loc 1 158 12 st.f32 [%r103],%r45; .loc 1 156 10 mov.f32 %r72,%r84; bra $L10; $L12: .loc 1 164 11 fma.rn.f32 %r72,%r180,0f2e85a300,%r84; .loc 1 165 27 sub.f32 %r153,%r84,%r72; .loc 1 165 30 fma.rn.f32 %r56,%r180,0f2e85a300,%r153; .loc 1 165 11 neg.f32 %r154,%r56; fma.rn.f32 %r71,%r81,0f248d3132,%r154; .loc 1 166 16 sub.f32 %r45,%r72,%r71; .loc 1 166 13 st.f32 [%r103],%r45; $L10: .loc 1 170 15 sub.f32 %r155,%r72,%r45; .loc 1 170 21 sub.f32 %r59,%r155,%r71; .loc 1 170 11 st.f32 [%r103+4],%r59; .loc 1 171 8 setp.ge.s32 %r156,%r76,0; @ %r156 bra $L1; .loc 1 171 24 neg.f32 %r157,%r45; .loc 1 171 22 st.f32 [%r103],%r157; .loc 1 171 38 neg.f32 %r158,%r59; .loc 1 171 36 st.f32 [%r103+4],%r158; .loc 1 171 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 177 4 setp.le.s32 %r159,%r77,2139095039; @ %r159 bra $L13; .loc 1 178 17 sub.f32 %r62,%r102,%r102; .loc 1 178 15 st.f32 [%r103+4],%r62; .loc 1 178 10 st.f32 [%r103],%r62; .loc 1 178 28 mov.u32 %r101,0; bra $L1; $L13: .loc 1 181 17 shr.s32 %r160,%r77,23; .loc 1 181 6 add.u32 %r78,%r160,-134; .loc 1 182 2 shl.b32 %r161,%r78,23; sub.u32 %r162,%r77,%r161; mov.b32 %r79,%r162; .loc 1 184 19 cvt.rzi.s32.f32 %r163,%r79; .loc 1 184 11 cvt.rn.f32.s32 %r93,%r163; .loc 1 184 9 st.f32 [%frame],%r93; .loc 1 185 13 sub.f32 %r94,%r79,%r93; .loc 1 185 9 mul.f32 %r95,%r94,0f43800000; .loc 1 184 19 cvt.rzi.s32.f32 %r164,%r95; .loc 1 184 11 cvt.rn.f32.s32 %r98,%r164; .loc 1 184 9 st.f32 [%frame+4],%r98; .loc 1 185 13 sub.f32 %r99,%r95,%r98; .loc 1 185 9 mul.f32 %r100,%r99,0f43800000; .loc 1 187 8 st.f32 [%frame+8],%r100; .loc 1 189 16 setp.neu.f32 %r165,%r100,0f00000000; @ %r165 bra $L15; setp.neu.f32 %r166,%r98,0f00000000; .loc 1 189 13 selp.u32 %r22,2,1,%r166; bra $L14; $L15: .loc 1 188 5 mov.u32 %r22,3; $L14: .loc 1 190 8 cvta.const.u64 %r172,two_over_pi; mov.u32 %r171,2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r78; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r22; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r171; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r172; call (%value_in),__kernel_rem_pio2f,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r173,[%value_in]; } mov.u32 %r101,%r173; .loc 1 191 4 setp.ge.s32 %r174,%r76,0; @ %r174 bra $L1; .loc 1 191 19 ld.f32 %r176,[%r103]; neg.f32 %r175,%r176; .loc 1 191 17 st.f32 [%r103],%r175; .loc 1 191 33 ld.f32 %r178,[%r103+4]; neg.f32 %r177,%r178; .loc 1 191 31 st.f32 [%r103+4],%r177; .loc 1 191 47 neg.s32 %r101,%r101; $L1: .loc 1 193 1 mov.u32 %value,%r101; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /254 0 0 0 644 4020 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainderf .visible .func (.param .f32 %value_out) __ieee754_remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmodf .extern .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_remainderf .visible .func (.param .f32 %value_out) __ieee754_remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .u32 %r29; .reg .u32 %r30; .reg .f32 %r31; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r38; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u32 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .f32 %r69; .reg .f32 %r70; .reg .pred %r71; .reg .f32 %r73; .reg .f32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .f32 %r78; .reg .pred %r79; .reg .f32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u16 %r87; mov.f32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 36 2 mov.b32 %r29,%r45; .loc 1 37 2 mov.b32 %r33,%r46; .loc 1 39 5 and.b32 %r35,%r33,2147483647; .loc 1 40 5 and.b32 %r36,%r29,2147483647; .loc 1 43 5 set.u32.eq.u32 %r48,%r35,0; neg.s32 %r49,%r48; mov.u32 %r47,%r49; .loc 1 44 29 set.u32.gt.s32 %r51,%r35,2139095040; neg.s32 %r52,%r51; mov.u32 %r50,%r52; cvt.u16.u8 %r87,%r47; mov.u16 %r54,%r87; cvt.u16.u8 %r87,%r50; mov.u16 %r55,%r87; or.b16 %r53,%r54,%r55; cvt.u32.u16 %r56,%r53; .loc 1 44 5 set.u32.gt.s32 %r58,%r36,2139095039; neg.s32 %r59,%r58; mov.u32 %r57,%r59; .loc 1 44 29 cvt.u16.u8 %r87,%r56; mov.u16 %r61,%r87; cvt.u16.u8 %r87,%r57; mov.u16 %r62,%r87; or.b16 %r60,%r61,%r62; cvt.u32.u16 %r63,%r60; cvt.u16.u8 %r64,%r63; setp.eq.u16 %r65,%r64,0; @ %r65 bra $L2; .loc 1 46 15 mul.f32 %r25,%r45,%r46; .loc 1 46 18 div.rn.f32 %r44,%r25,%r25; bra $L1; $L2: .loc 1 49 5 setp.gt.s32 %r66,%r35,2130706431; @ %r66 bra $L4; .loc 1 49 34 add.f32 %r69,%r46,%r46; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r69; call (%value_in),__ieee754_fmodf,(%out_arg1,%out_arg2); ld.param.f32 %r70,[%value_in]; } mov.f32 %r45,%r70; $L4: .loc 1 50 5 setp.ne.u32 %r71,%r35,%r36; @ %r71 bra $L5; .loc 1 50 29 mul.f32 %r44,%r45,0f00000000; bra $L1; $L5: .loc 1 51 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } mov.f32 %r31,%r73; .loc 1 52 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 53 5 and.b32 %r76,%r33,2130706432; setp.ne.u32 %r77,%r76,0; @ %r77 bra $L6; .loc 1 54 10 add.f32 %r78,%r31,%r31; .loc 1 54 8 setp.gt.f32 %r79,%r78,%r75; @ ! %r79 bra $L7; .loc 1 55 4 sub.f32 %r31,%r31,%r75; .loc 1 56 7 add.f32 %r80,%r31,%r31; .loc 1 56 5 setp.ge.f32 %r81,%r80,%r75; @ ! %r81 bra $L7; .loc 1 56 16 sub.f32 %r31,%r31,%r75; bra $L7; $L6: .loc 1 59 13 mul.f32 %r38,%r75,0f3f000000; .loc 1 60 8 setp.gt.f32 %r82,%r31,%r38; @ ! %r82 bra $L7; .loc 1 61 4 sub.f32 %r31,%r31,%r75; .loc 1 62 5 setp.le.f32 %r83,%r38,%r31; @ ! %r83 bra $L7; .loc 1 62 19 sub.f32 %r31,%r31,%r75; $L7: .loc 1 38 5 and.b32 %r84,%r29,-2147483648; .loc 1 66 2 mov.b32 %r85,%r31; xor.b32 %r30,%r84,%r85; mov.b32 %r44,%r30; $L1: .loc 1 68 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } /276 0 0 0 644 3046 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalbf .visible .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/ef_scalb.c" // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: rintf .extern .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_scalbf .visible .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r41; .reg .f32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .f32 %r46; .reg .u32 %r49; .reg .f32 %r50; mov.f32 %r28,%ar0; mov.f32 %r29,%ar1; .loc 1 38 5 setp.num.f32 %r30,%r28,%r29; @ %r30 bra $L2; $L5: .loc 1 38 35 mul.f32 %r27,%r28,%r29; bra $L1; $L2: .loc 1 39 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 39 5 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 40 8 setp.gt.f32 %r34,%r29,0f00000000; @ %r34 bra $L5; .loc 1 41 25 neg.f32 %r35,%r28; div.rn.f32 %r27,%r35,%r29; bra $L1; $L4: .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; call (%value_in),rintf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } .loc 1 43 5 setp.eq.f32 %r38,%r37,%r29; @ %r38 bra $L6; .loc 1 43 31 sub.f32 %r25,%r29,%r29; .loc 1 43 35 div.rn.f32 %r27,%r25,%r25; bra $L1; $L6: .loc 1 45 5 setp.gt.f32 %r39,%r29,0f477de800; @ ! %r39 bra $L13; .loc 1 45 35 mov.u32 %r41,65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } mov.f32 %r27,%r42; bra $L1; $L13: .loc 1 46 5 setp.lt.f32 %r43,%r29,0fc77de800; @ ! %r43 bra $L14; .loc 1 46 35 mov.u32 %r45,-65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r45; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } mov.f32 %r27,%r46; bra $L1; $L14: .loc 1 51 9 cvt.rzi.s32.f32 %r49,%r29; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r49; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } mov.f32 %r27,%r50; $L1: .loc 1 53 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sinh.o/0 0 0 644 4137 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinhf .visible .func (.param .f32 %value_out) __ieee754_sinhf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_sinh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1f .extern .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_sinhf .visible .func (.param .f32 %value_out) __ieee754_sinhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r27; .reg .f32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .f32 %r50; .reg .pred %r51; .reg .f32 %r53; .reg .f32 %r55; .reg .pred %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .pred %r64; .reg .f32 %r66; .reg .f32 %r68; .reg .pred %r69; .reg .f32 %r71; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r78; .reg .f32 %r80; mov.f32 %r45,%ar0; .loc 1 34 2 mov.b32 %r36,%r45; .loc 1 35 5 and.b32 %r37,%r36,2147483647; .loc 1 38 4 setp.le.s32 %r46,%r37,2139095039; @ %r46 bra $L2; .loc 1 38 39 add.f32 %r44,%r45,%r45; bra $L1; $L2: .loc 1 41 5 setp.ge.s32 %r47,%r36,0; .loc 1 41 14 selp.f32 %r35,0f3f000000,0fbf000000,%r47; .loc 1 43 5 setp.gt.s32 %r48,%r37,1102053375; @ %r48 bra $L5; .loc 1 44 9 setp.gt.s32 %r49,%r37,830472191; @ %r49 bra $L6; .loc 1 45 11 add.f32 %r50,%r45,0f7cf0bdc2; .loc 1 45 5 setp.gt.f32 %r51,%r50,0f3f800000; @ ! %r51 bra $L14; bra $L13; $L6: .loc 1 46 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r53,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r53; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r55,[%value_in]; } mov.f32 %r41,%r55; .loc 1 47 8 setp.gt.s32 %r56,%r37,1065353215; @ %r56 bra $L8; $L11: .loc 1 47 48 mul.f32 %r57,%r41,%r41; .loc 1 47 53 add.f32 %r58,%r41,0f3f800000; .loc 1 47 50 div.rn.f32 %r59,%r57,%r58; .loc 1 47 46 neg.f32 %r60,%r59; fma.rn.f32 %r27,%r41,0f40000000,%r60; .loc 1 47 32 mul.f32 %r44,%r27,%r35; bra $L1; $L8: .loc 1 48 22 add.f32 %r61,%r55,0f3f800000; .loc 1 48 19 div.rn.f32 %r62,%r55,%r61; .loc 1 48 17 add.f32 %r63,%r62,%r55; .loc 1 48 14 mul.f32 %r44,%r63,%r35; bra $L1; $L5: .loc 1 52 5 setp.gt.s32 %r64,%r37,1118925335; @ %r64 bra $L9; .loc 1 52 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r66; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 52 38 mul.f32 %r44,%r68,%r35; bra $L1; $L9: .loc 1 55 5 setp.gt.s32 %r69,%r37,1119016188; @ %r69 bra $L10; .loc 1 56 36 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } .loc 1 56 10 mul.f32 %r73,%r71,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r73; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 57 8 mul.f32 %r75,%r35,%r74; .loc 1 58 14 mul.f32 %r44,%r75,%r74; bra $L1; $L10: .loc 1 62 10 mul.f32 %r44,%r45,0f7cf0bdc2; bra $L1; $L13: .loc 1 45 26 mov.f32 %r44,%r45; bra $L1; $L14: .loc 1 46 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r78,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r78; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r80,[%value_in]; } mov.f32 %r41,%r80; bra $L11; $L1: .loc 1 63 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sqrt.o/0 0 0 644 3206 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .visible .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_sqrt.c" // BEGIN GLOBAL FUNCTION DEF: __ieee754_sqrtf .visible .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u32 %r24; .reg .f32 %r25; .reg .u32 %r26; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r34; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r70; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; mov.f32 %r56,%ar0; .loc 1 35 2 mov.b32 %r30,%r56; .loc 1 36 5 and.b32 %r45,%r30,2147483647; .loc 1 39 4 setp.le.u32 %r57,%r45,2139095039; @ %r57 bra $L2; .loc 1 40 16 fma.rn.f32 %r55,%r56,%r56,%r56; bra $L1; $L2: .loc 1 43 4 setp.eq.u32 %r58,%r45,0; @ %r58 bra $L12; .loc 1 35 2 mov.u32 %r22,%r30; .loc 1 44 4 setp.ge.s32 %r59,%r30,0; @ %r59 bra $L4; .loc 1 44 20 sub.f32 %r25,%r56,%r56; .loc 1 44 23 div.rn.f32 %r55,%r25,%r25; bra $L1; $L4: .loc 1 47 4 shr.s32 %r44,%r22,23; .loc 1 48 4 and.b32 %r60,%r22,2139095040; setp.ne.u32 %r61,%r60,0; @ %r61 bra $L5; and.b32 %r43,%r22,8388608; .loc 1 49 30 setp.ne.u32 %r62,%r43,0; @ %r62 bra $L13; $L7: .loc 1 49 41 add.u32 %r22,%r22,%r22; mov.u32 %r24,%r43; .loc 1 49 35 add.u32 %r43,%r43,1; .loc 1 49 30 and.b32 %r64,%r22,8388608; setp.eq.u32 %r65,%r64,0; @ %r65 bra $L7; bra $L6; $L13: mov.u32 %r24,-1; $L6: .loc 1 50 8 sub.u32 %r44,%r44,%r24; $L5: .loc 1 52 4 add.u32 %r46,%r44,-127; .loc 1 53 10 and.b32 %r26,%r22,8388607; .loc 1 53 5 or.b32 %r39,%r26,8388608; .loc 1 54 6 and.b32 %r66,%r46,1; .loc 1 54 4 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L8; .loc 1 55 9 add.u32 %r39,%r39,%r39; $L8: .loc 1 56 4 shr.s32 %r47,%r46,1; .loc 1 59 5 add.u32 %r52,%r39,%r39; mov.u32 %r54,25; .loc 1 60 4 mov.u32 %r42,0; .loc 1 60 8 mov.u32 %r41,%r42; .loc 1 61 4 mov.u32 %r53,16777216; $L10: .loc 1 64 11 add.u32 %r29,%r41,%r53; .loc 1 65 8 setp.gt.s32 %r70,%r29,%r52; @ %r70 bra $L14; .loc 1 66 11 add.u32 %r41,%r29,%r53; .loc 1 67 7 sub.u32 %r40,%r52,%r29; .loc 1 68 7 add.u32 %r42,%r42,%r53; bra $L9; $L14: mov.u32 %r40,%r52; $L9: .loc 1 70 9 add.u32 %r52,%r40,%r40; .loc 1 71 7 shr.u32 %r53,%r53,1; .loc 1 63 9 add.u32 %r54,%r54,-1; setp.ne.u32 %r72,%r54,0; @ %r72 bra $L10; .loc 1 75 4 setp.eq.u32 %r73,%r40,0; @ %r73 bra $L11; .loc 1 82 9 add.u32 %r34,%r42,1; and.b32 %r42,%r34,-2; $L11: .loc 1 85 9 shr.s32 %r74,%r42,1; .loc 1 85 13 add.u32 %r49,%r74,1056964608; .loc 1 86 11 shl.b32 %r75,%r47,23; .loc 1 86 5 add.u32 %r76,%r75,%r49; .loc 1 87 2 mov.b32 %r55,%r76; .loc 1 88 9 bra $L1; $L12: .loc 1 43 35 mov.f32 %r55,%r56; $L1: .loc 1 89 1 mov.f32 %value,%r55; st.param.f32 [%value_out],%value; ret; } /294 0 0 0 644 1950 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgammaf .visible .func (.param .f32 %value_out) __ieee754_tgammaf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/ef_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .extern .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: __ieee754_tgammaf .visible .func (.param .f32 %value_out) __ieee754_tgammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r28; .reg .f32 %r30; .reg .u32 %r31; .reg .pred %r32; mov.f32 %r25,%ar0; .loc 1 32 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r28,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } mov.f32 %r24,%r30; .loc 1 33 5 ld.u32 %r31,[%frame]; setp.ge.s32 %r32,%r31,0; @ %r32 bra $L1; .loc 1 34 5 neg.f32 %r24,%r24; $L1: .loc 1 36 1 mov.f32 %value,%r24; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /313 0 0 0 644 1081 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypotl .visible .func (.param .f64 %value_out) __ieee754_hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/el_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypot .extern .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __ieee754_hypotl .visible .func (.param .f64 %value_out) __ieee754_hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 13 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),__ieee754_hypot,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 18 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /331 0 0 0 644 19701 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .visible .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/er_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .extern .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .extern .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_lgamma_r .visible .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r78; .reg .f64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .u32 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r128; .reg .f64 %r130; .reg .f64 %r132; .reg .u32 %r137; .reg .u32 %r138; .reg .f64 %r139; .reg .f64 %r142; .reg .f64 %r145; .reg .f64 %r151; .reg .f64 %r154; .reg .f64 %r158; .reg .f64 %r168; .reg .f64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u64 %r172; .reg .u32 %r174; .reg .pred %r175; .reg .u32 %r178; .reg .pred %r179; .reg .pred %r180; .reg .u32 %r181; .reg .f64 %r182; .reg .pred %r184; .reg .pred %r185; .reg .u32 %r186; .reg .f64 %r188; .reg .f64 %r189; .reg .f64 %r191; .reg .pred %r193; .reg .pred %r194; .reg .f64 %r196; .reg .u32 %r197; .reg .f64 %r198; .reg .f64 %r199; .reg .f64 %r201; .reg .pred %r202; .reg .f64 %r204; .reg .f64 %r205; .reg .pred %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .u64 %r209; .reg .u32 %r210; .reg .pred %r211; .reg .pred %r212; .reg .u32 %r213; .reg .pred %r214; .reg .f64 %r215; .reg .f64 %r216; .reg .f64 %r218; .reg .f64 %r219; .reg .u32 %r220; .reg .pred %r221; .reg .f64 %r223; .reg .f64 %r225; .reg .f64 %r226; .reg .f64 %r227; .reg .f64 %r229; .reg .u32 %r230; .reg .f64 %r231; .reg .f64 %r233; .reg .f64 %r234; .reg .f64 %r235; .reg .f64 %r236; .reg .f64 %r237; .reg .f64 %r238; .reg .f64 %r239; .reg .f64 %r241; .reg .u32 %r242; .reg .f64 %r243; .reg .pred %r244; .reg .f64 %r246; .reg .f64 %r247; .reg .f64 %r249; .reg .f64 %r250; .reg .f64 %r251; .reg .pred %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .pred %r259; .reg .u32 %r260; .reg .pred %r261; .reg .pred %r262; .reg .f64 %r264; .reg .pred %r265; .reg .f64 %r266; .reg .pred %r267; .reg .f64 %r268; .reg .pred %r269; .reg .f64 %r270; .reg .pred %r271; .reg .f64 %r272; .reg .f64 %r273; .reg .f64 %r274; .reg .f64 %r276; .reg .f64 %r277; .reg .f64 %r278; .reg .f64 %r279; .reg .f64 %r280; .reg .pred %r281; .reg .f64 %r282; .reg .f64 %r283; .reg .pred %r284; .reg .pred %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .pred %r289; .reg .f64 %r290; .reg .f64 %r291; .reg .f64 %r292; .reg .f64 %r294; .reg .f64 %r295; .reg .f64 %r296; .reg .pred %r297; .reg .f64 %r299; .reg .f64 %r300; .reg .f64 %r301; .reg .f64 %r302; .reg .f64 %r303; .reg .f64 %r306; .reg .f64 %r307; .reg .f64 %r308; .reg .u32 %r311; .reg .u32 %r312; .reg .pred %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .pred %r317; mov.f64 %r169,%ar0; mov.u64 %r170,%ar1; .loc 1 223 2 mov.b64 %r171,%r169; shr.u64 %r172,%r171,32; cvt.u32.u64 %r98,%r172; .loc 1 226 12 mov.u32 %r174,1; st.u32 [%r170],%r174; .loc 1 227 5 and.b32 %r100,%r98,2147483647; .loc 1 228 4 setp.le.s32 %r175,%r100,2146435071; @ %r175 bra $L2; .loc 1 229 14 mul.f64 %r168,%r169,%r169; bra $L1; $L2: .loc 1 223 2 cvt.u32.u64 %r99,%r171; .loc 1 231 8 or.b32 %r178,%r99,%r100; .loc 1 231 4 setp.ne.u32 %r179,%r178,0; @ %r179 bra $L4; .loc 1 232 8 setp.ge.s32 %r180,%r98,0; @ %r180 bra $L5; .loc 1 233 20 mov.u32 %r181,-1; st.u32 [%r170],%r181; $L5: .loc 1 234 19 sub.f64 %r182,%r169,%r169; .loc 1 234 16 rcp.rn.f64 %r168,%r182; bra $L1; $L4: .loc 1 236 4 setp.gt.s32 %r184,%r100,999292927; @ %r184 bra $L6; .loc 1 237 8 setp.ge.s32 %r185,%r98,0; @ %r185 bra $L7; .loc 1 238 20 mov.u32 %r186,-1; st.u32 [%r170],%r186; .loc 1 239 18 neg.f64 %r188,%r169; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r188; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r189,[%value_in]; } .loc 1 239 17 neg.f64 %r168,%r189; bra $L1; $L7: .loc 1 240 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r191,[%value_in]; } .loc 1 240 20 neg.f64 %r168,%r191; bra $L1; $L6: .loc 1 242 4 setp.ge.s32 %r317,%r98,0; @ %r317 bra $L8; .loc 1 243 8 setp.gt.s32 %r193,%r100,1127219199; @ %r193 bra $L5; .loc 1 175 4 setp.gt.s32 %r194,%r100,1070596095; @ %r194 bra $L9; .loc 1 175 27 mul.f64 %r198,%r169,0d400921fb54442d18; mov.u32 %r197,0; mov.f64 %r196,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r198; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r196; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r197; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r199,[%value_in]; } mov.f64 %r154,%r199; bra $L10; $L9: .loc 1 176 4 neg.f64 %r128,%r169; .loc 1 182 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r128; call (%value_in),floor,(%out_arg1); ld.param.f64 %r201,[%value_in]; } .loc 1 183 4 setp.eq.f64 %r202,%r128,%r201; @ %r202 bra $L11; .loc 1 184 9 mul.f64 %r130,%r128,0d3fe0000000000000; .loc 1 185 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r130; call (%value_in),floor,(%out_arg1); ld.param.f64 %r204,[%value_in]; } .loc 1 185 19 sub.f64 %r132,%r130,%r204; .loc 1 185 10 add.f64 %r158,%r132,%r132; .loc 1 186 26 mul.f64 %r205,%r158,0d4010000000000000; .loc 1 186 10 cvt.rzi.s32.f64 %r138,%r205; .loc 1 198 2 setp.gt.s32 %r206,%r138,4; @ %r206 bra $L12; bra $L13; $L11: .loc 1 192 3 mov.f64 %r208,0d4330000000000000; sub.f64 %r207,%r208,%r169; mov.b64 %r209,%r207; cvt.u32.u64 %r210,%r209; .loc 1 193 5 and.b32 %r137,%r210,1; .loc 1 194 20 cvt.rn.f64.s32 %r158,%r137; .loc 1 195 18 shl.b32 %r138,%r137,2; $L13: .loc 1 198 2 setp.gt.s32 %r211,%r138,2; @ %r211 bra $L14; setp.eq.u32 %r212,%r138,0; @ %r212 bra $L15; add.u32 %r213,%r138,-1; setp.gt.u32 %r214,%r213,1; @ %r214 bra $L16; .loc 1 201 41 mov.f64 %r216,0d3fe0000000000000; sub.f64 %r215,%r216,%r158; .loc 1 201 21 mul.f64 %r142,%r215,0d400921fb54442d18; mov.f64 %r218,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r142; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r218; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r219,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r219; .loc 1 201 52 bra $L10; $L12: .loc 1 198 2 add.u32 %r220,%r138,-5; setp.gt.u32 %r221,%r220,1; @ ! %r221 bra $L52; bra $L16; $L15: .loc 1 199 21 mul.f64 %r139,%r158,0d400921fb54442d18; mov.f64 %r223,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r139; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r223; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r138; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r225,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r225; .loc 1 199 48 bra $L10; $L14: .loc 1 203 41 mov.f64 %r227,0d3ff0000000000000; sub.f64 %r226,%r227,%r158; .loc 1 203 21 mul.f64 %r145,%r226,0d400921fb54442d18; mov.u32 %r230,0; mov.f64 %r229,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r145; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r229; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r230; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r231,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r231; .loc 1 203 54 bra $L10; $L52: .loc 1 205 39 mov.f64 %r235,0d3ff8000000000000; sub.f64 %r234,%r158,%r235; .loc 1 205 21 mul.f64 %r236,%r234,0d400921fb54442d18; mov.f64 %r233,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r236; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r233; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r237,[%value_in]; } mov.f64 %r154,%r237; .loc 1 205 52 bra $L10; $L16: .loc 1 206 39 mov.f64 %r239,0d4000000000000000; sub.f64 %r238,%r158,%r239; .loc 1 206 21 mul.f64 %r151,%r238,0d400921fb54442d18; mov.u32 %r242,0; mov.f64 %r241,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r151; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r241; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r242; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r243,[%value_in]; } .loc 1 208 9 neg.f64 %r154,%r243; $L10: .loc 1 247 8 setp.eq.f64 %r244,%r154,0d0000000000000000; @ %r244 bra $L5; .loc 1 250 30 mul.f64 %r246,%r169,%r154; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r246; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r247,[%value_in]; } .loc 1 250 13 mov.f64 %r250,0d400921fb54442d18; div.rn.f64 %r249,%r250,%r247; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r249; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r251,[%value_in]; } mov.f64 %r168,%r251; .loc 1 251 8 setp.lt.f64 %r252,%r154,0d0000000000000000; @ ! %r252 bra $L19; .loc 1 251 27 mov.u32 %r253,-1; st.u32 [%r170],%r253; $L19: .loc 1 256 10 add.u32 %r254,%r100,-1072693248; .loc 1 256 22 or.b32 %r255,%r254,%r99; .loc 1 256 4 setp.eq.u32 %r256,%r255,0; @ %r256 bra $L1; .loc 1 252 8 neg.f64 %r169,%r169; .loc 1 256 37 add.u32 %r257,%r100,-1073741824; .loc 1 256 49 or.b32 %r258,%r257,%r99; .loc 1 256 30 setp.eq.u32 %r259,%r258,0; @ %r259 bra $L40; $L39: .loc 1 258 9 and.b32 %r260,%r98,1073741824; setp.ne.u32 %r261,%r260,0; @ %r261 bra $L23; .loc 1 259 8 setp.gt.s32 %r262,%r100,1072483532; @ %r262 bra $L24; .loc 1 260 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r264,[%value_in]; } .loc 1 260 5 neg.f64 %r115,%r264; .loc 1 261 5 setp.le.s32 %r265,%r100,1072130371; @ %r265 bra $L25; .loc 1 261 25 mov.f64 %r266,0d3ff0000000000000; sub.f64 %r114,%r266,%r169; bra $L26; $L25: .loc 1 262 10 setp.le.s32 %r267,%r100,1070442080; @ %r267 bra $L27; .loc 1 262 29 mov.f64 %r268,0d3fdd8b618d5af8fc; sub.f64 %r113,%r169,%r268; bra $L28; $L24: .loc 1 266 12 setp.le.s32 %r269,%r100,1073460418; @ %r269 bra $L29; .loc 1 266 31 mov.f64 %r270,0d4000000000000000; sub.f64 %r114,%r270,%r169; .loc 1 265 7 mov.f64 %r115,0d0000000000000000; bra $L26; $L29: .loc 1 267 17 setp.le.s32 %r271,%r100,1072936131; @ %r271 bra $L30; .loc 1 267 36 mov.f64 %r272,0d3ff762d86356be3f; sub.f64 %r113,%r169,%r272; .loc 1 265 7 mov.f64 %r115,0d0000000000000000; bra $L28; $L30: .loc 1 268 10 mov.f64 %r273,0d3ff0000000000000; sub.f64 %r169,%r169,%r273; .loc 1 265 7 mov.f64 %r115,0d0000000000000000; bra $L27; $L26: .loc 1 272 5 mul.f64 %r124,%r114,%r114; .loc 1 273 34 fma.rn.f64 %r31,%r124,0d3efa7074428cfa52,0d3f2cf2eced10e54d; .loc 1 273 28 fma.rn.f64 %r32,%r31,%r124,0d3f538a94116f3f5d; .loc 1 273 22 fma.rn.f64 %r33,%r32,%r124,0d3f7e404fb68fefe8; .loc 1 273 16 fma.rn.f64 %r34,%r33,%r124,0d3fb13e001a5562a7; .loc 1 273 6 fma.rn.f64 %r125,%r34,%r124,0d3fb3c467e37db0c8; .loc 1 274 37 fma.rn.f64 %r35,%r124,0d3f07858e90a45837,0d3f1c5088987dfb07; .loc 1 274 31 fma.rn.f64 %r36,%r35,%r124,0d3f40b6c689b99c00; .loc 1 274 25 fma.rn.f64 %r37,%r36,%r124,0d3f67add8ccb7926b; .loc 1 274 19 fma.rn.f64 %r38,%r37,%r124,0d3f951322ac92547b; .loc 1 274 13 fma.rn.f64 %r39,%r38,%r124,0d3fd4a34cc4a60fad; .loc 1 275 9 mul.f64 %r274,%r125,%r114; .loc 1 275 6 fma.rn.f64 %r126,%r39,%r124,%r274; .loc 1 276 11 fma.rn.f64 %r41,%r114,0dbfe0000000000000,%r126; .loc 1 276 6 add.f64 %r95,%r41,%r115; .loc 1 276 20 bra $L31; $L28: .loc 1 278 5 mul.f64 %r118,%r113,%r113; .loc 1 279 5 mul.f64 %r119,%r118,%r113; .loc 1 280 29 fma.rn.f64 %r42,%r119,0d3f34af6d6c0ebbf7,0dbf56fe8ebf2d1af1; .loc 1 280 22 fma.rn.f64 %r43,%r42,%r119,0d3f78fce0e370e344; .loc 1 280 16 fma.rn.f64 %r44,%r43,%r119,0dbfa0c9a8df35b713; .loc 1 280 6 fma.rn.f64 %r120,%r44,%r119,0d3fdef72bc8ee38a2; .loc 1 281 29 fma.rn.f64 %r45,%r119,0dbf347f24ecc38c38,0d3f4cdf0cef61a8e9; .loc 1 281 22 fma.rn.f64 %r46,%r45,%r119,0dbf6e2effb3e914d7; .loc 1 281 16 fma.rn.f64 %r47,%r46,%r119,0d3f9266e7970af9ec; .loc 1 281 6 fma.rn.f64 %r121,%r47,%r119,0dbfc2e4278dc6c509; .loc 1 282 29 fma.rn.f64 %r48,%r119,0d3f35fd3ee8c2d3f4,0dbf41a6109c73e0ec; .loc 1 282 22 fma.rn.f64 %r49,%r48,%r119,0d3f6282d32e15c915; .loc 1 282 16 fma.rn.f64 %r50,%r49,%r119,0dbf851f9fba91ec6a; .loc 1 282 6 fma.rn.f64 %r122,%r50,%r119,0d3fb08b4294d5419b; .loc 1 283 22 fma.rn.f64 %r51,%r122,%r113,%r121; .loc 1 283 16 neg.f64 %r276,%r51; fma.rn.f64 %r52,%r276,%r119,0dbc50c7caa48a971f; .loc 1 283 6 neg.f64 %r277,%r52; fma.rn.f64 %r123,%r118,%r120,%r277; .loc 1 284 12 mov.f64 %r279,0d3fbf19b9bcc38a42; sub.f64 %r278,%r123,%r279; .loc 1 284 5 add.f64 %r95,%r278,%r115; .loc 1 284 18 bra $L31; $L27: .loc 1 286 37 fma.rn.f64 %r54,%r169,0d3f8b678bbf2bab09,0d3fcd4eaef6010924; .loc 1 286 31 fma.rn.f64 %r55,%r54,%r169,0d3fef497644ea8450; .loc 1 286 25 fma.rn.f64 %r56,%r55,%r169,0d3ff7475cd119bd6f; .loc 1 286 19 fma.rn.f64 %r57,%r56,%r169,0d3fe4401e8b005dff; .loc 1 286 13 fma.rn.f64 %r58,%r57,%r169,0dbfb3c467e37db0c8; .loc 1 286 6 mul.f64 %r116,%r58,%r169; .loc 1 287 35 fma.rn.f64 %r59,%r169,0d3f6a5abb57d0cf61,0d3fbaae55d6537c88; .loc 1 287 29 fma.rn.f64 %r60,%r59,%r169,0d3fe89dfbe45050af; .loc 1 287 23 fma.rn.f64 %r61,%r60,%r169,0d40010725a42b18f5; .loc 1 287 17 fma.rn.f64 %r62,%r61,%r169,0d4003a5d7c2bd619c; .loc 1 287 6 fma.rn.f64 %r117,%r62,%r169,0d3ff0000000000000; .loc 1 288 20 div.rn.f64 %r280,%r116,%r117; .loc 1 288 16 fma.rn.f64 %r64,%r169,0dbfe0000000000000,%r280; .loc 1 288 5 add.f64 %r95,%r64,%r115; bra $L31; $L23: .loc 1 291 9 setp.gt.s32 %r281,%r100,1075838975; @ %r281 bra $L32; .loc 1 292 8 cvt.rzi.s32.f64 %r105,%r169; .loc 1 294 12 cvt.rn.f64.s32 %r282,%r105; .loc 1 294 8 sub.f64 %r106,%r169,%r282; .loc 1 295 45 fma.rn.f64 %r66,%r106,0d3f00bfecdd17e945,0d3f5e26b67368f239; .loc 1 295 39 fma.rn.f64 %r67,%r66,%r106,0d3f9b481c7e939961; .loc 1 295 33 fma.rn.f64 %r68,%r67,%r106,0d3fc2bb9cbee5f2f7; .loc 1 295 27 fma.rn.f64 %r69,%r68,%r106,0d3fd4d98f4f139f59; .loc 1 295 21 fma.rn.f64 %r70,%r69,%r106,0d3fcb848b36e20878; .loc 1 295 15 fma.rn.f64 %r71,%r70,%r106,0dbfb3c467e37db0c8; .loc 1 295 8 mul.f64 %r107,%r71,%r106; .loc 1 296 43 fma.rn.f64 %r72,%r106,0d3edebaf7a5b38140,0d3f497ddaca41a95b; .loc 1 296 37 fma.rn.f64 %r73,%r72,%r106,0d3f9317ea742ed475; .loc 1 296 31 fma.rn.f64 %r74,%r73,%r106,0d3fc601edccfbdf27; .loc 1 296 25 fma.rn.f64 %r75,%r74,%r106,0d3fe71a1893d3dcdc; .loc 1 296 19 fma.rn.f64 %r76,%r75,%r106,0d3ff645a762c4ab74; .loc 1 296 8 fma.rn.f64 %r108,%r76,%r106,0d3ff0000000000000; .loc 1 297 18 div.rn.f64 %r283,%r107,%r108; .loc 1 297 8 fma.rn.f64 %r95,%r106,0d3fe0000000000000,%r283; .loc 1 299 6 setp.eq.u32 %r284,%r105,5; @ %r284 bra $L41; setp.gt.s32 %r285,%r105,5; @ %r285 bra $L34; setp.eq.u32 %r286,%r105,3; @ %r286 bra $L42; setp.eq.u32 %r287,%r105,4; @ %r287 bra $L43; bra $L31; $L34: setp.eq.u32 %r288,%r105,6; @ %r288 bra $L44; setp.ne.u32 %r289,%r105,7; @ %r289 bra $L31; .loc 1 300 21 add.f64 %r78,%r106,0d4018000000000000; bra $L37; $L44: .loc 1 299 6 mov.f64 %r78,0d3ff0000000000000; $L37: .loc 1 301 21 add.f64 %r290,%r106,0d4014000000000000; .loc 1 301 16 mul.f64 %r92,%r290,%r78; bra $L33; $L41: .loc 1 299 6 mov.f64 %r92,0d3ff0000000000000; $L33: .loc 1 302 21 add.f64 %r291,%r106,0d4010000000000000; .loc 1 302 16 mul.f64 %r93,%r291,%r92; bra $L36; $L43: .loc 1 299 6 mov.f64 %r93,0d3ff0000000000000; $L36: .loc 1 303 21 add.f64 %r292,%r106,0d4008000000000000; .loc 1 303 16 mul.f64 %r94,%r292,%r93; bra $L35; $L42: .loc 1 299 6 mov.f64 %r94,0d3ff0000000000000; $L35: .loc 1 304 21 add.f64 %r294,%r106,0d4000000000000000; .loc 1 304 16 mul.f64 %r295,%r294,%r94; .loc 1 305 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r295; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r296,[%value_in]; } .loc 1 305 9 add.f64 %r95,%r95,%r296; .loc 1 305 30 bra $L31; $L32: .loc 1 308 12 setp.gt.s32 %r297,%r100,1133510655; @ %r297 bra $L38; .loc 1 309 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r299,[%value_in]; } .loc 1 310 8 mov.f64 %r300,0d3ff0000000000000; div.rn.f64 %r102,%r300,%r169; .loc 1 311 8 mul.f64 %r103,%r102,%r102; .loc 1 312 42 fma.rn.f64 %r83,%r103,0dbf5ab89d0b9e43e4,0d3f4b67ba4cdad5d1; .loc 1 312 36 fma.rn.f64 %r84,%r83,%r103,0dbf4380cb8c0fe741; .loc 1 312 30 fma.rn.f64 %r85,%r84,%r103,0d3f4a019f98cf38b6; .loc 1 312 24 fma.rn.f64 %r86,%r85,%r103,0dbf66c16c16b02e5c; .loc 1 312 18 fma.rn.f64 %r87,%r86,%r103,0d3fb555555555553b; .loc 1 312 8 fma.rn.f64 %r104,%r87,%r102,0d3fdacfe390c97d69; .loc 1 313 12 mov.f64 %r302,0d3fe0000000000000; sub.f64 %r301,%r169,%r302; .loc 1 313 21 sub.f64 %r303,%r299,%r300; .loc 1 313 8 fma.rn.f64 %r95,%r301,%r303,%r104; bra $L31; $L38: .loc 1 316 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r169; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r306,[%value_in]; } .loc 1 316 30 mov.f64 %r308,0d3ff0000000000000; sub.f64 %r307,%r306,%r308; .loc 1 316 8 mul.f64 %r95,%r307,%r169; $L31: .loc 1 317 4 @ ! %r317 bra $L22; bra $L45; $L40: .loc 1 256 61 mov.f64 %r95,0d0000000000000000; $L22: .loc 1 317 13 sub.f64 %r168,%r168,%r95; bra $L1; $L45: mov.f64 %r168,%r95; bra $L1; $L46: .loc 1 256 61 mov.f64 %r168,0d0000000000000000; bra $L1; $L47: mov.f64 %r168,0d0000000000000000; bra $L1; $L8: .loc 1 256 10 add.u32 %r311,%r100,-1072693248; .loc 1 256 22 or.b32 %r312,%r311,%r99; .loc 1 256 4 setp.eq.u32 %r313,%r312,0; @ %r313 bra $L46; .loc 1 256 37 add.u32 %r314,%r100,-1073741824; .loc 1 256 49 or.b32 %r315,%r314,%r99; .loc 1 256 30 setp.eq.u32 %r316,%r315,0; @ %r316 bra $L47; .loc 1 220 15 mov.f64 %r168,0d0000000000000000; bra $L39; $L1: .loc 1 319 1 mov.f64 %value,%r168; st.param.f64 [%value_out],%value; ret; } /350 0 0 0 644 18086 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .visible .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/erf_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .extern .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: floorf .extern .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .extern .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __ieee754_lgammaf_r .visible .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r77; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .u32 %r97; .reg .u32 %r98; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .u32 %r104; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r126; .reg .f32 %r128; .reg .f32 %r130; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .f32 %r138; .reg .f32 %r141; .reg .f32 %r144; .reg .f32 %r150; .reg .f32 %r153; .reg .f32 %r156; .reg .f32 %r161; .reg .f32 %r163; .reg .f32 %r164; .reg .u64 %r165; .reg .u32 %r166; .reg .pred %r167; .reg .pred %r168; .reg .pred %r169; .reg .u32 %r170; .reg .f32 %r171; .reg .pred %r173; .reg .pred %r174; .reg .u32 %r175; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r180; .reg .pred %r182; .reg .pred %r183; .reg .f32 %r185; .reg .u32 %r186; .reg .f32 %r187; .reg .f32 %r188; .reg .f32 %r190; .reg .pred %r191; .reg .f32 %r193; .reg .f32 %r194; .reg .pred %r195; .reg .f32 %r196; .reg .f32 %r197; .reg .pred %r198; .reg .pred %r199; .reg .u32 %r200; .reg .pred %r201; .reg .f32 %r202; .reg .f32 %r203; .reg .f32 %r205; .reg .f32 %r206; .reg .u32 %r207; .reg .pred %r208; .reg .f32 %r210; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r216; .reg .u32 %r217; .reg .f32 %r218; .reg .f32 %r220; .reg .f32 %r221; .reg .f32 %r222; .reg .f32 %r223; .reg .f32 %r224; .reg .f32 %r225; .reg .f32 %r226; .reg .f32 %r228; .reg .u32 %r229; .reg .f32 %r230; .reg .pred %r231; .reg .f32 %r233; .reg .f32 %r234; .reg .f32 %r236; .reg .f32 %r237; .reg .f32 %r238; .reg .pred %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .pred %r243; .reg .u32 %r244; .reg .pred %r245; .reg .pred %r246; .reg .f32 %r248; .reg .pred %r249; .reg .f32 %r250; .reg .pred %r251; .reg .f32 %r252; .reg .pred %r253; .reg .f32 %r254; .reg .pred %r255; .reg .f32 %r256; .reg .f32 %r257; .reg .f32 %r258; .reg .f32 %r260; .reg .f32 %r261; .reg .f32 %r262; .reg .f32 %r263; .reg .f32 %r264; .reg .pred %r265; .reg .f32 %r266; .reg .f32 %r267; .reg .pred %r268; .reg .pred %r269; .reg .pred %r270; .reg .pred %r271; .reg .pred %r272; .reg .pred %r273; .reg .f32 %r274; .reg .f32 %r275; .reg .f32 %r276; .reg .f32 %r278; .reg .f32 %r279; .reg .f32 %r280; .reg .pred %r281; .reg .f32 %r283; .reg .f32 %r284; .reg .f32 %r285; .reg .f32 %r286; .reg .f32 %r287; .reg .f32 %r290; .reg .f32 %r291; .reg .f32 %r292; .reg .u32 %r295; .reg .u32 %r296; .reg .pred %r297; .reg .pred %r298; mov.f32 %r164,%ar0; mov.u64 %r165,%ar1; .loc 1 158 2 mov.b32 %r97,%r164; .loc 1 161 12 mov.u32 %r166,1; st.u32 [%r165],%r166; .loc 1 162 5 and.b32 %r98,%r97,2147483647; .loc 1 163 4 setp.le.s32 %r167,%r98,2139095039; @ %r167 bra $L2; .loc 1 164 14 mul.f32 %r163,%r164,%r164; bra $L1; $L2: .loc 1 166 4 setp.ne.u32 %r168,%r98,0; @ %r168 bra $L4; .loc 1 167 8 setp.ge.s32 %r169,%r97,0; @ %r169 bra $L5; .loc 1 168 20 mov.u32 %r170,-1; st.u32 [%r165],%r170; $L5: .loc 1 169 19 sub.f32 %r171,%r164,%r164; .loc 1 169 16 rcp.rn.f32 %r163,%r171; bra $L1; $L4: .loc 1 171 4 setp.gt.s32 %r173,%r98,478150655; @ %r173 bra $L6; .loc 1 172 8 setp.ge.s32 %r174,%r97,0; @ %r174 bra $L7; .loc 1 173 20 mov.u32 %r175,-1; st.u32 [%r165],%r175; .loc 1 174 18 neg.f32 %r177,%r164; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r177; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r178,[%value_in]; } .loc 1 174 17 neg.f32 %r163,%r178; bra $L1; $L7: .loc 1 175 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r180,[%value_in]; } .loc 1 175 20 neg.f32 %r163,%r180; bra $L1; $L6: .loc 1 177 4 setp.ge.s32 %r298,%r97,0; @ %r298 bra $L8; .loc 1 178 8 setp.gt.s32 %r182,%r98,1258291199; @ %r182 bra $L5; .loc 1 110 4 setp.gt.s32 %r183,%r98,1048575999; @ %r183 bra $L9; .loc 1 110 27 mul.f32 %r187,%r164,0f40490fdb; mov.u32 %r186,0; mov.f32 %r185,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r187; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r185; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r186; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r188,[%value_in]; } mov.f32 %r153,%r188; bra $L10; $L9: .loc 1 111 4 neg.f32 %r126,%r164; .loc 1 117 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r126; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r190,[%value_in]; } .loc 1 118 4 setp.eq.f32 %r191,%r126,%r190; @ %r191 bra $L11; .loc 1 119 9 mul.f32 %r128,%r126,0f3f000000; .loc 1 120 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r128; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r193,[%value_in]; } .loc 1 120 26 sub.f32 %r130,%r128,%r193; .loc 1 120 10 add.f32 %r161,%r130,%r130; .loc 1 121 26 mul.f32 %r194,%r161,0f40800000; .loc 1 121 10 cvt.rzi.s32.f32 %r136,%r194; .loc 1 133 2 setp.gt.s32 %r195,%r136,4; @ %r195 bra $L12; bra $L13; $L11: .loc 1 127 3 mov.f32 %r197,0f4b000000; sub.f32 %r196,%r197,%r164; mov.b32 %r134,%r196; .loc 1 128 5 and.b32 %r135,%r134,1; .loc 1 129 20 cvt.rn.f32.s32 %r161,%r135; .loc 1 130 18 shl.b32 %r136,%r135,2; $L13: .loc 1 133 2 setp.gt.s32 %r198,%r136,2; @ %r198 bra $L14; setp.eq.u32 %r199,%r136,0; @ %r199 bra $L15; add.u32 %r200,%r136,-1; setp.gt.u32 %r201,%r200,1; @ %r201 bra $L16; .loc 1 136 49 mov.f32 %r203,0f3f000000; sub.f32 %r202,%r203,%r161; .loc 1 136 21 mul.f32 %r141,%r202,0f40490fdb; mov.f32 %r205,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r141; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r205; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r206,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r206; .loc 1 136 60 bra $L10; $L12: .loc 1 133 2 add.u32 %r207,%r136,-5; setp.gt.u32 %r208,%r207,1; @ ! %r208 bra $L48; bra $L16; $L15: .loc 1 134 21 mul.f32 %r138,%r161,0f40490fdb; mov.f32 %r210,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r138; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r210; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r136; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r212,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r212; .loc 1 134 49 bra $L10; $L14: .loc 1 138 42 mov.f32 %r214,0f3f800000; sub.f32 %r213,%r214,%r161; .loc 1 138 21 mul.f32 %r144,%r213,0f40490fdb; mov.u32 %r217,0; mov.f32 %r216,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r144; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r216; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r217; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r218,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r218; .loc 1 138 55 bra $L10; $L48: .loc 1 140 40 mov.f32 %r222,0f3fc00000; sub.f32 %r221,%r161,%r222; .loc 1 140 21 mul.f32 %r223,%r221,0f40490fdb; mov.f32 %r220,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r223; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r220; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r224,[%value_in]; } mov.f32 %r153,%r224; .loc 1 140 60 bra $L10; $L16: .loc 1 141 40 mov.f32 %r226,0f40000000; sub.f32 %r225,%r161,%r226; .loc 1 141 21 mul.f32 %r150,%r225,0f40490fdb; mov.u32 %r229,0; mov.f32 %r228,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r150; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r228; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r229; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r230,[%value_in]; } .loc 1 143 9 neg.f32 %r153,%r230; $L10: .loc 1 182 8 setp.eq.f32 %r231,%r153,0f00000000; @ %r231 bra $L5; .loc 1 186 31 mul.f32 %r233,%r164,%r153; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r233; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r234,[%value_in]; } .loc 1 186 13 mov.f32 %r237,0f40490fdb; div.rn.f32 %r236,%r237,%r234; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r236; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r238,[%value_in]; } mov.f32 %r163,%r238; .loc 1 187 8 setp.lt.f32 %r239,%r153,0f00000000; @ ! %r239 bra $L19; .loc 1 187 27 mov.u32 %r240,-1; st.u32 [%r165],%r240; $L19: .loc 1 192 8 add.u32 %r241,%r98,-1065353216; and.b32 %r242,%r241,-8388609; .loc 1 192 5 setp.eq.u32 %r243,%r242,0; @ %r243 bra $L1; .loc 1 188 8 neg.f32 %r164,%r164; .loc 1 186 13 mov.f32 %r156,%r238; $L38: .loc 1 194 9 and.b32 %r244,%r97,1073741824; setp.ne.u32 %r245,%r244,0; @ %r245 bra $L22; .loc 1 195 8 setp.gt.s32 %r246,%r98,1063675494; @ %r246 bra $L23; .loc 1 196 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r248,[%value_in]; } .loc 1 196 5 neg.f32 %r113,%r248; .loc 1 197 5 setp.le.s32 %r249,%r98,1060850207; @ %r249 bra $L24; .loc 1 197 25 mov.f32 %r250,0f3f800000; sub.f32 %r112,%r250,%r164; bra $L25; $L24: .loc 1 198 10 setp.le.s32 %r251,%r98,1047343879; @ %r251 bra $L26; .loc 1 198 29 mov.f32 %r252,0f3eec5b0c; sub.f32 %r111,%r164,%r252; bra $L27; $L23: .loc 1 202 12 setp.le.s32 %r253,%r98,1071490583; @ %r253 bra $L28; .loc 1 202 31 mov.f32 %r254,0f40000000; sub.f32 %r112,%r254,%r164; .loc 1 201 7 mov.f32 %r113,0f00000000; bra $L25; $L28: .loc 1 203 17 setp.le.s32 %r255,%r98,1067296287; @ %r255 bra $L29; .loc 1 203 36 mov.f32 %r256,0f3fbb16c3; sub.f32 %r111,%r164,%r256; .loc 1 201 7 mov.f32 %r113,0f00000000; bra $L27; $L29: .loc 1 204 10 mov.f32 %r257,0f3f800000; sub.f32 %r164,%r164,%r257; .loc 1 201 7 mov.f32 %r113,0f00000000; bra $L26; $L25: .loc 1 208 5 mul.f32 %r122,%r112,%r112; .loc 1 209 34 fma.rn.f32 %r30,%r122,0f37d383a2,0f39679767; .loc 1 209 28 fma.rn.f32 %r31,%r30,%r122,0f3a9c54a1; .loc 1 209 22 fma.rn.f32 %r32,%r31,%r122,0f3bf2027e; .loc 1 209 16 fma.rn.f32 %r33,%r32,%r122,0f3d89f001; .loc 1 209 6 fma.rn.f32 %r123,%r33,%r122,0f3d9e233f; .loc 1 210 37 fma.rn.f32 %r34,%r122,0f383c2c75,0f38e28445; .loc 1 210 31 fma.rn.f32 %r35,%r34,%r122,0f3a05b634; .loc 1 210 25 fma.rn.f32 %r36,%r35,%r122,0f3b3d6ec6; .loc 1 210 19 fma.rn.f32 %r37,%r36,%r122,0f3ca89915; .loc 1 210 13 fma.rn.f32 %r38,%r37,%r122,0f3ea51a66; .loc 1 211 9 mul.f32 %r258,%r123,%r112; .loc 1 211 6 fma.rn.f32 %r124,%r38,%r122,%r258; .loc 1 212 11 fma.rn.f32 %r40,%r112,0fbf000000,%r124; .loc 1 212 6 add.f32 %r163,%r40,%r113; .loc 1 212 27 bra $L30; $L27: .loc 1 214 5 mul.f32 %r116,%r111,%r111; .loc 1 215 5 mul.f32 %r117,%r116,%r111; .loc 1 216 29 fma.rn.f32 %r41,%r117,0f39a57b6b,0fbab7f476; .loc 1 216 22 fma.rn.f32 %r42,%r41,%r117,0f3bc7e707; .loc 1 216 16 fma.rn.f32 %r43,%r42,%r117,0fbd064d47; .loc 1 216 6 fma.rn.f32 %r118,%r43,%r117,0f3ef7b95e; .loc 1 217 29 fma.rn.f32 %r44,%r117,0fb9a3f927,0f3a66f867; .loc 1 217 22 fma.rn.f32 %r45,%r44,%r117,0fbb7177fe; .loc 1 217 16 fma.rn.f32 %r46,%r45,%r117,0f3c93373d; .loc 1 217 6 fma.rn.f32 %r119,%r46,%r117,0fbe17213c; .loc 1 218 29 fma.rn.f32 %r47,%r117,0f39afe9f7,0fba0d3085; .loc 1 218 22 fma.rn.f32 %r48,%r47,%r117,0f3b141699; .loc 1 218 16 fma.rn.f32 %r49,%r48,%r117,0fbc28fcfe; .loc 1 218 6 fma.rn.f32 %r120,%r49,%r117,0f3d845a15; .loc 1 219 22 fma.rn.f32 %r50,%r120,%r111,%r119; .loc 1 219 16 neg.f32 %r260,%r50; fma.rn.f32 %r51,%r260,%r117,0f31e61c52; .loc 1 219 6 neg.f32 %r261,%r51; fma.rn.f32 %r121,%r116,%r118,%r261; .loc 1 220 12 mov.f32 %r263,0f3df8cdcd; sub.f32 %r262,%r121,%r263; .loc 1 220 5 add.f32 %r163,%r262,%r113; .loc 1 220 18 bra $L30; $L26: .loc 1 222 37 fma.rn.f32 %r53,%r164,0f3c5b3c5e,0f3e6a7578; .loc 1 222 31 fma.rn.f32 %r54,%r53,%r164,0f3f7a4bb2; .loc 1 222 25 fma.rn.f32 %r55,%r54,%r164,0f3fba3ae7; .loc 1 222 19 fma.rn.f32 %r56,%r55,%r164,0f3f2200f4; .loc 1 222 13 fma.rn.f32 %r57,%r56,%r164,0fbd9e233f; .loc 1 222 6 mul.f32 %r114,%r57,%r164; .loc 1 223 35 fma.rn.f32 %r58,%r164,0f3b52d5db,0f3dd572af; .loc 1 223 29 fma.rn.f32 %r59,%r58,%r164,0f3f44efdf; .loc 1 223 23 fma.rn.f32 %r60,%r59,%r164,0f4008392d; .loc 1 223 17 fma.rn.f32 %r61,%r60,%r164,0f401d2ebe; .loc 1 223 6 fma.rn.f32 %r115,%r61,%r164,0f3f800000; .loc 1 224 27 div.rn.f32 %r264,%r114,%r115; .loc 1 224 23 fma.rn.f32 %r63,%r164,0fbf000000,%r264; .loc 1 224 5 add.f32 %r163,%r63,%r113; bra $L30; $L22: .loc 1 227 9 setp.gt.s32 %r265,%r98,1090519039; @ %r265 bra $L31; .loc 1 228 8 cvt.rzi.s32.f32 %r104,%r164; .loc 1 230 12 cvt.rn.f32.s32 %r266,%r104; .loc 1 230 8 sub.f32 %r106,%r164,%r266; .loc 1 231 45 fma.rn.f32 %r65,%r106,0f3805ff67,0f3af135b4; .loc 1 231 39 fma.rn.f32 %r66,%r65,%r106,0f3cda40e4; .loc 1 231 33 fma.rn.f32 %r67,%r66,%r106,0f3e15dce6; .loc 1 231 27 fma.rn.f32 %r68,%r67,%r106,0f3ea6cc7a; .loc 1 231 21 fma.rn.f32 %r69,%r68,%r106,0f3e5c245a; .loc 1 231 15 fma.rn.f32 %r70,%r69,%r106,0fbd9e233f; .loc 1 231 8 mul.f32 %r107,%r70,%r106; .loc 1 232 43 fma.rn.f32 %r71,%r106,0f36f5d7bd,0f3a4beed6; .loc 1 232 37 fma.rn.f32 %r72,%r71,%r106,0f3c98bf54; .loc 1 232 31 fma.rn.f32 %r73,%r72,%r106,0f3e300f6e; .loc 1 232 25 fma.rn.f32 %r74,%r73,%r106,0f3f38d0c5; .loc 1 232 19 fma.rn.f32 %r75,%r74,%r106,0f3fb22d3b; .loc 1 232 8 fma.rn.f32 %r108,%r75,%r106,0f3f800000; .loc 1 233 18 div.rn.f32 %r267,%r107,%r108; .loc 1 233 8 fma.rn.f32 %r163,%r106,0f3f000000,%r267; .loc 1 235 6 setp.eq.u32 %r268,%r104,5; @ %r268 bra $L39; setp.gt.s32 %r269,%r104,5; @ %r269 bra $L33; setp.eq.u32 %r270,%r104,3; @ %r270 bra $L40; setp.eq.u32 %r271,%r104,4; @ %r271 bra $L41; bra $L30; $L33: setp.eq.u32 %r272,%r104,6; @ %r272 bra $L42; setp.ne.u32 %r273,%r104,7; @ %r273 bra $L30; .loc 1 236 21 add.f32 %r77,%r106,0f40c00000; bra $L36; $L42: .loc 1 235 6 mov.f32 %r77,0f3f800000; $L36: .loc 1 237 21 add.f32 %r274,%r106,0f40a00000; .loc 1 237 16 mul.f32 %r92,%r274,%r77; bra $L32; $L39: .loc 1 235 6 mov.f32 %r92,0f3f800000; $L32: .loc 1 238 21 add.f32 %r275,%r106,0f40800000; .loc 1 238 16 mul.f32 %r93,%r275,%r92; bra $L35; $L41: .loc 1 235 6 mov.f32 %r93,0f3f800000; $L35: .loc 1 239 21 add.f32 %r276,%r106,0f40400000; .loc 1 239 16 mul.f32 %r94,%r276,%r93; bra $L34; $L40: .loc 1 235 6 mov.f32 %r94,0f3f800000; $L34: .loc 1 240 21 add.f32 %r278,%r106,0f40000000; .loc 1 240 16 mul.f32 %r279,%r278,%r94; .loc 1 241 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r279; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r280,[%value_in]; } .loc 1 241 9 add.f32 %r163,%r163,%r280; .loc 1 241 31 bra $L30; $L31: .loc 1 244 12 setp.gt.s32 %r281,%r98,1551892479; @ %r281 bra $L37; .loc 1 245 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r283,[%value_in]; } .loc 1 246 8 mov.f32 %r284,0f3f800000; div.rn.f32 %r101,%r284,%r164; .loc 1 247 8 mul.f32 %r102,%r101,%r101; .loc 1 248 42 fma.rn.f32 %r82,%r102,0fbad5c4e8,0f3a5b3dd2; .loc 1 248 36 fma.rn.f32 %r83,%r82,%r102,0fba1c065c; .loc 1 248 30 fma.rn.f32 %r84,%r83,%r102,0f3a500cfd; .loc 1 248 24 fma.rn.f32 %r85,%r84,%r102,0fbb360b61; .loc 1 248 18 fma.rn.f32 %r86,%r85,%r102,0f3daaaaab; .loc 1 248 8 fma.rn.f32 %r103,%r86,%r101,0f3ed67f1d; .loc 1 249 12 mov.f32 %r286,0f3f000000; sub.f32 %r285,%r164,%r286; .loc 1 249 21 sub.f32 %r287,%r283,%r284; .loc 1 249 8 fma.rn.f32 %r163,%r285,%r287,%r103; bra $L30; $L37: .loc 1 252 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r164; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r290,[%value_in]; } .loc 1 252 31 mov.f32 %r292,0f3f800000; sub.f32 %r291,%r290,%r292; .loc 1 252 8 mul.f32 %r163,%r291,%r164; $L30: .loc 1 253 4 @ %r298 bra $L1; .loc 1 253 13 sub.f32 %r163,%r156,%r163; bra $L1; $L43: .loc 1 192 40 mov.f32 %r163,0f00000000; bra $L1; $L8: .loc 1 192 8 add.u32 %r295,%r98,-1065353216; and.b32 %r296,%r295,-8388609; .loc 1 192 5 setp.eq.u32 %r297,%r296,0; @ %r297 bra $L43; .loc 1 155 14 mov.f32 %r156,0f00000000; bra $L38; $L1: .loc 1 255 1 mov.f32 %value,%r163; st.param.f32 [%value_out],%value; ret; } lib_a-erfcl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erfcl .visible .func (.param .f64 %value_out) erfcl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/erfcl.c" // BEGIN GLOBAL FUNCTION DECL: erfc .extern .func (.param .f64 %value_out) erfc (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erfcl .visible .func (.param .f64 %value_out) erfcl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),erfc,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-erfl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erfl .visible .func (.param .f64 %value_out) erfl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/erfl.c" // BEGIN GLOBAL FUNCTION DECL: erf .extern .func (.param .f64 %value_out) erf (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erfl .visible .func (.param .f64 %value_out) erfl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),erf,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-exp.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-exp2.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-exp2l.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp2l .visible .func (.param .f64 %value_out) exp2l (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/exp2l.c" // BEGIN GLOBAL FUNCTION DECL: exp2 .extern .func (.param .f64 %value_out) exp2 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: exp2l .visible .func (.param .f64 %value_out) exp2l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),exp2,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /370 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-expl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expl .visible .func (.param .f64 %value_out) expl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/expl.c" // BEGIN GLOBAL FUNCTION DECL: exp .extern .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expl .visible .func (.param .f64 %value_out) expl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),exp,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-expm1l.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expm1l .visible .func (.param .f64 %value_out) expm1l (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/expm1l.c" // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expm1l .visible .func (.param .f64 %value_out) expm1l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-fabsl.o/ 0 0 0 644 530 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fabsl .visible .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/fabsl.c" // BEGIN GLOBAL FUNCTION DEF: fabsl .visible .func (.param .f64 %value_out) fabsl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 abs.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-fdiml.o/ 0 0 0 644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fdiml .visible .func (.param .f64 %value_out) fdiml (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/fdiml.c" // BEGIN GLOBAL FUNCTION DECL: fdim .extern .func (.param .f64 %value_out) fdim (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fdiml .visible .func (.param .f64 %value_out) fdiml (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fdim,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /388 0 0 0 644 275 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL VAR DEF: __fe_dfl_env .visible .global .align 4 .u32 __fe_dfl_env[1]; // END PREAMBLE // BEGIN GLOBAL VAR DEF: _fe_dfl_env .visible .global .align 8 .u64 _fe_dfl_env[1] = {generic(__fe_dfl_env) }; /408 0 0 0 644 618 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feclearexcept .visible .func (.param .u32 %value_out) feclearexcept (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/feclearexcept.c" // BEGIN GLOBAL FUNCTION DEF: feclearexcept .visible .func (.param .u32 %value_out) feclearexcept (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .pred %r24; mov.u32 %r23,%ar0; .loc 1 66 32 setp.ne.u32 %r24,%r23,0; selp.u32 %value,-134,0,%r24; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /431 0 0 0 644 508 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fegetenv .visible .func (.param .u32 %value_out) fegetenv (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/fegetenv.c" // BEGIN GLOBAL FUNCTION DEF: fegetenv .visible .func (.param .u32 %value_out) fegetenv (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 66 10 mov.u32 %value,-134; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /449 0 0 0 644 630 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fegetexceptflag .visible .func (.param .u32 %value_out) fegetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/fenv/fegetexceptflag.c" // BEGIN GLOBAL FUNCTION DEF: fegetexceptflag .visible .func (.param .u32 %value_out) fegetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .loc 1 67 10 mov.u32 %value,-134; .loc 1 68 1 st.param.u32 [%value_out],%value; ret; } /474 0 0 0 644 429 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fegetround .visible .func (.param .u32 %value_out) fegetround; .file 1 "../../../../../../newlib/libm/fenv/fegetround.c" // BEGIN GLOBAL FUNCTION DEF: fegetround .visible .func (.param .u32 %value_out) fegetround { .reg .u32 %value; .loc 1 65 10 mov.u32 %value,-134; .loc 1 66 1 st.param.u32 [%value_out],%value; ret; } /494 0 0 0 644 528 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feholdexcept .visible .func (.param .u32 %value_out) feholdexcept (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/feholdexcept.c" // BEGIN GLOBAL FUNCTION DEF: feholdexcept .visible .func (.param .u32 %value_out) feholdexcept (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 69 10 mov.u32 %value,-134; .loc 1 70 1 st.param.u32 [%value_out],%value; ret; } /516 0 0 0 644 618 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feraiseexcept .visible .func (.param .u32 %value_out) feraiseexcept (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/feraiseexcept.c" // BEGIN GLOBAL FUNCTION DEF: feraiseexcept .visible .func (.param .u32 %value_out) feraiseexcept (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .pred %r24; mov.u32 %r23,%ar0; .loc 1 66 32 setp.ne.u32 %r24,%r23,0; selp.u32 %value,-134,0,%r24; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /539 0 0 0 644 508 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fesetenv .visible .func (.param .u32 %value_out) fesetenv (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/fesetenv.c" // BEGIN GLOBAL FUNCTION DEF: fesetenv .visible .func (.param .u32 %value_out) fesetenv (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 71 10 mov.u32 %value,-134; .loc 1 72 1 st.param.u32 [%value_out],%value; ret; } /557 0 0 0 644 630 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fesetexceptflag .visible .func (.param .u32 %value_out) fesetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/fenv/fesetexceptflag.c" // BEGIN GLOBAL FUNCTION DEF: fesetexceptflag .visible .func (.param .u32 %value_out) fesetexceptflag (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .loc 1 72 10 mov.u32 %value,-134; .loc 1 73 1 st.param.u32 [%value_out],%value; ret; } /582 0 0 0 644 518 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fesetround .visible .func (.param .u32 %value_out) fesetround (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/fesetround.c" // BEGIN GLOBAL FUNCTION DEF: fesetround .visible .func (.param .u32 %value_out) fesetround (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .loc 1 66 10 mov.u32 %value,-134; .loc 1 67 1 st.param.u32 [%value_out],%value; ret; } /602 0 0 0 644 525 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fetestexcept .visible .func (.param .u32 %value_out) fetestexcept (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/fetestexcept.c" // BEGIN GLOBAL FUNCTION DEF: fetestexcept .visible .func (.param .u32 %value_out) fetestexcept (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .loc 1 67 10 mov.u32 %value,0; .loc 1 68 1 st.param.u32 [%value_out],%value; ret; } /624 0 0 0 644 523 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feupdateenv .visible .func (.param .u32 %value_out) feupdateenv (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/fenv/feupdateenv.c" // BEGIN GLOBAL FUNCTION DEF: feupdateenv .visible .func (.param .u32 %value_out) feupdateenv (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 71 10 mov.u32 %value,-134; .loc 1 72 1 st.param.u32 [%value_out],%value; ret; } lib_a-floorl.o/ 0 0 0 644 543 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: floorl .visible .func (.param .f64 %value_out) floorl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/floorl.c" // BEGIN GLOBAL FUNCTION DEF: floorl .visible .func (.param .f64 %value_out) floorl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rmi.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-fmal.o/ 0 0 0 644 782 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmal .visible .func (.param .f64 %value_out) fmal (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/common/fmal.c" // BEGIN GLOBAL FUNCTION DEF: fmal .visible .func (.param .f64 %value_out) fmal (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.f64 %r25,%ar2; .loc 1 39 10 fma.rn.f64 %value,%r23,%r24,%r25; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-fmaxl.o/ 0 0 0 644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmaxl .visible .func (.param .f64 %value_out) fmaxl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/fmaxl.c" // BEGIN GLOBAL FUNCTION DECL: fmax .extern .func (.param .f64 %value_out) fmax (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fmaxl .visible .func (.param .f64 %value_out) fmaxl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fmax,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-fminl.o/ 0 0 0 644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fminl .visible .func (.param .f64 %value_out) fminl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/fminl.c" // BEGIN GLOBAL FUNCTION DECL: fmin .extern .func (.param .f64 %value_out) fmin (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fminl .visible .func (.param .f64 %value_out) fminl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fmin,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-fmodl.o/ 0 0 0 644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmodl .visible .func (.param .f64 %value_out) fmodl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/fmodl.c" // BEGIN GLOBAL FUNCTION DECL: fmod .extern .func (.param .f64 %value_out) fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: fmodl .visible .func (.param .f64 %value_out) fmodl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),fmod,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-frexpl.o/ 0 0 0 644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexpl .visible .func (.param .f64 %value_out) frexpl (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/frexpl.c" // BEGIN GLOBAL FUNCTION DECL: frexp .extern .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: frexpl .visible .func (.param .f64 %value_out) frexpl (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),frexp,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-hypotl.o/ 0 0 0 644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: hypotl .visible .func (.param .f64 %value_out) hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/hypotl.c" // BEGIN GLOBAL FUNCTION DECL: hypot .extern .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: hypotl .visible .func (.param .f64 %value_out) hypotl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 41 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),hypot,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 61 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-ilogbl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ilogbl .visible .func (.param .u32 %value_out) ilogbl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/ilogbl.c" // BEGIN GLOBAL FUNCTION DECL: ilogb .extern .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ilogbl .visible .func (.param .u32 %value_out) ilogbl (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u32 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),ilogb,(%out_arg1); ld.param.u32 %r25,[%value_in]; } .loc 1 40 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-k_cos.o/ 0 0 0 644 3365 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .visible .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/k_cos.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_cos .visible .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r34; .reg .f64 %r36; .reg .u32 %r38; .reg .f64 %r40; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .pred %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; mov.f64 %r55,%ar0; mov.f64 %r56,%ar1; .loc 1 75 2 mov.b64 %r57,%r55; shr.u64 %r58,%r57,32; cvt.u32.u64 %r59,%r58; .loc 1 76 5 and.b32 %r38,%r59,2147483647; .loc 1 77 4 setp.gt.s32 %r60,%r38,1044381695; @ %r60 bra $L2; .loc 1 78 10 cvt.rzi.s32.f64 %r61,%r55; .loc 1 78 8 setp.eq.u32 %r62,%r61,0; @ ! %r62 bra $L10; bra $L8; $L2: .loc 1 80 5 mul.f64 %r44,%r55,%r55; .loc 1 81 36 fma.rn.f64 %r23,%r44,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r24,%r23,%r44,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r25,%r24,%r44,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r26,%r25,%r44,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r27,%r26,%r44,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r50,%r27,%r44; .loc 1 82 4 setp.gt.s32 %r63,%r38,1070805810; @ %r63 bra $L5; $L7: .loc 1 83 36 mul.f64 %r64,%r55,%r56; .loc 1 83 33 neg.f64 %r65,%r64; fma.rn.f64 %r29,%r44,%r50,%r65; .loc 1 83 26 neg.f64 %r66,%r29; fma.rn.f64 %r30,%r44,0d3fe0000000000000,%r66; .loc 1 83 17 mov.f64 %r67,0d3ff0000000000000; sub.f64 %r54,%r67,%r30; bra $L1; $L5: .loc 1 85 8 setp.gt.s32 %r68,%r38,1072234496; @ %r68 bra $L9; .loc 1 88 10 add.u32 %r69,%r38,-2097152; cvt.u64.u32 %r70,%r69; shl.b64 %r74,%r70,32; mov.b64 %r36,%r74; .loc 1 91 9 mov.f64 %r75,0d3ff0000000000000; sub.f64 %r52,%r75,%r36; bra $L6; $L9: mov.f64 %r52,0d3fe7000000000000; .loc 1 86 6 mov.f64 %r36,0d3fd2000000000000; $L6: .loc 1 90 9 neg.f64 %r76,%r36; fma.rn.f64 %r40,%r44,0d3fe0000000000000,%r76; .loc 1 92 29 mul.f64 %r77,%r55,%r56; .loc 1 92 27 neg.f64 %r78,%r77; fma.rn.f64 %r34,%r44,%r50,%r78; .loc 1 92 21 sub.f64 %r79,%r40,%r34; .loc 1 92 15 sub.f64 %r54,%r52,%r79; bra $L1; $L8: .loc 1 78 29 mov.f64 %r54,0d3ff0000000000000; bra $L1; $L10: .loc 1 80 5 mul.f64 %r44,%r55,%r55; .loc 1 81 36 fma.rn.f64 %r45,%r44,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r46,%r44,%r45,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r47,%r44,%r46,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r48,%r44,%r47,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r49,%r44,%r48,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r50,%r44,%r49; bra $L7; $L1: .loc 1 94 1 mov.f64 %value,%r54; st.param.f64 [%value_out],%value; ret; } /645 0 0 0 644 26113 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2 .visible .func (.param .u32 %value_out) __kernel_rem_pio2 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../../newlib/libm/math/k_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: init_jk .const .align 4 .u32 init_jk[4] = {2,3,4,6 }; // BEGIN VAR DEF: PIo2 .const .align 8 .u64 PIo2[8] = {4609753056584663040,4500296887714185216,4393339057296375808,4285399695318056960,4174867106174599168,4069606033725587456,3955147982449410048,3848874662444400640 }; // BEGIN GLOBAL FUNCTION DEF: __kernel_rem_pio2 .visible .func (.param .u32 %value_out) __kernel_rem_pio2 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,560; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .f64 %r30; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r49; .reg .u32 %r53; .reg .u32 %r64; .reg .f64 %r65; .reg .f64 %r79; .reg .f64 %r82; .reg .u32 %r91; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .f64 %r106; .reg .u64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .u32 %r115; .reg .u32 %r116; .reg .f64 %r118; .reg .u32 %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .f64 %r123; .reg .u32 %r124; .reg .u32 %r127; .reg .u32 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .u32 %r135; .reg .f64 %r136; .reg .u64 %r137; .reg .f64 %r138; .reg .f64 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u32 %r152; .reg .u32 %r154; .reg .u64 %r160; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r184; .reg .f64 %r185; .reg .f64 %r187; .reg .f64 %r188; .reg .f64 %r189; .reg .u64 %r191; .reg .u64 %r193; .reg .u64 %r194; .reg .u32 %r197; .reg .u64 %r198; .reg .u64 %r200; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r206; .reg .u64 %r207; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r219; .reg .u64 %r220; .reg .f64 %r224; .reg .u64 %r227; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r235; .reg .u32 %r236; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .f64 %r252; .reg .u64 %r257; .reg .u64 %r258; .reg .u64 %r267; .reg .u64 %r268; .reg .u64 %r280; .reg .u64 %r282; .reg .u64 %r284; .reg .u64 %r285; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r304; .reg .u64 %r305; .reg .u32 %r306; .reg .u32 %r310; .reg .u64 %r311; .reg .u64 %r312; .reg .u32 %r319; .reg .u64 %r322; .reg .u64 %r323; .reg .u32 %r324; .reg .u32 %r325; .reg .u32 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .pred %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r336; .reg .u32 %r337; .reg .pred %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r346; .reg .u32 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .pred %r350; .reg .u64 %r352; .reg .u64 %r353; .reg .f64 %r354; .reg .f64 %r355; .reg .pred %r356; .reg .pred %r357; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u64 %r364; .reg .u64 %r365; .reg .u64 %r367; .reg .u64 %r368; .reg .u64 %r372; .reg .u32 %r373; .reg .u64 %r374; .reg .u64 %r375; .reg .f64 %r377; .reg .u32 %r378; .reg .u32 %r380; .reg .f64 %r381; .reg .pred %r382; .reg .f64 %r385; .reg .f64 %r387; .reg .f64 %r388; .reg .f64 %r390; .reg .u64 %r392; .reg .u64 %r393; .reg .u64 %r394; .reg .u64 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r408; .reg .u32 %r410; .reg .pred %r411; .reg .pred %r412; .reg .pred %r414; .reg .pred %r415; .reg .pred %r417; .reg .pred %r418; .reg .u64 %r419; .reg .u64 %r420; .reg .u64 %r421; .reg .u32 %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u64 %r426; .reg .u64 %r427; .reg .u64 %r428; .reg .u32 %r433; .reg .u32 %r434; .reg .u64 %r435; .reg .u64 %r437; .reg .u64 %r438; .reg .u32 %r441; .reg .u32 %r442; .reg .pred %r443; .reg .u64 %r447; .reg .u64 %r448; .reg .u64 %r449; .reg .u64 %r450; .reg .u32 %r455; .reg .u32 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u64 %r459; .reg .u64 %r460; .reg .u32 %r465; .reg .u32 %r466; .reg .pred %r467; .reg .f64 %r468; .reg .pred %r469; .reg .f64 %r472; .reg .pred %r473; .reg .pred %r474; .reg .u64 %r477; .reg .u64 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u64 %r483; .reg .u64 %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .u32 %r493; .reg .pred %r494; .reg .u32 %r495; .reg .pred %r496; .reg .u64 %r497; .reg .u64 %r498; .reg .u64 %r499; .reg .u64 %r501; .reg .u64 %r502; .reg .u64 %r504; .reg .u64 %r505; .reg .u64 %r507; .reg .u32 %r508; .reg .f64 %r511; .reg .pred %r512; .reg .u64 %r513; .reg .u64 %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u64 %r517; .reg .u64 %r518; .reg .u64 %r519; .reg .u32 %r521; .reg .pred %r522; .reg .u64 %r524; .reg .u32 %r525; .reg .pred %r526; .reg .u32 %r529; .reg .f64 %r530; .reg .pred %r531; .reg .f64 %r532; .reg .f64 %r533; .reg .u64 %r536; .reg .u64 %r537; .reg .u32 %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u64 %r542; .reg .u64 %r545; .reg .u64 %r546; .reg .u32 %r548; .reg .f64 %r549; .reg .f64 %r551; .reg .pred %r552; .reg .f64 %r561; .reg .u32 %r562; .reg .f64 %r563; .reg .pred %r564; .reg .f64 %r565; .reg .pred %r566; .reg .pred %r567; .reg .pred %r568; .reg .pred %r570; .reg .pred %r571; .reg .u64 %r573; .reg .u64 %r574; .reg .u64 %r576; .reg .f64 %r577; .reg .pred %r578; .reg .pred %r579; .reg .f64 %r580; .reg .pred %r581; .reg .f64 %r583; .reg .f64 %r584; .reg .pred %r585; .reg .f64 %r587; .reg .pred %r588; .reg .u64 %r591; .reg .u64 %r592; .reg .u64 %r596; .reg .u64 %r599; .reg .u32 %r600; .reg .u64 %r601; .reg .u64 %r602; .reg .f64 %r603; .reg .f64 %r604; .reg .pred %r605; .reg .u64 %r607; .reg .u64 %r608; .reg .u64 %r612; .reg .u32 %r613; .reg .u64 %r614; .reg .u64 %r616; .reg .f64 %r617; .reg .f64 %r618; .reg .pred %r619; .reg .u64 %r621; .reg .u64 %r622; .reg .f64 %r623; .reg .pred %r624; .reg .pred %r625; .reg .f64 %r626; .reg .f64 %r627; .reg .f64 %r628; .reg .u32 %r629; .reg .f64 %r630; .reg .pred %r631; .reg .pred %r632; .reg .pred %r633; .reg .pred %r634; .reg .pred %r635; .reg .pred %r636; .reg .pred %r637; .reg .pred %r638; .reg .pred %r639; .reg .pred %r640; .reg .f64 %r641; .reg .u64 %r649; .reg .u32 %r650; .reg .pred %r651; .reg .pred %r652; .reg .pred %r653; .reg .pred %r654; .reg .u64 %r656; .reg .pred %r657; .reg .u64 %r658; .reg .u64 %r659; .reg .u64 %r660; .reg .f64 %r661; .reg .u64 %r662; .reg .u64 %r663; .reg .pred %r664; .reg .pred %r665; .reg .pred %r666; .reg .u64 %r667; .reg .u32 %r668; .reg .u64 %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .pred %r674; .reg .u64 %r675; .reg .f64 %r676; mov.u64 %r322,%ar0; mov.u64 %r323,%ar1; mov.u32 %r324,%ar2; mov.u32 %r325,%ar3; mov.u32 %r326,%ar4; mov.u64 %r327,%ar5; .loc 1 176 5 cvta.const.u64 %r328,init_jk; cvt.s64.s32 %r329,%r326; shl.b64 %r330,%r329,2; add.u64 %r331,%r328,%r330; ld.u32 %r112,[%r331]; .loc 1 180 5 add.u32 %r650,%r325,-1; .loc 1 181 20 setp.lt.s32 %r332,%r324,-20; @ %r332 bra $L76; .loc 1 181 10 add.u32 %r333,%r324,-3; .loc 1 181 5 div.s32 %r96,%r333,24; .loc 1 182 17 add.u32 %r334,%r96,1; .loc 1 182 13 shl.b32 %r336,%r334,2; sub.u32 %r337,%r334,%r336; shl.b32 %r182,%r337,3; bra $L2; $L76: mov.u32 %r182,-24; .loc 1 181 29 mov.u32 %r96,0; $L2: .loc 1 182 5 add.u32 %r128,%r324,%r182; .loc 1 185 4 sub.u32 %r147,%r96,%r650; .loc 1 185 15 add.u32 %r115,%r112,%r650; .loc 1 186 11 setp.ge.s32 %r339,%r115,0; @ %r339 bra $L3; $L8: .loc 1 189 12 setp.lt.s32 %r654,%r112,0; @ %r654 bra $L4; mov.u64 %r305,%frame; mov.u32 %r306,%r650; add.u32 %r310,%r112,%r325; cvt.u64.u32 %r342,%r650; shl.b64 %r343,%r342,3; add.u64 %r344,%r322,8; add.u64 %r304,%r343,%r344; setp.ge.s32 %r653,%r650,0; add.u64 %r675,%frame,320; bra $L5; $L3: add.u64 %r311,%frame,320; cvt.s64.s32 %r345,%r147; shl.b64 %r346,%r345,2; add.u64 %r312,%r327,%r346; add.u32 %r347,%r115,1; add.u32 %r319,%r347,%r147; .loc 1 186 43 mov.f64 %r676,0d0000000000000000; $L7: setp.lt.s32 %r348,%r147,0; @ %r348 bra $L77; ld.u32 %r349,[%r312]; cvt.rn.f64.s32 %r109,%r349; bra $L6; $L77: mov.f64 %r109,%r676; $L6: .loc 1 186 29 st.f64 [%r311],%r109; .loc 1 186 20 add.u32 %r147,%r147,1; .loc 1 186 11 add.u64 %r311,%r311,8; add.u64 %r312,%r312,4; setp.ne.u32 %r350,%r147,%r319; @ %r350 bra $L7; bra $L8; $L10: cvt.s64.s32 %r352,%r306; shl.b64 %r353,%r352,3; add.u64 %r296,%r675,%r353; .loc 1 190 47 mov.u64 %r295,%r322; .loc 1 190 16 mov.f64 %r146,0d0000000000000000; $L9: .loc 1 190 35 ld.f64 %r354,[%r295]; ld.f64 %r355,[%r296]; fma.rn.f64 %r146,%r354,%r355,%r146; .loc 1 190 22 add.u64 %r295,%r295,8; add.u64 %r296,%r296,-8; setp.ne.u64 %r356,%r295,%r304; @ %r356 bra $L9; $L11: .loc 1 191 11 st.f64 [%r305],%r146; .loc 1 189 12 add.u64 %r305,%r305,8; add.u32 %r306,%r306,1; setp.eq.u32 %r357,%r306,%r310; @ %r357 bra $L4; $L5: .loc 1 190 22 @ %r653 bra $L10; .loc 1 190 16 mov.f64 %r146,0d0000000000000000; bra $L11; $L4: add.u64 %r659,%frame,480; cvt.s64.s32 %r360,%r112; shl.b64 %r361,%r360,2; add.u64 %r362,%r361,-8; add.u64 %r251,%r659,%r362; cvt.u64.u32 %r364,%r650; shl.b64 %r365,%r364,3; add.u64 %r227,%r322,%r365; .loc 1 176 5 mov.u32 %r95,%r112; setp.le.s32 %r657,%r128,0; add.u64 %r663,%frame,484; .loc 1 228 10 setp.eq.u32 %r664,%r128,1; setp.eq.u32 %r665,%r128,2; .loc 1 214 9 setp.ne.u32 %r666,%r128,0; add.u64 %r667,%frame,472; .loc 1 246 16 add.u32 %r668,%r112,-1; .loc 1 246 13 cvt.s64.s32 %r669,%r668; shl.b64 %r670,%r669,2; add.u64 %r671,%frame,%r670; add.u64 %r672,%r671,480; add.u64 %r673,%frame,320; setp.lt.s32 %r674,%r650,0; $L12: .loc 1 197 16 cvt.s64.s32 %r660,%r95; shl.b64 %r367,%r660,3; add.u64 %r368,%frame,%r367; ld.f64 %r145,[%r368]; .loc 1 197 24 setp.le.s32 %r652,%r95,0; @ %r652 bra $L13; mov.u64 %r284,%r659; add.u64 %r372,%r367,-8; add.u64 %r285,%frame,%r372; add.u32 %r373,%r95,-1; cvt.u64.u32 %r374,%r373; shl.b64 %r375,%r374,2; add.u64 %r294,%r375,%r663; $L14: .loc 1 198 42 mul.f64 %r377,%r145,0d3e70000000000000; .loc 1 198 24 cvt.rzi.s32.f64 %r378,%r377; .loc 1 198 12 cvt.rn.f64.s32 %r144,%r378; .loc 1 199 28 fma.rn.f64 %r30,%r144,0dc170000000000000,%r145; .loc 1 199 15 cvt.rzi.s32.f64 %r380,%r30; st.u32 [%r284],%r380; .loc 1 200 12 ld.f64 %r381,[%r285]; add.f64 %r145,%r144,%r381; .loc 1 197 24 add.u64 %r284,%r284,4; add.u64 %r285,%r285,-8; setp.ne.u64 %r382,%r284,%r294; @ %r382 bra $L14; $L13: .loc 1 204 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r145; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r385,[%value_in]; } .loc 1 205 11 mul.f64 %r387,%r385,0d3fc0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r387; call (%value_in),floor,(%out_arg1); ld.param.f64 %r388,[%value_in]; } .loc 1 205 4 fma.rn.f64 %r118,%r388,0dc020000000000000,%r385; .loc 1 206 5 cvt.rzi.s32.f64 %r97,%r118; .loc 1 207 7 cvt.rn.f64.s32 %r390,%r97; .loc 1 207 4 sub.f64 %r106,%r118,%r390; .loc 1 209 4 @ %r657 bra $L15; .loc 1 210 17 add.u32 %r36,%r95,-1; .loc 1 210 14 cvt.s64.s32 %r392,%r36; shl.b64 %r393,%r392,2; add.u64 %r394,%frame,%r393; add.u64 %r395,%r394,480; ld.u32 %r37,[%r395]; .loc 1 210 25 mov.u32 %r396,24; sub.u32 %r38,%r396,%r128; .loc 1 210 9 shr.s32 %r119,%r37,%r38; .loc 1 210 34 add.u32 %r97,%r97,%r119; .loc 1 211 19 shl.b32 %r397,%r119,%r38; .loc 1 211 15 sub.u32 %r42,%r37,%r397; st.u32 [%r395],%r42; .loc 1 212 24 mov.u32 %r403,23; sub.u32 %r402,%r403,%r128; .loc 1 212 9 shr.s32 %r91,%r42,%r402; bra $L16; $L15: .loc 1 214 9 @ %r666 bra $L17; .loc 1 214 27 add.u32 %r405,%r95,-1; .loc 1 214 24 cvt.s64.s32 %r406,%r405; shl.b64 %r407,%r406,2; add.u64 %r408,%frame,%r407; .loc 1 214 20 ld.u32 %r410,[%r408+480]; shr.s32 %r91,%r410,23; bra $L16; $L17: .loc 1 215 9 setp.ge.f64 %r411,%r106,0d3fe0000000000000; @ %r411 bra $L18; .loc 1 208 5 mov.u32 %r91,0; bra $L19; $L16: .loc 1 217 4 setp.le.s32 %r412,%r91,0; @ %r412 bra $L19; .loc 1 218 8 add.u32 %r97,%r97,1; .loc 1 219 15 @ ! %r652 bra $L75; bra $L78; $L87: .loc 1 215 20 mov.u32 %r91,2; $L75: .loc 1 220 5 ld.u32 %r121,[%frame+480]; .loc 1 222 9 setp.ne.u32 %r414,%r121,0; @ %r414 bra $L79; .loc 1 219 15 setp.eq.u32 %r415,%r95,1; @ %r415 bra $L20; add.u64 %r282,%frame,484; .loc 1 219 21 mov.u32 %r154,1; bra $L22; $L23: .loc 1 219 15 add.u64 %r282,%r282,4; setp.eq.u32 %r417,%r95,%r184; @ %r417 bra $L20; mov.u32 %r154,%r184; $L22: .loc 1 220 5 ld.u32 %r121,[%r282]; .loc 1 219 21 add.u32 %r184,%r154,1; .loc 1 222 9 setp.eq.u32 %r418,%r121,0; @ %r418 bra $L23; bra $L21; $L79: mov.u32 %r184,1; mov.u32 %r154,0; $L21: .loc 1 223 21 cvt.s64.s32 %r419,%r154; shl.b64 %r420,%r419,2; add.u64 %r421,%frame,%r420; .loc 1 223 32 mov.u32 %r424,16777216; sub.u32 %r423,%r424,%r121; .loc 1 223 21 st.u32 [%r421+480],%r423; .loc 1 219 15 setp.le.s32 %r425,%r95,%r184; @ %r425 bra $L80; .loc 1 220 5 cvt.s64.s32 %r426,%r184; shl.b64 %r427,%r426,2; add.u64 %r428,%frame,%r427; ld.u32 %r116,[%r428+480]; add.u64 %r268,%r659,%r427; add.u32 %r433,%r95,-1; sub.u32 %r434,%r433,%r184; cvt.u64.u32 %r435,%r434; add.u64 %r437,%r435,%r426; shl.b64 %r438,%r437,2; add.u64 %r280,%r438,%r663; .loc 1 225 28 mov.u32 %r442,16777215; $L24: sub.u32 %r441,%r442,%r116; .loc 1 225 17 st.u32 [%r268],%r441; .loc 1 219 15 add.u64 %r268,%r268,4; setp.eq.u64 %r443,%r268,%r280; @ %r443 bra $L81; .loc 1 220 5 ld.u32 %r116,[%r268]; bra $L24; $L78: .loc 1 218 20 mov.u32 %r121,0; bra $L20; $L80: .loc 1 223 10 mov.u32 %r121,1; bra $L20; $L81: mov.u32 %r121,1; $L20: .loc 1 227 8 @ %r657 bra $L25; .loc 1 228 10 @ %r664 bra $L26; @ %r665 bra $L27; bra $L25; $L26: .loc 1 230 19 add.u32 %r49,%r95,-1; cvt.s64.s32 %r447,%r49; shl.b64 %r448,%r447,2; add.u64 %r449,%frame,%r448; add.u64 %r450,%r449,480; ld.u32 %r456,[%r450]; and.b32 %r455,%r456,8388607; st.u32 [%r450],%r455; .loc 1 230 32 bra $L25; $L27: .loc 1 232 19 add.u32 %r53,%r95,-1; cvt.s64.s32 %r457,%r53; shl.b64 %r458,%r457,2; add.u64 %r459,%frame,%r458; add.u64 %r460,%r459,480; ld.u32 %r466,[%r460]; and.b32 %r465,%r466,4194303; st.u32 [%r460],%r465; $L25: .loc 1 235 8 setp.ne.u32 %r467,%r91,2; @ %r467 bra $L19; .loc 1 236 5 mov.f64 %r468,0d3ff0000000000000; sub.f64 %r106,%r468,%r106; .loc 1 237 5 setp.eq.u32 %r469,%r121,0; @ %r469 bra $L19; .loc 1 237 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r468; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r472,[%value_in]; } .loc 1 237 18 sub.f64 %r106,%r106,%r472; $L19: .loc 1 242 4 setp.neu.f64 %r473,%r106,0d0000000000000000; @ %r473 bra $L28; .loc 1 244 12 add.u32 %r127,%r95,-1; .loc 1 244 19 setp.gt.s32 %r474,%r112,%r127; @ %r474 bra $L29; shl.b64 %r258,%r660,2; add.u64 %r477,%r258,-4; add.u64 %r257,%r659,%r477; add.u64 %r480,%r667,%r258; sub.u32 %r481,%r95,%r112; add.u32 %r482,%r481,-1; cvt.u64.u32 %r483,%r482; shl.b64 %r484,%r483,2; sub.u64 %r267,%r480,%r484; .loc 1 243 8 mov.u32 %r39,0; $L30: .loc 1 244 31 ld.u32 %r485,[%r257]; or.b32 %r39,%r39,%r485; .loc 1 244 19 add.u64 %r257,%r257,-4; setp.ne.u64 %r486,%r257,%r267; @ %r486 bra $L30; .loc 1 245 8 setp.ne.u32 %r487,%r39,0; @ %r487 bra $L31; $L29: .loc 1 246 19 ld.u32 %r493,[%r672]; setp.ne.u32 %r494,%r493,0; @ %r494 bra $L32; mov.u64 %r250,%r251; .loc 1 246 8 mov.u32 %r124,1; $L33: .loc 1 246 24 add.u32 %r124,%r124,1; .loc 1 246 19 add.u64 %r250,%r250,-4; ld.u32 %r495,[%r250+4]; setp.eq.u32 %r496,%r495,0; @ %r496 bra $L33; bra $L115; $L32: .loc 1 248 8 add.u32 %r122,%r95,1; .loc 1 248 19 mov.u32 %r152,%r122; bra $L35; $L115: .loc 1 248 8 add.u32 %r122,%r95,1; .loc 1 248 19 add.u32 %r152,%r95,%r124; $L35: cvt.s64.s32 %r229,%r122; cvt.s64.s32 %r497,%r96; add.u64 %r498,%r497,%r229; shl.b64 %r499,%r498,2; add.u64 %r230,%r327,%r499; add.u32 %r236,%r650,%r122; cvt.s64.s32 %r501,%r236; shl.b64 %r502,%r501,3; add.u64 %r235,%r673,%r502; cvt.s64.s32 %r504,%r325; add.u64 %r505,%r660,%r504; sub.u64 %r507,%r505,%r501; shl.b64 %r249,%r507,3; add.u64 %r662,%r249,-8; $L38: .loc 1 249 17 ld.u32 %r508,[%r230]; cvt.rn.f64.s32 %r187,%r508; .loc 1 249 15 st.f64 [%r235],%r187; .loc 1 250 23 @ %r674 bra $L82; add.u64 %r220,%r662,%r235; mov.u64 %r219,%r322; .loc 1 250 17 mov.f64 %r123,0d0000000000000000; $L37: .loc 1 250 36 ld.f64 %r511,[%r219]; fma.rn.f64 %r123,%r511,%r187,%r123; .loc 1 250 23 setp.eq.u64 %r512,%r219,%r227; @ %r512 bra $L36; .loc 1 250 45 ld.f64 %r187,[%r220]; add.u64 %r219,%r219,8; add.u64 %r220,%r220,-8; bra $L37; $L82: .loc 1 250 17 mov.f64 %r123,0d0000000000000000; $L36: .loc 1 251 12 shl.b64 %r513,%r229,3; add.u64 %r514,%frame,%r513; st.f64 [%r514],%r123; .loc 1 248 15 add.u64 %r229,%r229,1; add.u64 %r230,%r230,4; add.u64 %r235,%r235,8; cvt.u32.u64 %r515,%r229; setp.ge.s32 %r516,%r152,%r515; @ %r516 bra $L38; mov.u32 %r95,%r152; bra $L12; $L31: .loc 1 260 18 add.u32 %r128,%r128,-24; .loc 1 261 14 cvt.s64.s32 %r517,%r127; shl.b64 %r518,%r517,2; add.u64 %r519,%frame,%r518; .loc 1 261 18 ld.u32 %r521,[%r519+480]; setp.ne.u32 %r522,%r521,0; @ %r522 bra $L39; add.u64 %r524,%r258,-8; add.u64 %r215,%r659,%r524; $L40: .loc 1 261 27 add.u32 %r127,%r127,-1; .loc 1 261 33 add.u32 %r128,%r128,-24; .loc 1 261 18 add.u64 %r215,%r215,-4; ld.u32 %r525,[%r215+4]; setp.eq.u32 %r526,%r525,0; @ %r526 bra $L40; bra $L39; $L28: .loc 1 263 10 neg.s32 %r529,%r128; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r106; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r529; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r530,[%value_in]; } .loc 1 264 8 setp.ge.f64 %r531,%r530,0d4170000000000000; @ ! %r531 bra $L116; .loc 1 265 35 mul.f64 %r532,%r530,0d3e70000000000000; .loc 1 265 17 cvt.rzi.s32.f64 %r64,%r532; .loc 1 265 6 cvt.rn.f64.s32 %r533,%r64; .loc 1 266 25 fma.rn.f64 %r65,%r533,0dc170000000000000,%r530; .loc 1 266 10 shl.b64 %r536,%r660,2; add.u64 %r537,%frame,%r536; .loc 1 266 12 cvt.rzi.s32.f64 %r539,%r65; st.u32 [%r537+480],%r539; .loc 1 267 6 add.u32 %r127,%r95,1; .loc 1 267 15 add.u32 %r128,%r128,24; .loc 1 268 10 cvt.s64.s32 %r540,%r127; shl.b64 %r541,%r540,2; add.u64 %r542,%frame,%r541; st.u32 [%r542+480],%r64; bra $L39; $L116: .loc 1 269 20 shl.b64 %r545,%r660,2; add.u64 %r546,%frame,%r545; .loc 1 269 22 cvt.rzi.s32.f64 %r548,%r530; st.u32 [%r546+480],%r548; .loc 1 269 20 mov.u32 %r127,%r95; $L39: .loc 1 273 7 mov.f64 %r549,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r549; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r551,[%value_in]; } mov.f64 %r143,%r551; .loc 1 274 12 setp.lt.s32 %r552,%r127,0; @ %r552 bra $L43; cvt.s64.s32 %r649,%r127; shl.b64 %r204,%r649,2; add.u64 %r203,%r659,%r204; shl.b64 %r207,%r649,3; add.u64 %r200,%frame,%r207; add.u64 %r214,%frame,476; mov.u64 %r206,%r200; $L44: .loc 1 275 16 ld.u32 %r562,[%r203]; cvt.rn.f64.s32 %r561,%r562; .loc 1 275 15 mul.f64 %r563,%r561,%r143; .loc 1 275 11 st.f64 [%r206],%r563; .loc 1 275 33 mul.f64 %r143,%r143,0d3e70000000000000; .loc 1 274 12 add.u64 %r203,%r203,-4; add.u64 %r206,%r206,-8; setp.ne.u64 %r564,%r203,%r214; @ %r564 bra $L44; add.u64 %r658,%frame,160; mov.u64 %r198,%r658; mov.u32 %r142,%r127; mov.u32 %r197,0; .loc 1 280 26 mov.f64 %r661,0d3ff921fb40000000; bra $L45; $L47: .loc 1 280 51 ld.f64 %r185,[%r194]; $L49: .loc 1 280 44 ld.f64 %r565,[%r193]; fma.rn.f64 %r140,%r565,%r185,%r140; .loc 1 280 37 add.u32 %r141,%r141,1; .loc 1 280 26 setp.lt.s32 %r566,%r112,%r141; @ %r566 bra $L46; add.u64 %r193,%r193,8; add.u64 %r194,%r194,8; setp.le.s32 %r567,%r141,%r197; @ %r567 bra $L47; bra $L46; $L83: .loc 1 280 12 mov.f64 %r140,0d0000000000000000; $L46: .loc 1 281 15 st.f64 [%r198],%r140; .loc 1 279 17 add.u32 %r142,%r142,-1; .loc 1 279 12 add.u32 %r197,%r197,1; add.u64 %r198,%r198,8; add.u64 %r200,%r200,-8; setp.eq.u32 %r568,%r142,-1; @ %r568 bra $L48; $L45: .loc 1 280 26 @ %r654 bra $L83; cvta.const.u64 %r194,PIo2; mov.u64 %r193,%r200; mov.f64 %r185,%r661; .loc 1 280 12 mov.f64 %r140,0d0000000000000000; .loc 1 280 18 mov.u32 %r141,0; bra $L49; $L71: .loc 1 301 14 setp.ne.u32 %r570,%r127,0; @ %r570 bra $L50; bra $L117; $L118: .loc 1 306 14 setp.gt.s32 %r571,%r127,1; @ %r571 bra $L51; $L117: .loc 1 311 10 mov.f64 %r129,0d0000000000000000; bra $L52; $L69: add.u64 %r160,%r658,%r207; add.u64 %r573,%r658,-8; add.u64 %r574,%r573,%r207; shl.b64 %r576,%r649,3; sub.u64 %r151,%r574,%r576; .loc 1 285 2 mov.f64 %r138,0d0000000000000000; $L53: .loc 1 288 26 ld.f64 %r577,[%r160]; add.f64 %r138,%r138,%r577; .loc 1 288 14 add.u64 %r160,%r160,-8; setp.ne.u64 %r578,%r151,%r160; @ %r578 bra $L53; bra $L74; $L85: .loc 1 285 2 mov.f64 %r138,0d0000000000000000; $L74: .loc 1 289 21 setp.eq.u32 %r579,%r91,0; @ %r579 bra $L54; neg.f64 %r138,%r138; $L54: .loc 1 289 8 st.f64 [%r323],%r138; .loc 1 290 3 bra $L55; $L56: .loc 1 294 26 ld.f64 %r580,[%r148]; add.f64 %r136,%r136,%r580; .loc 1 294 14 add.u64 %r148,%r148,-8; setp.ne.u64 %r581,%r110,%r148; @ %r581 bra $L56; bra $L73; $L84: .loc 1 293 6 mov.f64 %r136,0d0000000000000000; $L73: .loc 1 295 21 setp.eq.u32 %r651,%r91,0; @ %r651 bra $L57; neg.f64 %r583,%r136; .loc 1 295 8 st.f64 [%r323],%r583; .loc 1 296 6 ld.f64 %r584,[%frame+160]; sub.f64 %r108,%r584,%r136; .loc 1 297 13 setp.le.s32 %r585,%r127,0; @ %r585 bra $L58; $L66: add.u64 %r150,%frame,168; .loc 1 297 9 mov.u32 %r135,1; $L59: .loc 1 297 26 ld.f64 %r587,[%r150]; add.f64 %r108,%r108,%r587; .loc 1 297 19 add.u32 %r135,%r135,1; .loc 1 297 13 add.u64 %r150,%r150,8; setp.ge.s32 %r588,%r127,%r135; @ %r588 bra $L59; .loc 1 298 21 @ %r651 bra $L60; $L58: neg.f64 %r108,%r108; $L60: .loc 1 298 8 st.f64 [%r323+8],%r108; .loc 1 299 3 bra $L55; $L50: .loc 1 302 27 shl.b64 %r591,%r649,3; add.u64 %r592,%frame,%r591; ld.f64 %r131,[%r592+160]; add.u64 %r596,%r591,-8; add.u64 %r40,%r658,%r596; add.u64 %r656,%frame,144; add.u64 %r599,%r656,%r591; add.u32 %r600,%r127,-1; cvt.u64.u32 %r601,%r600; shl.b64 %r602,%r601,3; sub.u64 %r191,%r599,%r602; $L61: .loc 1 302 19 ld.f64 %r79,[%r40]; mov.f64 %r252,%r131; .loc 1 302 15 add.f64 %r131,%r131,%r79; .loc 1 303 24 sub.f64 %r603,%r79,%r131; .loc 1 303 14 add.f64 %r604,%r603,%r252; st.f64 [%r40+8],%r604; .loc 1 304 15 st.f64 [%r40],%r131; .loc 1 301 14 add.u64 %r40,%r40,-8; setp.ne.u64 %r605,%r40,%r191; @ %r605 bra $L61; bra $L118; $L51: .loc 1 307 27 shl.b64 %r607,%r649,3; add.u64 %r608,%frame,%r607; ld.f64 %r130,[%r608+160]; add.u64 %r612,%r607,-8; add.u64 %r98,%r658,%r612; add.u32 %r613,%r127,-2; cvt.u64.u32 %r614,%r613; shl.b64 %r181,%r614,3; add.u64 %r616,%r656,%r607; sub.u64 %r23,%r616,%r181; $L63: .loc 1 307 19 ld.f64 %r82,[%r98]; mov.f64 %r224,%r130; .loc 1 307 15 add.f64 %r130,%r130,%r82; .loc 1 308 24 sub.f64 %r617,%r82,%r130; .loc 1 308 14 add.f64 %r618,%r617,%r224; st.f64 [%r98+8],%r618; .loc 1 309 15 st.f64 [%r98],%r130; .loc 1 306 14 add.u64 %r98,%r98,-8; setp.ne.u64 %r619,%r23,%r98; @ %r619 bra $L63; add.u64 %r107,%r658,%r607; add.u64 %r621,%r658,-8; add.u64 %r622,%r621,%r607; sub.u64 %r99,%r622,%r181; mov.f64 %r129,0d0000000000000000; $L64: .loc 1 311 33 ld.f64 %r623,[%r107]; add.f64 %r129,%r129,%r623; .loc 1 311 21 add.u64 %r107,%r107,-8; setp.ne.u64 %r624,%r99,%r107; @ %r624 bra $L64; bra $L52; $L86: .loc 1 311 10 mov.f64 %r129,0d0000000000000000; $L52: .loc 1 313 17 ld.f64 %r188,[%frame+160]; .loc 1 313 32 ld.f64 %r189,[%frame+168]; .loc 1 312 5 setp.ne.u32 %r625,%r91,0; @ %r625 bra $L65; .loc 1 313 12 st.f64 [%r323],%r188; .loc 1 313 27 st.f64 [%r323+8],%r189; .loc 1 313 42 st.f64 [%r323+16],%r129; bra $L55; $L65: .loc 1 315 14 neg.f64 %r626,%r188; .loc 1 315 12 st.f64 [%r323],%r626; .loc 1 315 29 neg.f64 %r627,%r189; .loc 1 315 27 st.f64 [%r323+8],%r627; .loc 1 315 44 neg.f64 %r628,%r129; .loc 1 315 42 st.f64 [%r323+16],%r628; $L55: .loc 1 318 10 and.b32 %r629,%r97,7; bra $L119; $L57: .loc 1 295 8 st.f64 [%r323],%r136; .loc 1 296 6 ld.f64 %r630,[%frame+160]; sub.f64 %r108,%r630,%r136; .loc 1 297 13 setp.gt.s32 %r631,%r127,0; @ %r631 bra $L66; bra $L60; $L48: .loc 1 285 2 setp.gt.s32 %r632,%r326,2; @ %r632 bra $L67; setp.gt.s32 %r633,%r326,0; @ %r633 bra $L68; setp.eq.u32 %r634,%r326,0; @ %r634 bra $L69; bra $L55; $L67: setp.eq.u32 %r635,%r326,3; @ %r635 bra $L71; bra $L55; $L43: setp.gt.s32 %r636,%r326,2; @ %r636 bra $L72; setp.gt.s32 %r637,%r326,0; @ %r637 bra $L84; setp.eq.u32 %r638,%r326,0; @ %r638 bra $L85; bra $L55; $L72: setp.eq.u32 %r639,%r326,3; @ %r639 bra $L86; bra $L55; $L18: .loc 1 218 8 add.u32 %r97,%r97,1; .loc 1 219 15 setp.gt.s32 %r640,%r95,0; @ %r640 bra $L87; .loc 1 236 5 mov.f64 %r641,0d3ff0000000000000; sub.f64 %r106,%r641,%r106; mov.u32 %r91,2; bra $L19; $L68: shl.b64 %r137,%r649,3; add.u64 %r148,%r658,%r137; add.u64 %r110,%frame,152; .loc 1 293 6 mov.f64 %r136,0d0000000000000000; bra $L56; $L119: .loc 1 319 1 mov.u32 %value,%r629; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-k_sin.o/ 0 0 0 644 2237 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .visible .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libm/math/k_sin.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_sin .visible .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; mov.f64 %r40,%ar0; mov.f64 %r41,%ar1; mov.u32 %r42,%ar2; .loc 1 68 2 mov.b64 %r43,%r40; shr.u64 %r44,%r43,32; cvt.u32.u64 %r45,%r44; .loc 1 69 5 and.b32 %r46,%r45,2147483647; .loc 1 70 4 setp.gt.s32 %r47,%r46,1044381695; @ %r47 bra $L2; .loc 1 71 9 cvt.rzi.s32.f64 %r48,%r40; .loc 1 71 8 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L5; $L2: .loc 1 72 4 mul.f64 %r33,%r40,%r40; .loc 1 73 4 mul.f64 %r34,%r40,%r33; .loc 1 74 27 fma.rn.f64 %r23,%r33,0d3de5d93a5acfd57c,0dbe5ae5e68a2b9ceb; .loc 1 74 21 fma.rn.f64 %r24,%r23,%r33,0d3ec71de357b1fe7d; .loc 1 74 15 fma.rn.f64 %r25,%r24,%r33,0dbf2a01a019c161d5; .loc 1 74 4 fma.rn.f64 %r35,%r25,%r33,0d3f8111111110f8a6; .loc 1 75 4 setp.ne.u32 %r50,%r42,0; @ %r50 bra $L4; .loc 1 75 26 fma.rn.f64 %r26,%r33,%r35,0dbfc5555555555549; .loc 1 75 20 fma.rn.f64 %r39,%r26,%r34,%r40; bra $L1; $L4: .loc 1 76 34 mul.f64 %r51,%r34,%r35; .loc 1 76 32 neg.f64 %r52,%r51; fma.rn.f64 %r28,%r41,0d3fe0000000000000,%r52; .loc 1 76 37 neg.f64 %r53,%r41; fma.rn.f64 %r29,%r28,%r33,%r53; .loc 1 76 40 fma.rn.f64 %r30,%r34,0d3fc5555555555549,%r29; .loc 1 76 20 sub.f64 %r39,%r40,%r30; bra $L1; $L5: .loc 1 71 27 mov.f64 %r39,%r40; $L1: .loc 1 77 1 mov.f64 %value,%r39; st.param.f64 [%value_out],%value; ret; } /665 0 0 0 644 22610 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_standard .visible .func (.param .f64 %value_out) __kernel_standard (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libm/math/k_standard.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __kernel_standard .visible .func (.param .f64 %value_out) __kernel_standard (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r131; .reg .pred %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r137; .reg .pred %r138; .reg .pred %r139; .reg .pred %r140; .reg .pred %r141; .reg .pred %r142; .reg .pred %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r157; .reg .pred %r158; .reg .pred %r159; .reg .pred %r160; .reg .pred %r161; .reg .pred %r162; .reg .pred %r163; .reg .pred %r164; .reg .pred %r165; .reg .pred %r166; .reg .pred %r167; .reg .pred %r168; .reg .pred %r169; .reg .pred %r170; .reg .pred %r171; .reg .pred %r172; .reg .pred %r173; .reg .pred %r174; .reg .pred %r175; .reg .pred %r176; .reg .pred %r177; .reg .pred %r178; .reg .pred %r179; .reg .pred %r180; .reg .pred %r181; .reg .pred %r182; .reg .u64 %r183; .reg .u32 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u64 %r187; .reg .u32 %r188; .reg .u64 %r189; .reg .u32 %r190; .reg .u64 %r191; .reg .u32 %r192; .reg .u64 %r193; .reg .u32 %r194; .reg .u64 %r195; .reg .u32 %r196; .reg .u64 %r197; .reg .u32 %r198; .reg .u64 %r199; .reg .u32 %r200; .reg .u64 %r201; .reg .u32 %r202; .reg .u64 %r203; .reg .u32 %r204; .reg .u64 %r205; .reg .u32 %r206; .reg .u64 %r207; .reg .u32 %r208; .reg .u64 %r209; .reg .u32 %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r213; .reg .u32 %r214; .reg .u64 %r215; .reg .u32 %r216; .reg .u64 %r217; .reg .u32 %r218; .reg .u64 %r219; .reg .u32 %r220; .reg .pred %r221; .reg .f64 %r223; .reg .pred %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u32 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .f64 %r231; .reg .u64 %r232; .reg .u32 %r233; .reg .pred %r234; .reg .u64 %r235; .reg .u32 %r236; .reg .f64 %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .f64 %r240; .reg .u64 %r241; .reg .u32 %r242; .reg .f64 %r243; .reg .u64 %r244; .reg .u32 %r245; .reg .f64 %r246; .reg .u64 %r247; .reg .u32 %r248; .reg .f64 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .u64 %r252; .reg .u32 %r253; .reg .pred %r254; .reg .u64 %r255; .reg .u32 %r256; .reg .f64 %r257; .reg .f64 %r259; .reg .u64 %r260; .reg .u32 %r261; .reg .u64 %r262; .reg .u32 %r263; .reg .u64 %r264; .reg .u32 %r265; .reg .u64 %r266; .reg .u32 %r267; .reg .u64 %r268; .reg .u32 %r269; .reg .u64 %r270; .reg .u32 %r271; .reg .u64 %r272; .reg .u32 %r273; .reg .f64 %r274; .reg .f64 %r276; .reg .u64 %r277; .reg .u32 %r278; .reg .u64 %r279; .reg .u32 %r280; mov.f64 %r65,%ar0; mov.f64 %r66,%ar1; mov.u32 %r67,%ar2; .loc 1 93 2 setp.eq.u32 %r68,%r67,101; @ %r68 bra $L2; setp.gt.s32 %r69,%r67,101; @ %r69 bra $L3; setp.eq.u32 %r70,%r67,22; @ %r70 bra $L4; setp.gt.s32 %r71,%r67,22; @ %r71 bra $L5; setp.eq.u32 %r72,%r67,11; @ %r72 bra $L6; setp.gt.s32 %r73,%r67,11; @ %r73 bra $L7; setp.eq.u32 %r74,%r67,6; @ %r74 bra $L8; setp.gt.s32 %r75,%r67,6; @ %r75 bra $L9; setp.eq.u32 %r76,%r67,3; @ %r76 bra $L10; setp.gt.s32 %r77,%r67,3; @ %r77 bra $L11; setp.eq.u32 %r78,%r67,1; @ %r78 bra $L2; setp.eq.u32 %r79,%r67,2; @ %r79 bra $L12; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L11: .loc 1 93 2 setp.eq.u32 %r80,%r67,4; @ %r80 bra $L14; setp.eq.u32 %r81,%r67,5; @ %r81 bra $L15; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L9: .loc 1 93 2 setp.eq.u32 %r82,%r67,9; @ %r82 bra $L16; setp.gt.s32 %r83,%r67,9; @ %r83 bra $L17; setp.eq.u32 %r84,%r67,7; @ %r84 bra $L18; setp.eq.u32 %r85,%r67,8; @ %r85 bra $L19; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L17: .loc 1 93 2 setp.eq.u32 %r86,%r67,10; @ %r86 bra $L20; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L7: .loc 1 93 2 setp.eq.u32 %r87,%r67,17; @ %r87 bra $L21; setp.gt.s32 %r88,%r67,17; @ %r88 bra $L22; setp.eq.u32 %r89,%r67,14; @ %r89 bra $L23; setp.gt.s32 %r90,%r67,14; @ %r90 bra $L24; setp.eq.u32 %r91,%r67,12; @ %r91 bra $L25; setp.eq.u32 %r92,%r67,13; @ %r92 bra $L26; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L24: .loc 1 93 2 setp.eq.u32 %r93,%r67,15; @ %r93 bra $L27; setp.eq.u32 %r94,%r67,16; @ %r94 bra $L28; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L22: .loc 1 93 2 setp.eq.u32 %r95,%r67,20; @ %r95 bra $L79; setp.gt.s32 %r96,%r67,20; @ %r96 bra $L29; setp.eq.u32 %r97,%r67,18; @ %r97 bra $L30; setp.eq.u32 %r98,%r67,19; @ %r98 bra $L31; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L29: .loc 1 93 2 setp.eq.u32 %r99,%r67,21; @ %r99 bra $L32; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L5: .loc 1 93 2 setp.eq.u32 %r100,%r67,33; @ %r100 bra $L33; setp.gt.s32 %r101,%r67,33; @ %r101 bra $L34; setp.eq.u32 %r102,%r67,28; @ %r102 bra $L35; setp.gt.s32 %r103,%r67,28; @ %r103 bra $L36; setp.eq.u32 %r104,%r67,25; @ %r104 bra $L37; setp.gt.s32 %r105,%r67,25; @ %r105 bra $L38; setp.eq.u32 %r106,%r67,23; @ %r106 bra $L39; setp.eq.u32 %r107,%r67,24; @ %r107 bra $L40; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L38: .loc 1 93 2 setp.eq.u32 %r108,%r67,26; @ %r108 bra $L41; setp.eq.u32 %r109,%r67,27; @ %r109 bra $L42; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L36: .loc 1 93 2 setp.eq.u32 %r110,%r67,31; @ %r110 bra $L43; setp.gt.s32 %r111,%r67,31; @ %r111 bra $L44; setp.eq.u32 %r112,%r67,29; @ %r112 bra $L45; setp.eq.u32 %r113,%r67,30; @ %r113 bra $L46; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L44: .loc 1 93 2 setp.eq.u32 %r114,%r67,32; @ %r114 bra $L47; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L34: .loc 1 93 2 setp.eq.u32 %r115,%r67,38; @ %r115 bra $L48; setp.gt.s32 %r116,%r67,38; @ %r116 bra $L49; setp.eq.u32 %r117,%r67,36; @ %r117 bra $L50; setp.gt.s32 %r118,%r67,36; @ %r118 bra $L51; setp.eq.u32 %r119,%r67,34; @ %r119 bra $L52; setp.eq.u32 %r120,%r67,35; @ %r120 bra $L53; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L51: .loc 1 93 2 setp.eq.u32 %r121,%r67,37; @ %r121 bra $L54; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L49: .loc 1 93 2 setp.eq.u32 %r122,%r67,41; @ %r122 bra $L55; setp.gt.s32 %r123,%r67,41; @ %r123 bra $L56; setp.eq.u32 %r124,%r67,39; @ %r124 bra $L57; setp.eq.u32 %r125,%r67,40; @ %r125 bra $L58; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L56: .loc 1 93 2 setp.ne.u32 %r126,%r67,42; selp.f64 %r64,0d0000000000000000,0d3ff0000000000000,%r126; bra $L1; $L3: setp.eq.u32 %r127,%r67,122; @ %r127 bra $L4; setp.gt.s32 %r128,%r67,122; @ %r128 bra $L59; setp.eq.u32 %r129,%r67,112; @ %r129 bra $L25; setp.gt.s32 %r130,%r67,112; @ %r130 bra $L60; setp.eq.u32 %r131,%r67,107; @ %r131 bra $L18; setp.gt.s32 %r132,%r67,107; @ %r132 bra $L61; setp.eq.u32 %r133,%r67,104; @ %r133 bra $L14; setp.gt.s32 %r134,%r67,104; @ %r134 bra $L62; setp.eq.u32 %r135,%r67,102; @ %r135 bra $L12; setp.eq.u32 %r136,%r67,103; @ %r136 bra $L10; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L62: .loc 1 93 2 setp.eq.u32 %r137,%r67,105; @ %r137 bra $L15; setp.eq.u32 %r138,%r67,106; @ %r138 bra $L8; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L61: .loc 1 93 2 setp.eq.u32 %r139,%r67,110; @ %r139 bra $L20; setp.gt.s32 %r140,%r67,110; @ %r140 bra $L63; setp.eq.u32 %r141,%r67,108; @ %r141 bra $L19; setp.eq.u32 %r142,%r67,109; @ %r142 bra $L16; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L63: .loc 1 93 2 setp.eq.u32 %r143,%r67,111; @ %r143 bra $L6; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L60: .loc 1 93 2 setp.eq.u32 %r144,%r67,117; @ %r144 bra $L21; setp.gt.s32 %r145,%r67,117; @ %r145 bra $L64; setp.eq.u32 %r146,%r67,115; @ %r146 bra $L27; setp.gt.s32 %r147,%r67,115; @ %r147 bra $L65; setp.eq.u32 %r148,%r67,113; @ %r148 bra $L26; setp.eq.u32 %r149,%r67,114; @ %r149 bra $L23; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L65: .loc 1 93 2 setp.eq.u32 %r150,%r67,116; @ %r150 bra $L28; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L64: .loc 1 93 2 setp.eq.u32 %r151,%r67,120; @ %r151 bra $L81; setp.gt.s32 %r152,%r67,120; @ %r152 bra $L66; setp.eq.u32 %r153,%r67,118; @ %r153 bra $L30; setp.eq.u32 %r154,%r67,119; @ %r154 bra $L31; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L66: .loc 1 93 2 setp.eq.u32 %r155,%r67,121; @ %r155 bra $L32; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L59: .loc 1 93 2 setp.eq.u32 %r156,%r67,133; @ %r156 bra $L33; setp.gt.s32 %r157,%r67,133; @ %r157 bra $L67; setp.eq.u32 %r158,%r67,128; @ %r158 bra $L35; setp.gt.s32 %r159,%r67,128; @ %r159 bra $L68; setp.eq.u32 %r160,%r67,125; @ %r160 bra $L37; setp.gt.s32 %r161,%r67,125; @ %r161 bra $L69; setp.eq.u32 %r162,%r67,123; @ %r162 bra $L39; setp.eq.u32 %r163,%r67,124; @ %r163 bra $L40; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L69: .loc 1 93 2 setp.eq.u32 %r164,%r67,126; @ %r164 bra $L41; setp.eq.u32 %r165,%r67,127; @ %r165 bra $L42; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L68: .loc 1 93 2 setp.eq.u32 %r166,%r67,131; @ %r166 bra $L43; setp.gt.s32 %r167,%r67,131; @ %r167 bra $L70; setp.eq.u32 %r168,%r67,129; @ %r168 bra $L45; setp.eq.u32 %r169,%r67,130; @ %r169 bra $L46; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L70: .loc 1 93 2 setp.eq.u32 %r170,%r67,132; @ %r170 bra $L47; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L67: .loc 1 93 2 setp.eq.u32 %r171,%r67,138; @ %r171 bra $L48; setp.gt.s32 %r172,%r67,138; @ %r172 bra $L71; setp.eq.u32 %r173,%r67,136; @ %r173 bra $L50; setp.gt.s32 %r174,%r67,136; @ %r174 bra $L72; setp.eq.u32 %r175,%r67,134; @ %r175 bra $L52; setp.eq.u32 %r176,%r67,135; @ %r176 bra $L53; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L72: .loc 1 93 2 setp.eq.u32 %r177,%r67,137; @ %r177 bra $L54; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L71: .loc 1 93 2 setp.eq.u32 %r178,%r67,141; @ %r178 bra $L55; setp.gt.s32 %r179,%r67,141; @ %r179 bra $L73; setp.eq.u32 %r180,%r67,139; @ %r180 bra $L57; setp.eq.u32 %r181,%r67,140; @ %r181 bra $L58; .loc 1 88 9 mov.f64 %r64,0d0000000000000000; bra $L1; $L73: .loc 1 93 2 setp.ne.u32 %r182,%r67,142; selp.f64 %r64,0d0000000000000000,0d3ff0000000000000,%r182; bra $L1; $L2: .loc 1 98 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r183,[%value_in]; } .loc 1 98 9 mov.u32 %r184,33; st.u32 [%r183],%r184; .loc 1 97 10 mov.f64 %r64,0d0000000000000000; .loc 1 99 3 bra $L1; $L12: .loc 1 104 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r185,[%value_in]; } .loc 1 104 9 mov.u32 %r186,33; st.u32 [%r185],%r186; .loc 1 103 10 mov.f64 %r64,0d0000000000000000; .loc 1 105 3 bra $L1; $L10: .loc 1 110 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r187,[%value_in]; } .loc 1 110 9 mov.u32 %r188,33; st.u32 [%r187],%r188; .loc 1 109 10 mov.f64 %r64,0d0000000000000000; .loc 1 111 3 bra $L1; $L14: .loc 1 116 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r189,[%value_in]; } .loc 1 116 9 mov.u32 %r190,34; st.u32 [%r189],%r190; .loc 1 115 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 117 3 bra $L1; $L15: .loc 1 122 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r191,[%value_in]; } .loc 1 122 9 mov.u32 %r192,34; st.u32 [%r191],%r192; .loc 1 121 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 123 3 bra $L1; $L8: .loc 1 128 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r193,[%value_in]; } .loc 1 128 9 mov.u32 %r194,34; st.u32 [%r193],%r194; .loc 1 127 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 129 3 bra $L1; $L18: .loc 1 134 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r195,[%value_in]; } .loc 1 134 9 mov.u32 %r196,34; st.u32 [%r195],%r196; .loc 1 133 10 mov.f64 %r64,0d0000000000000000; .loc 1 135 3 bra $L1; $L19: .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r197,[%value_in]; } .loc 1 140 9 mov.u32 %r198,33; st.u32 [%r197],%r198; .loc 1 139 10 mov.f64 %r64,0dfff0000000000000; .loc 1 141 3 bra $L1; $L16: .loc 1 146 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r199,[%value_in]; } .loc 1 146 9 mov.u32 %r200,33; st.u32 [%r199],%r200; .loc 1 145 10 mov.f64 %r64,0dfff0000000000000; .loc 1 147 3 bra $L1; $L20: .loc 1 152 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r201,[%value_in]; } .loc 1 152 9 mov.u32 %r202,33; st.u32 [%r201],%r202; .loc 1 151 10 mov.f64 %r64,0dfff0000000000000; .loc 1 153 3 bra $L1; $L6: .loc 1 158 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r203,[%value_in]; } .loc 1 158 9 mov.u32 %r204,33; st.u32 [%r203],%r204; .loc 1 157 10 mov.f64 %r64,0dfff0000000000000; .loc 1 159 3 bra $L1; $L25: .loc 1 164 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r205,[%value_in]; } .loc 1 164 9 mov.u32 %r206,33; st.u32 [%r205],%r206; .loc 1 163 10 mov.f64 %r64,0dfff0000000000000; .loc 1 165 3 bra $L1; $L26: .loc 1 170 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r207,[%value_in]; } .loc 1 170 9 mov.u32 %r208,33; st.u32 [%r207],%r208; .loc 1 169 10 mov.f64 %r64,0dfff0000000000000; .loc 1 171 3 bra $L1; $L23: .loc 1 176 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r209,[%value_in]; } .loc 1 176 9 mov.u32 %r210,34; st.u32 [%r209],%r210; .loc 1 175 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 177 3 bra $L1; $L27: .loc 1 182 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r211,[%value_in]; } .loc 1 182 9 mov.u32 %r212,33; st.u32 [%r211],%r212; .loc 1 181 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 183 3 bra $L1; $L28: .loc 1 188 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r213,[%value_in]; } .loc 1 188 9 mov.u32 %r214,33; st.u32 [%r213],%r214; .loc 1 187 10 mov.f64 %r64,0dfff0000000000000; .loc 1 189 3 bra $L1; $L21: .loc 1 194 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r215,[%value_in]; } .loc 1 194 9 mov.u32 %r216,33; st.u32 [%r215],%r216; .loc 1 193 10 mov.f64 %r64,0dfff0000000000000; .loc 1 195 3 bra $L1; $L30: .loc 1 200 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r217,[%value_in]; } .loc 1 200 9 mov.u32 %r218,33; st.u32 [%r217],%r218; .loc 1 199 10 mov.f64 %r64,0dfff0000000000000; .loc 1 201 3 bra $L1; $L31: .loc 1 206 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r219,[%value_in]; } .loc 1 206 9 mov.u32 %r220,33; st.u32 [%r219],%r220; .loc 1 205 10 mov.f64 %r64,0dfff0000000000000; .loc 1 207 3 bra $L1; $L32: .loc 1 219 5 setp.lt.f64 %r221,%r65,0d0000000000000000; @ %r221 bra $L74; $L76: .loc 1 217 10 mov.f64 %r64,0d7ff0000000000000; bra $L75; $L74: .loc 1 218 5 mul.f64 %r63,%r66,0d3fe0000000000000; .loc 1 219 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),rint,(%out_arg1); ld.param.f64 %r223,[%value_in]; } .loc 1 219 12 setp.eq.f64 %r224,%r223,%r63; @ %r224 bra $L76; .loc 1 220 12 mov.f64 %r64,0dfff0000000000000; $L75: .loc 1 221 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r225,[%value_in]; } .loc 1 221 9 mov.u32 %r226,34; st.u32 [%r225],%r226; .loc 1 222 3 bra $L1; $L4: .loc 1 227 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r227,[%value_in]; } .loc 1 227 9 mov.u32 %r228,34; st.u32 [%r227],%r228; .loc 1 226 10 mov.f64 %r64,0d0000000000000000; .loc 1 228 3 bra $L1; $L39: .loc 1 233 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r229,[%value_in]; } .loc 1 233 9 mov.u32 %r230,33; st.u32 [%r229],%r230; .loc 1 232 10 mov.f64 %r64,0dfff0000000000000; .loc 1 234 3 bra $L1; $L40: .loc 1 238 10 mov.f64 %r231,0d0000000000000000; div.rn.f64 %r64,%r231,%r231; .loc 1 239 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r232,[%value_in]; } .loc 1 239 9 mov.u32 %r233,33; st.u32 [%r232],%r233; .loc 1 240 3 bra $L1; $L37: .loc 1 244 34 setp.gt.f64 %r234,%r65,0d0000000000000000; selp.f64 %r64,0d7ff0000000000000,0dfff0000000000000,%r234; .loc 1 245 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r235,[%value_in]; } .loc 1 245 9 mov.u32 %r236,34; st.u32 [%r235],%r236; .loc 1 246 3 bra $L1; $L41: .loc 1 250 10 mov.f64 %r237,0d0000000000000000; div.rn.f64 %r64,%r237,%r237; .loc 1 251 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r238,[%value_in]; } .loc 1 251 9 mov.u32 %r239,33; st.u32 [%r238],%r239; .loc 1 252 3 bra $L1; $L42: .loc 1 256 10 mov.f64 %r240,0d0000000000000000; div.rn.f64 %r64,%r240,%r240; .loc 1 257 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r241,[%value_in]; } .loc 1 257 9 mov.u32 %r242,33; st.u32 [%r241],%r242; .loc 1 258 17 bra $L1; $L35: .loc 1 262 10 mov.f64 %r243,0d0000000000000000; div.rn.f64 %r64,%r243,%r243; .loc 1 263 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r244,[%value_in]; } .loc 1 263 9 mov.u32 %r245,33; st.u32 [%r244],%r245; .loc 1 264 17 bra $L1; $L45: .loc 1 268 10 mov.f64 %r246,0d0000000000000000; div.rn.f64 %r64,%r246,%r246; .loc 1 269 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r247,[%value_in]; } .loc 1 269 9 mov.u32 %r248,33; st.u32 [%r247],%r248; .loc 1 270 17 bra $L1; $L46: .loc 1 274 10 mov.f64 %r249,0d0000000000000000; div.rn.f64 %r64,%r249,%r249; .loc 1 275 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r250,[%value_in]; } .loc 1 275 9 mov.u32 %r251,33; st.u32 [%r250],%r251; .loc 1 276 17 bra $L1; $L43: .loc 1 280 10 div.rn.f64 %r64,%r65,0d0000000000000000; .loc 1 281 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r252,[%value_in]; } .loc 1 281 9 mov.u32 %r253,33; st.u32 [%r252],%r253; .loc 1 282 17 bra $L1; $L47: .loc 1 286 32 setp.gt.f64 %r254,%r65,0d0000000000000000; selp.f64 %r64,0d7ff0000000000000,0dfff0000000000000,%r254; .loc 1 287 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r255,[%value_in]; } .loc 1 287 9 mov.u32 %r256,34; st.u32 [%r255],%r256; .loc 1 288 3 bra $L1; $L33: .loc 1 292 12 mov.f64 %r257,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r257; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r259,[%value_in]; } mov.f64 %r64,%r259; .loc 1 293 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r260,[%value_in]; } .loc 1 293 9 mov.u32 %r261,34; st.u32 [%r260],%r261; .loc 1 294 3 bra $L1; $L52: .loc 1 299 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r262,[%value_in]; } .loc 1 299 9 mov.u32 %r263,34; st.u32 [%r262],%r263; .loc 1 298 10 mov.f64 %r64,0d0000000000000000; .loc 1 300 3 bra $L1; $L53: .loc 1 305 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r264,[%value_in]; } .loc 1 305 9 mov.u32 %r265,34; st.u32 [%r264],%r265; .loc 1 304 10 mov.f64 %r64,0d0000000000000000; .loc 1 306 3 bra $L1; $L50: .loc 1 311 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r266,[%value_in]; } .loc 1 311 9 mov.u32 %r267,34; st.u32 [%r266],%r267; .loc 1 310 10 mov.f64 %r64,0d0000000000000000; .loc 1 312 3 bra $L1; $L54: .loc 1 317 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r268,[%value_in]; } .loc 1 317 9 mov.u32 %r269,34; st.u32 [%r268],%r269; .loc 1 316 10 mov.f64 %r64,0d0000000000000000; .loc 1 318 3 bra $L1; $L48: .loc 1 323 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r270,[%value_in]; } .loc 1 323 9 mov.u32 %r271,34; st.u32 [%r270],%r271; .loc 1 322 10 mov.f64 %r64,0d0000000000000000; .loc 1 324 3 bra $L1; $L57: .loc 1 329 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r272,[%value_in]; } .loc 1 329 9 mov.u32 %r273,34; st.u32 [%r272],%r273; .loc 1 328 10 mov.f64 %r64,0d0000000000000000; .loc 1 330 3 bra $L1; $L58: .loc 1 334 12 mov.f64 %r274,0d7ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r274; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r276,[%value_in]; } mov.f64 %r64,%r276; .loc 1 335 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r277,[%value_in]; } .loc 1 335 9 mov.u32 %r278,34; st.u32 [%r277],%r278; .loc 1 336 3 bra $L1; $L55: .loc 1 341 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r279,[%value_in]; } .loc 1 341 9 mov.u32 %r280,33; st.u32 [%r279],%r280; .loc 1 340 10 mov.f64 %r64,0d7ff0000000000000; .loc 1 342 3 bra $L1; $L79: .loc 1 93 2 mov.f64 %r64,0d3ff0000000000000; bra $L1; $L81: mov.f64 %r64,0d3ff0000000000000; $L1: .loc 1 351 1 mov.f64 %value,%r64; st.param.f64 [%value_out],%value; ret; } lib_a-k_tan.o/ 0 0 0 644 5956 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_tan .visible .func (.param .f64 %value_out) __kernel_tan (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libm/math/k_tan.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __kernel_tan .visible .func (.param .f64 %value_out) __kernel_tan (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r50; .reg .f64 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .f64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .pred %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r95; .reg .u32 %r97; .reg .u32 %r98; .reg .pred %r99; .reg .f64 %r101; .reg .pred %r103; .reg .u64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .u64 %r107; .reg .pred %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .f64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .u64 %r129; .reg .pred %r131; mov.f64 %r84,%ar0; mov.f64 %r85,%ar1; mov.u32 %r86,%ar2; .loc 1 85 2 mov.b64 %r87,%r84; shr.u64 %r88,%r87,32; cvt.u32.u64 %r53,%r88; .loc 1 86 5 and.b32 %r54,%r53,2147483647; .loc 1 87 4 setp.gt.s32 %r90,%r54,1043333119; @ %r90 bra $L2; .loc 1 88 6 cvt.rzi.s32.f64 %r91,%r84; .loc 1 88 5 setp.ne.u32 %r92,%r91,0; @ ! %r92 bra $L13; setp.le.s32 %r131,%r54,1072010279; bra $L3; $L13: .loc 1 91 20 add.u32 %r93,%r86,1; .loc 1 91 16 cvt.u32.u64 %r95,%r87; or.b32 %r97,%r93,%r95; or.b32 %r98,%r97,%r54; .loc 1 91 6 setp.ne.u32 %r99,%r98,0; @ %r99 bra $L4; .loc 1 91 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r84; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 91 39 rcp.rn.f64 %r83,%r101; bra $L1; $L4: .loc 1 93 7 setp.eq.u32 %r103,%r86,1; @ %r103 bra $L8; .loc 1 97 12 add.f64 %r55,%r84,%r85; .loc 1 98 6 mov.b64 %r79,%r55; and.b64 %r104,%r79,-4294967296; mov.b64 %r56,%r104; .loc 1 99 17 sub.f64 %r105,%r56,%r84; .loc 1 99 8 sub.f64 %r57,%r85,%r105; .loc 1 100 12 mov.f64 %r106,0dbff0000000000000; div.rn.f64 %r58,%r106,%r55; .loc 1 101 6 mov.b64 %r80,%r58; and.b64 %r107,%r80,-4294967296; mov.b64 %r59,%r107; .loc 1 102 8 fma.rn.f64 %r60,%r56,%r59,0d3ff0000000000000; .loc 1 103 24 fma.rn.f64 %r29,%r57,%r59,%r60; .loc 1 103 15 fma.rn.f64 %r83,%r29,%r58,%r59; bra $L1; $L2: .loc 1 108 4 setp.le.s32 %r131,%r54,1072010279; @ %r131 bra $L3; .loc 1 109 8 setp.ge.s32 %r109,%r53,0; @ %r109 bra $L6; .loc 1 109 18 neg.f64 %r84,%r84; .loc 1 109 26 neg.f64 %r85,%r85; $L6: .loc 1 110 8 mov.f64 %r110,0d3fe921fb54442d18; sub.f64 %r62,%r110,%r84; .loc 1 111 8 mov.f64 %r112,0d3c81a62633145c07; sub.f64 %r111,%r112,%r85; .loc 1 112 8 add.f64 %r84,%r111,%r62; .loc 1 112 17 mov.f64 %r85,0d0000000000000000; $L3: .loc 1 114 4 mul.f64 %r65,%r84,%r84; .loc 1 115 5 mul.f64 %r66,%r65,%r65; .loc 1 120 42 fma.rn.f64 %r30,%r66,0dbef375cbdb605373,0d3f147e88a03792a6; .loc 1 120 34 fma.rn.f64 %r31,%r30,%r66,0d3f4344d8f2f26501; .loc 1 120 26 fma.rn.f64 %r32,%r31,%r66,0d3f6d6d22c9560328; .loc 1 120 18 fma.rn.f64 %r33,%r32,%r66,0d3f9664f48406d637; .loc 1 120 4 fma.rn.f64 %r67,%r33,%r66,0d3fc111111110fe7a; .loc 1 121 46 fma.rn.f64 %r34,%r66,0d3efb2a7074bf7ad4,0d3f12b80f32f0a7e9; .loc 1 121 37 fma.rn.f64 %r35,%r34,%r66,0d3f3026f71a8d1068; .loc 1 121 29 fma.rn.f64 %r36,%r35,%r66,0d3f57dbc8fee08315; .loc 1 121 21 fma.rn.f64 %r37,%r36,%r66,0d3f8226e3e96e8493; .loc 1 121 13 fma.rn.f64 %r38,%r37,%r66,0d3faba1ba1bb341fe; .loc 1 122 4 mul.f64 %r68,%r84,%r65; .loc 1 123 17 fma.rn.f64 %r39,%r38,%r65,%r67; .loc 1 123 20 fma.rn.f64 %r40,%r39,%r68,%r85; .loc 1 123 4 fma.rn.f64 %r69,%r40,%r65,%r85; .loc 1 124 4 fma.rn.f64 %r70,%r68,0d3fd5555555555563,%r69; .loc 1 125 4 add.f64 %r83,%r84,%r70; .loc 1 126 4 @ %r131 bra $L7; .loc 1 127 8 cvt.rn.f64.s32 %r76,%r86; .loc 1 128 50 mul.f64 %r114,%r83,%r83; .loc 1 128 55 add.f64 %r115,%r83,%r76; .loc 1 128 52 div.rn.f64 %r116,%r114,%r115; .loc 1 128 58 sub.f64 %r117,%r116,%r70; .loc 1 128 47 sub.f64 %r118,%r84,%r117; .loc 1 128 40 fma.rn.f64 %r50,%r118,0dc000000000000000,%r76; .loc 1 128 28 shr.s32 %r120,%r53,30; .loc 1 128 33 and.b32 %r121,%r120,2; .loc 1 128 23 mov.u32 %r123,1; sub.u32 %r122,%r123,%r121; .loc 1 128 13 cvt.rn.f64.s32 %r124,%r122; .loc 1 128 37 mul.f64 %r83,%r124,%r50; bra $L1; $L7: .loc 1 130 4 setp.eq.u32 %r125,%r86,1; @ %r125 bra $L1; .loc 1 136 6 mov.b64 %r81,%r83; and.b64 %r126,%r81,-4294967296; mov.b64 %r71,%r126; .loc 1 137 16 sub.f64 %r127,%r71,%r84; .loc 1 137 9 sub.f64 %r72,%r70,%r127; .loc 1 138 13 mov.f64 %r128,0dbff0000000000000; div.rn.f64 %r73,%r128,%r83; .loc 1 139 6 mov.b64 %r82,%r73; and.b64 %r129,%r82,-4294967296; mov.b64 %r74,%r129; .loc 1 140 9 fma.rn.f64 %r75,%r71,%r74,0d3ff0000000000000; .loc 1 141 19 fma.rn.f64 %r52,%r72,%r74,%r75; .loc 1 141 14 fma.rn.f64 %r83,%r52,%r73,%r74; bra $L1; $L8: .loc 1 94 13 mov.f64 %r83,%r84; $L1: .loc 1 143 1 mov.f64 %value,%r83; st.param.f64 [%value_out],%value; ret; } lib_a-kf_cos.o/ 0 0 0 644 3064 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .visible .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/kf_cos.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_cosf .visible .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r39; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; mov.f32 %r53,%ar0; mov.f32 %r54,%ar1; .loc 1 40 2 mov.b32 %r36,%r53; .loc 1 41 5 and.b32 %r37,%r36,2147483647; .loc 1 42 4 setp.gt.s32 %r55,%r37,838860799; @ %r55 bra $L2; .loc 1 43 10 cvt.rzi.s32.f32 %r56,%r53; .loc 1 43 8 setp.eq.u32 %r57,%r56,0; @ ! %r57 bra $L10; bra $L8; $L2: .loc 1 45 5 mul.f32 %r44,%r53,%r53; .loc 1 46 36 fma.rn.f32 %r23,%r44,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r24,%r23,%r44,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r25,%r24,%r44,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r26,%r25,%r44,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r27,%r26,%r44,0f3d2aaaab; .loc 1 46 5 mul.f32 %r50,%r27,%r44; .loc 1 47 4 setp.gt.s32 %r58,%r37,1050253721; @ %r58 bra $L5; $L7: .loc 1 48 43 mul.f32 %r59,%r53,%r54; .loc 1 48 40 neg.f32 %r60,%r59; fma.rn.f32 %r29,%r44,%r50,%r60; .loc 1 48 33 neg.f32 %r61,%r29; fma.rn.f32 %r30,%r44,0f3f000000,%r61; .loc 1 48 17 mov.f32 %r62,0f3f800000; sub.f32 %r52,%r62,%r30; bra $L1; $L5: .loc 1 50 8 setp.gt.s32 %r63,%r37,1061683200; @ %r63 bra $L9; .loc 1 53 10 add.u32 %r64,%r37,-16777216; mov.b32 %r35,%r64; .loc 1 56 9 mov.f32 %r65,0f3f800000; sub.f32 %r51,%r65,%r35; bra $L6; $L9: mov.f32 %r51,0f3f380000; .loc 1 51 6 mov.f32 %r35,0f3e900000; $L6: .loc 1 55 9 neg.f32 %r66,%r35; fma.rn.f32 %r39,%r44,0f3f000000,%r66; .loc 1 57 29 mul.f32 %r67,%r53,%r54; .loc 1 57 27 neg.f32 %r68,%r67; fma.rn.f32 %r33,%r44,%r50,%r68; .loc 1 57 21 sub.f32 %r69,%r39,%r33; .loc 1 57 15 sub.f32 %r52,%r51,%r69; bra $L1; $L8: .loc 1 43 29 mov.f32 %r52,0f3f800000; bra $L1; $L10: .loc 1 45 5 mul.f32 %r44,%r53,%r53; .loc 1 46 36 fma.rn.f32 %r45,%r44,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r46,%r44,%r45,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r47,%r44,%r46,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r48,%r44,%r47,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r49,%r44,%r48,0f3d2aaaab; .loc 1 46 5 mul.f32 %r50,%r44,%r49; bra $L7; $L1: .loc 1 59 1 mov.f32 %value,%r52; st.param.f32 [%value_out],%value; ret; } /685 0 0 0 644 25875 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_rem_pio2f .visible .func (.param .u32 %value_out) __kernel_rem_pio2f (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../../newlib/libm/math/kf_rem_pio2.c" // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: floorf .extern .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: init_jk .const .align 4 .u32 init_jk[3] = {4,7,9 }; // BEGIN VAR DEF: PIo2 .const .align 4 .u32 PIo2[11] = {1070137344,972029952,937033728,866254848,780402688,726663168,667025408,584056832,532938752,465960960,390332416 }; // BEGIN GLOBAL FUNCTION DEF: __kernel_rem_pio2f .visible .func (.param .u32 %value_out) __kernel_rem_pio2f (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,320; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .f32 %r30; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r49; .reg .u32 %r53; .reg .f32 %r65; .reg .f32 %r80; .reg .f32 %r83; .reg .u32 %r92; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .f32 %r107; .reg .u64 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .u64 %r111; .reg .u32 %r113; .reg .u32 %r116; .reg .u32 %r117; .reg .f32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .f32 %r124; .reg .u32 %r125; .reg .f32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .u32 %r136; .reg .f32 %r137; .reg .u64 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .f32 %r143; .reg .u32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r148; .reg .u32 %r149; .reg .u64 %r150; .reg .u64 %r152; .reg .u64 %r153; .reg .u32 %r154; .reg .u32 %r156; .reg .u64 %r162; .reg .u64 %r182; .reg .u32 %r183; .reg .u32 %r185; .reg .f32 %r186; .reg .f32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .u64 %r192; .reg .u64 %r194; .reg .u64 %r195; .reg .u32 %r198; .reg .u64 %r199; .reg .u64 %r201; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r207; .reg .u64 %r211; .reg .u64 %r215; .reg .u64 %r216; .reg .f32 %r220; .reg .u64 %r223; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r231; .reg .u32 %r232; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .f32 %r248; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r276; .reg .u64 %r278; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r290; .reg .u64 %r291; .reg .u64 %r292; .reg .u64 %r300; .reg .u64 %r301; .reg .u32 %r302; .reg .u32 %r306; .reg .u64 %r307; .reg .u64 %r308; .reg .u32 %r315; .reg .u64 %r318; .reg .u64 %r319; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u64 %r323; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .pred %r328; .reg .u32 %r329; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r336; .reg .pred %r337; .reg .u64 %r340; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .u32 %r345; .reg .pred %r346; .reg .u32 %r347; .reg .pred %r348; .reg .u64 %r350; .reg .u64 %r351; .reg .f32 %r352; .reg .f32 %r353; .reg .pred %r354; .reg .pred %r355; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r365; .reg .u64 %r366; .reg .u64 %r370; .reg .u32 %r371; .reg .u64 %r372; .reg .u64 %r373; .reg .f32 %r375; .reg .u32 %r376; .reg .u32 %r378; .reg .f32 %r379; .reg .pred %r380; .reg .f32 %r383; .reg .f32 %r385; .reg .f32 %r386; .reg .f32 %r388; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u64 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r400; .reg .u32 %r401; .reg .u32 %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .u64 %r406; .reg .u32 %r408; .reg .pred %r409; .reg .pred %r410; .reg .pred %r412; .reg .pred %r413; .reg .pred %r415; .reg .pred %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .u64 %r419; .reg .u32 %r421; .reg .u32 %r422; .reg .pred %r423; .reg .u64 %r424; .reg .u64 %r425; .reg .u64 %r426; .reg .u32 %r431; .reg .u32 %r432; .reg .u64 %r433; .reg .u64 %r435; .reg .u64 %r436; .reg .u32 %r439; .reg .u32 %r440; .reg .pred %r441; .reg .u64 %r445; .reg .u64 %r446; .reg .u64 %r447; .reg .u64 %r448; .reg .u32 %r453; .reg .u32 %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u32 %r463; .reg .u32 %r464; .reg .pred %r465; .reg .f32 %r466; .reg .pred %r467; .reg .f32 %r470; .reg .pred %r471; .reg .pred %r472; .reg .u64 %r475; .reg .u64 %r478; .reg .u32 %r479; .reg .u32 %r480; .reg .u64 %r481; .reg .u64 %r482; .reg .u32 %r483; .reg .pred %r484; .reg .pred %r485; .reg .u32 %r491; .reg .pred %r492; .reg .u32 %r493; .reg .pred %r494; .reg .u64 %r495; .reg .u64 %r496; .reg .u64 %r497; .reg .u64 %r499; .reg .u64 %r500; .reg .u64 %r502; .reg .u64 %r503; .reg .u64 %r505; .reg .u32 %r506; .reg .f32 %r509; .reg .pred %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u32 %r513; .reg .pred %r514; .reg .u64 %r515; .reg .u64 %r516; .reg .u64 %r517; .reg .u32 %r519; .reg .pred %r520; .reg .u64 %r522; .reg .u32 %r523; .reg .pred %r524; .reg .u32 %r527; .reg .f32 %r528; .reg .pred %r529; .reg .f32 %r530; .reg .u32 %r531; .reg .u64 %r534; .reg .u64 %r535; .reg .u32 %r537; .reg .u64 %r538; .reg .u64 %r539; .reg .u64 %r540; .reg .u32 %r542; .reg .u64 %r544; .reg .u64 %r545; .reg .u32 %r547; .reg .f32 %r548; .reg .f32 %r550; .reg .pred %r551; .reg .f32 %r554; .reg .u32 %r555; .reg .f32 %r556; .reg .pred %r557; .reg .f32 %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r563; .reg .pred %r564; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r569; .reg .f32 %r570; .reg .pred %r571; .reg .pred %r572; .reg .f32 %r573; .reg .pred %r574; .reg .f32 %r576; .reg .f32 %r577; .reg .pred %r578; .reg .f32 %r580; .reg .pred %r581; .reg .u64 %r584; .reg .u64 %r585; .reg .u64 %r589; .reg .u64 %r592; .reg .u32 %r593; .reg .u64 %r594; .reg .u64 %r595; .reg .f32 %r596; .reg .f32 %r597; .reg .pred %r598; .reg .u64 %r600; .reg .u64 %r601; .reg .u64 %r605; .reg .u32 %r606; .reg .u64 %r607; .reg .u64 %r609; .reg .f32 %r610; .reg .f32 %r611; .reg .pred %r612; .reg .u64 %r614; .reg .u64 %r615; .reg .f32 %r616; .reg .pred %r617; .reg .pred %r618; .reg .f32 %r619; .reg .f32 %r620; .reg .f32 %r621; .reg .u32 %r622; .reg .f32 %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .pred %r627; .reg .pred %r628; .reg .pred %r629; .reg .pred %r630; .reg .pred %r631; .reg .pred %r632; .reg .pred %r633; .reg .f32 %r634; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .u32 %r645; .reg .u64 %r646; .reg .u64 %r647; .reg .pred %r648; .reg .pred %r649; .reg .pred %r650; .reg .pred %r651; .reg .pred %r653; .reg .f32 %r654; .reg .u64 %r655; .reg .u64 %r656; .reg .pred %r657; .reg .pred %r658; .reg .pred %r659; .reg .u64 %r660; .reg .u32 %r661; .reg .u64 %r662; .reg .u64 %r663; .reg .u64 %r664; .reg .u64 %r665; .reg .u64 %r666; .reg .pred %r667; .reg .u64 %r668; .reg .f32 %r669; mov.u64 %r318,%ar0; mov.u64 %r319,%ar1; mov.u32 %r320,%ar2; mov.u32 %r321,%ar3; mov.u32 %r322,%ar4; mov.u64 %r323,%ar5; .loc 1 66 5 cvta.const.u64 %r324,init_jk; cvt.s64.s32 %r325,%r322; shl.b64 %r326,%r325,2; add.u64 %r327,%r324,%r326; ld.u32 %r113,[%r327]; .loc 1 70 5 add.u32 %r645,%r321,-1; .loc 1 71 19 setp.lt.s32 %r328,%r320,-4; @ %r328 bra $L76; .loc 1 71 10 add.u32 %r329,%r320,-3; .loc 1 71 5 shr.s32 %r332,%r329,31; and.b32 %r333,%r332,7; add.u32 %r334,%r333,%r329; shr.s32 %r97,%r334,3; .loc 1 72 16 add.u32 %r336,%r97,1; .loc 1 72 12 shl.b32 %r183,%r336,3; bra $L2; $L76: mov.u32 %r183,8; .loc 1 71 28 mov.u32 %r97,0; $L2: .loc 1 72 5 sub.u32 %r129,%r320,%r183; .loc 1 75 4 sub.u32 %r149,%r97,%r645; .loc 1 75 15 add.u32 %r116,%r113,%r645; .loc 1 76 11 setp.ge.s32 %r337,%r116,0; @ %r337 bra $L3; $L8: .loc 1 79 12 setp.lt.s32 %r651,%r113,0; @ %r651 bra $L4; mov.u64 %r301,%frame; mov.u32 %r302,%r645; add.u32 %r306,%r113,%r321; cvt.u64.u32 %r340,%r645; shl.b64 %r341,%r340,2; add.u64 %r342,%r318,4; add.u64 %r300,%r341,%r342; setp.ge.s32 %r650,%r645,0; add.u64 %r668,%frame,160; bra $L5; $L3: add.u64 %r307,%frame,160; cvt.s64.s32 %r343,%r149; shl.b64 %r344,%r343,2; add.u64 %r308,%r323,%r344; add.u32 %r345,%r116,1; add.u32 %r315,%r345,%r149; .loc 1 76 43 mov.f32 %r669,0f00000000; $L7: setp.lt.s32 %r346,%r149,0; @ %r346 bra $L77; ld.u32 %r347,[%r308]; cvt.rn.f32.s32 %r110,%r347; bra $L6; $L77: mov.f32 %r110,%r669; $L6: .loc 1 76 29 st.f32 [%r307],%r110; .loc 1 76 20 add.u32 %r149,%r149,1; .loc 1 76 11 add.u64 %r307,%r307,4; add.u64 %r308,%r308,4; setp.ne.u32 %r348,%r149,%r315; @ %r348 bra $L7; bra $L8; $L10: cvt.s64.s32 %r350,%r302; shl.b64 %r351,%r350,2; add.u64 %r292,%r668,%r351; .loc 1 80 47 mov.u64 %r291,%r318; .loc 1 80 16 mov.f32 %r148,0f00000000; $L9: .loc 1 80 35 ld.f32 %r352,[%r291]; ld.f32 %r353,[%r292]; fma.rn.f32 %r148,%r352,%r353,%r148; .loc 1 80 22 add.u64 %r291,%r291,4; add.u64 %r292,%r292,-4; setp.ne.u64 %r354,%r291,%r300; @ %r354 bra $L9; $L11: .loc 1 81 11 st.f32 [%r301],%r148; .loc 1 79 12 add.u64 %r301,%r301,4; add.u32 %r302,%r302,1; setp.eq.u32 %r355,%r302,%r306; @ %r355 bra $L4; $L5: .loc 1 80 22 @ %r650 bra $L10; .loc 1 80 16 mov.f32 %r148,0f00000000; bra $L11; $L4: add.u64 %r643,%frame,240; cvt.s64.s32 %r358,%r113; shl.b64 %r359,%r358,2; add.u64 %r360,%r359,-8; add.u64 %r247,%r643,%r360; cvt.u64.u32 %r362,%r645; shl.b64 %r363,%r362,2; add.u64 %r223,%r318,%r363; .loc 1 66 5 mov.u32 %r96,%r113; setp.le.s32 %r653,%r129,0; add.u64 %r656,%frame,244; .loc 1 118 10 setp.eq.u32 %r657,%r129,1; setp.eq.u32 %r658,%r129,2; .loc 1 104 9 setp.ne.u32 %r659,%r129,0; add.u64 %r660,%frame,232; .loc 1 136 16 add.u32 %r661,%r113,-1; .loc 1 136 13 cvt.s64.s32 %r662,%r661; shl.b64 %r663,%r662,2; add.u64 %r664,%frame,%r663; add.u64 %r665,%r664,240; add.u64 %r666,%frame,160; setp.lt.s32 %r667,%r645,0; $L12: .loc 1 87 16 cvt.s64.s32 %r642,%r96; shl.b64 %r365,%r642,2; add.u64 %r366,%frame,%r365; ld.f32 %r146,[%r366]; .loc 1 87 24 setp.le.s32 %r649,%r96,0; @ %r649 bra $L13; mov.u64 %r280,%r643; add.u64 %r370,%r365,-4; add.u64 %r281,%frame,%r370; add.u32 %r371,%r96,-1; cvt.u64.u32 %r372,%r371; shl.b64 %r373,%r372,2; add.u64 %r290,%r373,%r656; $L14: .loc 1 88 40 mul.f32 %r375,%r146,0f3b800000; .loc 1 88 23 cvt.rzi.s32.f32 %r376,%r375; .loc 1 88 12 cvt.rn.f32.s32 %r145,%r376; .loc 1 89 28 fma.rn.f32 %r30,%r145,0fc3800000,%r146; .loc 1 89 15 cvt.rzi.s32.f32 %r378,%r30; st.u32 [%r280],%r378; .loc 1 90 12 ld.f32 %r379,[%r281]; add.f32 %r146,%r145,%r379; .loc 1 87 24 add.u64 %r280,%r280,4; add.u64 %r281,%r281,-4; setp.ne.u64 %r380,%r280,%r290; @ %r380 bra $L14; $L13: .loc 1 94 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r146; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r383,[%value_in]; } .loc 1 95 18 mul.f32 %r385,%r383,0f3e000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r385; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r386,[%value_in]; } .loc 1 95 4 fma.rn.f32 %r119,%r386,0fc1000000,%r383; .loc 1 96 5 cvt.rzi.s32.f32 %r98,%r119; .loc 1 97 7 cvt.rn.f32.s32 %r388,%r98; .loc 1 97 4 sub.f32 %r107,%r119,%r388; .loc 1 99 4 @ %r653 bra $L15; .loc 1 100 17 add.u32 %r36,%r96,-1; .loc 1 100 14 cvt.s64.s32 %r390,%r36; shl.b64 %r391,%r390,2; add.u64 %r392,%frame,%r391; add.u64 %r393,%r392,240; ld.u32 %r37,[%r393]; .loc 1 100 24 mov.u32 %r394,8; sub.u32 %r38,%r394,%r129; .loc 1 100 9 shr.s32 %r120,%r37,%r38; .loc 1 100 33 add.u32 %r98,%r98,%r120; .loc 1 101 19 shl.b32 %r395,%r120,%r38; .loc 1 101 15 sub.u32 %r42,%r37,%r395; st.u32 [%r393],%r42; .loc 1 102 23 mov.u32 %r401,7; sub.u32 %r400,%r401,%r129; .loc 1 102 9 shr.s32 %r92,%r42,%r400; bra $L16; $L15: .loc 1 104 9 @ %r659 bra $L17; .loc 1 104 27 add.u32 %r403,%r96,-1; .loc 1 104 24 cvt.s64.s32 %r404,%r403; shl.b64 %r405,%r404,2; add.u64 %r406,%frame,%r405; .loc 1 104 20 ld.u32 %r408,[%r406+240]; shr.s32 %r92,%r408,7; bra $L16; $L17: .loc 1 105 9 setp.ge.f32 %r409,%r107,0f3f000000; @ %r409 bra $L18; .loc 1 98 5 mov.u32 %r92,0; bra $L19; $L16: .loc 1 107 4 setp.le.s32 %r410,%r92,0; @ %r410 bra $L19; .loc 1 108 8 add.u32 %r98,%r98,1; .loc 1 109 15 @ ! %r649 bra $L75; bra $L78; $L87: .loc 1 105 27 mov.u32 %r92,2; $L75: .loc 1 110 5 ld.u32 %r122,[%frame+240]; .loc 1 112 9 setp.ne.u32 %r412,%r122,0; @ %r412 bra $L79; .loc 1 109 15 setp.eq.u32 %r413,%r96,1; @ %r413 bra $L20; add.u64 %r278,%frame,244; .loc 1 109 21 mov.u32 %r156,1; bra $L22; $L23: .loc 1 109 15 add.u64 %r278,%r278,4; setp.eq.u32 %r415,%r96,%r185; @ %r415 bra $L20; mov.u32 %r156,%r185; $L22: .loc 1 110 5 ld.u32 %r122,[%r278]; .loc 1 109 21 add.u32 %r185,%r156,1; .loc 1 112 9 setp.eq.u32 %r416,%r122,0; @ %r416 bra $L23; bra $L21; $L79: mov.u32 %r185,1; mov.u32 %r156,0; $L21: .loc 1 113 21 cvt.s64.s32 %r417,%r156; shl.b64 %r418,%r417,2; add.u64 %r419,%frame,%r418; .loc 1 113 28 mov.u32 %r422,256; sub.u32 %r421,%r422,%r122; .loc 1 113 21 st.u32 [%r419+240],%r421; .loc 1 109 15 setp.le.s32 %r423,%r96,%r185; @ %r423 bra $L80; .loc 1 110 5 cvt.s64.s32 %r424,%r185; shl.b64 %r425,%r424,2; add.u64 %r426,%frame,%r425; ld.u32 %r117,[%r426+240]; add.u64 %r264,%r643,%r425; add.u32 %r431,%r96,-1; sub.u32 %r432,%r431,%r185; cvt.u64.u32 %r433,%r432; add.u64 %r435,%r433,%r424; shl.b64 %r436,%r435,2; add.u64 %r276,%r436,%r656; .loc 1 115 24 mov.u32 %r440,255; $L24: sub.u32 %r439,%r440,%r117; .loc 1 115 17 st.u32 [%r264],%r439; .loc 1 109 15 add.u64 %r264,%r264,4; setp.eq.u64 %r441,%r264,%r276; @ %r441 bra $L81; .loc 1 110 5 ld.u32 %r117,[%r264]; bra $L24; $L78: .loc 1 108 20 mov.u32 %r122,0; bra $L20; $L80: .loc 1 113 10 mov.u32 %r122,1; bra $L20; $L81: mov.u32 %r122,1; $L20: .loc 1 117 8 @ %r653 bra $L25; .loc 1 118 10 @ %r657 bra $L26; @ %r658 bra $L27; bra $L25; $L26: .loc 1 120 19 add.u32 %r49,%r96,-1; cvt.s64.s32 %r445,%r49; shl.b64 %r446,%r445,2; add.u64 %r447,%frame,%r446; add.u64 %r448,%r447,240; ld.u32 %r454,[%r448]; and.b32 %r453,%r454,127; st.u32 [%r448],%r453; .loc 1 120 28 bra $L25; $L27: .loc 1 122 19 add.u32 %r53,%r96,-1; cvt.s64.s32 %r455,%r53; shl.b64 %r456,%r455,2; add.u64 %r457,%frame,%r456; add.u64 %r458,%r457,240; ld.u32 %r464,[%r458]; and.b32 %r463,%r464,63; st.u32 [%r458],%r463; $L25: .loc 1 125 8 setp.ne.u32 %r465,%r92,2; @ %r465 bra $L19; .loc 1 126 5 mov.f32 %r466,0f3f800000; sub.f32 %r107,%r466,%r107; .loc 1 127 5 setp.eq.u32 %r467,%r122,0; @ %r467 bra $L19; .loc 1 127 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r466; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r470,[%value_in]; } .loc 1 127 18 sub.f32 %r107,%r107,%r470; $L19: .loc 1 132 4 setp.neu.f32 %r471,%r107,0f00000000; @ %r471 bra $L28; .loc 1 134 12 add.u32 %r128,%r96,-1; .loc 1 134 19 setp.gt.s32 %r472,%r113,%r128; @ %r472 bra $L29; shl.b64 %r254,%r642,2; add.u64 %r475,%r254,-4; add.u64 %r253,%r643,%r475; add.u64 %r478,%r660,%r254; sub.u32 %r479,%r96,%r113; add.u32 %r480,%r479,-1; cvt.u64.u32 %r481,%r480; shl.b64 %r482,%r481,2; sub.u64 %r263,%r478,%r482; .loc 1 133 8 mov.u32 %r39,0; $L30: .loc 1 134 31 ld.u32 %r483,[%r253]; or.b32 %r39,%r39,%r483; .loc 1 134 19 add.u64 %r253,%r253,-4; setp.ne.u64 %r484,%r253,%r263; @ %r484 bra $L30; .loc 1 135 8 setp.ne.u32 %r485,%r39,0; @ %r485 bra $L31; $L29: .loc 1 136 19 ld.u32 %r491,[%r665]; setp.ne.u32 %r492,%r491,0; @ %r492 bra $L32; mov.u64 %r246,%r247; .loc 1 136 8 mov.u32 %r125,1; $L33: .loc 1 136 24 add.u32 %r125,%r125,1; .loc 1 136 19 add.u64 %r246,%r246,-4; ld.u32 %r493,[%r246+4]; setp.eq.u32 %r494,%r493,0; @ %r494 bra $L33; bra $L115; $L32: .loc 1 138 8 add.u32 %r123,%r96,1; .loc 1 138 19 mov.u32 %r154,%r123; bra $L35; $L115: .loc 1 138 8 add.u32 %r123,%r96,1; .loc 1 138 19 add.u32 %r154,%r96,%r125; $L35: cvt.s64.s32 %r225,%r123; cvt.s64.s32 %r495,%r97; add.u64 %r496,%r495,%r225; shl.b64 %r497,%r496,2; add.u64 %r226,%r323,%r497; add.u32 %r232,%r645,%r123; cvt.s64.s32 %r499,%r232; shl.b64 %r500,%r499,2; add.u64 %r231,%r666,%r500; cvt.s64.s32 %r502,%r321; add.u64 %r503,%r642,%r502; sub.u64 %r505,%r503,%r499; shl.b64 %r245,%r505,2; add.u64 %r655,%r245,-4; $L38: .loc 1 139 17 ld.u32 %r506,[%r226]; cvt.rn.f32.s32 %r188,%r506; .loc 1 139 15 st.f32 [%r231],%r188; .loc 1 140 23 @ %r667 bra $L82; add.u64 %r216,%r655,%r231; mov.u64 %r215,%r318; .loc 1 140 17 mov.f32 %r124,0f00000000; $L37: .loc 1 140 36 ld.f32 %r509,[%r215]; fma.rn.f32 %r124,%r509,%r188,%r124; .loc 1 140 23 setp.eq.u64 %r510,%r215,%r223; @ %r510 bra $L36; .loc 1 140 45 ld.f32 %r188,[%r216]; add.u64 %r215,%r215,4; add.u64 %r216,%r216,-4; bra $L37; $L82: .loc 1 140 17 mov.f32 %r124,0f00000000; $L36: .loc 1 141 12 shl.b64 %r511,%r225,2; add.u64 %r512,%frame,%r511; st.f32 [%r512],%r124; .loc 1 138 15 add.u64 %r225,%r225,1; add.u64 %r226,%r226,4; add.u64 %r231,%r231,4; cvt.u32.u64 %r513,%r225; setp.ge.s32 %r514,%r154,%r513; @ %r514 bra $L38; mov.u32 %r96,%r154; bra $L12; $L31: .loc 1 150 18 add.u32 %r129,%r129,-8; .loc 1 151 14 cvt.s64.s32 %r515,%r128; shl.b64 %r516,%r515,2; add.u64 %r517,%frame,%r516; .loc 1 151 18 ld.u32 %r519,[%r517+240]; setp.ne.u32 %r520,%r519,0; @ %r520 bra $L39; add.u64 %r522,%r254,-8; add.u64 %r211,%r643,%r522; $L40: .loc 1 151 27 add.u32 %r128,%r128,-1; .loc 1 151 33 add.u32 %r129,%r129,-8; .loc 1 151 18 add.u64 %r211,%r211,-4; ld.u32 %r523,[%r211+4]; setp.eq.u32 %r524,%r523,0; @ %r524 bra $L40; bra $L39; $L28: .loc 1 153 10 sub.u32 %r527,%r183,%r320; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r107; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r527; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r528,[%value_in]; } .loc 1 154 8 setp.ge.f32 %r529,%r528,0f43800000; @ ! %r529 bra $L116; .loc 1 155 33 mul.f32 %r530,%r528,0f3b800000; .loc 1 155 16 cvt.rzi.s32.f32 %r531,%r530; .loc 1 155 6 cvt.rn.f32.s32 %r127,%r531; .loc 1 156 25 fma.rn.f32 %r65,%r127,0fc3800000,%r528; .loc 1 156 10 shl.b64 %r534,%r642,2; add.u64 %r535,%frame,%r534; .loc 1 156 12 cvt.rzi.s32.f32 %r537,%r65; st.u32 [%r535+240],%r537; .loc 1 157 6 add.u32 %r128,%r96,1; .loc 1 157 15 add.u32 %r129,%r129,8; .loc 1 158 10 cvt.s64.s32 %r538,%r128; shl.b64 %r539,%r538,2; add.u64 %r540,%frame,%r539; .loc 1 158 12 cvt.rzi.s32.f32 %r542,%r127; st.u32 [%r540+240],%r542; bra $L39; $L116: .loc 1 159 20 shl.b64 %r544,%r642,2; add.u64 %r545,%frame,%r544; .loc 1 159 22 cvt.rzi.s32.f32 %r547,%r528; st.u32 [%r545+240],%r547; .loc 1 159 20 mov.u32 %r128,%r96; $L39: .loc 1 163 7 mov.f32 %r548,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r548; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r550,[%value_in]; } mov.f32 %r143,%r550; .loc 1 164 12 setp.lt.s32 %r551,%r128,0; @ %r551 bra $L43; cvt.s64.s32 %r644,%r128; shl.b64 %r205,%r644,2; add.u64 %r204,%r643,%r205; add.u64 %r201,%frame,%r205; mov.u64 %r207,%r201; mov.u32 %r144,%r128; $L44: .loc 1 165 16 ld.u32 %r555,[%r204]; cvt.rn.f32.s32 %r554,%r555; .loc 1 165 15 mul.f32 %r556,%r554,%r143; .loc 1 165 11 st.f32 [%r207],%r556; .loc 1 165 32 mul.f32 %r143,%r143,0f3b800000; .loc 1 164 17 add.u32 %r144,%r144,-1; .loc 1 164 12 add.u64 %r204,%r204,-4; add.u64 %r207,%r207,-4; setp.ne.u32 %r557,%r144,-1; @ %r557 bra $L44; add.u64 %r647,%frame,80; mov.u64 %r199,%r647; mov.u32 %r142,%r128; mov.u32 %r198,0; .loc 1 170 26 mov.f32 %r654,0f3fc90000; bra $L45; $L47: .loc 1 170 51 ld.f32 %r186,[%r195]; add.u64 %r195,%r195,4; $L49: .loc 1 170 44 ld.f32 %r558,[%r194]; fma.rn.f32 %r140,%r558,%r186,%r140; .loc 1 170 37 add.u32 %r141,%r141,1; .loc 1 170 26 setp.lt.s32 %r559,%r113,%r141; @ %r559 bra $L46; add.u64 %r194,%r194,4; setp.le.s32 %r560,%r141,%r198; @ %r560 bra $L47; bra $L46; $L83: .loc 1 170 12 mov.f32 %r140,0f00000000; $L46: .loc 1 171 15 st.f32 [%r199],%r140; .loc 1 169 17 add.u32 %r142,%r142,-1; .loc 1 169 12 add.u32 %r198,%r198,1; add.u64 %r199,%r199,4; add.u64 %r201,%r201,-4; setp.eq.u32 %r561,%r142,-1; @ %r561 bra $L48; $L45: .loc 1 170 26 @ %r651 bra $L83; cvta.const.u64 %r195,PIo2+4; mov.u64 %r194,%r201; mov.f32 %r186,%r654; .loc 1 170 12 mov.f32 %r140,0f00000000; .loc 1 170 18 mov.u32 %r141,0; bra $L49; $L71: .loc 1 191 14 setp.ne.u32 %r563,%r128,0; @ %r563 bra $L50; bra $L117; $L118: .loc 1 196 14 setp.gt.s32 %r564,%r128,1; @ %r564 bra $L51; $L117: .loc 1 201 10 mov.f32 %r130,0f00000000; bra $L52; $L69: add.u64 %r162,%r647,%r205; add.u64 %r566,%r647,-4; add.u64 %r567,%r566,%r205; shl.b64 %r569,%r644,2; sub.u64 %r153,%r567,%r569; .loc 1 175 2 mov.f32 %r139,0f00000000; $L53: .loc 1 178 26 ld.f32 %r570,[%r162]; add.f32 %r139,%r139,%r570; .loc 1 178 14 add.u64 %r162,%r162,-4; setp.ne.u64 %r571,%r153,%r162; @ %r571 bra $L53; bra $L74; $L85: .loc 1 175 2 mov.f32 %r139,0f00000000; $L74: .loc 1 179 21 setp.eq.u32 %r572,%r92,0; @ %r572 bra $L54; neg.f32 %r139,%r139; $L54: .loc 1 179 8 st.f32 [%r319],%r139; .loc 1 180 3 bra $L55; $L56: .loc 1 184 26 ld.f32 %r573,[%r150]; add.f32 %r137,%r137,%r573; .loc 1 184 14 add.u64 %r150,%r150,-4; setp.ne.u64 %r574,%r111,%r150; @ %r574 bra $L56; bra $L73; $L84: .loc 1 183 6 mov.f32 %r137,0f00000000; $L73: .loc 1 185 21 setp.eq.u32 %r648,%r92,0; @ %r648 bra $L57; neg.f32 %r576,%r137; .loc 1 185 8 st.f32 [%r319],%r576; .loc 1 186 6 ld.f32 %r577,[%frame+80]; sub.f32 %r109,%r577,%r137; .loc 1 187 13 setp.le.s32 %r578,%r128,0; @ %r578 bra $L58; $L66: add.u64 %r152,%frame,84; .loc 1 187 9 mov.u32 %r136,1; $L59: .loc 1 187 26 ld.f32 %r580,[%r152]; add.f32 %r109,%r109,%r580; .loc 1 187 19 add.u32 %r136,%r136,1; .loc 1 187 13 add.u64 %r152,%r152,4; setp.ge.s32 %r581,%r128,%r136; @ %r581 bra $L59; .loc 1 188 21 @ %r648 bra $L60; $L58: neg.f32 %r109,%r109; $L60: .loc 1 188 8 st.f32 [%r319+4],%r109; .loc 1 189 3 bra $L55; $L50: .loc 1 192 27 shl.b64 %r584,%r644,2; add.u64 %r585,%frame,%r584; ld.f32 %r132,[%r585+80]; add.u64 %r589,%r584,-4; add.u64 %r40,%r647,%r589; add.u64 %r646,%frame,72; add.u64 %r592,%r646,%r584; add.u32 %r593,%r128,-1; cvt.u64.u32 %r594,%r593; shl.b64 %r595,%r594,2; sub.u64 %r192,%r592,%r595; $L61: .loc 1 192 19 ld.f32 %r80,[%r40]; mov.f32 %r248,%r132; .loc 1 192 15 add.f32 %r132,%r132,%r80; .loc 1 193 24 sub.f32 %r596,%r80,%r132; .loc 1 193 14 add.f32 %r597,%r596,%r248; st.f32 [%r40+4],%r597; .loc 1 194 15 st.f32 [%r40],%r132; .loc 1 191 14 add.u64 %r40,%r40,-4; setp.ne.u64 %r598,%r40,%r192; @ %r598 bra $L61; bra $L118; $L51: .loc 1 197 27 shl.b64 %r600,%r644,2; add.u64 %r601,%frame,%r600; ld.f32 %r131,[%r601+80]; add.u64 %r605,%r600,-4; add.u64 %r99,%r647,%r605; add.u32 %r606,%r128,-2; cvt.u64.u32 %r607,%r606; shl.b64 %r182,%r607,2; add.u64 %r609,%r646,%r600; sub.u64 %r23,%r609,%r182; $L63: .loc 1 197 19 ld.f32 %r83,[%r99]; mov.f32 %r220,%r131; .loc 1 197 15 add.f32 %r131,%r131,%r83; .loc 1 198 24 sub.f32 %r610,%r83,%r131; .loc 1 198 14 add.f32 %r611,%r610,%r220; st.f32 [%r99+4],%r611; .loc 1 199 15 st.f32 [%r99],%r131; .loc 1 196 14 add.u64 %r99,%r99,-4; setp.ne.u64 %r612,%r23,%r99; @ %r612 bra $L63; add.u64 %r108,%r647,%r600; add.u64 %r614,%r647,-4; add.u64 %r615,%r614,%r600; sub.u64 %r100,%r615,%r182; mov.f32 %r130,0f00000000; $L64: .loc 1 201 33 ld.f32 %r616,[%r108]; add.f32 %r130,%r130,%r616; .loc 1 201 21 add.u64 %r108,%r108,-4; setp.ne.u64 %r617,%r100,%r108; @ %r617 bra $L64; bra $L52; $L86: .loc 1 201 10 mov.f32 %r130,0f00000000; $L52: .loc 1 203 17 ld.f32 %r189,[%frame+80]; .loc 1 203 32 ld.f32 %r190,[%frame+84]; .loc 1 202 5 setp.ne.u32 %r618,%r92,0; @ %r618 bra $L65; .loc 1 203 12 st.f32 [%r319],%r189; .loc 1 203 27 st.f32 [%r319+4],%r190; .loc 1 203 42 st.f32 [%r319+8],%r130; bra $L55; $L65: .loc 1 205 14 neg.f32 %r619,%r189; .loc 1 205 12 st.f32 [%r319],%r619; .loc 1 205 29 neg.f32 %r620,%r190; .loc 1 205 27 st.f32 [%r319+4],%r620; .loc 1 205 44 neg.f32 %r621,%r130; .loc 1 205 42 st.f32 [%r319+8],%r621; $L55: .loc 1 208 10 and.b32 %r622,%r98,7; bra $L119; $L57: .loc 1 185 8 st.f32 [%r319],%r137; .loc 1 186 6 ld.f32 %r623,[%frame+80]; sub.f32 %r109,%r623,%r137; .loc 1 187 13 setp.gt.s32 %r624,%r128,0; @ %r624 bra $L66; bra $L60; $L48: .loc 1 175 2 setp.gt.s32 %r625,%r322,2; @ %r625 bra $L67; setp.gt.s32 %r626,%r322,0; @ %r626 bra $L68; setp.eq.u32 %r627,%r322,0; @ %r627 bra $L69; bra $L55; $L67: setp.eq.u32 %r628,%r322,3; @ %r628 bra $L71; bra $L55; $L43: setp.gt.s32 %r629,%r322,2; @ %r629 bra $L72; setp.gt.s32 %r630,%r322,0; @ %r630 bra $L84; setp.eq.u32 %r631,%r322,0; @ %r631 bra $L85; bra $L55; $L72: setp.eq.u32 %r632,%r322,3; @ %r632 bra $L86; bra $L55; $L18: .loc 1 108 8 add.u32 %r98,%r98,1; .loc 1 109 15 setp.gt.s32 %r633,%r96,0; @ %r633 bra $L87; .loc 1 126 5 mov.f32 %r634,0f3f800000; sub.f32 %r107,%r634,%r107; mov.u32 %r92,2; bra $L19; $L68: shl.b64 %r138,%r644,2; add.u64 %r150,%r647,%r138; add.u64 %r111,%frame,76; .loc 1 183 6 mov.f32 %r137,0f00000000; bra $L56; $L119: .loc 1 209 1 mov.u32 %value,%r622; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-kf_sin.o/ 0 0 0 644 2100 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .visible .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libm/math/kf_sin.c" // BEGIN GLOBAL FUNCTION DEF: __kernel_sinf .visible .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .u32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r50; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; mov.u32 %r42,%ar2; .loc 1 40 2 mov.b32 %r31,%r40; .loc 1 41 5 and.b32 %r43,%r31,2147483647; .loc 1 42 4 setp.gt.s32 %r44,%r43,838860799; @ %r44 bra $L2; .loc 1 43 9 cvt.rzi.s32.f32 %r45,%r40; .loc 1 43 8 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L5; $L2: .loc 1 44 4 mul.f32 %r34,%r40,%r40; .loc 1 45 4 mul.f32 %r35,%r40,%r34; .loc 1 46 27 fma.rn.f32 %r23,%r34,0f2f2ec9d3,0fb2d72f34; .loc 1 46 21 fma.rn.f32 %r24,%r23,%r34,0f3638ef1b; .loc 1 46 15 fma.rn.f32 %r25,%r24,%r34,0fb9500d01; .loc 1 46 4 fma.rn.f32 %r36,%r25,%r34,0f3c088889; .loc 1 47 4 setp.ne.u32 %r47,%r42,0; @ %r47 bra $L4; .loc 1 47 26 fma.rn.f32 %r26,%r34,%r36,0fbe2aaaab; .loc 1 47 20 fma.rn.f32 %r39,%r26,%r35,%r40; bra $L1; $L4: .loc 1 48 34 mul.f32 %r48,%r35,%r36; .loc 1 48 32 neg.f32 %r49,%r48; fma.rn.f32 %r28,%r41,0f3f000000,%r49; .loc 1 48 37 neg.f32 %r50,%r41; fma.rn.f32 %r29,%r28,%r34,%r50; .loc 1 48 40 fma.rn.f32 %r30,%r35,0f3e2aaaab,%r29; .loc 1 48 20 sub.f32 %r39,%r40,%r30; bra $L1; $L5: .loc 1 43 27 mov.f32 %r39,%r40; $L1: .loc 1 49 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-kf_tan.o/ 0 0 0 644 4913 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __kernel_tanf .visible .func (.param .f32 %value_out) __kernel_tanf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libm/math/kf_tan.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __kernel_tanf .visible .func (.param .f32 %value_out) __kernel_tanf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r46; .reg .f32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .f32 %r55; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .f32 %r82; .reg .pred %r84; .reg .f32 %r85; .reg .pred %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .f32 %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .pred %r111; mov.f32 %r72,%ar0; mov.f32 %r73,%ar1; mov.u32 %r74,%ar2; .loc 1 50 2 mov.b32 %r51,%r72; .loc 1 51 5 and.b32 %r52,%r51,2147483647; .loc 1 52 4 setp.gt.s32 %r75,%r52,830472191; @ %r75 bra $L2; .loc 1 53 10 cvt.rzi.s32.f32 %r76,%r72; .loc 1 53 9 setp.ne.u32 %r77,%r76,0; @ ! %r77 bra $L13; setp.le.s32 %r111,%r52,1059889471; bra $L3; $L13: .loc 1 54 13 add.u32 %r78,%r74,1; .loc 1 54 9 or.b32 %r79,%r78,%r52; .loc 1 54 5 setp.ne.u32 %r80,%r79,0; @ %r80 bra $L4; .loc 1 54 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r82,[%value_in]; } .loc 1 54 32 rcp.rn.f32 %r71,%r82; bra $L1; $L4: .loc 1 55 25 setp.eq.u32 %r84,%r74,1; @ %r84 bra $L8; mov.f32 %r85,0fbf800000; div.rn.f32 %r71,%r85,%r72; bra $L1; $L2: .loc 1 58 4 setp.le.s32 %r111,%r52,1059889471; @ %r111 bra $L3; .loc 1 59 8 setp.ge.s32 %r87,%r51,0; @ %r87 bra $L6; .loc 1 59 18 neg.f32 %r72,%r72; .loc 1 59 26 neg.f32 %r73,%r73; $L6: .loc 1 60 8 mov.f32 %r88,0f3f490fda; sub.f32 %r55,%r88,%r72; .loc 1 61 8 mov.f32 %r90,0f33222168; sub.f32 %r89,%r90,%r73; .loc 1 62 8 add.f32 %r72,%r89,%r55; .loc 1 62 17 mov.f32 %r73,0f00000000; $L3: .loc 1 64 4 mul.f32 %r58,%r72,%r72; .loc 1 65 5 mul.f32 %r59,%r58,%r58; .loc 1 70 42 fma.rn.f32 %r26,%r59,0fb79bae5f,0f38a3f445; .loc 1 70 34 fma.rn.f32 %r27,%r26,%r59,0f3a1a26c8; .loc 1 70 26 fma.rn.f32 %r28,%r27,%r59,0f3b6b6916; .loc 1 70 18 fma.rn.f32 %r29,%r28,%r59,0f3cb327a4; .loc 1 70 4 fma.rn.f32 %r60,%r29,%r59,0f3e088889; .loc 1 71 46 fma.rn.f32 %r30,%r59,0f37d95384,0f3895c07a; .loc 1 71 37 fma.rn.f32 %r31,%r30,%r59,0f398137b9; .loc 1 71 29 fma.rn.f32 %r32,%r31,%r59,0f3abede48; .loc 1 71 21 fma.rn.f32 %r33,%r32,%r59,0f3c11371f; .loc 1 71 13 fma.rn.f32 %r34,%r33,%r59,0f3d5d0dd1; .loc 1 72 4 mul.f32 %r61,%r72,%r58; .loc 1 73 17 fma.rn.f32 %r35,%r34,%r58,%r60; .loc 1 73 20 fma.rn.f32 %r36,%r35,%r61,%r73; .loc 1 73 4 fma.rn.f32 %r62,%r36,%r58,%r73; .loc 1 74 4 fma.rn.f32 %r63,%r61,0f3eaaaaab,%r62; .loc 1 75 4 add.f32 %r71,%r72,%r63; .loc 1 76 4 @ %r111 bra $L7; .loc 1 77 8 cvt.rn.f32.s32 %r69,%r74; .loc 1 78 56 mul.f32 %r92,%r71,%r71; .loc 1 78 61 add.f32 %r93,%r71,%r69; .loc 1 78 58 div.rn.f32 %r94,%r92,%r93; .loc 1 78 64 sub.f32 %r95,%r94,%r63; .loc 1 78 53 sub.f32 %r96,%r72,%r95; .loc 1 78 39 fma.rn.f32 %r46,%r96,0fc0000000,%r69; .loc 1 78 27 shr.s32 %r98,%r51,30; .loc 1 78 32 and.b32 %r99,%r98,2; .loc 1 78 22 mov.u32 %r101,1; sub.u32 %r100,%r101,%r99; .loc 1 78 13 cvt.rn.f32.s32 %r102,%r100; .loc 1 78 36 mul.f32 %r71,%r102,%r46; bra $L1; $L7: .loc 1 80 4 setp.eq.u32 %r103,%r74,1; @ %r103 bra $L1; .loc 1 88 6 mov.b32 %r105,%r71; and.b32 %r104,%r105,-4096; mov.b32 %r64,%r104; .loc 1 89 16 sub.f32 %r106,%r64,%r72; .loc 1 89 9 sub.f32 %r65,%r63,%r106; .loc 1 90 13 mov.f32 %r107,0fbf800000; div.rn.f32 %r66,%r107,%r71; .loc 1 92 6 mov.b32 %r109,%r66; and.b32 %r108,%r109,-4096; mov.b32 %r67,%r108; .loc 1 93 9 fma.rn.f32 %r68,%r64,%r67,0f3f800000; .loc 1 94 19 fma.rn.f32 %r50,%r65,%r67,%r68; .loc 1 94 14 fma.rn.f32 %r71,%r50,%r66,%r67; bra $L1; $L8: .loc 1 55 25 mov.f32 %r71,%r72; $L1: .loc 1 96 1 mov.f32 %value,%r71; st.param.f32 [%value_out],%value; ret; } lib_a-ldexpl.o/ 0 0 0 644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexpl .visible .func (.param .f64 %value_out) ldexpl (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/ldexpl.c" // BEGIN GLOBAL FUNCTION DECL: ldexp .extern .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: ldexpl .visible .func (.param .f64 %value_out) ldexpl (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u32 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-lgammal.o/0 0 0 644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgammal .visible .func (.param .f64 %value_out) lgammal (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/lgammal.c" // BEGIN GLOBAL FUNCTION DECL: lgamma .extern .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: lgammal .visible .func (.param .f64 %value_out) lgammal (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lgamma,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-llrintl.o/0 0 0 644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llrintl .visible .func (.param .u64 %value_out) llrintl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/llrintl.c" // BEGIN GLOBAL FUNCTION DECL: lrint .extern .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: llrintl .visible .func (.param .u64 %value_out) llrintl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lrint,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } /706 0 0 0 644 817 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llroundl .visible .func (.param .u64 %value_out) llroundl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/llroundl.c" // BEGIN GLOBAL FUNCTION DECL: lround .extern .func (.param .u64 %value_out) lround (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: llroundl .visible .func (.param .u64 %value_out) llroundl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lround,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-log.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-log10l.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log10l .visible .func (.param .f64 %value_out) log10l (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/log10l.c" // BEGIN GLOBAL FUNCTION DECL: log10 .extern .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log10l .visible .func (.param .f64 %value_out) log10l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),log10,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-log1pl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log1pl .visible .func (.param .f64 %value_out) log1pl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/log1pl.c" // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log1pl .visible .func (.param .f64 %value_out) log1pl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-log2.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /724 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-log2l.o/ 0 0 0 644 815 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log2l .visible .func (.param .f64 %value_out) log2l (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/log2l.c" // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log2l .visible .func (.param .f64 %value_out) log2l (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r24,%ar0; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),log,(%out_arg1); ld.param.f64 %r26,[%value_in]; } div.rn.f64 %value,%r26,0d3fe62e42fefa39ef; .loc 1 36 1 st.param.f64 [%value_out],%value; ret; } /743 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-logbl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logbl .visible .func (.param .f64 %value_out) logbl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/logbl.c" // BEGIN GLOBAL FUNCTION DECL: logb .extern .func (.param .f64 %value_out) logb (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: logbl .visible .func (.param .f64 %value_out) logbl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),logb,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 36 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-logl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logl .visible .func (.param .f64 %value_out) logl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/logl.c" // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: logl .visible .func (.param .f64 %value_out) logl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),log,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-lrintl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lrintl .visible .func (.param .u64 %value_out) lrintl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/lrintl.c" // BEGIN GLOBAL FUNCTION DECL: lrint .extern .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: lrintl .visible .func (.param .u64 %value_out) lrintl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lrint,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-lroundl.o/0 0 0 644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lroundl .visible .func (.param .u64 %value_out) lroundl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/lroundl.c" // BEGIN GLOBAL FUNCTION DECL: lround .extern .func (.param .u64 %value_out) lround (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: lroundl .visible .func (.param .u64 %value_out) lroundl (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .u64 %r26; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lround,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } /761 0 0 0 644 8599 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: with_errno .func (.param .f64 %value_out) with_errno (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/math_err.c" // BEGIN FUNCTION DECL: xflow .func (.param .f64 %value_out) xflow (.param .u32 %in_ar0, .param .f64 %in_ar1); .file 2 "../../../../../../newlib/libm/common/math_config.h" // BEGIN GLOBAL FUNCTION DECL: __math_uflow .visible .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_may_uflow .visible .func (.param .f64 %value_out) __math_may_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflow .visible .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_divzero .visible .func (.param .f64 %value_out) __math_divzero (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalid .visible .func (.param .f64 %value_out) __math_invalid (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_check_uflow .visible .func (.param .f64 %value_out) __math_check_uflow (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_check_oflow .visible .func (.param .f64 %value_out) __math_check_oflow (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN FUNCTION DEF: with_errno .func (.param .f64 %value_out) with_errno (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .u32 %r25; .reg .u64 %r26; mov.f64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 38 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r26,[%value_in]; } .loc 1 38 9 st.u32 [%r26],%r25; .loc 1 40 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: xflow .func (.param .f64 %value_out) xflow (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r22; .reg .f64 %r24; .reg .u32 %r26; .reg .f64 %r27; .reg .pred %r28; .reg .u32 %r30; .reg .f64 %r31; .reg .f64 %r32; mov.u32 %r26,%ar0; mov.f64 %r27,%ar1; .loc 1 49 7 setp.eq.u32 %r28,%r26,0; @ %r28 bra $L4; neg.f64 %r22,%r27; bra $L3; $L4: mov.f64 %r22,%r27; $L3: .loc 2 222 19 st.f64 [%frame],%r22; .loc 2 223 10 ld.f64 %r24,[%frame]; .loc 1 49 5 mul.f64 %r31,%r27,%r24; .loc 1 50 10 mov.u32 %r30,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r30; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } .loc 1 51 1 mov.f64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_uflow .visible .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r25; .reg .f64 %r26; mov.u32 %r23,%ar0; .loc 1 56 10 mov.f64 %r25,0d1000000000000000; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),xflow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 57 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_may_uflow .visible .func (.param .f64 %value_out) __math_may_uflow (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r25; .reg .f64 %r26; mov.u32 %r23,%ar0; .loc 1 65 10 mov.f64 %r25,0d1e58000000000000; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),xflow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 66 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_oflow .visible .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f64 %r25; .reg .f64 %r26; mov.u32 %r23,%ar0; .loc 1 72 10 mov.f64 %r25,0d7000000000000000; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r25; call (%value_in),xflow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 73 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_divzero .visible .func (.param .f64 %value_out) __math_divzero (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r22; .reg .f64 %r24; .reg .u32 %r26; .reg .pred %r27; .reg .u32 %r29; .reg .f64 %r30; .reg .f64 %r31; mov.u32 %r26,%ar0; .loc 1 78 14 setp.ne.u32 %r27,%r26,0; selp.f64 %r22,0dbff0000000000000,0d3ff0000000000000,%r27; .loc 2 222 19 st.f64 [%frame],%r22; .loc 2 223 10 ld.f64 %r24,[%frame]; .loc 1 78 10 div.rn.f64 %r30,%r24,0d0000000000000000; .loc 1 79 10 mov.u32 %r29,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } .loc 1 80 1 mov.f64 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_invalid .visible .func (.param .f64 %value_out) __math_invalid (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .pred %r25; .reg .u32 %r27; .reg .f64 %r28; mov.f64 %r24,%ar0; .loc 1 85 17 sub.f64 %r22,%r24,%r24; .loc 1 85 10 div.rn.f64 %r23,%r22,%r22; .loc 1 86 24 setp.nan.f64 %r25,%r24,%r24; @ %r25 bra $L11; .loc 1 86 26 mov.u32 %r27,33; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } mov.f64 %r23,%r28; $L11: .loc 1 87 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_check_uflow .visible .func (.param .f64 %value_out) __math_check_uflow (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .pred %r24; .reg .u32 %r26; .reg .f64 %r27; mov.f64 %r23,%ar0; .loc 1 94 44 setp.neu.f64 %r24,%r23,0d0000000000000000; @ %r24 bra $L14; .loc 1 94 21 mov.u32 %r26,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } mov.f64 %r23,%r27; $L14: .loc 1 95 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_check_oflow .visible .func (.param .f64 %value_out) __math_check_oflow (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .pred %r26; .reg .u32 %r28; .reg .f64 %r29; mov.f64 %r24,%ar0; .loc 1 100 10 abs.f64 %r25,%r24; .loc 1 100 45 setp.leu.f64 %r26,%r25,0d7fefffffffffffff; @ %r26 bra $L16; .loc 1 100 22 mov.u32 %r28,34; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; call (%value_in),with_errno,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } mov.f64 %r24,%r29; $L16: .loc 1 101 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } /779 0 0 0 644 4984 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: with_errnof .func (.param .f32 %value_out) with_errnof (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/math_errf.c" // BEGIN FUNCTION DECL: xflowf .func (.param .f32 %value_out) xflowf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __math_uflowf .visible .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .visible .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_divzerof .visible .func (.param .f32 %value_out) __math_divzerof (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalidf .visible .func (.param .f32 %value_out) __math_invalidf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN FUNCTION DEF: with_errnof .func (.param .f32 %value_out) with_errnof (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r26,[%value_in]; } .loc 1 39 9 st.u32 [%r26],%r25; .loc 1 41 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: xflowf .func (.param .f32 %value_out) xflowf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r22; .reg .u32 %r25; .reg .f32 %r26; .reg .pred %r27; .reg .u32 %r29; .reg .f32 %r30; .reg .f32 %r31; mov.u32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 50 18 setp.eq.u32 %r27,%r25,0; @ %r27 bra $L4; neg.f32 %r22,%r26; bra $L3; $L4: mov.f32 %r22,%r26; $L3: .loc 1 50 5 mul.f32 %r30,%r22,%r26; .loc 1 51 10 mov.u32 %r29,34; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; call (%value_in),with_errnof,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } .loc 1 52 1 mov.f32 %value,%r31; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_uflowf .visible .func (.param .f32 %value_out) __math_uflowf (.param .u32 %in_ar0) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r25; .reg .f32 %r26; mov.u32 %r23,%ar0; .loc 1 57 10 mov.f32 %r25,0f10000000; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r25; call (%value_in),xflowf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 58 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_oflowf .visible .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r25; .reg .f32 %r26; mov.u32 %r23,%ar0; .loc 1 75 10 mov.f32 %r25,0f70000000; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r25; call (%value_in),xflowf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 76 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_divzerof .visible .func (.param .f32 %value_out) __math_divzerof (.param .u32 %in_ar0) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .u32 %r25; .reg .pred %r26; .reg .u32 %r28; .reg .f32 %r29; .reg .f32 %r30; mov.u32 %r25,%ar0; .loc 1 82 10 setp.ne.u32 %r26,%r25,0; selp.f32 %r23,0fbf800000,0f3f800000,%r26; div.rn.f32 %r29,%r23,0f00000000; mov.u32 %r28,34; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; call (%value_in),with_errnof,(%out_arg1,%out_arg2); ld.param.f32 %r30,[%value_in]; } .loc 1 83 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __math_invalidf .visible .func (.param .f32 %value_out) __math_invalidf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .pred %r25; .reg .u32 %r27; .reg .f32 %r28; mov.f32 %r24,%ar0; .loc 1 88 16 sub.f32 %r22,%r24,%r24; .loc 1 88 9 div.rn.f32 %r23,%r22,%r22; .loc 1 89 24 setp.nan.f32 %r25,%r24,%r24; @ %r25 bra $L10; .loc 1 89 26 mov.u32 %r27,33; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),with_errnof,(%out_arg1,%out_arg2); ld.param.f32 %r28,[%value_in]; } mov.f32 %r23,%r28; $L10: .loc 1 90 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } lib_a-modfl.o/ 0 0 0 644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modfl .visible .func (.param .f64 %value_out) modfl (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/modfl.c" // BEGIN GLOBAL FUNCTION DECL: modf .extern .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: modfl .visible .func (.param .f64 %value_out) modfl (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),modf,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-nanl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nanl .visible .func (.param .f64 %value_out) nanl (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/nanl.c" // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: nanl .visible .func (.param .f64 %value_out) nanl (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .f64 %r25; mov.u64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),nan,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /798 0 0 0 644 563 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nearbyintl .visible .func (.param .f64 %value_out) nearbyintl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/nearbyintl.c" // BEGIN GLOBAL FUNCTION DEF: nearbyintl .visible .func (.param .f64 %value_out) nearbyintl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rni.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } /818 0 0 0 644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nextafterl .visible .func (.param .f64 %value_out) nextafterl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/nextafterl.c" // BEGIN GLOBAL FUNCTION DECL: nextafter .extern .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: nextafterl .visible .func (.param .f64 %value_out) nextafterl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),nextafter,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /838 0 0 0 644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nexttoward .visible .func (.param .f64 %value_out) nexttoward (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/nexttoward.c" // BEGIN GLOBAL FUNCTION DECL: nextafter .extern .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: nexttoward .visible .func (.param .f64 %value_out) nexttoward (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),nextafter,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 36 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /858 0 0 0 644 3340 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nexttowardf .visible .func (.param .f32 %value_out) nexttowardf (.param .f32 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/nexttowardf.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: nexttowardf .visible .func (.param .f32 %value_out) nexttowardf (.param .f32 %in_ar0, .param .f64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r27; .reg .f32 %r28; .reg .f32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .f64 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f64 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u16 %r44; .reg .u16 %r45; .reg .u16 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .f32 %r65; .reg .u16 %r67; mov.f32 %r36,%ar0; mov.f64 %r37,%ar1; .loc 1 45 14 cvt.f64.f32 %r33,%r36; .loc 1 44 7 set.u32.nan.f32 %r39,%r36,%r36; neg.s32 %r40,%r39; mov.u32 %r38,%r40; .loc 1 44 19 set.u32.nan.f64 %r42,%r37,%r37; neg.s32 %r43,%r42; mov.u32 %r41,%r43; .loc 1 44 16 cvt.u16.u8 %r67,%r38; mov.u16 %r45,%r67; cvt.u16.u8 %r67,%r41; mov.u16 %r46,%r67; or.b16 %r44,%r45,%r46; cvt.u32.u16 %r47,%r44; .loc 1 44 6 cvt.u16.u8 %r48,%r47; setp.eq.u16 %r49,%r48,0; @ %r49 bra $L2; .loc 1 45 14 add.f64 %r50,%r37,%r33; cvt.rn.f32.f64 %r35,%r50; bra $L1; $L2: .loc 1 46 6 setp.neu.f64 %r51,%r37,%r33; @ %r51 bra $L4; .loc 1 47 12 cvt.rn.f32.f64 %r35,%r37; bra $L1; $L4: .loc 1 49 6 setp.neu.f32 %r52,%r36,0f00000000; @ %r52 bra $L5; .loc 1 51 9 mov.b64 %r53,%r37; shr.u64 %r54,%r53,63; cvt.u32.u64 %r56,%r54; .loc 1 51 8 setp.eq.u32 %r57,%r56,0; selp.f32 %r35,0f00000001,0f80000001,%r57; bra $L13; $L5: .loc 1 48 12 mov.b32 %r32,%r36; .loc 1 54 9 and.b32 %r59,%r32,-2147483648; .loc 1 53 13 setp.gt.f64 %r60,%r37,%r33; @ ! %r60 bra $L20; .loc 1 54 8 setp.eq.u32 %r61,%r59,0; @ %r61 bra $L9; .loc 1 55 14 add.u32 %r27,%r32,-1; bra $L10; $L9: .loc 1 57 14 add.u32 %r27,%r32,1; bra $L10; $L20: .loc 1 59 8 setp.eq.u32 %r62,%r59,0; @ %r62 bra $L11; .loc 1 60 14 add.u32 %r27,%r32,1; bra $L10; $L11: .loc 1 62 14 add.u32 %r27,%r32,-1; $L10: .loc 1 64 5 and.b32 %r31,%r27,2139095040; .loc 1 73 26 mov.b32 %r35,%r27; .loc 1 66 6 setp.eq.u32 %r63,%r31,2139095040; @ %r63 bra $L12; .loc 1 71 6 setp.eq.u32 %r64,%r31,0; @ ! %r64 bra $L1; bra $L13; $L12: .loc 1 68 20 add.f32 %r28,%r36,%r36; .loc 1 68 16 st.f32 [%frame+4],%r28; bra $L1; $L13: .loc 1 73 32 mul.f32 %r65,%r35,%r35; .loc 1 73 22 fma.rn.f32 %r30,%r36,%r36,%r65; .loc 1 73 16 st.f32 [%frame],%r30; $L1: .loc 1 76 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } /879 0 0 0 644 1048 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nexttowardl .visible .func (.param .f64 %value_out) nexttowardl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/nexttowardl.c" // BEGIN GLOBAL FUNCTION DECL: nextafter .extern .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: nexttowardl .visible .func (.param .f64 %value_out) nexttowardl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 35 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),nextafter,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 36 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-pow.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /900 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-powl.o/ 0 0 0 644 995 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: powl .visible .func (.param .f64 %value_out) powl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/powl.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: powl .visible .func (.param .f64 %value_out) powl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /922 0 0 0 644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remainderl .visible .func (.param .f64 %value_out) remainderl (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/remainderl.c" // BEGIN GLOBAL FUNCTION DECL: remainder .extern .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: remainderl .visible .func (.param .f64 %value_out) remainderl (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),remainder,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-remquol.o/0 0 0 644 1226 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remquol .visible .func (.param .f64 %value_out) remquol (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/common/remquol.c" // BEGIN GLOBAL FUNCTION DECL: remquo .extern .func (.param .f64 %value_out) remquo (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: remquol .visible .func (.param .f64 %value_out) remquol (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .u64 %r25; .reg .f64 %r29; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),remquo,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r29,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r29; st.param.f64 [%value_out],%value; ret; } lib_a-rintl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rintl .visible .func (.param .f64 %value_out) rintl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/rintl.c" // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: rintl .visible .func (.param .f64 %value_out) rintl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),rint,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-roundl.o/ 0 0 0 644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: roundl .visible .func (.param .f64 %value_out) roundl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/roundl.c" // BEGIN GLOBAL FUNCTION DECL: round .extern .func (.param .f64 %value_out) round (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: roundl .visible .func (.param .f64 %value_out) roundl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),round,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-s_asinh.o/0 0 0 644 3909 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinh .visible .func (.param .f64 %value_out) asinh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_asinh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1p .extern .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinh .visible .func (.param .f64 %value_out) asinh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r29; .reg .u32 %r36; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .pred %r50; .reg .f64 %r52; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r57; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .pred %r75; mov.f64 %r42,%ar0; .loc 1 81 2 mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r36,%r44; .loc 1 82 5 and.b32 %r37,%r36,2147483647; .loc 1 83 4 setp.le.s32 %r46,%r37,2146435071; @ %r46 bra $L2; .loc 1 83 29 add.f64 %r41,%r42,%r42; bra $L1; $L2: .loc 1 84 4 setp.gt.s32 %r47,%r37,1043333119; @ %r47 bra $L4; .loc 1 85 13 add.f64 %r48,%r42,0d7e37e43c8800759c; .loc 1 85 8 setp.gt.f64 %r49,%r48,0d3ff0000000000000; @ ! %r49 bra $L5; bra $L8; $L4: .loc 1 87 4 setp.le.s32 %r50,%r37,1102053376; @ %r50 bra $L6; .loc 1 88 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r52,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 88 8 add.f64 %r41,%r54,0d3fe62e42fefa39ef; bra $L7; $L6: .loc 1 89 12 setp.le.s32 %r55,%r37,1073741824; @ %r55 bra $L5; .loc 1 90 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r57,[%value_in]; } .loc 1 91 35 fma.rn.f64 %r25,%r42,%r42,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 91 58 add.f64 %r60,%r59,%r57; .loc 1 91 33 rcp.rn.f64 %r61,%r60; .loc 1 91 10 fma.rn.f64 %r29,%r57,0d4000000000000000,%r61; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r64,[%value_in]; } mov.f64 %r41,%r64; bra $L7; $L5: .loc 1 93 8 mul.f64 %r38,%r42,%r42; .loc 1 94 15 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 94 30 add.f64 %r68,%r38,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 94 29 add.f64 %r71,%r69,0d3ff0000000000000; .loc 1 94 24 div.rn.f64 %r72,%r38,%r71; .loc 1 94 9 add.f64 %r73,%r72,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r73; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r74,[%value_in]; } mov.f64 %r41,%r74; $L7: .loc 1 96 4 setp.gt.s32 %r75,%r36,0; @ %r75 bra $L1; .loc 1 96 33 neg.f64 %r41,%r41; bra $L1; $L8: .loc 1 85 28 mov.f64 %r41,%r42; $L1: .loc 1 97 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } lib_a-s_atan.o/ 0 0 0 644 5602 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan .visible .func (.param .f64 %value_out) atan (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_atan.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN VAR DEF: atanhi .const .align 8 .u64 atanhi[4] = {4602023952714414927,4605249457297304856,4607027438436873883,4609753056924675352 }; // BEGIN VAR DEF: atanlo .const .align 8 .u64 atanlo[4] = {4357843414468748770,4359948597267291143,4354989122426817469,4364452196894661639 }; // BEGIN GLOBAL FUNCTION DEF: atan .visible .func (.param .f64 %value_out) atan (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u16 %r72; .reg .u16 %r73; .reg .u16 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .f64 %r81; .reg .pred %r82; .reg .f64 %r84; .reg .pred %r85; .reg .pred %r86; .reg .f64 %r87; .reg .pred %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .pred %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .u16 %r107; mov.f64 %r57,%ar0; .loc 1 130 2 mov.b64 %r58,%r57; shr.u64 %r59,%r58,32; cvt.u32.u64 %r46,%r59; .loc 1 131 5 and.b32 %r47,%r46,2147483647; .loc 1 132 4 setp.le.s32 %r61,%r47,1141899263; @ %r61 bra $L2; .loc 1 135 8 setp.gt.s32 %r62,%r47,2146435072; @ %r62 bra $L3; .loc 1 136 6 set.u32.eq.u32 %r64,%r47,2146435072; neg.s32 %r65,%r64; mov.u32 %r63,%r65; .loc 1 136 24 cvt.u32.u64 %r67,%r58; set.u32.ne.u32 %r70,%r67,0; neg.s32 %r71,%r70; mov.u32 %r69,%r71; .loc 1 136 18 cvt.u16.u8 %r107,%r63; mov.u16 %r73,%r107; cvt.u16.u8 %r107,%r69; mov.u16 %r74,%r107; and.b16 %r72,%r73,%r74; cvt.u32.u16 %r75,%r72; .loc 1 135 22 cvt.u16.u8 %r76,%r75; setp.eq.u16 %r77,%r76,0; @ %r77 bra $L4; $L3: .loc 1 137 11 add.f64 %r56,%r57,%r57; bra $L1; $L4: .loc 1 138 8 setp.gt.s32 %r78,%r46,0; .loc 1 139 32 selp.f64 %r56,0d3ff921fb54442d18,0dbff921fb54442d18,%r78; bra $L1; $L2: .loc 1 140 7 setp.gt.s32 %r79,%r47,1071382527; @ %r79 bra $L6; .loc 1 141 9 setp.gt.s32 %r80,%r47,1042284543; @ %r80 bra $L13; .loc 1 142 10 add.f64 %r81,%r57,0d7e37e43c8800759c; .loc 1 142 5 setp.gt.f64 %r82,%r81,0d3ff0000000000000; @ %r82 bra $L14; .loc 1 144 9 mov.u32 %r45,-1; bra $L7; $L6: .loc 1 146 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r57; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 147 5 setp.gt.s32 %r85,%r47,1072889855; @ %r85 bra $L8; .loc 1 148 9 setp.gt.s32 %r86,%r47,1072037887; @ %r86 bra $L9; .loc 1 149 21 fma.rn.f64 %r26,%r84,0d4000000000000000,0dbff0000000000000; .loc 1 149 31 add.f64 %r27,%r84,0d4000000000000000; .loc 1 149 13 div.rn.f64 %r57,%r26,%r27; .loc 1 149 6 mov.u32 %r45,0; bra $L7; $L9: .loc 1 151 18 mov.f64 %r87,0d3ff0000000000000; sub.f64 %r28,%r84,%r87; .loc 1 151 26 add.f64 %r29,%r84,0d3ff0000000000000; .loc 1 151 14 div.rn.f64 %r57,%r28,%r29; .loc 1 151 6 mov.u32 %r45,1; bra $L7; $L8: .loc 1 154 9 setp.gt.s32 %r88,%r47,1073971199; @ %r88 bra $L10; .loc 1 155 18 mov.f64 %r89,0d3ff8000000000000; sub.f64 %r30,%r84,%r89; .loc 1 155 28 fma.rn.f64 %r31,%r84,0d3ff8000000000000,0d3ff0000000000000; .loc 1 155 14 div.rn.f64 %r57,%r30,%r31; .loc 1 155 6 mov.u32 %r45,2; bra $L7; $L10: .loc 1 157 14 mov.f64 %r90,0dbff0000000000000; div.rn.f64 %r57,%r90,%r84; .loc 1 157 6 mov.u32 %r45,3; bra $L7; $L13: .loc 1 144 9 mov.u32 %r45,-1; $L7: .loc 1 161 4 mul.f64 %r51,%r57,%r57; .loc 1 162 4 mul.f64 %r52,%r51,%r51; .loc 1 164 51 fma.rn.f64 %r32,%r52,0d3f90ad3ae322da11,0d3fa97b4b24760deb; .loc 1 164 42 fma.rn.f64 %r33,%r32,%r52,0d3fb10d66a0d03d51; .loc 1 164 33 fma.rn.f64 %r34,%r33,%r52,0d3fb745cdc54c206e; .loc 1 164 24 fma.rn.f64 %r35,%r34,%r52,0d3fc24924920083ff; .loc 1 164 15 fma.rn.f64 %r36,%r35,%r52,0d3fd555555555550d; .loc 1 165 42 fma.rn.f64 %r37,%r52,0dbfa2b4442c6a6c2f,0dbfadde2d52defd9a; .loc 1 165 33 fma.rn.f64 %r38,%r37,%r52,0dbfb3b0f2af749a6d; .loc 1 165 24 fma.rn.f64 %r39,%r38,%r52,0dbfbc71c6fe231671; .loc 1 165 15 fma.rn.f64 %r40,%r39,%r52,0dbfc999999998ebc4; .loc 1 165 5 mul.f64 %r91,%r40,%r52; .loc 1 166 28 fma.rn.f64 %r54,%r36,%r51,%r91; .loc 1 166 24 mul.f64 %r55,%r57,%r54; .loc 1 166 5 setp.ne.u32 %r92,%r45,-1; @ %r92 bra $L11; .loc 1 166 21 sub.f64 %r56,%r57,%r55; bra $L1; $L11: .loc 1 168 16 cvta.const.u64 %r93,atanhi; cvt.s64.s32 %r94,%r45; shl.b64 %r95,%r94,3; add.u64 %r96,%r93,%r95; .loc 1 168 43 cvta.const.u64 %r97,atanlo; add.u64 %r100,%r97,%r95; .loc 1 168 35 ld.f64 %r102,[%r100]; sub.f64 %r101,%r55,%r102; .loc 1 168 49 sub.f64 %r103,%r101,%r57; .loc 1 168 8 ld.f64 %r104,[%r96]; sub.f64 %r56,%r104,%r103; .loc 1 169 23 setp.ge.s32 %r105,%r46,0; @ %r105 bra $L1; neg.f64 %r56,%r56; bra $L1; $L14: .loc 1 142 25 mov.f64 %r56,%r57; $L1: .loc 1 171 1 mov.f64 %value,%r56; st.param.f64 [%value_out],%value; ret; } lib_a-s_cbrt.o/ 0 0 0 644 3808 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cbrt .visible .func (.param .f64 %value_out) cbrt (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_cbrt.c" // BEGIN GLOBAL FUNCTION DEF: cbrt .visible .func (.param .f64 %value_out) cbrt (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r39; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r59; .reg .u64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .pred %r68; .reg .u32 %r70; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u32 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .u32 %r120; .reg .u64 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; mov.f64 %r64,%ar0; mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r52,%r66; .loc 1 79 6 and.b32 %r22,%r52,2147483647; .loc 1 80 4 setp.le.u32 %r68,%r22,2146435071; @ %r68 bra $L2; .loc 1 80 29 add.f64 %r63,%r64,%r64; bra $L1; $L2: .loc 1 82 8 cvt.u32.u64 %r70,%r65; or.b32 %r72,%r70,%r22; .loc 1 82 4 setp.eq.u32 %r73,%r72,0; @ %r73 bra $L6; .loc 1 85 2 cvt.u64.u32 %r74,%r22; shl.b64 %r75,%r74,32; and.b64 %r76,%r65,4294967295; or.b64 %r77,%r76,%r75; mov.b64 %r42,%r77; .loc 1 87 4 and.b32 %r78,%r52,2146435072; setp.ne.u32 %r79,%r78,0; @ %r79 bra $L4; .loc 1 89 6 mul.f64 %r43,%r42,0d4350000000000000; .loc 1 89 34 mov.b64 %r59,%r43; shr.u64 %r81,%r59,32; cvt.u32.u64 %r82,%r81; div.u32 %r84,%r82,3; add.u32 %r85,%r84,696219795; cvt.u64.u32 %r86,%r85; shl.b64 %r87,%r86,32; and.b64 %r88,%r59,4294967295; or.b64 %r89,%r88,%r87; mov.b64 %r39,%r89; bra $L5; $L4: .loc 1 92 4 div.s32 %r93,%r22,3; add.u32 %r94,%r93,715094163; cvt.u64.u32 %r95,%r94; shl.b64 %r96,%r95,32; mov.b64 %r39,%r96; $L5: .loc 1 96 5 mul.f64 %r99,%r39,%r39; .loc 1 96 3 div.rn.f64 %r100,%r99,%r42; .loc 1 97 3 fma.rn.f64 %r45,%r39,%r100,0d3fe15f15f15f15f1; .loc 1 98 11 add.f64 %r101,%r45,0d3ff6a0ea0ea0ea0f; .loc 1 98 15 mov.f64 %r103,0dbfe691de2532c834; div.rn.f64 %r102,%r103,%r45; .loc 1 98 13 add.f64 %r104,%r101,%r102; .loc 1 98 8 mov.f64 %r106,0d3ff9b6db6db6db6e; div.rn.f64 %r105,%r106,%r104; .loc 1 98 6 add.f64 %r107,%r105,0d3fd6db6db6db6db7; .loc 1 98 3 mul.f64 %r108,%r107,%r39; .loc 1 102 2 mov.b64 %r109,%r108; shr.u64 %r110,%r109,32; cvt.u32.u64 %r111,%r110; add.u32 %r112,%r111,1; cvt.u64.u32 %r113,%r112; shl.b64 %r117,%r113,32; mov.b64 %r47,%r117; .loc 1 106 3 mul.f64 %r118,%r47,%r47; .loc 1 107 3 div.rn.f64 %r49,%r42,%r118; .loc 1 109 6 sub.f64 %r36,%r49,%r47; .loc 1 109 12 fma.rn.f64 %r37,%r47,0d4000000000000000,%r49; .loc 1 109 3 div.rn.f64 %r119,%r36,%r37; .loc 1 110 3 fma.rn.f64 %r51,%r47,%r119,%r47; .loc 1 114 2 mov.b64 %r62,%r51; .loc 1 78 6 and.b32 %r120,%r52,-2147483648; .loc 1 114 2 shr.u64 %r122,%r62,32; cvt.u32.u64 %r123,%r122; or.b32 %r124,%r120,%r123; cvt.u64.u32 %r125,%r124; shl.b64 %r126,%r125,32; and.b64 %r127,%r62,4294967295; or.b64 %r128,%r127,%r126; mov.b64 %r63,%r128; .loc 1 115 8 bra $L1; $L6: .loc 1 83 12 mov.f64 %r63,%r64; $L1: .loc 1 116 1 mov.f64 %value,%r63; st.param.f64 [%value_out],%value; ret; } lib_a-s_ceil.o/ 0 0 0 644 3841 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ceil .visible .func (.param .f64 %value_out) ceil (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_ceil.c" // BEGIN GLOBAL FUNCTION DEF: ceil .visible .func (.param .f64 %value_out) ceil (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r27; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r46; .reg .u32 %r47; .reg .f64 %r51; .reg .f64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .f64 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f64 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .f64 %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; mov.f64 %r52,%ar0; mov.b64 %r53,%r52; shr.u64 %r54,%r53,32; cvt.u32.u64 %r46,%r54; .loc 1 42 2 mov.u32 %r39,%r46; cvt.u32.u64 %r27,%r53; mov.u32 %r40,%r27; .loc 1 43 11 shr.s32 %r58,%r46,20; .loc 1 43 16 and.b32 %r23,%r58,2047; .loc 1 43 5 add.u32 %r41,%r23,-1023; .loc 1 44 4 setp.gt.s32 %r59,%r41,19; @ %r59 bra $L2; .loc 1 45 8 setp.ge.s32 %r60,%r41,0; @ %r60 bra $L3; .loc 1 46 10 add.f64 %r61,%r52,0d7e37e43c8800759c; .loc 1 46 5 setp.gt.f64 %r62,%r61,0d0000000000000000; @ ! %r62 bra $L4; .loc 1 47 9 setp.lt.s32 %r63,%r46,0; @ %r63 bra $L13; .loc 1 48 18 or.b32 %r64,%r46,%r27; .loc 1 48 14 setp.eq.u32 %r65,%r64,0; @ %r65 bra $L14; mov.u32 %r27,0; mov.u32 %r46,1072693248; bra $L4; $L3: .loc 1 51 19 mov.u32 %r66,1048575; shr.s32 %r47,%r66,%r41; .loc 1 52 10 and.b32 %r67,%r39,%r47; .loc 1 52 13 or.b32 %r68,%r67,%r40; .loc 1 52 5 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L15; .loc 1 53 10 add.f64 %r70,%r52,0d7e37e43c8800759c; .loc 1 53 5 setp.gt.f64 %r71,%r70,0d0000000000000000; @ ! %r71 bra $L4; .loc 1 54 9 setp.le.s32 %r72,%r39,0; @ %r72 bra $L8; .loc 1 54 34 mov.u32 %r74,1048576; shr.s32 %r73,%r74,%r41; .loc 1 54 19 add.u32 %r39,%r39,%r73; $L8: .loc 1 55 14 not.b32 %r75,%r47; .loc 1 76 2 and.b32 %r46,%r75,%r39; mov.u32 %r27,0; bra $L4; $L2: .loc 1 58 12 setp.le.s32 %r76,%r41,51; @ %r76 bra $L9; .loc 1 59 8 setp.ne.u32 %r77,%r41,1024; @ %r77 bra $L16; .loc 1 59 28 add.f64 %r51,%r52,%r52; bra $L1; $L9: .loc 1 62 41 add.u32 %r78,%r23,-1043; .loc 1 62 8 mov.u32 %r79,-1; shr.u32 %r42,%r79,%r78; .loc 1 63 12 and.b32 %r80,%r40,%r42; .loc 1 63 8 setp.eq.u32 %r81,%r80,0; @ %r81 bra $L17; .loc 1 64 13 add.f64 %r82,%r52,0d7e37e43c8800759c; .loc 1 64 8 setp.gt.f64 %r83,%r82,0d0000000000000000; @ ! %r83 bra $L4; .loc 1 65 5 setp.le.s32 %r84,%r46,0; @ %r84 bra $L11; .loc 1 66 9 setp.ne.u32 %r85,%r41,20; @ %r85 bra $L12; .loc 1 66 20 add.u32 %r46,%r46,1; bra $L11; $L12: .loc 1 68 20 mov.u32 %r87,52; sub.u32 %r86,%r87,%r41; .loc 1 68 15 mov.u32 %r89,1; shl.b32 %r88,%r89,%r86; .loc 1 68 11 add.u32 %r40,%r40,%r88; .loc 1 69 6 setp.le.u32 %r90,%r27,%r40; @ %r90 bra $L11; .loc 1 69 15 add.u32 %r46,%r46,1; $L11: .loc 1 73 10 not.b32 %r91,%r42; .loc 1 76 2 and.b32 %r27,%r91,%r40; bra $L4; $L13: mov.u32 %r27,0; mov.u32 %r46,-2147483648; bra $L4; $L14: mov.u32 %r27,%r64; mov.u32 %r46,%r27; $L4: cvt.u64.u32 %r92,%r46; cvt.u64.u32 %r96,%r27; shl.b64 %r97,%r92,32; or.b64 %r98,%r97,%r96; mov.b64 %r51,%r98; .loc 1 77 9 bra $L1; $L15: .loc 1 52 29 mov.f64 %r51,%r52; bra $L1; $L16: mov.f64 %r51,%r52; bra $L1; $L17: mov.f64 %r51,%r52; $L1: .loc 1 78 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } /942 0 0 0 644 1186 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; mov.f64 %r29,%ar0; mov.f64 %r30,%ar1; .loc 1 68 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r33,%r32; and.b32 %r34,%r33,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; and.b32 %r38,%r37,-2147483648; or.b32 %r39,%r34,%r38; cvt.u64.u32 %r40,%r39; shl.b64 %r41,%r40,32; and.b64 %r42,%r27,4294967295; or.b64 %r43,%r42,%r41; mov.b64 %value,%r43; .loc 1 70 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_cos.o/ 0 0 0 644 4300 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cos .visible .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_cos.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .extern .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .extern .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .extern .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cos .visible .func (.param .f64 %value_out) cos (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .f64 %r44; .reg .f64 %r45; .reg .pred %r46; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .f64 %r53; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u32 %r68; .reg .f64 %r69; .reg .f64 %r70; mov.f64 %r38,%ar0; .loc 1 60 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r41,%r40; .loc 1 63 5 and.b32 %r34,%r41,2147483647; .loc 1 64 4 setp.gt.s32 %r42,%r34,1072243195; @ %r42 bra $L2; .loc 1 64 30 mov.f64 %r44,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } mov.f64 %r37,%r45; bra $L1; $L2: .loc 1 67 10 setp.le.s32 %r46,%r34,2146435071; @ %r46 bra $L4; .loc 1 67 35 sub.f64 %r37,%r38,%r38; bra $L1; $L4: .loc 1 71 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2,(%out_arg1,%out_arg2); ld.param.u32 %r49,[%value_in]; } .loc 1 72 14 and.b32 %r22,%r49,3; .loc 1 72 6 setp.eq.u32 %r50,%r22,1; @ %r50 bra $L5; setp.eq.u32 %r51,%r22,2; @ %r51 bra $L6; setp.ne.u32 %r52,%r22,0; @ %r52 bra $L7; .loc 1 73 19 ld.f64 %r55,[%frame+8]; ld.f64 %r53,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r53; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r55; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r56,[%value_in]; } mov.f64 %r37,%r56; bra $L1; $L5: .loc 1 74 19 ld.f64 %r60,[%frame+8]; ld.f64 %r57,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r57; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r22; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r61,[%value_in]; } .loc 1 74 18 neg.f64 %r37,%r61; bra $L1; $L6: .loc 1 75 19 ld.f64 %r64,[%frame+8]; ld.f64 %r62,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r64; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r65,[%value_in]; } .loc 1 75 18 neg.f64 %r37,%r65; bra $L1; $L7: .loc 1 77 19 ld.f64 %r69,[%frame+8]; mov.u32 %r68,1; ld.f64 %r66,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r69; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r68; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r70,[%value_in]; } mov.f64 %r37,%r70; $L1: .loc 1 80 1 mov.f64 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-s_erf.o/ 0 0 0 644 17890 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erf .visible .func (.param .f64 %value_out) erf (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_erf.c" // BEGIN GLOBAL FUNCTION DECL: erfc .visible .func (.param .f64 %value_out) erfc (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erf .visible .func (.param .f64 %value_out) erf (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r75; .reg .f64 %r80; .reg .f64 %r84; .reg .f64 %r85; .reg .u32 %r87; .reg .f64 %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r99; .reg .u64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .pred %r116; .reg .pred %r117; .reg .u32 %r118; .reg .pred %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .pred %r122; .reg .f64 %r124; .reg .f64 %r125; .reg .pred %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .pred %r130; .reg .pred %r131; .reg .f64 %r133; .reg .f64 %r134; .reg .pred %r136; .reg .u64 %r137; .reg .f64 %r138; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r145; .reg .pred %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; mov.f64 %r104,%ar0; mov.b64 %r105,%r104; shr.u64 %r106,%r105,32; cvt.u32.u64 %r107,%r106; .loc 1 248 5 and.b32 %r87,%r107,2147483647; .loc 1 249 4 setp.le.s32 %r108,%r87,2146435071; @ %r108 bra $L2; .loc 1 250 25 shr.u32 %r109,%r107,31; .loc 1 250 30 add.u32 %r110,%r109,%r109; .loc 1 251 23 mov.u32 %r112,1; sub.u32 %r111,%r112,%r110; .loc 1 251 13 cvt.rn.f64.s32 %r113,%r111; .loc 1 251 30 rcp.rn.f64 %r114,%r104; .loc 1 251 26 add.f64 %r103,%r113,%r114; bra $L1; $L2: .loc 1 254 4 setp.gt.s32 %r116,%r87,1072365567; @ %r116 bra $L4; .loc 1 255 8 setp.gt.s32 %r117,%r87,1043333119; @ %r117 bra $L5; .loc 1 256 13 and.b32 %r118,%r107,2139095040; setp.ne.u32 %r119,%r118,0; @ %r119 bra $L6; .loc 1 257 31 mul.f64 %r120,%r104,0d3ff06eba8214db69; .loc 1 257 26 fma.rn.f64 %r28,%r104,0d4020000000000000,%r120; .loc 1 257 19 mul.f64 %r103,%r28,0d3fc0000000000000; bra $L1; $L6: .loc 1 258 12 fma.rn.f64 %r103,%r104,0d3fc06eba8214db69,%r104; bra $L1; $L5: .loc 1 260 8 mul.f64 %r97,%r104,%r104; .loc 1 261 34 fma.rn.f64 %r29,%r97,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 261 27 fma.rn.f64 %r30,%r29,%r97,0dbf9d2a51dbd7194f; .loc 1 261 20 fma.rn.f64 %r31,%r30,%r97,0dbfd4cd7d691cb913; .loc 1 261 8 fma.rn.f64 %r98,%r31,%r97,0d3fc06eba8214db68; .loc 1 262 41 fma.rn.f64 %r32,%r97,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 262 34 fma.rn.f64 %r33,%r32,%r97,0d3f74d022c4d36b0f; .loc 1 262 27 fma.rn.f64 %r34,%r33,%r97,0d3fb0a54c5536ceba; .loc 1 262 20 fma.rn.f64 %r35,%r34,%r97,0d3fd97779cddadc09; .loc 1 262 8 fma.rn.f64 %r99,%r35,%r97,0d3ff0000000000000; .loc 1 263 8 div.rn.f64 %r121,%r98,%r99; .loc 1 264 15 fma.rn.f64 %r103,%r104,%r121,%r104; bra $L1; $L4: .loc 1 266 4 setp.gt.s32 %r122,%r87,1072955391; @ %r122 bra $L7; .loc 1 267 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r104; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r124,[%value_in]; } .loc 1 267 8 mov.f64 %r125,0d3ff0000000000000; sub.f64 %r94,%r124,%r125; .loc 1 268 48 fma.rn.f64 %r37,%r94,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 268 41 fma.rn.f64 %r38,%r37,%r94,0dbfbc63983d3e28ec; .loc 1 268 34 fma.rn.f64 %r39,%r38,%r94,0d3fd45fca805120e4; .loc 1 268 27 fma.rn.f64 %r40,%r39,%r94,0dbfd7d240fbb8c3f1; .loc 1 268 20 fma.rn.f64 %r41,%r40,%r94,0d3fda8d00ad92b34d; .loc 1 268 8 fma.rn.f64 %r95,%r41,%r94,0dbf6359b8bef77538; .loc 1 269 48 fma.rn.f64 %r42,%r94,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 269 41 fma.rn.f64 %r43,%r42,%r94,0d3fc02660e763351f; .loc 1 269 34 fma.rn.f64 %r44,%r43,%r94,0d3fb2635cd99fe9a7; .loc 1 269 27 fma.rn.f64 %r45,%r44,%r94,0d3fe14af092eb6f33; .loc 1 269 20 fma.rn.f64 %r46,%r45,%r94,0d3fbb3e6618eee323; .loc 1 269 8 fma.rn.f64 %r96,%r46,%r94,0d3ff0000000000000; .loc 1 270 8 setp.lt.s32 %r126,%r107,0; @ %r126 bra $L8; .loc 1 270 30 div.rn.f64 %r127,%r95,%r96; .loc 1 270 27 add.f64 %r103,%r127,0d3feb0ac160000000; bra $L1; $L8: .loc 1 270 54 div.rn.f64 %r128,%r95,%r96; .loc 1 270 51 mov.f64 %r129,0dbfeb0ac160000000; sub.f64 %r103,%r129,%r128; bra $L1; $L7: .loc 1 272 5 setp.le.s32 %r130,%r87,1075314687; @ %r130 bra $L9; .loc 1 273 8 setp.ge.s32 %r131,%r107,0; .loc 1 273 49 selp.f64 %r103,0d3ff0000000000000,0dbff0000000000000,%r131; bra $L1; $L9: .loc 1 275 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r104; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r133,[%value_in]; } .loc 1 276 13 mul.f64 %r134,%r133,%r133; .loc 1 276 5 rcp.rn.f64 %r89,%r134; .loc 1 277 4 setp.gt.s32 %r136,%r87,1074191213; @ %r136 bra $L10; .loc 1 279 15 fma.rn.f64 %r50,%r89,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 279 8 fma.rn.f64 %r51,%r50,%r89,0dc067135cebccabb2; .loc 1 278 39 fma.rn.f64 %r52,%r51,%r89,0dc0644cb184282266; .loc 1 278 32 fma.rn.f64 %r53,%r52,%r89,0dc04f300ae4cba38d; .loc 1 278 25 fma.rn.f64 %r54,%r53,%r89,0dc0251e0441b0e726; .loc 1 278 18 fma.rn.f64 %r55,%r54,%r89,0dbfe63416e4ba7360; .loc 1 278 7 fma.rn.f64 %r84,%r55,%r89,0dbf843412600d6435; .loc 1 281 22 fma.rn.f64 %r56,%r89,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 281 15 fma.rn.f64 %r57,%r56,%r89,0d405b28a3ee48ae2c; .loc 1 281 8 fma.rn.f64 %r58,%r57,%r89,0d407ad02157700314; .loc 1 280 39 fma.rn.f64 %r59,%r58,%r89,0d40842b1921ec2868; .loc 1 280 32 fma.rn.f64 %r60,%r59,%r89,0d407b290dd58a1a71; .loc 1 280 25 fma.rn.f64 %r61,%r60,%r89,0d4061350c526ae721; .loc 1 280 18 fma.rn.f64 %r62,%r61,%r89,0d4033a6b9bd707687; .loc 1 280 7 fma.rn.f64 %r85,%r62,%r89,0d3ff0000000000000; bra $L11; $L10: .loc 1 284 8 fma.rn.f64 %r63,%r89,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 283 39 fma.rn.f64 %r64,%r63,%r89,0dc083ec881375f228; .loc 1 283 32 fma.rn.f64 %r65,%r64,%r89,0dc064145d43c5ed98; .loc 1 283 25 fma.rn.f64 %r66,%r65,%r89,0dc031c209555f995a; .loc 1 283 18 fma.rn.f64 %r67,%r66,%r89,0dbfe993ba70c285de; .loc 1 283 7 fma.rn.f64 %r84,%r67,%r89,0dbf84341239e86f4a; .loc 1 286 15 fma.rn.f64 %r68,%r89,0dc03670e242712d62,0d407da874e79fe763; .loc 1 286 8 fma.rn.f64 %r69,%r68,%r89,0d40a3f219cedf3be6; .loc 1 285 39 fma.rn.f64 %r70,%r69,%r89,0d40a8ffb7688c246a; .loc 1 285 32 fma.rn.f64 %r71,%r70,%r89,0d409802eb189d5118; .loc 1 285 25 fma.rn.f64 %r72,%r71,%r89,0d40745cae221b9f0a; .loc 1 285 18 fma.rn.f64 %r73,%r72,%r89,0d403e568b261d5190; .loc 1 285 7 fma.rn.f64 %r85,%r73,%r89,0d3ff0000000000000; $L11: .loc 1 289 2 mov.b64 %r102,%r133; and.b64 %r137,%r102,-4294967296; mov.b64 %r91,%r137; .loc 1 290 22 neg.f64 %r138,%r91; .loc 1 290 8 fma.rn.f64 %r75,%r138,%r91,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r140,[%value_in]; } .loc 1 290 51 sub.f64 %r141,%r91,%r133; .loc 1 290 57 add.f64 %r142,%r133,%r91; .loc 1 290 62 div.rn.f64 %r143,%r84,%r85; .loc 1 290 35 fma.rn.f64 %r80,%r141,%r142,%r143; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r145,[%value_in]; } .loc 1 290 5 mul.f64 %r92,%r140,%r145; .loc 1 291 4 setp.lt.s32 %r146,%r107,0; @ %r146 bra $L12; .loc 1 291 24 div.rn.f64 %r147,%r92,%r133; .loc 1 291 22 mov.f64 %r148,0d3ff0000000000000; sub.f64 %r103,%r148,%r147; bra $L1; $L12: .loc 1 291 42 div.rn.f64 %r149,%r92,%r133; .loc 1 291 44 mov.f64 %r150,0d3ff0000000000000; sub.f64 %r103,%r149,%r150; $L1: .loc 1 292 1 mov.f64 %value,%r103; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: erfc .visible .func (.param .f64 %value_out) erfc (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r77; .reg .f64 %r82; .reg .f64 %r85; .reg .f64 %r86; .reg .u32 %r88; .reg .f64 %r90; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r104; .reg .u64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .pred %r117; .reg .pred %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .pred %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .pred %r128; .reg .f64 %r130; .reg .f64 %r131; .reg .pred %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .f64 %r136; .reg .pred %r137; .reg .f64 %r139; .reg .f64 %r140; .reg .pred %r142; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u16 %r149; .reg .u16 %r150; .reg .u16 %r151; .reg .u32 %r152; .reg .u16 %r153; .reg .pred %r154; .reg .u64 %r155; .reg .f64 %r156; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r163; .reg .pred %r164; .reg .f64 %r165; .reg .f64 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .f64 %r169; .reg .u16 %r171; mov.f64 %r107,%ar0; mov.b64 %r108,%r107; shr.u64 %r109,%r108,32; cvt.u32.u64 %r110,%r109; .loc 1 304 5 and.b32 %r88,%r110,2147483647; .loc 1 305 4 setp.le.s32 %r111,%r88,2146435071; @ %r111 bra $L15; .loc 1 307 37 shr.u32 %r112,%r110,31; .loc 1 307 42 add.u32 %r113,%r112,%r112; .loc 1 307 13 cvt.rn.f64.s32 %r114,%r113; .loc 1 307 50 rcp.rn.f64 %r115,%r107; .loc 1 307 46 add.f64 %r106,%r114,%r115; bra $L14; $L15: .loc 1 310 4 setp.gt.s32 %r117,%r88,1072365567; @ %r117 bra $L17; .loc 1 311 8 setp.gt.s32 %r118,%r88,1013972991; @ %r118 bra $L18; .loc 1 312 13 mov.f64 %r119,0d3ff0000000000000; sub.f64 %r106,%r119,%r107; bra $L14; $L18: .loc 1 313 8 mul.f64 %r99,%r107,%r107; .loc 1 314 34 fma.rn.f64 %r26,%r99,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 314 27 fma.rn.f64 %r27,%r26,%r99,0dbf9d2a51dbd7194f; .loc 1 314 20 fma.rn.f64 %r28,%r27,%r99,0dbfd4cd7d691cb913; .loc 1 314 8 fma.rn.f64 %r100,%r28,%r99,0d3fc06eba8214db68; .loc 1 315 41 fma.rn.f64 %r29,%r99,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 315 34 fma.rn.f64 %r30,%r29,%r99,0d3f74d022c4d36b0f; .loc 1 315 27 fma.rn.f64 %r31,%r30,%r99,0d3fb0a54c5536ceba; .loc 1 315 20 fma.rn.f64 %r32,%r31,%r99,0d3fd97779cddadc09; .loc 1 315 8 fma.rn.f64 %r101,%r32,%r99,0d3ff0000000000000; .loc 1 316 8 div.rn.f64 %r120,%r100,%r101; .loc 1 318 18 mul.f64 %r104,%r120,%r107; .loc 1 317 8 setp.gt.s32 %r121,%r110,1070596095; @ %r121 bra $L19; .loc 1 318 16 add.f64 %r122,%r107,%r104; .loc 1 318 13 mov.f64 %r123,0d3ff0000000000000; sub.f64 %r106,%r123,%r122; bra $L14; $L19: .loc 1 321 10 mov.f64 %r125,0d3fe0000000000000; sub.f64 %r124,%r107,%r125; .loc 1 321 5 add.f64 %r126,%r124,%r104; .loc 1 322 22 sub.f64 %r106,%r125,%r126; bra $L14; $L17: .loc 1 325 4 setp.gt.s32 %r128,%r88,1072955391; @ %r128 bra $L20; .loc 1 326 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r107; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 326 8 mov.f64 %r131,0d3ff0000000000000; sub.f64 %r95,%r130,%r131; .loc 1 327 48 fma.rn.f64 %r36,%r95,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 327 41 fma.rn.f64 %r37,%r36,%r95,0dbfbc63983d3e28ec; .loc 1 327 34 fma.rn.f64 %r38,%r37,%r95,0d3fd45fca805120e4; .loc 1 327 27 fma.rn.f64 %r39,%r38,%r95,0dbfd7d240fbb8c3f1; .loc 1 327 20 fma.rn.f64 %r40,%r39,%r95,0d3fda8d00ad92b34d; .loc 1 327 8 fma.rn.f64 %r96,%r40,%r95,0dbf6359b8bef77538; .loc 1 328 48 fma.rn.f64 %r41,%r95,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 328 41 fma.rn.f64 %r42,%r41,%r95,0d3fc02660e763351f; .loc 1 328 34 fma.rn.f64 %r43,%r42,%r95,0d3fb2635cd99fe9a7; .loc 1 328 27 fma.rn.f64 %r44,%r43,%r95,0d3fe14af092eb6f33; .loc 1 328 20 fma.rn.f64 %r45,%r44,%r95,0d3fbb3e6618eee323; .loc 1 328 8 fma.rn.f64 %r97,%r45,%r95,0d3ff0000000000000; .loc 1 329 8 setp.lt.s32 %r132,%r110,0; @ %r132 bra $L21; .loc 1 330 36 div.rn.f64 %r133,%r96,%r97; .loc 1 330 33 mov.f64 %r134,0d3fc3d4fa80000000; sub.f64 %r106,%r134,%r133; bra $L14; $L21: .loc 1 332 12 div.rn.f64 %r135,%r96,%r97; .loc 1 332 5 add.f64 %r136,%r135,0d3feb0ac160000000; .loc 1 332 26 add.f64 %r106,%r136,0d3ff0000000000000; bra $L14; $L20: .loc 1 335 5 setp.gt.s32 %r137,%r88,1077673983; @ %r137 bra $L22; .loc 1 336 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r107; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r139,[%value_in]; } .loc 1 337 17 mul.f64 %r140,%r139,%r139; .loc 1 337 9 rcp.rn.f64 %r90,%r140; .loc 1 338 8 setp.gt.s32 %r142,%r88,1074191212; @ %r142 bra $L23; .loc 1 340 15 fma.rn.f64 %r49,%r90,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 340 8 fma.rn.f64 %r50,%r49,%r90,0dc067135cebccabb2; .loc 1 339 43 fma.rn.f64 %r51,%r50,%r90,0dc0644cb184282266; .loc 1 339 36 fma.rn.f64 %r52,%r51,%r90,0dc04f300ae4cba38d; .loc 1 339 29 fma.rn.f64 %r53,%r52,%r90,0dc0251e0441b0e726; .loc 1 339 22 fma.rn.f64 %r54,%r53,%r90,0dbfe63416e4ba7360; .loc 1 339 11 fma.rn.f64 %r85,%r54,%r90,0dbf843412600d6435; .loc 1 342 22 fma.rn.f64 %r55,%r90,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 342 15 fma.rn.f64 %r56,%r55,%r90,0d405b28a3ee48ae2c; .loc 1 342 8 fma.rn.f64 %r57,%r56,%r90,0d407ad02157700314; .loc 1 341 43 fma.rn.f64 %r58,%r57,%r90,0d40842b1921ec2868; .loc 1 341 36 fma.rn.f64 %r59,%r58,%r90,0d407b290dd58a1a71; .loc 1 341 29 fma.rn.f64 %r60,%r59,%r90,0d4061350c526ae721; .loc 1 341 22 fma.rn.f64 %r61,%r60,%r90,0d4033a6b9bd707687; .loc 1 341 11 fma.rn.f64 %r86,%r61,%r90,0d3ff0000000000000; bra $L24; $L23: .loc 1 344 8 shr.u32 %r144,%r110,31; mov.u32 %r145,%r144; .loc 1 344 14 set.u32.gt.s32 %r147,%r88,1075314687; neg.s32 %r148,%r147; mov.u32 %r146,%r148; .loc 1 344 10 cvt.u16.u8 %r171,%r145; mov.u16 %r150,%r171; cvt.u16.u8 %r171,%r146; mov.u16 %r151,%r171; and.b16 %r149,%r150,%r151; cvt.u32.u16 %r152,%r149; .loc 1 344 5 cvt.u16.u8 %r153,%r152; setp.eq.u16 %r154,%r153,0; @ %r154 bra $L25; $L27: .loc 1 344 38 mov.f64 %r106,0d4000000000000000; bra $L14; $L25: .loc 1 346 8 fma.rn.f64 %r65,%r90,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 345 43 fma.rn.f64 %r66,%r65,%r90,0dc083ec881375f228; .loc 1 345 36 fma.rn.f64 %r67,%r66,%r90,0dc064145d43c5ed98; .loc 1 345 29 fma.rn.f64 %r68,%r67,%r90,0dc031c209555f995a; .loc 1 345 22 fma.rn.f64 %r69,%r68,%r90,0dbfe993ba70c285de; .loc 1 345 11 fma.rn.f64 %r85,%r69,%r90,0dbf84341239e86f4a; .loc 1 348 15 fma.rn.f64 %r70,%r90,0dc03670e242712d62,0d407da874e79fe763; .loc 1 348 8 fma.rn.f64 %r71,%r70,%r90,0d40a3f219cedf3be6; .loc 1 347 43 fma.rn.f64 %r72,%r71,%r90,0d40a8ffb7688c246a; .loc 1 347 36 fma.rn.f64 %r73,%r72,%r90,0d409802eb189d5118; .loc 1 347 29 fma.rn.f64 %r74,%r73,%r90,0d40745cae221b9f0a; .loc 1 347 22 fma.rn.f64 %r75,%r74,%r90,0d403e568b261d5190; .loc 1 347 11 fma.rn.f64 %r86,%r75,%r90,0d3ff0000000000000; $L24: .loc 1 351 6 mov.b64 %r105,%r139; and.b64 %r155,%r105,-4294967296; mov.b64 %r93,%r155; .loc 1 352 26 neg.f64 %r156,%r93; .loc 1 352 12 fma.rn.f64 %r77,%r156,%r93,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r77; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r158,[%value_in]; } .loc 1 353 20 sub.f64 %r159,%r93,%r139; .loc 1 353 26 add.f64 %r160,%r139,%r93; .loc 1 353 31 div.rn.f64 %r161,%r85,%r86; .loc 1 353 4 fma.rn.f64 %r82,%r159,%r160,%r161; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r163,[%value_in]; } .loc 1 352 9 mul.f64 %r94,%r158,%r163; .loc 1 354 8 setp.le.s32 %r164,%r110,0; @ %r164 bra $L26; .loc 1 354 23 div.rn.f64 %r106,%r94,%r139; bra $L14; $L26: .loc 1 354 44 div.rn.f64 %r165,%r94,%r139; .loc 1 354 42 mov.f64 %r166,0d4000000000000000; sub.f64 %r106,%r166,%r165; bra $L14; $L22: .loc 1 356 8 setp.le.s32 %r167,%r110,0; @ %r167 bra $L27; .loc 1 356 22 mov.u32 %r168,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r168; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r169,[%value_in]; } mov.f64 %r106,%r169; $L14: .loc 1 358 1 mov.f64 %value,%r106; st.param.f64 [%value_out],%value; ret; } lib_a-s_exp10.o/0 0 0 644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp10 .visible .func (.param .f64 %value_out) exp10 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_exp10.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp10 .visible .func (.param .f64 %value_out) exp10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r23,%ar0; .loc 1 66 10 mov.f64 %r24,0d4024000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r23; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 67 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-s_expm1.o/0 0 0 644 8474 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expm1 .visible .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_expm1.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflow .extern .func (.param .f64 %value_out) __math_oflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expm1 .visible .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .u32 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r88; .reg .u32 %r90; .reg .u64 %r91; .reg .u64 %r93; .reg .u64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .u32 %r112; .reg .f64 %r113; .reg .pred %r114; .reg .f64 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .f64 %r120; .reg .pred %r121; .reg .f64 %r122; .reg .f64 %r124; .reg .pred %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .pred %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .pred %r133; .reg .f64 %r134; .reg .pred %r135; .reg .pred %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .u32 %r140; .reg .pred %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .u64 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u64 %r151; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .f64 %r162; .reg .u64 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .f64 %r178; .reg .u64 %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; mov.f64 %r97,%ar0; mov.b64 %r98,%r97; shr.u64 %r99,%r98,32; cvt.u32.u64 %r100,%r99; .loc 1 182 5 and.b32 %r61,%r100,2147483647; .loc 1 185 4 setp.le.u32 %r101,%r61,1078159481; @ %r101 bra $L2; .loc 1 186 8 setp.le.u32 %r102,%r61,1082535489; @ %r102 bra $L3; .loc 1 187 19 setp.le.u32 %r103,%r61,2146435071; @ %r103 bra $L4; .loc 1 190 14 and.b32 %r104,%r100,1048575; .loc 1 190 23 cvt.u32.u64 %r106,%r98; or.b32 %r108,%r104,%r106; .loc 1 190 9 setp.eq.u32 %r109,%r108,0; @ %r109 bra $L5; .loc 1 191 20 add.f64 %r96,%r97,%r97; bra $L1; $L5: .loc 1 192 30 setp.lt.s32 %r110,%r100,0; selp.f64 %r96,0dbff0000000000000,%r97,%r110; bra $L1; $L4: .loc 1 194 12 setp.gt.f64 %r111,%r97,0d40862e42fefa39ef; @ ! %r111 bra $L3; .loc 1 194 37 mov.u32 %r112,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r112; call (%value_in),__math_oflow,(%out_arg1); ld.param.f64 %r113,[%value_in]; } mov.f64 %r96,%r113; bra $L1; $L3: .loc 1 196 8 setp.ge.s32 %r114,%r100,0; @ %r114 bra $L8; .loc 1 197 7 add.f64 %r115,%r97,0d01a56e1fc2f8f359; .loc 1 197 5 setp.lt.f64 %r116,%r115,0d0000000000000000; @ ! %r116 bra $L29; bra $L24; $L2: .loc 1 203 4 setp.le.u32 %r117,%r61,1071001154; @ %r117 bra $L10; .loc 1 204 8 setp.gt.u32 %r118,%r61,1072734897; @ %r118 bra $L11; .loc 1 205 5 setp.lt.s32 %r119,%r100,0; @ %r119 bra $L12; .loc 1 206 11 mov.f64 %r120,0d3fe62e42fee00000; sub.f64 %r56,%r97,%r120; .loc 1 206 42 mov.u32 %r59,1; .loc 1 206 28 mov.f64 %r57,0d3dea39ef35793c76; bra $L13; $L12: .loc 1 208 11 add.f64 %r56,%r97,0d3fe62e42fee00000; .loc 1 208 42 mov.u32 %r59,-1; .loc 1 208 28 mov.f64 %r57,0dbdea39ef35793c76; bra $L13; $L11: .loc 1 210 14 mul.f64 %r88,%r97,0d3ff71547652b82fe; .loc 1 210 30 setp.ge.s32 %r121,%r100,0; selp.f64 %r60,0d3fe0000000000000,0dbfe0000000000000,%r121; $L14: .loc 1 210 16 add.f64 %r122,%r60,%r88; .loc 1 210 6 cvt.rzi.s32.f64 %r59,%r122; .loc 1 211 6 cvt.rn.f64.s32 %r63,%r59; .loc 1 212 6 fma.rn.f64 %r56,%r63,0dbfe62e42fee00000,%r97; .loc 1 213 6 mul.f64 %r57,%r63,0d3dea39ef35793c76; $L13: .loc 1 215 9 sub.f64 %r97,%r56,%r57; .loc 1 216 14 sub.f64 %r124,%r56,%r97; .loc 1 216 9 sub.f64 %r58,%r124,%r57; bra $L15; $L10: .loc 1 218 9 setp.gt.u32 %r125,%r61,1016070143; @ %r125 bra $L26; .loc 1 219 8 add.f64 %r62,%r97,0d7e37e43c8800759c; .loc 1 220 19 sub.f64 %r126,%r62,%r62; .loc 1 220 15 sub.f64 %r96,%r97,%r126; bra $L1; $L26: .loc 1 222 9 mov.u32 %r59,0; $L15: .loc 1 225 6 mul.f64 %r66,%r97,0d3fe0000000000000; .loc 1 226 6 mul.f64 %r67,%r97,%r66; .loc 1 227 42 fma.rn.f64 %r29,%r67,0dbe8afdb76e09c32d,0d3ed0cfca86e65239; .loc 1 227 34 fma.rn.f64 %r30,%r29,%r67,0dbf14ce199eaadbb7; .loc 1 227 26 fma.rn.f64 %r31,%r30,%r67,0d3f5a01a019fe5585; .loc 1 227 18 fma.rn.f64 %r32,%r31,%r67,0dbfa11111111110f4; .loc 1 227 5 fma.rn.f64 %r68,%r32,%r67,0d3ff0000000000000; .loc 1 228 5 neg.f64 %r127,%r66; fma.rn.f64 %r69,%r127,%r68,0d4008000000000000; .loc 1 229 15 sub.f64 %r33,%r68,%r69; .loc 1 229 24 neg.f64 %r128,%r97; fma.rn.f64 %r34,%r128,%r69,0d4018000000000000; .loc 1 229 18 div.rn.f64 %r129,%r33,%r34; .loc 1 229 5 mul.f64 %r70,%r129,%r67; .loc 1 230 4 setp.ne.u32 %r130,%r59,0; @ %r130 bra $L16; .loc 1 230 26 neg.f64 %r131,%r67; fma.rn.f64 %r36,%r97,%r70,%r131; .loc 1 230 20 sub.f64 %r96,%r97,%r36; bra $L1; $L16: .loc 1 232 16 sub.f64 %r37,%r70,%r58; .loc 1 232 9 neg.f64 %r132,%r58; fma.rn.f64 %r71,%r37,%r97,%r132; .loc 1 233 8 sub.f64 %r72,%r71,%r67; .loc 1 234 8 setp.ne.u32 %r133,%r59,-1; @ %r133 bra $L17; .loc 1 234 30 sub.f64 %r134,%r97,%r72; .loc 1 234 33 fma.rn.f64 %r96,%r134,0d3fe0000000000000,0dbfe0000000000000; bra $L1; $L17: .loc 1 235 13 setp.ne.u32 %r135,%r59,1; @ %r135 bra $L18; .loc 1 236 12 setp.lt.f64 %r136,%r97,0dbfd0000000000000; @ ! %r136 bra $L30; .loc 1 236 41 add.f64 %r137,%r97,0d3fe0000000000000; .loc 1 236 38 sub.f64 %r138,%r72,%r137; .loc 1 236 35 mul.f64 %r96,%r138,0dc000000000000000; bra $L1; $L30: .loc 1 237 40 sub.f64 %r139,%r97,%r72; .loc 1 237 33 fma.rn.f64 %r96,%r139,0d4000000000000000,0d3ff0000000000000; bra $L1; $L18: .loc 1 243 3 shl.b32 %r90,%r59,20; .loc 1 239 18 add.u32 %r140,%r59,1; .loc 1 239 9 setp.le.u32 %r141,%r140,57; @ %r141 bra $L21; .loc 1 241 20 sub.f64 %r142,%r72,%r97; .loc 1 241 12 mov.f64 %r143,0d3ff0000000000000; sub.f64 %r80,%r143,%r142; .loc 1 243 3 mov.b64 %r91,%r80; shr.u64 %r145,%r91,32; cvt.u32.u64 %r146,%r145; add.u32 %r147,%r146,%r90; cvt.u64.u32 %r148,%r147; shl.b64 %r149,%r148,32; and.b64 %r150,%r91,4294967295; or.b64 %r151,%r150,%r149; mov.b64 %r81,%r151; .loc 1 244 18 sub.f64 %r96,%r81,%r143; bra $L1; $L21: .loc 1 247 8 setp.gt.s32 %r153,%r59,19; @ %r153 bra $L22; .loc 1 249 10 mov.u32 %r155,2097152; shr.s32 %r154,%r155,%r59; mov.u32 %r157,1072693248; sub.u32 %r156,%r157,%r154; cvt.u64.u32 %r158,%r156; shl.b64 %r159,%r158,32; mov.b64 %r77,%r159; .loc 1 250 18 sub.f64 %r162,%r72,%r97; .loc 1 250 12 sub.f64 %r78,%r77,%r162; .loc 1 252 3 mov.b64 %r93,%r78; shr.u64 %r164,%r93,32; cvt.u32.u64 %r165,%r164; add.u32 %r166,%r165,%r90; cvt.u64.u32 %r167,%r166; shl.b64 %r168,%r167,32; and.b64 %r169,%r93,4294967295; or.b64 %r170,%r169,%r168; mov.b64 %r96,%r170; bra $L1; $L22: .loc 1 255 3 mov.u32 %r172,1023; sub.u32 %r171,%r172,%r59; shl.b32 %r173,%r171,20; cvt.u64.u32 %r174,%r173; shl.b64 %r175,%r174,32; mov.b64 %r74,%r175; .loc 1 256 18 add.f64 %r178,%r72,%r74; .loc 1 256 12 sub.f64 %r75,%r97,%r178; .loc 1 257 12 add.f64 %r76,%r75,0d3ff0000000000000; .loc 1 259 3 mov.b64 %r95,%r76; shr.u64 %r180,%r95,32; cvt.u32.u64 %r181,%r180; add.u32 %r182,%r181,%r90; cvt.u64.u32 %r183,%r182; shl.b64 %r184,%r183,32; and.b64 %r185,%r95,4294967295; or.b64 %r186,%r185,%r184; mov.b64 %r96,%r186; bra $L1; $L24: .loc 1 192 30 mov.f64 %r96,0dbff0000000000000; bra $L1; $L8: .loc 1 210 14 mul.f64 %r88,%r97,0d3ff71547652b82fe; .loc 1 210 30 mov.f64 %r60,0d3fe0000000000000; bra $L14; $L29: .loc 1 210 14 mul.f64 %r88,%r97,0d3ff71547652b82fe; .loc 1 210 30 mov.f64 %r60,0dbfe0000000000000; bra $L14; $L1: .loc 1 263 1 mov.f64 %value,%r96; st.param.f64 [%value_out],%value; ret; } lib_a-s_fabs.o/ 0 0 0 644 614 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fabs .visible .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_fabs.c" // BEGIN GLOBAL FUNCTION DEF: fabs .visible .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .f64 %r26; .reg .u64 %r34; mov.f64 %r26,%ar0; .loc 1 61 2 mov.b64 %r24,%r26; and.b64 %r34,%r24,9223372036854775807; mov.b64 %value,%r34; .loc 1 63 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fdim.o/ 0 0 0 644 1478 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fdim .visible .func (.param .f64 %value_out) fdim (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_fdim.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fdim .visible .func (.param .f64 %value_out) fdim (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r25; .reg .f64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 52 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 52 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 53 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 53 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 55 24 setp.gt.f64 %r33,%r25,%r26; @ ! %r33 bra $L10; sub.f64 %r25,%r25,%r26; bra $L2; $L4: .loc 1 53 42 mov.f64 %r25,%r26; bra $L2; $L10: .loc 1 55 24 mov.f64 %r25,0d0000000000000000; $L2: .loc 1 56 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /962 0 0 0 644 783 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_finite.c" // BEGIN GLOBAL FUNCTION DEF: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; mov.f64 %r29,%ar0; .loc 1 31 2 mov.b64 %r31,%r29; shr.u64 %r32,%r31,32; cvt.u32.u64 %r33,%r32; .loc 1 32 32 and.b32 %r34,%r33,2147483647; .loc 1 32 44 add.u32 %r35,%r34,-2146435072; .loc 1 32 56 shr.u32 %value,%r35,31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_floor.o/0 0 0 644 3872 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: floor .visible .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_floor.c" // BEGIN GLOBAL FUNCTION DEF: floor .visible .func (.param .f64 %value_out) floor (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r28; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r47; .reg .u32 %r48; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .f64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .f64 %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; mov.f64 %r53,%ar0; mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r47,%r55; .loc 1 84 2 mov.u32 %r40,%r47; cvt.u32.u64 %r28,%r54; mov.u32 %r41,%r28; .loc 1 85 11 shr.s32 %r59,%r47,20; .loc 1 85 16 and.b32 %r23,%r59,2047; .loc 1 85 5 add.u32 %r42,%r23,-1023; .loc 1 86 4 setp.gt.s32 %r60,%r42,19; @ %r60 bra $L2; .loc 1 87 8 setp.ge.s32 %r61,%r42,0; @ %r61 bra $L3; .loc 1 88 10 add.f64 %r62,%r53,0d7e37e43c8800759c; .loc 1 88 5 setp.gt.f64 %r63,%r62,0d0000000000000000; @ ! %r63 bra $L4; .loc 1 89 9 setp.ge.s32 %r64,%r47,0; @ %r64 bra $L13; .loc 1 90 19 and.b32 %r65,%r47,2147483647; .loc 1 90 31 or.b32 %r66,%r65,%r28; .loc 1 90 14 setp.eq.u32 %r67,%r66,0; mov.u32 %r28,0; selp.u32 %r47,-2147483648,-1074790400,%r67; bra $L4; $L3: .loc 1 94 19 mov.u32 %r68,1048575; shr.s32 %r48,%r68,%r42; .loc 1 95 10 and.b32 %r69,%r40,%r48; .loc 1 95 13 or.b32 %r70,%r69,%r41; .loc 1 95 5 setp.eq.u32 %r71,%r70,0; @ %r71 bra $L15; .loc 1 96 10 add.f64 %r72,%r53,0d7e37e43c8800759c; .loc 1 96 5 setp.gt.f64 %r73,%r72,0d0000000000000000; @ ! %r73 bra $L4; .loc 1 97 9 setp.ge.s32 %r74,%r40,0; @ %r74 bra $L8; .loc 1 97 34 mov.u32 %r76,1048576; shr.s32 %r75,%r76,%r42; .loc 1 97 19 add.u32 %r40,%r40,%r75; $L8: .loc 1 98 14 not.b32 %r77,%r48; .loc 1 119 2 and.b32 %r47,%r77,%r40; mov.u32 %r28,0; bra $L4; $L2: .loc 1 101 12 setp.le.s32 %r78,%r42,51; @ %r78 bra $L9; .loc 1 102 8 setp.ne.u32 %r79,%r42,1024; @ %r79 bra $L16; .loc 1 102 28 add.f64 %r52,%r53,%r53; bra $L1; $L9: .loc 1 105 41 add.u32 %r80,%r23,-1043; .loc 1 105 8 mov.u32 %r81,-1; shr.u32 %r43,%r81,%r80; .loc 1 106 12 and.b32 %r82,%r41,%r43; .loc 1 106 8 setp.eq.u32 %r83,%r82,0; @ %r83 bra $L17; .loc 1 107 13 add.f64 %r84,%r53,0d7e37e43c8800759c; .loc 1 107 8 setp.gt.f64 %r85,%r84,0d0000000000000000; @ ! %r85 bra $L4; .loc 1 108 5 setp.ge.s32 %r86,%r47,0; @ %r86 bra $L11; .loc 1 109 9 setp.ne.u32 %r87,%r42,20; @ %r87 bra $L12; .loc 1 109 20 add.u32 %r47,%r47,1; bra $L11; $L12: .loc 1 111 18 mov.u32 %r89,52; sub.u32 %r88,%r89,%r42; .loc 1 111 13 mov.u32 %r91,1; shl.b32 %r90,%r91,%r88; .loc 1 111 10 add.u32 %r41,%r41,%r90; .loc 1 112 6 setp.le.u32 %r92,%r28,%r41; @ %r92 bra $L11; .loc 1 112 16 add.u32 %r47,%r47,1; $L11: .loc 1 116 10 not.b32 %r93,%r43; .loc 1 119 2 and.b32 %r28,%r93,%r41; bra $L4; $L13: mov.u32 %r28,0; mov.u32 %r47,%r28; $L4: cvt.u64.u32 %r94,%r47; cvt.u64.u32 %r98,%r28; shl.b64 %r99,%r94,32; or.b64 %r100,%r99,%r98; mov.b64 %r52,%r100; .loc 1 120 9 bra $L1; $L15: .loc 1 95 29 mov.f64 %r52,%r53; bra $L1; $L16: mov.f64 %r52,%r53; bra $L1; $L17: mov.f64 %r52,%r53; $L1: .loc 1 121 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_fma.o/ 0 0 0 644 779 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fma .visible .func (.param .f64 %value_out) fma (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); .file 1 "../../../../../../newlib/libm/common/s_fma.c" // BEGIN GLOBAL FUNCTION DEF: fma .visible .func (.param .f64 %value_out) fma (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.f64 %r25,%ar2; .loc 1 55 18 fma.rn.f64 %value,%r23,%r24,%r25; .loc 1 56 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fmax.o/ 0 0 0 644 1463 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmax .visible .func (.param .f64 %value_out) fmax (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_fmax.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fmax .visible .func (.param .f64 %value_out) fmax (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 44 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 46 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 46 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 49 20 setp.gt.f64 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f64 %r24,%r26; bra $L1; $L4: .loc 1 47 12 mov.f64 %r24,%r25; bra $L1; $L5: mov.f64 %r24,%r25; $L1: .loc 1 50 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-s_fmin.o/ 0 0 0 644 1463 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmin .visible .func (.param .f64 %value_out) fmin (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_fmin.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fmin .visible .func (.param .f64 %value_out) fmin (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 44 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 46 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 46 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 49 20 setp.lt.f64 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f64 %r24,%r26; bra $L1; $L4: .loc 1 47 12 mov.f64 %r24,%r25; bra $L1; $L5: mov.f64 %r24,%r25; $L1: .loc 1 50 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } /980 0 0 0 644 2171 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u32 %r64; .reg .u16 %r66; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; cvt.u32.u64 %r39,%r35; .loc 1 16 26 or.b32 %r40,%r37,%r39; .loc 1 16 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r42,%r39,0; neg.s32 %r24,%r42; .loc 1 17 12 set.u32.eq.u32 %r46,%r37,-2147483648; neg.s32 %r47,%r46; mov.u32 %r45,%r47; .loc 1 17 26 cvt.u16.u8 %r66,%r45; mov.u16 %r49,%r66; cvt.u16.u32 %r50,%r24; and.b16 %r48,%r49,%r50; cvt.u32.u16 %r51,%r48; .loc 1 16 48 cvt.u16.u8 %r52,%r51; setp.ne.u16 %r53,%r52,0; @ %r53 bra $L4; .loc 1 19 31 and.b32 %r31,%r37,2147483647; add.u32 %r54,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r55,%r54,2145386495; @ %r55 bra $L5; .loc 1 22 31 and.b32 %r56,%r37,2146435072; .loc 1 22 11 setp.eq.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r59,%r31,2146435072; neg.s32 %r60,%r59; mov.u32 %r58,%r60; .loc 1 26 53 cvt.u16.u8 %r66,%r58; mov.u16 %r62,%r66; and.b16 %r61,%r62,%r50; cvt.u32.u16 %r64,%r61; .loc 1 18 12 cvt.u32.u8 %r33,%r64; bra $L1; $L3: mov.u32 %r33,2; bra $L1; $L4: mov.u32 %r33,2; bra $L1; $L5: .loc 1 21 12 mov.u32 %r33,4; bra $L1; $L6: .loc 1 25 12 mov.u32 %r33,3; $L1: .loc 1 31 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-s_frexp.o/0 0 0 644 2043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/s_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r28; .reg .u32 %r33; .reg .u32 %r35; .reg .u64 %r36; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 88 5 and.b32 %r28,%r33,2147483647; .loc 1 89 8 mov.u32 %r43,0; st.u32 [%r39],%r43; .loc 1 90 4 setp.gt.s32 %r44,%r28,2146435071; @ %r44 bra $L2; .loc 1 87 2 cvt.u32.u64 %r46,%r40; .loc 1 90 25 or.b32 %r48,%r46,%r28; .loc 1 90 19 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L2; .loc 1 91 5 and.b32 %r50,%r33,2146435072; setp.ne.u32 %r51,%r50,0; @ %r51 bra $L4; .loc 1 92 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r52,%r38; shr.u64 %r53,%r52,32; cvt.u32.u64 %r33,%r53; .loc 1 94 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r43; $L3: .loc 1 97 14 shr.s32 %r55,%r28,20; .loc 1 97 19 add.u32 %r56,%r55,-1022; .loc 1 97 8 add.u32 %r57,%r56,%r35; st.u32 [%r39],%r57; .loc 1 99 2 mov.b64 %r36,%r38; .loc 1 98 10 and.b32 %r58,%r33,-2146435073; .loc 1 98 22 or.b32 %r59,%r58,1071644672; .loc 1 99 2 cvt.u64.u32 %r60,%r59; shl.b64 %r61,%r60,32; and.b64 %r62,%r36,4294967295; or.b64 %r63,%r62,%r61; mov.b64 %r38,%r63; $L2: .loc 1 101 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-s_ilogb.o/0 0 0 644 2034 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ilogb .visible .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_ilogb.c" // BEGIN GLOBAL FUNCTION DEF: ilogb .visible .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r29; .reg .u32 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r45; .reg .pred %r46; .reg .pred %r48; .reg .pred %r49; .reg .u32 %r50; mov.f64 %r32,%ar0; .loc 1 77 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r35,%r34; .loc 1 78 5 and.b32 %r25,%r35,2147483647; .loc 1 79 4 and.b32 %r36,%r35,2146435072; setp.ne.u32 %r37,%r36,0; @ %r37 bra $L2; .loc 1 77 2 cvt.u32.u64 %r29,%r33; .loc 1 80 12 or.b32 %r40,%r29,%r25; .loc 1 80 8 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L7; .loc 1 83 5 setp.ne.u32 %r42,%r25,0; @ %r42 bra $L4; .loc 1 84 26 setp.le.s32 %r43,%r29,0; @ %r43 bra $L8; .loc 1 84 15 mov.u32 %r31,-1043; $L5: .loc 1 84 41 add.u32 %r31,%r31,-1; .loc 1 84 32 add.u32 %r29,%r29,%r29; .loc 1 84 26 setp.gt.s32 %r45,%r29,0; @ %r45 bra $L5; bra $L1; $L4: .loc 1 86 25 shl.b32 %r27,%r25,11; .loc 1 86 34 setp.le.s32 %r46,%r27,0; @ %r46 bra $L9; .loc 1 86 15 mov.u32 %r31,-1022; $L6: .loc 1 86 49 add.u32 %r31,%r31,-1; .loc 1 86 40 add.u32 %r27,%r27,%r27; .loc 1 86 34 setp.gt.s32 %r48,%r27,0; @ %r48 bra $L6; bra $L1; $L2: .loc 1 90 10 setp.gt.s32 %r49,%r25,2146435071; @ %r49 bra $L10; .loc 1 90 36 shr.s32 %r50,%r25,20; .loc 1 90 41 add.u32 %r31,%r50,-1023; bra $L1; $L7: .loc 1 81 10 mov.u32 %r31,-2147483647; bra $L1; $L8: .loc 1 84 15 mov.u32 %r31,-1043; bra $L1; $L9: .loc 1 86 15 mov.u32 %r31,-1022; bra $L1; $L10: .loc 1 94 14 mov.u32 %r31,2147483647; $L1: .loc 1 95 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } /1002 0 0 0 644 436 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: infinity .visible .func (.param .f64 %value_out) infinity; .file 1 "../../../../../../newlib/libm/common/s_infinity.c" // BEGIN GLOBAL FUNCTION DEF: infinity .visible .func (.param .f64 %value_out) infinity { .reg .f64 %value; .loc 1 46 9 mov.f64 %value,0d7ff0000000000000; .loc 1 47 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_isinf.o/0 0 0 644 1248 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 22 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 23 5 and.b32 %r33,%r43,2147483647; .loc 1 24 25 neg.s32 %r46,%r45; .loc 1 24 23 or.b32 %r47,%r46,%r45; .loc 1 24 30 shr.u32 %r48,%r47,31; .loc 1 24 5 or.b32 %r34,%r48,%r33; .loc 1 26 36 add.u32 %r50,%r34,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 26 34 or.b32 %r53,%r50,%r51; .loc 1 26 41 shr.u32 %r54,%r53,31; .loc 1 26 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 27 1 st.param.u32 [%value_out],%value; ret; } /1022 0 0 0 644 1261 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isinfd.c" // BEGIN GLOBAL FUNCTION DEF: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 15 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 16 5 and.b32 %r33,%r43,2147483647; .loc 1 17 25 neg.s32 %r46,%r45; .loc 1 17 23 or.b32 %r47,%r46,%r45; .loc 1 17 30 shr.u32 %r48,%r47,31; .loc 1 17 5 or.b32 %r34,%r48,%r33; .loc 1 19 36 add.u32 %r50,%r34,-2146435072; .loc 1 18 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 19 34 or.b32 %r53,%r50,%r51; .loc 1 19 41 shr.u32 %r54,%r53,31; .loc 1 19 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 20 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/0 0 0 644 1060 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 203 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 204 5 and.b32 %r30,%r40,2147483647; .loc 1 205 25 neg.s32 %r43,%r42; .loc 1 205 23 or.b32 %r44,%r43,%r42; .loc 1 205 30 shr.u32 %r45,%r44,31; .loc 1 205 5 or.b32 %r31,%r45,%r30; .loc 1 206 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 207 33 shr.u32 %value,%r47,31; .loc 1 208 1 st.param.u32 [%value_out],%value; ret; } /1040 0 0 0 644 1072 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isnand.c" // BEGIN GLOBAL FUNCTION DEF: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 99 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 100 5 and.b32 %r30,%r40,2147483647; .loc 1 101 25 neg.s32 %r43,%r42; .loc 1 101 23 or.b32 %r44,%r43,%r42; .loc 1 101 30 shr.u32 %r45,%r44,31; .loc 1 101 5 or.b32 %r31,%r45,%r30; .loc 1 102 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 103 33 shr.u32 %value,%r47,31; .loc 1 104 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/0 0 0 644 2918 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/s_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f64 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 63 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 63 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 63 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 63 19 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 64 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } mov.f64 %r32,%r50; .loc 1 65 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 65 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 65 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 65 19 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 65 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 65 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 67 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /1058 0 0 0 644 4698 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llrint .visible .func (.param .u64 %value_out) llrint (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_llrint.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: TWO52 .const .align 8 .u64 TWO52[2] = {4841369599423283200,-4382002437431492608 }; // BEGIN GLOBAL FUNCTION DEF: llrint .visible .func (.param .u64 %value_out) llrint (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r22; .reg .u32 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .u32 %r45; .reg .u32 %r48; .reg .u32 %r53; .reg .f64 %r54; .reg .u32 %r57; .reg .u32 %r63; .reg .u64 %r70; .reg .f64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .f64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .pred %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r99; .reg .u32 %r100; .reg .u64 %r101; .reg .u32 %r103; .reg .u64 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r125; .reg .u64 %r126; .reg .pred %r127; mov.f64 %r71,%ar0; mov.b64 %r72,%r71; shr.u64 %r73,%r72,32; cvt.u32.u64 %r74,%r73; .loc 1 60 16 shr.u32 %r22,%r74,31; .loc 1 63 27 shr.s32 %r75,%r74,20; and.b32 %r24,%r75,2047; .loc 1 63 6 add.u32 %r53,%r24,-1023; .loc 1 66 5 setp.gt.s32 %r76,%r53,19; @ %r76 bra $L2; .loc 1 69 9 setp.ge.s32 %r77,%r53,-1; @ %r77 bra $L3; $L5: .loc 1 70 16 mov.u64 %r70,0; bra $L1; $L3: .loc 1 75 20 cvta.const.u64 %r78,TWO52; cvt.s64.s32 %r79,%r22; shl.b64 %r80,%r79,3; add.u64 %r81,%r78,%r80; ld.f64 %r25,[%r81]; .loc 1 75 25 add.f64 %r26,%r25,%r71; .loc 1 75 13 st.f64 [%frame],%r26; .loc 1 76 17 ld.f64 %r27,[%frame]; .loc 1 76 13 sub.f64 %r82,%r27,%r25; .loc 1 77 11 mov.b64 %r83,%r82; shr.u64 %r84,%r83,32; cvt.u32.u64 %r85,%r84; .loc 1 80 19 and.b32 %r86,%r85,2147483647; .loc 1 80 14 setp.eq.u32 %r87,%r86,0; @ %r87 bra $L5; .loc 1 84 14 and.b32 %r63,%r85,1048575; .loc 1 85 14 or.b32 %r88,%r63,1048576; .loc 1 83 35 shr.s32 %r89,%r85,20; and.b32 %r90,%r89,2047; .loc 1 87 30 mov.u32 %r93,1043; sub.u32 %r92,%r93,%r90; .loc 1 87 23 shr.s32 %r94,%r88,%r92; .loc 1 87 18 cvt.s64.s32 %r70,%r94; bra $L6; $L2: .loc 1 90 11 setp.gt.s32 %r95,%r53,62; @ %r95 bra $L7; .loc 1 93 10 setp.le.s32 %r96,%r53,51; @ %r96 bra $L8; .loc 1 96 40 and.b32 %r97,%r74,1048575; .loc 1 96 54 or.b32 %r98,%r97,1048576; .loc 1 96 19 cvt.s64.s32 %r99,%r98; .loc 1 96 75 add.u32 %r100,%r24,-1043; .loc 1 96 68 shl.b64 %r101,%r99,%r100; .loc 1 98 21 cvt.u32.u64 %r103,%r72; cvt.u64.u32 %r105,%r103; .loc 1 98 47 add.u32 %r106,%r24,-1075; .loc 1 98 40 shl.b64 %r107,%r105,%r106; .loc 1 96 16 or.b64 %r70,%r101,%r107; bra $L6; $L8: .loc 1 102 20 cvta.const.u64 %r108,TWO52; cvt.s64.s32 %r109,%r22; shl.b64 %r110,%r109,3; add.u64 %r111,%r108,%r110; ld.f64 %r41,[%r111]; .loc 1 102 25 add.f64 %r42,%r41,%r71; .loc 1 102 13 st.f64 [%frame],%r42; .loc 1 103 17 ld.f64 %r43,[%frame]; .loc 1 103 13 sub.f64 %r54,%r43,%r41; .loc 1 104 11 mov.b64 %r112,%r54; shr.u64 %r113,%r112,32; cvt.u32.u64 %r114,%r113; .loc 1 105 35 shr.s32 %r115,%r114,20; and.b32 %r45,%r115,2047; .loc 1 106 14 and.b32 %r57,%r114,1048575; .loc 1 107 14 or.b32 %r116,%r57,1048576; .loc 1 112 21 cvt.s64.s32 %r117,%r116; .loc 1 112 47 add.u32 %r118,%r45,-1043; .loc 1 112 40 shl.b64 %r70,%r117,%r118; .loc 1 113 6 mov.u32 %r120,1075; sub.u32 %r48,%r120,%r45; setp.gt.u32 %r121,%r48,31; @ %r121 bra $L6; cvt.u32.u64 %r123,%r112; shr.u32 %r125,%r123,%r48; cvt.u64.u32 %r126,%r125; .loc 1 112 18 or.b64 %r70,%r70,%r126; bra $L6; $L7: .loc 1 118 14 cvt.rzi.s64.f64 %r70,%r71; bra $L1; $L6: .loc 1 121 23 setp.eq.u32 %r127,%r22,0; @ %r127 bra $L1; neg.s64 %r70,%r70; $L1: .loc 1 122 1 mov.u64 %value,%r70; st.param.u64 [%value_out],%value; ret; } /1076 0 0 0 644 2964 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llround .visible .func (.param .u64 %value_out) llround (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_llround.c" // BEGIN GLOBAL FUNCTION DEF: llround .visible .func (.param .u64 %value_out) llround (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r49; .reg .u32 %r52; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .u64 %r86; mov.f64 %r54,%ar0; mov.b64 %r55,%r54; shr.u64 %r56,%r55,32; cvt.u32.u64 %r49,%r56; .loc 1 28 35 setp.lt.s32 %r58,%r49,0; selp.u32 %r42,-1,1,%r58; .loc 1 30 44 shr.u32 %r59,%r49,20; and.b32 %r24,%r59,2047; .loc 1 30 51 add.u32 %r43,%r24,-1023; .loc 1 31 7 and.b32 %r44,%r49,1048575; .loc 1 32 7 or.b32 %r40,%r44,1048576; .loc 1 35 6 setp.gt.s32 %r60,%r43,19; @ %r60 bra $L3; .loc 1 38 10 setp.ge.s32 %r61,%r43,0; @ %r61 bra $L4; .loc 1 40 14 setp.ne.u32 %r62,%r43,-1; @ %r62 bra $L12; .loc 1 43 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 49 26 mov.u32 %r64,524288; shr.s32 %r63,%r64,%r43; .loc 1 49 15 add.u32 %r65,%r63,%r40; .loc 1 51 31 mov.u32 %r67,20; sub.u32 %r66,%r67,%r43; .loc 1 51 24 shr.u32 %r68,%r65,%r66; .loc 1 51 18 cvt.u64.u32 %r41,%r68; bra $L6; $L3: .loc 1 54 11 setp.gt.u32 %r69,%r43,62; @ %r69 bra $L7; cvt.u32.u64 %r71,%r55; .loc 1 60 62 add.u32 %r52,%r24,-1043; .loc 1 57 10 setp.le.s32 %r72,%r43,51; @ %r72 bra $L8; .loc 1 62 51 add.u32 %r73,%r24,-1075; .loc 1 62 28 shl.b32 %r74,%r71,%r73; cvt.u64.u32 %r75,%r74; .loc 1 60 19 cvt.u64.u32 %r76,%r40; .loc 1 60 39 shl.b64 %r77,%r76,%r52; .loc 1 60 16 or.b64 %r41,%r75,%r77; bra $L6; $L8: .loc 1 68 35 mov.u32 %r79,-2147483648; shr.u32 %r78,%r79,%r52; .loc 1 66 24 add.u32 %r45,%r78,%r71; .loc 1 69 14 setp.ge.u32 %r80,%r45,%r71; @ %r80 bra $L9; .loc 1 70 13 add.u32 %r40,%r40,1; $L9: .loc 1 72 21 cvt.u64.u32 %r81,%r40; .loc 1 72 41 shl.b64 %r41,%r81,%r52; .loc 1 74 23 mov.u32 %r82,52; sub.u32 %r37,%r82,%r43; setp.eq.u32 %r83,%r37,32; @ %r83 bra $L6; shr.u32 %r84,%r45,%r37; cvt.u64.u32 %r85,%r84; .loc 1 72 18 or.b64 %r41,%r41,%r85; bra $L6; $L7: .loc 1 79 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 81 15 cvt.s64.s32 %r86,%r42; mul.lo.u64 %r53,%r86,%r41; bra $L1; $L12: .loc 1 41 20 mov.u64 %r53,0; $L1: .loc 1 82 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-s_log1p.o/0 0 0 644 7771 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log1p .visible .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_log1p.c" // BEGIN GLOBAL FUNCTION DECL: __math_divzero .extern .func (.param .f64 %value_out) __math_divzero (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalid .extern .func (.param .f64 %value_out) __math_invalid (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log1p .visible .func (.param .f64 %value_out) log1p (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r50; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .u32 %r62; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r76; .reg .f64 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .u32 %r90; .reg .f64 %r91; .reg .f64 %r93; .reg .pred %r94; .reg .f64 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u16 %r102; .reg .u16 %r103; .reg .u16 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .pred %r107; .reg .f64 %r108; .reg .u32 %r110; .reg .pred %r111; .reg .f64 %r112; .reg .pred %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u32 %r117; .reg .pred %r118; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .u32 %r123; .reg .pred %r124; .reg .u32 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .pred %r138; .reg .pred %r139; .reg .pred %r140; .reg .pred %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .pred %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .u16 %r154; mov.f64 %r82,%ar0; mov.b64 %r83,%r82; shr.u64 %r84,%r83,32; cvt.u32.u64 %r58,%r84; .loc 1 152 2 mov.u32 %r85,%r58; .loc 1 156 5 setp.le.s32 %r86,%r58,1071284857; @ %r86 bra $L2; .loc 1 173 5 setp.gt.s32 %r87,%r58,2146435071; @ ! %r87 bra $L22; bra $L3; $L2: .loc 1 153 5 and.b32 %r62,%r85,2147483647; .loc 1 157 8 setp.le.s32 %r88,%r62,1072693247; @ %r88 bra $L5; .loc 1 158 5 setp.neu.f64 %r89,%r82,0dbff0000000000000; @ %r89 bra $L6; .loc 1 159 14 mov.u32 %r90,1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r90; call (%value_in),__math_divzero,(%out_arg1); ld.param.f64 %r91,[%value_in]; } mov.f64 %r81,%r91; bra $L1; $L6: .loc 1 161 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),__math_invalid,(%out_arg1); ld.param.f64 %r93,[%value_in]; } mov.f64 %r81,%r93; bra $L1; $L5: .loc 1 163 8 setp.gt.s32 %r94,%r62,1042284543; @ %r94 bra $L8; .loc 1 164 11 add.f64 %r95,%r82,0d4350000000000000; .loc 1 164 5 set.u32.gt.f64 %r97,%r95,0d0000000000000000; neg.s32 %r98,%r97; mov.u32 %r96,%r98; .loc 1 165 14 set.u32.le.s32 %r100,%r62,1016070143; neg.s32 %r101,%r100; mov.u32 %r99,%r101; cvt.u16.u8 %r154,%r96; mov.u16 %r103,%r154; cvt.u16.u8 %r154,%r99; mov.u16 %r104,%r154; and.b16 %r102,%r103,%r104; cvt.u32.u16 %r105,%r102; cvt.u16.u8 %r106,%r105; setp.ne.u16 %r107,%r106,0; @ %r107 bra $L20; .loc 1 168 19 mul.f64 %r108,%r82,%r82; .loc 1 168 16 fma.rn.f64 %r81,%r108,0dbfe0000000000000,%r82; bra $L1; $L8: .loc 1 170 13 add.u32 %r110,%r85,1076707644; .loc 1 170 8 setp.le.u32 %r111,%r110,1076707644; @ %r111 bra $L9; .loc 1 197 10 mul.f64 %r112,%r82,0d3fe0000000000000; .loc 1 197 6 mul.f64 %r65,%r112,%r82; mov.u32 %r57,0; bra $L10; $L3: .loc 1 173 32 add.f64 %r81,%r82,%r82; bra $L1; $L22: .loc 1 175 8 setp.gt.s32 %r113,%r58,1128267775; @ %r113 bra $L11; $L9: .loc 1 176 6 add.f64 %r55,%r82,0d3ff0000000000000; .loc 1 177 3 mov.b64 %r114,%r55; shr.u64 %r115,%r114,32; cvt.u32.u64 %r58,%r115; .loc 1 178 18 shr.s32 %r117,%r58,20; .loc 1 178 13 add.u32 %r57,%r117,-1023; .loc 1 179 31 setp.le.s32 %r118,%r57,0; @ %r118 bra $L12; .loc 1 179 28 sub.f64 %r119,%r55,%r82; .loc 1 179 31 mov.f64 %r120,0d3ff0000000000000; sub.f64 %r60,%r120,%r119; bra $L13; $L12: .loc 1 179 36 mov.f64 %r122,0d3ff0000000000000; sub.f64 %r121,%r55,%r122; .loc 1 179 31 sub.f64 %r60,%r82,%r121; $L13: .loc 1 180 5 div.rn.f64 %r54,%r60,%r55; bra $L14; $L11: .loc 1 184 18 shr.s32 %r123,%r58,20; .loc 1 184 13 add.u32 %r57,%r123,-1023; .loc 1 182 6 mov.f64 %r55,%r82; .loc 1 185 6 mov.f64 %r54,0d0000000000000000; $L14: .loc 1 187 9 and.b32 %r59,%r58,1048575; .loc 1 188 8 setp.gt.s32 %r124,%r59,434333; @ %r124 bra $L15; .loc 1 189 10 mov.b64 %r79,%r55; or.b32 %r125,%r59,1072693248; cvt.u64.u32 %r126,%r125; shl.b64 %r127,%r126,32; and.b64 %r128,%r79,4294967295; or.b64 %r129,%r128,%r127; mov.b64 %r56,%r129; bra $L16; $L15: .loc 1 191 12 add.u32 %r57,%r57,1; .loc 1 192 3 mov.b64 %r80,%r55; or.b32 %r130,%r59,1071644672; cvt.u64.u32 %r131,%r130; shl.b64 %r132,%r131,32; and.b64 %r133,%r80,4294967295; or.b64 %r134,%r133,%r132; mov.b64 %r56,%r134; .loc 1 193 26 mov.u32 %r135,1048576; sub.u32 %r33,%r135,%r59; .loc 1 193 13 shr.s32 %r59,%r33,2; $L16: .loc 1 195 8 mov.f64 %r136,0d3ff0000000000000; sub.f64 %r82,%r56,%r136; .loc 1 197 10 mul.f64 %r137,%r82,0d3fe0000000000000; .loc 1 197 6 mul.f64 %r65,%r137,%r82; .loc 1 198 4 setp.ne.u32 %r138,%r59,0; @ %r138 bra $L10; .loc 1 199 13 setp.neu.f64 %r139,%r82,0d0000000000000000; @ %r139 bra $L17; .loc 1 199 27 setp.eq.u32 %r140,%r57,0; @ %r140 bra $L21; .loc 1 200 35 cvt.rn.f64.s32 %r35,%r57; .loc 1 200 31 fma.rn.f64 %r69,%r35,0d3dea39ef35793c76,%r54; .loc 1 200 59 fma.rn.f64 %r81,%r35,0d3fe62e42fee00000,%r69; bra $L1; $L17: .loc 1 201 19 fma.rn.f64 %r36,%r82,0dbfe5555555555555,0d3ff0000000000000; .loc 1 201 8 mul.f64 %r68,%r36,%r65; .loc 1 202 8 setp.ne.u32 %r142,%r57,0; @ %r142 bra $L18; .loc 1 202 23 sub.f64 %r81,%r82,%r68; bra $L1; $L18: .loc 1 203 20 cvt.rn.f64.s32 %r37,%r57; .loc 1 203 41 fma.rn.f64 %r38,%r37,0d3dea39ef35793c76,%r54; .loc 1 203 31 sub.f64 %r143,%r68,%r38; .loc 1 203 45 sub.f64 %r144,%r143,%r82; .loc 1 203 27 neg.f64 %r145,%r144; fma.rn.f64 %r81,%r37,0d3fe62e42fee00000,%r145; bra $L1; $L10: .loc 1 205 13 add.f64 %r146,%r82,0d4000000000000000; .loc 1 205 5 div.rn.f64 %r66,%r82,%r146; .loc 1 206 4 mul.f64 %r67,%r66,%r66; .loc 1 207 47 fma.rn.f64 %r42,%r67,0d3fc2f112df3e5244,0d3fc39a09d078c69f; .loc 1 207 40 fma.rn.f64 %r43,%r42,%r67,0d3fc7466496cb03de; .loc 1 207 33 fma.rn.f64 %r44,%r43,%r67,0d3fcc71c51d8e78af; .loc 1 207 26 fma.rn.f64 %r45,%r44,%r67,0d3fd2492494229359; .loc 1 207 19 fma.rn.f64 %r46,%r45,%r67,0d3fd999999997fa04; .loc 1 207 12 fma.rn.f64 %r47,%r46,%r67,0d3fe5555555555593; .loc 1 208 33 fma.rn.f64 %r76,%r47,%r67,%r65; .loc 1 208 27 mul.f64 %r77,%r66,%r76; .loc 1 208 4 setp.ne.u32 %r147,%r57,0; @ %r147 bra $L19; .loc 1 208 25 sub.f64 %r148,%r65,%r77; .loc 1 208 19 sub.f64 %r81,%r82,%r148; bra $L1; $L19: .loc 1 209 12 cvt.rn.f64.s32 %r49,%r57; .loc 1 209 48 fma.rn.f64 %r50,%r49,0d3dea39ef35793c76,%r54; .loc 1 209 38 add.f64 %r149,%r50,%r77; .loc 1 209 26 sub.f64 %r150,%r65,%r149; .loc 1 209 53 sub.f64 %r151,%r150,%r82; .loc 1 209 19 neg.f64 %r152,%r151; fma.rn.f64 %r81,%r49,0d3fe62e42fee00000,%r152; bra $L1; $L20: .loc 1 166 14 mov.f64 %r81,%r82; bra $L1; $L21: .loc 1 199 41 mov.f64 %r81,0d0000000000000000; $L1: .loc 1 210 1 mov.f64 %value,%r81; st.param.f64 [%value_out],%value; ret; } lib_a-s_log2.o/ 0 0 0 644 825 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log2 .visible .func (.param .f64 %value_out) log2 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_log2.c" // BEGIN GLOBAL FUNCTION DECL: log .extern .func (.param .f64 %value_out) log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log2 .visible .func (.param .f64 %value_out) log2 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r24,%ar0; .loc 1 78 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),log,(%out_arg1); ld.param.f64 %r26,[%value_in]; } .loc 1 78 18 div.rn.f64 %value,%r26,0d3fe62e42fefa39ef; .loc 1 79 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_logb.o/ 0 0 0 644 2875 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logb .visible .func (.param .f64 %value_out) logb (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_logb.c" // BEGIN GLOBAL FUNCTION DEF: logb .visible .func (.param .f64 %value_out) logb (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r52; .reg .pred %r53; .reg .pred %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .pred %r70; .reg .u16 %r72; mov.f64 %r38,%ar0; .loc 1 88 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r41,%r40; cvt.u32.u64 %r36,%r39; .loc 1 89 5 and.b32 %r30,%r41,2147483647; .loc 1 90 4 and.b32 %r44,%r41,2146435072; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L2; .loc 1 91 12 or.b32 %r46,%r36,%r30; .loc 1 91 8 setp.ne.u32 %r47,%r46,0; @ %r47 bra $L3; .loc 1 95 13 mov.f64 %r48,0dbff0000000000000; div.rn.f64 %r37,%r48,0d0000000000000000; bra $L1; $L3: .loc 1 98 5 setp.ne.u32 %r49,%r30,0; @ %r49 bra $L5; .loc 1 99 26 setp.le.s32 %r50,%r36,0; @ %r50 bra $L10; .loc 1 99 15 mov.u32 %r35,-1043; $L7: .loc 1 99 41 add.u32 %r35,%r35,-1; .loc 1 99 32 add.u32 %r36,%r36,%r36; .loc 1 99 26 setp.gt.s32 %r52,%r36,0; @ %r52 bra $L7; .loc 1 103 13 cvt.rn.f64.s32 %r37,%r35; bra $L1; $L5: .loc 1 101 25 shl.b32 %r33,%r30,11; .loc 1 101 34 setp.le.s32 %r53,%r33,0; @ %r53 bra $L11; .loc 1 101 15 mov.u32 %r32,-1022; $L8: .loc 1 101 49 add.u32 %r32,%r32,-1; .loc 1 101 40 add.u32 %r33,%r33,%r33; .loc 1 101 34 setp.gt.s32 %r55,%r33,0; @ %r55 bra $L8; .loc 1 103 13 cvt.rn.f64.s32 %r37,%r32; bra $L1; $L10: .loc 1 99 26 mov.f64 %r37,0dc0904c0000000000; bra $L1; $L11: .loc 1 101 34 mov.f64 %r37,0dc08ff00000000000; .loc 1 103 13 bra $L1; $L2: .loc 1 105 10 setp.gt.s32 %r56,%r30,2146435071; @ %r56 bra $L9; .loc 1 105 36 shr.s32 %r57,%r30,20; .loc 1 105 41 add.u32 %r58,%r57,-1023; cvt.rn.f64.s32 %r37,%r58; bra $L1; $L9: .loc 1 106 13 set.u32.gt.s32 %r60,%r30,2146435072; neg.s32 %r61,%r60; mov.u32 %r59,%r61; .loc 1 106 25 set.u32.ne.u32 %r63,%r36,0; neg.s32 %r64,%r63; mov.u32 %r62,%r64; cvt.u16.u8 %r72,%r59; mov.u16 %r66,%r72; cvt.u16.u8 %r72,%r62; mov.u16 %r67,%r72; or.b16 %r65,%r66,%r67; cvt.u32.u16 %r68,%r65; .loc 1 106 10 cvt.u16.u8 %r69,%r68; setp.ne.u16 %r70,%r69,0; .loc 1 107 15 selp.f64 %r37,%r38,0d7ff0000000000000,%r70; $L1: .loc 1 108 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_lrint.o/0 0 0 644 4769 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lrint .visible .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_lrint.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: TWO52 .const .align 8 .u64 TWO52[2] = {4841369599423283200,-4382002437431492608 }; // BEGIN GLOBAL FUNCTION DEF: lrint .visible .func (.param .u64 %value_out) lrint (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r22; .reg .u32 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .u32 %r46; .reg .u32 %r49; .reg .u32 %r54; .reg .f64 %r55; .reg .u32 %r58; .reg .u32 %r64; .reg .u64 %r71; .reg .f64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .f64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .pred %r97; .reg .pred %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u64 %r101; .reg .u32 %r102; .reg .u64 %r103; .reg .u32 %r105; .reg .u64 %r107; .reg .u32 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u64 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r125; .reg .u32 %r127; .reg .u64 %r128; .reg .pred %r129; mov.f64 %r72,%ar0; mov.b64 %r73,%r72; shr.u64 %r74,%r73,32; cvt.u32.u64 %r75,%r74; .loc 1 97 16 shr.u32 %r22,%r75,31; .loc 1 100 27 shr.s32 %r76,%r75,20; and.b32 %r24,%r76,2047; .loc 1 100 6 add.u32 %r54,%r24,-1023; .loc 1 103 5 setp.gt.s32 %r77,%r54,19; @ %r77 bra $L2; .loc 1 106 9 setp.ge.s32 %r78,%r54,-1; @ %r78 bra $L3; $L5: .loc 1 107 16 mov.u64 %r71,0; bra $L1; $L3: .loc 1 112 20 cvta.const.u64 %r79,TWO52; cvt.s64.s32 %r80,%r22; shl.b64 %r81,%r80,3; add.u64 %r82,%r79,%r81; ld.f64 %r25,[%r82]; .loc 1 112 25 add.f64 %r26,%r25,%r72; .loc 1 112 13 st.f64 [%frame],%r26; .loc 1 113 17 ld.f64 %r27,[%frame]; .loc 1 113 13 sub.f64 %r83,%r27,%r25; .loc 1 114 11 mov.b64 %r84,%r83; shr.u64 %r85,%r84,32; cvt.u32.u64 %r86,%r85; .loc 1 117 19 cvt.s64.s32 %r87,%r86; and.b64 %r88,%r87,-2147483649; .loc 1 117 14 setp.eq.u64 %r89,%r88,0; @ %r89 bra $L5; .loc 1 121 14 and.b32 %r64,%r86,1048575; .loc 1 122 14 or.b32 %r90,%r64,1048576; .loc 1 120 35 shr.s32 %r91,%r86,20; and.b32 %r92,%r91,2047; .loc 1 124 30 mov.u32 %r95,1043; sub.u32 %r94,%r95,%r92; .loc 1 124 23 shr.s32 %r96,%r90,%r94; .loc 1 124 18 cvt.s64.s32 %r71,%r96; bra $L6; $L2: .loc 1 127 11 setp.gt.s32 %r97,%r54,62; @ %r97 bra $L7; .loc 1 131 10 setp.le.s32 %r98,%r54,51; @ %r98 bra $L8; .loc 1 134 35 and.b32 %r99,%r75,1048575; .loc 1 134 49 or.b32 %r100,%r99,1048576; .loc 1 134 19 cvt.s64.s32 %r101,%r100; .loc 1 134 70 add.u32 %r102,%r24,-1043; .loc 1 134 63 shl.b64 %r103,%r101,%r102; .loc 1 136 21 cvt.u32.u64 %r105,%r73; cvt.u64.u32 %r107,%r105; .loc 1 136 42 add.u32 %r108,%r24,-1075; .loc 1 136 35 shl.b64 %r109,%r107,%r108; .loc 1 134 16 or.b64 %r71,%r103,%r109; bra $L6; $L8: .loc 1 141 20 cvta.const.u64 %r110,TWO52; cvt.s64.s32 %r111,%r22; shl.b64 %r112,%r111,3; add.u64 %r113,%r110,%r112; ld.f64 %r42,[%r113]; .loc 1 141 25 add.f64 %r43,%r42,%r72; .loc 1 141 13 st.f64 [%frame],%r43; .loc 1 142 17 ld.f64 %r44,[%frame]; .loc 1 142 13 sub.f64 %r55,%r44,%r42; .loc 1 143 11 mov.b64 %r114,%r55; shr.u64 %r115,%r114,32; cvt.u32.u64 %r116,%r115; .loc 1 144 35 shr.s32 %r117,%r116,20; and.b32 %r46,%r117,2047; .loc 1 145 14 and.b32 %r58,%r116,1048575; .loc 1 146 14 or.b32 %r118,%r58,1048576; .loc 1 154 21 cvt.s64.s32 %r119,%r118; .loc 1 154 42 add.u32 %r120,%r46,-1043; .loc 1 154 35 shl.b64 %r71,%r119,%r120; .loc 1 155 6 mov.u32 %r122,1075; sub.u32 %r49,%r122,%r46; setp.gt.u32 %r123,%r49,31; @ %r123 bra $L6; cvt.u32.u64 %r125,%r114; shr.u32 %r127,%r125,%r49; cvt.u64.u32 %r128,%r127; .loc 1 154 18 or.b64 %r71,%r71,%r128; bra $L6; $L7: .loc 1 160 14 cvt.rzi.s64.f64 %r71,%r72; bra $L1; $L6: .loc 1 163 23 setp.eq.u32 %r129,%r22,0; @ %r129 bra $L1; neg.s64 %r71,%r71; $L1: .loc 1 164 1 mov.u64 %value,%r71; st.param.u64 [%value_out],%value; ret; } /1095 0 0 0 644 2976 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lround .visible .func (.param .u64 %value_out) lround (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_lround.c" // BEGIN GLOBAL FUNCTION DEF: lround .visible .func (.param .u64 %value_out) lround (.param .f64 %in_ar0) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r49; .reg .u32 %r52; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .u64 %r86; mov.f64 %r54,%ar0; mov.b64 %r55,%r54; shr.u64 %r56,%r55,32; cvt.u32.u64 %r49,%r56; .loc 1 69 35 setp.lt.s32 %r58,%r49,0; selp.u32 %r42,-1,1,%r58; .loc 1 71 44 shr.u32 %r59,%r49,20; and.b32 %r24,%r59,2047; .loc 1 71 51 add.u32 %r43,%r24,-1023; .loc 1 72 7 and.b32 %r44,%r49,1048575; .loc 1 73 7 or.b32 %r40,%r44,1048576; .loc 1 75 6 setp.gt.s32 %r60,%r43,19; @ %r60 bra $L3; .loc 1 78 10 setp.ge.s32 %r61,%r43,0; @ %r61 bra $L4; .loc 1 80 14 setp.ne.u32 %r62,%r43,-1; @ %r62 bra $L12; .loc 1 83 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 89 26 mov.u32 %r64,524288; shr.s32 %r63,%r64,%r43; .loc 1 89 15 add.u32 %r65,%r63,%r40; .loc 1 91 31 mov.u32 %r67,20; sub.u32 %r66,%r67,%r43; .loc 1 91 24 shr.u32 %r68,%r65,%r66; .loc 1 91 18 cvt.u64.u32 %r41,%r68; bra $L6; $L3: .loc 1 94 11 setp.gt.u32 %r69,%r43,62; @ %r69 bra $L7; cvt.u32.u64 %r71,%r55; .loc 1 101 57 add.u32 %r52,%r24,-1043; .loc 1 98 10 setp.le.s32 %r72,%r43,51; @ %r72 bra $L8; .loc 1 103 47 add.u32 %r73,%r24,-1075; .loc 1 103 24 shl.b32 %r74,%r71,%r73; cvt.u64.u32 %r75,%r74; .loc 1 101 19 cvt.u64.u32 %r76,%r40; .loc 1 101 34 shl.b64 %r77,%r76,%r52; .loc 1 101 16 or.b64 %r41,%r75,%r77; bra $L6; $L8: .loc 1 111 35 mov.u32 %r79,-2147483648; shr.u32 %r78,%r79,%r52; .loc 1 108 24 add.u32 %r45,%r78,%r71; .loc 1 112 14 setp.ge.u32 %r80,%r45,%r71; @ %r80 bra $L9; .loc 1 113 13 add.u32 %r40,%r40,1; $L9: .loc 1 116 21 cvt.u64.u32 %r81,%r40; .loc 1 116 36 shl.b64 %r41,%r81,%r52; .loc 1 119 23 mov.u32 %r82,52; sub.u32 %r37,%r82,%r43; setp.eq.u32 %r83,%r37,32; @ %r83 bra $L6; shr.u32 %r84,%r45,%r37; cvt.u64.u32 %r85,%r84; .loc 1 116 18 or.b64 %r41,%r41,%r85; bra $L6; $L7: .loc 1 124 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 126 15 cvt.s64.s32 %r86,%r42; mul.lo.u64 %r53,%r86,%r41; bra $L1; $L12: .loc 1 81 20 mov.u64 %r53,0; $L1: .loc 1 127 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-s_modf.o/ 0 0 0 644 3654 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .f64 %r32; .reg .f64 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .f64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r86; .reg .pred %r87; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u64 %r102; .reg .u64 %r106; .reg .u64 %r107; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; mov.f64 %r54,%ar0; mov.u64 %r55,%ar1; mov.b64 %r56,%r54; shr.u64 %r57,%r56,32; cvt.u32.u64 %r58,%r57; cvt.u32.u64 %r60,%r56; .loc 1 76 11 shr.s32 %r61,%r58,20; .loc 1 76 16 and.b32 %r23,%r61,2047; .loc 1 76 5 add.u32 %r44,%r23,-1023; .loc 1 77 4 setp.gt.s32 %r62,%r44,19; @ %r62 bra $L2; .loc 1 78 8 setp.ge.s32 %r63,%r44,0; @ %r63 bra $L3; .loc 1 79 10 and.b32 %r64,%r58,-2147483648; cvt.u64.u32 %r65,%r64; shl.b64 %r69,%r65,32; st.u64 [%r55],%r69; .loc 1 80 10 mov.f64 %r53,%r54; bra $L1; $L3: .loc 1 82 19 mov.u32 %r70,1048575; shr.s32 %r46,%r70,%r44; .loc 1 83 10 and.b32 %r71,%r58,%r46; .loc 1 83 13 or.b32 %r72,%r71,%r60; .loc 1 83 5 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L5; .loc 1 84 13 st.f64 [%r55],%r54; .loc 1 85 7 and.b32 %r74,%r58,-2147483648; cvt.u64.u32 %r75,%r74; shl.b64 %r79,%r75,32; mov.b64 %r53,%r79; .loc 1 86 14 bra $L1; $L5: .loc 1 88 7 not.b32 %r80,%r46; and.b32 %r81,%r80,%r58; cvt.u64.u32 %r82,%r81; shl.b64 %r86,%r82,32; mov.b64 %r32,%r86; st.f64 [%r55],%r32; .loc 1 89 16 sub.f64 %r53,%r54,%r32; bra $L1; $L2: .loc 1 92 12 setp.le.s32 %r87,%r44,51; @ %r87 bra $L6; .loc 1 93 12 st.f64 [%r55],%r54; .loc 1 94 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r89,[%value_in]; } .loc 1 94 9 setp.ne.u32 %r90,%r89,0; @ %r90 bra $L7; .loc 1 94 54 add.f64 %r53,%r54,%r54; .loc 1 94 51 st.f64 [%r55],%r53; bra $L1; $L7: .loc 1 95 6 and.b32 %r91,%r58,-2147483648; cvt.u64.u32 %r92,%r91; shl.b64 %r96,%r92,32; mov.b64 %r53,%r96; .loc 1 96 13 bra $L1; $L6: .loc 1 98 41 add.u32 %r97,%r23,-1043; .loc 1 98 8 mov.u32 %r98,-1; shr.u32 %r45,%r98,%r97; .loc 1 99 12 and.b32 %r99,%r60,%r45; .loc 1 99 8 setp.ne.u32 %r100,%r99,0; @ %r100 bra $L8; .loc 1 100 9 st.f64 [%r55],%r54; .loc 1 101 3 and.b32 %r101,%r58,-2147483648; cvt.u64.u32 %r102,%r101; shl.b64 %r106,%r102,32; mov.b64 %r53,%r106; .loc 1 102 10 bra $L1; $L8: .loc 1 104 10 cvt.u64.u32 %r107,%r58; not.b32 %r111,%r45; and.b32 %r112,%r111,%r60; cvt.u64.u32 %r113,%r112; shl.b64 %r114,%r107,32; or.b64 %r115,%r114,%r113; mov.b64 %r42,%r115; st.f64 [%r55],%r42; .loc 1 105 12 sub.f64 %r53,%r54,%r42; $L1: .loc 1 108 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 0 0 0 644 500 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_nan.c" // BEGIN GLOBAL FUNCTION DEF: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 44 9 mov.f64 %value,0d7ff8000000000000; .loc 1 45 1 st.param.f64 [%value_out],%value; ret; } /1113 0 0 0 644 818 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nearbyint .visible .func (.param .f64 %value_out) nearbyint (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_nearbyint.c" // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: nearbyint .visible .func (.param .f64 %value_out) nearbyint (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 61 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),rint,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 62 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /1134 0 0 0 644 5772 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nextafter .visible .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_nextafter.c" // BEGIN GLOBAL FUNCTION DEF: nextafter .visible .func (.param .f64 %value_out) nextafter (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r85; .reg .u64 %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u32 %r114; .reg .u16 %r115; .reg .pred %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u16 %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r131; .reg .pred %r132; .reg .f64 %r133; .reg .pred %r134; .reg .u64 %r135; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u16 %r150; mov.f64 %r57,%ar0; mov.f64 %r58,%ar1; .loc 1 65 2 mov.b64 %r59,%r57; shr.u64 %r60,%r59,32; cvt.u32.u64 %r40,%r60; cvt.u32.u64 %r49,%r59; mov.b64 %r64,%r58; shr.u64 %r65,%r64,32; cvt.u32.u64 %r50,%r65; cvt.u32.u64 %r51,%r64; .loc 1 67 5 and.b32 %r43,%r40,2147483647; .loc 1 68 5 and.b32 %r44,%r50,2147483647; .loc 1 70 4 setp.le.s32 %r69,%r43,2146435071; @ %r69 bra $L2; .loc 1 70 28 add.u32 %r70,%r43,-2146435072; .loc 1 70 40 or.b32 %r71,%r70,%r49; .loc 1 70 22 setp.ne.u32 %r72,%r71,0; @ %r72 bra $L3; $L2: .loc 1 70 49 setp.le.s32 %r73,%r44,2146435071; @ %r73 bra $L4; .loc 1 71 28 add.u32 %r74,%r44,-2146435072; .loc 1 71 40 or.b32 %r75,%r74,%r51; .loc 1 71 22 setp.eq.u32 %r76,%r75,0; @ %r76 bra $L4; $L3: .loc 1 72 13 add.f64 %r56,%r57,%r58; bra $L1; $L4: .loc 1 73 4 setp.eq.f64 %r77,%r57,%r58; @ %r77 bra $L17; .loc 1 74 8 or.b32 %r78,%r43,%r49; .loc 1 74 4 setp.ne.u32 %r79,%r78,0; @ %r79 bra $L6; .loc 1 75 6 and.b32 %r80,%r50,-2147483648; cvt.u64.u32 %r81,%r80; shl.b64 %r85,%r81,32; or.b64 %r86,%r85,1; mov.b64 %r47,%r86; .loc 1 76 8 mul.f64 %r56,%r47,%r47; .loc 1 77 8 setp.eq.f64 %r87,%r47,%r56; .loc 1 77 37 selp.f64 %r56,%r56,%r47,%r87; bra $L1; $L6: .loc 1 79 4 setp.lt.s32 %r88,%r40,0; @ %r88 bra $L7; .loc 1 80 8 setp.gt.s32 %r89,%r40,%r50; @ %r89 bra $L8; .loc 1 80 20 set.u32.eq.u32 %r91,%r40,%r50; neg.s32 %r92,%r91; mov.u32 %r90,%r92; .loc 1 80 30 set.u32.gt.u32 %r94,%r49,%r51; neg.s32 %r95,%r94; mov.u32 %r93,%r95; .loc 1 80 25 cvt.u16.u8 %r150,%r90; mov.u16 %r97,%r150; cvt.u16.u8 %r150,%r93; mov.u16 %r98,%r150; and.b16 %r96,%r97,%r98; cvt.u32.u16 %r99,%r96; .loc 1 80 14 cvt.u16.u8 %r100,%r99; setp.eq.u16 %r101,%r100,0; @ %r101 bra $L9; $L8: .loc 1 81 5 setp.ne.u32 %r102,%r49,0; @ %r102 bra $L10; .loc 1 81 16 add.u32 %r40,%r40,-1; $L10: .loc 1 82 6 add.u32 %r41,%r49,-1; bra $L11; $L9: .loc 1 84 6 add.u32 %r41,%r49,1; .loc 1 85 5 setp.ne.u32 %r103,%r49,-1; @ %r103 bra $L11; .loc 1 85 16 add.u32 %r40,%r40,1; bra $L11; $L7: .loc 1 88 11 not.b32 %r105,%r50; shr.u32 %r106,%r105,31; mov.u32 %r107,%r106; .loc 1 88 18 set.u32.gt.s32 %r109,%r40,%r50; neg.s32 %r110,%r109; mov.u32 %r108,%r110; .loc 1 88 14 cvt.u16.u8 %r150,%r107; mov.u16 %r112,%r150; cvt.u16.u8 %r150,%r108; mov.u16 %r113,%r150; or.b16 %r111,%r112,%r113; cvt.u32.u16 %r114,%r111; .loc 1 88 8 cvt.u16.u8 %r115,%r114; setp.ne.u16 %r116,%r115,0; @ %r116 bra $L12; .loc 1 88 27 set.u32.eq.u32 %r118,%r40,%r50; neg.s32 %r119,%r118; mov.u32 %r117,%r119; .loc 1 88 37 set.u32.gt.u32 %r121,%r49,%r51; neg.s32 %r122,%r121; mov.u32 %r120,%r122; .loc 1 88 32 cvt.u16.u8 %r150,%r117; mov.u16 %r124,%r150; cvt.u16.u8 %r150,%r120; mov.u16 %r125,%r150; and.b16 %r123,%r124,%r125; cvt.u32.u16 %r126,%r123; .loc 1 88 21 cvt.u16.u8 %r127,%r126; setp.eq.u16 %r128,%r127,0; @ %r128 bra $L13; $L12: .loc 1 89 5 setp.ne.u32 %r129,%r49,0; @ %r129 bra $L14; .loc 1 89 16 add.u32 %r40,%r40,-1; $L14: .loc 1 90 6 add.u32 %r41,%r49,-1; bra $L11; $L13: .loc 1 92 6 add.u32 %r41,%r49,1; .loc 1 93 5 setp.ne.u32 %r130,%r49,-1; @ %r130 bra $L11; .loc 1 93 16 add.u32 %r40,%r40,1; $L11: .loc 1 96 5 and.b32 %r45,%r40,2146435072; .loc 1 97 4 setp.ne.u32 %r131,%r45,2146435072; @ %r131 bra $L15; .loc 1 97 29 add.f64 %r56,%r57,%r57; bra $L1; $L15: .loc 1 98 4 setp.gt.s32 %r132,%r45,1048575; @ %r132 bra $L16; .loc 1 99 8 mul.f64 %r133,%r57,%r57; .loc 1 100 8 setp.eq.f64 %r134,%r57,%r133; @ %r134 bra $L16; .loc 1 101 10 cvt.u64.u32 %r135,%r40; cvt.u64.u32 %r139,%r41; shl.b64 %r140,%r135,32; or.b64 %r141,%r140,%r139; mov.b64 %r56,%r141; .loc 1 102 10 bra $L1; $L16: .loc 1 105 2 cvt.u64.u32 %r142,%r40; cvt.u64.u32 %r146,%r41; shl.b64 %r147,%r142,32; or.b64 %r148,%r147,%r146; mov.b64 %r56,%r148; .loc 1 106 9 bra $L1; $L17: .loc 1 73 18 mov.f64 %r56,%r57; $L1: .loc 1 107 1 mov.f64 %value,%r56; st.param.f64 [%value_out],%value; ret; } lib_a-s_pow10.o/0 0 0 644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: pow10 .visible .func (.param .f64 %value_out) pow10 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_pow10.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: pow10 .visible .func (.param .f64 %value_out) pow10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r23,%ar0; .loc 1 65 10 mov.f64 %r24,0d4024000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r23; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 66 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } /1155 0 0 0 644 13906 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remquo .visible .func (.param .f64 %value_out) remquo (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/common/s_remquo.c" // BEGIN VAR DEF: Zero .const .align 8 .u64 Zero[2] = {0,-9223372036854775808 }; // BEGIN GLOBAL FUNCTION DEF: remquo .visible .func (.param .f64 %value_out) remquo (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r29; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r67; .reg .u32 %r70; .reg .u32 %r77; .reg .f64 %r81; .reg .f64 %r83; .reg .f64 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r118; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .f64 %r124; .reg .u32 %r125; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u16 %r152; .reg .u16 %r153; .reg .u16 %r154; .reg .u32 %r155; .reg .u16 %r156; .reg .pred %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .pred %r162; .reg .u32 %r163; .reg .pred %r166; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u16 %r173; .reg .u16 %r174; .reg .u16 %r175; .reg .u32 %r176; .reg .u16 %r177; .reg .pred %r178; .reg .pred %r179; .reg .pred %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .pred %r187; .reg .pred %r188; .reg .pred %r189; .reg .pred %r191; .reg .pred %r192; .reg .pred %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .pred %r197; .reg .pred %r198; .reg .pred %r199; .reg .pred %r201; .reg .pred %r202; .reg .pred %r204; .reg .u32 %r205; .reg .pred %r206; .reg .u32 %r207; .reg .pred %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u32 %r214; .reg .pred %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .u32 %r218; .reg .u32 %r219; .reg .pred %r220; .reg .pred %r221; .reg .pred %r222; .reg .pred %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r227; .reg .u32 %r228; .reg .pred %r231; .reg .pred %r232; .reg .pred %r233; .reg .u32 %r234; .reg .pred %r235; .reg .pred %r236; .reg .pred %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .pred %r246; .reg .u32 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u32 %r252; .reg .u32 %r253; .reg .pred %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u64 %r259; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r265; .reg .pred %r266; .reg .pred %r267; .reg .pred %r268; .reg .u32 %r269; .reg .pred %r270; .reg .pred %r271; .reg .pred %r272; .reg .u32 %r273; .reg .pred %r274; .reg .u64 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u64 %r279; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .pred %r283; .reg .pred %r285; .reg .u16 %r287; mov.f64 %r134,%ar0; mov.f64 %r135,%ar1; mov.u64 %r136,%ar2; mov.b64 %r137,%r134; shr.u64 %r138,%r137,32; cvt.u32.u64 %r139,%r138; mov.b64 %r140,%r135; shr.u64 %r141,%r140,32; cvt.u32.u64 %r142,%r141; cvt.u32.u64 %r144,%r140; mov.u32 %r94,%r144; .loc 1 92 5 and.b32 %r89,%r139,2147483647; .loc 1 93 5 and.b32 %r102,%r142,2147483647; .loc 1 96 8 or.b32 %r145,%r102,%r144; .loc 1 96 4 set.u32.eq.u32 %r147,%r145,0; neg.s32 %r148,%r147; mov.u32 %r146,%r148; .loc 1 96 15 set.u32.gt.s32 %r150,%r89,2146435071; neg.s32 %r151,%r150; mov.u32 %r149,%r151; cvt.u16.u8 %r287,%r146; mov.u16 %r153,%r287; cvt.u16.u8 %r287,%r149; mov.u16 %r154,%r287; or.b16 %r152,%r153,%r154; cvt.u32.u16 %r155,%r152; cvt.u16.u8 %r156,%r155; setp.ne.u16 %r157,%r156,0; @ %r157 bra $L2; .loc 1 97 14 neg.s32 %r158,%r144; .loc 1 97 13 or.b32 %r159,%r158,%r144; .loc 1 97 18 shr.u32 %r160,%r159,31; .loc 1 97 8 or.b32 %r161,%r160,%r102; .loc 1 96 33 setp.le.u32 %r162,%r161,2146435072; @ %r162 bra $L3; $L2: .loc 1 98 11 mov.u32 %r163,0; st.u32 [%r136],%r163; .loc 1 99 15 mul.f64 %r29,%r134,%r135; .loc 1 99 18 div.rn.f64 %r133,%r29,%r29; bra $L1; $L3: cvt.u32.u64 %r93,%r137; .loc 1 91 5 and.b32 %r101,%r139,-2147483648; .loc 1 90 12 xor.b32 %r128,%r139,%r142; .loc 1 101 4 setp.gt.s32 %r166,%r89,%r102; @ %r166 bra $L5; .loc 1 102 12 set.u32.lt.s32 %r168,%r89,%r102; neg.s32 %r169,%r168; mov.u32 %r167,%r169; .loc 1 102 21 set.u32.lt.u32 %r171,%r93,%r144; neg.s32 %r172,%r171; mov.u32 %r170,%r172; .loc 1 102 16 cvt.u16.u8 %r287,%r167; mov.u16 %r174,%r287; cvt.u16.u8 %r287,%r170; mov.u16 %r175,%r287; or.b16 %r173,%r174,%r175; cvt.u32.u16 %r176,%r173; .loc 1 102 8 cvt.u16.u8 %r177,%r176; setp.ne.u16 %r178,%r177,0; @ %r178 bra $L50; .loc 1 106 8 setp.ne.u32 %r179,%r93,%r144; @ %r179 bra $L5; .loc 1 107 20 setp.lt.s32 %r180,%r128,0; selp.u32 %r96,-1,1,%r180; .loc 1 107 8 st.u32 [%r136],%r96; .loc 1 108 14 cvta.const.u64 %r181,Zero; .loc 1 108 29 shr.u32 %r182,%r101,31; .loc 1 108 14 cvt.u64.u32 %r183,%r182; shl.b64 %r184,%r183,3; add.u64 %r185,%r181,%r184; ld.f64 %r133,[%r185]; bra $L1; $L5: .loc 1 113 4 and.b32 %r186,%r139,2146435072; setp.ne.u32 %r187,%r186,0; @ %r187 bra $L8; .loc 1 114 8 setp.ne.u32 %r188,%r89,0; @ %r188 bra $L9; .loc 1 115 21 mov.u32 %r108,%r93; .loc 1 115 27 setp.le.s32 %r189,%r93,0; @ %r189 bra $L52; .loc 1 115 11 mov.u32 %r92,-1043; $L11: .loc 1 115 41 add.u32 %r92,%r92,-1; .loc 1 115 32 add.u32 %r108,%r108,%r108; .loc 1 115 27 setp.gt.s32 %r191,%r108,0; @ %r191 bra $L11; bra $L10; $L9: .loc 1 117 20 shl.b32 %r107,%r89,11; .loc 1 117 32 setp.le.s32 %r192,%r107,0; @ %r192 bra $L53; .loc 1 117 11 mov.u32 %r92,-1022; $L12: .loc 1 117 46 add.u32 %r92,%r92,-1; .loc 1 117 37 add.u32 %r107,%r107,%r107; .loc 1 117 32 setp.gt.s32 %r194,%r107,0; @ %r194 bra $L12; bra $L10; $L8: .loc 1 119 17 shr.s32 %r195,%r89,20; .loc 1 119 12 add.u32 %r92,%r195,-1023; bra $L10; $L52: .loc 1 115 11 mov.u32 %r92,-1043; bra $L10; $L53: .loc 1 117 11 mov.u32 %r92,-1022; $L10: .loc 1 122 4 and.b32 %r196,%r142,2146435072; setp.ne.u32 %r197,%r196,0; @ %r197 bra $L13; .loc 1 123 8 setp.ne.u32 %r198,%r102,0; @ %r198 bra $L14; .loc 1 124 21 mov.u32 %r111,%r144; .loc 1 124 27 setp.le.s32 %r199,%r144,0; @ %r199 bra $L54; .loc 1 124 11 mov.u32 %r121,-1043; $L16: .loc 1 124 41 add.u32 %r121,%r121,-1; .loc 1 124 32 add.u32 %r111,%r111,%r111; .loc 1 124 27 setp.gt.s32 %r201,%r111,0; @ %r201 bra $L16; bra $L15; $L14: .loc 1 126 20 shl.b32 %r109,%r102,11; .loc 1 126 32 setp.le.s32 %r202,%r109,0; @ %r202 bra $L55; .loc 1 126 11 mov.u32 %r121,-1022; $L17: .loc 1 126 46 add.u32 %r121,%r121,-1; .loc 1 126 37 add.u32 %r109,%r109,%r109; .loc 1 126 32 setp.gt.s32 %r204,%r109,0; @ %r204 bra $L17; bra $L15; $L13: .loc 1 128 17 shr.s32 %r205,%r102,20; .loc 1 128 12 add.u32 %r121,%r205,-1023; bra $L15; $L54: .loc 1 124 11 mov.u32 %r121,-1043; bra $L15; $L55: .loc 1 126 11 mov.u32 %r121,-1022; $L15: .loc 1 131 4 setp.lt.s32 %r206,%r92,-1022; @ %r206 bra $L18; .loc 1 132 33 and.b32 %r37,%r139,1048575; .loc 1 132 9 or.b32 %r88,%r37,1048576; bra $L19; $L18: .loc 1 134 8 mov.u32 %r207,-1022; sub.u32 %r112,%r207,%r92; .loc 1 135 8 setp.gt.s32 %r208,%r112,31; @ %r208 bra $L20; .loc 1 136 18 shl.b32 %r38,%r89,%r112; .loc 1 136 31 add.u32 %r209,%r92,1054; .loc 1 136 26 shr.u32 %r210,%r93,%r209; .loc 1 136 13 or.b32 %r88,%r210,%r38; .loc 1 137 13 shl.b32 %r93,%r93,%r112; bra $L19; $L20: .loc 1 139 14 mov.u32 %r212,-1054; sub.u32 %r211,%r212,%r92; .loc 1 139 10 shl.b32 %r88,%r93,%r211; .loc 1 140 6 mov.u32 %r93,0; $L19: .loc 1 143 4 setp.lt.s32 %r285,%r121,-1022; @ %r285 bra $L21; .loc 1 144 33 and.b32 %r43,%r142,1048575; .loc 1 144 9 or.b32 %r90,%r43,1048576; .loc 1 165 13 sub.u32 %r129,%r93,%r144; bra $L22; $L21: .loc 1 146 8 mov.u32 %r214,-1022; sub.u32 %r113,%r214,%r121; .loc 1 147 8 setp.gt.s32 %r215,%r113,31; @ %r215 bra $L23; .loc 1 148 18 shl.b32 %r44,%r102,%r113; .loc 1 148 31 add.u32 %r216,%r121,1054; .loc 1 148 26 shr.u32 %r217,%r144,%r216; .loc 1 148 13 or.b32 %r90,%r217,%r44; .loc 1 149 13 shl.b32 %r94,%r144,%r113; .loc 1 165 13 sub.u32 %r129,%r93,%r94; bra $L22; $L23: .loc 1 151 14 mov.u32 %r219,-1054; sub.u32 %r218,%r219,%r121; .loc 1 151 10 shl.b32 %r90,%r144,%r218; .loc 1 157 4 sub.u32 %r130,%r92,%r121; .loc 1 159 9 add.u32 %r115,%r130,-1; .loc 1 159 8 setp.ne.u32 %r220,%r130,0; @ %r220 bra $L56; bra $L72; $L22: .loc 1 157 4 sub.u32 %r114,%r92,%r121; .loc 1 159 9 add.u32 %r115,%r114,-1; .loc 1 159 8 setp.eq.u32 %r221,%r114,0; @ ! %r221 bra $L24; bra $L57; $L56: .loc 1 152 6 mov.u32 %r94,0; $L24: .loc 1 158 4 mov.u32 %r95,0; $L30: .loc 1 160 8 sub.u32 %r91,%r88,%r90; .loc 1 160 27 setp.ge.u32 %r222,%r93,%r94; @ %r222 bra $L27; .loc 1 160 38 add.u32 %r91,%r91,-1; $L27: .loc 1 161 8 setp.ge.s32 %r223,%r91,0; @ %r223 bra $L28; .loc 1 161 22 add.u32 %r224,%r88,%r88; .loc 1 161 29 shr.u32 %r225,%r93,31; .loc 1 161 25 add.u32 %r88,%r224,%r225; .loc 1 161 39 add.u32 %r93,%r93,%r93; bra $L29; $L28: .loc 1 160 17 sub.u32 %r123,%r93,%r94; .loc 1 162 19 add.u32 %r227,%r91,%r91; .loc 1 162 26 shr.u32 %r228,%r123,31; .loc 1 162 22 add.u32 %r88,%r227,%r228; .loc 1 162 36 add.u32 %r93,%r123,%r123; .loc 1 162 46 add.u32 %r95,%r95,1; $L29: .loc 1 163 8 add.u32 %r95,%r95,%r95; .loc 1 159 9 add.u32 %r115,%r115,-1; .loc 1 159 8 setp.ne.u32 %r231,%r115,-1; @ %r231 bra $L30; .loc 1 165 13 sub.u32 %r129,%r93,%r94; bra $L26; $L57: .loc 1 158 4 mov.u32 %r95,%r114; $L26: .loc 1 165 4 sub.u32 %r116,%r88,%r90; .loc 1 165 23 setp.lt.u32 %r232,%r93,%r94; @ ! %r232 bra $L32; .loc 1 165 34 add.u32 %r116,%r116,-1; $L32: .loc 1 166 4 setp.lt.s32 %r233,%r116,0; @ %r233 bra $L33; .loc 1 166 26 add.u32 %r95,%r95,1; mov.u32 %r93,%r129; mov.u32 %r88,%r116; $L33: .loc 1 169 8 or.b32 %r234,%r88,%r93; .loc 1 169 4 setp.eq.u32 %r235,%r234,0; @ %r235 bra $L34; .loc 1 174 10 setp.le.s32 %r236,%r88,1048575; @ %r236 bra $L35; bra $L36; $L34: .loc 1 170 8 and.b32 %r122,%r95,2147483647; .loc 1 171 23 setp.ge.s32 %r237,%r128,0; @ %r237 bra $L37; .loc 1 171 20 neg.s32 %r97,%r122; bra $L38; $L37: .loc 1 171 23 mov.u32 %r97,%r122; $L38: .loc 1 171 11 st.u32 [%r136],%r97; .loc 1 172 17 cvta.const.u64 %r238,Zero; .loc 1 172 32 shr.u32 %r239,%r101,31; .loc 1 172 17 cvt.u64.u32 %r240,%r239; shl.b64 %r241,%r240,3; add.u64 %r242,%r238,%r241; ld.f64 %r133,[%r242]; bra $L1; $L35: .loc 1 175 13 add.u32 %r243,%r88,%r88; .loc 1 175 20 shr.u32 %r244,%r93,31; .loc 1 175 16 add.u32 %r88,%r243,%r244; .loc 1 175 30 add.u32 %r93,%r93,%r93; .loc 1 176 9 add.u32 %r121,%r121,-1; .loc 1 174 10 setp.le.s32 %r246,%r88,1048575; @ %r246 bra $L35; setp.lt.s32 %r285,%r121,-1022; $L36: .loc 1 178 4 @ %r285 bra $L39; .loc 1 179 15 add.u32 %r67,%r88,-1048576; .loc 1 179 32 add.u32 %r248,%r121,1023; .loc 1 179 38 shl.b32 %r249,%r248,20; .loc 1 179 9 or.b32 %r89,%r249,%r67; bra $L6; $L39: .loc 1 181 8 mov.u32 %r250,-1022; sub.u32 %r118,%r250,%r121; .loc 1 182 8 setp.gt.s32 %r251,%r118,20; @ %r251 bra $L40; .loc 1 183 11 shr.u32 %r70,%r93,%r118; .loc 1 183 36 add.u32 %r252,%r121,1054; .loc 1 183 31 shl.b32 %r253,%r88,%r252; .loc 1 183 6 or.b32 %r93,%r253,%r70; .loc 1 184 6 shr.s32 %r89,%r88,%r118; bra $L6; $L40: .loc 1 185 16 setp.gt.s32 %r254,%r118,31; @ %r254 bra $L41; .loc 1 186 24 shr.u32 %r77,%r93,%r118; .loc 1 186 16 add.u32 %r255,%r121,1054; .loc 1 186 11 shl.b32 %r256,%r88,%r255; .loc 1 186 6 or.b32 %r93,%r256,%r77; .loc 1 186 33 mov.u32 %r89,%r101; bra $L6; $L41: .loc 1 188 14 mov.u32 %r258,-1054; sub.u32 %r257,%r258,%r121; .loc 1 188 10 shr.s32 %r93,%r88,%r257; .loc 1 188 23 mov.u32 %r89,%r101; bra $L6; $L50: .loc 1 103 5 mov.u32 %r95,0; $L6: .loc 1 192 2 cvt.u64.u32 %r259,%r89; cvt.u64.u32 %r263,%r93; shl.b64 %r264,%r259,32; or.b64 %r265,%r264,%r263; mov.b64 %r87,%r265; .loc 1 193 4 abs.f64 %r124,%r135; .loc 1 194 5 setp.lt.f64 %r266,%r124,0d0020000000000000; @ ! %r266 bra $L73; .loc 1 195 11 add.f64 %r81,%r87,%r87; .loc 1 195 9 setp.gt.f64 %r267,%r81,%r124; @ %r267 bra $L44; .loc 1 195 16 setp.neu.f64 %r268,%r81,%r124; @ %r268 bra $L45; .loc 1 195 33 and.b32 %r269,%r95,1; .loc 1 195 27 setp.eq.u32 %r270,%r269,0; @ %r270 bra $L45; $L44: .loc 1 196 4 add.u32 %r95,%r95,1; .loc 1 197 4 sub.f64 %r87,%r87,%r124; bra $L45; $L73: .loc 1 199 18 mul.f64 %r83,%r124,0d3fe0000000000000; .loc 1 199 12 setp.lt.f64 %r271,%r83,%r87; @ %r271 bra $L46; .loc 1 199 21 setp.neu.f64 %r272,%r83,%r87; @ %r272 bra $L45; .loc 1 199 40 and.b32 %r273,%r95,1; .loc 1 199 34 setp.eq.u32 %r274,%r273,0; @ %r274 bra $L45; $L46: .loc 1 200 7 add.u32 %r95,%r95,1; .loc 1 201 7 sub.f64 %r87,%r87,%r124; $L45: .loc 1 204 2 mov.b64 %r132,%r87; shr.u64 %r276,%r132,32; cvt.u32.u64 %r277,%r276; xor.b32 %r278,%r101,%r277; cvt.u64.u32 %r279,%r278; shl.b64 %r280,%r279,32; and.b64 %r281,%r132,4294967295; or.b64 %r282,%r281,%r280; mov.b64 %r133,%r282; .loc 1 205 4 and.b32 %r125,%r95,2147483647; .loc 1 206 19 setp.ge.s32 %r283,%r128,0; @ %r283 bra $L47; .loc 1 206 16 neg.s32 %r98,%r125; bra $L48; $L47: .loc 1 206 19 mov.u32 %r98,%r125; $L48: .loc 1 206 7 st.u32 [%r136],%r98; .loc 1 207 9 bra $L1; $L72: .loc 1 165 4 sub.u32 %r116,%r88,%r90; mov.u32 %r129,%r93; .loc 1 158 4 mov.u32 %r95,%r130; bra $L32; $L1: .loc 1 208 1 mov.f64 %value,%r133; st.param.f64 [%value_out],%value; ret; } lib_a-s_rint.o/ 0 0 0 644 5830 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rint .visible .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_rint.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: TWO52 .const .align 8 .u64 TWO52[2] = {4841369599423283200,-4382002437431492608 }; // BEGIN GLOBAL FUNCTION DEF: rint .visible .func (.param .f64 %value_out) rint (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r24; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r51; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r73; .reg .u64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u32 %r87; .reg .pred %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r125; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .pred %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .pred %r135; .reg .u32 %r136; .reg .pred %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u64 %r151; .reg .u64 %r152; mov.f64 %r81,%ar0; mov.b64 %r82,%r81; shr.u64 %r83,%r82,32; cvt.u32.u64 %r48,%r83; cvt.u32.u64 %r46,%r82; .loc 1 94 15 shr.u32 %r62,%r48,31; .loc 1 95 11 shr.s32 %r87,%r48,20; .loc 1 95 16 and.b32 %r24,%r87,2047; .loc 1 95 5 add.u32 %r63,%r24,-1023; .loc 1 96 4 setp.gt.s32 %r88,%r63,19; @ %r88 bra $L2; .loc 1 97 8 setp.ge.s32 %r89,%r63,0; @ %r89 bra $L3; .loc 1 98 10 and.b32 %r90,%r48,2147483647; .loc 1 98 22 or.b32 %r91,%r90,%r46; .loc 1 98 5 setp.eq.u32 %r92,%r91,0; @ %r92 bra $L7; .loc 1 99 12 and.b32 %r93,%r48,1048575; .loc 1 99 6 or.b32 %r68,%r93,%r46; .loc 1 101 14 neg.s32 %r94,%r68; .loc 1 101 13 or.b32 %r95,%r94,%r68; .loc 1 101 18 shr.u32 %r96,%r95,12; .loc 1 101 23 and.b32 %r97,%r96,524288; .loc 1 100 6 and.b32 %r98,%r48,-131072; .loc 1 101 6 or.b32 %r99,%r97,%r98; .loc 1 102 3 cvt.u64.u32 %r100,%r99; shl.b64 %r101,%r100,32; and.b64 %r102,%r82,4294967295; or.b64 %r103,%r102,%r101; mov.b64 %r70,%r103; .loc 1 103 19 cvta.const.u64 %r104,TWO52; cvt.s64.s32 %r105,%r62; shl.b64 %r106,%r105,3; add.u64 %r107,%r104,%r106; ld.f64 %r35,[%r107]; .loc 1 103 23 add.f64 %r36,%r35,%r70; .loc 1 103 12 st.f64 [%frame],%r36; .loc 1 104 16 ld.f64 %r37,[%frame]; .loc 1 104 12 sub.f64 %r71,%r37,%r35; .loc 1 106 3 mov.b64 %r78,%r71; .loc 1 105 3 shr.u64 %r109,%r78,32; cvt.u32.u64 %r110,%r109; .loc 1 106 3 and.b32 %r111,%r110,2147483647; and.b32 %r112,%r48,-2147483648; or.b32 %r113,%r111,%r112; cvt.u64.u32 %r114,%r113; shl.b64 %r115,%r114,32; and.b64 %r116,%r78,4294967295; or.b64 %r117,%r116,%r115; mov.b64 %r80,%r117; .loc 1 107 17 bra $L1; $L3: .loc 1 109 19 mov.u32 %r118,1048575; shr.s32 %r66,%r118,%r63; .loc 1 110 10 and.b32 %r119,%r48,%r66; .loc 1 110 13 or.b32 %r120,%r119,%r46; .loc 1 110 5 setp.eq.u32 %r121,%r120,0; @ %r121 bra $L8; .loc 1 111 4 shr.u32 %r67,%r66,1; .loc 1 112 10 and.b32 %r122,%r48,%r67; .loc 1 112 13 or.b32 %r46,%r46,%r122; .loc 1 112 5 setp.eq.u32 %r123,%r46,0; @ %r123 bra $L5; .loc 1 114 9 set.u32.eq.u32 %r125,%r63,19; shl.b32 %r46,%r125,31; .loc 1 115 17 not.b32 %r127,%r67; .loc 1 115 15 and.b32 %r128,%r127,%r48; .loc 1 115 32 mov.u32 %r130,262144; shr.s32 %r129,%r130,%r63; .loc 1 127 2 or.b32 %r48,%r128,%r129; bra $L5; $L2: .loc 1 118 12 setp.le.s32 %r131,%r63,51; @ %r131 bra $L6; .loc 1 119 8 setp.ne.u32 %r132,%r63,1024; @ %r132 bra $L9; .loc 1 119 28 add.f64 %r80,%r81,%r81; bra $L1; $L6: .loc 1 122 41 add.u32 %r51,%r24,-1043; .loc 1 122 8 mov.u32 %r133,-1; shr.u32 %r64,%r133,%r51; .loc 1 123 12 and.b32 %r134,%r64,%r46; .loc 1 123 8 setp.eq.u32 %r135,%r134,0; @ %r135 bra $L10; .loc 1 124 7 shr.u32 %r65,%r64,1; .loc 1 125 12 and.b32 %r136,%r65,%r46; .loc 1 125 8 setp.eq.u32 %r137,%r136,0; @ %r137 bra $L5; .loc 1 125 30 not.b32 %r138,%r65; .loc 1 125 28 and.b32 %r139,%r138,%r46; .loc 1 125 48 mov.u32 %r141,1073741824; shr.s32 %r140,%r141,%r51; .loc 1 125 23 or.b32 %r46,%r139,%r140; $L5: .loc 1 127 2 cvt.u64.u32 %r142,%r48; cvt.u64.u32 %r146,%r46; shl.b64 %r147,%r142,32; or.b64 %r148,%r147,%r146; mov.b64 %r73,%r148; .loc 1 128 11 cvta.const.u64 %r149,TWO52; cvt.s64.s32 %r150,%r62; shl.b64 %r151,%r150,3; add.u64 %r152,%r149,%r151; ld.f64 %r58,[%r152]; .loc 1 128 15 add.f64 %r59,%r58,%r73; .loc 1 128 4 st.f64 [%frame],%r59; .loc 1 129 10 ld.f64 %r60,[%frame]; sub.f64 %r80,%r60,%r58; bra $L1; $L7: .loc 1 98 38 mov.f64 %r80,%r81; bra $L1; $L8: mov.f64 %r80,%r81; bra $L1; $L9: mov.f64 %r80,%r81; bra $L1; $L10: mov.f64 %r80,%r81; $L1: .loc 1 130 1 mov.f64 %value,%r80; st.param.f64 [%value_out],%value; ret; } lib_a-s_round.o/0 0 0 644 3037 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: round .visible .func (.param .f64 %value_out) round (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_round.c" // BEGIN GLOBAL FUNCTION DEF: round .visible .func (.param .f64 %value_out) round (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r35; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r44; .reg .u32 %r46; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; mov.f64 %r50,%ar0; mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r46,%r52; cvt.u32.u64 %r55,%r51; .loc 1 62 44 shr.s32 %r56,%r46,20; and.b32 %r23,%r56,2047; .loc 1 62 22 add.u32 %r37,%r23,-1023; .loc 1 64 6 setp.gt.s32 %r57,%r37,19; @ %r57 bra $L2; .loc 1 66 10 setp.ge.s32 %r58,%r37,0; @ %r58 bra $L3; .loc 1 68 15 and.b32 %r44,%r46,-2147483648; .loc 1 69 14 setp.eq.u32 %r59,%r37,-1; @ %r59 bra $L4; .loc 1 110 3 mov.u32 %r46,%r44; .loc 1 72 15 mov.u32 %r35,0; bra $L5; $L4: .loc 1 71 17 or.b32 %r46,%r44,1072693248; .loc 1 72 15 mov.u32 %r35,0; bra $L5; $L3: .loc 1 76 49 mov.u32 %r60,1048575; shr.s32 %r41,%r60,%r37; .loc 1 77 20 and.b32 %r61,%r46,%r41; .loc 1 77 42 or.b32 %r62,%r61,%r55; .loc 1 77 14 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L9; .loc 1 81 29 mov.u32 %r65,524288; shr.s32 %r64,%r65,%r37; .loc 1 81 15 add.u32 %r66,%r64,%r46; .loc 1 82 18 not.b32 %r67,%r41; .loc 1 110 3 and.b32 %r46,%r66,%r67; .loc 1 83 15 mov.u32 %r35,0; bra $L5; $L2: .loc 1 86 11 setp.le.s32 %r68,%r37,51; @ %r68 bra $L7; .loc 1 88 10 setp.ne.u32 %r69,%r37,1024; @ %r69 bra $L10; .loc 1 90 18 add.f64 %r49,%r50,%r50; bra $L1; $L7: .loc 1 96 68 add.u32 %r70,%r23,-1043; .loc 1 96 18 mov.u32 %r71,-1; shr.u32 %r38,%r71,%r70; .loc 1 99 16 and.b32 %r72,%r38,%r55; .loc 1 99 10 setp.eq.u32 %r73,%r72,0; @ %r73 bra $L11; .loc 1 103 29 mov.u32 %r75,51; sub.u32 %r74,%r75,%r37; .loc 1 103 22 mov.u32 %r77,1; shl.b32 %r76,%r77,%r74; .loc 1 103 11 add.u32 %r39,%r76,%r55; .loc 1 104 10 setp.ge.u32 %r78,%r39,%r55; @ %r78 bra $L8; .loc 1 105 13 add.u32 %r46,%r46,1; $L8: .loc 1 108 14 not.b32 %r79,%r38; .loc 1 108 11 and.b32 %r35,%r79,%r39; $L5: .loc 1 110 3 cvt.u64.u32 %r80,%r46; cvt.u64.u32 %r84,%r35; shl.b64 %r85,%r80,32; or.b64 %r86,%r85,%r84; mov.b64 %r49,%r86; .loc 1 112 10 bra $L1; $L9: .loc 1 79 20 mov.f64 %r49,%r50; bra $L1; $L10: mov.f64 %r49,%r50; bra $L1; $L11: mov.f64 %r49,%r50; $L1: .loc 1 113 1 mov.f64 %value,%r49; st.param.f64 [%value_out],%value; ret; } /1173 0 0 0 644 3990 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbln .visible .func (.param .f64 %value_out) scalbln (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_scalbln.c" // BEGIN GLOBAL FUNCTION DEF: scalbln .visible .func (.param .f64 %value_out) scalbln (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r29; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r40; .reg .u32 %r46; .reg .u32 %r48; .reg .f64 %r51; .reg .u64 %r55; .reg .u64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .u16 %r86; .reg .u32 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .pred %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .pred %r101; .reg .f64 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u16 %r112; mov.f64 %r58,%ar0; mov.u64 %r59,%ar1; .loc 1 42 2 mov.b64 %r60,%r58; shr.u64 %r61,%r60,32; cvt.u32.u64 %r46,%r61; .loc 1 43 28 shr.s32 %r63,%r46,20; .loc 1 43 11 and.b32 %r48,%r63,2047; .loc 1 44 12 setp.ne.u32 %r64,%r48,0; @ %r64 bra $L2; .loc 1 45 24 and.b32 %r65,%r46,2147483647; .loc 1 42 2 cvt.u32.u64 %r67,%r60; .loc 1 45 20 or.b32 %r69,%r65,%r67; .loc 1 45 16 setp.eq.u32 %r70,%r69,0; @ %r70 bra $L9; .loc 1 46 8 mul.f64 %r58,%r58,0d4350000000000000; .loc 1 47 6 mov.b64 %r71,%r58; shr.u64 %r72,%r71,32; cvt.u32.u64 %r46,%r72; .loc 1 48 26 shr.s32 %r74,%r46,20; and.b32 %r75,%r74,2047; .loc 1 48 8 add.u32 %r48,%r75,-54; bra $L4; $L2: .loc 1 50 12 setp.ne.u32 %r76,%r48,2047; @ %r76 bra $L4; .loc 1 50 31 add.f64 %r57,%r58,%r58; bra $L1; $L4: .loc 1 51 14 cvt.u32.u64 %r77,%r59; add.u32 %r29,%r77,%r48; .loc 1 52 14 set.u32.gt.s64 %r79,%r59,50000; neg.s32 %r80,%r79; mov.u32 %r78,%r80; .loc 1 52 27 set.u32.gt.s32 %r82,%r29,2046; neg.s32 %r83,%r82; mov.u32 %r81,%r83; .loc 1 52 22 cvt.u16.u8 %r112,%r78; mov.u16 %r85,%r112; cvt.u16.u8 %r112,%r81; mov.u16 %r86,%r112; or.b16 %r84,%r85,%r86; cvt.u32.u16 %r87,%r84; .loc 1 52 12 cvt.u16.u8 %r88,%r87; setp.eq.u16 %r89,%r88,0; @ %r89 bra $L5; .loc 1 53 16 mov.f64 %r90,0d7e37e43c8800759c; copysign.f64 %r33,%r58,%r90; .loc 1 53 15 mul.f64 %r57,%r33,0d7e37e43c8800759c; bra $L1; $L5: .loc 1 54 5 setp.ge.s64 %r91,%r59,-50000; @ %r91 bra $L6; .loc 1 54 29 mov.f64 %r92,0d01a56e1fc2f8f359; copysign.f64 %r34,%r58,%r92; .loc 1 54 28 mul.f64 %r57,%r34,0d01a56e1fc2f8f359; bra $L1; $L6: .loc 1 55 12 setp.le.s32 %r93,%r29,0; @ %r93 bra $L7; .loc 1 56 7 mov.b64 %r55,%r58; and.b32 %r94,%r46,-2146435073; shl.b32 %r95,%r29,20; or.b32 %r96,%r94,%r95; cvt.u64.u32 %r97,%r96; shl.b64 %r98,%r97,32; and.b64 %r99,%r55,4294967295; or.b64 %r100,%r99,%r98; mov.b64 %r57,%r100; .loc 1 56 56 bra $L1; $L7: .loc 1 57 12 setp.ge.s32 %r101,%r29,-53; @ %r101 bra $L8; .loc 1 58 16 mov.f64 %r102,0d01a56e1fc2f8f359; copysign.f64 %r40,%r58,%r102; .loc 1 58 15 mul.f64 %r57,%r40,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 60 2 mov.b64 %r56,%r58; .loc 1 59 11 add.u32 %r103,%r29,54; .loc 1 60 2 shl.b32 %r104,%r103,20; and.b32 %r105,%r46,-2146435073; or.b32 %r106,%r104,%r105; cvt.u64.u32 %r107,%r106; shl.b64 %r108,%r107,32; and.b64 %r109,%r56,4294967295; or.b64 %r110,%r109,%r108; mov.b64 %r51,%r110; .loc 1 61 17 mul.f64 %r57,%r51,0d3c90000000000000; bra $L1; $L9: .loc 1 45 49 mov.f64 %r57,%r58; $L1: .loc 1 62 1 mov.f64 %value,%r57; st.param.f64 [%value_out],%value; ret; } /1192 0 0 0 644 3284 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r27; .reg .f64 %r33; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .f64 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .f64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; .loc 1 86 2 mov.b64 %r53,%r51; shr.u64 %r54,%r53,32; cvt.u32.u64 %r39,%r54; .loc 1 87 28 shr.s32 %r56,%r39,20; .loc 1 87 11 and.b32 %r41,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r41,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r39,2147483647; .loc 1 86 2 cvt.u32.u64 %r60,%r53; .loc 1 89 20 or.b32 %r62,%r58,%r60; .loc 1 89 16 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L9; .loc 1 90 8 mul.f64 %r51,%r51,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r64,%r52,-50000; @ %r64 bra $L4; .loc 1 93 39 mul.f64 %r50,%r51,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r65,%r41,2047; @ %r65 bra $L5; .loc 1 95 31 add.f64 %r50,%r51,%r51; bra $L1; $L4: .loc 1 91 6 mov.b64 %r66,%r51; shr.u64 %r67,%r66,32; cvt.u32.u64 %r39,%r67; .loc 1 92 26 shr.s32 %r69,%r39,20; and.b32 %r70,%r69,2047; .loc 1 92 8 add.u32 %r41,%r70,-54; $L5: .loc 1 96 11 add.u32 %r42,%r52,%r41; .loc 1 97 12 setp.le.s32 %r71,%r42,2046; @ %r71 bra $L6; .loc 1 97 37 mov.f64 %r72,0d7e37e43c8800759c; copysign.f64 %r27,%r51,%r72; .loc 1 97 36 mul.f64 %r50,%r27,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r42,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r48,%r51; and.b32 %r74,%r39,-2146435073; shl.b32 %r75,%r42,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r48,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r50,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r42,-53; @ %r81 bra $L8; .loc 1 103 23 mov.f64 %r82,0d01a56e1fc2f8f359; copysign.f64 %r33,%r51,%r82; .loc 1 103 22 mul.f64 %r50,%r33,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r49,%r51; .loc 1 105 11 add.u32 %r83,%r42,54; .loc 1 106 2 shl.b32 %r84,%r83,20; and.b32 %r85,%r39,-2146435073; or.b32 %r86,%r84,%r85; cvt.u64.u32 %r87,%r86; shl.b64 %r88,%r87,32; and.b64 %r89,%r49,4294967295; or.b64 %r90,%r89,%r88; mov.b64 %r44,%r90; .loc 1 107 17 mul.f64 %r50,%r44,0d3c90000000000000; bra $L1; $L9: .loc 1 89 49 mov.f64 %r50,%r51; $L1: .loc 1 108 1 mov.f64 %value,%r50; st.param.f64 [%value_out],%value; ret; } /1210 0 0 0 644 1124 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __signbitf .visible .func (.param .u32 %value_out) __signbitf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_signbit.c" // BEGIN GLOBAL FUNCTION DECL: __signbitd .visible .func (.param .u32 %value_out) __signbitd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __signbitf .visible .func (.param .u32 %value_out) __signbitf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .u32 %r29; mov.f32 %r26,%ar0; .loc 1 48 27 mov.b32 %r29,%r26; shr.u32 %value,%r29,31; .loc 1 49 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __signbitd .visible .func (.param .u32 %value_out) __signbitd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; mov.f64 %r26,%ar0; .loc 1 58 29 mov.b64 %r28,%r26; shr.u64 %r29,%r28,32; cvt.u32.u64 %r30,%r29; shr.u32 %value,%r30,31; .loc 1 59 1 st.param.u32 [%value_out],%value; ret; } /1229 0 0 0 644 1310 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: significand .visible .func (.param .f64 %value_out) significand (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_signif.c" // BEGIN GLOBAL FUNCTION DECL: ilogb .extern .func (.param .u32 %value_out) ilogb (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalb .extern .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: significand .visible .func (.param .f64 %value_out) significand (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .u32 %r28; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; mov.f64 %r26,%ar0; .loc 1 31 37 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),ilogb,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 31 36 neg.s32 %r31,%r28; .loc 1 31 9 cvt.rn.f64.s32 %r32,%r31; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r32; call (%value_in),__ieee754_scalb,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 32 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-s_sin.o/ 0 0 0 644 4443 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sin .visible .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_sin.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_sin .extern .func (.param .f64 %value_out) __kernel_sin (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .extern .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_cos .extern .func (.param .f64 %value_out) __kernel_cos (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: sin .visible .func (.param .f64 %value_out) sin (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .f64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .pred %r47; .reg .u32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .f64 %r54; .reg .u32 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .u32 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; mov.f64 %r38,%ar0; .loc 1 98 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r41,%r40; .loc 1 101 5 and.b32 %r34,%r41,2147483647; .loc 1 102 4 setp.gt.s32 %r42,%r34,1072243195; @ %r42 bra $L2; .loc 1 102 30 mov.u32 %r45,0; mov.f64 %r44,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r44; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r45; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r46,[%value_in]; } mov.f64 %r37,%r46; bra $L1; $L2: .loc 1 105 10 setp.le.s32 %r47,%r34,2146435071; @ %r47 bra $L4; .loc 1 105 35 sub.f64 %r37,%r38,%r38; bra $L1; $L4: .loc 1 109 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2,(%out_arg1,%out_arg2); ld.param.u32 %r50,[%value_in]; } .loc 1 110 14 and.b32 %r22,%r50,3; .loc 1 110 6 setp.eq.u32 %r51,%r22,1; @ %r51 bra $L5; setp.eq.u32 %r52,%r22,2; @ %r52 bra $L6; setp.ne.u32 %r53,%r22,0; @ %r53 bra $L7; .loc 1 111 19 ld.f64 %r57,[%frame+8]; mov.u32 %r56,1; ld.f64 %r54,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r56; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r58,[%value_in]; } mov.f64 %r37,%r58; bra $L1; $L5: .loc 1 112 19 ld.f64 %r61,[%frame+8]; ld.f64 %r59,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r61; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r62,[%value_in]; } mov.f64 %r37,%r62; bra $L1; $L6: .loc 1 113 19 ld.f64 %r66,[%frame+8]; mov.u32 %r65,1; ld.f64 %r63,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r66; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r65; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r67,[%value_in]; } .loc 1 113 18 neg.f64 %r37,%r67; bra $L1; $L7: .loc 1 115 12 ld.f64 %r70,[%frame+8]; ld.f64 %r68,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r68; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r70; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r71,[%value_in]; } .loc 1 115 11 neg.f64 %r37,%r71; $L1: .loc 1 118 1 mov.f64 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-s_tan.o/ 0 0 0 644 2986 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tan .visible .func (.param .f64 %value_out) tan (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_tan.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_tan .extern .func (.param .f64 %value_out) __kernel_tan (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2 .extern .func (.param .u32 %value_out) __ieee754_rem_pio2 (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: tan .visible .func (.param .f64 %value_out) tan (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r28; .reg .f64 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .f64 %r40; .reg .pred %r41; .reg .u32 %r44; .reg .f64 %r45; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f64 %r52; .reg .f64 %r53; mov.f64 %r32,%ar0; .loc 1 88 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r35,%r34; .loc 1 91 5 and.b32 %r28,%r35,2147483647; .loc 1 92 4 setp.gt.s32 %r36,%r28,1072243195; @ %r36 bra $L2; .loc 1 92 30 mov.u32 %r39,1; mov.f64 %r38,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r39; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r40,[%value_in]; } mov.f64 %r31,%r40; bra $L1; $L2: .loc 1 95 10 setp.le.s32 %r41,%r28,2146435071; @ %r41 bra $L4; .loc 1 95 35 sub.f64 %r31,%r32,%r32; bra $L1; $L4: .loc 1 99 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2,(%out_arg1,%out_arg2); ld.param.u32 %r44,[%value_in]; } .loc 1 100 44 add.u32 %r48,%r44,%r44; and.b32 %r49,%r48,2; .loc 1 100 13 mov.u32 %r51,1; sub.u32 %r50,%r51,%r49; ld.f64 %r52,[%frame+8]; ld.f64 %r45,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r45; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r50; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r53,[%value_in]; } mov.f64 %r31,%r53; $L1: .loc 1 103 1 mov.f64 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-s_tanh.o/ 0 0 0 644 3045 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanh .visible .func (.param .f64 %value_out) tanh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/s_tanh.c" // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1 .extern .func (.param .f64 %value_out) expm1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanh .visible .func (.param .f64 %value_out) tanh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r42; .reg .f64 %r43; .reg .pred %r44; .reg .pred %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r60; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .pred %r66; mov.f64 %r38,%ar0; .loc 1 92 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r31,%r40; .loc 1 93 5 and.b32 %r32,%r31,2147483647; .loc 1 96 4 setp.le.s32 %r42,%r32,2146435071; @ %r42 bra $L2; .loc 1 97 27 mov.f64 %r43,0d3ff0000000000000; div.rn.f64 %r36,%r43,%r38; .loc 1 97 9 setp.lt.s32 %r44,%r31,0; @ %r44 bra $L3; .loc 1 97 29 add.f64 %r37,%r36,0d3ff0000000000000; bra $L1; $L3: .loc 1 98 29 sub.f64 %r37,%r36,%r43; bra $L1; $L2: .loc 1 102 5 setp.gt.s32 %r46,%r32,1077280767; @ %r46 bra $L8; .loc 1 103 9 setp.gt.s32 %r47,%r32,1015021567; @ %r47 bra $L6; .loc 1 104 16 add.f64 %r48,%r38,0d3ff0000000000000; .loc 1 104 11 mul.f64 %r37,%r48,%r38; bra $L1; $L6: .loc 1 105 9 setp.le.s32 %r49,%r32,1072693247; @ %r49 bra $L7; .loc 1 106 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r51,[%value_in]; } .loc 1 106 7 add.f64 %r53,%r51,%r51; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r53; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r54,[%value_in]; } .loc 1 107 19 add.f64 %r55,%r54,0d4000000000000000; .loc 1 107 16 mov.f64 %r57,0d4000000000000000; div.rn.f64 %r56,%r57,%r55; .loc 1 107 5 mov.f64 %r58,0d3ff0000000000000; sub.f64 %r37,%r58,%r56; bra $L5; $L7: .loc 1 109 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r60,[%value_in]; } .loc 1 109 14 mul.f64 %r62,%r60,0dc000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r63,[%value_in]; } .loc 1 110 13 neg.f64 %r64,%r63; .loc 1 110 18 add.f64 %r65,%r63,0d4000000000000000; .loc 1 110 11 div.rn.f64 %r37,%r64,%r65; bra $L5; $L8: .loc 1 114 8 mov.f64 %r37,0d3ff0000000000000; $L5: .loc 1 116 19 setp.ge.s32 %r66,%r31,0; @ %r66 bra $L1; neg.f64 %r37,%r37; $L1: .loc 1 117 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_trunc.o/0 0 0 644 2008 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: trunc .visible .func (.param .f64 %value_out) trunc (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_trunc.c" // BEGIN GLOBAL FUNCTION DEF: trunc .visible .func (.param .f64 %value_out) trunc (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r34; .reg .f64 %r40; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; mov.f64 %r41,%ar0; mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r44,%r43; .loc 1 64 44 shr.s32 %r45,%r44,20; and.b32 %r23,%r45,2047; .loc 1 64 22 add.u32 %r34,%r23,-1023; .loc 1 66 6 setp.gt.s32 %r46,%r34,19; @ %r46 bra $L2; .loc 1 69 10 setp.ge.s32 %r47,%r34,0; @ %r47 bra $L3; .loc 1 61 11 and.b32 %r48,%r44,-2147483648; .loc 1 72 11 cvt.u64.u32 %r49,%r48; shl.b64 %r53,%r49,32; mov.b64 %r40,%r53; bra $L1; $L3: .loc 1 77 11 mov.u32 %r55,-1048576; shr.s32 %r54,%r55,%r34; and.b32 %r56,%r54,%r44; cvt.u64.u32 %r57,%r56; shl.b64 %r61,%r57,32; mov.b64 %r40,%r61; bra $L1; $L2: .loc 1 80 11 setp.le.s32 %r62,%r34,51; @ %r62 bra $L5; .loc 1 82 10 setp.ne.u32 %r63,%r34,1024; @ %r63 bra $L6; .loc 1 85 20 add.f64 %r40,%r41,%r41; bra $L1; $L5: .loc 1 93 7 cvt.u64.u32 %r64,%r44; add.u32 %r68,%r23,-1043; mov.u32 %r70,-1; shr.u32 %r69,%r70,%r68; not.b32 %r71,%r69; cvt.u32.u64 %r73,%r42; and.b32 %r75,%r71,%r73; cvt.u64.u32 %r76,%r75; shl.b64 %r77,%r64,32; or.b64 %r78,%r77,%r76; mov.b64 %r40,%r78; bra $L1; $L6: mov.f64 %r40,%r41; $L1: .loc 1 96 1 mov.f64 %value,%r40; st.param.f64 [%value_out],%value; ret; } /1247 0 0 0 644 1027 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalblnl .visible .func (.param .f64 %value_out) scalblnl (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/scalblnl.c" // BEGIN GLOBAL FUNCTION DECL: scalbln .extern .func (.param .f64 %value_out) scalbln (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalblnl .visible .func (.param .f64 %value_out) scalblnl (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),scalbln,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-scalbnl.o/0 0 0 644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbnl .visible .func (.param .f64 %value_out) scalbnl (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/scalbnl.c" // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalbnl .visible .func (.param .f64 %value_out) scalbnl (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u32 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /1265 0 0 0 644 3796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asinhf .visible .func (.param .f32 %value_out) asinhf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_asinh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: log1pf .extern .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: asinhf .visible .func (.param .f32 %value_out) asinhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r29; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .f32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .f32 %r49; .reg .f32 %r51; .reg .pred %r52; .reg .f32 %r54; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .pred %r72; mov.f32 %r42,%ar0; .loc 1 36 2 mov.b32 %r36,%r42; .loc 1 37 5 and.b32 %r37,%r36,2147483647; .loc 1 38 4 setp.le.s32 %r43,%r37,2139095039; @ %r43 bra $L2; .loc 1 38 39 add.f32 %r41,%r42,%r42; bra $L1; $L2: .loc 1 39 4 setp.gt.s32 %r44,%r37,830472191; @ %r44 bra $L4; .loc 1 40 13 add.f32 %r45,%r42,0f7149f2ca; .loc 1 40 8 setp.gt.f32 %r46,%r45,0f3f800000; @ ! %r46 bra $L5; bra $L8; $L4: .loc 1 42 4 setp.le.s32 %r47,%r37,1300234240; @ %r47 bra $L6; .loc 1 43 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r49; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r51,[%value_in]; } .loc 1 43 8 add.f32 %r41,%r51,0f3f317218; bra $L7; $L6: .loc 1 44 12 setp.le.s32 %r52,%r37,1073741824; @ %r52 bra $L5; .loc 1 45 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r54,[%value_in]; } .loc 1 46 43 fma.rn.f32 %r25,%r42,%r42,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } .loc 1 46 67 add.f32 %r57,%r56,%r54; .loc 1 46 41 rcp.rn.f32 %r58,%r57; .loc 1 46 10 fma.rn.f32 %r29,%r54,0f40000000,%r58; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r29; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r61,[%value_in]; } mov.f32 %r41,%r61; bra $L7; $L5: .loc 1 48 8 mul.f32 %r39,%r42,%r42; .loc 1 49 16 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r63,[%value_in]; } .loc 1 49 32 add.f32 %r65,%r39,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r65; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r66,[%value_in]; } .loc 1 49 31 add.f32 %r68,%r66,0f3f800000; .loc 1 49 26 div.rn.f32 %r69,%r39,%r68; .loc 1 49 9 add.f32 %r70,%r69,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r71,[%value_in]; } mov.f32 %r41,%r71; $L7: .loc 1 51 4 setp.gt.s32 %r72,%r36,0; @ %r72 bra $L1; .loc 1 51 33 neg.f32 %r41,%r41; bra $L1; $L8: .loc 1 40 28 mov.f32 %r41,%r42; $L1: .loc 1 52 1 mov.f32 %value,%r41; st.param.f32 [%value_out],%value; ret; } lib_a-sf_atan.o/0 0 0 644 4568 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanf .visible .func (.param .f32 %value_out) atanf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_atan.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN VAR DEF: atanhi .const .align 4 .u32 atanhi[4] = {1055744824,1061752794,1065064542,1070141402 }; // BEGIN VAR DEF: atanlo .const .align 4 .u32 atanlo[4] = {833369961,857874792,856952756,866263400 }; // BEGIN GLOBAL FUNCTION DEF: atanf .visible .func (.param .f32 %value_out) atanf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f32 %r59; .reg .pred %r60; .reg .f32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .f32 %r65; .reg .pred %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; mov.f32 %r53,%ar0; .loc 1 77 2 mov.b32 %r43,%r53; .loc 1 78 5 and.b32 %r44,%r43,2147483647; .loc 1 79 4 setp.le.s32 %r54,%r44,1350565887; @ %r54 bra $L2; .loc 1 80 8 setp.le.s32 %r55,%r44,2139095040; @ %r55 bra $L3; .loc 1 81 11 add.f32 %r52,%r53,%r53; bra $L1; $L3: .loc 1 82 8 setp.gt.s32 %r56,%r43,0; .loc 1 83 32 selp.f32 %r52,0f3fc90fdb,0fbfc90fdb,%r56; bra $L1; $L2: .loc 1 84 7 setp.gt.s32 %r57,%r44,1054867455; @ %r57 bra $L5; .loc 1 85 9 setp.gt.s32 %r58,%r44,822083583; @ %r58 bra $L12; .loc 1 86 10 add.f32 %r59,%r53,0f7149f2ca; .loc 1 86 5 setp.gt.f32 %r60,%r59,0f3f800000; @ %r60 bra $L13; .loc 1 88 9 mov.u32 %r42,-1; bra $L6; $L5: .loc 1 90 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r53; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 91 5 setp.gt.s32 %r63,%r44,1066926079; @ %r63 bra $L7; .loc 1 92 9 setp.gt.s32 %r64,%r44,1060110335; @ %r64 bra $L8; .loc 1 93 28 fma.rn.f32 %r23,%r62,0f40000000,0fbf800000; .loc 1 93 45 add.f32 %r24,%r62,0f40000000; .loc 1 93 13 div.rn.f32 %r53,%r23,%r24; .loc 1 93 6 mov.u32 %r42,0; bra $L6; $L8: .loc 1 95 18 mov.f32 %r65,0f3f800000; sub.f32 %r25,%r62,%r65; .loc 1 95 26 add.f32 %r26,%r62,0f3f800000; .loc 1 95 14 div.rn.f32 %r53,%r25,%r26; .loc 1 95 6 mov.u32 %r42,1; bra $L6; $L7: .loc 1 98 9 setp.gt.s32 %r66,%r44,1075576831; @ %r66 bra $L9; .loc 1 99 18 mov.f32 %r67,0f3fc00000; sub.f32 %r27,%r62,%r67; .loc 1 99 35 fma.rn.f32 %r28,%r62,0f3fc00000,0f3f800000; .loc 1 99 14 div.rn.f32 %r53,%r27,%r28; .loc 1 99 6 mov.u32 %r42,2; bra $L6; $L9: .loc 1 101 14 mov.f32 %r68,0fbf800000; div.rn.f32 %r53,%r68,%r62; .loc 1 101 6 mov.u32 %r42,3; bra $L6; $L12: .loc 1 88 9 mov.u32 %r42,-1; $L6: .loc 1 105 4 mul.f32 %r47,%r53,%r53; .loc 1 106 4 mul.f32 %r48,%r47,%r47; .loc 1 108 51 fma.rn.f32 %r29,%r48,0f3c8569d7,0f3d4bda59; .loc 1 108 42 fma.rn.f32 %r30,%r29,%r48,0f3d886b35; .loc 1 108 33 fma.rn.f32 %r31,%r30,%r48,0f3dba2e6e; .loc 1 108 24 fma.rn.f32 %r32,%r31,%r48,0f3e124925; .loc 1 108 15 fma.rn.f32 %r33,%r32,%r48,0f3eaaaaab; .loc 1 109 42 fma.rn.f32 %r34,%r48,0fbd15a221,0fbd6ef16b; .loc 1 109 33 fma.rn.f32 %r35,%r34,%r48,0fbd9d8795; .loc 1 109 24 fma.rn.f32 %r36,%r35,%r48,0fbde38e38; .loc 1 109 15 fma.rn.f32 %r37,%r36,%r48,0fbe4ccccd; .loc 1 109 5 mul.f32 %r69,%r37,%r48; .loc 1 110 28 fma.rn.f32 %r50,%r33,%r47,%r69; .loc 1 110 24 mul.f32 %r51,%r53,%r50; .loc 1 110 5 setp.ne.u32 %r70,%r42,-1; @ %r70 bra $L10; .loc 1 110 21 sub.f32 %r52,%r53,%r51; bra $L1; $L10: .loc 1 112 16 cvta.const.u64 %r71,atanhi; cvt.s64.s32 %r72,%r42; shl.b64 %r73,%r72,2; add.u64 %r74,%r71,%r73; .loc 1 112 43 cvta.const.u64 %r75,atanlo; add.u64 %r78,%r75,%r73; .loc 1 112 35 ld.f32 %r80,[%r78]; sub.f32 %r79,%r51,%r80; .loc 1 112 49 sub.f32 %r81,%r79,%r53; .loc 1 112 8 ld.f32 %r82,[%r74]; sub.f32 %r52,%r82,%r81; .loc 1 113 23 setp.ge.s32 %r83,%r43,0; @ %r83 bra $L1; neg.f32 %r52,%r52; bra $L1; $L13: .loc 1 86 25 mov.f32 %r52,%r53; $L1: .loc 1 115 1 mov.f32 %value,%r52; st.param.f32 [%value_out],%value; ret; } lib_a-sf_cbrt.o/0 0 0 644 2133 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cbrtf .visible .func (.param .f32 %value_out) cbrtf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_cbrt.c" // BEGIN GLOBAL FUNCTION DEF: cbrtf .visible .func (.param .f32 %value_out) cbrtf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u32 %r24; .reg .u32 %r27; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .f32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r58; .reg .u32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .u32 %r70; .reg .u32 %r71; mov.f32 %r47,%ar0; .loc 1 53 2 mov.b32 %r22,%r47; .loc 1 55 6 and.b32 %r24,%r22,2147483647; .loc 1 56 4 setp.le.u32 %r48,%r24,2139095039; @ %r48 bra $L2; .loc 1 57 14 add.f32 %r46,%r47,%r47; bra $L1; $L2: .loc 1 58 4 setp.eq.u32 %r49,%r24,0; @ %r49 bra $L6; .loc 1 61 2 mov.b32 %r41,%r24; .loc 1 63 4 setp.gt.s32 %r50,%r24,8388607; @ %r50 bra $L4; .loc 1 65 6 mul.f32 %r51,%r41,0f4b800000; .loc 1 65 35 mov.b32 %r53,%r51; div.u32 %r54,%r53,3; add.u32 %r27,%r54,642849266; mov.b32 %r38,%r27; bra $L5; $L4: .loc 1 68 4 div.s32 %r58,%r24,3; add.u32 %r59,%r58,709958130; mov.b32 %r38,%r59; $L5: .loc 1 72 5 mul.f32 %r60,%r38,%r38; .loc 1 72 3 div.rn.f32 %r61,%r60,%r41; .loc 1 73 3 fma.rn.f32 %r44,%r38,%r61,0f3f0af8b0; .loc 1 74 11 add.f32 %r62,%r44,0f3fb50750; .loc 1 74 15 mov.f32 %r64,0fbf348ef1; div.rn.f32 %r63,%r64,%r44; .loc 1 74 13 add.f32 %r65,%r62,%r63; .loc 1 74 8 mov.f32 %r67,0f3fcdb6db; div.rn.f32 %r66,%r67,%r65; .loc 1 74 6 add.f32 %r68,%r66,0f3eb6db6e; .loc 1 74 3 mul.f32 %r69,%r68,%r38; .loc 1 54 6 and.b32 %r70,%r22,-2147483648; .loc 1 78 2 mov.b32 %r71,%r69; or.b32 %r37,%r70,%r71; mov.b32 %r46,%r37; .loc 1 79 8 bra $L1; $L6: .loc 1 59 12 mov.f32 %r46,%r47; $L1: .loc 1 80 1 mov.f32 %value,%r46; st.param.f32 [%value_out],%value; ret; } lib_a-sf_ceil.o/0 0 0 644 2274 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ceilf .visible .func (.param .f32 %value_out) ceilf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_ceil.c" // BEGIN GLOBAL FUNCTION DEF: ceilf .visible .func (.param .f32 %value_out) ceilf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; mov.f32 %r38,%ar0; .loc 1 33 2 mov.b32 %r34,%r38; .loc 1 34 5 and.b32 %r32,%r34,2147483647; .loc 1 35 10 shr.u32 %r39,%r32,23; .loc 1 35 15 add.u32 %r33,%r39,-127; .loc 1 36 4 setp.gt.s32 %r40,%r33,22; @ %r40 bra $L2; .loc 1 33 2 mov.u32 %r31,%r34; .loc 1 37 8 setp.ge.s32 %r41,%r33,0; @ %r41 bra $L3; .loc 1 38 10 add.f32 %r42,%r38,0f7149f2ca; .loc 1 38 5 setp.gt.f32 %r43,%r42,0f00000000; @ ! %r43 bra $L17; .loc 1 39 9 setp.lt.s32 %r44,%r34,0; @ %r44 bra $L10; .loc 1 40 14 setp.eq.u32 %r45,%r32,0; selp.f32 %r37,%r38,0f3f800000,%r45; bra $L1; $L3: .loc 1 43 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r33; .loc 1 44 9 and.b32 %r47,%r34,%r35; .loc 1 44 5 setp.eq.u32 %r48,%r47,0; @ %r48 bra $L12; .loc 1 45 10 add.f32 %r49,%r38,0f7149f2ca; .loc 1 45 5 setp.gt.f32 %r50,%r49,0f00000000; @ ! %r50 bra $L18; .loc 1 46 9 setp.le.s32 %r51,%r31,0; @ %r51 bra $L8; .loc 1 46 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r33; .loc 1 46 19 add.u32 %r31,%r31,%r52; $L8: .loc 1 47 14 not.b32 %r54,%r35; .loc 1 47 10 and.b32 %r55,%r54,%r31; .loc 1 54 2 mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 51 8 setp.le.u32 %r56,%r32,2139095039; @ %r56 bra $L14; .loc 1 51 43 add.f32 %r37,%r38,%r38; bra $L1; $L17: mov.f32 %r37,%r38; bra $L1; $L10: mov.f32 %r37,0f80000000; bra $L1; $L18: mov.f32 %r37,%r38; .loc 1 55 9 bra $L1; $L12: .loc 1 44 24 mov.f32 %r37,%r38; bra $L1; $L14: mov.f32 %r37,%r38; $L1: .loc 1 56 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1283 0 0 0 644 888 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .f32 %r28; .reg .f32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; mov.f32 %r28,%ar0; mov.f32 %r29,%ar1; .loc 1 34 2 mov.b32 %r31,%r28; and.b32 %r30,%r31,2147483647; mov.b32 %r33,%r29; and.b32 %r32,%r33,-2147483648; or.b32 %r24,%r30,%r32; .loc 1 35 16 mov.b32 %value,%r24; .loc 1 36 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_cos.o/ 0 0 0 644 4232 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cosf .visible .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_cos.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .extern .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .extern .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .extern .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: cosf .visible .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .f32 %r41; .reg .f32 %r42; .reg .pred %r43; .reg .u32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .f32 %r50; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .u32 %r65; .reg .f32 %r66; .reg .f32 %r67; mov.f32 %r38,%ar0; .loc 1 29 2 mov.b32 %r34,%r38; .loc 1 32 5 and.b32 %r35,%r34,2147483647; .loc 1 33 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 33 30 mov.f32 %r41,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r42,[%value_in]; } mov.f32 %r37,%r42; bra $L1; $L2: .loc 1 36 10 setp.le.s32 %r43,%r35,2139095039; @ %r43 bra $L4; .loc 1 36 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 40 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2f,(%out_arg1,%out_arg2); ld.param.u32 %r46,[%value_in]; } .loc 1 41 14 and.b32 %r22,%r46,3; .loc 1 41 6 setp.eq.u32 %r47,%r22,1; @ %r47 bra $L5; setp.eq.u32 %r48,%r22,2; @ %r48 bra $L6; setp.ne.u32 %r49,%r22,0; @ %r49 bra $L7; .loc 1 42 19 ld.f32 %r52,[%frame+4]; ld.f32 %r50,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r52; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r53,[%value_in]; } mov.f32 %r37,%r53; bra $L1; $L5: .loc 1 43 19 ld.f32 %r57,[%frame+4]; ld.f32 %r54,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r54; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r22; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r58,[%value_in]; } .loc 1 43 18 neg.f32 %r37,%r58; bra $L1; $L6: .loc 1 44 19 ld.f32 %r61,[%frame+4]; ld.f32 %r59,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r61; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r62,[%value_in]; } .loc 1 44 18 neg.f32 %r37,%r62; bra $L1; $L7: .loc 1 46 19 ld.f32 %r66,[%frame+4]; mov.u32 %r65,1; ld.f32 %r63,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r66; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r65; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r67,[%value_in]; } mov.f32 %r37,%r67; $L1: .loc 1 49 1 mov.f32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-sf_erf.o/ 0 0 0 644 16680 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: erff .visible .func (.param .f32 %value_out) erff (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_erf.c" // BEGIN GLOBAL FUNCTION DECL: erfcf .visible .func (.param .f32 %value_out) erfcf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_uflow .extern .func (.param .f64 %value_out) __math_uflow (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: erff .visible .func (.param .f32 %value_out) erff (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r77; .reg .f32 %r82; .reg .f32 %r86; .reg .f32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r104; .reg .f32 %r105; .reg .pred %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r116; .reg .pred %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .f32 %r122; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .pred %r128; .reg .pred %r129; .reg .f32 %r131; .reg .f32 %r132; .reg .pred %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .f32 %r137; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r144; .reg .pred %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; mov.f32 %r105,%ar0; .loc 1 111 2 mov.b32 %r88,%r105; .loc 1 112 5 and.b32 %r89,%r88,2147483647; .loc 1 113 4 setp.le.s32 %r106,%r89,2139095039; @ %r106 bra $L2; .loc 1 114 25 shr.u32 %r107,%r88,31; .loc 1 114 30 add.u32 %r108,%r107,%r107; .loc 1 115 22 mov.u32 %r110,1; sub.u32 %r109,%r110,%r108; .loc 1 115 13 cvt.rn.f32.s32 %r111,%r109; .loc 1 115 29 rcp.rn.f32 %r112,%r105; .loc 1 115 25 add.f32 %r104,%r111,%r112; bra $L1; $L2: .loc 1 118 4 setp.gt.s32 %r114,%r89,1062731775; @ %r114 bra $L4; .loc 1 119 8 setp.gt.s32 %r115,%r89,830472191; @ %r115 bra $L5; .loc 1 120 13 and.b32 %r116,%r88,2080374784; setp.ne.u32 %r117,%r116,0; @ %r117 bra $L6; .loc 1 122 45 mul.f32 %r118,%r105,0f3f8375d4; .loc 1 122 40 fma.rn.f32 %r28,%r105,0f41000000,%r118; .loc 1 122 26 mul.f32 %r104,%r28,0f3e000000; bra $L1; $L6: .loc 1 123 12 fma.rn.f32 %r104,%r105,0f3e0375d4,%r105; bra $L1; $L5: .loc 1 125 8 mul.f32 %r99,%r105,%r105; .loc 1 126 34 fma.rn.f32 %r29,%r99,0fb7c756b1,0fbbbd1489; .loc 1 126 27 fma.rn.f32 %r30,%r29,%r99,0fbce9528f; .loc 1 126 20 fma.rn.f32 %r31,%r30,%r99,0fbea66beb; .loc 1 126 8 fma.rn.f32 %r100,%r31,%r99,0f3e0375d4; .loc 1 127 41 fma.rn.f32 %r32,%r99,0fb684e21a,0f390aee49; .loc 1 127 34 fma.rn.f32 %r33,%r32,%r99,0f3ba68116; .loc 1 127 27 fma.rn.f32 %r34,%r33,%r99,0f3d852a63; .loc 1 127 20 fma.rn.f32 %r35,%r34,%r99,0f3ecbbbce; .loc 1 127 8 fma.rn.f32 %r101,%r35,%r99,0f3f800000; .loc 1 128 8 div.rn.f32 %r119,%r100,%r101; .loc 1 129 15 fma.rn.f32 %r104,%r105,%r119,%r105; bra $L1; $L4: .loc 1 131 4 setp.gt.s32 %r120,%r89,1067450367; @ %r120 bra $L7; .loc 1 132 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r105; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r122,[%value_in]; } .loc 1 132 8 mov.f32 %r123,0f3f800000; sub.f32 %r96,%r122,%r123; .loc 1 133 48 fma.rn.f32 %r37,%r96,0fbb0df9c0,0f3d1151b3; .loc 1 133 41 fma.rn.f32 %r38,%r37,%r96,0fbde31cc2; .loc 1 133 34 fma.rn.f32 %r39,%r38,%r96,0f3ea2fe54; .loc 1 133 27 fma.rn.f32 %r40,%r39,%r96,0fbebe9208; .loc 1 133 20 fma.rn.f32 %r41,%r40,%r96,0f3ed46805; .loc 1 133 8 fma.rn.f32 %r97,%r41,%r96,0fbb1acdc6; .loc 1 134 48 fma.rn.f32 %r42,%r96,0f3c445aa3,0f3c5f6e13; .loc 1 134 41 fma.rn.f32 %r43,%r42,%r96,0f3e013307; .loc 1 134 34 fma.rn.f32 %r44,%r43,%r96,0f3d931ae7; .loc 1 134 27 fma.rn.f32 %r45,%r44,%r96,0f3f0a5785; .loc 1 134 20 fma.rn.f32 %r46,%r45,%r96,0f3dd9f331; .loc 1 134 8 fma.rn.f32 %r98,%r46,%r96,0f3f800000; .loc 1 135 8 setp.lt.s32 %r124,%r88,0; @ %r124 bra $L8; .loc 1 135 30 div.rn.f32 %r125,%r97,%r98; .loc 1 135 27 add.f32 %r104,%r125,0f3f58560b; bra $L1; $L8: .loc 1 135 54 div.rn.f32 %r126,%r97,%r98; .loc 1 135 51 mov.f32 %r127,0fbf58560b; sub.f32 %r104,%r127,%r126; bra $L1; $L7: .loc 1 137 5 setp.le.s32 %r128,%r89,1086324735; @ %r128 bra $L9; .loc 1 138 8 setp.ge.s32 %r129,%r88,0; .loc 1 138 49 selp.f32 %r104,0f3f800000,0fbf800000,%r129; bra $L1; $L9: .loc 1 140 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r105; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r131,[%value_in]; } .loc 1 141 13 mul.f32 %r132,%r131,%r131; .loc 1 141 5 rcp.rn.f32 %r91,%r132; .loc 1 142 4 setp.gt.s32 %r134,%r89,1077336941; @ %r134 bra $L10; .loc 1 144 15 fma.rn.f32 %r50,%r91,0fc11d077e,0fc2a2932b; .loc 1 144 8 fma.rn.f32 %r51,%r50,%r91,0fc3389ae7; .loc 1 143 39 fma.rn.f32 %r52,%r51,%r91,0fc322658c; .loc 1 143 32 fma.rn.f32 %r53,%r52,%r91,0fc2798057; .loc 1 143 25 fma.rn.f32 %r54,%r53,%r91,0fc128f022; .loc 1 143 18 fma.rn.f32 %r55,%r54,%r91,0fbf31a0b7; .loc 1 143 7 fma.rn.f32 %r86,%r55,%r91,0fbc21a093; .loc 1 146 22 fma.rn.f32 %r56,%r91,0fbd777f97,0f40d23f7c; .loc 1 146 15 fma.rn.f32 %r57,%r56,%r91,0f42d9451f; .loc 1 146 8 fma.rn.f32 %r58,%r57,%r91,0f43d6810b; .loc 1 145 39 fma.rn.f32 %r59,%r58,%r91,0f442158c9; .loc 1 145 32 fma.rn.f32 %r60,%r59,%r91,0f43d9486f; .loc 1 145 25 fma.rn.f32 %r61,%r60,%r91,0f4309a863; .loc 1 145 18 fma.rn.f32 %r62,%r61,%r91,0f419d35ce; .loc 1 145 7 fma.rn.f32 %r87,%r62,%r91,0f3f800000; bra $L11; $L10: .loc 1 149 8 fma.rn.f32 %r63,%r91,0fc3f1c275,0fc480230b; .loc 1 148 39 fma.rn.f32 %r64,%r63,%r91,0fc41f6441; .loc 1 148 32 fma.rn.f32 %r65,%r64,%r91,0fc320a2ea; .loc 1 148 25 fma.rn.f32 %r66,%r65,%r91,0fc18e104b; .loc 1 148 18 fma.rn.f32 %r67,%r66,%r91,0fbf4c9dd4; .loc 1 148 7 fma.rn.f32 %r86,%r67,%r91,0fbc21a092; .loc 1 151 15 fma.rn.f32 %r68,%r91,0fc1b38712,0f43ed43a7; .loc 1 151 8 fma.rn.f32 %r69,%r68,%r91,0f451f90ce; .loc 1 150 39 fma.rn.f32 %r70,%r69,%r91,0f4547fdbb; .loc 1 150 32 fma.rn.f32 %r71,%r70,%r91,0f44c01759; .loc 1 150 25 fma.rn.f32 %r72,%r71,%r91,0f43a2e571; .loc 1 150 18 fma.rn.f32 %r73,%r72,%r91,0f41f2b459; .loc 1 150 7 fma.rn.f32 %r87,%r73,%r91,0f3f800000; $L11: .loc 1 154 2 mov.b32 %r136,%r131; and.b32 %r135,%r136,-4096; mov.b32 %r92,%r135; .loc 1 155 23 neg.f32 %r137,%r92; .loc 1 155 8 fma.rn.f32 %r77,%r137,%r92,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r77; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r139,[%value_in]; } .loc 1 155 60 sub.f32 %r140,%r92,%r131; .loc 1 155 66 add.f32 %r141,%r131,%r92; .loc 1 155 71 div.rn.f32 %r142,%r86,%r87; .loc 1 155 43 fma.rn.f32 %r82,%r140,%r141,%r142; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r82; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r144,[%value_in]; } .loc 1 155 5 mul.f32 %r93,%r139,%r144; .loc 1 156 4 setp.lt.s32 %r145,%r88,0; @ %r145 bra $L12; .loc 1 156 24 div.rn.f32 %r146,%r93,%r131; .loc 1 156 22 mov.f32 %r147,0f3f800000; sub.f32 %r104,%r147,%r146; bra $L1; $L12: .loc 1 156 42 div.rn.f32 %r148,%r93,%r131; .loc 1 156 44 mov.f32 %r149,0f3f800000; sub.f32 %r104,%r148,%r149; $L1: .loc 1 157 1 mov.f32 %value,%r104; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: erfcf .visible .func (.param .f32 %value_out) erfcf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r79; .reg .f32 %r84; .reg .f32 %r88; .reg .f32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .f32 %r94; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .pred %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .pred %r116; .reg .pred %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .pred %r127; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .pred %r136; .reg .f32 %r138; .reg .f32 %r139; .reg .pred %r141; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u16 %r148; .reg .u16 %r149; .reg .u16 %r150; .reg .u32 %r151; .reg .u16 %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .f32 %r156; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r163; .reg .pred %r164; .reg .f32 %r165; .reg .f32 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .f64 %r169; .reg .u16 %r171; mov.f32 %r109,%ar0; .loc 1 168 2 mov.b32 %r90,%r109; .loc 1 169 5 and.b32 %r91,%r90,2147483647; .loc 1 170 4 setp.le.s32 %r110,%r91,2139095039; @ %r110 bra $L15; .loc 1 172 36 shr.u32 %r111,%r90,31; .loc 1 172 41 add.u32 %r112,%r111,%r111; .loc 1 172 13 cvt.rn.f32.s32 %r113,%r112; .loc 1 172 49 rcp.rn.f32 %r114,%r109; .loc 1 172 45 add.f32 %r108,%r113,%r114; bra $L14; $L15: .loc 1 175 4 setp.gt.s32 %r116,%r91,1062731775; @ %r116 bra $L17; .loc 1 176 8 setp.gt.s32 %r117,%r91,595591167; @ %r117 bra $L18; .loc 1 177 13 mov.f32 %r118,0f3f800000; sub.f32 %r108,%r118,%r109; bra $L14; $L18: .loc 1 178 8 mul.f32 %r102,%r109,%r109; .loc 1 179 34 fma.rn.f32 %r26,%r102,0fb7c756b1,0fbbbd1489; .loc 1 179 27 fma.rn.f32 %r27,%r26,%r102,0fbce9528f; .loc 1 179 20 fma.rn.f32 %r28,%r27,%r102,0fbea66beb; .loc 1 179 8 fma.rn.f32 %r103,%r28,%r102,0f3e0375d4; .loc 1 180 41 fma.rn.f32 %r29,%r102,0fb684e21a,0f390aee49; .loc 1 180 34 fma.rn.f32 %r30,%r29,%r102,0f3ba68116; .loc 1 180 27 fma.rn.f32 %r31,%r30,%r102,0f3d852a63; .loc 1 180 20 fma.rn.f32 %r32,%r31,%r102,0f3ecbbbce; .loc 1 180 8 fma.rn.f32 %r104,%r32,%r102,0f3f800000; .loc 1 181 8 div.rn.f32 %r119,%r103,%r104; .loc 1 183 18 mul.f32 %r107,%r119,%r109; .loc 1 182 8 setp.gt.s32 %r120,%r90,1048575999; @ %r120 bra $L19; .loc 1 183 16 add.f32 %r121,%r109,%r107; .loc 1 183 13 mov.f32 %r122,0f3f800000; sub.f32 %r108,%r122,%r121; bra $L14; $L19: .loc 1 186 10 mov.f32 %r124,0f3f000000; sub.f32 %r123,%r109,%r124; .loc 1 186 5 add.f32 %r125,%r123,%r107; .loc 1 187 22 sub.f32 %r108,%r124,%r125; bra $L14; $L17: .loc 1 190 4 setp.gt.s32 %r127,%r91,1067450367; @ %r127 bra $L20; .loc 1 191 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r109; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r129,[%value_in]; } .loc 1 191 8 mov.f32 %r130,0f3f800000; sub.f32 %r98,%r129,%r130; .loc 1 192 48 fma.rn.f32 %r36,%r98,0fbb0df9c0,0f3d1151b3; .loc 1 192 41 fma.rn.f32 %r37,%r36,%r98,0fbde31cc2; .loc 1 192 34 fma.rn.f32 %r38,%r37,%r98,0f3ea2fe54; .loc 1 192 27 fma.rn.f32 %r39,%r38,%r98,0fbebe9208; .loc 1 192 20 fma.rn.f32 %r40,%r39,%r98,0f3ed46805; .loc 1 192 8 fma.rn.f32 %r99,%r40,%r98,0fbb1acdc6; .loc 1 193 48 fma.rn.f32 %r41,%r98,0f3c445aa3,0f3c5f6e13; .loc 1 193 41 fma.rn.f32 %r42,%r41,%r98,0f3e013307; .loc 1 193 34 fma.rn.f32 %r43,%r42,%r98,0f3d931ae7; .loc 1 193 27 fma.rn.f32 %r44,%r43,%r98,0f3f0a5785; .loc 1 193 20 fma.rn.f32 %r45,%r44,%r98,0f3dd9f331; .loc 1 193 8 fma.rn.f32 %r100,%r45,%r98,0f3f800000; .loc 1 194 8 setp.lt.s32 %r131,%r90,0; @ %r131 bra $L21; .loc 1 195 36 div.rn.f32 %r132,%r99,%r100; .loc 1 195 33 mov.f32 %r133,0f3e1ea7d4; sub.f32 %r108,%r133,%r132; bra $L14; $L21: .loc 1 197 12 div.rn.f32 %r134,%r99,%r100; .loc 1 197 5 add.f32 %r135,%r134,0f3f58560b; .loc 1 197 26 add.f32 %r108,%r135,0f3f800000; bra $L14; $L20: .loc 1 200 5 setp.gt.s32 %r136,%r91,1105199103; @ %r136 bra $L22; .loc 1 201 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r109; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r138,[%value_in]; } .loc 1 202 17 mul.f32 %r139,%r138,%r138; .loc 1 202 9 rcp.rn.f32 %r94,%r139; .loc 1 203 8 setp.gt.s32 %r141,%r91,1077336940; @ %r141 bra $L23; .loc 1 205 15 fma.rn.f32 %r49,%r94,0fc11d077e,0fc2a2932b; .loc 1 205 8 fma.rn.f32 %r50,%r49,%r94,0fc3389ae7; .loc 1 204 43 fma.rn.f32 %r51,%r50,%r94,0fc322658c; .loc 1 204 36 fma.rn.f32 %r52,%r51,%r94,0fc2798057; .loc 1 204 29 fma.rn.f32 %r53,%r52,%r94,0fc128f022; .loc 1 204 22 fma.rn.f32 %r54,%r53,%r94,0fbf31a0b7; .loc 1 204 11 fma.rn.f32 %r88,%r54,%r94,0fbc21a093; .loc 1 207 22 fma.rn.f32 %r55,%r94,0fbd777f97,0f40d23f7c; .loc 1 207 15 fma.rn.f32 %r56,%r55,%r94,0f42d9451f; .loc 1 207 8 fma.rn.f32 %r57,%r56,%r94,0f43d6810b; .loc 1 206 43 fma.rn.f32 %r58,%r57,%r94,0f442158c9; .loc 1 206 36 fma.rn.f32 %r59,%r58,%r94,0f43d9486f; .loc 1 206 29 fma.rn.f32 %r60,%r59,%r94,0f4309a863; .loc 1 206 22 fma.rn.f32 %r61,%r60,%r94,0f419d35ce; .loc 1 206 11 fma.rn.f32 %r89,%r61,%r94,0f3f800000; bra $L24; $L23: .loc 1 209 8 shr.u32 %r143,%r90,31; mov.u32 %r144,%r143; .loc 1 209 14 set.u32.gt.s32 %r146,%r91,1086324735; neg.s32 %r147,%r146; mov.u32 %r145,%r147; .loc 1 209 10 cvt.u16.u8 %r171,%r144; mov.u16 %r149,%r171; cvt.u16.u8 %r171,%r145; mov.u16 %r150,%r171; and.b16 %r148,%r149,%r150; cvt.u32.u16 %r151,%r148; .loc 1 209 5 cvt.u16.u8 %r152,%r151; setp.eq.u16 %r153,%r152,0; @ %r153 bra $L25; $L27: .loc 1 209 38 mov.f32 %r108,0f40000000; bra $L14; $L25: .loc 1 211 8 fma.rn.f32 %r65,%r94,0fc3f1c275,0fc480230b; .loc 1 210 43 fma.rn.f32 %r66,%r65,%r94,0fc41f6441; .loc 1 210 36 fma.rn.f32 %r67,%r66,%r94,0fc320a2ea; .loc 1 210 29 fma.rn.f32 %r68,%r67,%r94,0fc18e104b; .loc 1 210 22 fma.rn.f32 %r69,%r68,%r94,0fbf4c9dd4; .loc 1 210 11 fma.rn.f32 %r88,%r69,%r94,0fbc21a092; .loc 1 213 15 fma.rn.f32 %r70,%r94,0fc1b38712,0f43ed43a7; .loc 1 213 8 fma.rn.f32 %r71,%r70,%r94,0f451f90ce; .loc 1 212 43 fma.rn.f32 %r72,%r71,%r94,0f4547fdbb; .loc 1 212 36 fma.rn.f32 %r73,%r72,%r94,0f44c01759; .loc 1 212 29 fma.rn.f32 %r74,%r73,%r94,0f43a2e571; .loc 1 212 22 fma.rn.f32 %r75,%r74,%r94,0f41f2b459; .loc 1 212 11 fma.rn.f32 %r89,%r75,%r94,0f3f800000; $L24: .loc 1 216 6 mov.b32 %r155,%r138; and.b32 %r154,%r155,-4096; mov.b32 %r96,%r154; .loc 1 217 27 neg.f32 %r156,%r96; .loc 1 217 12 fma.rn.f32 %r79,%r156,%r96,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r158,[%value_in]; } .loc 1 218 21 sub.f32 %r159,%r96,%r138; .loc 1 218 27 add.f32 %r160,%r138,%r96; .loc 1 218 32 div.rn.f32 %r161,%r88,%r89; .loc 1 218 4 fma.rn.f32 %r84,%r159,%r160,%r161; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r84; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r163,[%value_in]; } .loc 1 217 9 mul.f32 %r97,%r158,%r163; .loc 1 219 8 setp.le.s32 %r164,%r90,0; @ %r164 bra $L26; .loc 1 219 23 div.rn.f32 %r108,%r97,%r138; bra $L14; $L26: .loc 1 219 44 div.rn.f32 %r165,%r97,%r138; .loc 1 219 42 mov.f32 %r166,0f40000000; sub.f32 %r108,%r166,%r165; bra $L14; $L22: .loc 1 221 8 setp.le.s32 %r167,%r90,0; @ %r167 bra $L27; .loc 1 221 22 mov.u32 %r168,0; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r168; call (%value_in),__math_uflow,(%out_arg1); ld.param.f64 %r169,[%value_in]; } cvt.rn.f32.f64 %r108,%r169; $L14: .loc 1 223 1 mov.f32 %value,%r108; st.param.f32 [%value_out],%value; ret; } lib_a-sf_exp.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1304 0 0 0 644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp10f .visible .func (.param .f32 %value_out) exp10f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_exp10.c" // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp10f .visible .func (.param .f32 %value_out) exp10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r23,%ar0; .loc 1 32 10 mov.f32 %r24,0f41200000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r23; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 33 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-sf_exp2.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1322 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1344 0 0 0 644 7428 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expm1f .visible .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_expm1.c" // BEGIN GLOBAL FUNCTION DECL: __math_oflowf .extern .func (.param .f32 %value_out) __math_oflowf (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: expm1f .visible .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .u32 %r46; .reg .u32 %r50; .reg .u32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .u32 %r58; .reg .f32 %r59; .reg .u32 %r60; .reg .f32 %r61; .reg .u32 %r62; .reg .f32 %r64; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r75; .reg .f32 %r84; .reg .u32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u16 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .f32 %r111; .reg .pred %r112; .reg .f32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .f32 %r118; .reg .pred %r119; .reg .f32 %r120; .reg .f32 %r122; .reg .pred %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .pred %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .f32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .f32 %r135; .reg .f32 %r136; .reg .f32 %r137; .reg .u32 %r138; .reg .pred %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .u32 %r143; .reg .f32 %r144; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .u32 %r161; .reg .u16 %r163; mov.f32 %r92,%ar0; .loc 1 52 2 mov.b32 %r62,%r92; .loc 1 55 5 and.b32 %r60,%r62,2147483647; .loc 1 58 4 setp.le.u32 %r93,%r60,1100331075; @ %r93 bra $L2; .loc 1 59 8 setp.le.u32 %r94,%r60,2139095040; @ %r94 bra $L3; .loc 1 60 18 add.f32 %r91,%r92,%r92; bra $L1; $L3: .loc 1 61 8 setp.ne.u32 %r95,%r60,2139095040; @ %r95 bra $L5; .loc 1 62 21 setp.lt.s32 %r96,%r62,0; selp.f32 %r91,0fbf800000,%r92,%r96; bra $L1; $L5: .loc 1 63 13 not.b32 %r98,%r62; shr.u32 %r99,%r98,31; mov.u32 %r100,%r99; .loc 1 63 24 set.u32.gt.u32 %r102,%r60,1118925335; neg.s32 %r103,%r102; mov.u32 %r101,%r103; .loc 1 63 18 cvt.u16.u8 %r163,%r100; mov.u16 %r105,%r163; cvt.u16.u8 %r163,%r101; mov.u16 %r106,%r163; and.b16 %r104,%r105,%r106; cvt.u32.u16 %r107,%r104; .loc 1 63 8 cvt.u16.u8 %r108,%r107; setp.eq.u16 %r109,%r108,0; @ %r109 bra $L6; .loc 1 64 10 mov.u32 %r110,0; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r110; call (%value_in),__math_oflowf,(%out_arg1); ld.param.f32 %r111,[%value_in]; } mov.f32 %r91,%r111; bra $L1; $L6: .loc 1 65 8 setp.ge.s32 %r112,%r62,0; @ %r112 bra $L7; .loc 1 66 7 add.f32 %r113,%r92,0f0da24260; .loc 1 66 5 setp.lt.f32 %r114,%r113,0f00000000; @ ! %r114 bra $L27; bra $L23; $L2: .loc 1 72 4 setp.le.u32 %r115,%r60,1051816472; @ %r115 bra $L9; .loc 1 73 8 setp.gt.u32 %r116,%r60,1065686417; @ %r116 bra $L10; .loc 1 74 5 setp.lt.s32 %r117,%r62,0; @ %r117 bra $L11; .loc 1 75 11 mov.f32 %r118,0f3f317180; sub.f32 %r55,%r92,%r118; .loc 1 75 42 mov.u32 %r58,1; .loc 1 75 28 mov.f32 %r56,0f3717f7d1; bra $L12; $L11: .loc 1 77 11 add.f32 %r55,%r92,0f3f317180; .loc 1 77 42 mov.u32 %r58,-1; .loc 1 77 28 mov.f32 %r56,0fb717f7d1; bra $L12; $L10: .loc 1 79 14 mul.f32 %r84,%r92,0f3fb8aa3b; .loc 1 79 37 setp.ge.s32 %r119,%r62,0; selp.f32 %r59,0f3f000000,0fbf000000,%r119; $L13: .loc 1 79 16 add.f32 %r120,%r59,%r84; .loc 1 79 6 cvt.rzi.s32.f32 %r58,%r120; .loc 1 80 6 cvt.rn.f32.s32 %r64,%r58; .loc 1 81 6 fma.rn.f32 %r55,%r64,0fbf317180,%r92; .loc 1 82 6 mul.f32 %r56,%r64,0f3717f7d1; $L12: .loc 1 84 9 sub.f32 %r92,%r55,%r56; .loc 1 85 14 sub.f32 %r122,%r55,%r92; .loc 1 85 9 sub.f32 %r57,%r122,%r56; bra $L14; $L9: .loc 1 87 9 setp.gt.u32 %r123,%r60,855638015; @ %r123 bra $L25; .loc 1 88 8 add.f32 %r61,%r92,0f7149f2ca; .loc 1 89 19 sub.f32 %r124,%r61,%r61; .loc 1 89 15 sub.f32 %r91,%r92,%r124; bra $L1; $L25: .loc 1 91 9 mov.u32 %r58,0; $L14: .loc 1 94 6 mul.f32 %r67,%r92,0f3f000000; .loc 1 95 6 mul.f32 %r68,%r92,%r67; .loc 1 96 42 fma.rn.f32 %r30,%r68,0fb457edbb,0f36867e54; .loc 1 96 34 fma.rn.f32 %r31,%r30,%r68,0fb8a670cd; .loc 1 96 26 fma.rn.f32 %r32,%r31,%r68,0f3ad00d01; .loc 1 96 18 fma.rn.f32 %r33,%r32,%r68,0fbd088889; .loc 1 96 5 fma.rn.f32 %r69,%r33,%r68,0f3f800000; .loc 1 97 5 neg.f32 %r125,%r67; fma.rn.f32 %r70,%r125,%r69,0f40400000; .loc 1 98 15 sub.f32 %r34,%r69,%r70; .loc 1 98 31 neg.f32 %r126,%r92; fma.rn.f32 %r35,%r126,%r70,0f40c00000; .loc 1 98 18 div.rn.f32 %r127,%r34,%r35; .loc 1 98 5 mul.f32 %r71,%r127,%r68; .loc 1 99 4 setp.ne.u32 %r128,%r58,0; @ %r128 bra $L15; .loc 1 99 26 neg.f32 %r129,%r68; fma.rn.f32 %r37,%r92,%r71,%r129; .loc 1 99 20 sub.f32 %r91,%r92,%r37; bra $L1; $L15: .loc 1 101 16 sub.f32 %r38,%r71,%r57; .loc 1 101 9 neg.f32 %r130,%r57; fma.rn.f32 %r72,%r38,%r92,%r130; .loc 1 102 8 sub.f32 %r73,%r72,%r68; .loc 1 103 8 setp.ne.u32 %r131,%r58,-1; @ %r131 bra $L16; .loc 1 103 37 sub.f32 %r132,%r92,%r73; .loc 1 103 40 fma.rn.f32 %r91,%r132,0f3f000000,0fbf000000; bra $L1; $L16: .loc 1 104 14 setp.ne.u32 %r133,%r58,1; @ %r133 bra $L17; .loc 1 105 12 setp.lt.f32 %r134,%r92,0fbe800000; @ ! %r134 bra $L28; .loc 1 105 55 add.f32 %r135,%r92,0f3f000000; .loc 1 105 52 sub.f32 %r136,%r73,%r135; .loc 1 105 49 mul.f32 %r91,%r136,0fc0000000; bra $L1; $L28: .loc 1 106 47 sub.f32 %r137,%r92,%r73; .loc 1 106 33 fma.rn.f32 %r91,%r137,0f40000000,0f3f800000; bra $L1; $L17: .loc 1 112 3 shl.b32 %r90,%r58,23; .loc 1 108 18 add.u32 %r138,%r58,1; .loc 1 108 9 setp.le.u32 %r139,%r138,57; @ %r139 bra $L20; .loc 1 110 20 sub.f32 %r140,%r73,%r92; .loc 1 110 12 mov.f32 %r142,0f3f800000; sub.f32 %r141,%r142,%r140; .loc 1 112 3 mov.b32 %r143,%r141; add.u32 %r46,%r90,%r143; .loc 1 113 18 mov.b32 %r144,%r46; sub.f32 %r91,%r144,%r142; bra $L1; $L20: .loc 1 116 8 setp.gt.s32 %r146,%r58,22; @ %r146 bra $L21; .loc 1 118 10 mov.u32 %r148,16777216; shr.s32 %r147,%r148,%r58; mov.u32 %r150,1065353216; sub.u32 %r149,%r150,%r147; .loc 1 119 18 sub.f32 %r151,%r73,%r92; .loc 1 119 12 mov.b32 %r153,%r149; sub.f32 %r152,%r153,%r151; .loc 1 121 3 mov.b32 %r154,%r152; add.u32 %r50,%r90,%r154; mov.b32 %r91,%r50; bra $L1; $L21: .loc 1 124 3 mov.u32 %r156,127; sub.u32 %r155,%r156,%r58; shl.b32 %r157,%r155,23; .loc 1 125 18 mov.b32 %r159,%r157; add.f32 %r158,%r73,%r159; .loc 1 125 12 sub.f32 %r75,%r92,%r158; .loc 1 126 12 add.f32 %r160,%r75,0f3f800000; .loc 1 128 3 mov.b32 %r161,%r160; add.u32 %r54,%r90,%r161; mov.b32 %r91,%r54; bra $L1; $L23: .loc 1 62 21 mov.f32 %r91,0fbf800000; bra $L1; $L7: .loc 1 79 14 mul.f32 %r84,%r92,0f3fb8aa3b; .loc 1 79 37 mov.f32 %r59,0f3f000000; bra $L13; $L27: .loc 1 79 14 mul.f32 %r84,%r92,0f3fb8aa3b; .loc 1 79 37 mov.f32 %r59,0fbf000000; bra $L13; $L1: .loc 1 132 1 mov.f32 %value,%r91; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fabs.o/0 0 0 644 623 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fabsf .visible .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_fabs.c" // BEGIN GLOBAL FUNCTION DEF: fabsf .visible .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .f32 %r25; .reg .u32 %r26; mov.f32 %r25,%ar0; .loc 1 31 2 mov.b32 %r26,%r25; and.b32 %r22,%r26,2147483647; .loc 1 32 16 mov.b32 %value,%r22; .loc 1 33 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_fdim.o/0 0 0 644 1475 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fdimf .visible .func (.param .f32 %value_out) fdimf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_fdim.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fdimf .visible .func (.param .f32 %value_out) fdimf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r25; .reg .f32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 17 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 18 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 18 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 20 24 setp.gt.f32 %r33,%r25,%r26; @ ! %r33 bra $L10; sub.f32 %r25,%r25,%r26; bra $L2; $L4: .loc 1 18 42 mov.f32 %r25,%r26; bra $L2; $L10: .loc 1 20 24 mov.f32 %r25,0f00000000; $L2: .loc 1 21 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /1362 0 0 0 644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_finite.c" // BEGIN GLOBAL FUNCTION DEF: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 10 set.u32.le.s32 %r31,%r29,2139095039; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /1381 0 0 0 644 2279 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: floorf .visible .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_floor.c" // BEGIN GLOBAL FUNCTION DEF: floorf .visible .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; mov.f32 %r38,%ar0; .loc 1 42 2 mov.b32 %r34,%r38; .loc 1 43 5 and.b32 %r32,%r34,2147483647; .loc 1 44 10 shr.u32 %r39,%r32,23; .loc 1 44 15 add.u32 %r33,%r39,-127; .loc 1 45 4 setp.gt.s32 %r40,%r33,22; @ %r40 bra $L2; .loc 1 42 2 mov.u32 %r31,%r34; .loc 1 46 8 setp.ge.s32 %r41,%r33,0; @ %r41 bra $L3; .loc 1 47 10 add.f32 %r42,%r38,0f7149f2ca; .loc 1 47 5 setp.gt.f32 %r43,%r42,0f00000000; @ ! %r43 bra $L17; .loc 1 48 9 setp.ge.s32 %r44,%r34,0; @ %r44 bra $L10; .loc 1 49 14 setp.eq.u32 %r45,%r32,0; selp.f32 %r37,%r38,0fbf800000,%r45; bra $L1; $L3: .loc 1 53 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r33; .loc 1 54 9 and.b32 %r47,%r34,%r35; .loc 1 54 5 setp.eq.u32 %r48,%r47,0; @ %r48 bra $L12; .loc 1 55 10 add.f32 %r49,%r38,0f7149f2ca; .loc 1 55 5 setp.gt.f32 %r50,%r49,0f00000000; @ ! %r50 bra $L18; .loc 1 56 9 setp.ge.s32 %r51,%r31,0; @ %r51 bra $L8; .loc 1 56 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r33; .loc 1 56 19 add.u32 %r31,%r31,%r52; $L8: .loc 1 57 14 not.b32 %r54,%r35; .loc 1 57 10 and.b32 %r55,%r54,%r31; .loc 1 64 2 mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 61 8 setp.le.u32 %r56,%r32,2139095039; @ %r56 bra $L14; .loc 1 61 43 add.f32 %r37,%r38,%r38; bra $L1; $L17: mov.f32 %r37,%r38; bra $L1; $L10: mov.f32 %r37,0f00000000; bra $L1; $L18: mov.f32 %r37,%r38; .loc 1 65 9 bra $L1; $L12: .loc 1 54 24 mov.f32 %r37,%r38; bra $L1; $L14: mov.f32 %r37,%r38; $L1: .loc 1 66 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fma.o/ 0 0 0 644 995 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmaf .visible .func (.param .f32 %value_out) fmaf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2); .file 1 "../../../../../../newlib/libm/common/sf_fma.c" // BEGIN GLOBAL FUNCTION DEF: fmaf .visible .func (.param .f32 %value_out) fmaf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .f32 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %ar2; ld.param.f32 %ar2,[%in_ar2]; .reg .f64 %r25; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .f64 %r32; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; mov.f32 %r29,%ar2; .loc 1 27 20 cvt.f64.f32 %r30,%r27; .loc 1 27 33 cvt.f64.f32 %r31,%r28; .loc 1 27 47 cvt.f64.f32 %r32,%r29; .loc 1 27 45 fma.rn.f64 %r25,%r30,%r31,%r32; .loc 1 27 10 cvt.rn.f32.f64 %value,%r25; .loc 1 28 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_fmax.o/0 0 0 644 1468 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmaxf .visible .func (.param .f32 %value_out) fmaxf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_fmax.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fmaxf .visible .func (.param .f32 %value_out) fmaxf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 17 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 19 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 19 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 22 20 setp.gt.f32 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f32 %r24,%r26; bra $L1; $L4: .loc 1 20 12 mov.f32 %r24,%r25; bra $L1; $L5: mov.f32 %r24,%r25; $L1: .loc 1 23 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fmin.o/0 0 0 644 1468 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fminf .visible .func (.param .f32 %value_out) fminf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_fmin.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fminf .visible .func (.param .f32 %value_out) fminf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 17 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 19 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 19 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 22 20 setp.lt.f32 %r33,%r25,%r26; @ %r33 bra $L5; $L2: mov.f32 %r24,%r26; bra $L1; $L4: .loc 1 20 12 mov.f32 %r24,%r25; bra $L1; $L5: mov.f32 %r24,%r25; $L1: .loc 1 23 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /1399 0 0 0 644 1220 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u32 %r27; .reg .f32 %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; mov.f32 %r28,%ar0; .loc 1 16 9 mov.b32 %r29,%r28; and.b32 %r26,%r29,2147483647; .loc 1 16 6 setp.eq.u32 %r30,%r26,0; @ %r30 bra $L3; .loc 1 18 29 add.u32 %r31,%r26,-8388608; .loc 1 18 11 setp.le.u32 %r32,%r31,2130706431; @ %r32 bra $L4; .loc 1 21 29 add.u32 %r33,%r26,-1; .loc 1 21 11 setp.le.u32 %r34,%r33,8388606; @ %r34 bra $L5; .loc 1 24 14 set.u32.eq.u32 %r36,%r26,2139095040; neg.s32 %r27,%r36; bra $L1; $L3: .loc 1 17 12 mov.u32 %r27,2; bra $L1; $L4: .loc 1 20 12 mov.u32 %r27,4; bra $L1; $L5: .loc 1 23 12 mov.u32 %r27,3; $L1: .loc 1 28 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } /1422 0 0 0 644 2127 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/sf_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .f32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r62; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r30,%r38; .loc 1 34 5 and.b32 %r31,%r30,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r31,2139095039; neg.s32 %r43,%r42; mov.u32 %r41,%r43; .loc 1 36 31 set.u32.eq.u32 %r45,%r31,0; neg.s32 %r46,%r45; mov.u32 %r44,%r46; .loc 1 36 29 cvt.u16.u8 %r62,%r41; mov.u16 %r48,%r62; cvt.u16.u8 %r62,%r44; mov.u16 %r49,%r62; or.b16 %r47,%r48,%r49; cvt.u32.u16 %r50,%r47; .loc 1 36 4 cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r30,2139095040; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 38 8 mul.f32 %r55,%r38,0f4c000000; .loc 1 39 6 mov.b32 %r30,%r55; .loc 1 40 9 and.b32 %r31,%r30,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r31,23; .loc 1 43 19 add.u32 %r57,%r56,-126; .loc 1 43 8 add.u32 %r58,%r57,%r36; st.u32 [%r39],%r58; .loc 1 44 10 and.b32 %r59,%r30,-2139095041; .loc 1 44 22 or.b32 %r60,%r59,1056964608; .loc 1 45 2 mov.b32 %r37,%r60; .loc 1 46 9 bra $L1; $L4: .loc 1 36 61 mov.f32 %r37,%r38; $L1: .loc 1 47 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1440 0 0 0 644 1470 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ilogbf .visible .func (.param .u32 %value_out) ilogbf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_ilogb.c" // BEGIN GLOBAL FUNCTION DEF: ilogbf .visible .func (.param .u32 %value_out) ilogbf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r27; .reg .u32 %r28; .reg .f32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; .reg .pred %r35; .reg .pred %r36; .reg .u32 %r37; mov.f32 %r29,%ar0; .loc 1 28 2 mov.b32 %r23,%r29; .loc 1 29 5 and.b32 %r24,%r23,2147483647; .loc 1 30 4 setp.eq.u32 %r30,%r24,0; @ %r30 bra $L5; .loc 1 32 4 and.b32 %r31,%r23,2139095040; setp.ne.u32 %r32,%r31,0; @ %r32 bra $L3; .loc 1 33 23 shl.b32 %r27,%r24,8; .loc 1 33 31 setp.le.s32 %r33,%r27,0; @ %r33 bra $L6; .loc 1 33 14 mov.u32 %r28,-126; $L4: .loc 1 33 46 add.u32 %r28,%r28,-1; .loc 1 33 37 add.u32 %r27,%r27,%r27; .loc 1 33 31 setp.gt.s32 %r35,%r27,0; @ %r35 bra $L4; bra $L1; $L3: .loc 1 39 10 setp.gt.s32 %r36,%r24,2139095039; @ %r36 bra $L7; .loc 1 40 17 shr.s32 %r37,%r24,23; .loc 1 40 22 add.u32 %r28,%r37,-127; bra $L1; $L5: .loc 1 31 13 mov.u32 %r28,-2147483647; bra $L1; $L6: .loc 1 33 14 mov.u32 %r28,-126; bra $L1; $L7: .loc 1 39 44 mov.u32 %r28,2147483647; $L1: .loc 1 41 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /1458 0 0 0 644 433 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: infinityf .visible .func (.param .f32 %value_out) infinityf; .file 1 "../../../../../../newlib/libm/common/sf_infinity.c" // BEGIN GLOBAL FUNCTION DEF: infinityf .visible .func (.param .f32 %value_out) infinityf { .reg .f32 %value; .loc 1 13 9 mov.f32 %value,0f7f800000; .loc 1 14 1 st.param.f32 [%value_out],%value; ret; } /1479 0 0 0 644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 19 2 mov.b32 %r23,%r27; .loc 1 20 5 and.b32 %r29,%r23,2147483647; .loc 1 21 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 22 1 st.param.u32 [%value_out],%value; ret; } /1497 0 0 0 644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isinff.c" // BEGIN GLOBAL FUNCTION DEF: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 12 2 mov.b32 %r23,%r27; .loc 1 13 5 and.b32 %r29,%r23,2147483647; .loc 1 14 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 15 1 st.param.u32 [%value_out],%value; ret; } /1516 0 0 0 644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 30 2 mov.b32 %r23,%r27; .loc 1 31 5 and.b32 %r29,%r23,2147483647; .loc 1 32 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /1534 0 0 0 644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isnanf.c" // BEGIN GLOBAL FUNCTION DEF: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 22 2 mov.b32 %r23,%r27; .loc 1 23 5 and.b32 %r29,%r23,2147483647; .loc 1 24 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 25 1 st.param.u32 [%value_out],%value; ret; } /1553 0 0 0 644 2914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/sf_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f32 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 26 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 26 20 set.u32.eq.f32 %r37,%r32,0f00000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 26 20 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 27 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } mov.f32 %r32,%r50; .loc 1 28 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 28 20 set.u32.eq.f32 %r54,%r32,0f00000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 28 20 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 28 41 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 28 47 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 30 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } /1571 0 0 0 644 2958 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llrintf .visible .func (.param .u64 %value_out) llrintf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_llrint.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: TWO23 .const .align 4 .u32 TWO23[2] = {1258291200,3405774848 }; // BEGIN GLOBAL FUNCTION DEF: llrintf .visible .func (.param .u64 %value_out) llrintf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r22; .reg .u32 %r24; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .u32 %r40; .reg .u32 %r43; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .f32 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .f32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; mov.f32 %r49,%ar0; .loc 1 53 3 mov.b32 %r46,%r49; .loc 1 59 27 shr.u32 %r50,%r46,23; and.b32 %r24,%r50,255; .loc 1 59 34 add.u32 %r40,%r24,-127; .loc 1 61 6 setp.gt.s32 %r51,%r40,62; @ %r51 bra $L2; .loc 1 63 10 setp.ge.s32 %r52,%r40,-1; @ %r52 bra $L3; $L7: .loc 1 64 16 mov.u64 %r48,0; bra $L1; $L3: .loc 1 56 12 shr.u32 %r22,%r46,31; .loc 1 65 15 setp.le.s32 %r53,%r40,22; @ %r53 bra $L5; .loc 1 66 39 and.b32 %r54,%r46,8388607; .loc 1 66 51 or.b32 %r55,%r54,8388608; .loc 1 66 18 cvt.u64.u32 %r56,%r55; .loc 1 66 70 add.u32 %r57,%r24,-150; .loc 1 66 16 shl.b64 %r48,%r56,%r57; bra $L6; $L5: .loc 1 69 20 cvta.const.u64 %r58,TWO23; cvt.s64.s32 %r59,%r22; shl.b64 %r60,%r59,2; add.u64 %r61,%r58,%r60; ld.f32 %r30,[%r61]; .loc 1 69 25 add.f32 %r31,%r30,%r49; .loc 1 69 13 st.f32 [%frame],%r31; .loc 1 70 17 ld.f32 %r32,[%frame]; .loc 1 70 13 sub.f32 %r62,%r32,%r30; .loc 1 71 11 mov.b32 %r47,%r62; .loc 1 74 19 and.b32 %r63,%r47,2147483647; .loc 1 74 14 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L7; .loc 1 77 14 and.b32 %r43,%r47,8388607; .loc 1 78 14 or.b32 %r65,%r43,8388608; .loc 1 76 21 shr.u32 %r66,%r47,23; .loc 1 76 28 and.b32 %r67,%r66,255; .loc 1 79 30 mov.u32 %r70,150; sub.u32 %r69,%r70,%r67; .loc 1 79 23 shr.u32 %r71,%r65,%r69; .loc 1 79 18 cvt.u64.u32 %r48,%r71; bra $L6; $L2: .loc 1 84 14 cvt.rzi.s64.f32 %r48,%r49; bra $L1; $L6: .loc 1 86 23 setp.eq.u32 %r72,%r22,0; @ %r72 bra $L1; neg.s64 %r48,%r48; $L1: .loc 1 87 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } /1590 0 0 0 644 1922 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llroundf .visible .func (.param .u64 %value_out) llroundf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_llround.c" // BEGIN GLOBAL FUNCTION DEF: llroundf .visible .func (.param .u64 %value_out) llroundf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r41; .reg .f32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; mov.f32 %r42,%ar0; .loc 1 23 3 mov.b32 %r37,%r42; .loc 1 24 41 shr.u32 %r43,%r37,23; and.b32 %r23,%r43,255; .loc 1 24 48 add.u32 %r35,%r23,-127; .loc 1 25 37 setp.lt.s32 %r44,%r37,0; selp.u32 %r34,-1,1,%r44; .loc 1 29 6 setp.gt.s32 %r45,%r35,62; @ %r45 bra $L3; .loc 1 31 10 setp.ge.s32 %r46,%r35,0; @ %r46 bra $L4; .loc 1 32 43 setp.eq.u32 %r47,%r35,-1; selp.u32 %r34,%r34,0,%r47; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 26 5 and.b32 %r38,%r37,8388607; .loc 1 27 5 or.b32 %r39,%r38,8388608; .loc 1 33 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L7; .loc 1 34 18 cvt.u64.u32 %r49,%r39; .loc 1 34 58 add.u32 %r50,%r23,-150; .loc 1 34 16 shl.b64 %r33,%r49,%r50; bra $L8; $L7: .loc 1 37 25 mov.u32 %r52,4194304; shr.s32 %r51,%r52,%r35; .loc 1 37 13 add.u32 %r53,%r51,%r39; .loc 1 38 29 mov.u32 %r55,23; sub.u32 %r54,%r55,%r35; .loc 1 38 22 shr.u32 %r56,%r53,%r54; .loc 1 38 18 cvt.u64.u32 %r33,%r56; bra $L8; $L3: .loc 1 42 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L8: .loc 1 44 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; $L1: .loc 1 45 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } lib_a-sf_log.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1610 0 0 0 644 6824 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log1pf .visible .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_log1p.c" // BEGIN GLOBAL FUNCTION DECL: __math_divzerof .extern .func (.param .f32 %value_out) __math_divzerof (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __math_invalidf .extern .func (.param .f32 %value_out) __math_invalidf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log1pf .visible .func (.param .f32 %value_out) log1pf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .f32 %r45; .reg .f32 %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r54; .reg .f32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f32 %r60; .reg .u32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r83; .reg .f32 %r84; .reg .f32 %r86; .reg .pred %r87; .reg .f32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .f32 %r101; .reg .u32 %r103; .reg .pred %r104; .reg .f32 %r105; .reg .pred %r106; .reg .u32 %r107; .reg .pred %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .pred %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .u16 %r136; mov.f32 %r78,%ar0; .loc 1 51 2 mov.b32 %r58,%r78; .loc 1 55 5 setp.le.s32 %r79,%r58,2139095039; @ %r79 bra $L2; .loc 1 55 40 add.f32 %r77,%r78,%r78; bra $L1; $L2: .loc 1 56 5 setp.gt.s32 %r80,%r58,1054086102; @ %r80 bra $L4; .loc 1 52 5 and.b32 %r61,%r58,2147483647; .loc 1 57 8 setp.le.s32 %r81,%r61,1065353215; @ %r81 bra $L5; .loc 1 58 5 setp.neu.f32 %r82,%r78,0fbf800000; @ %r82 bra $L6; .loc 1 59 14 mov.u32 %r83,1; { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r83; call (%value_in),__math_divzerof,(%out_arg1); ld.param.f32 %r84,[%value_in]; } mov.f32 %r77,%r84; bra $L1; $L6: .loc 1 61 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r78; call (%value_in),__math_invalidf,(%out_arg1); ld.param.f32 %r86,[%value_in]; } mov.f32 %r77,%r86; bra $L1; $L5: .loc 1 63 8 setp.gt.s32 %r87,%r61,822083583; @ %r87 bra $L7; .loc 1 64 11 add.f32 %r88,%r78,0f4c000000; .loc 1 64 5 set.u32.gt.f32 %r90,%r88,0f00000000; neg.s32 %r91,%r90; mov.u32 %r89,%r91; .loc 1 65 14 set.u32.le.s32 %r93,%r61,612368383; neg.s32 %r94,%r93; mov.u32 %r92,%r94; cvt.u16.u8 %r136,%r89; mov.u16 %r96,%r136; cvt.u16.u8 %r136,%r92; mov.u16 %r97,%r136; and.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L19; .loc 1 68 19 mul.f32 %r101,%r78,%r78; .loc 1 68 16 fma.rn.f32 %r77,%r101,0fbf000000,%r78; bra $L1; $L7: .loc 1 70 13 add.u32 %r103,%r58,1097468384; .loc 1 70 8 setp.le.u32 %r104,%r103,1097468384; @ %r104 bra $L8; .loc 1 97 17 mul.f32 %r105,%r78,0f3f000000; .loc 1 97 6 mul.f32 %r63,%r105,%r78; .loc 1 71 4 mov.u32 %r57,0; bra $L9; $L4: .loc 1 74 8 setp.gt.s32 %r106,%r58,1509949439; @ %r106 bra $L10; $L8: .loc 1 75 6 add.f32 %r62,%r78,0f3f800000; .loc 1 76 3 mov.b32 %r58,%r62; .loc 1 77 18 shr.s32 %r107,%r58,23; .loc 1 77 13 add.u32 %r57,%r107,-127; .loc 1 79 38 setp.le.s32 %r108,%r57,0; @ %r108 bra $L11; .loc 1 79 35 sub.f32 %r109,%r62,%r78; .loc 1 79 38 mov.f32 %r110,0f3f800000; sub.f32 %r60,%r110,%r109; bra $L12; $L11: .loc 1 79 43 mov.f32 %r112,0f3f800000; sub.f32 %r111,%r62,%r112; .loc 1 79 38 sub.f32 %r60,%r78,%r111; $L12: .loc 1 80 5 div.rn.f32 %r54,%r60,%r62; bra $L13; $L10: .loc 1 84 18 shr.s32 %r113,%r58,23; .loc 1 84 13 add.u32 %r57,%r113,-127; .loc 1 85 6 mov.f32 %r54,0f00000000; $L13: .loc 1 87 9 and.b32 %r59,%r58,8388607; .loc 1 88 8 setp.gt.s32 %r114,%r59,3474678; @ %r114 bra $L14; .loc 1 89 10 or.b32 %r115,%r59,1065353216; mov.b32 %r55,%r115; bra $L15; $L14: .loc 1 91 12 add.u32 %r57,%r57,1; .loc 1 92 3 or.b32 %r116,%r59,1056964608; mov.b32 %r55,%r116; .loc 1 93 26 mov.u32 %r117,8388608; sub.u32 %r32,%r117,%r59; .loc 1 93 13 shr.s32 %r59,%r32,2; $L15: .loc 1 95 8 mov.f32 %r118,0f3f800000; sub.f32 %r78,%r55,%r118; .loc 1 97 17 mul.f32 %r119,%r78,0f3f000000; .loc 1 97 6 mul.f32 %r63,%r119,%r78; .loc 1 98 4 setp.ne.u32 %r120,%r59,0; @ %r120 bra $L9; .loc 1 99 14 setp.neu.f32 %r121,%r78,0f00000000; @ %r121 bra $L16; .loc 1 99 28 setp.eq.u32 %r122,%r57,0; @ %r122 bra $L20; .loc 1 100 36 cvt.rn.f32.s32 %r34,%r57; .loc 1 100 32 fma.rn.f32 %r67,%r34,0f3717f7d1,%r54; .loc 1 100 60 fma.rn.f32 %r77,%r34,0f3f317180,%r67; bra $L1; $L16: .loc 1 101 26 fma.rn.f32 %r35,%r78,0fbf2aaaab,0f3f800000; .loc 1 101 8 mul.f32 %r66,%r35,%r63; .loc 1 102 8 setp.ne.u32 %r124,%r57,0; @ %r124 bra $L17; .loc 1 102 23 sub.f32 %r77,%r78,%r66; bra $L1; $L17: .loc 1 103 20 cvt.rn.f32.s32 %r36,%r57; .loc 1 103 41 fma.rn.f32 %r37,%r36,0f3717f7d1,%r54; .loc 1 103 31 sub.f32 %r125,%r66,%r37; .loc 1 103 45 sub.f32 %r126,%r125,%r78; .loc 1 103 27 neg.f32 %r127,%r126; fma.rn.f32 %r77,%r36,0f3f317180,%r127; bra $L1; $L9: .loc 1 105 20 add.f32 %r128,%r78,0f40000000; .loc 1 105 5 div.rn.f32 %r64,%r78,%r128; .loc 1 106 4 mul.f32 %r65,%r64,%r64; .loc 1 107 47 fma.rn.f32 %r41,%r65,0f3e178897,0f3e1cd04f; .loc 1 107 40 fma.rn.f32 %r42,%r41,%r65,0f3e3a3325; .loc 1 107 33 fma.rn.f32 %r43,%r42,%r65,0f3e638e29; .loc 1 107 26 fma.rn.f32 %r44,%r43,%r65,0f3e924925; .loc 1 107 19 fma.rn.f32 %r45,%r44,%r65,0f3ecccccd; .loc 1 107 12 fma.rn.f32 %r46,%r45,%r65,0f3f2aaaab; .loc 1 108 33 fma.rn.f32 %r75,%r46,%r65,%r63; .loc 1 108 27 mul.f32 %r76,%r64,%r75; .loc 1 108 4 setp.ne.u32 %r129,%r57,0; @ %r129 bra $L18; .loc 1 108 25 sub.f32 %r130,%r63,%r76; .loc 1 108 19 sub.f32 %r77,%r78,%r130; bra $L1; $L18: .loc 1 109 12 cvt.rn.f32.s32 %r48,%r57; .loc 1 109 48 fma.rn.f32 %r49,%r48,0f3717f7d1,%r54; .loc 1 109 38 add.f32 %r131,%r49,%r76; .loc 1 109 26 sub.f32 %r132,%r63,%r131; .loc 1 109 53 sub.f32 %r133,%r132,%r78; .loc 1 109 19 neg.f32 %r134,%r133; fma.rn.f32 %r77,%r48,0f3f317180,%r134; bra $L1; $L19: .loc 1 66 14 mov.f32 %r77,%r78; bra $L1; $L20: .loc 1 99 42 mov.f32 %r77,0f00000000; $L1: .loc 1 110 1 mov.f32 %value,%r77; st.param.f32 [%value_out],%value; ret; } lib_a-sf_log2.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1628 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1650 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sf_logb.o/0 0 0 644 1768 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: logbf .visible .func (.param .f32 %value_out) logbf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_logb.c" // BEGIN GLOBAL FUNCTION DEF: logbf .visible .func (.param .f32 %value_out) logbf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r28; .reg .u32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .pred %r32; .reg .f32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r41; .reg .u32 %r42; mov.f32 %r31,%ar0; .loc 1 33 2 mov.b32 %r24,%r31; .loc 1 34 5 and.b32 %r25,%r24,2147483647; .loc 1 35 4 setp.ne.u32 %r32,%r25,0; @ %r32 bra $L2; .loc 1 39 13 mov.f32 %r33,0fbf800000; div.rn.f32 %r30,%r33,0f00000000; bra $L1; $L2: .loc 1 41 4 and.b32 %r34,%r24,2139095040; setp.ne.u32 %r35,%r34,0; @ %r35 bra $L4; .loc 1 42 23 shl.b32 %r29,%r25,8; .loc 1 42 31 setp.le.s32 %r36,%r29,0; @ %r36 bra $L7; .loc 1 42 14 mov.u32 %r28,-126; $L6: .loc 1 42 46 add.u32 %r28,%r28,-1; .loc 1 42 37 add.u32 %r29,%r29,%r29; .loc 1 42 31 setp.gt.s32 %r38,%r29,0; @ %r38 bra $L6; .loc 1 43 13 cvt.rn.f32.s32 %r30,%r28; bra $L1; $L7: .loc 1 42 31 mov.f32 %r30,0fc2fc0000; .loc 1 43 13 bra $L1; $L4: .loc 1 45 10 setp.eq.u32 %r39,%r25,2139095040; @ %r39 bra $L8; .loc 1 46 10 setp.gt.s32 %r40,%r25,2139095040; @ %r40 bra $L9; .loc 1 47 26 shr.s32 %r41,%r25,23; .loc 1 47 31 add.u32 %r42,%r41,-127; .loc 1 47 14 cvt.rn.f32.s32 %r30,%r42; bra $L1; $L8: .loc 1 45 45 mov.f32 %r30,0f7f800000; bra $L1; $L9: .loc 1 46 40 mov.f32 %r30,%r31; $L1: .loc 1 48 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /1671 0 0 0 644 2993 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lrintf .visible .func (.param .u64 %value_out) lrintf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_lrint.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: TWO23 .const .align 4 .u32 TWO23[2] = {1258291200,3405774848 }; // BEGIN GLOBAL FUNCTION DEF: lrintf .visible .func (.param .u64 %value_out) lrintf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r22; .reg .u32 %r24; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r32; .reg .u32 %r41; .reg .u32 %r44; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .f32 %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .f32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .pred %r74; mov.f32 %r50,%ar0; .loc 1 53 3 mov.b32 %r47,%r50; .loc 1 59 27 shr.u32 %r51,%r47,23; and.b32 %r24,%r51,255; .loc 1 59 34 add.u32 %r41,%r24,-127; .loc 1 61 6 setp.gt.s32 %r52,%r41,62; @ %r52 bra $L2; .loc 1 63 10 setp.ge.s32 %r53,%r41,-1; @ %r53 bra $L3; $L7: .loc 1 64 16 mov.u64 %r49,0; bra $L1; $L3: .loc 1 56 12 shr.u32 %r22,%r47,31; .loc 1 65 15 setp.le.s32 %r54,%r41,22; @ %r54 bra $L5; .loc 1 66 34 and.b32 %r55,%r47,8388607; .loc 1 66 46 or.b32 %r56,%r55,8388608; .loc 1 66 18 cvt.u64.u32 %r57,%r56; .loc 1 66 65 add.u32 %r58,%r24,-150; .loc 1 66 16 shl.b64 %r49,%r57,%r58; bra $L6; $L5: .loc 1 69 20 cvta.const.u64 %r59,TWO23; cvt.s64.s32 %r60,%r22; shl.b64 %r61,%r60,2; add.u64 %r62,%r59,%r61; ld.f32 %r30,[%r62]; .loc 1 69 25 add.f32 %r31,%r30,%r50; .loc 1 69 13 st.f32 [%frame],%r31; .loc 1 70 17 ld.f32 %r32,[%frame]; .loc 1 70 13 sub.f32 %r63,%r32,%r30; .loc 1 71 11 mov.b32 %r48,%r63; .loc 1 74 19 cvt.u64.u32 %r64,%r48; and.b64 %r65,%r64,-2147483649; .loc 1 74 14 setp.eq.u64 %r66,%r65,0; @ %r66 bra $L7; .loc 1 77 14 and.b32 %r44,%r48,8388607; .loc 1 78 14 or.b32 %r67,%r44,8388608; .loc 1 76 21 shr.u32 %r68,%r48,23; .loc 1 76 28 and.b32 %r69,%r68,255; .loc 1 79 30 mov.u32 %r72,150; sub.u32 %r71,%r72,%r69; .loc 1 79 23 shr.u32 %r73,%r67,%r71; .loc 1 79 18 cvt.u64.u32 %r49,%r73; bra $L6; $L2: .loc 1 84 14 cvt.rzi.s64.f32 %r49,%r50; bra $L1; $L6: .loc 1 86 23 setp.eq.u32 %r74,%r22,0; @ %r74 bra $L1; neg.s64 %r49,%r49; $L1: .loc 1 87 1 mov.u64 %value,%r49; st.param.u64 [%value_out],%value; ret; } /1689 0 0 0 644 1917 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lroundf .visible .func (.param .u64 %value_out) lroundf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_lround.c" // BEGIN GLOBAL FUNCTION DEF: lroundf .visible .func (.param .u64 %value_out) lroundf (.param .f32 %in_ar0) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r41; .reg .f32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; mov.f32 %r42,%ar0; .loc 1 26 3 mov.b32 %r37,%r42; .loc 1 27 41 shr.u32 %r43,%r37,23; and.b32 %r23,%r43,255; .loc 1 27 48 add.u32 %r35,%r23,-127; .loc 1 28 37 setp.lt.s32 %r44,%r37,0; selp.u32 %r34,-1,1,%r44; .loc 1 32 6 setp.gt.s32 %r45,%r35,62; @ %r45 bra $L3; .loc 1 34 10 setp.ge.s32 %r46,%r35,0; @ %r46 bra $L4; .loc 1 35 43 setp.eq.u32 %r47,%r35,-1; selp.u32 %r34,%r34,0,%r47; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 29 5 and.b32 %r38,%r37,8388607; .loc 1 30 5 or.b32 %r39,%r38,8388608; .loc 1 36 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L7; .loc 1 37 18 cvt.u64.u32 %r49,%r39; .loc 1 37 53 add.u32 %r50,%r23,-150; .loc 1 37 16 shl.b64 %r33,%r49,%r50; bra $L8; $L7: .loc 1 40 25 mov.u32 %r52,4194304; shr.s32 %r51,%r52,%r35; .loc 1 40 13 add.u32 %r53,%r51,%r39; .loc 1 41 29 mov.u32 %r55,23; sub.u32 %r54,%r55,%r35; .loc 1 41 22 shr.u32 %r56,%r53,%r54; .loc 1 41 18 cvt.u64.u32 %r33,%r56; bra $L8; $L3: .loc 1 45 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L8: .loc 1 47 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; $L1: .loc 1 48 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } lib_a-sf_modf.o/0 0 0 644 2246 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r31; .reg .u32 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; mov.f32 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 27 2 mov.b32 %r33,%r39; .loc 1 28 11 shr.s32 %r41,%r33,23; .loc 1 28 16 and.b32 %r42,%r41,255; .loc 1 28 5 add.u32 %r36,%r42,-127; .loc 1 29 4 setp.gt.s32 %r43,%r36,22; @ %r43 bra $L2; .loc 1 30 8 setp.ge.s32 %r44,%r36,0; @ %r44 bra $L3; .loc 1 31 10 and.b32 %r45,%r33,-2147483648; st.u32 [%r40],%r45; .loc 1 32 10 mov.f32 %r38,%r39; bra $L1; $L3: .loc 1 34 19 mov.u32 %r46,8388607; shr.s32 %r37,%r46,%r36; .loc 1 35 9 and.b32 %r47,%r33,%r37; .loc 1 35 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 36 13 st.f32 [%r40],%r39; .loc 1 37 7 and.b32 %r49,%r33,-2147483648; mov.b32 %r38,%r49; .loc 1 38 14 bra $L1; $L5: .loc 1 40 7 not.b32 %r50,%r37; and.b32 %r51,%r50,%r33; mov.b32 %r31,%r51; st.f32 [%r40],%r31; .loc 1 41 16 sub.f32 %r38,%r39,%r31; bra $L1; $L2: .loc 1 45 12 st.f32 [%r40],%r39; .loc 1 46 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 46 9 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L6; .loc 1 46 54 add.f32 %r38,%r39,%r39; .loc 1 46 51 st.f32 [%r40],%r38; bra $L1; $L6: .loc 1 47 6 and.b32 %r55,%r33,-2147483648; mov.b32 %r38,%r55; $L1: .loc 1 50 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 0 0 0 644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_nan.c" // BEGIN GLOBAL FUNCTION DEF: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 17 9 mov.f32 %value,0f7fc00000; .loc 1 18 1 st.param.f32 [%value_out],%value; ret; } /1708 0 0 0 644 826 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nearbyintf .visible .func (.param .f32 %value_out) nearbyintf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_nearbyint.c" // BEGIN GLOBAL FUNCTION DECL: rintf .extern .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: nearbyintf .visible .func (.param .f32 %value_out) nearbyintf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r25; mov.f32 %r23,%ar0; .loc 1 23 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; call (%value_in),rintf,(%out_arg1); ld.param.f32 %r25,[%value_in]; } .loc 1 24 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /1730 0 0 0 644 3142 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nextafterf .visible .func (.param .f32 %value_out) nextafterf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_nextafter.c" // BEGIN GLOBAL FUNCTION DEF: nextafterf .visible .func (.param .f32 %value_out) nextafterf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .u32 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u16 %r78; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; .loc 1 27 2 mov.b32 %r31,%r40; .loc 1 28 2 mov.b32 %r37,%r41; .loc 1 29 5 and.b32 %r33,%r31,2147483647; .loc 1 30 5 and.b32 %r42,%r37,2147483647; .loc 1 33 5 set.u32.gt.s32 %r44,%r42,2139095040; neg.s32 %r45,%r44; mov.u32 %r43,%r45; .loc 1 32 5 set.u32.gt.s32 %r47,%r33,2139095040; neg.s32 %r48,%r47; mov.u32 %r46,%r48; .loc 1 32 26 cvt.u16.u8 %r78,%r43; mov.u16 %r50,%r78; cvt.u16.u8 %r78,%r46; mov.u16 %r51,%r78; or.b16 %r49,%r50,%r51; cvt.u32.u16 %r52,%r49; .loc 1 32 4 cvt.u16.u8 %r53,%r52; setp.eq.u16 %r54,%r53,0; @ %r54 bra $L2; .loc 1 34 13 add.f32 %r39,%r40,%r41; bra $L1; $L2: .loc 1 35 4 setp.eq.f32 %r55,%r40,%r41; @ %r55 bra $L10; .loc 1 36 4 setp.ne.u32 %r56,%r33,0; @ %r56 bra $L4; .loc 1 37 6 and.b32 %r57,%r37,-2147483648; or.b32 %r58,%r57,1; mov.b32 %r38,%r58; .loc 1 38 8 mul.f32 %r39,%r38,%r38; .loc 1 39 8 setp.eq.f32 %r59,%r38,%r39; .loc 1 39 37 selp.f32 %r39,%r39,%r38,%r59; bra $L1; $L4: .loc 1 41 4 setp.lt.s32 %r60,%r31,0; @ %r60 bra $L5; .loc 1 42 8 setp.le.s32 %r61,%r31,%r37; @ %r61 bra $L6; .loc 1 43 6 add.u32 %r30,%r31,-1; bra $L7; $L6: .loc 1 45 6 add.u32 %r30,%r31,1; bra $L7; $L5: .loc 1 48 11 not.b32 %r63,%r37; shr.u32 %r64,%r63,31; mov.u32 %r65,%r64; .loc 1 48 18 set.u32.gt.s32 %r67,%r31,%r37; neg.s32 %r68,%r67; mov.u32 %r66,%r68; .loc 1 48 14 cvt.u16.u8 %r78,%r65; mov.u16 %r70,%r78; cvt.u16.u8 %r78,%r66; mov.u16 %r71,%r78; or.b16 %r69,%r70,%r71; cvt.u32.u16 %r72,%r69; .loc 1 48 8 cvt.u16.u8 %r73,%r72; setp.eq.u16 %r74,%r73,0; @ %r74 bra $L8; .loc 1 49 6 add.u32 %r30,%r31,-1; bra $L9; $L8: .loc 1 51 6 add.u32 %r30,%r31,1; $L7: .loc 1 54 5 and.b32 %r75,%r30,2139095040; .loc 1 55 4 setp.ne.u32 %r76,%r75,2139095040; @ %r76 bra $L9; .loc 1 55 31 add.f32 %r39,%r40,%r40; bra $L1; $L9: .loc 1 59 10 mov.b32 %r39,%r30; bra $L1; $L10: .loc 1 35 18 mov.f32 %r39,%r40; $L1: .loc 1 65 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-sf_pow.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1752 0 0 0 644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: pow10f .visible .func (.param .f32 %value_out) pow10f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_pow10.c" // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: pow10f .visible .func (.param .f32 %value_out) pow10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r23,%ar0; .loc 1 32 10 mov.f32 %r24,0f41200000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r23; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 33 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } /1770 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1796 0 0 0 644 8261 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remquof .visible .func (.param .f32 %value_out) remquof (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/common/sf_remquo.c" // BEGIN VAR DEF: Zero .const .align 4 .u32 Zero[2] = {0,2147483648 }; // BEGIN GLOBAL FUNCTION DEF: remquof .visible .func (.param .f32 %value_out) remquof (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .f32 %r26; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r35; .reg .f32 %r38; .reg .f32 %r40; .reg .u32 %r42; .reg .f32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .f32 %r71; .reg .u32 %r72; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u32 %r97; .reg .u16 %r98; .reg .pred %r99; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .u32 %r103; .reg .u64 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r119; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .u64 %r137; .reg .u32 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .pred %r143; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .u32 %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .u32 %r156; .reg .pred %r157; .reg .u32 %r158; .reg .pred %r159; .reg .pred %r161; .reg .u16 %r162; mov.f32 %r78,%ar0; mov.f32 %r79,%ar1; mov.u64 %r80,%ar2; .loc 1 42 2 mov.b32 %r53,%r78; .loc 1 43 2 mov.b32 %r54,%r79; .loc 1 46 5 and.b32 %r46,%r53,2147483647; .loc 1 47 5 and.b32 %r56,%r54,2147483647; .loc 1 50 7 set.u32.eq.u32 %r82,%r56,0; neg.s32 %r83,%r82; mov.u32 %r81,%r83; .loc 1 50 26 set.u32.gt.s32 %r85,%r56,2139095040; neg.s32 %r86,%r85; mov.u32 %r84,%r86; cvt.u16.u8 %r162,%r81; mov.u16 %r88,%r162; cvt.u16.u8 %r162,%r84; mov.u16 %r89,%r162; or.b16 %r87,%r88,%r89; cvt.u32.u16 %r90,%r87; .loc 1 50 14 set.u32.gt.s32 %r92,%r46,2139095039; neg.s32 %r93,%r92; mov.u32 %r91,%r93; .loc 1 50 26 cvt.u16.u8 %r162,%r90; mov.u16 %r95,%r162; cvt.u16.u8 %r162,%r91; mov.u16 %r96,%r162; or.b16 %r94,%r95,%r96; cvt.u32.u16 %r97,%r94; cvt.u16.u8 %r98,%r97; setp.eq.u16 %r99,%r98,0; @ %r99 bra $L2; .loc 1 51 11 mov.u32 %r100,0; st.u32 [%r80],%r100; .loc 1 52 15 mul.f32 %r26,%r78,%r79; .loc 1 52 18 div.rn.f32 %r77,%r26,%r26; bra $L1; $L2: .loc 1 44 12 xor.b32 %r23,%r53,%r54; .loc 1 45 5 and.b32 %r49,%r53,-2147483648; .loc 1 54 4 setp.lt.s32 %r101,%r46,%r56; @ %r101 bra $L34; .loc 1 57 11 setp.ne.u32 %r102,%r46,%r56; @ %r102 bra $L5; .loc 1 58 11 mov.u32 %r103,1; st.u32 [%r80],%r103; .loc 1 59 17 cvta.const.u64 %r104,Zero; .loc 1 59 32 shr.u32 %r105,%r49,31; .loc 1 59 17 cvt.u64.u32 %r106,%r105; shl.b64 %r107,%r106,2; add.u64 %r108,%r104,%r107; ld.f32 %r77,[%r108]; bra $L1; $L5: .loc 1 63 4 and.b32 %r109,%r53,2139095040; setp.ne.u32 %r110,%r109,0; @ %r110 bra $L6; .loc 1 64 22 shl.b32 %r59,%r46,8; .loc 1 64 33 setp.le.s32 %r111,%r59,0; @ %r111 bra $L35; .loc 1 64 14 mov.u32 %r58,-126; $L8: .loc 1 64 47 add.u32 %r58,%r58,-1; .loc 1 64 38 add.u32 %r59,%r59,%r59; .loc 1 64 33 setp.gt.s32 %r113,%r59,0; @ %r113 bra $L8; bra $L7; $L6: .loc 1 65 17 shr.s32 %r114,%r46,23; .loc 1 65 12 add.u32 %r58,%r114,-127; bra $L7; $L35: .loc 1 64 14 mov.u32 %r58,-126; $L7: .loc 1 68 4 and.b32 %r115,%r54,2139095040; setp.ne.u32 %r116,%r115,0; @ %r116 bra $L9; .loc 1 69 22 shl.b32 %r61,%r56,8; .loc 1 69 33 setp.le.s32 %r117,%r61,0; @ %r117 bra $L36; .loc 1 69 14 mov.u32 %r68,-126; $L11: .loc 1 69 47 add.u32 %r68,%r68,-1; .loc 1 69 38 add.u32 %r61,%r61,%r61; .loc 1 69 33 setp.gt.s32 %r119,%r61,0; @ %r119 bra $L11; bra $L10; $L9: .loc 1 70 17 shr.s32 %r120,%r56,23; .loc 1 70 12 add.u32 %r68,%r120,-127; bra $L10; $L36: .loc 1 69 14 mov.u32 %r68,-126; $L10: .loc 1 73 4 setp.lt.s32 %r121,%r58,-126; @ %r121 bra $L12; .loc 1 74 33 and.b32 %r30,%r53,8388607; .loc 1 74 9 or.b32 %r45,%r30,8388608; bra $L13; $L12: .loc 1 76 8 mov.u32 %r123,-126; sub.u32 %r122,%r123,%r58; .loc 1 77 9 shl.b32 %r45,%r46,%r122; $L13: .loc 1 79 4 setp.lt.s32 %r161,%r68,-126; @ %r161 bra $L14; .loc 1 80 33 and.b32 %r31,%r54,8388607; .loc 1 80 9 or.b32 %r47,%r31,8388608; bra $L15; $L14: .loc 1 82 8 mov.u32 %r126,-126; sub.u32 %r125,%r126,%r68; .loc 1 83 9 shl.b32 %r47,%r56,%r125; $L15: .loc 1 87 4 sub.u32 %r64,%r58,%r68; .loc 1 89 9 add.u32 %r65,%r64,-1; .loc 1 89 8 setp.eq.u32 %r127,%r64,0; @ %r127 bra $L37; .loc 1 88 4 mov.u32 %r50,0; $L19: .loc 1 90 8 sub.u32 %r69,%r45,%r47; .loc 1 91 8 setp.ge.s32 %r128,%r69,0; @ %r128 bra $L17; .loc 1 91 18 add.u32 %r45,%r45,%r45; bra $L18; $L17: .loc 1 92 15 add.u32 %r45,%r69,%r69; .loc 1 92 27 add.u32 %r50,%r50,1; $L18: .loc 1 93 8 add.u32 %r50,%r50,%r50; .loc 1 89 9 add.u32 %r65,%r65,-1; .loc 1 89 8 setp.ne.u32 %r132,%r65,-1; @ %r132 bra $L19; bra $L16; $L37: .loc 1 88 4 mov.u32 %r50,%r64; $L16: .loc 1 95 4 sub.u32 %r66,%r45,%r47; .loc 1 96 4 setp.lt.s32 %r133,%r66,0; @ %r133 bra $L20; .loc 1 96 20 add.u32 %r50,%r50,1; mov.u32 %r45,%r66; $L20: .loc 1 99 4 setp.eq.u32 %r134,%r45,0; @ %r134 bra $L21; .loc 1 103 10 setp.le.s32 %r135,%r45,8388607; @ %r135 bra $L22; bra $L23; $L21: .loc 1 100 23 setp.ge.s32 %r136,%r23,0; @ %r136 bra $L24; .loc 1 100 20 neg.s32 %r51,%r50; bra $L25; $L24: .loc 1 100 23 mov.u32 %r51,%r50; $L25: .loc 1 100 11 st.u32 [%r80],%r51; .loc 1 101 17 cvta.const.u64 %r137,Zero; .loc 1 101 32 shr.u32 %r138,%r49,31; .loc 1 101 17 cvt.u64.u32 %r139,%r138; shl.b64 %r140,%r139,2; add.u64 %r141,%r137,%r140; ld.f32 %r77,[%r141]; bra $L1; $L22: .loc 1 104 9 add.u32 %r45,%r45,%r45; .loc 1 105 9 add.u32 %r68,%r68,-1; .loc 1 103 10 setp.le.s32 %r143,%r45,8388607; @ %r143 bra $L22; setp.lt.s32 %r161,%r68,-126; $L23: .loc 1 107 4 @ %r161 bra $L26; .loc 1 108 15 add.u32 %r35,%r45,-8388608; .loc 1 108 32 add.u32 %r145,%r68,127; .loc 1 108 37 shl.b32 %r146,%r145,23; .loc 1 108 9 or.b32 %r46,%r146,%r35; bra $L4; $L26: .loc 1 110 8 mov.u32 %r148,-126; sub.u32 %r147,%r148,%r68; .loc 1 111 9 shr.s32 %r46,%r45,%r147; bra $L4; $L34: .loc 1 55 8 mov.u32 %r50,0; $L4: .loc 1 114 2 mov.b32 %r44,%r46; .loc 1 115 4 abs.f32 %r71,%r79; .loc 1 116 5 setp.lt.f32 %r149,%r71,0f01000000; @ ! %r149 bra $L50; .loc 1 117 11 add.f32 %r38,%r44,%r44; .loc 1 117 9 setp.gt.f32 %r150,%r38,%r71; @ %r150 bra $L29; .loc 1 117 16 setp.neu.f32 %r151,%r38,%r71; @ %r151 bra $L30; .loc 1 117 33 and.b32 %r152,%r50,1; .loc 1 117 27 setp.eq.u32 %r153,%r152,0; @ %r153 bra $L30; $L29: .loc 1 118 4 add.u32 %r50,%r50,1; .loc 1 119 4 sub.f32 %r44,%r44,%r71; bra $L30; $L50: .loc 1 121 19 mul.f32 %r40,%r71,0f3f000000; .loc 1 121 12 setp.lt.f32 %r154,%r40,%r44; @ %r154 bra $L31; .loc 1 121 22 setp.neu.f32 %r155,%r40,%r44; @ %r155 bra $L30; .loc 1 121 42 and.b32 %r156,%r50,1; .loc 1 121 36 setp.eq.u32 %r157,%r156,0; @ %r157 bra $L30; $L31: .loc 1 122 7 add.u32 %r50,%r50,1; .loc 1 123 7 sub.f32 %r44,%r44,%r71; $L30: .loc 1 126 2 mov.b32 %r158,%r44; xor.b32 %r42,%r49,%r158; mov.b32 %r77,%r42; .loc 1 127 4 and.b32 %r72,%r50,2147483647; .loc 1 128 19 setp.ge.s32 %r159,%r23,0; @ %r159 bra $L32; .loc 1 128 16 neg.s32 %r52,%r72; bra $L33; $L32: .loc 1 128 19 mov.u32 %r52,%r72; $L33: .loc 1 128 7 st.u32 [%r80],%r52; $L1: .loc 1 130 1 mov.f32 %value,%r77; st.param.f32 [%value_out],%value; ret; } lib_a-sf_rint.o/0 0 0 644 3655 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rintf .visible .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_rint.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: TWO23 .const .align 4 .u32 TWO23[2] = {1258291200,3405774848 }; // BEGIN GLOBAL FUNCTION DEF: rintf .visible .func (.param .f32 %value_out) rintf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .u32 %r37; .reg .u32 %r40; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .f32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f32 %r62,%ar0; .loc 1 39 2 mov.b32 %r40,%r62; .loc 1 41 5 and.b32 %r51,%r40,2147483647; .loc 1 42 10 shr.u32 %r63,%r51,23; .loc 1 42 15 add.u32 %r52,%r63,-127; .loc 1 43 4 setp.gt.s32 %r64,%r52,22; @ %r64 bra $L2; .loc 1 44 8 setp.eq.u32 %r65,%r51,0; @ %r65 bra $L3; .loc 1 40 15 shr.u32 %r50,%r40,31; .loc 1 46 8 setp.ge.s32 %r66,%r52,0; @ %r66 bra $L4; .loc 1 47 6 and.b32 %r56,%r40,8388607; .loc 1 51 19 cvta.const.u64 %r67,TWO23; cvt.s64.s32 %r68,%r50; shl.b64 %r69,%r68,2; add.u64 %r70,%r67,%r69; ld.f32 %r32,[%r70]; .loc 1 49 14 neg.s32 %r71,%r56; .loc 1 49 18 shr.u32 %r73,%r71,9; .loc 1 49 22 and.b32 %r74,%r73,4194304; .loc 1 48 6 and.b32 %r75,%r40,-1048576; .loc 1 49 6 or.b32 %r76,%r74,%r75; .loc 1 51 23 mov.b32 %r77,%r76; add.f32 %r33,%r32,%r77; .loc 1 51 12 st.f32 [%frame],%r33; .loc 1 52 16 ld.f32 %r34,[%frame]; .loc 1 52 12 sub.f32 %r78,%r34,%r32; .loc 1 54 3 mov.b32 %r80,%r78; and.b32 %r79,%r80,2147483647; and.b32 %r81,%r40,-2147483648; or.b32 %r37,%r79,%r81; mov.b32 %r62,%r37; .loc 1 55 17 bra $L3; $L4: .loc 1 57 19 mov.u32 %r82,8388607; shr.s32 %r53,%r82,%r52; .loc 1 58 9 and.b32 %r83,%r40,%r53; .loc 1 58 5 setp.eq.u32 %r84,%r83,0; @ %r84 bra $L3; .loc 1 59 4 shr.u32 %r54,%r53,1; .loc 1 60 9 and.b32 %r85,%r40,%r54; .loc 1 60 5 setp.eq.u32 %r86,%r85,0; @ %r86 bra $L5; .loc 1 60 27 not.b32 %r87,%r54; .loc 1 60 25 and.b32 %r88,%r87,%r40; .loc 1 60 43 mov.u32 %r90,2097152; shr.s32 %r89,%r90,%r52; .loc 1 60 20 or.b32 %r91,%r88,%r89; .loc 1 67 2 mov.b32 %r62,%r91; bra $L5; $L2: .loc 1 63 8 setp.le.u32 %r92,%r51,2139095039; @ %r92 bra $L3; .loc 1 63 43 add.f32 %r62,%r62,%r62; bra $L3; $L5: .loc 1 68 11 cvta.const.u64 %r93,TWO23; cvt.s64.s32 %r94,%r50; shl.b64 %r95,%r94,2; add.u64 %r96,%r93,%r95; ld.f32 %r46,[%r96]; .loc 1 68 15 add.f32 %r47,%r46,%r62; .loc 1 68 4 st.f32 [%frame],%r47; .loc 1 69 10 ld.f32 %r48,[%frame]; sub.f32 %r62,%r48,%r46; $L3: .loc 1 70 1 mov.f32 %value,%r62; st.param.f32 [%value_out],%value; ret; } /1815 0 0 0 644 1783 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: roundf .visible .func (.param .f32 %value_out) roundf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_round.c" // BEGIN GLOBAL FUNCTION DEF: roundf .visible .func (.param .f32 %value_out) roundf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; mov.f32 %r36,%ar0; .loc 1 25 3 mov.b32 %r32,%r36; .loc 1 28 46 shr.u32 %r37,%r32,23; .loc 1 28 23 and.b32 %r38,%r37,255; .loc 1 28 21 add.u32 %r31,%r38,-127; .loc 1 30 6 setp.gt.s32 %r39,%r31,22; @ %r39 bra $L2; .loc 1 32 10 setp.ge.s32 %r40,%r31,0; @ %r40 bra $L3; .loc 1 34 13 and.b32 %r30,%r32,-2147483648; .loc 1 35 14 setp.ne.u32 %r41,%r31,-1; @ %r41 bra $L4; .loc 1 37 15 or.b32 %r30,%r30,1065353216; bra $L4; $L3: .loc 1 41 51 mov.u32 %r42,8388607; shr.s32 %r33,%r42,%r31; .loc 1 42 18 and.b32 %r43,%r32,%r33; .loc 1 42 14 setp.eq.u32 %r44,%r43,0; @ %r44 bra $L6; .loc 1 46 27 mov.u32 %r46,4194304; shr.s32 %r45,%r46,%r31; .loc 1 46 13 add.u32 %r34,%r45,%r32; .loc 1 47 16 not.b32 %r47,%r33; .loc 1 47 13 and.b32 %r30,%r47,%r34; bra $L4; $L2: .loc 1 52 10 setp.ne.u32 %r48,%r31,128; @ %r48 bra $L7; .loc 1 54 18 add.f32 %r35,%r36,%r36; bra $L1; $L4: .loc 1 58 3 mov.b32 %r35,%r30; .loc 1 59 10 bra $L1; $L6: .loc 1 44 20 mov.f32 %r35,%r36; bra $L1; $L7: mov.f32 %r35,%r36; $L1: .loc 1 60 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } /1833 0 0 0 644 3226 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalblnf .visible .func (.param .f32 %value_out) scalblnf (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_scalbln.c" // BEGIN GLOBAL FUNCTION DEF: scalblnf .visible .func (.param .f32 %value_out) scalblnf (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r28; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r39; .reg .u32 %r45; .reg .u32 %r46; .reg .f32 %r52; .reg .f32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .u32 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .f32 %r75; .reg .pred %r76; .reg .f32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .f32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .f32 %r88; .reg .u16 %r90; mov.f32 %r53,%ar0; mov.u64 %r54,%ar1; .loc 1 36 2 mov.b32 %r45,%r53; .loc 1 37 28 shr.s32 %r55,%r45,23; .loc 1 37 11 and.b32 %r46,%r55,255; .loc 1 38 12 setp.ne.u32 %r56,%r46,0; @ %r56 bra $L2; .loc 1 39 20 and.b32 %r57,%r45,2147483647; .loc 1 39 16 setp.eq.u32 %r58,%r57,0; @ %r58 bra $L9; .loc 1 40 8 mul.f32 %r53,%r53,0f4c000000; .loc 1 41 6 mov.b32 %r45,%r53; .loc 1 42 26 shr.s32 %r59,%r45,23; and.b32 %r60,%r59,255; .loc 1 42 8 add.u32 %r46,%r60,-25; bra $L4; $L2: .loc 1 44 12 setp.ne.u32 %r61,%r46,255; @ %r61 bra $L4; .loc 1 44 30 add.f32 %r52,%r53,%r53; bra $L1; $L4: .loc 1 45 14 cvt.u32.u64 %r62,%r54; add.u32 %r28,%r62,%r46; .loc 1 46 14 set.u32.gt.s64 %r64,%r54,50000; neg.s32 %r65,%r64; mov.u32 %r63,%r65; .loc 1 46 27 set.u32.gt.s32 %r67,%r28,254; neg.s32 %r68,%r67; mov.u32 %r66,%r68; .loc 1 46 22 cvt.u16.u8 %r90,%r63; mov.u16 %r70,%r90; cvt.u16.u8 %r90,%r66; mov.u16 %r71,%r90; or.b16 %r69,%r70,%r71; cvt.u32.u16 %r72,%r69; .loc 1 46 12 cvt.u16.u8 %r73,%r72; setp.eq.u16 %r74,%r73,0; @ %r74 bra $L5; .loc 1 47 16 mov.f32 %r75,0f7149f2ca; copysign.f32 %r32,%r53,%r75; .loc 1 47 15 mul.f32 %r52,%r32,0f7149f2ca; bra $L1; $L5: .loc 1 48 5 setp.ge.s64 %r76,%r54,-50000; @ %r76 bra $L6; .loc 1 49 16 mov.f32 %r77,0f0da24260; copysign.f32 %r33,%r53,%r77; .loc 1 49 15 mul.f32 %r52,%r33,0f0da24260; bra $L1; $L6: .loc 1 50 12 setp.le.s32 %r78,%r28,0; @ %r78 bra $L7; .loc 1 51 7 and.b32 %r79,%r45,-2139095041; shl.b32 %r80,%r28,23; or.b32 %r81,%r79,%r80; mov.b32 %r52,%r81; .loc 1 51 57 bra $L1; $L7: .loc 1 52 12 setp.ge.s32 %r82,%r28,-24; @ %r82 bra $L8; .loc 1 53 18 mov.f32 %r83,0f0da24260; copysign.f32 %r39,%r53,%r83; .loc 1 53 17 mul.f32 %r52,%r39,0f0da24260; bra $L1; $L8: .loc 1 54 11 add.u32 %r84,%r28,25; .loc 1 55 2 shl.b32 %r85,%r84,23; and.b32 %r86,%r45,-2139095041; or.b32 %r87,%r85,%r86; .loc 1 56 17 mov.b32 %r88,%r87; mul.f32 %r52,%r88,0f33000000; bra $L1; $L9: .loc 1 39 44 mov.f32 %r52,%r53; $L1: .loc 1 57 1 mov.f32 %value,%r52; st.param.f32 [%value_out],%value; ret; } /1853 0 0 0 644 2620 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r32; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .f32 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .f32 %r68; mov.f32 %r47,%ar0; mov.u32 %r48,%ar1; .loc 1 46 2 mov.b32 %r44,%r47; .loc 1 47 5 and.b32 %r40,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r49,%r40,0; @ %r49 bra $L10; .loc 1 51 12 setp.le.u32 %r50,%r40,2139095039; @ %r50 bra $L3; .loc 1 52 14 add.f32 %r46,%r47,%r47; bra $L1; $L3: .loc 1 53 12 and.b32 %r51,%r44,2139095040; setp.ne.u32 %r52,%r51,0; @ %r52 bra $L4; .loc 1 54 8 mul.f32 %r47,%r47,0f4c000000; .loc 1 57 16 setp.lt.s32 %r53,%r48,-50000; @ %r53 bra $L5; .loc 1 55 6 mov.b32 %r39,%r47; .loc 1 56 26 shr.s32 %r54,%r39,23; and.b32 %r55,%r54,255; .loc 1 56 8 add.u32 %r38,%r55,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r46,%r47,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r39,%r44; .loc 1 48 15 shr.u32 %r38,%r40,23; $L6: .loc 1 59 11 add.u32 %r41,%r38,%r48; .loc 1 60 12 setp.le.s32 %r56,%r41,254; @ %r56 bra $L7; .loc 1 60 46 mov.f32 %r57,0f7149f2ca; copysign.f32 %r26,%r47,%r57; .loc 1 60 45 mul.f32 %r46,%r26,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r58,%r41,0; @ %r58 bra $L8; .loc 1 62 7 and.b32 %r59,%r39,-2139095041; shl.b32 %r60,%r41,23; or.b32 %r61,%r59,%r60; mov.b32 %r46,%r61; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r62,%r41,-22; @ %r62 bra $L9; .loc 1 66 23 mov.f32 %r63,0f0da24260; copysign.f32 %r32,%r47,%r63; .loc 1 66 22 mul.f32 %r46,%r32,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r64,%r41,25; .loc 1 69 2 shl.b32 %r65,%r64,23; and.b32 %r66,%r39,-2139095041; or.b32 %r67,%r65,%r66; .loc 1 70 17 mov.b32 %r68,%r67; mul.f32 %r46,%r68,0f33000000; bra $L1; $L10: .loc 1 50 13 mov.f32 %r46,%r47; $L1: .loc 1 71 1 mov.f32 %value,%r46; st.param.f32 [%value_out],%value; ret; } /1872 0 0 0 644 1321 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: significandf .visible .func (.param .f32 %value_out) significandf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_signif.c" // BEGIN GLOBAL FUNCTION DECL: ilogbf .extern .func (.param .u32 %value_out) ilogbf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalbf .extern .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: significandf .visible .func (.param .f32 %value_out) significandf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .u32 %r28; .reg .u32 %r31; .reg .f32 %r32; .reg .f32 %r33; mov.f32 %r26,%ar0; .loc 1 25 37 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),ilogbf,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 25 36 neg.s32 %r31,%r28; .loc 1 25 9 cvt.rn.f32.s32 %r32,%r31; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r32; call (%value_in),__ieee754_scalbf,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } .loc 1 26 1 mov.f32 %value,%r33; st.param.f32 [%value_out],%value; ret; } lib_a-sf_sin.o/ 0 0 0 644 4360 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinf .visible .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_sin.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_sinf .extern .func (.param .f32 %value_out) __kernel_sinf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .extern .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __kernel_cosf .extern .func (.param .f32 %value_out) __kernel_cosf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: sinf .visible .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r34; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .f32 %r41; .reg .u32 %r42; .reg .f32 %r43; .reg .pred %r44; .reg .u32 %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .f32 %r51; .reg .u32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .u32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; mov.f32 %r38,%ar0; .loc 1 29 2 mov.b32 %r34,%r38; .loc 1 32 5 and.b32 %r35,%r34,2147483647; .loc 1 33 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 33 30 mov.u32 %r42,0; mov.f32 %r41,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r41; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r42; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r43,[%value_in]; } mov.f32 %r37,%r43; bra $L1; $L2: .loc 1 36 10 setp.le.s32 %r44,%r35,2139095039; @ %r44 bra $L4; .loc 1 36 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 40 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2f,(%out_arg1,%out_arg2); ld.param.u32 %r47,[%value_in]; } .loc 1 41 14 and.b32 %r22,%r47,3; .loc 1 41 6 setp.eq.u32 %r48,%r22,1; @ %r48 bra $L5; setp.eq.u32 %r49,%r22,2; @ %r49 bra $L6; setp.ne.u32 %r50,%r22,0; @ %r50 bra $L7; .loc 1 42 19 ld.f32 %r54,[%frame+4]; mov.u32 %r53,1; ld.f32 %r51,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r51; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r54; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r53; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r55,[%value_in]; } mov.f32 %r37,%r55; bra $L1; $L5: .loc 1 43 19 ld.f32 %r58,[%frame+4]; ld.f32 %r56,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r56; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r58; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r59,[%value_in]; } mov.f32 %r37,%r59; bra $L1; $L6: .loc 1 44 19 ld.f32 %r63,[%frame+4]; mov.u32 %r62,1; ld.f32 %r60,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r63; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r62; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r64,[%value_in]; } .loc 1 44 18 neg.f32 %r37,%r64; bra $L1; $L7: .loc 1 46 12 ld.f32 %r67,[%frame+4]; ld.f32 %r65,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r65; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r67; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r68,[%value_in]; } .loc 1 46 11 neg.f32 %r37,%r68; $L1: .loc 1 49 1 mov.f32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-sf_tan.o/ 0 0 0 644 2910 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanf .visible .func (.param .f32 %value_out) tanf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_tan.c" // BEGIN GLOBAL FUNCTION DECL: __kernel_tanf .extern .func (.param .f32 %value_out) __kernel_tanf (.param .f32 %in_ar0, .param .f32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ieee754_rem_pio2f .extern .func (.param .u32 %value_out) __ieee754_rem_pio2f (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: tanf .visible .func (.param .f32 %value_out) tanf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r28; .reg .u32 %r29; .reg .f32 %r31; .reg .f32 %r32; .reg .pred %r33; .reg .f32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .pred %r38; .reg .u32 %r41; .reg .f32 %r42; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r49; .reg .f32 %r50; mov.f32 %r32,%ar0; .loc 1 28 2 mov.b32 %r28,%r32; .loc 1 31 5 and.b32 %r29,%r28,2147483647; .loc 1 32 4 setp.gt.s32 %r33,%r29,1061752794; @ %r33 bra $L2; .loc 1 32 30 mov.u32 %r36,1; mov.f32 %r35,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r35; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r36; call (%value_in),__kernel_tanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r37,[%value_in]; } mov.f32 %r31,%r37; bra $L1; $L2: .loc 1 35 10 setp.le.s32 %r38,%r29,2139095039; @ %r38 bra $L4; .loc 1 35 45 sub.f32 %r31,%r32,%r32; bra $L1; $L4: .loc 1 39 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_rem_pio2f,(%out_arg1,%out_arg2); ld.param.u32 %r41,[%value_in]; } .loc 1 40 45 add.u32 %r45,%r41,%r41; and.b32 %r46,%r45,2; .loc 1 40 13 mov.u32 %r48,1; sub.u32 %r47,%r48,%r46; ld.f32 %r49,[%frame+4]; ld.f32 %r42,[%frame]; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r49; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r47; call (%value_in),__kernel_tanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r50,[%value_in]; } mov.f32 %r31,%r50; $L1: .loc 1 43 1 mov.f32 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-sf_tanh.o/0 0 0 644 2890 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanhf .visible .func (.param .f32 %value_out) tanhf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/sf_tanh.c" // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: expm1f .extern .func (.param .f32 %value_out) expm1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanhf .visible .func (.param .f32 %value_out) tanhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .pred %r39; .reg .f32 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .f32 %r45; .reg .pred %r46; .reg .f32 %r48; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; mov.f32 %r38,%ar0; .loc 1 34 2 mov.b32 %r31,%r38; .loc 1 35 5 and.b32 %r32,%r31,2147483647; .loc 1 38 4 setp.le.s32 %r39,%r32,2139095039; @ %r39 bra $L2; .loc 1 39 27 mov.f32 %r40,0f3f800000; div.rn.f32 %r36,%r40,%r38; .loc 1 39 9 setp.lt.s32 %r41,%r31,0; @ %r41 bra $L3; .loc 1 39 29 add.f32 %r37,%r36,0f3f800000; bra $L1; $L3: .loc 1 40 29 sub.f32 %r37,%r36,%r40; bra $L1; $L2: .loc 1 44 5 setp.gt.s32 %r43,%r32,1102053375; @ %r43 bra $L8; .loc 1 45 9 setp.gt.s32 %r44,%r32,603979775; @ %r44 bra $L6; .loc 1 46 16 add.f32 %r45,%r38,0f3f800000; .loc 1 46 11 mul.f32 %r37,%r45,%r38; bra $L1; $L6: .loc 1 47 9 setp.le.s32 %r46,%r32,1065353215; @ %r46 bra $L7; .loc 1 48 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } .loc 1 48 7 add.f32 %r50,%r48,%r48; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r50; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r51,[%value_in]; } .loc 1 49 19 add.f32 %r52,%r51,0f40000000; .loc 1 49 16 mov.f32 %r54,0f40000000; div.rn.f32 %r53,%r54,%r52; .loc 1 49 5 mov.f32 %r55,0f3f800000; sub.f32 %r37,%r55,%r53; bra $L5; $L7: .loc 1 51 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r57,[%value_in]; } .loc 1 51 14 mul.f32 %r59,%r57,0fc0000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r59; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r60,[%value_in]; } .loc 1 52 13 neg.f32 %r61,%r60; .loc 1 52 18 add.f32 %r62,%r60,0f40000000; .loc 1 52 11 div.rn.f32 %r37,%r61,%r62; bra $L5; $L8: .loc 1 56 8 mov.f32 %r37,0f3f800000; $L5: .loc 1 58 19 setp.ge.s32 %r63,%r31,0; @ %r63 bra $L1; neg.f32 %r37,%r37; $L1: .loc 1 59 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1891 0 0 0 644 1291 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: truncf .visible .func (.param .f32 %value_out) truncf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_trunc.c" // BEGIN GLOBAL FUNCTION DEF: truncf .visible .func (.param .f32 %value_out) truncf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u32 %r28; .reg .f32 %r30; .reg .f32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .pred %r40; mov.f32 %r31,%ar0; .loc 1 23 3 mov.b32 %r26,%r31; .loc 1 29 41 shr.s32 %r32,%r26,23; and.b32 %r33,%r32,255; .loc 1 29 21 add.u32 %r28,%r33,-127; .loc 1 31 6 setp.gt.s32 %r34,%r28,22; @ %r34 bra $L2; .loc 1 33 10 setp.ge.s32 %r35,%r28,0; @ %r35 bra $L3; .loc 1 26 11 and.b32 %r36,%r26,-2147483648; .loc 1 36 11 mov.b32 %r30,%r36; bra $L1; $L3: .loc 1 40 11 mov.u32 %r38,-8388608; shr.s32 %r37,%r38,%r28; and.b32 %r39,%r37,%r26; mov.b32 %r30,%r39; bra $L1; $L2: .loc 1 45 10 setp.ne.u32 %r40,%r28,128; @ %r40 bra $L5; .loc 1 47 18 add.f32 %r30,%r31,%r31; bra $L1; $L5: mov.f32 %r30,%r31; $L1: .loc 1 52 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } lib_a-sincosf.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1909 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sinf.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sinhl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinhl .visible .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sinhl.c" // BEGIN GLOBAL FUNCTION DECL: sinh .extern .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sinhl .visible .func (.param .f64 %value_out) sinhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-sinl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinl .visible .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sinl.c" // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sinl .visible .func (.param .f64 %value_out) sinl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),sin,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /1931 0 0 0 644 861 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finitel .visible .func (.param .u32 %value_out) finitel (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sl_finite.c" // BEGIN GLOBAL FUNCTION DEF: finitel .visible .func (.param .u32 %value_out) finitel (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .u32 %r34; .reg .u16 %r35; mov.f64 %r26,%ar0; .loc 1 15 10 abs.f64 %r28,%r26; set.u32.gtu.f64 %r30,%r28,0d7fefffffffffffff; neg.s32 %r31,%r30; mov.u32 %r29,%r31; cvt.u16.u8 %r35,%r29; mov.u16 %r33,%r35; xor.b16 %r32,%r33,1; cvt.u32.u16 %r34,%r32; cvt.u32.u8 %value,%r34; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } lib_a-sqrtl.o/ 0 0 0 644 534 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sqrtl .visible .func (.param .f64 %value_out) sqrtl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sqrtl.c" // BEGIN GLOBAL FUNCTION DEF: sqrtl .visible .func (.param .f64 %value_out) sqrtl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 sqrt.rn.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-tanhl.o/ 0 0 0 644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanhl .visible .func (.param .f64 %value_out) tanhl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/tanhl.c" // BEGIN GLOBAL FUNCTION DECL: tanh .extern .func (.param .f64 %value_out) tanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanhl .visible .func (.param .f64 %value_out) tanhl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),tanh,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-tanl.o/ 0 0 0 644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tanl .visible .func (.param .f64 %value_out) tanl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/tanl.c" // BEGIN GLOBAL FUNCTION DECL: tan .extern .func (.param .f64 %value_out) tan (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tanl .visible .func (.param .f64 %value_out) tanl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),tan,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-tgammal.o/0 0 0 644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tgammal .visible .func (.param .f64 %value_out) tgammal (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/tgammal.c" // BEGIN GLOBAL FUNCTION DECL: tgamma .extern .func (.param .f64 %value_out) tgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tgammal .visible .func (.param .f64 %value_out) tgammal (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 39 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),tgamma,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-truncl.o/ 0 0 0 644 543 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: truncl .visible .func (.param .f64 %value_out) truncl (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/truncl.c" // BEGIN GLOBAL FUNCTION DEF: truncl .visible .func (.param .f64 %value_out) truncl (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; mov.f64 %r23,%ar0; .loc 1 39 10 cvt.rzi.f64.f64 %value,%r23; .loc 1 40 1 st.param.f64 [%value_out],%value; ret; } lib_a-w_acos.o/ 0 0 0 644 1963 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: acos .visible .func (.param .f64 %value_out) acos (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acos .extern .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: acos .visible .func (.param .f64 %value_out) acos (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f64 %r35; mov.f64 %r25,%ar0; .loc 1 82 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_acos,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 83 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 84 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 84 4 setp.gt.f64 %r31,%r30,0d3ff0000000000000; @ ! %r31 bra $L1; .loc 1 86 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 86 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 87 13 cvta.const.u64 %r34,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nan,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r24,%r35; $L1: .loc 1 91 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_acosh.o/0 0 0 644 1385 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acosh .visible .func (.param .f64 %value_out) acosh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosh .extern .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: acosh .visible .func (.param .f64 %value_out) acosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f64 %r31; mov.f64 %r24,%ar0; .loc 1 89 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),__ieee754_acosh,(%out_arg1); ld.param.f64 %r26,[%value_in]; } mov.f64 %r23,%r26; .loc 1 90 4 setp.nan.f64 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 91 4 setp.lt.f64 %r28,%r24,0d3ff0000000000000; @ ! %r28 bra $L1; .loc 1 93 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 93 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 94 16 mov.f64 %r31,0d0000000000000000; div.rn.f64 %r23,%r31,%r31; $L1: .loc 1 98 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } lib_a-w_asin.o/ 0 0 0 644 1962 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: asin .visible .func (.param .f64 %value_out) asin (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_asin.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_asin .extern .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: asin .visible .func (.param .f64 %value_out) asin (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f64 %r35; mov.f64 %r25,%ar0; .loc 1 86 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_asin,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 87 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 88 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 88 4 setp.gt.f64 %r31,%r30,0d3ff0000000000000; @ ! %r31 bra $L1; .loc 1 90 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 90 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 91 13 cvta.const.u64 %r34,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nan,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r24,%r35; $L1: .loc 1 95 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_atan2.o/0 0 0 644 1035 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan2 .visible .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_atan2.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2 .extern .func (.param .f64 %value_out) __ieee754_atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atan2 .visible .func (.param .f64 %value_out) atan2 (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 75 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),__ieee754_atan2,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 76 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-w_atanh.o/0 0 0 644 1997 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanh .visible .func (.param .f64 %value_out) atanh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_atanh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanh .extern .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: atanh .visible .func (.param .f64 %value_out) atanh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .pred %r29; .reg .f64 %r31; .reg .pred %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .f64 %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f64 %r26,%ar0; .loc 1 87 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_atanh,(%out_arg1); ld.param.f64 %r28,[%value_in]; } mov.f64 %r25,%r28; .loc 1 88 4 setp.nan.f64 %r29,%r26,%r26; @ %r29 bra $L1; .loc 1 89 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r31,[%value_in]; } .loc 1 90 4 setp.ge.f64 %r32,%r31,0d3ff0000000000000; @ ! %r32 bra $L1; .loc 1 91 8 setp.gt.f64 %r33,%r31,0d3ff0000000000000; @ ! %r33 bra $L8; .loc 1 93 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 93 9 mov.u32 %r35,33; st.u32 [%r34],%r35; .loc 1 94 13 mov.f64 %r36,0d0000000000000000; div.rn.f64 %r25,%r36,%r36; bra $L1; $L8: .loc 1 97 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 97 9 mov.u32 %r38,33; st.u32 [%r37],%r38; .loc 1 98 11 div.rn.f64 %r25,%r26,0d0000000000000000; $L1: .loc 1 103 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_cosh.o/ 0 0 0 644 1612 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cosh .visible .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_cosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_cosh .extern .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: cosh .visible .func (.param .f64 %value_out) cosh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f64 %r25,%ar0; .loc 1 73 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_cosh,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 74 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 75 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 75 4 setp.gt.f64 %r31,%r30,0d408633ce8fb9f87d; @ ! %r31 bra $L1; .loc 1 77 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 77 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 78 13 mov.f64 %r24,0d7ff0000000000000; $L1: .loc 1 82 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_drem.o/ 0 0 0 644 1012 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: drem .visible .func (.param .f64 %value_out) drem (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_drem.c" // BEGIN GLOBAL FUNCTION DECL: remainder .extern .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: drem .visible .func (.param .f64 %value_out) drem (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; .loc 1 14 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; call (%value_in),remainder,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 15 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-w_exp.o/ 0 0 0 644 1934 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp .visible .func (.param .f64 %value_out) exp (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_exp.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_exp .extern .func (.param .f64 %value_out) __ieee754_exp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: exp .visible .func (.param .f64 %value_out) exp (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; mov.f64 %r26,%ar0; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r28,[%value_in]; } mov.f64 %r25,%r28; .loc 1 79 5 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 79 4 setp.eq.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 80 8 setp.gt.f64 %r32,%r26,0d40862e42fefa39ef; @ ! %r32 bra $L11; .loc 1 82 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 82 9 mov.u32 %r34,34; st.u32 [%r33],%r34; .loc 1 83 10 mov.f64 %r25,0d7ff0000000000000; bra $L1; $L11: .loc 1 84 15 setp.lt.f64 %r35,%r26,0dc0874910d52d3051; @ ! %r35 bra $L1; .loc 1 86 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 86 9 mov.u32 %r37,34; st.u32 [%r36],%r37; .loc 1 87 10 mov.f64 %r25,0d0000000000000000; $L1: .loc 1 92 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_exp2.o/ 0 0 0 644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp2 .visible .func (.param .f64 %value_out) exp2 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_exp2.c" // BEGIN GLOBAL FUNCTION DECL: pow .extern .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp2 .visible .func (.param .f64 %value_out) exp2 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; mov.f64 %r23,%ar0; .loc 1 65 10 mov.f64 %r24,0d4000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r23; call (%value_in),pow,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 66 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_fmod.o/ 0 0 0 644 2011 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmod .visible .func (.param .f64 %value_out) fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_fmod.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmod .extern .func (.param .f64 %value_out) __ieee754_fmod (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: fmod .visible .func (.param .f64 %value_out) fmod (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u16 %r48; mov.f64 %r27,%ar0; mov.f64 %r28,%ar1; .loc 1 70 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r26,%r31; .loc 1 72 4 set.u32.eq.f64 %r33,%r28,0d0000000000000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 71 4 set.u32.num.f64 %r36,%r27,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 72 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 74 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 74 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 75 16 mov.f64 %r46,0d0000000000000000; div.rn.f64 %r26,%r46,%r46; $L1: .loc 1 79 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_gamma.o/0 0 0 644 803 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gamma .visible .func (.param .f64 %value_out) gamma (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgamma .extern .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: gamma .visible .func (.param .f64 %value_out) gamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r25; mov.f64 %r23,%ar0; .loc 1 151 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; call (%value_in),lgamma,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 152 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_hypot.o/0 0 0 644 2238 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: hypot .visible .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypot .extern .func (.param .f64 %value_out) __ieee754_hypot (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: hypot .visible .func (.param .f64 %value_out) hypot (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u32 %r42; mov.f64 %r27,%ar0; mov.f64 %r28,%ar1; .loc 1 67 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; call (%value_in),__ieee754_hypot,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r26,%r31; .loc 1 69 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 69 4 setp.ne.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 69 19 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; call (%value_in),finite,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 69 17 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L1; .loc 1 69 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 69 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 71 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r41,[%value_in]; } .loc 1 71 12 mov.u32 %r42,34; st.u32 [%r41],%r42; .loc 1 72 13 mov.f64 %r26,0d7ff0000000000000; $L1: .loc 1 76 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_j0.o/ 0 0 0 644 3198 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j0 .visible .func (.param .f64 %value_out) j0 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_j0.c" // BEGIN GLOBAL FUNCTION DECL: y0 .visible .func (.param .f64 %value_out) y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .extern .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .extern .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j0 .visible .func (.param .f64 %value_out) j0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f64 %r25,%ar0; .loc 1 107 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 108 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 109 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 109 4 setp.gt.f64 %r31,%r30,0d434921fb54442d18; @ ! %r31 bra $L1; .loc 1 111 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 111 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 112 13 mov.f64 %r24,0d0000000000000000; $L1: .loc 1 116 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y0 .visible .func (.param .f64 %value_out) y0 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f64 %r26,%ar0; .loc 1 129 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r28,[%value_in]; } .loc 1 130 4 setp.num.f64 %r29,%r26,%r26; @ ! %r29 bra $L5; .loc 1 131 11 setp.lt.f64 %r30,%r26,0d0000000000000000; @ ! %r30 bra $L15; .loc 1 133 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 133 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L10; $L15: .loc 1 135 11 setp.neu.f64 %r33,%r26,0d0000000000000000; @ %r33 bra $L10; .loc 1 137 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 137 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L10: .loc 1 139 4 setp.gt.f64 %r36,%r26,0d434921fb54442d18; @ ! %r36 bra $L5; .loc 1 141 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 141 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L5: .loc 1 145 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-w_j1.o/ 0 0 0 644 3177 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j1 .visible .func (.param .f64 %value_out) j1 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_j1.c" // BEGIN GLOBAL FUNCTION DECL: y1 .visible .func (.param .f64 %value_out) y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .extern .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .extern .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j1 .visible .func (.param .f64 %value_out) j1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .f64 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f64 %r25,%ar0; .loc 1 34 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 35 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 36 4 setp.gt.f64 %r31,%r30,0d434921fb54442d18; @ ! %r31 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 38 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 39 13 mov.f64 %r24,0d0000000000000000; $L1: .loc 1 43 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y1 .visible .func (.param .f64 %value_out) y1 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f64 %r26,%ar0; .loc 1 56 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r28,[%value_in]; } .loc 1 57 4 setp.num.f64 %r29,%r26,%r26; @ ! %r29 bra $L5; .loc 1 58 11 setp.lt.f64 %r30,%r26,0d0000000000000000; @ ! %r30 bra $L15; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 60 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L10; $L15: .loc 1 62 11 setp.neu.f64 %r33,%r26,0d0000000000000000; @ %r33 bra $L10; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 64 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L10: .loc 1 66 4 setp.gt.f64 %r36,%r26,0d434921fb54442d18; @ ! %r36 bra $L5; .loc 1 68 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 68 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L5: .loc 1 72 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-w_jn.o/ 0 0 0 644 3591 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: jn .visible .func (.param .f64 %value_out) jn (.param .u32 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_jn.c" // BEGIN GLOBAL FUNCTION DECL: yn .visible .func (.param .f64 %value_out) yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_jn .extern .func (.param .f64 %value_out) __ieee754_jn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_yn .extern .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: jn .visible .func (.param .f64 %value_out) jn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .u32 %r25; .reg .f64 %r26; .reg .f64 %r29; .reg .pred %r30; .reg .f64 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; mov.u32 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 56 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; call (%value_in),__ieee754_jn,(%out_arg1,%out_arg2); ld.param.f64 %r29,[%value_in]; } mov.f64 %r24,%r29; .loc 1 57 4 setp.nan.f64 %r30,%r26,%r26; @ %r30 bra $L1; .loc 1 58 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r32,[%value_in]; } .loc 1 58 4 setp.gt.f64 %r33,%r32,0d434921fb54442d18; @ ! %r33 bra $L1; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 60 12 mov.u32 %r35,34; st.u32 [%r34],%r35; .loc 1 61 13 mov.f64 %r24,0d0000000000000000; $L1: .loc 1 65 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: yn .visible .func (.param .f64 %value_out) yn (.param .u32 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .f64 %r27; .reg .f64 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u32 %r40; mov.u32 %r26,%ar0; mov.f64 %r27,%ar1; .loc 1 78 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r27; call (%value_in),__ieee754_yn,(%out_arg1,%out_arg2); ld.param.f64 %r30,[%value_in]; } .loc 1 79 4 setp.num.f64 %r31,%r27,%r27; @ ! %r31 bra $L5; .loc 1 80 11 setp.lt.f64 %r32,%r27,0d0000000000000000; @ ! %r32 bra $L15; .loc 1 82 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 82 12 mov.u32 %r34,33; st.u32 [%r33],%r34; bra $L10; $L15: .loc 1 84 11 setp.neu.f64 %r35,%r27,0d0000000000000000; @ %r35 bra $L10; .loc 1 86 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 86 12 mov.u32 %r37,34; st.u32 [%r36],%r37; $L10: .loc 1 88 4 setp.gt.f64 %r38,%r27,0d434921fb54442d18; @ ! %r38 bra $L5; .loc 1 90 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r39,[%value_in]; } .loc 1 90 12 mov.u32 %r40,34; st.u32 [%r39],%r40; $L5: .loc 1 94 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } /1950 0 0 0 644 1978 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgamma .visible .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_lgamma.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .extern .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgamma .visible .func (.param .f64 %value_out) lgamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .f64 %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; mov.f64 %r28,%ar0; .loc 1 38 13 ld.global.u64 %r32,[_impure_ptr]; add.u64 %r31,%r32,224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r33,[%value_in]; } .loc 1 40 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),finite,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 40 11 setp.eq.u32 %r36,%r35,0; @ ! %r36 bra $L1; .loc 1 40 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r38,[%value_in]; } .loc 1 40 22 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L1; .loc 1 42 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r40,[%value_in]; } .loc 1 42 12 mov.u32 %r41,34; st.u32 [%r40],%r41; $L1: .loc 1 46 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-w_log.o/ 0 0 0 644 2001 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: log .visible .func (.param .f64 %value_out) log (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_log.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: log .visible .func (.param .f64 %value_out) log (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f64 %r36; mov.f64 %r25,%ar0; .loc 1 64 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 65 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 65 40 setp.gt.f64 %r29,%r25,0d0000000000000000; @ %r29 bra $L1; .loc 1 66 4 setp.neu.f64 %r30,%r25,0d0000000000000000; @ %r30 bra $L3; .loc 1 68 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 68 12 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 69 13 mov.f64 %r24,0dfff0000000000000; bra $L1; $L3: .loc 1 72 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 72 12 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 73 13 cvta.const.u64 %r35,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nan,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r24,%r36; $L1: .loc 1 76 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_log10.o/0 0 0 644 2016 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: log10 .visible .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10 .extern .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: log10 .visible .func (.param .f64 %value_out) log10 (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f64 %r36; mov.f64 %r25,%ar0; .loc 1 64 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),__ieee754_log10,(%out_arg1); ld.param.f64 %r27,[%value_in]; } mov.f64 %r24,%r27; .loc 1 65 4 setp.nan.f64 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 66 4 setp.le.f64 %r29,%r25,0d0000000000000000; @ ! %r29 bra $L1; .loc 1 67 8 setp.neu.f64 %r30,%r25,0d0000000000000000; @ %r30 bra $L4; .loc 1 69 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 69 9 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 70 10 mov.f64 %r24,0dfff0000000000000; bra $L1; $L4: .loc 1 73 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 73 9 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 74 10 cvta.const.u64 %r35,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nan,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r24,%r36; $L1: .loc 1 79 1 mov.f64 %value,%r24; st.param.f64 [%value_out],%value; ret; } lib_a-w_pow.o/ 0 0 0 644 4057 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: pow .visible .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_pow.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_pow .extern .func (.param .f64 %value_out) __ieee754_pow (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: pow .visible .func (.param .f64 %value_out) pow (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .pred %r52; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; mov.f64 %r33,%ar0; mov.f64 %r34,%ar1; .loc 1 69 4 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r34; call (%value_in),__ieee754_pow,(%out_arg1,%out_arg2); ld.param.f64 %r37,[%value_in]; } mov.f64 %r32,%r37; .loc 1 70 4 setp.nan.f64 %r38,%r34,%r34; @ %r38 bra $L1; .loc 1 71 4 setp.neu.f64 %r39,%r33,0d0000000000000000; @ %r39 bra $L3; .loc 1 72 8 setp.eq.f64 %r40,%r34,0d0000000000000000; @ %r40 bra $L7; .loc 1 77 9 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 77 8 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 77 18 setp.lt.f64 %r44,%r34,0d0000000000000000; @ ! %r44 bra $L1; .loc 1 79 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 79 9 mov.u32 %r46,34; st.u32 [%r45],%r46; bra $L1; $L3: .loc 1 83 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 83 4 setp.ne.u32 %r49,%r48,0; @ %r49 bra $L5; .loc 1 84 9 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),finite,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 84 8 setp.eq.u32 %r52,%r51,0; @ %r52 bra $L5; .loc 1 84 20 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 84 18 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L5; .loc 1 85 12 setp.num.f64 %r56,%r32,%r32; @ %r56 bra $L6; .loc 1 87 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 87 13 mov.u32 %r58,33; st.u32 [%r57],%r58; bra $L1; $L6: .loc 1 90 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 90 13 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L1; $L5: .loc 1 95 4 setp.neu.f64 %r61,%r37,0d0000000000000000; @ %r61 bra $L1; .loc 1 95 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),finite,(%out_arg1); ld.param.u32 %r63,[%value_in]; } .loc 1 95 11 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L1; .loc 1 95 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 95 22 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L1; .loc 1 97 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 97 12 mov.u32 %r69,34; st.u32 [%r68],%r69; bra $L1; $L7: .loc 1 75 10 mov.f64 %r32,0d3ff0000000000000; $L1: .loc 1 101 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /1968 0 0 0 644 2051 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remainder .visible .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainder .extern .func (.param .f64 %value_out) __ieee754_remainder (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: remainder .visible .func (.param .f64 %value_out) remainder (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r26; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u16 %r48; mov.f64 %r27,%ar0; mov.f64 %r28,%ar1; .loc 1 60 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; call (%value_in),__ieee754_remainder,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r26,%r31; .loc 1 62 4 set.u32.eq.f64 %r33,%r28,0d0000000000000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 61 4 set.u32.num.f64 %r36,%r28,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 62 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 64 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 65 16 mov.f64 %r46,0d0000000000000000; div.rn.f64 %r26,%r46,%r46; $L1: .loc 1 69 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_scalb.o/0 0 0 644 4240 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalb .visible .func (.param .f64 %value_out) scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/w_scalb.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalb .extern .func (.param .f64 %value_out) __ieee754_scalb (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalb .visible .func (.param .f64 %value_out) scalb (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .u32 %r69; .reg .u16 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r76; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u16 %r83; mov.f64 %r35,%ar0; mov.f64 %r36,%ar1; .loc 1 44 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),__ieee754_scalb,(%out_arg1,%out_arg2); ld.param.f64 %r39,[%value_in]; } mov.f64 %r34,%r39; .loc 1 46 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 46 5 set.u32.num.f64 %r43,%r34,%r34; neg.s32 %r44,%r43; mov.u32 %r42,%r44; .loc 1 46 4 set.u32.eq.u32 %r46,%r41,0; neg.s32 %r47,%r46; mov.u32 %r45,%r47; .loc 1 46 5 cvt.u16.u8 %r83,%r42; mov.u16 %r49,%r83; cvt.u16.u8 %r83,%r45; mov.u16 %r50,%r83; and.b16 %r48,%r49,%r50; cvt.u32.u16 %r51,%r48; cvt.u16.u8 %r52,%r51; setp.eq.u16 %r53,%r52,0; @ %r53 bra $L2; .loc 1 46 29 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),finite,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 46 27 setp.eq.u32 %r56,%r55,0; @ %r56 bra $L2; .loc 1 48 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 48 12 mov.u32 %r58,34; st.u32 [%r57],%r58; .loc 1 49 33 setp.gt.f64 %r59,%r35,0d0000000000000000; selp.f64 %r34,0d7ff0000000000000,0dfff0000000000000,%r59; bra $L1; $L2: .loc 1 51 6 set.u32.eq.f64 %r61,%r39,0d0000000000000000; neg.s32 %r62,%r61; mov.u32 %r60,%r62; .loc 1 51 14 set.u32.neu.f64 %r64,%r35,%r39; neg.s32 %r65,%r64; mov.u32 %r63,%r65; .loc 1 51 11 cvt.u16.u8 %r83,%r60; mov.u16 %r67,%r83; cvt.u16.u8 %r83,%r63; mov.u16 %r68,%r83; and.b16 %r66,%r67,%r68; cvt.u32.u16 %r69,%r66; .loc 1 51 4 cvt.u16.u8 %r70,%r69; setp.eq.u16 %r71,%r70,0; @ %r71 bra $L4; .loc 1 53 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 53 12 mov.u32 %r73,34; st.u32 [%r72],%r73; .loc 1 54 13 mov.f64 %r74,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r76,[%value_in]; } mov.f64 %r34,%r76; bra $L1; $L4: .loc 1 57 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),finite,(%out_arg1); ld.param.u32 %r78,[%value_in]; } .loc 1 57 4 setp.ne.u32 %r79,%r78,0; @ %r79 bra $L1; .loc 1 57 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 57 24 mov.u32 %r81,34; st.u32 [%r80],%r81; $L1: .loc 1 61 1 mov.f64 %value,%r34; st.param.f64 [%value_out],%value; ret; } /1989 0 0 0 644 1259 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sincos .visible .func sincos (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/math/w_sincos.c" // BEGIN GLOBAL FUNCTION DECL: sin .extern .func (.param .f64 %value_out) sin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cos .extern .func (.param .f64 %value_out) cos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sincos .visible .func sincos (.param .f64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .f64 %r28; .reg .f64 %r30; mov.f64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 18 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),sin,(%out_arg1); ld.param.f64 %r28,[%value_in]; } .loc 1 18 9 st.f64 [%r25],%r28; .loc 1 19 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),cos,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 19 9 st.f64 [%r26],%r30; .loc 1 20 1 ret; } lib_a-w_sinh.o/ 0 0 0 644 1858 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinh .visible .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_sinh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinh .extern .func (.param .f64 %value_out) __ieee754_sinh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sinh .visible .func (.param .f64 %value_out) sinh (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; mov.f64 %r26,%ar0; .loc 1 78 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),__ieee754_sinh,(%out_arg1); ld.param.f64 %r28,[%value_in]; } mov.f64 %r25,%r28; .loc 1 80 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),finite,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 80 4 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 80 17 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 80 15 setp.eq.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 82 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r35,[%value_in]; } .loc 1 82 12 mov.u32 %r36,34; st.u32 [%r35],%r36; .loc 1 83 33 setp.gt.f64 %r37,%r26,0d0000000000000000; selp.f64 %r25,0d7ff0000000000000,0dfff0000000000000,%r37; $L1: .loc 1 87 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } lib_a-w_sqrt.o/ 0 0 0 644 1377 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sqrt .visible .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_sqrt.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sqrt .visible .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f64 %r31; mov.f64 %r24,%ar0; .loc 1 61 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r26,[%value_in]; } mov.f64 %r23,%r26; .loc 1 62 4 setp.nan.f64 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 63 4 setp.lt.f64 %r28,%r24,0d0000000000000000; @ ! %r28 bra $L1; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 64 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 65 16 mov.f64 %r31,0d0000000000000000; div.rn.f64 %r23,%r31,%r31; $L1: .loc 1 69 1 mov.f64 %value,%r23; st.param.f64 [%value_out],%value; ret; } /2007 0 0 0 644 2349 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tgamma .visible .func (.param .f64 %value_out) tgamma (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/math/w_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgamma .extern .func (.param .f64 %value_out) __ieee754_tgamma (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: tgamma .visible .func (.param .f64 %value_out) tgamma (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r28; .reg .f64 %r30; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .f64 %r36; .reg .pred %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; mov.f64 %r28,%ar0; .loc 1 31 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),__ieee754_tgamma,(%out_arg1); ld.param.f64 %r30,[%value_in]; } .loc 1 37 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),finite,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 37 4 setp.eq.u32 %r33,%r32,0; @ ! %r33 bra $L1; .loc 1 38 6 setp.lt.f64 %r34,%r28,0d0000000000000000; @ ! %r34 bra $L4; .loc 1 38 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),floor,(%out_arg1); ld.param.f64 %r36,[%value_in]; } .loc 1 38 15 setp.neu.f64 %r37,%r36,%r28; @ %r37 bra $L4; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r38,[%value_in]; } .loc 1 39 12 mov.u32 %r39,33; st.u32 [%r38],%r39; bra $L1; $L4: .loc 1 40 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 40 12 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 41 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r43,[%value_in]; } .loc 1 41 12 mov.u32 %r44,34; st.u32 [%r43],%r44; $L1: .loc 1 45 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } lib_a-wf_acos.o/0 0 0 644 1968 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: acosf .visible .func (.param .f32 %value_out) acosf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_acos.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosf .extern .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: acosf .visible .func (.param .f32 %value_out) acosf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f32 %r35; mov.f32 %r25,%ar0; .loc 1 29 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_acosf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 30 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 31 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 31 4 setp.gt.f32 %r31,%r30,0f3f800000; @ ! %r31 bra $L1; .loc 1 33 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 33 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 34 13 cvta.const.u64 %r34,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r35,[%value_in]; } mov.f32 %r24,%r35; $L1: .loc 1 38 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /2025 0 0 0 644 1377 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: acoshf .visible .func (.param .f32 %value_out) acoshf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_acosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_acoshf .extern .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: acoshf .visible .func (.param .f32 %value_out) acoshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f32 %r31; mov.f32 %r24,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),__ieee754_acoshf,(%out_arg1); ld.param.f32 %r26,[%value_in]; } mov.f32 %r23,%r26; .loc 1 36 4 setp.nan.f32 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 37 4 setp.lt.f32 %r28,%r24,0f3f800000; @ ! %r28 bra $L1; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 39 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 40 17 mov.f32 %r31,0f00000000; div.rn.f32 %r23,%r31,%r31; $L1: .loc 1 44 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } lib_a-wf_asin.o/0 0 0 644 1968 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: asinf .visible .func (.param .f32 %value_out) asinf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_asin.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_asinf .extern .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: asinf .visible .func (.param .f32 %value_out) asinf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .f32 %r35; mov.f32 %r25,%ar0; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_asinf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 37 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 38 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 38 4 setp.gt.f32 %r31,%r30,0f3f800000; @ ! %r31 bra $L1; .loc 1 40 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 40 12 mov.u32 %r33,33; st.u32 [%r32],%r33; .loc 1 41 13 cvta.const.u64 %r34,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r35,[%value_in]; } mov.f32 %r24,%r35; $L1: .loc 1 45 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /2043 0 0 0 644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atan2f .visible .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_atan2.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atan2f .extern .func (.param .f32 %value_out) __ieee754_atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atan2f .visible .func (.param .f32 %value_out) atan2f (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r27; mov.f32 %r23,%ar0; mov.f32 %r24,%ar1; .loc 1 31 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; call (%value_in),__ieee754_atan2f,(%out_arg1,%out_arg2); ld.param.f32 %r27,[%value_in]; } .loc 1 32 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } /2061 0 0 0 644 1975 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atanhf .visible .func (.param .f32 %value_out) atanhf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_atanh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanhf .extern .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: atanhf .visible .func (.param .f32 %value_out) atanhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .pred %r29; .reg .f32 %r31; .reg .pred %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .f32 %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f32 %r26,%ar0; .loc 1 33 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_atanhf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } mov.f32 %r25,%r28; .loc 1 34 4 setp.nan.f32 %r29,%r26,%r26; @ %r29 bra $L1; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r31,[%value_in]; } .loc 1 36 4 setp.ge.f32 %r32,%r31,0f3f800000; @ ! %r32 bra $L1; .loc 1 37 8 setp.gt.f32 %r33,%r31,0f3f800000; @ ! %r33 bra $L8; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 39 9 mov.u32 %r35,33; st.u32 [%r34],%r35; .loc 1 40 14 mov.f32 %r36,0f00000000; div.rn.f32 %r25,%r36,%r36; bra $L1; $L8: .loc 1 43 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 43 9 mov.u32 %r38,33; st.u32 [%r37],%r38; .loc 1 44 11 div.rn.f32 %r25,%r26,0f00000000; $L1: .loc 1 49 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-wf_cosh.o/0 0 0 644 1607 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: coshf .visible .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_cosh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_coshf .extern .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: coshf .visible .func (.param .f32 %value_out) coshf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f32 %r25,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_coshf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 35 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 36 4 setp.gt.f32 %r31,%r30,0f42b2d4fc; @ ! %r31 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 38 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 39 13 mov.f32 %r24,0f7f800000; $L1: .loc 1 43 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } lib_a-wf_drem.o/0 0 0 644 1020 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: dremf .visible .func (.param .f32 %value_out) dremf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_drem.c" // BEGIN GLOBAL FUNCTION DECL: remainderf .extern .func (.param .f32 %value_out) remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: dremf .visible .func (.param .f32 %value_out) dremf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r27; mov.f32 %r23,%ar0; mov.f32 %r24,%ar1; .loc 1 18 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r24; call (%value_in),remainderf,(%out_arg1,%out_arg2); ld.param.f32 %r27,[%value_in]; } .loc 1 19 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } lib_a-wf_exp.o/ 0 0 0 644 1913 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: expf .visible .func (.param .f32 %value_out) expf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_exp.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_expf .extern .func (.param .f32 %value_out) __ieee754_expf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: expf .visible .func (.param .f32 %value_out) expf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; mov.f32 %r26,%ar0; .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } mov.f32 %r25,%r28; .loc 1 45 5 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 45 4 setp.eq.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 46 8 setp.gt.f32 %r32,%r26,0f42b17180; @ ! %r32 bra $L11; .loc 1 48 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 48 9 mov.u32 %r34,34; st.u32 [%r33],%r34; .loc 1 49 17 mov.f32 %r25,0f7f800000; bra $L1; $L11: .loc 1 50 15 setp.lt.f32 %r35,%r26,0fc2cff1b5; @ ! %r35 bra $L1; .loc 1 52 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 52 9 mov.u32 %r37,34; st.u32 [%r36],%r37; .loc 1 53 10 mov.f32 %r25,0f00000000; $L1: .loc 1 58 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-wf_exp2.o/0 0 0 644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exp2f .visible .func (.param .f32 %value_out) exp2f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_exp2.c" // BEGIN GLOBAL FUNCTION DECL: powf .extern .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: exp2f .visible .func (.param .f32 %value_out) exp2f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r23,%ar0; .loc 1 32 10 mov.f32 %r24,0f40000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r23; call (%value_in),powf,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 33 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-wf_fmod.o/0 0 0 644 2003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fmodf .visible .func (.param .f32 %value_out) fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_fmod.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_fmodf .extern .func (.param .f32 %value_out) __ieee754_fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: fmodf .visible .func (.param .f32 %value_out) fmodf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .u16 %r48; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r28; call (%value_in),__ieee754_fmodf,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } mov.f32 %r26,%r31; .loc 1 36 4 set.u32.eq.f32 %r33,%r28,0f00000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 35 4 set.u32.num.f32 %r36,%r27,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 36 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 38 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 39 18 mov.f32 %r46,0f00000000; div.rn.f32 %r26,%r46,%r46; $L1: .loc 1 43 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } /2079 0 0 0 644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gammaf .visible .func (.param .f32 %value_out) gammaf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgammaf .extern .func (.param .f32 %value_out) lgammaf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: gammaf .visible .func (.param .f32 %value_out) gammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r25; mov.f32 %r23,%ar0; .loc 1 28 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; call (%value_in),lgammaf,(%out_arg1); ld.param.f32 %r25,[%value_in]; } .loc 1 29 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /2097 0 0 0 644 2243 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: hypotf .visible .func (.param .f32 %value_out) hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_hypot.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_hypotf .extern .func (.param .f32 %value_out) __ieee754_hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: hypotf .visible .func (.param .f32 %value_out) hypotf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u32 %r42; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r28; call (%value_in),__ieee754_hypotf,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } mov.f32 %r26,%r31; .loc 1 36 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 36 4 setp.ne.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 36 20 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 36 18 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L1; .loc 1 36 32 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 36 30 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r41,[%value_in]; } .loc 1 38 12 mov.u32 %r42,34; st.u32 [%r41],%r42; .loc 1 39 13 mov.f32 %r26,0f7f800000; $L1: .loc 1 43 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j0.o/ 0 0 0 644 3084 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j0f .visible .func (.param .f32 %value_out) j0f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_j0.c" // BEGIN GLOBAL FUNCTION DECL: y0f .visible .func (.param .f32 %value_out) y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .extern .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .extern .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j0f .visible .func (.param .f32 %value_out) j0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f32 %r25,%ar0; .loc 1 33 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r27,[%value_in]; } .loc 1 34 4 setp.num.f32 %r28,%r25,%r25; @ ! %r28 bra $L1; .loc 1 35 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 35 4 setp.gt.f32 %r31,%r30,0f5a490fdb; @ ! %r31 bra $L1; .loc 1 37 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 37 12 mov.u32 %r33,34; st.u32 [%r32],%r33; $L1: .loc 1 41 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y0f .visible .func (.param .f32 %value_out) y0f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .f32 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f32 %r26,%ar0; .loc 1 54 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r28,[%value_in]; } .loc 1 55 4 setp.num.f32 %r29,%r26,%r26; @ ! %r29 bra $L7; .loc 1 56 11 setp.lt.f32 %r30,%r26,0f00000000; @ ! %r30 bra $L17; .loc 1 58 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 58 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L12; $L17: .loc 1 60 5 setp.neu.f32 %r33,%r26,0f00000000; @ %r33 bra $L12; .loc 1 62 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 62 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L12: .loc 1 64 4 setp.gt.f32 %r36,%r26,0f5a490fdb; @ ! %r36 bra $L7; .loc 1 66 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 66 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L7: .loc 1 70 1 mov.f32 %value,%r28; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j1.o/ 0 0 0 644 3154 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: j1f .visible .func (.param .f32 %value_out) j1f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_j1.c" // BEGIN GLOBAL FUNCTION DECL: y1f .visible .func (.param .f32 %value_out) y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .extern .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .extern .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: j1f .visible .func (.param .f32 %value_out) j1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .f32 %r30; .reg .pred %r31; .reg .u64 %r32; .reg .u32 %r33; mov.f32 %r25,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 36 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 37 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 37 4 setp.gt.f32 %r31,%r30,0f5a490fdb; @ ! %r31 bra $L1; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r32,[%value_in]; } .loc 1 39 12 mov.u32 %r33,34; st.u32 [%r32],%r33; .loc 1 40 13 mov.f32 %r24,0f00000000; $L1: .loc 1 44 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: y1f .visible .func (.param .f32 %value_out) y1f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r26; .reg .f32 %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; mov.f32 %r26,%ar0; .loc 1 57 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r28,[%value_in]; } .loc 1 58 4 setp.num.f32 %r29,%r26,%r26; @ ! %r29 bra $L5; .loc 1 59 11 setp.lt.f32 %r30,%r26,0f00000000; @ ! %r30 bra $L15; .loc 1 61 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 61 12 mov.u32 %r32,33; st.u32 [%r31],%r32; bra $L10; $L15: .loc 1 63 5 setp.neu.f32 %r33,%r26,0f00000000; @ %r33 bra $L10; .loc 1 65 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 65 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L10: .loc 1 67 4 setp.gt.f32 %r36,%r26,0f5a490fdb; @ ! %r36 bra $L5; .loc 1 69 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 69 12 mov.u32 %r38,34; st.u32 [%r37],%r38; $L5: .loc 1 73 1 mov.f32 %value,%r28; st.param.f32 [%value_out],%value; ret; } lib_a-wf_jn.o/ 0 0 0 644 3497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: jnf .visible .func (.param .f32 %value_out) jnf (.param .u32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_jn.c" // BEGIN GLOBAL FUNCTION DECL: ynf .visible .func (.param .f32 %value_out) ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ieee754_jnf .extern .func (.param .f32 %value_out) __ieee754_jnf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __ieee754_ynf .extern .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: jnf .visible .func (.param .f32 %value_out) jnf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .f32 %r26; .reg .f32 %r29; .reg .pred %r30; .reg .f32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u32 %r35; mov.u32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 31 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r26; call (%value_in),__ieee754_jnf,(%out_arg1,%out_arg2); ld.param.f32 %r29,[%value_in]; } .loc 1 32 4 setp.num.f32 %r30,%r26,%r26; @ ! %r30 bra $L1; .loc 1 33 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r32,[%value_in]; } .loc 1 33 4 setp.gt.f32 %r33,%r32,0f5a490fdb; @ ! %r33 bra $L1; .loc 1 35 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r34,[%value_in]; } .loc 1 35 12 mov.u32 %r35,34; st.u32 [%r34],%r35; $L1: .loc 1 39 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ynf .visible .func (.param .f32 %value_out) ynf (.param .u32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .f32 %r27; .reg .f32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u32 %r40; mov.u32 %r26,%ar0; mov.f32 %r27,%ar1; .loc 1 52 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r27; call (%value_in),__ieee754_ynf,(%out_arg1,%out_arg2); ld.param.f32 %r30,[%value_in]; } .loc 1 53 4 setp.num.f32 %r31,%r27,%r27; @ ! %r31 bra $L7; .loc 1 54 11 setp.lt.f32 %r32,%r27,0f00000000; @ ! %r32 bra $L17; .loc 1 56 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 56 12 mov.u32 %r34,33; st.u32 [%r33],%r34; bra $L12; $L17: .loc 1 58 5 setp.neu.f32 %r35,%r27,0f00000000; @ %r35 bra $L12; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r36,[%value_in]; } .loc 1 60 12 mov.u32 %r37,34; st.u32 [%r36],%r37; $L12: .loc 1 62 4 setp.gt.f32 %r38,%r27,0f5a490fdb; @ ! %r38 bra $L7; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r39,[%value_in]; } .loc 1 64 12 mov.u32 %r40,34; st.u32 [%r39],%r40; $L7: .loc 1 68 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /2115 0 0 0 644 1990 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgammaf .visible .func (.param .f32 %value_out) lgammaf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_lgamma.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .extern .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgammaf .visible .func (.param .f32 %value_out) lgammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .f32 %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; mov.f32 %r28,%ar0; .loc 1 32 13 ld.global.u64 %r32,[_impure_ptr]; add.u64 %r31,%r32,224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r33,[%value_in]; } .loc 1 34 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 34 11 setp.eq.u32 %r36,%r35,0; @ ! %r36 bra $L1; .loc 1 34 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r38,[%value_in]; } .loc 1 34 23 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L1; .loc 1 36 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r40,[%value_in]; } .loc 1 36 12 mov.u32 %r41,34; st.u32 [%r40],%r41; $L1: .loc 1 40 1 mov.f32 %value,%r33; st.param.f32 [%value_out],%value; ret; } lib_a-wf_log.o/ 0 0 0 644 1988 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: logf .visible .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_log.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: logf .visible .func (.param .f32 %value_out) logf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f32 %r36; mov.f32 %r25,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 36 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 40 setp.gt.f32 %r29,%r25,0f00000000; @ %r29 bra $L1; .loc 1 37 4 setp.neu.f32 %r30,%r25,0f00000000; @ %r30 bra $L3; .loc 1 39 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 39 12 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 40 13 mov.f32 %r24,0fff800000; bra $L1; $L3: .loc 1 43 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 43 12 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 44 13 cvta.const.u64 %r35,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r36,[%value_in]; } mov.f32 %r24,%r36; $L1: .loc 1 47 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } /2134 0 0 0 644 2003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: log10f .visible .func (.param .f32 %value_out) log10f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_log10.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10f .extern .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: log10f .visible .func (.param .f32 %value_out) log10f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .f32 %r36; mov.f32 %r25,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),__ieee754_log10f,(%out_arg1); ld.param.f32 %r27,[%value_in]; } mov.f32 %r24,%r27; .loc 1 35 4 setp.nan.f32 %r28,%r25,%r25; @ %r28 bra $L1; .loc 1 36 4 setp.le.f32 %r29,%r25,0f00000000; @ ! %r29 bra $L1; .loc 1 37 8 setp.neu.f32 %r30,%r25,0f00000000; @ %r30 bra $L4; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r31,[%value_in]; } .loc 1 39 9 mov.u32 %r32,34; st.u32 [%r31],%r32; .loc 1 40 10 mov.f32 %r24,0fff800000; bra $L1; $L4: .loc 1 43 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r33,[%value_in]; } .loc 1 43 9 mov.u32 %r34,33; st.u32 [%r33],%r34; .loc 1 44 10 cvta.const.u64 %r35,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r36,[%value_in]; } mov.f32 %r24,%r36; $L1: .loc 1 49 1 mov.f32 %value,%r24; st.param.f32 [%value_out],%value; ret; } lib_a-wf_log2.o/0 0 0 644 823 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: log2f .visible .func (.param .f32 %value_out) log2f (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_log2.c" // BEGIN GLOBAL FUNCTION DECL: logf .extern .func (.param .f32 %value_out) logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: log2f .visible .func (.param .f32 %value_out) log2f (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r24; .reg .f32 %r26; mov.f32 %r24,%ar0; .loc 1 34 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),logf,(%out_arg1); ld.param.f32 %r26,[%value_in]; } .loc 1 34 19 div.rn.f32 %value,%r26,0f3f317218; .loc 1 35 1 st.param.f32 [%value_out],%value; ret; } lib_a-wf_pow.o/ 0 0 0 644 4031 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: powf .visible .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_pow.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_powf .extern .func (.param .f32 %value_out) __ieee754_powf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: powf .visible .func (.param .f32 %value_out) powf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r32; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .pred %r52; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; mov.f32 %r33,%ar0; mov.f32 %r34,%ar1; .loc 1 35 4 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r34; call (%value_in),__ieee754_powf,(%out_arg1,%out_arg2); ld.param.f32 %r37,[%value_in]; } mov.f32 %r32,%r37; .loc 1 36 4 setp.nan.f32 %r38,%r34,%r34; @ %r38 bra $L1; .loc 1 37 4 setp.neu.f32 %r39,%r33,0f00000000; @ %r39 bra $L3; .loc 1 38 8 setp.eq.f32 %r40,%r34,0f00000000; @ %r40 bra $L7; .loc 1 43 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 43 8 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 43 19 setp.lt.f32 %r44,%r34,0f00000000; @ ! %r44 bra $L1; .loc 1 45 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 45 9 mov.u32 %r46,34; st.u32 [%r45],%r46; bra $L1; $L3: .loc 1 49 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 49 4 setp.ne.u32 %r49,%r48,0; @ %r49 bra $L5; .loc 1 50 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 50 8 setp.eq.u32 %r52,%r51,0; @ %r52 bra $L5; .loc 1 50 21 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 50 19 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L5; .loc 1 51 5 setp.num.f32 %r56,%r32,%r32; @ %r56 bra $L6; .loc 1 53 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 53 13 mov.u32 %r58,33; st.u32 [%r57],%r58; bra $L1; $L6: .loc 1 58 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 58 13 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L1; $L5: .loc 1 63 4 setp.neu.f32 %r61,%r37,0f00000000; @ %r61 bra $L1; .loc 1 63 14 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r63,[%value_in]; } .loc 1 63 12 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L1; .loc 1 63 26 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r34; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 63 24 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L1; .loc 1 65 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 65 12 mov.u32 %r69,34; st.u32 [%r68],%r69; bra $L1; $L7: .loc 1 41 10 mov.f32 %r32,0f3f800000; $L1: .loc 1 69 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } /2152 0 0 0 644 2043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: remainderf .visible .func (.param .f32 %value_out) remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_remainder.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_remainderf .extern .func (.param .f32 %value_out) __ieee754_remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: remainderf .visible .func (.param .f32 %value_out) remainderf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r27; .reg .f32 %r28; .reg .f32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .u16 %r48; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r28; call (%value_in),__ieee754_remainderf,(%out_arg1,%out_arg2); ld.param.f32 %r31,[%value_in]; } mov.f32 %r26,%r31; .loc 1 36 4 set.u32.eq.f32 %r33,%r28,0f00000000; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 35 4 set.u32.num.f32 %r36,%r28,%r28; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 36 4 cvt.u16.u8 %r48,%r32; mov.u16 %r39,%r48; cvt.u16.u8 %r48,%r35; mov.u16 %r40,%r48; and.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 38 12 mov.u32 %r45,33; st.u32 [%r44],%r45; .loc 1 39 17 mov.f32 %r46,0f00000000; div.rn.f32 %r26,%r46,%r46; $L1: .loc 1 43 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } /2174 0 0 0 644 4267 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbf .visible .func (.param .f32 %value_out) scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wf_scalb.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_scalbf .extern .func (.param .f32 %value_out) __ieee754_scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: scalbf .visible .func (.param .f32 %value_out) scalbf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .u32 %r53; .reg .u16 %r54; .reg .pred %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u32 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .f64 %r76; .reg .f64 %r78; .reg .f64 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .u16 %r86; mov.f32 %r37,%ar0; mov.f32 %r38,%ar1; .loc 1 44 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r38; call (%value_in),__ieee754_scalbf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } mov.f32 %r36,%r41; .loc 1 46 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r43,[%value_in]; } .loc 1 46 5 set.u32.num.f32 %r45,%r36,%r36; neg.s32 %r46,%r45; mov.u32 %r44,%r46; .loc 1 46 4 set.u32.eq.u32 %r48,%r43,0; neg.s32 %r49,%r48; mov.u32 %r47,%r49; .loc 1 46 5 cvt.u16.u8 %r86,%r44; mov.u16 %r51,%r86; cvt.u16.u8 %r86,%r47; mov.u16 %r52,%r86; and.b16 %r50,%r51,%r52; cvt.u32.u16 %r53,%r50; cvt.u16.u8 %r54,%r53; setp.eq.u16 %r55,%r54,0; @ %r55 bra $L2; .loc 1 46 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 46 28 setp.eq.u32 %r58,%r57,0; @ %r58 bra $L2; .loc 1 48 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 48 12 mov.u32 %r60,34; st.u32 [%r59],%r60; .loc 1 49 34 setp.gt.f32 %r61,%r37,0f00000000; selp.f32 %r36,0f7f800000,0fff800000,%r61; bra $L1; $L2: .loc 1 51 6 set.u32.eq.f32 %r63,%r41,0f00000000; neg.s32 %r64,%r63; mov.u32 %r62,%r64; .loc 1 51 15 set.u32.neu.f32 %r66,%r37,%r41; neg.s32 %r67,%r66; mov.u32 %r65,%r67; .loc 1 51 12 cvt.u16.u8 %r86,%r62; mov.u16 %r69,%r86; cvt.u16.u8 %r86,%r65; mov.u16 %r70,%r86; and.b16 %r68,%r69,%r70; cvt.u32.u16 %r71,%r68; .loc 1 51 4 cvt.u16.u8 %r72,%r71; setp.eq.u16 %r73,%r72,0; @ %r73 bra $L4; .loc 1 53 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 53 12 mov.u32 %r75,34; st.u32 [%r74],%r75; .loc 1 54 13 cvt.f64.f32 %r78,%r37; mov.f64 %r76,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r76; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r78; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r79,[%value_in]; } cvt.rn.f32.f64 %r36,%r79; bra $L1; $L4: .loc 1 57 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r81,[%value_in]; } .loc 1 57 4 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L1; .loc 1 57 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 57 25 mov.u32 %r84,34; st.u32 [%r83],%r84; $L1: .loc 1 61 1 mov.f32 %value,%r36; st.param.f32 [%value_out],%value; ret; } /2192 0 0 0 644 1270 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sincosf .visible .func sincosf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libm/math/wf_sincos.c" // BEGIN GLOBAL FUNCTION DECL: sinf .extern .func (.param .f32 %value_out) sinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: cosf .extern .func (.param .f32 %value_out) cosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: sincosf .visible .func sincosf (.param .f32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .f32 %r28; .reg .f32 %r30; mov.f32 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 17 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } .loc 1 17 9 st.f32 [%r25],%r28; .loc 1 18 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 18 9 st.f32 [%r26],%r30; .loc 1 19 1 ret; } lib_a-wf_sinh.o/0 0 0 644 1846 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sinhf .visible .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_sinh.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sinhf .extern .func (.param .f32 %value_out) __ieee754_sinhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sinhf .visible .func (.param .f32 %value_out) sinhf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; mov.f32 %r26,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),__ieee754_sinhf,(%out_arg1); ld.param.f32 %r28,[%value_in]; } mov.f32 %r25,%r28; .loc 1 36 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r25; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r30,[%value_in]; } .loc 1 36 4 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L1; .loc 1 36 18 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r26; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 36 16 setp.eq.u32 %r34,%r33,0; @ %r34 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r35,[%value_in]; } .loc 1 38 12 mov.u32 %r36,34; st.u32 [%r35],%r36; .loc 1 39 36 setp.gt.f32 %r37,%r26,0f00000000; selp.f32 %r25,0f7f800000,0fff800000,%r37; $L1: .loc 1 43 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-wf_sqrt.o/0 0 0 644 1369 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sqrtf .visible .func (.param .f32 %value_out) sqrtf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_sqrt.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: sqrtf .visible .func (.param .f32 %value_out) sqrtf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r26; .reg .pred %r27; .reg .pred %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .f32 %r31; mov.f32 %r24,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r26,[%value_in]; } mov.f32 %r23,%r26; .loc 1 35 4 setp.nan.f32 %r27,%r24,%r24; @ %r27 bra $L1; .loc 1 36 4 setp.lt.f32 %r28,%r24,0f00000000; @ ! %r28 bra $L1; .loc 1 38 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r29,[%value_in]; } .loc 1 38 12 mov.u32 %r30,33; st.u32 [%r29],%r30; .loc 1 39 17 mov.f32 %r31,0f00000000; div.rn.f32 %r23,%r31,%r31; $L1: .loc 1 43 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } /2211 0 0 0 644 2182 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tgammaf .visible .func (.param .f32 %value_out) tgammaf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/math/wf_tgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_tgammaf .extern .func (.param .f32 %value_out) __ieee754_tgammaf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: tgammaf .visible .func (.param .f32 %value_out) tgammaf (.param .f32 %in_ar0) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f64 %r26; .reg .f32 %r28; .reg .f32 %r30; .reg .pred %r31; .reg .f64 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; mov.f32 %r28,%ar0; .loc 1 28 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),__ieee754_tgammaf,(%out_arg1); ld.param.f32 %r30,[%value_in]; } .loc 1 34 4 setp.lt.f32 %r31,%r28,0f00000000; @ ! %r31 bra $L10; .loc 1 34 16 cvt.f64.f32 %r26,%r28; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),floor,(%out_arg1); ld.param.f64 %r33,[%value_in]; } .loc 1 34 13 setp.neu.f64 %r34,%r26,%r33; @ %r34 bra $L4; .loc 1 35 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r35,[%value_in]; } .loc 1 35 12 mov.u32 %r36,33; st.u32 [%r35],%r36; bra $L1; $L10: .loc 1 34 16 cvt.f64.f32 %r26,%r28; $L4: .loc 1 36 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r26; call (%value_in),finite,(%out_arg1); ld.param.u32 %r38,[%value_in]; } .loc 1 36 12 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L1; .loc 1 37 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r40,[%value_in]; } .loc 1 37 12 mov.u32 %r41,34; st.u32 [%r40],%r41; $L1: .loc 1 40 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /2230 0 0 0 644 1023 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gamma_r .visible .func (.param .f64 %value_out) gamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wr_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgamma_r .extern .func (.param .f64 %value_out) lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: gamma_r .visible .func (.param .f64 %value_out) gamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.f64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 30 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 31 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /2248 0 0 0 644 2573 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgamma_r .visible .func (.param .f64 %value_out) lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wr_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgamma_r .extern .func (.param .f64 %value_out) __ieee754_lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgamma_r .visible .func (.param .f64 %value_out) lgamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .u64 %r29; .reg .f64 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r37; .reg .pred %r38; .reg .f64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; mov.f64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 34 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r32,[%value_in]; } .loc 1 36 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 36 11 setp.eq.u32 %r35,%r34,0; @ ! %r35 bra $L1; .loc 1 36 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r37,[%value_in]; } .loc 1 36 22 setp.eq.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 37 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),floor,(%out_arg1); ld.param.f64 %r40,[%value_in]; } .loc 1 37 8 setp.neu.f64 %r41,%r40,%r28; @ %r41 bra $L5; .loc 1 37 20 setp.le.f64 %r42,%r28,0d0000000000000000; @ ! %r42 bra $L5; .loc 1 39 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r43,[%value_in]; } .loc 1 39 14 mov.u32 %r44,33; st.u32 [%r43],%r44; bra $L1; $L5: .loc 1 42 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 42 14 mov.u32 %r46,34; st.u32 [%r45],%r46; $L1: .loc 1 46 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /2267 0 0 0 644 1031 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gammaf_r .visible .func (.param .f32 %value_out) gammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wrf_gamma.c" // BEGIN GLOBAL FUNCTION DECL: lgammaf_r .extern .func (.param .f32 %value_out) lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: gammaf_r .visible .func (.param .f32 %value_out) gammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r23; .reg .u64 %r24; .reg .f32 %r27; mov.f32 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 30 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r27,[%value_in]; } .loc 1 31 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } /2286 0 0 0 644 2578 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lgammaf_r .visible .func (.param .f32 %value_out) lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/wrf_lgamma.c" // BEGIN GLOBAL FUNCTION DECL: __ieee754_lgammaf_r .extern .func (.param .f32 %value_out) __ieee754_lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: floorf .extern .func (.param .f32 %value_out) floorf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: lgammaf_r .visible .func (.param .f32 %value_out) lgammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r37; .reg .pred %r38; .reg .f32 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; mov.f32 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 34 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r32,[%value_in]; } .loc 1 36 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 36 11 setp.eq.u32 %r35,%r34,0; @ ! %r35 bra $L1; .loc 1 36 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r37,[%value_in]; } .loc 1 36 23 setp.eq.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 37 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r28; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r40,[%value_in]; } .loc 1 37 8 setp.neu.f32 %r41,%r40,%r28; @ %r41 bra $L5; .loc 1 37 21 setp.le.f32 %r42,%r28,0f00000000; @ ! %r42 bra $L5; .loc 1 39 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r43,[%value_in]; } .loc 1 39 9 mov.u32 %r44,33; st.u32 [%r43],%r44; bra $L1; $L5: .loc 1 42 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 42 9 mov.u32 %r46,34; st.u32 [%r45],%r46; $L1: .loc 1 47 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } 0707010000008c000081a4000000000000000000000002630c8f2800000000000000000000000000000000000000000000001c00000000./usr/nvptx-none/lib/libc.a0707010000008c000081a4000000000000000000000002630c8f2800294d6a000000000000000000000000000000000000001c00000000./usr/nvptx-none/lib/libg.a! // 2240 ` lib_a-__adjust.o/ lib_a-__atexit.o/ lib_a-__call_atexit.o/ lib_a-__dprintf.o/ lib_a-__ten_mu.o/ lib_a-aligned_alloc.o/ lib_a-arc4random.o/ lib_a-arc4random_uniform.o/ lib_a-asctime_r.o/ lib_a-clearerr.o/ lib_a-cxa_atexit.o/ lib_a-cxa_finalize.o/ lib_a-difftime.o/ lib_a-dtoastub.o/ lib_a-explicit_bzero.o/ lib_a-fiprintf.o/ lib_a-gdtoa-gethex.o/ lib_a-gdtoa-hexnan.o/ lib_a-getchar_u.o/ lib_a-getdelim.o/ lib_a-getenv_r.o/ lib_a-getreent.o/ lib_a-gettimeofdayr.o/ lib_a-gettzinfo.o/ lib_a-gmtime_r.o/ lib_a-isxdigit.o/ lib_a-lcltime_r.o/ lib_a-localeconv.o/ lib_a-mallinfor.o/ lib_a-mallstatsr.o/ lib_a-mbstowcs.o/ lib_a-mbstowcs_r.o/ lib_a-mbtowc_r.o/ lib_a-month_lengths.o/ lib_a-on_exit_args.o/ lib_a-putchar_u.o/ lib_a-quick_exit.o/ lib_a-reallocarray.o/ lib_a-reallocf.o/ lib_a-reallocr.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_scalbn.o/ lib_a-sb_charsets.o/ lib_a-setbuffer.o/ lib_a-setlinebuf.o/ lib_a-sf_copysign.o/ lib_a-sf_finite.o/ lib_a-sf_fpclassify.o/ lib_a-sf_frexp.o/ lib_a-sf_isinf.o/ lib_a-sf_isinff.o/ lib_a-sf_isnan.o/ lib_a-sf_isnanf.o/ lib_a-sf_ldexp.o/ lib_a-sf_scalbn.o/ lib_a-siprintf.o/ lib_a-sniprintf.o/ lib_a-snprintf.o/ lib_a-strcasecmp.o/ lib_a-strdup_r.o/ lib_a-strerror.o/ lib_a-strerror_r.o/ lib_a-strftime.o/ lib_a-strncasecmp.o/ lib_a-strptime.o/ lib_a-strsignal.o/ lib_a-strtoimax.o/ lib_a-strtok_r.o/ lib_a-strtoll_r.o/ lib_a-strtoull.o/ lib_a-strtoull_r.o/ lib_a-strtoumax.o/ lib_a-svfiprintf.o/ lib_a-svfiscanf.o/ lib_a-svfiwprintf.o/ lib_a-svfiwscanf.o/ lib_a-svfprintf.o/ lib_a-svfscanf.o/ lib_a-svfwprintf.o/ lib_a-svfwscanf.o/ lib_a-timingsafe_bcmp.o/ lib_a-timingsafe_memcmp.o/ lib_a-tzcalc_limits.o/ lib_a-u_strerr.o/ lib_a-vdiprintf.o/ lib_a-vdprintf.o/ lib_a-vfiprintf.o/ lib_a-vfiscanf.o/ lib_a-vfiwprintf.o/ lib_a-vfiwscanf.o/ lib_a-vfprintf.o/ lib_a-vfwprintf.o/ lib_a-vfwscanf.o/ lib_a-viprintf.o/ lib_a-vsiprintf.o/ lib_a-vsiscanf.o/ lib_a-vsniprintf.o/ lib_a-vsnprintf.o/ lib_a-vsprintf.o/ lib_a-wcsftime.o/ lib_a-wcstoimax.o/ lib_a-wcstoll_r.o/ lib_a-wcstombs.o/ lib_a-wcstombs_r.o/ lib_a-wcstoull.o/ lib_a-wcstoull_r.o/ lib_a-wcstoumax.o/ lib_a-wcswidth.o/ lib_a-wctomb_r.o/ lib_a-wmemmove.o/ lib_a-xpg_strerror_r.o/ lib_a-_Exit.o/ 0 0 0 644 588 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _Exit .visible .func _Exit (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/_Exit.c" // BEGIN GLOBAL FUNCTION DECL: _exit .extern .func _exit (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _Exit .visible .func _Exit (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r22; mov.u32 %r22,%ar0; .loc 1 39 3 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r22; call _exit,(%out_arg1); trap; // (noreturn) exit; // (noreturn) } } /0 0 0 0 644 2265 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __adjust .visible .func (.param .f64 %value_out) __adjust (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/__adjust.c" // BEGIN GLOBAL FUNCTION DECL: __exp10 .extern .func (.param .f64 %value_out) __exp10 (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __adjust .visible .func (.param .f64 %value_out) __adjust (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .f64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u32 %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r41; .reg .f64 %r42; .reg .f64 %r44; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u32 %r30,%ar2; mov.u32 %r31,%ar3; .loc 1 22 6 setp.le.s32 %r32,%r30,308; @ %r32 bra $L2; .loc 1 24 19 mov.u32 %r33,34; st.u32 [%r28],%r33; .loc 1 25 33 setp.ne.u32 %r34,%r31,0; selp.f64 %r27,0dfff0000000000000,0d7ff0000000000000,%r34; bra $L1; $L2: .loc 1 27 11 setp.ge.s32 %r35,%r30,-308; @ %r35 bra $L4; .loc 1 29 19 mov.u32 %r36,34; st.u32 [%r28],%r36; .loc 1 30 14 mov.f64 %r27,0d0000000000000000; bra $L1; $L4: .loc 1 33 5 ld.f64 %r27,[%r29]; .loc 1 34 6 setp.eq.u32 %r37,%r31,0; @ %r37 bra $L5; .loc 1 35 7 neg.f64 %r27,%r27; $L5: .loc 1 36 6 setp.eq.u32 %r38,%r30,0; @ %r38 bra $L1; .loc 1 39 6 setp.ge.s32 %r39,%r30,0; @ %r39 bra $L6; .loc 1 40 25 neg.s32 %r41,%r30; .loc 1 40 16 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r41; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 40 14 div.rn.f64 %r27,%r27,%r42; bra $L1; $L6: .loc 1 42 16 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r30; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 42 14 mul.f64 %r27,%r27,%r44; $L1: .loc 1 43 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /18 0 0 0 644 3191 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __register_exitproc .visible .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/__atexit.c" // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __register_exitproc .visible .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r27; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r63; mov.u32 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; mov.u64 %r39,%ar3; .loc 1 80 7 ld.const.u64 %r22,[_global_impure_ptr]; .loc 1 80 5 ld.u64 %r33,[%r22+504]; .loc 1 81 6 setp.ne.u64 %r40,%r33,0; @ %r40 bra $L2; .loc 1 83 26 add.u64 %r33,%r22,512; .loc 1 83 22 st.u64 [%r22+504],%r33; $L2: .loc 1 90 8 ld.u32 %r23,[%r33+8]; .loc 1 90 6 setp.gt.s32 %r41,%r23,31; @ %r41 bra $L3; .loc 1 154 18 add.u32 %r34,%r23,1; bra $L4; $L3: .loc 1 98 30 mov.u64 %r42,792; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r43,[%value_in]; } mov.u64 %r33,%r43; .loc 1 99 10 setp.eq.u64 %r45,%r33,0; @ %r45 bra $L9; .loc 1 106 15 mov.u32 %r46,0; st.u32 [%r33+8],%r46; .loc 1 107 16 ld.u64 %r47,[%r22+504]; st.u64 [%r33],%r47; .loc 1 108 22 st.u64 [%r22+504],%r33; .loc 1 110 33 mov.u64 %r48,0; st.u64 [%r33+784],%r48; mov.u32 %r34,1; mov.u32 %r23,%r46; $L4: .loc 1 118 6 setp.ne.u32 %r49,%r36,0; @ %r49 bra $L6; cvt.s64.s32 %r63,%r23; bra $L7; $L6: cvt.s64.s32 %r63,%r23; shl.b64 %r51,%r63,3; add.u64 %r32,%r33,%r51; .loc 1 148 30 st.u64 [%r32+272],%r38; .loc 1 149 28 mov.u32 %r52,1; shl.b32 %r27,%r52,%r23; .loc 1 149 22 ld.u32 %r54,[%r33+784]; or.b32 %r53,%r54,%r27; st.u32 [%r33+784],%r53; .loc 1 150 34 st.u64 [%r32+528],%r39; .loc 1 151 10 setp.ne.u32 %r55,%r36,2; @ %r55 bra $L7; .loc 1 152 16 ld.u32 %r57,[%r33+788]; or.b32 %r56,%r57,%r27; st.u32 [%r33+788],%r56; $L7: .loc 1 154 18 st.u32 [%r33+8],%r34; .loc 1 154 22 add.u64 %r59,%r63,2; shl.b64 %r60,%r59,3; add.u64 %r61,%r33,%r60; st.u64 [%r61],%r37; .loc 1 158 10 mov.u32 %r35,0; bra $L1; $L9: .loc 1 104 11 mov.u32 %r35,-1; $L1: .loc 1 159 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } /36 0 0 0 644 3805 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __call_exitprocs .visible .func __call_exitprocs (.param .u32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/__call_atexit.c" // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __call_exitprocs .visible .func __call_exitprocs (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r27; .reg .u64 %r34; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r80; .reg .pred %r83; mov.u32 %r48,%ar0; mov.u64 %r49,%ar1; .loc 1 86 7 ld.const.u64 %r47,[_global_impure_ptr]; .loc 1 87 9 add.u64 %r36,%r47,504; setp.eq.u64 %r83,%r49,0; $L24: .loc 1 86 5 ld.u64 %r39,[%r47+504]; .loc 1 88 10 setp.ne.u64 %r50,%r39,0; @ ! %r50 bra $L1; .loc 1 87 9 mov.u64 %r34,%r36; $L2: .loc 1 95 17 ld.u32 %r37,[%r39+8]; .loc 1 95 14 add.u32 %r42,%r37,-1; .loc 1 95 31 setp.lt.s32 %r51,%r42,0; @ %r51 bra $L3; cvt.s64.s32 %r52,%r37; add.u64 %r53,%r52,1; shl.b64 %r54,%r53,3; add.u64 %r43,%r39,%r54; $L12: .loc 1 102 7 @ %r83 bra $L4; .loc 1 102 20 ld.u64 %r56,[%r43+512]; setp.ne.u64 %r57,%r56,%r49; @ %r57 bra $L5; $L4: .loc 1 107 7 ld.u64 %r41,[%r43]; .loc 1 108 21 add.u32 %r58,%r37,-1; .loc 1 108 7 setp.ne.u32 %r59,%r58,%r42; @ %r59 bra $L6; .loc 1 109 13 st.u32 [%r39+8],%r42; mov.u32 %r37,%r42; bra $L7; $L6: .loc 1 111 17 mov.u64 %r60,0; st.u64 [%r43],%r60; $L7: .loc 1 114 7 setp.eq.u64 %r61,%r41,0; @ %r61 bra $L5; .loc 1 99 6 mov.u32 %r62,1; shl.b32 %r27,%r62,%r42; .loc 1 120 33 ld.u32 %r64,[%r39+784]; and.b32 %r63,%r27,%r64; .loc 1 120 14 setp.ne.u32 %r65,%r63,0; @ %r65 bra $L8; .loc 1 121 6 { $LCT0: .callprototype _; call %r41,$LCT0; } bra $L9; $L8: .loc 1 123 7 ld.u64 %r44,[%r43+256]; .loc 1 122 28 ld.u32 %r67,[%r39+788]; and.b32 %r66,%r27,%r67; .loc 1 122 12 setp.ne.u32 %r68,%r66,0; @ %r68 bra $L10; .loc 1 123 7 { $LCT1: .callprototype _ ( .param .u32 %in_ar0,.param .u64 %in_ar1); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call %r41,(%out_arg1,%out_arg2),$LCT1; } bra $L9; $L10: .loc 1 125 7 { $LCT2: .callprototype _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call %r41,(%out_arg1),$LCT2; } $L9: .loc 1 130 7 ld.u32 %r72,[%r39+8]; setp.ne.u32 %r73,%r72,%r37; @ %r73 bra $L24; .loc 1 130 23 ld.u64 %r74,[%r34]; setp.ne.u64 %r75,%r74,%r39; @ %r75 bra $L24; $L5: .loc 1 95 38 add.u32 %r42,%r42,-1; .loc 1 95 31 add.u64 %r43,%r43,-8; setp.ne.u32 %r76,%r42,-1; @ %r76 bra $L12; $L3: .loc 1 139 28 ld.u64 %r46,[%r39]; .loc 1 139 10 setp.ne.u32 %r77,%r37,0; @ %r77 bra $L13; .loc 1 139 24 setp.eq.u64 %r78,%r46,0; @ %r78 bra $L13; .loc 1 142 11 st.u64 [%r34],%r46; .loc 1 147 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call __nvptx_free,(%out_arg1); } .loc 1 148 6 ld.u64 %r39,[%r34]; bra $L14; $L13: .loc 1 152 10 mov.u64 %r34,%r39; .loc 1 139 28 mov.u64 %r39,%r46; $L14: .loc 1 88 10 setp.ne.u64 %r80,%r39,0; @ %r80 bra $L2; $L1: .loc 1 161 1 ret; } /59 0 0 0 644 14905 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: print_number .func print_number (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/misc/__dprintf.c" // BEGIN GLOBAL FUNCTION DECL: __dprintf .visible .func __dprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __unctrl .extern .const .align 8 .u64 __unctrl[256]; // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN VAR DEF: chars$0 .const .align 1 .u8 chars$0[16] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102 }; // BEGIN VAR DEF: big_endian_p .global .align 4 .u32 big_endian_p[1]; // BEGIN FUNCTION DEF: print_number .func print_number (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u64 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r68; .reg .u32 %r70; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u16 %r76; mov.u32 %r36,%ar0; mov.u32 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 230 7 xor.b32 %r39,%r37,1; mov.u32 %r40,%r39; cvt.u16.u8 %r76,%r40; mov.u16 %r42,%r76; and.b16 %r41,%r42,1; cvt.u32.u16 %r43,%r41; .loc 1 230 24 shr.u64 %r45,%r38,63; cvt.u32.u64 %r46,%r45; .loc 1 230 19 cvt.u16.u8 %r76,%r43; mov.u16 %r48,%r76; cvt.u16.u8 %r76,%r46; mov.u16 %r49,%r76; and.b16 %r47,%r48,%r49; cvt.u32.u16 %r50,%r47; .loc 1 230 6 cvt.u16.u8 %r51,%r50; setp.eq.u16 %r52,%r51,0; @ %r52 bra $L2; mov.u32 %r53,45; st.u8 [%frame],%r53; .loc 1 257 3 ld.global.u64 %r58,[_impure_ptr]; mov.u64 %r57,1; mov.u32 %r55,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r57; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r59,[%value_in]; } .loc 1 233 11 neg.s64 %r29,%r38; bra $L3; $L2: .loc 1 236 7 mov.u64 %r29,%r38; $L3: .loc 1 239 8 mov.u32 %r60,0; st.u8 [%frame+31],%r60; .loc 1 242 22 cvt.s64.s32 %r35,%r36; .loc 1 239 8 add.u64 %r28,%frame,31; cvta.const.u64 %r75,chars$0; $L4: .loc 1 242 12 add.u64 %r28,%r28,-1; .loc 1 242 22 rem.u64 %r63,%r29,%r35; .loc 1 242 19 add.u64 %r64,%r75,%r63; .loc 1 242 12 ld.u8 %r65,[%r64]; st.u8 [%r28],%r65; mov.u64 %r34,%r29; .loc 1 243 9 div.u64 %r29,%r29,%r35; .loc 1 245 12 setp.ge.u64 %r66,%r34,%r35; @ %r66 bra $L4; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r68,[%value_in]; } ld.global.u64 %r73,[_impure_ptr]; mov.u32 %r70,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r70; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r68; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r74,[%value_in]; } .loc 1 248 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __dprintf .visible .func __dprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u64 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r74; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r80; .reg .u32 %r88; .reg .u64 %r90; .reg .u32 %r91; .reg .pred %r93; .reg .u16 %r94; .reg .pred %r95; .reg .u16 %r96; .reg .pred %r97; .reg .u32 %r98; .reg .u32 %r100; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .pred %r106; .reg .pred %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u64 %r124; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r131; .reg .u32 %r133; .reg .u64 %r136; .reg .u64 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u64 %r140; .reg .u32 %r145; .reg .pred %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u32 %r153; .reg .u64 %r154; .reg .u64 %r156; .reg .u64 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r163; .reg .u64 %r174; .reg .u32 %r176; .reg .u64 %r179; .reg .u64 %r180; .reg .pred %r182; .reg .pred %r184; .reg .pred %r186; .reg .pred %r188; .reg .pred %r190; .reg .pred %r192; .reg .pred %r194; .reg .pred %r196; .reg .u64 %r197; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u64 %r204; .reg .u32 %r206; .reg .u64 %r209; .reg .u64 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u64 %r213; .reg .u64 %r218; .reg .u32 %r220; .reg .u64 %r223; .reg .u64 %r224; .reg .pred %r225; .reg .u16 %r227; .reg .u32 %r228; .reg .u32 %r230; .reg .u32 %r232; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r236; .reg .pred %r237; .reg .pred %r238; .reg .u32 %r239; .reg .pred %r240; .reg .pred %r241; .reg .u32 %r242; .reg .pred %r243; .reg .pred %r244; .reg .pred %r245; .reg .pred %r246; .reg .pred %r247; mov.u64 %r90,%ar0; .loc 1 70 18 mov.u32 %r91,0; st.global.u32 [big_endian_p],%r91; .loc 1 74 3 mov.u64 %r49,%args; .loc 1 79 10 ld.s8 %r36,[%r90]; setp.ne.u32 %r93,%r36,0; @ ! %r93 bra $L6; $L7: .loc 1 85 10 cvt.u16.u32 %r94,%r36; setp.eq.u16 %r95,%r94,37; @ %r95 bra $L8; .loc 1 87 4 ld.s8 %r38,[%r90]; bra $L9; $L8: .loc 1 85 26 ld.s8 %r38,[%r90+1]; .loc 1 85 23 cvt.u16.u32 %r96,%r38; setp.ne.u16 %r97,%r96,37; @ %r97 bra $L10; add.u64 %r90,%r90,1; $L9: .loc 1 87 20 add.u64 %r90,%r90,1; cvt.u32.u32 %r98,%r38; st.u8 [%frame],%r98; .loc 1 257 3 ld.global.u64 %r103,[_impure_ptr]; mov.u64 %r102,1; mov.u32 %r100,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r103; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r100; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r102; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r104,[%value_in]; } .loc 1 88 4 bra $L11; $L10: .loc 1 91 10 setp.ne.u16 %r106,%r96,78; @ %r106 bra $L12; .loc 1 93 10 ld.u32 %r46,[%r49]; .loc 1 94 6 add.u64 %r56,%r49,11; and.b64 %r57,%r56,-8; add.u64 %r49,%r57,8; ld.u64 %r51,[%r57]; .loc 1 96 12 add.u64 %r47,%r90,3; .loc 1 96 6 ld.s8 %r48,[%r90+2]; .loc 1 98 19 add.u32 %r88,%r46,-1; setp.lt.s32 %r107,%r88,0; @ %r107 bra $L33; .loc 1 100 8 cvt.u16.u32 %r108,%r48; setp.eq.u16 %r109,%r108,112; setp.gt.s16 %r238,%r108,112; .loc 1 112 5 set.u32.ne.u16 %r239,%r108,100; .loc 1 207 10 setp.ne.u16 %r240,%r108,100; .loc 1 112 5 setp.eq.u16 %r241,%r108,120; selp.u32 %r242,16,10,%r241; .loc 1 100 8 setp.eq.u16 %r243,%r108,115; setp.le.s16 %r244,%r108,114; setp.eq.u16 %r245,%r108,117; setp.eq.u16 %r246,%r108,99; setp.eq.u16 %r247,%r108,100; $L31: @ %r109 bra $L13; @ %r238 bra $L14; @ %r246 bra $L15; @ %r247 bra $L16; bra $L17; $L14: @ %r243 bra $L18; @ %r244 bra $L17; @ %r245 bra $L16; @ %r241 bra $L16; bra $L17; $L15: .loc 1 103 19 add.u64 %r50,%r51,1; cvta.const.u64 %r124,__unctrl; ld.u8 %r127,[%r51]; shl.b64 %r128,%r127,3; add.u64 %r129,%r124,%r128; ld.u64 %r27,[%r129]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r131,[%value_in]; } ld.global.u64 %r136,[_impure_ptr]; mov.u32 %r133,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r136; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r133; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r131; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r137,[%value_in]; } .loc 1 103 19 mov.u64 %r51,%r50; .loc 1 268 1 bra $L17; $L13: .loc 1 106 5 mov.u64 %r140,0; mov.u32 %r139,1; mov.u32 %r138,16; { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r138; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r139; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r140; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 107 7 add.u64 %r51,%r51,8; .loc 1 108 5 bra $L17; $L16: .loc 1 112 5 neg.s32 %r29,%r239; .loc 1 204 63 ld.u8 %r41,[%r51+3]; .loc 1 204 50 ld.u8 %r37,[%r51+2]; .loc 1 204 7 ld.u8 %r23,[%r51]; .loc 1 203 10 ld.global.u32 %r145,[big_endian_p]; setp.eq.u32 %r146,%r145,0; @ %r146 bra $L19; .loc 1 204 18 shl.b64 %r147,%r23,24; .loc 1 204 28 ld.u8 %r148,[%r51+1]; .loc 1 204 39 shl.b64 %r150,%r148,16; .loc 1 204 25 or.b64 %r151,%r147,%r150; .loc 1 204 4 or.b64 %r152,%r151,%r41; .loc 1 204 54 shl.b32 %r153,%r37,8; cvt.s64.s32 %r154,%r153; .loc 1 204 4 or.b64 %r60,%r152,%r154; bra $L20; $L19: .loc 1 206 4 ld.u8 %r156,[%r51+1]; shl.b64 %r157,%r156,8; or.b64 %r158,%r157,%r23; ld.u8 %r159,[%r51+2]; shl.b64 %r160,%r159,16; or.b64 %r161,%r160,%r158; shl.b64 %r163,%r41,24; or.b64 %r60,%r163,%r161; $L20: .loc 1 207 10 @ %r240 bra $L21; .loc 1 208 9 xor.b64 %r80,%r60,2147483648; .loc 1 208 4 add.u64 %r60,%r80,-2147483648; .loc 1 112 5 mov.u32 %r39,10; bra $L22; $L21: mov.u32 %r39,%r242; $L22: { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r39; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r60; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 114 7 add.u64 %r51,%r51,4; .loc 1 115 5 bra $L17; $L18: .loc 1 117 5 ld.u64 %r30,[%r51]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r174,[%value_in]; } ld.global.u64 %r179,[_impure_ptr]; mov.u32 %r176,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r179; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r176; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r174; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r180,[%value_in]; } .loc 1 118 7 add.u64 %r51,%r51,8; .loc 1 119 5 bra $L17; $L12: .loc 1 127 20 add.u64 %r90,%r90,2; .loc 1 127 4 setp.eq.u16 %r182,%r96,112; @ %r182 bra $L23; setp.gt.s16 %r184,%r96,112; @ %r184 bra $L24; setp.eq.u16 %r186,%r96,99; @ %r186 bra $L25; setp.eq.u16 %r188,%r96,100; @ %r188 bra $L26; bra $L11; $L24: setp.eq.u16 %r190,%r96,115; @ %r190 bra $L27; setp.le.s16 %r192,%r96,114; @ %r192 bra $L11; setp.eq.u16 %r194,%r96,117; @ %r194 bra $L26; setp.eq.u16 %r196,%r96,120; @ %r196 bra $L28; bra $L11; $L25: .loc 1 130 12 mov.u64 %r63,%r49; add.u64 %r49,%r49,4; .loc 1 131 22 cvta.const.u64 %r197,__unctrl; ld.u8 %r200,[%r63]; shl.b64 %r201,%r200,3; add.u64 %r202,%r197,%r201; ld.u64 %r34,[%r202]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r204,[%value_in]; } ld.global.u64 %r209,[_impure_ptr]; mov.u32 %r206,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r209; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r206; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r34; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r204; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r210,[%value_in]; } .loc 1 268 1 bra $L11; $L23: .loc 1 134 27 add.u64 %r59,%r49,7; and.b64 %r62,%r59,-8; add.u64 %r49,%r62,8; .loc 1 135 8 ld.u64 %r213,[%r62]; mov.u32 %r212,1; mov.u32 %r211,16; { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r212; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r213; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 136 8 bra $L11; $L30: .loc 1 141 8 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r40; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r76; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r77; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 142 8 bra $L11; $L27: .loc 1 144 10 add.u64 %r61,%r49,7; and.b64 %r65,%r61,-8; add.u64 %r49,%r65,8; ld.u64 %r43,[%r65]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r218,[%value_in]; } ld.global.u64 %r223,[_impure_ptr]; mov.u32 %r220,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r223; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r220; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r218; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r224,[%value_in]; } .loc 1 268 1 bra $L11; $L33: .loc 1 96 12 mov.u64 %r90,%r47; $L11: .loc 1 79 10 ld.s8 %r36,[%r90]; setp.ne.u32 %r225,%r36,0; @ %r225 bra $L7; bra $L6; $L26: .loc 1 140 12 mov.u64 %r74,%r49; add.u64 %r49,%r49,4; .loc 1 140 10 ld.s32 %r77,[%r74]; .loc 1 141 8 cvt.u16.u32 %r227,%r38; set.u32.ne.u16 %r228,%r227,100; neg.s32 %r76,%r228; mov.u32 %r40,10; bra $L30; $L28: .loc 1 140 12 mov.u64 %r58,%r49; add.u64 %r49,%r49,4; .loc 1 140 10 ld.s32 %r77,[%r58]; .loc 1 141 8 mov.u32 %r76,1; mov.u32 %r40,16; bra $L30; $L32: mov.u32 %r230,32; st.u8 [%frame],%r230; .loc 1 257 3 ld.global.u64 %r235,[_impure_ptr]; mov.u64 %r234,1; mov.u32 %r232,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r235; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r232; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r234; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r236,[%value_in]; } .loc 1 98 19 add.u32 %r88,%r88,-1; bra $L31; $L17: .loc 1 121 11 setp.ne.u32 %r237,%r88,0; @ %r237 bra $L32; .loc 1 96 12 mov.u64 %r90,%r47; bra $L11; $L6: .loc 1 152 1 ret; } lib_a-__exp10.o/0 0 0 644 5796 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __exp10 .visible .func (.param .f64 %value_out) __exp10 (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/__exp10.c" // BEGIN VAR DEF: powtab$0 .const .align 8 .u64 powtab$0[5] = {4607182418800017408,4621819117588971520,4636737291354636288,4652007308841189376,4666723172467343360 }; // BEGIN GLOBAL FUNCTION DEF: __exp10 .visible .func (.param .f64 %value_out) __exp10 (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r26; .reg .f64 %r32; .reg .f64 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r52; .reg .f64 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u32 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u32 %r84; .reg .f64 %r85; .reg .u32 %r87; .reg .f64 %r88; .reg .f64 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .u32 %r98; .reg .pred %r99; .reg .u32 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .u32 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .pred %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u32 %r116; .reg .f64 %r117; .reg .u32 %r119; .reg .f64 %r120; mov.u32 %r59,%ar0; .loc 1 18 6 setp.gt.u32 %r60,%r59,4; @ %r60 bra $L2; .loc 1 19 20 cvta.const.u64 %r61,powtab$0; cvt.u64.u32 %r62,%r59; shl.b64 %r63,%r62,3; add.u64 %r64,%r61,%r63; ld.f64 %r58,[%r64]; bra $L1; $L2: .loc 1 20 14 and.b32 %r65,%r59,1; .loc 1 20 11 setp.eq.u32 %r66,%r65,0; @ %r66 bra $L4; .loc 1 22 21 add.u32 %r23,%r59,-1; .loc 1 18 6 setp.eq.u32 %r67,%r59,5; @ %r67 bra $L19; .loc 1 20 14 and.b32 %r68,%r23,1; .loc 1 20 11 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L6; .loc 1 18 6 setp.eq.u32 %r70,%r59,6; @ %r70 bra $L20; .loc 1 22 21 add.u32 %r72,%r59,-3; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r72; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 22 19 mul.f64 %r74,%r73,0d4024000000000000; mul.f64 %r75,%r74,0d4024000000000000; mul.f64 %r58,%r75,0d4024000000000000; bra $L1; $L20: mov.f64 %r58,0d412e848000000000; bra $L1; $L6: .loc 1 26 18 shr.u32 %r26,%r23,1; .loc 1 18 6 setp.gt.u32 %r76,%r23,9; @ %r76 bra $L8; .loc 1 19 20 cvta.const.u64 %r77,powtab$0; cvt.u64.u32 %r78,%r26; shl.b64 %r79,%r78,3; add.u64 %r80,%r77,%r79; ld.f64 %r32,[%r80]; bra $L9; $L8: .loc 1 20 14 and.b32 %r81,%r26,1; .loc 1 20 11 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L10; .loc 1 22 21 add.u32 %r84,%r26,-1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r84; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 22 19 mul.f64 %r32,%r85,0d4024000000000000; bra $L9; $L10: .loc 1 26 18 shr.u32 %r87,%r23,2; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r87; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r88,[%value_in]; } .loc 1 27 16 mul.f64 %r32,%r88,%r88; $L9: mul.f64 %r89,%r32,%r32; .loc 1 22 19 mul.f64 %r58,%r89,0d4024000000000000; .loc 1 27 16 bra $L1; $L19: mov.f64 %r58,0d40f86a0000000000; .loc 1 22 19 bra $L1; $L4: .loc 1 26 18 shr.u32 %r24,%r59,1; .loc 1 18 6 setp.gt.u32 %r90,%r59,9; @ %r90 bra $L11; .loc 1 19 20 cvta.const.u64 %r91,powtab$0; cvt.u64.u32 %r92,%r24; shl.b64 %r93,%r92,3; add.u64 %r94,%r91,%r93; ld.f64 %r38,[%r94]; .loc 1 27 16 mul.f64 %r58,%r38,%r38; .loc 1 19 20 bra $L1; $L11: .loc 1 20 14 and.b32 %r95,%r24,1; .loc 1 20 11 setp.eq.u32 %r96,%r95,0; @ %r96 bra $L13; .loc 1 22 21 add.u32 %r40,%r24,-1; .loc 1 18 6 setp.eq.u32 %r97,%r24,5; @ %r97 bra $L21; .loc 1 20 14 and.b32 %r98,%r40,1; .loc 1 20 11 setp.eq.u32 %r99,%r98,0; @ %r99 bra $L15; .loc 1 22 21 add.u32 %r101,%r24,-2; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r101; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r102,[%value_in]; } .loc 1 22 19 mul.f64 %r103,%r102,0d4024000000000000; mul.f64 %r44,%r103,0d4024000000000000; .loc 1 27 16 mul.f64 %r58,%r44,%r44; .loc 1 22 19 bra $L1; $L15: .loc 1 26 18 shr.u32 %r105,%r40,1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r105; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 27 16 mul.f64 %r107,%r106,%r106; .loc 1 22 19 mul.f64 %r42,%r107,0d4024000000000000; .loc 1 27 16 mul.f64 %r58,%r42,%r42; bra $L1; $L21: mov.f64 %r58,0d4202a05f20000000; .loc 1 22 19 bra $L1; $L13: .loc 1 26 18 shr.u32 %r41,%r59,2; .loc 1 18 6 setp.gt.u32 %r108,%r59,19; @ %r108 bra $L16; .loc 1 19 20 cvta.const.u64 %r109,powtab$0; cvt.u64.u32 %r110,%r41; shl.b64 %r111,%r110,3; add.u64 %r112,%r109,%r111; ld.f64 %r52,[%r112]; bra $L17; $L16: .loc 1 20 14 and.b32 %r113,%r41,1; .loc 1 20 11 setp.eq.u32 %r114,%r113,0; @ %r114 bra $L18; .loc 1 22 21 add.u32 %r116,%r41,-1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r116; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r117,[%value_in]; } .loc 1 22 19 mul.f64 %r52,%r117,0d4024000000000000; bra $L17; $L18: .loc 1 26 18 shr.u32 %r119,%r59,3; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r119; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r120,[%value_in]; } .loc 1 27 16 mul.f64 %r52,%r120,%r120; $L17: mul.f64 %r43,%r52,%r52; mul.f64 %r58,%r43,%r43; $L1: .loc 1 29 1 mov.f64 %value,%r58; st.param.f64 [%value_out],%value; ret; } /78 0 0 0 644 837 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ten_mul .visible .func (.param .u32 %value_out) __ten_mul (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/__ten_mu.c" // BEGIN GLOBAL FUNCTION DEF: __ten_mul .visible .func (.param .u32 %value_out) __ten_mul (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .f64 %r28; .reg .f64 %r29; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 20 8 cvt.rn.f64.s32 %r28,%r27; ld.f64 %r29,[%r26]; fma.rn.f64 %r24,%r29,0d4024000000000000,%r28; st.f64 [%r26],%r24; .loc 1 22 10 mov.u32 %value,0; .loc 1 23 1 st.param.u32 [%value_out],%value; ret; } lib_a-abort.o/ 0 0 0 644 284 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: abort .visible .func abort; .file 1 "../../../../../../newlib/libc/machine/nvptx/abort.c" // BEGIN GLOBAL FUNCTION DEF: abort .visible .func abort { .loc 1 22 5 trap; exit; } lib_a-abs.o/ 0 0 0 644 517 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: abs .visible .func (.param .u32 %value_out) abs (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/abs.c" // BEGIN GLOBAL FUNCTION DEF: abs .visible .func (.param .u32 %value_out) abs (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; mov.u32 %r23,%ar0; .loc 1 37 23 abs.s32 %value,%r23; .loc 1 38 1 st.param.u32 [%value_out],%value; ret; } /96 0 0 0 644 1280 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: aligned_alloc .visible .func (.param .u64 %value_out) aligned_alloc (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/aligned_alloc.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _memalign_r .extern .func (.param .u64 %value_out) _memalign_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: aligned_alloc .visible .func (.param .u64 %value_out) aligned_alloc (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 36 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_memalign_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 37 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /119 0 0 0 644 32153 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: chacha_encrypt_bytes$constprop$0 .func chacha_encrypt_bytes$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/chacha_private.h" // BEGIN FUNCTION DECL: chacha_keysetup$constprop$0 .func chacha_keysetup$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: _rs_stir .func _rs_stir; .file 2 "../../../../../newlib/libc/stdlib/arc4random.c" .file 3 "../../../../../newlib/libc/stdlib/arc4random.h" // BEGIN GLOBAL FUNCTION DECL: arc4random .visible .func (.param .u32 %value_out) arc4random; // BEGIN GLOBAL FUNCTION DECL: arc4random_buf .visible .func arc4random_buf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: getentropy .extern .func (.param .u32 %value_out) getentropy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: raise .extern .func (.param .u32 %value_out) raise (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: explicit_bzero .extern .func explicit_bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: rs .global .align 8 .u64 rs[1]; // BEGIN VAR DEF: rsx .global .align 8 .u64 rsx[1]; // BEGIN VAR DEF: _arc4random_data .global .align 8 .u64 _arc4random_data[138]; // BEGIN FUNCTION DEF: chacha_encrypt_bytes$constprop$0 .func chacha_encrypt_bytes$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[64]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r264; .reg .u64 %r266; .reg .u64 %r268; .reg .u32 %r269; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .u32 %r283; .reg .u32 %r284; .reg .u32 %r285; .reg .u32 %r286; .reg .u32 %r287; .reg .u32 %r288; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .u32 %r293; .reg .u32 %r294; .reg .u32 %r295; .reg .u32 %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .pred %r301; .reg .pred %r302; .reg .u32 %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r307; .reg .u32 %r308; .reg .u32 %r309; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r317; .reg .u32 %r318; .reg .u32 %r319; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u32 %r323; .reg .u32 %r324; .reg .u32 %r325; .reg .u32 %r326; .reg .u32 %r327; .reg .u32 %r328; .reg .u32 %r329; .reg .u32 %r330; .reg .u32 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .u32 %r338; .reg .u32 %r339; .reg .u32 %r340; .reg .u32 %r341; .reg .u32 %r342; .reg .u32 %r343; .reg .u32 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .pred %r351; .reg .u32 %r352; .reg .pred %r353; mov.u64 %r266,%ar0; mov.u64 %r268,%ar2; .loc 1 98 6 ld.u32 %r22,[%r266]; .loc 1 99 6 ld.u32 %r23,[%r266+4]; .loc 1 100 6 ld.u32 %r24,[%r266+8]; .loc 1 101 6 ld.u32 %r25,[%r266+12]; .loc 1 102 6 ld.u32 %r26,[%r266+16]; .loc 1 103 6 ld.u32 %r27,[%r266+20]; .loc 1 104 6 ld.u32 %r28,[%r266+24]; .loc 1 105 6 ld.u32 %r29,[%r266+28]; .loc 1 106 6 ld.u32 %r30,[%r266+32]; .loc 1 107 6 ld.u32 %r31,[%r266+36]; .loc 1 108 7 ld.u32 %r32,[%r266+40]; .loc 1 109 7 ld.u32 %r33,[%r266+44]; .loc 1 110 7 ld.u32 %r34,[%r266+48]; .loc 1 111 7 ld.u32 %r146,[%r266+52]; .loc 1 112 7 ld.u32 %r35,[%r266+56]; .loc 1 113 7 ld.u32 %r36,[%r266+60]; .loc 1 110 7 mov.u32 %r144,%r34; .loc 1 113 7 mov.u32 %r142,1024; $L2: .loc 1 133 9 mov.u32 %r106,%r33; .loc 1 137 9 mov.u32 %r93,%r36; .loc 1 129 8 mov.u32 %r120,%r29; .loc 1 125 8 mov.u32 %r127,%r25; .loc 1 132 9 mov.u32 %r94,%r32; .loc 1 136 9 mov.u32 %r129,%r35; .loc 1 128 8 mov.u32 %r108,%r28; .loc 1 124 8 mov.u32 %r115,%r24; .loc 1 131 8 mov.u32 %r130,%r31; mov.u32 %r117,%r146; .loc 1 127 8 mov.u32 %r96,%r27; .loc 1 123 8 mov.u32 %r103,%r23; .loc 1 130 8 mov.u32 %r118,%r30; mov.u32 %r105,%r144; .loc 1 126 8 mov.u32 %r132,%r26; .loc 1 122 8 mov.u32 %r91,%r22; mov.u32 %r264,10; $L3: .loc 1 139 7 add.u32 %r37,%r91,%r132; xor.b32 %r38,%r37,%r105; shl.b32 %r269,%r38,16; shr.u32 %r39,%r38,16; or.b32 %r39,%r39,%r269; add.u32 %r40,%r39,%r118; xor.b32 %r41,%r40,%r132; shl.b32 %r270,%r41,12; shr.u32 %r42,%r41,20; or.b32 %r42,%r42,%r270; add.u32 %r43,%r37,%r42; xor.b32 %r44,%r39,%r43; shl.b32 %r271,%r44,8; shr.u32 %r45,%r44,24; or.b32 %r45,%r45,%r271; add.u32 %r46,%r40,%r45; xor.b32 %r47,%r42,%r46; shl.b32 %r272,%r47,7; shr.u32 %r48,%r47,25; or.b32 %r48,%r48,%r272; .loc 1 140 7 add.u32 %r49,%r103,%r96; xor.b32 %r50,%r49,%r117; shl.b32 %r273,%r50,16; shr.u32 %r51,%r50,16; or.b32 %r51,%r51,%r273; add.u32 %r52,%r51,%r130; xor.b32 %r53,%r52,%r96; shl.b32 %r274,%r53,12; shr.u32 %r54,%r53,20; or.b32 %r54,%r54,%r274; add.u32 %r55,%r49,%r54; xor.b32 %r56,%r51,%r55; shl.b32 %r275,%r56,8; shr.u32 %r57,%r56,24; or.b32 %r57,%r57,%r275; add.u32 %r58,%r52,%r57; xor.b32 %r59,%r54,%r58; shl.b32 %r276,%r59,7; shr.u32 %r60,%r59,25; or.b32 %r60,%r60,%r276; .loc 1 141 7 add.u32 %r61,%r115,%r108; xor.b32 %r62,%r61,%r129; shl.b32 %r277,%r62,16; shr.u32 %r63,%r62,16; or.b32 %r63,%r63,%r277; add.u32 %r64,%r63,%r94; xor.b32 %r65,%r64,%r108; shl.b32 %r278,%r65,12; shr.u32 %r66,%r65,20; or.b32 %r66,%r66,%r278; add.u32 %r67,%r61,%r66; xor.b32 %r68,%r63,%r67; shl.b32 %r279,%r68,8; shr.u32 %r69,%r68,24; or.b32 %r69,%r69,%r279; add.u32 %r70,%r64,%r69; xor.b32 %r71,%r66,%r70; shl.b32 %r280,%r71,7; shr.u32 %r72,%r71,25; or.b32 %r72,%r72,%r280; .loc 1 142 7 add.u32 %r73,%r127,%r120; xor.b32 %r74,%r73,%r93; shl.b32 %r281,%r74,16; shr.u32 %r75,%r74,16; or.b32 %r75,%r75,%r281; add.u32 %r76,%r75,%r106; xor.b32 %r77,%r76,%r120; shl.b32 %r282,%r77,12; shr.u32 %r78,%r77,20; or.b32 %r78,%r78,%r282; add.u32 %r79,%r73,%r78; xor.b32 %r80,%r75,%r79; shl.b32 %r283,%r80,8; shr.u32 %r81,%r80,24; or.b32 %r81,%r81,%r283; add.u32 %r82,%r76,%r81; xor.b32 %r83,%r78,%r82; shl.b32 %r284,%r83,7; shr.u32 %r84,%r83,25; or.b32 %r84,%r84,%r284; .loc 1 143 7 add.u32 %r85,%r43,%r60; xor.b32 %r86,%r81,%r85; shl.b32 %r285,%r86,16; shr.u32 %r87,%r86,16; or.b32 %r87,%r87,%r285; add.u32 %r88,%r70,%r87; xor.b32 %r89,%r60,%r88; shl.b32 %r286,%r89,12; shr.u32 %r90,%r89,20; or.b32 %r90,%r90,%r286; add.u32 %r91,%r85,%r90; xor.b32 %r92,%r87,%r91; shl.b32 %r287,%r92,8; shr.u32 %r93,%r92,24; or.b32 %r93,%r93,%r287; add.u32 %r94,%r88,%r93; xor.b32 %r95,%r90,%r94; shl.b32 %r288,%r95,7; shr.u32 %r96,%r95,25; or.b32 %r96,%r96,%r288; .loc 1 144 7 add.u32 %r97,%r55,%r72; xor.b32 %r98,%r45,%r97; shl.b32 %r289,%r98,16; shr.u32 %r99,%r98,16; or.b32 %r99,%r99,%r289; add.u32 %r100,%r82,%r99; xor.b32 %r101,%r72,%r100; shl.b32 %r290,%r101,12; shr.u32 %r102,%r101,20; or.b32 %r102,%r102,%r290; add.u32 %r103,%r97,%r102; xor.b32 %r104,%r99,%r103; shl.b32 %r291,%r104,8; shr.u32 %r105,%r104,24; or.b32 %r105,%r105,%r291; add.u32 %r106,%r100,%r105; xor.b32 %r107,%r102,%r106; shl.b32 %r292,%r107,7; shr.u32 %r108,%r107,25; or.b32 %r108,%r108,%r292; .loc 1 145 7 add.u32 %r109,%r67,%r84; xor.b32 %r110,%r57,%r109; shl.b32 %r293,%r110,16; shr.u32 %r111,%r110,16; or.b32 %r111,%r111,%r293; add.u32 %r112,%r46,%r111; xor.b32 %r113,%r84,%r112; shl.b32 %r294,%r113,12; shr.u32 %r114,%r113,20; or.b32 %r114,%r114,%r294; add.u32 %r115,%r109,%r114; xor.b32 %r116,%r111,%r115; shl.b32 %r295,%r116,8; shr.u32 %r117,%r116,24; or.b32 %r117,%r117,%r295; add.u32 %r118,%r112,%r117; xor.b32 %r119,%r114,%r118; shl.b32 %r296,%r119,7; shr.u32 %r120,%r119,25; or.b32 %r120,%r120,%r296; .loc 1 146 7 add.u32 %r121,%r48,%r79; xor.b32 %r122,%r69,%r121; shl.b32 %r297,%r122,16; shr.u32 %r123,%r122,16; or.b32 %r123,%r123,%r297; add.u32 %r124,%r58,%r123; xor.b32 %r125,%r48,%r124; shl.b32 %r298,%r125,12; shr.u32 %r126,%r125,20; or.b32 %r126,%r126,%r298; add.u32 %r127,%r121,%r126; xor.b32 %r128,%r123,%r127; shl.b32 %r299,%r128,8; shr.u32 %r129,%r128,24; or.b32 %r129,%r129,%r299; add.u32 %r130,%r124,%r129; xor.b32 %r131,%r126,%r130; shl.b32 %r300,%r131,7; shr.u32 %r132,%r131,25; or.b32 %r132,%r132,%r300; .loc 1 138 19 add.u32 %r264,%r264,-1; setp.ne.u32 %r301,%r264,0; @ %r301 bra $L3; .loc 1 148 8 add.u32 %r133,%r22,%r91; .loc 1 149 8 add.u32 %r134,%r23,%r103; .loc 1 150 8 add.u32 %r135,%r24,%r115; .loc 1 151 8 add.u32 %r136,%r25,%r127; .loc 1 152 8 add.u32 %r137,%r26,%r132; .loc 1 153 8 add.u32 %r138,%r27,%r96; .loc 1 154 8 add.u32 %r139,%r28,%r108; .loc 1 155 8 add.u32 %r140,%r29,%r120; .loc 1 156 8 add.u32 %r141,%r30,%r118; .loc 1 157 8 add.u32 %r143,%r31,%r130; .loc 1 158 9 add.u32 %r145,%r32,%r94; .loc 1 159 9 add.u32 %r147,%r33,%r106; .loc 1 160 9 add.u32 %r148,%r105,%r144; .loc 1 161 9 add.u32 %r149,%r117,%r146; .loc 1 162 9 add.u32 %r150,%r35,%r129; .loc 1 163 9 add.u32 %r151,%r36,%r93; .loc 1 184 9 add.u32 %r144,%r144,1; .loc 1 185 8 setp.ne.u32 %r302,%r144,0; @ %r302 bra $L4; .loc 1 186 11 add.u32 %r146,%r146,1; $L4: .loc 1 190 5 st.u8 [%r268],%r133; shr.u32 %r303,%r133,8; st.u8 [%r268+1],%r303; shr.u32 %r304,%r133,16; st.u8 [%r268+2],%r304; shr.u32 %r305,%r133,24; st.u8 [%r268+3],%r305; .loc 1 191 5 st.u8 [%r268+4],%r134; shr.u32 %r306,%r134,8; st.u8 [%r268+5],%r306; shr.u32 %r307,%r134,16; st.u8 [%r268+6],%r307; shr.u32 %r308,%r134,24; st.u8 [%r268+7],%r308; .loc 1 192 5 st.u8 [%r268+8],%r135; shr.u32 %r309,%r135,8; st.u8 [%r268+9],%r309; shr.u32 %r310,%r135,16; st.u8 [%r268+10],%r310; shr.u32 %r311,%r135,24; st.u8 [%r268+11],%r311; .loc 1 193 5 st.u8 [%r268+12],%r136; shr.u32 %r312,%r136,8; st.u8 [%r268+13],%r312; shr.u32 %r313,%r136,16; st.u8 [%r268+14],%r313; shr.u32 %r314,%r136,24; st.u8 [%r268+15],%r314; .loc 1 194 5 st.u8 [%r268+16],%r137; shr.u32 %r315,%r137,8; st.u8 [%r268+17],%r315; shr.u32 %r316,%r137,16; st.u8 [%r268+18],%r316; shr.u32 %r317,%r137,24; st.u8 [%r268+19],%r317; .loc 1 195 5 st.u8 [%r268+20],%r138; shr.u32 %r318,%r138,8; st.u8 [%r268+21],%r318; shr.u32 %r319,%r138,16; st.u8 [%r268+22],%r319; shr.u32 %r320,%r138,24; st.u8 [%r268+23],%r320; .loc 1 196 5 st.u8 [%r268+24],%r139; shr.u32 %r321,%r139,8; st.u8 [%r268+25],%r321; shr.u32 %r322,%r139,16; st.u8 [%r268+26],%r322; shr.u32 %r323,%r139,24; st.u8 [%r268+27],%r323; .loc 1 197 5 st.u8 [%r268+28],%r140; shr.u32 %r324,%r140,8; st.u8 [%r268+29],%r324; shr.u32 %r325,%r140,16; st.u8 [%r268+30],%r325; shr.u32 %r326,%r140,24; st.u8 [%r268+31],%r326; .loc 1 198 5 st.u8 [%r268+32],%r141; shr.u32 %r327,%r141,8; st.u8 [%r268+33],%r327; shr.u32 %r328,%r141,16; st.u8 [%r268+34],%r328; shr.u32 %r329,%r141,24; st.u8 [%r268+35],%r329; .loc 1 199 5 st.u8 [%r268+36],%r143; shr.u32 %r330,%r143,8; st.u8 [%r268+37],%r330; shr.u32 %r331,%r143,16; st.u8 [%r268+38],%r331; shr.u32 %r332,%r143,24; st.u8 [%r268+39],%r332; .loc 1 200 5 st.u8 [%r268+40],%r145; shr.u32 %r333,%r145,8; st.u8 [%r268+41],%r333; shr.u32 %r334,%r145,16; st.u8 [%r268+42],%r334; shr.u32 %r335,%r145,24; st.u8 [%r268+43],%r335; .loc 1 201 5 st.u8 [%r268+44],%r147; shr.u32 %r336,%r147,8; st.u8 [%r268+45],%r336; shr.u32 %r337,%r147,16; st.u8 [%r268+46],%r337; shr.u32 %r338,%r147,24; st.u8 [%r268+47],%r338; .loc 1 202 5 st.u8 [%r268+48],%r148; shr.u32 %r339,%r148,8; st.u8 [%r268+49],%r339; shr.u32 %r340,%r148,16; st.u8 [%r268+50],%r340; shr.u32 %r341,%r148,24; st.u8 [%r268+51],%r341; .loc 1 203 5 st.u8 [%r268+52],%r149; shr.u32 %r342,%r149,8; st.u8 [%r268+53],%r342; shr.u32 %r343,%r149,16; st.u8 [%r268+54],%r343; shr.u32 %r344,%r149,24; st.u8 [%r268+55],%r344; .loc 1 204 5 st.u8 [%r268+56],%r150; shr.u32 %r345,%r150,8; st.u8 [%r268+57],%r345; shr.u32 %r346,%r150,16; st.u8 [%r268+58],%r346; shr.u32 %r347,%r150,24; st.u8 [%r268+59],%r347; .loc 1 205 5 st.u8 [%r268+60],%r151; shr.u32 %r348,%r151,8; st.u8 [%r268+61],%r348; shr.u32 %r349,%r151,16; st.u8 [%r268+62],%r349; shr.u32 %r350,%r151,24; st.u8 [%r268+63],%r350; .loc 1 207 8 setp.ne.u32 %r351,%r142,64; @ %r351 bra $L5; .loc 1 184 9 add.u32 %r352,%r34,16; .loc 1 211 20 st.u32 [%r266+48],%r352; .loc 1 212 20 st.u32 [%r266+52],%r146; bra $L9; $L5: .loc 1 215 11 add.u32 %r142,%r142,-64; .loc 1 216 7 add.u64 %r268,%r268,64; .loc 1 116 8 setp.le.u32 %r353,%r142,63; .loc 1 120 9 selp.u64 %r268,%frame,%r268,%r353; bra $L2; $L9: .loc 1 221 1 ret; } // BEGIN FUNCTION DEF: chacha_keysetup$constprop$0 .func chacha_keysetup$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 58 17 ld.u8 %r32,[%r31]; ld.u8 %r33,[%r31+1]; shl.b64 %r34,%r33,8; or.b64 %r35,%r34,%r32; ld.u8 %r36,[%r31+2]; shl.b64 %r37,%r36,16; or.b64 %r38,%r37,%r35; ld.u8 %r39,[%r31+3]; shl.b64 %r40,%r39,24; or.b64 %r41,%r40,%r38; .loc 1 58 15 st.u32 [%r30+16],%r41; .loc 1 59 17 ld.u8 %r43,[%r31+4]; ld.u8 %r44,[%r31+5]; shl.b64 %r45,%r44,8; or.b64 %r46,%r45,%r43; ld.u8 %r47,[%r31+6]; shl.b64 %r48,%r47,16; or.b64 %r49,%r48,%r46; ld.u8 %r50,[%r31+7]; shl.b64 %r51,%r50,24; or.b64 %r52,%r51,%r49; .loc 1 59 15 st.u32 [%r30+20],%r52; .loc 1 60 17 ld.u8 %r54,[%r31+8]; ld.u8 %r55,[%r31+9]; shl.b64 %r56,%r55,8; or.b64 %r57,%r56,%r54; ld.u8 %r58,[%r31+10]; shl.b64 %r59,%r58,16; or.b64 %r60,%r59,%r57; ld.u8 %r61,[%r31+11]; shl.b64 %r62,%r61,24; or.b64 %r63,%r62,%r60; .loc 1 60 15 st.u32 [%r30+24],%r63; .loc 1 61 17 ld.u8 %r65,[%r31+12]; ld.u8 %r66,[%r31+13]; shl.b64 %r67,%r66,8; or.b64 %r68,%r67,%r65; ld.u8 %r69,[%r31+14]; shl.b64 %r70,%r69,16; or.b64 %r71,%r70,%r68; ld.u8 %r72,[%r31+15]; shl.b64 %r73,%r72,24; or.b64 %r74,%r73,%r71; .loc 1 61 15 st.u32 [%r30+28],%r74; .loc 1 68 17 ld.u8 %r76,[%r31+16]; ld.u8 %r77,[%r31+17]; shl.b64 %r78,%r77,8; or.b64 %r79,%r78,%r76; ld.u8 %r80,[%r31+18]; shl.b64 %r81,%r80,16; or.b64 %r82,%r81,%r79; ld.u8 %r83,[%r31+19]; shl.b64 %r84,%r83,24; or.b64 %r85,%r84,%r82; .loc 1 68 15 st.u32 [%r30+32],%r85; .loc 1 69 17 ld.u8 %r87,[%r31+20]; ld.u8 %r88,[%r31+21]; shl.b64 %r89,%r88,8; or.b64 %r90,%r89,%r87; ld.u8 %r91,[%r31+22]; shl.b64 %r92,%r91,16; or.b64 %r93,%r92,%r90; ld.u8 %r94,[%r31+23]; shl.b64 %r95,%r94,24; or.b64 %r96,%r95,%r93; .loc 1 69 15 st.u32 [%r30+36],%r96; .loc 1 70 18 ld.u8 %r98,[%r31+24]; ld.u8 %r99,[%r31+25]; shl.b64 %r100,%r99,8; or.b64 %r101,%r100,%r98; ld.u8 %r102,[%r31+26]; shl.b64 %r103,%r102,16; or.b64 %r104,%r103,%r101; ld.u8 %r105,[%r31+27]; shl.b64 %r106,%r105,24; or.b64 %r107,%r106,%r104; .loc 1 70 16 st.u32 [%r30+40],%r107; .loc 1 71 18 ld.u8 %r109,[%r31+28]; ld.u8 %r110,[%r31+29]; shl.b64 %r111,%r110,8; or.b64 %r112,%r111,%r109; ld.u8 %r113,[%r31+30]; shl.b64 %r114,%r113,16; or.b64 %r115,%r114,%r112; ld.u8 %r116,[%r31+31]; shl.b64 %r117,%r116,24; or.b64 %r118,%r117,%r115; .loc 1 71 16 st.u32 [%r30+44],%r118; .loc 1 72 15 mov.u32 %r120,1634760805; st.u32 [%r30],%r120; .loc 1 73 15 mov.u32 %r121,857760878; st.u32 [%r30+4],%r121; .loc 1 74 15 mov.u32 %r122,2036477234; st.u32 [%r30+8],%r122; .loc 1 75 15 mov.u32 %r123,1797285236; st.u32 [%r30+12],%r123; .loc 1 76 1 ret; } // BEGIN FUNCTION DEF: _rs_stir .func _rs_stir { .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r61; .reg .u32 %r63; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .pred %r72; .reg .u32 %r75; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u32 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u16 %r117; .loc 2 89 6 mov.u64 %r46,40; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r46; call (%value_in),getentropy,(%out_arg1,%out_arg2); ld.param.u32 %r47,[%value_in]; } .loc 2 89 5 setp.ne.u32 %r48,%r47,-1; @ %r48 bra $L12; .loc 3 69 2 mov.u32 %r49,9; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r49; call (%value_in),raise,(%out_arg1); ld.param.u32 %r50,[%value_in]; } $L12: .loc 2 92 5 ld.global.u64 %r51,[rs]; setp.ne.u64 %r52,%r51,0; @ %r52 bra $L13; .loc 3 79 7 cvta.global.u64 %r53,_arc4random_data; st.global.u64 [rs],%r53; .loc 3 80 8 add.u64 %r54,%r53,16; st.global.u64 [rsx],%r54; .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 st.u64 [%r53+64],%r51; .loc 1 83 16 ld.u32 %r61,[%frame+32]; st.u32 [%r53+72],%r61; .loc 1 84 16 ld.u32 %r63,[%frame+36]; st.u32 [%r53+76],%r63; .loc 1 85 1 bra $L14; $L13: .loc 2 126 9 ld.global.u64 %r36,[rsx]; add.u64 %r37,%r36,64; .loc 2 125 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; call chacha_encrypt_bytes$constprop$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r28,%r37; mov.u64 %r30,%frame; add.u64 %r34,%frame,40; $L15: .loc 2 133 19 ld.u8 %r117,[%r28]; mov.u16 %r70,%r117; ld.u8 %r117,[%r30]; mov.u16 %r71,%r117; xor.b16 %r69,%r70,%r71; st.u8 [%r28],%r69; .loc 2 132 17 add.u64 %r28,%r28,1; add.u64 %r30,%r30,1; setp.ne.u64 %r72,%r30,%r34; @ %r72 bra $L15; .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 mov.u32 %r75,0; st.u32 [%r36+48],%r75; .loc 1 82 16 st.u32 [%r36+52],%r75; .loc 1 83 18 ld.u8 %r77,[%r36+96]; ld.u8 %r78,[%r36+97]; shl.b64 %r79,%r78,8; or.b64 %r80,%r79,%r77; ld.u8 %r81,[%r36+98]; shl.b64 %r82,%r81,16; or.b64 %r83,%r82,%r80; ld.u8 %r84,[%r36+99]; shl.b64 %r85,%r84,24; or.b64 %r86,%r85,%r83; .loc 1 83 16 st.u32 [%r36+56],%r86; .loc 1 84 18 ld.u8 %r88,[%r36+100]; ld.u8 %r89,[%r36+101]; shl.b64 %r90,%r89,8; or.b64 %r91,%r90,%r88; ld.u8 %r92,[%r36+102]; shl.b64 %r93,%r92,16; or.b64 %r94,%r93,%r91; ld.u8 %r95,[%r36+103]; shl.b64 %r96,%r95,24; or.b64 %r97,%r96,%r94; .loc 1 84 16 st.u32 [%r36+60],%r97; .loc 2 137 2 mov.u64 %r101,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r75; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r101; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r102,[%value_in]; } .loc 2 138 14 ld.global.u64 %r103,[rs]; mov.u64 %r104,984; st.u64 [%r103],%r104; $L14: .loc 2 96 2 mov.u64 %r106,40; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r106; call explicit_bzero,(%out_arg1,%out_arg2); } .loc 2 99 14 ld.global.u64 %r107,[rs]; mov.u64 %r108,0; st.u64 [%r107],%r108; .loc 2 100 12 ld.global.u64 %r113,[rsx]; add.u64 %r112,%r113,64; .loc 2 100 2 mov.u64 %r111,1024; mov.u32 %r110,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r110; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r111; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r114,[%value_in]; } .loc 2 102 15 ld.global.u64 %r115,[rs]; mov.u64 %r116,1600000; st.u64 [%r115+8],%r116; .loc 2 104 1 ret; } // BEGIN GLOBAL FUNCTION DEF: arc4random .visible .func (.param .u32 %value_out) arc4random { .reg .u32 %value; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r66; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .pred %r97; .reg .u64 %r98; .loc 2 110 6 ld.global.u64 %r98,[rs]; .loc 2 110 5 setp.eq.u64 %r42,%r98,0; @ %r42 bra $L18; .loc 2 110 15 ld.u64 %r29,[%r98+8]; .loc 2 110 10 setp.gt.u64 %r43,%r29,4; @ %r43 bra $L19; $L18: .loc 2 111 3 { call _rs_stir; } .loc 2 112 8 ld.global.u64 %r98,[rs]; ld.u64 %r29,[%r98+8]; .loc 2 112 5 setp.le.u64 %r44,%r29,4; @ %r44 bra $L24; $L19: .loc 2 115 16 add.u64 %r31,%r29,-4; bra $L20; $L29: .loc 2 173 48 mov.u64 %r46,1024; sub.u64 %r35,%r46,%r96; $L21: .loc 2 173 14 ld.global.u64 %r49,[rsx]; add.u64 %r48,%r49,64; .loc 2 173 12 add.u64 %r25,%r48,%r35; .loc 2 174 2 mov.u64 %r52,4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r52; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 2 175 2 mov.u32 %r55,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r52; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r57,[%value_in]; } .loc 2 176 14 ld.global.u64 %r26,[rs]; ld.u64 %r59,[%r26]; add.u64 %r58,%r59,-4; st.u64 [%r26],%r58; .loc 2 191 9 ld.u32 %r41,[%frame]; bra $L28; $L22: .loc 2 126 9 ld.global.u64 %r22,[rsx]; add.u64 %r40,%r22,64; .loc 2 125 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r40; call chacha_encrypt_bytes$constprop$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 mov.u32 %r66,0; st.u32 [%r22+48],%r66; .loc 1 82 16 st.u32 [%r22+52],%r66; .loc 1 83 18 ld.u8 %r68,[%r22+96]; ld.u8 %r69,[%r22+97]; shl.b64 %r70,%r69,8; or.b64 %r71,%r70,%r68; ld.u8 %r72,[%r22+98]; shl.b64 %r73,%r72,16; or.b64 %r74,%r73,%r71; ld.u8 %r75,[%r22+99]; shl.b64 %r76,%r75,24; or.b64 %r77,%r76,%r74; .loc 1 83 16 st.u32 [%r22+56],%r77; .loc 1 84 18 ld.u8 %r79,[%r22+100]; ld.u8 %r80,[%r22+101]; shl.b64 %r81,%r80,8; or.b64 %r82,%r81,%r79; ld.u8 %r83,[%r22+102]; shl.b64 %r84,%r83,16; or.b64 %r85,%r84,%r82; ld.u8 %r86,[%r22+103]; shl.b64 %r87,%r86,24; or.b64 %r88,%r87,%r85; .loc 1 84 16 st.u32 [%r22+60],%r88; .loc 2 137 2 mov.u64 %r92,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r40; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r66; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r92; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r93,[%value_in]; } .loc 2 138 14 ld.global.u64 %r94,[rs]; mov.u64 %r95,984; st.u64 [%r94],%r95; .loc 2 139 1 mov.u64 %r35,%r92; bra $L21; $L24: .loc 2 113 16 mov.u64 %r31,0; $L20: st.u64 [%r98+8],%r31; .loc 2 171 5 ld.u64 %r96,[%r98]; setp.le.u64 %r97,%r96,3; @ ! %r97 bra $L29; bra $L22; $L28: .loc 2 192 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: arc4random_buf .visible .func arc4random_buf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r35; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r55; .reg .u32 %r57; .reg .u64 %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u32 %r68; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .pred %r100; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 2 110 6 ld.global.u64 %r98,[rs]; .loc 2 110 5 setp.eq.u64 %r43,%r98,0; @ %r43 bra $L31; .loc 2 110 15 ld.u64 %r30,[%r98+8]; .loc 2 110 10 setp.lt.u64 %r44,%r42,%r30; @ %r44 bra $L32; $L31: .loc 2 111 3 { call _rs_stir; } .loc 2 112 8 ld.global.u64 %r98,[rs]; ld.u64 %r30,[%r98+8]; .loc 2 112 5 setp.lt.u64 %r45,%r42,%r30; @ %r45 bra $L32; .loc 2 113 16 mov.u64 %r32,0; $L34: st.u64 [%r98+8],%r32; .loc 2 149 11 setp.ne.u64 %r100,%r42,0; @ %r100 bra $L33; bra $L30; $L32: .loc 2 115 16 sub.u64 %r32,%r30,%r42; bra $L34; $L33: .loc 2 150 9 ld.u64 %r23,[%r98]; .loc 2 152 16 ld.global.u64 %r99,[rsx]; add.u64 %r35,%r99,64; .loc 2 150 6 setp.eq.u64 %r49,%r23,0; @ %r49 bra $L35; .loc 2 151 6 min.u64 %r24,%r23,%r42; .loc 2 153 8 sub.u64 %r50,%r35,%r23; .loc 2 152 14 add.u64 %r26,%r50,1024; .loc 2 154 4 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r55,[%value_in]; } .loc 2 155 4 mov.u32 %r57,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r57; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r59,[%value_in]; } .loc 2 156 8 add.u64 %r41,%r41,%r24; .loc 2 157 6 sub.u64 %r42,%r42,%r24; .loc 2 158 16 ld.global.u64 %r98,[rs]; ld.u64 %r60,[%r98]; sub.u64 %r29,%r60,%r24; st.u64 [%r98],%r29; .loc 2 160 6 setp.eq.u64 %r61,%r29,0; @ %r61 bra $L41; setp.ne.u64 %r100,%r42,0; bra $L37; $L41: setp.ne.u64 %r100,%r42,0; ld.global.u64 %r99,[rsx]; bra $L35; $L37: .loc 2 149 11 @ %r100 bra $L33; bra $L30; $L35: .loc 2 126 9 add.u64 %r39,%r99,64; .loc 2 125 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r99; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r39; call chacha_encrypt_bytes$constprop$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r99; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 mov.u32 %r68,0; st.u32 [%r99+48],%r68; .loc 1 82 16 st.u32 [%r99+52],%r68; .loc 1 83 18 ld.u8 %r70,[%r99+96]; ld.u8 %r71,[%r99+97]; shl.b64 %r72,%r71,8; or.b64 %r73,%r72,%r70; ld.u8 %r74,[%r99+98]; shl.b64 %r75,%r74,16; or.b64 %r76,%r75,%r73; ld.u8 %r77,[%r99+99]; shl.b64 %r78,%r77,24; or.b64 %r79,%r78,%r76; .loc 1 83 16 st.u32 [%r99+56],%r79; .loc 1 84 18 ld.u8 %r81,[%r99+100]; ld.u8 %r82,[%r99+101]; shl.b64 %r83,%r82,8; or.b64 %r84,%r83,%r81; ld.u8 %r85,[%r99+102]; shl.b64 %r86,%r85,16; or.b64 %r87,%r86,%r84; ld.u8 %r88,[%r99+103]; shl.b64 %r89,%r88,24; or.b64 %r90,%r89,%r87; .loc 1 84 16 st.u32 [%r99+60],%r90; .loc 2 137 2 mov.u64 %r94,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r68; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r94; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r95,[%value_in]; } .loc 2 138 14 ld.global.u64 %r98,[rs]; mov.u64 %r97,984; st.u64 [%r98],%r97; .loc 2 139 1 bra $L37; $L30: .loc 2 204 1 ret; } /139 0 0 0 644 1135 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: arc4random_uniform .visible .func (.param .u32 %value_out) arc4random_uniform (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/arc4random_uniform.c" // BEGIN GLOBAL FUNCTION DECL: arc4random .extern .func (.param .u32 %value_out) arc4random; // BEGIN GLOBAL FUNCTION DEF: arc4random_uniform .visible .func (.param .u32 %value_out) arc4random_uniform (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r25; .reg .u32 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .pred %r30; mov.u32 %r26,%ar0; .loc 1 37 5 setp.le.u32 %r27,%r26,1; @ %r27 bra $L4; .loc 1 41 8 neg.s32 %r28,%r26; .loc 1 41 6 rem.u32 %r23,%r28,%r26; $L3: .loc 1 50 7 { .param .u32 %value_in; call (%value_in),arc4random; ld.param.u32 %r29,[%value_in]; } .loc 1 51 6 setp.gt.u32 %r30,%r23,%r29; @ %r30 bra $L3; .loc 1 55 11 rem.u32 %r25,%r29,%r26; bra $L1; $L4: .loc 1 38 10 mov.u32 %r25,0; $L1: .loc 1 56 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-asctime.o/0 0 0 644 1087 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asctime .visible .func (.param .u64 %value_out) asctime (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/asctime.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: asctime_r .extern .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: asctime .visible .func (.param .u64 %value_out) asctime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 56 28 ld.global.u64 %r29,[_impure_ptr]; add.u64 %r28,%r29,160; .loc 1 56 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),asctime_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 57 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /167 0 0 0 644 2611 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: asctime_r .visible .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/time/asctime_r.c" // BEGIN GLOBAL FUNCTION DECL: siprintf .extern .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: day_name$0 .const .align 1 .u8 day_name$0[21] = {83,117,110,77,111,110,84,117,101,87,101,100,84,104,117,70,114,105,83,97,116 }; // BEGIN VAR DEF: mon_name$1 .const .align 1 .u8 mon_name$1[36] = {74,97,110,70,101,98,77,97,114,65,112,114,77,97,121,74,117,110,74,117,108,65,117,103,83,101,112,79,99,116,78,111,118,68,101,99 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[32] = {37,46,51,115,32,37,46,51,115,37,51,100,32,37,46,50,100,58,37,46,50,100,58,37,46,50,100,32,37,100,10,0 }; // BEGIN GLOBAL FUNCTION DEF: asctime_r .visible .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 8 .b8 %stack_ar[48]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; mov.u64 %r35,%ar0; mov.u64 %r36,%ar1; .loc 1 20 3 ld.u32 %r40,[%r35+20]; add.u32 %r39,%r40,1900; st.u32 [%stack+32],%r39; ld.u32 %r41,[%r35]; st.u32 [%stack+28],%r41; ld.u32 %r42,[%r35+4]; st.u32 [%stack+24],%r42; ld.u32 %r43,[%r35+8]; st.u32 [%stack+20],%r43; ld.u32 %r44,[%r35+12]; st.u32 [%stack+16],%r44; .loc 1 22 14 ld.s32 %r45,[%r35+16]; add.u64 %r47,%r45,%r45; add.u64 %r48,%r47,%r45; cvta.const.u64 %r50,mon_name$1; add.u64 %r49,%r48,%r50; .loc 1 20 3 st.u64 [%stack+8],%r49; .loc 1 21 14 ld.s32 %r51,[%r35+24]; add.u64 %r53,%r51,%r51; add.u64 %r54,%r53,%r51; cvta.const.u64 %r56,day_name$0; add.u64 %r55,%r54,%r56; .loc 1 20 3 st.u64 [%stack],%r55; cvta.const.u64 %r38,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r57,[%value_in]; } .loc 1 26 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } lib_a-assert.o/ 0 0 0 644 1232 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __assert_func .visible .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/machine/nvptx/assert.c" // BEGIN GLOBAL FUNCTION DECL: __assert .visible .func __assert (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: abort .extern .func abort; // BEGIN GLOBAL FUNCTION DEF: __assert_func .visible .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .loc 1 28 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } // BEGIN GLOBAL FUNCTION DEF: __assert .visible .func __assert (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .loc 1 28 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } lib_a-atexit.o/ 0 0 0 644 1162 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atexit .visible .func (.param .u32 %value_out) atexit (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/atexit.c" // BEGIN GLOBAL FUNCTION DECL: __register_exitproc .extern .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atexit .visible .func (.param .u32 %value_out) atexit (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r23,%ar0; .loc 1 58 10 mov.u64 %r27,0; mov.u32 %r24,0; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__register_exitproc,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r28,[%value_in]; } .loc 1 59 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-atof.o/ 0 0 0 644 911 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atof .visible .func (.param .f64 %value_out) atof (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/atof.c" // BEGIN GLOBAL FUNCTION DECL: strtod .extern .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atof .visible .func (.param .f64 %value_out) atof (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .f64 %r26; mov.u64 %r23,%ar0; .loc 1 62 10 mov.u64 %r25,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),strtod,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 63 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-atoff.o/ 0 0 0 644 914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atoff .visible .func (.param .f32 %value_out) atoff (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/atoff.c" // BEGIN GLOBAL FUNCTION DECL: strtof .extern .func (.param .f32 %value_out) strtof (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atoff .visible .func (.param .f32 %value_out) atoff (.param .u64 %in_ar0) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .f32 %r26; mov.u64 %r23,%ar0; .loc 1 7 10 mov.u64 %r25,0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),strtof,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 8 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-atoi.o/ 0 0 0 644 2191 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atoi .visible .func (.param .u32 %value_out) atoi (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/atoi.c" // BEGIN GLOBAL FUNCTION DECL: _atoi_r .visible .func (.param .u32 %value_out) _atoi_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtol .extern .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atoi .visible .func (.param .u32 %value_out) atoi (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 52 16 mov.u32 %r27,10; mov.u64 %r26,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r28,[%value_in]; } .loc 1 52 10 cvt.u32.u64 %value,%r28; .loc 1 53 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _atoi_r .visible .func (.param .u32 %value_out) _atoi_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 60 16 mov.u32 %r29,10; mov.u64 %r28,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 60 10 cvt.u32.u64 %value,%r30; .loc 1 61 1 st.param.u32 [%value_out],%value; ret; } lib_a-atol.o/ 0 0 0 644 2157 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atol .visible .func (.param .u64 %value_out) atol (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/atol.c" // BEGIN GLOBAL FUNCTION DECL: _atol_r .visible .func (.param .u64 %value_out) _atol_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtol .extern .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atol .visible .func (.param .u64 %value_out) atol (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; mov.u64 %r23,%ar0; .loc 1 12 10 mov.u32 %r26,10; mov.u64 %r25,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r27,[%value_in]; } .loc 1 13 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _atol_r .visible .func (.param .u64 %value_out) _atol_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 19 10 mov.u32 %r28,10; mov.u64 %r27,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r28; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r29,[%value_in]; } .loc 1 20 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-atoll.o/ 0 0 0 644 2170 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atoll .visible .func (.param .u64 %value_out) atoll (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/atoll.c" // BEGIN GLOBAL FUNCTION DECL: _atoll_r .visible .func (.param .u64 %value_out) _atoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtoll .extern .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atoll .visible .func (.param .u64 %value_out) atoll (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; mov.u64 %r23,%ar0; .loc 1 70 9 mov.u32 %r26,10; mov.u64 %r25,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; call (%value_in),strtoll,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r27,[%value_in]; } .loc 1 71 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _atoll_r .visible .func (.param .u64 %value_out) _atoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 78 9 mov.u32 %r28,10; mov.u64 %r27,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r28; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r29,[%value_in]; } .loc 1 79 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-bcopy.o/ 0 0 0 644 1092 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bcopy .visible .func bcopy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/bcopy.c" // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: bcopy .visible .func bcopy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r28; mov.u64 %r22,%ar0; mov.u64 %r23,%ar1; mov.u64 %r24,%ar2; .loc 1 31 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r28,[%value_in]; } .loc 1 32 1 ret; } lib_a-bsearch.o/0 0 0 644 2489 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bsearch .visible .func (.param .u64 %value_out) bsearch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/search/bsearch.c" // BEGIN GLOBAL FUNCTION DEF: bsearch .visible .func (.param .u64 %value_out) bsearch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .u16 %r57; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; mov.u64 %r34,%ar3; mov.u64 %r35,%ar4; .loc 1 71 13 set.u32.eq.u64 %r37,%r33,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 71 26 set.u32.eq.u64 %r40,%r34,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 71 18 cvt.u16.u8 %r57,%r36; mov.u16 %r43,%r57; cvt.u16.u8 %r57,%r39; mov.u16 %r44,%r57; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; .loc 1 71 6 cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 66 10 mov.u64 %r27,0; $L5: .loc 1 76 22 add.u64 %r48,%r27,%r33; .loc 1 76 13 shr.u64 %r28,%r48,1; .loc 1 77 15 mad.lo.u64 %r30,%r34,%r28,%r32; .loc 1 79 16 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),%r35,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r52,[%value_in]; } .loc 1 81 10 setp.lt.s32 %r53,%r52,0; @ %r53 bra $L6; .loc 1 83 15 setp.eq.u32 %r54,%r52,0; @ %r54 bra $L1; .loc 1 84 15 add.u64 %r27,%r28,1; bra $L3; $L6: .loc 1 82 15 mov.u64 %r33,%r28; $L3: .loc 1 74 16 setp.lt.u64 %r55,%r27,%r33; @ %r55 bra $L5; $L2: .loc 1 72 12 mov.u64 %r30,0; $L1: .loc 1 90 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-bzero.o/ 0 0 0 644 999 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bzero .visible .func bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/bzero.c" // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: bzero .visible .func bzero (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r27; mov.u64 %r22,%ar0; mov.u64 %r23,%ar1; .loc 1 33 2 mov.u32 %r25,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r27,[%value_in]; } .loc 1 34 1 ret; } lib_a-calloc.o/ 0 0 0 644 1619 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: calloc .visible .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/machine/nvptx/calloc.c" // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: calloc .visible .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r30; .reg .u32 %r32; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 22 13 mul.lo.u64 %r27,%r24,%r25; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r28,[%value_in]; } mov.u64 %r23,%r28; .loc 1 23 6 setp.eq.u64 %r30,%r23,0; @ %r30 bra $L1; .loc 1 25 10 mov.u32 %r32,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r34,[%value_in]; } mov.u64 %r23,%r34; $L1: .loc 1 26 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-callocr.o/0 0 0 644 1121 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _calloc_r .visible .func (.param .u64 %value_out) _calloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/machine/nvptx/callocr.c" // BEGIN GLOBAL FUNCTION DECL: calloc .extern .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _calloc_r .visible .func (.param .u64 %value_out) _calloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 21 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),calloc,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 22 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-cfreer.o/ 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; /186 0 0 0 644 992 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clearerr .visible .func clearerr (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/clearerr.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: clearerr .visible .func clearerr (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u16 %r31; .reg .u16 %r32; mov.u64 %r26,%ar0; .loc 1 77 3 ld.global.u64 %r25,[_impure_ptr]; setp.eq.u64 %r27,%r25,0; @ %r27 bra $L2; ld.u32 %r28,[%r25+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L2: .loc 1 79 3 ld.u16 %r32,[%r26+16]; and.b16 %r31,%r32,-97; st.u16 [%r26+16],%r31; .loc 1 81 1 ret; } lib_a-clock.o/ 0 0 0 644 1400 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clock .visible .func (.param .u64 %value_out) clock; .file 1 "../../../../../newlib/libc/time/clock.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _times_r .extern .func (.param .u64 %value_out) _times_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: clock .visible .func (.param .u64 %value_out) clock { .reg .u64 %value; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .loc 1 58 14 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),_times_r,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } mov.u64 %r29,%r33; .loc 1 58 6 setp.eq.u64 %r34,%r29,-1; @ %r34 bra $L1; .loc 1 59 38 ld.u64 %r36,[%frame]; ld.u64 %r37,[%frame+8]; add.u64 %r35,%r36,%r37; .loc 1 59 56 ld.u64 %r39,[%frame+16]; add.u64 %r38,%r35,%r39; .loc 1 59 9 ld.u64 %r40,[%frame+24]; add.u64 %r29,%r38,%r40; $L1: .loc 1 63 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-closer.o/ 0 0 0 644 1311 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _close_r .visible .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/reent/closer.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: close .extern .func (.param .u32 %value_out) close (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _close_r .visible .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 46 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 47 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; call (%value_in),close,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 47 6 setp.ne.u32 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 47 42 ld.global.u32 %r22,[errno]; .loc 1 47 33 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 48 17 st.u32 [%r24],%r22; $L1: .loc 1 50 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-ctime.o/ 0 0 0 644 1094 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctime .visible .func (.param .u64 %value_out) ctime (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/ctime.c" // BEGIN GLOBAL FUNCTION DECL: localtime .extern .func (.param .u64 %value_out) localtime (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: asctime .extern .func (.param .u64 %value_out) asctime (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctime .visible .func (.param .u64 %value_out) ctime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 42 19 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),localtime,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 42 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),asctime,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 43 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-ctime_r.o/0 0 0 644 1497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctime_r .visible .func (.param .u64 %value_out) ctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/time/ctime_r.c" // BEGIN GLOBAL FUNCTION DECL: localtime_r .extern .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: asctime_r .extern .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: ctime_r .visible .func (.param .u64 %value_out) ctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 13 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),localtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 13 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),asctime_r,(%out_arg1,%out_arg2); ld.param.u64 %r31,[%value_in]; } .loc 1 14 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-ctype_.o/ 0 0 0 644 1682 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL VAR DEF: _ctype_b .visible .const .align 1 .u8 _ctype_b[384] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,32,32,32,32,32,32,32,40,40,40,40,40,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,136,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,4,4,4,4,4,4,4,4,4,4,16,16,16,16,16,16,16,65,65,65,65,65,65,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,16,16,16,16,16,66,66,66,66,66,66,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,16,16,16,16,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: _ctype_ .visible .const .align 1 .u8 _ctype_[257] = {0,32,32,32,32,32,32,32,32,32,40,40,40,40,40,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,136,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,4,4,4,4,4,4,4,4,4,4,16,16,16,16,16,16,16,65,65,65,65,65,65,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,16,16,16,16,16,66,66,66,66,66,66,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,16,16,16,16,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; /204 0 0 0 644 1402 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __cxa_atexit .visible .func (.param .u32 %value_out) __cxa_atexit (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/cxa_atexit.c" // BEGIN GLOBAL FUNCTION DECL: __register_exitproc .extern .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: __cxa_atexit .visible .func (.param .u32 %value_out) __cxa_atexit (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 38 12 mov.u32 %r26,2; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r25; call (%value_in),__register_exitproc,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r30,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } /224 0 0 0 644 758 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __cxa_finalize .visible .func __cxa_finalize (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/cxa_finalize.c" // BEGIN GLOBAL FUNCTION DECL: __call_exitprocs .extern .func __call_exitprocs (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __cxa_finalize .visible .func __cxa_finalize (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u32 %r23; mov.u64 %r22,%ar0; .loc 1 18 3 mov.u32 %r23,0; { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call __call_exitprocs,(%out_arg1,%out_arg2); } .loc 1 19 1 ret; } /246 0 0 0 644 722 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: difftime .visible .func (.param .f64 %value_out) difftime (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/time/difftime.c" // BEGIN GLOBAL FUNCTION DEF: difftime .visible .func (.param .f64 %value_out) difftime (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 36 24 sub.u64 %r27,%r24,%r25; .loc 1 36 10 cvt.rn.f64.s64 %value,%r27; .loc 1 37 1 st.param.f64 [%value_out],%value; ret; } lib_a-div.o/ 0 0 0 644 1164 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: div .visible .func div (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/div.c" // BEGIN GLOBAL FUNCTION DEF: div .visible .func div (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 85 15 div.s32 %r22,%r25,%r26; .loc 1 86 14 rem.s32 %r23,%r25,%r26; .loc 1 113 5 setp.lt.s32 %r27,%r25,0; @ %r27 bra $L2; .loc 1 113 15 setp.ge.s32 %r28,%r23,0; @ %r28 bra $L3; .loc 1 114 3 add.u32 %r22,%r22,1; .loc 1 115 9 sub.u32 %r23,%r23,%r26; bra $L3; $L2: .loc 1 117 19 setp.le.s32 %r29,%r23,0; @ %r29 bra $L3; .loc 1 118 3 add.u32 %r22,%r22,-1; .loc 1 119 9 add.u32 %r23,%r23,%r26; $L3: .loc 1 121 9 st.u32 [%r24],%r22; st.u32 [%r24+4],%r23; .loc 1 122 1 ret; } lib_a-drand48.o/0 0 0 644 1683 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _drand48_r .visible .func (.param .f64 %value_out) _drand48_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/drand48.c" // BEGIN GLOBAL FUNCTION DECL: drand48 .visible .func (.param .f64 %value_out) drand48; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _erand48_r .extern .func (.param .f64 %value_out) _erand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _drand48_r .visible .func (.param .f64 %value_out) _drand48_r (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .f64 %r28; mov.u64 %r24,%ar0; .loc 1 20 24 add.u64 %r27,%r24,240; .loc 1 20 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_erand48_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } .loc 1 21 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: drand48 .visible .func (.param .f64 %value_out) drand48 { .reg .f64 %value; .reg .u64 %r22; .reg .u64 %r27; .reg .f64 %r28; .loc 1 27 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 20 24 add.u64 %r27,%r22,240; .loc 1 20 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_erand48_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } .loc 1 28 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-dtoa.o/ 0 0 0 644 63351 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: quorem .func (.param .u32 %value_out) quorem (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/dtoa.c" // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .visible .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL VAR DECL: __mprec_bigtens .extern .const .align 8 .u64 __mprec_bigtens[]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[]; // BEGIN GLOBAL FUNCTION DECL: __mcmp .extern .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __d2b .extern .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __i2b .extern .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __pow5mult .extern .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __multiply .extern .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __hi0bits .extern .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __lshift .extern .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __multadd .extern .func (.param .u64 %value_out) __multadd (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mdiff .extern .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[9] = {73,110,102,105,110,105,116,121,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {78,97,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[41] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,100,116,111,97,46,99,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[2] = {48,0 }; // BEGIN FUNCTION DEF: quorem .func (.param .u32 %value_out) quorem (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r24; .reg .u32 %r26; .reg .u32 %r32; .reg .u32 %r51; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u64 %r75; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r95; .reg .u64 %r97; .reg .u64 %r102; .reg .u64 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r116; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .pred %r129; .reg .u32 %r130; .reg .pred %r131; .reg .pred %r132; .reg .pred %r133; .reg .u32 %r134; .reg .pred %r135; .reg .u32 %r138; .reg .pred %r139; .reg .u32 %r140; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u64 %r160; .reg .u64 %r161; mov.u64 %r106,%ar0; mov.u64 %r107,%ar1; .loc 1 47 5 ld.u32 %r73,[%r107+20]; .loc 1 52 6 ld.u32 %r108,[%r106+20]; setp.lt.s32 %r109,%r108,%r73; @ %r109 bra $L13; .loc 1 55 7 add.u32 %r66,%r73,-1; .loc 1 55 12 cvt.s64.s32 %r110,%r66; shl.b64 %r23,%r110,2; .loc 1 54 6 add.u64 %r161,%r107,24; .loc 1 55 7 add.u64 %r75,%r161,%r23; .loc 1 56 6 add.u64 %r160,%r106,24; .loc 1 57 7 add.u64 %r77,%r160,%r23; .loc 1 58 7 ld.u32 %r24,[%r77]; .loc 1 58 20 ld.u32 %r112,[%r75]; add.u32 %r26,%r112,1; .loc 1 58 5 div.u32 %r71,%r24,%r26; .loc 1 63 6 setp.lt.u32 %r113,%r24,%r26; @ %r113 bra $L3; mov.u64 %r97,%r160; mov.u64 %r95,%r161; .loc 1 66 13 mov.u32 %r70,0; .loc 1 65 14 mov.u32 %r68,%r70; $L4: .loc 1 70 7 ld.u32 %r78,[%r95]; .loc 1 71 13 and.b32 %r114,%r78,65535; .loc 1 71 7 mad.lo.u32 %r79,%r114,%r71,%r70; .loc 1 72 13 shr.u32 %r116,%r78,16; .loc 1 72 30 shr.u32 %r118,%r79,16; .loc 1 72 7 mad.lo.u32 %r80,%r116,%r71,%r118; .loc 1 73 10 shr.u32 %r70,%r80,16; .loc 1 74 9 ld.u32 %r32,[%r97]; .loc 1 74 13 and.b32 %r119,%r32,65535; .loc 1 74 29 and.b32 %r121,%r79,65535; .loc 1 74 39 vsub.u32.u32.u32.add %r81,%r68,%r121,%r119; .loc 1 77 13 shr.u32 %r122,%r32,16; .loc 1 77 26 and.b32 %r123,%r80,65535; .loc 1 75 11 shr.s32 %r125,%r81,16; .loc 1 77 36 vsub.u32.u32.u32.add %r83,%r122,%r123,%r125; .loc 1 78 11 shr.s32 %r68,%r83,16; .loc 1 80 4 shl.b32 %r126,%r83,16; and.b32 %r127,%r81,65535; or.b32 %r128,%r126,%r127; st.u32 [%r97],%r128; .loc 1 90 17 add.u64 %r97,%r97,4; add.u64 %r95,%r95,4; setp.ge.u64 %r129,%r75,%r95; @ %r129 bra $L4; .loc 1 91 10 ld.u32 %r130,[%r77]; setp.ne.u32 %r131,%r130,0; @ %r131 bra $L3; .loc 1 94 22 add.u64 %r84,%r77,-4; setp.gt.u64 %r132,%r84,%r160; @ %r132 bra $L5; bra $L6; $L7: .loc 1 95 6 add.u32 %r66,%r66,-1; .loc 1 94 22 add.u64 %r84,%r84,-4; setp.le.u64 %r133,%r84,%r160; @ %r133 bra $L6; $L5: ld.u32 %r134,[%r84]; setp.eq.u32 %r135,%r134,0; @ %r135 bra $L7; $L6: .loc 1 96 12 st.u32 [%r106+20],%r66; $L3: .loc 1 99 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r107; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r138,[%value_in]; } .loc 1 99 6 setp.lt.s32 %r139,%r138,0; @ %r139 bra $L8; .loc 1 101 8 add.u32 %r71,%r71,1; mov.u64 %r104,%r160; mov.u64 %r102,%r161; .loc 1 102 14 mov.u32 %r69,0; $L9: .loc 1 109 7 ld.u32 %r85,[%r102]; .loc 1 113 9 ld.u32 %r51,[%r104]; .loc 1 113 13 and.b32 %r140,%r51,65535; .loc 1 110 13 and.b32 %r142,%r85,65535; .loc 1 113 39 vsub.u32.u32.u32.add %r86,%r69,%r142,%r140; .loc 1 116 13 shr.u32 %r143,%r51,16; .loc 1 111 13 shr.u32 %r144,%r85,16; .loc 1 114 11 shr.s32 %r146,%r86,16; .loc 1 116 36 vsub.u32.u32.u32.add %r88,%r143,%r144,%r146; .loc 1 117 11 shr.s32 %r69,%r88,16; .loc 1 119 4 shl.b32 %r147,%r88,16; and.b32 %r148,%r86,65535; or.b32 %r149,%r147,%r148; st.u32 [%r104],%r149; .loc 1 129 17 add.u64 %r104,%r104,4; add.u64 %r102,%r102,4; setp.ge.u64 %r150,%r75,%r102; @ %r150 bra $L9; .loc 1 131 16 cvt.s64.s32 %r151,%r66; shl.b64 %r152,%r151,2; .loc 1 131 11 add.u64 %r89,%r160,%r152; .loc 1 132 10 ld.u32 %r153,[%r89]; setp.ne.u32 %r154,%r153,0; @ %r154 bra $L8; .loc 1 134 22 add.u64 %r90,%r89,-4; setp.gt.u64 %r155,%r90,%r160; @ %r155 bra $L10; bra $L11; $L12: .loc 1 135 6 add.u32 %r66,%r66,-1; .loc 1 134 22 add.u64 %r90,%r90,-4; setp.le.u64 %r156,%r90,%r160; @ %r156 bra $L11; $L10: ld.u32 %r157,[%r90]; setp.eq.u32 %r158,%r157,0; @ %r158 bra $L12; $L11: .loc 1 136 12 st.u32 [%r106+20],%r66; $L8: .loc 1 139 10 mov.u32 %r105,%r71; bra $L1; $L13: .loc 1 53 12 mov.u32 %r105,0; $L1: .loc 1 140 1 mov.u32 %value,%r105; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _dtoa_r .visible .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r33; .reg .u32 %r37; .reg .u32 %r43; .reg .f64 %r45; .reg .u64 %r49; .reg .f64 %r50; .reg .u64 %r52; .reg .u32 %r58; .reg .u32 %r61; .reg .u32 %r64; .reg .u32 %r67; .reg .f64 %r69; .reg .f64 %r74; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r94; .reg .f64 %r101; .reg .u32 %r102; .reg .f64 %r110; .reg .f64 %r115; .reg .u32 %r117; .reg .f64 %r118; .reg .u64 %r147; .reg .u32 %r153; .reg .u64 %r155; .reg .u64 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u32 %r176; .reg .u32 %r178; .reg .u32 %r181; .reg .u32 %r182; .reg .u32 %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .u32 %r188; .reg .u32 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r194; .reg .f64 %r195; .reg .u64 %r196; .reg .u64 %r198; .reg .u64 %r199; .reg .u32 %r200; .reg .u64 %r203; .reg .u32 %r205; .reg .f64 %r206; .reg .u32 %r207; .reg .u64 %r208; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .f64 %r216; .reg .u32 %r217; .reg .u64 %r218; .reg .u32 %r219; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r225; .reg .u32 %r226; .reg .u32 %r227; .reg .u32 %r228; .reg .u32 %r229; .reg .u32 %r233; .reg .u32 %r239; .reg .u32 %r241; .reg .u32 %r242; .reg .f64 %r243; .reg .u32 %r246; .reg .u64 %r249; .reg .u32 %r251; .reg .u64 %r252; .reg .u64 %r258; .reg .u32 %r261; .reg .u32 %r262; .reg .u64 %r263; .reg .u64 %r264; .reg .u32 %r269; .reg .f64 %r270; .reg .u64 %r276; .reg .u64 %r277; .reg .f64 %r279; .reg .u32 %r281; .reg .u64 %r282; .reg .u64 %r284; .reg .u64 %r286; .reg .u32 %r288; .reg .f64 %r290; .reg .f64 %r294; .reg .u32 %r297; .reg .u64 %r299; .reg .u32 %r300; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r308; .reg .u32 %r309; .reg .u32 %r310; .reg .f64 %r315; .reg .f64 %r317; .reg .u32 %r318; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .f64 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r336; .reg .pred %r337; .reg .u32 %r338; .reg .u32 %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .pred %r346; .reg .u32 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r350; .reg .u32 %r352; .reg .u32 %r353; .reg .pred %r354; .reg .u32 %r355; .reg .u64 %r356; .reg .u64 %r357; .reg .pred %r358; .reg .pred %r359; .reg .u32 %r360; .reg .pred %r361; .reg .u64 %r362; .reg .u64 %r367; .reg .u64 %r368; .reg .pred %r369; .reg .u64 %r377; .reg .u32 %r379; .reg .u64 %r380; .reg .u32 %r381; .reg .pred %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u64 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u64 %r394; .reg .u64 %r395; .reg .u64 %r396; .reg .f64 %r398; .reg .f64 %r399; .reg .f64 %r400; .reg .f64 %r401; .reg .pred %r402; .reg .f64 %r403; .reg .pred %r404; .reg .pred %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r408; .reg .u64 %r409; .reg .f64 %r410; .reg .pred %r411; .reg .pred %r412; .reg .u32 %r413; .reg .pred %r414; .reg .pred %r415; .reg .pred %r416; .reg .pred %r417; .reg .u32 %r418; .reg .pred %r419; .reg .u64 %r421; .reg .u64 %r422; .reg .pred %r423; .reg .u64 %r426; .reg .pred %r427; .reg .u64 %r428; .reg .u32 %r429; .reg .u64 %r430; .reg .u64 %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .u32 %r434; .reg .u32 %r435; .reg .u16 %r436; .reg .u16 %r437; .reg .u32 %r438; .reg .u16 %r439; .reg .u16 %r440; .reg .u16 %r441; .reg .u32 %r442; .reg .pred %r443; .reg .pred %r444; .reg .u64 %r445; .reg .u32 %r446; .reg .u64 %r447; .reg .u64 %r448; .reg .u64 %r449; .reg .u32 %r450; .reg .pred %r451; .reg .u64 %r452; .reg .f64 %r453; .reg .pred %r454; .reg .u32 %r455; .reg .pred %r456; .reg .f64 %r457; .reg .pred %r458; .reg .pred %r459; .reg .u64 %r460; .reg .u32 %r461; .reg .u64 %r462; .reg .u64 %r463; .reg .u64 %r464; .reg .f64 %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r468; .reg .f64 %r469; .reg .pred %r470; .reg .pred %r471; .reg .pred %r472; .reg .pred %r473; .reg .pred %r474; .reg .pred %r475; .reg .u32 %r476; .reg .f64 %r477; .reg .u64 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u64 %r482; .reg .u64 %r483; .reg .u64 %r484; .reg .f64 %r486; .reg .u64 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u64 %r491; .reg .u64 %r492; .reg .u64 %r493; .reg .pred %r495; .reg .f64 %r496; .reg .pred %r497; .reg .f64 %r498; .reg .pred %r499; .reg .u32 %r500; .reg .u16 %r501; .reg .u16 %r502; .reg .u32 %r503; .reg .u64 %r504; .reg .u32 %r505; .reg .u64 %r506; .reg .u64 %r507; .reg .u64 %r508; .reg .f64 %r509; .reg .pred %r510; .reg .f64 %r511; .reg .f64 %r512; .reg .pred %r514; .reg .f64 %r515; .reg .f64 %r516; .reg .pred %r517; .reg .pred %r518; .reg .f64 %r519; .reg .u32 %r520; .reg .u16 %r521; .reg .u16 %r522; .reg .pred %r523; .reg .pred %r525; .reg .f64 %r526; .reg .pred %r527; .reg .f64 %r528; .reg .f64 %r529; .reg .pred %r530; .reg .u16 %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u32 %r534; .reg .u64 %r535; .reg .f64 %r536; .reg .u32 %r537; .reg .u16 %r538; .reg .u16 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .u32 %r546; .reg .u32 %r547; .reg .u32 %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u16 %r551; .reg .u32 %r552; .reg .u16 %r553; .reg .pred %r554; .reg .u64 %r555; .reg .u64 %r556; .reg .u64 %r557; .reg .u64 %r558; .reg .u32 %r560; .reg .u32 %r561; .reg .u32 %r562; .reg .u32 %r563; .reg .u32 %r564; .reg .u16 %r565; .reg .u16 %r566; .reg .u16 %r567; .reg .u32 %r568; .reg .u16 %r569; .reg .pred %r570; .reg .pred %r571; .reg .f64 %r572; .reg .f64 %r573; .reg .pred %r574; .reg .f64 %r575; .reg .f64 %r576; .reg .f64 %r577; .reg .u32 %r578; .reg .u16 %r579; .reg .u16 %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r583; .reg .u32 %r584; .reg .pred %r585; .reg .pred %r586; .reg .u16 %r587; .reg .pred %r588; .reg .u16 %r590; .reg .u32 %r592; .reg .u32 %r593; .reg .u32 %r594; .reg .u64 %r595; .reg .u64 %r596; .reg .pred %r597; .reg .f64 %r598; .reg .f64 %r599; .reg .f64 %r600; .reg .u32 %r601; .reg .u16 %r602; .reg .u16 %r603; .reg .pred %r604; .reg .pred %r606; .reg .pred %r607; .reg .u32 %r608; .reg .u32 %r609; .reg .pred %r610; .reg .pred %r612; .reg .u32 %r614; .reg .u64 %r615; .reg .u32 %r616; .reg .u32 %r617; .reg .u32 %r618; .reg .u32 %r619; .reg .u32 %r620; .reg .u32 %r621; .reg .u16 %r622; .reg .u16 %r623; .reg .u16 %r624; .reg .u32 %r625; .reg .u16 %r626; .reg .pred %r627; .reg .pred %r628; .reg .pred %r630; .reg .u64 %r634; .reg .u64 %r638; .reg .pred %r641; .reg .u64 %r645; .reg .u64 %r649; .reg .u32 %r651; .reg .u64 %r652; .reg .pred %r653; .reg .u64 %r657; .reg .pred %r658; .reg .pred %r659; .reg .u64 %r660; .reg .pred %r661; .reg .u64 %r662; .reg .u32 %r663; .reg .u32 %r664; .reg .pred %r665; .reg .pred %r666; .reg .u32 %r667; .reg .u32 %r668; .reg .u32 %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .u32 %r675; .reg .u32 %r676; .reg .u32 %r677; .reg .pred %r678; .reg .u32 %r679; .reg .pred %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u64 %r686; .reg .pred %r687; .reg .u64 %r691; .reg .u32 %r692; .reg .pred %r695; .reg .u32 %r698; .reg .pred %r699; .reg .u32 %r702; .reg .u32 %r703; .reg .u64 %r704; .reg .u32 %r705; .reg .u32 %r706; .reg .u32 %r707; .reg .u16 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u32 %r711; .reg .u64 %r717; .reg .pred %r718; .reg .u32 %r719; .reg .u32 %r720; .reg .u32 %r721; .reg .u16 %r722; .reg .u16 %r723; .reg .u16 %r724; .reg .u32 %r725; .reg .u16 %r726; .reg .pred %r727; .reg .pred %r728; .reg .u32 %r731; .reg .u64 %r733; .reg .u32 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .pred %r740; .reg .u64 %r744; .reg .pred %r745; .reg .u32 %r748; .reg .u64 %r749; .reg .pred %r750; .reg .u64 %r751; .reg .u32 %r752; .reg .u64 %r754; .reg .u64 %r758; .reg .u64 %r759; .reg .u64 %r760; .reg .u64 %r761; .reg .u64 %r762; .reg .u64 %r763; .reg .u32 %r766; .reg .u64 %r767; .reg .u32 %r768; .reg .u64 %r769; .reg .u32 %r772; .reg .u32 %r775; .reg .u64 %r779; .reg .u32 %r780; .reg .pred %r781; .reg .u32 %r784; .reg .u32 %r790; .reg .u32 %r791; .reg .pred %r792; .reg .pred %r793; .reg .pred %r794; .reg .pred %r795; .reg .u32 %r799; .reg .u32 %r800; .reg .pred %r801; .reg .pred %r802; .reg .u32 %r805; .reg .u64 %r806; .reg .u32 %r809; .reg .pred %r810; .reg .pred %r811; .reg .u32 %r812; .reg .pred %r813; .reg .pred %r814; .reg .pred %r815; .reg .pred %r816; .reg .u32 %r817; .reg .u32 %r818; .reg .u16 %r819; .reg .u16 %r820; .reg .pred %r821; .reg .u32 %r824; .reg .u32 %r825; .reg .u64 %r826; .reg .pred %r827; .reg .u64 %r832; .reg .u64 %r837; .reg .u64 %r842; .reg .u32 %r845; .reg .u64 %r846; .reg .u32 %r847; .reg .pred %r848; .reg .u64 %r849; .reg .pred %r850; .reg .u32 %r851; .reg .u64 %r852; .reg .u32 %r855; .reg .u32 %r856; .reg .u64 %r857; .reg .u32 %r860; .reg .u64 %r861; .reg .u32 %r864; .reg .pred %r865; .reg .pred %r866; .reg .u32 %r867; .reg .pred %r868; .reg .pred %r869; .reg .u32 %r870; .reg .u16 %r871; .reg .pred %r872; .reg .u16 %r874; .reg .u16 %r876; .reg .u32 %r877; .reg .pred %r878; .reg .pred %r881; .reg .u32 %r882; .reg .u32 %r883; .reg .u32 %r884; .reg .u32 %r885; .reg .u32 %r886; .reg .u32 %r887; .reg .u16 %r888; .reg .u16 %r889; .reg .u16 %r890; .reg .u32 %r891; .reg .u16 %r892; .reg .pred %r893; .reg .u32 %r900; .reg .pred %r901; .reg .pred %r903; .reg .pred %r904; .reg .pred %r907; .reg .pred %r908; .reg .u32 %r909; .reg .pred %r910; .reg .f64 %r911; .reg .u64 %r913; .reg .u32 %r914; .reg .u32 %r915; .reg .u64 %r916; .reg .u64 %r917; .reg .u64 %r918; .reg .u32 %r922; .reg .u32 %r923; .reg .u64 %r926; .reg .pred %r927; .reg .pred %r928; .reg .pred %r929; .reg .pred %r930; .reg .pred %r931; .reg .pred %r932; .reg .u64 %r933; .reg .pred %r934; .reg .u32 %r935; .reg .u32 %r936; .reg .u32 %r937; .reg .u32 %r939; .reg .u32 %r940; .reg .u32 %r941; .reg .u16 %r942; .reg .u16 %r943; .reg .u16 %r944; .reg .u32 %r945; .reg .u16 %r946; .reg .pred %r947; .reg .u64 %r948; .reg .u32 %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u64 %r952; .reg .u64 %r953; .reg .u64 %r954; .reg .u64 %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .pred %r958; .reg .u32 %r961; .reg .u32 %r962; .reg .u16 %r965; mov.u64 %r330,%ar0; mov.f64 %r331,%ar1; mov.u32 %r332,%ar2; mov.u32 %r333,%ar3; mov.u64 %r334,%ar4; mov.u64 %r335,%ar5; mov.u64 %r336,%ar6; .loc 1 232 7 mov.b64 %r326,%r331; .loc 1 235 7 ld.u64 %r22,[%r330+96]; .loc 1 235 6 setp.eq.u64 %r337,%r22,0; @ %r337 bra $L19; .loc 1 237 35 ld.u32 %r23,[%r330+104]; .loc 1 237 33 st.u32 [%r22+8],%r23; .loc 1 238 42 mov.u32 %r339,1; shl.b32 %r338,%r339,%r23; .loc 1 238 38 st.u32 [%r22+12],%r338; .loc 1 239 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 240 29 mov.u64 %r342,0; st.u64 [%r330+96],%r342; $L19: mov.b64 %r343,%r331; shr.u64 %r344,%r343,32; cvt.u32.u64 %r153,%r344; .loc 1 243 6 setp.ge.s32 %r346,%r153,0; @ %r346 bra $L20; .loc 1 246 13 mov.u32 %r347,1; st.u32 [%r335],%r347; .loc 1 247 17 and.b32 %r153,%r153,2147483647; cvt.u64.u32 %r348,%r153; shl.b64 %r349,%r348,32; and.b64 %r350,%r326,4294967295; or.b64 %r326,%r350,%r349; .loc 1 263 13 mov.b64 %r270,%r326; bra $L21; $L20: .loc 1 250 11 mov.u32 %r352,0; st.u32 [%r335],%r352; mov.f64 %r270,%r331; $L21: .loc 1 254 18 and.b32 %r353,%r153,2146435072; .loc 1 254 6 setp.ne.u32 %r354,%r353,2146435072; @ %r354 bra $L22; .loc 1 260 14 mov.u32 %r355,9999; st.u32 [%r334],%r355; .loc 1 263 13 mov.b64 %r357,%r270; and.b64 %r356,%r357,4503599627370495; .loc 1 263 52 setp.eq.u64 %r358,%r356,0; @ %r358 bra $L23; bra $L259; $L184: cvta.const.u64 %r329,$LC0; .loc 1 269 17 add.u64 %r199,%r329,8; bra $L140; $L185: .loc 1 263 52 cvta.const.u64 %r329,$LC1; .loc 1 269 17 add.u64 %r199,%r329,3; $L140: .loc 1 267 7 st.u64 [%r336],%r199; bra $L18; $L22: .loc 1 278 6 setp.neu.f64 %r359,%r270,0d0000000000000000; @ %r359 bra $L26; .loc 1 280 14 mov.u32 %r360,1; st.u32 [%r334],%r360; .loc 1 282 10 setp.eq.u64 %r361,%r336,0; @ %r361 bra $L156; .loc 1 283 7 cvta.const.u64 %r362,$LC2+1; st.u64 [%r336],%r362; .loc 1 284 14 cvta.const.u64 %r329,$LC2; bra $L18; $L26: .loc 1 287 7 add.u64 %r367,%frame,4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r270; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r367; call (%value_in),__d2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r368,[%value_in]; } mov.u64 %r190,%r368; .loc 1 291 29 shr.u32 %r33,%r153,20; .loc 1 291 6 setp.eq.u32 %r369,%r33,0; @ %r369 bra $L27; .loc 1 294 12 mov.b64 %r327,%r270; .loc 1 296 18 and.b64 %r377,%r327,4503599627370495; or.b64 %r327,%r377,4607182418800017408; .loc 1 324 9 add.u32 %r175,%r33,-1023; .loc 1 336 17 ld.u32 %r269,[%frame+4]; .loc 1 330 14 mov.u32 %r189,0; bra $L28; $L27: .loc 1 336 17 ld.u32 %r269,[%frame+4]; ld.u32 %r379,[%frame]; add.u32 %r37,%r269,%r379; .loc 1 336 9 add.u32 %r205,%r37,1074; mov.b64 %r380,%r331; cvt.u32.u64 %r381,%r380; .loc 1 341 8 setp.le.s32 %r382,%r205,32; @ %r382 bra $L29; .loc 1 340 40 mov.u32 %r384,64; sub.u32 %r383,%r384,%r205; .loc 1 340 33 shl.b32 %r385,%r153,%r383; .loc 1 340 65 add.u32 %r386,%r37,1042; .loc 1 340 59 shr.u32 %r387,%r381,%r386; .loc 1 341 8 or.b32 %r200,%r385,%r387; bra $L30; $L29: .loc 1 341 28 mov.u32 %r389,32; sub.u32 %r388,%r389,%r205; .loc 1 341 8 shl.b32 %r200,%r381,%r388; $L30: .loc 1 343 12 cvt.rn.f64.u32 %r45,%r200; mov.b64 %r327,%r45; .loc 1 344 18 shr.u64 %r391,%r327,32; cvt.u32.u64 %r392,%r391; add.u32 %r393,%r392,-32505856; cvt.u64.u32 %r394,%r393; shl.b64 %r395,%r394,32; and.b64 %r396,%r327,4294967295; or.b64 %r327,%r396,%r395; .loc 1 345 9 add.u32 %r175,%r37,-1; .loc 1 346 14 mov.u32 %r189,1; $L28: .loc 1 352 14 mov.b64 %r399,%r327; mov.f64 %r400,0d3ff8000000000000; sub.f64 %r398,%r399,%r400; .loc 1 352 41 fma.rn.f64 %r50,%r398,0d3fd287a7636f4361,0d3fc68a288b60c8b3; .loc 1 352 63 cvt.rn.f64.s32 %r401,%r175; .loc 1 352 6 fma.rn.f64 %r206,%r401,0d3fd34413509f79fb,%r50; .loc 1 354 5 cvt.rzi.s32.f64 %r181,%r206; .loc 1 355 6 setp.lt.f64 %r402,%r206,0d0000000000000000; @ ! %r402 bra $L31; .loc 1 355 21 cvt.rn.f64.s32 %r403,%r181; .loc 1 355 15 setp.eq.f64 %r404,%r403,%r206; @ %r404 bra $L31; .loc 1 356 6 add.u32 %r181,%r181,-1; $L31: .loc 1 364 13 sub.u32 %r318,%r269,%r175; .loc 1 364 5 add.u32 %r187,%r318,-1; .loc 1 358 6 setp.gt.u32 %r405,%r181,22; @ %r405 bra $L157; .loc 1 360 21 cvta.const.u64 %r406,__mprec_tens; cvt.s64.s32 %r407,%r181; shl.b64 %r408,%r407,3; add.u64 %r409,%r406,%r408; .loc 1 360 10 ld.f64 %r410,[%r409]; setp.gt.f64 %r411,%r410,%r270; @ ! %r411 bra $L260; .loc 1 361 3 add.u32 %r181,%r181,-1; .loc 1 362 15 mov.u32 %r184,0; bra $L33; $L157: .loc 1 357 11 mov.u32 %r184,1; $L33: .loc 1 365 6 setp.ge.s32 %r412,%r187,0; @ %r412 bra $L158; $L152: .loc 1 372 10 mov.u32 %r413,1; sub.u32 %r172,%r413,%r318; .loc 1 373 10 mov.u32 %r187,0; bra $L36; $L158: .loc 1 367 10 mov.u32 %r172,0; $L36: .loc 1 375 6 setp.lt.s32 %r414,%r181,0; @ ! %r414 bra $L151; bra $L37; $L190: .loc 1 362 15 mov.u32 %r184,0; .loc 1 367 10 mov.u32 %r172,%r184; $L151: .loc 1 379 10 add.u32 %r187,%r187,%r181; mov.u32 %r261,%r181; .loc 1 377 10 mov.u32 %r173,0; bra $L38; $L37: .loc 1 383 10 sub.u32 %r172,%r172,%r181; .loc 1 384 10 neg.s32 %r173,%r181; mov.u32 %r261,%r181; .loc 1 385 10 mov.u32 %r181,0; $L38: .loc 1 387 6 setp.gt.u32 %r415,%r332,9; @ %r415 bra $L159; .loc 1 390 6 setp.le.s32 %r416,%r332,5; @ %r416 bra $L160; .loc 1 392 12 add.u32 %r332,%r332,-4; .loc 1 393 17 mov.u32 %r67,0; bra $L40; $L188: .loc 1 405 17 mov.u32 %r251,0; bra $L149; $L189: .loc 1 397 3 mov.u32 %r251,1; $L149: .loc 1 408 10 setp.le.s32 %r417,%r333,0; @ %r417 bra $L161; mov.u32 %r262,%r333; mov.u32 %r281,%r333; mov.u32 %r176,%r333; bra $L41; $L187: .loc 1 413 17 mov.u32 %r251,0; $L147: .loc 1 416 19 add.u32 %r262,%r333,%r261; .loc 1 416 9 add.u32 %r281,%r262,1; max.s32 %r176,%r281,1; $L41: .loc 1 423 32 mov.u32 %r418,0; st.u32 [%r330+104],%r418; .loc 1 423 77 cvt.s64.s32 %r284,%r176; setp.le.s32 %r419,%r176,31; @ %r419 bra $L162; mov.u32 %r207,1; .loc 1 422 5 mov.u32 %r241,4; $L43: .loc 1 425 28 mov.u32 %r58,%r207; .loc 1 424 10 add.u32 %r241,%r241,%r241; .loc 1 423 77 add.u32 %r207,%r58,1; .loc 1 423 73 cvt.s64.s32 %r421,%r241; add.u64 %r422,%r421,28; .loc 1 423 77 setp.le.u64 %r423,%r422,%r284; @ %r423 bra $L43; st.u32 [%r330+104],%r58; bra $L42; $L162: mov.u32 %r58,%r418; $L42: .loc 1 426 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r58; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r426,[%value_in]; } mov.u64 %r208,%r426; setp.ne.u64 %r427,%r426,0; @ %r427 bra $L44; $L145: cvta.const.u64 %r431,$LC3; mov.u64 %r430,0; mov.u32 %r429,426; cvta.const.u64 %r428,$LC4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r428; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r429; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r430; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r431; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L44: .loc 1 426 25 st.u64 [%r330+96],%r426; .loc 1 429 17 mov.u32 %r61,%r281; set.u32.le.u32 %r433,%r281,14; neg.s32 %r434,%r433; mov.u32 %r432,%r434; .loc 1 429 38 mov.u32 %r435,%r67; cvt.u16.u8 %r965,%r435; mov.u16 %r437,%r965; and.b16 %r436,%r437,1; cvt.u32.u16 %r438,%r436; cvt.u16.u8 %r965,%r432; mov.u16 %r440,%r965; cvt.u16.u8 %r965,%r438; mov.u16 %r441,%r965; and.b16 %r439,%r440,%r441; cvt.u32.u16 %r442,%r439; cvt.u32.u8 %r64,%r442; .loc 1 429 6 setp.eq.u32 %r443,%r64,0; @ %r443 bra $L45; .loc 1 438 10 setp.le.s32 %r444,%r261,0; @ %r444 bra $L46; .loc 1 440 7 cvta.const.u64 %r445,__mprec_tens; .loc 1 440 16 and.b32 %r446,%r261,15; .loc 1 440 7 cvt.s64.s32 %r447,%r446; shl.b64 %r448,%r447,3; add.u64 %r449,%r445,%r448; ld.f64 %r195,[%r449]; .loc 1 441 6 shr.s32 %r182,%r261,4; .loc 1 442 10 and.b32 %r450,%r182,16; .loc 1 442 7 setp.eq.u32 %r451,%r450,0; @ %r451 bra $L163; .loc 1 445 10 and.b32 %r182,%r182,15; .loc 1 446 22 cvta.const.u64 %r452,__mprec_bigtens; .loc 1 446 12 ld.f64 %r453,[%r452+32]; div.rn.f64 %r69,%r270,%r453; .loc 1 447 12 mov.u32 %r178,3; bra $L47; $L163: mov.f64 %r69,%r270; .loc 1 437 12 mov.u32 %r178,2; $L47: .loc 1 449 11 setp.eq.u32 %r454,%r182,0; @ %r454 bra $L48; cvta.const.u64 %r155,__mprec_bigtens; $L50: .loc 1 450 12 and.b32 %r455,%r182,1; .loc 1 450 9 setp.eq.u32 %r456,%r455,0; @ %r456 bra $L49; .loc 1 452 7 add.u32 %r178,%r178,1; .loc 1 453 6 ld.f64 %r457,[%r155]; mul.f64 %r195,%r195,%r457; $L49: .loc 1 449 16 shr.s32 %r182,%r182,1; .loc 1 449 11 add.u64 %r155,%r155,8; setp.ne.u32 %r458,%r182,0; @ %r458 bra $L50; $L48: .loc 1 455 8 div.rn.f64 %r279,%r69,%r195; bra $L51; $L46: .loc 1 457 15 setp.eq.u32 %r459,%r261,0; @ %r459 bra $L164; .loc 1 457 20 neg.s32 %r210,%r261; .loc 1 459 15 cvta.const.u64 %r460,__mprec_tens; .loc 1 459 19 and.b32 %r461,%r210,15; .loc 1 459 15 cvt.s64.s32 %r462,%r461; shl.b64 %r463,%r462,3; add.u64 %r464,%r460,%r463; .loc 1 459 8 ld.f64 %r465,[%r464]; mul.f64 %r74,%r270,%r465; .loc 1 460 11 shr.s32 %r211,%r210,4; .loc 1 460 22 setp.eq.u32 %r466,%r211,0; @ %r466 bra $L165; cvta.const.u64 %r218,__mprec_bigtens; mov.f64 %r279,%r74; mov.u32 %r242,0; .loc 1 437 12 mov.u32 %r178,2; $L53: .loc 1 461 12 and.b32 %r467,%r211,1; .loc 1 461 9 setp.eq.u32 %r468,%r467,0; @ %r468 bra $L52; .loc 1 463 7 add.u32 %r178,%r178,1; .loc 1 464 7 ld.f64 %r469,[%r218]; mul.f64 %r279,%r279,%r469; mov.u32 %r242,%r64; $L52: .loc 1 460 27 shr.s32 %r211,%r211,1; .loc 1 460 22 add.u64 %r218,%r218,8; setp.ne.u32 %r470,%r211,0; @ %r470 bra $L53; setp.eq.u32 %r471,%r242,0; selp.f64 %r279,%r74,%r279,%r471; bra $L51; $L164: mov.f64 %r279,%r270; .loc 1 437 12 mov.u32 %r178,2; bra $L51; $L165: .loc 1 460 22 mov.f64 %r279,%r74; .loc 1 437 12 mov.u32 %r178,2; $L51: .loc 1 467 10 setp.eq.u32 %r472,%r184,0; @ %r472 bra $L55; .loc 1 467 19 setp.lt.f64 %r473,%r279,0d3ff0000000000000; @ ! %r473 bra $L55; .loc 1 467 31 setp.eq.u32 %r474,%r281,0; @ %r474 bra $L57; .loc 1 469 7 setp.le.s32 %r475,%r262,0; @ %r475 bra $L58; .loc 1 472 5 add.u32 %r246,%r261,-1; .loc 1 473 8 mul.f64 %r279,%r279,0d4024000000000000; .loc 1 474 8 add.u32 %r476,%r178,1; .loc 1 476 20 cvt.rn.f64.s32 %r477,%r476; .loc 1 476 26 fma.rn.f64 %r294,%r279,%r477,0d401c000000000000; .loc 1 476 13 mov.b64 %r328,%r294; .loc 1 477 19 shr.u64 %r479,%r328,32; cvt.u32.u64 %r480,%r479; add.u32 %r481,%r480,-54525952; cvt.u64.u32 %r482,%r481; shl.b64 %r483,%r482,32; and.b64 %r484,%r328,4294967295; or.b64 %r328,%r484,%r483; mov.u32 %r297,%r262; bra $L59; $L55: .loc 1 476 20 cvt.rn.f64.s32 %r486,%r178; .loc 1 476 26 fma.rn.f64 %r78,%r486,%r279,0d401c000000000000; .loc 1 476 13 mov.b64 %r328,%r78; .loc 1 477 19 shr.u64 %r488,%r328,32; cvt.u32.u64 %r489,%r488; add.u32 %r490,%r489,-54525952; cvt.u64.u32 %r491,%r490; shl.b64 %r492,%r491,32; and.b64 %r493,%r328,4294967295; or.b64 %r328,%r493,%r492; .loc 1 478 10 setp.ne.u32 %r495,%r281,0; @ %r495 bra $L167; $L144: .loc 1 481 8 mov.f64 %r496,0d4014000000000000; sub.f64 %r80,%r279,%r496; .loc 1 482 17 mov.b64 %r81,%r328; .loc 1 482 7 setp.gt.f64 %r497,%r80,%r81; @ %r497 bra $L168; .loc 1 484 14 neg.f64 %r498,%r81; .loc 1 484 7 setp.lt.f64 %r499,%r80,%r498; @ %r499 bra $L169; bra $L58; $L167: mov.u32 %r246,%r261; mov.u32 %r297,%r281; $L59: .loc 1 497 10 cvt.rzi.s32.f64 %r310,%r279; .loc 1 499 19 mov.u32 %r500,%r310; cvt.u16.u8 %r965,%r500; mov.u16 %r502,%r965; add.u16 %r501,%r502,48; cvt.u32.u16 %r503,%r501; .loc 1 494 38 mov.b64 %r315,%r328; .loc 1 494 22 cvta.const.u64 %r504,__mprec_tens; .loc 1 494 28 add.u32 %r505,%r297,-1; .loc 1 494 22 cvt.s64.s32 %r506,%r505; shl.b64 %r507,%r506,3; add.u64 %r508,%r504,%r507; ld.f64 %r317,[%r508]; .loc 1 498 12 cvt.rn.f64.s32 %r509,%r310; sub.f64 %r94,%r279,%r509; .loc 1 499 10 add.u64 %r196,%r426,1; .loc 1 489 10 setp.eq.u32 %r510,%r251,0; @ %r510 bra $L62; .loc 1 494 16 mov.f64 %r512,0d3fe0000000000000; div.rn.f64 %r511,%r512,%r317; .loc 1 494 33 sub.f64 %r89,%r511,%r315; .loc 1 499 13 st.u8 [%r426],%r503; .loc 1 500 11 setp.gt.f64 %r514,%r89,%r94; @ ! %r514 bra $L261; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r426; .loc 1 499 10 mov.u64 %r208,%r196; bra $L65; $L261: mov.u64 %r203,%r196; .loc 1 495 11 mov.u32 %r215,0; .loc 1 502 15 mov.f64 %r516,0d3ff0000000000000; $L67: mov.u64 %r196,%r203; sub.f64 %r515,%r516,%r94; .loc 1 502 11 setp.lt.f64 %r517,%r515,%r89; @ %r517 bra $L77; .loc 1 504 11 add.u32 %r215,%r215,1; setp.ge.s32 %r518,%r215,%r297; @ %r518 bra $L58; .loc 1 506 14 mul.f64 %r89,%r89,0d4024000000000000; .loc 1 507 12 mul.f64 %r90,%r94,0d4024000000000000; .loc 1 497 10 cvt.rzi.s32.f64 %r214,%r90; .loc 1 498 12 cvt.rn.f64.s32 %r519,%r214; sub.f64 %r94,%r90,%r519; add.u64 %r203,%r203,1; .loc 1 499 19 mov.u32 %r520,%r214; cvt.u16.u8 %r965,%r520; mov.u16 %r522,%r965; add.u16 %r521,%r522,48; st.u8 [%r196],%r521; .loc 1 500 11 setp.lt.f64 %r523,%r94,%r89; @ ! %r523 bra $L67; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r426; mov.u64 %r208,%r203; bra $L65; $L62: .loc 1 514 10 mul.f64 %r91,%r315,%r317; .loc 1 519 13 st.u8 [%r426],%r503; .loc 1 520 11 setp.ne.u32 %r525,%r297,1; @ %r525 bra $L69; $L73: .loc 1 522 19 add.f64 %r526,%r91,0d3fe0000000000000; .loc 1 522 8 setp.lt.f64 %r527,%r526,%r94; @ %r527 bra $L77; .loc 1 524 24 mov.f64 %r529,0d3fe0000000000000; sub.f64 %r528,%r529,%r91; .loc 1 524 13 setp.gt.f64 %r530,%r528,%r94; @ ! %r530 bra $L58; $L71: mov.u64 %r52,%r196; .loc 1 526 21 add.u64 %r196,%r196,-1; ld.u8 %r532,[%r196]; cvt.s16.s8 %r531,%r532; setp.eq.u16 %r533,%r531,48; @ %r533 bra $L71; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r426; mov.u64 %r208,%r52; bra $L65; $L69: mov.u64 %r171,%r196; add.u32 %r534,%r297,-2; cvt.u64.u32 %r299,%r534; add.u64 %r535,%r426,2; add.u64 %r147,%r535,%r299; $L72: .loc 1 515 26 mul.f64 %r101,%r94,0d4024000000000000; .loc 1 517 10 cvt.rzi.s32.f64 %r213,%r101; .loc 1 518 12 cvt.rn.f64.s32 %r536,%r213; sub.f64 %r94,%r101,%r536; .loc 1 519 19 mov.u32 %r537,%r213; cvt.u16.u8 %r965,%r537; mov.u16 %r539,%r965; add.u16 %r538,%r539,48; st.u8 [%r171],%r538; .loc 1 520 11 add.u64 %r171,%r171,1; setp.ne.u64 %r540,%r147,%r171; @ %r540 bra $L72; .loc 1 519 10 add.u64 %r541,%r299,1; add.u64 %r196,%r196,%r541; bra $L73; $L58: .loc 1 538 11 mov.b64 %r326,%r270; $L45: .loc 1 545 10 ld.u32 %r102,[%frame]; .loc 1 545 6 not.b32 %r543,%r102; shr.u32 %r544,%r543,31; mov.u32 %r545,%r544; .loc 1 545 15 set.u32.le.s32 %r547,%r261,14; neg.s32 %r548,%r547; mov.u32 %r546,%r548; cvt.u16.u8 %r965,%r545; mov.u16 %r550,%r965; cvt.u16.u8 %r965,%r546; mov.u16 %r551,%r965; and.b16 %r549,%r550,%r551; cvt.u32.u16 %r552,%r549; cvt.u16.u8 %r553,%r552; setp.eq.u16 %r554,%r553,0; @ %r554 bra $L74; .loc 1 548 10 cvta.const.u64 %r555,__mprec_tens; cvt.s64.s32 %r556,%r261; shl.b64 %r557,%r556,3; add.u64 %r558,%r555,%r557; ld.f64 %r216,[%r558]; .loc 1 549 19 shr.u32 %r560,%r333,31; mov.u32 %r561,%r560; .loc 1 549 31 set.u32.le.s32 %r563,%r281,0; neg.s32 %r564,%r563; mov.u32 %r562,%r564; .loc 1 549 23 cvt.u16.u8 %r965,%r561; mov.u16 %r566,%r965; cvt.u16.u8 %r965,%r562; mov.u16 %r567,%r965; and.b16 %r565,%r566,%r567; cvt.u32.u16 %r568,%r565; .loc 1 549 10 cvt.u16.u8 %r569,%r568; setp.eq.u16 %r570,%r569,0; @ %r570 bra $L75; .loc 1 552 7 setp.ne.u32 %r571,%r281,0; @ %r571 bra $L170; .loc 1 552 29 mul.f64 %r572,%r216,0d4014000000000000; .loc 1 552 17 mov.b64 %r573,%r326; setp.ge.f64 %r574,%r572,%r573; @ %r574 bra $L171; .loc 1 551 6 mov.u64 %r277,0; .loc 1 551 12 mov.u64 %r192,%r277; bra $L60; $L75: .loc 1 558 9 mov.b64 %r243,%r326; .loc 1 558 12 div.rn.f64 %r575,%r243,%r216; .loc 1 558 6 cvt.rzi.s32.f64 %r217,%r575; .loc 1 559 13 cvt.rn.f64.s32 %r576,%r217; .loc 1 559 8 neg.f64 %r577,%r576; fma.rn.f64 %r110,%r577,%r216,%r243; .loc 1 568 6 add.u64 %r196,%r208,1; .loc 1 568 15 mov.u32 %r578,%r217; cvt.u16.u8 %r965,%r578; mov.u16 %r580,%r965; add.u16 %r579,%r580,48; st.u8 [%r208],%r579; .loc 1 569 7 setp.ne.u32 %r581,%r281,1; @ %r581 bra $L76; $L81: .loc 1 571 12 add.f64 %r115,%r110,%r110; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 572 17 setp.gt.f64 %r582,%r115,%r216; @ %r582 bra $L172; .loc 1 572 29 setp.neu.f64 %r583,%r115,%r216; @ %r583 bra $L173; .loc 1 572 51 and.b32 %r584,%r217,1; .loc 1 572 45 setp.ne.u32 %r585,%r584,0; @ %r585 bra $L174; mov.u64 %r329,%r208; mov.u64 %r208,%r196; bra $L65; $L79: .loc 1 576 10 setp.ne.u64 %r586,%r196,%r208; @ %r586 bra $L77; .loc 1 578 5 add.u32 %r246,%r246,1; .loc 1 580 4 mov.u32 %r305,49; bra $L78; $L172: .loc 1 574 3 mov.u32 %r246,%r261; bra $L77; $L174: mov.u32 %r246,%r261; $L66: $L77: mov.u64 %r49,%r196; .loc 1 575 17 add.u64 %r196,%r196,-1; .loc 1 575 12 ld.s8 %r117,[%r196]; .loc 1 575 17 cvt.u16.u32 %r587,%r117; setp.eq.u16 %r588,%r587,57; @ %r588 bra $L79; .loc 1 582 5 add.u16 %r590,%r587,1; cvt.u32.u16 %r592,%r590; cvt.s32.s8 %r305,%r592; $L78: cvt.u32.u32 %r593,%r305; st.u8 [%r196],%r593; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r208; mov.u64 %r208,%r49; bra $L65; $L76: mov.u64 %r276,%r196; add.u32 %r594,%r61,-2; cvt.u64.u32 %r595,%r594; add.u64 %r596,%r208,2; add.u64 %r264,%r595,%r596; $L82: mov.u64 %r282,%r276; .loc 1 586 14 mul.f64 %r118,%r110,0d4024000000000000; .loc 1 586 7 setp.neu.f64 %r597,%r118,0d0000000000000000; @ %r597 bra $L80; .loc 1 854 14 add.u32 %r306,%r261,1; mov.u64 %r329,%r208; mov.u64 %r208,%r276; bra $L65; $L80: .loc 1 558 12 div.rn.f64 %r598,%r118,%r216; .loc 1 558 6 cvt.rzi.s32.f64 %r217,%r598; .loc 1 559 13 cvt.rn.f64.s32 %r599,%r217; .loc 1 559 8 neg.f64 %r600,%r599; fma.rn.f64 %r110,%r600,%r216,%r118; add.u64 %r276,%r276,1; mov.u64 %r196,%r276; .loc 1 568 15 mov.u32 %r601,%r217; cvt.u16.u8 %r965,%r601; mov.u16 %r603,%r965; add.u16 %r602,%r603,48; st.u8 [%r282],%r602; .loc 1 569 7 setp.eq.u64 %r604,%r264,%r276; @ ! %r604 bra $L82; bra $L81; $L74: .loc 1 595 6 setp.eq.u32 %r958,%r251,0; @ %r958 bra $L175; $L265: .loc 1 597 10 setp.gt.s32 %r606,%r332,1; @ %r606 bra $L84; .loc 1 601 45 setp.eq.u32 %r607,%r189,0; @ %r607 bra $L85; add.u32 %r222,%r102,1075; .loc 1 627 10 add.u32 %r187,%r187,%r222; mov.u32 %r186,%r173; .loc 1 592 6 mov.u32 %r185,%r172; add.u32 %r172,%r172,%r222; bra $L86; $L85: .loc 1 601 45 mov.u32 %r608,54; ld.u32 %r609,[%frame+4]; sub.u32 %r221,%r608,%r609; .loc 1 627 10 add.u32 %r187,%r187,%r221; mov.u32 %r186,%r173; .loc 1 592 6 mov.u32 %r185,%r172; .loc 1 627 10 add.u32 %r172,%r172,%r221; bra $L86; $L84: .loc 1 611 6 add.u32 %r219,%r281,-1; .loc 1 612 7 setp.lt.s32 %r610,%r173,%r219; @ %r610 bra $L87; .loc 1 613 9 sub.u32 %r186,%r173,%r219; bra $L88; $L87: .loc 1 616 11 vsub.u32.u32.u32.add %r181,%r219,%r173,%r181; mov.u32 %r173,%r219; .loc 1 618 11 mov.u32 %r186,0; $L88: .loc 1 620 7 setp.lt.s32 %r612,%r281,0; @ %r612 bra $L89; .loc 1 627 10 add.u32 %r187,%r187,%r281; .loc 1 592 6 mov.u32 %r185,%r172; .loc 1 627 10 add.u32 %r172,%r172,%r281; bra $L86; $L89: .loc 1 622 11 sub.u32 %r185,%r172,%r281; $L86: .loc 1 628 13 mov.u32 %r614,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r614; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r615,[%value_in]; } mov.u64 %r192,%r615; bra $L83; $L175: mov.u32 %r186,%r173; .loc 1 592 6 mov.u32 %r185,%r172; .loc 1 594 7 mov.u64 %r192,0; $L83: .loc 1 630 10 set.u32.gt.s32 %r617,%r185,0; neg.s32 %r618,%r617; mov.u32 %r616,%r618; .loc 1 630 20 set.u32.gt.s32 %r620,%r187,0; neg.s32 %r621,%r620; mov.u32 %r619,%r621; .loc 1 630 14 cvt.u16.u8 %r965,%r616; mov.u16 %r623,%r965; cvt.u16.u8 %r965,%r619; mov.u16 %r624,%r965; and.b16 %r622,%r623,%r624; cvt.u32.u16 %r625,%r622; .loc 1 630 6 cvt.u16.u8 %r626,%r625; setp.eq.u16 %r627,%r626,0; @ %r627 bra $L90; .loc 1 632 9 min.s32 %r223,%r185,%r187; .loc 1 633 10 sub.u32 %r172,%r172,%r223; .loc 1 634 10 sub.u32 %r185,%r185,%r223; .loc 1 635 10 sub.u32 %r187,%r187,%r223; $L90: .loc 1 637 6 setp.eq.u32 %r628,%r173,0; @ %r628 bra $L91; .loc 1 639 10 @ %r958 bra $L92; .loc 1 641 7 setp.le.s32 %r630,%r186,0; @ %r630 bra $L93; .loc 1 643 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r186; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r634,[%value_in]; } mov.u64 %r192,%r634; .loc 1 644 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r368; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r638,[%value_in]; } .loc 1 645 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r368; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 646 10 mov.u64 %r190,%r638; $L93: .loc 1 648 17 sub.u32 %r225,%r173,%r186; .loc 1 648 13 setp.eq.u32 %r641,%r173,%r186; @ %r641 bra $L91; .loc 1 649 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r225; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r645,[%value_in]; } mov.u64 %r190,%r645; bra $L91; $L92: .loc 1 652 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r368; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r173; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r649,[%value_in]; } mov.u64 %r190,%r649; $L91: .loc 1 654 7 mov.u32 %r651,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r651; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r652,[%value_in]; } mov.u64 %r277,%r652; .loc 1 655 6 setp.le.s32 %r653,%r181,0; @ %r653 bra $L94; .loc 1 656 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r181; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r657,[%value_in]; } mov.u64 %r277,%r657; .loc 1 661 6 setp.le.s32 %r658,%r332,1; @ %r658 bra $L95; .loc 1 660 13 mov.u32 %r188,0; bra $L96; $L94: .loc 1 661 6 setp.gt.s32 %r659,%r332,1; @ %r659 bra $L176; .loc 1 663 22 and.b64 %r660,%r326,4503599627370495; .loc 1 663 10 setp.ne.u64 %r661,%r660,0; @ %r661 bra $L177; .loc 1 665 7 shr.u64 %r662,%r326,32; cvt.u32.u64 %r663,%r662; .loc 1 665 17 and.b32 %r664,%r663,2146435072; .loc 1 665 4 setp.eq.u32 %r665,%r664,0; @ %r665 bra $L178; $L155: .loc 1 670 7 add.u32 %r172,%r172,1; .loc 1 671 7 add.u32 %r187,%r187,1; .loc 1 672 14 mov.u32 %r188,1; bra $L97; $L176: .loc 1 660 13 mov.u32 %r188,0; bra $L97; $L177: mov.u32 %r188,0; bra $L97; $L178: mov.u32 %r188,%r664; $L97: .loc 1 685 53 setp.eq.u32 %r666,%r181,0; @ %r666 bra $L179; $L96: .loc 1 685 47 ld.u32 %r669,[%r277+20]; add.u32 %r668,%r669,-1; .loc 1 685 24 cvt.s64.s32 %r670,%r668; add.u64 %r671,%r670,4; shl.b64 %r672,%r671,2; add.u64 %r673,%r277,%r672; ld.u32 %r667,[%r673+8]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r667; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r675,[%value_in]; } .loc 1 685 53 mov.u32 %r676,32; sub.u32 %r226,%r676,%r675; bra $L98; $L142: .loc 1 686 7 mov.u32 %r677,32; sub.u32 %r227,%r677,%r288; .loc 1 691 6 setp.le.s32 %r678,%r227,4; @ %r678 bra $L99; .loc 1 693 9 mov.u32 %r679,28; sub.u32 %r228,%r679,%r288; .loc 1 694 10 add.u32 %r172,%r172,%r228; .loc 1 695 10 add.u32 %r185,%r185,%r228; .loc 1 696 10 add.u32 %r187,%r187,%r228; bra $L100; $L99: .loc 1 698 11 setp.eq.u32 %r680,%r227,4; @ %r680 bra $L100; .loc 1 700 9 mov.u32 %r681,60; sub.u32 %r43,%r681,%r288; $L143: .loc 1 701 10 add.u32 %r172,%r172,%r43; .loc 1 702 10 add.u32 %r185,%r185,%r43; .loc 1 703 10 add.u32 %r187,%r187,%r43; $L100: .loc 1 705 6 setp.le.s32 %r682,%r172,0; @ %r682 bra $L101; .loc 1 706 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r172; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r686,[%value_in]; } mov.u64 %r190,%r686; $L101: .loc 1 707 6 setp.le.s32 %r687,%r187,0; @ %r687 bra $L102; .loc 1 708 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r187; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r691,[%value_in]; } mov.u64 %r277,%r691; $L102: .loc 1 720 25 set.u32.gt.s32 %r692,%r332,2; neg.s32 %r309,%r692; .loc 1 709 6 setp.eq.u32 %r695,%r184,0; @ %r695 bra $L103; .loc 1 711 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r698,[%value_in]; } .loc 1 711 10 setp.ge.s32 %r699,%r698,0; @ %r699 bra $L103; .loc 1 713 5 add.u32 %r229,%r261,-1; .loc 1 714 8 mov.u32 %r703,0; mov.u32 %r702,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r702; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r703; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r704,[%value_in]; } mov.u64 %r190,%r704; .loc 1 720 12 set.u32.le.s32 %r706,%r262,0; neg.s32 %r707,%r706; mov.u32 %r705,%r707; .loc 1 720 17 cvt.u16.u8 %r965,%r705; mov.u16 %r709,%r965; cvt.u16.u32 %r710,%r309; and.b16 %r708,%r709,%r710; cvt.u32.u16 %r711,%r708; cvt.u32.u8 %r308,%r711; .loc 1 715 7 @ %r958 bra $L104; .loc 1 716 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r702; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r703; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r717,[%value_in]; } mov.u64 %r192,%r717; .loc 1 720 6 setp.ne.u32 %r718,%r308,0; @ %r718 bra $L180; .loc 1 713 5 mov.u32 %r261,%r229; .loc 1 720 6 mov.u32 %r281,%r262; bra $L106; $L103: .loc 1 720 12 set.u32.le.s32 %r720,%r281,0; neg.s32 %r721,%r720; mov.u32 %r719,%r721; .loc 1 720 17 cvt.u16.u8 %r965,%r719; mov.u16 %r723,%r965; cvt.u16.u32 %r724,%r309; and.b16 %r722,%r723,%r724; cvt.u32.u16 %r725,%r722; .loc 1 720 6 cvt.u16.u8 %r726,%r725; setp.eq.u16 %r727,%r726,0; @ ! %r727 bra $L105; bra $L107; $L180: .loc 1 713 5 mov.u32 %r261,%r229; .loc 1 720 6 mov.u32 %r281,%r262; bra $L105; $L186: .loc 1 713 5 mov.u32 %r261,%r229; .loc 1 720 6 mov.u32 %r281,%r262; $L105: .loc 1 722 10 setp.ne.u32 %r728,%r281,0; @ %r728 bra $L61; .loc 1 722 35 mov.u32 %r731,5; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r731; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r281; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r733,[%value_in]; } mov.u64 %r277,%r733; .loc 1 722 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r736,[%value_in]; } .loc 1 722 20 setp.gt.s32 %r737,%r736,0; @ %r737 bra $L60; bra $L61; $L169: .loc 1 480 6 mov.u64 %r277,0; .loc 1 480 12 mov.u64 %r192,%r277; bra $L61; $L170: .loc 1 551 6 mov.u64 %r277,0; .loc 1 551 12 mov.u64 %r192,%r277; bra $L61; $L171: .loc 1 551 6 mov.u64 %r277,0; .loc 1 551 12 mov.u64 %r192,%r277; $L61: .loc 1 726 6 not.b32 %r239,%r333; .loc 1 727 4 mov.u64 %r329,%r208; bra $L108; $L168: .loc 1 480 6 mov.u64 %r277,0; .loc 1 480 12 mov.u64 %r192,%r277; $L60: .loc 1 730 12 mov.u32 %r738,49; st.u8 [%r208],%r738; .loc 1 731 8 add.u32 %r239,%r261,1; .loc 1 732 7 mov.u64 %r329,%r208; .loc 1 730 9 add.u64 %r208,%r208,1; .loc 1 732 7 bra $L108; $L107: .loc 1 734 6 @ %r958 bra $L109; $L106: .loc 1 736 10 setp.le.s32 %r740,%r185,0; @ %r740 bra $L110; .loc 1 737 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r185; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r744,[%value_in]; } mov.u64 %r192,%r744; $L110: .loc 1 744 10 setp.eq.u32 %r745,%r188,0; @ %r745 bra $L181; .loc 1 746 10 ld.u32 %r748,[%r192+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r748; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r749,[%value_in]; } setp.ne.u64 %r750,%r749,0; @ %r750 bra $L112; cvta.const.u64 %r754,$LC3; mov.u32 %r752,746; cvta.const.u64 %r751,$LC4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r751; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r752; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r749; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r754; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L112: .loc 1 747 4 ld.s32 %r758,[%r192+20]; add.u64 %r759,%r758,2; shl.b64 %r760,%r759,2; add.u64 %r761,%r192,16; add.u64 %r762,%r749,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r762; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r761; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r760; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r763,[%value_in]; } .loc 1 748 10 mov.u32 %r766,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r749; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r766; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r767,[%value_in]; } mov.u64 %r194,%r767; bra $L111; $L181: mov.u64 %r194,%r192; $L111: mov.u64 %r258,%r208; add.u32 %r768,%r281,-1; cvt.u64.u32 %r769,%r768; add.u64 %r252,%r769,%r208; .loc 1 762 30 cvt.u32.u64 %r961,%r326; .loc 1 762 40 and.b32 %r962,%r961,1; $L128: .loc 1 753 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r772,[%value_in]; } .loc 1 753 8 add.u32 %r174,%r772,48; .loc 1 757 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r775,[%value_in]; } .loc 1 758 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r194; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r779,[%value_in]; } .loc 1 759 26 ld.u32 %r780,[%r779+16]; setp.ne.u32 %r781,%r780,0; @ %r781 bra $L113; .loc 1 759 28 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r779; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r784,[%value_in]; } mov.u32 %r233,%r784; .loc 1 760 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r779; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 762 16 or.b32 %r790,%r784,%r332; .loc 1 762 25 or.b32 %r791,%r962,%r790; setp.ne.u32 %r792,%r791,0; @ %r792 bra $L114; .loc 1 764 11 setp.eq.u32 %r793,%r174,57; @ ! %r793 bra $L262; add.u64 %r957,%r258,1; bra $L115; $L262: .loc 1 766 11 setp.le.s32 %r794,%r775,0; @ %r794 bra $L116; .loc 1 767 6 add.u32 %r174,%r772,49; $L116: .loc 1 768 10 add.u64 %r198,%r258,1; .loc 1 768 13 st.u8 [%r258],%r174; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 769 8 mov.u64 %r191,%r192; mov.u64 %r192,%r194; bra $L117; $L114: add.u64 %r198,%r258,1; mov.u64 %r957,%r198; .loc 1 772 13 setp.lt.s32 %r795,%r775,0; @ %r795 bra $L118; .loc 1 772 35 or.b32 %r799,%r775,%r332; .loc 1 774 8 or.b32 %r800,%r962,%r799; setp.ne.u32 %r801,%r800,0; @ %r801 bra $L119; $L118: .loc 1 778 11 setp.le.s32 %r802,%r233,0; @ %r802 bra $L120; .loc 1 780 9 mov.u32 %r805,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r805; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r806,[%value_in]; } mov.u64 %r190,%r806; .loc 1 781 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r809,[%value_in]; } .loc 1 782 21 setp.gt.s32 %r810,%r809,0; @ %r810 bra $L121; .loc 1 782 32 setp.ne.u32 %r811,%r809,0; @ %r811 bra $L120; .loc 1 782 54 and.b32 %r812,%r174,1; .loc 1 782 46 setp.eq.u32 %r813,%r812,0; @ %r813 bra $L120; $L121: .loc 1 783 9 setp.eq.u32 %r814,%r174,57; @ %r814 bra $L115; .loc 1 783 15 add.u32 %r174,%r772,49; $L120: .loc 1 786 13 st.u8 [%r258],%r174; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 787 8 mov.u64 %r191,%r192; mov.u64 %r192,%r194; bra $L117; $L119: .loc 1 789 7 setp.le.s32 %r815,%r233,0; @ %r815 bra $L122; .loc 1 791 11 setp.ne.u32 %r816,%r174,57; @ %r816 bra $L123; $L115: .loc 1 794 7 mov.u64 %r198,%r957; .loc 1 794 10 mov.u32 %r817,57; st.u8 [%r258],%r817; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 795 5 mov.u64 %r191,%r192; mov.u64 %r192,%r194; mov.u32 %r300,57; bra $L124; $L123: .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 797 19 mov.u32 %r818,%r174; cvt.u16.u8 %r965,%r818; mov.u16 %r820,%r965; add.u16 %r819,%r820,1; st.u8 [%r258],%r819; .loc 1 798 8 mov.u64 %r191,%r192; mov.u64 %r192,%r194; bra $L117; $L122: .loc 1 800 9 st.u8 [%r258],%r174; .loc 1 801 7 setp.eq.u64 %r821,%r252,%r258; @ %r821 bra $L125; .loc 1 803 8 mov.u32 %r825,0; mov.u32 %r824,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r826,[%value_in]; } mov.u64 %r190,%r826; .loc 1 804 7 setp.ne.u64 %r827,%r192,%r194; @ %r827 bra $L126; .loc 1 805 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r832,[%value_in]; } mov.u64 %r192,%r832; mov.u64 %r194,%r192; bra $L127; $L126: .loc 1 808 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r837,[%value_in]; } mov.u64 %r192,%r837; .loc 1 809 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r194; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r842,[%value_in]; } mov.u64 %r194,%r842; $L127: .loc 1 753 8 mov.u64 %r258,%r957; bra $L128; $L109: .loc 1 854 14 add.u32 %r306,%r261,1; $L141: .loc 1 720 6 mov.u64 %r249,0; $L133: .loc 1 816 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r845,[%value_in]; } .loc 1 816 13 add.u32 %r174,%r845,48; .loc 1 816 7 add.u64 %r846,%r208,%r249; st.u8 [%r846],%r174; .loc 1 817 5 add.u64 %r249,%r249,1; cvt.u32.u64 %r847,%r249; setp.lt.s32 %r848,%r847,%r281; @ %r848 bra $L129; .loc 1 816 4 setp.le.s32 %r850,%r281,0; @ %r850 bra $L130; add.u32 %r851,%r281,-1; cvt.u64.u32 %r852,%r851; add.u64 %r849,%r852,1; bra $L131; $L130: mov.u64 %r849,1; $L131: add.u64 %r198,%r208,%r849; .loc 1 594 13 mov.u64 %r191,0; bra $L132; $L129: .loc 1 819 6 mov.u32 %r856,0; mov.u32 %r855,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r855; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r856; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r857,[%value_in]; } mov.u64 %r190,%r857; .loc 1 816 7 bra $L133; $L125: .loc 1 854 14 add.u32 %r306,%r261,1; mov.u64 %r191,%r192; mov.u64 %r192,%r194; $L132: .loc 1 824 7 mov.u32 %r860,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r860; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r861,[%value_in]; } mov.u64 %r190,%r861; .loc 1 825 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r864,[%value_in]; } .loc 1 826 6 setp.gt.s32 %r865,%r864,0; @ %r865 bra $L134; .loc 1 826 15 setp.ne.u32 %r866,%r864,0; @ %r866 bra $L239; .loc 1 826 36 and.b32 %r867,%r174,1; .loc 1 826 28 setp.eq.u32 %r868,%r867,0; @ %r868 bra $L239; .loc 1 840 14 ld.s8 %r300,[%r198+-1]; bra $L124; $L138: .loc 1 830 5 add.u64 %r263,%r263,-1; setp.eq.u64 %r869,%r956,%r208; @ %r869 bra $L136; .loc 1 829 14 ld.s8 %r300,[%r263]; mov.u64 %r198,%r956; add.u64 %r956,%r956,-1; bra $L137; $L136: .loc 1 833 11 mov.u32 %r870,49; st.u8 [%r208],%r870; .loc 1 854 14 add.u32 %r306,%r306,1; .loc 1 834 6 bra $L117; $L134: .loc 1 840 14 ld.s8 %r300,[%r198+-1]; $L124: add.u64 %r956,%r198,-1; mov.u64 %r263,%r956; $L137: .loc 1 829 19 cvt.u16.u32 %r871,%r300; setp.eq.u16 %r872,%r871,57; @ %r872 bra $L138; .loc 1 836 7 add.u16 %r874,%r871,1; st.u8 [%r956],%r874; bra $L117; $L239: mov.u64 %r286,%r198; .loc 1 840 19 add.u64 %r198,%r198,-1; ld.u8 %r877,[%r198]; cvt.s16.s8 %r876,%r877; setp.eq.u16 %r878,%r876,48; @ %r878 bra $L239; .loc 1 841 8 mov.u64 %r198,%r286; $L117: .loc 1 844 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 845 6 setp.eq.u64 %r881,%r192,0; @ %r881 bra $L182; .loc 1 847 11 set.u32.ne.u64 %r883,%r191,0; neg.s32 %r884,%r883; mov.u32 %r882,%r884; .loc 1 847 22 set.u32.ne.u64 %r886,%r191,%r192; neg.s32 %r887,%r886; mov.u32 %r885,%r887; .loc 1 847 15 cvt.u16.u8 %r965,%r882; mov.u16 %r889,%r965; cvt.u16.u8 %r965,%r885; mov.u16 %r890,%r965; and.b16 %r888,%r889,%r890; cvt.u32.u16 %r891,%r888; .loc 1 847 10 cvt.u16.u8 %r892,%r891; setp.eq.u16 %r893,%r892,0; @ %r893 bra $L183; .loc 1 848 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r191; call _Bfree,(%out_arg1,%out_arg2); } mov.u64 %r329,%r208; mov.u64 %r208,%r198; bra $L139; $L183: mov.u64 %r329,%r208; mov.u64 %r208,%r198; $L139: .loc 1 849 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; call _Bfree,(%out_arg1,%out_arg2); } bra $L65; $L173: mov.u64 %r329,%r208; mov.u64 %r208,%r196; bra $L65; $L182: .loc 1 851 1 mov.u64 %r329,%r208; mov.u64 %r208,%r198; $L65: .loc 1 852 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 853 6 mov.u32 %r900,0; st.u8 [%r208],%r900; .loc 1 854 10 st.u32 [%r334],%r306; .loc 1 855 6 setp.eq.u64 %r901,%r336,0; @ %r901 bra $L18; .loc 1 856 10 st.u64 [%r336],%r208; bra $L18; $L156: .loc 1 284 14 cvta.const.u64 %r329,$LC2; bra $L18; $L23: .loc 1 266 10 setp.ne.u64 %r903,%r336,0; @ %r903 bra $L184; .loc 1 263 52 cvta.const.u64 %r329,$LC0; bra $L18; $L259: .loc 1 266 10 setp.ne.u64 %r904,%r336,0; @ %r904 bra $L185; .loc 1 263 52 cvta.const.u64 %r329,$LC1; bra $L18; $L108: .loc 1 844 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 854 14 add.u32 %r306,%r239,1; .loc 1 845 6 setp.ne.u64 %r907,%r192,0; @ %r907 bra $L139; bra $L65; $L104: .loc 1 720 6 setp.ne.u32 %r908,%r308,0; @ %r908 bra $L186; mov.u32 %r306,%r261; mov.u32 %r281,%r262; bra $L141; $L179: .loc 1 685 53 mov.u32 %r226,1; $L98: .loc 1 685 58 add.u32 %r909,%r187,%r226; .loc 1 685 10 and.b32 %r288,%r909,31; .loc 1 685 6 setp.ne.u32 %r910,%r288,0; @ %r910 bra $L142; mov.u32 %r43,28; bra $L143; $L57: .loc 1 476 20 cvt.rn.f64.s32 %r911,%r178; .loc 1 476 26 fma.rn.f64 %r290,%r279,%r911,0d401c000000000000; .loc 1 476 13 mov.b64 %r328,%r290; .loc 1 477 19 shr.u64 %r913,%r328,32; cvt.u32.u64 %r914,%r913; add.u32 %r915,%r914,-54525952; cvt.u64.u32 %r916,%r915; shl.b64 %r917,%r916,32; and.b64 %r918,%r328,4294967295; or.b64 %r328,%r918,%r917; bra $L144; $L113: .loc 1 760 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r779; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 759 26 mov.u32 %r233,1; bra $L114; $L159: .loc 1 389 13 mov.u32 %r67,1; .loc 1 388 10 mov.u32 %r332,0; .loc 1 395 13 mov.u32 %r251,%r67; .loc 1 396 8 mov.u32 %r281,-1; .loc 1 402 15 mov.u32 %r333,%r332; bra $L39; $L161: .loc 1 409 10 mov.u32 %r333,1; mov.u32 %r281,%r333; $L39: .loc 1 423 32 mov.u32 %r922,0; st.u32 [%r330+104],%r922; mov.u32 %r262,%r281; mov.u32 %r58,%r922; bra $L42; $L264: mov.u32 %r923,0; st.u32 [%r330+104],%r923; .loc 1 426 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r923; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r926,[%value_in]; } mov.u64 %r208,%r926; setp.eq.u64 %r927,%r208,0; @ ! %r927 bra $L263; bra $L145; $L160: .loc 1 389 13 mov.u32 %r67,1; $L40: .loc 1 397 3 setp.eq.u32 %r928,%r332,3; @ %r928 bra $L187; setp.gt.s32 %r929,%r332,3; @ %r929 bra $L148; setp.eq.u32 %r930,%r332,2; @ %r930 bra $L188; bra $L264; $L148: setp.eq.u32 %r931,%r332,4; @ %r931 bra $L189; mov.u32 %r251,1; bra $L147; $L260: .loc 1 365 6 setp.ge.s32 %r932,%r187,0; @ %r932 bra $L190; .loc 1 362 15 mov.u32 %r184,0; bra $L152; $L95: .loc 1 663 22 and.b64 %r933,%r326,4503599627370495; .loc 1 663 10 setp.eq.u64 %r934,%r933,0; @ %r934 bra $L153; .loc 1 660 13 mov.u32 %r188,0; bra $L96; $L263: .loc 1 426 25 st.u64 [%r330+96],%r208; .loc 1 545 10 ld.u32 %r102,[%frame]; .loc 1 545 15 set.u32.le.s32 %r936,%r261,14; neg.s32 %r937,%r936; mov.u32 %r935,%r937; .loc 1 545 6 not.b32 %r939,%r102; shr.u32 %r940,%r939,31; mov.u32 %r941,%r940; .loc 1 545 15 cvt.u16.u8 %r965,%r935; mov.u16 %r943,%r965; cvt.u16.u8 %r965,%r941; mov.u16 %r944,%r965; and.b16 %r942,%r943,%r944; cvt.u32.u16 %r945,%r942; cvt.u16.u8 %r946,%r945; setp.ne.u16 %r947,%r946,0; @ %r947 bra $L154; .loc 1 396 8 mov.u32 %r281,-1; .loc 1 396 16 mov.u32 %r262,%r281; .loc 1 402 15 mov.u32 %r333,%r923; setp.eq.u32 %r958,1,0; bra $L265; $L153: .loc 1 665 7 shr.u64 %r948,%r326,32; cvt.u32.u64 %r949,%r948; .loc 1 665 17 and.b32 %r950,%r949,2146435072; .loc 1 665 4 setp.ne.u32 %r951,%r950,0; @ %r951 bra $L155; .loc 1 660 13 mov.u32 %r188,%r950; bra $L96; $L154: .loc 1 548 10 cvta.const.u64 %r952,__mprec_tens; cvt.s64.s32 %r953,%r261; shl.b64 %r954,%r953,3; add.u64 %r955,%r952,%r954; ld.f64 %r216,[%r955]; .loc 1 396 8 mov.u32 %r281,-1; .loc 1 429 17 mov.u32 %r61,%r281; bra $L75; $L18: .loc 1 858 1 mov.u64 %value,%r329; st.param.u64 [%value_out],%value; ret; } /264 0 0 0 644 2063 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __dtoa .visible .func (.param .u64 %value_out) __dtoa (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../newlib/libc/stdlib/dtoastub.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DEF: __dtoa .visible .func (.param .u64 %value_out) __dtoa (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r37; .reg .u64 %r38; mov.f64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; mov.u64 %r28,%ar4; mov.u64 %r29,%ar5; .loc 1 18 10 ld.global.u64 %r37,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r28; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r29; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r38,[%value_in]; } .loc 1 19 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-dummy.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-ecvtbuf.o/0 0 0 644 32748 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: print_e .func print_e (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5); .file 1 "../../../../../newlib/libc/stdlib/ecvtbuf.c" // BEGIN GLOBAL FUNCTION DECL: fcvtbuf .visible .func (.param .u64 %value_out) fcvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: ecvtbuf .visible .func (.param .u64 %value_out) ecvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _gcvt .visible .func (.param .u64 %value_out) _gcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5); // BEGIN GLOBAL FUNCTION DECL: _dcvt .visible .func (.param .u64 %value_out) _dcvt (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u32 %in_ar6); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _mprec_log10 .extern .func (.param .f64 %value_out) _mprec_log10 (.param .u32 %in_ar0); // BEGIN FUNCTION DEF: print_e .func print_e (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r50; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .f64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r66; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u64 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .u16 %r95; .reg .pred %r96; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r104; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u32 %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u32 %r129; .reg .pred %r130; .reg .u64 %r131; .reg .u16 %r132; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; mov.f64 %r60,%ar2; mov.u32 %r61,%ar3; mov.u32 %r62,%ar4; mov.u32 %r63,%ar5; .loc 1 143 7 add.u64 %r71,%frame,12; add.u64 %r72,%frame,8; add.u32 %r73,%r61,1; mov.u32 %r66,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r66; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r73; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r72; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r71; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r74,[%value_in]; } .loc 1 145 13 ld.u32 %r23,[%frame+8]; .loc 1 145 6 setp.ne.u32 %r75,%r23,9999; @ %r75 bra $L2; .loc 1 147 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r74; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r78,[%value_in]; } bra $L1; $L2: .loc 1 151 14 add.u64 %r43,%r74,1; .loc 1 151 7 add.u64 %r52,%r59,1; .loc 1 151 10 ld.u8 %r79,[%r74]; st.u8 [%r59],%r79; .loc 1 152 6 setp.gt.s32 %r80,%r61,0; @ %r80 bra $L4; bra $L5; $L6: .loc 1 161 18 add.u64 %r43,%r43,1; mov.u64 %r57,%r53; add.u64 %r52,%r53,1; mov.u64 %r53,%r52; .loc 1 161 14 cvt.u32.u32 %r81,%r25; st.u8 [%r57],%r81; .loc 1 162 13 add.u32 %r61,%r61,-1; .loc 1 155 10 ld.s8 %r25,[%r43]; .loc 1 155 13 cvt.u16.u32 %r83,%r25; set.u32.ne.u16 %r84,%r83,0; neg.s32 %r85,%r84; mov.u32 %r82,%r85; set.u32.gt.s32 %r87,%r61,0; neg.s32 %r88,%r87; mov.u32 %r86,%r88; cvt.u16.u8 %r132,%r82; mov.u16 %r90,%r132; cvt.u16.u8 %r132,%r86; mov.u16 %r91,%r132; and.b16 %r89,%r90,%r91; cvt.u32.u16 %r92,%r89; cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L6; mov.u32 %r63,0; $L5: .loc 1 168 6 cvt.u16.u32 %r95,%r62; setp.eq.u16 %r96,%r95,103; @ %r96 bra $L16; .loc 1 170 11 setp.eq.u16 %r98,%r95,71; @ ! %r98 bra $L21; bra $L17; $L11: .loc 1 177 10 add.u64 %r26,%r52,1; .loc 1 176 8 setp.eq.u32 %r99,%r63,0; @ %r99 bra $L18; .loc 1 177 13 mov.u32 %r100,46; st.u8 [%r52],%r100; bra $L9; $L18: mov.u64 %r26,%r52; $L9: mov.u64 %r45,%r26; cvt.s64.s32 %r50,%r61; add.u64 %r131,%r45,%r50; .loc 1 180 11 mov.u32 %r101,48; $L10: st.u8 [%r45],%r101; .loc 1 174 21 add.u64 %r45,%r45,1; setp.ne.u64 %r102,%r131,%r45; @ %r102 bra $L10; .loc 1 180 8 mov.u64 %r52,%r131; bra $L7; $L21: .loc 1 174 21 setp.gt.s32 %r103,%r61,0; @ %r103 bra $L11; bra $L7; $L16: .loc 1 169 10 mov.u32 %r62,101; bra $L7; $L17: .loc 1 171 10 mov.u32 %r62,69; $L7: .loc 1 187 10 cvt.u32.u32 %r104,%r62; st.u8 [%r52],%r104; .loc 1 188 8 add.u32 %r42,%r23,-1; .loc 1 191 11 add.u64 %r41,%r52,2; .loc 1 189 6 setp.ge.s32 %r105,%r42,0; @ %r105 bra $L12; .loc 1 191 14 mov.u32 %r106,45; st.u8 [%r52+1],%r106; .loc 1 192 15 mov.u32 %r107,1; sub.u32 %r42,%r107,%r23; bra $L13; $L12: .loc 1 196 14 mov.u32 %r108,43; st.u8 [%r52+1],%r108; $L13: .loc 1 198 6 setp.le.s32 %r109,%r42,99; @ %r109 bra $L14; .loc 1 200 11 div.s32 %r46,%r42,100; .loc 1 201 11 add.u64 %r41,%r52,3; .loc 1 201 20 mov.u32 %r110,%r46; cvt.u16.u8 %r132,%r110; mov.u16 %r112,%r132; add.u16 %r111,%r112,48; st.u8 [%r52+2],%r111; .loc 1 202 13 mad.lo.u32 %r42,%r46,-100,%r42; $L14: .loc 1 204 7 div.s32 %r47,%r42,10; .loc 1 205 16 mov.u32 %r114,%r47; cvt.u16.u8 %r132,%r114; mov.u16 %r116,%r132; add.u16 %r115,%r116,48; st.u8 [%r41],%r115; .loc 1 206 16 shl.b32 %r118,%r47,2; add.u32 %r119,%r118,%r47; add.u32 %r120,%r119,%r119; .loc 1 206 9 sub.u32 %r122,%r42,%r120; .loc 1 207 18 mov.u32 %r123,%r122; cvt.u16.u8 %r132,%r123; mov.u16 %r125,%r132; add.u16 %r124,%r125,48; st.u8 [%r41+1],%r124; .loc 1 209 10 mov.u32 %r126,0; st.u8 [%r41+2],%r126; bra $L1; $L15: .loc 1 158 9 mov.u32 %r127,46; st.u8 [%r59+1],%r127; .loc 1 161 16 ld.s8 %r25,[%r74+1]; add.u64 %r53,%r59,2; bra $L6; $L4: .loc 1 155 13 ld.u8 %r129,[%r74+1]; cvt.s16.s8 %r128,%r129; setp.ne.u16 %r130,%r128,0; @ %r130 bra $L15; .loc 1 153 9 mov.u32 %r63,1; bra $L5; $L1: .loc 1 210 1 ret; } // BEGIN GLOBAL FUNCTION DEF: fcvtbuf .visible .func (.param .u64 %value_out) fcvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r34; .reg .u64 %r38; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r68; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; mov.u64 %r53,%ar2; mov.u64 %r54,%ar3; mov.u64 %r55,%ar4; .loc 1 225 18 ld.global.u64 %r31,[_impure_ptr]; .loc 1 231 6 setp.ne.u64 %r56,%r55,0; @ %r56 bra $L23; .loc 1 235 53 ld.u64 %r55,[%r31+136]; .loc 1 233 36 add.u32 %r57,%r52,35; .loc 1 233 10 ld.u32 %r58,[%r31+128]; setp.gt.s32 %r59,%r58,%r57; @ %r59 bra $L23; .loc 1 236 20 add.u32 %r24,%r52,36; .loc 1 235 29 cvt.s64.s32 %r63,%r24; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r63; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r64,[%value_in]; } mov.u64 %r55,%r64; .loc 1 235 7 setp.eq.u64 %r65,%r55,0; @ %r65 bra $L30; .loc 1 238 19 st.u32 [%r31+128],%r24; .loc 1 239 19 st.u64 [%r31+136],%r55; $L23: .loc 1 247 7 mov.u32 %r68,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r68; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r52; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r53; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r54; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r73,[%value_in]; } .loc 1 251 8 ld.u32 %r74,[%r53]; neg.s32 %r34,%r74; .loc 1 252 12 ld.u64 %r75,[%frame]; setp.ge.u64 %r76,%r73,%r75; @ %r76 bra $L31; mov.u64 %r45,%r55; mov.u64 %r46,%r73; $L27: mov.u64 %r32,%r45; add.u64 %r45,%r45,1; mov.u64 %r38,%r45; .loc 1 254 19 ld.u8 %r77,[%r46]; st.u8 [%r32],%r77; .loc 1 255 11 add.u32 %r34,%r34,1; .loc 1 252 12 add.u64 %r46,%r46,1; ld.u64 %r78,[%frame]; setp.gt.u64 %r79,%r78,%r46; @ %r79 bra $L27; bra $L26; $L31: mov.u64 %r38,%r55; $L26: .loc 1 258 15 setp.le.s32 %r80,%r52,%r34; @ %r80 bra $L28; mov.u64 %r29,%r38; add.u32 %r81,%r52,-1; sub.u32 %r82,%r81,%r34; cvt.u64.u32 %r43,%r82; add.u64 %r83,%r38,1; add.u64 %r44,%r83,%r43; .loc 1 260 19 mov.u32 %r84,48; $L29: st.u8 [%r29],%r84; .loc 1 258 15 add.u64 %r29,%r29,1; setp.ne.u64 %r85,%r29,%r44; @ %r85 bra $L29; .loc 1 260 16 add.u64 %r86,%r43,1; add.u64 %r38,%r38,%r86; $L28: .loc 1 263 15 mov.u32 %r87,0; st.u8 [%r38],%r87; .loc 1 264 10 mov.u64 %r50,%r55; bra $L22; $L30: .loc 1 237 13 mov.u64 %r50,%r64; $L22: .loc 1 265 1 mov.u64 %value,%r50; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ecvtbuf .visible .func (.param .u64 %value_out) ecvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u64 %r34; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r60; .reg .u64 %r61; .reg .pred %r62; .reg .u32 %r65; .reg .u64 %r70; .reg .u64 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; mov.f64 %r49,%ar0; mov.u32 %r50,%ar1; mov.u64 %r51,%ar2; mov.u64 %r52,%ar3; mov.u64 %r53,%ar4; .loc 1 274 18 ld.global.u64 %r29,[_impure_ptr]; .loc 1 280 6 setp.ne.u64 %r54,%r53,0; @ %r54 bra $L35; .loc 1 284 53 ld.u64 %r53,[%r29+136]; .loc 1 282 10 ld.u32 %r55,[%r29+128]; setp.gt.s32 %r56,%r55,%r50; @ %r56 bra $L35; .loc 1 285 20 add.u32 %r23,%r50,1; .loc 1 284 29 cvt.s64.s32 %r60,%r23; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r60; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r61,[%value_in]; } mov.u64 %r53,%r61; .loc 1 284 7 setp.eq.u64 %r62,%r53,0; @ %r62 bra $L42; .loc 1 287 19 st.u32 [%r29+128],%r23; .loc 1 288 19 st.u64 [%r29+136],%r53; $L35: .loc 1 296 7 mov.u32 %r65,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r49; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r65; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r50; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r51; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r52; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r70,[%value_in]; } .loc 1 300 12 ld.u64 %r71,[%frame]; setp.ge.u64 %r72,%r70,%r71; @ %r72 bra $L43; mov.u64 %r43,%r53; mov.u64 %r44,%r70; .loc 1 278 7 mov.u32 %r32,0; $L39: mov.u64 %r30,%r43; add.u64 %r43,%r43,1; mov.u64 %r34,%r43; .loc 1 302 19 ld.u8 %r73,[%r44]; st.u8 [%r30],%r73; .loc 1 303 11 add.u32 %r32,%r32,1; .loc 1 300 12 add.u64 %r44,%r44,1; ld.u64 %r74,[%frame]; setp.gt.u64 %r75,%r74,%r44; @ %r75 bra $L39; bra $L38; $L43: mov.u64 %r34,%r53; .loc 1 278 7 mov.u32 %r32,0; $L38: .loc 1 306 15 setp.le.s32 %r76,%r50,%r32; @ %r76 bra $L40; mov.u64 %r27,%r34; add.u32 %r77,%r50,-1; sub.u32 %r78,%r77,%r32; cvt.u64.u32 %r41,%r78; add.u64 %r79,%r34,1; add.u64 %r42,%r79,%r41; .loc 1 308 19 mov.u32 %r80,48; $L41: st.u8 [%r27],%r80; .loc 1 306 15 add.u64 %r27,%r27,1; setp.ne.u64 %r81,%r27,%r42; @ %r81 bra $L41; .loc 1 308 16 add.u64 %r82,%r41,1; add.u64 %r34,%r34,%r82; $L40: .loc 1 311 15 mov.u32 %r83,0; st.u8 [%r34],%r83; .loc 1 312 10 mov.u64 %r48,%r53; bra $L34; $L42: .loc 1 286 13 mov.u64 %r48,%r61; $L34: .loc 1 313 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _gcvt .visible .func (.param .u64 %value_out) _gcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r45; .reg .u32 %r47; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r69; .reg .u64 %r71; .reg .u64 %r75; .reg .f64 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r92; .reg .f64 %r94; .reg .pred %r95; .reg .u32 %r98; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u16 %r120; .reg .u16 %r121; .reg .u16 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .u16 %r134; .reg .u16 %r135; .reg .u32 %r136; .reg .u16 %r137; .reg .pred %r138; .reg .pred %r139; .reg .u16 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .pred %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u64 %r149; .reg .u32 %r150; .reg .pred %r151; .reg .u32 %r152; .reg .u64 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u16 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u16 %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .u32 %r165; .reg .u16 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u16 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .u32 %r179; .reg .u16 %r180; .reg .pred %r181; .reg .pred %r182; .reg .pred %r183; .reg .u64 %r184; .reg .u32 %r185; .reg .u64 %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u64 %r189; .reg .u32 %r190; .reg .u16 %r192; mov.u64 %r75,%ar0; mov.f64 %r76,%ar1; mov.u32 %r77,%ar2; mov.u64 %r78,%ar3; mov.u32 %r79,%ar4; mov.u32 %r80,%ar5; .loc 1 327 6 setp.lt.f64 %r81,%r76,0d0000000000000000; @ ! %r81 bra $L47; .loc 1 329 15 neg.f64 %r76,%r76; $L47: .loc 1 332 6 setp.neu.f64 %r82,%r76,0d0000000000000000; @ %r82 bra $L49; .loc 1 334 14 mov.u32 %r83,48; st.u8 [%r78],%r83; .loc 1 335 12 mov.u32 %r84,0; st.u8 [%r78+1],%r84; bra $L50; $L49: .loc 1 343 6 setp.le.f64 %r85,%r76,0d3f1a36e2eb1c432d; @ ! %r85 bra $L85; $L53: .loc 1 352 7 add.u32 %r92,%r77,-1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r78; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r76; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r92; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r79; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r80; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } bra $L50; $L85: .loc 1 343 39 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r77; call (%value_in),_mprec_log10,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 343 25 setp.le.f64 %r95,%r94,%r76; @ %r95 bra $L53; .loc 1 364 11 add.u64 %r103,%frame,8; add.u64 %r104,%frame,12; mov.u32 %r98,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r76; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r98; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r77; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r104; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r103; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r105,[%value_in]; } mov.u64 %r39,%r105; .loc 1 366 17 ld.u32 %r26,[%frame+12]; .loc 1 366 10 setp.eq.u32 %r106,%r26,9999; @ %r106 bra $L54; .loc 1 371 14 ld.s8 %r27,[%r39]; .loc 1 371 17 setp.eq.u32 %r107,%r27,0; @ %r107 bra $L68; mov.u64 %r71,%r78; bra $L56; $L54: .loc 1 368 4 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r110,[%value_in]; } bra $L50; $L57: .loc 1 373 15 add.u64 %r39,%r39,1; add.u64 %r71,%r71,1; mov.u64 %r41,%r71; .loc 1 373 11 cvt.u32.u32 %r111,%r27; st.u8 [%r36],%r111; .loc 1 374 9 add.u32 %r26,%r26,-1; st.u32 [%frame+12],%r26; .loc 1 375 10 add.u32 %r77,%r77,-1; .loc 1 371 14 ld.s8 %r27,[%r39]; .loc 1 371 17 setp.eq.u32 %r112,%r27,0; @ %r112 bra $L55; $L56: mov.u64 %r36,%r71; setp.gt.s32 %r113,%r26,0; @ %r113 bra $L57; bra $L58; $L68: mov.u64 %r41,%r78; $L55: .loc 1 378 24 set.u32.gt.s32 %r115,%r77,0; neg.s32 %r116,%r115; mov.u32 %r114,%r116; set.u32.gt.s32 %r118,%r26,0; neg.s32 %r119,%r118; mov.u32 %r117,%r119; cvt.u16.u8 %r192,%r114; mov.u16 %r121,%r192; cvt.u16.u8 %r192,%r117; mov.u16 %r122,%r192; and.b16 %r120,%r121,%r122; cvt.u32.u16 %r123,%r120; cvt.u16.u8 %r124,%r123; setp.eq.u16 %r125,%r124,0; @ %r125 bra $L69; add.u32 %r67,%r26,-1; mov.u64 %r69,%r41; .loc 1 380 11 mov.u32 %r126,48; $L59: mov.u64 %r45,%r69; add.u64 %r36,%r69,1; mov.u64 %r69,%r36; st.u8 [%r45],%r126; .loc 1 381 9 mov.u32 %r29,%r67; .loc 1 382 10 add.u32 %r77,%r77,-1; .loc 1 378 24 add.u32 %r67,%r67,-1; set.u32.gt.s32 %r128,%r77,0; neg.s32 %r129,%r128; mov.u32 %r127,%r129; set.u32.gt.s32 %r131,%r29,0; neg.s32 %r132,%r131; mov.u32 %r130,%r132; cvt.u16.u8 %r192,%r127; mov.u16 %r134,%r192; cvt.u16.u8 %r192,%r130; mov.u16 %r135,%r192; and.b16 %r133,%r134,%r135; cvt.u32.u16 %r136,%r133; cvt.u16.u8 %r137,%r136; setp.ne.u16 %r138,%r137,0; @ %r138 bra $L59; st.u32 [%frame+12],%r29; bra $L58; $L69: mov.u64 %r36,%r41; $L58: .loc 1 385 10 setp.ne.u32 %r139,%r80,0; @ %r139 bra $L60; .loc 1 385 15 ld.u8 %r141,[%r39]; cvt.s16.s8 %r140,%r141; setp.eq.u16 %r142,%r140,0; @ %r142 bra $L61; $L60: .loc 1 387 7 setp.ne.u64 %r143,%r78,%r36; @ %r143 bra $L62; .loc 1 388 13 mov.u32 %r144,48; st.u8 [%r78],%r144; .loc 1 388 10 add.u64 %r36,%r78,1; $L62: .loc 1 389 8 add.u64 %r37,%r36,1; .loc 1 389 11 mov.u32 %r145,46; st.u8 [%r36],%r145; .loc 1 392 17 ld.u32 %r47,[%frame+12]; setp.ge.s32 %r146,%r47,0; @ %r146 bra $L63; mov.u64 %r62,%r37; mov.u32 %r148,1; sub.u32 %r147,%r148,%r47; cvt.u64.u32 %r149,%r147; add.u64 %r66,%r36,%r149; .loc 1 394 15 mov.u32 %r150,48; $L64: st.u8 [%r62],%r150; .loc 1 392 17 add.u64 %r62,%r62,1; setp.ne.u64 %r151,%r62,%r66; @ %r151 bra $L64; .loc 1 394 12 neg.s32 %r152,%r47; cvt.u64.u32 %r153,%r152; add.u64 %r37,%r37,%r153; mov.u32 %r154,0; st.u32 [%frame+12],%r154; $L63: .loc 1 399 11 ld.s8 %r34,[%r39]; .loc 1 399 14 cvt.u16.u32 %r156,%r34; set.u32.ne.u16 %r157,%r156,0; neg.s32 %r158,%r157; mov.u32 %r155,%r158; set.u32.gt.s32 %r160,%r77,0; neg.s32 %r161,%r160; mov.u32 %r159,%r161; cvt.u16.u8 %r192,%r155; mov.u16 %r163,%r192; cvt.u16.u8 %r192,%r159; mov.u16 %r164,%r192; and.b16 %r162,%r163,%r164; cvt.u32.u16 %r165,%r162; cvt.u16.u8 %r166,%r165; setp.eq.u16 %r167,%r166,0; @ %r167 bra $L70; mov.u64 %r60,%r37; $L66: .loc 1 401 19 add.u64 %r39,%r39,1; mov.u64 %r38,%r60; add.u64 %r60,%r60,1; mov.u64 %r36,%r60; .loc 1 401 15 cvt.u32.u32 %r168,%r34; st.u8 [%r38],%r168; .loc 1 402 14 add.u32 %r77,%r77,-1; .loc 1 399 11 ld.s8 %r34,[%r39]; .loc 1 399 14 cvt.u16.u32 %r170,%r34; set.u32.ne.u16 %r171,%r170,0; neg.s32 %r172,%r171; mov.u32 %r169,%r172; set.u32.gt.s32 %r174,%r77,0; neg.s32 %r175,%r174; mov.u32 %r173,%r175; cvt.u16.u8 %r192,%r169; mov.u16 %r177,%r192; cvt.u16.u8 %r192,%r173; mov.u16 %r178,%r192; and.b16 %r176,%r177,%r178; cvt.u32.u16 %r179,%r176; cvt.u16.u8 %r180,%r179; setp.ne.u16 %r181,%r180,0; @ %r181 bra $L66; bra $L65; $L70: mov.u64 %r36,%r37; $L65: .loc 1 405 7 setp.eq.u32 %r182,%r80,0; @ %r182 bra $L61; .loc 1 407 22 setp.le.s32 %r183,%r77,0; @ %r183 bra $L61; mov.u64 %r30,%r36; add.u64 %r184,%r36,1; add.u32 %r185,%r77,-1; cvt.u64.u32 %r186,%r185; add.u64 %r59,%r184,%r186; .loc 1 409 12 mov.u32 %r187,48; $L67: st.u8 [%r30],%r187; .loc 1 407 22 add.u64 %r30,%r30,1; setp.ne.u64 %r188,%r30,%r59; @ %r188 bra $L67; .loc 1 409 9 cvt.u64.u32 %r189,%r77; add.u64 %r36,%r36,%r189; $L61: .loc 1 414 14 mov.u32 %r190,0; st.u8 [%r36],%r190; $L50: .loc 1 418 1 mov.u64 %value,%r78; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _dcvt .visible .func (.param .u64 %value_out) _dcvt (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u32 %in_ar6) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u32 %ar6; ld.param.u32 %ar6,[%in_ar6]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r29; .reg .u64 %r35; .reg .u32 %r37; .reg .u32 %r40; .reg .u32 %r41; .reg .u64 %r43; .reg .u64 %r48; .reg .u32 %r51; .reg .u64 %r52; .reg .u32 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r63; .reg .u64 %r67; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .f64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .u32 %r81; .reg .u16 %r83; .reg .u16 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .pred %r92; .reg .u64 %r93; .reg .pred %r94; .reg .pred %r95; .reg .u32 %r98; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .u64 %r120; .reg .u32 %r121; .reg .pred %r122; .reg .u16 %r123; .reg .u32 %r124; .reg .pred %r125; .reg .pred %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u16 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u32 %r137; .reg .u16 %r138; .reg .pred %r139; .reg .u32 %r140; .reg .u32 %r142; .reg .u32 %r143; .reg .u16 %r144; .reg .u16 %r145; .reg .u16 %r146; .reg .u32 %r147; .reg .u16 %r148; .reg .pred %r149; .reg .u32 %r150; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u16 %r157; .reg .u16 %r158; .reg .u16 %r159; .reg .u32 %r160; .reg .u16 %r161; .reg .pred %r162; .reg .pred %r163; .reg .pred %r164; .reg .u32 %r165; .reg .pred %r166; .reg .pred %r167; .reg .pred %r168; .reg .u32 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .pred %r173; .reg .u64 %r174; .reg .u32 %r175; .reg .pred %r176; .reg .u64 %r183; .reg .u16 %r191; mov.u64 %r75,%ar0; mov.u64 %r76,%ar1; mov.f64 %r77,%ar2; mov.u32 %r78,%ar3; mov.u32 %r80,%ar5; mov.u32 %r81,%ar6; .loc 1 429 3 cvt.u16.u32 %r84,%r80; add.u16 %r83,%r84,-69; cvt.u32.u16 %r85,%r83; cvt.u32.u8 %r51,%r85; cvt.u16.u32 %r86,%r51; setp.gt.u16 %r87,%r86,34; @ %r87 bra $L87; mov.u64 %r88,1; shl.b64 %r22,%r88,%r51; and.b64 %r89,%r22,4294967297; setp.ne.u64 %r90,%r89,0; @ %r90 bra $L88; and.b64 %r91,%r22,17179869188; setp.ne.u64 %r92,%r91,0; @ %r92 bra $L89; and.b64 %r93,%r22,8589934594; setp.eq.u64 %r94,%r93,0; @ %r94 bra $L87; .loc 1 433 7 setp.eq.u32 %r95,%r78,0; selp.u32 %r81,%r81,1,%r95; .loc 1 73 15 add.u64 %r103,%frame,8; add.u64 %r104,%frame,12; mov.u32 %r98,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r77; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r98; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r78; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r104; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r103; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r105,[%value_in]; } .loc 1 75 13 ld.u32 %r27,[%frame+12]; .loc 1 75 6 setp.eq.u32 %r106,%r27,9999; @ %r106 bra $L91; .loc 1 80 10 ld.s8 %r26,[%r105]; .loc 1 80 13 setp.eq.u32 %r107,%r26,0; @ %r107 bra $L109; mov.u64 %r73,%r76; mov.u64 %r25,%r105; bra $L93; $L91: .loc 1 77 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r76; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r110,[%value_in]; } bra $L87; $L94: .loc 1 82 18 add.u64 %r25,%r25,1; add.u64 %r73,%r73,1; mov.u64 %r48,%r73; .loc 1 82 14 cvt.u32.u32 %r111,%r26; st.u8 [%r35],%r111; .loc 1 83 12 add.u32 %r27,%r27,-1; st.u32 [%frame+12],%r27; .loc 1 80 10 ld.s8 %r26,[%r25]; .loc 1 80 13 setp.eq.u32 %r112,%r26,0; @ %r112 bra $L92; $L93: mov.u64 %r35,%r73; setp.gt.s32 %r113,%r27,0; @ %r113 bra $L94; bra $L95; $L109: mov.u64 %r25,%r105; mov.u64 %r48,%r76; $L92: .loc 1 86 16 setp.le.s32 %r114,%r27,0; @ %r114 bra $L110; mov.u64 %r67,%r48; add.u64 %r115,%r48,1; add.u32 %r116,%r27,-1; cvt.u64.u32 %r117,%r116; add.u64 %r72,%r115,%r117; .loc 1 88 14 mov.u32 %r118,48; $L96: st.u8 [%r67],%r118; .loc 1 86 16 add.u64 %r67,%r67,1; setp.ne.u64 %r119,%r67,%r72; @ %r119 bra $L96; .loc 1 88 11 cvt.u64.u32 %r120,%r27; add.u64 %r35,%r48,%r120; mov.u32 %r121,0; st.u32 [%frame+12],%r121; .loc 1 89 12 mov.u32 %r27,%r121; bra $L95; $L110: .loc 1 86 16 mov.u64 %r35,%r48; $L95: .loc 1 92 6 setp.ne.u32 %r122,%r81,0; @ %r122 bra $L97; .loc 1 92 11 ld.u8 %r124,[%r25]; cvt.s16.s8 %r123,%r124; setp.eq.u16 %r125,%r123,0; @ %r125 bra $L98; $L97: .loc 1 94 10 setp.ne.u64 %r126,%r105,%r25; @ %r126 bra $L99; .loc 1 95 9 mov.u32 %r127,48; st.u8 [%r35],%r127; .loc 1 95 6 add.u64 %r35,%r35,1; $L99: .loc 1 96 21 set.u32.gt.s32 %r128,%r78,0; neg.s32 %r41,%r128; .loc 1 96 10 set.u32.ne.u32 %r132,%r27,0; neg.s32 %r133,%r132; mov.u32 %r131,%r133; .loc 1 96 21 cvt.u16.u8 %r191,%r131; mov.u16 %r135,%r191; cvt.u16.u32 %r136,%r41; and.b16 %r134,%r135,%r136; cvt.u32.u16 %r137,%r134; cvt.u16.u8 %r138,%r137; setp.eq.u16 %r139,%r138,0; @ %r139 bra $L100; .loc 1 97 9 mov.u32 %r140,46; st.u8 [%r35],%r140; .loc 1 97 6 add.u64 %r35,%r35,1; $L100: .loc 1 98 20 ld.u32 %r57,[%frame+12]; .loc 1 98 24 shr.u32 %r142,%r57,31; mov.u32 %r143,%r142; cvt.u16.u8 %r191,%r143; mov.u16 %r145,%r191; cvt.u16.u32 %r146,%r41; and.b16 %r144,%r145,%r146; cvt.u32.u16 %r147,%r144; cvt.u16.u8 %r148,%r147; setp.eq.u16 %r149,%r148,0; @ %r149 bra $L101; add.u32 %r63,%r57,1; .loc 1 100 11 mov.u32 %r150,48; $L102: mov.u64 %r52,%r35; add.u64 %r35,%r35,1; st.u8 [%r52],%r150; .loc 1 101 9 mov.u32 %r37,%r63; .loc 1 102 10 add.u32 %r78,%r78,-1; .loc 1 98 24 add.u32 %r63,%r63,1; shr.u32 %r152,%r37,31; mov.u32 %r153,%r152; set.u32.gt.s32 %r155,%r78,0; neg.s32 %r156,%r155; mov.u32 %r154,%r156; cvt.u16.u8 %r191,%r153; mov.u16 %r158,%r191; cvt.u16.u8 %r191,%r154; mov.u16 %r159,%r191; and.b16 %r157,%r158,%r159; cvt.u32.u16 %r160,%r157; cvt.u16.u8 %r161,%r160; setp.ne.u16 %r162,%r161,0; @ %r162 bra $L102; st.u32 [%frame+12],%r37; $L101: .loc 1 106 14 ld.s8 %r40,[%r25]; .loc 1 106 17 setp.eq.u32 %r163,%r40,0; @ %r163 bra $L103; setp.le.s32 %r164,%r78,0; @ %r164 bra $L98; mov.u64 %r61,%r35; $L106: .loc 1 108 15 add.u64 %r25,%r25,1; mov.u64 %r29,%r61; add.u64 %r61,%r61,1; mov.u64 %r35,%r61; .loc 1 108 11 cvt.u32.u32 %r165,%r40; st.u8 [%r29],%r165; .loc 1 109 10 add.u32 %r78,%r78,-1; .loc 1 106 14 ld.s8 %r40,[%r25]; .loc 1 106 17 setp.ne.u32 %r166,%r40,0; @ %r166 bra $L104; $L103: .loc 1 112 21 setp.gt.s32 %r167,%r78,0; @ %r167 bra $L105; bra $L98; $L104: .loc 1 106 17 setp.ne.u32 %r168,%r78,0; @ %r168 bra $L106; bra $L98; $L105: mov.u64 %r43,%r35; add.u32 %r169,%r78,-1; cvt.u64.u32 %r170,%r169; add.u64 %r171,%r35,1; add.u64 %r60,%r170,%r171; .loc 1 114 11 mov.u32 %r172,48; $L107: st.u8 [%r43],%r172; .loc 1 112 21 add.u64 %r43,%r43,1; setp.ne.u64 %r173,%r43,%r60; @ %r173 bra $L107; .loc 1 114 8 cvt.u64.u32 %r174,%r78; add.u64 %r35,%r35,%r174; $L98: .loc 1 118 10 mov.u32 %r175,0; st.u8 [%r35],%r175; bra $L87; $L89: .loc 1 437 10 setp.ne.u32 %r176,%r78,0; .loc 1 438 12 selp.u32 %r78,%r78,1,%r176; .loc 1 439 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r77; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r78; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r76; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r80; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r81; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r183,[%value_in]; } .loc 1 440 7 bra $L87; $L88: .loc 1 443 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r76; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r77; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r78; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r80; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r81; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L87: .loc 1 446 1 mov.u64 %value,%r76; st.param.u64 [%value_out],%value; ret; } lib_a-efgcvt.o/ 0 0 0 644 9004 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fcvt .visible .func (.param .u64 %value_out) fcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/efgcvt.c" // BEGIN GLOBAL FUNCTION DECL: fcvtf .visible .func (.param .u64 %value_out) fcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: gcvt .visible .func (.param .u64 %value_out) gcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: gcvtf .visible .func (.param .u64 %value_out) gcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: ecvt .visible .func (.param .u64 %value_out) ecvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: ecvtf .visible .func (.param .u64 %value_out) ecvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fcvtbuf .extern .func (.param .u64 %value_out) fcvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _gcvt .extern .func (.param .u64 %value_out) _gcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5); // BEGIN GLOBAL FUNCTION DECL: ecvtbuf .extern .func (.param .u64 %value_out) ecvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DEF: fcvt .visible .func (.param .u64 %value_out) fcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f64 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 114 10 mov.u64 %r31,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),fcvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 115 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fcvtf .visible .func (.param .u64 %value_out) fcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .f64 %r33; .reg .u64 %r34; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 123 10 cvt.f64.f32 %r33,%r24; .loc 1 114 10 mov.u64 %r32,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r32; call (%value_in),fcvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 124 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: gcvt .visible .func (.param .u64 %value_out) gcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .f64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; mov.f64 %r26,%ar0; mov.u32 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 133 6 setp.lt.f64 %r29,%r26,0d0000000000000000; @ ! %r29 bra $L9; .loc 1 134 10 mov.u32 %r30,45; st.u8 [%r28],%r30; .loc 1 135 8 add.u64 %r24,%r28,1; .loc 1 136 11 add.u32 %r27,%r27,-1; bra $L4; $L9: mov.u64 %r24,%r28; $L4: .loc 1 138 11 ld.global.u64 %r37,[_impure_ptr]; mov.u32 %r36,0; mov.u32 %r35,103; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r24; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r35; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r36; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r38,[%value_in]; } .loc 1 138 57 setp.ne.u64 %r39,%r38,0; selp.u64 %value,%r28,0,%r39; .loc 1 139 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: gcvtf .visible .func (.param .u64 %value_out) gcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .u64 %r23; .reg .f32 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; mov.f32 %r27,%ar0; mov.u32 %r28,%ar1; mov.u64 %r29,%ar2; .loc 1 147 10 cvt.f64.f32 %r22,%r27; .loc 1 133 6 setp.lt.f32 %r30,%r27,0f00000000; @ ! %r30 bra $L16; .loc 1 134 10 mov.u32 %r31,45; st.u8 [%r29],%r31; .loc 1 135 8 add.u64 %r23,%r29,1; .loc 1 136 11 add.u32 %r28,%r28,-1; bra $L11; $L16: mov.u64 %r23,%r29; $L11: .loc 1 138 11 ld.global.u64 %r38,[_impure_ptr]; mov.u32 %r37,0; mov.u32 %r36,103; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r22; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r23; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r36; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r37; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r39,[%value_in]; } .loc 1 138 57 setp.ne.u64 %r40,%r39,0; selp.u64 %value,%r29,0,%r40; .loc 1 149 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ecvt .visible .func (.param .u64 %value_out) ecvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f64 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 158 10 mov.u64 %r31,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),ecvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 159 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ecvtf .visible .func (.param .u64 %value_out) ecvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .f64 %r33; .reg .u64 %r34; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 167 10 cvt.f64.f32 %r33,%r24; .loc 1 158 10 mov.u64 %r32,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r32; call (%value_in),ecvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 168 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } lib_a-environ.o/0 0 0 644 248 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN VAR DEF: initial_env .global .align 8 .u64 initial_env[1]; // END PREAMBLE // BEGIN GLOBAL VAR DEF: environ .visible .global .align 8 .u64 environ[1] = {generic(initial_env) }; lib_a-envlock.o/0 0 0 644 634 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __env_lock .visible .func __env_lock (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/envlock.c" // BEGIN GLOBAL FUNCTION DECL: __env_unlock .visible .func __env_unlock (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __env_lock .visible .func __env_lock (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 45 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __env_unlock .visible .func __env_unlock (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; $LFB3: ret; $LFE3: } lib_a-eprintf.o/0 0 0 644 1690 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __eprintf .visible .func __eprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/eprintf.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fiprintf .extern .func (.param .u32 %value_out) fiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: abort .extern .func abort; // BEGIN GLOBAL FUNCTION DEF: __eprintf .visible .func __eprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[32]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 23 20 ld.global.u64 %r30,[_impure_ptr]; .loc 1 23 10 ld.u64 %r31,[%r30+24]; st.u64 [%stack+16],%r27; st.u32 [%stack+8],%r26; st.u64 [%stack],%r25; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),fiprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } .loc 1 24 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } lib_a-erand48.o/0 0 0 644 2962 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _erand48_r .visible .func (.param .f64 %value_out) _erand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/erand48.c" // BEGIN GLOBAL FUNCTION DECL: erand48 .visible .func (.param .f64 %value_out) erand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: ldexp .extern .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _erand48_r .visible .func (.param .f64 %value_out) _erand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r38; .reg .f64 %r39; .reg .u32 %r40; .reg .f64 %r41; .reg .u32 %r43; .reg .f64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .f64 %r51; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 10 ld.u16 %r40,[%r34]; cvt.rn.f64.u32 %r39,%r40; mov.u32 %r38,-48; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } .loc 1 22 5 ld.u16 %r45,[%r34+2]; cvt.rn.f64.u32 %r44,%r45; mov.u32 %r43,-32; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r43; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } .loc 1 21 40 add.f64 %r28,%r41,%r46; .loc 1 23 5 ld.u16 %r50,[%r34+4]; cvt.rn.f64.u32 %r49,%r50; mov.u32 %r48,-16; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r48; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r51,[%value_in]; } .loc 1 22 35 add.f64 %value,%r28,%r51; .loc 1 24 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: erand48 .visible .func (.param .f64 %value_out) erand48 (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .f64 %r28; mov.u64 %r24,%ar0; .loc 1 30 10 ld.global.u64 %r27,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_erand48_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } .loc 1 31 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-errno.o/ 0 0 0 644 509 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __errno .visible .func (.param .u64 %value_out) __errno; .file 1 "../../../../../newlib/libc/errno/errno.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: __errno .visible .func (.param .u64 %value_out) __errno { .reg .u64 %value; .loc 1 13 10 ld.global.u64 %value,[_impure_ptr]; .loc 1 14 1 st.param.u64 [%value_out],%value; ret; } lib_a-exit.o/ 0 0 0 644 745 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exit .visible .func exit (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/machine/nvptx/exit.c" // BEGIN GLOBAL VAR DEF: __exitval_ptr .weak .global .align 8 .u64 __exitval_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: exit .visible .func exit (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u32 %r23; .reg .pred %r24; mov.u32 %r23,%ar0; .loc 1 28 7 ld.global.u64 %r22,[__exitval_ptr]; .loc 1 28 6 setp.eq.u64 %r24,%r22,0; @ %r24 bra $L3; .loc 1 29 20 st.u32 [%r22],%r23; $L3: .loc 1 31 5 // #APP // 31 "../../../../../../newlib/libc/machine/nvptx/exit.c" 1 exit; // #NO_APP bra $L3; } /282 0 0 0 644 817 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: explicit_bzero .visible .func explicit_bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/explicit_bzero.c" // BEGIN GLOBAL FUNCTION DECL: bzero .extern .func bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: explicit_bzero .visible .func explicit_bzero (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r23; mov.u64 %r22,%ar0; mov.u64 %r23,%ar1; .loc 1 15 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call bzero,(%out_arg1,%out_arg2); } .loc 1 16 1 ret; } lib_a-fclose.o/ 0 0 0 644 4585 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fclose_r .visible .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/fclose.c" // BEGIN GLOBAL FUNCTION DECL: fclose .visible .func (.param .u32 %value_out) fclose (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sflush_r .extern .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .extern .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .extern .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DEF: _fclose_r .visible .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .pred %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u16 %r41; .reg .pred %r42; .reg .u32 %r45; .reg .pred %r46; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .u64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u64 %r63; .reg .pred %r64; .reg .u64 %r67; .reg .u16 %r68; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; .loc 1 64 6 setp.ne.u64 %r36,%r35,0; @ %r36 bra $L2; $L5: .loc 1 65 12 mov.u32 %r33,0; bra $L1; $L2: .loc 1 67 3 setp.eq.u64 %r37,%r34,0; @ %r37 bra $L4; ld.u32 %r38,[%r34+80]; setp.ne.u32 %r39,%r38,0; @ %r39 bra $L4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call __sinit,(%out_arg1); } $L4: .loc 1 78 6 ld.u16 %r41,[%r35+16]; setp.eq.u16 %r42,%r41,0; @ %r42 bra $L5; .loc 1 94 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r45,[%value_in]; } mov.u32 %r33,%r45; .loc 1 96 9 ld.u64 %r24,[%r35+80]; .loc 1 96 6 setp.eq.u64 %r46,%r24,0; @ %r46 bra $L6; .loc 1 96 29 ld.u64 %r49,[%r35+48]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; call (%value_in),%r24,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r50,[%value_in]; } .loc 1 96 26 setp.ge.s32 %r51,%r50,0; .loc 1 97 7 selp.u32 %r33,%r33,-1,%r51; $L6: .loc 1 98 6 ld.u16 %r53,[%r35+16]; and.b16 %r52,%r53,128; setp.eq.u16 %r54,%r52,0; @ %r54 bra $L7; .loc 1 99 5 ld.u64 %r57,[%r35+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r57; call _free_r,(%out_arg1,%out_arg2); } $L7: .loc 1 100 7 ld.u64 %r30,[%r35+88]; .loc 1 100 6 setp.eq.u64 %r58,%r30,0; @ %r58 bra $L8; .loc 1 101 5 add.u64 %r59,%r35,116; setp.eq.u64 %r60,%r30,%r59; @ %r60 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call _free_r,(%out_arg1,%out_arg2); } $L9: mov.u64 %r63,0; st.u64 [%r35+88],%r63; $L8: .loc 1 102 7 ld.u64 %r32,[%r35+120]; .loc 1 102 6 setp.eq.u64 %r64,%r32,0; @ %r64 bra $L10; .loc 1 103 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r67,0; st.u64 [%r35+120],%r67; $L10: .loc 1 104 3 { call __sfp_lock_acquire; } .loc 1 105 14 mov.u16 %r68,0; st.u16 [%r35+16],%r68; .loc 1 112 3 { call __sfp_lock_release; } $L1: .loc 1 118 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fclose .visible .func (.param .u32 %value_out) fclose (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 125 10 ld.global.u64 %r27,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 126 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-fcntlr.o/ 0 0 0 644 1835 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fcntl_r .visible .func (.param .u32 %value_out) _fcntl_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/reent/fcntlr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: fcntl .extern .func (.param .u32 %value_out) fcntl (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fcntl_r .visible .func (.param .u32 %value_out) _fcntl_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .pred %r33; .reg .pred %r34; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; mov.u32 %r27,%ar3; .loc 1 50 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 51 14 st.u32 [%stack],%r27; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),fcntl,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r31,[%value_in]; } .loc 1 51 6 setp.ne.u32 %r33,%r31,-1; @ %r33 bra $L1; .loc 1 51 52 ld.global.u32 %r22,[errno]; .loc 1 51 43 setp.eq.u32 %r34,%r22,0; @ %r34 bra $L1; .loc 1 52 17 st.u32 [%r24],%r22; $L1: .loc 1 54 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-fdopen.o/ 0 0 0 644 4784 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fdopen_r .visible .func (.param .u64 %value_out) _fdopen_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fdopen.c" // BEGIN GLOBAL FUNCTION DECL: fdopen .visible .func (.param .u64 %value_out) fdopen (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sflags .extern .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfp .extern .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fdopen_r .visible .func (.param .u64 %value_out) _fdopen_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 66 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } .loc 1 66 6 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L3; .loc 1 81 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),__sfp,(%out_arg1); ld.param.u64 %r35,[%value_in]; } mov.u64 %r25,%r35; .loc 1 81 6 setp.eq.u64 %r36,%r25,0; @ %r36 bra $L1; .loc 1 86 14 st.u16 [%r25+16],%r32; .loc 1 95 13 st.u16 [%r25+18],%r27; .loc 1 96 15 st.u64 [%r25+48],%r25; .loc 1 103 13 mov.u64 %r37,__sread; st.u64 [%r25+56],%r37; .loc 1 104 14 mov.u64 %r38,__swrite; st.u64 [%r25+64],%r38; .loc 1 105 13 mov.u64 %r39,__sseek; st.u64 [%r25+72],%r39; .loc 1 106 14 mov.u64 %r40,__sclose; st.u64 [%r25+80],%r40; .loc 1 119 10 bra $L1; $L3: .loc 1 67 12 mov.u64 %r25,0; $L1: .loc 1 120 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fdopen .visible .func (.param .u64 %value_out) fdopen (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; mov.u32 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 128 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 66 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } .loc 1 66 6 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L9; .loc 1 81 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call (%value_in),__sfp,(%out_arg1); ld.param.u64 %r35,[%value_in]; } mov.u64 %r26,%r35; .loc 1 81 6 setp.eq.u64 %r36,%r26,0; @ %r36 bra $L7; .loc 1 86 14 st.u16 [%r26+16],%r32; .loc 1 95 13 st.u16 [%r26+18],%r27; .loc 1 96 15 st.u64 [%r26+48],%r26; .loc 1 103 13 mov.u64 %r37,__sread; st.u64 [%r26+56],%r37; .loc 1 104 14 mov.u64 %r38,__swrite; st.u64 [%r26+64],%r38; .loc 1 105 13 mov.u64 %r39,__sseek; st.u64 [%r26+72],%r39; .loc 1 106 14 mov.u64 %r40,__sclose; st.u64 [%r26+80],%r40; .loc 1 119 10 bra $L7; $L9: .loc 1 67 12 mov.u64 %r26,0; $L7: .loc 1 129 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-feof.o/ 0 0 0 644 1112 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feof .visible .func (.param .u32 %value_out) feof (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/feof.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: feof .visible .func (.param .u32 %value_out) feof (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u16 %r34; .reg .u16 %r35; .reg .u32 %r36; mov.u64 %r28,%ar0; .loc 1 71 3 ld.global.u64 %r25,[_impure_ptr]; setp.eq.u64 %r29,%r25,0; @ %r29 bra $L2; ld.u32 %r30,[%r25+80]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L2: .loc 1 73 12 ld.u16 %r35,[%r28+16]; shr.u16 %r34,%r35,5; cvt.u32.u16 %r36,%r34; and.b32 %value,%r36,1; .loc 1 76 1 st.param.u32 [%value_out],%value; ret; } lib_a-ferror.o/ 0 0 0 644 1122 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ferror .visible .func (.param .u32 %value_out) ferror (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/ferror.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ferror .visible .func (.param .u32 %value_out) ferror (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u16 %r34; .reg .u16 %r35; .reg .u32 %r36; mov.u64 %r28,%ar0; .loc 1 80 3 ld.global.u64 %r25,[_impure_ptr]; setp.eq.u64 %r29,%r25,0; @ %r29 bra $L2; ld.u32 %r30,[%r25+80]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L2: .loc 1 82 12 ld.u16 %r35,[%r28+16]; shr.u16 %r34,%r35,6; cvt.u32.u16 %r36,%r34; and.b32 %value,%r36,1; .loc 1 85 1 st.param.u32 [%value_out],%value; ret; } lib_a-fflush.o/ 0 0 0 644 11969 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sflush_r .visible .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/fflush.c" // BEGIN GLOBAL FUNCTION DECL: _fflush_r .visible .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fflush .visible .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fwalk_reent .extern .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __sflush_r .visible .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r41; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .pred %r78; .reg .u16 %r79; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .u64 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .pred %r96; .reg .pred %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u16 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .u64 %r118; .reg .u32 %r122; .reg .u64 %r124; .reg .pred %r125; .reg .pred %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u32 %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .u64 %r137; .reg .pred %r138; .reg .u64 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .pred %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u16 %r147; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r155; .reg .u32 %r156; .reg .u64 %r157; .reg .pred %r158; .reg .u16 %r159; .reg .u16 %r160; .reg .u64 %r161; .reg .pred %r162; .reg .u16 %r164; .reg .u16 %r165; .reg .u64 %r167; .reg .u16 %r168; .reg .pred %r170; .reg .u16 %r171; .reg .u16 %r172; .reg .u64 %r174; .reg .u16 %r175; .reg .pred %r177; .reg .u64 %r178; .reg .u16 %r179; mov.u64 %r74,%ar0; mov.u64 %r75,%ar1; .loc 1 111 9 ld.s16 %r53,[%r75+16]; .loc 1 112 6 cvt.u16.u32 %r77,%r53; and.b16 %r76,%r77,8; setp.ne.u16 %r78,%r76,0; @ %r78 bra $L2; .loc 1 118 18 or.b16 %r79,%r77,2048; cvt.s32.s16 %r22,%r79; st.u16 [%r75+16],%r79; .loc 1 128 10 ld.u32 %r82,[%r75+8]; setp.gt.s32 %r83,%r82,0; @ %r83 bra $L3; .loc 1 128 23 ld.u32 %r84,[%r75+112]; setp.gt.s32 %r85,%r84,0; @ %r85 bra $L3; $L5: .loc 1 205 14 mov.u32 %r73,0; bra $L1; $L3: .loc 1 128 44 ld.u64 %r25,[%r75+72]; .loc 1 128 39 setp.eq.u64 %r86,%r25,0; @ %r86 bra $L5; .loc 1 140 14 ld.u32 %r60,[%r74]; .loc 1 141 16 mov.u32 %r87,0; st.u32 [%r74],%r87; .loc 1 154 12 ld.u64 %r178,[%r75+48]; .loc 1 143 7 cvt.u16.u32 %r89,%r53; and.b16 %r88,%r89,4096; setp.eq.u16 %r90,%r88,0; @ %r90 bra $L6; .loc 1 144 13 ld.u64 %r51,[%r75+144]; bra $L7; $L6: .loc 1 154 12 mov.u32 %r94,1; mov.u64 %r93,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r178; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r93; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r94; call (%value_in),%r25,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r95,[%value_in]; } mov.u64 %r51,%r95; .loc 1 155 11 setp.ne.u64 %r96,%r51,-1; @ %r96 bra $L8; .loc 1 155 32 ld.u32 %r26,[%r74]; .loc 1 155 26 setp.ne.u32 %r97,%r26,0; @ %r97 bra $L9; .loc 1 164 18 ld.s16 %r22,[%r75+16]; .loc 1 182 17 ld.u64 %r25,[%r75+72]; ld.u64 %r178,[%r75+48]; bra $L7; $L9: .loc 1 158 31 set.u32.eq.u32 %r99,%r26,29; neg.s32 %r100,%r99; mov.u32 %r98,%r100; set.u32.eq.u32 %r102,%r26,22; neg.s32 %r103,%r102; mov.u32 %r101,%r103; cvt.u16.u8 %r179,%r98; mov.u16 %r105,%r179; cvt.u16.u8 %r179,%r101; mov.u16 %r106,%r179; or.b16 %r104,%r105,%r106; cvt.u32.u16 %r107,%r104; .loc 1 158 8 cvt.u16.u8 %r108,%r107; setp.eq.u16 %r109,%r108,0; @ %r109 bra $L10; .loc 1 161 21 st.u32 [%r74],%r60; .loc 1 160 16 mov.u32 %r73,%r87; bra $L1; $L10: .loc 1 164 18 ld.u16 %r111,[%r75+16]; or.b16 %r110,%r111,64; st.u16 [%r75+16],%r110; .loc 1 157 9 mov.u32 %r73,-1; bra $L1; $L8: .loc 1 164 18 ld.s16 %r22,[%r75+16]; .loc 1 182 17 ld.u64 %r25,[%r75+72]; ld.u64 %r178,[%r75+48]; $L7: .loc 1 168 14 cvt.u16.u32 %r113,%r22; and.b16 %r112,%r113,4; setp.eq.u16 %r114,%r112,0; @ %r114 bra $L11; .loc 1 172 27 ld.s32 %r115,[%r75+8]; .loc 1 172 22 sub.u64 %r51,%r51,%r115; .loc 1 173 18 ld.u64 %r116,[%r75+88]; setp.eq.u64 %r117,%r116,0; @ %r117 bra $L11; .loc 1 174 29 ld.s32 %r118,[%r75+112]; .loc 1 174 24 sub.u64 %r51,%r51,%r118; $L11: .loc 1 182 15 mov.u32 %r122,0; { .param .u64 %value_in; $LCT1: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r178; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r51; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r122; call (%value_in),%r25,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u64 %r124,[%value_in]; } .loc 1 183 7 setp.ne.u64 %r125,%r124,-1; @ %r125 bra $L12; .loc 1 183 27 ld.u32 %r38,[%r74]; .loc 1 183 21 setp.le.u32 %r126,%r38,29; @ %r126 bra $L13; .loc 1 201 19 ld.s16 %r39,[%r75+16]; bra $L14; $L13: ld.s16 %r39,[%r75+16]; .loc 1 183 21 mov.u64 %r128,-541065218; shr.s64 %r127,%r128,%r38; cvt.u32.u64 %r129,%r127; cvt.u16.u8 %r179,%r129; mov.u16 %r131,%r179; and.b16 %r130,%r131,1; cvt.u32.u16 %r132,%r130; .loc 1 184 33 cvt.u16.u8 %r133,%r132; setp.ne.u16 %r134,%r133,0; @ ! %r134 bra $L44; bra $L14; $L23: .loc 1 193 51 setp.eq.u32 %r135,%r38,0; @ ! %r135 bra $L17; $L16: .loc 1 194 15 st.u64 [%r75+144],%r124; $L17: .loc 1 195 20 st.u32 [%r74],%r60; .loc 1 196 12 ld.u64 %r41,[%r75+88]; .loc 1 196 11 setp.eq.u64 %r136,%r41,0; @ %r136 bra $L5; .loc 1 197 3 add.u64 %r137,%r75,116; setp.eq.u64 %r138,%r41,%r137; @ %r138 bra $L18; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call _free_r,(%out_arg1,%out_arg2); } $L18: mov.u64 %r141,0; st.u64 [%r75+88],%r141; .loc 1 205 14 mov.u32 %r73,0; bra $L1; $L14: .loc 1 201 19 cvt.u16.u32 %r143,%r39; or.b16 %r142,%r143,64; st.u16 [%r75+16],%r142; .loc 1 202 15 mov.u32 %r73,-1; bra $L1; $L2: .loc 1 207 10 ld.u64 %r57,[%r75+24]; .loc 1 207 6 setp.eq.u64 %r144,%r57,0; @ %r144 bra $L5; .loc 1 212 14 ld.u64 %r146,[%r75]; sub.u64 %r145,%r146,%r57; .loc 1 212 5 cvt.u32.u64 %r58,%r145; .loc 1 219 10 st.u64 [%r75],%r57; .loc 1 220 42 and.b16 %r147,%r77,3; setp.ne.u16 %r149,%r147,0; @ %r149 bra $L24; ld.u32 %r52,[%r75+32]; bra $L19; $L24: mov.u32 %r52,0; $L19: .loc 1 220 10 st.u32 [%r75+12],%r52; .loc 1 222 12 setp.le.s32 %r150,%r58,0; @ %r150 bra $L5; $L21: .loc 1 224 11 ld.u64 %r155,[%r75+48]; ld.u64 %r157,[%r75+64]; { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r155; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; call (%value_in),%r157,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT2; ld.param.u32 %r156,[%value_in]; } .loc 1 225 10 setp.gt.s32 %r158,%r156,0; @ %r158 bra $L20; .loc 1 227 22 ld.u16 %r160,[%r75+16]; or.b16 %r159,%r160,64; st.u16 [%r75+16],%r159; .loc 1 228 18 mov.u32 %r73,-1; bra $L1; $L20: .loc 1 230 9 cvt.s64.s32 %r161,%r156; add.u64 %r57,%r57,%r161; .loc 1 231 9 sub.u32 %r58,%r58,%r156; .loc 1 222 12 setp.gt.s32 %r162,%r58,0; @ %r162 bra $L21; bra $L5; $L12: .loc 1 189 19 ld.u16 %r165,[%r75+16]; and.b16 %r164,%r165,-2049; st.u16 [%r75+16],%r164; .loc 1 191 15 st.u32 [%r75+8],%r122; .loc 1 192 15 ld.u64 %r167,[%r75+24]; st.u64 [%r75],%r167; .loc 1 193 11 and.b16 %r168,%r165,4096; setp.ne.u16 %r170,%r168,0; @ %r170 bra $L16; bra $L17; $L44: .loc 1 189 19 cvt.u16.u32 %r172,%r39; and.b16 %r171,%r172,-2049; st.u16 [%r75+16],%r171; .loc 1 191 15 st.u32 [%r75+8],%r122; .loc 1 192 15 ld.u64 %r174,[%r75+24]; st.u64 [%r75],%r174; .loc 1 193 11 and.b16 %r175,%r172,4096; setp.ne.u16 %r177,%r175,0; @ ! %r177 bra $L17; bra $L23; $L1: .loc 1 234 1 mov.u32 %value,%r73; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fflush_r .visible .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u16 %r31; .reg .pred %r32; .reg .u32 %r35; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 272 3 setp.eq.u64 %r27,%r25,0; @ %r27 bra $L46; ld.u32 %r28,[%r25+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L46; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L46: .loc 1 274 6 ld.u16 %r31,[%r26+16]; setp.eq.u16 %r32,%r31,0; @ %r32 bra $L48; .loc 1 278 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } mov.u32 %r24,%r35; .loc 1 280 10 bra $L45; $L48: .loc 1 275 12 mov.u32 %r24,0; $L45: .loc 1 281 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fflush .visible .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u16 %r37; .reg .pred %r38; .reg .u32 %r41; mov.u64 %r27,%ar0; .loc 1 288 6 setp.ne.u64 %r28,%r27,0; @ %r28 bra $L53; .loc 1 289 12 ld.const.u64 %r31,[_global_impure_ptr]; mov.u64 %r30,_fflush_r; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),_fwalk_reent,(%out_arg1,%out_arg2); ld.param.u32 %r32,[%value_in]; } mov.u32 %r26,%r32; bra $L52; $L53: .loc 1 291 10 ld.global.u64 %r23,[_impure_ptr]; .loc 1 272 3 setp.eq.u64 %r33,%r23,0; @ %r33 bra $L55; ld.u32 %r34,[%r23+80]; setp.ne.u32 %r35,%r34,0; @ %r35 bra $L55; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L55: .loc 1 274 6 ld.u16 %r37,[%r27+16]; setp.eq.u16 %r38,%r37,0; @ %r38 bra $L56; .loc 1 278 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r41,[%value_in]; } mov.u32 %r26,%r41; .loc 1 280 10 bra $L52; $L56: .loc 1 275 12 mov.u32 %r26,0; $L52: .loc 1 292 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-ffs.o/ 0 0 0 644 658 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ffs .visible .func (.param .u32 %value_out) ffs (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/misc/ffs.c" // BEGIN GLOBAL FUNCTION DEF: ffs .visible .func (.param .u32 %value_out) ffs (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .pred %r26; mov.u32 %r23,%ar0; .loc 1 31 10 brev.b32 %r25,%r23; clz.b32 %r24,%r25; setp.ne.u32 %r26,%r23,0; selp.u32 %r24,%r24,-1,%r26; add.u32 %value,%r24,1; .loc 1 32 1 st.param.u32 [%value_out],%value; ret; } lib_a-ffsl.o/ 0 0 0 644 800 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ffsl .visible .func (.param .u32 %value_out) ffsl (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/ffsl.c" // BEGIN GLOBAL FUNCTION DECL: __ffsdi2 .extern .func (.param .u32 %value_out) __ffsdi2 (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ffsl .visible .func (.param .u32 %value_out) ffsl (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; mov.u64 %r23,%ar0; .loc 1 33 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),__ffsdi2,(%out_arg1); ld.param.u32 %r26,[%value_in]; } .loc 1 34 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-ffsll.o/ 0 0 0 644 805 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ffsll .visible .func (.param .u32 %value_out) ffsll (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/ffsll.c" // BEGIN GLOBAL FUNCTION DECL: __ffsdi2 .extern .func (.param .u32 %value_out) __ffsdi2 (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ffsll .visible .func (.param .u32 %value_out) ffsll (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; mov.u64 %r23,%ar0; .loc 1 33 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),__ffsdi2,(%out_arg1); ld.param.u32 %r26,[%value_in]; } .loc 1 34 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-fgetc.o/ 0 0 0 644 3048 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fgetc_r .visible .func (.param .u32 %value_out) _fgetc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/fgetc.c" // BEGIN GLOBAL FUNCTION DECL: fgetc .visible .func (.param .u32 %value_out) fgetc (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fgetc_r .visible .func (.param .u32 %value_out) _fgetc_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 92 3 setp.eq.u64 %r31,%r29,0; @ %r31 bra $L2; ld.u32 %r32,[%r29+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call __sinit,(%out_arg1); } $L2: .loc 1 94 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r28,%r39; bra $L1; $L3: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r28,[%r25]; $L1: .loc 1 97 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fgetc .visible .func (.param .u32 %value_out) fgetc (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r30,%ar0; .loc 1 106 18 ld.global.u64 %r28,[_impure_ptr]; .loc 1 108 3 setp.eq.u64 %r31,%r28,0; @ %r31 bra $L9; ld.u32 %r32,[%r28+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __sinit,(%out_arg1); } $L9: .loc 1 110 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L10; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r29,%r39; bra $L8; $L10: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r29,[%r25]; $L8: .loc 1 116 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-fgetpos.o/0 0 0 644 2225 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fgetpos_r .visible .func (.param .u32 %value_out) _fgetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fgetpos.c" // BEGIN GLOBAL FUNCTION DECL: fgetpos .visible .func (.param .u32 %value_out) fgetpos (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _ftell_r .extern .func (.param .u64 %value_out) _ftell_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fgetpos_r .visible .func (.param .u32 %value_out) _fgetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 72 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),_ftell_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 72 8 st.u64 [%r27],%r30; .loc 1 74 6 set.u32.eq.u64 %r33,%r30,-1; neg.s32 %value,%r33; .loc 1 79 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fgetpos .visible .func (.param .u32 %value_out) fgetpos (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r34; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 72 10 ld.global.u64 %r30,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),_ftell_r,(%out_arg1,%out_arg2); ld.param.u64 %r31,[%value_in]; } .loc 1 72 8 st.u64 [%r27],%r31; .loc 1 74 6 set.u32.eq.u64 %r34,%r31,-1; neg.s32 %value,%r34; .loc 1 88 1 st.param.u32 [%value_out],%value; ret; } lib_a-fgets.o/ 0 0 0 644 5735 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fgets_r .visible .func (.param .u64 %value_out) _fgets_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/fgets.c" // BEGIN GLOBAL FUNCTION DECL: fgets .visible .func (.param .u64 %value_out) fgets (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fgets_r .visible .func (.param .u64 %value_out) _fgets_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r28; .reg .u32 %r37; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r61; .reg .u32 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u64 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r89; .reg .pred %r90; .reg .u32 %r91; mov.u64 %r52,%ar0; mov.u64 %r53,%ar1; mov.u32 %r54,%ar2; mov.u64 %r55,%ar3; .loc 1 106 6 setp.gt.s32 %r56,%r54,1; @ %r56 bra $L2; $L7: .loc 1 107 12 mov.u64 %r51,0; bra $L1; $L2: .loc 1 111 3 setp.eq.u64 %r57,%r52,0; @ %r57 bra $L4; ld.u32 %r58,[%r52+80]; setp.ne.u32 %r59,%r58,0; @ %r59 bra $L4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; call __sinit,(%out_arg1); } $L4: .loc 1 136 4 add.u32 %r44,%r54,-1; mov.u64 %r46,%r53; $L10: .loc 1 142 16 ld.s32 %r45,[%r55+8]; .loc 1 142 10 setp.ne.u64 %r61,%r45,0; @ %r61 bra $L5; .loc 1 144 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r64,[%value_in]; } .loc 1 144 7 setp.eq.u32 %r65,%r64,0; @ %r65 bra $L6; .loc 1 147 11 setp.eq.u64 %r66,%r46,%r53; @ ! %r66 bra $L8; bra $L7; $L6: .loc 1 154 8 ld.s32 %r45,[%r55+8]; $L5: .loc 1 156 9 ld.u64 %r47,[%r55]; .loc 1 164 15 cvt.s64.s32 %r67,%r44; min.u64 %r23,%r67,%r45; .loc 1 166 29 mov.u32 %r69,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r69; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r71,[%value_in]; } .loc 1 167 10 setp.eq.u64 %r72,%r71,0; @ %r72 bra $L9; .loc 1 169 8 add.u64 %r49,%r71,1; .loc 1 169 14 sub.u64 %r28,%r49,%r47; .loc 1 170 11 cvt.u32.u64 %r73,%r28; ld.u32 %r75,[%r55+8]; sub.u32 %r74,%r75,%r73; st.u32 [%r55+8],%r74; .loc 1 171 11 st.u64 [%r55],%r49; .loc 1 172 11 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r79,[%value_in]; } .loc 1 173 11 add.u64 %r80,%r46,%r28; mov.u32 %r81,0; st.u8 [%r80],%r81; .loc 1 175 11 mov.u64 %r51,%r53; bra $L1; $L9: .loc 1 177 14 cvt.u32.u64 %r37,%r23; ld.u32 %r83,[%r55+8]; sub.u32 %r82,%r83,%r37; st.u32 [%r55+8],%r82; .loc 1 178 14 ld.u64 %r85,[%r55]; add.u64 %r84,%r85,%r23; st.u64 [%r55],%r84; .loc 1 179 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r89,[%value_in]; } .loc 1 180 9 add.u64 %r46,%r46,%r23; .loc 1 182 13 sub.u32 %r44,%r44,%r37; .loc 1 182 21 setp.ne.u32 %r90,%r44,0; @ %r90 bra $L10; $L8: .loc 1 183 6 mov.u32 %r91,0; st.u8 [%r46],%r91; .loc 1 185 10 mov.u64 %r51,%r53; $L1: .loc 1 186 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fgets .visible .func (.param .u64 %value_out) fgets (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 195 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_fgets_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 196 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-fileno.o/ 0 0 0 644 1317 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fileno .visible .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/fileno.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fileno .visible .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u16 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; mov.u64 %r28,%ar0; .loc 1 69 3 ld.global.u64 %r26,[_impure_ptr]; setp.eq.u64 %r29,%r26,0; @ %r29 bra $L2; ld.u32 %r30,[%r26+80]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call __sinit,(%out_arg1); } $L2: .loc 1 71 6 ld.u16 %r33,[%r28+16]; setp.eq.u16 %r34,%r33,0; @ %r34 bra $L3; .loc 1 72 12 ld.s16 %r27,[%r28+18]; bra $L1; $L3: .loc 1 76 22 ld.global.u64 %r35,[_impure_ptr]; mov.u32 %r36,9; st.u32 [%r35],%r36; .loc 1 75 14 mov.u32 %r27,-1; $L1: .loc 1 80 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-findfp.o/ 0 0 0 644 15643 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: __fp_lock .func (.param .u32 %value_out) __fp_lock (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/findfp.c" // BEGIN GLOBAL FUNCTION DECL: _cleanup_r .visible .func _cleanup_r (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: __fp_unlock .func (.param .u32 %value_out) __fp_unlock (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: __sinit$part$0 .func __sinit$part$0 (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfmoreglue .visible .func (.param .u64 %value_out) __sfmoreglue (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sfp .visible .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _cleanup .visible .func _cleanup; // BEGIN GLOBAL FUNCTION DECL: __sinit .visible .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .visible .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .visible .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DECL: __sinit_lock_acquire .visible .func __sinit_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sinit_lock_release .visible .func __sinit_lock_release; // BEGIN GLOBAL FUNCTION DECL: __fp_lock_all .visible .func __fp_lock_all; // BEGIN GLOBAL FUNCTION DECL: __fp_unlock_all .visible .func __fp_unlock_all; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fclose_r .extern .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fwalk_reent .extern .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fwalk .extern .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DEF: __sf .visible .global .align 8 .u64 __sf[66]; // BEGIN FUNCTION DEF: __fp_lock .func (.param .u32 %value_out) __fp_lock (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 338 10 mov.u32 %value,0; .loc 1 339 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _cleanup_r .visible .func _cleanup_r (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u32 %r40; .reg .u64 %r42; .reg .u32 %r43; mov.u64 %r25,%ar0; .loc 1 222 10 ld.u64 %r22,[%r25+8]; .loc 1 222 6 cvta.global.u64 %r26,__sf; setp.eq.u64 %r27,%r22,%r26; @ %r27 bra $L3; .loc 1 223 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } $L3: .loc 1 224 10 ld.u64 %r23,[%r25+16]; .loc 1 224 6 cvta.global.u64 %r31,__sf+176; setp.eq.u64 %r32,%r23,%r31; @ %r32 bra $L4; .loc 1 225 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } $L4: .loc 1 226 10 ld.u64 %r24,[%r25+24]; .loc 1 226 6 cvta.global.u64 %r36,__sf+352; setp.eq.u64 %r37,%r24,%r36; @ %r37 bra $L5; .loc 1 227 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r40,[%value_in]; } $L5: .loc 1 229 10 mov.u64 %r42,_fclose_r; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),_fwalk_reent,(%out_arg1,%out_arg2); ld.param.u32 %r43,[%value_in]; } .loc 1 230 1 ret; } // BEGIN FUNCTION DEF: __fp_unlock .func (.param .u32 %value_out) __fp_unlock (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; $LFB28: mov.u32 %value,0; st.param.u32 [%value_out],%value; ret; $LFE28: } // BEGIN FUNCTION DEF: __sinit$part$0 .func __sinit$part$0 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .u32 %r33; .reg .u32 %r39; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r58; .reg .u64 %r60; .reg .u32 %r68; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u32 %r97; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r110; .reg .u32 %r119; mov.u64 %r24,%ar0; .loc 1 256 16 mov.u64 %r25,_cleanup_r; st.u64 [%r24+88],%r25; .loc 1 258 20 mov.u64 %r26,0; st.u64 [%r24+1312],%r26; .loc 1 284 14 cvta.global.u64 %r27,__sf; .loc 1 284 6 ld.u64 %r28,[%r27+48]; setp.ne.u64 %r29,%r28,0; @ %r29 bra $L8; .loc 1 285 18 ld.const.u64 %r23,[_global_impure_ptr]; .loc 1 285 35 mov.u32 %r30,3; st.u32 [%r23+1320],%r30; .loc 1 286 34 st.u64 [%r23+1328],%r27; .loc 1 55 16 mov.u32 %r33,0; st.u32 [%r27+172],%r33; .loc 1 51 11 st.u64 [%r27],%r28; .loc 1 52 11 st.u64 [%r27+8],%r28; .loc 1 54 15 mov.u32 %r39,4; st.u32 [%r27+16],%r39; .loc 1 57 18 st.u64 [%r27+24],%r28; .loc 1 58 18 st.u32 [%r27+32],%r33; .loc 1 59 17 st.u32 [%r27+40],%r33; .loc 1 60 3 add.u64 %r49,%r27,164; mov.u64 %r48,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r50,[%value_in]; } .loc 1 61 16 st.u64 [%r27+48],%r27; .loc 1 62 14 mov.u64 %r54,__sread; st.u64 [%r27+56],%r54; .loc 1 64 15 mov.u64 %r56,__swrite; st.u64 [%r27+64],%r56; .loc 1 70 14 mov.u64 %r58,__sseek; st.u64 [%r27+72],%r58; .loc 1 72 15 mov.u64 %r60,__sclose; st.u64 [%r27+80],%r60; .loc 1 55 16 st.u32 [%r27+348],%r33; .loc 1 51 11 st.u64 [%r27+176],%r28; .loc 1 52 11 st.u64 [%r27+184],%r28; .loc 1 54 15 mov.u32 %r68,65545; st.u32 [%r27+192],%r68; .loc 1 57 18 st.u64 [%r27+200],%r28; .loc 1 58 18 st.u32 [%r27+208],%r33; .loc 1 59 17 st.u32 [%r27+216],%r33; .loc 1 60 3 add.u64 %r78,%r27,340; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r79,[%value_in]; } .loc 1 61 16 add.u64 %r81,%r27,176; st.u64 [%r27+224],%r81; .loc 1 62 14 st.u64 [%r27+232],%r54; .loc 1 64 15 st.u64 [%r27+240],%r56; .loc 1 70 14 st.u64 [%r27+248],%r58; .loc 1 72 15 st.u64 [%r27+256],%r60; .loc 1 55 16 st.u32 [%r27+524],%r33; .loc 1 51 11 st.u64 [%r27+352],%r28; .loc 1 52 11 st.u64 [%r27+360],%r28; .loc 1 54 15 mov.u32 %r97,131090; st.u32 [%r27+368],%r97; .loc 1 57 18 st.u64 [%r27+376],%r28; .loc 1 58 18 st.u32 [%r27+384],%r33; .loc 1 59 17 st.u32 [%r27+392],%r33; .loc 1 60 3 add.u64 %r107,%r27,516; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r107; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r108,[%value_in]; } .loc 1 61 16 add.u64 %r110,%r27,352; st.u64 [%r27+400],%r110; .loc 1 62 14 st.u64 [%r27+408],%r54; .loc 1 64 15 st.u64 [%r27+416],%r56; .loc 1 70 14 st.u64 [%r27+424],%r58; .loc 1 72 15 st.u64 [%r27+432],%r60; $L8: .loc 1 297 17 mov.u32 %r119,1; st.u32 [%r24+80],%r119; .loc 1 300 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sfmoreglue .visible .func (.param .u64 %value_out) __sfmoreglue (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u64 %r41; .reg .u64 %r42; mov.u64 %r28,%ar0; mov.u32 %r29,%ar1; .loc 1 132 36 add.u32 %r30,%r29,-1; .loc 1 132 41 mov.u32 %r31,176; mul.wide.s32 %r23,%r30,%r31; .loc 1 132 5 add.u64 %r34,%r23,200; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r35,[%value_in]; } .loc 1 133 6 setp.eq.u64 %r36,%r35,0; @ %r36 bra $L9; .loc 1 135 17 mov.u64 %r37,0; st.u64 [%r35],%r37; .loc 1 136 18 st.u32 [%r35+8],%r29; .loc 1 137 19 add.u64 %r25,%r35,24; .loc 1 137 17 st.u64 [%r35+16],%r25; .loc 1 138 3 add.u64 %r41,%r23,176; mov.u32 %r39,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r41; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r42,[%value_in]; } $L9: .loc 1 140 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sfp .visible .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r69; .reg .pred %r70; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .u32 %r76; .reg .u32 %r78; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r82; mov.u64 %r42,%ar0; .loc 1 155 21 ld.const.u64 %r22,[_global_impure_ptr]; .loc 1 155 6 ld.u32 %r43,[%r22+80]; setp.ne.u32 %r44,%r43,0; @ %r44 bra $L15; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call __sinit$part$0,(%out_arg1); } $L15: .loc 1 157 10 add.u64 %r28,%r22,1312; $L22: .loc 1 159 15 ld.u64 %r29,[%r28+16]; .loc 1 159 29 ld.u32 %r30,[%r28+8]; .loc 1 159 46 setp.le.s32 %r46,%r30,0; @ %r46 bra $L16; add.u64 %r31,%r29,16; add.u32 %r47,%r30,-1; cvt.u64.u32 %r48,%r47; add.u64 %r50,%r29,192; mad.lo.u64 %r40,%r48,176,%r50; $L19: add.u64 %r41,%r31,-16; .loc 1 160 5 ld.u16 %r51,[%r31]; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L17; .loc 1 173 15 mov.u32 %r53,0; st.u32 [%r41+172],%r53; .loc 1 179 10 mov.u64 %r54,0; st.u64 [%r41],%r54; .loc 1 181 10 st.u64 [%r41+8],%r54; .loc 1 172 14 mov.u32 %r56,-65535; st.u32 [%r41+16],%r56; .loc 1 182 17 st.u64 [%r41+24],%r54; .loc 1 183 17 st.u32 [%r41+32],%r53; .loc 1 184 16 st.u32 [%r41+40],%r53; .loc 1 185 11 add.u64 %r63,%r31,148; .loc 1 185 3 mov.u64 %r62,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r62; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r64,[%value_in]; } .loc 1 187 17 st.u64 [%r41+88],%r54; .loc 1 188 17 st.u32 [%r41+96],%r53; .loc 1 189 17 st.u64 [%r41+120],%r54; .loc 1 190 17 st.u32 [%r41+128],%r53; .loc 1 192 10 bra $L14; $L17: .loc 1 159 46 add.u64 %r31,%r31,176; setp.ne.u64 %r69,%r31,%r40; @ %r69 bra $L19; $L16: .loc 1 162 12 ld.u64 %r25,[%r28]; .loc 1 162 10 setp.ne.u64 %r70,%r25,0; @ %r70 bra $L20; .loc 1 132 5 mov.u64 %r72,728; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r72; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r73,[%value_in]; } mov.u64 %r41,%r73; .loc 1 133 6 setp.ne.u64 %r74,%r41,0; @ %r74 bra $L21; .loc 1 163 14 st.u64 [%r28],%r41; .loc 1 167 13 mov.u32 %r76,12; st.u32 [%r42],%r76; .loc 1 168 10 bra $L14; $L21: .loc 1 135 17 st.u64 [%r73],%r25; .loc 1 136 18 mov.u32 %r78,4; st.u32 [%r73+8],%r78; .loc 1 137 19 add.u64 %r35,%r73,24; .loc 1 137 17 st.u64 [%r73+16],%r35; .loc 1 138 3 mov.u64 %r81,704; mov.u32 %r80,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r80; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r81; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r82,[%value_in]; } .loc 1 139 10 mov.u64 %r25,%r73; .loc 1 163 14 st.u64 [%r28],%r25; $L20: .loc 1 157 40 mov.u64 %r28,%r25; .loc 1 159 25 bra $L22; $L14: .loc 1 193 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _cleanup .visible .func _cleanup { .reg .u64 %r24; .loc 1 236 3 ld.const.u64 %r24,[_global_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call _cleanup_r,(%out_arg1); } .loc 1 237 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sinit .visible .func __sinit (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; mov.u64 %r23,%ar0; .loc 1 249 6 ld.u32 %r24,[%r23+80]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L25; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit$part$0,(%out_arg1); } $L25: .loc 1 300 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sfp_lock_acquire .visible .func __sfp_lock_acquire { .loc 1 311 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sfp_lock_release .visible .func __sfp_lock_release { $LFB22: ret; $LFE22: } // BEGIN GLOBAL FUNCTION DEF: __sinit_lock_acquire .visible .func __sinit_lock_acquire { $LFB24: ret; $LFE24: } // BEGIN GLOBAL FUNCTION DEF: __sinit_lock_release .visible .func __sinit_lock_release { $LFB26: ret; $LFE26: } // BEGIN GLOBAL FUNCTION DEF: __fp_lock_all .visible .func __fp_lock_all { .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .loc 1 356 10 ld.global.u64 %r25,[_impure_ptr]; mov.u64 %r24,__fp_lock; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fwalk,(%out_arg1,%out_arg2); ld.param.u32 %r26,[%value_in]; } .loc 1 357 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __fp_unlock_all .visible .func __fp_unlock_all { .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .loc 1 362 10 ld.global.u64 %r25,[_impure_ptr]; mov.u64 %r24,__fp_unlock; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fwalk,(%out_arg1,%out_arg2); ld.param.u32 %r26,[%value_in]; } .loc 1 365 1 ret; } lib_a-fini.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /306 0 0 0 644 2548 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fiprintf_r .visible .func (.param .u32 %value_out) _fiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/fiprintf.c" // BEGIN GLOBAL FUNCTION DECL: fiprintf .visible .func (.param .u32 %value_out) fiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .extern .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fiprintf_r .visible .func (.param .u32 %value_out) _fiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 33 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fiprintf .visible .func (.param .u32 %value_out) fiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 48 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 51 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-fiscanf.o/0 0 0 644 2543 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fiscanf .visible .func (.param .u32 %value_out) fiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fiscanf.c" // BEGIN GLOBAL FUNCTION DECL: _fiscanf_r .visible .func (.param .u32 %value_out) _fiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .extern .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: fiscanf .visible .func (.param .u32 %value_out) fiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 33 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fiscanf_r .visible .func (.param .u32 %value_out) _fiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 47 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 50 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-flags.o/ 0 0 0 644 2271 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sflags .visible .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/flags.c" // BEGIN GLOBAL FUNCTION DEF: __sflags .visible .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .pred %r37; .reg .pred %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .pred %r42; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r47; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 39 15 ld.s8 %r22,[%r32]; .loc 1 39 3 cvt.u16.u32 %r34,%r22; setp.eq.u16 %r35,%r34,114; @ %r35 bra $L9; setp.eq.u16 %r37,%r34,119; @ %r37 bra $L10; setp.eq.u16 %r39,%r34,97; @ %r39 bra $L11; .loc 1 59 19 mov.u32 %r40,22; st.u32 [%r31],%r40; .loc 1 60 14 mov.u32 %r30,0; bra $L1; $L7: .loc 1 64 7 cvt.u16.u32 %r41,%r25; setp.eq.u16 %r42,%r41,43; @ %r42 bra $L4; setp.eq.u16 %r44,%r41,120; @ %r44 bra $L5; bra $L6; $L4: .loc 1 67 35 and.b32 %r23,%r30,-29; .loc 1 67 8 or.b32 %r30,%r23,16; .loc 1 68 11 and.b32 %r24,%r27,-4; .loc 1 68 6 or.b32 %r27,%r24,2; .loc 1 69 4 bra $L6; $L5: .loc 1 86 6 or.b32 %r27,%r27,2048; .loc 1 87 4 bra $L6; $L9: .loc 1 44 9 mov.u32 %r29,0; .loc 1 43 9 mov.u32 %r27,%r29; .loc 1 42 11 mov.u32 %r30,4; bra $L2; $L10: .loc 1 39 3 mov.u32 %r29,1536; mov.u32 %r27,1; mov.u32 %r30,8; bra $L2; $L11: .loc 1 56 9 mov.u32 %r29,520; .loc 1 55 9 mov.u32 %r27,1; .loc 1 54 11 mov.u32 %r30,264; $L2: .loc 1 62 10 add.u64 %r28,%r32,1; ld.s8 %r25,[%r32+1]; setp.ne.u32 %r45,%r25,0; @ %r45 bra $L7; bra $L8; $L6: add.u64 %r28,%r28,1; ld.s8 %r25,[%r28]; setp.ne.u32 %r46,%r25,0; @ %r46 bra $L7; $L8: .loc 1 92 13 or.b32 %r47,%r29,%r27; .loc 1 92 9 st.u32 [%r33],%r47; $L1: .loc 1 94 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-fls.o/ 0 0 0 644 759 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fls .visible .func (.param .u32 %value_out) fls (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/string/fls.c" // BEGIN GLOBAL FUNCTION DEF: fls .visible .func (.param .u32 %value_out) fls (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .u32 %r29; mov.u32 %r27,%ar0; .loc 1 34 5 setp.eq.u32 %r28,%r27,0; @ %r28 bra $L3; .loc 1 37 33 clz.b32 %r23,%r27; .loc 1 37 31 mov.u32 %r29,32; sub.u32 %r26,%r29,%r23; bra $L1; $L3: .loc 1 35 10 mov.u32 %r26,%r27; $L1: .loc 1 38 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-flsl.o/ 0 0 0 644 761 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: flsl .visible .func (.param .u32 %value_out) flsl (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/flsl.c" // BEGIN GLOBAL FUNCTION DEF: flsl .visible .func (.param .u32 %value_out) flsl (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; mov.u64 %r27,%ar0; .loc 1 34 5 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L3; .loc 1 37 33 clz.b64 %r23,%r27; .loc 1 37 31 mov.u32 %r29,64; sub.u32 %r26,%r29,%r23; bra $L1; $L3: .loc 1 35 10 mov.u32 %r26,0; $L1: .loc 1 38 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-flsll.o/ 0 0 0 644 766 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: flsll .visible .func (.param .u32 %value_out) flsll (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/flsll.c" // BEGIN GLOBAL FUNCTION DEF: flsll .visible .func (.param .u32 %value_out) flsll (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; mov.u64 %r27,%ar0; .loc 1 34 5 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L3; .loc 1 37 33 clz.b64 %r23,%r27; .loc 1 37 31 mov.u32 %r29,64; sub.u32 %r26,%r29,%r23; bra $L1; $L3: .loc 1 35 10 mov.u32 %r26,0; $L1: .loc 1 38 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-fopen.o/ 0 0 0 644 5659 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fopen_r .visible .func (.param .u64 %value_out) _fopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fopen.c" // BEGIN GLOBAL FUNCTION DECL: fopen .visible .func (.param .u64 %value_out) fopen (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sflags .extern .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfp .extern .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .extern .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .extern .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fseek_r .extern .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fopen_r .visible .func (.param .u64 %value_out) _fopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .pred %r39; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u16 %r53; .reg .pred %r55; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 124 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r35,[%value_in]; } .loc 1 124 6 setp.ne.u32 %r36,%r35,0; @ %r36 bra $L2; $L4: .loc 1 125 12 mov.u64 %r28,0; bra $L1; $L2: .loc 1 126 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call (%value_in),__sfp,(%out_arg1); ld.param.u64 %r38,[%value_in]; } mov.u64 %r28,%r38; .loc 1 126 6 setp.eq.u64 %r39,%r28,0; @ %r39 bra $L4; .loc 1 129 12 mov.u32 %r43,438; ld.u32 %r42,[%frame]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r42; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r43; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } .loc 1 129 6 setp.ge.s32 %r45,%r44,0; @ %r45 bra $L5; .loc 1 131 7 { call __sfp_lock_acquire; } .loc 1 132 18 mov.u16 %r46,0; st.u16 [%r28+16],%r46; .loc 1 136 7 { call __sfp_lock_release; } .loc 1 137 14 mov.u64 %r28,0; bra $L1; $L5: .loc 1 142 13 st.u16 [%r28+18],%r44; .loc 1 143 14 cvt.u16.u32 %r47,%r35; st.u16 [%r28+16],%r47; .loc 1 144 15 st.u64 [%r28+48],%r28; .loc 1 145 13 mov.u64 %r49,__sread; st.u64 [%r28+56],%r49; .loc 1 146 14 mov.u64 %r50,__swrite; st.u64 [%r28+64],%r50; .loc 1 147 13 mov.u64 %r51,__sseek; st.u64 [%r28+72],%r51; .loc 1 148 14 mov.u64 %r52,__sclose; st.u64 [%r28+80],%r52; .loc 1 150 6 and.b16 %r53,%r47,256; setp.eq.u16 %r55,%r53,0; @ %r55 bra $L1; .loc 1 151 5 mov.u32 %r59,2; mov.u64 %r58,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r58; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r59; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r60,[%value_in]; } $L1: .loc 1 160 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fopen .visible .func (.param .u64 %value_out) fopen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 168 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_fopen_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 169 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-fprintf.o/0 0 0 644 2535 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fprintf_r .visible .func (.param .u32 %value_out) _fprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/fprintf.c" // BEGIN GLOBAL FUNCTION DECL: fprintf .visible .func (.param .u32 %value_out) fprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfprintf_r .extern .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fprintf_r .visible .func (.param .u32 %value_out) _fprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 33 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fprintf .visible .func (.param .u32 %value_out) fprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 54 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 57 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-fputc.o/ 0 0 0 644 2788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fputc_r .visible .func (.param .u32 %value_out) _fputc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fputc.c" // BEGIN GLOBAL FUNCTION DECL: fputc .visible .func (.param .u32 %value_out) fputc (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _putc_r .extern .func (.param .u32 %value_out) _putc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fputc_r .visible .func (.param .u32 %value_out) _fputc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r34; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 95 3 setp.eq.u64 %r27,%r24,0; @ %r27 bra $L2; ld.u32 %r28,[%r24+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L2: .loc 1 97 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),_putc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r34,[%value_in]; } .loc 1 100 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fputc .visible .func (.param .u32 %value_out) fputc (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r34; mov.u32 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 109 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 111 3 setp.eq.u64 %r27,%r23,0; @ %r27 bra $L7; ld.u32 %r28,[%r23+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L7; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L7: .loc 1 113 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),_putc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r34,[%value_in]; } .loc 1 119 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } lib_a-fputs.o/ 0 0 0 644 3517 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fputs_r .visible .func (.param .u32 %value_out) _fputs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fputs.c" // BEGIN GLOBAL FUNCTION DECL: fputs .visible .func (.param .u32 %value_out) fputs (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .extern .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fputs_r .visible .func (.param .u32 %value_out) _fputs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u16 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u16 %r44; .reg .u32 %r46; .reg .u32 %r50; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 98 16 st.u64 [%frame+24],%r31; .loc 1 99 33 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r34,[%value_in]; } .loc 1 99 31 st.u64 [%frame+16],%r34; .loc 1 99 15 st.u64 [%frame+32],%r34; .loc 1 100 15 add.u64 %r35,%frame,24; st.u64 [%frame],%r35; .loc 1 101 18 mov.u32 %r36,1; st.u32 [%frame+8],%r36; .loc 1 103 3 setp.eq.u64 %r37,%r30,0; @ %r37 bra $L2; ld.u32 %r38,[%r30+80]; setp.ne.u32 %r39,%r38,0; @ %r39 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call __sinit,(%out_arg1); } $L2: .loc 1 106 3 ld.u16 %r42,[%r32+16]; and.b16 %r41,%r42,8192; setp.ne.u16 %r43,%r41,0; @ %r43 bra $L3; .loc 1 105 3 ld.u32 %r24,[%r32+172]; .loc 1 106 3 or.b16 %r44,%r42,8192; st.u16 [%r32+16],%r44; and.b32 %r46,%r24,-8193; st.u32 [%r32+172],%r46; $L3: .loc 1 107 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r50,[%value_in]; } .loc 1 133 1 mov.u32 %value,%r50; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fputs .visible .func (.param .u32 %value_out) fputs (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 140 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_fputs_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 141 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-fread.o/ 0 0 0 644 8583 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fread_r .visible .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdio/fread.c" // BEGIN GLOBAL FUNCTION DECL: fread .visible .func (.param .u64 %value_out) fread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fread_r .visible .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r38; .reg .u64 %r42; .reg .u64 %r45; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u16 %r78; .reg .u16 %r79; .reg .pred %r80; .reg .u16 %r81; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .pred %r99; .reg .u64 %r101; .reg .pred %r102; .reg .u64 %r105; .reg .u32 %r108; .reg .u32 %r109; .reg .pred %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .u32 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .pred %r126; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .pred %r137; .reg .u64 %r138; mov.u64 %r68,%ar0; mov.u64 %r69,%ar1; mov.u64 %r70,%ar2; mov.u64 %r71,%ar3; mov.u64 %r72,%ar4; .loc 1 155 14 mul.lo.u64 %r67,%r71,%r70; .loc 1 155 6 setp.eq.u64 %r73,%r67,0; @ %r73 bra $L1; .loc 1 158 3 setp.eq.u64 %r74,%r68,0; @ %r74 bra $L3; ld.u32 %r75,[%r68+80]; setp.ne.u32 %r76,%r75,0; @ %r76 bra $L3; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; call __sinit,(%out_arg1); } $L3: .loc 1 161 3 ld.s16 %r24,[%r72+16]; cvt.u16.u32 %r79,%r24; and.b16 %r78,%r79,8192; setp.ne.u16 %r80,%r78,0; @ %r80 bra $L4; .loc 1 160 3 ld.u32 %r23,[%r72+172]; .loc 1 161 3 or.b16 %r81,%r79,8192; cvt.s32.s16 %r24,%r81; st.u16 [%r72+16],%r81; and.b32 %r84,%r23,-8193; st.u32 [%r72+172],%r84; $L4: .loc 1 162 9 ld.u32 %r66,[%r72+8]; .loc 1 162 6 setp.lt.s32 %r85,%r66,0; @ %r85 bra $L5; .loc 1 173 33 cvt.s64.s32 %r42,%r66; bra $L6; $L5: .loc 1 163 12 mov.u32 %r86,0; st.u32 [%r72+8],%r86; mov.u64 %r42,0; mov.u32 %r66,%r86; $L6: .loc 1 174 45 ld.u64 %r138,[%r72]; .loc 1 170 6 cvt.u16.u32 %r88,%r24; and.b16 %r87,%r88,2; setp.eq.u16 %r89,%r87,0; @ %r89 bra $L16; .loc 1 173 47 min.u64 %r29,%r42,%r67; .loc 1 174 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r93,[%value_in]; } .loc 1 175 14 ld.u64 %r95,[%r72]; add.u64 %r94,%r95,%r29; st.u64 [%r72],%r94; .loc 1 173 11 cvt.u32.u64 %r96,%r29; .loc 1 176 14 ld.u32 %r98,[%r72+8]; sub.u32 %r97,%r98,%r96; st.u32 [%r72+8],%r97; .loc 1 178 13 sub.u64 %r25,%r67,%r29; .loc 1 181 11 ld.u64 %r34,[%r72+88]; .loc 1 181 10 setp.eq.u64 %r99,%r34,0; @ ! %r99 bra $L26; setp.ne.u64 %r137,%r25,0; bra $L8; $L26: .loc 1 181 22 setp.ne.u64 %r137,%r25,0; @ %r137 bra $L9; $L13: .loc 1 256 10 mov.u64 %r67,%r71; bra $L1; $L9: .loc 1 182 2 add.u64 %r101,%r72,116; setp.eq.u64 %r102,%r34,%r101; @ %r102 bra $L10; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call _free_r,(%out_arg1,%out_arg2); } $L10: mov.u64 %r105,0; st.u64 [%r72+88],%r105; bra $L8; $L12: .loc 1 189 10 ld.u64 %r58,[%r72+24]; .loc 1 190 11 ld.u64 %r59,[%r72]; .loc 1 191 8 ld.u32 %r60,[%r72+32]; .loc 1 193 18 st.u64 [%r72+24],%r53; .loc 1 194 18 st.u32 [%r72+32],%r25; .loc 1 195 11 st.u64 [%r72],%r53; .loc 1 196 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r72; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r108,[%value_in]; } .loc 1 198 18 st.u64 [%r72+24],%r58; .loc 1 199 18 st.u32 [%r72+32],%r60; .loc 1 200 11 st.u64 [%r72],%r59; .loc 1 201 15 ld.s32 %r38,[%r72+8]; .loc 1 201 10 sub.u64 %r62,%r25,%r38; .loc 1 202 6 add.u64 %r53,%r53,%r38; .loc 1 203 11 mov.u32 %r109,0; st.u32 [%r72+8],%r109; .loc 1 204 7 setp.eq.u32 %r110,%r108,0; @ %r110 bra $L17; .loc 1 214 22 add.u64 %r111,%r38,%r67; sub.u64 %r112,%r111,%r25; .loc 1 214 31 div.u64 %r67,%r112,%r70; bra $L1; $L8: .loc 1 177 9 add.u64 %r53,%r69,%r29; bra $L11; $L17: .loc 1 201 10 mov.u64 %r25,%r62; setp.ne.u64 %r137,%r25,0; $L11: .loc 1 185 20 @ %r137 bra $L12; bra $L13; $L15: .loc 1 223 11 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r117,[%value_in]; } .loc 1 224 11 ld.u64 %r119,[%r72]; add.u64 %r118,%r119,%r45; st.u64 [%r72],%r118; .loc 1 226 6 add.u64 %r69,%r69,%r45; .loc 1 227 10 sub.u64 %r56,%r26,%r45; .loc 1 228 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r72; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r122,[%value_in]; } .loc 1 228 7 setp.ne.u32 %r123,%r122,0; @ %r123 bra $L14; .loc 1 221 25 ld.u32 %r66,[%r72+8]; .loc 1 227 10 mov.u64 %r26,%r56; ld.u64 %r138,[%r72]; bra $L7; $L14: .loc 1 239 22 add.u64 %r124,%r45,%r67; sub.u64 %r125,%r124,%r26; .loc 1 239 31 div.u64 %r67,%r125,%r70; bra $L1; $L16: mov.u64 %r26,%r67; $L7: .loc 1 221 25 cvt.s64.s32 %r45,%r66; .loc 1 221 20 setp.gt.u64 %r126,%r26,%r45; @ %r126 bra $L15; .loc 1 242 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r130,[%value_in]; } .loc 1 243 14 cvt.u32.u64 %r131,%r26; ld.u32 %r133,[%r72+8]; sub.u32 %r132,%r133,%r131; st.u32 [%r72+8],%r132; .loc 1 244 14 ld.u64 %r135,[%r72]; add.u64 %r134,%r135,%r26; st.u64 [%r72],%r134; .loc 1 256 10 mov.u64 %r67,%r71; $L1: .loc 1 257 1 mov.u64 %value,%r67; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fread .visible .func (.param .u64 %value_out) fread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 266 11 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_fread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 267 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } lib_a-free.o/ 0 0 0 644 712 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .visible .func __nvptx_free (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/machine/nvptx/free.c" // BEGIN GLOBAL FUNCTION DECL: free .extern .func free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __nvptx_free .visible .func __nvptx_free (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .pred %r24; .reg .u64 %r26; mov.u64 %r23,%ar0; .loc 1 24 6 setp.eq.u64 %r24,%r23,0; @ %r24 bra $L1; .loc 1 25 5 add.u64 %r26,%r23,-8; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call free,(%out_arg1); } $L1: .loc 1 26 1 ret; } lib_a-freer.o/ 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-freopen.o/0 0 0 644 10652 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _freopen_r .visible .func (.param .u64 %value_out) _freopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/freopen.c" // BEGIN GLOBAL FUNCTION DECL: freopen .visible .func (.param .u64 %value_out) freopen (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sflags .extern .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _fclose_r .extern .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .extern .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .extern .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _freopen_r .visible .func (.param .u64 %value_out) _freopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r30; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r45; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r63; .reg .pred %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u32 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r77; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .pred %r85; .reg .u32 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .pred %r92; .reg .u64 %r95; .reg .u64 %r96; .reg .u32 %r99; .reg .pred %r101; .reg .u64 %r102; .reg .pred %r103; .reg .u64 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u64 %r111; .reg .u32 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r121; .reg .pred %r122; .reg .u16 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .pred %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u64 %r132; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; mov.u64 %r50,%ar2; mov.u64 %r51,%ar3; .loc 1 87 3 setp.eq.u64 %r52,%r48,0; @ %r52 bra $L2; ld.u32 %r53,[%r48+80]; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call __sinit,(%out_arg1); } $L2: .loc 1 99 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r50; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r59,[%value_in]; } .loc 1 99 6 setp.ne.u32 %r60,%r59,0; @ %r60 bra $L3; .loc 1 106 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } .loc 1 107 14 mov.u64 %r47,0; bra $L1; $L3: .loc 1 118 9 ld.s16 %r23,[%r51+16]; .loc 1 118 6 setp.ne.u32 %r64,%r23,0; @ %r64 bra $L5; .loc 1 119 16 mov.u16 %r65,32; st.u16 [%r51+16],%r65; .loc 1 137 6 setp.eq.u64 %r66,%r49,0; @ %r66 bra $L6; bra $L7; $L5: .loc 1 122 10 cvt.u16.u32 %r68,%r23; and.b16 %r67,%r68,8; setp.eq.u16 %r69,%r67,0; @ %r69 bra $L8; .loc 1 123 2 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r72,[%value_in]; } $L8: .loc 1 128 13 ld.u64 %r25,[%r51+80]; .loc 1 128 10 setp.eq.u64 %r73,%r25,0; @ %r73 bra $L9; .loc 1 129 2 ld.u64 %r132,[%r51+48]; .loc 1 128 30 setp.eq.u64 %r74,%r49,0; @ %r74 bra $L10; .loc 1 129 2 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r132; call (%value_in),%r25,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r77,[%value_in]; } $L7: .loc 1 139 11 mov.u32 %r81,438; ld.u32 %r80,[%frame]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r80; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r82,[%value_in]; } mov.u32 %r38,%r82; .loc 1 140 9 ld.u32 %r39,[%r48]; ld.u16 %r84,[%r51+16]; and.b16 %r83,%r84,128; cvt.s32.s16 %r45,%r83; bra $L11; $L6: .loc 1 174 10 ld.u64 %r25,[%r51+80]; .loc 1 174 7 setp.eq.u64 %r85,%r25,0; @ %r85 bra $L18; ld.u64 %r132,[%r51+48]; $L10: .loc 1 175 6 { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r132; call (%value_in),%r25,(%out_arg1,%out_arg2),$LCT1; ld.param.u32 %r89,[%value_in]; } ld.u16 %r91,[%r51+16]; and.b16 %r90,%r91,128; cvt.s32.s16 %r45,%r90; .loc 1 173 6 mov.u32 %r39,9; .loc 1 159 9 mov.u32 %r38,-1; $L11: .loc 1 186 6 setp.eq.u32 %r92,%r45,0; @ %r92 bra $L12; .loc 1 187 5 ld.u64 %r95,[%r51+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r95; call _free_r,(%out_arg1,%out_arg2); } bra $L12; $L18: .loc 1 173 6 mov.u32 %r39,9; .loc 1 159 9 mov.u32 %r38,-1; $L12: .loc 1 190 10 mov.u64 %r96,0; st.u64 [%r51],%r96; .loc 1 189 10 st.u64 [%r51+8],%r96; .loc 1 191 17 st.u64 [%r51+24],%r96; .loc 1 192 17 mov.u32 %r99,0; st.u32 [%r51+32],%r99; .loc 1 193 16 st.u32 [%r51+40],%r99; .loc 1 194 7 ld.u64 %r28,[%r51+88]; .loc 1 194 6 setp.eq.u64 %r101,%r28,0; @ %r101 bra $L13; .loc 1 195 5 add.u64 %r102,%r51,116; setp.eq.u64 %r103,%r28,%r102; @ %r103 bra $L14; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call _free_r,(%out_arg1,%out_arg2); } $L14: mov.u64 %r106,0; st.u64 [%r51+88],%r106; $L13: .loc 1 196 17 mov.u32 %r107,0; st.u32 [%r51+96],%r107; .loc 1 197 7 ld.u64 %r30,[%r51+120]; .loc 1 197 6 setp.eq.u64 %r108,%r30,0; @ %r108 bra $L15; .loc 1 198 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r111,0; st.u64 [%r51+120],%r111; $L15: .loc 1 199 17 mov.u32 %r112,0; st.u32 [%r51+128],%r112; .loc 1 200 14 ld.u16 %r114,[%r51+16]; and.b16 %r113,%r114,-8193; st.u16 [%r51+16],%r113; .loc 1 201 15 ld.u32 %r116,[%r51+172]; and.b32 %r115,%r116,-8193; st.u32 [%r51+172],%r115; .loc 1 202 11 add.u64 %r120,%r51,164; .loc 1 202 3 mov.u64 %r119,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r120; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r112; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r119; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r121,[%value_in]; } .loc 1 204 6 setp.ge.s32 %r122,%r38,0; @ %r122 bra $L16; .loc 1 206 7 { call __sfp_lock_acquire; } .loc 1 207 18 mov.u16 %r123,0; st.u16 [%r51+16],%r123; .loc 1 208 19 st.u32 [%r48],%r39; .loc 1 214 7 { call __sfp_lock_release; } .loc 1 218 14 mov.u64 %r47,0; bra $L1; $L16: .loc 1 221 14 st.u16 [%r51+16],%r59; .loc 1 222 13 st.u16 [%r51+18],%r38; .loc 1 223 15 st.u64 [%r51+48],%r51; .loc 1 224 13 mov.u64 %r124,__sread; st.u64 [%r51+56],%r124; .loc 1 225 14 mov.u64 %r125,__swrite; st.u64 [%r51+64],%r125; .loc 1 226 13 mov.u64 %r126,__sseek; st.u64 [%r51+72],%r126; .loc 1 227 14 mov.u64 %r127,__sclose; st.u64 [%r51+80],%r127; .loc 1 239 10 mov.u64 %r47,%r51; bra $L1; $L9: .loc 1 137 6 setp.ne.u64 %r129,%r49,0; @ %r129 bra $L7; ld.u16 %r131,[%r51+16]; and.b16 %r130,%r131,128; cvt.s32.s16 %r45,%r130; .loc 1 173 6 mov.u32 %r39,9; .loc 1 159 9 mov.u32 %r38,-1; bra $L11; $L1: .loc 1 240 1 mov.u64 %value,%r47; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: freopen .visible .func (.param .u64 %value_out) freopen (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 249 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_freopen_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 250 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-fscanf.o/ 0 0 0 644 2522 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fscanf .visible .func (.param .u32 %value_out) fscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fscanf.c" // BEGIN GLOBAL FUNCTION DECL: _fscanf_r .visible .func (.param .u32 %value_out) _fscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfscanf_r .extern .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: fscanf .visible .func (.param .u32 %value_out) fscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 33 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fscanf_r .visible .func (.param .u32 %value_out) _fscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 53 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 56 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-fseek.o/ 0 0 0 644 2576 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fseek_r .visible .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/fseek.c" // BEGIN GLOBAL FUNCTION DECL: fseek .visible .func (.param .u32 %value_out) fseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fseeko_r .extern .func (.param .u32 %value_out) _fseeko_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fseek_r .visible .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 89 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_fseeko_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r31,[%value_in]; } .loc 1 90 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fseek .visible .func (.param .u32 %value_out) fseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 89 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_fseeko_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 100 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-fsetpos.o/0 0 0 644 2593 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fsetpos_r .visible .func (.param .u32 %value_out) _fsetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fsetpos.c" // BEGIN GLOBAL FUNCTION DECL: fsetpos .visible .func (.param .u32 %value_out) fsetpos (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fseek_r .extern .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fsetpos_r .visible .func (.param .u32 %value_out) _fsetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r36; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 66 11 mov.u32 %r32,0; ld.u64 %r31,[%r28]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 68 6 set.u32.ne.u32 %r36,%r33,0; neg.s32 %value,%r36; .loc 1 71 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fsetpos .visible .func (.param .u32 %value_out) fsetpos (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r37; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 66 11 ld.global.u64 %r33,[_impure_ptr]; mov.u32 %r32,0; ld.u64 %r31,[%r28]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r34,[%value_in]; } .loc 1 68 6 set.u32.ne.u32 %r37,%r34,0; neg.s32 %value,%r37; .loc 1 80 1 st.param.u32 [%value_out],%value; ret; } lib_a-fstatr.o/ 0 0 0 644 1518 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fstat_r .visible .func (.param .u32 %value_out) _fstat_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/reent/fstatr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: fstat .extern .func (.param .u32 %value_out) fstat (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fstat_r .visible .func (.param .u32 %value_out) _fstat_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 54 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 55 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),fstat,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 55 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 55 49 ld.global.u32 %r22,[errno]; .loc 1 55 40 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 56 17 st.u32 [%r24],%r22; $L1: .loc 1 58 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-ftell.o/ 0 0 0 644 1788 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _ftell_r .visible .func (.param .u64 %value_out) _ftell_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/ftell.c" // BEGIN GLOBAL FUNCTION DECL: ftell .visible .func (.param .u64 %value_out) ftell (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _ftello_r .extern .func (.param .u64 %value_out) _ftello_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _ftell_r .visible .func (.param .u64 %value_out) _ftell_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 91 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_ftello_r,(%out_arg1,%out_arg2); ld.param.u64 %r27,[%value_in]; } .loc 1 98 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ftell .visible .func (.param .u64 %value_out) ftell (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 91 9 ld.global.u64 %r27,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_ftello_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 106 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-fvwrite.o/0 0 0 644 18228 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .visible .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/fvwrite.c" // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: __sfvwrite_r .visible .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r53; .reg .u64 %r57; .reg .u32 %r59; .reg .u64 %r70; .reg .u32 %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r84; .reg .u64 %r89; .reg .u64 %r93; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r99; .reg .u64 %r102; .reg .u64 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u64 %r122; .reg .u32 %r124; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r131; .reg .u32 %r132; .reg .u32 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .pred %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .pred %r144; .reg .u64 %r145; .reg .pred %r146; .reg .u32 %r149; .reg .pred %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .pred %r153; .reg .pred %r154; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .pred %r162; .reg .u64 %r163; .reg .pred %r164; .reg .u16 %r165; .reg .pred %r167; .reg .pred %r168; .reg .u16 %r169; .reg .u16 %r170; .reg .pred %r171; .reg .pred %r172; .reg .u16 %r173; .reg .pred %r175; .reg .u32 %r176; .reg .u32 %r177; .reg .u32 %r179; .reg .u32 %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .u64 %r184; .reg .u64 %r185; .reg .pred %r186; .reg .u32 %r188; .reg .u32 %r189; .reg .u16 %r190; .reg .u16 %r191; .reg .pred %r192; .reg .u64 %r195; .reg .pred %r196; .reg .u32 %r197; .reg .u64 %r201; .reg .u64 %r202; .reg .u16 %r203; .reg .u16 %r204; .reg .u16 %r205; .reg .u64 %r209; .reg .pred %r210; .reg .u64 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .pred %r218; .reg .u64 %r222; .reg .u32 %r223; .reg .u64 %r225; .reg .u64 %r227; .reg .pred %r228; .reg .u64 %r229; .reg .pred %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r236; .reg .u64 %r238; .reg .pred %r240; .reg .u32 %r243; .reg .pred %r244; .reg .u32 %r246; .reg .u32 %r248; .reg .u64 %r253; .reg .u32 %r254; .reg .u64 %r255; .reg .pred %r256; .reg .u64 %r257; .reg .pred %r258; .reg .pred %r259; .reg .pred %r260; .reg .pred %r261; .reg .u32 %r263; .reg .u64 %r265; .reg .pred %r266; .reg .u64 %r267; .reg .u64 %r268; .reg .u32 %r269; .reg .u64 %r270; .reg .u64 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u64 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r279; .reg .u16 %r280; .reg .u16 %r281; .reg .u16 %r282; .reg .u32 %r283; .reg .u16 %r284; .reg .pred %r285; .reg .u64 %r289; .reg .u64 %r290; .reg .u64 %r291; .reg .u32 %r294; .reg .pred %r295; .reg .pred %r296; .reg .u64 %r301; .reg .u32 %r302; .reg .u64 %r303; .reg .pred %r304; .reg .u64 %r308; .reg .u32 %r309; .reg .u32 %r310; .reg .u64 %r311; .reg .u64 %r312; .reg .pred %r313; .reg .u32 %r316; .reg .pred %r317; .reg .u64 %r318; .reg .pred %r319; .reg .u16 %r320; .reg .u16 %r321; .reg .u32 %r323; .reg .u64 %r324; .reg .u64 %r325; .reg .u32 %r326; .reg .u64 %r327; .reg .u16 %r328; mov.u64 %r137,%ar0; mov.u64 %r138,%ar1; mov.u64 %r139,%ar2; .loc 1 59 6 ld.u64 %r140,[%r139+16]; setp.ne.u64 %r141,%r140,0; @ %r141 bra $L2; $L11: .loc 1 60 12 mov.u32 %r136,0; bra $L1; $L2: .loc 1 63 7 ld.s16 %r124,[%r138+16]; .loc 1 63 6 cvt.u16.u32 %r143,%r124; and.b16 %r142,%r143,8; setp.eq.u16 %r144,%r142,0; @ %r144 bra $L4; .loc 1 63 7 ld.u64 %r145,[%r138+24]; setp.ne.u64 %r146,%r145,0; @ %r146 bra $L5; $L4: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r149,[%value_in]; } setp.ne.u32 %r150,%r149,0; @ %r150 bra $L40; .loc 1 89 9 ld.s16 %r124,[%r138+16]; $L5: .loc 1 66 7 ld.u64 %r29,[%r139]; .loc 1 89 6 cvt.u16.u32 %r152,%r124; and.b16 %r151,%r152,2; setp.ne.u16 %r153,%r151,0; @ %r153 bra $L41; bra $L65; $L8: .loc 1 97 4 ld.u64 %r82,[%r29]; ld.u64 %r84,[%r29+8]; add.u64 %r29,%r29,16; bra $L6; $L41: .loc 1 53 24 mov.u64 %r82,0; .loc 1 67 7 mov.u64 %r84,%r82; ld.u64 %r327,[%r138+64]; ld.u64 %r325,[%r138+48]; $L6: .loc 1 97 4 setp.eq.u64 %r154,%r84,0; @ %r154 bra $L8; .loc 1 99 6 min.u64 %r159,%r84,2147482624; .loc 1 98 8 cvt.u32.u64 %r160,%r159; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r325; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r82; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r160; call (%value_in),%r327,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r161,[%value_in]; } .loc 1 100 7 setp.le.s32 %r162,%r161,0; @ %r162 bra $L9; .loc 1 102 6 cvt.s64.s32 %r26,%r161; add.u64 %r82,%r82,%r26; .loc 1 103 8 sub.u64 %r84,%r84,%r26; .loc 1 105 30 ld.u64 %r163,[%r139+16]; sub.u64 %r28,%r163,%r26; st.u64 [%r139+16],%r28; .loc 1 105 36 setp.ne.u64 %r164,%r28,0; @ ! %r164 bra $L11; ld.u64 %r327,[%r138+64]; ld.u64 %r325,[%r138+48]; bra $L6; $L65: .loc 1 107 11 and.b16 %r165,%r152,1; setp.eq.u16 %r167,%r165,0; @ %r167 bra $L42; .loc 1 215 14 mov.u32 %r107,0; .loc 1 214 15 mov.u32 %r106,%r107; .loc 1 53 24 mov.u64 %r103,0; .loc 1 67 7 mov.u64 %r102,%r103; bra $L13; $L14: .loc 1 124 4 ld.u64 %r93,[%r29]; ld.u64 %r96,[%r29+8]; add.u64 %r29,%r29,16; bra $L12; $L42: .loc 1 53 24 mov.u64 %r93,0; .loc 1 67 7 mov.u64 %r96,%r93; ld.u64 %r324,[%r138]; ld.u32 %r323,[%r138+12]; $L12: .loc 1 131 21 mov.u64 %r131,%r324; .loc 1 125 6 mov.u32 %r104,%r323; .loc 1 124 4 setp.eq.u64 %r168,%r96,0; @ %r168 bra $L14; .loc 1 126 7 cvt.u16.u32 %r170,%r124; and.b16 %r169,%r170,512; setp.eq.u16 %r171,%r169,0; @ %r171 bra $L15; .loc 1 128 16 cvt.s64.s32 %r30,%r323; .loc 1 128 11 setp.le.u64 %r172,%r30,%r96; @ %r172 bra $L16; cvt.u32.u64 %r326,%r96; $L24: .loc 1 176 5 mov.u32 %r104,%r326; .loc 1 175 16 cvt.s64.s32 %r57,%r104; .loc 1 177 8 mov.u64 %r131,%r324; mov.u64 %r30,%r57; bra $L17; $L16: .loc 1 128 21 and.b16 %r173,%r170,1152; setp.ne.u16 %r175,%r173,0; @ %r175 bra $L18; .loc 1 172 7 cvt.u32.u64 %r176,%r96; .loc 1 175 16 cvt.s64.s32 %r57,%r176; bra $L17; $L18: .loc 1 131 35 ld.u64 %r31,[%r138+24]; .loc 1 131 26 sub.u64 %r32,%r324,%r31; .loc 1 131 9 cvt.u32.u64 %r121,%r32; .loc 1 139 33 ld.u32 %r177,[%r138+32]; add.u32 %r179,%r177,%r177; add.u32 %r180,%r179,%r177; .loc 1 139 9 shr.u32 %r181,%r180,31; add.u32 %r182,%r181,%r180; shr.s32 %r109,%r182,1; .loc 1 140 17 cvt.s64.s32 %r35,%r109; .loc 1 140 26 cvt.s64.s32 %r36,%r121; .loc 1 140 32 add.u64 %r184,%r36,1; add.u64 %r185,%r184,%r96; .loc 1 140 8 setp.ge.u64 %r186,%r35,%r185; @ %r186 bra $L19; .loc 1 141 30 add.u32 %r188,%r121,1; .loc 1 141 24 cvt.u32.u64 %r189,%r96; .loc 1 141 30 add.u32 %r109,%r188,%r189; .loc 1 145 32 cvt.s64.s32 %r35,%r109; $L19: .loc 1 142 8 cvt.u16.u32 %r191,%r124; and.b16 %r190,%r191,1024; setp.eq.u16 %r192,%r190,0; @ %r192 bra $L20; .loc 1 145 32 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r195,[%value_in]; } mov.u64 %r108,%r195; .loc 1 146 12 setp.ne.u64 %r196,%r195,0; @ %r196 bra $L21; .loc 1 148 18 mov.u32 %r197,12; st.u32 [%r137],%r197; .loc 1 263 14 ld.s16 %r132,[%r138+16]; .loc 1 149 6 bra $L22; $L21: .loc 1 151 9 ld.u64 %r201,[%r138+24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r201; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r202,[%value_in]; } .loc 1 152 20 ld.u16 %r204,[%r138+16]; and.b16 %r203,%r204,-1153; or.b16 %r205,%r203,128; st.u16 [%r138+16],%r205; bra $L23; $L20: .loc 1 156 32 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r209,[%value_in]; } mov.u64 %r108,%r209; .loc 1 158 12 setp.ne.u64 %r210,%r209,0; @ %r210 bra $L23; .loc 1 162 6 ld.u64 %r213,[%r138+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r213; call _free_r,(%out_arg1,%out_arg2); } .loc 1 163 17 ld.u16 %r215,[%r138+16]; and.b16 %r214,%r215,-129; cvt.s32.s16 %r132,%r214; .loc 1 165 18 mov.u32 %r216,12; st.u32 [%r137],%r216; .loc 1 166 6 bra $L22; $L23: .loc 1 169 19 st.u64 [%r138+24],%r108; .loc 1 170 18 add.u64 %r131,%r108,%r36; .loc 1 170 12 st.u64 [%r138],%r131; .loc 1 171 19 st.u32 [%r138+32],%r109; .loc 1 172 7 cvt.u32.u64 %r104,%r96; mov.u32 %r326,%r104; .loc 1 173 22 sub.u32 %r217,%r109,%r121; .loc 1 173 12 st.u32 [%r138+12],%r217; .loc 1 175 16 cvt.s64.s32 %r57,%r104; .loc 1 175 11 setp.gt.u64 %r218,%r57,%r96; @ ! %r218 bra $L66; mov.u64 %r324,%r131; bra $L24; $L66: mov.u64 %r30,%r57; $L17: .loc 1 177 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r131; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r93; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r222,[%value_in]; } .loc 1 178 15 ld.u32 %r323,[%r138+12]; sub.u32 %r223,%r323,%r104; st.u32 [%r138+12],%r223; .loc 1 179 15 ld.u64 %r324,[%r138]; add.u64 %r225,%r324,%r30; st.u64 [%r138],%r225; bra $L25; $L15: .loc 1 182 12 ld.u64 %r227,[%r138+24]; setp.lt.u64 %r228,%r227,%r324; @ %r228 bra $L26; .loc 1 182 52 ld.u32 %r53,[%r138+32]; cvt.s64.s32 %r229,%r53; .loc 1 182 36 setp.le.u64 %r230,%r229,%r96; @ %r230 bra $L27; $L26: .loc 1 185 12 cvt.s64.s32 %r232,%r323; min.u64 %r231,%r232,%r96; .loc 1 185 10 cvt.u32.u64 %r120,%r231; .loc 1 186 8 cvt.s64.s32 %r57,%r120; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r324; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r93; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r236,[%value_in]; } .loc 1 187 15 ld.u32 %r323,[%r138+12]; sub.u32 %r59,%r323,%r120; st.u32 [%r138+12],%r59; .loc 1 188 15 ld.u64 %r324,[%r138]; add.u64 %r238,%r324,%r57; st.u64 [%r138],%r238; .loc 1 189 11 setp.ne.u32 %r240,%r59,0; @ %r240 bra $L25; .loc 1 189 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r243,[%value_in]; } .loc 1 189 24 setp.eq.u32 %r244,%r243,0; @ %r244 bra $L25; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L27: .loc 1 195 13 min.u64 %r122,%r96,2147483647; .loc 1 195 38 cvt.u32.u64 %r246,%r122; div.s32 %r248,%r246,%r53; .loc 1 195 10 mul.lo.u32 %r118,%r248,%r53; .loc 1 196 12 ld.u64 %r253,[%r138+48]; ld.u64 %r255,[%r138+64]; { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r253; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r93; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r118; call (%value_in),%r255,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u32 %r254,[%value_in]; } .loc 1 197 11 setp.gt.s32 %r256,%r254,0; @ %r256 bra $L29; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L29: .loc 1 200 6 cvt.s64.s32 %r57,%r254; $L25: add.u64 %r93,%r93,%r57; .loc 1 201 8 sub.u64 %r96,%r96,%r57; .loc 1 203 30 ld.u64 %r257,[%r139+16]; sub.u64 %r70,%r257,%r57; st.u64 [%r139+16],%r70; .loc 1 203 36 setp.eq.u64 %r258,%r70,0; @ %r258 bra $L11; .loc 1 126 10 ld.s16 %r124,[%r138+16]; ld.u64 %r324,[%r138]; ld.u32 %r323,[%r138+12]; bra $L12; $L33: add.u64 %r128,%r29,8; $L31: .loc 1 218 4 ld.u64 %r102,[%r128]; mov.u64 %r127,%r29; add.u64 %r29,%r29,16; add.u64 %r128,%r128,16; setp.eq.u64 %r259,%r102,0; @ %r259 bra $L31; ld.u64 %r103,[%r127]; bra $L32; $L13: setp.eq.u64 %r260,%r102,0; @ %r260 bra $L33; .loc 1 219 7 setp.ne.u32 %r261,%r106,0; @ %r261 bra $L34; $L32: .loc 1 221 13 mov.u32 %r263,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r103; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r263; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r102; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r265,[%value_in]; } .loc 1 222 15 setp.eq.u64 %r266,%r265,0; @ %r266 bra $L35; .loc 1 222 25 add.u64 %r267,%r265,1; .loc 1 222 29 sub.u64 %r268,%r267,%r103; .loc 1 222 15 cvt.u32.u64 %r107,%r268; bra $L34; $L35: .loc 1 222 39 cvt.u32.u64 %r269,%r102; add.u32 %r107,%r269,1; $L34: .loc 1 225 8 cvt.s64.s32 %r271,%r107; min.u64 %r270,%r271,%r102; .loc 1 225 6 cvt.u32.u64 %r117,%r270; .loc 1 226 24 ld.u32 %r78,[%r138+32]; .loc 1 226 6 ld.u32 %r272,[%r138+12]; add.u32 %r105,%r78,%r272; .loc 1 227 10 ld.u64 %r79,[%r138]; .loc 1 227 7 ld.u64 %r274,[%r138+24]; set.u32.gt.u64 %r275,%r79,%r274; neg.s32 %r276,%r275; mov.u32 %r273,%r276; .loc 1 227 31 set.u32.gt.s32 %r278,%r117,%r105; neg.s32 %r279,%r278; mov.u32 %r277,%r279; cvt.u16.u8 %r328,%r273; mov.u16 %r281,%r328; cvt.u16.u8 %r328,%r277; mov.u16 %r282,%r328; and.b16 %r280,%r281,%r282; cvt.u32.u16 %r283,%r280; cvt.u16.u8 %r284,%r283; setp.eq.u16 %r285,%r284,0; @ %r285 bra $L36; .loc 1 229 8 cvt.s64.s32 %r81,%r105; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r81; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r289,[%value_in]; } .loc 1 231 15 ld.u64 %r291,[%r138]; add.u64 %r290,%r291,%r81; st.u64 [%r138],%r290; .loc 1 232 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r294,[%value_in]; } .loc 1 232 11 setp.eq.u32 %r295,%r294,0; @ %r295 bra $L37; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L36: .loc 1 235 12 setp.gt.s32 %r296,%r78,%r117; @ %r296 bra $L38; .loc 1 237 12 ld.u64 %r301,[%r138+48]; ld.u64 %r303,[%r138+64]; { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r301; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r103; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r78; call (%value_in),%r303,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT2; ld.param.u32 %r302,[%value_in]; } mov.u32 %r105,%r302; .loc 1 238 11 setp.gt.s32 %r304,%r302,0; @ %r304 bra $L37; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L38: .loc 1 244 8 cvt.s64.s32 %r89,%r117; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r89; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r308,[%value_in]; } .loc 1 245 15 ld.u32 %r310,[%r138+12]; sub.u32 %r309,%r310,%r117; st.u32 [%r138+12],%r309; .loc 1 246 15 ld.u64 %r312,[%r138]; add.u64 %r311,%r312,%r89; st.u64 [%r138],%r311; mov.u32 %r105,%r117; $L37: .loc 1 248 16 sub.u32 %r107,%r107,%r105; .loc 1 248 7 setp.ne.u32 %r313,%r107,0; @ %r313 bra $L44; .loc 1 251 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r316,[%value_in]; } mov.u32 %r106,%r316; .loc 1 251 11 setp.eq.u32 %r317,%r316,0; @ %r317 bra $L39; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L44: mov.u32 %r106,1; $L39: .loc 1 255 6 cvt.s64.s32 %r95,%r105; add.u64 %r103,%r103,%r95; .loc 1 256 8 sub.u64 %r102,%r102,%r95; .loc 1 258 30 ld.u64 %r318,[%r139+16]; sub.u64 %r99,%r318,%r95; st.u64 [%r139+16],%r99; .loc 1 258 36 setp.ne.u64 %r319,%r99,0; @ %r319 bra $L13; bra $L11; $L9: .loc 1 263 14 ld.s16 %r132,[%r138+16]; $L22: cvt.u16.u32 %r321,%r132; or.b16 %r320,%r321,64; st.u16 [%r138+16],%r320; .loc 1 264 10 mov.u32 %r136,-1; bra $L1; $L40: .loc 1 64 12 mov.u32 %r136,-1; $L1: .loc 1 265 1 mov.u32 %value,%r136; st.param.u32 [%value_out],%value; ret; } lib_a-fwalk.o/ 0 0 0 644 3748 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fwalk .visible .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/fwalk.c" // BEGIN GLOBAL FUNCTION DECL: _fwalk_reent .visible .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fwalk .visible .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 46 10 add.u64 %r32,%r41,1312; .loc 1 35 19 mov.u32 %r40,0; $L5: .loc 1 47 13 ld.u64 %r30,[%r32+16]; .loc 1 47 27 ld.u32 %r31,[%r32+8]; .loc 1 47 44 setp.le.s32 %r43,%r31,0; @ %r43 bra $L2; add.u64 %r25,%r30,16; add.u32 %r44,%r31,-1; cvt.u64.u32 %r45,%r44; add.u64 %r47,%r30,192; mad.lo.u64 %r37,%r45,176,%r47; $L4: add.u64 %r39,%r25,-16; .loc 1 48 10 ld.u16 %r48,[%r25]; setp.le.u16 %r49,%r48,1; @ %r49 bra $L3; .loc 1 48 46 ld.u16 %r50,[%r25+2]; setp.eq.u16 %r51,%r50,-1; @ %r51 bra $L3; .loc 1 49 10 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),%r42,(%out_arg1),$LCT0; ld.param.u32 %r53,[%value_in]; } .loc 1 49 6 or.b32 %r40,%r40,%r53; $L3: .loc 1 47 44 add.u64 %r25,%r25,176; setp.ne.u64 %r54,%r25,%r37; @ %r54 bra $L4; $L2: .loc 1 46 40 ld.u64 %r32,[%r32]; .loc 1 46 29 setp.ne.u64 %r55,%r32,0; @ %r55 bra $L5; .loc 1 52 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fwalk_reent .visible .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 72 10 add.u64 %r32,%r41,1312; .loc 1 61 19 mov.u32 %r40,0; $L15: .loc 1 73 13 ld.u64 %r30,[%r32+16]; .loc 1 73 27 ld.u32 %r31,[%r32+8]; .loc 1 73 44 setp.le.s32 %r43,%r31,0; @ %r43 bra $L12; add.u64 %r25,%r30,16; add.u32 %r44,%r31,-1; cvt.u64.u32 %r45,%r44; add.u64 %r47,%r30,192; mad.lo.u64 %r37,%r45,176,%r47; $L14: add.u64 %r39,%r25,-16; .loc 1 74 10 ld.u16 %r48,[%r25]; setp.le.u16 %r49,%r48,1; @ %r49 bra $L13; .loc 1 74 46 ld.u16 %r50,[%r25+2]; setp.eq.u16 %r51,%r50,-1; @ %r51 bra $L13; .loc 1 75 10 { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),%r42,(%out_arg1,%out_arg2),$LCT1; ld.param.u32 %r54,[%value_in]; } .loc 1 75 6 or.b32 %r40,%r40,%r54; $L13: .loc 1 73 44 add.u64 %r25,%r25,176; setp.ne.u64 %r55,%r25,%r37; @ %r55 bra $L14; $L12: .loc 1 72 40 ld.u64 %r32,[%r32]; .loc 1 72 29 setp.ne.u64 %r56,%r32,0; @ %r56 bra $L15; .loc 1 78 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-fwrite.o/ 0 0 0 644 5370 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fwrite_r .visible .func (.param .u64 %value_out) _fwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdio/fwrite.c" // BEGIN GLOBAL FUNCTION DECL: fwrite .visible .func (.param .u64 %value_out) fwrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .extern .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fwrite_r .visible .func (.param .u64 %value_out) _fwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u16 %r44; .reg .u16 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r49; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; mov.u64 %r35,%ar2; mov.u64 %r36,%ar3; mov.u64 %r37,%ar4; .loc 1 122 16 st.u64 [%frame+24],%r34; .loc 1 123 35 mul.lo.u64 %r30,%r36,%r35; .loc 1 123 31 st.u64 [%frame+32],%r30; .loc 1 123 17 st.u64 [%frame+16],%r30; .loc 1 124 15 add.u64 %r38,%frame,24; st.u64 [%frame],%r38; .loc 1 125 18 mov.u32 %r39,1; st.u32 [%frame+8],%r39; .loc 1 133 3 setp.eq.u64 %r40,%r33,0; @ %r40 bra $L2; ld.u32 %r41,[%r33+80]; setp.ne.u32 %r42,%r41,0; @ %r42 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call __sinit,(%out_arg1); } $L2: .loc 1 136 3 ld.u16 %r45,[%r37+16]; and.b16 %r44,%r45,8192; setp.ne.u16 %r46,%r44,0; @ %r46 bra $L3; .loc 1 135 3 ld.u32 %r23,[%r37+172]; .loc 1 136 3 or.b16 %r47,%r45,8192; st.u16 [%r37+16],%r47; and.b32 %r49,%r23,-8193; st.u32 [%r37+172],%r49; $L3: .loc 1 137 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r53,[%value_in]; } .loc 1 137 6 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 143 13 ld.u64 %r56,[%frame+16]; sub.u64 %r55,%r30,%r56; .loc 1 143 30 div.u64 %r32,%r55,%r35; bra $L1; $L5: .loc 1 140 14 mov.u64 %r32,%r36; $L1: .loc 1 168 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fwrite .visible .func (.param .u64 %value_out) fwrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u16 %r44; .reg .u16 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r49; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; mov.u64 %r37,%ar3; .loc 1 177 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 122 16 st.u64 [%frame+24],%r34; .loc 1 123 35 mul.lo.u64 %r23,%r35,%r36; .loc 1 123 31 st.u64 [%frame+32],%r23; .loc 1 123 17 st.u64 [%frame+16],%r23; .loc 1 124 15 add.u64 %r38,%frame,24; st.u64 [%frame],%r38; .loc 1 125 18 mov.u32 %r39,1; st.u32 [%frame+8],%r39; .loc 1 133 3 setp.eq.u64 %r40,%r22,0; @ %r40 bra $L10; ld.u32 %r41,[%r22+80]; setp.ne.u32 %r42,%r41,0; @ %r42 bra $L10; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call __sinit,(%out_arg1); } $L10: .loc 1 136 3 ld.u16 %r45,[%r37+16]; and.b16 %r44,%r45,8192; setp.ne.u16 %r46,%r44,0; @ %r46 bra $L11; .loc 1 135 3 ld.u32 %r25,[%r37+172]; .loc 1 136 3 or.b16 %r47,%r45,8192; st.u16 [%r37+16],%r47; and.b32 %r49,%r25,-8193; st.u32 [%r37+172],%r49; $L11: .loc 1 137 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r53,[%value_in]; } .loc 1 137 6 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L13; .loc 1 143 13 ld.u64 %r56,[%frame+16]; sub.u64 %r55,%r23,%r56; .loc 1 143 30 div.u64 %r33,%r55,%r35; bra $L9; $L13: .loc 1 140 14 mov.u64 %r33,%r36; $L9: .loc 1 178 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /324 0 0 0 644 32558 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: rshift .func rshift (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/gdtoa-gethex.c" // BEGIN GLOBAL FUNCTION DECL: __gethex .visible .func (.param .u32 %value_out) __gethex (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL VAR DECL: _C_numeric_locale .extern .const .align 8 .u64 _C_numeric_locale[3]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __hi0bits .extern .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __any_on .extern .func (.param .u32 %value_out) __any_on (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __lshift .extern .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[49] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,103,100,116,111,97,45,103,101,116,104,101,120,46,99,0 }; // BEGIN GLOBAL VAR DEF: __hexdig .visible .const .align 1 .u8 __hexdig[256] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,17,18,19,20,21,22,23,24,25,0,0,0,0,0,0,0,26,27,28,29,30,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,27,28,29,30,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; // BEGIN FUNCTION DEF: rshift .func rshift (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r33; .reg .u32 %r36; .reg .u64 %r40; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r52; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u64 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; mov.u64 %r69,%ar0; mov.u32 %r70,%ar1; .loc 1 78 4 shr.s32 %r44,%r70,5; .loc 1 79 11 ld.u32 %r22,[%r69+20]; .loc 1 79 5 setp.le.s32 %r71,%r22,%r44; @ %r71 bra $L2; .loc 1 77 9 add.u64 %r43,%r69,24; .loc 1 80 13 cvt.s64.s32 %r24,%r22; .loc 1 80 10 shl.b64 %r73,%r24,2; .loc 1 80 6 add.u64 %r45,%r43,%r73; .loc 1 81 5 cvt.s64.s32 %r26,%r44; shl.b64 %r75,%r26,2; add.u64 %r46,%r43,%r75; .loc 1 82 9 and.b32 %r47,%r70,31; .loc 1 82 6 setp.ne.u32 %r76,%r47,0; @ %r76 bra $L3; .loc 1 93 12 setp.gt.u64 %r77,%r45,%r46; @ %r77 bra $L4; bra $L2; $L3: .loc 1 83 6 mov.u32 %r78,32; sub.u32 %r48,%r78,%r47; .loc 1 84 10 add.u64 %r49,%r46,4; .loc 1 84 6 ld.u32 %r79,[%r46]; shr.u32 %r50,%r79,%r47; .loc 1 85 12 setp.le.u64 %r80,%r45,%r49; @ %r80 bra $L5; mov.u64 %r23,%r49; mov.u64 %r52,%r43; $L6: .loc 1 86 22 ld.u32 %r82,[%r23]; shl.b32 %r81,%r82,%r48; .loc 1 86 29 or.b32 %r83,%r81,%r50; .loc 1 86 11 st.u32 [%r52],%r83; .loc 1 87 7 ld.u32 %r84,[%r23]; shr.u32 %r50,%r84,%r47; .loc 1 85 12 add.u64 %r23,%r23,4; add.u64 %r52,%r52,4; setp.gt.u64 %r85,%r45,%r23; @ %r85 bra $L6; .loc 1 86 8 sub.u64 %r86,%r24,%r26; shl.b64 %r87,%r86,2; add.u64 %r91,%r87,-4; add.u64 %r40,%r43,%r91; .loc 1 89 13 st.u32 [%r40],%r50; .loc 1 89 7 setp.eq.u32 %r92,%r50,0; @ %r92 bra $L7; bra $L11; $L12: .loc 1 77 9 mov.u64 %r40,%r43; $L11: .loc 1 90 7 add.u64 %r40,%r40,4; bra $L7; $L4: mov.u64 %r63,%r43; mov.u64 %r65,%r46; $L8: .loc 1 94 13 ld.u32 %r33,[%r65]; .loc 1 94 11 st.u32 [%r63],%r33; .loc 1 93 12 add.u64 %r63,%r63,4; add.u64 %r65,%r65,4; setp.gt.u64 %r93,%r45,%r65; @ %r93 bra $L8; .loc 1 94 8 sub.u64 %r94,%r24,%r26; shl.b64 %r99,%r94,2; add.u64 %r40,%r43,%r99; $L7: .loc 1 96 20 sub.u64 %r100,%r40,%r43; shr.s64 %r102,%r100,2; .loc 1 96 15 cvt.u32.u64 %r36,%r102; st.u32 [%r69+20],%r36; .loc 1 96 5 setp.ne.u32 %r103,%r36,0; @ %r103 bra $L1; $L10: .loc 1 97 12 mov.u32 %r104,0; st.u32 [%r69+24],%r104; .loc 1 98 1 bra $L1; $L2: .loc 1 96 15 mov.u32 %r105,0; st.u32 [%r69+20],%r105; bra $L10; $L5: .loc 1 89 13 st.u32 [%r69+24],%r50; .loc 1 89 7 setp.ne.u32 %r106,%r50,0; @ %r106 bra $L12; bra $L2; $L1: .loc 1 98 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __gethex .visible .func (.param .u32 %value_out) __gethex (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r30; .reg .u32 %r32; .reg .u32 %r39; .reg .u32 %r41; .reg .u64 %r50; .reg .u32 %r60; .reg .u32 %r62; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r86; .reg .u32 %r101; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r118; .reg .u64 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .u64 %r125; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u64 %r144; .reg .u32 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u32 %r152; .reg .u32 %r154; .reg .u64 %r167; .reg .u32 %r174; .reg .u32 %r177; .reg .u64 %r178; .reg .u64 %r188; .reg .u64 %r191; .reg .u64 %r195; .reg .u64 %r197; .reg .u32 %r207; .reg .u32 %r217; .reg .u32 %r218; .reg .u32 %r221; .reg .u64 %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u32 %r227; .reg .u64 %r231; .reg .u64 %r232; .reg .u16 %r234; .reg .pred %r235; .reg .u16 %r236; .reg .pred %r237; .reg .u64 %r239; .reg .u64 %r240; .reg .u16 %r241; .reg .pred %r242; .reg .u32 %r246; .reg .pred %r247; .reg .u64 %r249; .reg .u64 %r250; .reg .pred %r251; .reg .u16 %r252; .reg .pred %r253; .reg .u16 %r254; .reg .pred %r255; .reg .u64 %r257; .reg .u64 %r258; .reg .u16 %r260; .reg .u32 %r261; .reg .u64 %r265; .reg .u64 %r266; .reg .u16 %r267; .reg .pred %r268; .reg .u64 %r271; .reg .u64 %r272; .reg .pred %r273; .reg .u32 %r277; .reg .pred %r278; .reg .pred %r279; .reg .u64 %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .u64 %r284; .reg .u64 %r285; .reg .u16 %r286; .reg .pred %r287; .reg .u64 %r289; .reg .u64 %r290; .reg .u16 %r291; .reg .pred %r292; .reg .u64 %r293; .reg .u32 %r294; .reg .u32 %r295; .reg .pred %r296; .reg .u64 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u16 %r301; .reg .u16 %r303; .reg .pred %r304; .reg .u16 %r305; .reg .pred %r306; .reg .pred %r308; .reg .u64 %r310; .reg .u64 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u32 %r314; .reg .u16 %r315; .reg .pred %r316; .reg .u64 %r319; .reg .u64 %r320; .reg .u16 %r321; .reg .u16 %r322; .reg .u32 %r323; .reg .u16 %r324; .reg .pred %r325; .reg .u32 %r327; .reg .u32 %r328; .reg .u32 %r329; .reg .u64 %r332; .reg .u64 %r333; .reg .u16 %r334; .reg .u16 %r335; .reg .u32 %r336; .reg .u16 %r337; .reg .pred %r338; .reg .pred %r339; .reg .pred %r340; .reg .pred %r341; .reg .u64 %r342; .reg .u32 %r343; .reg .pred %r344; .reg .pred %r345; .reg .u64 %r348; .reg .pred %r349; .reg .u64 %r350; .reg .u32 %r351; .reg .u64 %r353; .reg .pred %r354; .reg .u16 %r355; .reg .u16 %r356; .reg .pred %r357; .reg .pred %r358; .reg .u64 %r359; .reg .pred %r361; .reg .u32 %r365; .reg .pred %r366; .reg .u64 %r369; .reg .u64 %r370; .reg .u16 %r372; .reg .u16 %r373; .reg .u32 %r374; .reg .u32 %r375; .reg .u32 %r376; .reg .pred %r377; .reg .u64 %r378; .reg .u64 %r379; .reg .u64 %r381; .reg .u32 %r383; .reg .pred %r384; .reg .u32 %r387; .reg .pred %r388; .reg .u32 %r389; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .pred %r398; .reg .pred %r399; .reg .u32 %r402; .reg .u32 %r403; .reg .pred %r404; .reg .pred %r407; .reg .u64 %r411; .reg .u32 %r412; .reg .pred %r413; .reg .u64 %r416; .reg .pred %r417; .reg .pred %r418; .reg .pred %r419; .reg .pred %r420; .reg .pred %r421; .reg .pred %r422; .reg .pred %r423; .reg .u32 %r426; .reg .u32 %r427; .reg .pred %r428; .reg .pred %r429; .reg .pred %r430; .reg .u32 %r431; .reg .u64 %r435; .reg .pred %r436; .reg .pred %r437; .reg .u32 %r440; .reg .u32 %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u64 %r444; .reg .u32 %r445; .reg .u32 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u32 %r449; .reg .pred %r450; .reg .pred %r453; .reg .pred %r454; .reg .pred %r455; .reg .pred %r456; .reg .u32 %r457; .reg .pred %r458; .reg .u32 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .pred %r462; .reg .u32 %r463; .reg .pred %r464; .reg .u64 %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r469; .reg .u32 %r470; .reg .pred %r471; .reg .u32 %r474; .reg .u32 %r475; .reg .u64 %r476; .reg .pred %r477; .reg .u64 %r478; .reg .u32 %r479; .reg .u64 %r481; .reg .u64 %r485; .reg .u64 %r486; .reg .u64 %r487; .reg .u64 %r488; .reg .u64 %r489; .reg .u64 %r490; .reg .u32 %r493; .reg .u64 %r494; .reg .u64 %r495; .reg .u64 %r496; .reg .u64 %r497; .reg .u32 %r499; .reg .pred %r500; .reg .u32 %r501; .reg .u32 %r502; .reg .pred %r503; .reg .u32 %r504; .reg .u64 %r505; .reg .u64 %r506; .reg .u64 %r507; .reg .u32 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u32 %r511; .reg .u32 %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .u32 %r516; .reg .u64 %r517; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .pred %r522; .reg .pred %r523; .reg .u64 %r524; .reg .u64 %r525; .reg .u32 %r526; .reg .u64 %r527; .reg .pred %r528; .reg .u32 %r529; .reg .u32 %r530; .reg .u32 %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u64 %r534; .reg .u64 %r536; .reg .u64 %r538; .reg .u64 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .u64 %r543; .reg .pred %r544; .reg .u32 %r545; .reg .u32 %r546; .reg .pred %r547; .reg .u32 %r549; .reg .u16 %r551; .reg .u16 %r553; .reg .pred %r554; .reg .pred %r556; .reg .u64 %r557; .reg .u32 %r558; .reg .u16 %r559; mov.u64 %r222,%ar0; mov.u64 %r223,%ar1; mov.u64 %r224,%ar2; mov.u64 %r225,%ar3; mov.u64 %r226,%ar4; mov.u32 %r227,%ar5; .loc 1 152 23 ld.const.u64 %r120,[_C_numeric_locale]; .loc 1 154 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r120; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r231,[%value_in]; } .loc 1 155 16 add.u64 %r232,%r120,%r231; ld.u8 %r122,[%r232+-1]; .loc 1 158 7 ld.u64 %r24,[%r223]; .loc 1 159 10 ld.u8 %r25,[%r24+2]; .loc 1 159 20 cvt.u16.u32 %r234,%r25; setp.ne.u16 %r235,%r234,48; @ %r235 bra $L19; add.u64 %r188,%r24,3; .loc 1 157 10 mov.u32 %r146,0; $L20: .loc 1 160 10 add.u32 %r146,%r146,1; .loc 1 159 10 mov.u64 %r144,%r188; .loc 1 159 20 add.u64 %r188,%r188,1; .loc 1 159 10 ld.u8 %r25,[%r188+-1]; .loc 1 159 20 cvt.u16.u32 %r236,%r25; setp.eq.u16 %r237,%r236,48; @ %r237 bra $L20; bra $L21; $L19: .loc 1 159 10 add.u64 %r144,%r24,2; .loc 1 157 10 mov.u32 %r146,0; $L21: .loc 1 166 7 cvta.const.u64 %r557,__hexdig; cvt.s64.s32 %r239,%r25; add.u64 %r240,%r557,%r239; .loc 1 166 5 ld.u8 %r241,[%r240]; setp.ne.u16 %r242,%r241,0; @ %r242 bra $L22; .loc 1 168 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r144; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r120; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r231; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r246,[%value_in]; } .loc 1 168 6 setp.ne.u32 %r247,%r246,0; @ %r247 bra $L23; .loc 1 171 14 add.u64 %r26,%r144,%r231; .loc 1 172 8 ld.u8 %r30,[%r26]; cvt.s64.s32 %r249,%r30; add.u64 %r250,%r557,%r249; ld.u8 %r207,[%r250]; .loc 1 172 6 setp.eq.u32 %r251,%r207,0; @ %r251 bra $L24; .loc 1 174 12 cvt.u16.u32 %r252,%r30; setp.ne.u16 %r253,%r252,48; @ %r253 bra $L94; mov.u64 %r144,%r26; $L26: .loc 1 175 5 add.u64 %r144,%r144,1; .loc 1 174 9 ld.u8 %r32,[%r144]; .loc 1 174 12 cvt.u16.u32 %r254,%r32; setp.eq.u16 %r255,%r254,48; @ %r255 bra $L26; .loc 1 176 7 cvt.s64.s32 %r257,%r32; add.u64 %r258,%r557,%r257; ld.u8 %r207,[%r258]; bra $L25; $L94: .loc 1 174 12 mov.u64 %r144,%r26; $L25: .loc 1 176 6 cvt.u16.u32 %r260,%r207; set.u32.eq.u16 %r261,%r260,0; neg.s32 %r147,%r261; .loc 1 178 11 mov.u32 %r146,1; bra $L27; $L95: .loc 1 181 8 mov.u64 %r109,%r144; $L28: .loc 1 182 4 add.u64 %r109,%r109,1; .loc 1 181 8 ld.u8 %r265,[%r109]; add.u64 %r266,%r557,%r265; ld.u8 %r267,[%r266]; setp.ne.u16 %r268,%r267,0; @ %r268 bra $L28; bra $L29; $L22: ld.u8 %r271,[%r144]; add.u64 %r272,%r557,%r271; ld.u8 %r207,[%r272]; .loc 1 164 7 mov.u32 %r147,0; .loc 1 163 8 mov.u64 %r26,0; $L27: .loc 1 181 8 setp.ne.u32 %r273,%r207,0; @ %r273 bra $L95; mov.u64 %r109,%r144; $L29: .loc 1 183 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r109; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r120; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r231; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r277,[%value_in]; } mov.u32 %r115,%r277; .loc 1 183 5 setp.ne.u32 %r278,%r115,0; @ %r278 bra $L30; .loc 1 185 6 setp.eq.u64 %r279,%r26,0; @ %r279 bra $L31; .loc 1 191 18 sub.u64 %r280,%r109,%r26; .loc 1 191 10 cvt.u32.u64 %r281,%r280; .loc 1 191 27 shl.b32 %r282,%r281,2; .loc 1 191 5 neg.s32 %r115,%r282; .loc 1 194 9 ld.u8 %r217,[%r109]; bra $L34; $L31: .loc 1 186 14 add.u64 %r125,%r109,%r231; .loc 1 187 9 ld.u8 %r217,[%r125]; cvt.s64.s32 %r284,%r217; add.u64 %r285,%r557,%r284; ld.u8 %r286,[%r285]; setp.eq.u16 %r287,%r286,0; @ %r287 bra $L96; mov.u64 %r109,%r125; $L33: .loc 1 188 5 add.u64 %r109,%r109,1; .loc 1 187 9 ld.u8 %r217,[%r109]; cvt.s64.s32 %r289,%r217; add.u64 %r290,%r557,%r289; ld.u8 %r291,[%r290]; setp.ne.u16 %r292,%r291,0; @ %r292 bra $L33; .loc 1 191 18 sub.u64 %r293,%r109,%r125; .loc 1 191 10 cvt.u32.u64 %r294,%r293; .loc 1 191 27 shl.b32 %r295,%r294,2; .loc 1 191 5 neg.s32 %r115,%r295; bra $L34; $L30: .loc 1 194 9 ld.u8 %r217,[%r109]; .loc 1 190 5 setp.eq.u64 %r296,%r26,0; @ %r296 bra $L97; .loc 1 191 18 sub.u64 %r297,%r109,%r26; .loc 1 191 10 cvt.u32.u64 %r298,%r297; .loc 1 191 27 shl.b32 %r299,%r298,2; .loc 1 191 5 neg.s32 %r115,%r299; bra $L34; $L96: .loc 1 187 9 mov.u64 %r109,%r125; bra $L34; $L97: .loc 1 165 4 mov.u32 %r115,0; $L34: .loc 1 194 2 cvt.u16.u32 %r301,%r217; and.b16 %r303,%r301,223; setp.ne.u16 %r304,%r303,80; @ %r304 bra $L98; mov.u64 %r26,%r109; bra $L90; $L115: mov.u32 %r115,0; mov.u32 %r147,1; $L90: .loc 1 198 10 ld.u8 %r218,[%r26+1]; cvt.u16.u32 %r305,%r218; setp.eq.u16 %r306,%r305,43; @ %r306 bra $L99; setp.eq.u16 %r308,%r305,45; @ %r308 bra $L100; .loc 1 198 3 add.u64 %r110,%r26,1; .loc 1 197 9 mov.u32 %r111,0; bra $L37; $L99: mov.u32 %r111,0; bra $L36; $L100: mov.u32 %r111,1; $L36: .loc 1 203 5 add.u64 %r110,%r26,2; .loc 1 205 12 ld.u8 %r218,[%r26+2]; $L37: cvt.s64.s32 %r310,%r218; add.u64 %r311,%r557,%r310; ld.u8 %r39,[%r311]; .loc 1 205 6 cvt.u16.u32 %r313,%r39; add.u16 %r312,%r313,-1; cvt.u32.u16 %r314,%r312; .loc 1 205 35 cvt.u16.u8 %r315,%r314; setp.gt.u16 %r316,%r315,24; @ %r316 bra $L101; .loc 1 209 6 add.u32 %r128,%r39,-16; .loc 1 210 38 add.u64 %r109,%r110,1; .loc 1 210 14 ld.u8 %r319,[%r110+1]; add.u64 %r320,%r557,%r319; ld.u8 %r127,[%r320]; .loc 1 210 38 cvt.u16.u32 %r322,%r127; add.u16 %r321,%r322,-1; cvt.u32.u16 %r323,%r321; cvt.u16.u8 %r324,%r323; setp.gt.u16 %r325,%r324,24; @ %r325 bra $L38; $L39: .loc 1 211 11 shl.b32 %r327,%r128,2; add.u32 %r328,%r327,%r128; add.u32 %r329,%r328,%r328; .loc 1 211 15 add.u32 %r41,%r329,%r127; .loc 1 211 7 add.u32 %r128,%r41,-16; .loc 1 210 38 add.u64 %r109,%r109,1; .loc 1 210 14 ld.u8 %r332,[%r109]; add.u64 %r333,%r557,%r332; ld.u8 %r127,[%r333]; .loc 1 210 38 cvt.u16.u32 %r335,%r127; add.u16 %r334,%r335,-1; cvt.u32.u16 %r336,%r334; cvt.u16.u8 %r337,%r336; setp.le.u16 %r338,%r337,24; @ %r338 bra $L39; $L38: .loc 1 212 6 setp.eq.u32 %r339,%r111,0; @ %r339 bra $L40; .loc 1 213 7 neg.s32 %r128,%r128; $L40: .loc 1 214 5 add.u32 %r115,%r115,%r128; bra $L35; $L98: .loc 1 194 2 mov.u64 %r26,%r109; bra $L35; $L101: mov.u64 %r109,%r26; $L35: .loc 1 216 6 st.u64 [%r223],%r109; .loc 1 217 5 setp.eq.u32 %r340,%r147,0; @ %r340 bra $L41; $L89: .loc 1 218 32 setp.ne.u32 %r341,%r146,0; selp.u32 %r221,0,6,%r341; bra $L18; $L41: .loc 1 219 9 sub.u64 %r342,%r26,%r144; .loc 1 219 14 cvt.u32.u64 %r343,%r342; add.u32 %r143,%r343,-1; .loc 1 220 15 setp.le.s32 %r344,%r143,7; @ %r344 bra $L103; .loc 1 220 8 mov.u32 %r142,%r147; $L44: .loc 1 221 4 add.u32 %r142,%r142,1; .loc 1 220 22 shr.s32 %r143,%r143,1; .loc 1 220 15 setp.gt.s32 %r345,%r143,7; @ %r345 bra $L44; bra $L43; $L103: .loc 1 220 8 mov.u32 %r142,%r147; $L43: .loc 1 222 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r142; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r348,[%value_in]; } mov.u64 %r108,%r348; setp.ne.u64 %r349,%r348,0; @ %r349 bra $L45; cvta.const.u64 %r353,$LC0; mov.u32 %r351,222; cvta.const.u64 %r350,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r350; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r351; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r348; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r353; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L45: .loc 1 223 4 add.u64 %r114,%r348,24; .loc 1 226 11 setp.ge.u64 %r354,%r144,%r26; @ %r354 bra $L104; .loc 1 223 4 mov.u64 %r178,%r114; .loc 1 224 4 mov.u32 %r123,%r147; .loc 1 225 4 mov.u32 %r116,0; .loc 1 227 6 cvt.u16.u32 %r356,%r122; $L53: add.u64 %r141,%r26,-1; ld.u8 %r355,[%r26+-1]; setp.eq.u16 %r357,%r355,%r356; @ %r357 bra $L47; $L50: .loc 1 233 6 setp.eq.u32 %r358,%r123,32; @ ! %r358 bra $L170; bra $L48; $L47: .loc 1 227 42 sub.u64 %r359,%r141,%r231; add.u64 %r50,%r359,1; .loc 1 227 25 setp.lt.u64 %r361,%r50,%r144; @ %r361 bra $L50; .loc 1 228 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r120; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r231; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r365,[%value_in]; } .loc 1 228 7 setp.eq.u32 %r366,%r365,0; @ ! %r366 bra $L50; bra $L105; $L170: .loc 1 239 5 mov.u32 %r112,%r123; add.u32 %r123,%r123,4; bra $L52; $L48: .loc 1 234 9 st.u32 [%r178],%r116; .loc 1 234 6 add.u64 %r178,%r178,4; .loc 1 236 6 mov.u32 %r112,%r147; .loc 1 234 9 mov.u32 %r123,4; .loc 1 235 6 mov.u32 %r116,0; $L52: .loc 1 238 9 ld.u8 %r369,[%r26+-1]; add.u64 %r370,%r557,%r369; .loc 1 238 27 ld.u8 %r559,[%r370]; mov.u16 %r373,%r559; and.b16 %r372,%r373,15; cvt.u32.u16 %r374,%r372; cvt.u32.u8 %r375,%r374; .loc 1 238 35 shl.b32 %r376,%r375,%r112; .loc 1 238 5 or.b32 %r116,%r116,%r376; .loc 1 227 6 mov.u64 %r26,%r141; bra $L51; $L105: mov.u64 %r26,%r50; $L51: .loc 1 226 11 setp.gt.u64 %r377,%r26,%r144; @ %r377 bra $L53; bra $L46; $L104: .loc 1 223 4 mov.u64 %r178,%r114; .loc 1 225 4 mov.u32 %r116,0; $L46: .loc 1 241 7 st.u32 [%r178],%r116; .loc 1 241 4 add.u64 %r378,%r178,4; .loc 1 242 18 sub.u64 %r379,%r378,%r114; shr.s64 %r381,%r379,2; .loc 1 242 14 cvt.u32.u64 %r130,%r381; .loc 1 242 10 st.u32 [%r348+20],%r130; .loc 1 243 8 shl.b32 %r60,%r130,5; .loc 1 243 13 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r116; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r383,[%value_in]; } .loc 1 243 4 sub.u32 %r131,%r60,%r383; .loc 1 244 8 ld.u32 %r113,[%r224]; .loc 1 247 5 setp.le.s32 %r384,%r131,%r113; @ %r384 bra $L54; .loc 1 248 5 sub.u32 %r134,%r131,%r113; .loc 1 249 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r348; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r387,[%value_in]; } mov.u32 %r62,%r387; .loc 1 249 6 setp.eq.u32 %r388,%r62,0; @ %r388 bra $L55; .loc 1 251 6 add.u32 %r135,%r134,-1; .loc 1 252 11 shr.s32 %r389,%r135,5; .loc 1 252 9 cvt.s64.s32 %r390,%r389; shl.b64 %r391,%r390,2; add.u64 %r392,%r114,%r391; .loc 1 252 31 and.b32 %r393,%r135,31; .loc 1 252 25 mov.u32 %r395,1; shl.b32 %r394,%r395,%r393; .loc 1 252 21 ld.u32 %r397,[%r392]; and.b32 %r396,%r394,%r397; .loc 1 252 7 setp.eq.u32 %r398,%r396,0; @ %r398 bra $L106; .loc 1 254 8 setp.le.s32 %r399,%r135,1; @ %r399 bra $L56; .loc 1 254 18 add.u32 %r402,%r134,-2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r348; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r402; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r403,[%value_in]; } .loc 1 254 15 setp.ne.u32 %r404,%r403,0; @ %r404 bra $L107; $L56: .loc 1 253 14 mov.u32 %r62,2; bra $L55; $L106: .loc 1 250 13 mov.u32 %r62,%r395; bra $L55; $L107: .loc 1 255 15 mov.u32 %r62,3; $L55: .loc 1 258 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r348; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call rshift,(%out_arg1,%out_arg2); } .loc 1 259 5 add.u32 %r115,%r115,%r134; bra $L57; $L54: .loc 1 261 10 setp.ge.s32 %r407,%r131,%r113; @ %r407 bra $L108; .loc 1 262 5 sub.u32 %r133,%r113,%r131; .loc 1 263 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r348; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r133; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r411,[%value_in]; } mov.u64 %r108,%r411; .loc 1 264 5 sub.u32 %r115,%r115,%r133; .loc 1 265 5 add.u64 %r114,%r108,24; .loc 1 245 11 mov.u32 %r62,0; bra $L57; $L108: mov.u32 %r62,0; $L57: .loc 1 267 5 ld.u32 %r412,[%r224+8]; setp.ge.s32 %r413,%r412,%r115; @ %r413 bra $L58; $L59: .loc 1 269 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 270 7 mov.u64 %r416,0; st.u64 [%r226],%r416; .loc 1 271 10 mov.u32 %r221,163; bra $L18; $L58: .loc 1 274 13 ld.u32 %r74,[%r224+4]; .loc 1 274 5 setp.le.s32 %r417,%r74,%r115; @ %r417 bra $L109; .loc 1 276 5 sub.u32 %r136,%r74,%r115; .loc 1 277 6 setp.gt.s32 %r418,%r113,%r136; @ %r418 bra $L61; .loc 1 278 15 ld.u32 %r75,[%r224+12]; .loc 1 278 4 setp.eq.u32 %r419,%r75,2; @ %r419 bra $L62; setp.eq.u32 %r420,%r75,3; @ %r420 bra $L63; setp.ne.u32 %r421,%r75,1; @ %r421 bra $L64; .loc 1 280 8 setp.eq.u32 %r422,%r113,%r136; @ ! %r422 bra $L64; .loc 1 280 20 setp.eq.u32 %r423,%r113,1; @ %r423 bra $L66; .loc 1 280 33 add.u32 %r426,%r113,-1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r426; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r427,[%value_in]; } .loc 1 280 30 setp.eq.u32 %r428,%r427,0; @ %r428 bra $L64; .loc 1 290 16 ld.u32 %r74,[%r224+4]; bra $L66; $L62: .loc 1 284 8 setp.eq.u32 %r429,%r227,0; @ ! %r429 bra $L64; bra $L66; $L63: .loc 1 288 8 setp.eq.u32 %r430,%r227,0; @ %r430 bra $L64; $L66: .loc 1 290 11 st.u32 [%r225],%r74; .loc 1 291 21 mov.u32 %r431,1; st.u32 [%r108+20],%r431; .loc 1 291 11 st.u32 [%r114],%r431; .loc 1 292 10 st.u64 [%r226],%r108; .loc 1 293 13 mov.u32 %r221,98; bra $L18; $L64: .loc 1 297 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 298 8 mov.u64 %r435,0; st.u64 [%r226],%r435; .loc 1 299 11 mov.u32 %r221,80; bra $L18; $L61: .loc 1 301 5 add.u32 %r137,%r136,-1; .loc 1 302 6 setp.ne.u32 %r436,%r62,0; @ %r436 bra $L110; .loc 1 304 11 setp.eq.u32 %r437,%r137,0; @ %r437 bra $L68; .loc 1 305 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r137; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r440,[%value_in]; } mov.u32 %r62,%r440; bra $L68; $L110: .loc 1 303 13 mov.u32 %r62,1; $L68: .loc 1 306 10 shr.s32 %r441,%r137,5; .loc 1 306 8 cvt.s64.s32 %r442,%r441; shl.b64 %r443,%r442,2; add.u64 %r444,%r114,%r443; .loc 1 306 30 and.b32 %r445,%r137,31; .loc 1 306 24 mov.u32 %r447,1; shl.b32 %r446,%r447,%r445; .loc 1 306 20 ld.u32 %r449,[%r444]; and.b32 %r448,%r446,%r449; .loc 1 306 6 setp.eq.u32 %r450,%r448,0; @ %r450 bra $L69; .loc 1 307 13 or.b32 %r62,%r62,2; $L69: .loc 1 308 9 sub.u32 %r113,%r113,%r136; .loc 1 309 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r136; call rshift,(%out_arg1,%out_arg2); } .loc 1 310 5 ld.u32 %r115,[%r224+4]; .loc 1 275 7 mov.u32 %r221,2; bra $L60; $L109: .loc 1 273 6 mov.u32 %r221,1; $L60: .loc 1 312 5 setp.eq.u32 %r453,%r62,0; @ %r453 bra $L70; .loc 1 314 13 ld.u32 %r86,[%r224+12]; .loc 1 314 3 setp.eq.u32 %r454,%r86,2; @ %r454 bra $L71; setp.eq.u32 %r455,%r86,3; @ %r455 bra $L72; setp.ne.u32 %r456,%r86,1; @ %r456 bra $L73; .loc 1 318 21 and.b32 %r457,%r62,2; .loc 1 318 10 setp.eq.u32 %r458,%r457,0; @ %r458 bra $L73; .loc 1 319 27 ld.u32 %r460,[%r114]; or.b32 %r459,%r62,%r460; and.b32 %r461,%r459,1; .loc 1 319 8 setp.ne.u32 %r462,%r461,0; @ %r462 bra $L74; bra $L73; $L71: .loc 1 323 7 mov.u32 %r463,1; sub.u32 %r227,%r463,%r227; $L72: .loc 1 328 6 setp.eq.u32 %r464,%r227,0; @ %r464 bra $L73; $L74: .loc 1 329 6 ld.u32 %r138,[%r108+20]; .loc 1 110 4 add.u64 %r148,%r108,24; .loc 1 111 9 cvt.s64.s32 %r465,%r138; shl.b64 %r149,%r465,2; .loc 1 111 5 add.u64 %r150,%r148,%r149; mov.u64 %r191,%r148; .loc 1 118 8 mov.u32 %r558,0; $L77: .loc 1 114 7 ld.u32 %r152,[%r191]; .loc 1 114 6 setp.eq.u32 %r466,%r152,-1; @ %r466 bra $L75; .loc 1 115 4 add.u32 %r467,%r152,1; st.u32 [%r191],%r467; .loc 1 116 11 bra $L76; $L75: .loc 1 118 8 st.u32 [%r191],%r558; .loc 1 119 13 add.u64 %r191,%r191,4; setp.gt.u64 %r469,%r150,%r191; @ %r469 bra $L77; .loc 1 131 8 ld.u32 %r154,[%r108+20]; .loc 1 131 6 ld.u32 %r470,[%r108+12]; setp.lt.s32 %r471,%r154,%r470; @ %r471 bra $L78; .loc 1 132 9 ld.u32 %r475,[%r108+8]; add.u32 %r474,%r475,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r476,[%value_in]; } setp.ne.u64 %r477,%r476,0; @ %r477 bra $L79; cvta.const.u64 %r481,$LC0; mov.u32 %r479,132; cvta.const.u64 %r478,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r478; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r479; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r476; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r481; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L79: .loc 1 133 4 ld.s32 %r485,[%r108+20]; add.u64 %r486,%r485,2; shl.b64 %r487,%r486,2; add.u64 %r488,%r108,16; add.u64 %r489,%r476,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r489; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r488; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r487; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r490,[%value_in]; } .loc 1 134 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 137 10 ld.u32 %r154,[%r476+20]; .loc 1 331 6 add.u64 %r148,%r476,24; mov.u64 %r108,%r476; $L78: .loc 1 137 16 add.u32 %r493,%r154,1; st.u32 [%r108+20],%r493; .loc 1 137 20 cvt.s64.s32 %r494,%r154; add.u64 %r495,%r494,4; shl.b64 %r496,%r495,2; add.u64 %r497,%r108,%r496; mov.u32 %r499,1; st.u32 [%r497+8],%r499; $L76: .loc 1 332 7 setp.ne.u32 %r500,%r221,2; @ %r500 bra $L80; .loc 1 333 29 ld.u32 %r502,[%r224]; add.u32 %r501,%r502,-1; .loc 1 333 8 setp.ne.u32 %r503,%r501,%r113; @ %r503 bra $L111; .loc 1 334 17 shr.s32 %r504,%r113,5; .loc 1 334 10 cvt.s64.s32 %r505,%r504; shl.b64 %r506,%r505,2; add.u64 %r507,%r148,%r506; .loc 1 334 42 and.b32 %r508,%r113,31; .loc 1 334 32 mov.u32 %r510,1; shl.b32 %r509,%r510,%r508; .loc 1 334 28 ld.u32 %r512,[%r507]; and.b32 %r511,%r509,%r512; .loc 1 334 6 setp.eq.u32 %r513,%r511,0; selp.u32 %r221,34,33,%r513; bra $L70; $L80: .loc 1 337 15 ld.u32 %r101,[%r108+20]; .loc 1 337 12 setp.gt.s32 %r514,%r101,%r138; @ %r514 bra $L82; .loc 1 338 12 and.b32 %r139,%r113,31; .loc 1 338 5 setp.eq.u32 %r515,%r139,0; @ %r515 bra $L113; .loc 1 339 13 add.u64 %r517,%r148,%r149; ld.u32 %r516,[%r517+-4]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r516; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r519,[%value_in]; } .loc 1 339 33 mov.u32 %r521,32; sub.u32 %r520,%r521,%r139; .loc 1 339 9 setp.ge.s32 %r522,%r519,%r520; @ %r522 bra $L114; .loc 1 79 11 ld.u32 %r101,[%r108+20]; $L82: .loc 1 79 5 setp.le.s32 %r523,%r101,0; @ %r523 bra $L83; .loc 1 80 10 cvt.s64.s32 %r524,%r101; shl.b64 %r525,%r524,2; .loc 1 80 6 add.u64 %r167,%r148,%r525; .loc 1 84 6 ld.u32 %r526,[%r108+24]; shr.u32 %r174,%r526,1; .loc 1 84 10 add.u64 %r527,%r108,28; .loc 1 85 12 setp.le.u64 %r528,%r167,%r527; @ %r528 bra $L84; mov.u64 %r197,%r527; mov.u64 %r195,%r148; $L85: .loc 1 86 22 ld.u32 %r530,[%r197]; shl.b32 %r529,%r530,31; .loc 1 86 29 or.b32 %r531,%r529,%r174; .loc 1 86 11 st.u32 [%r195],%r531; .loc 1 87 7 ld.u32 %r532,[%r197]; shr.u32 %r174,%r532,1; .loc 1 85 12 add.u64 %r197,%r197,4; add.u64 %r195,%r195,4; setp.gt.u64 %r533,%r167,%r197; @ %r533 bra $L85; .loc 1 86 8 sub.u64 %r534,%r167,%r108; add.u64 %r536,%r534,-29; and.b64 %r538,%r536,-4; add.u64 %r539,%r538,4; add.u64 %r118,%r148,%r539; .loc 1 89 13 st.u32 [%r118],%r174; .loc 1 89 7 setp.eq.u32 %r540,%r174,0; @ %r540 bra $L86; bra $L92; $L116: .loc 1 77 9 mov.u64 %r118,%r148; $L92: .loc 1 90 7 add.u64 %r118,%r118,4; $L86: .loc 1 96 20 sub.u64 %r541,%r118,%r148; shr.s64 %r543,%r541,2; .loc 1 96 15 cvt.u32.u64 %r177,%r543; st.u32 [%r108+20],%r177; .loc 1 96 5 setp.ne.u32 %r544,%r177,0; @ %r544 bra $L87; $L88: .loc 1 97 12 mov.u32 %r545,0; st.u32 [%r108+24],%r545; $L87: .loc 1 341 8 add.u32 %r115,%r115,1; ld.u32 %r546,[%r224+8]; setp.lt.s32 %r547,%r546,%r115; @ %r547 bra $L59; mov.u32 %r221,33; bra $L70; $L111: mov.u32 %r221,34; bra $L70; $L113: mov.u32 %r221,33; bra $L70; $L114: mov.u32 %r221,33; bra $L70; $L73: .loc 1 347 8 or.b32 %r221,%r221,16; $L70: .loc 1 349 6 st.u64 [%r226],%r108; .loc 1 350 7 st.u32 [%r225],%r115; .loc 1 351 9 bra $L18; $L83: .loc 1 96 15 mov.u32 %r549,0; st.u32 [%r108+20],%r549; bra $L88; $L171: .loc 1 216 6 st.u64 [%r223],%r26; bra $L89; $L23: .loc 1 194 9 ld.u8 %r30,[%r144]; mov.u64 %r26,%r144; $L24: .loc 1 194 2 cvt.u16.u32 %r551,%r30; and.b16 %r553,%r551,223; setp.eq.u16 %r554,%r553,80; @ ! %r554 bra $L171; bra $L115; $L172: .loc 1 96 15 st.u32 [%r108+20],%r174; bra $L88; $L84: .loc 1 89 13 st.u32 [%r108+24],%r174; .loc 1 89 7 setp.ne.u32 %r556,%r174,0; @ %r556 bra $L116; bra $L172; $L18: .loc 1 352 1 mov.u32 %value,%r221; st.param.u32 [%value_out],%value; ret; } /346 0 0 0 644 9727 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __match .visible .func (.param .u32 %value_out) __match (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/gdtoa-hexnan.c" // BEGIN GLOBAL FUNCTION DECL: __hexnan .visible .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __hexdig .extern .const .align 1 .u8 __hexdig[]; // BEGIN GLOBAL FUNCTION DEF: __match .visible .func (.param .u32 %value_out) __match (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; mov.u64 %r32,%ar0; .loc 1 52 14 ld.u64 %r27,[%r32]; mov.u64 %r25,%ar1; .loc 1 54 7 bra $L2; $L5: .loc 1 55 12 ld.s8 %r26,[%r27]; .loc 1 55 25 add.u32 %r34,%r26,-65; setp.gt.u32 %r35,%r34,25; @ %r35 bra $L3; .loc 1 56 6 add.u32 %r26,%r26,32; $L3: .loc 1 57 6 add.u64 %r25,%r25,1; setp.ne.u32 %r36,%r26,%r28; @ %r36 bra $L6; $L2: .loc 1 54 12 ld.s8 %r28,[%r25]; .loc 1 55 6 add.u64 %r27,%r27,1; .loc 1 54 20 setp.ne.u32 %r37,%r28,0; @ %r37 bra $L5; .loc 1 60 6 st.u64 [%r32],%r27; .loc 1 61 9 mov.u32 %r31,1; bra $L1; $L6: .loc 1 58 11 mov.u32 %r31,0; $L1: .loc 1 62 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __hexnan .visible .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r38; .reg .u32 %r39; .reg .u64 %r45; .reg .u32 %r47; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r96; .reg .u32 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u64 %r113; .reg .u64 %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .pred %r130; .reg .u32 %r133; .reg .u32 %r134; .reg .pred %r135; .reg .pred %r137; .reg .u64 %r138; .reg .pred %r139; .reg .u32 %r140; .reg .pred %r141; .reg .u16 %r143; .reg .u16 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .pred %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u16 %r156; .reg .u16 %r157; .reg .u16 %r158; .reg .u32 %r159; .reg .u16 %r160; .reg .pred %r161; .reg .pred %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .pred %r167; .reg .pred %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .pred %r172; .reg .u64 %r173; .reg .u64 %r175; .reg .u32 %r176; .reg .pred %r177; .reg .pred %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .pred %r183; .reg .pred %r184; .reg .pred %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u64 %r190; .reg .u32 %r191; .reg .u32 %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .u16 %r195; mov.u64 %r103,%ar0; mov.u64 %r104,%ar1; mov.u64 %r105,%ar2; .loc 1 89 8 ld.u32 %r53,[%r104]; .loc 1 90 18 shr.s32 %r106,%r53,5; .loc 1 90 9 cvt.s64.s32 %r107,%r106; shl.b64 %r108,%r107,2; .loc 1 90 4 add.u64 %r54,%r105,%r108; .loc 1 91 12 and.b32 %r24,%r53,31; .loc 1 91 5 setp.ne.u32 %r109,%r24,0; @ %r109 bra $L8; .loc 1 93 7 add.u64 %r67,%r54,-4; .loc 1 90 4 mov.u64 %r45,%r54; bra $L9; $L8: .loc 1 92 4 add.u64 %r45,%r54,4; mov.u64 %r67,%r54; $L9: .loc 1 93 7 mov.u32 %r110,0; st.u32 [%r45+-4],%r110; .loc 1 96 4 ld.u64 %r58,[%r103]; .loc 1 97 8 add.u64 %r59,%r58,1; .loc 1 97 11 ld.u8 %r60,[%r58+1]; .loc 1 97 8 setp.ne.u32 %r111,%r60,0; @ %r111 bra $L36; $L19: .loc 1 130 10 mov.u32 %r102,4; bra $L7; $L36: .loc 1 97 8 mov.u64 %r65,%r67; mov.u64 %r38,%r67; .loc 1 95 20 mov.u32 %r52,%r110; .loc 1 95 16 mov.u32 %r51,%r52; .loc 1 95 10 mov.u32 %r47,%r52; cvta.const.u64 %r190,__hexdig; .loc 1 125 9 mov.u32 %r191,%r52; mov.u32 %r192,%r52; .loc 1 71 4 mov.u32 %r193,8; .loc 1 73 4 mov.u32 %r194,32; $L10: .loc 1 98 13 cvt.u64.u32 %r113,%r60; add.u64 %r114,%r190,%r113; ld.u8 %r25,[%r114]; .loc 1 98 6 setp.ne.u32 %r115,%r25,0; @ %r115 bra $L12; .loc 1 99 7 setp.gt.u32 %r116,%r60,32; @ %r116 bra $L13; .loc 1 100 8 setp.le.s32 %r117,%r47,%r51; @ %r117 bra $L14; .loc 1 101 12 set.u32.lt.u64 %r119,%r38,%r65; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 101 22 set.u32.le.s32 %r122,%r52,7; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 101 17 cvt.u16.u8 %r195,%r118; mov.u16 %r125,%r195; cvt.u16.u8 %r195,%r121; mov.u16 %r126,%r195; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 101 9 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L15; $L18: .loc 1 103 9 setp.ge.u64 %r130,%r105,%r38; @ %r130 bra $L37; bra $L51; $L15: .loc 1 71 4 sub.u32 %r68,%r193,%r52; .loc 1 72 4 shl.b32 %r69,%r68,2; .loc 1 73 4 sub.u32 %r70,%r194,%r69; .loc 1 127 10 ld.u32 %r76,[%r38]; add.u64 %r96,%r38,4; mov.u64 %r71,%r38; $L17: .loc 1 75 10 ld.u32 %r73,[%r96]; .loc 1 75 14 shl.b32 %r133,%r73,%r70; .loc 1 75 6 or.b32 %r134,%r133,%r76; st.u32 [%r71],%r134; .loc 1 76 8 shr.u32 %r76,%r73,%r69; st.u32 [%r96],%r76; .loc 1 77 15 add.u64 %r71,%r71,4; add.u64 %r96,%r96,4; setp.lt.u64 %r135,%r71,%r65; @ %r135 bra $L17; bra $L18; $L51: .loc 1 108 11 add.u64 %r65,%r38,-4; st.u32 [%r38+-4],%r191; mov.u32 %r51,%r47; mov.u64 %r38,%r65; .loc 1 110 8 mov.u32 %r52,0; bra $L14; $L13: .loc 1 114 7 setp.ne.u32 %r137,%r60,41; @ %r137 bra $L19; .loc 1 115 13 add.u64 %r138,%r59,1; .loc 1 115 9 st.u64 [%r103],%r138; .loc 1 116 5 bra $L20; $L12: .loc 1 120 10 add.u32 %r47,%r47,1; .loc 1 121 6 add.u32 %r52,%r52,1; setp.gt.s32 %r139,%r52,8; @ %r139 bra $L21; .loc 1 127 13 ld.u32 %r140,[%r38]; shl.b32 %r87,%r140,4; bra $L22; $L21: .loc 1 122 7 setp.ge.u64 %r141,%r105,%r38; @ %r141 bra $L14; .loc 1 125 9 st.u32 [%r38+-4],%r191; add.u64 %r38,%r38,-4; mov.u32 %r87,%r192; .loc 1 124 6 mov.u32 %r52,1; $L22: .loc 1 127 24 cvt.u16.u32 %r144,%r25; and.b16 %r143,%r144,15; cvt.u32.u16 %r145,%r143; cvt.u32.u8 %r146,%r145; .loc 1 127 19 or.b32 %r147,%r146,%r87; .loc 1 127 6 st.u32 [%r38],%r147; bra $L14; $L37: .loc 1 104 9 mov.u32 %r52,8; $L14: .loc 1 97 8 add.u64 %r59,%r59,1; .loc 1 97 11 ld.u8 %r60,[%r59]; .loc 1 97 8 setp.ne.u32 %r148,%r60,0; @ %r148 bra $L10; $L20: .loc 1 129 5 setp.eq.u32 %r149,%r47,0; @ %r149 bra $L19; .loc 1 131 8 set.u32.lt.u64 %r151,%r38,%r65; neg.s32 %r152,%r151; mov.u32 %r150,%r152; .loc 1 131 18 set.u32.le.s32 %r154,%r52,7; neg.s32 %r155,%r154; mov.u32 %r153,%r155; .loc 1 131 13 cvt.u16.u8 %r195,%r150; mov.u16 %r157,%r195; cvt.u16.u8 %r195,%r153; mov.u16 %r158,%r195; and.b16 %r156,%r157,%r158; cvt.u32.u16 %r159,%r156; .loc 1 131 5 cvt.u16.u8 %r160,%r159; setp.ne.u16 %r161,%r160,0; @ %r161 bra $L23; $L27: .loc 1 133 5 setp.lt.u64 %r162,%r105,%r38; @ %r162 bra $L24; bra $L52; $L23: .loc 1 71 4 mov.u32 %r163,8; sub.u32 %r77,%r163,%r52; .loc 1 72 4 shl.b32 %r78,%r77,2; .loc 1 73 4 mov.u32 %r164,32; sub.u32 %r79,%r164,%r78; .loc 1 75 6 ld.u32 %r64,[%r38]; add.u64 %r66,%r38,4; mov.u64 %r80,%r38; $L26: .loc 1 75 10 ld.u32 %r81,[%r66]; .loc 1 75 14 shl.b32 %r165,%r81,%r79; .loc 1 75 6 or.b32 %r166,%r165,%r64; st.u32 [%r80],%r166; .loc 1 76 8 shr.u32 %r64,%r81,%r78; st.u32 [%r66],%r64; .loc 1 77 15 add.u64 %r80,%r80,4; add.u64 %r66,%r66,4; setp.lt.u64 %r167,%r80,%r65; @ %r167 bra $L26; bra $L27; $L24: mov.u64 %r89,%r105; .loc 1 133 5 mov.u64 %r88,%r38; $L28: .loc 1 135 14 ld.u32 %r39,[%r88]; .loc 1 135 12 st.u32 [%r89],%r39; .loc 1 136 12 add.u64 %r88,%r88,4; add.u64 %r89,%r89,4; setp.ge.u64 %r168,%r67,%r88; @ %r168 bra $L28; .loc 1 135 9 add.u64 %r170,%r67,1; add.u64 %r171,%r38,1; setp.lt.u64 %r172,%r170,%r171; @ %r172 bra $L29; sub.u64 %r173,%r67,%r38; and.b64 %r175,%r173,-4; add.u64 %r169,%r175,4; bra $L30; $L29: mov.u64 %r169,4; $L30: add.u64 %r72,%r105,%r169; .loc 1 137 12 mov.u32 %r176,0; $L31: st.u32 [%r72],%r176; .loc 1 138 13 add.u64 %r72,%r72,4; setp.ge.u64 %r177,%r67,%r72; @ %r177 bra $L31; .loc 1 146 7 ld.u32 %r86,[%r45+-4]; bra $L32; $L52: .loc 1 143 8 ld.u32 %r86,[%r45+-4]; .loc 1 142 6 setp.eq.u32 %r178,%r24,0; @ %r178 bra $L32; .loc 1 143 44 mov.u32 %r180,32; sub.u32 %r179,%r180,%r24; .loc 1 143 33 mov.u32 %r182,-1; shr.u32 %r181,%r182,%r179; .loc 1 143 8 and.b32 %r86,%r86,%r181; st.u32 [%r45+-4],%r86; $L32: .loc 1 146 6 setp.ne.u32 %r183,%r86,0; @ %r183 bra $L38; .loc 1 148 6 setp.eq.u64 %r184,%r105,%r67; @ ! %r184 bra $L34; bra $L33; $L35: setp.ne.u64 %r185,%r105,%r67; @ %r185 bra $L34; $L33: .loc 1 149 8 mov.u32 %r186,1; st.u32 [%r67],%r186; .loc 1 153 9 mov.u32 %r102,5; .loc 1 150 4 bra $L7; $L34: .loc 1 145 16 add.u64 %r67,%r67,-4; .loc 1 146 6 ld.u32 %r187,[%r67]; setp.eq.u32 %r188,%r187,0; @ %r188 bra $L35; .loc 1 153 9 mov.u32 %r102,5; bra $L7; $L38: mov.u32 %r102,5; $L7: .loc 1 154 1 mov.u32 %value,%r102; st.param.u32 [%value_out],%value; ret; } lib_a-getc.o/ 0 0 0 644 3037 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getc_r .visible .func (.param .u32 %value_out) _getc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/getc.c" // BEGIN GLOBAL FUNCTION DECL: getc .visible .func (.param .u32 %value_out) getc (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getc_r .visible .func (.param .u32 %value_out) _getc_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 83 3 setp.eq.u64 %r31,%r29,0; @ %r31 bra $L2; ld.u32 %r32,[%r29+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call __sinit,(%out_arg1); } $L2: .loc 1 85 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r28,%r39; bra $L1; $L3: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r28,[%r25]; $L1: .loc 1 88 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getc .visible .func (.param .u32 %value_out) getc (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r30,%ar0; .loc 1 96 18 ld.global.u64 %r28,[_impure_ptr]; .loc 1 98 3 setp.eq.u64 %r31,%r28,0; @ %r31 bra $L9; ld.u32 %r32,[%r28+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __sinit,(%out_arg1); } $L9: .loc 1 100 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L10; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r29,%r39; bra $L8; $L10: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r29,[%r25]; $L8: .loc 1 103 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-getc_u.o/ 0 0 0 644 2498 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getc_unlocked_r .visible .func (.param .u32 %value_out) _getc_unlocked_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/getc_u.c" // BEGIN GLOBAL FUNCTION DECL: getc_unlocked .visible .func (.param .u32 %value_out) getc_unlocked (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getc_unlocked_r .visible .func (.param .u32 %value_out) _getc_unlocked_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r34; .reg .u64 %r35; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 77 10 ld.u32 %r30,[%r29+8]; add.u32 %r23,%r30,-1; st.u32 [%r29+8],%r23; setp.ge.s32 %r31,%r23,0; @ %r31 bra $L2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r34,[%value_in]; } mov.u32 %r27,%r34; bra $L1; $L2: ld.u64 %r24,[%r29]; add.u64 %r35,%r24,1; st.u64 [%r29],%r35; ld.u8 %r27,[%r24]; $L1: .loc 1 78 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getc_unlocked .visible .func (.param .u32 %value_out) getc_unlocked (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; mov.u64 %r29,%ar0; .loc 1 85 10 ld.u32 %r30,[%r29+8]; add.u32 %r23,%r30,-1; st.u32 [%r29+8],%r23; setp.ge.s32 %r31,%r23,0; @ %r31 bra $L5; ld.global.u64 %r34,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } mov.u32 %r28,%r35; bra $L4; $L5: ld.u64 %r25,[%r29]; add.u64 %r36,%r25,1; st.u64 [%r29],%r36; ld.u8 %r28,[%r25]; $L4: .loc 1 86 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-getchar.o/0 0 0 644 1642 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getchar_r .visible .func (.param .u32 %value_out) _getchar_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/getchar.c" // BEGIN GLOBAL FUNCTION DECL: getchar .visible .func (.param .u32 %value_out) getchar; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _getc_r .extern .func (.param .u32 %value_out) _getc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getchar_r .visible .func (.param .u32 %value_out) _getchar_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 78 10 ld.u64 %r27,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 79 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getchar .visible .func (.param .u32 %value_out) getchar { .reg .u32 %value; .reg .u64 %r23; .reg .u64 %r27; .reg .u32 %r28; .loc 1 86 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 90 10 ld.u64 %r27,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 91 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /368 0 0 0 644 1752 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getchar_unlocked_r .visible .func (.param .u32 %value_out) _getchar_unlocked_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/getchar_u.c" // BEGIN GLOBAL FUNCTION DECL: getchar_unlocked .visible .func (.param .u32 %value_out) getchar_unlocked; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _getc_unlocked_r .extern .func (.param .u32 %value_out) _getc_unlocked_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getchar_unlocked_r .visible .func (.param .u32 %value_out) _getchar_unlocked_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 75 10 ld.u64 %r27,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_unlocked_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 76 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getchar_unlocked .visible .func (.param .u32 %value_out) getchar_unlocked { .reg .u32 %value; .reg .u64 %r22; .reg .u64 %r27; .reg .u32 %r28; .loc 1 85 36 ld.global.u64 %r22,[_impure_ptr]; .loc 1 85 10 ld.u64 %r27,[%r22+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_unlocked_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 86 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /387 0 0 0 644 5307 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __getdelim .visible .func (.param .u64 %value_out) __getdelim (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/getdelim.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: getc_unlocked .extern .func (.param .u32 %value_out) getc_unlocked (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __getdelim .visible .func (.param .u64 %value_out) __getdelim (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r26; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .pred %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .pred %r78; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .pred %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .pred %r99; .reg .u16 %r100; mov.u64 %r47,%ar0; mov.u64 %r48,%ar1; mov.u32 %r49,%ar2; mov.u64 %r50,%ar3; .loc 1 55 28 set.u32.eq.u64 %r52,%r47,0; neg.s32 %r53,%r52; mov.u32 %r51,%r53; .loc 1 55 36 set.u32.eq.u64 %r55,%r48,0; neg.s32 %r56,%r55; mov.u32 %r54,%r56; cvt.u16.u8 %r100,%r51; mov.u16 %r58,%r100; cvt.u16.u8 %r100,%r54; mov.u16 %r59,%r100; or.b16 %r57,%r58,%r59; cvt.u32.u16 %r60,%r57; .loc 1 55 10 set.u32.eq.u64 %r62,%r50,0; neg.s32 %r63,%r62; mov.u32 %r61,%r63; .loc 1 55 36 cvt.u16.u8 %r100,%r60; mov.u16 %r65,%r100; cvt.u16.u8 %r100,%r61; mov.u16 %r66,%r100; or.b16 %r64,%r65,%r66; cvt.u32.u16 %r67,%r64; cvt.u16.u8 %r68,%r67; setp.eq.u16 %r69,%r68,0; @ %r69 bra $L2; .loc 1 57 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 57 13 mov.u32 %r71,22; st.u32 [%r70],%r71; .loc 1 58 14 mov.u64 %r46,-1; bra $L1; $L2: .loc 1 61 7 ld.u64 %r39,[%r47]; .loc 1 62 6 setp.eq.u64 %r72,%r39,0; @ %r72 bra $L4; .loc 1 62 19 ld.u64 %r73,[%r48]; setp.gt.u64 %r74,%r73,3; @ %r74 bra $L5; $L4: .loc 1 64 21 mov.u64 %r76,128; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r76; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r77,[%value_in]; } mov.u64 %r39,%r77; .loc 1 65 10 setp.ne.u64 %r78,%r39,0; @ %r78 bra $L6; $L13: .loc 1 67 11 mov.u64 %r46,-1; bra $L1; $L6: .loc 1 69 15 st.u64 [%r47],%r39; .loc 1 70 10 st.u64 [%r48],%r76; $L5: .loc 1 73 3 ld.global.u64 %r35,[_impure_ptr]; setp.eq.u64 %r80,%r35,0; @ %r80 bra $L7; ld.u32 %r81,[%r35+80]; setp.ne.u32 %r82,%r81,0; @ %r82 bra $L7; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call __sinit,(%out_arg1); } $L7: .loc 1 77 12 ld.u64 %r40,[%r48]; mov.u64 %r45,%r39; bra $L8; $L10: .loc 1 87 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; call (%value_in),getc_unlocked,(%out_arg1); ld.param.u32 %r85,[%value_in]; } .loc 1 87 14 setp.eq.u32 %r86,%r85,-1; @ %r86 bra $L9; add.u64 %r26,%r26,1; .loc 1 94 22 st.u8 [%r34],%r85; .loc 1 95 18 setp.eq.u32 %r87,%r85,%r49; @ %r87 bra $L9; $L12: mov.u64 %r34,%r26; .loc 1 85 25 setp.ne.u64 %r88,%r33,%r26; @ %r88 bra $L10; bra $L29; $L30: .loc 1 116 19 st.u64 [%r47],%r45; .loc 1 117 14 st.u64 [%r48],%r95; .loc 1 118 21 cvt.s64.s32 %r32,%r37; .loc 1 118 15 add.u64 %r39,%r45,%r32; .loc 1 119 20 sub.u64 %r40,%r95,%r32; $L8: mov.u64 %r26,%r39; add.u64 %r89,%r40,-1; add.u64 %r33,%r26,%r89; bra $L12; $L14: .loc 1 130 8 mov.u32 %r90,0; st.u8 [%r26],%r90; .loc 1 131 10 sub.u64 %r46,%r26,%r45; bra $L1; $L9: .loc 1 126 6 setp.eq.u64 %r92,%r45,%r26; @ ! %r92 bra $L14; bra $L13; $L29: .loc 1 106 21 sub.u64 %r93,%r33,%r45; .loc 1 106 15 cvt.u32.u64 %r37,%r93; .loc 1 107 19 ld.u64 %r94,[%r48]; add.u64 %r95,%r94,%r94; .loc 1 108 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r95; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r98,[%value_in]; } mov.u64 %r45,%r98; .loc 1 109 14 setp.eq.u64 %r99,%r45,0; @ ! %r99 bra $L30; bra $L14; $L1: .loc 1 132 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-getenv.o/ 0 0 0 644 2087 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _findenv .visible .func (.param .u64 %value_out) _findenv (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/getenv.c" // BEGIN GLOBAL FUNCTION DECL: getenv .visible .func (.param .u64 %value_out) getenv (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _findenv_r .extern .func (.param .u64 %value_out) _findenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _findenv .visible .func (.param .u64 %value_out) _findenv (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 69 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_findenv_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 70 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getenv .visible .func (.param .u64 %value_out) getenv (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u64 %r28; .reg .u64 %r29; mov.u64 %r24,%ar0; .loc 1 82 10 ld.global.u64 %r28,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_findenv_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r29,[%value_in]; } .loc 1 83 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } /405 0 0 0 644 5315 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _findenv_r .visible .func (.param .u64 %value_out) _findenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/getenv_r.c" // BEGIN GLOBAL FUNCTION DECL: _getenv_r .visible .func (.param .u64 %value_out) _getenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: environ .extern .global .align 8 .u64 environ[1]; // BEGIN GLOBAL FUNCTION DECL: __env_lock .extern .func __env_lock (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __env_unlock .extern .func __env_unlock (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _findenv_r .visible .func (.param .u64 %value_out) _findenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .pred %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .pred %r62; .reg .u32 %r64; .reg .u16 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u16 %r72; .reg .u16 %r73; .reg .u16 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u32 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u16 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r94; .reg .pred %r96; .reg .u16 %r98; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; mov.u64 %r46,%ar2; .loc 1 84 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __env_lock,(%out_arg1); } .loc 1 88 8 ld.global.u64 %r38,[environ]; .loc 1 88 6 setp.eq.u64 %r48,%r38,0; @ %r48 bra $L2; .loc 1 95 10 ld.s8 %r22,[%r45]; .loc 1 95 13 cvt.u16.u32 %r50,%r22; set.u32.ne.u16 %r51,%r50,61; neg.s32 %r52,%r51; mov.u32 %r49,%r52; set.u32.ne.u16 %r55,%r50,0; neg.s32 %r56,%r55; mov.u32 %r53,%r56; cvt.u16.u8 %r98,%r49; mov.u16 %r58,%r98; cvt.u16.u8 %r98,%r53; mov.u16 %r59,%r98; and.b16 %r57,%r58,%r59; cvt.u32.u16 %r60,%r57; cvt.u16.u8 %r61,%r60; setp.ne.u16 %r62,%r61,0; @ %r62 bra $L10; mov.u64 %r39,%r45; bra $L4; $L2: .loc 1 90 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __env_unlock,(%out_arg1); } .loc 1 91 14 mov.u64 %r43,0; bra $L1; $L10: .loc 1 95 13 mov.u64 %r39,%r45; $L3: .loc 1 95 29 add.u64 %r39,%r39,1; .loc 1 95 10 ld.s8 %r22,[%r39]; .loc 1 95 13 cvt.u16.u32 %r65,%r22; set.u32.ne.u16 %r66,%r65,0; neg.s32 %r67,%r66; mov.u32 %r64,%r67; set.u32.ne.u16 %r70,%r65,61; neg.s32 %r71,%r70; mov.u32 %r68,%r71; cvt.u16.u8 %r98,%r64; mov.u16 %r73,%r98; cvt.u16.u8 %r98,%r68; mov.u16 %r74,%r98; and.b16 %r72,%r73,%r74; cvt.u32.u16 %r75,%r72; cvt.u16.u8 %r76,%r75; setp.ne.u16 %r77,%r76,0; @ %r77 bra $L3; $L4: .loc 1 98 5 cvt.u16.u32 %r78,%r22; setp.ne.u16 %r79,%r78,61; @ ! %r79 bra $L2; .loc 1 100 13 sub.u64 %r80,%r39,%r45; .loc 1 100 9 cvt.u32.u64 %r36,%r80; .loc 1 101 26 ld.u64 %r35,[%r38]; setp.eq.u64 %r81,%r35,0; @ %r81 bra $L2; .loc 1 102 12 cvt.s64.s32 %r42,%r36; $L9: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r45; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r42; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r85,[%value_in]; } .loc 1 102 10 setp.ne.u32 %r86,%r85,0; @ %r86 bra $L8; .loc 1 103 17 ld.u64 %r87,[%r38]; add.u64 %r37,%r87,%r42; .loc 1 103 12 ld.u8 %r89,[%r37]; cvt.s16.s8 %r88,%r89; setp.ne.u16 %r90,%r88,61; @ %r90 bra $L8; .loc 1 105 16 ld.global.u64 %r92,[environ]; sub.u64 %r91,%r38,%r92; shr.s64 %r94,%r91,3; .loc 1 105 12 st.u32 [%r46],%r94; .loc 1 106 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __env_unlock,(%out_arg1); } .loc 1 107 11 add.u64 %r43,%r37,1; bra $L1; $L8: .loc 1 101 30 add.u64 %r38,%r38,8; .loc 1 101 26 ld.u64 %r35,[%r38]; setp.ne.u64 %r96,%r35,0; @ %r96 bra $L9; bra $L2; $L1: .loc 1 112 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _getenv_r .visible .func (.param .u64 %value_out) _getenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r28; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 125 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_findenv_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r28,[%value_in]; } .loc 1 126 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-getline.o/0 0 0 644 1360 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __getline .visible .func (.param .u64 %value_out) __getline (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/getline.c" // BEGIN GLOBAL FUNCTION DECL: __getdelim .extern .func (.param .u64 %value_out) __getdelim (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: __getline .visible .func (.param .u64 %value_out) __getline (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 44 10 mov.u32 %r28,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r25; call (%value_in),__getdelim,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 45 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /423 0 0 0 644 524 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __getreent .visible .func (.param .u64 %value_out) __getreent; .file 1 "../../../../../newlib/libc/reent/getreent.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: __getreent .visible .func (.param .u64 %value_out) __getreent { .reg .u64 %value; .loc 1 19 10 ld.global.u64 %value,[_impure_ptr]; .loc 1 20 1 st.param.u64 [%value_out],%value; ret; } lib_a-gets.o/ 0 0 0 644 3014 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _gets_r .visible .func (.param .u64 %value_out) _gets_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/gets.c" // BEGIN GLOBAL FUNCTION DECL: gets .visible .func (.param .u64 %value_out) gets (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _gets_r .visible .func (.param .u64 %value_out) _gets_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .pred %r49; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; .loc 1 74 6 ld.u64 %r31,[%r34+8]; .loc 1 75 3 ld.u32 %r36,[%r34+80]; setp.ne.u32 %r37,%r36,0; @ %r37 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call __sinit,(%out_arg1); } $L2: mov.u64 %r26,%r35; bra $L3; $L7: .loc 1 78 8 setp.ne.u32 %r39,%r46,-1; @ %r39 bra $L4; .loc 1 79 10 setp.eq.u64 %r40,%r26,%r35; @ %r40 bra $L9; $L8: .loc 1 88 6 mov.u32 %r41,0; st.u8 [%r26],%r41; .loc 1 90 10 mov.u64 %r33,%r35; bra $L1; $L4: .loc 1 87 12 st.u8 [%r26],%r32; add.u64 %r26,%r26,1; $L3: .loc 1 77 15 ld.u32 %r42,[%r31+8]; add.u32 %r25,%r42,-1; st.u32 [%r31+8],%r25; setp.ge.s32 %r43,%r25,0; @ %r43 bra $L6; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r46,[%value_in]; } mov.u32 %r32,%r46; .loc 1 77 36 setp.ne.u32 %r47,%r46,10; @ %r47 bra $L7; bra $L8; $L6: .loc 1 77 15 ld.u64 %r27,[%r31]; add.u64 %r48,%r27,1; st.u64 [%r31],%r48; ld.u8 %r32,[%r27]; .loc 1 77 36 setp.ne.u32 %r49,%r32,10; @ %r49 bra $L4; bra $L8; $L9: .loc 1 82 11 mov.u64 %r33,0; $L1: .loc 1 91 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: gets .visible .func (.param .u64 %value_out) gets (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 98 10 ld.global.u64 %r27,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_gets_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 99 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } /441 0 0 0 644 1574 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _gettimeofday_r .visible .func (.param .u32 %value_out) _gettimeofday_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/reent/gettimeofdayr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: gettimeofday .extern .func (.param .u32 %value_out) gettimeofday (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _gettimeofday_r .visible .func (.param .u32 %value_out) _gettimeofday_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 61 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 62 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),gettimeofday,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 62 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 62 66 ld.global.u32 %r22,[errno]; .loc 1 62 57 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 63 17 st.u32 [%r24],%r22; $L1: .loc 1 65 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } /464 0 0 0 644 527 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .visible .func (.param .u64 %value_out) __gettzinfo; .file 1 "../../../../../newlib/libc/time/gettzinfo.c" // BEGIN VAR DEF: tzinfo .global .align 8 .u64 tzinfo[11] = {1,74,0,0,0,0,74,0,0,0,0 }; // BEGIN GLOBAL FUNCTION DEF: __gettzinfo .visible .func (.param .u64 %value_out) __gettzinfo { .reg .u64 %value; .loc 1 14 10 cvta.global.u64 %value,tzinfo; .loc 1 15 1 st.param.u64 [%value_out],%value; ret; } lib_a-gmtime.o/ 0 0 0 644 1079 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gmtime .visible .func (.param .u64 %value_out) gmtime (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/gmtime.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: gmtime_r .extern .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: gmtime .visible .func (.param .u64 %value_out) gmtime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 58 40 ld.global.u64 %r29,[_impure_ptr]; add.u64 %r28,%r29,188; .loc 1 58 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),gmtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 59 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /483 0 0 0 644 4540 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gmtime_r .visible .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/time/gmtime_r.c" // BEGIN GLOBAL FUNCTION DEF: gmtime_r .visible .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r30; .reg .u64 %r35; .reg .u32 %r47; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r86; .reg .u64 %r88; .reg .u64 %r89; .reg .pred %r90; .reg .u64 %r95; .reg .u64 %r100; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u64 %r108; .reg .u64 %r110; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r126; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r139; .reg .u32 %r141; .reg .pred %r142; .reg .u32 %r144; .reg .u32 %r146; .reg .pred %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u32 %r152; .reg .pred %r157; .reg .u32 %r159; .reg .u32 %r165; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; mov.u64 %r88,%ar0; mov.u64 %r89,%ar1; .loc 1 53 16 ld.u64 %r71,[%r88]; .loc 1 58 18 div.s64 %r22,%r71,86400; .loc 1 59 7 rem.s64 %r66,%r71,86400; .loc 1 60 6 setp.lt.s64 %r90,%r66,0; @ %r90 bra $L2; .loc 1 58 8 add.u64 %r65,%r22,719468; bra $L3; $L2: .loc 1 62 11 add.u64 %r66,%r66,86400; .loc 1 63 7 add.u64 %r65,%r22,719467; $L3: .loc 1 67 29 div.s64 %r95,%r66,3600; .loc 1 67 18 st.u32 [%r89+8],%r95; .loc 1 68 7 rem.s64 %r72,%r66,3600; .loc 1 69 28 div.s64 %r100,%r72,60; .loc 1 69 17 st.u32 [%r89+4],%r100; .loc 1 70 28 rem.s64 %r104,%r72,60; .loc 1 70 17 st.u32 [%r89],%r104; .loc 1 73 40 add.u64 %r105,%r65,3; .loc 1 73 48 rem.s64 %r30,%r105,7; .loc 1 73 16 cvt.u32.u64 %r67,%r30; .loc 1 73 6 setp.ge.s64 %r106,%r30,0; @ %r106 bra $L4; .loc 1 74 13 add.u32 %r67,%r67,7; $L4: .loc 1 75 16 st.u32 [%r89+24],%r67; .loc 1 80 7 setp.ge.s64 %r107,%r65,0; @ %r107 bra $L5; .loc 1 80 34 add.u64 %r108,%r65,-146096; .loc 1 80 56 div.s64 %r110,%r108,146097; .loc 1 80 7 cvt.u32.u64 %r68,%r110; bra $L6; $L5: .loc 1 80 56 div.s64 %r112,%r65,146097; .loc 1 80 7 cvt.u32.u64 %r68,%r112; $L6: .loc 1 81 23 cvt.s64.s32 %r113,%r68; .loc 1 81 17 mad.lo.u64 %r35,%r113,-146097,%r65; .loc 1 82 64 div.u64 %r116,%r35,36524; .loc 1 82 55 add.u64 %r117,%r116,%r35; .loc 1 82 30 div.u64 %r120,%r35,1460; .loc 1 82 55 sub.u64 %r121,%r117,%r120; .loc 1 83 14 div.u64 %r123,%r35,146096; .loc 1 82 83 sub.u64 %r124,%r121,%r123; .loc 1 83 36 div.u64 %r126,%r124,365; .loc 1 82 11 cvt.u32.u64 %r74,%r126; .loc 1 84 71 div.u32 %r128,%r74,100; .loc 1 84 20 cvt.u32.u64 %r129,%r35; .loc 1 84 37 mul.lo.u32 %r131,%r74,365; .loc 1 84 11 vsub.u32.u32.u32.add %r132,%r128,%r131,%r129; .loc 1 84 57 shr.u32 %r133,%r74,2; .loc 1 84 11 sub.u32 %r75,%r132,%r133; .loc 1 85 14 shl.b32 %r135,%r75,2; add.u32 %r136,%r135,%r75; .loc 1 85 24 add.u32 %r47,%r136,2; .loc 1 85 9 div.u32 %r76,%r47,153; .loc 1 86 7 add.u32 %r137,%r75,1; .loc 1 86 32 mad.lo.u32 %r139,%r76,153,2; .loc 1 86 37 div.u32 %r141,%r139,5; .loc 1 86 7 sub.u32 %r77,%r137,%r141; .loc 1 87 27 setp.le.u32 %r142,%r47,1529; selp.u32 %r69,2,-10,%r142; .loc 1 87 9 add.u32 %r78,%r69,%r76; .loc 1 88 40 mad.lo.u32 %r144,%r68,400,%r74; .loc 1 88 71 set.u32.le.u32 %r146,%r78,1; .loc 1 88 62 sub.u32 %r79,%r144,%r146; .loc 1 91 70 setp.le.u32 %r148,%r75,305; @ %r148 bra $L8; .loc 1 91 15 add.u32 %r70,%r75,-306; bra $L9; $L8: .loc 1 92 54 and.b32 %r149,%r74,3; setp.ne.u32 %r150,%r149,0; @ %r150 bra $L10; rem.u32 %r152,%r74,100; setp.ne.u32 %r157,%r152,0; @ %r157 bra $L13; $L10: rem.u32 %r159,%r74,400; set.u32.eq.u32 %r165,%r159,0; neg.s32 %r86,%r165; bra $L11; $L13: mov.u32 %r86,1; $L11: .loc 1 92 52 add.u32 %r167,%r75,59; add.u32 %r70,%r167,%r86; $L9: .loc 1 90 16 st.u32 [%r89+28],%r70; .loc 1 93 23 add.u32 %r168,%r79,-1900; .loc 1 93 16 st.u32 [%r89+20],%r168; .loc 1 94 15 st.u32 [%r89+16],%r78; .loc 1 95 16 st.u32 [%r89+12],%r77; .loc 1 97 17 mov.u32 %r169,0; st.u32 [%r89+32],%r169; .loc 1 100 1 mov.u64 %value,%r89; st.param.u64 [%value_out],%value; ret; } lib_a-imaxabs.o/0 0 0 644 537 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: imaxabs .visible .func (.param .u64 %value_out) imaxabs (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/imaxabs.c" // BEGIN GLOBAL FUNCTION DEF: imaxabs .visible .func (.param .u64 %value_out) imaxabs (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 35 21 abs.s64 %value,%r23; .loc 1 36 1 st.param.u64 [%value_out],%value; ret; } lib_a-imaxdiv.o/0 0 0 644 817 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: imaxdiv .visible .func imaxdiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/imaxdiv.c" // BEGIN GLOBAL FUNCTION DEF: imaxdiv .visible .func imaxdiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 39 22 div.s64 %r27,%r25,%r26; .loc 1 47 9 st.u64 [%r24],%r27; .loc 1 40 21 rem.s64 %r28,%r25,%r26; .loc 1 47 9 st.u64 [%r24+8],%r28; .loc 1 48 1 ret; } lib_a-impure.o/ 0 0 0 644 868 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DECL: __sf .extern .global .align 8 .u64 __sf[66]; // BEGIN VAR DEF: impure_data .global .align 8 .u64 impure_data[167] = {0,generic(__sf),generic(__sf) + 176,generic(__sf) + 352,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1842796655094713586,47245025004,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; // BEGIN GLOBAL VAR DEF: _global_impure_ptr .visible .const .align 8 .u64 _global_impure_ptr[1] = {generic(impure_data) }; // BEGIN GLOBAL VAR DEF: _impure_ptr .visible .global .align 8 .u64 _impure_ptr[1] = {generic(impure_data) }; lib_a-index.o/ 0 0 0 644 1006 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: index .visible .func (.param .u64 %value_out) index (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/index.c" // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: index .visible .func (.param .u64 %value_out) index (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r27; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 37 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r27,[%value_in]; } .loc 1 38 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-init.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-iprintf.o/0 0 0 644 2386 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: iprintf .visible .func (.param .u32 %value_out) iprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/iprintf.c" // BEGIN GLOBAL FUNCTION DECL: _iprintf_r .visible .func (.param .u32 %value_out) _iprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .extern .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: iprintf .visible .func (.param .u32 %value_out) iprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r26,%ar0; .loc 1 32 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 36 9 ld.u64 %r32,[%r23+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _iprintf_r .visible .func (.param .u32 %value_out) _iprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 52 9 ld.u64 %r32,[%r25+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 55 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-isalnum.o/0 0 0 644 958 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isalnum .visible .func (.param .u32 %value_out) isalnum (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isalnum.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isalnum .visible .func (.param .u32 %value_out) isalnum (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 49 20 cvta.const.u64 %r28,_ctype_; .loc 1 49 22 add.u32 %r29,%r26,1; .loc 1 49 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 49 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,7; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 50 1 st.param.u32 [%value_out],%value; ret; } lib_a-isalpha.o/0 0 0 644 958 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isalpha .visible .func (.param .u32 %value_out) isalpha (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isalpha.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isalpha .visible .func (.param .u32 %value_out) isalpha (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 48 20 cvta.const.u64 %r28,_ctype_; .loc 1 48 22 add.u32 %r29,%r26,1; .loc 1 48 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 48 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,3; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 49 1 st.param.u32 [%value_out],%value; ret; } lib_a-isattyr.o/0 0 0 644 1319 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _isatty_r .visible .func (.param .u32 %value_out) _isatty_r (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/reent/isattyr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: isatty .extern .func (.param .u32 %value_out) isatty (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _isatty_r .visible .func (.param .u32 %value_out) _isatty_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 51 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 52 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; call (%value_in),isatty,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 52 6 setp.ne.u32 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 52 43 ld.global.u32 %r22,[errno]; .loc 1 52 34 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 53 17 st.u32 [%r24],%r22; $L1: .loc 1 55 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-iscanf.o/ 0 0 0 644 2379 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: iscanf .visible .func (.param .u32 %value_out) iscanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/iscanf.c" // BEGIN GLOBAL FUNCTION DECL: _iscanf_r .visible .func (.param .u32 %value_out) _iscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .extern .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: iscanf .visible .func (.param .u32 %value_out) iscanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r26,%ar0; .loc 1 34 32 ld.global.u64 %r22,[_impure_ptr]; .loc 1 34 9 ld.u64 %r32,[%r22+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 37 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _iscanf_r .visible .func (.param .u32 %value_out) _iscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 49 9 ld.u64 %r32,[%r25+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 52 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-iscntrl.o/0 0 0 644 959 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: iscntrl .visible .func (.param .u32 %value_out) iscntrl (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/iscntrl.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: iscntrl .visible .func (.param .u32 %value_out) iscntrl (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 51 20 cvta.const.u64 %r28,_ctype_; .loc 1 51 22 add.u32 %r29,%r26,1; .loc 1 51 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 51 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,32; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 52 1 st.param.u32 [%value_out],%value; ret; } lib_a-isdigit.o/0 0 0 644 958 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isdigit .visible .func (.param .u32 %value_out) isdigit (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isdigit.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isdigit .visible .func (.param .u32 %value_out) isdigit (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 50 20 cvta.const.u64 %r28,_ctype_; .loc 1 50 22 add.u32 %r29,%r26,1; .loc 1 50 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 50 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,4; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 51 1 st.param.u32 [%value_out],%value; ret; } lib_a-islower.o/0 0 0 644 960 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: islower .visible .func (.param .u32 %value_out) islower (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/islower.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: islower .visible .func (.param .u32 %value_out) islower (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r27; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r38; .reg .u32 %r39; .reg .u16 %r41; mov.u32 %r27,%ar0; .loc 1 48 22 cvta.const.u64 %r29,_ctype_; .loc 1 48 24 add.u32 %r30,%r27,1; .loc 1 48 22 cvt.s64.s32 %r31,%r30; add.u64 %r32,%r29,%r31; .loc 1 48 39 ld.u8 %r41,[%r32]; mov.u16 %r35,%r41; and.b16 %r38,%r35,3; set.u32.eq.u16 %r39,%r38,2; neg.s32 %value,%r39; .loc 1 49 1 st.param.u32 [%value_out],%value; ret; } lib_a-isprint.o/0 0 0 644 1603 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isgraph .visible .func (.param .u32 %value_out) isgraph (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isprint.c" // BEGIN GLOBAL FUNCTION DECL: isprint .visible .func (.param .u32 %value_out) isprint (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isgraph .visible .func (.param .u32 %value_out) isgraph (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 62 20 cvta.const.u64 %r28,_ctype_; .loc 1 62 22 add.u32 %r29,%r26,1; .loc 1 62 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 62 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,23; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 63 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: isprint .visible .func (.param .u32 %value_out) isprint (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; mov.u32 %r26,%ar0; .loc 1 70 20 cvta.const.u64 %r28,_ctype_; .loc 1 70 22 add.u32 %r29,%r26,1; .loc 1 70 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; ld.s8 %r32,[%r31]; .loc 1 70 26 and.b32 %value,%r32,151; .loc 1 71 1 st.param.u32 [%value_out],%value; ret; } lib_a-ispunct.o/0 0 0 644 959 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ispunct .visible .func (.param .u32 %value_out) ispunct (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/ispunct.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: ispunct .visible .func (.param .u32 %value_out) ispunct (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 50 20 cvta.const.u64 %r28,_ctype_; .loc 1 50 22 add.u32 %r29,%r26,1; .loc 1 50 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 50 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,16; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 51 1 st.param.u32 [%value_out],%value; ret; } lib_a-isspace.o/0 0 0 644 958 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isspace .visible .func (.param .u32 %value_out) isspace (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isspace.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isspace .visible .func (.param .u32 %value_out) isspace (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 49 20 cvta.const.u64 %r28,_ctype_; .loc 1 49 22 add.u32 %r29,%r26,1; .loc 1 49 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 49 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,8; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 50 1 st.param.u32 [%value_out],%value; ret; } lib_a-isupper.o/0 0 0 644 960 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isupper .visible .func (.param .u32 %value_out) isupper (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isupper.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isupper .visible .func (.param .u32 %value_out) isupper (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r27; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r38; .reg .u32 %r39; .reg .u16 %r41; mov.u32 %r27,%ar0; .loc 1 46 22 cvta.const.u64 %r29,_ctype_; .loc 1 46 24 add.u32 %r30,%r27,1; .loc 1 46 22 cvt.s64.s32 %r31,%r30; add.u64 %r32,%r29,%r31; .loc 1 46 39 ld.u8 %r41,[%r32]; mov.u16 %r35,%r41; and.b16 %r38,%r35,3; set.u32.eq.u16 %r39,%r38,1; neg.s32 %value,%r39; .loc 1 47 1 st.param.u32 [%value_out],%value; ret; } /501 0 0 0 644 964 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isxdigit .visible .func (.param .u32 %value_out) isxdigit (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/isxdigit.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isxdigit .visible .func (.param .u32 %value_out) isxdigit (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 49 20 cvta.const.u64 %r28,_ctype_; .loc 1 49 22 add.u32 %r29,%r26,1; .loc 1 49 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 49 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,68; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 50 1 st.param.u32 [%value_out],%value; ret; } lib_a-itoa.o/ 0 0 0 644 4262 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __itoa .visible .func (.param .u64 %value_out) __itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/itoa.c" // BEGIN GLOBAL FUNCTION DECL: itoa .visible .func (.param .u64 %value_out) itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __utoa .extern .func (.param .u64 %value_out) __utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: __itoa .visible .func (.param .u64 %value_out) __itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u16 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .u16 %r55; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; mov.u32 %r33,%ar2; .loc 1 41 18 add.u32 %r34,%r33,-2; .loc 1 41 6 setp.le.u32 %r35,%r34,34; @ %r35 bra $L2; .loc 1 43 14 mov.u32 %r36,0; st.u8 [%r32],%r36; .loc 1 44 14 mov.u64 %r30,0; bra $L1; $L2: .loc 1 49 13 set.u32.eq.u32 %r38,%r33,10; neg.s32 %r39,%r38; mov.u32 %r37,%r39; .loc 1 49 30 shr.u32 %r41,%r31,31; mov.u32 %r42,%r41; .loc 1 49 20 cvt.u16.u8 %r55,%r37; mov.u16 %r44,%r55; cvt.u16.u8 %r55,%r42; mov.u16 %r45,%r55; and.b16 %r43,%r44,%r45; cvt.u32.u16 %r46,%r43; .loc 1 49 6 cvt.u16.u8 %r47,%r46; setp.eq.u16 %r48,%r47,0; @ %r48 bra $L4; .loc 1 51 16 mov.u32 %r49,45; st.u8 [%r32],%r49; .loc 1 52 26 neg.s32 %r28,%r31; .loc 1 57 3 add.u64 %r29,%r32,1; bra $L5; $L4: .loc 1 55 12 mov.u32 %r28,%r31; mov.u64 %r29,%r32; $L5: .loc 1 57 3 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r33; call (%value_in),__utoa,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 1 58 10 mov.u64 %r30,%r32; $L1: .loc 1 59 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: itoa .visible .func (.param .u64 %value_out) itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u16 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .u16 %r55; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; mov.u32 %r33,%ar2; .loc 1 41 18 add.u32 %r34,%r33,-2; .loc 1 41 6 setp.le.u32 %r35,%r34,34; @ %r35 bra $L7; .loc 1 43 14 mov.u32 %r36,0; st.u8 [%r32],%r36; .loc 1 44 14 mov.u64 %r30,0; bra $L6; $L7: .loc 1 49 13 set.u32.eq.u32 %r38,%r33,10; neg.s32 %r39,%r38; mov.u32 %r37,%r39; .loc 1 49 30 shr.u32 %r41,%r31,31; mov.u32 %r42,%r41; .loc 1 49 20 cvt.u16.u8 %r55,%r37; mov.u16 %r44,%r55; cvt.u16.u8 %r55,%r42; mov.u16 %r45,%r55; and.b16 %r43,%r44,%r45; cvt.u32.u16 %r46,%r43; .loc 1 49 6 cvt.u16.u8 %r47,%r46; setp.eq.u16 %r48,%r47,0; @ %r48 bra $L9; .loc 1 51 16 mov.u32 %r49,45; st.u8 [%r32],%r49; .loc 1 52 26 neg.s32 %r28,%r31; .loc 1 57 3 add.u64 %r29,%r32,1; bra $L10; $L9: .loc 1 55 12 mov.u32 %r28,%r31; mov.u64 %r29,%r32; $L10: .loc 1 57 3 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r33; call (%value_in),__utoa,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 1 58 10 mov.u64 %r30,%r32; $L6: .loc 1 67 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-jrand48.o/0 0 0 644 1963 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _jrand48_r .visible .func (.param .u64 %value_out) _jrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/jrand48.c" // BEGIN GLOBAL FUNCTION DECL: jrand48 .visible .func (.param .u64 %value_out) jrand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _jrand48_r .visible .func (.param .u64 %value_out) _jrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r33,[%r29+4]; .loc 1 21 27 shl.b64 %r34,%r33,16; .loc 1 21 36 ld.u16 %r35,[%r29+2]; .loc 1 21 34 add.u64 %value,%r34,%r35; .loc 1 22 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: jrand48 .visible .func (.param .u64 %value_out) jrand48 (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; mov.u64 %r29,%ar0; .loc 1 20 3 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r34,[%r29+4]; .loc 1 21 27 shl.b64 %r35,%r34,16; .loc 1 21 36 ld.u16 %r36,[%r29+2]; .loc 1 21 34 add.u64 %value,%r35,%r36; .loc 1 29 1 st.param.u64 [%value_out],%value; ret; } lib_a-labs.o/ 0 0 0 644 522 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: labs .visible .func (.param .u64 %value_out) labs (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/labs.c" // BEGIN GLOBAL FUNCTION DEF: labs .visible .func (.param .u64 %value_out) labs (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 42 10 abs.s64 %value,%r23; .loc 1 43 1 st.param.u64 [%value_out],%value; ret; } lib_a-lcltime.o/0 0 0 644 1101 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: localtime .visible .func (.param .u64 %value_out) localtime (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/lcltime.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: localtime_r .extern .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: localtime .visible .func (.param .u64 %value_out) localtime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 51 43 ld.global.u64 %r29,[_impure_ptr]; add.u64 %r28,%r29,188; .loc 1 51 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),localtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 52 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /519 0 0 0 644 9499 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: localtime_r .visible .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/time/lcltime_r.c" // BEGIN GLOBAL VAR DECL: _daylight .extern .global .align 4 .u32 _daylight[1]; // BEGIN GLOBAL VAR DECL: __month_lengths .extern .const .align 4 .u32 __month_lengths[24]; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: gmtime_r .extern .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .extern .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DEF: localtime_r .visible .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r32; .reg .u32 %r37; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r57; .reg .u32 %r59; .reg .u32 %r63; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r82; .reg .u32 %r88; .reg .u64 %r89; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r94; .reg .u64 %r103; .reg .u32 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r119; .reg .pred %r125; .reg .u32 %r127; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .u32 %r143; .reg .pred %r144; .reg .u32 %r145; .reg .pred %r146; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .u32 %r151; .reg .u64 %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .u32 %r162; .reg .u64 %r165; .reg .u32 %r166; .reg .u32 %r167; .reg .u64 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u64 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .pred %r176; .reg .u32 %r177; .reg .pred %r178; .reg .u32 %r179; .reg .pred %r180; .reg .u32 %r181; .reg .pred %r182; .reg .u32 %r183; .reg .pred %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u32 %r189; .reg .u32 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .pred %r194; .reg .u32 %r195; .reg .pred %r196; .reg .u32 %r197; .reg .u32 %r198; .reg .u32 %r199; .reg .pred %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .pred %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .pred %r208; .reg .u32 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .pred %r215; .reg .u32 %r217; .reg .pred %r223; .reg .u32 %r225; .reg .u32 %r232; .reg .u32 %r233; .reg .u64 %r234; mov.u64 %r109,%ar0; mov.u64 %r110,%ar1; .loc 1 25 29 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r111,[%value_in]; } .loc 1 28 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r109; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),gmtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r114,[%value_in]; } .loc 1 30 8 ld.u32 %r115,[%r114+20]; add.u32 %r91,%r115,1900; .loc 1 31 24 and.b32 %r116,%r115,3; setp.ne.u32 %r117,%r116,0; @ %r117 bra $L2; rem.s32 %r119,%r91,100; setp.ne.u32 %r125,%r119,0; @ %r125 bra $L31; $L2: rem.s32 %r127,%r91,400; set.u32.eq.u32 %r134,%r127,0; cvt.s64.s32 %r133,%r134; neg.s64 %r135,%r133; add.u64 %r137,%r135,%r135; add.u64 %r138,%r137,%r135; shl.b64 %r103,%r138,4; bra $L3; $L31: mov.u64 %r103,48; $L3: .loc 1 31 6 cvta.const.u64 %r140,__month_lengths; add.u64 %r92,%r103,%r140; .loc 1 33 3 { call __tz_lock; } .loc 1 34 3 { call _tzset_unlocked; } .loc 1 35 6 ld.global.u32 %r141,[_daylight]; setp.eq.u32 %r142,%r141,0; @ %r142 bra $L4; .loc 1 37 10 ld.u32 %r143,[%r111+4]; setp.ne.u32 %r144,%r143,%r91; @ %r144 bra $L5; $L8: .loc 1 39 7 ld.u64 %r106,[%r109]; .loc 1 39 32 ld.u64 %r107,[%r111+32]; .loc 1 41 4 ld.u32 %r145,[%r111]; setp.ne.u32 %r146,%r145,0; @ %r146 bra $L6; bra $L33; $L5: .loc 1 37 35 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__tzcalc_limits,(%out_arg1); ld.param.u32 %r148,[%value_in]; } .loc 1 37 32 setp.ne.u32 %r149,%r148,0; @ %r149 bra $L8; bra $L34; $L6: .loc 1 40 4 setp.ge.s64 %r150,%r106,%r107; @ %r150 bra $L10; .loc 1 38 16 mov.u32 %r151,0; st.u32 [%r114+32],%r151; bra $L11; $L10: .loc 1 40 4 ld.u64 %r152,[%r111+72]; setp.le.s64 %r153,%r152,%r106; @ %r153 bra $L12; .loc 1 38 16 mov.u32 %r154,1; st.u32 [%r114+32],%r154; bra $L13; $L12: mov.u32 %r155,0; st.u32 [%r114+32],%r155; bra $L11; $L33: .loc 1 42 4 setp.lt.s64 %r156,%r106,%r107; @ %r156 bra $L14; .loc 1 38 16 mov.u32 %r157,1; st.u32 [%r114+32],%r157; bra $L13; $L14: .loc 1 42 31 ld.u64 %r32,[%r111+72]; .loc 1 42 4 set.u32.gt.s64 %r159,%r32,%r106; neg.s32 %r160,%r159; .loc 1 38 16 st.u32 [%r114+32],%r160; .loc 1 51 5 setp.gt.s64 %r161,%r32,%r106; @ %r161 bra $L13; bra $L11; $L34: .loc 1 44 16 mov.u32 %r162,-1; st.u32 [%r114+32],%r162; bra $L11; $L4: .loc 1 47 19 st.u32 [%r114+32],%r141; bra $L11; $L13: .loc 1 51 5 ld.u64 %r89,[%r111+80]; $L30: .loc 1 54 10 rem.s64 %r94,%r89,3600; .loc 1 57 24 rem.s64 %r165,%r94,60; .loc 1 57 8 cvt.u32.u64 %r166,%r165; .loc 1 59 15 ld.u32 %r167,[%r114]; sub.u32 %r37,%r167,%r166; st.u32 [%r114],%r37; .loc 1 56 24 div.s64 %r169,%r94,60; .loc 1 56 8 cvt.u32.u64 %r170,%r169; .loc 1 60 15 ld.u32 %r171,[%r114+4]; sub.u32 %r39,%r171,%r170; st.u32 [%r114+4],%r39; .loc 1 53 25 div.s64 %r173,%r89,3600; .loc 1 53 9 cvt.u32.u64 %r174,%r173; .loc 1 61 16 ld.u32 %r175,[%r114+8]; sub.u32 %r41,%r175,%r174; st.u32 [%r114+8],%r41; .loc 1 63 6 setp.le.s32 %r176,%r37,59; @ %r176 bra $L15; .loc 1 65 19 add.u32 %r39,%r39,1; st.u32 [%r114+4],%r39; .loc 1 66 19 add.u32 %r177,%r37,-60; st.u32 [%r114],%r177; bra $L16; $L15: .loc 1 68 11 setp.ge.s32 %r178,%r37,0; @ %r178 bra $L16; .loc 1 70 19 add.u32 %r39,%r39,-1; st.u32 [%r114+4],%r39; .loc 1 71 19 add.u32 %r179,%r37,60; st.u32 [%r114],%r179; $L16: .loc 1 73 6 setp.le.s32 %r180,%r39,59; @ %r180 bra $L17; .loc 1 75 20 add.u32 %r41,%r41,1; st.u32 [%r114+8],%r41; .loc 1 76 19 add.u32 %r181,%r39,-60; st.u32 [%r114+4],%r181; bra $L18; $L17: .loc 1 78 11 setp.ge.s32 %r182,%r39,0; @ %r182 bra $L18; .loc 1 80 20 add.u32 %r41,%r41,-1; st.u32 [%r114+8],%r41; .loc 1 81 19 add.u32 %r183,%r39,60; st.u32 [%r114+4],%r183; $L18: .loc 1 83 6 setp.le.s32 %r184,%r41,23; @ %r184 bra $L19; .loc 1 85 7 ld.u32 %r186,[%r114+28]; add.u32 %r185,%r186,1; st.u32 [%r114+28],%r185; .loc 1 86 7 ld.u32 %r187,[%r114+24]; add.u32 %r57,%r187,1; .loc 1 87 10 setp.le.s32 %r188,%r57,6; .loc 1 88 15 selp.u32 %r57,%r57,0,%r188; st.u32 [%r114+24],%r57; .loc 1 89 7 ld.u32 %r189,[%r114+12]; add.u32 %r59,%r189,1; st.u32 [%r114+12],%r59; .loc 1 90 20 add.u32 %r190,%r41,-24; st.u32 [%r114+8],%r190; .loc 1 91 32 ld.u32 %r63,[%r114+16]; .loc 1 91 28 cvt.s64.s32 %r191,%r63; shl.b64 %r192,%r191,2; add.u64 %r193,%r92,%r192; ld.u32 %r66,[%r193]; .loc 1 91 10 setp.gt.s32 %r194,%r59,%r66; @ ! %r194 bra $L22; .loc 1 93 17 sub.u32 %r195,%r59,%r66; st.u32 [%r114+12],%r195; .loc 1 94 16 add.u32 %r68,%r63,1; .loc 1 95 7 setp.eq.u32 %r196,%r63,11; @ %r196 bra $L23; .loc 1 94 16 st.u32 [%r114+16],%r68; bra $L22; $L23: .loc 1 97 20 mov.u32 %r197,0; st.u32 [%r114+16],%r197; .loc 1 98 21 ld.u32 %r199,[%r114+20]; add.u32 %r198,%r199,1; st.u32 [%r114+20],%r198; .loc 1 99 21 st.u32 [%r114+28],%r197; bra $L22; $L19: .loc 1 103 11 setp.ge.s32 %r201,%r41,0; @ %r201 bra $L22; .loc 1 105 20 ld.u32 %r203,[%r114+28]; add.u32 %r202,%r203,-1; st.u32 [%r114+28],%r202; .loc 1 106 20 ld.u32 %r204,[%r114+24]; add.u32 %r74,%r204,-1; .loc 1 107 10 setp.ge.s32 %r205,%r74,0; .loc 1 108 15 selp.u32 %r74,%r74,6,%r205; st.u32 [%r114+24],%r74; .loc 1 109 20 ld.u32 %r206,[%r114+12]; add.u32 %r76,%r206,-1; st.u32 [%r114+12],%r76; .loc 1 110 20 add.u32 %r207,%r41,24; st.u32 [%r114+8],%r207; .loc 1 111 10 setp.ne.u32 %r208,%r76,0; @ %r208 bra $L22; .loc 1 113 16 ld.u32 %r209,[%r114+16]; add.u32 %r79,%r209,-1; .loc 1 114 7 setp.lt.s32 %r210,%r79,0; @ %r210 bra $L26; .loc 1 113 16 st.u32 [%r114+16],%r79; .loc 1 120 21 cvt.s64.s32 %r211,%r79; shl.b64 %r105,%r211,2; bra $L27; $L26: .loc 1 116 20 mov.u32 %r212,11; st.u32 [%r114+16],%r212; .loc 1 117 21 ld.u32 %r80,[%r114+20]; add.u32 %r213,%r80,-1; st.u32 [%r114+20],%r213; .loc 1 118 29 add.u32 %r82,%r80,1899; and.b32 %r214,%r82,3; setp.ne.u32 %r215,%r214,0; @ %r215 bra $L28; rem.s32 %r217,%r82,100; setp.ne.u32 %r223,%r217,0; @ %r223 bra $L32; $L28: rem.s32 %r225,%r82,400; set.u32.eq.u32 %r232,%r225,0; neg.s32 %r233,%r232; .loc 1 118 27 add.u32 %r104,%r233,364; bra $L29; $L32: mov.u32 %r104,365; $L29: .loc 1 118 21 st.u32 [%r114+28],%r104; mov.u64 %r105,44; $L27: .loc 1 120 21 add.u64 %r234,%r92,%r105; ld.u32 %r88,[%r234]; .loc 1 120 17 st.u32 [%r114+12],%r88; $L22: .loc 1 123 3 { call __tz_unlock; } .loc 1 125 10 bra $L35; $L11: .loc 1 51 5 ld.u64 %r89,[%r111+40]; bra $L30; $L35: .loc 1 126 1 mov.u64 %value,%r114; st.param.u64 [%value_out],%value; ret; } lib_a-lcong48.o/0 0 0 644 2000 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _lcong48_r .visible .func _lcong48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/lcong48.c" // BEGIN GLOBAL FUNCTION DECL: lcong48 .visible .func lcong48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: _lcong48_r .visible .func _lcong48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u64 %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 21 20 ld.u16 %r31,[%r30]; st.u16 [%r29+240],%r31; .loc 1 22 20 ld.u16 %r32,[%r30+2]; st.u16 [%r29+242],%r32; .loc 1 23 20 ld.u16 %r33,[%r30+4]; st.u16 [%r29+244],%r33; .loc 1 24 20 ld.u16 %r34,[%r30+6]; st.u16 [%r29+246],%r34; .loc 1 25 20 ld.u16 %r35,[%r30+8]; st.u16 [%r29+248],%r35; .loc 1 26 20 ld.u16 %r36,[%r30+10]; st.u16 [%r29+250],%r36; .loc 1 27 16 ld.u16 %r37,[%r30+12]; st.u16 [%r29+252],%r37; .loc 1 28 1 ret; } // BEGIN GLOBAL FUNCTION DEF: lcong48 .visible .func lcong48 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; mov.u64 %r30,%ar0; .loc 1 34 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 20 ld.u16 %r31,[%r30]; st.u16 [%r22+240],%r31; .loc 1 22 20 ld.u16 %r32,[%r30+2]; st.u16 [%r22+242],%r32; .loc 1 23 20 ld.u16 %r33,[%r30+4]; st.u16 [%r22+244],%r33; .loc 1 24 20 ld.u16 %r34,[%r30+6]; st.u16 [%r22+246],%r34; .loc 1 25 20 ld.u16 %r35,[%r30+8]; st.u16 [%r22+248],%r35; .loc 1 26 20 ld.u16 %r36,[%r30+10]; st.u16 [%r22+250],%r36; .loc 1 27 16 ld.u16 %r37,[%r30+12]; st.u16 [%r22+252],%r37; .loc 1 35 1 ret; } lib_a-ldiv.o/ 0 0 0 644 1160 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldiv .visible .func ldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/ldiv.c" // BEGIN GLOBAL FUNCTION DEF: ldiv .visible .func ldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 88 15 div.s64 %r22,%r25,%r26; .loc 1 89 14 rem.s64 %r23,%r25,%r26; .loc 1 90 5 setp.lt.s64 %r27,%r25,0; @ %r27 bra $L2; .loc 1 90 15 setp.ge.s64 %r28,%r23,0; @ %r28 bra $L3; .loc 1 91 3 add.u64 %r22,%r22,1; .loc 1 92 9 sub.u64 %r23,%r23,%r26; bra $L3; $L2: .loc 1 94 19 setp.le.s64 %r29,%r23,0; @ %r29 bra $L3; .loc 1 95 3 add.u64 %r22,%r22,-1; .loc 1 96 9 add.u64 %r23,%r23,%r26; $L3: .loc 1 98 9 st.u64 [%r24],%r22; st.u64 [%r24+8],%r23; .loc 1 99 1 ret; } lib_a-ldtoa.o/ 0 0 0 644 142558 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: eshdn1 .func eshdn1 (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/ldtoa.c" // BEGIN FUNCTION DECL: eshup1 .func eshup1 (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: m16m .func m16m (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: emovo$constprop$0 .func emovo$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: enormlz .func (.param .u32 %value_out) enormlz (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eshift$part$0 .func (.param .u32 %value_out) eshift$part$0 (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN FUNCTION DECL: e53toe$isra$0 .func e53toe$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: emovi .func emovi (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: ecmp .func (.param .u32 %value_out) ecmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: emdnorm .func emdnorm (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); // BEGIN FUNCTION DECL: eiremain .func eiremain (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: ediv .func ediv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN FUNCTION DECL: emul .func emul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _ldtoa_r .visible .func (.param .u64 %value_out) _ldtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _ldcheck .visible .func (.param .u32 %value_out) _ldcheck (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sprintf .extern .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN VAR DEF: etens .const .align 2 .u16 etens[130] = {25974,19090,32842,5439,51532,38810,35360,20994,50272,29989,27186,52818,12954,10446,42829,24036,50493,15197,40587,23186,21100,20686,61835,15656,25869,3095,33141,30086,51574,19784,40038,22776,48208,23636,52325,37318,42510,41134,58137,18083,34078,60087,39166,36891,56763,56973,40441,60411,43646,17233,565,311,14001,13164,50799,36063,33001,18377,37818,16808,20728,9723,51051,27505,15551,42709,65487,8009,49784,16595,0,0,0,0,61472,46493,11120,44456,40389,16489,0,0,0,0,0,0,1024,51647,36379,16436,0,0,0,0,0,0,0,8192,48828,16409,0,0,0,0,0,0,0,0,40000,16396,0,0,0,0,0,0,0,0,51200,16389,0,0,0,0,0,0,0,0,40960,16386 }; // BEGIN VAR DEF: emtens .const .align 2 .u16 emtens[130] = {8240,53244,41411,33059,11747,40926,53966,1224,42717,2776,33380,53963,62186,4820,18725,11748,13366,21327,52910,9579,62783,63128,27603,344,34726,49341,55895,33445,41638,12981,59185,1236,58354,54066,28978,53788,56099,60978,36937,14682,41534,21256,65275,4437,64145,6457,25466,17189,49201,15532,57965,56286,53341,46070,44156,58528,25788,18044,56784,15957,10784,25124,18355,39127,16163,59813,42297,59943,43135,16170,2907,19186,42369,6381,26590,38074,17721,7853,53169,16276,49009,43443,31113,48744,19502,57691,50253,38078,59029,16329,15693,31805,14010,3371,64962,52988,33889,30481,43980,16356,49493,42152,16462,24851,54211,25899,57881,5976,53687,16369,55050,28835,2621,41943,15728,55050,28835,2621,41943,16376,52429,52428,52428,52428,52428,52428,52428,52428,52428,16379 }; // BEGIN VAR DEF: bmask .const .align 2 .u16 bmask[17] = {65535,65534,65532,65528,65520,65504,65472,65408,65280,65024,64512,63488,61440,57344,49152,32768,0 }; // BEGIN VAR DEF: eone .const .align 2 .u16 eone[10] = {0,0,0,0,0,0,0,0,32768,16383 }; // BEGIN VAR DEF: ezero .const .align 2 .u16 ezero[10]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[12] = {32,45,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[11] = {32,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {78,97,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {69,37,100,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[42] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,108,100,116,111,97,46,99,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[6] = {32,78,97,78,32,0 }; // BEGIN FUNCTION DEF: eshdn1 .func eshdn1 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .pred %r40; .reg .u16 %r42; .reg .u16 %r44; .reg .u16 %r45; .reg .pred %r46; mov.u64 %r30,%ar0; .loc 1 819 5 add.u64 %r29,%r30,4; add.u64 %r25,%r30,26; .loc 1 821 8 mov.u32 %r28,0; $L5: .loc 1 824 11 ld.u16 %r22,[%r29]; .loc 1 824 10 cvt.u16.u32 %r32,%r22; and.b16 %r31,%r32,1; setp.eq.u16 %r33,%r31,0; @ %r33 bra $L2; .loc 1 825 7 cvt.u16.u32 %r35,%r28; or.b16 %r34,%r35,1; cvt.u32.u16 %r28,%r34; $L2: .loc 1 826 10 cvt.u16.u32 %r37,%r22; shr.u16 %r36,%r37,1; .loc 1 827 10 cvt.u16.u32 %r39,%r28; and.b16 %r38,%r39,2; setp.ne.u16 %r40,%r38,0; @ %r40 bra $L3; .loc 1 826 10 st.u16 [%r29],%r36; bra $L4; $L3: .loc 1 828 5 or.b16 %r42,%r36,-32768; st.u16 [%r29],%r42; $L4: .loc 1 829 12 cvt.u16.u32 %r44,%r28; add.u16 %r45,%r44,%r44; cvt.u32.u16 %r28,%r45; .loc 1 830 7 add.u64 %r29,%r29,2; .loc 1 822 17 setp.ne.u64 %r46,%r25,%r29; @ %r46 bra $L5; .loc 1 832 1 ret; } // BEGIN FUNCTION DEF: eshup1 .func eshup1 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u64 %r26; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u16 %r31; .reg .pred %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .pred %r39; .reg .u16 %r41; .reg .u16 %r43; .reg .u16 %r44; .reg .pred %r45; mov.u64 %r30,%ar0; .loc 1 846 5 add.u64 %r29,%r30,24; add.u64 %r26,%r30,2; .loc 1 847 8 mov.u32 %r28,0; $L14: .loc 1 851 11 ld.u16 %r22,[%r29]; .loc 1 851 10 cvt.u16.u32 %r31,%r22; setp.ge.s16 %r32,%r31,0; @ %r32 bra $L11; .loc 1 852 7 cvt.u16.u32 %r34,%r28; or.b16 %r33,%r34,1; cvt.u32.u16 %r28,%r33; $L11: .loc 1 853 10 cvt.u16.u32 %r35,%r22; add.u16 %r36,%r35,%r35; .loc 1 854 10 cvt.u16.u32 %r38,%r28; and.b16 %r37,%r38,2; setp.ne.u16 %r39,%r37,0; @ %r39 bra $L12; .loc 1 853 10 st.u16 [%r29],%r36; bra $L13; $L12: .loc 1 855 5 or.b16 %r41,%r36,1; st.u16 [%r29],%r41; $L13: .loc 1 856 12 cvt.u16.u32 %r43,%r28; add.u16 %r44,%r43,%r43; cvt.u32.u16 %r28,%r44; .loc 1 857 7 add.u64 %r29,%r29,-2; .loc 1 849 17 setp.ne.u64 %r45,%r26,%r29; @ %r45 bra $L14; .loc 1 859 1 ret; } // BEGIN FUNCTION DEF: m16m .func m16m (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u64 %r27; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u64 %r67; mov.u32 %r49,%ar0; mov.u64 %r50,%ar1; mov.u64 %r51,%ar2; .loc 1 1021 9 mov.u16 %r52,0; st.u16 [%frame+22],%r52; .loc 1 1022 7 st.u16 [%frame+24],%r52; .loc 1 1023 6 add.u64 %r39,%r50,24; .loc 1 1021 6 add.u64 %r38,%frame,24; add.u64 %r67,%frame,4; $L18: .loc 1 1027 11 ld.u16 %r22,[%r39]; .loc 1 1029 4 add.u64 %r39,%r39,-2; .loc 1 1030 4 add.u64 %r38,%r38,-2; .loc 1 1027 10 setp.eq.u32 %r54,%r22,0; @ %r54 bra $L17; .loc 1 1035 6 mul.wide.u32 %r40,%r22,%r49; .loc 1 1036 15 and.b64 %r55,%r40,65535; .loc 1 1036 27 ld.u16 %r56,[%r38+2]; .loc 1 1036 10 add.u64 %r41,%r55,%r56; .loc 1 1037 12 st.u16 [%r38+2],%r41; .loc 1 1038 19 shr.u64 %r27,%r41,16; .loc 1 1038 31 shr.u64 %r57,%r40,16; .loc 1 1038 40 ld.u16 %r58,[%r38]; .loc 1 1038 10 add.u64 %r59,%r57,%r58; add.u64 %r42,%r59,%r27; .loc 1 1039 10 st.u16 [%r38],%r42; .loc 1 1040 22 shr.u64 %r60,%r42,16; .loc 1 1040 14 cvt.u16.u64 %r61,%r60; cvt.u32.u16 %r22,%r61; $L17: .loc 1 1031 14 cvt.u16.u32 %r62,%r22; st.u16 [%r38+-2],%r62; .loc 1 1025 21 setp.ne.u64 %r64,%r38,%r67; @ %r64 bra $L18; mov.u64 %r43,%r38; add.u64 %r37,%r51,4; add.u64 %r45,%frame,26; $L19: .loc 1 1044 10 ld.u16 %r65,[%r43]; st.u16 [%r37],%r65; .loc 1 1043 17 add.u64 %r43,%r43,2; add.u64 %r37,%r37,2; setp.ne.u64 %r66,%r43,%r45; @ %r66 bra $L19; .loc 1 1045 1 ret; } // BEGIN FUNCTION DEF: emovo$constprop$0 .func emovo$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r29; .reg .u64 %r34; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .pred %r56; .reg .u16 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .pred %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; .loc 1 674 12 ld.u16 %r29,[%r48+2]; .loc 1 673 6 ld.u16 %r50,[%r48]; setp.eq.u16 %r51,%r50,0; @ %r51 bra $L26; .loc 1 674 10 cvt.u16.u32 %r53,%r29; or.b16 %r52,%r53,-32768; cvt.u32.u16 %r29,%r52; $L26: cvt.u16.u32 %r54,%r29; st.u16 [%r49+18],%r54; .loc 1 678 6 ld.u16 %r55,[%r48+2]; setp.ne.u16 %r56,%r55,32767; @ %r56 bra $L27; add.u64 %r46,%r48,6; add.u64 %r43,%r48,26; $L29: .loc 1 751 7 ld.u16 %r57,[%r46]; setp.ne.u16 %r58,%r57,0; @ %r58 bra $L28; .loc 1 749 25 add.u64 %r46,%r46,2; setp.ne.u64 %r59,%r43,%r46; @ %r59 bra $L29; bra $L42; $L28: mov.u64 %r23,%r49; add.u64 %r27,%r49,16; .loc 1 3843 9 mov.u16 %r60,0; $L31: st.u16 [%r23],%r60; .loc 1 3842 21 add.u64 %r23,%r23,2; setp.ne.u64 %r61,%r23,%r27; @ %r61 bra $L31; .loc 1 3844 14 mov.u16 %r62,-16384; st.u16 [%r49+16],%r62; .loc 1 3850 14 mov.u16 %r63,32767; st.u16 [%r49+18],%r63; .loc 1 684 4 bra $L25; $L42: mov.u64 %r25,%r49; add.u64 %r47,%r49,18; $L33: .loc 1 581 10 st.u16 [%r25],%r57; .loc 1 580 17 add.u64 %r25,%r25,2; setp.ne.u64 %r65,%r25,%r47; @ %r65 bra $L33; .loc 1 582 6 ld.u16 %r67,[%r49+18]; or.b16 %r66,%r67,32767; st.u16 [%r49+18],%r66; .loc 1 688 7 bra $L25; $L27: add.u64 %r34,%r48,6; add.u64 %r39,%r49,16; add.u64 %r37,%r48,24; $L34: .loc 1 695 10 ld.u16 %r68,[%r34]; st.u16 [%r39],%r68; .loc 1 694 17 add.u64 %r34,%r34,2; add.u64 %r39,%r39,-2; setp.ne.u64 %r69,%r34,%r37; @ %r69 bra $L34; $L25: .loc 1 696 1 ret; } // BEGIN FUNCTION DEF: enormlz .func (.param .u32 %value_out) enormlz (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u16 %r54; .reg .pred %r55; .reg .u16 %r56; .reg .pred %r57; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r68; .reg .u16 %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .pred %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u16 %r78; .reg .u16 %r79; .reg .u16 %r80; .reg .u16 %r82; .reg .u16 %r83; .reg .pred %r84; .reg .pred %r86; .reg .pred %r87; .reg .u64 %r89; .reg .u64 %r91; .reg .u16 %r92; mov.u64 %r49,%ar0; .loc 1 2569 7 ld.u16 %r23,[%r49+4]; .loc 1 2569 6 setp.eq.u32 %r50,%r23,0; @ %r50 bra $L44; .loc 1 2607 6 cvt.u16.u32 %r52,%r23; and.b16 %r51,%r52,-256; setp.ne.u16 %r53,%r51,0; @ %r53 bra $L45; .loc 1 2567 6 mov.u32 %r48,0; bra $L59; $L44: .loc 1 2572 7 ld.u16 %r46,[%r49+6]; .loc 1 2572 6 cvt.u16.u32 %r54,%r46; setp.lt.s16 %r55,%r54,0; @ %r55 bra $L61; .loc 1 2567 6 mov.u32 %r48,%r23; add.u64 %r91,%r49,26; .loc 1 924 6 mov.u16 %r92,0; bra $L48; $L51: .loc 1 919 5 add.u64 %r30,%r49,6; .loc 1 918 5 add.u64 %r42,%r49,4; $L50: .loc 1 922 14 add.u64 %r30,%r30,2; .loc 1 922 10 cvt.u16.u32 %r56,%r46; st.u16 [%r42],%r56; .loc 1 921 17 add.u64 %r42,%r42,2; setp.eq.u64 %r57,%r91,%r30; @ %r57 bra $L49; .loc 1 922 12 ld.u16 %r46,[%r30]; bra $L50; $L49: .loc 1 924 6 st.u16 [%r49+24],%r92; .loc 1 2577 10 add.u32 %r48,%r48,16; .loc 1 2581 10 setp.eq.u32 %r59,%r48,160; @ %r59 bra $L43; .loc 1 2574 10 ld.u16 %r46,[%r49+6]; $L48: .loc 1 2574 13 setp.eq.u32 %r60,%r46,0; @ %r60 bra $L51; cvt.u16.u32 %r62,%r46; and.b16 %r61,%r62,-256; cvt.u32.u16 %r41,%r61; .loc 1 2585 24 setp.ne.u16 %r63,%r61,0; @ %r63 bra $L55; .loc 1 895 5 add.u64 %r45,%r49,24; add.u64 %r89,%r49,2; $L54: .loc 1 896 10 mov.u32 %r33,%r41; .loc 1 895 5 mov.u64 %r36,%r45; $L53: mov.u32 %r31,%r33; .loc 1 900 14 ld.u16 %r65,[%r36]; shr.u16 %r64,%r65,8; cvt.u32.u16 %r33,%r64; .loc 1 901 10 shl.b16 %r66,%r65,8; .loc 1 902 10 cvt.u16.u32 %r69,%r31; or.b16 %r68,%r66,%r69; st.u16 [%r36],%r68; .loc 1 904 7 add.u64 %r36,%r36,-2; .loc 1 898 17 setp.ne.u64 %r70,%r36,%r89; @ %r70 bra $L53; .loc 1 2588 10 add.u32 %r48,%r48,8; .loc 1 2585 11 ld.u16 %r46,[%r49+6]; .loc 1 2585 24 cvt.u16.u32 %r72,%r46; and.b16 %r71,%r72,-256; setp.eq.u16 %r73,%r71,0; @ %r73 bra $L54; bra $L55; $L56: .loc 1 2593 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshup1,(%out_arg1); } .loc 1 2594 10 add.u32 %r48,%r48,1; .loc 1 2595 10 setp.gt.s32 %r75,%r48,160; @ %r75 bra $L43; .loc 1 2591 11 ld.u16 %r46,[%r49+6]; $L55: .loc 1 2591 24 cvt.u16.u32 %r76,%r46; setp.ge.s16 %r77,%r76,0; @ %r77 bra $L56; bra $L43; $L45: .loc 1 873 5 add.u64 %r40,%r49,4; add.u64 %r24,%r49,26; .loc 1 874 10 mov.u32 %r47,0; $L58: .loc 1 877 14 cvt.u16.u32 %r79,%r23; shl.b16 %r78,%r79,8; cvt.u32.u16 %r37,%r78; .loc 1 878 10 shr.u16 %r80,%r79,8; .loc 1 879 10 cvt.u16.u32 %r83,%r47; or.b16 %r82,%r80,%r83; st.u16 [%r40],%r82; .loc 1 881 7 add.u64 %r40,%r40,2; .loc 1 875 17 setp.ne.u64 %r84,%r24,%r40; @ %r84 bra $L57; .loc 1 2612 10 ld.u16 %r23,[%r49+4]; .loc 1 2610 10 mov.u32 %r48,-8; bra $L59; $L57: .loc 1 877 16 ld.u16 %r23,[%r40]; .loc 1 880 14 mov.u32 %r47,%r37; bra $L58; $L60: .loc 1 2614 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshdn1,(%out_arg1); } .loc 1 2615 10 add.u32 %r48,%r48,-1; .loc 1 2617 10 setp.eq.u32 %r86,%r48,-145; @ %r86 bra $L43; .loc 1 2612 10 ld.u16 %r23,[%r49+4]; $L59: .loc 1 2612 13 setp.ne.u32 %r87,%r23,0; @ %r87 bra $L60; bra $L43; $L61: .loc 1 2573 12 mov.u32 %r48,%r23; $L43: .loc 1 2624 1 mov.u32 %value,%r48; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eshift$part$0 .func (.param .u32 %value_out) eshift$part$0 (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u32 %r32; .reg .u32 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .u32 %r45; .reg .u64 %r48; .reg .u64 %r51; .reg .u32 %r54; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r61; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .u16 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .pred %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r94; .reg .pred %r95; .reg .u16 %r96; .reg .u16 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u16 %r116; .reg .pred %r117; .reg .pred %r122; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r132; .reg .u16 %r134; .reg .u32 %r135; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .pred %r142; mov.u64 %r75,%ar0; mov.u32 %r76,%ar1; .loc 1 2504 6 setp.lt.s32 %r77,%r76,0; @ %r77 bra $L72; .loc 1 2530 17 setp.gt.s32 %r78,%r76,15; @ %r78 bra $L73; bra $L74; $L72: .loc 1 2506 10 neg.s32 %r43,%r76; .loc 1 2507 17 setp.ge.s32 %r142,%r76,-15; @ %r142 bra $L75; .loc 1 938 5 add.u64 %r140,%r75,26; .loc 1 895 5 add.u64 %r58,%r75,24; .loc 1 2501 8 mov.u32 %r23,0; add.u64 %r141,%r75,4; .loc 1 943 10 mov.u16 %r85,0; $L77: .loc 1 2509 9 ld.u16 %r81,[%r75+24]; cvt.u16.u32 %r82,%r23; or.b16 %r80,%r81,%r82; cvt.u32.u16 %r23,%r80; .loc 1 938 5 mov.u64 %r41,%r140; .loc 1 937 5 mov.u64 %r39,%r58; $L76: .loc 1 941 12 add.u64 %r39,%r39,-2; add.u64 %r41,%r41,-2; ld.u16 %r83,[%r39]; st.u16 [%r41],%r83; .loc 1 940 17 setp.ne.u64 %r84,%r39,%r141; @ %r84 bra $L76; .loc 1 943 10 st.u16 [%r75+4],%r85; .loc 1 2511 7 add.u32 %r43,%r43,-16; .loc 1 2507 17 setp.gt.s32 %r86,%r43,15; @ %r86 bra $L77; mov.u32 %r87,-16; sub.u32 %r37,%r87,%r76; @ %r142 bra $L78; and.b32 %r94,%r37,-16; neg.s32 %r88,%r94; bra $L79; $L78: mov.u32 %r88,0; $L79: .loc 1 2511 7 add.u32 %r43,%r37,%r88; .loc 1 2514 17 setp.le.s32 %r95,%r43,7; @ %r95 bra $L80; bra $L91; $L93: .loc 1 2501 8 mov.u32 %r23,0; add.u64 %r140,%r75,26; add.u64 %r141,%r75,4; $L91: .loc 1 2516 15 ld.u8 %r96,[%r75+24]; .loc 1 2516 9 cvt.u16.u32 %r99,%r23; or.b16 %r98,%r96,%r99; cvt.u32.u16 %r23,%r98; .loc 1 873 5 mov.u64 %r48,%r141; .loc 1 874 10 mov.u32 %r45,0; $L81: mov.u32 %r73,%r45; .loc 1 877 14 ld.u16 %r101,[%r48]; shl.b16 %r100,%r101,8; cvt.u32.u16 %r45,%r100; .loc 1 878 10 shr.u16 %r102,%r101,8; .loc 1 879 10 cvt.u16.u32 %r105,%r73; or.b16 %r104,%r102,%r105; st.u16 [%r48],%r104; .loc 1 881 7 add.u64 %r48,%r48,2; .loc 1 875 17 setp.ne.u64 %r106,%r48,%r140; @ %r106 bra $L81; .loc 1 2518 7 add.u32 %r43,%r43,-8; $L80: .loc 1 2521 17 setp.eq.u32 %r107,%r43,0; @ %r107 bra $L82; $L83: .loc 1 2523 15 ld.u16 %r109,[%r75+24]; and.b16 %r108,%r109,1; .loc 1 2523 9 cvt.u16.u32 %r111,%r23; or.b16 %r110,%r108,%r111; cvt.u32.u16 %r23,%r110; .loc 1 2524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call eshdn1,(%out_arg1); } .loc 1 2525 7 add.u32 %r43,%r43,-1; .loc 1 2521 17 setp.ne.u32 %r113,%r43,0; @ %r113 bra $L83; bra $L82; $L73: .loc 1 918 5 add.u64 %r61,%r75,4; mov.u32 %r32,%r76; add.u64 %r139,%r75,24; .loc 1 924 6 mov.u16 %r116,0; $L85: mov.u64 %r38,%r61; .loc 1 918 5 mov.u64 %r51,%r61; $L84: .loc 1 922 7 add.u64 %r51,%r51,2; .loc 1 922 10 ld.u16 %r114,[%r51]; st.u16 [%r38],%r114; .loc 1 921 17 add.u64 %r38,%r38,2; setp.ne.u64 %r115,%r139,%r51; @ %r115 bra $L84; .loc 1 924 6 st.u16 [%r75+24],%r116; .loc 1 2533 7 add.u32 %r32,%r32,-16; .loc 1 2530 17 setp.gt.s32 %r117,%r32,15; @ %r117 bra $L85; .loc 1 2533 7 and.b32 %r76,%r76,15; $L74: .loc 1 2536 17 setp.le.s32 %r122,%r76,7; @ %r122 bra $L86; .loc 1 895 5 add.u64 %r57,%r75,24; add.u64 %r40,%r75,2; .loc 1 896 10 mov.u32 %r54,0; $L87: mov.u32 %r72,%r54; .loc 1 900 14 ld.u16 %r124,[%r57]; shr.u16 %r123,%r124,8; cvt.u32.u16 %r54,%r123; .loc 1 901 10 shl.b16 %r125,%r124,8; .loc 1 902 10 cvt.u16.u32 %r128,%r72; or.b16 %r127,%r125,%r128; st.u16 [%r57],%r127; .loc 1 904 7 add.u64 %r57,%r57,-2; .loc 1 898 17 setp.ne.u64 %r129,%r40,%r57; @ %r129 bra $L87; .loc 1 2539 7 add.u32 %r76,%r76,-8; $L86: .loc 1 2542 17 setp.ne.u32 %r130,%r76,0; @ %r130 bra $L88; $L90: .loc 1 896 10 mov.u32 %r74,0; bra $L71; $L88: .loc 1 2544 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call eshup1,(%out_arg1); } .loc 1 2545 7 add.u32 %r76,%r76,-1; .loc 1 2542 17 setp.ne.u32 %r132,%r76,0; @ %r132 bra $L88; bra $L90; $L82: .loc 1 2548 6 cvt.u16.u32 %r134,%r23; set.u32.ne.u16 %r135,%r134,0; neg.s32 %r74,%r135; bra $L71; $L75: .loc 1 2514 17 setp.lt.s32 %r138,%r76,-7; @ %r138 bra $L93; .loc 1 2501 8 mov.u32 %r23,0; bra $L83; $L71: .loc 1 2551 1 mov.u32 %value,%r74; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: e53toe$isra$0 .func e53toe$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r41; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u16 %r70; .reg .u16 %r73; .reg .u16 %r77; .reg .u16 %r79; .reg .pred %r82; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u16 %r90; .reg .pred %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .pred %r97; .reg .u16 %r98; .reg .pred %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .pred %r103; .reg .u16 %r104; .reg .pred %r105; .reg .pred %r106; .reg .u16 %r107; .reg .u16 %r109; .reg .pred %r111; .reg .u16 %r112; .reg .u16 %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .u16 %r117; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u16 %r124; .reg .pred %r125; .reg .u16 %r126; .reg .u16 %r127; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r132; .reg .u16 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u32 %r138; .reg .u32 %r139; .reg .u16 %r140; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.u64 %r60,%frame; add.u64 %r51,%frame,26; .loc 1 708 11 mov.u16 %r68,0; $L107: st.u16 [%r60],%r68; .loc 1 707 17 add.u64 %r60,%r60,2; setp.ne.u64 %r69,%r51,%r60; @ %r69 bra $L107; .loc 1 2076 7 ld.u16 %r70,[%r66+6]; .loc 1 2076 6 shr.s16 %r73,%r70,15; cvt.u32.u16 %r59,%r73; st.u16 [%frame],%r73; .loc 1 2078 14 and.b16 %r140,%r70,15; .loc 1 2078 22 or.b16 %r77,%r140,16; .loc 1 2078 9 st.u16 [%frame+4],%r77; .loc 1 2079 5 and.b16 %r79,%r70,32752; .loc 1 2081 6 setp.ne.u16 %r82,%r79,32752; @ %r82 bra $L108; .loc 1 2085 10 setp.ne.u16 %r85,%r140,0; @ %r85 bra $L109; .loc 1 2085 32 ld.u16 %r86,[%r66+4]; setp.ne.u16 %r87,%r86,0; @ %r87 bra $L109; .loc 1 2086 4 ld.u16 %r88,[%r66+2]; setp.ne.u16 %r89,%r88,0; @ %r89 bra $L109; .loc 1 2086 20 ld.u16 %r90,[%r66]; setp.eq.u16 %r91,%r90,0; @ %r91 bra $L110; $L109: mov.u64 %r52,%r67; add.u64 %r64,%r67,16; .loc 1 3843 9 mov.u16 %r92,0; $L111: st.u16 [%r52],%r92; .loc 1 3842 21 add.u64 %r52,%r52,2; setp.ne.u64 %r93,%r52,%r64; @ %r93 bra $L111; .loc 1 3844 14 mov.u16 %r94,-16384; st.u16 [%r67+16],%r94; .loc 1 3850 14 mov.u16 %r95,32767; st.u16 [%r67+18],%r95; .loc 1 2089 4 bra $L106; $L110: mov.u64 %r61,%r67; add.u64 %r34,%r67,20; .loc 1 2086 20 mov.u64 %r35,%r67; $L113: .loc 1 467 10 st.u16 [%r35],%r90; .loc 1 466 17 add.u64 %r35,%r35,2; setp.ne.u64 %r97,%r34,%r35; @ %r97 bra $L113; add.u64 %r36,%r67,18; mov.u64 %r22,%r67; .loc 1 581 10 mov.u16 %r98,0; $L114: st.u16 [%r22],%r98; .loc 1 580 17 add.u64 %r22,%r22,2; setp.ne.u64 %r99,%r36,%r22; @ %r99 bra $L114; .loc 1 582 6 ld.u16 %r101,[%r67+18]; or.b16 %r100,%r101,32767; st.u16 [%r67+18],%r100; .loc 1 2102 10 setp.eq.u32 %r103,%r59,0; @ %r103 bra $L106; $L115: .loc 1 558 10 ld.u16 %r104,[%r61]; setp.ne.u16 %r105,%r104,0; @ %r105 bra $L106; .loc 1 556 17 add.u64 %r61,%r61,2; setp.ne.u64 %r106,%r36,%r61; @ %r106 bra $L115; .loc 1 502 13 add.u16 %r107,%r100,-32768; st.u16 [%r67+18],%r107; bra $L106; $L108: .loc 1 2107 5 shr.u16 %r109,%r79,4; cvt.u32.u16 %r41,%r109; .loc 1 2085 38 ld.u16 %r62,[%r66+4]; .loc 1 2086 10 ld.u16 %r49,[%r66+2]; .loc 1 2086 26 ld.u16 %r63,[%r66]; .loc 1 2110 6 setp.ne.u32 %r111,%r41,0; @ %r111 bra $L116; .loc 1 2113 13 and.b16 %r112,%r77,-17; st.u16 [%frame+4],%r112; .loc 1 2116 9 mov.u16 %r114,15360; st.u16 [%frame+2],%r114; .loc 1 2119 8 cvt.u16.u32 %r115,%r62; st.u16 [%frame+6],%r115; .loc 1 2120 8 cvt.u16.u32 %r116,%r49; st.u16 [%frame+8],%r116; .loc 1 2121 8 cvt.u16.u32 %r117,%r63; st.u16 [%frame+10],%r117; mov.u32 %r119,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r119; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r120,[%value_in]; } .loc 1 2131 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r122,[%value_in]; } .loc 1 2131 10 setp.le.s32 %r123,%r122,144; @ %r123 bra $L117; add.u64 %r33,%frame,2; .loc 1 720 11 mov.u16 %r124,0; $L118: st.u16 [%r33],%r124; .loc 1 719 17 add.u64 %r33,%r33,2; setp.ne.u64 %r125,%r51,%r33; @ %r125 bra $L118; bra $L119; $L117: .loc 1 2134 8 ld.u16 %r127,[%frame+2]; add.u16 %r126,%r127,1; cvt.u16.u32 %r128,%r122; sub.u16 %r129,%r126,%r128; st.u16 [%frame+2],%r129; $L119: .loc 1 2136 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r67; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L106; $L116: .loc 1 2115 5 add.u16 %r132,%r109,15360; .loc 1 2116 9 st.u16 [%frame+2],%r132; .loc 1 2119 8 cvt.u16.u32 %r134,%r62; st.u16 [%frame+6],%r134; .loc 1 2120 8 cvt.u16.u32 %r135,%r49; st.u16 [%frame+8],%r135; .loc 1 2121 8 cvt.u16.u32 %r136,%r63; st.u16 [%frame+10],%r136; mov.u32 %r138,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r138; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r139,[%value_in]; } bra $L119; $L106: .loc 1 2138 1 ret; } // BEGIN FUNCTION DEF: emovi .func emovi (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r37; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r47; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r57; .reg .u64 %r58; .reg .u16 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u16 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u16 %r75; .reg .pred %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u16 %r80; .reg .u16 %r81; mov.u64 %r57,%ar0; mov.u64 %r58,%ar1; .loc 1 626 6 ld.u16 %r60,[%r57+18]; shr.s16 %r61,%r60,15; st.u16 [%r58],%r61; .loc 1 632 5 add.u64 %r37,%r58,4; .loc 1 632 8 ld.u16 %r63,[%r57+18]; and.b16 %r62,%r63,32767; st.u16 [%r58+2],%r62; .loc 1 634 6 setp.ne.u16 %r66,%r62,32767; @ %r66 bra $L131; .loc 1 553 6 ld.u16 %r68,[%r57+18]; and.b16 %r67,%r68,32767; setp.ne.u16 %r69,%r67,32767; @ %r69 bra $L132; add.u64 %r41,%r57,18; mov.u64 %r50,%r57; $L134: .loc 1 558 10 ld.u16 %r70,[%r50]; setp.ne.u16 %r71,%r70,0; @ %r71 bra $L133; .loc 1 556 17 add.u64 %r50,%r50,2; setp.ne.u64 %r72,%r41,%r50; @ %r72 bra $L134; bra $L132; $L135: .loc 1 641 11 ld.u16 %r73,[%r30]; st.u16 [%r29],%r73; .loc 1 640 18 add.u64 %r30,%r30,-2; add.u64 %r29,%r29,2; setp.ne.u64 %r74,%r30,%r51; @ %r74 bra $L135; bra $L130; $L132: mov.u64 %r34,%r37; add.u64 %r33,%r34,22; .loc 1 646 7 mov.u16 %r75,0; $L137: st.u16 [%r34],%r75; .loc 1 645 21 add.u64 %r34,%r34,2; setp.ne.u64 %r76,%r33,%r34; @ %r76 bra $L137; bra $L130; $L131: .loc 1 651 8 mov.u16 %r77,0; st.u16 [%r58+4],%r77; add.u64 %r43,%r57,16; add.u64 %r26,%r58,6; $L139: .loc 1 654 10 ld.u16 %r78,[%r43]; st.u16 [%r26],%r78; mov.u64 %r47,%r43; .loc 1 653 17 add.u64 %r43,%r43,-2; add.u64 %r26,%r26,2; setp.ne.u64 %r79,%r47,%r57; @ %r79 bra $L139; .loc 1 656 6 mov.u16 %r80,0; st.u16 [%r58+24],%r80; bra $L130; $L133: .loc 1 639 9 mov.u16 %r81,0; st.u16 [%r58+4],%r81; add.u64 %r30,%r57,16; add.u64 %r29,%r58,6; add.u64 %r51,%r57,-4; bra $L135; $L130: .loc 1 657 1 ret; } // BEGIN FUNCTION DEF: ecmp .func (.param .u32 %value_out) ecmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[64]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r24; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .pred %r57; .reg .u16 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r69; .reg .u16 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u16 %r77; .reg .pred %r78; .reg .u16 %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .pred %r90; .reg .pred %r91; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; .loc 1 553 6 ld.u16 %r56,[%r53+18]; and.b16 %r55,%r56,32767; setp.ne.u16 %r57,%r55,32767; @ %r57 bra $L145; mov.u64 %r49,%r53; add.u64 %r51,%r53,18; $L147: .loc 1 558 10 ld.u16 %r58,[%r49]; setp.ne.u16 %r59,%r58,0; @ %r59 bra $L157; .loc 1 556 17 add.u64 %r49,%r49,2; setp.ne.u64 %r60,%r49,%r51; @ %r60 bra $L147; $L145: .loc 1 553 6 ld.u16 %r62,[%r54+18]; and.b16 %r61,%r62,32767; setp.ne.u16 %r63,%r61,32767; @ %r63 bra $L148; mov.u64 %r46,%r54; add.u64 %r48,%r54,18; $L149: .loc 1 558 10 ld.u16 %r64,[%r46]; setp.ne.u16 %r65,%r64,0; @ %r65 bra $L158; .loc 1 556 17 add.u64 %r46,%r46,2; setp.ne.u64 %r66,%r46,%r48; @ %r66 bra $L149; $L148: .loc 1 2436 3 add.u64 %r69,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r69; call emovi,(%out_arg1,%out_arg2); } .loc 1 2438 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 2441 7 ld.u16 %r24,[%frame+26]; .loc 1 2441 6 ld.u16 %r72,[%frame]; cvt.u16.u32 %r73,%r24; setp.eq.u16 %r74,%r72,%r73; @ %r74 bra $L150; add.u64 %r30,%frame,28; add.u64 %r35,%frame,2; add.u64 %r22,%frame,50; $L152: .loc 1 2446 7 ld.u16 %r77,[%r30]; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L151; .loc 1 2448 7 ld.u16 %r79,[%r35]; setp.ne.u16 %r80,%r79,0; @ %r80 bra $L151; .loc 1 2444 21 add.u64 %r30,%r30,2; add.u64 %r35,%r35,2; setp.ne.u64 %r81,%r22,%r30; @ %r81 bra $L152; .loc 1 2451 14 mov.u32 %r52,0; bra $L144; $L151: .loc 1 2453 10 setp.eq.u32 %r82,%r24,0; .loc 1 2456 9 selp.u32 %r52,1,-1,%r82; bra $L144; $L150: .loc 1 2459 6 setp.eq.u32 %r83,%r24,0; .loc 1 2462 11 selp.u32 %r52,1,-1,%r83; add.u64 %r41,%frame,2; add.u64 %r34,%frame,28; add.u64 %r43,%frame,24; bra $L154; $L156: .loc 1 2466 11 ld.u16 %r28,[%r34]; .loc 1 2466 19 ld.u16 %r29,[%r41]; .loc 1 2466 10 add.u64 %r41,%r41,2; add.u64 %r34,%r34,2; cvt.u16.u32 %r85,%r28; cvt.u16.u32 %r86,%r29; setp.eq.u16 %r87,%r85,%r86; @ %r87 bra $L154; .loc 1 2479 6 setp.gt.u16 %r90,%r85,%r86; @ %r90 bra $L144; bra $L165; $L154: .loc 1 2471 14 setp.ne.u64 %r91,%r41,%r43; @ %r91 bra $L156; .loc 1 2451 14 mov.u32 %r52,0; bra $L144; $L165: .loc 1 2482 13 neg.s32 %r52,%r52; bra $L144; $L157: .loc 1 2434 12 mov.u32 %r52,-2; bra $L144; $L158: mov.u32 %r52,-2; $L144: .loc 1 2483 1 mov.u32 %value,%r52; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: emdnorm .func emdnorm (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r39; .reg .u64 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r70; .reg .u64 %r73; .reg .u64 %r85; .reg .u64 %r88; .reg .u64 %r89; .reg .u32 %r93; .reg .u32 %r94; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r112; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .u32 %r128; .reg .u64 %r129; .reg .u32 %r131; .reg .u64 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .u32 %r142; .reg .u16 %r143; .reg .pred %r144; .reg .u16 %r145; .reg .pred %r146; .reg .pred %r148; .reg .u32 %r151; .reg .u32 %r152; .reg .pred %r153; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u16 %r159; .reg .pred %r160; .reg .pred %r161; .reg .pred %r162; .reg .pred %r163; .reg .pred %r164; .reg .pred %r165; .reg .pred %r166; .reg .u16 %r167; .reg .u16 %r168; .reg .u16 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u64 %r172; .reg .u64 %r173; .reg .pred %r176; .reg .pred %r177; .reg .u16 %r178; .reg .u16 %r179; .reg .u32 %r180; .reg .u64 %r183; .reg .u16 %r184; .reg .u16 %r185; .reg .u16 %r186; .reg .pred %r187; .reg .pred %r188; .reg .u64 %r189; .reg .u32 %r190; .reg .u32 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u64 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .u16 %r198; .reg .u16 %r199; .reg .u16 %r200; .reg .pred %r201; .reg .u16 %r202; .reg .u16 %r203; .reg .u16 %r204; .reg .u16 %r205; .reg .u16 %r206; .reg .u16 %r207; .reg .u16 %r208; .reg .pred %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u16 %r216; .reg .u16 %r217; .reg .u16 %r218; .reg .u32 %r219; .reg .u16 %r220; .reg .pred %r221; .reg .u16 %r222; .reg .u16 %r223; .reg .pred %r224; .reg .pred %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u16 %r229; .reg .u16 %r230; .reg .u16 %r231; .reg .pred %r232; .reg .pred %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .pred %r241; .reg .u16 %r243; .reg .pred %r244; .reg .u16 %r246; .reg .pred %r247; .reg .u16 %r248; .reg .pred %r249; .reg .u16 %r250; .reg .u16 %r251; .reg .pred %r252; .reg .u16 %r254; .reg .u64 %r255; .reg .u64 %r256; .reg .u16 %r257; .reg .u16 %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .u16 %r262; .reg .u16 %r264; .reg .u16 %r266; .reg .pred %r267; .reg .pred %r270; .reg .pred %r272; .reg .u16 %r274; .reg .pred %r275; .reg .u32 %r276; .reg .pred %r277; .reg .pred %r278; .reg .u16 %r279; mov.u64 %r124,%ar0; mov.u32 %r125,%ar1; mov.u32 %r126,%ar2; mov.u64 %r127,%ar3; mov.u32 %r128,%ar4; mov.u64 %r129,%ar5; .loc 1 1225 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r131,[%value_in]; } .loc 1 1235 7 cvt.s64.s32 %r132,%r131; sub.u64 %r49,%r127,%r132; .loc 1 1240 10 set.u32.gt.s32 %r134,%r131,144; neg.s32 %r135,%r134; mov.u32 %r133,%r135; .loc 1 1240 27 set.u32.le.s64 %r137,%r49,32766; neg.s32 %r138,%r137; mov.u32 %r136,%r138; .loc 1 1240 19 cvt.u16.u8 %r279,%r133; mov.u16 %r140,%r279; cvt.u16.u8 %r279,%r136; mov.u16 %r141,%r279; and.b16 %r139,%r140,%r141; cvt.u32.u16 %r142,%r139; .loc 1 1240 6 cvt.u16.u8 %r143,%r142; setp.eq.u16 %r144,%r143,0; @ %r144 bra $L167; .loc 1 718 3 add.u64 %r57,%r124,2; add.u64 %r58,%r124,26; .loc 1 720 11 mov.u16 %r145,0; $L168: st.u16 [%r57],%r145; .loc 1 719 17 add.u64 %r57,%r57,2; setp.ne.u64 %r146,%r58,%r57; @ %r146 bra $L168; bra $L166; $L167: .loc 1 1246 6 setp.ge.s64 %r278,%r49,0; @ %r278 bra $L170; .loc 1 1248 10 setp.lt.s64 %r148,%r49,-144; @ %r148 bra $L171; .loc 1 1250 6 cvt.u32.u64 %r151,%r49; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r151; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r152,[%value_in]; } .loc 1 1252 7 setp.eq.u32 %r153,%r152,0; .loc 1 1253 11 selp.u32 %r125,%r125,1,%r153; .loc 1 1262 6 setp.eq.u32 %r270,%r128,0; @ ! %r270 bra $L226; bra $L200; $L171: .loc 1 718 3 add.u64 %r70,%r124,2; add.u64 %r50,%r124,26; $L173: .loc 1 720 11 st.u16 [%r70],%r143; .loc 1 719 17 add.u64 %r70,%r70,2; setp.ne.u64 %r155,%r50,%r70; @ %r155 bra $L173; bra $L166; $L170: .loc 1 1262 6 setp.eq.u32 %r156,%r128,0; @ %r156 bra $L175; .loc 1 1265 10 ld.u32 %r123,[%r129+4]; .loc 1 1265 6 ld.u32 %r157,[%r129]; setp.eq.u32 %r158,%r123,%r157; @ %r158 bra $L176; $L204: add.u64 %r96,%r129,26; add.u64 %r73,%r129,52; .loc 1 708 11 mov.u16 %r159,0; $L177: st.u16 [%r96],%r159; .loc 1 707 17 add.u64 %r96,%r96,2; setp.ne.u64 %r160,%r73,%r96; @ %r160 bra $L177; .loc 1 1268 7 setp.eq.u32 %r161,%r123,56; @ %r161 bra $L206; setp.gt.s32 %r162,%r123,56; @ %r162 bra $L179; setp.eq.u32 %r163,%r123,24; @ %r163 bra $L207; setp.eq.u32 %r164,%r123,53; @ %r164 bra $L208; mov.u32 %r115,12; mov.u32 %r117,65535; mov.u32 %r118,32768; mov.u32 %r94,1; mov.u32 %r93,11; bra $L178; $L179: setp.eq.u32 %r165,%r123,64; @ %r165 bra $L209; setp.eq.u32 %r166,%r123,113; @ %r166 bra $L210; mov.u32 %r115,12; mov.u32 %r117,65535; mov.u32 %r118,32768; mov.u32 %r94,1; mov.u32 %r93,11; bra $L178; $L206: mov.u32 %r115,6; mov.u32 %r117,255; mov.u32 %r118,128; mov.u32 %r94,256; mov.u32 %r93,%r115; bra $L178; $L207: mov.u32 %r115,4; mov.u32 %r117,255; mov.u32 %r118,128; mov.u32 %r94,256; mov.u32 %r93,%r115; bra $L178; $L208: mov.u32 %r115,6; mov.u32 %r117,2047; mov.u32 %r118,1024; mov.u32 %r94,2048; mov.u32 %r93,%r115; bra $L178; $L209: mov.u32 %r115,7; mov.u32 %r117,65535; mov.u32 %r118,32768; mov.u32 %r94,1; mov.u32 %r93,6; bra $L178; $L210: mov.u32 %r115,10; mov.u32 %r117,32767; mov.u32 %r118,16384; mov.u32 %r94,32768; mov.u32 %r93,%r115; $L178: .loc 1 1272 12 st.u32 [%r129+8],%r115; .loc 1 1273 14 cvt.u16.u32 %r167,%r117; st.u16 [%r129+20],%r167; .loc 1 1274 15 cvt.u16.u32 %r168,%r118; st.u16 [%r129+22],%r168; .loc 1 1275 15 cvt.u16.u32 %r169,%r94; st.u16 [%r129+24],%r169; .loc 1 1276 12 st.u32 [%r129+12],%r93; .loc 1 1315 26 cvt.s64.s32 %r170,%r93; add.u64 %r171,%r170,8; add.u64 %r172,%r171,%r171; add.u64 %r173,%r129,%r172; st.u16 [%r173+10],%r169; .loc 1 1316 18 st.u32 [%r129],%r123; $L176: .loc 1 1325 6 setp.gt.s64 %r176,%r49,0; @ %r176 bra $L180; $L205: .loc 1 1325 18 setp.eq.u32 %r177,%r123,144; @ %r177 bra $L181; .loc 1 1330 25 ld.u16 %r179,[%r124+24]; and.b16 %r178,%r179,1; cvt.u32.u16 %r180,%r178; .loc 1 1330 12 or.b32 %r125,%r125,%r180; .loc 1 1331 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call eshdn1,(%out_arg1); } $L180: .loc 1 1336 12 ld.u32 %r29,[%r129+8]; cvt.s64.s32 %r30,%r29; .loc 1 1336 8 add.u64 %r183,%r30,%r30; add.u64 %r32,%r124,%r183; ld.u16 %r33,[%r32]; .loc 1 1336 23 ld.u16 %r34,[%r129+20]; .loc 1 1336 5 cvt.u16.u32 %r185,%r33; cvt.u16.u32 %r186,%r34; and.b16 %r184,%r185,%r186; cvt.u32.u16 %r51,%r184; .loc 1 1337 6 setp.gt.s32 %r187,%r123,143; @ %r187 bra $L182; .loc 1 1340 16 setp.gt.s32 %r188,%r29,11; @ %r188 bra $L182; add.u64 %r189,%r183,2; add.u64 %r64,%r124,%r189; mov.u32 %r191,11; sub.u32 %r190,%r191,%r29; cvt.u64.u32 %r192,%r190; add.u64 %r193,%r192,%r30; add.u64 %r194,%r193,%r193; add.u64 %r195,%r124,4; add.u64 %r97,%r194,%r195; .loc 1 1344 9 mov.u16 %r200,0; $L184: .loc 1 1342 7 ld.u16 %r196,[%r64]; setp.eq.u16 %r197,%r196,0; @ %r197 bra $L183; .loc 1 1343 8 cvt.u16.u32 %r199,%r51; or.b16 %r198,%r199,1; cvt.u32.u16 %r51,%r198; $L183: .loc 1 1344 9 st.u16 [%r64],%r200; .loc 1 1340 16 add.u64 %r64,%r64,2; setp.ne.u64 %r201,%r64,%r97; @ %r201 bra $L184; .loc 1 1348 14 ld.u16 %r33,[%r32]; .loc 1 1348 21 ld.u16 %r34,[%r129+20]; $L182: .loc 1 1348 14 cvt.u16.u32 %r203,%r34; not.b16 %r202,%r203; cvt.u16.u32 %r205,%r33; and.b16 %r204,%r202,%r205; st.u16 [%r32],%r204; .loc 1 1349 15 ld.u16 %r39,[%r129+22]; .loc 1 1349 24 cvt.u16.u32 %r207,%r39; cvt.u16.u32 %r208,%r51; and.b16 %r206,%r207,%r208; .loc 1 1349 6 setp.ne.u16 %r209,%r206,0; @ %r209 bra $L185; $L190: .loc 1 1368 18 set.u32.ne.u32 %r211,%r123,144; neg.s32 %r212,%r211; mov.u32 %r210,%r212; .loc 1 1368 6 set.u32.le.s64 %r214,%r49,0; neg.s32 %r215,%r214; mov.u32 %r213,%r215; .loc 1 1368 18 cvt.u16.u8 %r279,%r210; mov.u16 %r217,%r279; cvt.u16.u8 %r279,%r213; mov.u16 %r218,%r279; and.b16 %r216,%r217,%r218; cvt.u32.u16 %r219,%r216; cvt.u16.u8 %r220,%r219; setp.ne.u16 %r221,%r220,0; @ ! %r221 bra $L227; bra $L186; $L185: .loc 1 1351 10 cvt.u16.u32 %r222,%r39; cvt.u16.u32 %r223,%r51; setp.ne.u16 %r224,%r222,%r223; @ %r224 bra $L188; .loc 1 1353 7 setp.ne.u32 %r225,%r125,0; @ %r225 bra $L189; .loc 1 1355 14 ld.s32 %r226,[%r129+12]; add.u64 %r227,%r226,%r226; add.u64 %r228,%r124,%r227; .loc 1 1355 38 ld.u16 %r230,[%r228]; ld.u16 %r231,[%r129+24]; and.b16 %r229,%r230,%r231; .loc 1 1355 11 setp.eq.u16 %r232,%r229,0; @ ! %r232 bra $L188; bra $L190; $L189: .loc 1 1360 11 setp.ne.u32 %r233,%r126,0; @ %r233 bra $L190; $L188: .loc 1 958 5 add.u64 %r88,%r129,50; .loc 1 959 5 add.u64 %r89,%r124,24; add.u64 %r67,%r129,28; .loc 1 960 9 mov.u32 %r120,0; $L191: .loc 1 963 11 ld.u16 %r234,[%r88]; .loc 1 963 34 ld.u16 %r235,[%r89]; .loc 1 963 32 add.u64 %r236,%r234,%r235; .loc 1 963 55 cvt.u64.u32 %r237,%r120; .loc 1 963 9 add.u64 %r85,%r236,%r237; .loc 1 964 10 shr.u64 %r238,%r85,16; cvt.u32.u64 %r239,%r238; and.b32 %r120,%r239,1; .loc 1 968 12 st.u16 [%r89],%r85; .loc 1 969 7 add.u64 %r88,%r88,-2; .loc 1 970 7 add.u64 %r89,%r89,-2; .loc 1 961 17 setp.ne.u64 %r241,%r67,%r88; @ %r241 bra $L191; bra $L190; $L186: .loc 1 1373 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call eshup1,(%out_arg1); } .loc 1 1375 6 ld.u16 %r243,[%r124+4]; setp.eq.u16 %r244,%r243,0; @ %r244 bra $L192; $L194: .loc 1 1377 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call eshdn1,(%out_arg1); } .loc 1 1378 11 add.u64 %r49,%r49,1; bra $L193; $L227: .loc 1 1375 6 ld.u16 %r246,[%r124+4]; setp.ne.u16 %r247,%r246,0; @ %r247 bra $L194; $L193: .loc 1 1381 13 mov.u16 %r248,0; st.u16 [%r124+24],%r248; .loc 1 1382 6 setp.le.s64 %r249,%r49,32766; @ ! %r249 bra $L202; setp.ge.s64 %r278,%r49,0; bra $L195; $L202: .loc 1 1388 12 mov.u16 %r250,32767; st.u16 [%r124+2],%r250; add.u64 %r66,%r124,4; add.u64 %r68,%r124,24; .loc 1 1390 7 mov.u16 %r251,0; $L196: st.u16 [%r66],%r251; .loc 1 1389 21 add.u64 %r66,%r66,2; setp.ne.u64 %r252,%r66,%r68; @ %r252 bra $L196; bra $L166; $L195: .loc 1 1409 6 @ %r278 bra $L197; $L199: .loc 1 1410 10 mov.u16 %r254,0; st.u16 [%r124+2],%r254; bra $L166; $L197: .loc 1 1412 12 st.u16 [%r124+2],%r49; bra $L166; $L181: .loc 1 1336 8 ld.s32 %r255,[%r129+8]; add.u64 %r256,%r255,%r255; add.u64 %r112,%r124,%r256; .loc 1 1336 5 ld.u16 %r258,[%r112]; ld.u16 %r259,[%r129+20]; and.b16 %r257,%r258,%r259; cvt.u32.u16 %r51,%r257; .loc 1 1348 14 not.b16 %r260,%r259; and.b16 %r262,%r260,%r258; st.u16 [%r112],%r262; .loc 1 1349 15 ld.u16 %r39,[%r129+22]; .loc 1 1349 24 cvt.u16.u32 %r266,%r39; and.b16 %r264,%r257,%r266; .loc 1 1349 6 setp.ne.u16 %r267,%r264,0; @ %r267 bra $L185; bra $L228; $L192: .loc 1 1381 13 st.u16 [%r124+24],%r243; bra $L195; $L200: st.u16 [%r124+24],%r143; bra $L199; $L175: st.u16 [%r124+24],%r143; .loc 1 1382 6 setp.gt.s64 %r272,%r49,32766; @ ! %r272 bra $L197; bra $L202; $L229: .loc 1 1381 13 st.u16 [%r124+24],%r274; bra $L195; $L228: .loc 1 1375 6 ld.u16 %r274,[%r124+4]; setp.ne.u16 %r275,%r274,0; @ ! %r275 bra $L229; bra $L194; $L226: .loc 1 1265 10 ld.u32 %r123,[%r129+4]; .loc 1 1265 6 ld.u32 %r276,[%r129]; setp.ne.u32 %r277,%r123,%r276; @ %r277 bra $L204; bra $L205; $L166: .loc 1 1413 1 ret; } // BEGIN FUNCTION DEF: eiremain .func eiremain (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u64 %r70; .reg .u32 %r72; .reg .u64 %r73; .reg .u16 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .pred %r82; .reg .pred %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u32 %r89; .reg .pred %r91; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .pred %r97; .reg .u32 %r102; .reg .u64 %r104; .reg .u64 %r105; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; .loc 1 3736 19 add.u64 %r32,%r67,52; .loc 1 3738 6 ld.u16 %r33,[%r65+2]; .loc 1 3739 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r65; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r69,[%value_in]; } cvt.s64.s32 %r70,%r69; .loc 1 3739 6 sub.u64 %r35,%r33,%r70; .loc 1 3740 6 ld.u16 %r36,[%r66+2]; .loc 1 3741 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r72,[%value_in]; } cvt.s64.s32 %r73,%r72; .loc 1 3741 6 sub.u64 %r38,%r36,%r73; mov.u64 %r54,%r32; add.u64 %r55,%r67,78; .loc 1 708 11 mov.u16 %r74,0; $L231: st.u16 [%r54],%r74; .loc 1 707 17 add.u64 %r54,%r54,2; setp.ne.u64 %r75,%r54,%r55; @ %r75 bra $L231; .loc 1 3743 13 setp.gt.s64 %r76,%r35,%r38; @ %r76 bra $L232; .loc 1 792 5 add.u64 %r61,%r65,4; .loc 1 793 5 add.u64 %r60,%r66,4; add.u64 %r104,%r65,26; add.u64 %r105,%r66,2; $L238: mov.u64 %r42,%r61; mov.u64 %r29,%r60; $L236: .loc 1 796 10 ld.u16 %r77,[%r42]; ld.u16 %r78,[%r29]; setp.eq.u16 %r79,%r77,%r78; @ %r79 bra $L233; .loc 1 802 6 setp.gt.u16 %r82,%r77,%r78; @ %r82 bra $L239; bra $L235; $L233: .loc 1 794 17 add.u64 %r42,%r42,2; add.u64 %r29,%r29,2; setp.ne.u64 %r83,%r104,%r42; @ %r83 bra $L236; $L235: .loc 1 986 5 add.u64 %r52,%r65,24; .loc 1 987 5 add.u64 %r53,%r66,24; .loc 1 988 9 mov.u32 %r41,0; $L237: .loc 1 991 11 ld.u16 %r84,[%r53]; .loc 1 991 55 cvt.u64.u32 %r85,%r41; .loc 1 991 9 sub.u64 %r86,%r84,%r85; .loc 1 991 34 ld.u16 %r87,[%r52]; .loc 1 991 9 sub.u64 %r49,%r86,%r87; .loc 1 992 10 shr.u64 %r88,%r49,16; cvt.u32.u64 %r89,%r88; and.b32 %r41,%r89,1; .loc 1 996 12 st.u16 [%r53],%r49; .loc 1 997 7 add.u64 %r52,%r52,-2; .loc 1 998 7 add.u64 %r53,%r53,-2; .loc 1 989 17 setp.ne.u64 %r91,%r105,%r53; @ %r91 bra $L237; .loc 1 3748 6 mov.u32 %r30,1; bra $L234; $L239: .loc 1 3752 6 mov.u32 %r30,0; $L234: .loc 1 3754 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; call eshup1,(%out_arg1); } .loc 1 3755 21 ld.u16 %r94,[%r67+76]; cvt.u16.u32 %r95,%r30; or.b16 %r93,%r94,%r95; st.u16 [%r67+76],%r93; .loc 1 3756 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call eshup1,(%out_arg1); } .loc 1 3757 10 add.u64 %r38,%r38,-1; .loc 1 3743 13 setp.le.s64 %r97,%r35,%r38; @ %r97 bra $L238; $L232: .loc 1 3759 3 mov.u32 %r102,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r102; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r102; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r38; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r102; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r67; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3760 1 ret; } // BEGIN FUNCTION DEF: ediv .func ediv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[80]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r50; .reg .u64 %r56; .reg .u32 %r59; .reg .u64 %r63; .reg .u64 %r68; .reg .u64 %r71; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r78; .reg .u32 %r85; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r90; .reg .u64 %r95; .reg .u64 %r98; .reg .u64 %r100; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r107; .reg .u32 %r110; .reg .u64 %r112; .reg .u64 %r114; .reg .u64 %r118; .reg .u64 %r120; .reg .u32 %r127; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r140; .reg .u64 %r141; .reg .u64 %r144; .reg .u64 %r148; .reg .u64 %r155; .reg .u64 %r158; .reg .u64 %r160; .reg .u64 %r163; .reg .u64 %r164; .reg .u32 %r170; .reg .u64 %r172; .reg .u64 %r175; .reg .u64 %r176; .reg .u32 %r177; .reg .u64 %r179; .reg .u64 %r181; .reg .u64 %r186; .reg .u64 %r188; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r205; .reg .u64 %r212; .reg .u32 %r216; .reg .u32 %r218; .reg .u32 %r220; .reg .u32 %r221; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u16 %r232; .reg .u16 %r233; .reg .pred %r234; .reg .u16 %r235; .reg .pred %r236; .reg .pred %r237; .reg .u16 %r238; .reg .pred %r239; .reg .u16 %r240; .reg .u16 %r241; .reg .pred %r242; .reg .u16 %r243; .reg .pred %r244; .reg .pred %r245; .reg .u16 %r246; .reg .pred %r247; .reg .u64 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u16 %r252; .reg .u16 %r253; .reg .u16 %r254; .reg .u16 %r255; .reg .pred %r257; .reg .u32 %r260; .reg .pred %r261; .reg .u16 %r262; .reg .pred %r263; .reg .pred %r264; .reg .u16 %r265; .reg .pred %r266; .reg .pred %r267; .reg .u16 %r268; .reg .pred %r269; .reg .u16 %r270; .reg .u16 %r271; .reg .pred %r273; .reg .u16 %r274; .reg .pred %r275; .reg .pred %r276; .reg .u16 %r277; .reg .pred %r278; .reg .pred %r279; .reg .u32 %r281; .reg .u16 %r282; .reg .u16 %r283; .reg .pred %r284; .reg .pred %r285; .reg .u32 %r286; .reg .u16 %r287; .reg .u16 %r288; .reg .u16 %r289; .reg .pred %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .pred %r293; .reg .u16 %r294; .reg .pred %r295; .reg .pred %r302; .reg .u16 %r303; .reg .pred %r304; .reg .u32 %r307; .reg .u64 %r308; .reg .pred %r311; .reg .u16 %r312; .reg .pred %r313; .reg .u16 %r314; .reg .u16 %r315; .reg .pred %r316; .reg .u16 %r317; .reg .pred %r318; .reg .u32 %r321; .reg .u64 %r322; .reg .pred %r325; .reg .u16 %r326; .reg .u16 %r327; .reg .u16 %r328; .reg .u32 %r329; .reg .u32 %r330; .reg .u16 %r331; .reg .u16 %r332; .reg .pred %r333; .reg .u16 %r334; .reg .u16 %r335; .reg .u16 %r336; .reg .u16 %r337; .reg .u16 %r338; .reg .pred %r339; .reg .u16 %r342; .reg .u64 %r343; .reg .u64 %r345; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .pred %r350; .reg .u64 %r352; .reg .u16 %r355; .reg .u16 %r361; .reg .u16 %r362; .reg .pred %r363; .reg .pred %r366; .reg .pred %r367; .reg .u16 %r368; .reg .u16 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u64 %r373; .reg .u64 %r374; .reg .u32 %r375; .reg .pred %r378; .reg .u16 %r379; .reg .u16 %r380; .reg .pred %r381; .reg .pred %r384; .reg .pred %r385; .reg .u16 %r386; .reg .u16 %r387; .reg .u64 %r388; .reg .u64 %r389; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u32 %r393; .reg .pred %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .u64 %r399; .reg .u64 %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .pred %r406; .reg .u16 %r407; .reg .u16 %r408; .reg .pred %r411; .reg .u16 %r412; .reg .pred %r413; .reg .u16 %r414; .reg .u16 %r415; .reg .u16 %r416; .reg .pred %r417; .reg .u32 %r418; .reg .u16 %r419; .reg .u16 %r422; .reg .pred %r423; .reg .u32 %r426; .reg .u32 %r428; .reg .u64 %r430; .reg .u64 %r431; .reg .u16 %r433; .reg .u16 %r434; .reg .u16 %r435; .reg .u32 %r436; .reg .u32 %r437; .reg .u16 %r438; .reg .u32 %r443; .reg .u16 %r444; .reg .pred %r446; .reg .pred %r448; .reg .pred %r450; .reg .u64 %r451; .reg .u64 %r452; .reg .u64 %r453; .reg .u64 %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u64 %r459; .reg .u32 %r462; .reg .u64 %r463; .reg .u64 %r464; mov.u64 %r224,%ar0; mov.u64 %r225,%ar1; mov.u64 %r226,%ar2; mov.u64 %r227,%ar3; .loc 1 553 6 ld.u16 %r233,[%r224+18]; and.b16 %r232,%r233,32767; setp.ne.u16 %r234,%r232,32767; @ %r234 bra $L245; mov.u64 %r56,%r224; add.u64 %r26,%r224,18; mov.u64 %r98,%r224; $L247: .loc 1 558 10 ld.u16 %r235,[%r98]; setp.ne.u16 %r236,%r235,0; @ %r236 bra $L246; .loc 1 556 17 add.u64 %r98,%r98,2; setp.ne.u64 %r237,%r26,%r98; @ %r237 bra $L247; bra $L245; $L246: mov.u64 %r29,%r226; add.u64 %r102,%r224,20; $L248: .loc 1 483 10 ld.u16 %r238,[%r56]; st.u16 [%r29],%r238; .loc 1 482 17 add.u64 %r56,%r56,2; add.u64 %r29,%r29,2; setp.ne.u64 %r239,%r56,%r102; @ %r239 bra $L248; bra $L244; $L245: .loc 1 553 6 ld.u16 %r241,[%r225+18]; and.b16 %r240,%r241,32767; setp.ne.u16 %r242,%r240,32767; @ %r242 bra $L250; mov.u64 %r193,%r225; add.u64 %r459,%r225,18; mov.u64 %r181,%r225; $L252: .loc 1 558 10 ld.u16 %r243,[%r181]; setp.ne.u16 %r244,%r243,0; @ %r244 bra $L251; .loc 1 556 17 add.u64 %r181,%r181,2; setp.ne.u64 %r245,%r181,%r459; @ %r245 bra $L252; bra $L250; $L251: mov.u64 %r22,%r226; add.u64 %r87,%r22,20; $L253: .loc 1 483 10 ld.u16 %r246,[%r193]; st.u16 [%r22],%r246; .loc 1 482 17 add.u64 %r22,%r22,2; add.u64 %r193,%r193,2; setp.ne.u64 %r247,%r87,%r22; @ %r247 bra $L253; bra $L244; $L250: .loc 1 1588 9 cvta.const.u64 %r249,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r224; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r249; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r250,[%value_in]; } .loc 1 1588 6 setp.eq.u32 %r251,%r250,0; @ %r251 bra $L254; $L257: .loc 1 532 9 ld.u16 %r85,[%r224+18]; cvt.u16.u32 %r253,%r85; and.b16 %r252,%r253,32767; ld.u16 %r177,[%r225+18]; cvt.u16.u32 %r255,%r177; and.b16 %r254,%r255,32767; .loc 1 532 6 setp.eq.u16 %r257,%r252,32767; @ %r257 bra $L255; bra $L345; $L254: .loc 1 1588 35 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r225; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r249; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r260,[%value_in]; } .loc 1 1588 31 setp.ne.u32 %r261,%r260,0; @ %r261 bra $L257; $L264: mov.u64 %r186,%r226; add.u64 %r120,%r226,16; .loc 1 3843 9 mov.u16 %r268,0; bra $L258; $L255: mov.u64 %r114,%r224; add.u64 %r25,%r224,18; $L260: .loc 1 558 10 ld.u16 %r262,[%r114]; setp.ne.u16 %r263,%r262,0; @ %r263 bra $L259; .loc 1 556 17 add.u64 %r114,%r114,2; setp.ne.u64 %r264,%r25,%r114; @ %r264 bra $L260; bra $L346; $L307: mov.u64 %r27,%r225; add.u64 %r459,%r225,18; $L263: .loc 1 558 10 ld.u16 %r265,[%r27]; setp.ne.u16 %r266,%r265,0; @ %r266 bra $L309; .loc 1 556 17 add.u64 %r27,%r27,2; setp.ne.u64 %r267,%r27,%r459; @ %r267 bra $L263; bra $L264; $L258: .loc 1 3843 9 st.u16 [%r186],%r268; .loc 1 3842 21 add.u64 %r186,%r186,2; setp.ne.u64 %r269,%r120,%r186; @ %r269 bra $L258; .loc 1 3844 14 mov.u16 %r270,-16384; st.u16 [%r226+16],%r270; .loc 1 3850 14 mov.u16 %r271,32767; st.u16 [%r226+18],%r271; .loc 1 1593 7 bra $L244; $L345: .loc 1 532 6 setp.ne.u16 %r273,%r254,32767; @ %r273 bra $L266; .loc 1 541 12 mov.u32 %r59,0; add.u64 %r459,%r225,18; bra $L262; $L309: .loc 1 538 14 mov.u32 %r59,1; bra $L262; $L313: .loc 1 541 12 mov.u32 %r59,0; add.u64 %r459,%r225,18; $L262: mov.u64 %r141,%r225; mov.u64 %r28,%r225; $L268: .loc 1 558 10 ld.u16 %r274,[%r28]; setp.ne.u16 %r275,%r274,0; @ %r275 bra $L267; .loc 1 556 17 add.u64 %r28,%r28,2; setp.ne.u64 %r276,%r28,%r459; @ %r276 bra $L268; bra $L347; $L350: mov.u64 %r78,%r224; add.u64 %r198,%r78,18; $L271: .loc 1 558 10 ld.u16 %r277,[%r78]; setp.ne.u16 %r278,%r277,0; @ %r278 bra $L310; .loc 1 556 17 add.u64 %r78,%r78,2; setp.ne.u64 %r279,%r78,%r198; @ %r279 bra $L271; $L305: .loc 1 518 6 cvt.u16.u32 %r282,%r85; cvt.s32.s16 %r281,%r282; shr.u32 %r88,%r281,31; $L273: .loc 1 558 10 ld.u16 %r283,[%r141]; setp.ne.u16 %r284,%r283,0; @ %r284 bra $L311; .loc 1 556 17 add.u64 %r141,%r141,2; setp.ne.u64 %r285,%r459,%r141; @ %r285 bra $L273; bra $L348; $L311: .loc 1 516 12 mov.u32 %r110,0; $L272: .loc 1 1600 10 xor.b32 %r286,%r110,%r88; cvt.u16.u32 %r287,%r286; shl.b16 %r288,%r287,15; st.u16 [%r226+18],%r288; mov.u64 %r90,%r226; add.u64 %r148,%r226,18; .loc 1 581 10 mov.u16 %r289,0; $L275: st.u16 [%r90],%r289; .loc 1 580 17 add.u64 %r90,%r90,2; setp.ne.u64 %r290,%r90,%r148; @ %r290 bra $L275; .loc 1 582 6 ld.u16 %r292,[%r226+18]; or.b16 %r291,%r292,32767; st.u16 [%r226+18],%r291; .loc 1 1605 7 bra $L244; $L267: .loc 1 1607 6 setp.eq.u32 %r293,%r59,0; @ %r293 bra $L266; $L308: mov.u64 %r103,%r226; add.u64 %r74,%r103,20; .loc 1 467 10 mov.u16 %r294,0; $L276: st.u16 [%r103],%r294; .loc 1 466 17 add.u64 %r103,%r103,2; setp.ne.u64 %r295,%r74,%r103; @ %r295 bra $L276; bra $L244; $L266: .loc 1 1613 3 add.u64 %r458,%frame,54; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r224; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r458; call emovi,(%out_arg1,%out_arg2); } .loc 1 1614 3 add.u64 %r454,%frame,28; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r225; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r454; call emovi,(%out_arg1,%out_arg2); } .loc 1 1615 11 ld.u16 %r31,[%frame+56]; .loc 1 1616 11 ld.u16 %r32,[%frame+30]; .loc 1 1617 6 setp.eq.u32 %r302,%r32,0; @ %r302 bra $L277; .loc 1 1630 1 bra $L349; $L281: .loc 1 1621 7 add.u64 %r112,%r112,2; ld.u16 %r303,[%r112+-2]; setp.eq.u16 %r304,%r303,0; @ %r304 bra $L279; .loc 1 1623 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r307,[%value_in]; } cvt.s64.s32 %r308,%r307; .loc 1 1623 12 neg.s64 %r46,%r308; .loc 1 1632 9 ld.u16 %r170,[%frame+56]; .loc 1 1624 8 bra $L280; $L277: add.u64 %r112,%frame,32; add.u64 %r457,%frame,52; $L279: .loc 1 1619 21 setp.ne.u64 %r311,%r457,%r112; @ %r311 bra $L281; mov.u64 %r47,%r226; add.u64 %r118,%r47,20; .loc 1 467 10 mov.u16 %r312,0; $L282: st.u16 [%r47],%r312; .loc 1 466 17 add.u64 %r47,%r47,2; setp.ne.u64 %r313,%r47,%r118; @ %r313 bra $L282; bra $L244; $L349: .loc 1 1616 7 cvt.u16.u32 %r314,%r32; cvt.u64.u16 %r46,%r314; mov.u32 %r170,%r31; $L280: .loc 1 1615 7 cvt.u16.u32 %r315,%r31; cvt.u64.u16 %r45,%r315; .loc 1 1632 6 setp.eq.u32 %r316,%r170,0; @ %r316 bra $L283; .loc 1 1650 1 bra $L284; $L286: .loc 1 1636 7 add.u64 %r100,%r100,2; ld.u16 %r317,[%r100+-2]; setp.eq.u16 %r318,%r317,0; @ %r318 bra $L285; .loc 1 1638 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r458; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r321,[%value_in]; } cvt.s64.s32 %r322,%r321; .loc 1 1638 12 sub.u64 %r45,%r45,%r322; .loc 1 1639 8 bra $L284; $L283: add.u64 %r100,%frame,58; add.u64 %r199,%frame,78; $L285: .loc 1 1634 21 setp.ne.u64 %r325,%r100,%r199; @ %r325 bra $L286; .loc 1 1642 10 ld.u16 %r327,[%frame+54]; ld.u16 %r328,[%frame+28]; set.u32.ne.u16 %r329,%r327,%r328; neg.s32 %r330,%r329; cvt.u16.u32 %r326,%r330; shl.b16 %r331,%r326,15; st.u16 [%r226+18],%r331; mov.u64 %r212,%r226; add.u64 %r107,%r226,18; .loc 1 581 10 mov.u16 %r332,0; $L287: st.u16 [%r212],%r332; .loc 1 580 17 add.u64 %r212,%r212,2; setp.ne.u64 %r333,%r107,%r212; @ %r333 bra $L287; .loc 1 582 6 ld.u16 %r335,[%r226+18]; or.b16 %r334,%r335,32767; st.u16 [%r226+18],%r334; .loc 1 1648 7 bra $L244; $L284: .loc 1 1063 8 ld.u16 %r336,[%frame+28]; st.u16 [%r227+52],%r336; .loc 1 1064 8 ld.u16 %r337,[%frame+30]; st.u16 [%r227+54],%r337; add.u64 %r144,%r227,56; add.u64 %r43,%r227,78; mov.u64 %r205,%r144; .loc 1 1068 12 mov.u16 %r338,0; $L288: st.u16 [%r205],%r338; .loc 1 1066 17 add.u64 %r205,%r205,2; setp.ne.u64 %r339,%r43,%r205; @ %r339 bra $L288; .loc 1 1070 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; call eshdn1,(%out_arg1); } .loc 1 1071 9 ld.u16 %r127,[%frame+60]; .loc 1 1078 18 cvt.u16.u32 %r342,%r127; cvt.u64.u16 %r134,%r342; cvt.u64.u32 %r343,%r127; shl.b64 %r345,%r343,16; sub.u64 %r135,%r345,%r343; add.u64 %r456,%frame,32; add.u64 %r457,%frame,52; add.u64 %r451,%frame,4; add.u64 %r453,%frame,26; add.u64 %r452,%frame,24; add.u64 %r455,%frame,30; .loc 1 988 9 mov.u32 %r462,0; .loc 1 986 5 add.u64 %r463,%frame,78; add.u64 %r464,%frame,2; $L301: .loc 1 1075 16 ld.u16 %r347,[%frame+32]; .loc 1 1075 40 shl.b64 %r348,%r347,16; .loc 1 1075 52 ld.u16 %r349,[%frame+34]; .loc 1 1075 12 add.u64 %r133,%r348,%r349; .loc 1 1078 10 setp.gt.u64 %r350,%r133,%r135; @ %r350 bra $L312; .loc 1 1081 15 div.u64 %r352,%r133,%r134; .loc 1 1081 8 cvt.u16.u64 %r355,%r352; cvt.u32.u16 %r137,%r355; bra $L289; $L312: .loc 1 1079 8 mov.u32 %r137,65535; $L289: .loc 1 1090 7 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r458; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r95,%r451; mov.u64 %r63,%r456; mov.u64 %r155,%r456; mov.u64 %r158,%r451; $L293: .loc 1 796 10 ld.u16 %r361,[%r158]; ld.u16 %r362,[%r155]; setp.eq.u16 %r363,%r361,%r362; @ %r363 bra $L290; .loc 1 802 6 setp.gt.u16 %r366,%r361,%r362; @ %r366 bra $L291; bra $L292; $L290: .loc 1 794 17 add.u64 %r158,%r158,2; add.u64 %r155,%r155,2; setp.ne.u64 %r367,%r453,%r158; @ %r367 bra $L293; bra $L292; $L291: .loc 1 1094 10 cvt.u16.u32 %r369,%r137; add.u16 %r368,%r369,-1; cvt.u32.u16 %r138,%r368; .loc 1 988 9 mov.u32 %r216,%r462; .loc 1 986 5 mov.u64 %r163,%r463; .loc 1 987 5 mov.u64 %r164,%r452; $L294: .loc 1 991 11 ld.u16 %r370,[%r164]; .loc 1 991 55 cvt.u64.u32 %r371,%r216; .loc 1 991 9 sub.u64 %r372,%r370,%r371; .loc 1 991 34 ld.u16 %r373,[%r163]; .loc 1 991 9 sub.u64 %r160,%r372,%r373; .loc 1 992 10 shr.u64 %r374,%r160,16; cvt.u32.u64 %r375,%r374; and.b32 %r216,%r375,1; .loc 1 996 12 st.u16 [%r164],%r160; .loc 1 997 7 add.u64 %r163,%r163,-2; .loc 1 998 7 add.u64 %r164,%r164,-2; .loc 1 989 17 setp.ne.u64 %r378,%r164,%r464; @ %r378 bra $L294; mov.u64 %r71,%r456; $L297: .loc 1 796 10 ld.u16 %r379,[%r95]; ld.u16 %r380,[%r71]; setp.eq.u16 %r381,%r379,%r380; @ %r381 bra $L295; .loc 1 802 6 setp.gt.u16 %r384,%r379,%r380; @ %r384 bra $L296; .loc 1 1094 10 mov.u32 %r137,%r138; bra $L292; $L295: .loc 1 794 17 add.u64 %r95,%r95,2; add.u64 %r71,%r71,2; setp.ne.u64 %r385,%r453,%r95; @ %r385 bra $L297; .loc 1 1094 10 mov.u32 %r137,%r138; bra $L292; $L296: .loc 1 1098 14 cvt.u16.u32 %r387,%r137; add.u16 %r386,%r387,-2; cvt.u32.u16 %r137,%r386; .loc 1 988 9 mov.u32 %r218,%r462; .loc 1 986 5 mov.u64 %r175,%r463; .loc 1 987 5 mov.u64 %r176,%r452; $L298: .loc 1 991 11 ld.u16 %r388,[%r176]; .loc 1 991 55 cvt.u64.u32 %r389,%r218; .loc 1 991 9 sub.u64 %r390,%r388,%r389; .loc 1 991 34 ld.u16 %r391,[%r175]; .loc 1 991 9 sub.u64 %r172,%r390,%r391; .loc 1 992 10 shr.u64 %r392,%r172,16; cvt.u32.u64 %r393,%r392; and.b32 %r218,%r393,1; .loc 1 996 12 st.u16 [%r176],%r172; .loc 1 997 7 add.u64 %r175,%r175,-2; .loc 1 998 7 add.u64 %r176,%r176,-2; .loc 1 989 17 setp.ne.u64 %r396,%r176,%r464; @ %r396 bra $L298; $L292: .loc 1 988 9 mov.u32 %r220,%r462; .loc 1 986 5 mov.u64 %r191,%r452; .loc 1 987 5 mov.u64 %r192,%r457; $L299: .loc 1 991 11 ld.u16 %r397,[%r192]; .loc 1 991 55 cvt.u64.u32 %r398,%r220; .loc 1 991 9 sub.u64 %r399,%r397,%r398; .loc 1 991 34 ld.u16 %r400,[%r191]; .loc 1 991 9 sub.u64 %r188,%r399,%r400; .loc 1 992 10 shr.u64 %r401,%r188,16; cvt.u32.u64 %r402,%r401; and.b32 %r220,%r402,1; .loc 1 996 12 st.u16 [%r192],%r188; .loc 1 997 7 add.u64 %r191,%r191,-2; .loc 1 998 7 add.u64 %r192,%r192,-2; .loc 1 989 17 setp.ne.u64 %r406,%r192,%r455; @ %r406 bra $L299; .loc 1 1121 16 cvt.u16.u32 %r407,%r137; st.u16 [%r144],%r407; mov.u64 %r50,%r456; .loc 1 918 5 mov.u64 %r179,%r456; $L300: .loc 1 922 7 add.u64 %r179,%r179,2; .loc 1 922 10 ld.u16 %r408,[%r179]; st.u16 [%r50],%r408; .loc 1 921 17 add.u64 %r50,%r50,2; setp.ne.u64 %r411,%r179,%r457; @ %r411 bra $L300; .loc 1 924 6 mov.u16 %r412,0; st.u16 [%frame+52],%r412; .loc 1 1072 17 add.u64 %r144,%r144,2; setp.ne.u64 %r413,%r43,%r144; @ %r413 bra $L301; mov.u64 %r68,%r454; .loc 1 1126 5 mov.u32 %r140,0; $L302: .loc 1 1129 9 ld.u16 %r415,[%r63]; cvt.u16.u32 %r416,%r140; or.b16 %r414,%r415,%r416; cvt.u32.u16 %r140,%r414; .loc 1 1127 17 add.u64 %r63,%r63,2; setp.ne.u64 %r417,%r458,%r63; @ %r417 bra $L302; .loc 1 1131 6 cvt.u16.u32 %r419,%r140; set.u32.ne.u16 %r418,%r419,0; neg.s32 %r221,%r418; add.u64 %r73,%r227,52; $L303: .loc 1 1135 12 ld.u16 %r422,[%r73]; st.u16 [%r68],%r422; .loc 1 1134 17 add.u64 %r73,%r73,2; add.u64 %r68,%r68,2; setp.ne.u64 %r423,%r458,%r68; @ %r423 bra $L303; .loc 1 1654 12 sub.u64 %r430,%r46,%r45; .loc 1 1654 6 add.u64 %r431,%r430,16383; .loc 1 1655 3 mov.u32 %r428,64; mov.u32 %r426,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r221; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r426; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r431; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r428; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r227; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1657 6 ld.u16 %r434,[%frame+54]; ld.u16 %r435,[%frame+28]; set.u32.ne.u16 %r436,%r434,%r435; neg.s32 %r437,%r436; cvt.u16.u32 %r433,%r437; neg.s16 %r438,%r433; st.u16 [%frame+28],%r438; .loc 1 1661 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r226; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L244; $L348: .loc 1 518 6 cvt.u16.u32 %r444,%r177; cvt.s32.s16 %r443,%r444; shr.u32 %r110,%r443,31; bra $L272; $L310: .loc 1 516 12 mov.u32 %r88,0; bra $L273; $L347: .loc 1 553 6 setp.ne.u16 %r446,%r252,32767; @ %r446 bra $L305; bra $L350; $L346: .loc 1 532 6 setp.eq.u16 %r448,%r254,32767; @ %r448 bra $L307; bra $L308; $L259: setp.eq.u16 %r450,%r254,32767; @ ! %r450 bra $L266; bra $L313; $L244: .loc 1 1662 1 ret; } // BEGIN FUNCTION DEF: emul .func emul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[80]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r33; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r75; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r85; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r98; .reg .u64 %r102; .reg .u32 %r104; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u32 %r110; .reg .u64 %r113; .reg .u64 %r115; .reg .u32 %r117; .reg .u64 %r118; .reg .u32 %r121; .reg .u32 %r125; .reg .u64 %r132; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r138; .reg .u64 %r139; .reg .u32 %r141; .reg .u64 %r143; .reg .u64 %r149; .reg .u64 %r151; .reg .u32 %r156; .reg .u64 %r162; .reg .u64 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u16 %r167; .reg .u16 %r168; .reg .pred %r170; .reg .u16 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u16 %r174; .reg .pred %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .pred %r179; .reg .u16 %r180; .reg .pred %r181; .reg .pred %r182; .reg .u16 %r183; .reg .pred %r184; .reg .u16 %r185; .reg .pred %r186; .reg .pred %r187; .reg .u16 %r188; .reg .pred %r189; .reg .pred %r190; .reg .u16 %r191; .reg .pred %r192; .reg .u16 %r193; .reg .u16 %r194; .reg .u16 %r195; .reg .pred %r196; .reg .pred %r197; .reg .u16 %r198; .reg .pred %r199; .reg .u16 %r200; .reg .pred %r201; .reg .pred %r202; .reg .u16 %r203; .reg .pred %r204; .reg .pred %r205; .reg .u32 %r207; .reg .u16 %r208; .reg .u32 %r210; .reg .u16 %r211; .reg .u16 %r212; .reg .pred %r213; .reg .u16 %r214; .reg .pred %r215; .reg .pred %r216; .reg .u32 %r218; .reg .u16 %r219; .reg .u32 %r220; .reg .u16 %r221; .reg .u16 %r222; .reg .u16 %r223; .reg .pred %r224; .reg .u16 %r225; .reg .u16 %r226; .reg .pred %r233; .reg .u16 %r234; .reg .pred %r235; .reg .u32 %r238; .reg .u64 %r239; .reg .pred %r242; .reg .u16 %r243; .reg .pred %r244; .reg .u16 %r245; .reg .u16 %r246; .reg .pred %r247; .reg .u16 %r248; .reg .pred %r249; .reg .u32 %r252; .reg .u64 %r253; .reg .pred %r256; .reg .u16 %r257; .reg .pred %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .pred %r262; .reg .pred %r263; .reg .u16 %r264; .reg .u16 %r265; .reg .u16 %r266; .reg .u64 %r271; .reg .u64 %r272; .reg .u64 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u32 %r276; .reg .pred %r279; .reg .u16 %r280; .reg .pred %r281; .reg .u16 %r282; .reg .pred %r285; .reg .u16 %r286; .reg .pred %r287; .reg .u32 %r290; .reg .u32 %r292; .reg .u64 %r294; .reg .u64 %r295; .reg .u16 %r297; .reg .u16 %r298; .reg .u16 %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .u16 %r302; .reg .u16 %r306; .reg .pred %r307; .reg .u64 %r309; .reg .u32 %r310; .reg .pred %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u16 %r314; .reg .u16 %r315; .reg .pred %r317; .reg .u64 %r319; .reg .u32 %r320; .reg .pred %r321; .reg .u16 %r322; .reg .u16 %r323; .reg .pred %r325; .reg .u16 %r326; .reg .u16 %r327; .reg .pred %r328; .reg .u16 %r329; .reg .u16 %r330; .reg .pred %r332; .reg .pred %r334; .reg .pred %r336; .reg .pred %r338; .reg .u64 %r339; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r346; mov.u64 %r162,%ar0; mov.u64 %r163,%ar1; mov.u64 %r164,%ar2; mov.u64 %r165,%ar3; ld.u16 %r168,[%r162+18]; and.b16 %r167,%r168,32767; .loc 1 553 6 setp.ne.u16 %r170,%r167,32767; @ %r170 bra $L352; mov.u64 %r75,%r162; add.u64 %r341,%r162,18; mov.u64 %r28,%r162; $L354: .loc 1 558 10 ld.u16 %r171,[%r28]; setp.ne.u16 %r172,%r171,0; @ %r172 bra $L353; .loc 1 556 17 add.u64 %r28,%r28,2; setp.ne.u64 %r173,%r28,%r341; @ %r173 bra $L354; bra $L352; $L353: mov.u64 %r69,%r164; add.u64 %r113,%r69,20; $L355: .loc 1 483 10 ld.u16 %r174,[%r75]; st.u16 [%r69],%r174; .loc 1 482 17 add.u64 %r69,%r69,2; add.u64 %r75,%r75,2; setp.ne.u64 %r175,%r69,%r113; @ %r175 bra $L355; bra $L351; $L352: .loc 1 553 9 ld.u16 %r110,[%r163+18]; cvt.u16.u32 %r177,%r110; and.b16 %r176,%r177,32767; cvt.u32.u16 %r141,%r176; .loc 1 553 6 setp.ne.u16 %r179,%r176,32767; @ %r179 bra $L357; mov.u64 %r71,%r163; add.u64 %r342,%r163,18; mov.u64 %r89,%r163; $L359: .loc 1 558 10 ld.u16 %r180,[%r89]; setp.ne.u16 %r181,%r180,0; @ %r181 bra $L358; .loc 1 556 17 add.u64 %r89,%r89,2; setp.ne.u64 %r182,%r342,%r89; @ %r182 bra $L359; bra $L459; $L358: mov.u64 %r108,%r164; add.u64 %r107,%r163,20; $L361: .loc 1 483 10 ld.u16 %r183,[%r71]; st.u16 [%r108],%r183; .loc 1 482 17 add.u64 %r71,%r71,2; add.u64 %r108,%r108,2; setp.ne.u64 %r184,%r71,%r107; @ %r184 bra $L361; bra $L351; $L409: mov.u64 %r70,%r162; add.u64 %r341,%r162,18; $L363: .loc 1 558 10 ld.u16 %r185,[%r70]; setp.ne.u16 %r186,%r185,0; @ %r186 bra $L362; .loc 1 556 17 add.u64 %r70,%r70,2; setp.ne.u64 %r187,%r70,%r341; @ %r187 bra $L363; bra $L460; $L406: mov.u64 %r143,%r163; $L366: .loc 1 558 10 ld.u16 %r188,[%r143]; setp.ne.u16 %r189,%r188,0; @ %r189 bra $L365; .loc 1 556 17 add.u64 %r143,%r143,2; setp.ne.u64 %r190,%r143,%r342; @ %r190 bra $L366; bra $L461; $L404: mov.u64 %r65,%r164; add.u64 %r91,%r164,16; .loc 1 3843 9 mov.u16 %r191,0; $L368: st.u16 [%r65],%r191; .loc 1 3842 21 add.u64 %r65,%r65,2; setp.ne.u64 %r192,%r91,%r65; @ %r192 bra $L368; .loc 1 3844 14 mov.u16 %r193,-16384; st.u16 [%r164+16],%r193; .loc 1 3850 14 mov.u16 %r194,32767; st.u16 [%r164+18],%r194; .loc 1 1699 7 bra $L351; $L405: mov.u64 %r60,%r162; $L371: .loc 1 558 10 ld.u16 %r195,[%r60]; setp.ne.u16 %r196,%r195,0; @ %r196 bra $L410; .loc 1 556 17 add.u64 %r60,%r60,2; setp.ne.u64 %r197,%r60,%r341; @ %r197 bra $L371; bra $L372; $L410: mov.u32 %r50,32767; $L370: .loc 1 532 6 cvt.u16.u32 %r198,%r141; setp.ne.u16 %r199,%r198,32767; @ %r199 bra $L373; add.u64 %r342,%r163,18; $L407: mov.u64 %r88,%r163; $L374: .loc 1 558 10 ld.u16 %r200,[%r88]; setp.ne.u16 %r201,%r200,0; @ %r201 bra $L373; .loc 1 556 17 add.u64 %r88,%r88,2; setp.ne.u64 %r202,%r342,%r88; @ %r202 bra $L374; bra $L462; $L372: mov.u64 %r98,%r162; $L377: .loc 1 558 10 ld.u16 %r203,[%r98]; setp.ne.u16 %r204,%r203,0; @ %r204 bra $L411; .loc 1 556 17 add.u64 %r98,%r98,2; setp.ne.u64 %r205,%r98,%r341; @ %r205 bra $L377; bra $L463; $L403: .loc 1 518 6 cvt.u16.u32 %r208,%r42; cvt.s32.s16 %r207,%r208; shr.u32 %r106,%r207,31; bra $L379; $L463: cvt.u16.u32 %r211,%r42; cvt.s32.s16 %r210,%r211; shr.u32 %r106,%r210,31; bra $L376; $L411: .loc 1 516 12 mov.u32 %r106,0; $L376: .loc 1 553 6 cvt.u16.u32 %r212,%r141; setp.ne.u16 %r213,%r212,32767; @ %r213 bra $L380; add.u64 %r342,%r163,18; $L379: mov.u64 %r59,%r163; $L382: .loc 1 558 10 ld.u16 %r214,[%r59]; setp.ne.u16 %r215,%r214,0; @ %r215 bra $L412; .loc 1 556 17 add.u64 %r59,%r59,2; setp.ne.u64 %r216,%r59,%r342; @ %r216 bra $L382; $L380: .loc 1 518 6 cvt.u16.u32 %r219,%r110; cvt.s32.s16 %r218,%r219; shr.u32 %r104,%r218,31; bra $L381; $L412: .loc 1 516 12 mov.u32 %r104,0; $L381: .loc 1 1706 10 xor.b32 %r220,%r104,%r106; cvt.u16.u32 %r221,%r220; shl.b16 %r222,%r221,15; st.u16 [%r164+18],%r222; mov.u64 %r109,%r164; add.u64 %r80,%r164,18; .loc 1 581 10 mov.u16 %r223,0; $L383: st.u16 [%r109],%r223; .loc 1 580 17 add.u64 %r109,%r109,2; setp.ne.u64 %r224,%r80,%r109; @ %r224 bra $L383; .loc 1 582 6 ld.u16 %r226,[%r164+18]; or.b16 %r225,%r226,32767; st.u16 [%r164+18],%r225; .loc 1 1711 7 bra $L351; $L373: .loc 1 1714 3 add.u64 %r344,%frame,52; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r162; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r344; call emovi,(%out_arg1,%out_arg2); } .loc 1 1715 3 add.u64 %r343,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r163; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r343; call emovi,(%out_arg1,%out_arg2); } .loc 1 1716 11 ld.u16 %r29,[%frame+54]; .loc 1 1717 11 ld.u16 %r30,[%frame+28]; .loc 1 1718 6 setp.eq.u32 %r233,%r29,0; @ %r233 bra $L384; .loc 1 1731 1 bra $L464; $L388: .loc 1 1722 7 add.u64 %r79,%r79,2; ld.u16 %r234,[%r79+-2]; setp.eq.u16 %r235,%r234,0; @ %r235 bra $L386; .loc 1 1724 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r344; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r238,[%value_in]; } cvt.s64.s32 %r239,%r238; .loc 1 1724 12 neg.s64 %r39,%r239; .loc 1 1733 9 ld.u16 %r125,[%frame+28]; .loc 1 1725 8 bra $L387; $L384: add.u64 %r79,%frame,56; add.u64 %r64,%frame,76; $L386: .loc 1 1720 21 setp.ne.u64 %r242,%r64,%r79; @ %r242 bra $L388; mov.u64 %r93,%r164; add.u64 %r151,%r93,20; .loc 1 467 10 mov.u16 %r243,0; $L389: st.u16 [%r93],%r243; .loc 1 466 17 add.u64 %r93,%r93,2; setp.ne.u64 %r244,%r93,%r151; @ %r244 bra $L389; bra $L351; $L464: .loc 1 1716 7 cvt.u16.u32 %r245,%r29; cvt.u64.u16 %r39,%r245; mov.u32 %r125,%r30; $L387: .loc 1 1717 7 cvt.u16.u32 %r246,%r30; cvt.u64.u16 %r40,%r246; .loc 1 1733 6 setp.eq.u32 %r247,%r125,0; @ %r247 bra $L390; .loc 1 1746 1 bra $L391; $L393: .loc 1 1737 7 add.u64 %r115,%r115,2; ld.u16 %r248,[%r115+-2]; setp.eq.u16 %r249,%r248,0; @ %r249 bra $L392; .loc 1 1739 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r343; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r252,[%value_in]; } cvt.s64.s32 %r253,%r252; .loc 1 1739 12 sub.u64 %r40,%r40,%r253; .loc 1 1153 12 ld.u16 %r125,[%frame+28]; .loc 1 1740 8 bra $L391; $L390: add.u64 %r115,%frame,30; add.u64 %r102,%frame,50; $L392: .loc 1 1735 21 setp.ne.u64 %r256,%r102,%r115; @ %r256 bra $L393; mov.u64 %r118,%r164; add.u64 %r149,%r118,20; .loc 1 467 10 mov.u16 %r257,0; $L394: st.u16 [%r118],%r257; .loc 1 466 17 add.u64 %r118,%r118,2; setp.ne.u64 %r258,%r118,%r149; @ %r258 bra $L394; bra $L351; $L391: .loc 1 1152 12 ld.u16 %r259,[%frame+26]; st.u16 [%r165+52],%r259; .loc 1 1153 12 cvt.u16.u32 %r260,%r125; st.u16 [%r165+54],%r260; add.u64 %r85,%r165,56; mov.u64 %r33,%r85; add.u64 %r339,%r165,78; .loc 1 1155 14 mov.u16 %r261,0; $L395: st.u16 [%r33],%r261; .loc 1 1154 17 add.u64 %r33,%r33,2; setp.ne.u64 %r262,%r339,%r33; @ %r262 bra $L395; .loc 1 959 5 add.u64 %r92,%r165,76; .loc 1 1157 5 mov.u32 %r121,0; .loc 1 1158 5 add.u64 %r61,%frame,76; add.u64 %r345,%frame,56; add.u64 %r346,%frame,2; $L400: .loc 1 1162 11 ld.u16 %r117,[%r61]; .loc 1 1164 4 add.u64 %r61,%r61,-2; .loc 1 1162 10 setp.ne.u32 %r263,%r117,0; @ %r263 bra $L396; $L399: .loc 1 1171 9 ld.u16 %r265,[%r165+76]; cvt.u16.u32 %r266,%r121; or.b16 %r264,%r265,%r266; cvt.u32.u16 %r121,%r264; .loc 1 938 5 mov.u64 %r139,%r339; .loc 1 937 5 mov.u64 %r138,%r92; bra $L397; $L396: .loc 1 1168 4 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r117; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r343; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 959 5 mov.u64 %r136,%r92; .loc 1 960 9 mov.u32 %r156,0; .loc 1 958 5 add.u64 %r135,%frame,24; $L398: .loc 1 963 11 ld.u16 %r271,[%r135]; .loc 1 963 34 ld.u16 %r272,[%r136]; .loc 1 963 32 add.u64 %r273,%r271,%r272; .loc 1 963 55 cvt.u64.u32 %r274,%r156; .loc 1 963 9 add.u64 %r132,%r273,%r274; .loc 1 964 10 shr.u64 %r275,%r132,16; cvt.u32.u64 %r276,%r275; and.b32 %r156,%r276,1; .loc 1 968 12 st.u16 [%r136],%r132; .loc 1 969 7 add.u64 %r135,%r135,-2; .loc 1 970 7 add.u64 %r136,%r136,-2; .loc 1 961 17 setp.ne.u64 %r279,%r135,%r346; @ %r279 bra $L398; bra $L399; $L397: .loc 1 941 12 add.u64 %r138,%r138,-2; add.u64 %r139,%r139,-2; ld.u16 %r280,[%r138]; st.u16 [%r139],%r280; .loc 1 940 17 setp.ne.u64 %r281,%r85,%r138; @ %r281 bra $L397; .loc 1 943 10 mov.u16 %r282,0; st.u16 [%r165+56],%r282; .loc 1 1160 21 setp.ne.u64 %r285,%r61,%r345; @ %r285 bra $L400; add.u64 %r49,%r165,52; mov.u64 %r43,%r343; $L401: .loc 1 1176 10 ld.u16 %r286,[%r49]; st.u16 [%r43],%r286; .loc 1 1175 17 add.u64 %r49,%r49,2; add.u64 %r43,%r43,2; setp.ne.u64 %r287,%r43,%r344; @ %r287 bra $L401; .loc 1 1751 12 add.u64 %r294,%r39,%r40; .loc 1 1751 6 add.u64 %r295,%r294,-16382; .loc 1 1752 3 mov.u32 %r292,64; mov.u32 %r290,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r343; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r121; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r290; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r295; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r292; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r165; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1754 6 ld.u16 %r298,[%frame+52]; ld.u16 %r299,[%frame+26]; set.u32.ne.u16 %r300,%r298,%r299; neg.s32 %r301,%r300; cvt.u16.u32 %r297,%r301; neg.s16 %r302,%r297; st.u16 [%frame+26],%r302; .loc 1 1758 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r343; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r164; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L351; $L462: .loc 1 553 6 cvt.u16.u32 %r306,%r50; setp.ne.u16 %r307,%r306,32767; @ %r307 bra $L403; mov.u32 %r141,%r50; add.u64 %r341,%r162,18; bra $L372; $L461: .loc 1 1695 26 cvta.const.u64 %r309,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r162; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r309; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r310,[%value_in]; } .loc 1 1695 22 setp.eq.u32 %r311,%r310,0; @ %r311 bra $L404; .loc 1 553 9 ld.u16 %r110,[%r163+18]; cvt.u16.u32 %r313,%r110; and.b16 %r312,%r313,32767; cvt.u32.u16 %r141,%r312; .loc 1 532 9 ld.u16 %r42,[%r162+18]; cvt.u16.u32 %r315,%r42; and.b16 %r314,%r315,32767; cvt.u32.u16 %r50,%r314; .loc 1 532 6 setp.eq.u16 %r317,%r314,32767; @ ! %r317 bra $L370; add.u64 %r341,%r162,18; bra $L405; $L460: .loc 1 1694 23 cvta.const.u64 %r319,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r163; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r319; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r320,[%value_in]; } .loc 1 1694 19 setp.eq.u32 %r321,%r320,0; @ %r321 bra $L404; .loc 1 532 9 ld.u16 %r110,[%r163+18]; cvt.u16.u32 %r323,%r110; and.b16 %r322,%r323,32767; cvt.u32.u16 %r141,%r322; .loc 1 532 6 setp.eq.u16 %r325,%r322,32767; @ ! %r325 bra $L465; add.u64 %r342,%r163,18; bra $L406; $L465: .loc 1 532 9 ld.u16 %r42,[%r162+18]; .loc 1 532 6 cvt.u16.u32 %r327,%r42; and.b16 %r326,%r327,32767; setp.eq.u16 %r328,%r326,32767; @ %r328 bra $L405; bra $L373; $L365: .loc 1 532 9 ld.u16 %r42,[%r162+18]; cvt.u16.u32 %r330,%r42; and.b16 %r329,%r330,32767; cvt.u32.u16 %r141,%r329; .loc 1 532 6 setp.eq.u16 %r332,%r329,32767; @ ! %r332 bra $L466; add.u64 %r341,%r162,18; bra $L405; $L466: mov.u32 %r50,%r141; bra $L407; $L467: .loc 1 532 9 ld.u16 %r42,[%r162+18]; bra $L405; $L362: .loc 1 532 6 setp.eq.u16 %r334,%r176,32767; @ ! %r334 bra $L467; add.u64 %r342,%r163,18; bra $L406; $L459: setp.eq.u16 %r336,%r167,32767; @ ! %r336 bra $L406; bra $L409; $L357: setp.eq.u16 %r338,%r167,32767; @ %r338 bra $L409; bra $L373; $L351: .loc 1 1759 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _ldtoa_r .visible .func (.param .u64 %value_out) _ldtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[352]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r26; .reg .u32 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r39; .reg .u64 %r42; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r48; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r70; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r77; .reg .u64 %r80; .reg .u64 %r81; .reg .u32 %r83; .reg .u64 %r85; .reg .u64 %r86; .reg .u32 %r89; .reg .u64 %r96; .reg .u64 %r100; .reg .u32 %r102; .reg .u64 %r108; .reg .u64 %r110; .reg .u64 %r112; .reg .u32 %r114; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r139; .reg .u64 %r141; .reg .u32 %r144; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r154; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r162; .reg .u32 %r169; .reg .u64 %r174; .reg .u32 %r176; .reg .u64 %r183; .reg .u32 %r185; .reg .u32 %r188; .reg .u32 %r189; .reg .u32 %r191; .reg .u64 %r196; .reg .u32 %r198; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r204; .reg .u64 %r214; .reg .u32 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r228; .reg .u64 %r231; .reg .u64 %r233; .reg .u32 %r235; .reg .u64 %r236; .reg .u64 %r239; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r256; .reg .u64 %r257; .reg .u64 %r262; .reg .u64 %r264; .reg .u64 %r265; .reg .u64 %r267; .reg .u64 %r269; .reg .u64 %r271; .reg .u64 %r272; .reg .u64 %r276; .reg .u64 %r279; .reg .u64 %r281; .reg .u64 %r283; .reg .u64 %r294; .reg .u64 %r298; .reg .u32 %r302; .reg .u32 %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r307; .reg .u32 %r312; .reg .u64 %r314; .reg .u64 %r318; .reg .u32 %r321; .reg .u64 %r323; .reg .u32 %r327; .reg .u64 %r328; .reg .u32 %r329; .reg .u64 %r338; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r350; .reg .u64 %r352; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r363; .reg .u64 %r366; .reg .u64 %r367; .reg .u32 %r368; .reg .u32 %r373; .reg .u64 %r374; .reg .u32 %r375; .reg .u64 %r382; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r390; .reg .u32 %r395; .reg .u64 %r396; .reg .u32 %r397; .reg .u32 %r398; .reg .u32 %r403; .reg .u64 %r404; .reg .u32 %r405; .reg .u32 %r410; .reg .u64 %r411; .reg .u64 %r418; .reg .u64 %r421; .reg .u64 %r422; .reg .u64 %r423; .reg .u32 %r424; .reg .u32 %r429; .reg .u64 %r430; .reg .u32 %r431; .reg .u32 %r436; .reg .u64 %r437; .reg .u64 %r440; .reg .u64 %r446; .reg .u64 %r452; .reg .u64 %r454; .reg .u64 %r457; .reg .u64 %r461; .reg .u64 %r469; .reg .u64 %r470; .reg .u64 %r475; .reg .u64 %r482; .reg .u64 %r492; .reg .u32 %r493; .reg .u64 %r494; .reg .u64 %r496; .reg .u32 %r503; .reg .u32 %r505; .reg .u64 %r507; .reg .f64 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u64 %r513; .reg .u32 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u32 %r540; .reg .u32 %r541; .reg .u64 %r544; .reg .u64 %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u16 %r553; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r557; .reg .u16 %r558; .reg .pred %r559; .reg .pred %r560; .reg .u16 %r563; .reg .pred %r564; .reg .pred %r565; .reg .u32 %r566; .reg .u16 %r567; .reg .pred %r568; .reg .u16 %r569; .reg .pred %r570; .reg .u16 %r571; .reg .u16 %r574; .reg .pred %r575; .reg .pred %r576; .reg .u16 %r577; .reg .pred %r578; .reg .pred %r579; .reg .pred %r580; .reg .u64 %r582; .reg .u32 %r584; .reg .u64 %r587; .reg .u32 %r589; .reg .u16 %r591; .reg .pred %r592; .reg .u64 %r594; .reg .u32 %r596; .reg .u32 %r601; .reg .pred %r602; .reg .pred %r603; .reg .u16 %r604; .reg .pred %r605; .reg .u16 %r606; .reg .u16 %r613; .reg .pred %r614; .reg .u16 %r615; .reg .u16 %r616; .reg .u32 %r617; .reg .pred %r618; .reg .u16 %r619; .reg .pred %r620; .reg .u32 %r621; .reg .u16 %r622; .reg .pred %r623; .reg .pred %r624; .reg .pred %r625; .reg .u32 %r626; .reg .u32 %r627; .reg .u64 %r629; .reg .u16 %r631; .reg .pred %r632; .reg .u64 %r634; .reg .u64 %r635; .reg .u32 %r636; .reg .u32 %r638; .reg .u32 %r639; .reg .u64 %r640; .reg .u64 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u16 %r644; .reg .u16 %r645; .reg .u16 %r646; .reg .u16 %r647; .reg .pred %r648; .reg .u16 %r649; .reg .u16 %r650; .reg .pred %r651; .reg .u16 %r652; .reg .u16 %r653; .reg .pred %r654; .reg .u16 %r655; .reg .pred %r656; .reg .pred %r657; .reg .u16 %r658; .reg .pred %r659; .reg .pred %r660; .reg .u16 %r668; .reg .u16 %r669; .reg .pred %r671; .reg .u16 %r672; .reg .pred %r673; .reg .u16 %r674; .reg .u16 %r675; .reg .pred %r676; .reg .u16 %r677; .reg .u16 %r678; .reg .pred %r679; .reg .u16 %r680; .reg .pred %r681; .reg .pred %r682; .reg .u32 %r685; .reg .u32 %r687; .reg .u16 %r690; .reg .u16 %r691; .reg .pred %r692; .reg .pred %r695; .reg .pred %r696; .reg .u16 %r697; .reg .u16 %r698; .reg .pred %r699; .reg .u16 %r700; .reg .pred %r701; .reg .pred %r702; .reg .u16 %r703; .reg .pred %r704; .reg .u16 %r705; .reg .pred %r706; .reg .u16 %r707; .reg .u16 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u16 %r711; .reg .u16 %r712; .reg .pred %r713; .reg .u16 %r715; .reg .u16 %r717; .reg .u16 %r718; .reg .pred %r721; .reg .u16 %r724; .reg .pred %r725; .reg .pred %r726; .reg .u16 %r727; .reg .pred %r728; .reg .u16 %r729; .reg .u16 %r730; .reg .pred %r731; .reg .u16 %r732; .reg .u16 %r733; .reg .pred %r734; .reg .u16 %r735; .reg .u16 %r736; .reg .u16 %r737; .reg .pred %r738; .reg .u64 %r739; .reg .u64 %r740; .reg .u64 %r741; .reg .u64 %r742; .reg .u64 %r743; .reg .u32 %r744; .reg .pred %r748; .reg .u64 %r749; .reg .u64 %r750; .reg .u64 %r751; .reg .u64 %r752; .reg .u64 %r753; .reg .u32 %r754; .reg .pred %r758; .reg .u32 %r763; .reg .pred %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .pred %r773; .reg .pred %r774; .reg .u16 %r775; .reg .pred %r776; .reg .u16 %r777; .reg .u16 %r778; .reg .pred %r780; .reg .u16 %r781; .reg .u16 %r782; .reg .u16 %r783; .reg .u16 %r784; .reg .u16 %r785; .reg .pred %r786; .reg .u16 %r787; .reg .pred %r788; .reg .u32 %r792; .reg .pred %r793; .reg .u16 %r806; .reg .u16 %r807; .reg .pred %r809; .reg .u32 %r814; .reg .pred %r815; .reg .u16 %r816; .reg .pred %r817; .reg .u16 %r818; .reg .pred %r819; .reg .u16 %r827; .reg .pred %r828; .reg .u16 %r833; .reg .u16 %r834; .reg .pred %r835; .reg .u16 %r836; .reg .pred %r837; .reg .u16 %r838; .reg .u64 %r843; .reg .u64 %r844; .reg .u64 %r845; .reg .u64 %r846; .reg .u64 %r847; .reg .u32 %r848; .reg .pred %r852; .reg .u16 %r855; .reg .pred %r856; .reg .u16 %r857; .reg .pred %r858; .reg .u16 %r863; .reg .pred %r864; .reg .pred %r866; .reg .u16 %r867; .reg .pred %r868; .reg .u16 %r869; .reg .pred %r870; .reg .u16 %r875; .reg .pred %r876; .reg .u16 %r877; .reg .pred %r878; .reg .u32 %r882; .reg .pred %r883; .reg .u32 %r897; .reg .u32 %r898; .reg .pred %r900; .reg .u32 %r906; .reg .pred %r907; .reg .u16 %r918; .reg .pred %r919; .reg .u16 %r920; .reg .u16 %r925; .reg .pred %r926; .reg .u16 %r927; .reg .pred %r933; .reg .u16 %r934; .reg .pred %r935; .reg .u16 %r936; .reg .u16 %r937; .reg .u16 %r938; .reg .u16 %r939; .reg .u16 %r940; .reg .u16 %r941; .reg .pred %r942; .reg .u16 %r944; .reg .u16 %r946; .reg .u16 %r947; .reg .pred %r950; .reg .u16 %r951; .reg .pred %r952; .reg .u16 %r953; .reg .u16 %r954; .reg .pred %r955; .reg .u16 %r956; .reg .u16 %r957; .reg .u16 %r958; .reg .u16 %r959; .reg .u16 %r960; .reg .u16 %r961; .reg .pred %r962; .reg .u16 %r964; .reg .u16 %r966; .reg .u16 %r967; .reg .pred %r970; .reg .u16 %r971; .reg .pred %r972; .reg .u16 %r973; .reg .u16 %r974; .reg .u16 %r975; .reg .u16 %r976; .reg .u16 %r977; .reg .u16 %r978; .reg .pred %r979; .reg .u16 %r981; .reg .u16 %r983; .reg .u16 %r984; .reg .pred %r987; .reg .u64 %r988; .reg .u64 %r989; .reg .u64 %r990; .reg .u64 %r991; .reg .u64 %r992; .reg .u32 %r993; .reg .pred %r997; .reg .pred %r1003; .reg .u32 %r1007; .reg .pred %r1008; .reg .pred %r1009; .reg .u32 %r1010; .reg .pred %r1011; .reg .pred %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .pred %r1015; .reg .u32 %r1016; .reg .pred %r1017; .reg .u32 %r1018; .reg .u16 %r1019; .reg .u16 %r1020; .reg .u32 %r1021; .reg .pred %r1022; .reg .u16 %r1023; .reg .pred %r1024; .reg .u16 %r1025; .reg .u16 %r1026; .reg .u16 %r1027; .reg .u16 %r1028; .reg .u16 %r1029; .reg .u16 %r1030; .reg .pred %r1031; .reg .u16 %r1033; .reg .u16 %r1035; .reg .u16 %r1036; .reg .pred %r1039; .reg .u16 %r1040; .reg .pred %r1041; .reg .u16 %r1042; .reg .u16 %r1043; .reg .pred %r1044; .reg .u16 %r1045; .reg .u16 %r1046; .reg .u16 %r1047; .reg .u16 %r1048; .reg .u16 %r1049; .reg .u16 %r1050; .reg .pred %r1051; .reg .u16 %r1053; .reg .u16 %r1055; .reg .u16 %r1056; .reg .pred %r1059; .reg .u16 %r1060; .reg .pred %r1061; .reg .u16 %r1062; .reg .u16 %r1063; .reg .u16 %r1064; .reg .u16 %r1065; .reg .u16 %r1066; .reg .u16 %r1067; .reg .pred %r1068; .reg .u16 %r1070; .reg .u16 %r1072; .reg .u16 %r1073; .reg .pred %r1076; .reg .u64 %r1077; .reg .u64 %r1078; .reg .u64 %r1079; .reg .u64 %r1080; .reg .u64 %r1081; .reg .u32 %r1082; .reg .pred %r1086; .reg .u16 %r1093; .reg .u16 %r1094; .reg .u32 %r1095; .reg .u32 %r1097; .reg .pred %r1098; .reg .u16 %r1099; .reg .pred %r1100; .reg .pred %r1101; .reg .u64 %r1107; .reg .u32 %r1109; .reg .pred %r1110; .reg .pred %r1111; .reg .u64 %r1112; .reg .u16 %r1113; .reg .u32 %r1114; .reg .u64 %r1117; .reg .u16 %r1119; .reg .u16 %r1120; .reg .pred %r1123; .reg .u16 %r1125; .reg .u16 %r1126; .reg .u32 %r1127; .reg .pred %r1128; .reg .u32 %r1129; .reg .u16 %r1130; .reg .pred %r1131; .reg .pred %r1132; .reg .u32 %r1133; .reg .pred %r1134; .reg .u16 %r1137; .reg .u16 %r1138; .reg .u32 %r1139; .reg .u64 %r1141; .reg .u32 %r1142; .reg .u16 %r1144; .reg .u16 %r1145; .reg .pred %r1146; .reg .u16 %r1147; .reg .pred %r1148; .reg .pred %r1149; .reg .u16 %r1150; .reg .pred %r1151; .reg .pred %r1152; .reg .u32 %r1153; .reg .u32 %r1154; .reg .pred %r1155; .reg .u16 %r1156; .reg .pred %r1157; .reg .u16 %r1158; .reg .u32 %r1159; .reg .pred %r1160; .reg .pred %r1161; .reg .u32 %r1162; .reg .pred %r1163; .reg .u32 %r1164; .reg .u16 %r1165; .reg .u32 %r1166; .reg .u32 %r1167; .reg .u32 %r1168; .reg .u32 %r1170; .reg .u32 %r1171; .reg .u32 %r1172; .reg .u16 %r1173; .reg .u16 %r1174; .reg .u16 %r1175; .reg .u32 %r1176; .reg .u16 %r1177; .reg .pred %r1178; .reg .pred %r1180; .reg .u32 %r1181; .reg .u32 %r1182; .reg .u16 %r1183; .reg .u32 %r1184; .reg .u32 %r1185; .reg .u32 %r1186; .reg .u32 %r1188; .reg .u32 %r1189; .reg .u16 %r1190; .reg .u16 %r1191; .reg .u16 %r1192; .reg .u32 %r1193; .reg .u16 %r1194; .reg .pred %r1195; .reg .u32 %r1196; .reg .u16 %r1197; .reg .u32 %r1198; .reg .u32 %r1199; .reg .u32 %r1200; .reg .u32 %r1202; .reg .u32 %r1203; .reg .u16 %r1204; .reg .u16 %r1205; .reg .u16 %r1206; .reg .u32 %r1207; .reg .u16 %r1208; .reg .pred %r1209; .reg .u32 %r1210; .reg .pred %r1211; .reg .pred %r1212; .reg .u16 %r1213; .reg .pred %r1214; .reg .u32 %r1215; .reg .u16 %r1216; .reg .u32 %r1217; .reg .pred %r1218; .reg .u64 %r1220; .reg .pred %r1221; .reg .u64 %r1223; .reg .pred %r1224; .reg .pred %r1225; .reg .u32 %r1226; .reg .pred %r1227; .reg .u32 %r1228; .reg .u32 %r1229; .reg .u32 %r1230; .reg .pred %r1231; .reg .u64 %r1233; .reg .u64 %r1234; .reg .pred %r1235; .reg .u64 %r1238; .reg .pred %r1239; .reg .u64 %r1240; .reg .u32 %r1241; .reg .u64 %r1243; .reg .u64 %r1247; .reg .pred %r1248; .reg .u64 %r1250; .reg .u64 %r1251; .reg .u32 %r1253; .reg .u16 %r1254; .reg .pred %r1255; .reg .u64 %r1257; .reg .u32 %r1259; .reg .u16 %r1261; .reg .pred %r1262; .reg .u16 %r1263; .reg .u32 %r1265; .reg .u64 %r1267; .reg .pred %r1268; .reg .u32 %r1269; .reg .u64 %r1270; .reg .pred %r1271; .reg .u64 %r1272; .reg .u64 %r1273; .reg .u64 %r1274; .reg .u64 %r1275; .reg .u64 %r1276; .reg .u64 %r1277; .reg .u64 %r1279; .reg .u64 %r1281; .reg .u64 %r1285; .reg .u64 %r1286; .reg .u64 %r1288; .reg .u64 %r1289; .reg .u64 %r1290; .reg .u64 %r1291; .reg .u64 %r1292; .reg .u64 %r1293; .reg .u16 %r1294; .reg .u64 %r1295; .reg .u64 %r1296; .reg .u64 %r1297; .reg .u64 %r1298; .reg .u64 %r1299; .reg .u32 %r1316; .reg .u32 %r1317; .reg .u64 %r1318; .reg .u64 %r1319; .reg .u64 %r1320; .reg .u64 %r1321; .reg .u64 %r1322; .reg .u64 %r1323; .reg .u64 %r1324; .reg .u64 %r1325; .reg .u64 %r1326; .reg .u64 %r1327; .reg .u64 %r1328; .reg .u64 %r1329; .reg .u64 %r1330; .reg .u64 %r1331; .reg .u64 %r1332; .reg .u64 %r1333; .reg .u64 %r1335; .reg .u64 %r1336; .reg .u64 %r1337; .reg .u16 %r1346; mov.u64 %r507,%ar0; mov.f64 %r508,%ar1; mov.u32 %r509,%ar2; mov.u32 %r510,%ar3; mov.u64 %r511,%ar4; mov.u64 %r512,%ar5; mov.u64 %r513,%ar6; .loc 1 2799 8 st.f64 [%frame+344],%r508; .loc 1 2802 13 mov.u32 %r537,-1; st.u32 [%frame],%r537; .loc 1 2803 14 mov.u32 %r538,144; st.u32 [%frame+4],%r538; .loc 1 2808 7 ld.u64 %r22,[%r507+96]; .loc 1 2808 6 setp.eq.u64 %r539,%r22,0; @ %r539 bra $L643; .loc 1 2810 36 ld.u32 %r24,[%r507+104]; .loc 1 2810 34 st.u32 [%r22+8],%r24; .loc 1 2811 43 mov.u32 %r541,1; shl.b32 %r540,%r541,%r24; .loc 1 2811 39 st.u32 [%r22+12],%r540; .loc 1 2812 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r507; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 2813 30 mov.u64 %r544,0; st.u64 [%r507+96],%r544; .loc 1 2991 10 ld.u32 %r389,[%frame+4]; bra $L469; $L643: mov.u32 %r389,%r538; $L469: .loc 1 2819 3 add.u64 %r1298,%frame,294; add.u64 %r548,%frame,344; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r548; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1298; call e53toe$isra$0,(%out_arg1,%out_arg2); } .loc 1 553 9 ld.u16 %r70,[%frame+312]; cvt.u16.u32 %r550,%r70; and.b16 %r549,%r550,32767; .loc 1 553 6 setp.ne.u16 %r1271,%r549,32767; @ %r1271 bra $L470; mov.u64 %r254,%r1298; add.u64 %r307,%frame,312; $L472: .loc 1 558 10 ld.u16 %r553,[%r254]; setp.ne.u16 %r554,%r553,0; @ %r554 bra $L644; .loc 1 556 17 add.u64 %r254,%r254,2; setp.ne.u64 %r555,%r254,%r307; @ %r555 bra $L472; $L470: .loc 1 518 6 cvt.u16.u32 %r558,%r70; cvt.s32.s16 %r557,%r558; shr.u32 %r74,%r557,31; bra $L471; $L644: .loc 1 2829 11 mov.u32 %r74,0; $L471: st.u32 [%r512],%r74; .loc 1 2831 6 setp.eq.u32 %r559,%r509,3; @ %r559 bra $L645; .loc 1 2836 6 setp.eq.u32 %r560,%r509,0; @ %r560 bra $L646; .loc 1 2832 13 add.u32 %r62,%r510,-1; bra $L473; $L645: mov.u32 %r62,%r510; $L473: min.s32 %r53,%r62,42; bra $L474; $L646: .loc 1 2837 13 mov.u32 %r53,20; $L474: .loc 1 553 6 @ %r1271 bra $L475; mov.u64 %r221,%r1298; add.u64 %r454,%frame,312; $L477: .loc 1 558 10 ld.u16 %r563,[%r221]; setp.ne.u16 %r564,%r563,0; @ %r564 bra $L476; .loc 1 556 17 add.u64 %r221,%r221,2; setp.ne.u64 %r565,%r221,%r454; @ %r565 bra $L477; $L475: .loc 1 3000 15 mov.u32 %r566,144; st.u32 [%frame+4],%r566; mov.u64 %r272,%r1298; add.u64 %r1295,%frame,268; add.u64 %r305,%frame,314; mov.u64 %r267,%r1295; $L478: .loc 1 483 10 ld.u16 %r567,[%r272]; st.u16 [%r267],%r567; .loc 1 482 17 add.u64 %r272,%r272,2; add.u64 %r267,%r267,2; setp.ne.u64 %r568,%r272,%r305; @ %r568 bra $L478; .loc 1 3002 8 ld.u16 %r83,[%frame+286]; .loc 1 3002 6 cvt.u16.u32 %r569,%r83; setp.ge.s16 %r570,%r569,0; @ %r570 bra $L647; .loc 1 3005 17 and.b16 %r571,%r569,32767; cvt.u32.u16 %r83,%r571; st.u16 [%frame+286],%r571; .loc 1 3004 12 mov.u32 %r89,65535; bra $L479; $L647: .loc 1 3009 12 mov.u32 %r89,0; $L479: add.u64 %r1293,%frame,242; mov.u64 %r81,%r1293; add.u64 %r253,%frame,262; .loc 1 3004 12 mov.u64 %r269,%r1293; mov.u32 %r397,0; cvta.const.u64 %r1273,eone; mov.u64 %r86,%r1273; $L481: .loc 1 483 14 add.u64 %r86,%r86,2; .loc 1 483 10 cvt.u16.u32 %r574,%r397; st.u16 [%r269],%r574; .loc 1 482 17 add.u64 %r269,%r269,2; setp.eq.u64 %r575,%r253,%r269; @ %r575 bra $L480; .loc 1 483 12 ld.u16 %r397,[%r86]; bra $L481; $L480: .loc 1 3015 6 setp.ne.u32 %r576,%r83,0; @ %r576 bra $L482; add.u64 %r271,%r1295,18; mov.u64 %r26,%r1295; $L484: .loc 1 3019 7 ld.u16 %r577,[%r26]; setp.ne.u16 %r578,%r577,0; @ %r578 bra $L483; .loc 1 3017 21 add.u64 %r26,%r26,2; setp.ne.u64 %r579,%r26,%r271; @ %r579 bra $L484; $L488: .loc 1 3011 9 mov.u32 %r136,0; add.u64 %r1276,%frame,80; add.u64 %r1286,%frame,190; add.u64 %r1288,%frame,214; bra $L485; $L639: .loc 1 3030 10 setp.eq.u32 %r580,%r89,0; @ %r580 bra $L486; .loc 1 3031 2 add.u64 %r1276,%frame,80; cvta.const.u64 %r582,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r582; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r584,[%value_in]; } .loc 1 3034 13 mov.u32 %r136,9999; bra $L487; $L486: .loc 1 3033 2 add.u64 %r1276,%frame,80; cvta.const.u64 %r587,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r587; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r589,[%value_in]; } .loc 1 3034 13 mov.u32 %r136,9999; bra $L487; $L737: .loc 1 3041 24 ld.u16 %r591,[%frame+284]; setp.lt.s16 %r592,%r591,0; @ %r592 bra $L483; .loc 1 3044 7 add.u64 %r1276,%frame,80; cvta.const.u64 %r594,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r594; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r596,[%value_in]; } .loc 1 3045 13 mov.u32 %r136,9999; .loc 1 3046 7 bra $L487; $L483: .loc 1 3050 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1273; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r601,[%value_in]; } .loc 1 3051 6 setp.eq.u32 %r602,%r601,0; @ %r602 bra $L488; .loc 1 3054 6 setp.ge.s32 %r603,%r601,0; @ %r603 bra $L489; add.u64 %r1289,%frame,216; mov.u64 %r141,%r1289; add.u64 %r457,%r1295,20; mov.u64 %r251,%r1289; mov.u64 %r250,%r1295; $L490: .loc 1 483 10 ld.u16 %r604,[%r250]; st.u16 [%r251],%r604; .loc 1 482 17 add.u64 %r250,%r250,2; add.u64 %r251,%r251,2; setp.ne.u64 %r605,%r250,%r457; @ %r605 bra $L490; .loc 1 3058 17 mov.u16 %r606,16526; st.u16 [%frame+234],%r606; .loc 1 3061 9 mov.u32 %r102,16; .loc 1 3011 9 mov.u32 %r136,0; .loc 1 3060 9 cvta.const.u64 %r96,etens+160; add.u64 %r1276,%frame,80; add.u64 %r1299,%frame,320; add.u64 %r1286,%frame,190; add.u64 %r1277,%r1293,18; add.u64 %r1281,%r96,100; add.u64 %r1323,%frame,338; .loc 1 1478 3 add.u64 %r1324,%frame,164; .loc 1 1479 3 add.u64 %r1325,%frame,138; add.u64 %r1326,%frame,140; add.u64 %r1327,%frame,166; add.u64 %r1328,%frame,162; add.u64 %r1329,%frame,210; add.u64 %r1330,%frame,188; add.u64 %r1331,%frame,104; add.u64 %r1332,%frame,208; add.u64 %r1333,%frame,340; $L538: .loc 1 3064 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r96; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } mov.u64 %r298,%r1299; mov.u64 %r242,%r1299; mov.u64 %r239,%r1293; $L491: .loc 1 483 10 ld.u16 %r613,[%r239]; st.u16 [%r242],%r613; .loc 1 482 17 add.u64 %r239,%r239,2; add.u64 %r242,%r242,2; setp.ne.u64 %r614,%r239,%r253; @ %r614 bra $L491; .loc 1 3692 18 ld.u16 %r198,[%frame+338]; .loc 1 3693 14 cvt.u16.u32 %r616,%r198; and.b16 %r615,%r616,32767; cvt.u32.u16 %r617,%r615; .loc 1 3693 5 add.u32 %r201,%r617,-16382; .loc 1 3694 6 setp.gt.s32 %r618,%r201,0; @ %r618 bra $L492; mov.u64 %r231,%r1286; .loc 1 467 10 mov.u16 %r619,0; $L493: st.u16 [%r231],%r619; .loc 1 466 17 add.u64 %r231,%r231,2; setp.ne.u64 %r620,%r1329,%r231; @ %r620 bra $L493; bra $L494; $L492: .loc 1 3700 5 mov.u32 %r621,144; sub.u32 %r29,%r621,%r201; mov.u64 %r241,%r1286; mov.u64 %r245,%r1286; mov.u64 %r244,%r1299; $L495: .loc 1 483 10 ld.u16 %r622,[%r244]; st.u16 [%r245],%r622; .loc 1 482 17 add.u64 %r244,%r244,2; add.u64 %r245,%r245,2; setp.ne.u64 %r623,%r1333,%r244; @ %r623 bra $L495; .loc 1 3702 6 setp.le.s32 %r624,%r29,0; @ %r624 bra $L496; .loc 1 3706 12 setp.gt.s32 %r625,%r29,15; @ %r625 bra $L497; .loc 1 3705 5 mov.u64 %r304,%r1286; bra $L498; $L496: mov.u64 %r33,%r1286; .loc 1 3703 5 mov.u64 %r54,%r1293; bra $L499; $L497: mov.u32 %r627,128; sub.u32 %r626,%r627,%r201; shr.u32 %r312,%r626,4; cvt.u64.u32 %r446,%r312; add.u64 %r629,%r446,%r446; add.u64 %r1292,%r1286,2; add.u64 %r249,%r629,%r1292; .loc 1 3708 12 mov.u16 %r631,0; $L500: st.u16 [%r241],%r631; .loc 1 3706 12 mov.u64 %r241,%r1292; setp.ne.u64 %r632,%r249,%r1292; @ ! %r632 bra $L733; add.u64 %r1292,%r1292,2; bra $L500; $L733: .loc 1 3708 9 add.u64 %r634,%r446,1; add.u64 %r635,%r634,%r634; add.u64 %r304,%r1286,%r635; mov.u32 %r636,128; .loc 1 3709 9 shl.b32 %r638,%r312,4; neg.s32 %r639,%r638; vsub.u32.u32.u32.add %r29,%r636,%r201,%r639; $L498: .loc 1 3712 14 cvta.const.u64 %r640,bmask; cvt.s64.s32 %r641,%r29; add.u64 %r642,%r641,%r641; add.u64 %r643,%r640,%r642; .loc 1 3712 6 ld.u16 %r645,[%r304]; ld.u16 %r646,[%r643]; and.b16 %r644,%r645,%r646; st.u16 [%r304],%r644; $L494: .loc 1 3716 6 cvt.u16.u32 %r647,%r198; setp.ge.s16 %r648,%r647,0; @ %r648 bra $L496; mov.u64 %r469,%r1286; mov.u64 %r152,%r1286; $L535: .loc 1 3720 7 ld.u16 %r649,[%r298]; ld.u16 %r650,[%r152]; setp.eq.u16 %r651,%r649,%r650; @ %r651 bra $L501; .loc 1 553 6 ld.u16 %r653,[%frame+208]; and.b16 %r652,%r653,32767; setp.ne.u16 %r654,%r652,32767; @ %r654 bra $L502; mov.u64 %r55,%r1286; $L503: .loc 1 558 10 ld.u16 %r655,[%r55]; setp.ne.u16 %r656,%r655,0; @ %r656 bra $L496; .loc 1 556 17 add.u64 %r55,%r55,2; setp.ne.u64 %r657,%r55,%r1332; @ %r657 bra $L503; mov.u64 %r440,%r1286; $L504: .loc 1 558 10 ld.u16 %r658,[%r440]; setp.ne.u16 %r659,%r658,0; @ %r659 bra $L502; .loc 1 556 17 add.u64 %r440,%r440,2; setp.ne.u64 %r660,%r1332,%r440; @ %r660 bra $L504; bra $L496; $L502: .loc 1 1478 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1273; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1324; call emovi,(%out_arg1,%out_arg2); } .loc 1 1479 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1325; call emovi,(%out_arg1,%out_arg2); } .loc 1 1481 11 ld.u16 %r669,[%frame+164]; not.b16 %r668,%r669; cvt.u32.u16 %r329,%r668; st.u16 [%frame+164],%r668; .loc 1 1484 7 ld.u16 %r279,[%frame+166]; .loc 1 1485 7 ld.u16 %r294,[%frame+140]; .loc 1 1486 6 sub.u64 %r281,%r279,%r294; .loc 1 1487 6 setp.le.s64 %r671,%r281,0; @ %r671 bra $L506; mov.u64 %r482,%r1325; mov.u64 %r475,%r1276; mov.u64 %r496,%r1276; mov.u64 %r494,%r1325; $L507: .loc 1 734 10 ld.u16 %r672,[%r494]; st.u16 [%r496],%r672; .loc 1 733 17 add.u64 %r494,%r494,2; add.u64 %r496,%r496,2; setp.ne.u64 %r673,%r1328,%r494; @ %r673 bra $L507; .loc 1 736 6 mov.u16 %r674,0; st.u16 [%frame+104],%r674; mov.u64 %r283,%r1324; $L509: .loc 1 734 14 add.u64 %r283,%r283,2; .loc 1 734 10 cvt.u16.u32 %r675,%r329; st.u16 [%r482],%r675; .loc 1 733 17 add.u64 %r482,%r482,2; setp.eq.u64 %r676,%r1328,%r482; @ %r676 bra $L508; .loc 1 734 12 ld.u16 %r329,[%r283]; bra $L509; $L508: .loc 1 736 6 mov.u16 %r677,0; st.u16 [%frame+162],%r677; mov.u64 %r233,%r1324; $L510: .loc 1 734 10 ld.u16 %r678,[%r475]; st.u16 [%r233],%r678; .loc 1 733 17 add.u64 %r475,%r475,2; add.u64 %r233,%r233,2; setp.ne.u64 %r679,%r475,%r1331; @ %r679 bra $L510; .loc 1 736 6 mov.u16 %r680,0; st.u16 [%frame+188],%r680; .loc 1 1493 10 sub.u64 %r281,%r294,%r279; .loc 1 1492 11 ld.u16 %r294,[%frame+140]; $L506: .loc 1 1496 6 setp.eq.u64 %r681,%r281,0; @ %r681 bra $L511; .loc 1 1498 10 setp.ge.s64 %r682,%r281,-145; @ ! %r682 bra $L513; .loc 1 1500 9 cvt.u32.u64 %r685,%r281; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1324; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r685; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r687,[%value_in]; } mov.u32 %r302,%r687; bra $L514; $L511: add.u64 %r323,%frame,168; add.u64 %r318,%frame,142; mov.u64 %r59,%r1324; $L517: .loc 1 796 10 ld.u16 %r690,[%r323]; ld.u16 %r691,[%r318]; setp.eq.u16 %r692,%r690,%r691; @ %r692 bra $L515; .loc 1 802 6 setp.gt.u16 %r695,%r690,%r691; @ %r695 bra $L516; .loc 1 1495 8 mov.u32 %r302,0; bra $L514; $L515: .loc 1 794 17 add.u64 %r323,%r323,2; add.u64 %r318,%r318,2; setp.ne.u64 %r696,%r1286,%r323; @ %r696 bra $L517; .loc 1 1510 7 ld.u16 %r697,[%frame+164]; ld.u16 %r698,[%frame+138]; setp.eq.u16 %r699,%r697,%r698; @ %r699 bra $L518; .loc 1 467 10 mov.u16 %r700,0; $L519: st.u16 [%r469],%r700; .loc 1 466 17 add.u64 %r469,%r469,2; setp.ne.u64 %r701,%r469,%r1329; @ %r701 bra $L519; bra $L496; $L518: .loc 1 1517 11 ld.u16 %r327,[%frame+140]; .loc 1 1517 7 setp.ne.u32 %r702,%r327,0; @ %r702 bra $L520; .loc 1 1517 21 ld.u16 %r703,[%frame+144]; setp.lt.s16 %r704,%r703,0; @ %r704 bra $L520; .loc 1 846 5 add.u64 %r328,%frame,162; $L524: .loc 1 851 11 ld.u16 %r321,[%r328]; .loc 1 851 10 cvt.u16.u32 %r705,%r321; setp.ge.s16 %r706,%r705,0; @ %r706 bra $L521; .loc 1 852 7 cvt.u16.u32 %r708,%r327; or.b16 %r707,%r708,1; cvt.u32.u16 %r327,%r707; $L521: .loc 1 853 10 cvt.u16.u32 %r709,%r321; add.u16 %r710,%r709,%r709; .loc 1 854 10 cvt.u16.u32 %r712,%r327; and.b16 %r711,%r712,2; setp.ne.u16 %r713,%r711,0; @ %r713 bra $L522; .loc 1 853 10 st.u16 [%r328],%r710; bra $L523; $L522: .loc 1 855 5 or.b16 %r715,%r710,1; st.u16 [%r328],%r715; $L523: .loc 1 856 12 cvt.u16.u32 %r717,%r327; add.u16 %r718,%r717,%r717; cvt.u32.u16 %r327,%r718; .loc 1 857 7 add.u64 %r328,%r328,-2; .loc 1 849 17 setp.ne.u64 %r721,%r328,%r1326; @ %r721 bra $L524; bra $L513; $L520: add.u64 %r470,%frame,140; $L528: .loc 1 1525 11 ld.u16 %r724,[%r470]; setp.eq.u16 %r725,%r724,0; @ %r725 bra $L526; .loc 1 1528 9 add.u64 %r294,%r294,1; .loc 1 1529 5 bra $L527; $L526: .loc 1 1523 18 add.u64 %r470,%r470,2; setp.ne.u64 %r726,%r1328,%r470; @ %r726 bra $L528; $L527: .loc 1 1532 12 st.u16 [%frame+140],%r294; .loc 1 1533 4 bra $L513; $L516: mov.u64 %r461,%r1325; mov.u64 %r44,%r1276; .loc 1 802 6 mov.u64 %r345,%r1276; mov.u64 %r350,%r1325; $L529: .loc 1 734 10 ld.u16 %r727,[%r350]; st.u16 [%r345],%r727; .loc 1 733 17 add.u64 %r350,%r350,2; add.u64 %r345,%r345,2; setp.ne.u64 %r728,%r1328,%r350; @ %r728 bra $L529; .loc 1 736 6 mov.u16 %r729,0; st.u16 [%frame+104],%r729; mov.u64 %r492,%r1324; $L530: .loc 1 734 10 ld.u16 %r730,[%r492]; st.u16 [%r461],%r730; .loc 1 733 17 add.u64 %r492,%r492,2; add.u64 %r461,%r461,2; setp.ne.u64 %r731,%r1330,%r492; @ %r731 bra $L530; .loc 1 736 6 mov.u16 %r732,0; st.u16 [%frame+162],%r732; $L531: .loc 1 734 10 ld.u16 %r733,[%r44]; st.u16 [%r59],%r733; .loc 1 733 17 add.u64 %r44,%r44,2; add.u64 %r59,%r59,2; setp.ne.u64 %r734,%r44,%r1331; @ %r734 bra $L531; .loc 1 736 6 mov.u16 %r735,0; st.u16 [%frame+188],%r735; .loc 1 1495 8 mov.u32 %r302,0; $L514: .loc 1 1542 6 ld.u16 %r736,[%frame+164]; ld.u16 %r737,[%frame+138]; setp.ne.u16 %r738,%r736,%r737; @ %r738 bra $L648; .loc 1 960 9 mov.u32 %r493,0; .loc 1 959 5 mov.u64 %r342,%r1328; .loc 1 958 5 add.u64 %r341,%frame,188; $L533: .loc 1 963 11 ld.u16 %r739,[%r341]; .loc 1 963 34 ld.u16 %r740,[%r342]; .loc 1 963 32 add.u64 %r741,%r739,%r740; .loc 1 963 55 cvt.u64.u32 %r742,%r493; .loc 1 963 9 add.u64 %r338,%r741,%r742; .loc 1 964 10 shr.u64 %r743,%r338,16; cvt.u32.u64 %r744,%r743; and.b32 %r493,%r744,1; .loc 1 968 12 st.u16 [%r342],%r338; .loc 1 969 7 add.u64 %r341,%r341,-2; .loc 1 970 7 add.u64 %r342,%r342,-2; .loc 1 961 17 setp.ne.u64 %r748,%r341,%r1327; @ %r748 bra $L533; .loc 1 1545 14 mov.u32 %r303,0; bra $L534; $L648: .loc 1 988 9 mov.u32 %r77,0; .loc 1 986 5 add.u64 %r355,%frame,188; .loc 1 987 5 mov.u64 %r356,%r1328; $L532: .loc 1 991 11 ld.u16 %r749,[%r356]; .loc 1 991 55 cvt.u64.u32 %r750,%r77; .loc 1 991 9 sub.u64 %r751,%r749,%r750; .loc 1 991 34 ld.u16 %r752,[%r355]; .loc 1 991 9 sub.u64 %r352,%r751,%r752; .loc 1 992 10 shr.u64 %r753,%r352,16; cvt.u32.u64 %r754,%r753; and.b32 %r77,%r754,1; .loc 1 996 12 st.u16 [%r356],%r352; .loc 1 997 7 add.u64 %r355,%r355,-2; .loc 1 998 7 add.u64 %r356,%r356,-2; .loc 1 989 17 setp.ne.u64 %r758,%r356,%r1326; @ %r758 bra $L532; .loc 1 1550 14 mov.u32 %r303,1; $L534: .loc 1 1552 3 mov.u32 %r763,64; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r302; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r303; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r294; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r763; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L513: .loc 1 1555 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L496; $L501: .loc 1 3718 21 add.u64 %r298,%r298,2; add.u64 %r152,%r152,2; setp.ne.u64 %r770,%r1323,%r298; @ %r770 bra $L535; bra $L496; $L499: .loc 1 3068 11 ld.u16 %r771,[%r54]; ld.u16 %r772,[%r33]; setp.ne.u16 %r773,%r771,%r772; @ %r773 bra $L536; .loc 1 3066 18 add.u64 %r54,%r54,2; add.u64 %r33,%r33,2; setp.ne.u64 %r774,%r54,%r1277; @ %r774 bra $L499; mov.u64 %r58,%r1289; mov.u64 %r42,%r1293; $L537: .loc 1 483 10 ld.u16 %r775,[%r42]; st.u16 [%r58],%r775; .loc 1 482 17 add.u64 %r42,%r42,2; add.u64 %r58,%r58,2; setp.ne.u64 %r776,%r42,%r253; @ %r776 bra $L537; .loc 1 3072 10 add.u32 %r136,%r136,%r102; $L536: .loc 1 3074 6 add.u64 %r96,%r96,20; .loc 1 3075 6 cvt.u16.u32 %r778,%r102; shr.u16 %r777,%r778,1; cvt.u32.u16 %r102,%r777; .loc 1 3077 16 setp.ne.u64 %r780,%r96,%r1281; @ %r780 bra $L538; .loc 1 3080 17 ld.u16 %r782,[%frame+234]; ld.u16 %r783,[%frame+286]; add.u16 %r781,%r782,%r783; add.u16 %r784,%r781,-16526; st.u16 [%frame+234],%r784; add.u64 %r48,%r1289,20; mov.u64 %r387,%r1295; $L539: .loc 1 483 10 ld.u16 %r785,[%r141]; st.u16 [%r387],%r785; .loc 1 482 17 add.u64 %r141,%r141,2; add.u64 %r387,%r387,2; setp.ne.u64 %r786,%r48,%r141; @ %r786 bra $L539; mov.u64 %r80,%r1293; mov.u32 %r375,0; cvta.const.u64 %r110,eone; $L541: .loc 1 483 14 add.u64 %r110,%r110,2; .loc 1 483 10 cvt.u16.u32 %r787,%r375; st.u16 [%r80],%r787; .loc 1 482 17 add.u64 %r80,%r80,2; setp.eq.u64 %r788,%r80,%r253; @ %r788 bra $L649; .loc 1 483 12 ld.u16 %r375,[%r110]; bra $L541; $L543: .loc 1 3088 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r792,[%value_in]; } .loc 1 3088 7 setp.gt.s32 %r793,%r792,0; @ %r793 bra $L542; .loc 1 3090 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1289; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3091 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1293; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3092 14 add.u32 %r136,%r136,%r114; $L542: .loc 1 3094 6 cvt.u16.u32 %r807,%r114; shr.u16 %r806,%r807,1; cvt.u32.u16 %r114,%r806; .loc 1 3095 7 setp.eq.u64 %r809,%r112,%r1279; @ ! %r809 bra $L734; add.u64 %r1288,%frame,214; bra $L485; $L734: .loc 1 3097 6 add.u64 %r112,%r112,20; bra $L540; $L649: .loc 1 3084 9 mov.u32 %r114,4096; .loc 1 3085 9 cvta.const.u64 %r112,etens; add.u64 %r1279,%r112,240; $L540: .loc 1 3086 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r814,[%value_in]; } .loc 1 3086 28 setp.le.s32 %r815,%r814,0; @ %r815 bra $L543; add.u64 %r1288,%frame,214; bra $L485; $L489: .loc 1 3103 10 ld.u16 %r816,[%frame+286]; setp.ne.u16 %r817,%r816,0; @ %r817 bra $L544; .loc 1 3105 32 ld.u16 %r818,[%frame+284]; setp.lt.s16 %r819,%r818,0; @ %r819 bra $L650; .loc 1 3011 9 mov.u32 %r136,0; cvta.const.u64 %r1279,etens+240; $L546: .loc 1 3107 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1295; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3108 14 add.u32 %r136,%r136,-1; .loc 1 3105 32 ld.u16 %r827,[%frame+284]; setp.ge.s16 %r828,%r827,0; @ %r828 bra $L546; add.u64 %r1286,%frame,190; add.u64 %r1288,%frame,214; bra $L545; $L544: .loc 1 3113 4 add.u64 %r1286,%frame,190; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovi,(%out_arg1,%out_arg2); } .loc 1 3011 9 mov.u32 %r136,0; add.u64 %r1288,%frame,214; add.u64 %r1335,%frame,216; add.u64 %r1336,%frame,192; add.u64 %r1337,%frame,240; $L554: .loc 1 3116 11 ld.u16 %r834,[%frame+214]; and.b16 %r833,%r834,7; setp.ne.u16 %r835,%r833,0; @ %r835 bra $L547; mov.u64 %r257,%r1286; mov.u64 %r265,%r1335; mov.u64 %r220,%r1335; mov.u64 %r452,%r1286; $L548: .loc 1 734 10 ld.u16 %r836,[%r452]; st.u16 [%r220],%r836; .loc 1 733 17 add.u64 %r452,%r452,2; add.u64 %r220,%r220,2; setp.ne.u64 %r837,%r1288,%r452; @ %r837 bra $L548; .loc 1 736 6 mov.u16 %r838,0; st.u16 [%frame+240],%r838; .loc 1 3120 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1335; call eshdn1,(%out_arg1); } .loc 1 3121 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1335; call eshdn1,(%out_arg1); } .loc 1 960 9 mov.u32 %r235,0; .loc 1 959 5 add.u64 %r367,%frame,240; .loc 1 958 5 mov.u64 %r366,%r1288; $L549: .loc 1 963 11 ld.u16 %r843,[%r366]; .loc 1 963 34 ld.u16 %r844,[%r367]; .loc 1 963 32 add.u64 %r845,%r843,%r844; .loc 1 963 55 cvt.u64.u32 %r846,%r235; .loc 1 963 9 add.u64 %r363,%r845,%r846; .loc 1 964 10 shr.u64 %r847,%r363,16; cvt.u32.u64 %r848,%r847; and.b32 %r235,%r848,1; .loc 1 968 12 st.u16 [%r367],%r363; .loc 1 969 7 add.u64 %r366,%r366,-2; .loc 1 970 7 add.u64 %r367,%r367,-2; .loc 1 961 17 setp.ne.u64 %r852,%r366,%r1336; @ %r852 bra $L549; .loc 1 3123 13 ld.u16 %r1294,[%frame+218]; add.u16 %r1294,%r1294,3; st.u16 [%frame+218],%r1294; .loc 1 3124 20 ld.u16 %r855,[%frame+220]; setp.ne.u16 %r856,%r855,0; @ %r856 bra $L550; $L552: .loc 1 3129 11 ld.u16 %r857,[%frame+240]; setp.ne.u16 %r858,%r857,0; @ ! %r858 bra $L735; bra $L547; $L550: .loc 1 3126 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1335; call eshdn1,(%out_arg1); } .loc 1 3127 10 ld.u16 %r1294,[%frame+218]; add.u16 %r1294,%r1294,1; st.u16 [%frame+218],%r1294; .loc 1 3124 20 ld.u16 %r863,[%frame+220]; setp.ne.u16 %r864,%r863,0; @ %r864 bra $L550; bra $L552; $L735: .loc 1 3131 11 setp.gt.u16 %r866,%r1294,16382; @ %r866 bra $L547; $L553: .loc 1 734 10 ld.u16 %r867,[%r265]; st.u16 [%r257],%r867; .loc 1 733 17 add.u64 %r265,%r265,2; add.u64 %r257,%r257,2; setp.ne.u64 %r868,%r265,%r1337; @ %r868 bra $L553; .loc 1 736 6 mov.u16 %r869,0; st.u16 [%frame+214],%r869; .loc 1 3134 14 add.u32 %r136,%r136,-1; .loc 1 3114 18 setp.ne.u32 %r870,%r136,-43; @ %r870 bra $L554; $L547: .loc 1 3136 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L545; $L650: .loc 1 3011 9 mov.u32 %r136,0; add.u64 %r1286,%frame,190; add.u64 %r1288,%frame,214; $L545: mov.u64 %r247,%r1286; add.u64 %r256,%r1295,20; mov.u64 %r219,%r1295; $L555: .loc 1 483 10 ld.u16 %r875,[%r219]; st.u16 [%r247],%r875; .loc 1 482 17 add.u64 %r219,%r219,2; add.u64 %r247,%r247,2; setp.ne.u64 %r876,%r256,%r219; @ %r876 bra $L555; mov.u64 %r246,%r1293; mov.u32 %r388,0; cvta.const.u64 %r139,eone; $L557: .loc 1 483 14 add.u64 %r139,%r139,2; .loc 1 483 10 cvt.u16.u32 %r877,%r388; st.u16 [%r246],%r877; .loc 1 482 17 add.u64 %r246,%r246,2; setp.eq.u64 %r878,%r253,%r246; @ %r878 bra $L651; .loc 1 483 12 ld.u16 %r388,[%r139]; bra $L557; $L560: .loc 1 3145 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r882,[%value_in]; } .loc 1 3145 7 setp.lt.s32 %r883,%r882,0; @ %r883 bra $L558; .loc 1 3147 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1286; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3148 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1293; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3149 14 add.u32 %r136,%r136,%r144; $L558: .loc 1 3151 6 shr.u32 %r897,%r144,31; add.u32 %r898,%r897,%r144; shr.s32 %r144,%r898,1; .loc 1 3152 7 add.u64 %r314,%r314,20; setp.eq.u64 %r900,%r314,260; @ ! %r900 bra $L556; bra $L559; $L651: mov.u64 %r314,0; .loc 1 3138 9 mov.u32 %r144,-4096; cvta.const.u64 %r1272,etens; cvta.const.u64 %r1285,emtens; $L556: add.u64 %r262,%r1272,%r314; add.u64 %r264,%r1285,%r314; .loc 1 3143 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1273; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r906,[%value_in]; } .loc 1 3143 29 setp.gt.s32 %r907,%r906,0; @ %r907 bra $L560; $L559: .loc 1 3157 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1273; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } add.u64 %r1276,%frame,80; $L485: .loc 1 3161 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r108,%r1286; mov.u64 %r85,%r1286; $L561: .loc 1 734 10 ld.u16 %r918,[%r85]; st.u16 [%r81],%r918; .loc 1 733 17 add.u64 %r85,%r85,2; add.u64 %r81,%r81,2; setp.ne.u64 %r919,%r85,%r1288; @ %r919 bra $L561; .loc 1 736 6 mov.u16 %r920,0; st.u16 [%frame+266],%r920; .loc 1 3163 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r100,%r1295; $L562: .loc 1 734 10 ld.u16 %r925,[%r108]; st.u16 [%r100],%r925; .loc 1 733 17 add.u64 %r108,%r108,2; add.u64 %r100,%r100,2; setp.ne.u64 %r926,%r108,%r1288; @ %r926 bra $L562; .loc 1 736 6 mov.u16 %r927,0; st.u16 [%frame+292],%r927; .loc 1 3165 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3166 9 ld.u16 %r154,[%frame+76]; .loc 1 3167 23 setp.eq.u64 %r933,%r154,0; @ ! %r933 bra $L564; cvta.const.u64 %r1274,ezero; .loc 1 846 5 add.u64 %r1318,%frame,292; add.u64 %r1319,%frame,270; add.u64 %r1320,%r1295,24; add.u64 %r1321,%frame,240; add.u64 %r1322,%frame,218; bra $L563; $L653: .loc 1 847 8 mov.u32 %r373,0; .loc 1 846 5 mov.u64 %r374,%r1318; $L568: .loc 1 851 11 ld.u16 %r368,[%r374]; .loc 1 851 10 cvt.u16.u32 %r934,%r368; setp.ge.s16 %r935,%r934,0; @ %r935 bra $L565; .loc 1 852 7 cvt.u16.u32 %r937,%r373; or.b16 %r936,%r937,1; cvt.u32.u16 %r373,%r936; $L565: .loc 1 853 10 cvt.u16.u32 %r938,%r368; add.u16 %r939,%r938,%r938; .loc 1 854 10 cvt.u16.u32 %r941,%r373; and.b16 %r940,%r941,2; setp.ne.u16 %r942,%r940,0; @ %r942 bra $L566; .loc 1 853 10 st.u16 [%r374],%r939; bra $L567; $L566: .loc 1 855 5 or.b16 %r944,%r939,1; st.u16 [%r374],%r944; $L567: .loc 1 856 12 cvt.u16.u32 %r946,%r373; add.u16 %r947,%r946,%r946; cvt.u32.u16 %r373,%r947; .loc 1 857 7 add.u64 %r374,%r374,-2; .loc 1 849 17 setp.ne.u64 %r950,%r374,%r1319; @ %r950 bra $L568; add.u64 %r125,%frame,216; mov.u64 %r135,%r1295; $L569: .loc 1 734 10 ld.u16 %r951,[%r135]; st.u16 [%r125],%r951; .loc 1 733 17 add.u64 %r135,%r135,2; add.u64 %r125,%r125,2; setp.ne.u64 %r952,%r1320,%r135; @ %r952 bra $L569; .loc 1 736 6 mov.u16 %r953,0; st.u16 [%frame+240],%r953; .loc 1 847 8 mov.u32 %r403,0; .loc 1 846 5 mov.u64 %r404,%r1321; $L573: .loc 1 851 11 ld.u16 %r398,[%r404]; .loc 1 851 10 cvt.u16.u32 %r954,%r398; setp.ge.s16 %r955,%r954,0; @ %r955 bra $L570; .loc 1 852 7 cvt.u16.u32 %r957,%r403; or.b16 %r956,%r957,1; cvt.u32.u16 %r403,%r956; $L570: .loc 1 853 10 cvt.u16.u32 %r958,%r398; add.u16 %r959,%r958,%r958; .loc 1 854 10 cvt.u16.u32 %r961,%r403; and.b16 %r960,%r961,2; setp.ne.u16 %r962,%r960,0; @ %r962 bra $L571; .loc 1 853 10 st.u16 [%r404],%r959; bra $L572; $L571: .loc 1 855 5 or.b16 %r964,%r959,1; st.u16 [%r404],%r964; $L572: .loc 1 856 12 cvt.u16.u32 %r966,%r403; add.u16 %r967,%r966,%r966; cvt.u32.u16 %r403,%r967; .loc 1 857 7 add.u64 %r404,%r404,-2; .loc 1 849 17 setp.ne.u64 %r970,%r404,%r1322; @ %r970 bra $L573; .loc 1 847 8 mov.u32 %r395,0; .loc 1 846 5 mov.u64 %r396,%r1321; $L577: .loc 1 851 11 ld.u16 %r390,[%r396]; .loc 1 851 10 cvt.u16.u32 %r971,%r390; setp.ge.s16 %r972,%r971,0; @ %r972 bra $L574; .loc 1 852 7 cvt.u16.u32 %r974,%r395; or.b16 %r973,%r974,1; cvt.u32.u16 %r395,%r973; $L574: .loc 1 853 10 cvt.u16.u32 %r975,%r390; add.u16 %r976,%r975,%r975; .loc 1 854 10 cvt.u16.u32 %r978,%r395; and.b16 %r977,%r978,2; setp.ne.u16 %r979,%r977,0; @ %r979 bra $L575; .loc 1 853 10 st.u16 [%r396],%r976; bra $L576; $L575: .loc 1 855 5 or.b16 %r981,%r976,1; st.u16 [%r396],%r981; $L576: .loc 1 856 12 cvt.u16.u32 %r983,%r395; add.u16 %r984,%r983,%r983; cvt.u32.u16 %r395,%r984; .loc 1 857 7 add.u64 %r396,%r396,-2; .loc 1 849 17 setp.ne.u64 %r987,%r396,%r1322; @ %r987 bra $L577; .loc 1 960 9 mov.u32 %r503,0; .loc 1 959 5 mov.u64 %r386,%r1318; .loc 1 958 5 mov.u64 %r385,%r1321; $L578: .loc 1 963 11 ld.u16 %r988,[%r385]; .loc 1 963 34 ld.u16 %r989,[%r386]; .loc 1 963 32 add.u64 %r990,%r988,%r989; .loc 1 963 55 cvt.u64.u32 %r991,%r503; .loc 1 963 9 add.u64 %r382,%r990,%r991; .loc 1 964 10 shr.u64 %r992,%r382,16; cvt.u32.u64 %r993,%r992; and.b32 %r503,%r993,1; .loc 1 968 12 st.u16 [%r386],%r382; .loc 1 969 7 add.u64 %r385,%r385,-2; .loc 1 970 7 add.u64 %r386,%r386,-2; .loc 1 961 17 setp.ne.u64 %r997,%r385,%r1322; @ %r997 bra $L578; .loc 1 3174 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3175 13 ld.u16 %r158,[%frame+76]; .loc 1 3176 13 add.u32 %r136,%r136,-1; .loc 1 3167 23 setp.ne.u64 %r1003,%r158,0; @ %r1003 bra $L652; $L563: .loc 1 3167 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1274; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r1007,[%value_in]; } .loc 1 3167 23 setp.ne.u32 %r1008,%r1007,0; @ %r1008 bra $L653; bra $L564; $L652: mov.u64 %r154,%r158; $L564: .loc 1 3179 6 setp.ne.u32 %r1009,%r89,0; .loc 1 3182 10 selp.u32 %r73,45,32,%r1009; cvt.u32.u32 %r1010,%r73; st.u8 [%frame+80],%r1010; .loc 1 3184 6 setp.ne.u32 %r1011,%r509,3; @ %r1011 bra $L655; .loc 1 3185 11 add.u32 %r162,%r53,%r136; bra $L580; $L655: .loc 1 2990 9 mov.u32 %r162,%r53; $L580: min.s32 %r159,%r162,42; .loc 1 3192 6 setp.ne.u64 %r1012,%r154,10; @ %r1012 bra $L581; .loc 1 3194 12 mov.u32 %r1013,49; st.u8 [%frame+81],%r1013; .loc 1 3195 12 mov.u32 %r1014,46; st.u8 [%frame+82],%r1014; .loc 1 3201 13 add.u32 %r136,%r136,1; .loc 1 3196 10 setp.le.s32 %r1015,%r162,0; @ %r1015 bra $L582; .loc 1 3198 9 mov.u32 %r1016,48; st.u8 [%frame+83],%r1016; .loc 1 3199 10 add.u32 %r159,%r159,-1; .loc 1 3198 6 add.u64 %r126,%frame,84; bra $L642; $L582: .loc 1 3202 10 setp.ne.u32 %r1017,%r162,0; @ %r1017 bra $L656; .loc 1 3195 9 add.u64 %r126,%frame,83; bra $L642; $L581: .loc 1 3210 14 cvt.u32.u64 %r1018,%r154; .loc 1 3210 27 cvt.u16.u8 %r1346,%r1018; mov.u16 %r1020,%r1346; add.u16 %r1019,%r1020,48; st.u8 [%frame+81],%r1019; .loc 1 3211 12 mov.u32 %r1021,46; st.u8 [%frame+82],%r1021; .loc 1 3214 17 setp.lt.s32 %r1022,%r162,0; @ %r1022 bra $L585; .loc 1 3211 9 add.u64 %r126,%frame,83; $L642: mov.u64 %r151,%r126; add.u64 %r1289,%frame,216; add.u64 %r1291,%frame,240; add.u64 %r1297,%frame,292; add.u64 %r1296,%frame,270; add.u64 %r1270,%r1295,24; add.u64 %r1290,%frame,218; cvt.u32.u64 %r1269,%r151; .loc 1 847 8 mov.u32 %r1317,0; $L600: mov.u64 %r423,%r151; mov.u32 %r410,%r1317; .loc 1 846 5 mov.u64 %r411,%r1297; $L589: .loc 1 851 11 ld.u16 %r405,[%r411]; .loc 1 851 10 cvt.u16.u32 %r1023,%r405; setp.ge.s16 %r1024,%r1023,0; @ %r1024 bra $L586; .loc 1 852 7 cvt.u16.u32 %r1026,%r410; or.b16 %r1025,%r1026,1; cvt.u32.u16 %r410,%r1025; $L586: .loc 1 853 10 cvt.u16.u32 %r1027,%r405; add.u16 %r1028,%r1027,%r1027; .loc 1 854 10 cvt.u16.u32 %r1030,%r410; and.b16 %r1029,%r1030,2; setp.ne.u16 %r1031,%r1029,0; @ %r1031 bra $L587; .loc 1 853 10 st.u16 [%r411],%r1028; bra $L588; $L587: .loc 1 855 5 or.b16 %r1033,%r1028,1; st.u16 [%r411],%r1033; $L588: .loc 1 856 12 cvt.u16.u32 %r1035,%r410; add.u16 %r1036,%r1035,%r1035; cvt.u32.u16 %r410,%r1036; .loc 1 857 7 add.u64 %r411,%r411,-2; .loc 1 849 17 setp.ne.u64 %r1039,%r411,%r1296; @ %r1039 bra $L589; mov.u64 %r196,%r1289; mov.u64 %r202,%r1295; $L590: .loc 1 734 10 ld.u16 %r1040,[%r202]; st.u16 [%r196],%r1040; .loc 1 733 17 add.u64 %r202,%r202,2; add.u64 %r196,%r196,2; setp.ne.u64 %r1041,%r1270,%r202; @ %r1041 bra $L590; .loc 1 736 6 mov.u16 %r1042,0; st.u16 [%frame+240],%r1042; .loc 1 847 8 mov.u32 %r436,%r1317; .loc 1 846 5 mov.u64 %r437,%r1291; $L594: .loc 1 851 11 ld.u16 %r431,[%r437]; .loc 1 851 10 cvt.u16.u32 %r1043,%r431; setp.ge.s16 %r1044,%r1043,0; @ %r1044 bra $L591; .loc 1 852 7 cvt.u16.u32 %r1046,%r436; or.b16 %r1045,%r1046,1; cvt.u32.u16 %r436,%r1045; $L591: .loc 1 853 10 cvt.u16.u32 %r1047,%r431; add.u16 %r1048,%r1047,%r1047; .loc 1 854 10 cvt.u16.u32 %r1050,%r436; and.b16 %r1049,%r1050,2; setp.ne.u16 %r1051,%r1049,0; @ %r1051 bra $L592; .loc 1 853 10 st.u16 [%r437],%r1048; bra $L593; $L592: .loc 1 855 5 or.b16 %r1053,%r1048,1; st.u16 [%r437],%r1053; $L593: .loc 1 856 12 cvt.u16.u32 %r1055,%r436; add.u16 %r1056,%r1055,%r1055; cvt.u32.u16 %r436,%r1056; .loc 1 857 7 add.u64 %r437,%r437,-2; .loc 1 849 17 setp.ne.u64 %r1059,%r437,%r1290; @ %r1059 bra $L594; .loc 1 847 8 mov.u32 %r429,%r1317; .loc 1 846 5 mov.u64 %r430,%r1291; $L598: .loc 1 851 11 ld.u16 %r424,[%r430]; .loc 1 851 10 cvt.u16.u32 %r1060,%r424; setp.ge.s16 %r1061,%r1060,0; @ %r1061 bra $L595; .loc 1 852 7 cvt.u16.u32 %r1063,%r429; or.b16 %r1062,%r1063,1; cvt.u32.u16 %r429,%r1062; $L595: .loc 1 853 10 cvt.u16.u32 %r1064,%r424; add.u16 %r1065,%r1064,%r1064; .loc 1 854 10 cvt.u16.u32 %r1067,%r429; and.b16 %r1066,%r1067,2; setp.ne.u16 %r1068,%r1066,0; @ %r1068 bra $L596; .loc 1 853 10 st.u16 [%r430],%r1065; bra $L597; $L596: .loc 1 855 5 or.b16 %r1070,%r1065,1; st.u16 [%r430],%r1070; $L597: .loc 1 856 12 cvt.u16.u32 %r1072,%r429; add.u16 %r1073,%r1072,%r1072; cvt.u32.u16 %r429,%r1073; .loc 1 857 7 add.u64 %r430,%r430,-2; .loc 1 849 17 setp.ne.u64 %r1076,%r430,%r1290; @ %r1076 bra $L598; .loc 1 960 9 mov.u32 %r505,%r1317; .loc 1 959 5 mov.u64 %r422,%r1297; .loc 1 958 5 mov.u64 %r421,%r1291; $L599: .loc 1 963 11 ld.u16 %r1077,[%r421]; .loc 1 963 34 ld.u16 %r1078,[%r422]; .loc 1 963 32 add.u64 %r1079,%r1077,%r1078; .loc 1 963 55 cvt.u64.u32 %r1080,%r505; .loc 1 963 9 add.u64 %r418,%r1079,%r1080; .loc 1 964 10 shr.u64 %r1081,%r418,16; cvt.u32.u64 %r1082,%r1081; and.b32 %r505,%r1082,1; .loc 1 968 12 st.u16 [%r422],%r418; .loc 1 969 7 add.u64 %r421,%r421,-2; .loc 1 970 7 add.u64 %r422,%r422,-2; .loc 1 961 17 setp.ne.u64 %r1086,%r421,%r1290; @ %r1086 bra $L599; .loc 1 3222 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3223 26 ld.u16 %r169,[%frame+76]; add.u64 %r151,%r151,1; mov.u64 %r39,%r151; .loc 1 3223 35 cvt.u16.u32 %r1094,%r169; add.u16 %r1093,%r1094,48; st.u8 [%r423],%r1093; .loc 1 3214 17 cvt.u32.u64 %r1095,%r151; sub.u32 %r1097,%r1095,%r1269; setp.le.s32 %r1098,%r1097,%r159; @ %r1098 bra $L600; bra $L601; $L585: .loc 1 3225 16 ld.u16 %r169,[%frame+76]; add.u64 %r423,%frame,82; .loc 1 3211 9 add.u64 %r39,%frame,83; $L601: .loc 1 3225 9 cvt.u16.u32 %r1099,%r169; cvt.u64.u16 %r174,%r1099; .loc 1 3229 6 setp.le.s64 %r1100,%r174,4; @ %r1100 bra $L584; .loc 1 3232 10 setp.ne.u64 %r1101,%r174,5; @ %r1101 bra $L602; .loc 1 3234 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1293; call emovo$constprop$0,(%out_arg1,%out_arg2); } .loc 1 3235 8 cvta.const.u64 %r1107,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1107; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r1109,[%value_in]; } .loc 1 3235 7 setp.ne.u32 %r1110,%r1109,0; @ %r1110 bra $L602; .loc 1 3237 7 setp.lt.s32 %r1111,%r159,0; @ %r1111 bra $L584; .loc 1 3237 33 ld.s8 %r176,[%r39+-2]; .loc 1 3237 42 cvt.u16.u32 %r1113,%r176; set.u32.eq.u16 %r1114,%r1113,46; cvt.s64.s32 %r1112,%r1114; .loc 1 3237 22 add.u64 %r1117,%r423,%r1112; .loc 1 3237 18 ld.u8 %r1346,[%r1117+-1]; mov.u16 %r1120,%r1346; and.b16 %r1119,%r1120,1; setp.eq.u16 %r1123,%r1119,0; @ ! %r1123 bra $L736; bra $L584; $L602: .loc 1 3242 7 add.u64 %r183,%r39,-2; ld.u8 %r1346,[%r39+-2]; mov.u16 %r1126,%r1346; and.b16 %r1125,%r1126,127; cvt.u32.u16 %r1127,%r1125; cvt.s32.s8 %r185,%r1127; .loc 1 3245 10 setp.ge.s32 %r1128,%r159,0; @ %r1128 bra $L604; .loc 1 3248 7 mov.u32 %r1129,49; st.u8 [%r39+-2],%r1129; .loc 1 3249 10 add.u32 %r136,%r136,1; .loc 1 3250 4 bra $L584; $L604: .loc 1 3271 7 mov.u32 %r1316,48; $L608: .loc 1 3252 15 cvt.u16.u32 %r1130,%r185; setp.ne.u16 %r1131,%r1130,46; @ %r1131 bra $L605; .loc 1 3255 6 ld.s8 %r188,[%r183+-1]; .loc 1 3256 6 add.u32 %r189,%r188,1; .loc 1 3259 7 setp.gt.s32 %r1132,%r189,57; @ %r1132 bra $L606; .loc 1 3257 9 st.u8 [%r183+-1],%r189; bra $L584; $L606: .loc 1 3261 14 add.u32 %r136,%r136,1; .loc 1 3262 11 mov.u32 %r1133,49; st.u8 [%r183+-1],%r1133; bra $L584; $L605: .loc 1 3267 9 add.u32 %r191,%r185,1; .loc 1 3269 10 setp.gt.s32 %r1134,%r191,57; @ %r1134 bra $L607; .loc 1 3268 12 st.u8 [%r183],%r191; bra $L584; $L607: .loc 1 3271 7 st.u8 [%r183],%r1316; .loc 1 3242 7 add.u64 %r183,%r183,-1; ld.u8 %r1346,[%r183]; mov.u16 %r1138,%r1346; and.b16 %r1137,%r1138,127; cvt.u32.u16 %r1139,%r1137; cvt.s32.s8 %r185,%r1139; bra $L608; $L656: .loc 1 3195 9 add.u64 %r423,%frame,83; $L584: .loc 1 3282 3 st.u32 [%stack],%r136; cvta.const.u64 %r1141,$LC3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r423; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1141; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1142,[%value_in]; } $L487: .loc 1 3285 15 st.u32 [%frame+4],%r389; .loc 1 3286 17 st.u32 [%frame+16],%r136; .loc 1 532 6 ld.u16 %r1145,[%frame+312]; and.b16 %r1144,%r1145,32767; setp.ne.u16 %r1146,%r1144,32767; @ %r1146 bra $L609; mov.u64 %r218,%r1298; add.u64 %r204,%frame,312; mov.u64 %r214,%r218; $L611: .loc 1 558 10 ld.u16 %r1147,[%r214]; setp.ne.u16 %r1148,%r1147,0; @ %r1148 bra $L610; .loc 1 556 17 add.u64 %r214,%r214,2; setp.ne.u64 %r1149,%r204,%r214; @ %r1149 bra $L611; bra $L612; $L610: .loc 1 558 10 ld.u16 %r1150,[%r218]; setp.ne.u16 %r1151,%r1150,0; @ %r1151 bra $L612; .loc 1 556 17 add.u64 %r218,%r218,2; setp.ne.u64 %r1152,%r204,%r218; @ %r1152 bra $L610; bra $L609; $L612: .loc 1 2848 14 mov.u32 %r1153,9999; st.u32 [%r511],%r1153; .loc 1 2849 7 bra $L613; $L609: .loc 1 2851 26 add.u32 %r1154,%r136,1; .loc 1 2851 10 st.u32 [%r511],%r1154; .loc 1 2857 10 ld.s8 %r31,[%frame+80]; .loc 1 2857 13 setp.eq.u32 %r1155,%r31,0; @ %r1155 bra $L657; .loc 1 2856 5 mov.u64 %r63,%r1276; $L618: .loc 1 2859 10 cvt.u16.u32 %r1156,%r31; setp.ne.u16 %r1157,%r1156,46; @ %r1157 bra $L615; .loc 1 2868 13 ld.u8 %r1159,[%r63]; cvt.s16.s8 %r1158,%r1159; setp.ne.u16 %r1160,%r1158,0; @ %r1160 bra $L616; bra $L617; $L615: .loc 1 2861 7 add.u64 %r63,%r63,1; .loc 1 2857 10 ld.s8 %r31,[%r63]; .loc 1 2857 13 setp.ne.u32 %r1161,%r31,0; @ %r1161 bra $L618; bra $L617; $L616: add.u64 %r1275,%r63,1; mov.u64 %r228,%r1275; $L619: .loc 1 2870 10 ld.s8 %r32,[%r228]; cvt.u32.u32 %r1162,%r32; st.u8 [%r63],%r1162; .loc 1 2871 7 mov.u64 %r63,%r1275; .loc 1 2868 13 add.u64 %r228,%r228,1; setp.ne.u32 %r1163,%r32,0; @ ! %r1163 bra $L617; add.u64 %r1275,%r1275,1; bra $L619; $L620: .loc 1 2878 5 add.u64 %r63,%r63,-1; .loc 1 2877 20 ld.u8 %r1166,[%r63]; cvt.s16.s8 %r1165,%r1166; set.u32.ne.u16 %r1167,%r1165,69; neg.s32 %r1168,%r1167; mov.u32 %r1164,%r1168; set.u32.gt.u64 %r1171,%r63,%r1276; neg.s32 %r1172,%r1171; mov.u32 %r1170,%r1172; cvt.u16.u8 %r1346,%r1164; mov.u16 %r1174,%r1346; cvt.u16.u8 %r1346,%r1170; mov.u16 %r1175,%r1346; and.b16 %r1173,%r1174,%r1175; cvt.u32.u16 %r1176,%r1173; cvt.u16.u8 %r1177,%r1176; setp.ne.u16 %r1178,%r1177,0; @ %r1178 bra $L620; bra $L614; $L617: setp.gt.u64 %r1180,%r63,%r1276; @ %r1180 bra $L620; bra $L614; $L657: .loc 1 2856 5 mov.u64 %r63,%r1276; $L614: .loc 1 2879 6 mov.u32 %r1181,0; st.u8 [%r63],%r1181; $L613: .loc 1 2885 10 ld.s8 %r64,[%frame+80]; .loc 1 2885 20 cvt.u16.u32 %r1183,%r64; set.u32.eq.u16 %r1184,%r1183,32; neg.s32 %r1185,%r1184; mov.u32 %r1182,%r1185; set.u32.eq.u16 %r1188,%r1183,45; neg.s32 %r1189,%r1188; mov.u32 %r1186,%r1189; cvt.u16.u8 %r1346,%r1182; mov.u16 %r1191,%r1346; cvt.u16.u8 %r1346,%r1186; mov.u16 %r1192,%r1346; or.b16 %r1190,%r1191,%r1192; cvt.u32.u16 %r1193,%r1190; cvt.u16.u8 %r1194,%r1193; setp.eq.u16 %r1195,%r1194,0; @ %r1195 bra $L658; .loc 1 2884 5 mov.u64 %r68,%r1276; $L622: .loc 1 2886 5 add.u64 %r68,%r68,1; .loc 1 2885 10 ld.s8 %r64,[%r68]; .loc 1 2885 20 cvt.u16.u32 %r1197,%r64; set.u32.eq.u16 %r1198,%r1197,32; neg.s32 %r1199,%r1198; mov.u32 %r1196,%r1199; set.u32.eq.u16 %r1202,%r1197,45; neg.s32 %r1203,%r1202; mov.u32 %r1200,%r1203; cvt.u16.u8 %r1346,%r1196; mov.u16 %r1205,%r1346; cvt.u16.u8 %r1346,%r1200; mov.u16 %r1206,%r1346; or.b16 %r1204,%r1205,%r1206; cvt.u32.u16 %r1207,%r1204; cvt.u16.u8 %r1208,%r1207; setp.ne.u16 %r1209,%r1208,0; @ %r1209 bra $L622; bra $L621; $L658: .loc 1 2884 5 mov.u64 %r68,%r1276; $L621: mov.u64 %r236,%r1276; $L624: mov.u64 %r65,%r236; .loc 1 2890 20 add.u64 %r68,%r68,1; .loc 1 2890 16 cvt.u32.u32 %r1210,%r64; st.u8 [%r236],%r1210; .loc 1 2890 24 add.u64 %r236,%r236,1; setp.eq.u32 %r1211,%r64,0; @ %r1211 bra $L623; .loc 1 2890 18 ld.s8 %r64,[%r68]; bra $L624; $L623: .loc 1 2902 10 ld.s8 %r137,[%r65+-1]; .loc 1 2895 6 setp.eq.u32 %r1212,%r509,2; @ %r1212 bra $L625; max.s32 %r57,%r53,%r136; .loc 1 2902 26 cvt.u16.u32 %r1213,%r137; setp.eq.u16 %r1214,%r1213,48; @ %r1214 bra $L626; bra $L627; $L660: mov.u64 %r23,1; $L629: add.u64 %r276,%r65,-2; .loc 1 2903 12 mov.u32 %r1215,0; $L630: add.u64 %r65,%r65,-1; st.u8 [%r65],%r1215; .loc 1 2902 26 ld.u8 %r1217,[%r276]; cvt.s16.s8 %r1216,%r1217; setp.eq.u16 %r1218,%r1216,48; @ %r1218 bra $L628; bra $L627; $L626: .loc 1 2902 43 cvt.s64.s32 %r23,%r57; .loc 1 2902 33 sub.u64 %r1220,%r65,%r1276; .loc 1 2902 26 setp.lt.s64 %r1221,%r23,%r1220; @ %r1221 bra $L629; bra $L627; $L628: add.u64 %r276,%r276,-1; .loc 1 2902 33 sub.u64 %r1223,%r65,%r1276; .loc 1 2902 26 setp.lt.s64 %r1224,%r23,%r1223; @ %r1224 bra $L630; $L627: .loc 1 2907 6 setp.ne.u32 %r1225,%r509,3; @ %r1225 bra $L631; .loc 1 2907 30 add.u32 %r1226,%r53,%r136; .loc 1 2907 17 setp.ge.s32 %r1227,%r1226,0; @ %r1227 bra $L632; .loc 1 2910 10 mov.u32 %r1228,0; st.u8 [%frame+80],%r1228; .loc 1 2911 14 mov.u32 %r1229,0; st.u32 [%r511],%r1229; .loc 1 2909 9 mov.u64 %r65,%r1276; bra $L633; $L638: .loc 1 2923 33 mov.u32 %r1230,0; st.u32 [%r507+104],%r1230; .loc 1 2924 48 cvt.s64.s32 %r344,%r56; setp.le.u64 %r1231,%r344,31; @ %r1231 bra $L659; mov.u32 %r217,1; .loc 1 2922 5 mov.u32 %r67,4; $L635: .loc 1 2925 29 mov.u32 %r45,%r217; .loc 1 2924 56 add.u32 %r67,%r67,%r67; .loc 1 2924 48 add.u32 %r217,%r45,1; .loc 1 2924 44 cvt.s64.s32 %r1233,%r67; add.u64 %r1234,%r1233,28; .loc 1 2924 48 setp.le.u64 %r1235,%r1234,%r344; @ %r1235 bra $L635; st.u32 [%r507+104],%r45; bra $L634; $L659: mov.u32 %r45,%r1230; $L634: .loc 1 2926 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r507; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r45; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r1238,[%value_in]; } setp.ne.u64 %r1239,%r1238,0; @ %r1239 bra $L636; cvta.const.u64 %r1243,$LC4; mov.u32 %r1241,2926; cvta.const.u64 %r1240,$LC5; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1240; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1241; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1238; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r1243; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L636: .loc 1 2926 26 st.u64 [%r507+96],%r1238; .loc 1 2930 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1238; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1276; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r1247,[%value_in]; } .loc 1 2932 6 setp.eq.u64 %r1248,%r513,0; @ %r1248 bra $L468; .loc 1 2933 24 sub.u64 %r1250,%r65,%r1276; .loc 1 2933 19 add.u64 %r1251,%r1238,%r1250; .loc 1 2933 10 st.u64 [%r513],%r1251; .loc 1 2935 10 bra $L468; $L632: .loc 1 2918 16 ld.u32 %r1253,[%r511]; add.u32 %r510,%r510,%r1253; $L633: .loc 1 2918 7 add.u32 %r56,%r510,3; bra $L638; $L631: .loc 1 2920 7 add.u32 %r56,%r510,9; bra $L638; $L482: .loc 1 3028 6 cvt.u16.u32 %r1254,%r83; setp.eq.u16 %r1255,%r1254,32767; @ ! %r1255 bra $L737; bra $L639; $L476: .loc 1 2995 7 add.u64 %r1276,%frame,80; cvta.const.u64 %r1257,$LC6; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1257; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1259,[%value_in]; } .loc 1 2996 13 mov.u32 %r136,9999; .loc 1 2997 7 bra $L487; $L625: .loc 1 2902 26 cvt.u16.u32 %r1261,%r137; setp.eq.u16 %r1262,%r1261,48; @ %r1262 bra $L641; bra $L631; $L736: .loc 1 3242 7 add.u64 %r183,%r39,-2; and.b16 %r1263,%r1113,127; cvt.u32.u16 %r1265,%r1263; cvt.s32.s8 %r185,%r1265; bra $L604; $L641: .loc 1 2902 33 sub.u64 %r1267,%r65,%r1276; .loc 1 2902 26 setp.gt.s64 %r1268,%r1267,1; @ %r1268 bra $L660; bra $L631; $L468: .loc 1 2936 1 mov.u64 %value,%r1238; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ldcheck .visible .func (.param .u32 %value_out) _ldcheck (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; .reg .f64 %r31; .reg .u64 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .pred %r37; .reg .u16 %r38; .reg .pred %r39; .reg .pred %r40; mov.u64 %r30,%ar0; .loc 1 2954 8 ld.f64 %r31,[%r30]; st.f64 [%frame+32],%r31; .loc 1 2958 3 add.u64 %r34,%frame,32; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call e53toe$isra$0,(%out_arg1,%out_arg2); } .loc 1 2965 6 ld.u16 %r36,[%frame+18]; and.b16 %r35,%r36,32767; setp.ne.u16 %r37,%r35,32767; @ %r37 bra $L741; mov.u64 %r25,%frame; add.u64 %r26,%frame,18; $L740: .loc 1 558 10 ld.u16 %r38,[%r25]; setp.ne.u16 %r39,%r38,0; @ %r39 bra $L742; .loc 1 556 17 add.u64 %r25,%r25,2; setp.ne.u64 %r40,%r25,%r26; @ %r40 bra $L740; .loc 1 2971 14 mov.u32 %r29,2; bra $L738; $L741: .loc 1 2974 12 mov.u32 %r29,0; bra $L738; $L742: .loc 1 2969 9 mov.u32 %r29,1; $L738: .loc 1 2975 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-linkr.o/ 0 0 0 644 1510 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _link_r .visible .func (.param .u32 %value_out) _link_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/reent/linkr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: link .extern .func (.param .u32 %value_out) link (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _link_r .visible .func (.param .u32 %value_out) _link_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 52 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 53 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),link,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 53 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 53 47 ld.global.u32 %r22,[errno]; .loc 1 53 38 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 54 17 st.u32 [%r24],%r22; $L1: .loc 1 56 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-llabs.o/ 0 0 0 644 527 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llabs .visible .func (.param .u64 %value_out) llabs (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/llabs.c" // BEGIN GLOBAL FUNCTION DEF: llabs .visible .func (.param .u64 %value_out) llabs (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 59 21 abs.s64 %value,%r23; .loc 1 60 1 st.param.u64 [%value_out],%value; ret; } lib_a-lldiv.o/ 0 0 0 644 1024 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lldiv .visible .func lldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/lldiv.c" // BEGIN GLOBAL FUNCTION DEF: lldiv .visible .func lldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r31; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 101 22 div.s64 %r22,%r27,%r28; .loc 1 102 21 rem.s64 %r23,%r27,%r28; .loc 1 103 17 not.b64 %r29,%r27; and.b64 %r30,%r29,%r23; setp.ge.s64 %r31,%r30,0; @ %r31 bra $L2; .loc 1 104 14 add.u64 %r22,%r22,1; .loc 1 105 14 sub.u64 %r23,%r23,%r28; $L2: .loc 1 107 9 st.u64 [%r26],%r22; st.u64 [%r26+8],%r23; .loc 1 108 1 ret; } lib_a-locale.o/ 0 0 0 644 5568 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _setlocale_r .visible .func (.param .u64 %value_out) _setlocale_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/locale/locale.c" // BEGIN GLOBAL FUNCTION DECL: __locale_mb_cur_max .visible .func (.param .u32 %value_out) __locale_mb_cur_max; // BEGIN GLOBAL FUNCTION DECL: setlocale .visible .func (.param .u64 %value_out) setlocale (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_b .extern .const .align 1 .u8 _ctype_b[]; // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ascii_wctomb .extern .func (.param .u32 %value_out) __ascii_wctomb (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ascii_mbtowc .extern .func (.param .u32 %value_out) __ascii_mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[1] = {0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {46,0 }; // BEGIN GLOBAL VAR DEF: __global_locale .visible .global .align 8 .u64 __global_locale[53] = {67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,__ascii_wctomb,__ascii_mbtowc,0,generic(_ctype_b) + 127,generic($LC3),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),9187201950435737471,140185576636287,20628226808283137,0,0,0,20628226808283136,0,0,0,0 }; // BEGIN GLOBAL VAR DEF: _PathLocale .visible .global .align 8 .u64 _PathLocale[1]; // BEGIN GLOBAL FUNCTION DEF: _setlocale_r .visible .func (.param .u64 %value_out) _setlocale_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r28; .reg .pred %r29; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r36; .reg .pred %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u64 %r43; mov.u64 %r28,%ar2; .loc 1 298 6 setp.ne.u64 %r29,%r28,0; @ %r29 bra $L2; $L4: .loc 1 304 10 cvta.const.u64 %r25,$LC0; bra $L1; $L2: .loc 1 300 11 cvta.const.u64 %r31,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r32,[%value_in]; } .loc 1 300 10 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 300 39 cvta.const.u64 %r43,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r36,[%value_in]; } .loc 1 300 36 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L4; .loc 1 301 7 cvta.const.u64 %r39,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r40,[%value_in]; } .loc 1 301 4 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L4; .loc 1 302 16 mov.u64 %r25,0; $L1: .loc 1 438 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_mb_cur_max .visible .func (.param .u32 %value_out) __locale_mb_cur_max { .reg .u32 %value; .reg .u64 %r25; .loc 1 981 45 cvta.global.u64 %r25,__global_locale; ld.s8 %value,[%r25+352]; .loc 1 983 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: setlocale .visible .func (.param .u64 %value_out) setlocale (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r42; mov.u64 %r27,%ar1; .loc 1 298 6 setp.ne.u64 %r28,%r27,0; @ %r28 bra $L16; $L18: .loc 1 304 10 cvta.const.u64 %r25,$LC0; bra $L15; $L16: .loc 1 300 11 cvta.const.u64 %r30,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r31,[%value_in]; } .loc 1 300 10 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L18; .loc 1 300 39 cvta.const.u64 %r42,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } .loc 1 300 36 setp.eq.u32 %r36,%r35,0; @ %r36 bra $L18; .loc 1 301 7 cvta.const.u64 %r38,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } .loc 1 301 4 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L18; .loc 1 302 16 mov.u64 %r25,0; $L15: .loc 1 1006 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } /538 0 0 0 644 1397 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __localeconv_l .visible .func (.param .u64 %value_out) __localeconv_l (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/locale/localeconv.c" // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .visible .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: localeconv .visible .func (.param .u64 %value_out) localeconv; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DEF: __localeconv_l .visible .func (.param .u64 %value_out) __localeconv_l (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 8 17 add.u64 %value,%r23,256; .loc 1 51 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _localeconv_r .visible .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 59 10 cvta.global.u64 %value,__global_locale+256; .loc 1 60 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: localeconv .visible .func (.param .u64 %value_out) localeconv { .reg .u64 %value; .loc 1 66 10 cvta.global.u64 %value,__global_locale+256; .loc 1 67 1 st.param.u64 [%value_out],%value; ret; } lib_a-lrand48.o/0 0 0 644 1994 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _lrand48_r .visible .func (.param .u64 %value_out) _lrand48_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/lrand48.c" // BEGIN GLOBAL FUNCTION DECL: lrand48 .visible .func (.param .u64 %value_out) lrand48; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _lrand48_r .visible .func (.param .u64 %value_out) _lrand48_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r31; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u64 %r40; mov.u64 %r31,%ar0; .loc 1 20 17 add.u64 %r34,%r31,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r36,[%r31+244]; .loc 1 21 50 shl.b64 %r37,%r36,15; .loc 1 22 39 ld.u16 %r39,[%r31+242]; shr.u16 %r38,%r39,1; cvt.u64.u16 %r40,%r38; .loc 1 21 57 add.u64 %value,%r37,%r40; .loc 1 23 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: lrand48 .visible .func (.param .u64 %value_out) lrand48 { .reg .u64 %value; .reg .u64 %r22; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u64 %r40; .loc 1 29 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 20 17 add.u64 %r34,%r22,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r36,[%r22+244]; .loc 1 21 50 shl.b64 %r37,%r36,15; .loc 1 22 39 ld.u16 %r39,[%r22+242]; shr.u16 %r38,%r39,1; cvt.u64.u16 %r40,%r38; .loc 1 21 57 add.u64 %value,%r37,%r40; .loc 1 30 1 st.param.u64 [%value_out],%value; ret; } lib_a-lseekr.o/ 0 0 0 644 1725 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _lseek_r .visible .func (.param .u64 %value_out) _lseek_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/reent/lseekr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: lseek .extern .func (.param .u64 %value_out) lseek (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _lseek_r .visible .func (.param .u64 %value_out) _lseek_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r32; .reg .pred %r33; .reg .pred %r34; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; mov.u32 %r27,%ar3; .loc 1 48 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 49 14 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; call (%value_in),lseek,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } .loc 1 49 6 setp.ne.u64 %r33,%r32,-1; @ %r33 bra $L1; .loc 1 49 64 ld.global.u32 %r22,[errno]; .loc 1 49 55 setp.eq.u32 %r34,%r22,0; @ %r34 bra $L1; .loc 1 50 17 st.u32 [%r24],%r22; $L1: .loc 1 52 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-makebuf.o/0 0 0 644 6682 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __smakebuf_r .visible .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/makebuf.c" // BEGIN GLOBAL FUNCTION DECL: __swhatbuf_r .visible .func (.param .u32 %value_out) __swhatbuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _fstat_r .extern .func (.param .u32 %value_out) _fstat_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cleanup_r .extern .func _cleanup_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _isatty_r .extern .func (.param .u32 %value_out) _isatty_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __smakebuf_r .visible .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[112]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u64 %r23; .reg .u64 %r27; .reg .u32 %r29; .reg .u32 %r41; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .pred %r58; .reg .u32 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .u64 %r74; .reg .pred %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .pred %r78; .reg .u16 %r79; .reg .u16 %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .pred %r87; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; mov.u64 %r51,%ar0; mov.u64 %r52,%ar1; .loc 1 46 9 ld.s16 %r22,[%r52+16]; .loc 1 46 6 cvt.u16.u32 %r54,%r22; and.b16 %r53,%r54,2; setp.eq.u16 %r55,%r53,0; @ %r55 bra $L2; .loc 1 48 32 add.u64 %r23,%r52,119; .loc 1 48 30 st.u64 [%r52],%r23; .loc 1 48 21 st.u64 [%r52+24],%r23; .loc 1 49 21 mov.u32 %r56,1; st.u32 [%r52+32],%r56; bra $L1; $L2: .loc 1 96 9 ld.s16 %r41,[%r52+18]; .loc 1 96 6 cvt.u16.u32 %r57,%r41; setp.lt.s16 %r58,%r57,0; @ %r58 bra $L4; .loc 1 96 24 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_fstat_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r62,[%value_in]; } .loc 1 96 21 setp.ge.s32 %r63,%r62,0; @ %r63 bra $L5; ld.s16 %r22,[%r52+16]; $L4: .loc 1 101 10 cvt.u16.u32 %r65,%r22; and.b16 %r64,%r65,128; setp.ne.u16 %r66,%r64,0; @ %r66 bra $L10; .loc 1 99 19 mov.u32 %r47,0; .loc 1 104 18 mov.u64 %r50,1024; .loc 1 101 10 mov.u32 %r48,%r47; bra $L6; $L5: .loc 1 109 17 ld.u32 %r68,[%frame+4]; and.b32 %r67,%r68,61440; set.u32.eq.u32 %r70,%r67,8192; neg.s32 %r47,%r70; .loc 1 123 12 mov.u64 %r50,1024; .loc 1 124 10 mov.u32 %r48,2048; bra $L6; $L10: .loc 1 99 19 mov.u32 %r47,0; .loc 1 102 18 mov.u64 %r50,64; mov.u32 %r48,%r47; $L6: .loc 1 53 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r50; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r74,[%value_in]; } .loc 1 53 6 setp.ne.u64 %r75,%r74,0; @ %r75 bra $L7; .loc 1 55 10 ld.u16 %r77,[%r52+16]; and.b16 %r76,%r77,512; setp.ne.u16 %r78,%r76,0; @ %r78 bra $L1; .loc 1 57 15 and.b16 %r79,%r77,-4; or.b16 %r81,%r79,2; st.u16 [%r52+16],%r81; .loc 1 58 29 add.u64 %r27,%r52,119; .loc 1 58 27 st.u64 [%r52],%r27; .loc 1 58 18 st.u64 [%r52+24],%r27; .loc 1 59 18 mov.u32 %r82,1; st.u32 [%r52+32],%r82; bra $L1; $L7: .loc 1 64 22 mov.u64 %r83,_cleanup_r; st.u64 [%r51+88],%r83; .loc 1 65 18 ld.u16 %r85,[%r52+16]; or.b16 %r84,%r85,128; cvt.s32.s16 %r29,%r84; st.u16 [%r52+16],%r84; .loc 1 66 30 st.u64 [%r52],%r74; .loc 1 66 21 st.u64 [%r52+24],%r74; .loc 1 67 21 st.u32 [%r52+32],%r50; .loc 1 68 10 setp.eq.u32 %r87,%r47,0; @ %r87 bra $L8; .loc 1 68 25 ld.s16 %r90,[%r52+18]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r90; call (%value_in),_isatty_r,(%out_arg1,%out_arg2); ld.param.u32 %r91,[%value_in]; } .loc 1 68 22 setp.ne.u32 %r92,%r91,0; @ %r92 bra $L9; .loc 1 69 18 ld.s16 %r29,[%r52+16]; bra $L8; $L9: .loc 1 69 13 ld.u16 %r94,[%r52+16]; and.b16 %r93,%r94,-4; or.b16 %r95,%r93,1; cvt.s32.s16 %r29,%r95; $L8: .loc 1 70 18 cvt.u16.u32 %r96,%r48; cvt.u16.u32 %r98,%r29; or.b16 %r97,%r96,%r98; st.u16 [%r52+16],%r97; $L1: .loc 1 72 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __swhatbuf_r .visible .func (.param .u32 %value_out) __swhatbuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[112]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r25; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u16 %r37; .reg .pred %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .pred %r41; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; mov.u64 %r35,%ar2; mov.u64 %r36,%ar3; .loc 1 96 9 ld.s16 %r22,[%r34+18]; .loc 1 96 6 cvt.u16.u32 %r37,%r22; setp.ge.s16 %r38,%r37,0; @ %r38 bra $L15; $L17: .loc 1 101 10 ld.u16 %r40,[%r34+16]; and.b16 %r39,%r40,128; setp.eq.u16 %r41,%r39,0; @ %r41 bra $L18; mov.u32 %r25,0; mov.u64 %r31,64; mov.u32 %r32,%r25; bra $L16; $L15: .loc 1 96 24 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r22; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_fstat_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r45,[%value_in]; } .loc 1 96 21 setp.lt.s32 %r46,%r45,0; @ %r46 bra $L17; .loc 1 109 17 ld.u32 %r48,[%frame+4]; and.b32 %r47,%r48,61440; set.u32.eq.u32 %r50,%r47,8192; neg.s32 %r25,%r50; .loc 1 124 10 mov.u64 %r31,1024; mov.u32 %r32,2048; bra $L16; $L18: mov.u32 %r25,0; mov.u64 %r31,1024; mov.u32 %r32,%r25; $L16: .loc 1 99 19 st.u32 [%r36],%r25; .loc 1 104 18 st.u64 [%r35],%r31; .loc 1 125 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /558 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-malloc.o/ 0 0 0 644 1086 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .visible .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/machine/nvptx/malloc.c" // BEGIN GLOBAL FUNCTION DECL: malloc .extern .func (.param .u64 %value_out) malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __nvptx_malloc .visible .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; mov.u64 %r25,%ar0; .loc 1 24 20 add.u64 %r27,%r25,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),malloc,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 25 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L3; .loc 1 26 6 add.u64 %r24,%r28,8; .loc 1 26 22 st.u64 [%r28],%r25; bra $L1; $L3: .loc 1 24 20 mov.u64 %r24,%r28; $L1: .loc 1 29 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-mallocr.o/0 0 0 644 1489 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _malloc_r .visible .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/machine/nvptx/mallocr.c" // BEGIN GLOBAL FUNCTION DECL: _free_r .visible .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _malloc_r .visible .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar1; .loc 1 20 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 21 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _free_r .visible .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; mov.u64 %r23,%ar1; .loc 1 25 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __nvptx_free,(%out_arg1); } .loc 1 26 1 ret; } /577 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-mblen.o/ 0 0 0 644 1036 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mblen .visible .func (.param .u32 %value_out) mblen (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/mblen.c" // BEGIN GLOBAL FUNCTION DEF: mblen .visible .func (.param .u32 %value_out) mblen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .pred %r26; .reg .u16 %r27; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 66 6 setp.eq.u64 %r26,%r24,0; @ %r26 bra $L3; .loc 1 66 17 ld.u8 %r28,[%r24]; cvt.s16.s8 %r27,%r28; setp.eq.u16 %r29,%r27,0; @ %r29 bra $L4; .loc 1 68 6 setp.ne.u64 %r30,%r25,0; .loc 1 69 12 selp.u32 %r23,1,-1,%r30; bra $L1; $L3: .loc 1 67 12 mov.u32 %r23,0; bra $L1; $L4: mov.u32 %r23,0; $L1: .loc 1 72 1 mov.u32 %value,%r23; st.param.u32 [%value_out],%value; ret; } lib_a-mblen_r.o/0 0 0 644 1224 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mblen_r .visible .func (.param .u32 %value_out) _mblen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/mblen_r.c" // BEGIN GLOBAL FUNCTION DEF: _mblen_r .visible .func (.param .u32 %value_out) _mblen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r28; .reg .u16 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 61 6 setp.eq.u64 %r28,%r25,0; @ %r28 bra $L3; .loc 1 61 17 ld.u8 %r30,[%r25]; cvt.s16.s8 %r29,%r30; setp.eq.u16 %r31,%r29,0; @ %r31 bra $L4; .loc 1 63 6 setp.ne.u64 %r32,%r26,0; .loc 1 64 12 selp.u32 %r23,1,-1,%r32; bra $L1; $L3: .loc 1 62 12 mov.u32 %r23,0; bra $L1; $L4: mov.u32 %r23,0; $L1: .loc 1 67 1 mov.u32 %value,%r23; st.param.u32 [%value_out],%value; ret; } /597 0 0 0 644 1395 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mbstowcs .visible .func (.param .u64 %value_out) mbstowcs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/mbstowcs.c" // BEGIN GLOBAL FUNCTION DEF: mbstowcs .visible .func (.param .u64 %value_out) mbstowcs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r35; .reg .pred %r36; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 63 6 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L2; mov.u64 %r25,%r31; mov.u64 %r26,%r32; add.u64 %r29,%r26,%r33; .loc 1 61 7 mov.u32 %r24,0; $L4: .loc 1 65 22 ld.s8 %r23,[%r26]; .loc 1 65 20 st.u32 [%r25],%r23; .loc 1 65 10 setp.ne.u32 %r35,%r23,0; @ %r35 bra $L3; .loc 1 71 10 cvt.s64.s32 %r33,%r24; bra $L2; $L3: .loc 1 67 12 add.u32 %r24,%r24,1; .loc 1 68 18 add.u64 %r25,%r25,4; add.u64 %r26,%r26,1; setp.ne.u64 %r36,%r26,%r29; @ %r36 bra $L4; .loc 1 71 10 cvt.s64.s32 %r33,%r24; $L2: .loc 1 73 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /615 0 0 0 644 2933 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mbstowcs_r .visible .func (.param .u64 %value_out) _mbstowcs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/mbstowcs_r.c" // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: __locale_mb_cur_max .extern .func (.param .u32 %value_out) __locale_mb_cur_max; // BEGIN GLOBAL FUNCTION DEF: _mbstowcs_r .visible .func (.param .u64 %value_out) _mbstowcs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r22; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u32 %r36; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .u64 %r51; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; mov.u64 %r32,%ar4; .loc 1 16 6 setp.eq.u64 %r33,%r29,0; @ %r33 bra $L7; .loc 1 18 12 setp.eq.u64 %r34,%r31,0; @ ! %r34 bra $L2; bra $L8; $L7: .loc 1 17 7 mov.u64 %r31,1; $L2: mov.u64 %r27,0; cvta.global.u64 %r51,__global_locale; $L6: .loc 1 20 15 ld.u64 %r22,[%r51+232]; .loc 1 20 37 { .param .u32 %value_in; call (%value_in),__locale_mb_cur_max; ld.param.u32 %r36,[%value_in]; } .loc 1 20 15 cvt.s64.s32 %r42,%r36; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u64 %in_ar3,.param .u64 %in_ar4); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r42; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r32; call (%value_in),%r22,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5),$LCT0; ld.param.u32 %r43,[%value_in]; } .loc 1 21 10 setp.ge.s32 %r44,%r43,0; @ %r44 bra $L4; .loc 1 23 19 mov.u32 %r45,0; st.u32 [%r32],%r45; .loc 1 24 11 mov.u64 %r27,-1; bra $L1; $L4: .loc 1 26 15 setp.eq.u32 %r46,%r43,0; @ %r46 bra $L1; .loc 1 28 9 cvt.s64.s32 %r47,%r43; add.u64 %r30,%r30,%r47; .loc 1 29 7 add.u64 %r27,%r27,1; .loc 1 30 10 setp.eq.u64 %r48,%r29,0; @ %r48 bra $L6; .loc 1 32 4 add.u64 %r29,%r29,4; .loc 1 33 4 add.u64 %r31,%r31,-1; .loc 1 18 12 setp.eq.u64 %r49,%r31,0; @ ! %r49 bra $L6; bra $L1; $L8: mov.u64 %r27,%r31; $L1: .loc 1 37 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-mbtowc.o/ 0 0 0 644 1282 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mbtowc .visible .func (.param .u32 %value_out) mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/mbtowc.c" // BEGIN GLOBAL FUNCTION DEF: mbtowc .visible .func (.param .u32 %value_out) mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .u16 %r33; .reg .u32 %r34; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 74 6 setp.eq.u64 %r29,%r27,0; @ %r29 bra $L4; .loc 1 76 6 setp.eq.u64 %r30,%r28,0; @ %r30 bra $L5; .loc 1 79 22 ld.s8 %r24,[%r27]; .loc 1 78 6 setp.eq.u64 %r31,%r26,0; @ %r31 bra $L3; .loc 1 79 12 st.u32 [%r26],%r24; $L3: .loc 1 80 14 cvt.u16.u32 %r33,%r24; set.u32.ne.u16 %r34,%r33,0; neg.s32 %r25,%r34; bra $L1; $L4: .loc 1 75 12 mov.u32 %r25,0; bra $L1; $L5: .loc 1 77 12 mov.u32 %r25,-1; $L1: .loc 1 82 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } /635 0 0 0 644 3249 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mbtowc_r .visible .func (.param .u32 %value_out) _mbtowc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/mbtowc_r.c" // BEGIN GLOBAL FUNCTION DECL: __ascii_mbtowc .visible .func (.param .u32 %value_out) __ascii_mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DEF: _mbtowc_r .visible .func (.param .u32 %value_out) _mbtowc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; mov.u64 %r28,%ar4; .loc 1 17 10 cvta.global.u64 %r34,__global_locale; ld.u64 %r36,[%r34+232]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u64 %in_ar3,.param .u64 %in_ar4); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r28; call (%value_in),%r36,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5),$LCT0; ld.param.u32 %r35,[%value_in]; } .loc 1 18 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ascii_mbtowc .visible .func (.param .u32 %value_out) __ascii_mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r32; .reg .pred %r33; .reg .pred %r34; .reg .u32 %r35; .reg .u16 %r37; .reg .u32 %r38; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; .loc 1 30 6 setp.ne.u64 %r32,%r28,0; .loc 1 31 9 selp.u64 %r28,%r28,%frame,%r32; .loc 1 33 6 setp.eq.u64 %r33,%r29,0; @ %r33 bra $L5; .loc 1 36 6 setp.eq.u64 %r34,%r30,0; @ %r34 bra $L6; .loc 1 47 10 ld.u8 %r35,[%r29]; st.u32 [%r28],%r35; .loc 1 49 6 ld.u8 %r37,[%r29]; set.u32.ne.u16 %r38,%r37,0; neg.s32 %r26,%r38; bra $L2; $L5: .loc 1 34 12 mov.u32 %r26,0; bra $L2; $L6: .loc 1 37 12 mov.u32 %r26,-2; $L2: .loc 1 53 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-memchr.o/ 0 0 0 644 3120 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memchr .visible .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/memchr.c" // BEGIN GLOBAL FUNCTION DEF: memchr .visible .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .pred %r72; .reg .pred %r73; mov.u64 %r46,%ar0; mov.u32 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 70 17 mov.u32 %r49,%r47; cvt.u32.u8 %r39,%r49; .loc 1 77 10 and.b64 %r50,%r46,7; setp.eq.u64 %r51,%r50,0; @ %r51 bra $L10; .loc 1 79 18 add.u64 %r24,%r48,-1; .loc 1 79 10 setp.eq.u64 %r52,%r48,0; @ %r52 bra $L11; .loc 1 81 10 cvt.u16.u32 %r55,%r39; bra $L4; $L5: .loc 1 79 18 add.u64 %r24,%r24,-1; .loc 1 79 10 setp.eq.u64 %r53,%r24,-1; @ %r53 bra $L12; $L4: .loc 1 81 10 ld.u8 %r54,[%r46]; setp.eq.u16 %r56,%r54,%r55; @ %r56 bra $L13; .loc 1 83 10 add.u64 %r46,%r46,1; .loc 1 77 10 and.b64 %r57,%r46,7; setp.ne.u64 %r58,%r57,0; @ %r58 bra $L5; bra $L2; $L10: mov.u64 %r24,%r48; $L2: .loc 1 86 6 setp.le.u64 %r59,%r24,7; @ %r59 bra $L6; and.b32 %r38,%r47,255; .loc 1 97 16 shl.b32 %r60,%r38,8; .loc 1 97 21 or.b32 %r61,%r60,%r38; .loc 1 97 12 cvt.s64.s32 %r40,%r61; .loc 1 98 19 shl.b64 %r27,%r40,16; .loc 1 98 12 or.b64 %r41,%r27,%r40; .loc 1 100 22 shl.b64 %r28,%r41,32; .loc 1 100 14 or.b64 %r42,%r28,%r41; $L8: .loc 1 104 15 ld.u64 %r62,[%r46]; xor.b64 %r30,%r42,%r62; add.u64 %r63,%r30,-72340172838076673; not.b64 %r64,%r30; and.b64 %r65,%r63,%r64; and.b64 %r66,%r65,-9187201950435737472; .loc 1 104 14 setp.ne.u64 %r67,%r66,0; @ %r67 bra $L7; .loc 1 106 18 add.u64 %r24,%r24,-8; .loc 1 107 15 add.u64 %r46,%r46,8; .loc 1 102 21 setp.gt.u64 %r68,%r24,7; @ %r68 bra $L8; $L6: .loc 1 118 10 setp.eq.u64 %r69,%r24,0; @ %r69 bra $L14; $L7: add.u64 %r37,%r46,%r24; .loc 1 77 10 mov.u64 %r45,%r46; .loc 1 120 10 cvt.u16.u32 %r71,%r39; $L9: ld.u8 %r70,[%r45]; setp.eq.u16 %r72,%r70,%r71; @ %r72 bra $L1; .loc 1 122 10 add.u64 %r45,%r45,1; .loc 1 118 10 setp.ne.u64 %r73,%r37,%r45; @ %r73 bra $L9; .loc 1 80 16 mov.u64 %r45,0; bra $L1; $L11: mov.u64 %r45,%r48; bra $L1; $L12: mov.u64 %r45,0; bra $L1; $L13: mov.u64 %r45,%r46; bra $L1; $L14: mov.u64 %r45,%r24; $L1: .loc 1 126 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } lib_a-memcmp.o/ 0 0 0 644 2240 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memcmp .visible .func (.param .u32 %value_out) memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/memcmp.c" // BEGIN GLOBAL FUNCTION DEF: memcmp .visible .func (.param .u32 %value_out) memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u32 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .pred %r55; .reg .u64 %r57; .reg .u64 %r58; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; .loc 1 73 6 setp.le.u64 %r41,%r40,7; @ %r41 bra $L2; .loc 1 73 25 or.b64 %r42,%r38,%r39; and.b64 %r43,%r42,7; .loc 1 73 21 setp.eq.u64 %r44,%r43,0; @ %r44 bra $L3; bra $L15; $L2: .loc 1 94 11 add.u64 %r28,%r40,-1; .loc 1 94 10 setp.ne.u64 %r45,%r40,0; @ %r45 bra $L10; .loc 1 102 10 mov.u32 %r37,0; bra $L1; $L3: .loc 1 81 14 ld.u64 %r46,[%r38]; ld.u64 %r47,[%r39]; setp.ne.u64 %r48,%r46,%r47; @ %r48 bra $L7; .loc 1 83 13 add.u64 %r38,%r38,8; .loc 1 84 13 add.u64 %r39,%r39,8; .loc 1 85 13 add.u64 %r40,%r40,-8; .loc 1 79 16 setp.gt.u64 %r49,%r40,7; @ %r49 bra $L3; bra $L2; $L10: .loc 1 49 1 mov.u64 %r30,%r38; .loc 1 94 10 add.u64 %r57,%r28,1; add.u64 %r58,%r30,%r57; $L9: .loc 1 96 11 ld.u8 %r26,[%r30]; .loc 1 96 18 ld.u8 %r27,[%r39]; .loc 1 96 10 cvt.u16.u32 %r50,%r26; cvt.u16.u32 %r51,%r27; setp.eq.u16 %r52,%r50,%r51; @ %r52 bra $L8; .loc 1 97 13 sub.u32 %r37,%r26,%r27; bra $L1; $L8: .loc 1 98 9 add.u64 %r30,%r30,1; .loc 1 99 9 add.u64 %r39,%r39,1; .loc 1 94 10 setp.ne.u64 %r55,%r30,%r58; @ %r55 bra $L9; .loc 1 102 10 mov.u32 %r37,0; bra $L1; $L15: .loc 1 94 11 add.u64 %r28,%r40,-1; bra $L10; $L7: add.u64 %r28,%r40,-1; bra $L10; $L1: .loc 1 104 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } lib_a-memcpy.o/ 0 0 0 644 3092 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memcpy .visible .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/memcpy.c" // BEGIN GLOBAL FUNCTION DEF: memcpy .visible .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u64 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r90; mov.u64 %r62,%ar0; mov.u64 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 73 6 setp.le.u64 %r65,%r64,31; @ %r65 bra $L11; .loc 1 73 28 or.b64 %r66,%r62,%r63; and.b64 %r67,%r66,7; .loc 1 73 24 setp.eq.u64 %r68,%r67,0; @ %r68 bra $L3; bra $L16; $L18: .loc 1 92 16 and.b64 %r64,%r64,7; add.u64 %r69,%r37,-8; and.b64 %r71,%r69,-8; add.u64 %r40,%r71,8; .loc 1 91 23 add.u64 %r31,%r31,%r40; .loc 1 91 40 add.u64 %r63,%r63,%r40; bra $L2; $L11: .loc 1 66 9 mov.u64 %r31,%r62; bra $L2; $L12: .loc 1 89 19 mov.u64 %r64,%r37; $L2: .loc 1 100 14 add.u64 %r35,%r64,-1; .loc 1 100 10 setp.ne.u64 %r72,%r64,0; @ %r72 bra $L5; bra $L17; $L3: add.u64 %r73,%r64,-32; and.b64 %r75,%r73,-32; add.u64 %r55,%r75,32; add.u64 %r56,%r63,%r55; .loc 1 75 19 mov.u64 %r41,%r62; $L7: .loc 1 81 26 ld.u64 %r76,[%r63]; st.u64 [%r41],%r76; .loc 1 82 26 ld.u64 %r77,[%r63+8]; st.u64 [%r41+8],%r77; .loc 1 83 26 ld.u64 %r78,[%r63+16]; st.u64 [%r41+16],%r78; add.u64 %r63,%r63,32; add.u64 %r41,%r41,32; .loc 1 84 26 ld.u64 %r79,[%r63+-8]; st.u64 [%r41+-8],%r79; .loc 1 79 19 setp.ne.u64 %r80,%r56,%r63; @ %r80 bra $L7; .loc 1 84 23 add.u64 %r31,%r62,%r55; .loc 1 85 16 and.b64 %r37,%r64,31; .loc 1 89 19 and.b64 %r81,%r64,24; setp.eq.u64 %r82,%r81,0; @ %r82 bra $L12; mov.u64 %r47,%r31; mov.u64 %r46,%r63; add.u64 %r90,%r63,%r37; $L8: .loc 1 91 26 ld.u64 %r83,[%r46]; st.u64 [%r47],%r83; .loc 1 89 19 add.u64 %r46,%r46,8; add.u64 %r47,%r47,8; sub.u64 %r84,%r90,%r46; setp.gt.u64 %r85,%r84,7; @ %r85 bra $L8; bra $L18; $L5: mov.u64 %r33,%r31; mov.u64 %r42,%r63; add.u64 %r86,%r35,1; add.u64 %r45,%r33,%r86; $L10: .loc 1 101 12 ld.u8 %r87,[%r42]; st.u8 [%r33],%r87; .loc 1 100 10 add.u64 %r33,%r33,1; add.u64 %r42,%r42,1; setp.ne.u64 %r88,%r33,%r45; @ %r88 bra $L10; bra $L17; $L16: .loc 1 100 14 add.u64 %r35,%r64,-1; .loc 1 66 9 mov.u64 %r31,%r62; bra $L5; $L17: .loc 1 105 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } lib_a-memmove.o/0 0 0 644 3694 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memmove .visible .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/memmove.c" // BEGIN GLOBAL FUNCTION DEF: memmove .visible .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u64 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .pred %r91; .reg .u64 %r93; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; .loc 1 86 6 setp.le.u64 %r68,%r65,%r66; @ %r68 bra $L2; .loc 1 86 30 add.u64 %r40,%r66,%r67; .loc 1 86 17 setp.le.u64 %r69,%r40,%r65; @ %r69 bra $L2; .loc 1 90 11 add.u64 %r41,%r65,%r67; .loc 1 91 14 setp.eq.u64 %r70,%r67,0; @ %r70 bra $L16; $L4: .loc 1 93 11 add.u64 %r40,%r40,-1; add.u64 %r41,%r41,-1; ld.u8 %r71,[%r40]; st.u8 [%r41],%r71; .loc 1 91 14 setp.ne.u64 %r72,%r66,%r40; @ %r72 bra $L4; bra $L16; $L2: .loc 1 101 10 setp.le.u64 %r73,%r67,31; @ %r73 bra $L13; .loc 1 101 34 or.b64 %r74,%r65,%r66; and.b64 %r75,%r74,7; .loc 1 101 30 setp.eq.u64 %r76,%r75,0; @ %r76 bra $L6; bra $L23; $L24: .loc 1 120 22 and.b64 %r67,%r67,7; add.u64 %r77,%r36,-8; and.b64 %r79,%r77,-8; add.u64 %r32,%r79,8; .loc 1 119 27 add.u64 %r33,%r33,%r32; .loc 1 119 44 add.u64 %r66,%r66,%r32; bra $L5; $L13: mov.u64 %r33,%r65; bra $L5; $L14: .loc 1 117 25 mov.u64 %r67,%r36; $L5: .loc 1 128 20 add.u64 %r34,%r67,-1; .loc 1 128 14 setp.ne.u64 %r80,%r67,0; @ %r80 bra $L8; bra $L16; $L6: add.u64 %r81,%r67,-32; and.b64 %r83,%r81,-32; add.u64 %r58,%r83,32; add.u64 %r59,%r66,%r58; .loc 1 101 30 mov.u64 %r44,%r65; $L9: .loc 1 109 32 ld.u64 %r25,[%r66]; .loc 1 109 30 st.u64 [%r44],%r25; .loc 1 110 32 ld.u64 %r26,[%r66+8]; .loc 1 110 30 st.u64 [%r44+8],%r26; .loc 1 111 32 ld.u64 %r27,[%r66+16]; .loc 1 111 30 st.u64 [%r44+16],%r27; add.u64 %r66,%r66,32; add.u64 %r44,%r44,32; .loc 1 112 32 ld.u64 %r28,[%r66+-8]; .loc 1 112 30 st.u64 [%r44+-8],%r28; .loc 1 107 25 setp.ne.u64 %r84,%r59,%r66; @ %r84 bra $L9; .loc 1 112 27 add.u64 %r33,%r65,%r58; .loc 1 113 22 and.b64 %r36,%r67,31; .loc 1 117 25 and.b64 %r85,%r67,24; setp.eq.u64 %r86,%r85,0; @ %r86 bra $L14; mov.u64 %r50,%r33; mov.u64 %r49,%r66; add.u64 %r93,%r66,%r36; $L10: .loc 1 119 32 ld.u64 %r29,[%r49]; .loc 1 119 30 st.u64 [%r50],%r29; .loc 1 117 25 add.u64 %r49,%r49,8; add.u64 %r50,%r50,8; sub.u64 %r87,%r93,%r49; setp.gt.u64 %r88,%r87,7; @ %r88 bra $L10; bra $L24; $L8: mov.u64 %r37,%r33; mov.u64 %r45,%r66; add.u64 %r89,%r34,1; add.u64 %r48,%r37,%r89; $L12: .loc 1 130 18 ld.u8 %r90,[%r45]; st.u8 [%r37],%r90; .loc 1 128 14 add.u64 %r37,%r37,1; add.u64 %r45,%r45,1; setp.ne.u64 %r91,%r37,%r48; @ %r91 bra $L12; bra $L16; $L23: .loc 1 128 20 add.u64 %r34,%r67,-1; mov.u64 %r33,%r65; bra $L8; $L16: .loc 1 136 1 mov.u64 %value,%r65; st.param.u64 [%value_out],%value; ret; } lib_a-memset.o/ 0 0 0 644 3537 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memset .visible .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/memset.c" // BEGIN GLOBAL FUNCTION DEF: memset .visible .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r37; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r55; .reg .u64 %r58; .reg .u64 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .pred %r67; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u64 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .pred %r87; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r93; .reg .pred %r94; .reg .u64 %r95; mov.u64 %r62,%ar0; mov.u32 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 51 10 mov.u64 %r58,%r62; and.b64 %r65,%r62,7; setp.eq.u64 %r66,%r65,0; @ %r66 bra $L14; .loc 1 53 12 add.u64 %r43,%r64,-1; .loc 1 53 10 setp.ne.u64 %r67,%r64,0; @ ! %r67 bra $L18; .loc 1 42 9 mov.u64 %r44,%r62; .loc 1 54 14 mov.u32 %r71,%r63; bra $L4; $L6: .loc 1 53 12 add.u64 %r43,%r43,-1; .loc 1 53 10 add.u64 %r58,%r58,1; setp.eq.u64 %r70,%r43,-1; @ %r70 bra $L18; $L4: .loc 1 54 11 add.u64 %r44,%r44,1; .loc 1 54 14 st.u8 [%r58],%r71; .loc 1 51 10 and.b64 %r72,%r44,7; setp.ne.u64 %r73,%r72,0; @ %r73 bra $L6; bra $L2; $L14: .loc 1 42 9 mov.u64 %r44,%r62; .loc 1 51 10 mov.u64 %r43,%r64; $L2: .loc 1 59 6 setp.gt.u64 %r74,%r43,7; @ %r74 bra $L7; bra $L11; $L16: .loc 1 81 16 mov.u64 %r43,%r45; $L11: .loc 1 92 10 setp.ne.u64 %r75,%r43,0; @ %r75 bra $L8; bra $L18; $L7: .loc 1 48 16 and.b32 %r38,%r63,255; .loc 1 66 19 shl.b32 %r76,%r38,8; .loc 1 66 25 or.b32 %r77,%r76,%r38; .loc 1 66 14 cvt.u64.u32 %r39,%r77; .loc 1 67 25 shl.b64 %r27,%r39,16; .loc 1 67 14 or.b64 %r40,%r27,%r39; .loc 1 69 26 shl.b64 %r28,%r40,32; .loc 1 69 16 or.b64 %r41,%r28,%r40; .loc 1 72 16 setp.le.u64 %r78,%r43,31; @ %r78 bra $L15; add.u64 %r79,%r43,-32; and.b64 %r81,%r79,-32; add.u64 %r82,%r81,32; add.u64 %r55,%r44,%r82; $L10: .loc 1 74 27 st.u64 [%r44],%r41; .loc 1 75 27 st.u64 [%r44+8],%r41; .loc 1 76 27 st.u64 [%r44+16],%r41; add.u64 %r44,%r44,32; .loc 1 77 27 st.u64 [%r44+-8],%r41; .loc 1 72 16 setp.ne.u64 %r83,%r55,%r44; @ %r83 bra $L10; .loc 1 78 13 and.b64 %r45,%r43,31; .loc 1 81 16 and.b64 %r84,%r43,24; setp.eq.u64 %r85,%r84,0; @ ! %r85 bra $L9; bra $L16; $L15: .loc 1 72 16 mov.u64 %r45,%r43; $L9: mov.u64 %r31,%r44; add.u64 %r95,%r44,%r45; $L12: .loc 1 83 27 st.u64 [%r31],%r41; .loc 1 81 16 add.u64 %r31,%r31,8; sub.u64 %r86,%r95,%r31; setp.gt.u64 %r87,%r86,7; @ %r87 bra $L12; .loc 1 83 24 add.u64 %r88,%r45,-8; and.b64 %r90,%r88,-8; add.u64 %r91,%r90,8; add.u64 %r44,%r44,%r91; .loc 1 84 13 and.b64 %r43,%r45,7; bra $L11; $L8: mov.u64 %r33,%r44; add.u64 %r37,%r33,%r43; .loc 1 93 10 mov.u32 %r93,%r63; $L13: st.u8 [%r33],%r93; .loc 1 92 10 add.u64 %r33,%r33,1; setp.ne.u64 %r94,%r37,%r33; @ %r94 bra $L13; $L18: .loc 1 96 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } lib_a-misc.o/ 0 0 0 644 1561 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: close .visible .func (.param .u32 %value_out) close (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/machine/nvptx/misc.c" // BEGIN GLOBAL FUNCTION DECL: lseek .visible .func (.param .u64 %value_out) lseek (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: read .visible .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: close .visible .func (.param .u32 %value_out) close (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .loc 1 23 10 mov.u32 %value,-1; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: lseek .visible .func (.param .u64 %value_out) lseek (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .loc 1 28 10 mov.u64 %value,0; .loc 1 29 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: read .visible .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .loc 1 33 10 mov.u32 %value,0; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } lib_a-mkdirr.o/ 0 0 0 644 1518 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mkdir_r .visible .func (.param .u32 %value_out) _mkdir_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/reent/mkdirr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: mkdir .extern .func (.param .u32 %value_out) mkdir (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _mkdir_r .visible .func (.param .u32 %value_out) _mkdir_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u32 %r27,%ar2; .loc 1 49 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 50 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),mkdir,(%out_arg1,%out_arg2); ld.param.u32 %r31,[%value_in]; } .loc 1 50 6 setp.ne.u32 %r32,%r31,-1; @ %r32 bra $L1; .loc 1 50 50 ld.global.u32 %r23,[errno]; .loc 1 50 41 setp.eq.u32 %r33,%r23,0; @ %r33 bra $L1; .loc 1 51 17 st.u32 [%r25],%r23; $L1: .loc 1 53 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-mktime.o/ 0 0 0 644 20180 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: validate_structure .func validate_structure (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/mktime.c" // BEGIN GLOBAL FUNCTION DECL: mktime .visible .func (.param .u64 %value_out) mktime (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _daylight .extern .global .align 4 .u32 _daylight[1]; // BEGIN GLOBAL FUNCTION DECL: div .extern .func div (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .extern .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN VAR DEF: DAYS_IN_MONTH .const .align 4 .u32 DAYS_IN_MONTH[12] = {31,28,31,30,31,30,31,31,30,31,30,31 }; // BEGIN VAR DEF: _DAYS_BEFORE_MONTH .const .align 4 .u32 _DAYS_BEFORE_MONTH[12] = {0,31,59,90,120,151,181,212,243,273,304,334 }; // BEGIN FUNCTION DEF: validate_structure .func validate_structure (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r32; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .pred %r78; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .pred %r103; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u32 %r113; .reg .pred %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .u32 %r131; .reg .pred %r132; .reg .u32 %r134; .reg .pred %r140; .reg .u32 %r141; .reg .u32 %r143; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r152; .reg .u64 %r153; .reg .u64 %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r158; .reg .pred %r159; .reg .u32 %r161; .reg .pred %r167; .reg .u32 %r168; .reg .u32 %r170; .reg .pred %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .pred %r180; .reg .pred %r181; .reg .pred %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .u32 %r188; .reg .u32 %r189; .reg .u32 %r190; .reg .u32 %r191; mov.u64 %r77,%ar0; .loc 1 71 12 ld.u32 %r22,[%r77]; .loc 1 71 6 setp.gt.u32 %r78,%r22,59; @ %r78 bra $L2; .loc 1 82 12 ld.u32 %r74,[%r77+4]; bra $L3; $L2: .loc 1 73 13 mov.u32 %r81,60; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r22; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r60,[%frame+4]; .loc 1 74 21 ld.u32 %r82,[%r77+4]; ld.u32 %r83,[%frame]; add.u32 %r74,%r82,%r83; st.u32 [%r77+4],%r74; .loc 1 75 10 setp.lt.s32 %r84,%r60,0; @ %r84 bra $L4; .loc 1 75 26 st.u32 [%r77],%r60; bra $L3; $L4: .loc 1 77 18 add.u32 %r85,%r60,60; st.u32 [%r77],%r85; .loc 1 78 4 add.u32 %r74,%r74,-1; st.u32 [%r77+4],%r74; $L3: .loc 1 82 6 setp.gt.u32 %r86,%r74,59; @ %r86 bra $L5; .loc 1 93 12 ld.u32 %r75,[%r77+8]; bra $L6; $L5: .loc 1 84 13 mov.u32 %r89,60; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r74; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r89; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r69,[%frame+4]; .loc 1 85 22 ld.u32 %r90,[%r77+8]; ld.u32 %r91,[%frame]; add.u32 %r75,%r90,%r91; st.u32 [%r77+8],%r75; .loc 1 86 10 setp.lt.s32 %r92,%r69,0; @ %r92 bra $L7; .loc 1 86 26 st.u32 [%r77+4],%r69; bra $L6; $L7: .loc 1 88 18 add.u32 %r93,%r69,60; st.u32 [%r77+4],%r93; .loc 1 89 4 add.u32 %r75,%r75,-1; st.u32 [%r77+8],%r75; $L6: .loc 1 93 6 setp.gt.u32 %r94,%r75,23; @ ! %r94 bra $L9; .loc 1 95 13 mov.u32 %r97,24; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r75; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r97; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r71,[%frame+4]; .loc 1 96 22 ld.u32 %r98,[%r77+12]; ld.u32 %r99,[%frame]; add.u32 %r32,%r98,%r99; st.u32 [%r77+12],%r32; .loc 1 97 10 setp.lt.s32 %r100,%r71,0; @ %r100 bra $L10; .loc 1 97 27 st.u32 [%r77+8],%r71; bra $L9; $L10: .loc 1 99 19 add.u32 %r101,%r71,24; st.u32 [%r77+8],%r101; .loc 1 100 4 add.u32 %r102,%r32,-1; st.u32 [%r77+12],%r102; $L9: .loc 1 104 12 ld.u32 %r63,[%r77+16]; .loc 1 104 6 setp.gt.u32 %r103,%r63,11; @ %r103 bra $L12; .loc 1 115 7 ld.u32 %r76,[%r77+20]; bra $L13; $L12: .loc 1 106 13 mov.u32 %r106,12; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r63; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r106; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r63,[%frame+4]; .loc 1 107 22 ld.u32 %r107,[%r77+20]; ld.u32 %r108,[%frame]; add.u32 %r76,%r107,%r108; st.u32 [%r77+20],%r76; .loc 1 108 10 setp.lt.s32 %r109,%r63,0; @ %r109 bra $L14; .loc 1 108 26 st.u32 [%r77+16],%r63; bra $L13; $L14: .loc 1 110 18 add.u32 %r63,%r63,12; st.u32 [%r77+16],%r63; .loc 1 111 4 add.u32 %r76,%r76,-1; st.u32 [%r77+20],%r76; $L13: .loc 1 115 7 and.b32 %r110,%r76,3; .loc 1 115 6 setp.ne.u32 %r111,%r110,0; @ %r111 bra $L30; rem.s32 %r113,%r76,100; .loc 1 115 38 setp.ne.u32 %r119,%r113,0; @ %r119 bra $L31; .loc 1 115 7 add.u32 %r120,%r76,1900; rem.s32 %r122,%r120,400; setp.ne.u32 %r128,%r122,0; .loc 1 116 17 selp.u32 %r67,28,29,%r128; bra $L15; $L30: .loc 1 68 7 mov.u32 %r67,28; bra $L15; $L31: .loc 1 116 17 mov.u32 %r67,29; $L15: .loc 1 118 12 ld.u32 %r50,[%r77+12]; .loc 1 118 6 setp.gt.s32 %r129,%r50,0; @ %r129 bra $L40; .loc 1 130 22 cvta.const.u64 %r185,DAYS_IN_MONTH; .loc 1 116 17 mov.u32 %r186,31; .loc 1 128 7 mov.u32 %r187,28; mov.u32 %r188,29; bra $L20; $L40: cvta.const.u64 %r184,DAYS_IN_MONTH; .loc 1 141 22 mov.u32 %r189,0; .loc 1 144 7 mov.u32 %r190,28; mov.u32 %r191,29; bra $L16; $L20: .loc 1 122 8 add.u32 %r63,%r63,-1; .loc 1 122 7 setp.ne.u32 %r130,%r63,-1; @ %r130 bra $L17; .loc 1 124 13 ld.u32 %r42,[%r77+20]; .loc 1 124 22 add.u32 %r43,%r42,-1; st.u32 [%r77+20],%r43; .loc 1 127 5 and.b32 %r131,%r43,3; .loc 1 128 7 setp.ne.u32 %r132,%r131,0; @ %r132 bra $L33; rem.s32 %r134,%r43,100; .loc 1 127 36 setp.ne.u32 %r140,%r134,0; @ %r140 bra $L34; .loc 1 127 5 add.u32 %r141,%r42,1899; rem.s32 %r143,%r141,400; setp.ne.u32 %r149,%r143,0; .loc 1 128 7 selp.u32 %r67,28,29,%r149; bra $L18; $L17: .loc 1 130 22 setp.eq.u32 %r150,%r63,1; @ %r150 bra $L36; cvt.s64.s32 %r152,%r63; shl.b64 %r153,%r152,2; add.u64 %r154,%r185,%r153; ld.u32 %r61,[%r154]; bra $L19; $L36: mov.u32 %r61,%r67; $L19: .loc 1 130 19 add.u32 %r50,%r50,%r61; .loc 1 120 29 setp.le.s32 %r155,%r50,0; @ %r155 bra $L20; st.u32 [%r77+12],%r50; st.u32 [%r77+16],%r63; bra $L1; $L26: .loc 1 137 19 sub.u32 %r50,%r50,%r65; st.u32 [%r77+12],%r50; .loc 1 138 7 st.u32 [%r77+16],%r72; setp.eq.u32 %r156,%r72,12; @ %r156 bra $L22; $L28: add.u32 %r72,%r72,1; add.u64 %r62,%r62,4; bra $L23; $L22: .loc 1 140 13 ld.u32 %r52,[%r77+20]; .loc 1 140 22 add.u32 %r53,%r52,1; st.u32 [%r77+20],%r53; .loc 1 141 22 st.u32 [%r77+16],%r189; .loc 1 143 5 and.b32 %r158,%r53,3; .loc 1 144 7 setp.ne.u32 %r159,%r158,0; @ %r159 bra $L37; rem.s32 %r161,%r53,100; .loc 1 143 36 setp.ne.u32 %r167,%r161,0; @ %r167 bra $L38; .loc 1 143 5 add.u32 %r168,%r52,1901; rem.s32 %r170,%r168,400; setp.ne.u32 %r176,%r170,0; .loc 1 144 7 selp.u32 %r67,28,29,%r176; bra $L24; $L37: mov.u32 %r67,%r190; bra $L24; $L38: mov.u32 %r67,%r191; $L24: mov.u32 %r63,0; $L16: add.u32 %r72,%r63,1; cvt.s64.s32 %r177,%r63; shl.b64 %r178,%r177,2; add.u64 %r62,%r184,%r178; $L23: .loc 1 135 31 setp.eq.u32 %r180,%r72,2; @ %r180 bra $L25; ld.u32 %r65,[%r62]; .loc 1 135 29 setp.lt.s32 %r181,%r65,%r50; @ %r181 bra $L26; bra $L1; $L33: .loc 1 128 7 mov.u32 %r67,%r187; bra $L18; $L34: mov.u32 %r67,%r188; $L18: .loc 1 116 17 mov.u32 %r61,%r186; .loc 1 130 22 mov.u32 %r63,11; bra $L19; $L29: .loc 1 137 19 sub.u32 %r50,%r50,%r67; st.u32 [%r77+12],%r50; .loc 1 138 7 st.u32 [%r77+16],%r72; bra $L28; $L25: .loc 1 135 29 setp.lt.s32 %r183,%r67,%r50; @ %r183 bra $L29; $L1: .loc 1 148 1 ret; } // BEGIN GLOBAL FUNCTION DEF: mktime .visible .func (.param .u64 %value_out) mktime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r29; .reg .u32 %r33; .reg .u32 %r55; .reg .u32 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u32 %r70; .reg .u32 %r75; .reg .u64 %r90; .reg .u32 %r91; .reg .u64 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r102; .reg .u32 %r103; .reg .u64 %r104; .reg .u32 %r105; .reg .u64 %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u64 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r133; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .pred %r151; .reg .u32 %r152; .reg .pred %r153; .reg .u32 %r155; .reg .pred %r161; .reg .u32 %r162; .reg .u32 %r164; .reg .pred %r170; .reg .u32 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u32 %r174; .reg .pred %r175; .reg .u32 %r177; .reg .pred %r182; .reg .u32 %r183; .reg .u32 %r185; .reg .pred %r190; .reg .pred %r191; .reg .pred %r192; .reg .pred %r193; .reg .u32 %r194; .reg .pred %r195; .reg .u32 %r197; .reg .pred %r203; .reg .u32 %r204; .reg .u32 %r206; .reg .pred %r212; .reg .pred %r213; .reg .u32 %r214; .reg .pred %r215; .reg .u32 %r217; .reg .pred %r223; .reg .u32 %r224; .reg .u32 %r226; .reg .pred %r232; .reg .pred %r234; .reg .u32 %r235; .reg .u32 %r236; .reg .pred %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .u16 %r245; .reg .u16 %r246; .reg .u16 %r247; .reg .u32 %r248; .reg .u16 %r249; .reg .pred %r250; .reg .u32 %r252; .reg .pred %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u32 %r258; .reg .u32 %r261; .reg .pred %r262; .reg .u16 %r263; .reg .u16 %r264; .reg .u16 %r265; .reg .u32 %r266; .reg .u16 %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .u32 %r270; .reg .pred %r271; .reg .pred %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .pred %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u64 %r278; .reg .u32 %r280; .reg .pred %r281; .reg .pred %r282; .reg .pred %r283; .reg .u32 %r284; .reg .pred %r285; .reg .u32 %r286; .reg .pred %r287; .reg .u32 %r289; .reg .pred %r295; .reg .u32 %r296; .reg .u32 %r298; .reg .pred %r304; .reg .u32 %r305; .reg .pred %r306; .reg .u32 %r308; .reg .pred %r314; .reg .u32 %r315; .reg .u32 %r317; .reg .pred %r323; .reg .pred %r324; .reg .u32 %r325; .reg .pred %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .pred %r330; .reg .u32 %r331; .reg .u32 %r333; .reg .u64 %r334; .reg .u32 %r336; .reg .pred %r337; .reg .u64 %r340; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r343; .reg .u16 %r345; mov.u64 %r130,%ar0; .loc 1 156 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r131,[%value_in]; } .loc 1 159 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call validate_structure,(%out_arg1); } .loc 1 162 41 ld.s32 %r133,[%r130+4]; shl.b64 %r135,%r133,4; sub.u64 %r136,%r135,%r133; shl.b64 %r137,%r136,2; .loc 1 162 15 ld.s32 %r138,[%r130]; .loc 1 162 24 add.u64 %r139,%r137,%r138; .loc 1 163 21 ld.s32 %r142,[%r130+8]; .loc 1 162 59 mad.lo.u64 %r29,%r142,3600,%r139; .loc 1 167 35 ld.u32 %r33,[%r130+16]; .loc 1 166 26 ld.u32 %r144,[%r130+12]; add.u32 %r143,%r144,-1; cvt.s64.s32 %r145,%r143; .loc 1 167 29 cvta.const.u64 %r146,_DAYS_BEFORE_MONTH; cvt.s64.s32 %r147,%r33; shl.b64 %r148,%r147,2; add.u64 %r149,%r146,%r148; ld.s32 %r150,[%r149]; .loc 1 167 8 add.u64 %r93,%r145,%r150; .loc 1 168 6 setp.gt.s32 %r151,%r33,1; @ %r151 bra $L43; .loc 1 168 28 ld.u32 %r94,[%r130+20]; bra $L44; $L43: ld.u32 %r94,[%r130+20]; and.b32 %r152,%r94,3; .loc 1 168 25 setp.ne.u32 %r153,%r152,0; @ %r153 bra $L44; rem.s32 %r155,%r94,100; .loc 1 168 59 setp.ne.u32 %r161,%r155,0; @ %r161 bra $L45; .loc 1 168 28 add.u32 %r162,%r94,1900; rem.s32 %r164,%r162,400; setp.ne.u32 %r170,%r164,0; @ %r170 bra $L44; $L45: .loc 1 169 9 add.u64 %r93,%r93,1; $L44: .loc 1 172 18 st.u32 [%r130+28],%r93; .loc 1 174 30 add.u32 %r171,%r94,10000; .loc 1 174 6 setp.gt.u32 %r172,%r171,20000; @ %r172 bra $L71; .loc 1 178 6 setp.le.s32 %r173,%r94,70; @ %r173 bra $L47; .loc 1 180 17 mov.u32 %r103,70; .loc 1 181 10 mov.u64 %r340,365; mov.u64 %r341,366; $L49: and.b32 %r174,%r103,3; setp.ne.u32 %r175,%r174,0; @ %r175 bra $L72; rem.s32 %r177,%r103,100; setp.ne.u32 %r182,%r177,0; @ %r182 bra $L73; add.u32 %r183,%r103,1900; rem.s32 %r185,%r183,400; setp.ne.u32 %r190,%r185,0; selp.u64 %r95,365,366,%r190; bra $L48; $L72: mov.u64 %r95,%r340; bra $L48; $L73: mov.u64 %r95,%r341; $L48: .loc 1 181 7 add.u64 %r93,%r93,%r95; .loc 1 180 50 add.u32 %r103,%r103,1; .loc 1 180 28 setp.ne.u32 %r191,%r103,%r94; @ %r191 bra $L49; bra $L50; $L47: .loc 1 183 11 setp.eq.u32 %r192,%r94,70; @ %r192 bra $L50; .loc 1 185 28 setp.eq.u32 %r193,%r94,69; @ %r193 bra $L75; .loc 1 185 17 mov.u32 %r102,69; .loc 1 186 10 mov.u64 %r342,365; mov.u64 %r343,366; $L53: and.b32 %r194,%r102,3; setp.ne.u32 %r195,%r194,0; @ %r195 bra $L76; rem.s32 %r197,%r102,100; setp.ne.u32 %r203,%r197,0; @ %r203 bra $L77; add.u32 %r204,%r102,1900; rem.s32 %r206,%r204,400; setp.ne.u32 %r212,%r206,0; selp.u64 %r96,365,366,%r212; bra $L52; $L76: mov.u64 %r96,%r342; bra $L52; $L77: mov.u64 %r96,%r343; $L52: .loc 1 186 7 sub.u64 %r93,%r93,%r96; .loc 1 185 50 add.u32 %r102,%r102,-1; .loc 1 185 28 setp.ne.u32 %r213,%r102,%r94; @ %r213 bra $L53; .loc 1 187 15 and.b32 %r214,%r94,3; setp.ne.u32 %r215,%r214,0; @ %r215 bra $L79; rem.s32 %r217,%r94,100; setp.ne.u32 %r223,%r217,0; @ %r223 bra $L80; add.u32 %r224,%r94,1900; rem.s32 %r226,%r224,400; setp.ne.u32 %r232,%r226,0; selp.u64 %r97,365,366,%r232; bra $L51; $L75: mov.u64 %r97,365; bra $L51; $L79: mov.u64 %r97,365; bra $L51; $L80: mov.u64 %r97,366; $L51: .loc 1 187 12 sub.u64 %r93,%r93,%r97; $L50: .loc 1 191 7 mad.lo.u64 %r104,%r93,86400,%r29; .loc 1 193 3 { call __tz_lock; } .loc 1 195 3 { call _tzset_unlocked; } .loc 1 197 7 ld.global.u32 %r55,[_daylight]; .loc 1 197 6 setp.eq.u32 %r234,%r55,0; @ %r234 bra $L54; .loc 1 200 11 ld.u32 %r235,[%r130+20]; add.u32 %r105,%r235,1900; .loc 1 202 23 ld.u32 %r57,[%r130+32]; .loc 1 202 16 min.s32 %r55,%r57,1; .loc 1 205 10 ld.u32 %r236,[%r131+4]; setp.ne.u32 %r237,%r236,%r105; @ %r237 bra $L55; $L58: .loc 1 209 48 ld.u64 %r60,[%r131+32]; .loc 1 210 32 ld.u64 %r61,[%r131+80]; .loc 1 211 41 ld.u64 %r62,[%r131+72]; .loc 1 214 32 ld.u64 %r63,[%r131+40]; .loc 1 213 11 sub.u64 %r108,%r62,%r63; .loc 1 211 11 sub.u64 %r238,%r62,%r61; .loc 1 216 35 set.u32.lt.s64 %r240,%r104,%r238; neg.s32 %r241,%r240; mov.u32 %r239,%r241; .loc 1 216 12 set.u32.ge.s64 %r243,%r104,%r108; neg.s32 %r244,%r243; mov.u32 %r242,%r244; .loc 1 216 28 cvt.u16.u8 %r345,%r239; mov.u16 %r246,%r345; cvt.u16.u8 %r345,%r242; mov.u16 %r247,%r345; and.b16 %r245,%r246,%r247; cvt.u32.u16 %r248,%r245; .loc 1 216 7 cvt.u16.u8 %r249,%r248; setp.ne.u16 %r250,%r249,0; @ %r250 bra $L56; bra $L103; $L55: .loc 1 205 32 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r105; call (%value_in),__tzcalc_limits,(%out_arg1); ld.param.u32 %r252,[%value_in]; } .loc 1 205 29 setp.ne.u32 %r253,%r252,0; @ %r253 bra $L58; bra $L56; $L103: .loc 1 209 18 sub.u64 %r254,%r60,%r61; .loc 1 221 17 set.u32.ge.s64 %r255,%r104,%r254; neg.s32 %r127,%r255; .loc 1 221 40 set.u32.lt.s64 %r258,%r104,%r108; neg.s32 %r128,%r258; .loc 1 222 10 ld.u32 %r261,[%r131]; setp.eq.u32 %r262,%r261,0; @ %r262 bra $L59; .loc 1 221 33 cvt.u16.u32 %r264,%r127; cvt.u16.u32 %r265,%r128; and.b16 %r263,%r264,%r265; cvt.u32.u16 %r266,%r263; .loc 1 222 10 cvt.u32.u8 %r98,%r266; bra $L60; $L59: .loc 1 222 33 cvt.u16.u32 %r268,%r127; cvt.u16.u32 %r269,%r128; or.b16 %r267,%r268,%r269; cvt.u32.u16 %r270,%r267; .loc 1 222 10 cvt.u32.u8 %r98,%r270; $L60: .loc 1 226 12 setp.lt.s32 %r271,%r57,0; @ %r271 bra $L82; .loc 1 226 39 xor.b32 %r70,%r98,%r55; .loc 1 226 28 setp.ne.u32 %r272,%r70,1; @ %r272 bra $L83; .loc 1 234 9 cvt.u32.u64 %r273,%r63; cvt.u32.u64 %r274,%r61; sub.u32 %r109,%r273,%r274; .loc 1 237 19 ld.u32 %r125,[%r130]; .loc 1 239 9 ld.u32 %r126,[%r130+12]; .loc 1 235 8 setp.ne.u32 %r275,%r98,0; @ %r275 bra $L61; .loc 1 237 19 sub.u32 %r276,%r125,%r109; st.u32 [%r130],%r276; .loc 1 236 12 neg.s32 %r277,%r109; .loc 1 238 9 cvt.s64.s32 %r278,%r277; add.u64 %r104,%r104,%r278; .loc 1 240 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call validate_structure,(%out_arg1); } .loc 1 241 10 ld.u32 %r280,[%r130+12]; sub.u32 %r55,%r280,%r126; .loc 1 243 8 setp.eq.u32 %r281,%r280,%r126; @ %r281 bra $L54; $L69: .loc 1 245 10 setp.gt.s32 %r282,%r55,1; @ %r282 bra $L84; .loc 1 247 15 setp.lt.s32 %r283,%r55,-1; @ %r283 bra $L85; .loc 1 250 12 cvt.s64.s32 %r124,%r55; mov.u32 %r70,%r55; bra $L62; $L84: mov.u64 %r124,-1; .loc 1 246 11 mov.u32 %r70,-1; bra $L62; $L85: mov.u64 %r124,1; $L62: .loc 1 250 12 add.u64 %r93,%r93,%r124; .loc 1 252 27 ld.u32 %r284,[%r130+28]; add.u32 %r75,%r70,%r284; .loc 1 252 10 setp.ge.s32 %r285,%r75,0; @ %r285 bra $L63; .loc 1 253 6 add.u32 %r111,%r94,-1; .loc 1 254 23 and.b32 %r286,%r111,3; .loc 1 254 43 setp.ne.u32 %r287,%r286,0; @ %r287 bra $L86; rem.s32 %r289,%r111,100; .loc 1 254 23 setp.ne.u32 %r295,%r289,0; @ %r295 bra $L87; add.u32 %r296,%r94,1899; rem.s32 %r298,%r296,400; setp.ne.u32 %r304,%r298,0; .loc 1 254 43 selp.u32 %r99,364,365,%r304; bra $L64; $L86: mov.u32 %r99,364; bra $L64; $L87: mov.u32 %r99,365; $L64: .loc 1 254 21 st.u32 [%r130+28],%r99; mov.u32 %r55,%r98; bra $L56; $L63: .loc 1 256 13 and.b32 %r305,%r94,3; setp.ne.u32 %r306,%r305,0; @ %r306 bra $L89; rem.s32 %r308,%r94,100; setp.ne.u32 %r314,%r308,0; @ %r314 bra $L90; add.u32 %r315,%r94,1900; rem.s32 %r317,%r315,400; setp.ne.u32 %r323,%r317,0; selp.u32 %r100,365,366,%r323; bra $L65; $L89: mov.u32 %r100,365; bra $L65; $L90: mov.u32 %r100,366; $L65: .loc 1 257 9 setp.ge.s32 %r324,%r75,%r100; @ %r324 bra $L66; .loc 1 252 27 st.u32 [%r130+28],%r75; mov.u32 %r55,%r98; bra $L56; $L66: .loc 1 258 20 sub.u32 %r325,%r75,%r100; st.u32 [%r130+28],%r325; mov.u32 %r55,%r98; bra $L56; $L82: mov.u32 %r55,%r98; bra $L56; $L83: mov.u32 %r55,%r98; $L56: .loc 1 267 6 setp.ne.u32 %r326,%r55,1; @ %r326 bra $L54; $L70: .loc 1 268 9 ld.u64 %r327,[%r131+80]; add.u64 %r129,%r104,%r327; mov.u32 %r55,1; bra $L67; $L54: .loc 1 270 9 ld.u64 %r328,[%r131+40]; add.u64 %r129,%r104,%r328; $L67: .loc 1 272 3 { call __tz_unlock; } .loc 1 275 19 st.u32 [%r130+32],%r55; .loc 1 278 31 add.u64 %r329,%r93,4; .loc 1 278 36 rem.s64 %r90,%r329,7; .loc 1 278 23 cvt.u32.u64 %r91,%r90; .loc 1 278 6 setp.lt.s64 %r330,%r90,0; @ %r330 bra $L68; .loc 1 278 23 st.u32 [%r130+24],%r91; bra $L42; $L68: .loc 1 279 20 add.u32 %r331,%r91,7; st.u32 [%r130+24],%r331; bra $L42; $L71: .loc 1 175 14 mov.u64 %r129,-1; bra $L42; $L61: .loc 1 237 19 add.u32 %r333,%r109,%r125; st.u32 [%r130],%r333; .loc 1 238 9 cvt.s64.s32 %r334,%r109; add.u64 %r104,%r104,%r334; .loc 1 240 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call validate_structure,(%out_arg1); } .loc 1 241 10 ld.u32 %r336,[%r130+12]; sub.u32 %r55,%r336,%r126; .loc 1 243 8 setp.ne.u32 %r337,%r336,%r126; @ ! %r337 bra $L70; bra $L69; $L42: .loc 1 282 1 mov.u64 %value,%r129; st.param.u64 [%value_out],%value; ret; } lib_a-mlock.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /653 0 0 0 644 247 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: __month_lengths .visible .const .align 4 .u32 __month_lengths[24] = {31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31 }; lib_a-mprec.o/ 0 0 0 644 60466 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _Balloc .visible .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/mprec.c" // BEGIN GLOBAL FUNCTION DECL: _Bfree .visible .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __multadd .visible .func (.param .u64 %value_out) __multadd (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __s2b .visible .func (.param .u64 %value_out) __s2b (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: __hi0bits .visible .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __lo0bits .visible .func (.param .u32 %value_out) __lo0bits (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __i2b .visible .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __multiply .visible .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __pow5mult .visible .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __lshift .visible .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mcmp .visible .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __mdiff .visible .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ulp .visible .func (.param .f64 %value_out) __ulp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __b2d .visible .func (.param .f64 %value_out) __b2d (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __d2b .visible .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ratio .visible .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _mprec_log10 .visible .func (.param .f64 %value_out) _mprec_log10 (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __copybits .visible .func __copybits (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __any_on .visible .func (.param .u32 %value_out) __any_on (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _calloc_r .extern .func (.param .u64 %value_out) _calloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DEF: __mprec_tens .visible .const .align 8 .u64 __mprec_tens[25] = {4607182418800017408,4621819117588971520,4636737291354636288,4652007308841189376,4666723172467343360,4681608360884174848,4696837146684686336,4711630319722168320,4726483295884279808,4741671816366391296,4756540486875873280,4771362005757984768,4786511204640096256,4801453603149578240,4816244402031689728,4831355200913801216,4846369599423283200,4861130398305394688,4876203697187506176,4891288408196988160,4906019910204099648,4921056587992461136,4936209963552724370,4950912855330343670,4965913770331839924 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[42] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,109,112,114,101,99,46,99,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN GLOBAL VAR DEF: __mprec_tinytens .visible .const .align 8 .u64 __mprec_tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,776877706278891331 }; // BEGIN GLOBAL VAR DEF: __mprec_bigtens .visible .const .align 8 .u64 __mprec_bigtens[5] = {4846369599423283200,5085611494797045271,5564284217833028085,6521906365687930162,8436737289693151036 }; // BEGIN VAR DEF: p05$0 .const .align 4 .u32 p05$0[3] = {5,25,125 }; // BEGIN GLOBAL FUNCTION DEF: _Balloc .visible .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; mov.u64 %r31,%ar0; mov.u32 %r32,%ar1; .loc 1 103 7 ld.u64 %r22,[%r31+120]; .loc 1 103 6 setp.ne.u64 %r33,%r22,0; @ %r33 bra $L2; .loc 1 106 53 mov.u64 %r36,65; mov.u64 %r35,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r37,[%value_in]; } mov.u64 %r22,%r37; .loc 1 106 31 st.u64 [%r31+120],%r22; .loc 1 109 10 setp.ne.u64 %r38,%r22,0; @ %r38 bra $L2; $L6: .loc 1 111 11 mov.u64 %r30,0; bra $L1; $L2: .loc 1 115 36 cvt.s64.s32 %r39,%r32; shl.b64 %r40,%r39,3; add.u64 %r24,%r22,%r40; .loc 1 115 11 ld.u64 %r30,[%r24]; .loc 1 115 6 setp.eq.u64 %r41,%r30,0; @ %r41 bra $L4; .loc 1 117 38 ld.u64 %r25,[%r30]; .loc 1 117 34 st.u64 [%r24],%r25; bra $L5; $L4: .loc 1 121 9 mov.u32 %r42,1; shl.b32 %r29,%r42,%r32; .loc 1 125 24 cvt.s64.s32 %r46,%r29; add.u64 %r47,%r46,7; .loc 1 123 24 shl.b64 %r48,%r47,2; mov.u64 %r44,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r49,[%value_in]; } mov.u64 %r30,%r49; .loc 1 127 10 setp.eq.u64 %r50,%r30,0; @ %r50 bra $L6; .loc 1 128 14 st.u32 [%r30+8],%r32; .loc 1 129 19 st.u32 [%r30+12],%r29; $L5: .loc 1 131 13 mov.u64 %r51,0; st.u64 [%r30+16],%r51; $L1: .loc 1 133 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _Bfree .visible .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 139 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L10; .loc 1 141 41 ld.s32 %r30,[%r28+8]; shl.b64 %r31,%r30,3; ld.u64 %r32,[%r27+120]; add.u64 %r25,%r32,%r31; ld.u64 %r26,[%r25]; .loc 1 141 16 st.u64 [%r28],%r26; .loc 1 142 38 st.u64 [%r25],%r28; $L10: .loc 1 144 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __multadd .visible .func (.param .u64 %value_out) __multadd (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r55; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r83; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u32 %r101; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; mov.u32 %r60,%ar2; mov.u32 %r61,%ar3; .loc 1 159 7 ld.u32 %r42,[%r59+20]; add.u64 %r55,%r59,24; .loc 1 161 5 mov.u32 %r41,0; $L16: .loc 1 165 10 ld.u32 %r43,[%r55]; .loc 1 166 15 and.b32 %r62,%r43,65535; .loc 1 166 9 mad.lo.u32 %r44,%r62,%r60,%r61; .loc 1 167 15 shr.u32 %r64,%r43,16; .loc 1 167 31 shr.u32 %r66,%r44,16; .loc 1 167 9 mad.lo.u32 %r45,%r64,%r60,%r66; .loc 1 168 20 shr.u32 %r61,%r45,16; .loc 1 169 17 shl.b32 %r67,%r45,16; .loc 1 169 29 and.b32 %r68,%r44,65535; .loc 1 169 24 add.u32 %r69,%r67,%r68; .loc 1 169 12 st.u32 [%r55],%r69; .loc 1 176 14 add.u32 %r41,%r41,1; add.u64 %r55,%r55,4; setp.gt.s32 %r70,%r42,%r41; @ %r70 bra $L16; .loc 1 177 6 setp.eq.u32 %r71,%r61,0; @ %r71 bra $L15; .loc 1 179 10 ld.u32 %r72,[%r59+12]; setp.gt.s32 %r73,%r72,%r42; @ %r73 bra $L18; .loc 1 181 9 ld.u32 %r77,[%r59+8]; add.u32 %r76,%r77,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r76; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r78,[%value_in]; } setp.ne.u64 %r79,%r78,0; @ %r79 bra $L19; cvta.const.u64 %r83,$LC0; mov.u32 %r81,181; cvta.const.u64 %r80,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r80; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r81; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r78; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r83; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L19: .loc 1 182 4 ld.s32 %r87,[%r59+20]; add.u64 %r88,%r87,2; shl.b64 %r89,%r88,2; add.u64 %r90,%r59,16; add.u64 %r91,%r78,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r91; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r90; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r89; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r92,[%value_in]; } .loc 1 141 41 ld.s32 %r93,[%r59+8]; shl.b64 %r94,%r93,3; ld.u64 %r95,[%r58+120]; add.u64 %r51,%r95,%r94; ld.u64 %r52,[%r51]; .loc 1 141 16 st.u64 [%r59],%r52; .loc 1 142 38 st.u64 [%r51],%r59; mov.u64 %r59,%r78; $L18: .loc 1 186 20 cvt.s64.s32 %r96,%r42; add.u64 %r97,%r96,4; shl.b64 %r98,%r97,2; add.u64 %r99,%r59,%r98; st.u32 [%r99+8],%r61; .loc 1 186 16 add.u32 %r101,%r42,1; .loc 1 187 15 st.u32 [%r59+20],%r101; $L15: .loc 1 190 1 mov.u64 %value,%r59; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __s2b .visible .func (.param .u64 %value_out) __s2b (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r34; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r61; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r76; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .u64 %r94; .reg .pred %r95; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; mov.u32 %r55,%ar2; mov.u32 %r56,%ar3; mov.u32 %r57,%ar4; .loc 1 203 11 add.u32 %r58,%r56,8; .loc 1 203 5 div.s32 %r31,%r58,9; .loc 1 204 24 setp.le.s32 %r59,%r56,9; @ %r59 bra $L32; .loc 1 204 17 mov.u32 %r37,1; .loc 1 204 10 mov.u32 %r38,0; $L25: .loc 1 204 31 add.u32 %r37,%r37,%r37; .loc 1 204 39 add.u32 %r38,%r38,1; .loc 1 204 24 setp.gt.s32 %r61,%r31,%r37; @ %r61 bra $L25; bra $L24; $L32: .loc 1 204 10 mov.u32 %r38,0; $L24: .loc 1 206 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r64,[%value_in]; } mov.u64 %r52,%r64; setp.ne.u64 %r65,%r64,0; @ %r65 bra $L26; cvta.const.u64 %r69,$LC0; mov.u32 %r67,206; cvta.const.u64 %r66,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r67; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r64; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r69; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L26: .loc 1 207 12 st.u32 [%r52+24],%r57; .loc 1 208 11 mov.u32 %r70,1; st.u32 [%r52+20],%r70; .loc 1 216 6 setp.le.s32 %r71,%r55,9; @ %r71 bra $L27; .loc 1 218 9 add.u64 %r34,%r54,9; mov.u64 %r45,%r34; add.u32 %r72,%r55,-10; cvt.u64.u32 %r49,%r72; add.u64 %r73,%r54,10; add.u64 %r51,%r73,%r49; $L28: .loc 1 220 27 ld.s8 %r78,[%r45]; .loc 1 220 6 add.u32 %r79,%r78,-48; mov.u32 %r76,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r52; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r76; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r79; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r80,[%value_in]; } mov.u64 %r52,%r80; .loc 1 221 18 add.u64 %r45,%r45,1; setp.ne.u64 %r81,%r45,%r51; @ %r81 bra $L28; .loc 1 222 8 add.u64 %r82,%r49,2; add.u64 %r36,%r34,%r82; bra $L29; $L27: .loc 1 225 7 add.u64 %r36,%r54,10; .loc 1 215 5 mov.u32 %r55,9; $L29: .loc 1 226 12 setp.le.s32 %r83,%r56,%r55; @ %r83 bra $L23; mov.u64 %r30,%r36; add.u32 %r84,%r56,-1; sub.u32 %r85,%r84,%r55; cvt.u64.u32 %r86,%r85; add.u64 %r87,%r30,1; add.u64 %r44,%r86,%r87; $L31: .loc 1 227 30 ld.s8 %r92,[%r30]; .loc 1 227 9 add.u32 %r93,%r92,-48; mov.u32 %r90,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r52; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r90; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r93; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r94,[%value_in]; } mov.u64 %r52,%r94; .loc 1 226 12 add.u64 %r30,%r30,1; setp.ne.u64 %r95,%r30,%r44; @ %r95 bra $L31; $L23: .loc 1 229 1 mov.u64 %value,%r52; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __hi0bits .visible .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .pred %r37; .reg .pred %r38; .reg .u32 %r39; .reg .pred %r40; mov.u32 %r29,%ar0; .loc 1 236 11 and.b32 %r30,%r29,-65536; .loc 1 236 6 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L42; .loc 1 239 9 shl.b32 %r29,%r29,16; .loc 1 238 9 mov.u32 %r28,16; bra $L37; $L42: .loc 1 234 16 mov.u32 %r28,0; $L37: .loc 1 241 11 and.b32 %r32,%r29,-16777216; .loc 1 241 6 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L38; .loc 1 243 9 add.u32 %r28,%r28,8; .loc 1 244 9 shl.b32 %r29,%r29,8; $L38: .loc 1 246 11 and.b32 %r34,%r29,-268435456; .loc 1 246 6 setp.ne.u32 %r35,%r34,0; @ %r35 bra $L39; .loc 1 248 9 add.u32 %r28,%r28,4; .loc 1 249 9 shl.b32 %r29,%r29,4; $L39: .loc 1 251 11 and.b32 %r36,%r29,-1073741824; .loc 1 251 6 setp.ne.u32 %r37,%r36,0; @ %r37 bra $L40; .loc 1 253 9 add.u32 %r28,%r28,2; .loc 1 254 9 shl.b32 %r29,%r29,2; $L40: .loc 1 256 6 setp.lt.s32 %r38,%r29,0; @ %r38 bra $L36; .loc 1 258 8 add.u32 %r28,%r28,1; .loc 1 259 15 and.b32 %r39,%r29,1073741824; .loc 1 259 10 setp.ne.u32 %r40,%r39,0; .loc 1 260 9 selp.u32 %r28,%r28,32,%r40; $L36: .loc 1 263 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __lo0bits .visible .func (.param .u32 %value_out) __lo0bits (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; mov.u64 %r34,%ar0; .loc 1 269 20 ld.u32 %r32,[%r34]; .loc 1 271 9 and.b32 %r35,%r32,7; .loc 1 271 6 setp.eq.u32 %r36,%r35,0; @ %r36 bra $L44; .loc 1 273 13 and.b32 %r37,%r32,1; .loc 1 273 10 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L52; .loc 1 275 13 and.b32 %r39,%r32,2; .loc 1 275 10 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L46; .loc 1 277 11 shr.u32 %r41,%r32,1; .loc 1 277 7 st.u32 [%r34],%r41; .loc 1 278 11 mov.u32 %r33,1; bra $L43; $L46: .loc 1 280 14 shr.u32 %r42,%r32,2; .loc 1 280 10 st.u32 [%r34],%r42; .loc 1 281 14 mov.u32 %r33,2; bra $L43; $L44: .loc 1 284 11 and.b32 %r43,%r32,65535; .loc 1 284 6 setp.ne.u32 %r44,%r43,0; @ %r44 bra $L53; .loc 1 287 9 shr.u32 %r32,%r32,16; .loc 1 286 9 mov.u32 %r33,16; bra $L47; $L53: .loc 1 283 5 mov.u32 %r33,%r35; $L47: .loc 1 289 11 and.b32 %r45,%r32,255; .loc 1 289 6 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L48; .loc 1 291 9 add.u32 %r33,%r33,8; .loc 1 292 9 shr.u32 %r32,%r32,8; $L48: .loc 1 294 11 and.b32 %r47,%r32,15; .loc 1 294 6 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L49; .loc 1 296 9 add.u32 %r33,%r33,4; .loc 1 297 9 shr.u32 %r32,%r32,4; $L49: .loc 1 299 11 and.b32 %r49,%r32,3; .loc 1 299 6 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L50; .loc 1 301 9 add.u32 %r33,%r33,2; .loc 1 302 9 shr.u32 %r32,%r32,2; $L50: .loc 1 304 11 and.b32 %r51,%r32,1; .loc 1 304 6 setp.ne.u32 %r52,%r51,0; @ %r52 bra $L51; .loc 1 306 8 add.u32 %r33,%r33,1; .loc 1 307 9 shr.u32 %r32,%r32,1; .loc 1 308 10 setp.eq.u32 %r53,%r32,0; @ %r53 bra $L54; $L51: .loc 1 311 6 st.u32 [%r34],%r32; .loc 1 312 10 bra $L43; $L52: .loc 1 274 9 mov.u32 %r33,0; bra $L43; $L54: .loc 1 309 9 mov.u32 %r33,32; $L43: .loc 1 313 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __i2b .visible .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 103 7 ld.u64 %r23,[%r26+120]; .loc 1 103 6 setp.ne.u64 %r28,%r23,0; @ %r28 bra $L56; .loc 1 106 53 mov.u64 %r31,65; mov.u64 %r30,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } mov.u64 %r23,%r32; .loc 1 106 31 st.u64 [%r26+120],%r23; .loc 1 109 10 setp.eq.u64 %r33,%r23,0; @ %r33 bra $L57; $L56: .loc 1 115 11 ld.u64 %r25,[%r23+8]; .loc 1 115 6 setp.eq.u64 %r34,%r25,0; @ %r34 bra $L58; .loc 1 117 38 ld.u64 %r24,[%r25]; .loc 1 117 34 st.u64 [%r23+8],%r24; bra $L59; $L58: .loc 1 123 24 mov.u64 %r37,36; mov.u64 %r36,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r38,[%value_in]; } mov.u64 %r25,%r38; .loc 1 127 10 setp.eq.u64 %r39,%r25,0; @ %r39 bra $L57; .loc 1 128 14 mov.u64 %r40,8589934593; st.u64 [%r25+8],%r40; bra $L59; $L57: .loc 1 320 7 cvta.const.u64 %r44,$LC0; mov.u64 %r43,0; mov.u32 %r42,320; cvta.const.u64 %r41,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r42; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r44; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L59: .loc 1 321 12 st.u32 [%r25+24],%r27; .loc 1 131 13 mov.u64 %r45,4294967296; st.u64 [%r25+16],%r45; .loc 1 324 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __multiply .visible .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r32; .reg .u32 %r53; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r83; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u32 %r99; .reg .u64 %r100; .reg .pred %r101; .reg .u32 %r102; .reg .pred %r103; .reg .u64 %r106; .reg .pred %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .pred %r119; .reg .u32 %r120; .reg .pred %r121; .reg .pred %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u64 %r128; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .pred %r144; .reg .u64 %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .u64 %r162; .reg .pred %r163; .reg .pred %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u32 %r169; mov.u64 %r96,%ar0; mov.u64 %r97,%ar1; mov.u64 %r98,%ar2; .loc 1 337 8 ld.u32 %r22,[%r97+20]; .loc 1 337 18 ld.u32 %r23,[%r98+20]; .loc 1 337 6 setp.lt.s32 %r101,%r22,%r23; @ %r101 bra $L67; mov.u32 %r99,%r23; mov.u32 %r23,%r22; mov.u32 %r22,%r99; mov.u64 %r100,%r98; mov.u64 %r98,%r97; mov.u64 %r97,%r100; $L67: .loc 1 343 5 ld.u32 %r57,[%r98+8]; .loc 1 346 6 add.u32 %r68,%r23,%r22; .loc 1 347 6 ld.u32 %r102,[%r98+12]; setp.ge.s32 %r103,%r102,%r68; @ %r103 bra $L68; .loc 1 348 6 add.u32 %r57,%r57,1; $L68: .loc 1 349 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r96; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r57; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r106,[%value_in]; } setp.ne.u64 %r107,%r106,0; @ %r107 bra $L69; cvta.const.u64 %r111,$LC0; mov.u32 %r109,349; cvta.const.u64 %r108,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r109; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r106; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r111; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L69: .loc 1 350 10 add.u64 %r77,%r106,24; .loc 1 350 26 cvt.s64.s32 %r112,%r68; shl.b64 %r113,%r112,2; .loc 1 350 22 add.u64 %r67,%r77,%r113; .loc 1 350 34 setp.lt.u64 %r114,%r77,%r67; @ %r114 bra $L84; $L73: .loc 1 352 6 add.u64 %r168,%r98,24; .loc 1 353 12 cvt.s64.s32 %r115,%r23; shl.b64 %r116,%r115,2; .loc 1 353 7 add.u64 %r64,%r168,%r116; .loc 1 354 6 add.u64 %r76,%r97,24; .loc 1 355 12 cvt.s64.s32 %r117,%r22; shl.b64 %r118,%r117,2; .loc 1 355 7 add.u64 %r65,%r76,%r118; .loc 1 358 13 setp.lt.u64 %r119,%r76,%r65; @ %r119 bra $L71; bra $L72; $L84: .loc 1 350 34 mov.u64 %r78,%r77; .loc 1 351 8 mov.u32 %r120,0; $L70: st.u32 [%r78],%r120; .loc 1 350 41 add.u64 %r78,%r78,4; .loc 1 350 34 setp.gt.u64 %r121,%r67,%r78; @ %r121 bra $L70; bra $L73; $L72: .loc 1 413 43 setp.gt.s32 %r122,%r68,0; @ %r122 bra $L74; bra $L75; $L71: add.u64 %r124,%r98,25; setp.lt.u64 %r125,%r64,%r124; @ %r125 bra $L76; sub.u64 %r126,%r64,%r98; add.u64 %r128,%r126,-25; and.b64 %r130,%r128,-4; add.u64 %r123,%r130,4; bra $L77; $L76: mov.u64 %r123,4; $L77: .loc 1 364 10 mov.u32 %r169,0; $L82: .loc 1 360 16 ld.u32 %r28,[%r76]; .loc 1 360 14 and.b32 %r69,%r28,65535; .loc 1 360 10 setp.eq.u32 %r131,%r69,0; @ %r131 bra $L78; mov.u64 %r79,%r77; .loc 1 362 6 mov.u64 %r60,%r168; .loc 1 364 10 mov.u32 %r58,%r169; $L79: .loc 1 367 13 ld.u32 %r29,[%r60]; .loc 1 367 33 ld.u32 %r32,[%r79]; .loc 1 367 16 and.b32 %r132,%r29,65535; .loc 1 367 37 and.b32 %r134,%r32,65535; .loc 1 367 30 mad.lo.u32 %r135,%r132,%r69,%r134; .loc 1 367 10 add.u32 %r70,%r135,%r58; .loc 1 369 16 add.u64 %r60,%r60,4; .loc 1 369 19 shr.u32 %r136,%r29,16; .loc 1 369 37 shr.u32 %r138,%r32,16; .loc 1 369 30 mad.lo.u32 %r139,%r136,%r69,%r138; .loc 1 368 14 shr.u32 %r140,%r70,16; .loc 1 369 11 add.u32 %r72,%r139,%r140; .loc 1 370 14 shr.u32 %r58,%r72,16; .loc 1 371 8 shl.b32 %r141,%r72,16; and.b32 %r142,%r70,65535; or.b32 %r143,%r141,%r142; st.u32 [%r79],%r143; .loc 1 373 13 add.u64 %r79,%r79,4; setp.gt.u64 %r144,%r64,%r60; @ %r144 bra $L79; .loc 1 374 8 add.u64 %r145,%r77,%r123; st.u32 [%r145],%r58; .loc 1 376 16 ld.u32 %r28,[%r76]; $L78: .loc 1 376 14 shr.u32 %r73,%r28,16; .loc 1 376 10 setp.eq.u32 %r146,%r73,0; @ %r146 bra $L80; .loc 1 381 7 ld.u32 %r62,[%r77]; mov.u64 %r83,%r168; mov.u32 %r53,%r62; mov.u64 %r61,%r77; .loc 1 380 10 mov.u32 %r59,%r169; $L81: .loc 1 384 16 ld.u16 %r147,[%r83]; .loc 1 384 37 shr.u32 %r150,%r53,16; .loc 1 384 30 mad.lo.u32 %r151,%r147,%r73,%r150; .loc 1 384 10 add.u32 %r74,%r151,%r59; .loc 1 386 8 add.u64 %r61,%r61,4; shl.b32 %r152,%r74,16; and.b32 %r153,%r62,65535; or.b32 %r154,%r152,%r153; st.u32 [%r61+-4],%r154; .loc 1 387 33 ld.u32 %r53,[%r61]; .loc 1 387 19 ld.u32 %r156,[%r83]; shr.u32 %r155,%r156,16; .loc 1 387 37 and.b32 %r158,%r53,65535; .loc 1 387 30 mad.lo.u32 %r159,%r155,%r73,%r158; .loc 1 385 14 shr.u32 %r160,%r74,16; .loc 1 387 11 add.u32 %r62,%r159,%r160; .loc 1 388 14 shr.u32 %r59,%r62,16; .loc 1 390 13 add.u64 %r83,%r83,4; setp.gt.u64 %r161,%r64,%r83; @ %r161 bra $L81; .loc 1 391 8 add.u64 %r162,%r77,%r123; st.u32 [%r162],%r62; $L80: .loc 1 358 22 add.u64 %r76,%r76,4; .loc 1 358 29 add.u64 %r77,%r77,4; .loc 1 358 13 setp.gt.u64 %r163,%r65,%r76; @ %r163 bra $L82; bra $L72; $L83: .loc 1 413 54 add.u32 %r68,%r68,-1; .loc 1 413 43 setp.eq.u32 %r164,%r68,0; @ %r164 bra $L75; $L74: add.u64 %r67,%r67,-4; ld.u32 %r165,[%r67]; setp.eq.u32 %r166,%r165,0; @ %r166 bra $L83; $L75: .loc 1 414 11 st.u32 [%r106+20],%r68; .loc 1 416 1 mov.u64 %value,%r106; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __pow5mult .visible .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u64 %r78; .reg .u64 %r79; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u32 %r38,%ar2; .loc 1 425 10 and.b32 %r26,%r38,3; .loc 1 425 6 setp.eq.u32 %r39,%r26,0; @ %r39 bra $L100; .loc 1 426 29 cvta.const.u64 %r44,p05$0; .loc 1 426 32 add.u32 %r45,%r26,-1; .loc 1 426 29 cvt.s64.s32 %r46,%r45; shl.b64 %r47,%r46,2; add.u64 %r48,%r44,%r47; .loc 1 426 9 mov.u32 %r43,0; ld.u32 %r42,[%r48]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r42; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r43; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r49,[%value_in]; } mov.u64 %r37,%r49; $L100: .loc 1 428 11 shr.s32 %r25,%r38,2; .loc 1 428 6 setp.eq.u32 %r50,%r25,0; @ %r50 bra $L107; .loc 1 431 12 ld.u64 %r27,[%r36+112]; .loc 1 431 6 setp.ne.u64 %r51,%r27,0; @ %r51 bra $L102; .loc 1 320 7 mov.u32 %r53,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r53; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r54,[%value_in]; } mov.u64 %r27,%r54; setp.ne.u64 %r55,%r54,0; @ %r55 bra $L103; cvta.const.u64 %r59,$LC0; mov.u32 %r57,320; cvta.const.u64 %r56,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r57; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r54; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r59; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L103: .loc 1 321 12 mov.u32 %r60,625; st.u32 [%r27+24],%r60; .loc 1 322 11 st.u32 [%r27+20],%r53; .loc 1 434 31 st.u64 [%r36+112],%r27; .loc 1 435 17 mov.u64 %r62,0; st.u64 [%r27],%r62; $L102: .loc 1 420 1 mov.u64 %r35,%r37; bra $L104; $L106: mov.u64 %r27,%r29; $L104: .loc 1 439 13 and.b32 %r63,%r25,1; .loc 1 439 10 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L105; .loc 1 441 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r68,[%value_in]; } .loc 1 139 6 setp.eq.u64 %r69,%r35,0; @ %r69 bra $L108; .loc 1 141 41 ld.s32 %r70,[%r35+8]; shl.b64 %r71,%r70,3; ld.u64 %r72,[%r36+120]; add.u64 %r33,%r72,%r71; ld.u64 %r34,[%r33]; .loc 1 141 16 st.u64 [%r35],%r34; .loc 1 142 38 st.u64 [%r33],%r35; .loc 1 443 6 mov.u64 %r35,%r68; bra $L105; $L108: mov.u64 %r35,%r68; $L105: .loc 1 445 15 shr.s32 %r25,%r25,1; .loc 1 445 10 setp.eq.u32 %r73,%r25,0; @ %r73 bra $L99; .loc 1 447 17 ld.u64 %r29,[%r27]; .loc 1 447 10 setp.ne.u64 %r74,%r29,0; @ %r74 bra $L106; .loc 1 449 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r78,[%value_in]; } mov.u64 %r29,%r78; .loc 1 449 20 st.u64 [%r27],%r29; .loc 1 450 15 mov.u64 %r79,0; st.u64 [%r78],%r79; bra $L106; $L107: .loc 1 429 12 mov.u64 %r35,%r37; $L99: .loc 1 455 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __lshift .visible .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r60; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r70; .reg .u64 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .pred %r85; .reg .u64 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .u64 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .pred %r115; .reg .u64 %r116; .reg .u64 %r118; .reg .u64 %r120; .reg .u64 %r121; .reg .pred %r122; .reg .pred %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; mov.u64 %r79,%ar0; mov.u64 %r80,%ar1; mov.u32 %r81,%ar2; .loc 1 465 5 shr.s32 %r37,%r81,5; .loc 1 469 6 ld.u32 %r43,[%r80+8]; .loc 1 470 10 ld.u32 %r82,[%r80+20]; add.u32 %r23,%r37,%r82; .loc 1 470 6 add.u32 %r38,%r23,1; .loc 1 471 10 ld.u32 %r44,[%r80+12]; .loc 1 471 27 setp.le.s32 %r83,%r38,%r44; @ %r83 bra $L119; $L120: .loc 1 472 7 add.u32 %r43,%r43,1; .loc 1 471 34 add.u32 %r44,%r44,%r44; .loc 1 471 27 setp.gt.s32 %r85,%r38,%r44; @ %r85 bra $L120; $L119: .loc 1 473 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r43; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r88,[%value_in]; } setp.ne.u64 %r89,%r88,0; @ %r89 bra $L121; cvta.const.u64 %r93,$LC0; mov.u32 %r91,473; cvta.const.u64 %r90,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r90; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r91; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r88; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r93; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L121: .loc 1 474 6 add.u64 %r34,%r88,24; .loc 1 475 17 setp.le.s32 %r94,%r37,0; @ %r94 bra $L122; mov.u64 %r70,%r34; add.u32 %r95,%r37,-1; cvt.u64.u32 %r96,%r95; shl.b64 %r97,%r96,2; add.u64 %r98,%r97,28; add.u64 %r77,%r88,%r98; .loc 1 476 11 mov.u32 %r99,0; $L123: st.u32 [%r70],%r99; .loc 1 475 17 add.u64 %r70,%r70,4; setp.ne.u64 %r100,%r70,%r77; @ %r100 bra $L123; .loc 1 476 8 cvt.u64.u32 %r101,%r37; shl.b64 %r102,%r101,2; add.u64 %r34,%r34,%r102; $L122: .loc 1 477 5 add.u64 %r103,%r80,24; .loc 1 478 10 ld.s32 %r104,[%r80+20]; shl.b64 %r105,%r104,2; .loc 1 478 6 add.u64 %r40,%r103,%r105; .loc 1 480 9 and.b32 %r41,%r81,31; .loc 1 480 6 setp.eq.u32 %r106,%r41,0; @ %r106 bra $L124; .loc 1 482 10 mov.u32 %r107,32; sub.u32 %r42,%r107,%r41; mov.u64 %r33,%r103; mov.u64 %r60,%r34; .loc 1 483 9 mov.u32 %r36,0; $L125: .loc 1 486 15 ld.u32 %r109,[%r33]; shl.b32 %r108,%r109,%r41; .loc 1 486 20 or.b32 %r110,%r108,%r36; .loc 1 486 10 st.u32 [%r60],%r110; .loc 1 487 6 ld.u32 %r111,[%r33]; shr.u32 %r36,%r111,%r42; .loc 1 489 16 add.u64 %r33,%r33,4; add.u64 %r60,%r60,4; setp.gt.u64 %r112,%r40,%r33; @ %r112 bra $L125; .loc 1 486 7 add.u64 %r114,%r80,25; setp.lt.u64 %r115,%r40,%r114; @ %r115 bra $L126; sub.u64 %r116,%r40,%r80; add.u64 %r118,%r116,-25; and.b64 %r120,%r118,-4; add.u64 %r113,%r120,4; bra $L127; $L126: mov.u64 %r113,4; $L127: .loc 1 490 16 add.u64 %r121,%r34,%r113; st.u32 [%r121],%r36; .loc 1 490 10 setp.eq.u32 %r122,%r36,0; .loc 1 470 6 selp.u32 %r23,%r23,%r38,%r122; bra $L128; $L124: mov.u64 %r64,%r103; mov.u64 %r66,%r34; $L129: .loc 1 510 15 ld.u32 %r31,[%r64]; .loc 1 510 13 st.u32 [%r66],%r31; .loc 1 511 14 add.u64 %r64,%r64,4; add.u64 %r66,%r66,4; setp.gt.u64 %r123,%r40,%r64; @ %r123 bra $L129; $L128: .loc 1 512 12 st.u32 [%r88+20],%r23; .loc 1 141 41 ld.s32 %r124,[%r80+8]; shl.b64 %r125,%r124,3; ld.u64 %r126,[%r79+120]; add.u64 %r48,%r126,%r125; ld.u64 %r49,[%r48]; .loc 1 141 16 st.u64 [%r80],%r49; .loc 1 142 38 st.u64 [%r48],%r80; .loc 1 515 1 mov.u64 %value,%r88; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __mcmp .visible .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 523 5 ld.u32 %r27,[%r32+20]; .loc 1 524 5 ld.u32 %r28,[%r33+20]; .loc 1 531 9 sub.u32 %r31,%r27,%r28; .loc 1 531 6 setp.ne.u32 %r34,%r27,%r28; @ %r34 bra $L136; .loc 1 533 7 add.u64 %r29,%r32,24; .loc 1 534 12 cvt.s64.s32 %r35,%r28; shl.b64 %r22,%r35,2; .loc 1 534 6 add.u64 %r25,%r29,%r22; .loc 1 535 7 add.u64 %r36,%r33,24; .loc 1 536 6 add.u64 %r26,%r36,%r22; $L139: .loc 1 539 10 add.u64 %r25,%r25,-4; .loc 1 539 11 ld.u32 %r23,[%r25]; .loc 1 539 10 add.u64 %r26,%r26,-4; .loc 1 539 20 ld.u32 %r24,[%r26]; .loc 1 539 10 setp.eq.u32 %r37,%r23,%r24; @ %r37 bra $L138; .loc 1 540 24 setp.lt.u32 %r38,%r23,%r24; selp.u32 %r31,-1,1,%r38; bra $L136; $L138: .loc 1 541 10 setp.lt.u64 %r39,%r29,%r25; @ %r39 bra $L139; $L136: .loc 1 545 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __mdiff .visible .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r41; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u64 %r91; .reg .u64 %r94; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u64 %r118; .reg .u32 %r119; .reg .u32 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u64 %r144; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r149; .reg .u64 %r151; .reg .pred %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u64 %r162; .reg .pred %r163; .reg .u32 %r164; .reg .pred %r165; .reg .pred %r167; .reg .u32 %r169; .reg .u64 %r170; .reg .pred %r171; .reg .pred %r172; mov.u64 %r104,%ar0; mov.u64 %r105,%ar1; mov.u64 %r106,%ar2; .loc 1 523 5 ld.u32 %r75,[%r105+20]; .loc 1 524 5 ld.u32 %r76,[%r106+20]; .loc 1 531 9 sub.u32 %r53,%r75,%r76; .loc 1 531 6 setp.ne.u32 %r109,%r75,%r76; @ %r109 bra $L143; .loc 1 533 7 add.u64 %r77,%r105,24; .loc 1 534 12 cvt.s64.s32 %r110,%r76; shl.b64 %r78,%r110,2; .loc 1 534 6 add.u64 %r80,%r77,%r78; .loc 1 535 7 add.u64 %r111,%r106,24; .loc 1 536 6 add.u64 %r82,%r111,%r78; $L147: .loc 1 539 10 add.u64 %r80,%r80,-4; .loc 1 539 11 ld.u32 %r81,[%r80]; .loc 1 539 10 add.u64 %r82,%r82,-4; .loc 1 539 20 ld.u32 %r83,[%r82]; .loc 1 539 10 setp.eq.u32 %r112,%r81,%r83; @ %r112 bra $L144; .loc 1 540 24 setp.ge.u32 %r113,%r81,%r83; @ %r113 bra $L145; mov.u64 %r108,%r105; mov.u64 %r105,%r106; mov.u64 %r106,%r108; .loc 1 572 9 mov.u32 %r53,1; bra $L145; $L144: .loc 1 541 10 setp.ge.u64 %r114,%r77,%r80; @ ! %r114 bra $L147; bra $L146; $L159: .loc 1 562 11 cvta.const.u64 %r118,$LC0; mov.u32 %r116,562; cvta.const.u64 %r115,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r116; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r118; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L166: .loc 1 563 15 mov.u32 %r119,1; st.u32 [%r103+20],%r119; .loc 1 564 16 st.u32 [%r103+24],%r169; .loc 1 565 14 bra $L142; $L161: .loc 1 575 7 mov.u32 %r53,0; $L145: .loc 1 576 7 ld.u32 %r123,[%r105+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r124,[%value_in]; } mov.u64 %r103,%r124; setp.ne.u64 %r125,%r124,0; @ %r125 bra $L149; cvta.const.u64 %r129,$LC0; mov.u32 %r127,576; cvta.const.u64 %r126,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r126; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r127; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r124; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r129; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L149: .loc 1 577 12 st.u32 [%r124+16],%r53; .loc 1 578 6 ld.u32 %r70,[%r105+20]; .loc 1 579 6 add.u64 %r61,%r105,24; .loc 1 580 12 cvt.s64.s32 %r130,%r70; shl.b64 %r131,%r130,2; .loc 1 580 7 add.u64 %r62,%r61,%r131; .loc 1 582 6 add.u64 %r57,%r106,24; .loc 1 583 12 ld.s32 %r132,[%r106+20]; shl.b64 %r133,%r132,2; .loc 1 583 7 add.u64 %r64,%r57,%r133; .loc 1 584 6 add.u64 %r65,%r124,24; mov.u64 %r55,%r65; .loc 1 579 6 mov.u64 %r56,%r61; .loc 1 585 10 mov.u32 %r54,0; $L150: .loc 1 589 12 ld.u32 %r25,[%r56]; .loc 1 589 29 ld.u32 %r27,[%r57]; .loc 1 589 16 and.b32 %r134,%r25,65535; .loc 1 589 33 and.b32 %r136,%r27,65535; .loc 1 589 43 vsub.u32.u32.u32.add %r66,%r54,%r136,%r134; .loc 1 592 15 add.u64 %r56,%r56,4; .loc 1 592 31 add.u64 %r57,%r57,4; .loc 1 592 18 shr.u32 %r137,%r25,16; .loc 1 592 34 shr.u32 %r138,%r27,16; .loc 1 590 14 shr.s32 %r140,%r66,16; .loc 1 592 41 vsub.u32.u32.u32.add %r68,%r137,%r138,%r140; .loc 1 593 14 shr.s32 %r54,%r68,16; .loc 1 595 7 shl.b32 %r141,%r68,16; and.b32 %r142,%r66,65535; or.b32 %r51,%r141,%r142; st.u32 [%r55],%r51; .loc 1 597 13 add.u64 %r55,%r55,4; setp.gt.u64 %r143,%r64,%r57; @ %r143 bra $L150; add.u64 %r94,%r106,25; sub.u64 %r144,%r64,%r106; add.u64 %r146,%r144,-25; shr.u64 %r91,%r146,2; setp.lt.u64 %r172,%r64,%r94; @ %r172 bra $L151; shl.b64 %r147,%r91,2; bra $L152; $L151: mov.u64 %r147,0; $L152: add.u64 %r69,%r65,%r147; @ %r172 bra $L153; add.u64 %r151,%r91,1; shl.b64 %r149,%r151,2; bra $L154; $L153: mov.u64 %r149,4; $L154: .loc 1 592 15 add.u64 %r102,%r61,%r149; .loc 1 595 7 add.u64 %r101,%r65,%r149; .loc 1 598 13 setp.le.u64 %r152,%r62,%r102; @ %r152 bra $L155; mov.u64 %r60,%r101; mov.u64 %r73,%r102; $L156: .loc 1 600 12 ld.u32 %r41,[%r73]; .loc 1 600 16 and.b32 %r153,%r41,65535; .loc 1 600 26 add.u32 %r71,%r153,%r54; .loc 1 603 15 add.u64 %r73,%r73,4; .loc 1 603 18 shr.u32 %r154,%r41,16; .loc 1 601 14 shr.s32 %r155,%r71,16; .loc 1 603 25 add.u32 %r74,%r154,%r155; .loc 1 604 14 shr.s32 %r54,%r74,16; .loc 1 606 7 shl.b32 %r156,%r74,16; and.b32 %r157,%r71,65535; or.b32 %r51,%r156,%r157; st.u32 [%r60],%r51; .loc 1 598 13 add.u64 %r60,%r60,4; setp.gt.u64 %r158,%r62,%r73; @ %r158 bra $L156; add.u64 %r159,%r62,-1; sub.u64 %r160,%r159,%r102; and.b64 %r162,%r160,-4; add.u64 %r69,%r101,%r162; $L155: .loc 1 625 10 setp.ne.u32 %r163,%r51,0; @ %r163 bra $L157; $L158: .loc 1 626 7 add.u32 %r70,%r70,-1; .loc 1 625 10 add.u64 %r69,%r69,-4; ld.u32 %r164,[%r69]; setp.eq.u32 %r165,%r164,0; @ %r165 bra $L158; $L157: .loc 1 627 11 st.u32 [%r124+20],%r70; .loc 1 628 10 bra $L142; $L143: .loc 1 567 6 setp.ge.s32 %r167,%r53,0; @ %r167 bra $L161; mov.u64 %r107,%r105; mov.u64 %r105,%r106; mov.u64 %r106,%r107; .loc 1 572 9 mov.u32 %r53,1; bra $L145; $L146: .loc 1 562 11 mov.u32 %r169,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r169; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r170,[%value_in]; } mov.u64 %r103,%r170; setp.eq.u64 %r171,%r103,0; @ ! %r171 bra $L166; bra $L159; $L142: .loc 1 629 1 mov.u64 %value,%r103; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ulp .visible .func (.param .f64 %value_out) __ulp (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u32 %r29; .reg .f64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; mov.f64 %r33,%ar0; .loc 1 639 18 mov.b64 %r34,%r33; shr.u64 %r35,%r34,32; cvt.u32.u64 %r36,%r35; and.b32 %r37,%r36,2146435072; .loc 1 639 30 add.u32 %r23,%r37,-54525952; .loc 1 641 6 setp.gt.s32 %r38,%r23,0; @ %r38 bra $L171; .loc 1 656 11 neg.s32 %r24,%r23; .loc 1 656 9 shr.s32 %r28,%r24,20; .loc 1 657 10 setp.gt.s32 %r39,%r24,20971519; @ %r39 bra $L169; .loc 1 659 24 mov.u32 %r40,524288; shr.s32 %r23,%r40,%r28; mov.u32 %r26,0; bra $L168; $L169: .loc 1 667 6 add.u32 %r29,%r28,-20; .loc 1 669 34 setp.gt.s32 %r41,%r29,30; @ %r41 bra $L172; mov.u32 %r42,-2147483648; shr.u32 %r26,%r42,%r29; bra $L170; $L172: mov.u32 %r26,1; $L170: mov.u32 %r23,0; bra $L168; $L171: mov.u32 %r26,0; $L168: .loc 1 647 17 cvt.u64.u32 %r43,%r23; .loc 1 649 17 cvt.u64.u32 %r47,%r26; shl.b64 %r48,%r43,32; or.b64 %r49,%r48,%r47; .loc 1 674 11 mov.b64 %value,%r49; .loc 1 675 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __b2d .visible .func (.param .f64 %value_out) __b2d (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .u32 %r30; .reg .u32 %r32; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r50; .reg .f64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .pred %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u64 %r79; .reg .u64 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .u64 %r92; .reg .u64 %r93; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r98; .reg .pred %r102; mov.u64 %r52,%ar0; mov.u64 %r53,%ar1; .loc 1 690 7 add.u64 %r37,%r52,24; .loc 1 691 12 ld.s32 %r54,[%r52+20]; shl.b64 %r55,%r54,2; .loc 1 691 6 add.u64 %r38,%r37,%r55; .loc 1 692 5 add.u64 %r39,%r38,-4; ld.u32 %r40,[%r38+-4]; .loc 1 697 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r40; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 698 11 mov.u32 %r59,32; sub.u32 %r58,%r59,%r57; .loc 1 698 6 st.u32 [%r53],%r58; .loc 1 700 6 setp.gt.s32 %r60,%r57,10; @ %r60 bra $L174; .loc 1 702 32 mov.u32 %r61,11; sub.u32 %r25,%r61,%r57; .loc 1 702 22 shr.u32 %r62,%r40,%r25; .loc 1 702 18 or.b32 %r63,%r62,1072693248; .loc 1 702 10 cvt.u64.u32 %r64,%r63; shl.b64 %r50,%r64,32; .loc 1 703 28 setp.ge.u64 %r68,%r37,%r39; @ %r68 bra $L181; .loc 1 705 40 ld.u32 %r69,[%r38+-8]; shr.u32 %r46,%r69,%r25; bra $L175; $L181: mov.u32 %r46,0; $L175: .loc 1 705 31 add.u32 %r70,%r57,21; .loc 1 705 14 shl.b32 %r71,%r40,%r70; .loc 1 705 36 or.b32 %r30,%r71,%r46; .loc 1 707 7 bra $L176; $L174: .loc 1 710 9 add.u32 %r47,%r57,-11; .loc 1 709 24 setp.ge.u64 %r72,%r37,%r39; @ %r72 bra $L177; ld.u32 %r30,[%r38+-8]; .loc 1 710 6 setp.eq.u32 %r73,%r47,0; @ %r73 bra $L178; .loc 1 712 38 sub.u32 %r32,%r59,%r47; .loc 1 712 22 shl.b32 %r75,%r40,%r47; .loc 1 712 31 shr.u32 %r76,%r30,%r32; .loc 1 712 27 or.b32 %r77,%r75,%r76; or.b32 %r78,%r77,1072693248; .loc 1 712 10 cvt.u64.u32 %r79,%r78; shl.b64 %r50,%r79,32; .loc 1 715 14 shl.b32 %r30,%r30,%r47; .loc 1 709 24 add.u64 %r83,%r38,-8; .loc 1 713 28 setp.ge.u64 %r84,%r37,%r83; @ %r84 bra $L176; .loc 1 715 23 ld.u32 %r86,[%r38+-12]; shr.u32 %r85,%r86,%r32; .loc 1 715 19 or.b32 %r30,%r30,%r85; bra $L176; $L178: .loc 1 720 18 or.b32 %r87,%r40,1072693248; .loc 1 720 10 cvt.u64.u32 %r88,%r87; shl.b64 %r50,%r88,32; $L176: .loc 1 705 10 cvt.u64.u32 %r92,%r30; and.b64 %r93,%r50,-4294967296; or.b64 %r50,%r93,%r92; .loc 1 750 11 mov.b64 %r51,%r50; bra $L185; $L180: .loc 1 712 22 shl.b32 %r96,%r40,%r47; .loc 1 712 27 or.b32 %r97,%r96,1072693248; .loc 1 712 10 cvt.u64.u32 %r98,%r97; shl.b64 %r50,%r98,32; mov.u32 %r30,0; bra $L176; $L177: .loc 1 710 6 setp.ne.u32 %r102,%r47,0; @ %r102 bra $L180; .loc 1 709 24 mov.u32 %r30,%r47; bra $L178; $L185: .loc 1 751 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __d2b .visible .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r30; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r51; .reg .f64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .u64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u32 %r96; .reg .u32 %r97; mov.u64 %r51,%ar0; mov.f64 %r52,%ar1; mov.u64 %r53,%ar2; mov.u64 %r54,%ar3; .loc 1 778 7 mov.u32 %r56,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r56; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r57,[%value_in]; } setp.ne.u64 %r58,%r57,0; @ %r58 bra $L187; cvta.const.u64 %r62,$LC0; mov.u32 %r60,778; cvta.const.u64 %r59,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r60; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r62; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L187: mov.b64 %r63,%r52; shr.u64 %r64,%r63,32; cvt.u32.u64 %r65,%r64; .loc 1 784 10 and.b32 %r22,%r65,1048575; .loc 1 792 23 shr.u32 %r66,%r65,20; and.b32 %r24,%r66,2047; .loc 1 792 6 setp.ne.u32 %r67,%r24,0; @ %r67 bra $L188; .loc 1 784 5 st.u32 [%frame],%r22; bra $L189; $L188: .loc 1 793 7 or.b32 %r68,%r22,1048576; st.u32 [%frame],%r68; $L189: mov.b64 %r69,%r52; cvt.u32.u64 %r70,%r69; .loc 1 797 6 setp.eq.u32 %r71,%r70,0; @ %r71 bra $L190; .loc 1 799 9 st.u32 [%frame+4],%r70; .loc 1 800 11 add.u64 %r73,%frame,4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r74,[%value_in]; } mov.u32 %r43,%r74; .loc 1 803 23 ld.u32 %r30,[%frame]; .loc 1 801 10 setp.eq.u32 %r75,%r43,0; @ %r75 bra $L191; .loc 1 803 30 mov.u32 %r77,32; sub.u32 %r76,%r77,%r43; .loc 1 803 23 shl.b32 %r78,%r30,%r76; .loc 1 803 19 ld.u32 %r80,[%frame+4]; or.b32 %r79,%r78,%r80; .loc 1 803 15 st.u32 [%r57+24],%r79; .loc 1 804 6 shr.u32 %r30,%r30,%r43; st.u32 [%frame],%r30; bra $L192; $L191: .loc 1 807 7 ld.u32 %r81,[%frame+4]; st.u32 [%r57+24],%r81; $L192: .loc 1 808 27 st.u32 [%r57+28],%r30; .loc 1 808 36 setp.ne.u32 %r82,%r30,0; selp.u32 %r42,2,1,%r82; bra $L194; $L190: .loc 1 817 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r84,[%value_in]; } .loc 1 818 12 ld.u32 %r85,[%frame]; st.u32 [%r57+24],%r85; .loc 1 821 9 add.u32 %r43,%r84,32; .loc 1 819 9 mov.u32 %r42,1; $L194: .loc 1 808 19 st.u32 [%r57+20],%r42; .loc 1 879 6 setp.eq.u32 %r86,%r24,0; @ %r86 bra $L195; .loc 1 886 22 add.u32 %r87,%r24,-1075; .loc 1 886 32 add.u32 %r88,%r87,%r43; .loc 1 886 10 st.u32 [%r53],%r88; .loc 1 887 17 mov.u32 %r89,53; sub.u32 %r23,%r89,%r43; bra $L196; $L195: .loc 1 893 36 add.u32 %r90,%r43,-1074; .loc 1 893 10 st.u32 [%r53],%r90; .loc 1 895 34 cvt.s64.s32 %r92,%r42; shl.b64 %r93,%r92,2; .loc 1 895 24 add.u64 %r94,%r57,%r93; ld.u32 %r91,[%r94+20]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r96,[%value_in]; } .loc 1 895 18 shl.b32 %r97,%r42,5; .loc 1 895 22 sub.u32 %r23,%r97,%r96; $L196: .loc 1 887 13 st.u32 [%r54],%r23; .loc 1 902 1 mov.u64 %value,%r57; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ratio .visible .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r22; .reg .u32 %r35; .reg .f64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r47; .reg .f64 %r48; .reg .f64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r70; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; mov.u64 %r43,%ar0; mov.u64 %r44,%ar1; .loc 1 913 10 add.u64 %r47,%frame,4; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; call (%value_in),__b2d,(%out_arg1,%out_arg2); ld.param.f64 %r48,[%value_in]; } mov.f64 %r39,%r48; .loc 1 913 8 mov.b64 %r40,%r39; .loc 1 914 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__b2d,(%out_arg1,%out_arg2); ld.param.f64 %r51,[%value_in]; } mov.f64 %r22,%r51; .loc 1 914 8 mov.b64 %r41,%r22; .loc 1 916 31 ld.u32 %r53,[%r43+20]; ld.u32 %r54,[%r44+20]; sub.u32 %r52,%r53,%r54; .loc 1 916 20 shl.b32 %r55,%r52,5; .loc 1 916 10 ld.u32 %r57,[%frame+4]; ld.u32 %r58,[%frame]; .loc 1 916 5 vsub.u32.u32.u32.add %r35,%r57,%r58,%r55; .loc 1 935 6 setp.le.s32 %r59,%r35,0; @ %r59 bra $L199; .loc 1 936 21 shl.b32 %r60,%r35,20; .loc 1 936 16 shr.u64 %r62,%r40,32; cvt.u32.u64 %r63,%r62; add.u32 %r64,%r60,%r63; cvt.u64.u32 %r65,%r64; shl.b64 %r66,%r65,32; and.b64 %r67,%r40,4294967295; or.b64 %r68,%r67,%r66; .loc 1 943 12 mov.b64 %r39,%r68; bra $L200; $L199: .loc 1 940 23 shl.b32 %r70,%r35,20; .loc 1 940 18 shr.u64 %r73,%r41,32; cvt.u32.u64 %r74,%r73; sub.u32 %r75,%r74,%r70; cvt.u64.u32 %r76,%r75; shl.b64 %r77,%r76,32; and.b64 %r78,%r41,4294967295; or.b64 %r79,%r78,%r77; .loc 1 943 19 mov.b64 %r22,%r79; $L200: .loc 1 943 15 div.rn.f64 %value,%r39,%r22; .loc 1 944 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _mprec_log10 .visible .func (.param .f64 %value_out) _mprec_log10 (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .u32 %r23; .reg .pred %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; mov.u32 %r23,%ar0; .loc 1 975 6 setp.gt.s32 %r24,%r23,23; @ %r24 bra $L204; .loc 1 976 16 cvta.const.u64 %r25,__mprec_tens; cvt.s64.s32 %r26,%r23; shl.b64 %r27,%r26,3; add.u64 %r28,%r25,%r27; ld.f64 %r22,[%r28]; bra $L201; $L204: .loc 1 974 10 mov.f64 %r22,0d3ff0000000000000; $L202: .loc 1 979 9 mul.f64 %r22,%r22,0d4024000000000000; .loc 1 980 10 add.u32 %r23,%r23,-1; .loc 1 977 14 setp.ne.u32 %r29,%r23,0; @ %r29 bra $L202; $L201: .loc 1 983 1 mov.f64 %value,%r22; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __copybits .visible .func __copybits (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r27; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; mov.u64 %r48,%ar0; mov.u32 %r49,%ar1; mov.u64 %r50,%ar2; .loc 1 995 14 add.u32 %r51,%r49,-1; .loc 1 995 18 shr.s32 %r52,%r51,5; .loc 1 995 29 add.u32 %r53,%r52,1; cvt.s64.s32 %r54,%r53; shl.b64 %r55,%r54,2; .loc 1 995 5 add.u64 %r32,%r48,%r55; .loc 1 996 4 add.u64 %r33,%r50,24; .loc 1 998 9 ld.s32 %r56,[%r50+20]; shl.b64 %r57,%r56,2; .loc 1 998 5 add.u64 %r34,%r33,%r57; .loc 1 999 10 setp.ge.u64 %r58,%r33,%r34; @ %r58 bra $L207; mov.u64 %r42,%r48; mov.u64 %r43,%r33; $L208: .loc 1 1000 10 ld.u32 %r27,[%r43]; .loc 1 1000 8 st.u32 [%r42],%r27; .loc 1 999 10 add.u64 %r42,%r42,4; add.u64 %r43,%r43,4; setp.gt.u64 %r59,%r34,%r43; @ %r59 bra $L208; .loc 1 1000 5 sub.u64 %r60,%r34,%r50; add.u64 %r62,%r60,-25; and.b64 %r64,%r62,-4; add.u64 %r65,%r64,4; add.u64 %r48,%r48,%r65; $L207: .loc 1 1009 10 setp.le.u64 %r66,%r32,%r48; @ %r66 bra $L206; mov.u64 %r31,%r48; .loc 1 1010 8 mov.u32 %r67,0; $L210: st.u32 [%r31],%r67; .loc 1 1009 10 add.u64 %r31,%r31,4; setp.gt.u64 %r68,%r32,%r31; @ %r68 bra $L210; $L206: .loc 1 1011 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __any_on .visible .func (.param .u32 %value_out) __any_on (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; mov.u64 %r34,%ar0; mov.u32 %r35,%ar1; .loc 1 1020 4 add.u64 %r24,%r34,24; .loc 1 1021 7 ld.u32 %r25,[%r34+20]; .loc 1 1022 4 shr.s32 %r26,%r35,5; .loc 1 1023 5 setp.ge.s32 %r36,%r25,%r26; @ %r36 bra $L214; .loc 1 1033 4 cvt.s64.s32 %r37,%r25; shl.b64 %r38,%r37,2; add.u64 %r23,%r24,%r38; bra $L217; $L214: .loc 1 1026 14 cvt.s64.s32 %r39,%r26; shl.b64 %r40,%r39,2; add.u64 %r23,%r24,%r40; .loc 1 1025 10 setp.le.s32 %r41,%r25,%r26; @ %r41 bra $L217; .loc 1 1025 26 and.b32 %r27,%r35,31; .loc 1 1025 20 setp.eq.u32 %r42,%r27,0; @ %r42 bra $L217; .loc 1 1026 11 ld.u32 %r28,[%r23]; .loc 1 1027 6 shr.u32 %r29,%r28,%r27; .loc 1 1028 6 shl.b32 %r43,%r29,%r27; .loc 1 1029 6 setp.ne.u32 %r44,%r28,%r43; @ %r44 bra $L219; bra $L217; $L218: .loc 1 1035 6 add.u64 %r23,%r23,-4; ld.u32 %r45,[%r23]; setp.ne.u32 %r46,%r45,0; @ %r46 bra $L220; $L217: .loc 1 1034 10 setp.gt.u64 %r47,%r23,%r24; @ %r47 bra $L218; .loc 1 1037 9 mov.u32 %r33,0; bra $L213; $L219: .loc 1 1030 11 mov.u32 %r33,1; bra $L213; $L220: mov.u32 %r33,1; $L213: .loc 1 1038 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-mrand48.o/0 0 0 644 1842 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mrand48_r .visible .func (.param .u64 %value_out) _mrand48_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/mrand48.c" // BEGIN GLOBAL FUNCTION DECL: mrand48 .visible .func (.param .u64 %value_out) mrand48; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _mrand48_r .visible .func (.param .u64 %value_out) _mrand48_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; mov.u64 %r29,%ar0; .loc 1 20 17 add.u64 %r32,%r29,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r34,[%r29+244]; .loc 1 21 35 shl.b64 %r35,%r34,16; .loc 1 21 44 ld.u16 %r36,[%r29+242]; .loc 1 21 42 add.u64 %value,%r35,%r36; .loc 1 22 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: mrand48 .visible .func (.param .u64 %value_out) mrand48 { .reg .u64 %value; .reg .u64 %r22; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .loc 1 28 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 20 17 add.u64 %r32,%r22,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r34,[%r22+244]; .loc 1 21 35 shl.b64 %r35,%r34,16; .loc 1 21 44 ld.u16 %r36,[%r22+242]; .loc 1 21 42 add.u64 %value,%r35,%r36; .loc 1 29 1 st.param.u64 [%value_out],%value; ret; } lib_a-msize.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-msizer.o/ 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-mstats.o/ 0 0 0 644 173 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mstats .visible .global .align 4 .u32 _dummy_mstats[1] = {1 }; lib_a-mtrim.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-ndbm.o/ 0 0 0 644 13278 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: dbm_open .visible .func (.param .u64 %value_out) dbm_open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/search/ndbm.c" // BEGIN GLOBAL FUNCTION DECL: dbm_close .visible .func dbm_close (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: dbm_fetch .visible .func dbm_fetch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: dbm_firstkey .visible .func dbm_firstkey (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: dbm_nextkey .visible .func dbm_nextkey (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: dbm_delete .visible .func (.param .u32 %value_out) dbm_delete (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: dbm_store .visible .func (.param .u32 %value_out) dbm_store (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: dbm_error .visible .func (.param .u32 %value_out) dbm_error (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: dbm_clearerr .visible .func (.param .u32 %value_out) dbm_clearerr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: dbm_dirfno .visible .func (.param .u32 %value_out) dbm_dirfno (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strcat .extern .func (.param .u64 %value_out) strcat (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __hash_open .extern .func (.param .u64 %value_out) __hash_open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {46,100,98,0 }; // BEGIN GLOBAL FUNCTION DEF: dbm_open .visible .func (.param .u64 %value_out) dbm_open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[1056]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u64 %r46; .reg .u64 %r49; .reg .u64 %r55; .reg .u64 %r56; mov.u64 %r28,%ar0; mov.u32 %r29,%ar1; mov.u32 %r30,%ar2; .loc 1 69 13 mov.u64 %r31,171798695936; st.u64 [%frame+1024],%r31; .loc 1 71 13 mov.u64 %r32,1; st.u64 [%frame+1032],%r32; .loc 1 73 12 mov.u64 %r33,0; st.u64 [%frame+1040],%r33; .loc 1 74 14 mov.u32 %r34,0; st.u32 [%frame+1048],%r34; .loc 1 76 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r36,[%value_in]; } .loc 1 76 37 cvta.const.u64 %r37,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r38,[%value_in]; } .loc 1 76 35 mov.u64 %r40,1024; sub.u64 %r39,%r40,%r38; .loc 1 76 4 setp.lt.u64 %r41,%r36,%r39; @ %r41 bra $L2; .loc 1 77 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r42,[%value_in]; } .loc 1 77 9 mov.u32 %r43,91; st.u32 [%r42],%r43; .loc 1 78 9 mov.u64 %r27,%r33; bra $L1; $L2: .loc 1 80 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r46,[%value_in]; } .loc 1 81 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r49,[%value_in]; } .loc 1 82 17 add.u64 %r55,%frame,1024; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r34; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r55; call (%value_in),__hash_open,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r56,[%value_in]; } mov.u64 %r27,%r56; $L1: .loc 1 83 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_close .visible .func dbm_close (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; mov.u64 %r23,%ar0; .loc 1 88 11 ld.u64 %r26,[%r23+8]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),%r26,(%out_arg1),$LCT0; ld.param.u32 %r25,[%value_in]; } .loc 1 89 1 ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_fetch .visible .func dbm_fetch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .pred %r42; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 103 14 ld.u64 %r33,[%r32]; st.u64 [%frame+16],%r33; .loc 1 104 19 ld.s32 %r34,[%r32+8]; st.u64 [%frame+24],%r34; .loc 1 105 14 add.u64 %r39,%frame,16; ld.u64 %r41,[%r31+24]; mov.u32 %r38,0; { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r38; call (%value_in),%r41,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u32 %r40,[%value_in]; } .loc 1 106 5 setp.ne.u32 %r42,%r40,0; @ %r42 bra $L7; .loc 1 110 27 ld.u64 %r27,[%frame]; .loc 1 111 16 ld.u32 %r29,[%frame+8]; bra $L6; $L7: mov.u32 %r29,%r38; mov.u64 %r27,0; $L6: .loc 1 112 9 st.u64 [%r30],%r27; st.u32 [%r30+8],%r29; .loc 1 113 1 ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_firstkey .visible .func dbm_firstkey (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .pred %r36; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 127 14 add.u64 %r33,%frame,16; ld.u64 %r35,[%r28+40]; mov.u32 %r32,3; { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),%r35,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT2; ld.param.u32 %r34,[%value_in]; } .loc 1 128 5 setp.ne.u32 %r36,%r34,0; @ %r36 bra $L10; .loc 1 130 25 ld.u64 %r26,[%frame+16]; bra $L9; $L10: mov.u64 %r26,0; $L9: .loc 1 131 15 ld.u32 %r24,[%frame+24]; .loc 1 132 9 st.u64 [%r27],%r26; st.u32 [%r27+8],%r24; .loc 1 133 1 ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_nextkey .visible .func dbm_nextkey (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .pred %r36; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 147 14 add.u64 %r33,%frame,16; ld.u64 %r35,[%r28+40]; mov.u32 %r32,7; { .param .u32 %value_in; $LCT3: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),%r35,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT3; ld.param.u32 %r34,[%value_in]; } .loc 1 148 5 setp.ne.u32 %r36,%r34,0; @ %r36 bra $L13; .loc 1 150 25 ld.u64 %r26,[%frame+16]; bra $L12; $L13: mov.u64 %r26,0; $L12: .loc 1 151 15 ld.u32 %r24,[%frame+24]; .loc 1 152 9 st.u64 [%r27],%r26; st.u32 [%r27+8],%r24; .loc 1 153 1 ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_delete .visible .func (.param .u32 %value_out) dbm_delete (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 166 14 ld.u64 %r32,[%r31]; st.u64 [%frame],%r32; .loc 1 167 19 ld.s32 %r33,[%r31+8]; st.u64 [%frame+8],%r33; .loc 1 168 14 ld.u64 %r38,[%r30+16]; mov.u32 %r36,0; { .param .u32 %value_in; $LCT4: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r36; call (%value_in),%r38,(%out_arg1,%out_arg2,%out_arg3),$LCT4; ld.param.u32 %r37,[%value_in]; } .loc 1 169 5 set.u32.ne.u32 %value,%r37,0; .loc 1 173 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_store .visible .func (.param .u32 %value_out) dbm_store (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; mov.u64 %r35,%ar2; mov.u32 %r36,%ar3; .loc 1 186 14 ld.u64 %r37,[%r34]; st.u64 [%frame+16],%r37; .loc 1 187 19 ld.s32 %r38,[%r34+8]; st.u64 [%frame+24],%r38; .loc 1 188 15 ld.u64 %r39,[%r35]; st.u64 [%frame],%r39; .loc 1 189 21 ld.s32 %r40,[%r35+8]; st.u64 [%frame+8],%r40; .loc 1 190 13 set.u32.eq.u32 %r46,%r36,0; neg.s32 %r47,%r46; shl.b32 %r48,%r47,3; add.u64 %r49,%frame,16; ld.u64 %r51,[%r33+32]; { .param .u32 %value_in; $LCT5: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r48; call (%value_in),%r51,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT5; ld.param.u32 %r50,[%value_in]; } .loc 1 192 1 mov.u32 %value,%r50; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_error .visible .func (.param .u32 %value_out) dbm_error (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar0; .loc 1 200 12 ld.u64 %r26,[%r24+56]; ld.u32 %value,[%r26+320]; .loc 1 201 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_clearerr .visible .func (.param .u32 %value_out) dbm_clearerr (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; mov.u64 %r24,%ar0; .loc 1 209 12 ld.u64 %r25,[%r24+56]; mov.u32 %r26,0; st.u32 [%r25+320],%r26; .loc 1 211 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_dirfno .visible .func (.param .u32 %value_out) dbm_dirfno (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar0; .loc 1 216 31 ld.u64 %r26,[%r24+56]; ld.u32 %value,[%r26+284]; .loc 1 217 1 st.param.u32 [%value_out],%value; ret; } lib_a-nrand48.o/0 0 0 644 2115 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _nrand48_r .visible .func (.param .u64 %value_out) _nrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/nrand48.c" // BEGIN GLOBAL FUNCTION DECL: nrand48 .visible .func (.param .u64 %value_out) nrand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _nrand48_r .visible .func (.param .u64 %value_out) _nrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u64 %r39; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r35,[%r31+4]; .loc 1 21 42 shl.b64 %r36,%r35,15; .loc 1 22 31 ld.u16 %r38,[%r31+2]; shr.u16 %r37,%r38,1; cvt.u64.u16 %r39,%r37; .loc 1 21 49 add.u64 %value,%r36,%r39; .loc 1 23 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: nrand48 .visible .func (.param .u64 %value_out) nrand48 (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r31; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u64 %r40; mov.u64 %r31,%ar0; .loc 1 20 3 ld.global.u64 %r34,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r36,[%r31+4]; .loc 1 21 42 shl.b64 %r37,%r36,15; .loc 1 22 31 ld.u16 %r39,[%r31+2]; shr.u16 %r38,%r39,1; cvt.u64.u16 %r40,%r38; .loc 1 21 49 add.u64 %value,%r37,%r40; .loc 1 30 1 st.param.u64 [%value_out],%value; ret; } /676 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-openr.o/ 0 0 0 644 1827 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _open_r .visible .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/reent/openr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: open .extern .func (.param .u32 %value_out) open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _open_r .visible .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .pred %r33; .reg .pred %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u32 %r27,%ar3; .loc 1 49 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 50 14 st.u32 [%stack],%r27; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),open,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r31,[%value_in]; } .loc 1 50 6 setp.ne.u32 %r33,%r31,-1; @ %r33 bra $L1; .loc 1 50 56 ld.global.u32 %r22,[errno]; .loc 1 50 47 setp.eq.u32 %r34,%r22,0; @ %r34 bra $L1; .loc 1 51 17 st.u32 [%r24],%r22; $L1: .loc 1 53 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-perror.o/ 0 0 0 644 7532 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _perror_r .visible .func _perror_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/perror.c" // BEGIN GLOBAL FUNCTION DECL: perror .visible .func perror (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fileno .extern .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strerror_r .extern .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {58,32,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {10,0 }; // BEGIN GLOBAL FUNCTION DEF: _perror_r .visible .func _perror_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r54; .reg .pred %r55; .reg .u16 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r60; .reg .pred %r61; .reg .u32 %r63; .reg .u64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u64 %r72; .reg .pred %r73; .reg .u32 %r75; .reg .u64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r87; .reg .pred %r88; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r93; .reg .u64 %r98; .reg .pred %r99; .reg .pred %r100; .reg .u64 %r102; .reg .pred %r103; .reg .u32 %r105; .reg .u64 %r110; .reg .pred %r111; .reg .pred %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u64 %r115; .reg .u64 %r116; mov.u64 %r47,%ar0; mov.u64 %r48,%ar1; .loc 1 81 9 ld.u64 %r35,[%r47+24]; .loc 1 83 3 ld.u32 %r49,[%r47+80]; setp.ne.u32 %r50,%r49,0; @ %r50 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; call __sinit,(%out_arg1); } $L2: .loc 1 86 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r54,[%value_in]; } .loc 1 87 6 setp.eq.u64 %r55,%r48,0; @ %r55 bra $L3; .loc 1 87 17 ld.u8 %r57,[%r48]; cvt.s16.s8 %r56,%r57; setp.eq.u16 %r58,%r56,0; @ %r58 bra $L3; .loc 1 89 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r60,[%value_in]; } mov.u64 %r37,%r60; setp.eq.u64 %r61,%r37,0; @ %r61 bra $L4; $L5: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r63,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r37; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r68,[%value_in]; } setp.lt.s64 %r69,%r68,0; @ %r69 bra $L4; sub.u64 %r37,%r37,%r68; add.u64 %r48,%r48,%r68; setp.ne.u64 %r70,%r37,0; @ %r70 bra $L5; $L4: .loc 1 90 7 cvta.const.u64 %r115,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r72,[%value_in]; } mov.u64 %r39,%r72; setp.eq.u64 %r73,%r39,0; @ %r73 bra $L3; mov.u64 %r40,%r115; $L6: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r75,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r75; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r40; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r39; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r80,[%value_in]; } setp.lt.s64 %r81,%r80,0; @ %r81 bra $L3; sub.u64 %r39,%r39,%r80; add.u64 %r40,%r40,%r80; setp.ne.u64 %r82,%r39,0; @ %r82 bra $L6; $L3: .loc 1 93 16 mov.u32 %r85,1; ld.u32 %r84,[%r47]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r84; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r85; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r87,[%value_in]; } mov.u64 %r43,%r87; .loc 1 93 6 setp.eq.u64 %r88,%r43,0; @ %r88 bra $L7; .loc 1 94 5 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r90,[%value_in]; } mov.u64 %r42,%r90; setp.eq.u64 %r91,%r42,0; @ %r91 bra $L7; $L8: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r93,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r93; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r42; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r98,[%value_in]; } setp.lt.s64 %r99,%r98,0; @ %r99 bra $L7; sub.u64 %r42,%r42,%r98; add.u64 %r43,%r43,%r98; setp.ne.u64 %r100,%r42,0; @ %r100 bra $L8; $L7: .loc 1 99 3 cvta.const.u64 %r116,$LC1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r102,[%value_in]; } mov.u64 %r45,%r102; setp.eq.u64 %r103,%r45,0; @ %r103 bra $L9; mov.u64 %r46,%r116; $L10: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r105,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r105; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r46; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r45; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r110,[%value_in]; } setp.lt.s64 %r111,%r110,0; @ %r111 bra $L9; sub.u64 %r45,%r45,%r110; add.u64 %r46,%r46,%r110; setp.ne.u64 %r112,%r45,0; @ %r112 bra $L10; $L9: .loc 1 101 14 ld.u16 %r114,[%r35+16]; and.b16 %r113,%r114,-4097; st.u16 [%r35+16],%r113; .loc 1 103 1 ret; } // BEGIN GLOBAL FUNCTION DEF: perror .visible .func perror (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r26; mov.u64 %r23,%ar0; .loc 1 110 3 ld.global.u64 %r26,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _perror_r,(%out_arg1,%out_arg2); } .loc 1 111 1 ret; } lib_a-printf.o/ 0 0 0 644 991 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: printf .visible .func (.param .u32 %value_out) printf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/machine/nvptx/printf.c" // BEGIN GLOBAL FUNCTION DECL: vprintf .extern .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: printf .visible .func (.param .u32 %value_out) printf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 27 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%args; call (%value_in),vprintf,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 30 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-psignal.o/0 0 0 644 6324 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: psignal .visible .func psignal (.param .u32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/signal/psignal.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fflush .extern .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fileno .extern .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: write .extern .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strsignal .extern .func (.param .u64 %value_out) strsignal (.param .u32 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {58,32,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {10,0 }; // BEGIN GLOBAL FUNCTION DEF: psignal .visible .func psignal (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r39; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r63; .reg .pred %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u64 %r76; .reg .pred %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .u64 %r89; .reg .u64 %r91; .reg .pred %r92; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r96; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .u64 %r104; .reg .pred %r105; .reg .u64 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u64 %r116; .reg .u64 %r117; mov.u32 %r52,%ar0; mov.u64 %r53,%ar1; .loc 1 55 11 ld.global.u64 %r55,[_impure_ptr]; .loc 1 55 3 ld.u64 %r56,[%r55+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; call (%value_in),fflush,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 56 6 setp.eq.u64 %r58,%r53,0; @ %r58 bra $L2; .loc 1 56 17 ld.u8 %r60,[%r53]; cvt.s16.s8 %r59,%r60; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L2; .loc 1 58 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r63,[%value_in]; } mov.u64 %r45,%r63; setp.eq.u64 %r64,%r45,0; @ %r64 bra $L3; $L4: ld.global.u64 %r66,[_impure_ptr]; ld.u64 %r67,[%r66+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r67; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r68,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r72,[%value_in]; } setp.lt.s32 %r73,%r72,0; @ %r73 bra $L3; cvt.s64.s32 %r29,%r72; sub.u64 %r45,%r45,%r29; add.u64 %r53,%r53,%r29; setp.ne.u64 %r74,%r45,0; @ %r74 bra $L4; $L3: .loc 1 59 7 cvta.const.u64 %r116,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r76,[%value_in]; } mov.u64 %r46,%r76; setp.eq.u64 %r77,%r46,0; @ %r77 bra $L2; mov.u64 %r47,%r116; $L5: ld.global.u64 %r79,[_impure_ptr]; ld.u64 %r80,[%r79+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r80; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r81,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r81; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r46; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r85,[%value_in]; } setp.lt.s32 %r86,%r85,0; @ %r86 bra $L2; cvt.s64.s32 %r34,%r85; sub.u64 %r46,%r46,%r34; add.u64 %r47,%r47,%r34; setp.ne.u64 %r87,%r46,0; @ %r87 bra $L5; $L2: .loc 1 61 3 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r52; call (%value_in),strsignal,(%out_arg1); ld.param.u64 %r89,[%value_in]; } mov.u64 %r49,%r89; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r91,[%value_in]; } mov.u64 %r48,%r91; setp.eq.u64 %r92,%r48,0; @ %r92 bra $L6; $L7: ld.global.u64 %r94,[_impure_ptr]; ld.u64 %r95,[%r94+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r95; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r96,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r96; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r100,[%value_in]; } setp.lt.s32 %r101,%r100,0; @ %r101 bra $L6; cvt.s64.s32 %r39,%r100; sub.u64 %r48,%r48,%r39; add.u64 %r49,%r49,%r39; setp.ne.u64 %r102,%r48,0; @ %r102 bra $L7; $L6: .loc 1 66 3 cvta.const.u64 %r117,$LC1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r117; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r104,[%value_in]; } mov.u64 %r50,%r104; setp.eq.u64 %r105,%r50,0; @ %r105 bra $L1; mov.u64 %r51,%r117; $L9: ld.global.u64 %r107,[_impure_ptr]; ld.u64 %r108,[%r107+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r109,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r109; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r50; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r113,[%value_in]; } setp.lt.s32 %r114,%r113,0; @ %r114 bra $L1; cvt.s64.s32 %r44,%r113; sub.u64 %r50,%r50,%r44; add.u64 %r51,%r51,%r44; setp.ne.u64 %r115,%r50,0; @ %r115 bra $L9; $L1: .loc 1 68 1 ret; } lib_a-putc.o/ 0 0 0 644 4270 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _putc_r .visible .func (.param .u32 %value_out) _putc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/putc.c" .file 2 "/home/abuild/rpmbuild/BUILD/gcc-11.3.0+git1637/newlib/libc/include/stdio.h" // BEGIN GLOBAL FUNCTION DECL: putc .visible .func (.param .u32 %value_out) putc (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swbuf_r .extern .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _putc_r .visible .func (.param .u32 %value_out) _putc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r49; mov.u64 %r31,%ar0; mov.u32 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 86 3 setp.eq.u64 %r34,%r31,0; @ %r34 bra $L2; ld.u32 %r35,[%r31+80]; setp.ne.u32 %r36,%r35,0; @ %r36 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; call __sinit,(%out_arg1); } $L2: .loc 2 692 6 ld.u32 %r38,[%r33+12]; add.u32 %r24,%r38,-1; .loc 2 692 5 st.u32 [%r33+12],%r24; setp.ge.s32 %r39,%r24,0; @ %r39 bra $L3; .loc 2 692 20 ld.u32 %r40,[%r33+40]; setp.lt.s32 %r41,%r24,%r40; @ %r41 bra $L4; .loc 2 692 50 mov.u32 %r42,%r32; .loc 2 692 47 cvt.s16.s8 %r43,%r42; setp.eq.u16 %r44,%r43,10; @ %r44 bra $L4; $L3: .loc 2 693 14 ld.u64 %r27,[%r33]; .loc 2 693 18 add.u64 %r45,%r27,1; st.u64 [%r33],%r45; .loc 2 693 21 st.u8 [%r27],%r32; and.b32 %r30,%r32,255; bra $L1; $L4: .loc 2 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r49,[%value_in]; } mov.u32 %r30,%r49; $L1: .loc 1 91 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: putc .visible .func (.param .u32 %value_out) putc (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r28; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r49; mov.u32 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 100 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 102 3 setp.eq.u64 %r34,%r23,0; @ %r34 bra $L13; ld.u32 %r35,[%r23+80]; setp.ne.u32 %r36,%r35,0; @ %r36 bra $L13; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L13: .loc 2 692 6 ld.u32 %r38,[%r33+12]; add.u32 %r25,%r38,-1; .loc 2 692 5 st.u32 [%r33+12],%r25; setp.ge.s32 %r39,%r25,0; @ %r39 bra $L14; .loc 2 692 20 ld.u32 %r40,[%r33+40]; setp.lt.s32 %r41,%r25,%r40; @ %r41 bra $L15; .loc 2 692 50 mov.u32 %r42,%r32; .loc 2 692 47 cvt.s16.s8 %r43,%r42; setp.eq.u16 %r44,%r43,10; @ %r44 bra $L15; $L14: .loc 2 693 14 ld.u64 %r28,[%r33]; .loc 2 693 18 add.u64 %r45,%r28,1; st.u64 [%r33],%r45; .loc 2 693 21 st.u8 [%r28],%r32; and.b32 %r31,%r32,255; bra $L12; $L15: .loc 2 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r49,[%value_in]; } mov.u32 %r31,%r49; $L12: .loc 1 110 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-putc_u.o/ 0 0 0 644 3738 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _putc_unlocked_r .visible .func (.param .u32 %value_out) _putc_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "/home/abuild/rpmbuild/BUILD/gcc-11.3.0+git1637/newlib/libc/include/stdio.h" .file 2 "../../../../../newlib/libc/stdio/putc_u.c" // BEGIN GLOBAL FUNCTION DECL: putc_unlocked .visible .func (.param .u32 %value_out) putc_unlocked (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __swbuf_r .extern .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _putc_unlocked_r .visible .func (.param .u32 %value_out) _putc_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r44; mov.u64 %r30,%ar0; mov.u32 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 692 6 ld.u32 %r33,[%r32+12]; add.u32 %r23,%r33,-1; .loc 1 692 5 st.u32 [%r32+12],%r23; setp.ge.s32 %r34,%r23,0; @ %r34 bra $L2; .loc 1 692 20 ld.u32 %r35,[%r32+40]; setp.lt.s32 %r36,%r23,%r35; @ %r36 bra $L3; .loc 1 692 50 mov.u32 %r37,%r31; .loc 1 692 47 cvt.s16.s8 %r38,%r37; setp.eq.u16 %r39,%r38,10; @ %r39 bra $L3; $L2: .loc 1 693 14 ld.u64 %r26,[%r32]; .loc 1 693 18 add.u64 %r40,%r26,1; st.u64 [%r32],%r40; .loc 1 693 21 st.u8 [%r26],%r31; and.b32 %r29,%r31,255; bra $L1; $L3: .loc 1 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r44,[%value_in]; } mov.u32 %r29,%r44; $L1: .loc 2 80 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: putc_unlocked .visible .func (.param .u32 %value_out) putc_unlocked (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r24; .reg .u64 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r44; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; .loc 2 89 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 692 6 ld.u32 %r33,[%r32+12]; add.u32 %r24,%r33,-1; .loc 1 692 5 st.u32 [%r32+12],%r24; setp.ge.s32 %r34,%r24,0; @ %r34 bra $L9; .loc 1 692 20 ld.u32 %r35,[%r32+40]; setp.lt.s32 %r36,%r24,%r35; @ %r36 bra $L10; .loc 1 692 50 mov.u32 %r37,%r31; .loc 1 692 47 cvt.s16.s8 %r38,%r37; setp.eq.u16 %r39,%r38,10; @ %r39 bra $L10; $L9: .loc 1 693 14 ld.u64 %r27,[%r32]; .loc 1 693 18 add.u64 %r40,%r27,1; st.u64 [%r32],%r40; .loc 1 693 21 st.u8 [%r27],%r31; and.b32 %r30,%r31,255; bra $L8; $L10: .loc 1 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r44,[%value_in]; } mov.u32 %r30,%r44; $L8: .loc 2 90 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-putchar.o/0 0 0 644 1252 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: putchar .visible .func (.param .u32 %value_out) putchar (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/machine/nvptx/putchar.c" // BEGIN GLOBAL FUNCTION DECL: vprintf .extern .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {37,99,0 }; // BEGIN GLOBAL FUNCTION DEF: putchar .visible .func (.param .u32 %value_out) putchar (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r28; .reg .pred %r29; mov.u32 %r25,%ar0; and.b32 %r24,%r25,255; .loc 1 26 13 st.u32 [%frame],%r24; .loc 1 27 13 cvta.const.u64 %r26,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),vprintf,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 28 6 setp.ge.s32 %r29,%r28,0; .loc 1 29 7 selp.u32 %value,%r24,-1,%r29; .loc 1 31 1 st.param.u32 [%value_out],%value; ret; } /698 0 0 0 644 1988 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _putchar_unlocked_r .visible .func (.param .u32 %value_out) _putchar_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/putchar_u.c" // BEGIN GLOBAL FUNCTION DECL: putchar_unlocked .visible .func (.param .u32 %value_out) putchar_unlocked (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: putc_unlocked .extern .func (.param .u32 %value_out) putc_unlocked (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _putchar_unlocked_r .visible .func (.param .u32 %value_out) _putchar_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r28; .reg .u32 %r29; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 67 10 ld.u64 %r28,[%r24+16]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),putc_unlocked,(%out_arg1,%out_arg2); ld.param.u32 %r29,[%value_in]; } .loc 1 68 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: putchar_unlocked .visible .func (.param .u32 %value_out) putchar_unlocked (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; mov.u32 %r25,%ar0; .loc 1 67 28 ld.global.u64 %r28,[_impure_ptr]; .loc 1 67 10 ld.u64 %r29,[%r28+16]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),putc_unlocked,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 78 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-puts.o/ 0 0 0 644 1127 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: puts .visible .func (.param .u32 %value_out) puts (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/machine/nvptx/puts.c" // BEGIN GLOBAL FUNCTION DECL: vprintf .extern .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {37,115,10,0 }; // BEGIN GLOBAL FUNCTION DEF: puts .visible .func (.param .u32 %value_out) puts (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r26; mov.u64 %r23,%ar0; .loc 1 25 13 st.u64 [%frame],%r23; .loc 1 26 10 cvta.const.u64 %r24,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),vprintf,(%out_arg1,%out_arg2); ld.param.u32 %r26,[%value_in]; } .loc 1 27 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-qsort.o/ 0 0 0 644 26456 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: qsort .visible .func qsort (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/search/qsort.c" // BEGIN GLOBAL FUNCTION DEF: qsort .visible .func qsort (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[128]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r59; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r72; .reg .u64 %r74; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r86; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r92; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r122; .reg .u32 %r141; .reg .u64 %r143; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .u64 %r152; .reg .u64 %r153; .reg .u64 %r154; .reg .u32 %r155; .reg .u64 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u32 %r161; .reg .u64 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u32 %r166; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u32 %r179; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u32 %r188; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r195; .reg .u64 %r200; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r210; .reg .u64 %r217; .reg .u64 %r219; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r248; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r255; .reg .u64 %r257; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r265; .reg .u64 %r266; .reg .u64 %r268; .reg .u64 %r269; .reg .u64 %r270; .reg .pred %r271; .reg .u32 %r273; .reg .u32 %r275; .reg .pred %r277; .reg .pred %r278; .reg .pred %r281; .reg .u32 %r282; .reg .u32 %r283; .reg .u64 %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .u32 %r291; .reg .pred %r292; .reg .pred %r293; .reg .u64 %r294; .reg .u64 %r296; .reg .pred %r298; .reg .pred %r299; .reg .u64 %r300; .reg .u64 %r301; .reg .u32 %r304; .reg .pred %r305; .reg .u32 %r308; .reg .pred %r309; .reg .u32 %r312; .reg .pred %r313; .reg .u32 %r316; .reg .pred %r317; .reg .u32 %r320; .reg .pred %r321; .reg .u32 %r324; .reg .pred %r325; .reg .u32 %r328; .reg .pred %r329; .reg .u32 %r332; .reg .pred %r333; .reg .u32 %r336; .reg .pred %r337; .reg .u32 %r340; .reg .pred %r341; .reg .u32 %r344; .reg .pred %r345; .reg .u32 %r348; .reg .pred %r349; .reg .u32 %r352; .reg .pred %r353; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r360; .reg .pred %r361; .reg .u32 %r364; .reg .pred %r365; .reg .u32 %r368; .reg .pred %r369; .reg .u32 %r372; .reg .pred %r373; .reg .u32 %r376; .reg .pred %r377; .reg .u32 %r380; .reg .pred %r381; .reg .pred %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u64 %r388; .reg .pred %r389; .reg .pred %r390; .reg .pred %r391; .reg .pred %r392; .reg .pred %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u64 %r399; .reg .pred %r400; .reg .pred %r401; .reg .u32 %r404; .reg .pred %r405; .reg .pred %r406; .reg .pred %r407; .reg .pred %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u64 %r414; .reg .pred %r415; .reg .pred %r416; .reg .pred %r417; .reg .u32 %r420; .reg .pred %r421; .reg .pred %r423; .reg .u32 %r424; .reg .u32 %r425; .reg .u64 %r427; .reg .pred %r428; .reg .pred %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .u64 %r435; .reg .pred %r436; .reg .pred %r437; .reg .pred %r438; .reg .u32 %r441; .reg .pred %r442; .reg .pred %r443; .reg .u64 %r444; .reg .u64 %r445; .reg .u64 %r446; .reg .pred %r447; .reg .u64 %r449; .reg .pred %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .u64 %r454; .reg .u64 %r455; .reg .pred %r456; .reg .pred %r457; .reg .pred %r458; .reg .u64 %r460; .reg .pred %r461; .reg .u32 %r462; .reg .u32 %r463; .reg .u64 %r465; .reg .u64 %r466; .reg .pred %r467; .reg .pred %r468; .reg .pred %r469; .reg .u64 %r470; .reg .u64 %r471; .reg .u64 %r475; .reg .u64 %r481; .reg .pred %r482; .reg .u64 %r483; .reg .u64 %r484; .reg .pred %r488; .reg .pred %r489; .reg .pred %r491; .reg .pred %r492; .reg .u64 %r494; .reg .u64 %r495; .reg .u64 %r496; .reg .u64 %r497; .reg .u64 %r498; .reg .u64 %r499; .reg .u64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; mov.u64 %r263,%ar0; mov.u64 %r264,%ar1; mov.u64 %r265,%ar2; mov.u64 %r266,%ar3; .loc 1 194 2 or.b64 %r269,%r263,%r265; and.b64 %r270,%r269,7; setp.ne.u64 %r271,%r270,0; @ %r271 bra $L89; set.u32.ne.u64 %r273,%r265,8; neg.s32 %r86,%r273; bra $L2; $L89: mov.u32 %r86,2; $L2: .loc 1 218 2 cvt.u32.u64 %r275,%r265; .loc 1 109 3 cvt.s64.s32 %r143,%r275; shr.u64 %r145,%r143,3; .loc 1 191 9 mov.u64 %r45,0; .loc 1 218 2 setp.ne.u32 %r512,%r86,0; .loc 1 108 4 setp.ne.u32 %r513,%r86,1; .loc 1 250 3 setp.eq.u32 %r514,%r86,0; .loc 1 108 4 setp.eq.u32 %r515,%r86,2; $L3: .loc 1 198 11 add.u64 %r109,%r263,%r265; .loc 1 198 46 mad.lo.u64 %r210,%r264,%r265,%r263; .loc 1 196 5 setp.gt.u64 %r277,%r264,6; @ %r277 bra $L4; .loc 1 198 33 setp.gt.u64 %r278,%r210,%r109; @ %r278 bra $L5; bra $L6; $L13: .loc 1 201 5 @ %r512 bra $L7; ld.u64 %r110,[%r105]; ld.u64 %r26,[%r50]; st.u64 [%r105],%r26; st.u64 [%r50],%r110; bra $L8; $L7: .loc 1 108 4 @ %r513 bra $L90; mov.u64 %r52,%r50; .loc 1 109 3 mov.u64 %r117,%r145; $L10: ld.u64 %r115,[%r157]; ld.u64 %r116,[%r52]; st.u64 [%r157],%r116; st.u64 [%r52],%r115; add.u64 %r117,%r117,-1; add.u64 %r157,%r157,8; add.u64 %r52,%r52,8; setp.gt.s64 %r281,%r117,0; @ %r281 bra $L10; bra $L8; $L90: mov.u64 %r114,%r50; mov.u64 %r28,%r105; add.u64 %r500,%r28,%r143; $L9: .loc 1 111 3 ld.s8 %r112,[%r28]; ld.u8 %r282,[%r114]; st.u8 [%r28],%r282; cvt.u32.u32 %r283,%r112; st.u8 [%r114],%r283; add.u64 %r28,%r28,1; add.u64 %r114,%r114,1; sub.u64 %r285,%r500,%r28; setp.gt.s64 %r286,%r285,0; @ %r286 bra $L9; $L8: .loc 1 199 34 setp.lt.u64 %r287,%r263,%r50; @ %r287 bra $L12; $L14: .loc 1 198 59 add.u64 %r109,%r109,%r265; .loc 1 198 33 setp.lt.u64 %r288,%r109,%r210; @ %r288 bra $L5; bra $L6; $L12: mov.u64 %r105,%r50; mov.u64 %r157,%r50; sub.u64 %r50,%r50,%r265; .loc 1 199 37 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r291,[%value_in]; } .loc 1 199 34 setp.gt.s32 %r292,%r291,0; @ %r292 bra $L13; bra $L14; $L5: setp.ge.u64 %r293,%r263,%r109; @ %r293 bra $L14; mov.u64 %r50,%r109; bra $L12; $L4: .loc 1 206 23 shr.u64 %r294,%r264,1; .loc 1 206 5 mad.lo.u64 %r84,%r294,%r265,%r263; .loc 1 209 24 add.u64 %r296,%r264,-1; .loc 1 209 6 mad.lo.u64 %r101,%r296,%r265,%r263; .loc 1 207 5 setp.eq.u64 %r298,%r264,7; @ %r298 bra $L15; .loc 1 210 6 setp.le.u64 %r299,%r264,40; @ %r299 bra $L91; .loc 1 211 11 shr.u64 %r300,%r264,3; .loc 1 211 6 mul.lo.u64 %r92,%r300,%r265; .loc 1 212 33 add.u64 %r301,%r92,%r92; .loc 1 212 9 add.u64 %r40,%r263,%r301; add.u64 %r83,%r263,%r92; .loc 1 143 9 { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r263; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r83; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT1; ld.param.u32 %r304,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r305,%r304,0; @ %r305 bra $L17; .loc 1 144 10 { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT2; ld.param.u32 %r308,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r309,%r308,0; @ %r309 bra $L18; .loc 1 144 38 { .param .u32 %value_in; $LCT3: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r263; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT3; ld.param.u32 %r312,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r313,%r312,0; selp.u64 %r83,%r40,%r263,%r313; bra $L18; $L17: .loc 1 145 17 { .param .u32 %value_in; $LCT4: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT4; ld.param.u32 %r316,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r317,%r316,0; @ %r317 bra $L18; .loc 1 145 45 { .param .u32 %value_in; $LCT5: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r263; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT5; ld.param.u32 %r320,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r321,%r320,0; selp.u64 %r83,%r263,%r40,%r321; $L18: .loc 1 213 9 add.u64 %r41,%r84,%r92; .loc 1 213 17 neg.s64 %r42,%r92; .loc 1 213 9 sub.u64 %r43,%r84,%r92; .loc 1 143 9 { .param .u32 %value_in; $LCT6: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r84; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT6; ld.param.u32 %r324,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r325,%r324,0; @ %r325 bra $L19; .loc 1 144 10 { .param .u32 %value_in; $LCT7: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT7; ld.param.u32 %r328,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r329,%r328,0; @ %r329 bra $L20; .loc 1 144 38 { .param .u32 %value_in; $LCT8: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT8; ld.param.u32 %r332,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r333,%r332,0; selp.u64 %r84,%r41,%r43,%r333; bra $L20; $L19: .loc 1 145 17 { .param .u32 %value_in; $LCT9: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT9; ld.param.u32 %r336,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r337,%r336,0; @ %r337 bra $L20; .loc 1 145 45 { .param .u32 %value_in; $LCT10: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT10; ld.param.u32 %r340,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r341,%r340,0; selp.u64 %r84,%r43,%r41,%r341; $L20: .loc 1 214 9 add.u64 %r44,%r101,%r42; add.u64 %r46,%r44,%r42; .loc 1 143 9 { .param .u32 %value_in; $LCT11: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT11; ld.param.u32 %r344,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r345,%r344,0; @ %r345 bra $L21; .loc 1 144 10 { .param .u32 %value_in; $LCT12: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT12; ld.param.u32 %r348,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r349,%r348,0; @ %r349 bra $L16; .loc 1 144 38 { .param .u32 %value_in; $LCT13: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT13; ld.param.u32 %r352,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r353,%r352,0; selp.u64 %r44,%r101,%r46,%r353; bra $L16; $L21: .loc 1 145 17 { .param .u32 %value_in; $LCT14: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT14; ld.param.u32 %r356,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r357,%r356,0; @ %r357 bra $L16; .loc 1 145 45 { .param .u32 %value_in; $LCT15: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT15; ld.param.u32 %r360,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r361,%r360,0; .loc 1 209 6 selp.u64 %r44,%r46,%r101,%r361; bra $L16; $L91: mov.u64 %r44,%r101; mov.u64 %r83,%r263; $L16: .loc 1 143 9 { .param .u32 %value_in; $LCT16: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r84; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT16; ld.param.u32 %r364,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r365,%r364,0; @ %r365 bra $L22; .loc 1 144 10 { .param .u32 %value_in; $LCT17: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT17; ld.param.u32 %r368,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r369,%r368,0; @ %r369 bra $L15; .loc 1 144 38 { .param .u32 %value_in; $LCT18: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT18; ld.param.u32 %r372,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r373,%r372,0; selp.u64 %r84,%r44,%r83,%r373; bra $L15; $L22: .loc 1 145 17 { .param .u32 %value_in; $LCT19: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT19; ld.param.u32 %r376,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r377,%r376,0; @ %r377 bra $L15; .loc 1 145 45 { .param .u32 %value_in; $LCT20: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT20; ld.param.u32 %r380,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r381,%r380,0; selp.u64 %r84,%r83,%r44,%r381; $L15: .loc 1 218 2 @ %r512 bra $L23; ld.u64 %r98,[%r263]; ld.u64 %r47,[%r84]; st.u64 [%r263],%r47; st.u64 [%r84],%r98; bra $L24; $L23: .loc 1 108 4 @ %r513 bra $L25; mov.u64 %r251,%r263; mov.u64 %r252,%r84; .loc 1 109 3 mov.u64 %r148,%r145; $L26: ld.u64 %r146,[%r251]; ld.u64 %r147,[%r252]; st.u64 [%r251],%r147; st.u64 [%r252],%r146; add.u64 %r148,%r148,-1; add.u64 %r251,%r251,8; add.u64 %r252,%r252,8; setp.gt.s64 %r384,%r148,0; @ %r384 bra $L26; bra $L24; $L25: mov.u64 %r257,%r84; .loc 1 108 4 mov.u64 %r255,%r263; add.u64 %r495,%r263,%r143; $L27: .loc 1 111 3 ld.s8 %r141,[%r255]; ld.u8 %r385,[%r257]; st.u8 [%r255],%r385; cvt.u32.u32 %r386,%r141; st.u8 [%r257],%r386; add.u64 %r255,%r255,1; add.u64 %r257,%r257,1; sub.u64 %r388,%r495,%r255; setp.gt.s64 %r389,%r388,0; @ %r389 bra $L27; $L24: .loc 1 228 19 setp.lt.u64 %r390,%r101,%r109; @ %r390 bra $L29; mov.u64 %r248,%r109; mov.u64 %r81,%r101; mov.u64 %r122,%r109; .loc 1 195 16 mov.u32 %r188,0; bra $L30; $L29: .loc 1 256 33 setp.gt.u64 %r391,%r210,%r109; @ %r391 bra $L31; bra $L6; $L40: .loc 1 230 7 setp.ne.u32 %r392,%r404,0; @ %r392 bra $L32; .loc 1 232 5 @ %r512 bra $L33; ld.u64 %r102,[%r122]; ld.u64 %r51,[%r248]; st.u64 [%r122],%r51; st.u64 [%r248],%r102; bra $L34; $L33: .loc 1 108 4 @ %r513 bra $L35; mov.u64 %r200,%r122; mov.u64 %r57,%r248; .loc 1 109 3 mov.u64 %r154,%r145; $L36: ld.u64 %r152,[%r200]; ld.u64 %r153,[%r57]; st.u64 [%r200],%r153; st.u64 [%r57],%r152; add.u64 %r154,%r154,-1; add.u64 %r200,%r200,8; add.u64 %r57,%r57,8; setp.gt.s64 %r395,%r154,0; @ %r395 bra $L36; bra $L34; $L35: .loc 1 108 4 mov.u64 %r219,%r248; mov.u64 %r217,%r122; add.u64 %r499,%r122,%r143; $L37: .loc 1 111 3 ld.s8 %r149,[%r217]; ld.u8 %r396,[%r219]; st.u8 [%r217],%r396; cvt.u32.u32 %r397,%r149; st.u8 [%r219],%r397; add.u64 %r217,%r217,1; add.u64 %r219,%r219,1; sub.u64 %r399,%r499,%r217; setp.gt.s64 %r400,%r399,0; @ %r400 bra $L37; $L34: .loc 1 233 8 add.u64 %r122,%r122,%r265; .loc 1 231 14 mov.u32 %r188,1; $L32: add.u64 %r497,%r265,%r248; mov.u64 %r88,%r497; $L58: .loc 1 228 19 mov.u64 %r248,%r497; setp.lt.u64 %r401,%r101,%r248; @ %r401 bra $L39; $L30: mov.u64 %r88,%r248; .loc 1 228 36 { .param .u32 %value_in; $LCT21: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r248; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r263; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT21; ld.param.u32 %r404,[%value_in]; } .loc 1 228 19 setp.le.s32 %r405,%r404,0; @ %r405 bra $L40; .loc 1 238 19 setp.le.u64 %r406,%r248,%r101; @ %r406 bra $L41; bra $L39; $L51: .loc 1 240 7 setp.ne.u32 %r407,%r420,0; @ %r407 bra $L42; .loc 1 242 5 @ %r512 bra $L43; ld.u64 %r104,[%r101]; ld.u64 %r53,[%r81]; st.u64 [%r101],%r53; st.u64 [%r81],%r104; bra $L44; $L43: .loc 1 108 4 @ %r513 bra $L45; mov.u64 %r236,%r101; mov.u64 %r237,%r81; .loc 1 109 3 mov.u64 %r160,%r145; $L46: ld.u64 %r158,[%r236]; ld.u64 %r159,[%r237]; st.u64 [%r236],%r159; st.u64 [%r237],%r158; add.u64 %r160,%r160,-1; add.u64 %r236,%r236,8; add.u64 %r237,%r237,8; setp.gt.s64 %r410,%r160,0; @ %r410 bra $L46; bra $L44; $L45: mov.u64 %r241,%r81; .loc 1 108 4 mov.u64 %r240,%r101; add.u64 %r498,%r101,%r143; $L47: .loc 1 111 3 ld.s8 %r155,[%r240]; ld.u8 %r411,[%r241]; st.u8 [%r240],%r411; cvt.u32.u32 %r412,%r155; st.u8 [%r241],%r412; add.u64 %r240,%r240,1; add.u64 %r241,%r241,1; sub.u64 %r414,%r498,%r240; setp.gt.s64 %r415,%r414,0; @ %r415 bra $L47; $L44: .loc 1 243 8 add.u64 %r81,%r81,%r90; .loc 1 241 14 mov.u32 %r188,1; $L42: .loc 1 245 7 add.u64 %r101,%r101,%r90; .loc 1 238 19 setp.ge.u64 %r416,%r101,%r248; @ %r416 bra $L49; $L39: .loc 1 255 5 setp.eq.u32 %r417,%r188,0; @ ! %r417 bra $L132; bra $L29; $L41: .loc 1 199 37 neg.s64 %r90,%r265; $L49: .loc 1 238 36 { .param .u32 %value_in; $LCT22: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r263; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT22; ld.param.u32 %r420,[%value_in]; } .loc 1 238 19 setp.ge.s32 %r421,%r420,0; @ %r421 bra $L51; bra $L133; $L84: .loc 1 250 3 ld.u64 %r106,[%r248]; ld.u64 %r54,[%r101]; st.u64 [%r248],%r54; st.u64 [%r101],%r106; bra $L53; $L137: .loc 1 108 4 @ %r513 bra $L54; mov.u64 %r226,%r101; mov.u64 %r225,%r248; .loc 1 109 3 mov.u64 %r165,%r145; $L55: ld.u64 %r163,[%r225]; ld.u64 %r164,[%r226]; st.u64 [%r225],%r164; st.u64 [%r226],%r163; add.u64 %r165,%r165,-1; add.u64 %r225,%r225,8; add.u64 %r226,%r226,8; setp.gt.s64 %r423,%r165,0; @ %r423 bra $L55; bra $L53; $L54: mov.u64 %r230,%r101; .loc 1 108 4 mov.u64 %r229,%r248; add.u64 %r494,%r143,%r248; $L56: .loc 1 111 3 ld.s8 %r161,[%r229]; ld.u8 %r424,[%r230]; st.u8 [%r229],%r424; cvt.u32.u32 %r425,%r161; st.u8 [%r230],%r425; add.u64 %r229,%r229,1; add.u64 %r230,%r230,1; sub.u64 %r427,%r494,%r229; setp.gt.s64 %r428,%r427,0; @ %r428 bra $L56; $L53: add.u64 %r497,%r265,%r248; mov.u64 %r88,%r497; .loc 1 253 6 add.u64 %r101,%r101,%r90; .loc 1 251 12 mov.u32 %r188,1; .loc 1 228 9 bra $L58; $L65: .loc 1 259 5 @ %r512 bra $L59; ld.u64 %r108,[%r195]; ld.u64 %r56,[%r59]; st.u64 [%r195],%r56; st.u64 [%r59],%r108; bra $L60; $L59: .loc 1 108 4 @ %r513 bra $L100; mov.u64 %r70,%r59; .loc 1 109 3 mov.u64 %r171,%r145; $L62: ld.u64 %r169,[%r63]; ld.u64 %r170,[%r70]; st.u64 [%r63],%r170; st.u64 [%r70],%r169; add.u64 %r171,%r171,-1; add.u64 %r63,%r63,8; add.u64 %r70,%r70,8; setp.gt.s64 %r431,%r171,0; @ %r431 bra $L62; bra $L60; $L100: mov.u64 %r78,%r59; mov.u64 %r80,%r195; add.u64 %r496,%r80,%r143; $L61: .loc 1 111 3 ld.s8 %r166,[%r80]; ld.u8 %r432,[%r78]; st.u8 [%r80],%r432; cvt.u32.u32 %r433,%r166; st.u8 [%r78],%r433; add.u64 %r80,%r80,1; add.u64 %r78,%r78,1; sub.u64 %r435,%r496,%r80; setp.gt.s64 %r436,%r435,0; @ %r436 bra $L61; $L60: .loc 1 257 34 setp.lt.u64 %r437,%r263,%r59; @ %r437 bra $L64; $L66: .loc 1 256 59 add.u64 %r109,%r109,%r265; .loc 1 256 33 setp.lt.u64 %r438,%r109,%r210; @ %r438 bra $L31; bra $L6; $L64: mov.u64 %r195,%r59; mov.u64 %r63,%r59; sub.u64 %r59,%r59,%r265; .loc 1 257 37 { .param .u32 %value_in; $LCT23: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r195; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT23; ld.param.u32 %r441,[%value_in]; } .loc 1 257 34 setp.gt.s32 %r442,%r441,0; @ %r442 bra $L65; bra $L66; $L31: setp.ge.u64 %r443,%r263,%r109; @ %r443 bra $L66; mov.u64 %r59,%r109; bra $L64; $L132: .loc 1 268 6 sub.u64 %r64,%r88,%r122; sub.u64 %r444,%r122,%r263; min.s64 %r66,%r444,%r64; .loc 1 270 6 sub.u64 %r33,%r81,%r101; sub.u64 %r445,%r210,%r81; sub.u64 %r446,%r445,%r265; .loc 1 270 4 min.u64 %r34,%r446,%r33; .loc 1 269 2 setp.eq.u64 %r447,%r66,0; @ %r447 bra $L67; cvt.u32.u64 %r67,%r66; sub.u64 %r69,%r88,%r66; .loc 1 108 4 @ %r515 bra $L68; .loc 1 109 3 cvt.s64.s32 %r449,%r67; shr.u64 %r178,%r449,3; mov.u64 %r192,%r263; mov.u64 %r96,%r69; $L69: ld.u64 %r176,[%r192]; ld.u64 %r177,[%r96]; st.u64 [%r192],%r177; st.u64 [%r96],%r176; add.u64 %r178,%r178,-1; add.u64 %r192,%r192,8; add.u64 %r96,%r96,8; setp.gt.s64 %r450,%r178,0; @ %r450 bra $L69; bra $L134; $L68: mov.u64 %r30,%r69; .loc 1 108 4 mov.u64 %r95,%r263; cvt.s64.s32 %r501,%r67; .loc 1 111 3 add.u64 %r454,%r263,%r501; $L71: ld.s8 %r172,[%r95]; ld.u8 %r451,[%r30]; st.u8 [%r95],%r451; cvt.u32.u32 %r452,%r172; st.u8 [%r30],%r452; add.u64 %r95,%r95,1; add.u64 %r30,%r30,1; sub.u64 %r455,%r454,%r95; setp.gt.s64 %r456,%r455,0; @ %r456 bra $L71; bra $L135; $L67: .loc 1 271 2 setp.ne.u64 %r457,%r34,0; @ %r457 bra $L73; $L77: .loc 1 272 4 mov.u64 %r77,%r64; .loc 1 274 5 sub.u64 %r79,%r210,%r33; .loc 1 281 5 setp.le.u64 %r458,%r33,%r77; @ %r458 bra $L74; mov.u64 %r77,%r33; mov.u64 %r33,%r64; mov.u64 %r268,%r263; .loc 1 283 5 mov.u64 %r263,%r79; .loc 1 281 5 mov.u64 %r79,%r268; bra $L74; $L73: .loc 1 271 2 cvt.u32.u64 %r72,%r34; sub.u64 %r74,%r210,%r34; .loc 1 108 4 @ %r515 bra $L75; $L87: .loc 1 109 3 cvt.s64.s32 %r460,%r72; shr.u64 %r185,%r460,3; mov.u64 %r94,%r88; mov.u64 %r191,%r74; $L76: ld.u64 %r183,[%r94]; ld.u64 %r184,[%r191]; st.u64 [%r94],%r184; st.u64 [%r191],%r183; add.u64 %r185,%r185,-1; add.u64 %r94,%r94,8; add.u64 %r191,%r191,8; setp.gt.s64 %r461,%r185,0; @ %r461 bra $L76; bra $L77; $L75: mov.u64 %r206,%r74; .loc 1 108 4 mov.u64 %r205,%r88; cvt.s64.s32 %r502,%r72; .loc 1 111 3 add.u64 %r465,%r205,%r502; $L78: ld.s8 %r179,[%r205]; ld.u8 %r462,[%r206]; st.u8 [%r205],%r462; cvt.u32.u32 %r463,%r179; st.u8 [%r206],%r463; add.u64 %r205,%r205,1; add.u64 %r206,%r206,1; sub.u64 %r466,%r465,%r205; setp.gt.s64 %r467,%r466,0; @ %r467 bra $L78; bra $L77; $L74: .loc 1 300 5 setp.le.u64 %r468,%r33,%r265; @ %r468 bra $L79; .loc 1 301 6 setp.gt.u64 %r469,%r45,7; @ %r469 bra $L80; .loc 1 311 39 shl.b64 %r470,%r45,4; add.u64 %r471,%frame,%r470; st.u64 [%r471],%r263; .loc 1 312 43 div.u64 %r475,%r77,%r265; .loc 1 312 39 st.u64 [%r471+8],%r475; .loc 1 313 19 add.u64 %r45,%r45,1; .loc 1 315 6 div.u64 %r264,%r33,%r265; .loc 1 314 6 mov.u64 %r263,%r79; .loc 1 316 4 bra $L3; $L80: .loc 1 315 6 div.u64 %r481,%r33,%r265; .loc 1 329 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r481; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r265; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r266; call qsort,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 333 5 setp.gt.u64 %r482,%r77,%r265; @ %r482 bra $L82; $L83: .loc 1 340 18 add.u64 %r45,%r45,-1; .loc 1 341 5 shl.b64 %r483,%r45,4; add.u64 %r484,%frame,%r483; ld.u64 %r263,[%r484]; .loc 1 342 5 ld.u64 %r264,[%r484+8]; .loc 1 343 3 bra $L3; $L82: .loc 1 334 5 div.u64 %r264,%r77,%r265; .loc 1 335 3 bra $L3; $L79: .loc 1 333 5 setp.gt.u64 %r488,%r77,%r265; @ %r488 bra $L82; $L6: .loc 1 339 5 setp.ne.u64 %r489,%r45,0; @ %r489 bra $L83; bra $L136; $L133: .loc 1 250 3 @ %r514 bra $L84; bra $L137; $L86: .loc 1 271 2 cvt.u32.u64 %r72,%r34; sub.u64 %r74,%r210,%r34; bra $L75; $L135: setp.ne.u64 %r491,%r34,0; @ ! %r491 bra $L77; bra $L86; $L88: cvt.u32.u64 %r72,%r34; sub.u64 %r74,%r210,%r34; bra $L87; $L134: setp.ne.u64 %r492,%r34,0; @ ! %r492 bra $L77; bra $L88; $L136: .loc 1 345 1 ret; } /717 0 0 0 644 2093 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: at_quick_exit .visible .func (.param .u32 %value_out) at_quick_exit (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/quick_exit.c" // BEGIN GLOBAL FUNCTION DECL: quick_exit .visible .func quick_exit (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _exit .extern .func _exit (.param .u32 %in_ar0); // BEGIN VAR DEF: handlers .global .align 8 .u64 handlers[1]; // BEGIN GLOBAL FUNCTION DEF: at_quick_exit .visible .func (.param .u32 %value_out) at_quick_exit (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 60 6 mov.u64 %r26,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r27,[%value_in]; } .loc 1 62 5 setp.eq.u64 %r29,%r27,0; @ %r29 bra $L3; .loc 1 64 13 st.u64 [%r27+8],%r25; .loc 1 68 10 ld.global.u64 %r30,[handlers]; st.u64 [%r27],%r30; .loc 1 69 11 st.global.u64 [handlers],%r27; .loc 1 73 9 mov.u32 %r24,0; bra $L1; $L3: .loc 1 63 10 mov.u32 %r24,1; $L1: .loc 1 74 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: quick_exit .visible .func quick_exit (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .reg .u64 %r26; .reg .pred %r27; mov.u32 %r24,%ar0; .loc 1 85 9 ld.global.u64 %r23,[handlers]; .loc 1 85 26 setp.eq.u64 %r25,%r23,0; @ %r25 bra $L5; $L6: .loc 1 86 3 ld.u64 %r26,[%r23+8]; { $LCT0: .callprototype _; call %r26,$LCT0; } .loc 1 85 34 ld.u64 %r23,[%r23]; .loc 1 85 26 setp.ne.u64 %r27,%r23,0; @ %r27 bra $L6; $L5: .loc 1 87 2 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; call _exit,(%out_arg1); trap; // (noreturn) exit; // (noreturn) } } lib_a-raise.o/ 0 0 0 644 164 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_raise .visible .global .align 4 .u32 _dummy_raise[1]; lib_a-rand.o/ 0 0 0 644 1209 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: srand .visible .func srand (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/rand.c" // BEGIN GLOBAL FUNCTION DECL: rand .visible .func (.param .u32 %value_out) rand; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: srand .visible .func srand (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; mov.u32 %r24,%ar0; .loc 1 67 27 ld.global.u64 %r25,[_impure_ptr]; cvt.u64.u32 %r26,%r24; st.u64 [%r25+232],%r26; .loc 1 68 1 ret; } // BEGIN GLOBAL FUNCTION DEF: rand .visible .func (.param .u32 %value_out) rand { .reg .u32 %value; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r32; .reg .u32 %r33; .loc 1 73 18 ld.global.u64 %r27,[_impure_ptr]; .loc 1 80 30 ld.u64 %r30,[%r27+232]; .loc 1 80 68 mad.lo.u64 %r24,%r30,6364136223846793005,1; .loc 1 79 27 st.u64 [%r27+232],%r24; .loc 1 81 41 shr.u64 %r32,%r24,32; .loc 1 81 48 cvt.u32.u64 %r33,%r32; .loc 1 81 10 and.b32 %value,%r33,2147483647; .loc 1 82 1 st.param.u32 [%value_out],%value; ret; } lib_a-rand48.o/ 0 0 0 644 1918 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __dorand48 .visible .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/rand48.c" // BEGIN GLOBAL FUNCTION DEF: __dorand48 .visible .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r28; .reg .u32 %r30; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u32 %r71; .reg .u64 %r72; mov.u64 %r54,%ar0; mov.u64 %r55,%ar1; .loc 1 140 39 ld.u16 %r22,[%r54+246]; .loc 1 140 66 ld.u16 %r23,[%r55]; .loc 1 140 43 mul.wide.u32 %r56,%r22,%r23; .loc 1 141 5 ld.u16 %r57,[%r54+252]; .loc 1 140 8 add.u64 %r43,%r56,%r57; .loc 1 143 8 shr.u64 %r44,%r43,16; .loc 1 144 67 ld.u16 %r28,[%r55+2]; .loc 1 145 34 ld.u16 %r30,[%r54+248]; .loc 1 144 44 mul.wide.u32 %r58,%r22,%r28; .loc 1 145 38 mul.wide.u32 %r59,%r23,%r30; .loc 1 144 71 add.u64 %r60,%r58,%r59; .loc 1 144 8 add.u64 %r45,%r60,%r44; .loc 1 147 8 shr.u64 %r46,%r45,16; .loc 1 148 28 ld.u16 %r62,[%r55+4]; cvt.u16.u32 %r63,%r22; mul.wide.u16 %r61,%r62,%r63; .loc 1 148 58 cvt.u16.u32 %r65,%r30; cvt.u16.u32 %r66,%r28; mul.wide.u16 %r64,%r65,%r66; .loc 1 148 88 ld.u16 %r69,[%r54+250]; cvt.u16.u32 %r70,%r23; mul.wide.u16 %r68,%r69,%r70; .loc 1 148 69 vadd.u32.u32.u32.add %r71,%r61,%r64,%r68; cvt.s64.s32 %r72,%r71; .loc 1 148 8 add.u64 %r47,%r72,%r46; .loc 1 142 13 st.u16 [%r55],%r43; .loc 1 146 13 st.u16 [%r55+2],%r45; .loc 1 151 14 st.u16 [%r55+4],%r47; .loc 1 152 1 ret; } lib_a-rand_r.o/ 0 0 0 644 1306 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rand_r .visible .func (.param .u32 %value_out) rand_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/rand_r.c" // BEGIN GLOBAL FUNCTION DEF: rand_r .visible .func (.param .u32 %value_out) rand_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; mov.u64 %r35,%ar0; .loc 1 28 14 ld.u32 %r27,[%r35]; .loc 1 29 12 setp.eq.u64 %r36,%r27,0; @ %r36 bra $L4; .loc 1 31 11 div.s64 %r28,%r27,127773; .loc 1 32 24 mad.lo.u64 %r38,%r28,-127773,%r27; .loc 1 32 45 mul.lo.u64 %r39,%r28,-2836; .loc 1 32 11 mad.lo.u64 %r29,%r38,16807,%r39; .loc 1 33 12 setp.lt.s64 %r40,%r29,0; @ %r40 bra $L3; .loc 1 35 19 cvt.u32.u64 %r31,%r29; .loc 1 36 16 and.b32 %r34,%r31,2147483647; bra $L2; $L3: .loc 1 34 13 add.u64 %r30,%r29,2147483647; .loc 1 35 19 cvt.u32.u64 %r31,%r30; .loc 1 36 16 and.b32 %r34,%r31,2147483647; bra $L2; $L4: mov.u32 %r34,719435623; mov.u32 %r31,%r34; $L2: .loc 1 35 17 st.u32 [%r35],%r31; .loc 1 37 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } lib_a-random.o/ 0 0 0 644 1175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: srandom .visible .func srandom (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/random.c" // BEGIN GLOBAL FUNCTION DECL: random .visible .func (.param .u64 %value_out) random; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: srandom .visible .func srandom (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; mov.u32 %r24,%ar0; .loc 1 65 27 ld.global.u64 %r25,[_impure_ptr]; cvt.u64.u32 %r26,%r24; st.u64 [%r25+232],%r26; .loc 1 66 1 ret; } // BEGIN GLOBAL FUNCTION DEF: random .visible .func (.param .u64 %value_out) random { .reg .u64 %value; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r32; .loc 1 71 18 ld.global.u64 %r27,[_impure_ptr]; .loc 1 78 30 ld.u64 %r30,[%r27+232]; .loc 1 78 68 mad.lo.u64 %r24,%r30,6364136223846793005,1; .loc 1 77 27 st.u64 [%r27+232],%r24; .loc 1 79 46 shr.u64 %r32,%r24,32; .loc 1 79 10 and.b64 %value,%r32,2147483647; .loc 1 80 1 st.param.u64 [%value_out],%value; ret; } lib_a-readr.o/ 0 0 0 644 1769 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _read_r .visible .func (.param .u64 %value_out) _read_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/reent/readr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: read .extern .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _read_r .visible .func (.param .u64 %value_out) _read_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 48 9 mov.u32 %r29,0; st.global.u32 [errno],%r29; .loc 1 49 24 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),read,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r33,[%value_in]; } .loc 1 49 12 cvt.s64.s32 %r24,%r33; .loc 1 49 6 setp.ne.u32 %r34,%r33,-1; @ %r34 bra $L1; .loc 1 49 61 ld.global.u32 %r23,[errno]; .loc 1 49 52 setp.eq.u32 %r35,%r23,0; @ %r35 bra $L1; .loc 1 50 17 st.u32 [%r25],%r23; $L1: .loc 1 52 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-realloc.o/0 0 0 644 2313 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .visible .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/machine/nvptx/realloc.c" // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __nvptx_realloc .visible .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r31; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r53; .reg .u16 %r57; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 21 19 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 23 7 set.u32.ne.u64 %r34,%r28,0; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 23 15 set.u32.ne.u64 %r37,%r31,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; cvt.u16.u8 %r57,%r33; mov.u16 %r40,%r57; cvt.u16.u8 %r57,%r36; mov.u16 %r41,%r57; and.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; .loc 1 23 6 cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L1; .loc 1 26 14 ld.u64 %r46,[%r28+-8]; min.u64 %r45,%r29,%r46; .loc 1 27 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 1 28 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __nvptx_free,(%out_arg1); } $L1: .loc 1 32 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /737 0 0 0 644 2815 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: reallocarray .visible .func (.param .u64 %value_out) reallocarray (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/reallocarray.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: reallocarray .visible .func (.param .u64 %value_out) reallocarray (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .pred %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r65; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 29 6 mov.u64 %r27,0; shr.u64 %r32,%r30,32; cvt.u32.u64 %r33,%r32; cvt.u32.u64 %r34,%r30; shr.u64 %r35,%r31,32; cvt.u32.u64 %r36,%r35; cvt.u32.u64 %r37,%r31; setp.ne.u32 %r39,%r33,0; @ %r39 bra $L4; setp.ne.u32 %r40,%r36,0; @ %r40 bra $L5; mul.wide.u32 %r38,%r34,%r37; bra $L2; $L5: mov.u32 %r43,%r36; mov.u32 %r44,%r34; bra $L6; $L4: setp.ne.u32 %r45,%r36,0; @ %r45 bra $L8; mov.u32 %r43,%r33; mov.u32 %r44,%r37; $L6: mul.wide.u32 %r46,%r34,%r37; mul.wide.u32 %r48,%r44,%r43; shr.u64 %r49,%r46,32; add.u64 %r50,%r48,%r49; shr.s64 %r51,%r50,32; cvt.u32.u64 %r52,%r51; setp.ne.u32 %r53,%r52,0; @ %r53 bra $L8; shl.b64 %r54,%r50,32; cvt.u32.u64 %r55,%r46; cvt.u64.u32 %r56,%r55; or.b64 %r38,%r54,%r56; bra $L2; $L8: mul.lo.u64 %r38,%r30,%r31; mov.u64 %r27,1; $L2: setp.ge.s64 %r59,%r38,0; @ ! %r59 bra $L12; .loc 1 29 5 setp.eq.u64 %r60,%r27,0; @ %r60 bra $L10; $L12: .loc 1 31 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 31 9 mov.u32 %r62,12; st.u32 [%r61],%r62; .loc 1 32 10 mov.u64 %r28,0; bra $L1; $L10: .loc 1 34 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r65,[%value_in]; } mov.u64 %r28,%r65; $L1: .loc 1 35 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } /759 0 0 0 644 3800 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _reallocf_r .visible .func (.param .u64 %value_out) _reallocf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/reallocf.c" // BEGIN GLOBAL FUNCTION DECL: reallocf .visible .func (.param .u64 %value_out) reallocf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _reallocf_r .visible .func (.param .u64 %value_out) _reallocf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u16 %r48; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 40 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } .loc 1 41 6 set.u32.eq.u64 %r34,%r32,0; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 41 12 set.u32.ne.u64 %r37,%r27,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; cvt.u16.u8 %r48,%r33; mov.u16 %r40,%r48; cvt.u16.u8 %r48,%r36; mov.u16 %r41,%r48; and.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; .loc 1 41 5 cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L1; .loc 1 42 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } $L1: .loc 1 44 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: reallocf .visible .func (.param .u64 %value_out) reallocf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u16 %r48; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 51 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 40 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } .loc 1 41 6 set.u32.eq.u64 %r34,%r32,0; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 41 12 set.u32.ne.u64 %r37,%r27,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; cvt.u16.u8 %r48,%r33; mov.u16 %r40,%r48; cvt.u16.u8 %r48,%r36; mov.u16 %r41,%r48; and.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; .loc 1 41 5 cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L6; .loc 1 42 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } $L6: .loc 1 52 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /777 0 0 0 644 1153 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _realloc_r .visible .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/machine/nvptx/reallocr.c" // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _realloc_r .visible .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 20 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 21 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-reent.o/ 0 0 0 644 5497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cleanup_glue .visible .func cleanup_glue (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/reent/reent.c" // BEGIN GLOBAL FUNCTION DECL: _reclaim_reent .visible .func _reclaim_reent (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DEF: errno .visible .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DEF: cleanup_glue .visible .func cleanup_glue (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 37 11 ld.u64 %r22,[%r27]; .loc 1 37 6 setp.eq.u64 %r28,%r22,0; @ %r28 bra $L2; .loc 1 37 11 ld.u64 %r23,[%r22]; .loc 1 37 6 setp.eq.u64 %r29,%r23,0; @ %r29 bra $L3; .loc 1 37 11 ld.u64 %r24,[%r23]; .loc 1 37 6 setp.eq.u64 %r30,%r24,0; @ %r30 bra $L4; .loc 1 37 11 ld.u64 %r25,[%r24]; .loc 1 37 6 setp.eq.u64 %r31,%r25,0; @ %r31 bra $L5; .loc 1 38 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call cleanup_glue,(%out_arg1,%out_arg2); } $L5: .loc 1 40 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call _free_r,(%out_arg1,%out_arg2); } $L4: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _free_r,(%out_arg1,%out_arg2); } $L3: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _free_r,(%out_arg1,%out_arg2); } $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } .loc 1 41 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _reclaim_reent .visible .func _reclaim_reent (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .pred %r40; .reg .u64 %r41; .reg .pred %r42; .reg .pred %r45; .reg .pred %r46; .reg .pred %r49; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r57; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r63; .reg .pred %r64; .reg .pred %r65; mov.u64 %r37,%ar0; .loc 1 46 6 ld.global.u64 %r38,[_impure_ptr]; setp.ne.u64 %r39,%r38,%r37; @ ! %r39 bra $L18; .loc 1 53 11 ld.u64 %r32,[%r37+120]; .loc 1 53 10 setp.eq.u64 %r40,%r32,0; @ %r40 bra $L21; mov.u64 %r25,0; $L24: .loc 1 60 16 add.u64 %r41,%r32,%r25; ld.u64 %r33,[%r41]; .loc 1 61 15 setp.eq.u64 %r42,%r33,0; @ %r42 bra $L22; $L23: mov.u64 %r23,%r33; .loc 1 64 13 ld.u64 %r33,[%r33]; .loc 1 65 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _free_r,(%out_arg1,%out_arg2); } .loc 1 61 15 setp.ne.u64 %r45,%r33,0; @ %r45 bra $L23; .loc 1 69 18 ld.u64 %r32,[%r37+120]; $L22: .loc 1 56 18 add.u64 %r25,%r25,8; setp.ne.u64 %r46,%r25,512; @ %r46 bra $L24; .loc 1 69 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call _free_r,(%out_arg1,%out_arg2); } $L21: .loc 1 71 11 ld.u64 %r26,[%r37+96]; .loc 1 71 10 setp.eq.u64 %r49,%r26,0; @ %r49 bra $L25; .loc 1 72 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call _free_r,(%out_arg1,%out_arg2); } $L25: .loc 1 100 15 ld.u64 %r34,[%r37+504]; .loc 1 100 10 setp.ne.u64 %r52,%r34,0; @ %r52 bra $L26; $L29: .loc 1 113 14 ld.u64 %r28,[%r37+136]; .loc 1 113 10 setp.ne.u64 %r53,%r28,0; @ %r53 bra $L27; bra $L28; $L26: .loc 1 100 46 add.u64 %r27,%r37,512; .loc 1 100 26 setp.eq.u64 %r54,%r34,%r27; @ %r54 bra $L29; $L30: mov.u64 %r36,%r34; .loc 1 106 10 ld.u64 %r34,[%r34]; .loc 1 107 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; call _free_r,(%out_arg1,%out_arg2); } .loc 1 103 29 setp.ne.u64 %r57,%r27,%r34; @ %r57 bra $L30; bra $L29; $L27: .loc 1 114 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call _free_r,(%out_arg1,%out_arg2); } $L28: .loc 1 121 10 ld.u32 %r60,[%r37+80]; setp.eq.u32 %r61,%r60,0; @ %r61 bra $L18; .loc 1 125 4 ld.u64 %r63,[%r37+88]; { $LCT0: .callprototype _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call %r63,(%out_arg1),$LCT0; } .loc 1 127 20 ld.u64 %r31,[%r37+1312]; .loc 1 127 7 setp.eq.u64 %r64,%r31,0; @ %r64 bra $L18; .loc 1 37 11 ld.u64 %r35,[%r31]; .loc 1 37 6 setp.eq.u64 %r65,%r35,0; @ %r65 bra $L32; .loc 1 38 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call cleanup_glue,(%out_arg1,%out_arg2); } $L32: .loc 1 40 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call _free_r,(%out_arg1,%out_arg2); } $L18: .loc 1 134 1 ret; } lib_a-refill.o/ 0 0 0 644 7789 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: lflush .func (.param .u32 %value_out) lflush (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/refill.c" // BEGIN GLOBAL FUNCTION DECL: __srefill_r .visible .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fflush .extern .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __smakebuf_r .extern .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fwalk .extern .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sflush_r .extern .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: lflush .func (.param .u32 %value_out) lflush (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u16 %r26; .reg .u16 %r27; .reg .pred %r28; .reg .u32 %r30; mov.u64 %r25,%ar0; .loc 1 28 6 ld.u16 %r27,[%r25+16]; and.b16 %r26,%r27,9; setp.ne.u16 %r28,%r26,9; @ %r28 bra $L3; .loc 1 29 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),fflush,(%out_arg1); ld.param.u32 %r30,[%value_in]; } mov.u32 %r24,%r30; bra $L1; $L3: .loc 1 30 10 mov.u32 %r24,0; $L1: .loc 1 31 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __srefill_r .visible .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r30; .reg .u32 %r32; .reg .u64 %r37; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u16 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .pred %r70; .reg .u16 %r71; .reg .pred %r73; .reg .u16 %r74; .reg .pred %r76; .reg .u32 %r77; .reg .u16 %r78; .reg .u16 %r80; .reg .pred %r82; .reg .u32 %r85; .reg .pred %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u16 %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u64 %r98; .reg .pred %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .u16 %r105; .reg .u16 %r106; .reg .pred %r107; .reg .u16 %r108; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r112; .reg .u16 %r114; .reg .pred %r116; .reg .u32 %r119; .reg .u32 %r124; .reg .u64 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .pred %r128; .reg .pred %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .u16 %r134; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; .loc 1 44 3 setp.eq.u64 %r55,%r53,0; @ %r55 bra $L5; ld.u32 %r56,[%r53+80]; setp.ne.u32 %r57,%r56,0; @ %r57 bra $L5; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; call __sinit,(%out_arg1); } $L5: .loc 1 46 3 ld.s16 %r23,[%r54+16]; cvt.u16.u32 %r60,%r23; and.b16 %r59,%r60,8192; setp.ne.u16 %r61,%r59,0; @ %r61 bra $L6; or.b16 %r62,%r60,8192; cvt.s32.s16 %r23,%r62; st.u16 [%r54+16],%r62; ld.u32 %r66,[%r54+172]; and.b32 %r65,%r66,-8193; st.u32 [%r54+172],%r65; $L6: .loc 1 48 10 mov.u32 %r67,0; st.u32 [%r54+8],%r67; .loc 1 52 6 cvt.u16.u32 %r69,%r23; and.b16 %r68,%r69,32; setp.eq.u16 %r70,%r68,0; @ %r70 bra $L7; $L12: .loc 1 53 12 mov.u32 %r52,-1; bra $L4; $L7: .loc 1 57 6 and.b16 %r71,%r69,4; setp.ne.u16 %r73,%r71,0; @ %r73 bra $L9; .loc 1 59 10 and.b16 %r74,%r69,16; setp.ne.u16 %r76,%r74,0; @ %r76 bra $L10; .loc 1 61 16 mov.u32 %r77,9; st.u32 [%r53],%r77; .loc 1 62 15 or.b16 %r78,%r69,64; st.u16 [%r54+16],%r78; .loc 1 63 11 mov.u32 %r52,-1; bra $L4; $L10: .loc 1 66 10 and.b16 %r80,%r69,8; setp.eq.u16 %r82,%r80,0; @ %r82 bra $L11; .loc 1 68 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r85,[%value_in]; } .loc 1 68 7 setp.ne.u32 %r86,%r85,0; @ %r86 bra $L12; .loc 1 70 15 ld.u16 %r88,[%r54+16]; and.b16 %r87,%r88,-9; cvt.s32.s16 %r23,%r87; .loc 1 71 11 st.u32 [%r54+12],%r85; .loc 1 72 17 st.u32 [%r54+40],%r85; $L11: .loc 1 74 18 cvt.u16.u32 %r92,%r23; or.b16 %r91,%r92,4; st.u16 [%r54+16],%r91; bra $L13; $L9: .loc 1 84 11 ld.u64 %r30,[%r54+88]; .loc 1 84 10 setp.eq.u64 %r93,%r30,0; @ %r93 bra $L13; .loc 1 86 4 add.u64 %r94,%r54,116; setp.eq.u64 %r95,%r30,%r94; @ %r95 bra $L15; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call _free_r,(%out_arg1,%out_arg2); } $L15: mov.u64 %r98,0; st.u64 [%r54+88],%r98; .loc 1 87 20 ld.u32 %r32,[%r54+112]; .loc 1 87 16 st.u32 [%r54+8],%r32; .loc 1 87 7 setp.eq.u32 %r99,%r32,0; @ %r99 bra $L13; .loc 1 89 15 ld.u64 %r100,[%r54+104]; st.u64 [%r54],%r100; .loc 1 90 15 mov.u32 %r52,0; bra $L4; $L13: .loc 1 95 6 ld.u64 %r101,[%r54+24]; setp.ne.u64 %r102,%r101,0; @ %r102 bra $L16; .loc 1 96 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call __smakebuf_r,(%out_arg1,%out_arg2); } $L16: .loc 1 103 6 ld.u16 %r106,[%r54+16]; and.b16 %r105,%r106,3; setp.ne.u16 %r107,%r105,0; @ ! %r107 bra $L18; .loc 1 107 18 mov.u16 %r108,1; st.u16 [%r54+16],%r108; .loc 1 108 14 ld.const.u64 %r111,[_global_impure_ptr]; mov.u64 %r110,lflush; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),_fwalk,(%out_arg1,%out_arg2); ld.param.u32 %r112,[%value_in]; } .loc 1 109 18 st.u16 [%r54+16],%r106; .loc 1 112 10 and.b16 %r114,%r106,9; setp.ne.u16 %r116,%r114,9; @ %r116 bra $L18; .loc 1 113 2 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r119,[%value_in]; } $L18: .loc 1 116 19 ld.u64 %r37,[%r54+24]; .loc 1 116 10 st.u64 [%r54],%r37; .loc 1 117 12 ld.u32 %r124,[%r54+32]; ld.u64 %r125,[%r54+48]; ld.u64 %r127,[%r54+56]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r124; call (%value_in),%r127,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r126,[%value_in]; } .loc 1 117 10 st.u32 [%r54+8],%r126; .loc 1 119 6 setp.gt.s32 %r128,%r126,0; @ %r128 bra $L21; .loc 1 127 13 ld.s16 %r51,[%r54+16]; .loc 1 126 10 setp.ne.u32 %r129,%r126,0; @ %r129 bra $L20; .loc 1 127 13 cvt.u16.u32 %r131,%r51; or.b16 %r130,%r131,32; st.u16 [%r54+16],%r130; .loc 1 133 14 mov.u32 %r52,-1; bra $L4; $L20: .loc 1 130 11 mov.u32 %r132,0; st.u32 [%r54+8],%r132; .loc 1 131 15 cvt.u16.u32 %r134,%r51; or.b16 %r133,%r134,64; st.u16 [%r54+16],%r133; .loc 1 133 14 mov.u32 %r52,-1; bra $L4; $L21: .loc 1 135 10 mov.u32 %r52,0; $L4: .loc 1 136 1 mov.u32 %value,%r52; st.param.u32 [%value_out],%value; ret; } lib_a-remove.o/ 0 0 0 644 1840 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _remove_r .visible .func (.param .u32 %value_out) _remove_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/remove.c" // BEGIN GLOBAL FUNCTION DECL: remove .visible .func (.param .u32 %value_out) remove (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _unlink_r .extern .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _remove_r .visible .func (.param .u32 %value_out) _remove_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r30; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 65 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_unlink_r,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 65 6 set.u32.eq.u32 %value,%r30,-1; .loc 1 69 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: remove .visible .func (.param .u32 %value_out) remove (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r27; .reg .u64 %r30; .reg .u32 %r31; mov.u64 %r27,%ar0; .loc 1 65 7 ld.global.u64 %r30,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_unlink_r,(%out_arg1,%out_arg2); ld.param.u32 %r31,[%value_in]; } .loc 1 65 6 set.u32.eq.u32 %value,%r31,-1; .loc 1 77 1 st.param.u32 [%value_out],%value; ret; } lib_a-rename.o/ 0 0 0 644 1238 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rename .visible .func (.param .u32 %value_out) rename (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/rename.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _rename_r .extern .func (.param .u32 %value_out) _rename_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: rename .visible .func (.param .u32 %value_out) rename (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 60 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_rename_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 61 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-renamer.o/0 0 0 644 1762 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _rename_r .visible .func (.param .u32 %value_out) _rename_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/reent/renamer.c" // BEGIN GLOBAL FUNCTION DECL: _link_r .extern .func (.param .u32 %value_out) _link_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _unlink_r .extern .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _rename_r .visible .func (.param .u32 %value_out) _rename_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r36; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 54 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_link_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } mov.u32 %r25,%r32; .loc 1 54 6 setp.eq.u32 %r33,%r25,-1; @ %r33 bra $L1; .loc 1 57 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_unlink_r,(%out_arg1,%out_arg2); ld.param.u32 %r36,[%value_in]; } .loc 1 57 6 set.u32.eq.u32 %r25,%r36,-1; $L1: .loc 1 64 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-rewind.o/ 0 0 0 644 2200 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _rewind_r .visible .func _rewind_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/rewind.c" // BEGIN GLOBAL FUNCTION DECL: rewind .visible .func rewind (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fseek_r .extern .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _rewind_r .visible .func _rewind_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u16 %r31; .reg .u16 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 58 10 mov.u32 %r29,0; mov.u64 %r28,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r30,[%value_in]; } .loc 1 59 3 ld.u16 %r32,[%r25+16]; and.b16 %r31,%r32,-97; st.u16 [%r25+16],%r31; .loc 1 60 1 ret; } // BEGIN GLOBAL FUNCTION DEF: rewind .visible .func rewind (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u16 %r32; .reg .u16 %r33; mov.u64 %r25,%ar0; .loc 1 58 10 ld.global.u64 %r30,[_impure_ptr]; mov.u32 %r29,0; mov.u64 %r28,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r31,[%value_in]; } .loc 1 59 3 ld.u16 %r33,[%r25+16]; and.b16 %r32,%r33,-97; st.u16 [%r25+16],%r32; .loc 1 68 1 ret; } lib_a-rget.o/ 0 0 0 644 3211 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __srget_r .visible .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/rget.c" // BEGIN GLOBAL FUNCTION DECL: __srget .visible .func (.param .u32 %value_out) __srget (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __srget_r .visible .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u64 %r42; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 40 3 setp.eq.u64 %r32,%r30,0; @ %r32 bra $L2; ld.u32 %r33,[%r30+80]; setp.ne.u32 %r34,%r33,0; @ %r34 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call __sinit,(%out_arg1); } $L2: .loc 1 42 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r38,[%value_in]; } .loc 1 42 6 setp.ne.u32 %r39,%r38,0; @ %r39 bra $L4; .loc 1 44 13 ld.u32 %r41,[%r31+8]; add.u32 %r40,%r41,-1; st.u32 [%r31+8],%r40; .loc 1 45 17 ld.u64 %r26,[%r31]; .loc 1 45 21 add.u64 %r42,%r26,1; st.u64 [%r31],%r42; .loc 1 45 14 ld.u8 %r29,[%r26]; bra $L1; $L4: .loc 1 47 10 mov.u32 %r29,-1; $L1: .loc 1 48 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __srget .visible .func (.param .u32 %value_out) __srget (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u64 %r42; mov.u64 %r31,%ar0; .loc 1 56 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 40 3 setp.eq.u64 %r32,%r22,0; @ %r32 bra $L9; ld.u32 %r33,[%r22+80]; setp.ne.u32 %r34,%r33,0; @ %r34 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call __sinit,(%out_arg1); } $L9: .loc 1 42 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r38,[%value_in]; } .loc 1 42 6 setp.ne.u32 %r39,%r38,0; @ %r39 bra $L11; .loc 1 44 13 ld.u32 %r41,[%r31+8]; add.u32 %r40,%r41,-1; st.u32 [%r31+8],%r40; .loc 1 45 17 ld.u64 %r27,[%r31]; .loc 1 45 21 add.u64 %r42,%r27,1; st.u64 [%r31],%r42; .loc 1 45 14 ld.u8 %r30,[%r27]; bra $L8; $L11: .loc 1 47 10 mov.u32 %r30,-1; $L8: .loc 1 57 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-rindex.o/ 0 0 0 644 1014 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rindex .visible .func (.param .u64 %value_out) rindex (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/rindex.c" // BEGIN GLOBAL FUNCTION DECL: strrchr .extern .func (.param .u64 %value_out) strrchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: rindex .visible .func (.param .u64 %value_out) rindex (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r27; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 37 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),strrchr,(%out_arg1,%out_arg2); ld.param.u64 %r27,[%value_in]; } .loc 1 38 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } /795 0 0 0 644 1183 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; mov.f64 %r29,%ar0; mov.f64 %r30,%ar1; .loc 1 68 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r33,%r32; and.b32 %r34,%r33,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; and.b32 %r38,%r37,-2147483648; or.b32 %r39,%r34,%r38; cvt.u64.u32 %r40,%r39; shl.b64 %r41,%r40,32; and.b64 %r42,%r27,4294967295; or.b64 %r43,%r42,%r41; mov.b64 %value,%r43; .loc 1 70 1 st.param.f64 [%value_out],%value; ret; } /815 0 0 0 644 780 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_finite.c" // BEGIN GLOBAL FUNCTION DEF: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; mov.f64 %r29,%ar0; .loc 1 31 2 mov.b64 %r31,%r29; shr.u64 %r32,%r31,32; cvt.u32.u64 %r33,%r32; .loc 1 32 32 and.b32 %r34,%r33,2147483647; .loc 1 32 44 add.u32 %r35,%r34,-2146435072; .loc 1 32 56 shr.u32 %value,%r35,31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /833 0 0 0 644 2168 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u32 %r64; .reg .u16 %r66; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; cvt.u32.u64 %r39,%r35; .loc 1 16 26 or.b32 %r40,%r37,%r39; .loc 1 16 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r42,%r39,0; neg.s32 %r24,%r42; .loc 1 17 12 set.u32.eq.u32 %r46,%r37,-2147483648; neg.s32 %r47,%r46; mov.u32 %r45,%r47; .loc 1 17 26 cvt.u16.u8 %r66,%r45; mov.u16 %r49,%r66; cvt.u16.u32 %r50,%r24; and.b16 %r48,%r49,%r50; cvt.u32.u16 %r51,%r48; .loc 1 16 48 cvt.u16.u8 %r52,%r51; setp.ne.u16 %r53,%r52,0; @ %r53 bra $L4; .loc 1 19 31 and.b32 %r31,%r37,2147483647; add.u32 %r54,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r55,%r54,2145386495; @ %r55 bra $L5; .loc 1 22 31 and.b32 %r56,%r37,2146435072; .loc 1 22 11 setp.eq.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r59,%r31,2146435072; neg.s32 %r60,%r59; mov.u32 %r58,%r60; .loc 1 26 53 cvt.u16.u8 %r66,%r58; mov.u16 %r62,%r66; and.b16 %r61,%r62,%r50; cvt.u32.u16 %r64,%r61; .loc 1 18 12 cvt.u32.u8 %r33,%r64; bra $L1; $L3: mov.u32 %r33,2; bra $L1; $L4: mov.u32 %r33,2; bra $L1; $L5: .loc 1 21 12 mov.u32 %r33,4; bra $L1; $L6: .loc 1 25 12 mov.u32 %r33,3; $L1: .loc 1 31 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-s_frexp.o/0 0 0 644 2040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/s_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r28; .reg .u32 %r33; .reg .u32 %r35; .reg .u64 %r36; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 88 5 and.b32 %r28,%r33,2147483647; .loc 1 89 8 mov.u32 %r43,0; st.u32 [%r39],%r43; .loc 1 90 4 setp.gt.s32 %r44,%r28,2146435071; @ %r44 bra $L2; .loc 1 87 2 cvt.u32.u64 %r46,%r40; .loc 1 90 25 or.b32 %r48,%r46,%r28; .loc 1 90 19 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L2; .loc 1 91 5 and.b32 %r50,%r33,2146435072; setp.ne.u32 %r51,%r50,0; @ %r51 bra $L4; .loc 1 92 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r52,%r38; shr.u64 %r53,%r52,32; cvt.u32.u64 %r33,%r53; .loc 1 94 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r43; $L3: .loc 1 97 14 shr.s32 %r55,%r28,20; .loc 1 97 19 add.u32 %r56,%r55,-1022; .loc 1 97 8 add.u32 %r57,%r56,%r35; st.u32 [%r39],%r57; .loc 1 99 2 mov.b64 %r36,%r38; .loc 1 98 10 and.b32 %r58,%r33,-2146435073; .loc 1 98 22 or.b32 %r59,%r58,1071644672; .loc 1 99 2 cvt.u64.u32 %r60,%r59; shl.b64 %r61,%r60,32; and.b64 %r62,%r36,4294967295; or.b64 %r63,%r62,%r61; mov.b64 %r38,%r63; $L2: .loc 1 101 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-s_isinf.o/0 0 0 644 1245 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 22 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 23 5 and.b32 %r33,%r43,2147483647; .loc 1 24 25 neg.s32 %r46,%r45; .loc 1 24 23 or.b32 %r47,%r46,%r45; .loc 1 24 30 shr.u32 %r48,%r47,31; .loc 1 24 5 or.b32 %r34,%r48,%r33; .loc 1 26 36 add.u32 %r50,%r34,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 26 34 or.b32 %r53,%r50,%r51; .loc 1 26 41 shr.u32 %r54,%r53,31; .loc 1 26 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 27 1 st.param.u32 [%value_out],%value; ret; } /855 0 0 0 644 1258 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isinfd.c" // BEGIN GLOBAL FUNCTION DEF: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 15 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 16 5 and.b32 %r33,%r43,2147483647; .loc 1 17 25 neg.s32 %r46,%r45; .loc 1 17 23 or.b32 %r47,%r46,%r45; .loc 1 17 30 shr.u32 %r48,%r47,31; .loc 1 17 5 or.b32 %r34,%r48,%r33; .loc 1 19 36 add.u32 %r50,%r34,-2146435072; .loc 1 18 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 19 34 or.b32 %r53,%r50,%r51; .loc 1 19 41 shr.u32 %r54,%r53,31; .loc 1 19 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 20 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/0 0 0 644 1057 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 203 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 204 5 and.b32 %r30,%r40,2147483647; .loc 1 205 25 neg.s32 %r43,%r42; .loc 1 205 23 or.b32 %r44,%r43,%r42; .loc 1 205 30 shr.u32 %r45,%r44,31; .loc 1 205 5 or.b32 %r31,%r45,%r30; .loc 1 206 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 207 33 shr.u32 %value,%r47,31; .loc 1 208 1 st.param.u32 [%value_out],%value; ret; } /873 0 0 0 644 1069 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_isnand.c" // BEGIN GLOBAL FUNCTION DEF: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 99 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 100 5 and.b32 %r30,%r40,2147483647; .loc 1 101 25 neg.s32 %r43,%r42; .loc 1 101 23 or.b32 %r44,%r43,%r42; .loc 1 101 30 shr.u32 %r45,%r44,31; .loc 1 101 5 or.b32 %r31,%r45,%r30; .loc 1 102 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 103 33 shr.u32 %value,%r47,31; .loc 1 104 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/0 0 0 644 2915 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/math/s_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f64 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 63 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 63 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 63 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 63 19 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 64 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } mov.f64 %r32,%r50; .loc 1 65 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 65 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 65 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 65 19 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 65 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 65 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 67 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } lib_a-s_modf.o/ 0 0 0 644 3651 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .f64 %r32; .reg .f64 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .f64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r86; .reg .pred %r87; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u64 %r102; .reg .u64 %r106; .reg .u64 %r107; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; mov.f64 %r54,%ar0; mov.u64 %r55,%ar1; mov.b64 %r56,%r54; shr.u64 %r57,%r56,32; cvt.u32.u64 %r58,%r57; cvt.u32.u64 %r60,%r56; .loc 1 76 11 shr.s32 %r61,%r58,20; .loc 1 76 16 and.b32 %r23,%r61,2047; .loc 1 76 5 add.u32 %r44,%r23,-1023; .loc 1 77 4 setp.gt.s32 %r62,%r44,19; @ %r62 bra $L2; .loc 1 78 8 setp.ge.s32 %r63,%r44,0; @ %r63 bra $L3; .loc 1 79 10 and.b32 %r64,%r58,-2147483648; cvt.u64.u32 %r65,%r64; shl.b64 %r69,%r65,32; st.u64 [%r55],%r69; .loc 1 80 10 mov.f64 %r53,%r54; bra $L1; $L3: .loc 1 82 19 mov.u32 %r70,1048575; shr.s32 %r46,%r70,%r44; .loc 1 83 10 and.b32 %r71,%r58,%r46; .loc 1 83 13 or.b32 %r72,%r71,%r60; .loc 1 83 5 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L5; .loc 1 84 13 st.f64 [%r55],%r54; .loc 1 85 7 and.b32 %r74,%r58,-2147483648; cvt.u64.u32 %r75,%r74; shl.b64 %r79,%r75,32; mov.b64 %r53,%r79; .loc 1 86 14 bra $L1; $L5: .loc 1 88 7 not.b32 %r80,%r46; and.b32 %r81,%r80,%r58; cvt.u64.u32 %r82,%r81; shl.b64 %r86,%r82,32; mov.b64 %r32,%r86; st.f64 [%r55],%r32; .loc 1 89 16 sub.f64 %r53,%r54,%r32; bra $L1; $L2: .loc 1 92 12 setp.le.s32 %r87,%r44,51; @ %r87 bra $L6; .loc 1 93 12 st.f64 [%r55],%r54; .loc 1 94 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r89,[%value_in]; } .loc 1 94 9 setp.ne.u32 %r90,%r89,0; @ %r90 bra $L7; .loc 1 94 54 add.f64 %r53,%r54,%r54; .loc 1 94 51 st.f64 [%r55],%r53; bra $L1; $L7: .loc 1 95 6 and.b32 %r91,%r58,-2147483648; cvt.u64.u32 %r92,%r91; shl.b64 %r96,%r92,32; mov.b64 %r53,%r96; .loc 1 96 13 bra $L1; $L6: .loc 1 98 41 add.u32 %r97,%r23,-1043; .loc 1 98 8 mov.u32 %r98,-1; shr.u32 %r45,%r98,%r97; .loc 1 99 12 and.b32 %r99,%r60,%r45; .loc 1 99 8 setp.ne.u32 %r100,%r99,0; @ %r100 bra $L8; .loc 1 100 9 st.f64 [%r55],%r54; .loc 1 101 3 and.b32 %r101,%r58,-2147483648; cvt.u64.u32 %r102,%r101; shl.b64 %r106,%r102,32; mov.b64 %r53,%r106; .loc 1 102 10 bra $L1; $L8: .loc 1 104 10 cvt.u64.u32 %r107,%r58; not.b32 %r111,%r45; and.b32 %r112,%r111,%r60; cvt.u64.u32 %r113,%r112; shl.b64 %r114,%r107,32; or.b64 %r115,%r114,%r113; mov.b64 %r42,%r115; st.f64 [%r55],%r42; .loc 1 105 12 sub.f64 %r53,%r54,%r42; $L1: .loc 1 108 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 0 0 0 644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_nan.c" // BEGIN GLOBAL FUNCTION DEF: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 44 9 mov.f64 %value,0d7ff8000000000000; .loc 1 45 1 st.param.f64 [%value_out],%value; ret; } /891 0 0 0 644 3281 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/s_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r27; .reg .f64 %r33; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .f64 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .f64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; .loc 1 86 2 mov.b64 %r53,%r51; shr.u64 %r54,%r53,32; cvt.u32.u64 %r39,%r54; .loc 1 87 28 shr.s32 %r56,%r39,20; .loc 1 87 11 and.b32 %r41,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r41,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r39,2147483647; .loc 1 86 2 cvt.u32.u64 %r60,%r53; .loc 1 89 20 or.b32 %r62,%r58,%r60; .loc 1 89 16 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L9; .loc 1 90 8 mul.f64 %r51,%r51,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r64,%r52,-50000; @ %r64 bra $L4; .loc 1 93 39 mul.f64 %r50,%r51,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r65,%r41,2047; @ %r65 bra $L5; .loc 1 95 31 add.f64 %r50,%r51,%r51; bra $L1; $L4: .loc 1 91 6 mov.b64 %r66,%r51; shr.u64 %r67,%r66,32; cvt.u32.u64 %r39,%r67; .loc 1 92 26 shr.s32 %r69,%r39,20; and.b32 %r70,%r69,2047; .loc 1 92 8 add.u32 %r41,%r70,-54; $L5: .loc 1 96 11 add.u32 %r42,%r52,%r41; .loc 1 97 12 setp.le.s32 %r71,%r42,2046; @ %r71 bra $L6; .loc 1 97 37 mov.f64 %r72,0d7e37e43c8800759c; copysign.f64 %r27,%r51,%r72; .loc 1 97 36 mul.f64 %r50,%r27,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r42,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r48,%r51; and.b32 %r74,%r39,-2146435073; shl.b32 %r75,%r42,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r48,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r50,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r42,-53; @ %r81 bra $L8; .loc 1 103 23 mov.f64 %r82,0d01a56e1fc2f8f359; copysign.f64 %r33,%r51,%r82; .loc 1 103 22 mul.f64 %r50,%r33,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r49,%r51; .loc 1 105 11 add.u32 %r83,%r42,54; .loc 1 106 2 shl.b32 %r84,%r83,20; and.b32 %r85,%r39,-2146435073; or.b32 %r86,%r84,%r85; cvt.u64.u32 %r87,%r86; shl.b64 %r88,%r87,32; and.b64 %r89,%r49,4294967295; or.b64 %r90,%r89,%r88; mov.b64 %r44,%r90; .loc 1 107 17 mul.f64 %r50,%r44,0d3c90000000000000; bra $L1; $L9: .loc 1 89 49 mov.f64 %r50,%r51; $L1: .loc 1 108 1 mov.f64 %value,%r50; st.param.f64 [%value_out],%value; ret; } /909 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sbrkr.o/ 0 0 0 644 1303 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sbrk_r .visible .func (.param .u64 %value_out) _sbrk_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/reent/sbrkr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: sbrk .extern .func (.param .u64 %value_out) sbrk (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _sbrk_r .visible .func (.param .u64 %value_out) _sbrk_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 50 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 51 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),sbrk,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 51 6 setp.ne.u64 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 51 62 ld.global.u32 %r22,[errno]; .loc 1 51 53 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 52 17 st.u32 [%r24],%r22; $L1: .loc 1 54 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-scanf.o/ 0 0 0 644 2358 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scanf .visible .func (.param .u32 %value_out) scanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/scanf.c" // BEGIN GLOBAL FUNCTION DECL: _scanf_r .visible .func (.param .u32 %value_out) _scanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfscanf_r .extern .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: scanf .visible .func (.param .u32 %value_out) scanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r26,%ar0; .loc 1 31 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 35 9 ld.u64 %r32,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 38 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _scanf_r .visible .func (.param .u32 %value_out) _scanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 56 9 ld.u64 %r32,[%r25+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 59 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-sccl.o/ 0 0 0 644 3416 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sccl .visible .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/sccl.c" // BEGIN GLOBAL FUNCTION DEF: __sccl .visible .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; .reg .u64 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u64 %r51; .reg .u64 %r53; .reg .u64 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u16 %r70; .reg .pred %r71; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u64 %r88; .reg .pred %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r95; .reg .u32 %r97; .reg .u32 %r100; .reg .u16 %r101; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; .loc 1 40 5 ld.u8 %r34,[%r59]; .loc 1 41 6 setp.eq.u32 %r60,%r34,94; @ %r60 bra $L2; .loc 1 40 11 add.u64 %r57,%r59,1; mov.u32 %r45,0; .loc 1 47 7 mov.u32 %r37,%r45; bra $L3; $L2: .loc 1 44 15 add.u64 %r57,%r59,2; .loc 1 44 9 ld.u8 %r34,[%r59+1]; mov.u32 %r45,1; .loc 1 43 9 mov.u32 %r37,%r45; $L3: mov.u64 %r53,%r58; add.u64 %r55,%r58,256; .loc 1 50 12 cvt.u32.u32 %r61,%r45; $L4: st.u8 [%r53],%r61; .loc 1 49 17 add.u64 %r53,%r53,1; setp.ne.u64 %r62,%r53,%r55; @ %r62 bra $L4; .loc 1 51 6 setp.ne.u32 %r63,%r34,0; @ %r63 bra $L5; .loc 1 52 16 add.u64 %r57,%r57,-1; bra $L1; $L5: .loc 1 65 14 set.u32.eq.u32 %r66,%r37,0; neg.s32 %r44,%r66; cvt.u32.u32 %r69,%r44; mov.u32 %r97,0; .loc 1 90 10 mov.u32 %r100,45; bra $L7; $L22: .loc 1 67 9 mov.u32 %r34,%r29; bra $L11; $L16: .loc 1 90 10 mov.u32 %r34,%r100; $L11: mov.u64 %r57,%r51; $L7: .loc 1 65 10 cvt.s64.s32 %r67,%r34; .loc 1 65 14 add.u64 %r68,%r58,%r67; st.u8 [%r68],%r69; $L8: add.u64 %r51,%r57,1; .loc 1 67 11 ld.u8 %r29,[%r57]; .loc 1 68 7 cvt.u16.u32 %r70,%r29; setp.eq.u16 %r71,%r70,45; @ %r71 bra $L9; setp.eq.u16 %r73,%r70,93; @ %r73 bra $L15; setp.eq.u32 %r74,%r29,0; @ ! %r74 bra $L22; bra $L1; $L9: .loc 1 87 8 ld.u8 %r30,[%r57+1]; .loc 1 88 10 set.u32.eq.u32 %r76,%r30,93; neg.s32 %r77,%r76; mov.u32 %r75,%r77; .loc 1 88 22 set.u32.gt.s32 %r79,%r34,%r30; neg.s32 %r80,%r79; mov.u32 %r78,%r80; .loc 1 88 17 cvt.u16.u8 %r101,%r75; mov.u16 %r82,%r101; cvt.u16.u8 %r101,%r78; mov.u16 %r83,%r101; or.b16 %r81,%r82,%r83; cvt.u32.u16 %r84,%r81; .loc 1 88 7 cvt.u16.u8 %r85,%r84; setp.ne.u16 %r86,%r85,0; @ %r86 bra $L16; add.u64 %r57,%r57,2; add.u32 %r95,%r34,1; cvt.s64.s32 %r88,%r95; add.u64 %r42,%r58,%r88; mov.u32 %r35,%r34; $L12: .loc 1 96 17 add.u32 %r35,%r35,1; st.u8 [%r42],%r69; .loc 1 98 13 add.u64 %r42,%r42,1; setp.gt.s32 %r90,%r30,%r35; @ %r90 bra $L12; setp.ge.s32 %r92,%r34,%r30; @ %r92 bra $L13; sub.u32 %r93,%r30,%r34; add.u32 %r91,%r93,-1; bra $L14; $L13: mov.u32 %r91,%r97; $L14: .loc 1 96 17 add.u32 %r34,%r91,%r95; bra $L8; $L15: .loc 1 68 7 mov.u64 %r57,%r51; $L1: .loc 1 126 1 mov.u64 %value,%r57; st.param.u64 [%value_out],%value; ret; } lib_a-seed48.o/ 0 0 0 644 2666 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _seed48_r .visible .func (.param .u64 %value_out) _seed48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/seed48.c" // BEGIN GLOBAL FUNCTION DECL: seed48 .visible .func (.param .u64 %value_out) seed48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN VAR DEF: sseed$0 .global .align 2 .u16 sseed$0[3]; // BEGIN GLOBAL FUNCTION DEF: _seed48_r .visible .func (.param .u64 %value_out) _seed48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r32; .reg .u16 %r34; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 23 12 cvta.global.u64 %r31,sseed$0; ld.u16 %r32,[%r29+240]; st.u16 [%r31],%r32; .loc 1 24 12 ld.u16 %r34,[%r29+242]; st.u16 [%r31+2],%r34; .loc 1 25 12 ld.u16 %r36,[%r29+244]; st.u16 [%r31+4],%r36; .loc 1 26 20 ld.u16 %r37,[%r30]; st.u16 [%r29+240],%r37; .loc 1 27 20 ld.u16 %r38,[%r30+2]; st.u16 [%r29+242],%r38; .loc 1 28 20 ld.u16 %r39,[%r30+4]; st.u16 [%r29+244],%r39; .loc 1 29 20 mov.u16 %r40,-6547; st.u16 [%r29+246],%r40; .loc 1 30 20 mov.u32 %r41,384748; st.u32 [%r29+248],%r41; .loc 1 32 16 mov.u16 %r42,11; st.u16 [%r29+252],%r42; .loc 1 34 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: seed48 .visible .func (.param .u64 %value_out) seed48 (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r32; .reg .u16 %r34; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; mov.u64 %r30,%ar0; .loc 1 40 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 23 12 cvta.global.u64 %r31,sseed$0; ld.u16 %r32,[%r22+240]; st.u16 [%r31],%r32; .loc 1 24 12 ld.u16 %r34,[%r22+242]; st.u16 [%r31+2],%r34; .loc 1 25 12 ld.u16 %r36,[%r22+244]; st.u16 [%r31+4],%r36; .loc 1 26 20 ld.u16 %r37,[%r30]; st.u16 [%r22+240],%r37; .loc 1 27 20 ld.u16 %r38,[%r30+2]; st.u16 [%r22+242],%r38; .loc 1 28 20 ld.u16 %r39,[%r30+4]; st.u16 [%r22+244],%r39; .loc 1 29 20 mov.u16 %r40,-6547; st.u16 [%r22+246],%r40; .loc 1 30 20 mov.u32 %r41,384748; st.u32 [%r22+248],%r41; .loc 1 32 16 mov.u16 %r42,11; st.u16 [%r22+252],%r42; .loc 1 41 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-setbuf.o/ 0 0 0 644 1214 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setbuf .visible .func setbuf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/setbuf.c" // BEGIN GLOBAL FUNCTION DECL: setvbuf .extern .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: setbuf .visible .func setbuf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 71 10 set.u32.eq.u64 %r32,%r26,0; neg.s32 %r33,%r32; add.u32 %r34,%r33,%r33; mov.u64 %r30,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r34; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r30; call (%value_in),setvbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 72 1 ret; } /930 0 0 0 644 1355 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setbuffer .visible .func setbuffer (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/setbuffer.c" // BEGIN GLOBAL FUNCTION DECL: setvbuf .extern .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: setbuffer .visible .func setbuffer (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u32 %r28,%ar2; .loc 1 72 10 cvt.s64.s32 %r33,%r28; set.u32.eq.u64 %r35,%r27,0; neg.s32 %r36,%r35; add.u32 %r37,%r36,%r36; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r37; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; call (%value_in),setvbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r38,[%value_in]; } .loc 1 73 1 ret; } /949 0 0 0 644 1145 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setlinebuf .visible .func (.param .u32 %value_out) setlinebuf (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/setlinebuf.c" // BEGIN GLOBAL FUNCTION DECL: setvbuf .extern .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: setlinebuf .visible .func (.param .u32 %value_out) setlinebuf (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r23,%ar0; .loc 1 61 11 mov.u64 %r27,0; mov.u32 %r26,1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),setvbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r28,[%value_in]; } .loc 1 62 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-setvbuf.o/0 0 0 644 7851 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setvbuf .visible .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/setvbuf.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __swhatbuf_r .extern .func (.param .u32 %value_out) __swhatbuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: setvbuf .visible .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r25; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r44; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .pred %r68; .reg .u64 %r71; .reg .u32 %r72; .reg .u16 %r74; .reg .u16 %r75; .reg .pred %r76; .reg .u64 %r79; .reg .u16 %r80; .reg .u16 %r81; .reg .u64 %r88; .reg .u32 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r96; .reg .pred %r98; .reg .pred %r99; .reg .u64 %r101; .reg .pred %r103; .reg .u16 %r104; .reg .u16 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u64 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .pred %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u16 %r121; .reg .pred %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .pred %r126; .reg .u16 %r127; .reg .pred %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .pred %r134; mov.u64 %r51,%ar0; mov.u64 %r52,%ar1; mov.u32 %r53,%ar2; mov.u64 %r54,%ar3; .loc 1 97 18 ld.global.u64 %r44,[_impure_ptr]; .loc 1 101 3 setp.eq.u64 %r55,%r44,0; @ %r55 bra $L2; ld.u32 %r56,[%r44+80]; setp.ne.u32 %r57,%r56,0; @ %r57 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __sinit,(%out_arg1); } $L2: .loc 1 108 6 setp.eq.u32 %r134,%r53,2; @ %r134 bra $L3; .loc 1 109 8 setp.gt.u32 %r60,%r53,1; @ %r60 bra $L20; .loc 1 109 47 cvt.u32.u64 %r61,%r54; .loc 1 109 44 setp.lt.s32 %r62,%r61,0; @ %r62 bra $L21; $L3: .loc 1 120 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r65,[%value_in]; } .loc 1 121 7 ld.u64 %r25,[%r51+88]; .loc 1 121 6 setp.eq.u64 %r66,%r25,0; @ %r66 bra $L5; .loc 1 122 5 add.u64 %r67,%r51,116; setp.eq.u64 %r68,%r25,%r67; @ %r68 bra $L6; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call _free_r,(%out_arg1,%out_arg2); } $L6: mov.u64 %r71,0; st.u64 [%r51+88],%r71; $L5: .loc 1 123 25 mov.u32 %r72,0; st.u32 [%r51+40],%r72; .loc 1 123 10 st.u32 [%r51+8],%r72; .loc 1 124 9 ld.s16 %r27,[%r51+16]; .loc 1 124 6 cvt.u16.u32 %r75,%r27; and.b16 %r74,%r75,128; setp.eq.u16 %r76,%r74,0; @ %r76 bra $L7; .loc 1 125 5 ld.u64 %r79,[%r51+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r79; call _free_r,(%out_arg1,%out_arg2); } .loc 1 126 14 ld.s16 %r27,[%r51+16]; $L7: cvt.u16.u32 %r81,%r27; and.b16 %r80,%r81,-3236; cvt.s32.s16 %r29,%r80; st.u16 [%r51+16],%r80; .loc 1 128 6 @ %r134 bra $L22; .loc 1 136 17 add.u64 %r88,%frame,8; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r88; call (%value_in),__swhatbuf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r89,[%value_in]; } .loc 1 136 14 cvt.u16.u32 %r90,%r89; ld.u16 %r92,[%r51+16]; or.b16 %r91,%r92,%r90; st.u16 [%r51+16],%r91; .loc 1 137 6 setp.ne.u64 %r93,%r54,0; @ %r93 bra $L9; .loc 1 140 12 ld.u64 %r54,[%frame]; bra $L10; $L9: .loc 1 144 6 setp.ne.u64 %r94,%r52,0; @ %r94 bra $L11; $L10: .loc 1 146 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r96,[%value_in]; } mov.u64 %r52,%r96; .loc 1 146 10 setp.ne.u64 %r98,%r96,0; @ %r98 bra $L12; .loc 1 153 13 ld.u64 %r33,[%frame]; .loc 1 153 7 setp.ne.u64 %r99,%r33,%r54; @ %r99 bra $L13; .loc 1 170 18 ld.s16 %r29,[%r51+16]; .loc 1 152 8 mov.u32 %r50,-1; bra $L8; $L13: .loc 1 156 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r101,[%value_in]; } mov.u64 %r52,%r101; .loc 1 159 10 setp.ne.u64 %r103,%r101,0; @ %r103 bra $L23; .loc 1 170 18 ld.s16 %r29,[%r51+16]; .loc 1 152 8 mov.u32 %r50,-1; bra $L8; $L22: .loc 1 96 7 mov.u32 %r50,0; $L8: .loc 1 163 22 cvt.u16.u32 %r105,%r29; or.b16 %r104,%r105,2; st.u16 [%r51+16],%r104; .loc 1 164 18 mov.u32 %r106,0; st.u32 [%r51+12],%r106; .loc 1 165 36 add.u64 %r35,%r51,119; .loc 1 165 34 st.u64 [%r51],%r35; .loc 1 165 25 st.u64 [%r51+24],%r35; .loc 1 166 25 mov.u32 %r107,1; st.u32 [%r51+32],%r107; .loc 1 168 18 bra $L1; $L23: mov.u64 %r54,%r33; $L12: .loc 1 170 18 ld.u16 %r109,[%r51+16]; or.b16 %r108,%r109,128; st.u16 [%r51+16],%r108; $L11: .loc 1 177 6 ld.u32 %r110,[%r44+80]; setp.ne.u32 %r111,%r110,0; @ %r111 bra $L14; .loc 1 178 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __sinit,(%out_arg1); } $L14: .loc 1 188 17 ld.s16 %r48,[%r51+16]; .loc 1 187 6 ld.u64 %r113,[%frame]; setp.eq.u64 %r114,%r113,%r54; @ %r114 bra $L15; .loc 1 188 17 cvt.u16.u32 %r116,%r48; or.b16 %r115,%r116,2048; cvt.s32.s16 %r48,%r115; st.u16 [%r51+16],%r115; $L15: .loc 1 195 6 setp.ne.u32 %r118,%r53,1; @ %r118 bra $L16; .loc 1 196 16 cvt.u16.u32 %r120,%r48; or.b16 %r119,%r120,1; st.u16 [%r51+16],%r119; .loc 1 197 26 st.u64 [%r51],%r52; .loc 1 197 17 st.u64 [%r51+24],%r52; .loc 1 198 17 cvt.u32.u64 %r49,%r54; st.u32 [%r51+32],%r49; .loc 1 200 6 and.b16 %r121,%r120,8; setp.ne.u16 %r123,%r121,0; @ %r123 bra $L17; bra $L18; $L16: .loc 1 197 26 st.u64 [%r51],%r52; .loc 1 197 17 st.u64 [%r51+24],%r52; .loc 1 198 17 cvt.u32.u64 %r49,%r54; st.u32 [%r51+32],%r49; .loc 1 200 6 cvt.u16.u32 %r125,%r48; and.b16 %r124,%r125,8; setp.eq.u16 %r126,%r124,0; @ %r126 bra $L18; .loc 1 206 10 and.b16 %r127,%r125,1; setp.eq.u16 %r129,%r127,0; @ %r129 bra $L19; $L17: .loc 1 208 11 mov.u32 %r130,0; st.u32 [%r51+12],%r130; .loc 1 209 19 neg.s32 %r131,%r49; .loc 1 209 17 st.u32 [%r51+40],%r131; .loc 1 221 10 mov.u32 %r50,%r130; bra $L1; $L19: .loc 1 212 16 st.u32 [%r51+12],%r49; .loc 1 221 10 mov.u32 %r50,0; bra $L1; $L18: .loc 1 217 14 mov.u32 %r132,0; st.u32 [%r51+12],%r132; .loc 1 221 10 mov.u32 %r50,%r132; bra $L1; $L20: .loc 1 110 14 mov.u32 %r50,-1; bra $L1; $L21: mov.u32 %r50,-1; $L1: .loc 1 222 1 mov.u32 %value,%r50; st.param.u32 [%value_out],%value; ret; } /969 0 0 0 644 885 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .f32 %r28; .reg .f32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; mov.f32 %r28,%ar0; mov.f32 %r29,%ar1; .loc 1 34 2 mov.b32 %r31,%r28; and.b32 %r30,%r31,2147483647; mov.b32 %r33,%r29; and.b32 %r32,%r33,-2147483648; or.b32 %r24,%r30,%r32; .loc 1 35 16 mov.b32 %value,%r24; .loc 1 36 1 st.param.f32 [%value_out],%value; ret; } /990 0 0 0 644 697 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_finite.c" // BEGIN GLOBAL FUNCTION DEF: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 10 set.u32.le.s32 %r31,%r29,2139095039; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /1009 0 0 0 644 1217 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u32 %r27; .reg .f32 %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; mov.f32 %r28,%ar0; .loc 1 16 9 mov.b32 %r29,%r28; and.b32 %r26,%r29,2147483647; .loc 1 16 6 setp.eq.u32 %r30,%r26,0; @ %r30 bra $L3; .loc 1 18 29 add.u32 %r31,%r26,-8388608; .loc 1 18 11 setp.le.u32 %r32,%r31,2130706431; @ %r32 bra $L4; .loc 1 21 29 add.u32 %r33,%r26,-1; .loc 1 21 11 setp.le.u32 %r34,%r33,8388606; @ %r34 bra $L5; .loc 1 24 14 set.u32.eq.u32 %r36,%r26,2139095040; neg.s32 %r27,%r36; bra $L1; $L3: .loc 1 17 12 mov.u32 %r27,2; bra $L1; $L4: .loc 1 20 12 mov.u32 %r27,4; bra $L1; $L5: .loc 1 23 12 mov.u32 %r27,3; $L1: .loc 1 28 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } /1032 0 0 0 644 2124 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/sf_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .f32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r62; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r30,%r38; .loc 1 34 5 and.b32 %r31,%r30,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r31,2139095039; neg.s32 %r43,%r42; mov.u32 %r41,%r43; .loc 1 36 31 set.u32.eq.u32 %r45,%r31,0; neg.s32 %r46,%r45; mov.u32 %r44,%r46; .loc 1 36 29 cvt.u16.u8 %r62,%r41; mov.u16 %r48,%r62; cvt.u16.u8 %r62,%r44; mov.u16 %r49,%r62; or.b16 %r47,%r48,%r49; cvt.u32.u16 %r50,%r47; .loc 1 36 4 cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r30,2139095040; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 38 8 mul.f32 %r55,%r38,0f4c000000; .loc 1 39 6 mov.b32 %r30,%r55; .loc 1 40 9 and.b32 %r31,%r30,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r31,23; .loc 1 43 19 add.u32 %r57,%r56,-126; .loc 1 43 8 add.u32 %r58,%r57,%r36; st.u32 [%r39],%r58; .loc 1 44 10 and.b32 %r59,%r30,-2139095041; .loc 1 44 22 or.b32 %r60,%r59,1056964608; .loc 1 45 2 mov.b32 %r37,%r60; .loc 1 46 9 bra $L1; $L4: .loc 1 36 61 mov.f32 %r37,%r38; $L1: .loc 1 47 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1050 0 0 0 644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 19 2 mov.b32 %r23,%r27; .loc 1 20 5 and.b32 %r29,%r23,2147483647; .loc 1 21 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 22 1 st.param.u32 [%value_out],%value; ret; } /1068 0 0 0 644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isinff.c" // BEGIN GLOBAL FUNCTION DEF: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 12 2 mov.b32 %r23,%r27; .loc 1 13 5 and.b32 %r29,%r23,2147483647; .loc 1 14 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 15 1 st.param.u32 [%value_out],%value; ret; } /1087 0 0 0 644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 30 2 mov.b32 %r23,%r27; .loc 1 31 5 and.b32 %r29,%r23,2147483647; .loc 1 32 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /1105 0 0 0 644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_isnanf.c" // BEGIN GLOBAL FUNCTION DEF: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 22 2 mov.b32 %r23,%r27; .loc 1 23 5 and.b32 %r29,%r23,2147483647; .loc 1 24 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 25 1 st.param.u32 [%value_out],%value; ret; } /1124 0 0 0 644 2911 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/math/sf_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f32 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 26 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 26 20 set.u32.eq.f32 %r37,%r32,0f00000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 26 20 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 27 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } mov.f32 %r32,%r50; .loc 1 28 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 28 20 set.u32.eq.f32 %r54,%r32,0f00000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 28 20 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 28 41 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 28 47 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 30 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } lib_a-sf_modf.o/0 0 0 644 2243 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r31; .reg .u32 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; mov.f32 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 27 2 mov.b32 %r33,%r39; .loc 1 28 11 shr.s32 %r41,%r33,23; .loc 1 28 16 and.b32 %r42,%r41,255; .loc 1 28 5 add.u32 %r36,%r42,-127; .loc 1 29 4 setp.gt.s32 %r43,%r36,22; @ %r43 bra $L2; .loc 1 30 8 setp.ge.s32 %r44,%r36,0; @ %r44 bra $L3; .loc 1 31 10 and.b32 %r45,%r33,-2147483648; st.u32 [%r40],%r45; .loc 1 32 10 mov.f32 %r38,%r39; bra $L1; $L3: .loc 1 34 19 mov.u32 %r46,8388607; shr.s32 %r37,%r46,%r36; .loc 1 35 9 and.b32 %r47,%r33,%r37; .loc 1 35 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 36 13 st.f32 [%r40],%r39; .loc 1 37 7 and.b32 %r49,%r33,-2147483648; mov.b32 %r38,%r49; .loc 1 38 14 bra $L1; $L5: .loc 1 40 7 not.b32 %r50,%r37; and.b32 %r51,%r50,%r33; mov.b32 %r31,%r51; st.f32 [%r40],%r31; .loc 1 41 16 sub.f32 %r38,%r39,%r31; bra $L1; $L2: .loc 1 45 12 st.f32 [%r40],%r39; .loc 1 46 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 46 9 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L6; .loc 1 46 54 add.f32 %r38,%r39,%r39; .loc 1 46 51 st.f32 [%r40],%r38; bra $L1; $L6: .loc 1 47 6 and.b32 %r55,%r33,-2147483648; mov.b32 %r38,%r55; $L1: .loc 1 50 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 0 0 0 644 494 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/common/sf_nan.c" // BEGIN GLOBAL FUNCTION DEF: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 17 9 mov.f32 %value,0f7fc00000; .loc 1 18 1 st.param.f32 [%value_out],%value; ret; } /1142 0 0 0 644 2617 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libm/common/sf_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r32; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .f32 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .f32 %r68; mov.f32 %r47,%ar0; mov.u32 %r48,%ar1; .loc 1 46 2 mov.b32 %r44,%r47; .loc 1 47 5 and.b32 %r40,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r49,%r40,0; @ %r49 bra $L10; .loc 1 51 12 setp.le.u32 %r50,%r40,2139095039; @ %r50 bra $L3; .loc 1 52 14 add.f32 %r46,%r47,%r47; bra $L1; $L3: .loc 1 53 12 and.b32 %r51,%r44,2139095040; setp.ne.u32 %r52,%r51,0; @ %r52 bra $L4; .loc 1 54 8 mul.f32 %r47,%r47,0f4c000000; .loc 1 57 16 setp.lt.s32 %r53,%r48,-50000; @ %r53 bra $L5; .loc 1 55 6 mov.b32 %r39,%r47; .loc 1 56 26 shr.s32 %r54,%r39,23; and.b32 %r55,%r54,255; .loc 1 56 8 add.u32 %r38,%r55,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r46,%r47,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r39,%r44; .loc 1 48 15 shr.u32 %r38,%r40,23; $L6: .loc 1 59 11 add.u32 %r41,%r38,%r48; .loc 1 60 12 setp.le.s32 %r56,%r41,254; @ %r56 bra $L7; .loc 1 60 46 mov.f32 %r57,0f7149f2ca; copysign.f32 %r26,%r47,%r57; .loc 1 60 45 mul.f32 %r46,%r26,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r58,%r41,0; @ %r58 bra $L8; .loc 1 62 7 and.b32 %r59,%r39,-2139095041; shl.b32 %r60,%r41,23; or.b32 %r61,%r59,%r60; mov.b32 %r46,%r61; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r62,%r41,-22; @ %r62 bra $L9; .loc 1 66 23 mov.f32 %r63,0f0da24260; copysign.f32 %r32,%r47,%r63; .loc 1 66 22 mul.f32 %r46,%r32,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r64,%r41,25; .loc 1 69 2 shl.b32 %r65,%r64,23; and.b32 %r66,%r39,-2139095041; or.b32 %r67,%r65,%r66; .loc 1 70 17 mov.b32 %r68,%r67; mul.f32 %r46,%r68,0f33000000; bra $L1; $L10: .loc 1 50 13 mov.f32 %r46,%r47; $L1: .loc 1 71 1 mov.f32 %value,%r46; st.param.f32 [%value_out],%value; ret; } lib_a-signal.o/ 0 0 0 644 15436 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _init_signal_r .visible .func (.param .u32 %value_out) _init_signal_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/signal/signal.c" // BEGIN GLOBAL FUNCTION DECL: _signal_r .visible .func (.param .u64 %value_out) _signal_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _raise_r .visible .func (.param .u32 %value_out) _raise_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sigtramp_r .visible .func (.param .u32 %value_out) __sigtramp_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: raise .visible .func (.param .u32 %value_out) raise (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: signal .visible .func (.param .u64 %value_out) signal (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _init_signal .visible .func (.param .u32 %value_out) _init_signal; // BEGIN GLOBAL FUNCTION DECL: __sigtramp .visible .func (.param .u32 %value_out) __sigtramp (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _getpid_r .extern .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _kill_r .extern .func (.param .u32 %value_out) _kill_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _init_signal_r .visible .func (.param .u32 %value_out) _init_signal_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r36; mov.u64 %r28,%ar0; .loc 1 96 6 ld.u64 %r29,[%r28+1304]; setp.ne.u64 %r30,%r29,0; @ %r30 bra $L2; .loc 1 98 41 mov.u64 %r32,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } .loc 1 98 22 st.u64 [%r28+1304],%r33; .loc 1 99 10 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L5; mov.u64 %r24,%r33; add.u64 %r26,%r24,256; $L4: .loc 1 103 20 st.u64 [%r24],%r29; .loc 1 102 21 add.u64 %r24,%r24,8; setp.ne.u64 %r36,%r24,%r26; @ %r36 bra $L4; $L2: .loc 1 106 10 mov.u32 %r27,0; bra $L1; $L5: .loc 1 100 9 mov.u32 %r27,-1; $L1: .loc 1 107 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _signal_r .visible .func (.param .u64 %value_out) _signal_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; mov.u64 %r30,%ar0; mov.u32 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 116 6 setp.le.u32 %r33,%r31,31; @ %r33 bra $L8; .loc 1 118 19 mov.u32 %r34,22; st.u32 [%r30],%r34; .loc 1 119 14 mov.u64 %r29,-1; bra $L7; $L8: .loc 1 122 10 ld.u64 %r24,[%r30+1304]; .loc 1 122 6 setp.ne.u64 %r35,%r24,0; @ %r35 bra $L10; .loc 1 98 41 mov.u64 %r37,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r38,[%value_in]; } mov.u64 %r24,%r38; .loc 1 98 22 st.u64 [%r30+1304],%r24; .loc 1 99 10 setp.eq.u64 %r39,%r24,0; @ %r39 bra $L12; mov.u64 %r27,%r24; add.u64 %r23,%r24,256; .loc 1 103 20 mov.u64 %r40,0; $L11: st.u64 [%r27],%r40; .loc 1 102 21 add.u64 %r27,%r27,8; setp.ne.u64 %r41,%r23,%r27; @ %r41 bra $L11; $L10: .loc 1 125 28 cvt.s64.s32 %r42,%r31; shl.b64 %r43,%r42,3; add.u64 %r26,%r24,%r43; .loc 1 125 12 ld.u64 %r29,[%r26]; .loc 1 126 23 st.u64 [%r26],%r32; .loc 1 128 10 bra $L7; $L12: .loc 1 123 12 mov.u64 %r29,-1; $L7: .loc 1 129 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _raise_r .visible .func (.param .u32 %value_out) _raise_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; mov.u64 %r29,%ar0; mov.u32 %r30,%ar1; .loc 1 137 6 setp.le.u32 %r31,%r30,31; @ %r31 bra $L15; .loc 1 139 19 mov.u32 %r32,22; st.u32 [%r29],%r32; .loc 1 140 14 mov.u32 %r28,-1; bra $L14; $L15: .loc 1 143 10 ld.u64 %r23,[%r29+1304]; .loc 1 143 6 setp.eq.u64 %r33,%r23,0; @ %r33 bra $L17; .loc 1 146 26 cvt.s64.s32 %r34,%r30; shl.b64 %r35,%r34,3; add.u64 %r25,%r23,%r35; .loc 1 146 10 ld.u64 %r27,[%r25]; .loc 1 148 6 setp.ne.u64 %r36,%r27,0; @ %r36 bra $L18; $L17: .loc 1 149 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r38,[%value_in]; } { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; call (%value_in),_kill_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r42,[%value_in]; } mov.u32 %r28,%r42; bra $L14; $L18: .loc 1 150 11 setp.eq.u64 %r43,%r27,1; @ %r43 bra $L20; .loc 1 152 11 setp.ne.u64 %r44,%r27,-1; @ %r44 bra $L19; .loc 1 154 19 mov.u32 %r45,22; st.u32 [%r29],%r45; .loc 1 155 14 mov.u32 %r28,1; bra $L14; $L19: .loc 1 159 27 mov.u64 %r46,0; st.u64 [%r25],%r46; .loc 1 160 7 { $LCT0: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r30; call %r27,(%out_arg1),$LCT0; } .loc 1 161 14 mov.u32 %r28,0; bra $L14; $L20: .loc 1 151 12 mov.u32 %r28,0; $L14: .loc 1 163 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sigtramp_r .visible .func (.param .u32 %value_out) __sigtramp_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u64 %r46; mov.u64 %r31,%ar0; mov.u32 %r32,%ar1; .loc 1 171 6 setp.le.u32 %r33,%r32,31; @ %r33 bra $L25; $L28: .loc 1 173 14 mov.u32 %r30,-1; bra $L24; $L25: .loc 1 176 10 ld.u64 %r23,[%r31+1304]; .loc 1 176 6 setp.ne.u64 %r34,%r23,0; @ %r34 bra $L27; .loc 1 98 41 mov.u64 %r36,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r37,[%value_in]; } mov.u64 %r23,%r37; .loc 1 98 22 st.u64 [%r31+1304],%r23; .loc 1 99 10 setp.eq.u64 %r38,%r23,0; @ %r38 bra $L28; mov.u64 %r27,%r23; add.u64 %r28,%r23,256; .loc 1 103 20 mov.u64 %r39,0; $L29: st.u64 [%r27],%r39; .loc 1 102 21 add.u64 %r27,%r27,8; setp.ne.u64 %r40,%r27,%r28; @ %r40 bra $L29; $L27: .loc 1 179 24 cvt.s64.s32 %r41,%r32; shl.b64 %r42,%r41,3; add.u64 %r25,%r23,%r42; .loc 1 179 8 ld.u64 %r26,[%r25]; .loc 1 180 6 setp.eq.u64 %r43,%r26,0; @ %r43 bra $L30; .loc 1 182 11 setp.eq.u64 %r44,%r26,-1; @ %r44 bra $L31; .loc 1 184 11 setp.eq.u64 %r45,%r26,1; @ %r45 bra $L32; .loc 1 188 27 mov.u64 %r46,0; st.u64 [%r25],%r46; .loc 1 189 7 { $LCT1: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r32; call %r26,(%out_arg1),$LCT1; } .loc 1 190 14 mov.u32 %r30,0; bra $L24; $L30: .loc 1 181 12 mov.u32 %r30,1; bra $L24; $L31: .loc 1 183 12 mov.u32 %r30,2; bra $L24; $L32: .loc 1 185 12 mov.u32 %r30,3; $L24: .loc 1 192 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: raise .visible .func (.param .u32 %value_out) raise (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; mov.u32 %r30,%ar0; .loc 1 199 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 137 6 setp.le.u32 %r31,%r30,31; @ %r31 bra $L38; .loc 1 139 19 mov.u32 %r32,22; st.u32 [%r22],%r32; .loc 1 140 14 mov.u32 %r29,-1; bra $L37; $L38: .loc 1 143 10 ld.u64 %r24,[%r22+1304]; .loc 1 143 6 setp.eq.u64 %r33,%r24,0; @ %r33 bra $L40; .loc 1 146 26 cvt.s64.s32 %r34,%r30; shl.b64 %r35,%r34,3; add.u64 %r26,%r24,%r35; .loc 1 146 10 ld.u64 %r27,[%r26]; .loc 1 148 6 setp.ne.u64 %r36,%r27,0; @ %r36 bra $L41; $L40: .loc 1 149 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r38,[%value_in]; } { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; call (%value_in),_kill_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r42,[%value_in]; } mov.u32 %r29,%r42; bra $L37; $L41: .loc 1 150 11 setp.eq.u64 %r43,%r27,1; @ %r43 bra $L43; .loc 1 152 11 setp.ne.u64 %r44,%r27,-1; @ %r44 bra $L42; .loc 1 154 19 mov.u32 %r45,22; st.u32 [%r22],%r45; .loc 1 155 14 mov.u32 %r29,1; bra $L37; $L42: .loc 1 159 27 mov.u64 %r46,0; st.u64 [%r26],%r46; .loc 1 160 7 { $LCT2: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r30; call %r27,(%out_arg1),$LCT2; } .loc 1 161 14 mov.u32 %r29,0; bra $L37; $L43: .loc 1 151 12 mov.u32 %r29,0; $L37: .loc 1 200 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: signal .visible .func (.param .u64 %value_out) signal (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 206 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 116 6 setp.le.u32 %r33,%r31,31; @ %r33 bra $L48; .loc 1 118 19 mov.u32 %r34,22; st.u32 [%r22],%r34; .loc 1 119 14 mov.u64 %r30,-1; bra $L47; $L48: .loc 1 122 10 ld.u64 %r25,[%r22+1304]; .loc 1 122 6 setp.ne.u64 %r35,%r25,0; @ %r35 bra $L50; .loc 1 98 41 mov.u64 %r37,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r38,[%value_in]; } mov.u64 %r25,%r38; .loc 1 98 22 st.u64 [%r22+1304],%r25; .loc 1 99 10 setp.eq.u64 %r39,%r25,0; @ %r39 bra $L52; mov.u64 %r28,%r25; add.u64 %r24,%r25,256; .loc 1 103 20 mov.u64 %r40,0; $L51: st.u64 [%r28],%r40; .loc 1 102 21 add.u64 %r28,%r28,8; setp.ne.u64 %r41,%r24,%r28; @ %r41 bra $L51; $L50: .loc 1 125 28 cvt.s64.s32 %r42,%r31; shl.b64 %r43,%r42,3; add.u64 %r27,%r25,%r43; .loc 1 125 12 ld.u64 %r30,[%r27]; .loc 1 126 23 st.u64 [%r27],%r32; .loc 1 128 10 bra $L47; $L52: .loc 1 123 12 mov.u64 %r30,-1; $L47: .loc 1 207 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _init_signal .visible .func (.param .u32 %value_out) _init_signal { .reg .u32 %value; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r36; .loc 1 212 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 96 6 ld.u64 %r29,[%r22+1304]; setp.ne.u64 %r30,%r29,0; @ %r30 bra $L55; .loc 1 98 41 mov.u64 %r32,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } .loc 1 98 22 st.u64 [%r22+1304],%r33; .loc 1 99 10 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L58; mov.u64 %r25,%r33; add.u64 %r27,%r25,256; $L57: .loc 1 103 20 st.u64 [%r25],%r29; .loc 1 102 21 add.u64 %r25,%r25,8; setp.ne.u64 %r36,%r25,%r27; @ %r36 bra $L57; $L55: .loc 1 106 10 mov.u32 %r28,0; bra $L54; $L58: .loc 1 100 9 mov.u32 %r28,-1; $L54: .loc 1 213 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sigtramp .visible .func (.param .u32 %value_out) __sigtramp (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u64 %r46; mov.u32 %r32,%ar0; .loc 1 218 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 171 6 setp.le.u32 %r33,%r32,31; @ %r33 bra $L61; $L64: .loc 1 173 14 mov.u32 %r31,-1; bra $L60; $L61: .loc 1 176 10 ld.u64 %r24,[%r22+1304]; .loc 1 176 6 setp.ne.u64 %r34,%r24,0; @ %r34 bra $L63; .loc 1 98 41 mov.u64 %r36,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r37,[%value_in]; } mov.u64 %r24,%r37; .loc 1 98 22 st.u64 [%r22+1304],%r24; .loc 1 99 10 setp.eq.u64 %r38,%r24,0; @ %r38 bra $L64; mov.u64 %r25,%r24; add.u64 %r29,%r24,256; .loc 1 103 20 mov.u64 %r39,0; $L65: st.u64 [%r25],%r39; .loc 1 102 21 add.u64 %r25,%r25,8; setp.ne.u64 %r40,%r25,%r29; @ %r40 bra $L65; $L63: .loc 1 179 24 cvt.s64.s32 %r41,%r32; shl.b64 %r42,%r41,3; add.u64 %r27,%r24,%r42; .loc 1 179 8 ld.u64 %r28,[%r27]; .loc 1 180 6 setp.eq.u64 %r43,%r28,0; @ %r43 bra $L66; .loc 1 182 11 setp.eq.u64 %r44,%r28,-1; @ %r44 bra $L67; .loc 1 184 11 setp.eq.u64 %r45,%r28,1; @ %r45 bra $L68; .loc 1 188 27 mov.u64 %r46,0; st.u64 [%r27],%r46; .loc 1 189 7 { $LCT3: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r32; call %r28,(%out_arg1),$LCT3; } .loc 1 190 14 mov.u32 %r31,0; bra $L60; $L66: .loc 1 181 12 mov.u32 %r31,1; bra $L60; $L67: .loc 1 183 12 mov.u32 %r31,2; bra $L60; $L68: .loc 1 185 12 mov.u32 %r31,3; $L60: .loc 1 219 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-signalr.o/0 0 0 644 2073 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _kill_r .visible .func (.param .u32 %value_out) _kill_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/reent/signalr.c" // BEGIN GLOBAL FUNCTION DECL: _getpid_r .visible .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: kill .extern .func (.param .u32 %value_out) kill (.param .u32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: getpid .extern .func (.param .u32 %value_out) getpid; // BEGIN GLOBAL FUNCTION DEF: _kill_r .visible .func (.param .u32 %value_out) _kill_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 52 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 53 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; call (%value_in),kill,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 53 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 53 47 ld.global.u32 %r22,[errno]; .loc 1 53 38 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 54 17 st.u32 [%r24],%r22; $L1: .loc 1 56 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _getpid_r .visible .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .loc 1 83 9 { .param .u32 %value_in; call (%value_in),getpid; ld.param.u32 %r24,[%value_in]; } .loc 1 85 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } lib_a-signgam.o/0 0 0 644 558 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __signgam .visible .func (.param .u64 %value_out) __signgam; .file 1 "../../../../../newlib/libc/reent/signgam.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: __signgam .visible .func (.param .u64 %value_out) __signgam { .reg .u64 %value; .reg .u64 %r25; .loc 1 13 10 ld.global.u64 %r25,[_impure_ptr]; add.u64 %value,%r25,224; .loc 1 14 1 st.param.u64 [%value_out],%value; ret; } /1161 0 0 0 644 3506 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _siprintf_r .visible .func (.param .u32 %value_out) _siprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/siprintf.c" // BEGIN GLOBAL FUNCTION DECL: siprintf .visible .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _siprintf_r .visible .func (.param .u32 %value_out) _siprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r36; .reg .u32 %r37; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 111 22 st.u64 [%frame],%r26; .loc 1 111 15 st.u64 [%frame+24],%r26; .loc 1 112 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 112 22 st.u32 [%frame+12],%r28; .loc 1 110 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 115 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 117 5 ld.u64 %r22,[%frame]; .loc 1 117 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 119 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: siprintf .visible .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 132 22 st.u64 [%frame],%r26; .loc 1 132 15 st.u64 [%frame+24],%r26; .loc 1 133 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 133 22 st.u32 [%frame+12],%r28; .loc 1 131 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 136 9 ld.global.u64 %r36,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r37,[%value_in]; } .loc 1 138 5 ld.u64 %r23,[%frame]; .loc 1 138 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 140 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } lib_a-siscanf.o/0 0 0 644 4418 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: siscanf .visible .func (.param .u32 %value_out) siscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/siscanf.c" // BEGIN GLOBAL FUNCTION DECL: _siscanf_r .visible .func (.param .u32 %value_out) _siscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfiscanf_r .extern .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: siscanf .visible .func (.param .u32 %value_out) siscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u64 %r41; .reg .u32 %r42; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 92 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 93 22 st.u64 [%frame],%r27; .loc 1 93 15 st.u64 [%frame+24],%r27; .loc 1 94 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 94 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 94 15 st.u32 [%frame+32],%r23; .loc 1 95 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 96 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 97 15 st.u64 [%frame+120],%r33; .loc 1 98 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 100 9 ld.global.u64 %r41,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } .loc 1 103 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _siscanf_r .visible .func (.param .u32 %value_out) _siscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r41; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 116 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 117 22 st.u64 [%frame],%r27; .loc 1 117 15 st.u64 [%frame+24],%r27; .loc 1 118 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 118 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 118 15 st.u32 [%frame+32],%r23; .loc 1 119 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 120 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 121 15 st.u64 [%frame+120],%r33; .loc 1 122 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 124 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r41,[%value_in]; } .loc 1 127 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } /1179 0 0 0 644 6378 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sniprintf_r .visible .func (.param .u32 %value_out) _sniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdio/sniprintf.c" // BEGIN GLOBAL FUNCTION DECL: sniprintf .visible .func (.param .u32 %value_out) sniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _sniprintf_r .visible .func (.param .u32 %value_out) _sniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %args; ld.param.u64 %args,[%in_ar4]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; mov.u64 %r32,%ar3; .loc 1 39 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L2; .loc 1 41 19 mov.u32 %r34,139; st.u32 [%r29],%r34; .loc 1 42 14 mov.u32 %r28,-1; bra $L1; $L2: .loc 1 44 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 45 22 st.u64 [%frame],%r30; .loc 1 45 15 st.u64 [%frame+24],%r30; .loc 1 46 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L4; .loc 1 46 41 cvt.u32.u64 %r37,%r31; add.u32 %r26,%r37,-1; .loc 1 46 22 st.u32 [%frame+12],%r26; .loc 1 46 15 st.u32 [%frame+32],%r26; .loc 1 47 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 49 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r28,%r44; .loc 1 51 6 setp.lt.s32 %r45,%r28,-1; @ %r45 bra $L5; $L7: .loc 1 54 7 ld.u64 %r24,[%frame]; .loc 1 54 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L1; $L4: .loc 1 46 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 46 15 st.u32 [%frame+32],%r48; .loc 1 47 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 49 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r28,%r56; .loc 1 51 6 setp.lt.s32 %r57,%r28,-1; @ ! %r57 bra $L1; bra $L6; $L5: .loc 1 52 17 mov.u32 %r58,139; st.u32 [%r29],%r58; bra $L7; $L6: mov.u32 %r59,139; st.u32 [%r29],%r59; $L1: .loc 1 56 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: sniprintf .visible .func (.param .u32 %value_out) sniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 68 18 ld.global.u64 %r26,[_impure_ptr]; .loc 1 70 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L9; .loc 1 72 19 mov.u32 %r34,139; st.u32 [%r26],%r34; .loc 1 73 14 mov.u32 %r29,-1; bra $L8; $L9: .loc 1 75 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 76 22 st.u64 [%frame],%r30; .loc 1 76 15 st.u64 [%frame+24],%r30; .loc 1 77 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L11; .loc 1 77 41 cvt.u32.u64 %r37,%r31; add.u32 %r27,%r37,-1; .loc 1 77 22 st.u32 [%frame+12],%r27; .loc 1 77 15 st.u32 [%frame+32],%r27; .loc 1 78 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 80 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r29,%r44; .loc 1 82 6 setp.lt.s32 %r45,%r29,-1; @ %r45 bra $L12; $L14: .loc 1 85 7 ld.u64 %r24,[%frame]; .loc 1 85 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L8; $L11: .loc 1 77 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 77 15 st.u32 [%frame+32],%r48; .loc 1 78 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 80 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r29,%r56; .loc 1 82 6 setp.lt.s32 %r57,%r29,-1; @ ! %r57 bra $L8; bra $L13; $L12: .loc 1 83 17 mov.u32 %r58,139; st.u32 [%r26],%r58; bra $L14; $L13: mov.u32 %r59,139; st.u32 [%r26],%r59; $L8: .loc 1 87 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } /1198 0 0 0 644 6363 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _snprintf_r .visible .func (.param .u32 %value_out) _snprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdio/snprintf.c" // BEGIN GLOBAL FUNCTION DECL: snprintf .visible .func (.param .u32 %value_out) snprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _snprintf_r .visible .func (.param .u32 %value_out) _snprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %args; ld.param.u64 %args,[%in_ar4]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; mov.u64 %r32,%ar3; .loc 1 38 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L2; .loc 1 40 19 mov.u32 %r34,139; st.u32 [%r29],%r34; .loc 1 41 14 mov.u32 %r28,-1; bra $L1; $L2: .loc 1 43 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 44 22 st.u64 [%frame],%r30; .loc 1 44 15 st.u64 [%frame+24],%r30; .loc 1 45 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L4; .loc 1 45 41 cvt.u32.u64 %r37,%r31; add.u32 %r26,%r37,-1; .loc 1 45 22 st.u32 [%frame+12],%r26; .loc 1 45 15 st.u32 [%frame+32],%r26; .loc 1 46 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 48 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r28,%r44; .loc 1 50 6 setp.lt.s32 %r45,%r28,-1; @ %r45 bra $L5; $L7: .loc 1 53 7 ld.u64 %r24,[%frame]; .loc 1 53 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L1; $L4: .loc 1 45 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 45 15 st.u32 [%frame+32],%r48; .loc 1 46 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 48 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r28,%r56; .loc 1 50 6 setp.lt.s32 %r57,%r28,-1; @ ! %r57 bra $L1; bra $L6; $L5: .loc 1 51 17 mov.u32 %r58,139; st.u32 [%r29],%r58; bra $L7; $L6: mov.u32 %r59,139; st.u32 [%r29],%r59; $L1: .loc 1 55 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: snprintf .visible .func (.param .u32 %value_out) snprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 73 18 ld.global.u64 %r26,[_impure_ptr]; .loc 1 75 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L9; .loc 1 77 19 mov.u32 %r34,139; st.u32 [%r26],%r34; .loc 1 78 14 mov.u32 %r29,-1; bra $L8; $L9: .loc 1 80 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 81 22 st.u64 [%frame],%r30; .loc 1 81 15 st.u64 [%frame+24],%r30; .loc 1 82 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L11; .loc 1 82 41 cvt.u32.u64 %r37,%r31; add.u32 %r27,%r37,-1; .loc 1 82 22 st.u32 [%frame+12],%r27; .loc 1 82 15 st.u32 [%frame+32],%r27; .loc 1 83 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 85 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r29,%r44; .loc 1 87 6 setp.lt.s32 %r45,%r29,-1; @ %r45 bra $L12; $L14: .loc 1 90 7 ld.u64 %r24,[%frame]; .loc 1 90 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L8; $L11: .loc 1 82 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 82 15 st.u32 [%frame+32],%r48; .loc 1 83 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 85 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r29,%r56; .loc 1 87 6 setp.lt.s32 %r57,%r29,-1; @ ! %r57 bra $L8; bra $L13; $L12: .loc 1 88 17 mov.u32 %r58,139; st.u32 [%r26],%r58; bra $L14; $L13: mov.u32 %r59,139; st.u32 [%r26],%r59; $L8: .loc 1 92 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-sprintf.o/0 0 0 644 3493 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sprintf_r .visible .func (.param .u32 %value_out) _sprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/sprintf.c" // BEGIN GLOBAL FUNCTION DECL: sprintf .visible .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _sprintf_r .visible .func (.param .u32 %value_out) _sprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r36; .reg .u32 %r37; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 587 22 st.u64 [%frame],%r26; .loc 1 587 15 st.u64 [%frame+24],%r26; .loc 1 588 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 588 22 st.u32 [%frame+12],%r28; .loc 1 586 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 591 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 593 5 ld.u64 %r22,[%frame]; .loc 1 593 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 595 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: sprintf .visible .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 614 22 st.u64 [%frame],%r26; .loc 1 614 15 st.u64 [%frame+24],%r26; .loc 1 615 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 615 22 st.u32 [%frame+12],%r28; .loc 1 613 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 618 9 ld.global.u64 %r36,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r37,[%value_in]; } .loc 1 620 5 ld.u64 %r23,[%frame]; .loc 1 620 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 622 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } lib_a-srand48.o/0 0 0 644 1780 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _srand48_r .visible .func _srand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/srand48.c" // BEGIN GLOBAL FUNCTION DECL: srand48 .visible .func srand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: _srand48_r .visible .func _srand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r27; .reg .u16 %r28; .reg .u64 %r29; .reg .u16 %r30; .reg .u32 %r31; .reg .u16 %r32; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 21 20 mov.u16 %r28,13070; st.u16 [%r26+240],%r28; .loc 1 22 22 st.u16 [%r26+242],%r27; .loc 1 23 60 shr.u64 %r29,%r27,16; .loc 1 23 22 st.u16 [%r26+244],%r29; .loc 1 24 20 mov.u16 %r30,-6547; st.u16 [%r26+246],%r30; .loc 1 25 20 mov.u32 %r31,384748; st.u32 [%r26+248],%r31; .loc 1 27 16 mov.u16 %r32,11; st.u16 [%r26+252],%r32; .loc 1 28 1 ret; } // BEGIN GLOBAL FUNCTION DEF: srand48 .visible .func srand48 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r27; .reg .u16 %r28; .reg .u64 %r29; .reg .u16 %r30; .reg .u32 %r31; .reg .u16 %r32; mov.u64 %r27,%ar0; .loc 1 34 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 20 mov.u16 %r28,13070; st.u16 [%r22+240],%r28; .loc 1 22 22 st.u16 [%r22+242],%r27; .loc 1 23 60 shr.u64 %r29,%r27,16; .loc 1 23 22 st.u16 [%r22+244],%r29; .loc 1 24 20 mov.u16 %r30,-6547; st.u16 [%r22+246],%r30; .loc 1 25 20 mov.u32 %r31,384748; st.u32 [%r22+248],%r31; .loc 1 27 16 mov.u16 %r32,11; st.u16 [%r22+252],%r32; .loc 1 35 1 ret; } lib_a-sscanf.o/ 0 0 0 644 4415 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sscanf .visible .func (.param .u32 %value_out) sscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/sscanf.c" // BEGIN GLOBAL FUNCTION DECL: _sscanf_r .visible .func (.param .u32 %value_out) _sscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfscanf_r .extern .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: sscanf .visible .func (.param .u32 %value_out) sscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u64 %r41; .reg .u32 %r42; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 431 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 432 22 st.u64 [%frame],%r27; .loc 1 432 15 st.u64 [%frame+24],%r27; .loc 1 433 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 433 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 433 15 st.u32 [%frame+32],%r23; .loc 1 434 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 435 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 436 15 st.u64 [%frame+120],%r33; .loc 1 437 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 439 9 ld.global.u64 %r41,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } .loc 1 442 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _sscanf_r .visible .func (.param .u32 %value_out) _sscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r41; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 461 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 462 22 st.u64 [%frame],%r27; .loc 1 462 15 st.u64 [%frame+24],%r27; .loc 1 463 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 463 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 463 15 st.u32 [%frame+32],%r23; .loc 1 464 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 465 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 466 15 st.u64 [%frame+120],%r33; .loc 1 467 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 469 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r41,[%value_in]; } .loc 1 472 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } lib_a-statr.o/ 0 0 0 644 1510 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _stat_r .visible .func (.param .u32 %value_out) _stat_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/reent/statr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: stat .extern .func (.param .u32 %value_out) stat (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _stat_r .visible .func (.param .u32 %value_out) _stat_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 54 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 55 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),stat,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 55 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 55 50 ld.global.u32 %r22,[errno]; .loc 1 55 41 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 56 17 st.u32 [%r24],%r22; $L1: .loc 1 58 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-stdio.o/ 0 0 0 644 7351 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sread .visible .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/stdio.c" // BEGIN GLOBAL FUNCTION DECL: __seofread .visible .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .visible .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .visible .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .visible .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _read_r .extern .func (.param .u64 %value_out) _read_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _lseek_r .extern .func (.param .u64 %value_out) _lseek_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _close_r .extern .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __sread .visible .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; mov.u32 %r34,%ar3; .loc 1 47 9 cvt.s64.s32 %r39,%r34; ld.s16 %r40,[%r32+18]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r39; call (%value_in),_read_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r41,[%value_in]; } .loc 1 56 6 setp.lt.s64 %r42,%r41,0; @ %r42 bra $L2; .loc 1 57 17 ld.u64 %r44,[%r32+144]; add.u64 %r43,%r44,%r41; st.u64 [%r32+144],%r43; bra $L3; $L2: .loc 1 59 16 ld.u16 %r46,[%r32+16]; and.b16 %r45,%r46,-4097; st.u16 [%r32+16],%r45; $L3: .loc 1 60 10 cvt.u32.u64 %value,%r41; .loc 1 61 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __seofread .visible .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .loc 1 70 10 mov.u32 %value,0; .loc 1 71 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __swrite .visible .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %r22; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .pred %r38; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r44; .reg .u16 %r45; .reg .u16 %r46; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; mov.u64 %r34,%ar2; mov.u32 %r35,%ar3; .loc 1 85 9 ld.s16 %r22,[%r33+16]; .loc 1 85 6 cvt.u16.u32 %r37,%r22; and.b16 %r36,%r37,256; setp.eq.u16 %r38,%r36,0; @ %r38 bra $L6; .loc 1 86 5 ld.s16 %r43,[%r33+18]; mov.u32 %r42,2; mov.u64 %r41,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r41; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r42; call (%value_in),_lseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r44,[%value_in]; } .loc 1 87 14 ld.s16 %r22,[%r33+16]; $L6: cvt.u16.u32 %r46,%r22; and.b16 %r45,%r46,-4097; st.u16 [%r33+16],%r45; .loc 1 94 7 cvt.s64.s32 %r51,%r35; ld.s16 %r52,[%r33+18]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r52; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r34; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r51; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r53,[%value_in]; } .loc 1 101 10 cvt.u32.u64 %value,%r53; .loc 1 102 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sseek .visible .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u32 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u16 %r43; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; mov.u32 %r32,%ar3; .loc 1 113 9 ld.s16 %r37,[%r30+18]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),_lseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r38,[%value_in]; } .loc 1 114 6 setp.ne.u64 %r39,%r38,-1; @ %r39 bra $L11; .loc 1 115 16 ld.u16 %r41,[%r30+16]; and.b16 %r40,%r41,-4097; st.u16 [%r30+16],%r40; bra $L10; $L11: .loc 1 118 18 ld.u16 %r43,[%r30+16]; or.b16 %r42,%r43,4096; st.u16 [%r30+16],%r42; .loc 1 119 19 st.u64 [%r30+144],%r38; $L10: .loc 1 122 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sclose .visible .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r29; .reg .u32 %r30; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 130 10 ld.s16 %r29,[%r26+18]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; call (%value_in),_close_r,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 131 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } /1216 0 0 0 644 1729 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcasecmp .visible .func (.param .u32 %value_out) strcasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strcasecmp.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strcasecmp .visible .func (.param .u32 %value_out) strcasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r46; .reg .u16 %r49; .reg .u16 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u64 %r56; .reg .u16 %r59; .reg .u16 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r66; .reg .u16 %r67; mov.u64 %r39,%ar0; mov.u64 %r38,%ar1; cvta.const.u64 %r66,_ctype_+1; $L5: .loc 1 45 22 ld.s8 %r30,[%r39]; cvt.u32.u32 %r44,%r30; cvt.s64.s8 %r43,%r44; add.u64 %r46,%r66,%r43; ld.u8 %r67,[%r46]; mov.u16 %r49,%r67; and.b16 %r51,%r49,3; setp.ne.u16 %r52,%r51,1; @ %r52 bra $L2; add.u32 %r30,%r30,32; $L2: .loc 1 46 22 ld.s8 %r31,[%r38]; cvt.u32.u32 %r54,%r31; cvt.s64.s8 %r53,%r54; add.u64 %r56,%r66,%r53; ld.u8 %r67,[%r56]; mov.u16 %r59,%r67; and.b16 %r61,%r59,3; setp.ne.u16 %r62,%r61,1; @ %r62 bra $L3; add.u32 %r31,%r31,32; $L3: .loc 1 47 15 sub.u32 %r40,%r30,%r31; .loc 1 47 10 setp.ne.u32 %r63,%r30,%r31; @ %r63 bra $L1; .loc 1 47 32 add.u64 %r39,%r39,1; add.u64 %r38,%r38,1; setp.ne.u32 %r64,%r31,0; @ %r64 bra $L5; $L1: .loc 1 51 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-strcat.o/ 0 0 0 644 2237 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcat .visible .func (.param .u64 %value_out) strcat (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strcat.c" // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strcat .visible .func (.param .u64 %value_out) strcat (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r60; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 74 7 and.b64 %r40,%r38,7; .loc 1 74 6 setp.ne.u64 %r41,%r40,0; @ %r41 bra $L6; .loc 1 77 15 ld.u64 %r32,[%r38]; add.u64 %r42,%r32,-72340172838076673; not.b64 %r43,%r32; and.b64 %r44,%r42,%r43; and.b64 %r45,%r44,-9187201950435737472; .loc 1 77 14 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L7; mov.u64 %r30,%r38; bra $L2; $L6: mov.u64 %r30,%r38; $L2: .loc 1 83 10 ld.u8 %r48,[%r30]; cvt.s16.s8 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L4; bra $L5; $L7: .loc 1 77 14 mov.u64 %r30,%r38; $L3: .loc 1 78 12 add.u64 %r30,%r30,8; .loc 1 77 15 ld.u64 %r24,[%r30]; add.u64 %r50,%r24,-72340172838076673; not.b64 %r51,%r24; and.b64 %r52,%r50,%r51; and.b64 %r53,%r52,-9187201950435737472; .loc 1 77 14 setp.eq.u64 %r54,%r53,0; @ %r54 bra $L3; bra $L2; $L4: .loc 1 84 7 add.u64 %r30,%r30,1; .loc 1 83 10 ld.u8 %r56,[%r30]; cvt.s16.s8 %r55,%r56; setp.ne.u16 %r57,%r55,0; @ %r57 bra $L4; $L5: .loc 1 93 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r60,[%value_in]; } .loc 1 97 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-strchr.o/ 0 0 0 644 4923 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strchr .visible .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/strchr.c" // BEGIN GLOBAL FUNCTION DEF: strchr .visible .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r46; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r54; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u16 %r94; .reg .pred %r95; .reg .pred %r96; .reg .u16 %r97; .reg .pred %r99; .reg .u64 %r100; .reg .pred %r101; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .pred %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .u16 %r123; .reg .u16 %r124; .reg .pred %r125; .reg .u16 %r127; mov.u64 %r72,%ar0; mov.u32 %r73,%ar1; .loc 1 59 17 mov.u32 %r74,%r73; cvt.u32.u8 %r48,%r74; .loc 1 86 10 and.b64 %r70,%r72,7; .loc 1 66 6 setp.eq.u32 %r75,%r48,0; @ %r75 bra $L2; .loc 1 86 10 setp.ne.u64 %r76,%r70,0; @ ! %r76 bra $L4; .loc 1 90 10 cvt.u16.u32 %r127,%r48; bra $L3; $L2: .loc 1 68 14 setp.eq.u64 %r77,%r70,0; @ %r77 bra $L5; $L7: .loc 1 70 14 ld.u8 %r78,[%r72]; setp.eq.u16 %r79,%r78,0; @ %r79 bra $L15; .loc 1 72 12 add.u64 %r72,%r72,1; .loc 1 68 14 and.b64 %r80,%r72,7; setp.ne.u64 %r81,%r80,0; @ %r81 bra $L7; $L5: .loc 1 76 15 ld.u64 %r42,[%r72]; add.u64 %r82,%r42,-72340172838076673; not.b64 %r83,%r42; and.b64 %r84,%r82,%r83; and.b64 %r85,%r84,-9187201950435737472; .loc 1 76 14 setp.ne.u64 %r86,%r85,0; @ %r86 bra $L8; $L9: .loc 1 77 21 add.u64 %r72,%r72,8; .loc 1 76 15 ld.u64 %r24,[%r72]; add.u64 %r87,%r24,-72340172838076673; not.b64 %r88,%r24; and.b64 %r89,%r87,%r88; and.b64 %r90,%r89,-9187201950435737472; .loc 1 76 14 setp.eq.u64 %r91,%r90,0; @ %r91 bra $L9; $L8: .loc 1 80 14 ld.u8 %r92,[%r72]; setp.eq.u16 %r93,%r92,0; @ %r93 bra $L16; $L10: .loc 1 81 10 add.u64 %r72,%r72,1; .loc 1 80 14 ld.u8 %r94,[%r72]; setp.ne.u16 %r95,%r94,0; @ %r95 bra $L10; mov.u64 %r71,%r72; bra $L1; $L3: .loc 1 88 12 ld.u8 %r30,[%r72]; .loc 1 88 10 setp.eq.u32 %r96,%r30,0; @ %r96 bra $L17; .loc 1 90 10 cvt.u16.u32 %r97,%r30; setp.eq.u16 %r99,%r97,%r127; @ %r99 bra $L18; .loc 1 92 8 add.u64 %r72,%r72,1; .loc 1 86 10 and.b64 %r100,%r72,7; setp.ne.u64 %r101,%r100,0; @ %r101 bra $L3; $L4: .loc 1 95 8 cvt.u64.u8 %r49,%r74; .loc 1 97 18 shl.b64 %r66,%r49,8; .loc 1 97 10 or.b64 %r65,%r49,%r66; .loc 1 97 18 shl.b64 %r64,%r65,16; .loc 1 97 10 or.b64 %r63,%r64,%r65; .loc 1 97 18 shl.b64 %r33,%r63,32; .loc 1 97 10 or.b64 %r50,%r33,%r63; .loc 1 100 11 ld.u64 %r51,[%r72]; .loc 1 100 42 xor.b64 %r54,%r50,%r51; add.u64 %r103,%r54,-72340172838076673; not.b64 %r104,%r54; and.b64 %r105,%r103,%r104; .loc 1 100 11 add.u64 %r106,%r51,-72340172838076673; not.b64 %r107,%r51; and.b64 %r108,%r106,%r107; .loc 1 100 38 or.b64 %r109,%r105,%r108; and.b64 %r110,%r109,-9187201950435737472; setp.ne.u64 %r111,%r110,0; @ %r111 bra $L11; $L12: .loc 1 101 17 add.u64 %r72,%r72,8; .loc 1 100 11 ld.u64 %r34,[%r72]; .loc 1 100 42 xor.b64 %r40,%r34,%r50; .loc 1 100 11 add.u64 %r112,%r34,-72340172838076673; not.b64 %r113,%r34; and.b64 %r114,%r112,%r113; .loc 1 100 42 add.u64 %r115,%r40,-72340172838076673; not.b64 %r116,%r40; and.b64 %r117,%r115,%r116; .loc 1 100 38 or.b64 %r118,%r114,%r117; and.b64 %r119,%r118,-9187201950435737472; setp.eq.u64 %r120,%r119,0; @ %r120 bra $L12; $L11: .loc 1 111 10 ld.u8 %r46,[%r72]; .loc 1 111 13 setp.ne.u32 %r121,%r46,0; @ ! %r121 bra $L32; cvt.u16.u32 %r123,%r48; bra $L13; $L32: .loc 1 89 16 mov.u64 %r71,0; bra $L1; $L14: .loc 1 112 6 add.u64 %r72,%r72,1; .loc 1 111 10 ld.u8 %r46,[%r72]; .loc 1 111 13 setp.eq.u32 %r122,%r46,0; @ %r122 bra $L19; $L13: cvt.u16.u32 %r124,%r46; setp.ne.u16 %r125,%r123,%r124; @ %r125 bra $L14; mov.u64 %r71,%r72; bra $L1; $L15: mov.u64 %r71,%r72; bra $L1; $L16: .loc 1 80 14 mov.u64 %r71,%r72; bra $L1; $L17: .loc 1 89 16 mov.u64 %r71,0; bra $L1; $L18: mov.u64 %r71,%r72; bra $L1; $L19: mov.u64 %r71,0; $L1: .loc 1 116 1 mov.u64 %value,%r71; st.param.u64 [%value_out],%value; ret; } lib_a-strcmp.o/ 0 0 0 644 2233 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcmp .visible .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strcmp.c" // BEGIN GLOBAL FUNCTION DEF: strcmp .visible .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r28; .reg .u32 %r30; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; mov.u64 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 71 8 or.b64 %r41,%r39,%r40; and.b64 %r42,%r41,7; .loc 1 71 6 setp.ne.u64 %r43,%r42,0; @ %r43 bra $L2; .loc 1 76 14 ld.u64 %r28,[%r39]; .loc 1 76 18 ld.u64 %r44,[%r40]; setp.eq.u64 %r45,%r28,%r44; @ %r45 bra $L3; $L2: .loc 1 92 10 ld.s8 %r30,[%r39]; .loc 1 92 22 setp.ne.u32 %r46,%r30,0; @ %r46 bra $L4; mov.u32 %r37,%r30; bra $L5; $L3: .loc 1 80 15 add.u64 %r47,%r28,-72340172838076673; not.b64 %r48,%r28; and.b64 %r49,%r47,%r48; and.b64 %r50,%r49,-9187201950435737472; .loc 1 80 14 setp.ne.u64 %r51,%r50,0; @ %r51 bra $L8; .loc 1 83 13 add.u64 %r39,%r39,8; .loc 1 84 13 add.u64 %r40,%r40,8; .loc 1 76 14 ld.u64 %r28,[%r39]; .loc 1 76 18 ld.u64 %r52,[%r40]; setp.eq.u64 %r53,%r28,%r52; @ %r53 bra $L3; bra $L2; $L7: .loc 1 94 9 add.u64 %r39,%r39,1; .loc 1 95 9 add.u64 %r40,%r40,1; .loc 1 92 10 ld.s8 %r30,[%r39]; .loc 1 92 22 setp.eq.u32 %r54,%r30,0; @ %r54 bra $L9; $L4: ld.u8 %r56,[%r40]; cvt.s16.s8 %r55,%r56; cvt.u16.u32 %r57,%r30; setp.eq.u16 %r58,%r55,%r57; @ %r58 bra $L7; .loc 1 97 11 cvt.u32.u32 %r59,%r30; cvt.u32.u8 %r37,%r59; bra $L5; $L9: mov.u32 %r37,%r30; $L5: .loc 1 97 37 ld.u8 %r60,[%r40]; .loc 1 97 34 sub.u32 %r38,%r37,%r60; bra $L1; $L8: .loc 1 81 13 mov.u32 %r38,0; $L1: .loc 1 99 1 mov.u32 %value,%r38; st.param.u32 [%value_out],%value; ret; } lib_a-strcoll.o/0 0 0 644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcoll .visible .func (.param .u32 %value_out) strcoll (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strcoll.c" // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strcoll .visible .func (.param .u32 %value_out) strcoll (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 43 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r27,[%value_in]; } .loc 1 44 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-strcpy.o/ 0 0 0 644 1990 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcpy .visible .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strcpy.c" // BEGIN GLOBAL FUNCTION DEF: strcpy .visible .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; .loc 1 72 8 or.b64 %r48,%r46,%r47; and.b64 %r49,%r48,7; .loc 1 72 6 setp.eq.u64 %r50,%r49,0; @ %r50 bra $L2; .loc 1 66 9 mov.u64 %r33,%r46; bra $L4; $L6: mov.u64 %r33,%r46; $L4: mov.u64 %r31,%r33; mov.u64 %r34,%r47; bra $L3; $L2: .loc 1 79 15 ld.u64 %r24,[%r47]; add.u64 %r51,%r24,-72340172838076673; not.b64 %r52,%r24; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 79 14 setp.ne.u64 %r55,%r54,0; @ %r55 bra $L6; mov.u64 %r42,%r46; $L5: .loc 1 81 40 add.u64 %r47,%r47,8; mov.u64 %r43,%r42; add.u64 %r42,%r42,8; mov.u64 %r33,%r42; .loc 1 81 26 st.u64 [%r43],%r24; .loc 1 79 15 ld.u64 %r24,[%r47]; add.u64 %r56,%r24,-72340172838076673; not.b64 %r57,%r24; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 79 14 setp.eq.u64 %r60,%r59,0; @ %r60 bra $L5; bra $L4; $L3: .loc 1 88 20 ld.s8 %r30,[%r34]; .loc 1 88 18 cvt.u32.u32 %r61,%r30; st.u8 [%r31],%r61; .loc 1 88 10 add.u64 %r31,%r31,1; add.u64 %r34,%r34,1; setp.ne.u32 %r62,%r30,0; @ %r62 bra $L3; .loc 1 92 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-strcspn.o/0 0 0 644 1529 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcspn .visible .func (.param .u64 %value_out) strcspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strcspn.c" // BEGIN GLOBAL FUNCTION DEF: strcspn .visible .func (.param .u64 %value_out) strcspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r39; .reg .pred %r40; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 35 10 ld.s8 %r25,[%r30]; setp.ne.u32 %r32,%r25,0; @ %r32 bra $L2; mov.u64 %r29,0; bra $L1; $L8: .loc 1 37 20 mov.u64 %r26,%r31; mov.u32 %r24,%r22; .loc 1 39 7 cvt.u16.u32 %r34,%r25; $L5: cvt.u16.u32 %r33,%r24; setp.ne.u16 %r35,%r33,%r34; @ %r35 bra $L4; .loc 1 47 13 sub.u64 %r29,%r27,%r30; bra $L1; $L4: .loc 1 37 25 add.u64 %r26,%r26,1; .loc 1 37 20 ld.s8 %r24,[%r26]; setp.ne.u32 %r36,%r24,0; @ %r36 bra $L5; bra $L6; $L2: ld.s8 %r22,[%r31]; mov.u64 %r27,%r30; setp.ne.u32 %r40,%r22,0; $L7: @ %r40 bra $L8; $L6: .loc 1 44 9 add.u64 %r27,%r27,1; .loc 1 35 10 ld.s8 %r25,[%r27]; setp.ne.u32 %r39,%r25,0; @ %r39 bra $L7; .loc 1 47 13 sub.u64 %r29,%r27,%r30; $L1: .loc 1 48 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-strdup.o/ 0 0 0 644 1032 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strdup .visible .func (.param .u64 %value_out) strdup (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/strdup.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strdup_r .extern .func (.param .u64 %value_out) _strdup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strdup .visible .func (.param .u64 %value_out) strdup (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 10 10 ld.global.u64 %r27,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_strdup_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 11 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } /1236 0 0 0 644 1896 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _strdup_r .visible .func (.param .u64 %value_out) _strdup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strdup_r.c" // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _strdup_r .visible .func (.param .u64 %value_out) _strdup_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 9 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 9 10 add.u64 %r23,%r28,1; .loc 1 10 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r31,[%value_in]; } .loc 1 11 6 setp.eq.u64 %r32,%r31,0; @ %r32 bra $L1; .loc 1 13 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r36,[%value_in]; } $L1: .loc 1 16 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /1254 0 0 0 644 26274 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _strerror_r .visible .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/string/strerror.c" // BEGIN GLOBAL FUNCTION DECL: strerror .visible .func (.param .u64 %value_out) strerror (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strerror_l .visible .func (.param .u64 %value_out) strerror_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _user_strerror .extern .func (.param .u64 %value_out) _user_strerror (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: $LC80 .const .align 1 .u8 $LC80[1] = {0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[16] = {66,97,100,32,102,105,108,101,32,110,117,109,98,101,114,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[12] = {78,111,32,99,104,105,108,100,114,101,110,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[29] = {68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[18] = {78,111,32,109,111,114,101,32,112,114,111,99,101,115,115,101,115,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[17] = {78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[18] = {80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[12] = {66,97,100,32,97,100,100,114,101,115,115,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[24] = {68,101,118,105,99,101,32,111,114,32,114,101,115,111,117,114,99,101,32,98,117,115,121,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[12] = {70,105,108,101,32,101,120,105,115,116,115,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[18] = {67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[15] = {78,111,32,115,117,99,104,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[16] = {78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[13] = {72,111,115,116,32,105,115,32,100,111,119,110,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[31] = {67,111,110,110,101,99,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[15] = {73,115,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[17] = {73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[36] = {78,101,116,119,111,114,107,32,105,110,116,101,114,102,97,99,101,32,105,115,32,110,111,116,32,99,111,110,102,105,103,117,114,101,100,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[30] = {67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,32,98,121,32,110,101,116,119,111,114,107,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[30] = {84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[32] = {70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,118,97,108,117,101,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[23] = {78,111,116,32,97,32,99,104,97,114,97,99,116,101,114,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[15] = {84,101,120,116,32,102,105,108,101,32,98,117,115,121,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[15] = {70,105,108,101,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[20] = {72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[24] = {78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[14] = {78,111,116,32,115,117,112,112,111,114,116,101,100,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[13] = {73,108,108,101,103,97,108,32,115,101,101,107,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[22] = {82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[15] = {84,111,111,32,109,97,110,121,32,108,105,110,107,115,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[47] = {77,97,116,104,101,109,97,116,105,99,115,32,97,114,103,117,109,101,110,116,32,111,117,116,32,111,102,32,100,111,109,97,105,110,32,111,102,32,102,117,110,99,116,105,111,110,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[17] = {82,101,115,117,108,116,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[27] = {78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[19] = {73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[22] = {73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[9] = {68,101,97,100,108,111,99,107,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[23] = {78,101,116,119,111,114,107,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0 }; // BEGIN VAR DEF: $LC47 .const .align 1 .u8 $LC47[8] = {78,111,32,108,111,99,107,0 }; // BEGIN VAR DEF: $LC48 .const .align 1 .u8 $LC48[13] = {78,111,116,32,97,32,115,116,114,101,97,109,0 }; // BEGIN VAR DEF: $LC49 .const .align 1 .u8 $LC49[21] = {83,116,114,101,97,109,32,105,111,99,116,108,32,116,105,109,101,111,117,116,0 }; // BEGIN VAR DEF: $LC50 .const .align 1 .u8 $LC50[20] = {78,111,32,115,116,114,101,97,109,32,114,101,115,111,117,114,99,101,115,0 }; // BEGIN VAR DEF: $LC51 .const .align 1 .u8 $LC51[24] = {86,105,114,116,117,97,108,32,99,105,114,99,117,105,116,32,105,115,32,103,111,110,101,0 }; // BEGIN VAR DEF: $LC52 .const .align 1 .u8 $LC52[15] = {80,114,111,116,111,99,111,108,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC53 .const .align 1 .u8 $LC53[17] = {85,110,107,110,111,119,110,32,112,114,111,116,111,99,111,108,0 }; // BEGIN VAR DEF: $LC54 .const .align 1 .u8 $LC54[19] = {77,117,108,116,105,104,111,112,32,97,116,116,101,109,112,116,101,100,0 }; // BEGIN VAR DEF: $LC55 .const .align 1 .u8 $LC55[12] = {66,97,100,32,109,101,115,115,97,103,101,0 }; // BEGIN VAR DEF: $LC56 .const .align 1 .u8 $LC56[25] = {70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0 }; // BEGIN VAR DEF: $LC57 .const .align 1 .u8 $LC57[20] = {68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0 }; // BEGIN VAR DEF: $LC58 .const .align 1 .u8 $LC58[27] = {70,105,108,101,32,111,114,32,112,97,116,104,32,110,97,109,101,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC59 .const .align 1 .u8 $LC59[24] = {84,111,111,32,109,97,110,121,32,115,121,109,98,111,108,105,99,32,108,105,110,107,115,0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {83,117,99,99,101,115,115,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[10] = {78,111,116,32,111,119,110,101,114,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[26] = {78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[16] = {78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[24] = {73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[10] = {73,47,79,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[26] = {78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[18] = {65,114,103,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[18] = {69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[25] = {83,111,99,107,101,116,32,97,108,114,101,97,100,121,32,99,111,110,110,101,99,116,101,100,0 }; // BEGIN VAR DEF: $LC60 .const .align 1 .u8 $LC60[26] = {78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0 }; // BEGIN VAR DEF: $LC61 .const .align 1 .u8 $LC61[8] = {78,111,32,100,97,116,97,0 }; // BEGIN VAR DEF: $LC62 .const .align 1 .u8 $LC62[48] = {65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,32,102,97,109,105,108,121,0 }; // BEGIN VAR DEF: $LC63 .const .align 1 .u8 $LC63[31] = {80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0 }; // BEGIN VAR DEF: $LC64 .const .align 1 .u8 $LC64[31] = {83,111,99,107,101,116,32,111,112,101,114,97,116,105,111,110,32,111,110,32,110,111,110,45,115,111,99,107,101,116,0 }; // BEGIN VAR DEF: $LC65 .const .align 1 .u8 $LC65[23] = {80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0 }; // BEGIN VAR DEF: $LC66 .const .align 1 .u8 $LC66[19] = {67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0 }; // BEGIN VAR DEF: $LC67 .const .align 1 .u8 $LC67[25] = {67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0 }; // BEGIN VAR DEF: $LC68 .const .align 1 .u8 $LC68[23] = {65,100,100,114,101,115,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0 }; // BEGIN VAR DEF: $LC69 .const .align 1 .u8 $LC69[22] = {65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0 }; // BEGIN VAR DEF: $LC70 .const .align 1 .u8 $LC70[33] = {83,111,102,116,119,97,114,101,32,99,97,117,115,101,100,32,99,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,0 }; // BEGIN VAR DEF: $LC71 .const .align 1 .u8 $LC71[24] = {83,111,99,107,101,116,32,105,115,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0 }; // BEGIN VAR DEF: $LC72 .const .align 1 .u8 $LC72[28] = {83,111,99,107,101,116,32,105,115,32,97,108,114,101,97,100,121,32,99,111,110,110,101,99,116,101,100,0 }; // BEGIN VAR DEF: $LC73 .const .align 1 .u8 $LC73[19] = {79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0 }; // BEGIN VAR DEF: $LC74 .const .align 1 .u8 $LC74[22] = {83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0 }; // BEGIN VAR DEF: $LC75 .const .align 1 .u8 $LC75[20] = {80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0 }; // BEGIN VAR DEF: $LC76 .const .align 1 .u8 $LC76[34] = {79,112,101,114,97,116,105,111,110,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,111,110,32,115,111,99,107,101,116,0 }; // BEGIN VAR DEF: $LC77 .const .align 1 .u8 $LC77[38] = {86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,101,102,105,110,101,100,32,100,97,116,97,32,116,121,112,101,0 }; // BEGIN VAR DEF: $LC78 .const .align 1 .u8 $LC78[17] = {77,101,115,115,97,103,101,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC79 .const .align 1 .u8 $LC79[21] = {67,111,110,110,101,99,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0 }; // BEGIN GLOBAL FUNCTION DEF: _strerror_r .visible .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r33; .reg .pred %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r131; .reg .pred %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r137; .reg .u64 %r141; .reg .pred %r142; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u32 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 396 3 setp.eq.u32 %r27,%r24,62; @ %r27 bra $L35; setp.gt.s32 %r28,%r24,62; @ %r28 bra $L3; setp.eq.u32 %r29,%r24,21; @ %r29 bra $L36; setp.gt.s32 %r30,%r24,21; @ %r30 bra $L4; setp.eq.u32 %r31,%r24,10; @ %r31 bra $L37; setp.gt.s32 %r32,%r24,10; @ %r32 bra $L5; setp.eq.u32 %r33,%r24,5; @ %r33 bra $L38; setp.gt.s32 %r34,%r24,5; @ %r34 bra $L6; setp.eq.u32 %r35,%r24,2; @ %r35 bra $L39; setp.gt.s32 %r36,%r24,2; @ %r36 bra $L7; setp.eq.u32 %r37,%r24,0; @ %r37 bra $L40; setp.eq.u32 %r38,%r24,1; @ %r38 bra $L41; bra $L8; $L7: setp.eq.u32 %r39,%r24,3; @ %r39 bra $L42; setp.eq.u32 %r40,%r24,4; @ %r40 bra $L43; bra $L8; $L6: setp.eq.u32 %r41,%r24,8; @ %r41 bra $L44; setp.gt.s32 %r42,%r24,8; @ %r42 bra $L9; setp.eq.u32 %r43,%r24,6; @ %r43 bra $L45; setp.eq.u32 %r44,%r24,7; @ %r44 bra $L46; bra $L8; $L9: setp.eq.u32 %r45,%r24,9; @ %r45 bra $L47; bra $L8; $L5: setp.eq.u32 %r46,%r24,16; @ %r46 bra $L48; setp.gt.s32 %r47,%r24,16; @ %r47 bra $L10; setp.eq.u32 %r48,%r24,13; @ %r48 bra $L49; setp.gt.s32 %r49,%r24,13; @ %r49 bra $L11; setp.eq.u32 %r50,%r24,11; @ %r50 bra $L50; setp.eq.u32 %r51,%r24,12; @ %r51 bra $L51; bra $L8; $L11: setp.eq.u32 %r52,%r24,14; @ %r52 bra $L52; bra $L8; $L10: setp.eq.u32 %r53,%r24,19; @ %r53 bra $L53; setp.gt.s32 %r54,%r24,19; @ %r54 bra $L12; setp.eq.u32 %r55,%r24,17; @ %r55 bra $L54; setp.eq.u32 %r56,%r24,18; @ %r56 bra $L55; bra $L8; $L12: setp.eq.u32 %r57,%r24,20; @ %r57 bra $L56; bra $L8; $L4: setp.eq.u32 %r58,%r24,31; @ %r58 bra $L57; setp.gt.s32 %r59,%r24,31; @ %r59 bra $L13; setp.eq.u32 %r60,%r24,26; @ %r60 bra $L58; setp.gt.s32 %r61,%r24,26; @ %r61 bra $L14; setp.eq.u32 %r62,%r24,24; @ %r62 bra $L59; setp.gt.s32 %r63,%r24,24; @ %r63 bra $L15; setp.eq.u32 %r64,%r24,22; @ %r64 bra $L60; setp.eq.u32 %r65,%r24,23; @ %r65 bra $L61; bra $L8; $L15: setp.eq.u32 %r66,%r24,25; @ %r66 bra $L62; bra $L8; $L14: setp.eq.u32 %r67,%r24,29; @ %r67 bra $L63; setp.gt.s32 %r68,%r24,29; @ %r68 bra $L16; setp.eq.u32 %r69,%r24,27; @ %r69 bra $L64; setp.eq.u32 %r70,%r24,28; @ %r70 bra $L65; bra $L8; $L16: setp.eq.u32 %r71,%r24,30; @ %r71 bra $L66; bra $L8; $L13: setp.eq.u32 %r72,%r24,36; @ %r72 bra $L67; setp.gt.s32 %r73,%r24,36; @ %r73 bra $L17; setp.eq.u32 %r74,%r24,34; @ %r74 bra $L68; setp.gt.s32 %r75,%r24,34; @ %r75 bra $L18; setp.eq.u32 %r76,%r24,32; @ %r76 bra $L69; setp.eq.u32 %r77,%r24,33; @ %r77 bra $L70; bra $L8; $L18: setp.eq.u32 %r78,%r24,35; @ %r78 bra $L71; bra $L8; $L17: setp.eq.u32 %r79,%r24,60; @ %r79 bra $L72; setp.eq.u32 %r80,%r24,61; @ %r80 bra $L73; setp.eq.u32 %r81,%r24,45; @ %r81 bra $L74; setp.eq.u32 %r82,%r24,46; @ %r82 bra $L75; bra $L8; $L3: setp.eq.u32 %r83,%r24,114; @ %r83 bra $L76; setp.gt.s32 %r84,%r24,114; @ %r84 bra $L19; setp.eq.u32 %r85,%r24,95; @ %r85 bra $L77; setp.gt.s32 %r86,%r24,95; @ %r86 bra $L20; setp.eq.u32 %r87,%r24,77; @ %r87 bra $L78; setp.gt.s32 %r88,%r24,77; @ %r88 bra $L21; setp.eq.u32 %r89,%r24,71; @ %r89 bra $L79; setp.gt.s32 %r90,%r24,71; @ %r90 bra $L22; setp.eq.u32 %r91,%r24,63; @ %r91 bra $L80; setp.eq.u32 %r92,%r24,67; @ %r92 bra $L81; bra $L8; $L22: setp.eq.u32 %r93,%r24,74; @ %r93 bra $L82; bra $L8; $L21: setp.eq.u32 %r94,%r24,91; @ %r94 bra $L83; setp.gt.s32 %r95,%r24,91; @ %r95 bra $L23; setp.eq.u32 %r96,%r24,88; @ %r96 bra $L84; setp.eq.u32 %r97,%r24,90; @ %r97 bra $L85; bra $L8; $L23: setp.eq.u32 %r98,%r24,92; @ %r98 bra $L86; bra $L8; $L20: setp.eq.u32 %r99,%r24,108; @ %r99 bra $L87; setp.gt.s32 %r100,%r24,108; @ %r100 bra $L24; setp.eq.u32 %r101,%r24,106; @ %r101 bra $L88; setp.gt.s32 %r102,%r24,106; @ %r102 bra $L25; setp.eq.u32 %r103,%r24,104; @ %r103 bra $L89; setp.eq.u32 %r104,%r24,105; @ %r104 bra $L90; bra $L8; $L25: setp.eq.u32 %r105,%r24,107; @ %r105 bra $L91; bra $L8; $L24: setp.eq.u32 %r106,%r24,112; @ %r106 bra $L92; setp.gt.s32 %r107,%r24,112; @ %r107 bra $L26; setp.eq.u32 %r108,%r24,109; @ %r108 bra $L93; setp.eq.u32 %r109,%r24,111; @ %r109 bra $L94; bra $L8; $L26: setp.eq.u32 %r110,%r24,113; @ %r110 bra $L95; bra $L8; $L19: setp.eq.u32 %r111,%r24,125; @ %r111 bra $L96; setp.gt.s32 %r112,%r24,125; @ %r112 bra $L27; setp.eq.u32 %r113,%r24,119; @ %r113 bra $L97; setp.gt.s32 %r114,%r24,119; @ %r114 bra $L28; setp.eq.u32 %r115,%r24,117; @ %r115 bra $L98; setp.gt.s32 %r116,%r24,117; @ %r116 bra $L29; setp.eq.u32 %r117,%r24,115; @ %r117 bra $L99; setp.eq.u32 %r118,%r24,116; @ %r118 bra $L100; bra $L8; $L29: setp.eq.u32 %r119,%r24,118; @ %r119 bra $L101; bra $L8; $L28: setp.eq.u32 %r120,%r24,122; @ %r120 bra $L102; setp.gt.s32 %r121,%r24,122; @ %r121 bra $L30; setp.eq.u32 %r122,%r24,120; @ %r122 bra $L103; setp.eq.u32 %r123,%r24,121; @ %r123 bra $L104; bra $L8; $L30: setp.eq.u32 %r124,%r24,123; @ %r124 bra $L105; bra $L8; $L27: setp.eq.u32 %r125,%r24,138; @ %r125 bra $L106; setp.gt.s32 %r126,%r24,138; @ %r126 bra $L31; setp.eq.u32 %r127,%r24,128; @ %r127 bra $L107; setp.gt.s32 %r128,%r24,128; @ %r128 bra $L32; setp.eq.u32 %r129,%r24,126; @ %r129 bra $L108; setp.eq.u32 %r130,%r24,127; @ %r130 bra $L109; bra $L8; $L32: setp.eq.u32 %r131,%r24,134; @ %r131 bra $L110; bra $L8; $L31: setp.eq.u32 %r132,%r24,141; @ %r132 bra $L111; setp.gt.s32 %r133,%r24,141; @ %r133 bra $L33; setp.eq.u32 %r134,%r24,139; @ %r134 bra $L112; setp.eq.u32 %r135,%r24,140; @ %r135 bra $L113; bra $L8; $L33: setp.eq.u32 %r136,%r24,142; @ %r136 bra $L114; $L8: .loc 1 884 10 setp.ne.u64 %r137,%r26,0; .loc 1 885 16 selp.u64 %r26,%r26,%r23,%r137; .loc 1 886 20 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),_user_strerror,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r141,[%value_in]; } mov.u64 %r22,%r141; .loc 1 886 10 setp.ne.u64 %r142,%r22,0; @ %r142 bra $L1; .loc 1 887 15 cvta.const.u64 %r22,$LC80; bra $L1; $L35: .loc 1 650 13 cvta.const.u64 %r22,$LC49; bra $L1; $L36: .loc 1 525 13 cvta.const.u64 %r22,$LC24; bra $L1; $L37: .loc 1 455 13 cvta.const.u64 %r22,$LC11; bra $L1; $L38: .loc 1 424 13 cvta.const.u64 %r22,$LC5; bra $L1; $L39: .loc 1 409 13 cvta.const.u64 %r22,$LC2; bra $L1; $L40: .loc 1 399 13 cvta.const.u64 %r22,$LC0; bra $L1; $L41: .loc 1 396 3 cvta.const.u64 %r22,$LC1; bra $L1; $L42: .loc 1 414 13 cvta.const.u64 %r22,$LC3; bra $L1; $L43: .loc 1 419 13 cvta.const.u64 %r22,$LC4; bra $L1; $L44: .loc 1 440 13 cvta.const.u64 %r22,$LC8; bra $L1; $L45: .loc 1 430 13 cvta.const.u64 %r22,$LC6; bra $L1; $L46: .loc 1 435 13 cvta.const.u64 %r22,$LC7; bra $L1; $L47: .loc 1 450 13 cvta.const.u64 %r22,$LC10; bra $L1; $L48: .loc 1 490 13 cvta.const.u64 %r22,$LC17; bra $L1; $L49: .loc 1 475 13 cvta.const.u64 %r22,$LC15; bra $L1; $L50: .loc 1 465 13 cvta.const.u64 %r22,$LC13; bra $L1; $L51: .loc 1 470 13 cvta.const.u64 %r22,$LC14; bra $L1; $L52: .loc 1 480 13 cvta.const.u64 %r22,$LC16; bra $L1; $L53: .loc 1 505 13 cvta.const.u64 %r22,$LC20; bra $L1; $L54: .loc 1 495 13 cvta.const.u64 %r22,$LC18; bra $L1; $L55: .loc 1 500 13 cvta.const.u64 %r22,$LC19; bra $L1; $L56: .loc 1 510 13 cvta.const.u64 %r22,$LC21; bra $L1; $L57: .loc 1 595 13 cvta.const.u64 %r22,$LC38; bra $L1; $L58: .loc 1 560 13 cvta.const.u64 %r22,$LC31; bra $L1; $L59: .loc 1 550 13 cvta.const.u64 %r22,$LC29; bra $L1; $L60: .loc 1 530 13 cvta.const.u64 %r22,$LC25; bra $L1; $L61: .loc 1 545 13 cvta.const.u64 %r22,$LC28; bra $L1; $L62: .loc 1 555 13 cvta.const.u64 %r22,$LC30; bra $L1; $L63: .loc 1 585 13 cvta.const.u64 %r22,$LC36; bra $L1; $L64: .loc 1 565 13 cvta.const.u64 %r22,$LC32; bra $L1; $L65: .loc 1 575 13 cvta.const.u64 %r22,$LC34; bra $L1; $L66: .loc 1 590 13 cvta.const.u64 %r22,$LC37; bra $L1; $L67: .loc 1 620 13 cvta.const.u64 %r22,$LC43; bra $L1; $L68: .loc 1 610 13 cvta.const.u64 %r22,$LC41; bra $L1; $L69: .loc 1 600 13 cvta.const.u64 %r22,$LC39; bra $L1; $L70: .loc 1 605 13 cvta.const.u64 %r22,$LC40; bra $L1; $L71: .loc 1 615 13 cvta.const.u64 %r22,$LC42; bra $L1; $L72: .loc 1 645 13 cvta.const.u64 %r22,$LC48; bra $L1; $L73: .loc 1 770 13 cvta.const.u64 %r22,$LC61; bra $L1; $L74: .loc 1 630 13 cvta.const.u64 %r22,$LC45; bra $L1; $L75: .loc 1 640 13 cvta.const.u64 %r22,$LC47; bra $L1; $L76: .loc 1 635 13 cvta.const.u64 %r22,$LC46; bra $L1; $L77: .loc 1 865 15 cvta.const.u64 %r22,$LC76; bra $L1; $L78: .loc 1 710 13 cvta.const.u64 %r22,$LC55; bra $L1; $L79: .loc 1 695 13 cvta.const.u64 %r22,$LC52; bra $L1; $L80: .loc 1 655 13 cvta.const.u64 %r22,$LC50; bra $L1; $L81: .loc 1 675 13 cvta.const.u64 %r22,$LC51; bra $L1; $L82: .loc 1 705 13 cvta.const.u64 %r22,$LC54; bra $L1; $L83: .loc 1 755 13 cvta.const.u64 %r22,$LC58; bra $L1; $L84: .loc 1 740 13 cvta.const.u64 %r22,$LC56; bra $L1; $L85: .loc 1 750 13 cvta.const.u64 %r22,$LC57; bra $L1; $L86: .loc 1 760 13 cvta.const.u64 %r22,$LC59; bra $L1; $L87: .loc 1 785 13 cvta.const.u64 %r22,$LC64; bra $L1; $L88: .loc 1 775 13 cvta.const.u64 %r22,$LC62; bra $L1; $L89: .loc 1 805 13 cvta.const.u64 %r22,$LC67; bra $L1; $L90: .loc 1 765 13 cvta.const.u64 %r22,$LC60; bra $L1; $L91: .loc 1 780 13 cvta.const.u64 %r22,$LC63; bra $L1; $L92: .loc 1 810 13 cvta.const.u64 %r22,$LC68; bra $L1; $L93: .loc 1 790 13 cvta.const.u64 %r22,$LC65; bra $L1; $L94: .loc 1 800 13 cvta.const.u64 %r22,$LC66; bra $L1; $L95: .loc 1 820 13 cvta.const.u64 %r22,$LC70; bra $L1; $L96: .loc 1 815 13 cvta.const.u64 %r22,$LC69; bra $L1; $L97: .loc 1 520 13 cvta.const.u64 %r22,$LC23; bra $L1; $L98: .loc 1 515 13 cvta.const.u64 %r22,$LC22; bra $L1; $L99: .loc 1 535 13 cvta.const.u64 %r22,$LC26; bra $L1; $L100: .loc 1 880 15 cvta.const.u64 %r22,$LC79; bra $L1; $L101: .loc 1 570 13 cvta.const.u64 %r22,$LC33; bra $L1; $L102: .loc 1 875 15 cvta.const.u64 %r22,$LC78; bra $L1; $L103: .loc 1 445 13 cvta.const.u64 %r22,$LC9; bra $L1; $L104: .loc 1 460 13 cvta.const.u64 %r22,$LC12; bra $L1; $L105: .loc 1 700 13 cvta.const.u64 %r22,$LC53; bra $L1; $L106: .loc 1 625 13 cvta.const.u64 %r22,$LC44; bra $L1; $L107: .loc 1 830 15 cvta.const.u64 %r22,$LC71; bra $L1; $L108: .loc 1 540 13 cvta.const.u64 %r22,$LC27; bra $L1; $L109: .loc 1 840 15 cvta.const.u64 %r22,$LC72; bra $L1; $L110: .loc 1 580 13 cvta.const.u64 %r22,$LC35; bra $L1; $L111: .loc 1 850 15 cvta.const.u64 %r22,$LC74; bra $L1; $L112: .loc 1 870 13 cvta.const.u64 %r22,$LC77; bra $L1; $L113: .loc 1 845 15 cvta.const.u64 %r22,$LC73; bra $L1; $L114: .loc 1 855 15 cvta.const.u64 %r22,$LC75; $L1: .loc 1 892 1 mov.u64 %value,%r22; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strerror .visible .func (.param .u64 %value_out) strerror (.param .u32 %in_ar0) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u32 %r24,%ar0; .loc 1 897 10 ld.global.u64 %r29,[_impure_ptr]; mov.u64 %r28,0; mov.u32 %r27,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 898 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strerror_l .visible .func (.param .u64 %value_out) strerror_l (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; mov.u32 %r24,%ar0; .loc 1 904 10 ld.global.u64 %r30,[_impure_ptr]; mov.u64 %r29,0; mov.u32 %r28,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 905 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /1272 0 0 0 644 2322 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strerror_r .visible .func (.param .u64 %value_out) strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strerror_r.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strerror_r .extern .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strerror_r .visible .func (.param .u64 %value_out) strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r39; mov.u32 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 72 17 ld.global.u64 %r32,[_impure_ptr]; mov.u64 %r31,0; mov.u32 %r30,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } mov.u64 %r24,%r33; .loc 1 74 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r35,[%value_in]; } .loc 1 74 6 setp.ge.u64 %r36,%r35,%r27; @ %r36 bra $L1; .loc 1 76 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r39,[%value_in]; } mov.u64 %r24,%r39; $L1: .loc 1 77 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } /1292 0 0 0 644 69145 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/time/strftime.c" // BEGIN FUNCTION DECL: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strftime .visible .func (.param .u64 %value_out) strftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strftime_l .visible .func (.param .u64 %value_out) strftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _C_time_locale .extern .const .align 8 .u64 _C_time_locale[63]; // BEGIN GLOBAL VAR DECL: _tzname .extern .global .align 8 .u64 _tzname[2]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: strtoul .extern .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: abs .extern .func (.param .u32 %value_out) abs (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sniprintf .extern .func (.param .u32 %value_out) sniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DECL: labs .extern .func (.param .u64 %value_out) labs (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[8] = {89,45,37,109,45,37,100,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[5] = {37,46,50,100,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[4] = {46,42,117,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[5] = {37,46,51,100,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[10] = {37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[5] = {37,108,108,100,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[15] = {37,46,50,100,58,37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[12] = {37,43,48,51,108,100,37,46,50,108,100,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[7] = {37,115,37,46,42,100,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[8] = {37,115,37,48,46,42,100,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {43,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[2] = {45,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[4] = {37,50,100,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[15] = {37,46,50,100,47,37,46,50,100,47,37,46,50,100,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[4] = {37,108,117,0 }; // BEGIN FUNCTION DEF: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r34; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r56; .reg .u32 %r58; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u16 %r87; mov.u32 %r43,%ar0; mov.u32 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 350 14 setp.lt.s32 %r46,%r43,0; selp.u32 %r23,1900,-100,%r46; add.u32 %r24,%r23,%r43; and.b32 %r47,%r43,3; setp.ne.u32 %r48,%r47,0; @ %r48 bra $L3; rem.s32 %r50,%r24,100; setp.ne.u32 %r56,%r50,0; @ %r56 bra $L10; $L3: rem.s32 %r58,%r24,400; set.u32.eq.u32 %r65,%r58,0; neg.s32 %r31,%r65; bra $L4; $L10: mov.u32 %r31,1; $L4: .loc 1 356 11 shl.b32 %r67,%r45,4; add.u32 %r68,%r44,%r44; vadd.u32.u32.u32.add %r34,%r31,%r67,%r68; .loc 1 356 3 setp.gt.s32 %r70,%r34,33; @ %r70 bra $L5; setp.ge.s32 %r71,%r34,0; @ %r71 bra $L6; .loc 1 385 10 mov.u32 %r42,0; bra $L1; $L8: .loc 1 356 3 mov.u64 %r73,11822082166292481; shr.u64 %r72,%r73,%r40; cvt.u32.u64 %r74,%r72; cvt.u16.u8 %r87,%r74; mov.u16 %r76,%r87; and.b16 %r75,%r76,1; cvt.u32.u16 %r77,%r75; .loc 1 370 14 cvt.u32.u8 %r42,%r77; bra $L1; $L6: .loc 1 356 3 mov.u64 %r79,13690420227; shr.u64 %r78,%r79,%r34; cvt.u32.u64 %r80,%r78; cvt.u16.u8 %r87,%r80; mov.u16 %r82,%r87; and.b16 %r81,%r82,1; cvt.u32.u16 %r83,%r81; cvt.u32.u8 %r84,%r83; neg.s32 %r42,%r84; bra $L1; $L5: add.u32 %r40,%r34,-5794; setp.le.u32 %r85,%r40,53; @ %r85 bra $L8; .loc 1 385 10 mov.u32 %r42,0; $L1: .loc 1 387 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[32]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u64 %r32; .reg .u64 %r35; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r45; .reg .u32 %r47; .reg .u64 %r49; .reg .u64 %r53; .reg .u64 %r55; .reg .u64 %r60; .reg .u64 %r63; .reg .u32 %r65; .reg .u64 %r66; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r79; .reg .u64 %r85; .reg .u64 %r86; .reg .u32 %r89; .reg .u64 %r92; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r111; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r137; .reg .u32 %r140; .reg .u64 %r151; .reg .u64 %r159; .reg .u32 %r163; .reg .u64 %r166; .reg .u64 %r192; .reg .u32 %r195; .reg .u64 %r203; .reg .u32 %r205; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r272; .reg .u32 %r286; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .u32 %r297; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r328; .reg .u64 %r333; .reg .u64 %r344; .reg .u64 %r357; .reg .u64 %r360; .reg .u32 %r361; .reg .u32 %r369; .reg .u32 %r375; .reg .u32 %r376; .reg .u32 %r377; .reg .u64 %r378; .reg .u32 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u32 %r383; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r388; .reg .u32 %r393; .reg .u32 %r394; .reg .u64 %r397; .reg .u64 %r400; .reg .u64 %r408; .reg .u64 %r415; .reg .u64 %r419; .reg .u64 %r423; .reg .u64 %r424; .reg .u64 %r425; .reg .u64 %r426; .reg .u64 %r427; .reg .pred %r429; .reg .u64 %r430; .reg .u32 %r431; .reg .u32 %r432; .reg .u16 %r433; .reg .u32 %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .u32 %r438; .reg .u32 %r439; .reg .u16 %r440; .reg .u16 %r441; .reg .u16 %r442; .reg .u32 %r443; .reg .u16 %r444; .reg .pred %r445; .reg .pred %r446; .reg .u32 %r447; .reg .u16 %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u32 %r453; .reg .u32 %r454; .reg .u16 %r455; .reg .u16 %r456; .reg .u16 %r457; .reg .u32 %r458; .reg .u16 %r459; .reg .pred %r460; .reg .u16 %r462; .reg .u16 %r463; .reg .u32 %r464; .reg .u16 %r465; .reg .pred %r466; .reg .u32 %r469; .reg .u64 %r470; .reg .u16 %r471; .reg .pred %r472; .reg .pred %r474; .reg .u16 %r475; .reg .pred %r476; .reg .pred %r478; .reg .pred %r480; .reg .pred %r482; .reg .pred %r484; .reg .pred %r486; .reg .pred %r488; .reg .pred %r490; .reg .pred %r492; .reg .pred %r494; .reg .pred %r496; .reg .pred %r498; .reg .pred %r500; .reg .pred %r502; .reg .pred %r504; .reg .pred %r506; .reg .pred %r508; .reg .pred %r510; .reg .pred %r512; .reg .pred %r514; .reg .pred %r516; .reg .pred %r518; .reg .pred %r520; .reg .pred %r522; .reg .pred %r524; .reg .pred %r526; .reg .pred %r528; .reg .pred %r530; .reg .pred %r532; .reg .pred %r534; .reg .pred %r536; .reg .pred %r538; .reg .pred %r540; .reg .pred %r542; .reg .pred %r544; .reg .u16 %r546; .reg .u32 %r548; .reg .u16 %r549; .reg .pred %r550; .reg .pred %r552; .reg .pred %r554; .reg .pred %r556; .reg .pred %r558; .reg .pred %r560; .reg .pred %r562; .reg .pred %r564; .reg .pred %r566; .reg .pred %r568; .reg .pred %r570; .reg .pred %r572; .reg .pred %r574; .reg .pred %r576; .reg .pred %r578; .reg .pred %r580; .reg .pred %r582; .reg .pred %r584; .reg .pred %r586; .reg .u64 %r587; .reg .u64 %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u64 %r591; .reg .u64 %r593; .reg .pred %r594; .reg .pred %r595; .reg .pred %r596; .reg .u64 %r597; .reg .u64 %r598; .reg .u64 %r599; .reg .u32 %r600; .reg .pred %r601; .reg .u64 %r602; .reg .u64 %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .u64 %r606; .reg .u64 %r609; .reg .pred %r610; .reg .pred %r611; .reg .pred %r612; .reg .u64 %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u32 %r616; .reg .pred %r617; .reg .u64 %r618; .reg .u64 %r619; .reg .u64 %r620; .reg .u64 %r621; .reg .u64 %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .u64 %r629; .reg .u32 %r630; .reg .pred %r631; .reg .u64 %r632; .reg .u64 %r633; .reg .u64 %r634; .reg .u64 %r635; .reg .u64 %r636; .reg .u64 %r638; .reg .pred %r639; .reg .pred %r640; .reg .pred %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .u32 %r645; .reg .pred %r646; .reg .u64 %r647; .reg .u64 %r649; .reg .u64 %r650; .reg .u64 %r652; .reg .u64 %r653; .reg .u64 %r655; .reg .u64 %r656; .reg .u64 %r658; .reg .u16 %r659; .reg .u32 %r660; .reg .pred %r661; .reg .u64 %r666; .reg .u64 %r667; .reg .u64 %r668; .reg .pred %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u32 %r673; .reg .pred %r675; .reg .u32 %r677; .reg .pred %r678; .reg .u32 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u32 %r683; .reg .u32 %r684; .reg .u32 %r685; .reg .u32 %r686; .reg .u16 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .u16 %r690; .reg .u16 %r691; .reg .u16 %r692; .reg .u32 %r693; .reg .u16 %r694; .reg .pred %r695; .reg .pred %r696; .reg .u64 %r700; .reg .u64 %r701; .reg .u32 %r702; .reg .pred %r704; .reg .u64 %r705; .reg .pred %r706; .reg .pred %r708; .reg .u64 %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .pred %r716; .reg .u64 %r717; .reg .pred %r718; .reg .pred %r719; .reg .u32 %r721; .reg .u32 %r722; .reg .u64 %r725; .reg .u64 %r726; .reg .u64 %r727; .reg .u32 %r728; .reg .u32 %r729; .reg .u32 %r730; .reg .u32 %r731; .reg .pred %r733; .reg .u64 %r734; .reg .pred %r735; .reg .u32 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u32 %r740; .reg .u64 %r742; .reg .u64 %r743; .reg .u32 %r745; .reg .pred %r747; .reg .u64 %r749; .reg .u64 %r751; .reg .u64 %r752; .reg .u64 %r757; .reg .u64 %r758; .reg .u64 %r759; .reg .pred %r760; .reg .u64 %r761; .reg .u32 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .pred %r768; .reg .u32 %r770; .reg .u32 %r771; .reg .pred %r772; .reg .u32 %r773; .reg .pred %r774; .reg .pred %r775; .reg .u32 %r776; .reg .pred %r777; .reg .u64 %r780; .reg .u64 %r781; .reg .u64 %r782; .reg .u32 %r783; .reg .u32 %r785; .reg .u32 %r786; .reg .u32 %r790; .reg .u32 %r791; .reg .pred %r793; .reg .u64 %r794; .reg .pred %r795; .reg .u32 %r796; .reg .u32 %r802; .reg .u32 %r803; .reg .u32 %r804; .reg .pred %r805; .reg .u32 %r807; .reg .u32 %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u32 %r813; .reg .u32 %r814; .reg .pred %r815; .reg .u32 %r816; .reg .pred %r817; .reg .u32 %r818; .reg .u32 %r819; .reg .u32 %r820; .reg .u16 %r821; .reg .u16 %r822; .reg .u16 %r823; .reg .u32 %r824; .reg .u16 %r825; .reg .pred %r826; .reg .pred %r827; .reg .pred %r828; .reg .pred %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .u16 %r834; .reg .u32 %r835; .reg .u32 %r836; .reg .u32 %r837; .reg .u32 %r838; .reg .u32 %r839; .reg .u16 %r840; .reg .u16 %r841; .reg .u16 %r842; .reg .u32 %r843; .reg .u16 %r844; .reg .pred %r845; .reg .u32 %r846; .reg .pred %r847; .reg .u32 %r848; .reg .pred %r849; .reg .u32 %r850; .reg .u64 %r852; .reg .u64 %r853; .reg .u64 %r857; .reg .u64 %r858; .reg .u32 %r859; .reg .pred %r861; .reg .u64 %r862; .reg .pred %r863; .reg .u64 %r867; .reg .u64 %r868; .reg .u32 %r869; .reg .pred %r871; .reg .u64 %r872; .reg .pred %r873; .reg .u16 %r874; .reg .pred %r875; .reg .u64 %r879; .reg .u64 %r880; .reg .u32 %r881; .reg .pred %r883; .reg .u64 %r884; .reg .pred %r885; .reg .u64 %r888; .reg .u64 %r889; .reg .u64 %r890; .reg .u32 %r891; .reg .u32 %r892; .reg .u32 %r893; .reg .pred %r895; .reg .u64 %r896; .reg .pred %r897; .reg .u64 %r900; .reg .u64 %r901; .reg .u64 %r902; .reg .u32 %r903; .reg .u32 %r904; .reg .u32 %r905; .reg .pred %r907; .reg .u64 %r908; .reg .pred %r909; .reg .u64 %r912; .reg .u64 %r913; .reg .u64 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .pred %r918; .reg .u64 %r919; .reg .pred %r920; .reg .pred %r922; .reg .u64 %r923; .reg .u32 %r924; .reg .u64 %r925; .reg .u32 %r927; .reg .u32 %r928; .reg .u32 %r929; .reg .u64 %r930; .reg .u64 %r931; .reg .u64 %r932; .reg .u64 %r933; .reg .u64 %r936; .reg .pred %r937; .reg .pred %r938; .reg .pred %r939; .reg .u64 %r940; .reg .u64 %r941; .reg .u16 %r942; .reg .u32 %r943; .reg .pred %r944; .reg .u32 %r945; .reg .u64 %r946; .reg .u64 %r949; .reg .u16 %r952; .reg .u16 %r954; .reg .pred %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .u64 %r958; .reg .u32 %r959; .reg .pred %r960; .reg .u64 %r963; .reg .u64 %r964; .reg .u64 %r965; .reg .u32 %r966; .reg .u32 %r967; .reg .u32 %r968; .reg .pred %r970; .reg .u64 %r971; .reg .pred %r972; .reg .u32 %r973; .reg .pred %r974; .reg .pred %r975; .reg .u64 %r976; .reg .u32 %r978; .reg .u32 %r979; .reg .u32 %r980; .reg .u64 %r981; .reg .u64 %r983; .reg .u64 %r984; .reg .u64 %r985; .reg .u64 %r986; .reg .u64 %r988; .reg .u64 %r991; .reg .u64 %r992; .reg .u64 %r993; .reg .u64 %r994; .reg .u64 %r995; .reg .u64 %r999; .reg .u64 %r1000; .reg .u64 %r1001; .reg .u64 %r1002; .reg .u32 %r1003; .reg .u32 %r1005; .reg .u64 %r1006; .reg .u64 %r1007; .reg .u32 %r1008; .reg .u32 %r1010; .reg .u64 %r1011; .reg .u64 %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .u64 %r1015; .reg .u64 %r1016; .reg .u64 %r1017; .reg .u64 %r1018; .reg .u64 %r1020; .reg .u64 %r1021; .reg .u64 %r1022; .reg .u64 %r1023; .reg .u64 %r1024; .reg .u64 %r1026; .reg .u64 %r1027; .reg .u64 %r1028; .reg .u64 %r1029; .reg .u64 %r1030; .reg .u64 %r1032; .reg .u64 %r1033; .reg .u64 %r1034; .reg .u64 %r1035; .reg .u64 %r1036; .reg .u64 %r1037; .reg .u32 %r1038; .reg .pred %r1040; .reg .u64 %r1041; .reg .pred %r1042; .reg .u64 %r1045; .reg .u64 %r1046; .reg .u64 %r1047; .reg .u32 %r1048; .reg .u32 %r1049; .reg .pred %r1051; .reg .u64 %r1052; .reg .pred %r1053; .reg .pred %r1055; .reg .u64 %r1056; .reg .u32 %r1057; .reg .u64 %r1060; .reg .u64 %r1061; .reg .u64 %r1062; .reg .u32 %r1063; .reg .u32 %r1064; .reg .u32 %r1065; .reg .u32 %r1066; .reg .pred %r1068; .reg .u64 %r1069; .reg .pred %r1070; .reg .pred %r1072; .reg .pred %r1073; .reg .u32 %r1074; .reg .u32 %r1075; .reg .u16 %r1076; .reg .u16 %r1077; .reg .u64 %r1080; .reg .u64 %r1081; .reg .u64 %r1082; .reg .u32 %r1083; .reg .u32 %r1084; .reg .u32 %r1085; .reg .u32 %r1086; .reg .u32 %r1088; .reg .u32 %r1089; .reg .pred %r1091; .reg .u64 %r1092; .reg .pred %r1093; .reg .u32 %r1097; .reg .pred %r1098; .reg .pred %r1099; .reg .pred %r1100; .reg .u32 %r1101; .reg .u32 %r1102; .reg .pred %r1103; .reg .u32 %r1104; .reg .pred %r1105; .reg .u32 %r1107; .reg .pred %r1113; .reg .u32 %r1115; .reg .u32 %r1122; .reg .u32 %r1124; .reg .pred %r1125; .reg .u64 %r1128; .reg .u64 %r1129; .reg .u64 %r1130; .reg .u32 %r1131; .reg .pred %r1133; .reg .u64 %r1134; .reg .pred %r1135; .reg .pred %r1137; .reg .u64 %r1138; .reg .u16 %r1140; .reg .u16 %r1141; .reg .pred %r1142; .reg .u64 %r1145; .reg .u64 %r1146; .reg .u64 %r1147; .reg .u32 %r1148; .reg .u32 %r1149; .reg .u32 %r1150; .reg .u32 %r1152; .reg .u32 %r1153; .reg .pred %r1155; .reg .u64 %r1156; .reg .pred %r1157; .reg .pred %r1158; .reg .u32 %r1160; .reg .u32 %r1161; .reg .u64 %r1164; .reg .u64 %r1165; .reg .u64 %r1166; .reg .u32 %r1167; .reg .pred %r1169; .reg .u64 %r1170; .reg .pred %r1171; .reg .pred %r1172; .reg .u32 %r1173; .reg .u32 %r1174; .reg .pred %r1175; .reg .u32 %r1176; .reg .u16 %r1177; .reg .u32 %r1178; .reg .u32 %r1179; .reg .u32 %r1180; .reg .u32 %r1181; .reg .u32 %r1182; .reg .u16 %r1183; .reg .u16 %r1184; .reg .u16 %r1185; .reg .u32 %r1186; .reg .u16 %r1187; .reg .pred %r1188; .reg .u32 %r1189; .reg .pred %r1190; .reg .u32 %r1191; .reg .pred %r1192; .reg .u32 %r1193; .reg .u64 %r1195; .reg .u64 %r1196; .reg .u64 %r1200; .reg .u64 %r1201; .reg .u32 %r1202; .reg .pred %r1204; .reg .u64 %r1205; .reg .pred %r1206; .reg .u32 %r1207; .reg .pred %r1208; .reg .pred %r1209; .reg .u64 %r1210; .reg .u32 %r1212; .reg .u32 %r1213; .reg .u32 %r1214; .reg .u64 %r1215; .reg .u64 %r1217; .reg .u64 %r1218; .reg .u64 %r1219; .reg .u64 %r1220; .reg .u64 %r1222; .reg .u64 %r1225; .reg .u64 %r1226; .reg .u64 %r1229; .reg .u64 %r1230; .reg .u64 %r1231; .reg .u64 %r1233; .reg .u64 %r1235; .reg .u32 %r1236; .reg .pred %r1238; .reg .u64 %r1239; .reg .pred %r1240; .reg .u32 %r1241; .reg .pred %r1242; .reg .pred %r1243; .reg .u64 %r1244; .reg .u32 %r1246; .reg .u32 %r1247; .reg .u32 %r1248; .reg .u64 %r1249; .reg .u64 %r1250; .reg .u64 %r1251; .reg .u64 %r1253; .reg .pred %r1254; .reg .pred %r1255; .reg .u64 %r1256; .reg .u64 %r1257; .reg .u64 %r1258; .reg .u32 %r1259; .reg .pred %r1260; .reg .pred %r1261; .reg .pred %r1263; .reg .u64 %r1264; .reg .u32 %r1265; .reg .u16 %r1266; .reg .u32 %r1267; .reg .pred %r1268; .reg .pred %r1269; .reg .u64 %r1270; .reg .u32 %r1271; .reg .u32 %r1273; .reg .pred %r1274; .reg .u32 %r1275; .reg .u32 %r1276; .reg .u32 %r1277; .reg .u32 %r1278; .reg .u32 %r1279; .reg .u16 %r1280; .reg .u32 %r1281; .reg .u32 %r1282; .reg .u16 %r1283; .reg .u16 %r1284; .reg .u16 %r1285; .reg .u32 %r1286; .reg .u16 %r1287; .reg .pred %r1288; .reg .u32 %r1289; .reg .u32 %r1290; .reg .u32 %r1291; .reg .u32 %r1292; .reg .u32 %r1293; .reg .u32 %r1294; .reg .u16 %r1295; .reg .u16 %r1296; .reg .u16 %r1297; .reg .u32 %r1298; .reg .u16 %r1299; .reg .pred %r1300; .reg .u32 %r1301; .reg .u32 %r1302; .reg .u32 %r1303; .reg .u32 %r1304; .reg .u32 %r1305; .reg .u32 %r1306; .reg .u16 %r1307; .reg .u16 %r1308; .reg .u16 %r1309; .reg .u32 %r1310; .reg .u16 %r1311; .reg .pred %r1312; .reg .pred %r1314; .reg .u32 %r1315; .reg .u64 %r1321; .reg .u64 %r1322; .reg .u64 %r1323; .reg .u64 %r1324; .reg .u16 %r1326; mov.u64 %r424,%ar0; mov.u64 %r425,%ar1; mov.u64 %r426,%ar2; mov.u64 %r427,%ar3; .loc 1 688 7 mov.u32 %r118,0; .loc 1 678 10 mov.u64 %r423,0; .loc 1 1397 25 add.u64 %r1321,%r425,-1; .loc 1 1083 38 cvta.const.u64 %r1322,_ctype_+1; .loc 1 1323 3 add.u64 %r1323,%frame,1; .loc 1 932 9 add.u64 %r1324,%frame,2; bra $L12; $L15: .loc 1 695 7 setp.gt.u64 %r429,%r1321,%r423; @ %r429 bra $L13; $L75: .loc 1 698 13 mov.u64 %r423,0; bra $L11; $L13: .loc 1 696 26 add.u64 %r426,%r426,1; .loc 1 696 17 add.u64 %r430,%r424,%r423; cvt.u32.u32 %r431,%r25; st.u8 [%r430],%r431; .loc 1 696 13 add.u64 %r423,%r423,1; $L12: .loc 1 693 14 ld.s8 %r25,[%r426]; .loc 1 693 22 cvt.u16.u32 %r433,%r25; set.u32.ne.u16 %r434,%r433,0; neg.s32 %r435,%r434; mov.u32 %r432,%r435; set.u32.ne.u16 %r438,%r433,37; neg.s32 %r439,%r438; mov.u32 %r436,%r439; cvt.u16.u8 %r1326,%r432; mov.u16 %r441,%r1326; cvt.u16.u8 %r1326,%r436; mov.u16 %r442,%r1326; and.b16 %r440,%r441,%r442; cvt.u32.u16 %r443,%r440; cvt.u16.u8 %r444,%r443; setp.ne.u16 %r445,%r444,0; @ %r445 bra $L15; .loc 1 700 10 setp.eq.u32 %r446,%r25,0; @ %r446 bra $L16; .loc 1 708 11 ld.s8 %r383,[%r426+1]; .loc 1 708 30 cvt.u16.u32 %r448,%r383; set.u32.eq.u16 %r449,%r448,48; neg.s32 %r450,%r449; mov.u32 %r447,%r450; set.u32.eq.u16 %r453,%r448,43; neg.s32 %r454,%r453; mov.u32 %r451,%r454; cvt.u16.u8 %r1326,%r447; mov.u16 %r456,%r1326; cvt.u16.u8 %r1326,%r451; mov.u16 %r457,%r1326; or.b16 %r455,%r456,%r457; cvt.u32.u16 %r458,%r455; .loc 1 708 10 cvt.u16.u8 %r459,%r458; setp.ne.u16 %r460,%r459,0; @ %r460 bra $L17; .loc 1 702 13 add.u64 %r32,%r426,1; .loc 1 703 11 mov.u32 %r79,0; bra $L18; $L17: .loc 1 709 15 add.u64 %r32,%r426,2; .loc 1 708 11 mov.u32 %r79,%r383; .loc 1 712 11 ld.s8 %r383,[%r426+2]; $L18: .loc 1 712 30 cvt.u16.u32 %r463,%r383; add.u16 %r462,%r463,-49; cvt.u32.u16 %r464,%r462; .loc 1 712 10 cvt.u16.u8 %r465,%r464; setp.gt.u16 %r466,%r465,8; @ %r466 bra $L159; .loc 1 715 12 mov.u32 %r469,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r469; call (%value_in),strtoul,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r470,[%value_in]; } mov.u64 %r35,%r470; .loc 1 716 11 ld.u64 %r32,[%frame]; .loc 1 720 11 ld.s8 %r383,[%r32]; bra $L19; $L159: .loc 1 704 13 mov.u64 %r35,0; $L19: .loc 1 720 10 cvt.u16.u32 %r471,%r383; setp.ne.u16 %r472,%r471,69; @ %r472 bra $L20; .loc 1 747 15 ld.s8 %r383,[%r32+1]; .loc 1 722 17 add.u64 %r32,%r32,1; bra $L21; $L20: .loc 1 733 15 setp.ne.u16 %r474,%r471,79; @ %r474 bra $L21; .loc 1 747 15 ld.s8 %r383,[%r32+1]; .loc 1 735 17 add.u64 %r32,%r32,1; $L21: .loc 1 747 7 cvt.u16.u32 %r475,%r383; setp.eq.u16 %r476,%r475,90; @ %r476 bra $L22; setp.gt.s16 %r478,%r475,90; @ %r478 bra $L23; setp.eq.u16 %r480,%r475,77; @ %r480 bra $L24; setp.gt.s16 %r482,%r475,77; @ %r482 bra $L25; setp.eq.u16 %r484,%r475,68; @ %r484 bra $L26; setp.gt.s16 %r486,%r475,68; @ %r486 bra $L27; setp.eq.u16 %r488,%r475,66; @ %r488 bra $L28; setp.gt.s16 %r490,%r475,66; @ %r490 bra $L29; setp.eq.u16 %r492,%r475,37; @ %r492 bra $L30; setp.eq.u16 %r494,%r475,65; @ %r494 bra $L31; mov.u64 %r423,0; bra $L11; $L29: setp.eq.u16 %r496,%r475,67; @ %r496 bra $L32; mov.u64 %r423,0; bra $L11; $L27: setp.eq.u16 %r498,%r475,71; @ %r498 bra $L33; setp.gt.s16 %r500,%r475,71; @ %r500 bra $L34; setp.eq.u16 %r502,%r475,70; @ %r502 bra $L35; mov.u64 %r423,0; bra $L11; $L34: setp.eq.u16 %r504,%r475,72; @ %r504 bra $L36; setp.eq.u16 %r506,%r475,73; @ %r506 bra $L37; mov.u64 %r423,0; bra $L11; $L25: setp.eq.u16 %r508,%r475,85; @ %r508 bra $L38; setp.gt.s16 %r510,%r475,85; @ %r510 bra $L39; setp.eq.u16 %r512,%r475,83; @ %r512 bra $L40; setp.gt.s16 %r514,%r475,83; @ %r514 bra $L41; setp.eq.u16 %r516,%r475,80; @ %r516 bra $L42; setp.eq.u16 %r518,%r475,82; @ %r518 bra $L43; mov.u64 %r423,0; bra $L11; $L41: setp.eq.u16 %r520,%r475,84; @ %r520 bra $L44; mov.u64 %r423,0; bra $L11; $L39: setp.eq.u16 %r522,%r475,88; @ %r522 bra $L45; setp.eq.u16 %r524,%r475,89; @ %r524 bra $L46; setp.eq.u16 %r526,%r475,86; @ %r526 bra $L47; setp.eq.u16 %r528,%r475,87; @ %r528 bra $L48; mov.u64 %r423,0; bra $L11; $L23: setp.eq.u16 %r530,%r475,110; @ %r530 bra $L49; setp.gt.s16 %r532,%r475,110; @ %r532 bra $L50; setp.eq.u16 %r534,%r475,103; @ %r534 bra $L51; setp.gt.s16 %r536,%r475,103; @ %r536 bra $L52; setp.eq.u16 %r538,%r475,99; @ %r538 bra $L53; setp.gt.s16 %r540,%r475,99; @ %r540 bra $L54; setp.eq.u16 %r542,%r475,97; @ %r542 bra $L55; setp.eq.u16 %r544,%r475,98; @ %r544 bra $L56; mov.u64 %r423,0; bra $L11; $L54: add.u16 %r546,%r475,-100; cvt.u32.u16 %r548,%r546; cvt.u16.u8 %r549,%r548; setp.gt.u16 %r550,%r549,1; @ ! %r550 bra $L223; bra $L160; $L52: setp.eq.u16 %r552,%r475,107; @ %r552 bra $L58; setp.gt.s16 %r554,%r475,107; @ %r554 bra $L59; setp.eq.u16 %r556,%r475,104; @ %r556 bra $L56; setp.eq.u16 %r558,%r475,106; @ %r558 bra $L60; mov.u64 %r423,0; bra $L11; $L59: setp.eq.u16 %r560,%r475,108; @ %r560 bra $L61; setp.eq.u16 %r562,%r475,109; @ %r562 bra $L62; mov.u64 %r423,0; bra $L11; $L50: setp.eq.u16 %r564,%r475,117; @ %r564 bra $L63; setp.gt.s16 %r566,%r475,117; @ %r566 bra $L64; setp.eq.u16 %r568,%r475,115; @ %r568 bra $L65; setp.gt.s16 %r570,%r475,115; @ %r570 bra $L66; setp.eq.u16 %r572,%r475,112; @ %r572 bra $L42; setp.eq.u16 %r574,%r475,114; @ %r574 bra $L67; mov.u64 %r423,0; bra $L11; $L66: setp.eq.u16 %r576,%r475,116; @ %r576 bra $L68; mov.u64 %r423,0; bra $L11; $L64: setp.eq.u16 %r578,%r475,121; @ %r578 bra $L69; setp.gt.s16 %r580,%r475,121; @ %r580 bra $L70; setp.eq.u16 %r582,%r475,119; @ %r582 bra $L71; setp.eq.u16 %r584,%r475,120; @ %r584 bra $L72; mov.u64 %r423,0; bra $L11; $L70: setp.eq.u16 %r586,%r475,122; @ %r586 bra $L73; mov.u64 %r423,0; bra $L11; $L55: .loc 1 750 4 cvta.const.u64 %r587,_C_time_locale; ld.s32 %r588,[%r427+24]; add.u64 %r589,%r588,24; shl.b64 %r590,%r589,3; add.u64 %r591,%r587,%r590; ld.u64 %r39,[%r591]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r593,[%value_in]; } .loc 1 751 18 setp.eq.u64 %r594,%r593,0; @ %r594 bra $L74; .loc 1 753 11 setp.ge.u64 %r595,%r423,%r1321; @ %r595 bra $L75; add.u64 %r400,%r423,%r593; mov.u64 %r41,%r423; bra $L76; $L77: setp.ge.u64 %r596,%r41,%r1321; @ %r596 bra $L75; $L76: .loc 1 754 10 add.u64 %r41,%r41,1; .loc 1 754 21 sub.u64 %r597,%r41,%r423; add.u64 %r598,%r39,%r597; .loc 1 754 14 add.u64 %r599,%r424,%r41; ld.u8 %r600,[%r598+-1]; st.u8 [%r599+-1],%r600; .loc 1 751 18 setp.ne.u64 %r601,%r41,%r400; @ %r601 bra $L77; mov.u64 %r423,%r41; bra $L74; $L31: .loc 1 760 4 cvta.const.u64 %r602,_C_time_locale; ld.s32 %r603,[%r427+24]; add.u64 %r604,%r603,30; shl.b64 %r605,%r604,3; add.u64 %r606,%r602,%r605; ld.u64 %r45,[%r606+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r609,[%value_in]; } .loc 1 761 18 setp.eq.u64 %r610,%r609,0; @ %r610 bra $L74; .loc 1 763 11 setp.ge.u64 %r611,%r423,%r1321; @ %r611 bra $L75; add.u64 %r419,%r423,%r609; mov.u64 %r49,%r423; bra $L78; $L79: setp.ge.u64 %r612,%r49,%r1321; @ %r612 bra $L75; $L78: .loc 1 764 10 add.u64 %r49,%r49,1; .loc 1 764 21 sub.u64 %r613,%r49,%r423; add.u64 %r614,%r45,%r613; .loc 1 764 14 add.u64 %r615,%r424,%r49; ld.u8 %r616,[%r614+-1]; st.u8 [%r615+-1],%r616; .loc 1 761 18 setp.ne.u64 %r617,%r49,%r419; @ %r617 bra $L79; mov.u64 %r423,%r49; bra $L74; $L56: .loc 1 771 4 cvta.const.u64 %r618,_C_time_locale; ld.s32 %r619,[%r427+16]; shl.b64 %r620,%r619,3; add.u64 %r621,%r618,%r620; ld.u64 %r53,[%r621]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r623,[%value_in]; } .loc 1 772 18 setp.eq.u64 %r624,%r623,0; @ %r624 bra $L74; .loc 1 774 11 setp.ge.u64 %r625,%r423,%r1321; @ %r625 bra $L75; add.u64 %r397,%r423,%r623; mov.u64 %r55,%r423; bra $L80; $L81: setp.ge.u64 %r626,%r55,%r1321; @ %r626 bra $L75; $L80: .loc 1 775 10 add.u64 %r55,%r55,1; .loc 1 775 21 sub.u64 %r627,%r55,%r423; add.u64 %r628,%r53,%r627; .loc 1 775 14 add.u64 %r629,%r424,%r55; ld.u8 %r630,[%r628+-1]; st.u8 [%r629+-1],%r630; .loc 1 772 18 setp.ne.u64 %r631,%r55,%r397; @ %r631 bra $L81; mov.u64 %r423,%r55; bra $L74; $L28: .loc 1 781 4 cvta.const.u64 %r632,_C_time_locale; ld.s32 %r633,[%r427+16]; add.u64 %r634,%r633,12; shl.b64 %r635,%r634,3; add.u64 %r636,%r632,%r635; ld.u64 %r60,[%r636]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r60; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r638,[%value_in]; } .loc 1 782 18 setp.eq.u64 %r639,%r638,0; @ %r639 bra $L74; .loc 1 784 11 setp.ge.u64 %r640,%r423,%r1321; @ %r640 bra $L75; add.u64 %r415,%r423,%r638; mov.u64 %r63,%r423; bra $L82; $L83: setp.ge.u64 %r641,%r63,%r1321; @ %r641 bra $L75; $L82: .loc 1 785 10 add.u64 %r63,%r63,1; .loc 1 785 21 sub.u64 %r642,%r63,%r423; add.u64 %r643,%r60,%r642; .loc 1 785 14 add.u64 %r644,%r424,%r63; ld.u8 %r645,[%r643+-1]; st.u8 [%r644+-1],%r645; .loc 1 782 18 setp.ne.u64 %r646,%r63,%r415; @ %r646 bra $L83; mov.u64 %r423,%r63; bra $L74; $L53: .loc 1 796 6 cvta.const.u64 %r647,_C_time_locale; ld.u64 %r66,[%r647+320]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r649,[%value_in]; } .loc 1 797 4 bra $L84; $L67: .loc 1 799 4 cvta.const.u64 %r650,_C_time_locale; ld.u64 %r66,[%r650+456]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r652,[%value_in]; } .loc 1 800 4 bra $L84; $L72: .loc 1 807 6 cvta.const.u64 %r653,_C_time_locale; ld.u64 %r66,[%r653+312]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r655,[%value_in]; } .loc 1 808 4 bra $L84; $L45: .loc 1 815 6 cvta.const.u64 %r656,_C_time_locale; ld.u64 %r66,[%r656+304]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r658,[%value_in]; } $L84: .loc 1 817 7 ld.u8 %r660,[%r66]; cvt.s16.s8 %r659,%r660; setp.eq.u16 %r661,%r659,0; @ %r661 bra $L74; .loc 1 820 14 sub.u64 %r666,%r425,%r423; add.u64 %r667,%r424,%r423; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r667; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r666; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r66; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r427; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r668,[%value_in]; } .loc 1 820 12 cvt.u32.u64 %r71,%r668; .loc 1 822 11 setp.le.s32 %r669,%r71,0; @ %r669 bra $L75; .loc 1 823 9 cvt.s64.s32 %r670,%r71; add.u64 %r423,%r423,%r670; bra $L74; $L32: .loc 1 859 18 ld.u32 %r73,[%r427+20]; .loc 1 871 9 max.u64 %r671,%r35,2; .loc 1 859 28 set.u32.lt.s32 %r673,%r73,-1900; cvt.s64.s32 %r672,%r673; .loc 1 871 9 add.u64 %r388,%r671,%r672; .loc 1 862 5 setp.lt.s32 %r675,%r73,0; @ %r675 bra $L85; .loc 1 861 22 div.s32 %r677,%r73,100; .loc 1 862 5 add.u32 %r76,%r677,19; .loc 1 863 6 setp.ne.u32 %r678,%r79,0; @ %r678 bra $L86; .loc 1 857 9 cvta.const.u64 %r85,$LC1; .loc 1 858 9 cvta.const.u64 %r86,$LC0; bra $L87; $L85: .loc 1 862 7 add.u32 %r680,%r73,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r680; call (%value_in),abs,(%out_arg1); ld.param.u32 %r681,[%value_in]; } .loc 1 862 5 div.s32 %r76,%r681,100; .loc 1 863 6 setp.eq.u32 %r682,%r79,0; @ %r682 bra $L161; .loc 1 866 19 set.u32.gt.s32 %r684,%r681,9999; neg.s32 %r685,%r684; mov.u32 %r683,%r685; .loc 1 866 33 cvt.u16.u32 %r687,%r79; set.u32.eq.u16 %r688,%r687,43; neg.s32 %r689,%r688; mov.u32 %r686,%r689; .loc 1 866 26 cvt.u16.u8 %r1326,%r683; mov.u16 %r691,%r1326; cvt.u16.u8 %r1326,%r686; mov.u16 %r692,%r1326; and.b16 %r690,%r691,%r692; cvt.u32.u16 %r693,%r690; .loc 1 866 10 cvt.u16.u8 %r694,%r693; setp.ne.u16 %r695,%r694,0; @ %r695 bra $L162; $L154: .loc 1 858 9 cvta.const.u64 %r86,$LC0; .loc 1 865 11 cvta.const.u64 %r85,$LC2; bra $L88; $L161: .loc 1 858 9 cvta.const.u64 %r86,$LC0; .loc 1 857 9 cvta.const.u64 %r85,$LC1; bra $L88; $L162: .loc 1 867 13 cvta.const.u64 %r86,$LC3; .loc 1 865 11 cvta.const.u64 %r85,$LC2; $L88: .loc 1 871 9 setp.ge.s32 %r696,%r73,-1900; @ %r696 bra $L87; cvta.const.u64 %r86,$LC4; bra $L87; $L177: .loc 1 865 11 cvta.const.u64 %r85,$LC2; .loc 1 867 13 cvta.const.u64 %r86,$LC3; $L87: .loc 1 871 9 sub.u64 %r700,%r425,%r423; add.u64 %r701,%r424,%r423; st.u32 [%stack+16],%r76; st.u64 [%stack+8],%r388; st.u64 [%stack],%r86; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r701; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r700; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r85; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r702,[%value_in]; } .loc 1 874 13 setp.lt.s32 %r704,%r702,0; @ %r704 bra $L75; cvt.s64.s32 %r705,%r702; add.u64 %r423,%r423,%r705; setp.le.u64 %r706,%r425,%r423; @ ! %r706 bra $L74; bra $L75; $L223: .loc 1 903 11 ld.u32 %r89,[%r427+12]; .loc 1 901 10 setp.eq.u16 %r708,%r475,100; @ %r708 bra $L163; cvta.const.u64 %r92,$LC6; bra $L89; $L163: cvta.const.u64 %r92,$LC5; $L89: sub.u64 %r712,%r425,%r423; add.u64 %r713,%r424,%r423; st.u32 [%stack],%r89; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r713; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r712; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r92; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r714,[%value_in]; } .loc 1 904 4 setp.lt.s32 %r716,%r714,0; @ %r716 bra $L75; cvt.s64.s32 %r717,%r714; add.u64 %r423,%r423,%r717; setp.le.u64 %r718,%r425,%r423; @ ! %r718 bra $L74; bra $L75; $L26: .loc 1 911 11 ld.u32 %r95,[%r427+20]; .loc 1 908 10 setp.lt.s32 %r719,%r95,0; @ %r719 bra $L90; rem.s32 %r96,%r95,100; bra $L91; $L90: .loc 1 912 8 add.u32 %r721,%r95,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r721; call (%value_in),abs,(%out_arg1); ld.param.u32 %r722,[%value_in]; } .loc 1 908 10 rem.s32 %r96,%r722,100; $L91: sub.u64 %r726,%r425,%r423; add.u64 %r727,%r424,%r423; st.u32 [%stack+8],%r96; ld.u32 %r728,[%r427+12]; st.u32 [%stack+4],%r728; ld.u32 %r730,[%r427+16]; add.u32 %r729,%r730,1; st.u32 [%stack],%r729; cvta.const.u64 %r725,$LC7; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r727; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r726; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r725; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r731,[%value_in]; } .loc 1 913 11 setp.lt.s32 %r733,%r731,0; @ %r733 bra $L75; cvt.s64.s32 %r734,%r731; add.u64 %r423,%r423,%r734; setp.le.u64 %r735,%r425,%r423; @ ! %r735 bra $L74; bra $L75; $L35: .loc 1 920 13 mov.u32 %r736,37; st.u8 [%frame],%r736; .loc 1 921 9 setp.eq.u32 %r737,%r79,0; @ %r737 bra $L92; .loc 1 922 15 cvt.u32.u32 %r738,%r79; st.u8 [%frame+1],%r738; max.u64 %r106,%r35,6; .loc 1 929 12 add.u64 %r108,%r106,-6; .loc 1 930 9 setp.ne.u64 %r739,%r106,6; @ %r739 bra $L93; $L95: .loc 1 929 12 mov.u64 %r111,%r1324; bra $L94; $L92: .loc 1 924 15 mov.u32 %r740,43; st.u8 [%frame+1],%r740; .loc 1 929 12 mov.u64 %r108,4; $L93: .loc 1 932 9 st.u64 [%stack],%r108; cvta.const.u64 %r743,$LC8; mov.u64 %r742,30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1324; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r742; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r743; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r745,[%value_in]; } .loc 1 933 6 setp.le.s32 %r747,%r745,0; @ %r747 bra $L95; .loc 1 934 9 cvt.s64.s32 %r749,%r745; add.u64 %r111,%r1324,%r749; $L94: .loc 1 936 6 cvta.const.u64 %r751,$LC9; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r751; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r752,[%value_in]; } .loc 1 937 12 sub.u64 %r757,%r425,%r423; add.u64 %r758,%r424,%r423; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r758; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r757; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r427; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r759,[%value_in]; } .loc 1 937 10 cvt.u32.u64 %r115,%r759; .loc 1 939 9 setp.le.s32 %r760,%r115,0; @ %r760 bra $L96; .loc 1 940 14 cvt.s64.s32 %r761,%r115; add.u64 %r423,%r423,%r761; bra $L74; $L96: .loc 1 942 15 mov.u64 %r423,0; bra $L11; $L51: ld.u32 %r369,[%r427+20]; .loc 1 949 19 ld.u32 %r765,[%r427+28]; ld.u32 %r766,[%r427+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r369; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r766; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r765; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r767,[%value_in]; } mov.u32 %r117,%r767; .loc 1 951 3 setp.lt.s32 %r768,%r369,0; @ %r768 bra $L97; rem.s32 %r119,%r369,100; bra $L98; $L97: .loc 1 951 5 add.u32 %r770,%r369,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r770; call (%value_in),abs,(%out_arg1); ld.param.u32 %r771,[%value_in]; } .loc 1 951 3 rem.s32 %r119,%r771,100; $L98: .loc 1 952 9 setp.ge.s32 %r772,%r767,0; @ %r772 bra $L99; .loc 1 952 21 ld.u32 %r773,[%r427+20]; setp.lt.s32 %r774,%r773,-1899; .loc 1 953 10 selp.u32 %r117,1,%r767,%r774; bra $L100; $L99: .loc 1 954 14 setp.eq.u32 %r775,%r767,0; @ %r775 bra $L100; .loc 1 954 26 ld.u32 %r776,[%r427+20]; setp.ge.s32 %r777,%r776,-1900; .loc 1 955 10 selp.u32 %r117,%r767,-1,%r777; $L100: .loc 1 956 12 sub.u64 %r781,%r425,%r423; add.u64 %r782,%r424,%r423; .loc 1 957 15 add.u32 %r783,%r117,%r119; .loc 1 957 25 rem.s32 %r785,%r783,100; .loc 1 957 31 add.u32 %r786,%r785,100; .loc 1 956 12 rem.s32 %r790,%r786,100; st.u32 [%stack],%r790; cvta.const.u64 %r780,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r782; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r781; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r780; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r791,[%value_in]; } .loc 1 958 13 setp.lt.s32 %r793,%r791,0; @ %r793 bra $L75; cvt.s64.s32 %r794,%r791; add.u64 %r423,%r423,%r794; setp.le.u64 %r795,%r425,%r423; @ ! %r795 bra $L74; bra $L75; $L33: .loc 1 966 22 ld.u32 %r132,[%r427+20]; .loc 1 966 32 set.u32.lt.s32 %r796,%r132,-1900; neg.s32 %r133,%r796; .loc 1 966 10 mov.u32 %r134,%r133; .loc 1 967 19 ld.u32 %r802,[%r427+28]; ld.u32 %r803,[%r427+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r132; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r803; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r802; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r804,[%value_in]; } mov.u32 %r135,%r804; .loc 1 970 8 setp.lt.s32 %r805,%r132,0; @ %r805 bra $L101; .loc 1 969 25 div.s32 %r807,%r132,100; .loc 1 970 8 add.u32 %r137,%r807,19; bra $L102; $L101: .loc 1 970 10 add.u32 %r809,%r132,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r809; call (%value_in),abs,(%out_arg1); ld.param.u32 %r810,[%value_in]; } .loc 1 970 8 div.s32 %r137,%r810,100; .loc 1 971 22 ld.u32 %r132,[%r427+20]; .loc 1 972 8 setp.lt.s32 %r811,%r132,0; @ %r811 bra $L103; $L102: rem.s32 %r140,%r132,100; bra $L104; $L103: .loc 1 972 10 add.u32 %r813,%r132,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r813; call (%value_in),abs,(%out_arg1); ld.param.u32 %r814,[%value_in]; } .loc 1 972 8 rem.s32 %r140,%r814,100; $L104: .loc 1 973 9 setp.ge.s32 %r815,%r804,0; @ %r815 bra $L105; .loc 1 973 21 ld.u32 %r816,[%r427+20]; setp.lt.s32 %r817,%r816,-1899; @ %r817 bra $L165; bra $L224; $L105: .loc 1 975 22 set.u32.gt.s32 %r819,%r804,0; neg.s32 %r820,%r819; mov.u32 %r818,%r820; .loc 1 975 26 cvt.u16.u8 %r1326,%r818; mov.u16 %r822,%r1326; cvt.u16.u32 %r823,%r133; and.b16 %r821,%r822,%r823; cvt.u32.u16 %r824,%r821; .loc 1 975 14 cvt.u16.u8 %r825,%r824; setp.ne.u16 %r826,%r825,0; @ %r826 bra $L108; bra $L106; $L165: .loc 1 974 22 mov.u32 %r135,1; .loc 1 974 13 mov.u32 %r134,%r135; $L106: .loc 1 977 11 add.u32 %r47,%r135,%r140; .loc 1 978 9 setp.ne.u32 %r827,%r47,-1; @ %r827 bra $L109; $L153: .loc 1 981 3 add.u32 %r137,%r137,-1; .loc 1 980 8 mov.u32 %r47,99; bra $L110; $L109: .loc 1 983 14 setp.ne.u32 %r828,%r47,100; @ %r828 bra $L110; .loc 1 986 3 add.u32 %r137,%r137,1; .loc 1 985 8 mov.u32 %r47,0; $L110: .loc 1 990 38 mad.lo.u32 %r393,%r137,100,%r47; .loc 1 991 9 setp.eq.u32 %r830,%r134,0; @ %r830 bra $L111; $L157: .loc 1 992 15 mov.u32 %r831,45; st.u8 [%frame],%r831; .loc 1 998 9 setp.eq.u64 %r832,%r35,0; @ %r832 bra $L166; $L113: .loc 1 999 8 add.u64 %r35,%r35,-1; mov.u64 %r378,%r1323; bra $L112; $L111: .loc 1 993 19 cvt.u16.u32 %r834,%r79; set.u32.eq.u16 %r835,%r834,43; neg.s32 %r836,%r835; mov.u32 %r833,%r836; .loc 1 993 40 set.u32.gt.u32 %r838,%r393,9999; neg.s32 %r839,%r838; mov.u32 %r837,%r839; .loc 1 993 30 cvt.u16.u8 %r1326,%r833; mov.u16 %r841,%r1326; cvt.u16.u8 %r1326,%r837; mov.u16 %r842,%r1326; and.b16 %r840,%r841,%r842; cvt.u32.u16 %r843,%r840; .loc 1 993 14 cvt.u16.u8 %r844,%r843; setp.eq.u16 %r845,%r844,0; @ %r845 bra $L167; .loc 1 995 10 mov.u32 %r846,43; st.u8 [%frame],%r846; .loc 1 998 9 setp.ne.u64 %r847,%r35,0; @ %r847 bra $L113; bra $L225; $L166: mov.u64 %r378,%r1323; bra $L112; $L167: .loc 1 988 24 mov.u64 %r378,%frame; $L112: .loc 1 1000 13 mov.u32 %r848,37; st.u8 [%r378],%r848; .loc 1 1001 9 setp.ne.u32 %r849,%r79,0; @ %r849 bra $L115; .loc 1 1000 10 add.u64 %r151,%r378,1; bra $L116; $L115: .loc 1 1002 12 add.u64 %r151,%r378,2; .loc 1 1002 15 mov.u32 %r850,48; st.u8 [%r378+1],%r850; $L116: .loc 1 1003 6 cvta.const.u64 %r852,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r151; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r852; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r853,[%value_in]; } .loc 1 1004 12 sub.u64 %r857,%r425,%r423; add.u64 %r858,%r424,%r423; st.u32 [%stack+8],%r393; st.u64 [%stack],%r35; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r858; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r857; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r859,[%value_in]; } .loc 1 1005 16 setp.lt.s32 %r861,%r859,0; @ %r861 bra $L117; .loc 1 1005 36 cvt.s64.s32 %r862,%r859; add.u64 %r423,%r423,%r862; .loc 1 1005 26 setp.gt.u64 %r863,%r425,%r423; @ %r863 bra $L74; $L117: .loc 1 1006 22 mov.u64 %r423,0; bra $L11; $L156: .loc 1 1022 10 sub.u64 %r867,%r425,%r423; add.u64 %r868,%r424,%r423; st.u32 [%stack],%r361; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r868; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r867; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r159; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r869,[%value_in]; } .loc 1 1025 11 setp.lt.s32 %r871,%r869,0; @ %r871 bra $L75; cvt.s64.s32 %r872,%r869; add.u64 %r423,%r423,%r872; setp.le.u64 %r873,%r425,%r423; @ ! %r873 bra $L74; bra $L75; $L155: .loc 1 1035 11 rem.s32 %r163,%r65,12; .loc 1 1041 14 cvt.u16.u32 %r874,%r383; setp.eq.u16 %r875,%r874,73; @ %r875 bra $L168; cvta.const.u64 %r166,$LC6; bra $L119; $L168: cvta.const.u64 %r166,$LC5; $L119: sub.u64 %r879,%r425,%r423; add.u64 %r880,%r424,%r423; st.u32 [%stack],%r163; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r880; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r879; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r166; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r881,[%value_in]; } .loc 1 1043 6 setp.lt.s32 %r883,%r881,0; @ %r883 bra $L75; cvt.s64.s32 %r884,%r881; add.u64 %r423,%r423,%r884; setp.le.u64 %r885,%r425,%r423; @ ! %r885 bra $L74; bra $L75; $L60: .loc 1 1047 10 sub.u64 %r889,%r425,%r423; add.u64 %r890,%r424,%r423; ld.u32 %r892,[%r427+28]; add.u32 %r891,%r892,1; st.u32 [%stack],%r891; cvta.const.u64 %r888,$LC11; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r890; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r889; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r888; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r893,[%value_in]; } .loc 1 1049 11 setp.lt.s32 %r895,%r893,0; @ %r895 bra $L75; cvt.s64.s32 %r896,%r893; add.u64 %r423,%r423,%r896; setp.le.u64 %r897,%r425,%r423; @ ! %r897 bra $L74; bra $L75; $L62: .loc 1 1057 12 sub.u64 %r901,%r425,%r423; add.u64 %r902,%r424,%r423; ld.u32 %r904,[%r427+16]; add.u32 %r903,%r904,1; st.u32 [%stack],%r903; cvta.const.u64 %r900,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r902; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r901; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r900; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r905,[%value_in]; } .loc 1 1059 11 setp.lt.s32 %r907,%r905,0; @ %r907 bra $L75; cvt.s64.s32 %r908,%r905; add.u64 %r423,%r423,%r908; setp.le.u64 %r909,%r425,%r423; @ ! %r909 bra $L74; bra $L75; $L24: .loc 1 1067 12 sub.u64 %r913,%r425,%r423; add.u64 %r914,%r424,%r423; ld.u32 %r915,[%r427+4]; st.u32 [%stack],%r915; cvta.const.u64 %r912,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r914; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r913; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r912; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r916,[%value_in]; } .loc 1 1069 11 setp.lt.s32 %r918,%r916,0; @ %r918 bra $L75; cvt.s64.s32 %r919,%r916; add.u64 %r423,%r423,%r919; setp.le.u64 %r920,%r425,%r423; @ ! %r920 bra $L74; bra $L75; $L49: .loc 1 1072 7 setp.ge.u64 %r922,%r423,%r1321; @ %r922 bra $L75; .loc 1 1073 17 add.u64 %r923,%r424,%r423; mov.u32 %r924,10; st.u8 [%r923],%r924; .loc 1 1073 13 add.u64 %r423,%r423,1; .loc 1 1076 4 bra $L74; $L42: .loc 1 1079 4 cvta.const.u64 %r925,_C_time_locale; ld.u32 %r927,[%r427+8]; set.u32.gt.s32 %r928,%r927,11; neg.s32 %r929,%r928; cvt.s64.s32 %r930,%r929; add.u64 %r931,%r930,40; shl.b64 %r932,%r931,3; add.u64 %r933,%r925,%r932; ld.u64 %r192,[%r933+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r192; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r936,[%value_in]; } .loc 1 1080 18 setp.eq.u64 %r937,%r936,0; @ %r937 bra $L74; .loc 1 1082 11 setp.ge.u64 %r938,%r423,%r1321; @ %r938 bra $L75; add.u64 %r408,%r423,%r936; mov.u64 %r203,%r423; bra $L120; $L123: setp.le.u64 %r939,%r1321,%r203; @ %r939 bra $L75; $L120: .loc 1 1083 38 sub.u64 %r940,%r203,%r423; add.u64 %r941,%r192,%r940; ld.s8 %r205,[%r941]; .loc 1 1083 14 ld.u8 %r943,[%r32]; cvt.s16.s8 %r942,%r943; setp.ne.u16 %r944,%r942,80; @ %r944 bra $L121; .loc 1 1083 38 cvt.u32.u32 %r945,%r205; cvt.u32.u8 %r195,%r945; cvt.u64.u8 %r946,%r945; add.u64 %r949,%r946,%r1322; ld.u8 %r1326,[%r949]; mov.u16 %r952,%r1326; and.b16 %r954,%r952,3; setp.ne.u16 %r955,%r954,1; @ %r955 bra $L121; add.u32 %r956,%r195,32; .loc 1 1083 14 mov.u32 %r957,%r956; cvt.s32.s8 %r205,%r957; $L121: .loc 1 1083 10 add.u64 %r203,%r203,1; .loc 1 1083 14 add.u64 %r958,%r424,%r203; cvt.u32.u32 %r959,%r205; st.u8 [%r958+-1],%r959; .loc 1 1080 18 setp.ne.u64 %r960,%r203,%r408; @ %r960 bra $L123; mov.u64 %r423,%r203; bra $L74; $L43: .loc 1 1090 17 sub.u64 %r964,%r425,%r423; add.u64 %r965,%r424,%r423; ld.u32 %r966,[%r427+4]; st.u32 [%stack+4],%r966; ld.u32 %r967,[%r427+8]; st.u32 [%stack],%r967; cvta.const.u64 %r963,$LC12; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r965; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r964; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r963; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r968,[%value_in]; } .loc 1 1092 11 setp.lt.s32 %r970,%r968,0; @ %r970 bra $L75; cvt.s64.s32 %r971,%r968; add.u64 %r423,%r423,%r971; setp.le.u64 %r972,%r425,%r423; @ ! %r972 bra $L74; bra $L75; $L65: .loc 1 1124 9 ld.u32 %r973,[%r427+32]; setp.lt.s32 %r974,%r973,0; @ %r974 bra $L169; .loc 1 1126 3 { call __tz_lock; } .loc 1 1127 6 setp.ne.u32 %r975,%r118,0; @ %r975 bra $L125; .loc 1 1129 7 { call _tzset_unlocked; } $L125: .loc 1 1144 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r976,[%value_in]; } .loc 1 1148 42 ld.u32 %r978,[%r427+32]; set.u32.gt.s32 %r979,%r978,0; neg.s32 %r980,%r979; .loc 1 1148 46 cvt.s64.s32 %r981,%r980; shl.b64 %r983,%r981,2; add.u64 %r984,%r983,%r981; shl.b64 %r985,%r984,3; add.u64 %r986,%r976,%r985; .loc 1 1148 10 ld.u64 %r988,[%r986+40]; neg.s64 %r219,%r988; .loc 1 1150 3 { call __tz_unlock; } mov.u32 %r118,1; bra $L124; $L169: .loc 1 1121 11 mov.u64 %r219,0; $L124: .loc 1 1153 28 ld.u32 %r220,[%r427+20]; .loc 1 1152 12 sub.u64 %r992,%r425,%r423; add.u64 %r993,%r424,%r423; .loc 1 1153 12 cvt.s64.s32 %r994,%r220; .loc 1 1153 38 add.u64 %r995,%r994,-69; .loc 1 1153 43 shr.s64 %r999,%r995,63; and.b64 %r1000,%r999,3; add.u64 %r1001,%r1000,%r995; shr.s64 %r1002,%r1001,2; .loc 1 1154 23 add.u32 %r1003,%r220,-1; .loc 1 1154 27 div.s32 %r1005,%r1003,100; cvt.s64.s32 %r1006,%r1005; .loc 1 1154 5 sub.u64 %r1007,%r1002,%r1006; .loc 1 1155 23 add.u32 %r1008,%r220,299; .loc 1 1155 29 div.s32 %r1010,%r1008,400; cvt.s64.s32 %r1011,%r1010; .loc 1 1155 5 add.u64 %r1012,%r1007,%r1011; .loc 1 1156 23 add.u32 %r1013,%r220,-70; .loc 1 1156 28 mul.lo.u32 %r1014,%r1013,365; cvt.s64.s32 %r1015,%r1014; .loc 1 1156 5 add.u64 %r1016,%r1012,%r1015; .loc 1 1156 40 ld.s32 %r1017,[%r427+28]; .loc 1 1156 33 add.u64 %r1018,%r1016,%r1017; .loc 1 1156 50 add.u64 %r1020,%r1018,%r1018; add.u64 %r1021,%r1020,%r1018; shl.b64 %r1022,%r1021,3; .loc 1 1157 17 ld.s32 %r1023,[%r427+8]; .loc 1 1157 10 add.u64 %r1024,%r1022,%r1023; .loc 1 1157 27 shl.b64 %r1026,%r1024,4; sub.u64 %r1027,%r1026,%r1024; shl.b64 %r1028,%r1027,2; .loc 1 1157 38 ld.s32 %r1029,[%r427+4]; .loc 1 1157 31 add.u64 %r1030,%r1028,%r1029; .loc 1 1157 47 shl.b64 %r1032,%r1030,4; sub.u64 %r1033,%r1032,%r1030; shl.b64 %r1034,%r1033,2; .loc 1 1158 15 ld.s32 %r1035,[%r427]; .loc 1 1158 8 add.u64 %r1036,%r1034,%r1035; .loc 1 1152 12 sub.u64 %r1037,%r1036,%r219; st.u64 [%stack],%r1037; cvta.const.u64 %r991,$LC13; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r993; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r992; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r991; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1038,[%value_in]; } .loc 1 1159 6 setp.lt.s32 %r1040,%r1038,0; @ %r1040 bra $L75; cvt.s64.s32 %r1041,%r1038; add.u64 %r423,%r423,%r1041; setp.le.u64 %r1042,%r425,%r423; @ ! %r1042 bra $L74; bra $L75; $L40: .loc 1 1168 12 sub.u64 %r1046,%r425,%r423; add.u64 %r1047,%r424,%r423; ld.u32 %r1048,[%r427]; st.u32 [%stack],%r1048; cvta.const.u64 %r1045,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1047; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1046; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1045; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1049,[%value_in]; } .loc 1 1170 11 setp.lt.s32 %r1051,%r1049,0; @ %r1051 bra $L75; cvt.s64.s32 %r1052,%r1049; add.u64 %r423,%r423,%r1052; setp.le.u64 %r1053,%r425,%r423; @ ! %r1053 bra $L74; bra $L75; $L68: .loc 1 1173 7 setp.ge.u64 %r1055,%r423,%r1321; @ %r1055 bra $L75; .loc 1 1174 17 add.u64 %r1056,%r424,%r423; mov.u32 %r1057,9; st.u8 [%r1056],%r1057; .loc 1 1174 13 add.u64 %r423,%r423,1; .loc 1 1177 4 bra $L74; $L44: .loc 1 1179 17 sub.u64 %r1061,%r425,%r423; add.u64 %r1062,%r424,%r423; ld.u32 %r1063,[%r427]; st.u32 [%stack+8],%r1063; ld.u32 %r1064,[%r427+4]; st.u32 [%stack+4],%r1064; ld.u32 %r1065,[%r427+8]; st.u32 [%stack],%r1065; cvta.const.u64 %r1060,$LC14; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1062; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1061; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1060; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1066,[%value_in]; } .loc 1 1181 11 setp.lt.s32 %r1068,%r1066,0; @ %r1068 bra $L75; cvt.s64.s32 %r1069,%r1066; add.u64 %r423,%r423,%r1069; setp.le.u64 %r1070,%r425,%r423; @ ! %r1070 bra $L74; bra $L75; $L63: .loc 1 1196 14 setp.ge.u64 %r1072,%r423,%r1321; @ %r1072 bra $L75; .loc 1 1198 24 ld.u32 %r272,[%r427+24]; .loc 1 696 13 add.u64 %r385,%r423,1; .loc 1 696 7 add.u64 %r386,%r424,%r423; .loc 1 1198 18 setp.ne.u32 %r1073,%r272,0; @ %r1073 bra $L126; .loc 1 1199 28 mov.u32 %r1074,55; st.u8 [%r386],%r1074; .loc 1 1199 24 mov.u64 %r423,%r385; bra $L74; $L126: .loc 1 1201 38 mov.u32 %r1075,%r272; cvt.u16.u8 %r1326,%r1075; mov.u16 %r1077,%r1326; add.u16 %r1076,%r1077,48; st.u8 [%r386],%r1076; .loc 1 1201 24 mov.u64 %r423,%r385; bra $L74; $L38: .loc 1 1214 12 sub.u64 %r1081,%r425,%r423; add.u64 %r1082,%r424,%r423; .loc 1 1215 21 ld.u32 %r1084,[%r427+28]; add.u32 %r1083,%r1084,7; .loc 1 1215 25 ld.u32 %r1086,[%r427+24]; sub.u32 %r1085,%r1083,%r1086; .loc 1 1214 12 div.s32 %r1088,%r1085,7; st.u32 [%stack],%r1088; cvta.const.u64 %r1080,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1082; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1081; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1080; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1089,[%value_in]; } .loc 1 1217 11 setp.lt.s32 %r1091,%r1089,0; @ %r1091 bra $L75; cvt.s64.s32 %r1092,%r1089; add.u64 %r423,%r423,%r1092; setp.le.u64 %r1093,%r425,%r423; @ ! %r1093 bra $L74; bra $L75; $L47: ld.u32 %r375,[%r427+20]; ld.u32 %r376,[%r427+24]; ld.u32 %r377,[%r427+28]; .loc 1 1221 19 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r375; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r376; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r377; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1097,[%value_in]; } .loc 1 1222 55 setp.eq.u32 %r1098,%r376,0; @ %r1098 bra $L170; add.u32 %r286,%r376,-1; bra $L127; $L170: mov.u32 %r286,6; $L127: .loc 1 1224 9 setp.gt.s32 %r1099,%r1097,0; @ %r1099 bra $L171; .loc 1 1226 14 setp.ne.u32 %r1100,%r1097,0; @ %r1100 bra $L129; .loc 1 1223 33 add.u32 %r1101,%r377,10; .loc 1 1223 38 sub.u32 %r1102,%r1101,%r286; .loc 1 1223 10 div.s32 %r289,%r1102,7; bra $L128; $L129: .loc 1 1230 27 sub.u32 %r290,%r286,%r377; .loc 1 1231 10 setp.lt.s32 %r1103,%r375,0; selp.u32 %r291,1899,-101,%r1103; add.u32 %r292,%r291,%r375; and.b32 %r1104,%r292,3; setp.ne.u32 %r1105,%r1104,0; @ %r1105 bra $L131; rem.s32 %r1107,%r292,100; setp.ne.u32 %r1113,%r1107,0; @ %r1113 bra $L173; $L131: rem.s32 %r1115,%r292,400; set.u32.eq.u32 %r1122,%r1115,0; neg.s32 %r297,%r1122; bra $L132; $L173: mov.u32 %r297,1; $L132: .loc 1 1231 8 sub.u32 %r1124,%r290,%r297; .loc 1 1230 13 setp.le.s32 %r1125,%r1124,4; selp.u32 %r289,53,52,%r1125; bra $L128; $L171: .loc 1 1225 8 mov.u32 %r289,1; $L128: .loc 1 1240 14 sub.u64 %r1129,%r425,%r423; add.u64 %r1130,%r424,%r423; st.u32 [%stack],%r289; cvta.const.u64 %r1128,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1130; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1129; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1128; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1131,[%value_in]; } .loc 1 1241 13 setp.lt.s32 %r1133,%r1131,0; @ %r1133 bra $L75; cvt.s64.s32 %r1134,%r1131; add.u64 %r423,%r423,%r1134; setp.le.u64 %r1135,%r425,%r423; @ ! %r1135 bra $L74; bra $L75; $L71: .loc 1 1255 7 setp.ge.u64 %r1137,%r423,%r1321; @ %r1137 bra $L75; .loc 1 1256 24 add.u64 %r1138,%r424,%r423; .loc 1 1256 34 ld.u8 %r1326,[%r427+24]; mov.u16 %r1141,%r1326; add.u16 %r1140,%r1141,48; st.u8 [%r1138],%r1140; .loc 1 1256 20 add.u64 %r423,%r423,1; .loc 1 1259 4 bra $L74; $L48: .loc 1 1262 23 ld.u32 %r310,[%r427+24]; .loc 1 1262 55 setp.eq.u32 %r1142,%r310,0; @ %r1142 bra $L175; add.u32 %r311,%r310,-1; bra $L133; $L175: mov.u32 %r311,6; $L133: .loc 1 1269 14 sub.u64 %r1146,%r425,%r423; add.u64 %r1147,%r424,%r423; .loc 1 1263 29 ld.u32 %r1149,[%r427+28]; add.u32 %r1148,%r1149,7; .loc 1 1263 33 sub.u32 %r1150,%r1148,%r311; .loc 1 1263 11 div.s32 %r1152,%r1150,7; .loc 1 1269 14 st.u32 [%stack],%r1152; cvta.const.u64 %r1145,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1147; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1146; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1145; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1153,[%value_in]; } .loc 1 1270 13 setp.lt.s32 %r1155,%r1153,0; @ %r1155 bra $L75; cvt.s64.s32 %r1156,%r1153; add.u64 %r423,%r423,%r1156; setp.le.u64 %r1157,%r425,%r423; @ ! %r1157 bra $L74; bra $L75; $L69: .loc 1 1284 21 ld.u32 %r320,[%r427+20]; .loc 1 1285 9 setp.lt.s32 %r1158,%r320,0; @ %r1158 bra $L134; rem.s32 %r321,%r320,100; bra $L135; $L134: .loc 1 1285 11 add.u32 %r1160,%r320,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r1160; call (%value_in),abs,(%out_arg1); ld.param.u32 %r1161,[%value_in]; } .loc 1 1285 9 rem.s32 %r321,%r1161,100; $L135: .loc 1 1291 13 sub.u64 %r1165,%r425,%r423; add.u64 %r1166,%r424,%r423; st.u32 [%stack],%r321; cvta.const.u64 %r1164,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1166; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1165; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1164; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1167,[%value_in]; } .loc 1 1294 15 setp.lt.s32 %r1169,%r1167,0; @ %r1169 bra $L75; cvt.s64.s32 %r1170,%r1167; add.u64 %r423,%r423,%r1170; setp.le.u64 %r1171,%r425,%r423; @ ! %r1171 bra $L74; bra $L75; $L46: .loc 1 1308 24 ld.u32 %r328,[%r427+20]; .loc 1 1312 11 setp.ge.s32 %r1172,%r328,-1900; @ %r1172 bra $L136; .loc 1 1314 12 mov.u32 %r1173,45; st.u8 [%frame],%r1173; .loc 1 1315 10 mov.u32 %r1174,-1900; sub.u32 %r379,%r1174,%r328; .loc 1 1322 11 setp.ne.u64 %r1175,%r35,0; @ %r1175 bra $L137; .loc 1 1314 9 mov.u64 %r381,%r1323; bra $L138; $L136: .loc 1 1310 26 add.u32 %r379,%r328,1900; .loc 1 1317 21 cvt.u16.u32 %r1177,%r79; set.u32.eq.u16 %r1178,%r1177,43; neg.s32 %r1179,%r1178; mov.u32 %r1176,%r1179; .loc 1 1317 40 set.u32.gt.u32 %r1181,%r379,9999; neg.s32 %r1182,%r1181; mov.u32 %r1180,%r1182; .loc 1 1317 32 cvt.u16.u8 %r1326,%r1176; mov.u16 %r1184,%r1326; cvt.u16.u8 %r1326,%r1180; mov.u16 %r1185,%r1326; and.b16 %r1183,%r1184,%r1185; cvt.u32.u16 %r1186,%r1183; .loc 1 1317 16 cvt.u16.u8 %r1187,%r1186; setp.eq.u16 %r1188,%r1187,0; @ %r1188 bra $L176; .loc 1 1319 12 mov.u32 %r1189,43; st.u8 [%frame],%r1189; .loc 1 1322 11 setp.eq.u64 %r1190,%r35,0; @ %r1190 bra $L139; $L137: .loc 1 1323 3 add.u64 %r35,%r35,-1; mov.u64 %r381,%r1323; bra $L138; $L176: .loc 1 1307 26 mov.u64 %r381,%frame; $L138: .loc 1 1324 15 mov.u32 %r1191,37; st.u8 [%r381],%r1191; .loc 1 1325 11 setp.ne.u32 %r1192,%r79,0; @ %r1192 bra $L140; .loc 1 1324 12 add.u64 %r333,%r381,1; bra $L141; $L140: .loc 1 1326 7 add.u64 %r333,%r381,2; .loc 1 1326 10 mov.u32 %r1193,48; st.u8 [%r381+1],%r1193; $L141: .loc 1 1327 8 cvta.const.u64 %r1195,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r333; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1195; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r1196,[%value_in]; } .loc 1 1328 14 sub.u64 %r1200,%r425,%r423; add.u64 %r1201,%r424,%r423; st.u32 [%stack+8],%r379; st.u64 [%stack],%r35; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1200; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1202,[%value_in]; } .loc 1 1330 8 setp.lt.s32 %r1204,%r1202,0; @ %r1204 bra $L142; cvt.s64.s32 %r1205,%r1202; add.u64 %r423,%r423,%r1205; setp.gt.u64 %r1206,%r425,%r423; @ %r1206 bra $L74; $L142: mov.u64 %r423,0; bra $L11; $L73: .loc 1 1334 14 ld.u32 %r1207,[%r427+32]; setp.lt.s32 %r1208,%r1207,0; @ %r1208 bra $L144; .loc 1 1338 8 { call __tz_lock; } .loc 1 1339 11 setp.ne.u32 %r1209,%r118,0; @ %r1209 bra $L145; .loc 1 1341 5 { call _tzset_unlocked; } $L145: .loc 1 1356 28 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r1210,[%value_in]; } .loc 1 1360 47 ld.u32 %r1212,[%r427+32]; set.u32.gt.s32 %r1213,%r1212,0; neg.s32 %r1214,%r1213; .loc 1 1360 51 cvt.s64.s32 %r1215,%r1214; shl.b64 %r1217,%r1215,2; add.u64 %r1218,%r1217,%r1215; shl.b64 %r1219,%r1218,3; add.u64 %r1220,%r1210,%r1219; .loc 1 1360 15 ld.u64 %r1222,[%r1220+40]; neg.s64 %r344,%r1222; .loc 1 1362 8 { call __tz_unlock; } .loc 1 1365 10 div.s64 %r1225,%r344,60; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1225; call (%value_in),labs,(%out_arg1); ld.param.u64 %r1226,[%value_in]; } .loc 1 1363 14 sub.u64 %r1230,%r425,%r423; add.u64 %r1231,%r424,%r423; rem.s64 %r1233,%r1226,60; st.u64 [%stack+8],%r1233; div.s64 %r1235,%r344,3600; st.u64 [%stack],%r1235; cvta.const.u64 %r1229,$LC15; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1231; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1229; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1236,[%value_in]; } .loc 1 1366 15 setp.lt.s32 %r1238,%r1236,0; @ %r1238 bra $L75; cvt.s64.s32 %r1239,%r1236; add.u64 %r423,%r423,%r1239; setp.le.u64 %r1240,%r425,%r423; @ %r1240 bra $L75; mov.u32 %r118,1; bra $L74; $L22: .loc 1 1370 7 ld.u32 %r1241,[%r427+32]; setp.lt.s32 %r1242,%r1241,0; @ %r1242 bra $L144; .loc 1 1375 8 { call __tz_lock; } .loc 1 1376 11 setp.ne.u32 %r1243,%r118,0; @ %r1243 bra $L146; .loc 1 1378 5 { call _tzset_unlocked; } $L146: .loc 1 1389 9 cvta.global.u64 %r1244,_tzname; .loc 1 1389 35 ld.u32 %r1246,[%r427+32]; set.u32.gt.s32 %r1247,%r1246,0; neg.s32 %r1248,%r1247; .loc 1 1389 9 cvt.s64.s32 %r1249,%r1248; shl.b64 %r1250,%r1249,3; add.u64 %r1251,%r1244,%r1250; ld.u64 %r357,[%r1251]; .loc 1 1394 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r357; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r1253,[%value_in]; } .loc 1 1395 22 setp.ne.u64 %r1254,%r1253,0; @ %r1254 bra $L147; mov.u64 %r380,%r423; bra $L148; $L150: .loc 1 1397 8 setp.ge.u64 %r1255,%r360,%r1321; @ %r1255 bra $L149; $L151: .loc 1 1398 14 add.u64 %r360,%r360,1; .loc 1 1398 25 sub.u64 %r1256,%r360,%r423; add.u64 %r1257,%r357,%r1256; .loc 1 1398 18 add.u64 %r1258,%r424,%r360; ld.u8 %r1259,[%r1257+-1]; st.u8 [%r1258+-1],%r1259; .loc 1 1395 22 setp.ne.u64 %r1260,%r360,%r380; @ %r1260 bra $L150; bra $L148; $L149: .loc 1 1401 9 { call __tz_unlock; } .loc 1 1402 16 mov.u64 %r423,0; bra $L11; $L147: .loc 1 1397 8 setp.ge.u64 %r1261,%r423,%r1321; @ %r1261 bra $L149; add.u64 %r380,%r423,%r1253; mov.u64 %r360,%r423; bra $L151; $L148: .loc 1 1405 8 { call __tz_unlock; } mov.u64 %r423,%r380; mov.u32 %r118,1; bra $L74; $L30: .loc 1 1409 7 setp.ge.u64 %r1263,%r423,%r1321; @ %r1263 bra $L75; .loc 1 1410 17 add.u64 %r1264,%r424,%r423; mov.u32 %r1265,37; st.u8 [%r1264],%r1265; .loc 1 1410 13 add.u64 %r423,%r423,1; $L74: .loc 1 1417 10 ld.u8 %r1267,[%r32]; cvt.s16.s8 %r1266,%r1267; setp.eq.u16 %r1268,%r1266,0; @ %r1268 bra $L16; $L144: .loc 1 1418 8 add.u64 %r426,%r32,1; .loc 1 693 13 bra $L12; $L16: .loc 1 1422 6 setp.eq.u64 %r1269,%r425,0; @ %r1269 bra $L11; .loc 1 1423 14 add.u64 %r1270,%r424,%r423; mov.u32 %r1271,0; st.u8 [%r1270],%r1271; bra $L11; $L160: .loc 1 747 7 mov.u64 %r423,0; bra $L11; $L225: .loc 1 1000 13 mov.u32 %r1273,37; st.u8 [%frame+1],%r1273; mov.u64 %r378,%r1323; bra $L115; $L224: .loc 1 977 11 add.u32 %r47,%r804,%r140; .loc 1 978 9 setp.eq.u32 %r1274,%r47,-1; @ ! %r1274 bra $L110; bra $L153; $L139: .loc 1 1324 15 mov.u32 %r1275,37; st.u8 [%frame+1],%r1275; .loc 1 1319 9 mov.u64 %r381,%r1323; bra $L140; $L86: .loc 1 866 19 set.u32.gt.s32 %r1277,%r76,99; neg.s32 %r1278,%r1277; mov.u32 %r1276,%r1278; .loc 1 866 33 cvt.u16.u32 %r1280,%r79; set.u32.eq.u16 %r1281,%r1280,43; neg.s32 %r1282,%r1281; mov.u32 %r1279,%r1282; .loc 1 866 26 cvt.u16.u8 %r1326,%r1276; mov.u16 %r1284,%r1326; cvt.u16.u8 %r1326,%r1279; mov.u16 %r1285,%r1326; and.b16 %r1283,%r1284,%r1285; cvt.u32.u16 %r1286,%r1283; .loc 1 866 10 cvt.u16.u8 %r1287,%r1286; setp.ne.u16 %r1288,%r1287,0; @ ! %r1288 bra $L154; bra $L177; $L61: .loc 1 1034 18 ld.u32 %r65,[%r427+8]; .loc 1 1034 33 set.u32.ne.u32 %r1290,%r65,0; neg.s32 %r1291,%r1290; mov.u32 %r1289,%r1291; set.u32.ne.u32 %r1293,%r65,12; neg.s32 %r1294,%r1293; mov.u32 %r1292,%r1294; cvt.u16.u8 %r1326,%r1289; mov.u16 %r1296,%r1326; cvt.u16.u8 %r1326,%r1292; mov.u16 %r1297,%r1326; and.b16 %r1295,%r1296,%r1297; cvt.u32.u16 %r1298,%r1295; .loc 1 1035 11 cvt.u16.u8 %r1299,%r1298; setp.ne.u16 %r1300,%r1299,0; @ %r1300 bra $L155; mov.u32 %r163,12; .loc 1 1041 14 cvta.const.u64 %r166,$LC6; bra $L119; $L37: .loc 1 1034 18 ld.u32 %r65,[%r427+8]; .loc 1 1034 33 set.u32.ne.u32 %r1302,%r65,0; neg.s32 %r1303,%r1302; mov.u32 %r1301,%r1303; set.u32.ne.u32 %r1305,%r65,12; neg.s32 %r1306,%r1305; mov.u32 %r1304,%r1306; cvt.u16.u8 %r1326,%r1301; mov.u16 %r1308,%r1326; cvt.u16.u8 %r1326,%r1304; mov.u16 %r1309,%r1326; and.b16 %r1307,%r1308,%r1309; cvt.u32.u16 %r1310,%r1307; .loc 1 1035 11 cvt.u16.u8 %r1311,%r1310; setp.ne.u16 %r1312,%r1311,0; @ %r1312 bra $L155; mov.u32 %r163,12; .loc 1 1041 14 cvta.const.u64 %r166,$LC5; bra $L119; $L36: .loc 1 1024 11 ld.u32 %r361,[%r427+8]; .loc 1 1022 10 cvta.const.u64 %r159,$LC5; bra $L156; $L58: .loc 1 1024 11 ld.u32 %r361,[%r427+8]; .loc 1 1022 10 cvta.const.u64 %r159,$LC6; bra $L156; $L158: .loc 1 990 38 mad.lo.u32 %r393,%r137,100,%r394; bra $L157; $L108: .loc 1 977 11 add.u32 %r394,%r140,-1; .loc 1 978 9 setp.ne.u32 %r1314,%r140,0; @ %r1314 bra $L158; .loc 1 981 3 add.u32 %r1315,%r137,-1; .loc 1 990 38 mad.lo.u32 %r393,%r1315,100,99; bra $L157; $L11: .loc 1 1426 1 mov.u64 %value,%r423; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strftime .visible .func (.param .u64 %value_out) strftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1445 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 1448 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strftime_l .visible .func (.param .u64 %value_out) strftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1465 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 1467 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strlcat.o/0 0 0 644 2773 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlcat .visible .func (.param .u64 %value_out) strlcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strlcat.c" // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: strlcat .visible .func (.param .u64 %value_out) strlcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .u64 %r49; .reg .pred %r50; .reg .u16 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; .loc 1 55 25 setp.eq.u64 %r41,%r40,0; @ %r41 bra $L11; add.u64 %r31,%r38,%r40; .loc 1 49 24 mov.u64 %r26,%r38; bra $L3; $L5: .loc 1 56 18 add.u64 %r26,%r26,1; .loc 1 55 25 setp.eq.u64 %r42,%r26,%r31; @ %r42 bra $L4; $L3: ld.u8 %r44,[%r26]; cvt.s16.s8 %r43,%r44; setp.ne.u16 %r45,%r43,0; @ %r45 bra $L5; $L4: .loc 1 57 18 sub.u64 %r37,%r26,%r38; .loc 1 58 11 sub.u64 %r27,%r40,%r37; .loc 1 60 12 setp.eq.u64 %r46,%r40,%r37; @ %r46 bra $L2; .loc 1 62 16 ld.s8 %r25,[%r39]; .loc 1 62 19 setp.ne.u32 %r47,%r25,0; @ %r47 bra $L13; bra $L7; $L11: .loc 1 57 14 mov.u64 %r37,%r40; $L2: .loc 1 61 31 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r49,[%value_in]; } .loc 1 61 29 add.u64 %r37,%r37,%r49; bra $L1; $L13: .loc 1 62 19 mov.u64 %r29,%r39; $L6: .loc 1 63 20 setp.ne.u64 %r50,%r27,1; @ %r50 bra $L9; .loc 1 67 18 add.u64 %r32,%r29,1; .loc 1 62 19 ld.u8 %r52,[%r29+1]; cvt.s16.s8 %r51,%r52; setp.ne.u16 %r53,%r51,0; @ %r53 bra $L10; .loc 1 71 26 sub.u64 %r54,%r32,%r39; .loc 1 71 21 add.u64 %r37,%r37,%r54; bra $L7; $L9: .loc 1 64 30 cvt.u32.u32 %r55,%r25; st.u8 [%r26],%r55; .loc 1 65 26 add.u64 %r27,%r27,-1; mov.u64 %r32,%r29; .loc 1 64 27 add.u64 %r26,%r26,1; $L10: .loc 1 67 18 add.u64 %r29,%r32,1; .loc 1 62 16 ld.s8 %r25,[%r32+1]; .loc 1 62 19 setp.ne.u32 %r56,%r25,0; @ %r56 bra $L6; .loc 1 71 26 sub.u64 %r57,%r29,%r39; .loc 1 71 21 add.u64 %r37,%r37,%r57; $L7: .loc 1 69 12 mov.u32 %r58,0; st.u8 [%r26],%r58; $L1: .loc 1 72 1 mov.u64 %value,%r37; st.param.u64 [%value_out],%value; ret; } lib_a-strlcpy.o/0 0 0 644 2024 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlcpy .visible .func (.param .u64 %value_out) strlcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strlcpy.c" // BEGIN GLOBAL FUNCTION DEF: strlcpy .visible .func (.param .u64 %value_out) strlcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; .loc 1 52 12 setp.eq.u64 %r41,%r40,0; @ %r41 bra $L7; .loc 1 52 20 add.u64 %r29,%r40,-1; setp.eq.u64 %r42,%r40,1; @ %r42 bra $L8; mov.u64 %r32,%r38; mov.u64 %r30,%r39; .loc 1 56 30 add.u64 %r53,%r39,%r29; $L5: mov.u64 %r27,%r30; add.u64 %r30,%r30,1; mov.u64 %r26,%r30; mov.u64 %r36,%r32; add.u64 %r32,%r32,1; mov.u64 %r38,%r32; .loc 1 54 37 ld.s8 %r22,[%r27]; .loc 1 54 35 cvt.u32.u32 %r43,%r22; st.u8 [%r36],%r43; .loc 1 54 28 setp.eq.u32 %r44,%r22,0; @ %r44 bra $L4; .loc 1 56 30 setp.ne.u64 %r46,%r30,%r53; @ %r46 bra $L5; bra $L3; $L7: .loc 1 48 30 mov.u64 %r26,%r39; $L2: mov.u64 %r34,%r26; $L6: add.u64 %r34,%r34,1; mov.u64 %r26,%r34; .loc 1 63 24 ld.u8 %r48,[%r34+-1]; cvt.s16.s8 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L6; $L4: .loc 1 67 18 sub.u64 %r51,%r26,%r39; .loc 1 67 24 add.u64 %r50,%r51,-1; bra $L14; $L8: .loc 1 48 30 mov.u64 %r26,%r39; $L3: .loc 1 62 28 mov.u32 %r52,0; st.u8 [%r38],%r52; bra $L2; $L14: .loc 1 68 1 mov.u64 %value,%r50; st.param.u64 [%value_out],%value; ret; } lib_a-strlen.o/ 0 0 0 644 2087 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlen .visible .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/strlen.c" // BEGIN GLOBAL FUNCTION DEF: strlen .visible .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u32 %r65; .reg .pred %r66; mov.u64 %r43,%ar0; .loc 1 60 10 and.b64 %r44,%r43,7; setp.eq.u64 %r45,%r44,0; @ %r45 bra $L10; mov.u64 %r33,%r43; $L5: .loc 1 62 10 ld.u8 %r47,[%r33]; cvt.s16.s8 %r46,%r47; setp.ne.u16 %r48,%r46,0; @ %r48 bra $L3; .loc 1 63 13 sub.u64 %r42,%r33,%r43; bra $L1; $L3: .loc 1 64 10 add.u64 %r33,%r33,1; .loc 1 60 10 and.b64 %r49,%r33,7; setp.ne.u64 %r50,%r49,0; @ %r50 bra $L5; bra $L2; $L10: mov.u64 %r33,%r43; $L2: .loc 1 70 11 ld.u64 %r32,[%r33]; add.u64 %r51,%r32,-72340172838076673; not.b64 %r52,%r32; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 70 10 setp.ne.u64 %r55,%r54,0; @ %r55 bra $L6; $L7: .loc 1 71 17 add.u64 %r33,%r33,8; .loc 1 70 11 ld.u64 %r25,[%r33]; add.u64 %r56,%r25,-72340172838076673; not.b64 %r57,%r25; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 70 10 setp.eq.u64 %r60,%r59,0; @ %r60 bra $L7; $L6: .loc 1 79 10 ld.u8 %r62,[%r33]; cvt.s16.s8 %r61,%r62; setp.eq.u16 %r63,%r61,0; @ %r63 bra $L8; $L9: .loc 1 80 8 add.u64 %r33,%r33,1; .loc 1 79 10 ld.u8 %r65,[%r33]; cvt.s16.s8 %r64,%r65; setp.ne.u16 %r66,%r64,0; @ %r66 bra $L9; $L8: .loc 1 81 14 sub.u64 %r42,%r33,%r43; $L1: .loc 1 82 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } lib_a-strlwr.o/ 0 0 0 644 1451 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlwr .visible .func (.param .u64 %value_out) strlwr (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/strlwr.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strlwr .visible .func (.param .u64 %value_out) strlwr (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .pred %r31; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r36; .reg .u16 %r39; .reg .u16 %r41; .reg .pred %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u16 %r49; mov.u64 %r30,%ar0; .loc 1 35 11 ld.u8 %r26,[%r30]; .loc 1 35 16 setp.ne.u32 %r31,%r26,0; @ ! %r31 bra $L7; mov.u64 %r28,%r30; cvta.const.u64 %r48,_ctype_+1; $L2: .loc 1 37 14 cvt.u32.u32 %r34,%r26; cvt.u64.u8 %r33,%r34; add.u64 %r36,%r48,%r33; ld.u8 %r49,[%r36]; mov.u16 %r39,%r49; and.b16 %r41,%r39,3; setp.ne.u16 %r42,%r41,1; @ %r42 bra $L3; .loc 1 37 12 cvt.u16.u32 %r44,%r26; add.u16 %r43,%r44,32; cvt.u32.u16 %r45,%r43; cvt.u32.u8 %r26,%r45; $L3: cvt.u32.u32 %r46,%r26; st.u8 [%r28],%r46; .loc 1 35 28 add.u64 %r28,%r28,1; .loc 1 35 11 ld.u8 %r26,[%r28]; .loc 1 35 16 setp.ne.u32 %r47,%r26,0; @ %r47 bra $L2; $L7: .loc 1 40 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /1310 0 0 0 644 2141 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncasecmp .visible .func (.param .u32 %value_out) strncasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strncasecmp.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strncasecmp .visible .func (.param .u32 %value_out) strncasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r49; .reg .u16 %r52; .reg .u16 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r59; .reg .u16 %r62; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .pred %r67; .reg .pred %r68; .reg .u64 %r70; .reg .u16 %r71; mov.u64 %r42,%ar0; mov.u64 %r43,%ar1; mov.u64 %r44,%ar2; .loc 1 45 13 setp.eq.u64 %r45,%r44,0; @ %r45 bra $L6; mov.u64 %r40,%r42; mov.u64 %r39,%r43; add.u64 %r37,%r40,%r44; cvta.const.u64 %r70,_ctype_+1; $L5: .loc 1 47 22 ld.s8 %r30,[%r40]; cvt.u32.u32 %r47,%r30; cvt.s64.s8 %r46,%r47; add.u64 %r49,%r70,%r46; ld.u8 %r71,[%r49]; mov.u16 %r52,%r71; and.b16 %r54,%r52,3; setp.ne.u16 %r55,%r54,1; @ %r55 bra $L3; add.u32 %r30,%r30,32; $L3: .loc 1 48 22 ld.s8 %r31,[%r39]; cvt.u32.u32 %r57,%r31; cvt.s64.s8 %r56,%r57; add.u64 %r59,%r70,%r56; ld.u8 %r71,[%r59]; mov.u16 %r62,%r71; and.b16 %r64,%r62,3; setp.ne.u16 %r65,%r64,1; @ %r65 bra $L4; add.u32 %r31,%r31,32; $L4: .loc 1 49 15 sub.u32 %r41,%r30,%r31; .loc 1 49 10 setp.ne.u32 %r66,%r30,%r31; @ %r66 bra $L1; .loc 1 49 32 setp.eq.u32 %r67,%r31,0; @ %r67 bra $L1; .loc 1 45 13 add.u64 %r40,%r40,1; add.u64 %r39,%r39,1; setp.ne.u64 %r68,%r37,%r40; @ %r68 bra $L5; bra $L1; $L6: mov.u32 %r41,0; $L1: .loc 1 53 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } lib_a-strncat.o/0 0 0 644 2641 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncat .visible .func (.param .u64 %value_out) strncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strncat.c" // BEGIN GLOBAL FUNCTION DEF: strncat .visible .func (.param .u64 %value_out) strncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u16 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .pred %r71; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 81 7 and.b64 %r49,%r46,7; .loc 1 81 6 setp.ne.u64 %r50,%r49,0; @ %r50 bra $L11; .loc 1 84 15 ld.u64 %r30,[%r46]; not.b64 %r51,%r30; add.u64 %r52,%r30,-72340172838076673; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 84 14 setp.eq.u64 %r55,%r54,0; @ %r55 bra $L12; mov.u64 %r35,%r46; bra $L2; $L11: mov.u64 %r35,%r46; $L2: .loc 1 90 10 ld.u8 %r57,[%r35]; cvt.s16.s8 %r56,%r57; setp.ne.u16 %r58,%r56,0; @ %r58 bra $L4; bra $L5; $L12: .loc 1 84 14 mov.u64 %r35,%r46; $L3: .loc 1 85 12 add.u64 %r35,%r35,8; .loc 1 84 15 ld.u64 %r24,[%r35]; add.u64 %r59,%r24,-72340172838076673; not.b64 %r60,%r24; and.b64 %r61,%r59,%r60; and.b64 %r62,%r61,-9187201950435737472; .loc 1 84 14 setp.eq.u64 %r63,%r62,0; @ %r63 bra $L3; bra $L2; $L4: .loc 1 91 7 add.u64 %r35,%r35,1; .loc 1 90 10 ld.u8 %r65,[%r35]; cvt.s16.s8 %r64,%r65; setp.ne.u16 %r66,%r64,0; @ %r66 bra $L4; bra $L5; $L9: .loc 1 101 10 add.u64 %r33,%r33,1; setp.ne.u64 %r67,%r40,%r41; @ %r67 bra $L13; .loc 1 102 6 mov.u32 %r68,0; st.u8 [%r40],%r68; bra $L7; $L5: mov.u64 %r34,%r35; mov.u64 %r33,%r47; add.u64 %r40,%r34,%r48; bra $L6; $L13: mov.u64 %r34,%r41; $L6: .loc 1 99 19 setp.ne.u64 %r69,%r34,%r40; @ ! %r69 bra $L7; add.u64 %r41,%r34,1; .loc 1 99 31 ld.s8 %r31,[%r33]; .loc 1 99 29 cvt.u32.u32 %r70,%r31; st.u8 [%r34],%r70; .loc 1 99 19 setp.ne.u32 %r71,%r31,0; @ %r71 bra $L9; $L7: .loc 1 107 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-strncmp.o/0 0 0 644 4020 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncmp .visible .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strncmp.c" // BEGIN GLOBAL FUNCTION DEF: strncmp .visible .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r28; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r38; .reg .u64 %r41; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .pred %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u16 %r106; mov.u64 %r50,%ar0; mov.u64 %r51,%ar1; mov.u64 %r52,%ar2; .loc 1 76 6 setp.eq.u64 %r53,%r52,0; @ %r53 bra $L9; .loc 1 80 8 or.b64 %r54,%r50,%r51; and.b64 %r55,%r54,7; .loc 1 80 6 setp.ne.u64 %r56,%r55,0; @ %r56 bra $L3; .loc 1 85 33 setp.gt.u64 %r57,%r52,7; @ %r57 bra $L4; bra $L3; $L5: .loc 1 87 13 add.u64 %r52,%r52,-8; .loc 1 91 14 setp.eq.u64 %r58,%r52,0; @ %r58 bra $L10; .loc 1 91 25 add.u64 %r59,%r28,-72340172838076673; not.b64 %r60,%r28; and.b64 %r61,%r59,%r60; and.b64 %r62,%r61,-9187201950435737472; .loc 1 91 22 setp.ne.u64 %r63,%r62,0; @ %r63 bra $L11; .loc 1 94 13 add.u64 %r50,%r50,8; .loc 1 95 13 add.u64 %r51,%r51,8; .loc 1 85 33 setp.le.u64 %r64,%r52,7; @ %r64 bra $L3; $L4: .loc 1 85 36 ld.u64 %r28,[%r50]; .loc 1 85 33 ld.u64 %r65,[%r51]; setp.eq.u64 %r66,%r28,%r65; @ %r66 bra $L5; $L3: .loc 1 103 21 ld.s8 %r30,[%r50]; .loc 1 103 28 ld.s8 %r31,[%r51]; .loc 1 103 18 cvt.u16.u32 %r67,%r30; cvt.u16.u32 %r68,%r31; setp.ne.u16 %r69,%r67,%r68; @ %r69 bra $L6; .loc 1 107 10 set.u32.eq.u64 %r71,%r52,1; neg.s32 %r72,%r71; mov.u32 %r70,%r72; .loc 1 107 18 set.u32.eq.u16 %r75,%r67,0; neg.s32 %r76,%r75; mov.u32 %r73,%r76; cvt.u16.u8 %r106,%r70; mov.u16 %r78,%r106; cvt.u16.u8 %r106,%r73; mov.u16 %r79,%r106; or.b16 %r77,%r78,%r79; cvt.u32.u16 %r80,%r77; cvt.u16.u8 %r81,%r80; setp.ne.u16 %r82,%r81,0; @ %r82 bra $L12; mov.u64 %r38,%r50; bra $L7; $L8: sub.u64 %r83,%r52,%r38; add.u64 %r41,%r83,-1; .loc 1 107 10 add.u64 %r84,%r50,%r41; set.u32.eq.u64 %r86,%r84,0; neg.s32 %r87,%r86; mov.u32 %r85,%r87; .loc 1 107 18 set.u32.eq.u16 %r90,%r98,0; neg.s32 %r91,%r90; mov.u32 %r88,%r91; cvt.u16.u8 %r106,%r85; mov.u16 %r93,%r106; cvt.u16.u8 %r106,%r88; mov.u16 %r94,%r106; or.b16 %r92,%r93,%r94; cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r96,%r95; setp.ne.u16 %r97,%r96,0; @ %r97 bra $L13; $L7: .loc 1 109 9 add.u64 %r38,%r38,1; .loc 1 110 9 add.u64 %r51,%r51,1; .loc 1 103 21 ld.s8 %r30,[%r38]; .loc 1 103 28 ld.s8 %r31,[%r51]; .loc 1 103 18 cvt.u16.u32 %r98,%r30; cvt.u16.u32 %r99,%r31; setp.eq.u16 %r100,%r98,%r99; @ %r100 bra $L8; $L6: .loc 1 112 11 cvt.u32.u32 %r102,%r30; cvt.u32.u8 %r101,%r102; .loc 1 112 37 cvt.u32.u32 %r104,%r31; cvt.u32.u8 %r103,%r104; .loc 1 112 34 sub.u32 %r49,%r101,%r103; bra $L1; $L9: .loc 1 77 12 mov.u32 %r49,0; bra $L1; $L10: mov.u32 %r49,0; bra $L1; $L11: mov.u32 %r49,0; bra $L1; $L12: mov.u32 %r49,0; bra $L1; $L13: mov.u32 %r49,0; $L1: .loc 1 114 1 mov.u32 %value,%r49; st.param.u32 [%value_out],%value; ret; } lib_a-strncpy.o/0 0 0 644 2921 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncpy .visible .func (.param .u64 %value_out) strncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strncpy.c" // BEGIN GLOBAL FUNCTION DEF: strncpy .visible .func (.param .u64 %value_out) strncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r37; .reg .u64 %r40; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r78; .reg .u16 %r79; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; mov.u64 %r50,%ar2; .loc 1 89 8 or.b64 %r51,%r48,%r49; and.b64 %r52,%r51,7; .loc 1 89 6 set.u32.eq.u64 %r54,%r52,0; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 89 29 set.u32.gt.u64 %r57,%r50,7; neg.s32 %r58,%r57; mov.u32 %r56,%r58; cvt.u16.u8 %r79,%r53; mov.u16 %r60,%r79; cvt.u16.u8 %r79,%r56; mov.u16 %r61,%r79; and.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L9; mov.u64 %r46,%r48; bra $L3; $L4: .loc 1 98 10 add.u64 %r50,%r50,-8; .loc 1 99 33 add.u64 %r49,%r49,8; add.u64 %r46,%r46,8; mov.u64 %r37,%r46; .loc 1 99 19 st.u64 [%r44],%r24; .loc 1 96 41 setp.le.u64 %r65,%r50,7; @ %r65 bra $L2; $L3: mov.u64 %r44,%r46; .loc 1 96 45 ld.u64 %r24,[%r49]; add.u64 %r66,%r24,-72340172838076673; not.b64 %r67,%r24; and.b64 %r68,%r66,%r67; and.b64 %r69,%r68,-9187201950435737472; .loc 1 96 41 setp.eq.u64 %r70,%r69,0; @ %r70 bra $L4; mov.u64 %r37,%r46; bra $L2; $L8: .loc 1 108 7 add.u64 %r32,%r32,-1; sub.u64 %r40,%r78,%r32; .loc 1 109 21 ld.s8 %r30,[%r31]; .loc 1 109 19 cvt.u32.u32 %r71,%r30; st.u8 [%r33],%r71; .loc 1 109 10 add.u64 %r33,%r33,1; add.u64 %r31,%r31,1; setp.ne.u32 %r72,%r30,0; @ %r72 bra $L5; .loc 1 113 18 setp.ne.u64 %r73,%r32,0; @ ! %r73 bra $L7; .loc 1 114 12 mov.u32 %r75,0; bra $L6; $L9: .loc 1 83 9 mov.u64 %r37,%r48; $L2: mov.u64 %r31,%r49; mov.u64 %r33,%r37; mov.u64 %r32,%r50; add.u64 %r78,%r33,%r32; $L5: .loc 1 106 16 setp.ne.u64 %r74,%r32,0; @ %r74 bra $L8; bra $L7; $L6: .loc 1 114 12 st.u8 [%r40],%r75; .loc 1 113 18 add.u64 %r40,%r40,1; setp.ne.u64 %r76,%r78,%r40; @ %r76 bra $L6; $L7: .loc 1 118 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } lib_a-strnlen.o/0 0 0 644 1190 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strnlen .visible .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strnlen.c" // BEGIN GLOBAL FUNCTION DEF: strnlen .visible .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .pred %r31; .reg .u16 %r32; .reg .u32 %r33; .reg .pred %r34; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 38 18 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L2; mov.u64 %r27,%r29; bra $L1; $L5: .loc 1 39 8 add.u64 %r25,%r25,1; .loc 1 38 18 setp.ne.u64 %r31,%r24,%r25; @ %r31 bra $L4; .loc 1 41 14 sub.u64 %r27,%r24,%r28; bra $L1; $L2: add.u64 %r24,%r28,%r29; .loc 1 38 18 mov.u64 %r25,%r28; $L4: ld.u8 %r33,[%r25]; cvt.s16.s8 %r32,%r33; setp.ne.u16 %r34,%r32,0; @ %r34 bra $L5; .loc 1 41 14 sub.u64 %r27,%r25,%r28; $L1: .loc 1 42 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-strnstr.o/0 0 0 644 2720 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strnstr .visible .func (.param .u64 %value_out) strnstr (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strnstr.c" // BEGIN GLOBAL FUNCTION DECL: strnlen .extern .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memmem .extern .func (.param .u64 %value_out) memmem (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: strnstr .visible .func (.param .u64 %value_out) strnstr (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 43 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r34,[%value_in]; } .loc 1 45 6 setp.gt.u64 %r35,%r31,%r34; @ %r35 bra $L2; .loc 1 45 43 add.u64 %r36,%r30,%r34; .loc 1 45 33 ld.u8 %r38,[%r36]; cvt.s16.s8 %r37,%r38; setp.eq.u16 %r39,%r37,0; @ %r39 bra $L2; $L4: .loc 1 50 10 mov.u64 %r28,0; bra $L1; $L2: .loc 1 46 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r34; call (%value_in),memmem,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r44,[%value_in]; } mov.u64 %r28,%r44; .loc 1 47 8 setp.eq.u64 %r45,%r28,0; @ %r45 bra $L4; .loc 1 47 37 sub.u64 %r49,%r28,%r29; .loc 1 47 15 mov.u32 %r47,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r49; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r50,[%value_in]; } .loc 1 47 11 setp.ne.u64 %r51,%r50,0; @ %r51 bra $L4; $L1: .loc 1 51 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-strpbrk.o/0 0 0 644 1652 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strpbrk .visible .func (.param .u64 %value_out) strpbrk (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strpbrk.c" // BEGIN GLOBAL FUNCTION DEF: strpbrk .visible .func (.param .u64 %value_out) strpbrk (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u16 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .pred %r40; .reg .pred %r41; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 32 8 ld.s8 %r22,[%r28]; .loc 1 32 6 setp.eq.u32 %r30,%r22,0; @ ! %r30 bra $L13; bra $L8; $L9: .loc 1 37 20 mov.u64 %r25,%r29; mov.u32 %r23,%r26; .loc 1 39 7 cvt.u16.u32 %r31,%r22; $L5: cvt.u16.u32 %r32,%r23; setp.eq.u16 %r33,%r31,%r32; @ %r33 bra $L4; .loc 1 37 25 add.u64 %r25,%r25,1; .loc 1 37 20 ld.s8 %r23,[%r25]; setp.ne.u32 %r34,%r23,0; @ %r34 bra $L5; bra $L6; $L13: ld.s8 %r26,[%r29]; setp.ne.u32 %r41,%r26,0; $L7: @ %r41 bra $L9; mov.u64 %r25,%r29; bra $L6; $L4: .loc 1 47 6 ld.u8 %r37,[%r25]; cvt.s16.s8 %r36,%r37; setp.eq.u16 %r38,%r36,0; selp.u64 %r27,0,%r28,%r38; bra $L1; $L8: .loc 1 48 8 mov.u64 %r27,0; bra $L1; $L6: .loc 1 44 9 add.u64 %r28,%r28,1; .loc 1 35 10 ld.s8 %r22,[%r28]; setp.ne.u32 %r40,%r22,0; @ %r40 bra $L7; bra $L4; $L1: .loc 1 51 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } /1331 0 0 0 644 47633 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: match_string .func (.param .u32 %value_out) match_string (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/time/strptime.c" // BEGIN GLOBAL FUNCTION DECL: strptime_l .visible .func (.param .u64 %value_out) strptime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strptime .visible .func (.param .u64 %value_out) strptime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: _C_time_locale .extern .const .align 8 .u64 _C_time_locale[63]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strncasecmp_l .extern .func (.param .u32 %value_out) strncasecmp_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtol_l .extern .func (.param .u64 %value_out) strtol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: strtoll_l .extern .func (.param .u64 %value_out) strtoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: localtime_r .extern .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DEF: tm_year_base .visible .const .align 4 .u32 tm_year_base[1] = {1900 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[9] = {37,89,45,37,109,45,37,100,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[6] = {37,72,58,37,77,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[9] = {37,109,47,37,100,47,37,121,0 }; // BEGIN VAR DEF: _DAYS_BEFORE_MONTH .const .align 4 .u32 _DAYS_BEFORE_MONTH[12] = {0,31,59,90,120,151,181,212,243,273,304,334 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[9] = {37,72,58,37,77,58,37,83,0 }; // BEGIN FUNCTION DEF: match_string .func (.param .u32 %value_out) match_string (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r30; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .pred %r49; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; .loc 1 80 21 ld.u64 %r30,[%r35]; .loc 1 80 25 setp.eq.u64 %r37,%r30,0; @ %r37 bra $L2; .loc 1 80 12 mov.u32 %r33,0; $L5: .loc 1 81 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r39,[%value_in]; } .loc 1 81 6 cvt.u32.u64 %r40,%r39; .loc 1 83 6 cvt.s64.s32 %r24,%r40; ld.u64 %r42,[%r35]; ld.u64 %r41,[%r34]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r36; call (%value_in),strncasecmp_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r45,[%value_in]; } .loc 1 83 5 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L3; .loc 1 84 11 ld.u64 %r48,[%r34]; add.u64 %r47,%r48,%r24; st.u64 [%r34],%r47; .loc 1 85 13 bra $L1; $L3: .loc 1 80 34 add.u32 %r33,%r33,1; add.u64 %r35,%r35,8; .loc 1 80 21 ld.u64 %r30,[%r35]; .loc 1 80 25 setp.ne.u64 %r49,%r30,0; @ %r49 bra $L5; $L2: .loc 1 88 12 mov.u32 %r33,-1; $L1: .loc 1 89 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strptime_l .visible .func (.param .u64 %value_out) strptime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[24]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r27; .reg .u32 %r34; .reg .u64 %r40; .reg .u64 %r51; .reg .u64 %r58; .reg .u64 %r62; .reg .u64 %r66; .reg .u64 %r71; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r81; .reg .u64 %r101; .reg .u64 %r103; .reg .u64 %r110; .reg .u64 %r115; .reg .u64 %r119; .reg .u64 %r123; .reg .u64 %r127; .reg .u64 %r137; .reg .u64 %r141; .reg .u64 %r144; .reg .u64 %r147; .reg .u64 %r151; .reg .u32 %r156; .reg .u32 %r159; .reg .u32 %r161; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r166; .reg .u32 %r170; .reg .u32 %r172; .reg .u32 %r174; .reg .u64 %r177; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .u32 %r186; .reg .u32 %r188; .reg .u64 %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .u32 %r197; .reg .u32 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u32 %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .u64 %r225; .reg .u32 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r235; .reg .u32 %r239; .reg .u32 %r242; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r252; .reg .u32 %r259; .reg .u32 %r262; .reg .u32 %r263; .reg .u32 %r267; .reg .u32 %r268; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r285; .reg .u64 %r288; .reg .u64 %r293; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r297; .reg .pred %r298; .reg .u64 %r299; .reg .u32 %r300; .reg .u64 %r302; .reg .u16 %r305; .reg .u16 %r307; .reg .pred %r308; .reg .u64 %r309; .reg .u64 %r311; .reg .u16 %r314; .reg .u16 %r316; .reg .pred %r317; .reg .u64 %r318; .reg .u64 %r320; .reg .u16 %r323; .reg .u16 %r325; .reg .pred %r326; .reg .u16 %r327; .reg .pred %r328; .reg .pred %r329; .reg .u32 %r330; .reg .u16 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r336; .reg .u32 %r337; .reg .u16 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u32 %r341; .reg .u16 %r342; .reg .pred %r343; .reg .u16 %r344; .reg .pred %r345; .reg .pred %r347; .reg .pred %r349; .reg .pred %r351; .reg .pred %r353; .reg .pred %r355; .reg .pred %r357; .reg .pred %r359; .reg .pred %r360; .reg .pred %r362; .reg .pred %r364; .reg .pred %r366; .reg .pred %r368; .reg .pred %r370; .reg .pred %r372; .reg .pred %r374; .reg .pred %r376; .reg .pred %r378; .reg .pred %r380; .reg .pred %r382; .reg .pred %r384; .reg .pred %r386; .reg .pred %r388; .reg .pred %r390; .reg .pred %r392; .reg .pred %r394; .reg .pred %r396; .reg .pred %r398; .reg .pred %r400; .reg .pred %r402; .reg .pred %r404; .reg .pred %r406; .reg .pred %r408; .reg .pred %r410; .reg .pred %r412; .reg .pred %r414; .reg .pred %r416; .reg .pred %r418; .reg .pred %r420; .reg .pred %r422; .reg .pred %r424; .reg .pred %r426; .reg .pred %r428; .reg .pred %r430; .reg .pred %r432; .reg .pred %r434; .reg .pred %r436; .reg .pred %r438; .reg .pred %r440; .reg .u32 %r446; .reg .pred %r447; .reg .u32 %r453; .reg .pred %r454; .reg .u32 %r460; .reg .pred %r461; .reg .u64 %r463; .reg .u32 %r466; .reg .pred %r467; .reg .u32 %r470; .reg .u64 %r473; .reg .u64 %r474; .reg .u64 %r475; .reg .pred %r476; .reg .u32 %r478; .reg .u64 %r483; .reg .u64 %r484; .reg .u64 %r485; .reg .u64 %r486; .reg .pred %r487; .reg .u64 %r489; .reg .u64 %r492; .reg .u64 %r493; .reg .pred %r494; .reg .u32 %r497; .reg .u64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r503; .reg .u64 %r505; .reg .u64 %r508; .reg .u64 %r509; .reg .pred %r510; .reg .u64 %r511; .reg .pred %r512; .reg .u32 %r515; .reg .u64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .pred %r521; .reg .u32 %r524; .reg .u64 %r527; .reg .u64 %r528; .reg .u64 %r529; .reg .pred %r530; .reg .pred %r531; .reg .u32 %r534; .reg .u64 %r537; .reg .u64 %r538; .reg .u64 %r539; .reg .pred %r540; .reg .u32 %r541; .reg .u32 %r544; .reg .u64 %r547; .reg .u64 %r548; .reg .u64 %r549; .reg .pred %r550; .reg .u32 %r551; .reg .u32 %r554; .reg .u64 %r557; .reg .u64 %r558; .reg .u64 %r559; .reg .pred %r560; .reg .u16 %r561; .reg .u32 %r562; .reg .pred %r563; .reg .u64 %r564; .reg .u32 %r570; .reg .pred %r571; .reg .pred %r572; .reg .pred %r573; .reg .u32 %r574; .reg .u32 %r575; .reg .u64 %r580; .reg .u64 %r581; .reg .u64 %r582; .reg .u64 %r583; .reg .pred %r584; .reg .u64 %r586; .reg .u64 %r589; .reg .u64 %r590; .reg .pred %r591; .reg .u64 %r592; .reg .u64 %r593; .reg .u32 %r594; .reg .u32 %r597; .reg .u64 %r600; .reg .u64 %r601; .reg .u64 %r602; .reg .u64 %r603; .reg .pred %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .pred %r607; .reg .u64 %r608; .reg .pred %r609; .reg .u64 %r612; .reg .pred %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u32 %r618; .reg .u64 %r621; .reg .u64 %r622; .reg .u64 %r623; .reg .pred %r624; .reg .u16 %r625; .reg .u32 %r626; .reg .pred %r627; .reg .u64 %r628; .reg .u64 %r630; .reg .u64 %r633; .reg .u64 %r634; .reg .pred %r635; .reg .u32 %r638; .reg .u64 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .pred %r644; .reg .u32 %r645; .reg .u32 %r648; .reg .u64 %r651; .reg .u64 %r652; .reg .u64 %r653; .reg .pred %r654; .reg .u32 %r657; .reg .u64 %r660; .reg .u64 %r661; .reg .u64 %r662; .reg .pred %r663; .reg .u32 %r664; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .u32 %r669; .reg .pred %r674; .reg .u32 %r676; .reg .pred %r681; .reg .pred %r682; .reg .u32 %r684; .reg .u32 %r686; .reg .u32 %r687; .reg .pred %r688; .reg .u32 %r689; .reg .u32 %r692; .reg .u64 %r695; .reg .u64 %r696; .reg .u64 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u32 %r704; .reg .pred %r709; .reg .u32 %r711; .reg .pred %r716; .reg .pred %r717; .reg .u32 %r718; .reg .pred %r719; .reg .u32 %r720; .reg .u32 %r722; .reg .u32 %r724; .reg .u32 %r725; .reg .u32 %r726; .reg .pred %r727; .reg .u32 %r728; .reg .u32 %r731; .reg .u64 %r734; .reg .u64 %r735; .reg .u64 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u32 %r740; .reg .pred %r741; .reg .u32 %r743; .reg .pred %r748; .reg .u32 %r750; .reg .pred %r755; .reg .pred %r756; .reg .u32 %r757; .reg .u32 %r758; .reg .u32 %r759; .reg .u32 %r761; .reg .u32 %r763; .reg .u32 %r765; .reg .pred %r766; .reg .u32 %r767; .reg .u32 %r769; .reg .u32 %r770; .reg .u64 %r775; .reg .u64 %r776; .reg .u64 %r777; .reg .u64 %r778; .reg .pred %r779; .reg .u64 %r784; .reg .u64 %r785; .reg .u64 %r786; .reg .u64 %r787; .reg .pred %r788; .reg .u32 %r791; .reg .u64 %r794; .reg .u64 %r795; .reg .u64 %r796; .reg .pred %r797; .reg .pred %r798; .reg .u32 %r801; .reg .u64 %r804; .reg .u64 %r805; .reg .u64 %r806; .reg .pred %r807; .reg .u32 %r808; .reg .u16 %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u64 %r812; .reg .u16 %r813; .reg .u32 %r814; .reg .pred %r815; .reg .u16 %r816; .reg .u32 %r817; .reg .u16 %r818; .reg .pred %r819; .reg .u64 %r820; .reg .u16 %r821; .reg .u32 %r822; .reg .u16 %r823; .reg .pred %r824; .reg .u64 %r825; .reg .pred %r826; .reg .u32 %r827; .reg .pred %r828; .reg .u32 %r829; .reg .pred %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u64 %r833; .reg .u64 %r834; .reg .u64 %r835; .reg .u64 %r836; .reg .u32 %r837; .reg .u32 %r838; .reg .u32 %r839; .reg .u32 %r840; .reg .pred %r841; .reg .u32 %r843; .reg .pred %r849; .reg .u32 %r851; .reg .pred %r857; .reg .pred %r858; .reg .u32 %r859; .reg .u32 %r860; .reg .pred %r861; .reg .pred %r862; .reg .u32 %r864; .reg .u32 %r865; .reg .pred %r866; .reg .u32 %r868; .reg .pred %r874; .reg .u32 %r876; .reg .u32 %r883; .reg .u32 %r885; .reg .pred %r886; .reg .pred %r887; .reg .u32 %r888; .reg .pred %r889; .reg .u64 %r890; .reg .u64 %r891; .reg .u64 %r892; .reg .u64 %r893; .reg .u32 %r894; .reg .u32 %r895; .reg .u32 %r896; .reg .u32 %r897; .reg .pred %r898; .reg .u32 %r900; .reg .pred %r906; .reg .u32 %r908; .reg .pred %r914; .reg .pred %r915; .reg .u32 %r916; .reg .pred %r917; .reg .u32 %r918; .reg .pred %r919; .reg .u32 %r920; .reg .pred %r921; .reg .u32 %r923; .reg .pred %r928; .reg .u32 %r930; .reg .pred %r935; .reg .pred %r936; .reg .u32 %r937; .reg .u32 %r938; .reg .u32 %r939; .reg .u64 %r941; .reg .u64 %r944; .reg .u64 %r945; .reg .u64 %r946; .reg .u64 %r947; .reg .u64 %r948; .reg .u64 %r949; .reg .u16 %r951; mov.u64 %r294,%ar0; st.u64 [%frame+16],%r294; mov.u64 %r295,%ar1; mov.u64 %r296,%ar2; mov.u64 %r297,%ar3; .loc 1 164 15 ld.s8 %r186,[%r295]; .loc 1 164 26 setp.eq.u32 %r298,%r186,0; @ %r298 bra $L11; .loc 1 161 9 mov.u32 %r182,0; cvta.const.u64 %r941,_ctype_+1; .loc 1 253 9 add.u64 %r944,%frame,8; .loc 1 292 9 cvta.const.u64 %r945,_C_time_locale+328; add.u64 %r946,%frame,16; .loc 1 184 9 add.u64 %r947,%r945,-136; .loc 1 177 9 add.u64 %r948,%r945,-80; .loc 1 191 9 add.u64 %r949,%r945,-232; $L87: .loc 1 168 6 cvt.u32.u32 %r300,%r186; cvt.u64.u8 %r299,%r300; add.u64 %r302,%r941,%r299; .loc 1 168 5 ld.u8 %r951,[%r302]; mov.u16 %r305,%r951; and.b16 %r307,%r305,8; setp.eq.u16 %r308,%r307,0; @ %r308 bra $L12; .loc 1 169 13 ld.u64 %r194,[%frame+16]; ld.u8 %r309,[%r194]; add.u64 %r311,%r941,%r309; ld.u8 %r951,[%r311]; mov.u16 %r314,%r951; and.b16 %r316,%r314,8; setp.eq.u16 %r317,%r316,0; @ %r317 bra $L109; add.u64 %r288,%r194,1; $L14: .loc 1 170 3 mov.u64 %r27,%r288; st.u64 [%frame+16],%r288; .loc 1 169 13 add.u64 %r288,%r288,1; ld.u8 %r318,[%r27]; add.u64 %r320,%r941,%r318; ld.u8 %r951,[%r320]; mov.u16 %r323,%r951; and.b16 %r325,%r323,8; setp.ne.u16 %r326,%r325,0; @ %r326 bra $L14; mov.u64 %r181,%r295; bra $L13; $L12: .loc 1 171 12 cvt.u16.u32 %r327,%r186; setp.ne.u16 %r328,%r327,37; @ %r328 bra $L15; .loc 1 171 31 ld.s8 %r34,[%r295+1]; .loc 1 171 22 setp.eq.u32 %r329,%r34,0; @ %r329 bra $L15; .loc 1 173 12 cvt.u16.u32 %r331,%r34; set.u32.eq.u16 %r332,%r331,69; neg.s32 %r333,%r332; mov.u32 %r330,%r333; .loc 1 173 24 set.u32.eq.u16 %r336,%r331,79; neg.s32 %r337,%r336; mov.u32 %r334,%r337; .loc 1 173 19 cvt.u16.u8 %r951,%r330; mov.u16 %r339,%r951; cvt.u16.u8 %r951,%r334; mov.u16 %r340,%r951; or.b16 %r338,%r339,%r340; cvt.u32.u16 %r341,%r338; .loc 1 173 9 cvt.u16.u8 %r342,%r341; setp.ne.u16 %r343,%r342,0; @ %r343 bra $L16; .loc 1 172 8 add.u64 %r181,%r295,1; bra $L17; $L16: .loc 1 174 5 add.u64 %r181,%r295,2; ld.s8 %r34,[%r295+2]; $L17: .loc 1 175 6 cvt.u16.u32 %r344,%r34; setp.eq.u16 %r345,%r344,90; @ %r345 bra $L13; setp.gt.s16 %r347,%r344,90; @ %r347 bra $L18; setp.eq.u16 %r349,%r344,77; @ %r349 bra $L19; setp.gt.s16 %r351,%r344,77; @ %r351 bra $L20; setp.eq.u16 %r353,%r344,67; @ %r353 bra $L21; setp.gt.s16 %r355,%r344,67; @ %r355 bra $L22; setp.eq.u16 %r357,%r344,65; @ %r357 bra $L23; setp.gt.s16 %r359,%r344,65; @ %r359 bra $L24; setp.eq.u32 %r360,%r34,0; @ %r360 bra $L25; setp.eq.u16 %r362,%r344,37; @ %r362 bra $L26; bra $L27; $L24: setp.eq.u16 %r364,%r344,66; @ %r364 bra $L28; bra $L27; $L22: setp.eq.u16 %r366,%r344,70; @ %r366 bra $L29; setp.gt.s16 %r368,%r344,70; @ %r368 bra $L30; setp.eq.u16 %r370,%r344,68; @ %r370 bra $L31; bra $L27; $L30: setp.eq.u16 %r372,%r344,72; @ %r372 bra $L32; setp.eq.u16 %r374,%r344,73; @ %r374 bra $L33; bra $L27; $L20: setp.eq.u16 %r376,%r344,86; @ %r376 bra $L34; setp.gt.s16 %r378,%r344,86; @ %r378 bra $L35; setp.eq.u16 %r380,%r344,84; @ %r380 bra $L36; setp.gt.s16 %r382,%r344,84; @ %r382 bra $L37; setp.eq.u16 %r384,%r344,82; @ %r384 bra $L38; setp.eq.u16 %r386,%r344,83; @ %r386 bra $L39; bra $L27; $L37: setp.eq.u16 %r388,%r344,85; @ %r388 bra $L40; bra $L27; $L35: setp.eq.u16 %r390,%r344,88; @ %r390 bra $L41; setp.eq.u16 %r392,%r344,89; @ %r392 bra $L42; setp.eq.u16 %r394,%r344,87; @ %r394 bra $L43; bra $L27; $L18: setp.eq.u16 %r396,%r344,112; @ %r396 bra $L44; setp.gt.s16 %r398,%r344,112; @ %r398 bra $L45; setp.eq.u16 %r400,%r344,106; @ %r400 bra $L46; setp.gt.s16 %r402,%r344,106; @ %r402 bra $L47; setp.eq.u16 %r404,%r344,99; @ %r404 bra $L48; setp.gt.s16 %r406,%r344,99; @ %r406 bra $L49; setp.eq.u16 %r408,%r344,97; @ %r408 bra $L50; setp.eq.u16 %r410,%r344,98; @ %r410 bra $L51; bra $L27; $L49: setp.le.s16 %r412,%r344,101; @ %r412 bra $L52; setp.eq.u16 %r414,%r344,104; @ %r414 bra $L51; bra $L27; $L47: setp.eq.u16 %r416,%r344,109; @ %r416 bra $L53; setp.gt.s16 %r418,%r344,109; @ %r418 bra $L54; setp.eq.u16 %r420,%r344,107; @ %r420 bra $L32; setp.eq.u16 %r422,%r344,108; @ %r422 bra $L33; bra $L27; $L54: setp.eq.u16 %r424,%r344,110; @ %r424 bra $L55; bra $L27; $L45: setp.eq.u16 %r426,%r344,117; @ %r426 bra $L56; setp.gt.s16 %r428,%r344,117; @ %r428 bra $L57; setp.eq.u16 %r430,%r344,115; @ %r430 bra $L58; setp.eq.u16 %r432,%r344,116; @ %r432 bra $L59; setp.eq.u16 %r434,%r344,114; @ %r434 bra $L60; bra $L27; $L57: setp.eq.u16 %r436,%r344,120; @ %r436 bra $L61; setp.eq.u16 %r438,%r344,121; @ %r438 bra $L62; setp.eq.u16 %r440,%r344,119; @ %r440 bra $L63; bra $L27; $L23: .loc 1 177 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r948; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r446,[%value_in]; } .loc 1 178 6 setp.lt.s32 %r447,%r446,0; @ %r447 bra $L68; .loc 1 180 20 st.u32 [%r296+24],%r446; .loc 1 181 7 or.b32 %r182,%r182,8; .loc 1 182 3 bra $L13; $L50: .loc 1 184 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r947; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r453,[%value_in]; } .loc 1 185 6 setp.lt.s32 %r454,%r453,0; @ %r454 bra $L68; .loc 1 187 20 st.u32 [%r296+24],%r453; .loc 1 188 7 or.b32 %r182,%r182,8; .loc 1 189 3 bra $L13; $L28: .loc 1 191 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r949; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r460,[%value_in]; } .loc 1 192 6 setp.lt.s32 %r461,%r460,0; @ %r461 bra $L68; .loc 1 194 19 st.u32 [%r296+16],%r460; .loc 1 195 7 or.b32 %r182,%r182,2; .loc 1 196 3 bra $L13; $L51: .loc 1 199 9 cvta.const.u64 %r463,_C_time_locale; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r463; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r466,[%value_in]; } .loc 1 200 6 setp.lt.s32 %r467,%r466,0; @ %r467 bra $L68; .loc 1 202 19 st.u32 [%r296+16],%r466; .loc 1 203 7 or.b32 %r182,%r182,2; .loc 1 204 3 bra $L13; $L21: .loc 1 206 9 ld.u64 %r473,[%frame+16]; mov.u32 %r470,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r473; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r470; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r474,[%value_in]; } .loc 1 206 7 cvt.u32.u64 %r214,%r474; .loc 1 207 9 ld.u64 %r40,[%frame+8]; .loc 1 207 6 ld.u64 %r475,[%frame+16]; setp.eq.u64 %r476,%r40,%r475; @ %r476 bra $L68; .loc 1 209 34 mad.lo.u32 %r478,%r214,100,-1900; .loc 1 209 20 st.u32 [%r296+20],%r478; .loc 1 210 7 st.u64 [%frame+16],%r40; .loc 1 211 7 or.b32 %r182,%r182,4; .loc 1 212 3 bra $L13; $L48: .loc 1 214 24 cvta.const.u64 %r483,_C_time_locale; .loc 1 214 7 ld.u64 %r484,[%r483+320]; ld.u64 %r485,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r485; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r484; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r486,[%value_in]; } .loc 1 214 5 st.u64 [%frame+8],%r486; .loc 1 215 6 setp.eq.u64 %r487,%r486,0; @ %r487 bra $L68; .loc 1 217 7 st.u64 [%frame+16],%r486; .loc 1 218 7 or.b32 %r182,%r182,15; .loc 1 219 3 bra $L13; $L31: .loc 1 221 7 ld.u64 %r492,[%frame+16]; cvta.const.u64 %r489,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r492; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r489; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r493,[%value_in]; } .loc 1 221 5 st.u64 [%frame+8],%r493; .loc 1 222 6 setp.eq.u64 %r494,%r493,0; @ %r494 bra $L68; .loc 1 224 7 st.u64 [%frame+16],%r493; .loc 1 225 7 or.b32 %r182,%r182,7; .loc 1 226 3 bra $L13; $L52: .loc 1 229 9 ld.u64 %r500,[%frame+16]; mov.u32 %r497,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r500; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r497; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r501,[%value_in]; } .loc 1 229 7 cvt.u32.u64 %r202,%r501; .loc 1 230 9 ld.u64 %r51,[%frame+8]; .loc 1 230 6 ld.u64 %r502,[%frame+16]; setp.eq.u64 %r503,%r51,%r502; @ %r503 bra $L68; .loc 1 232 20 st.u32 [%r296+12],%r202; .loc 1 233 7 st.u64 [%frame+16],%r51; .loc 1 234 7 or.b32 %r182,%r182,1; .loc 1 235 3 bra $L13; $L29: .loc 1 237 7 ld.u64 %r508,[%frame+16]; cvta.const.u64 %r505,$LC1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r508; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r505; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r509,[%value_in]; } .loc 1 237 5 st.u64 [%frame+8],%r509; .loc 1 238 6 setp.eq.u64 %r510,%r509,0; @ %r510 bra $L68; .loc 1 238 17 ld.u64 %r511,[%frame+16]; setp.eq.u64 %r512,%r509,%r511; @ %r512 bra $L68; .loc 1 240 7 st.u64 [%frame+16],%r509; .loc 1 241 7 or.b32 %r182,%r182,7; .loc 1 242 3 bra $L13; $L32: .loc 1 245 9 ld.u64 %r518,[%frame+16]; mov.u32 %r515,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r518; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r515; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r519,[%value_in]; } .loc 1 245 7 cvt.u32.u64 %r213,%r519; .loc 1 246 9 ld.u64 %r58,[%frame+8]; .loc 1 246 6 ld.u64 %r520,[%frame+16]; setp.eq.u64 %r521,%r58,%r520; @ %r521 bra $L68; .loc 1 248 20 st.u32 [%r296+8],%r213; .loc 1 249 7 st.u64 [%frame+16],%r58; .loc 1 250 3 bra $L13; $L33: .loc 1 253 9 ld.u64 %r527,[%frame+16]; mov.u32 %r524,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r527; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r524; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r528,[%value_in]; } .loc 1 253 7 cvt.u32.u64 %r212,%r528; .loc 1 254 9 ld.u64 %r62,[%frame+8]; .loc 1 254 6 ld.u64 %r529,[%frame+16]; setp.eq.u64 %r530,%r62,%r529; @ %r530 bra $L68; .loc 1 256 6 setp.ne.u32 %r531,%r212,12; .loc 1 257 24 selp.u32 %r212,%r212,0,%r531; st.u32 [%r296+8],%r212; .loc 1 260 7 st.u64 [%frame+16],%r62; .loc 1 261 3 bra $L13; $L46: .loc 1 263 9 ld.u64 %r537,[%frame+16]; mov.u32 %r534,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r537; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r534; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r538,[%value_in]; } .loc 1 263 7 cvt.u32.u64 %r201,%r538; .loc 1 264 9 ld.u64 %r66,[%frame+8]; .loc 1 264 6 ld.u64 %r539,[%frame+16]; setp.eq.u64 %r540,%r66,%r539; @ %r540 bra $L68; .loc 1 266 26 add.u32 %r541,%r201,-1; .loc 1 266 20 st.u32 [%r296+28],%r541; .loc 1 267 7 st.u64 [%frame+16],%r66; .loc 1 268 7 or.b32 %r182,%r182,16; .loc 1 269 3 bra $L13; $L53: .loc 1 271 9 ld.u64 %r547,[%frame+16]; mov.u32 %r544,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r547; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r544; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r548,[%value_in]; } .loc 1 271 7 cvt.u32.u64 %r200,%r548; .loc 1 272 9 ld.u64 %r71,[%frame+8]; .loc 1 272 6 ld.u64 %r549,[%frame+16]; setp.eq.u64 %r550,%r71,%r549; @ %r550 bra $L68; .loc 1 274 25 add.u32 %r551,%r200,-1; .loc 1 274 19 st.u32 [%r296+16],%r551; .loc 1 275 7 st.u64 [%frame+16],%r71; .loc 1 276 7 or.b32 %r182,%r182,2; .loc 1 277 3 bra $L13; $L19: .loc 1 279 9 ld.u64 %r557,[%frame+16]; mov.u32 %r554,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r557; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r554; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r558,[%value_in]; } .loc 1 279 7 cvt.u32.u64 %r211,%r558; .loc 1 280 9 ld.u64 %r76,[%frame+8]; .loc 1 280 6 ld.u64 %r559,[%frame+16]; setp.eq.u64 %r560,%r76,%r559; @ %r560 bra $L68; .loc 1 282 19 st.u32 [%r296+4],%r211; .loc 1 283 7 st.u64 [%frame+16],%r76; .loc 1 284 3 bra $L13; $L55: .loc 1 286 7 ld.u64 %r78,[%frame+16]; .loc 1 286 6 ld.u8 %r562,[%r78]; cvt.s16.s8 %r561,%r562; setp.ne.u16 %r563,%r561,10; @ %r563 bra $L68; .loc 1 287 7 add.u64 %r564,%r78,1; st.u64 [%frame+16],%r564; .loc 1 290 3 bra $L13; $L44: .loc 1 292 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r945; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r570,[%value_in]; } .loc 1 293 6 setp.lt.s32 %r571,%r570,0; @ %r571 bra $L68; .loc 1 295 14 ld.u32 %r81,[%r296+8]; .loc 1 295 6 setp.ne.u32 %r572,%r81,0; @ %r572 bra $L66; .loc 1 296 10 setp.ne.u32 %r573,%r570,1; @ %r573 bra $L13; .loc 1 297 21 mov.u32 %r574,12; st.u32 [%r296+8],%r574; bra $L13; $L66: .loc 1 299 24 add.u32 %r575,%r81,12; st.u32 [%r296+8],%r575; bra $L13; $L60: .loc 1 302 24 cvta.const.u64 %r580,_C_time_locale; .loc 1 302 7 ld.u64 %r581,[%r580+456]; ld.u64 %r582,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r582; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r581; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r583,[%value_in]; } .loc 1 302 5 st.u64 [%frame+8],%r583; .loc 1 303 6 setp.eq.u64 %r584,%r583,0; @ %r584 bra $L68; .loc 1 305 7 st.u64 [%frame+16],%r583; .loc 1 306 3 bra $L13; $L38: .loc 1 308 7 ld.u64 %r589,[%frame+16]; cvta.const.u64 %r586,$LC2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r589; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r586; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r590,[%value_in]; } .loc 1 308 5 st.u64 [%frame+8],%r590; .loc 1 309 6 setp.eq.u64 %r591,%r590,0; @ %r591 bra $L68; .loc 1 311 7 st.u64 [%frame+16],%r590; .loc 1 312 3 bra $L13; $L58: .loc 1 319 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r592,[%value_in]; } .loc 1 319 18 ld.u32 %r197,[%r592]; .loc 1 320 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r593,[%value_in]; } .loc 1 320 13 mov.u32 %r594,0; st.u32 [%r593],%r594; .loc 1 321 13 ld.u64 %r600,[%frame+16]; mov.u32 %r597,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r600; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r597; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r601,[%value_in]; } .loc 1 322 9 st.u64 [%frame],%r601; .loc 1 323 10 ld.u64 %r602,[%frame+8]; ld.u64 %r603,[%frame+16]; setp.ne.u64 %r604,%r602,%r603; @ ! %r604 bra $L68; .loc 1 324 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r605,[%value_in]; } .loc 1 324 4 ld.u32 %r606,[%r605]; setp.ne.u32 %r607,%r606,0; @ %r607 bra $L68; .loc 1 325 4 ld.u64 %r608,[%frame]; setp.ne.u64 %r609,%r608,%r601; @ %r609 bra $L68; .loc 1 326 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r296; call (%value_in),localtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r612,[%value_in]; } .loc 1 326 4 setp.ne.u64 %r613,%r612,%r296; @ %r613 bra $L68; .loc 1 328 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r614,[%value_in]; } .loc 1 328 13 st.u32 [%r614],%r197; .loc 1 329 11 ld.u64 %r615,[%frame+8]; st.u64 [%frame+16],%r615; .loc 1 330 11 mov.u32 %r182,31; bra $L13; $L39: .loc 1 334 9 ld.u64 %r621,[%frame+16]; mov.u32 %r618,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r621; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r618; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r622,[%value_in]; } .loc 1 334 7 cvt.u32.u64 %r210,%r622; .loc 1 335 9 ld.u64 %r101,[%frame+8]; .loc 1 335 6 ld.u64 %r623,[%frame+16]; setp.eq.u64 %r624,%r101,%r623; @ %r624 bra $L68; .loc 1 337 19 st.u32 [%r296],%r210; .loc 1 338 7 st.u64 [%frame+16],%r101; .loc 1 339 3 bra $L13; $L59: .loc 1 341 7 ld.u64 %r103,[%frame+16]; .loc 1 341 6 ld.u8 %r626,[%r103]; cvt.s16.s8 %r625,%r626; setp.ne.u16 %r627,%r625,9; @ %r627 bra $L68; .loc 1 342 7 add.u64 %r628,%r103,1; st.u64 [%frame+16],%r628; .loc 1 345 3 bra $L13; $L36: .loc 1 347 7 ld.u64 %r633,[%frame+16]; cvta.const.u64 %r630,$LC3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r633; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r630; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r634,[%value_in]; } .loc 1 347 5 st.u64 [%frame+8],%r634; .loc 1 348 6 setp.eq.u64 %r635,%r634,0; @ %r635 bra $L68; .loc 1 350 7 st.u64 [%frame+16],%r634; .loc 1 351 3 bra $L13; $L56: .loc 1 353 9 ld.u64 %r641,[%frame+16]; mov.u32 %r638,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r641; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r638; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r642,[%value_in]; } .loc 1 353 7 cvt.u32.u64 %r196,%r642; .loc 1 354 9 ld.u64 %r110,[%frame+8]; .loc 1 354 6 ld.u64 %r643,[%frame+16]; setp.eq.u64 %r644,%r110,%r643; @ %r644 bra $L68; .loc 1 356 26 add.u32 %r645,%r196,-1; .loc 1 356 20 st.u32 [%r296+24],%r645; .loc 1 357 7 st.u64 [%frame+16],%r110; .loc 1 358 7 or.b32 %r182,%r182,8; .loc 1 359 3 bra $L13; $L63: .loc 1 361 9 ld.u64 %r651,[%frame+16]; mov.u32 %r648,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r651; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r648; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r652,[%value_in]; } .loc 1 361 7 cvt.u32.u64 %r195,%r652; .loc 1 362 9 ld.u64 %r115,[%frame+8]; .loc 1 362 6 ld.u64 %r653,[%frame+16]; setp.eq.u64 %r654,%r115,%r653; @ %r654 bra $L68; .loc 1 364 20 st.u32 [%r296+24],%r195; .loc 1 365 7 st.u64 [%frame+16],%r115; .loc 1 366 7 or.b32 %r182,%r182,8; .loc 1 367 3 bra $L13; $L40: .loc 1 369 9 ld.u64 %r660,[%frame+16]; mov.u32 %r657,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r660; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r657; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r661,[%value_in]; } .loc 1 369 7 cvt.u32.u64 %r209,%r661; .loc 1 370 9 ld.u64 %r119,[%frame+8]; .loc 1 370 6 ld.u64 %r662,[%frame+16]; setp.eq.u64 %r663,%r119,%r662; @ %r663 bra $L68; .loc 1 97 19 ld.u32 %r664,[%r296+20]; add.u32 %r231,%r664,1899; setp.le.s32 %r665,%r231,1969; @ %r665 bra $L110; .loc 1 95 9 mov.u32 %r235,4; $L73: .loc 1 98 13 add.u32 %r230,%r235,365; .loc 1 70 23 and.b32 %r666,%r231,3; .loc 1 70 28 setp.ne.u32 %r667,%r666,0; @ %r667 bra $L71; rem.s32 %r669,%r231,100; setp.eq.u32 %r674,%r669,0; @ %r674 bra $L72; .loc 1 98 19 add.u32 %r230,%r235,366; bra $L71; $L72: rem.s32 %r676,%r231,400; .loc 1 70 50 setp.ne.u32 %r681,%r676,0; @ %r681 bra $L71; .loc 1 98 19 add.u32 %r230,%r235,366; $L71: .loc 1 98 6 rem.s32 %r235,%r230,7; .loc 1 97 19 add.u32 %r231,%r231,-1; setp.ne.u32 %r682,%r231,1969; @ %r682 bra $L73; bra $L70; $L110: .loc 1 95 9 mov.u32 %r235,4; $L70: .loc 1 112 29 shl.b32 %r684,%r209,3; .loc 1 112 33 ld.u32 %r687,[%r296+24]; vsub.u32.u32.u32.add %r686,%r684,%r209,%r687; .loc 1 112 52 sub.u32 %r229,%r686,%r235; .loc 1 112 22 st.u32 [%r296+28],%r229; .loc 1 113 8 setp.ge.s32 %r688,%r229,0; @ %r688 bra $L74; .loc 1 114 19 st.u32 [%r296+24],%r235; .loc 1 115 19 mov.u32 %r689,0; st.u32 [%r296+28],%r689; $L74: .loc 1 373 7 st.u64 [%frame+16],%r119; .loc 1 374 7 or.b32 %r182,%r182,16; .loc 1 375 3 bra $L13; $L34: .loc 1 377 9 ld.u64 %r695,[%frame+16]; mov.u32 %r692,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r695; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r692; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r696,[%value_in]; } .loc 1 377 7 cvt.u32.u64 %r208,%r696; .loc 1 378 9 ld.u64 %r123,[%frame+8]; .loc 1 378 6 ld.u64 %r697,[%frame+16]; setp.eq.u64 %r698,%r123,%r697; @ %r698 bra $L68; .loc 1 97 19 ld.u32 %r699,[%r296+20]; add.u32 %r248,%r699,1899; setp.le.s32 %r700,%r248,1969; @ %r700 bra $L111; .loc 1 95 9 mov.u32 %r252,4; $L78: .loc 1 98 13 add.u32 %r247,%r252,365; .loc 1 70 23 and.b32 %r701,%r248,3; .loc 1 70 28 setp.ne.u32 %r702,%r701,0; @ %r702 bra $L76; rem.s32 %r704,%r248,100; setp.eq.u32 %r709,%r704,0; @ %r709 bra $L77; .loc 1 98 19 add.u32 %r247,%r252,366; bra $L76; $L77: rem.s32 %r711,%r248,400; .loc 1 70 50 setp.ne.u32 %r716,%r711,0; @ %r716 bra $L76; .loc 1 98 19 add.u32 %r247,%r252,366; $L76: .loc 1 98 6 rem.s32 %r252,%r247,7; .loc 1 97 19 add.u32 %r248,%r248,-1; setp.ne.u32 %r717,%r248,1969; @ %r717 bra $L78; .loc 1 143 61 add.u32 %r718,%r252,6; .loc 1 143 9 rem.s32 %r239,%r718,7; .loc 1 146 8 setp.gt.s32 %r719,%r239,3; .loc 1 147 9 selp.u32 %r242,0,7,%r719; bra $L75; $L111: .loc 1 143 9 mov.u32 %r239,3; .loc 1 147 9 mov.u32 %r242,7; $L75: .loc 1 149 39 add.u32 %r720,%r208,-1; .loc 1 149 44 shl.b32 %r722,%r720,3; .loc 1 149 31 vsub.u32.u32.u32.add %r724,%r722,%r720,%r242; .loc 1 149 48 ld.u32 %r726,[%r296+24]; add.u32 %r725,%r724,%r726; .loc 1 149 67 sub.u32 %r246,%r725,%r239; .loc 1 149 22 st.u32 [%r296+28],%r246; .loc 1 150 8 setp.ge.s32 %r727,%r246,0; @ %r727 bra $L79; .loc 1 151 19 st.u32 [%r296+24],%r239; .loc 1 152 19 mov.u32 %r728,0; st.u32 [%r296+28],%r728; $L79: .loc 1 381 7 st.u64 [%frame+16],%r123; .loc 1 382 7 or.b32 %r182,%r182,16; .loc 1 383 3 bra $L13; $L43: .loc 1 385 9 ld.u64 %r734,[%frame+16]; mov.u32 %r731,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r734; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r731; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r735,[%value_in]; } .loc 1 385 7 cvt.u32.u64 %r206,%r735; .loc 1 386 9 ld.u64 %r127,[%frame+8]; .loc 1 386 6 ld.u64 %r736,[%frame+16]; setp.eq.u64 %r737,%r127,%r736; @ %r737 bra $L68; .loc 1 97 19 ld.u32 %r738,[%r296+20]; add.u32 %r263,%r738,1899; setp.le.s32 %r739,%r263,1969; @ %r739 bra $L113; .loc 1 95 9 mov.u32 %r267,4; $L83: .loc 1 98 13 add.u32 %r262,%r267,365; .loc 1 70 23 and.b32 %r740,%r263,3; .loc 1 70 28 setp.ne.u32 %r741,%r740,0; @ %r741 bra $L81; rem.s32 %r743,%r263,100; setp.eq.u32 %r748,%r743,0; @ %r748 bra $L82; .loc 1 98 19 add.u32 %r262,%r267,366; bra $L81; $L82: rem.s32 %r750,%r263,400; .loc 1 70 50 setp.ne.u32 %r755,%r750,0; @ %r755 bra $L81; .loc 1 98 19 add.u32 %r262,%r267,366; $L81: .loc 1 98 6 rem.s32 %r267,%r262,7; .loc 1 97 19 add.u32 %r263,%r263,-1; setp.ne.u32 %r756,%r263,1969; @ %r756 bra $L83; .loc 1 127 61 add.u32 %r757,%r267,6; .loc 1 127 9 rem.s32 %r285,%r757,7; bra $L80; $L113: .loc 1 97 19 mov.u32 %r285,3; $L80: .loc 1 129 53 ld.u32 %r759,[%r296+24]; add.u32 %r758,%r759,6; .loc 1 129 58 rem.s32 %r761,%r758,7; .loc 1 129 29 shl.b32 %r763,%r206,3; .loc 1 129 33 vsub.u32.u32.u32.add %r765,%r763,%r206,%r761; .loc 1 129 62 sub.u32 %r259,%r765,%r285; .loc 1 129 22 st.u32 [%r296+28],%r259; .loc 1 130 8 setp.ge.s32 %r766,%r259,0; @ %r766 bra $L84; .loc 1 131 27 add.u32 %r767,%r285,1; .loc 1 131 32 rem.s32 %r769,%r767,7; .loc 1 131 19 st.u32 [%r296+24],%r769; .loc 1 132 19 mov.u32 %r770,0; st.u32 [%r296+28],%r770; $L84: .loc 1 389 7 st.u64 [%frame+16],%r127; .loc 1 390 7 or.b32 %r182,%r182,16; .loc 1 391 3 bra $L13; $L61: .loc 1 393 24 cvta.const.u64 %r775,_C_time_locale; .loc 1 393 7 ld.u64 %r776,[%r775+312]; ld.u64 %r777,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r777; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r776; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r778,[%value_in]; } .loc 1 393 5 st.u64 [%frame+8],%r778; .loc 1 394 6 setp.eq.u64 %r779,%r778,0; @ %r779 bra $L68; .loc 1 396 7 st.u64 [%frame+16],%r778; .loc 1 397 7 or.b32 %r182,%r182,7; .loc 1 398 3 bra $L13; $L41: .loc 1 400 24 cvta.const.u64 %r784,_C_time_locale; .loc 1 400 7 ld.u64 %r785,[%r784+304]; ld.u64 %r786,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r786; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r787,[%value_in]; } .loc 1 400 5 st.u64 [%frame+8],%r787; .loc 1 401 6 setp.eq.u64 %r788,%r787,0; @ %r788 bra $L68; .loc 1 403 7 st.u64 [%frame+16],%r787; .loc 1 404 7 bra $L13; $L62: .loc 1 406 9 ld.u64 %r794,[%frame+16]; mov.u32 %r791,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r794; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r791; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r795,[%value_in]; } .loc 1 406 7 cvt.u32.u64 %r183,%r795; .loc 1 407 9 ld.u64 %r137,[%frame+8]; .loc 1 407 6 ld.u64 %r796,[%frame+16]; setp.eq.u64 %r797,%r137,%r796; @ %r797 bra $L68; .loc 1 409 6 setp.gt.s32 %r798,%r183,69; @ %r798 bra $L85; .loc 1 410 30 add.u32 %r183,%r183,100; $L85: st.u32 [%r296+20],%r183; .loc 1 413 7 st.u64 [%frame+16],%r137; .loc 1 414 7 or.b32 %r182,%r182,4; .loc 1 415 3 bra $L13; $L42: .loc 1 417 9 ld.u64 %r804,[%frame+16]; mov.u32 %r801,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r804; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r801; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r805,[%value_in]; } .loc 1 417 7 cvt.u32.u64 %r205,%r805; .loc 1 418 9 ld.u64 %r141,[%frame+8]; .loc 1 418 6 ld.u64 %r806,[%frame+16]; setp.eq.u64 %r807,%r141,%r806; @ %r807 bra $L68; .loc 1 420 26 add.u32 %r808,%r205,-1900; .loc 1 420 20 st.u32 [%r296+20],%r808; .loc 1 421 7 st.u64 [%frame+16],%r141; .loc 1 422 7 or.b32 %r182,%r182,4; .loc 1 423 3 bra $L13; $L25: .loc 1 428 3 add.u64 %r181,%r181,-1; $L26: .loc 1 431 7 ld.u64 %r144,[%frame+16]; .loc 1 431 6 ld.u8 %r810,[%r144]; cvt.s16.s8 %r809,%r810; setp.ne.u16 %r811,%r809,37; @ %r811 bra $L68; .loc 1 432 7 add.u64 %r812,%r144,1; st.u64 [%frame+16],%r812; .loc 1 435 3 bra $L13; $L27: .loc 1 437 7 ld.u64 %r147,[%frame+16]; .loc 1 437 6 ld.u8 %r814,[%r147]; cvt.s16.s8 %r813,%r814; setp.eq.u16 %r815,%r813,37; @ %r815 bra $L114; .loc 1 287 7 add.u64 %r225,%r147,1; .loc 1 437 19 st.u64 [%frame+16],%r225; ld.u8 %r817,[%r147+1]; cvt.s16.s8 %r816,%r817; cvt.u16.u32 %r818,%r34; setp.ne.u16 %r819,%r816,%r818; @ ! %r819 bra $L86; bra $L68; $L114: mov.u64 %r225,%r147; $L86: .loc 1 438 7 add.u64 %r820,%r225,1; st.u64 [%frame+16],%r820; .loc 1 441 3 bra $L13; $L15: .loc 1 444 10 ld.u64 %r151,[%frame+16]; .loc 1 444 9 ld.u8 %r822,[%r151]; cvt.s16.s8 %r821,%r822; cvt.u16.u32 %r823,%r186; setp.ne.u16 %r824,%r821,%r823; @ %r824 bra $L68; .loc 1 445 3 add.u64 %r825,%r151,1; st.u64 [%frame+16],%r825; mov.u64 %r181,%r295; bra $L13; $L109: .loc 1 169 13 mov.u64 %r181,%r295; $L13: .loc 1 164 35 add.u64 %r295,%r181,1; .loc 1 164 15 ld.s8 %r186,[%r181+1]; .loc 1 164 26 setp.ne.u32 %r826,%r186,0; @ %r826 bra $L87; bra $L178; $L68: .loc 1 179 14 mov.u64 %r293,0; bra $L10; $L178: .loc 1 451 14 and.b32 %r827,%r182,7; .loc 1 451 8 setp.eq.u32 %r828,%r827,7; @ %r828 bra $L90; .loc 1 496 14 and.b32 %r273,%r182,28; .loc 1 466 19 and.b32 %r829,%r182,20; .loc 1 466 13 setp.eq.u32 %r830,%r829,20; @ ! %r830 bra $L92; bra $L91; $L90: .loc 1 454 12 and.b32 %r831,%r182,16; .loc 1 454 5 setp.eq.u32 %r832,%r831,0; @ %r832 bra $L93; .loc 1 496 14 and.b32 %r273,%r182,28; bra $L92; $L93: .loc 1 456 51 ld.u32 %r156,[%r296+16]; .loc 1 456 43 cvta.const.u64 %r833,_DAYS_BEFORE_MONTH; cvt.s64.s32 %r834,%r156; shl.b64 %r835,%r834,2; add.u64 %r836,%r833,%r835; .loc 1 457 3 ld.u32 %r837,[%r836]; ld.u32 %r838,[%r296+12]; add.u32 %r159,%r837,%r838; .loc 1 456 23 st.u32 [%r296+28],%r159; .loc 1 458 11 ld.u32 %r839,[%r296+20]; add.u32 %r161,%r839,1900; .loc 1 70 23 and.b32 %r840,%r839,3; .loc 1 70 28 setp.ne.u32 %r841,%r840,0; @ %r841 bra $L94; rem.s32 %r843,%r161,100; setp.ne.u32 %r849,%r843,0; @ %r849 bra $L95; rem.s32 %r851,%r161,400; .loc 1 70 50 setp.ne.u32 %r857,%r851,0; @ %r857 bra $L94; $L95: .loc 1 459 3 setp.gt.s32 %r858,%r156,1; @ %r858 bra $L96; $L94: .loc 1 461 19 add.u32 %r859,%r159,-1; st.u32 [%r296+28],%r859; $L96: .loc 1 496 14 and.b32 %r860,%r182,28; or.b32 %r273,%r860,16; bra $L92; $L91: .loc 1 469 12 and.b32 %r163,%r182,2; .loc 1 469 5 setp.ne.u32 %r861,%r163,0; @ %r861 bra $L97; .loc 1 471 17 ld.u32 %r164,[%r296+28]; .loc 1 471 9 setp.gt.s32 %r862,%r164,30; @ %r862 bra $L98; .loc 1 472 19 st.u32 [%r296+16],%r163; bra $L97; $L98: .loc 1 474 14 ld.u32 %r864,[%r296+20]; add.u32 %r166,%r864,1900; .loc 1 70 23 and.b32 %r865,%r864,3; .loc 1 70 28 setp.ne.u32 %r866,%r865,0; @ %r866 bra $L99; rem.s32 %r868,%r166,100; setp.ne.u32 %r874,%r868,0; @ %r874 bra $L115; .loc 1 70 50 rem.s32 %r876,%r166,400; set.u32.eq.u32 %r883,%r876,0; neg.s32 %r163,%r883; bra $L99; $L115: .loc 1 70 28 mov.u32 %r163,1; $L99: cvta.const.u64 %r177,_DAYS_BEFORE_MONTH+12; mov.u32 %r275,59; .loc 1 476 10 mov.u32 %r188,2; $L102: .loc 1 477 52 add.u32 %r885,%r163,%r275; .loc 1 477 10 setp.lt.s32 %r886,%r164,%r885; @ %r886 bra $L100; .loc 1 476 23 add.u32 %r188,%r188,1; .loc 1 476 17 setp.eq.u32 %r887,%r188,12; @ %r887 bra $L116; .loc 1 477 48 ld.u32 %r275,[%r177]; add.u64 %r177,%r177,4; bra $L102; $L100: .loc 1 480 23 add.u32 %r274,%r188,-1; bra $L101; $L116: mov.u32 %r274,11; $L101: .loc 1 480 19 st.u32 [%r296+16],%r274; $L97: .loc 1 484 12 and.b32 %r888,%r182,1; .loc 1 484 5 setp.ne.u32 %r889,%r888,0; @ %r889 bra $L92; .loc 1 487 31 ld.u32 %r170,[%r296+16]; .loc 1 487 23 cvta.const.u64 %r890,_DAYS_BEFORE_MONTH; cvt.s64.s32 %r891,%r170; shl.b64 %r892,%r891,2; add.u64 %r893,%r890,%r892; .loc 1 487 3 ld.u32 %r894,[%r296+28]; ld.u32 %r895,[%r893]; sub.u32 %r172,%r894,%r895; .loc 1 486 23 st.u32 [%r296+12],%r172; .loc 1 488 11 ld.u32 %r896,[%r296+20]; add.u32 %r174,%r896,1900; .loc 1 70 23 and.b32 %r897,%r896,3; .loc 1 70 28 setp.ne.u32 %r898,%r897,0; @ %r898 bra $L103; rem.s32 %r900,%r174,100; setp.ne.u32 %r906,%r900,0; @ %r906 bra $L104; rem.s32 %r908,%r174,400; .loc 1 70 50 setp.ne.u32 %r914,%r908,0; @ %r914 bra $L103; $L104: .loc 1 489 3 setp.gt.s32 %r915,%r170,1; @ %r915 bra $L92; $L103: .loc 1 491 19 add.u32 %r916,%r172,1; st.u32 [%r296+12],%r916; $L92: .loc 1 496 8 setp.ne.u32 %r917,%r273,20; @ %r917 bra $L11; .loc 1 97 19 ld.u32 %r918,[%r296+20]; add.u32 %r268,%r918,1899; setp.le.s32 %r919,%r268,1969; @ %r919 bra $L117; .loc 1 95 9 mov.u32 %r272,4; $L108: .loc 1 98 13 add.u32 %r207,%r272,365; .loc 1 70 23 and.b32 %r920,%r268,3; .loc 1 70 28 setp.ne.u32 %r921,%r920,0; @ %r921 bra $L106; rem.s32 %r923,%r268,100; setp.eq.u32 %r928,%r923,0; @ %r928 bra $L107; .loc 1 98 19 add.u32 %r207,%r272,366; bra $L106; $L107: rem.s32 %r930,%r268,400; .loc 1 70 50 setp.ne.u32 %r935,%r930,0; @ %r935 bra $L106; .loc 1 98 19 add.u32 %r207,%r272,366; $L106: .loc 1 98 6 rem.s32 %r272,%r207,7; .loc 1 97 19 add.u32 %r268,%r268,-1; setp.ne.u32 %r936,%r268,1969; @ %r936 bra $L108; bra $L105; $L117: .loc 1 95 9 mov.u32 %r272,4; $L105: .loc 1 499 27 ld.u32 %r938,[%r296+28]; add.u32 %r937,%r272,%r938; .loc 1 499 47 rem.s32 %r939,%r937,7; .loc 1 499 19 st.u32 [%r296+24],%r939; $L11: .loc 1 502 12 ld.u64 %r293,[%frame+16]; $L10: .loc 1 503 1 mov.u64 %value,%r293; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strptime .visible .func (.param .u64 %value_out) strptime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 508 10 cvta.global.u64 %r29,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 509 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strrchr.o/0 0 0 644 1567 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strrchr .visible .func (.param .u64 %value_out) strrchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/strrchr.c" // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strrchr .visible .func (.param .u64 %value_out) strrchr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .pred %r26; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 38 6 setp.ne.u32 %r26,%r25,0; @ %r26 bra $L6; bra $L7; $L4: .loc 1 43 5 add.u64 %r24,%r29,1; mov.u64 %r23,%r29; bra $L2; $L6: .loc 1 36 15 mov.u64 %r23,0; $L2: .loc 1 40 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r29,[%value_in]; } .loc 1 40 14 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L4; bra $L1; $L7: .loc 1 48 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } mov.u64 %r23,%r33; $L1: .loc 1 52 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strsep.o/ 0 0 0 644 1260 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strsep .visible .func (.param .u64 %value_out) strsep (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strsep.c" // BEGIN GLOBAL FUNCTION DECL: __strtok_r .extern .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: strsep .visible .func (.param .u64 %value_out) strsep (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 17 9 mov.u32 %r29,0; ld.u64 %r26,[%r24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),__strtok_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 18 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /1349 0 0 0 644 8914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: strsignal .visible .func (.param .u64 %value_out) strsignal (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/string/strsignal.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: siprintf .extern .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {72,97,110,103,117,112,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[10] = {73,110,116,101,114,114,117,112,116,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[5] = {81,117,105,116,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[20] = {73,108,108,101,103,97,108,32,105,110,115,116,114,117,99,116,105,111,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[22] = {84,114,97,99,101,47,98,114,101,97,107,112,111,105,110,116,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[9] = {73,79,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[9] = {69,77,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[25] = {70,108,111,97,116,105,110,103,32,112,111,105,110,116,32,101,120,99,101,112,116,105,111,110,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[7] = {75,105,108,108,101,100,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[10] = {66,117,115,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[19] = {83,101,103,109,101,110,116,97,116,105,111,110,32,102,97,117,108,116,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[16] = {66,97,100,32,115,121,115,116,101,109,32,99,97,108,108,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[12] = {65,108,97,114,109,32,99,108,111,99,107,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[11] = {84,101,114,109,105,110,97,116,101,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[21] = {85,114,103,101,110,116,32,73,47,79,32,99,111,110,100,105,116,105,111,110,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[17] = {83,116,111,112,112,101,100,32,40,115,105,103,110,97,108,41,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[8] = {83,116,111,112,112,101,100,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[10] = {67,111,110,116,105,110,117,101,100,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[13] = {67,104,105,108,100,32,101,120,105,116,101,100,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[18] = {85,110,107,110,111,119,110,32,115,105,103,110,97,108,32,37,100,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[20] = {83,116,111,112,112,101,100,32,40,116,116,121,32,105,110,112,117,116,41,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[13] = {73,47,79,32,112,111,115,115,105,98,108,101,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[15] = {87,105,110,100,111,119,32,99,104,97,110,103,101,100,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[22] = {85,115,101,114,32,100,101,102,105,110,101,100,32,115,105,103,110,97,108,32,49,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[22] = {85,115,101,114,32,100,101,102,105,110,101,100,32,115,105,103,110,97,108,32,50,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[24] = {67,80,85,32,116,105,109,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[25] = {70,105,108,101,32,115,105,122,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[22] = {86,105,114,116,117,97,108,32,116,105,109,101,114,32,101,120,112,105,114,101,100,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[24] = {80,114,111,102,105,108,105,110,103,32,116,105,109,101,114,32,101,120,112,105,114,101,100,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[14] = {82,101,115,111,117,114,99,101,32,108,111,115,116,0 }; // BEGIN GLOBAL FUNCTION DEF: strsignal .visible .func (.param .u64 %value_out) strsignal (.param .u32 %in_ar0) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .reg .pred %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r33; .reg .pred %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u32 %r65; mov.u32 %r24,%ar0; .loc 1 73 3 setp.eq.u32 %r25,%r24,16; @ %r25 bra $L11; setp.gt.s32 %r26,%r24,16; @ %r26 bra $L3; setp.eq.u32 %r27,%r24,8; @ %r27 bra $L12; setp.gt.s32 %r28,%r24,8; @ %r28 bra $L4; setp.eq.u32 %r29,%r24,4; @ %r29 bra $L13; setp.gt.s32 %r30,%r24,4; @ %r30 bra $L5; setp.eq.u32 %r31,%r24,2; @ %r31 bra $L14; setp.eq.u32 %r32,%r24,3; @ %r32 bra $L15; setp.eq.u32 %r33,%r24,1; @ %r33 bra $L16; bra $L6; $L5: setp.eq.u32 %r34,%r24,6; @ %r34 bra $L17; setp.eq.u32 %r35,%r24,7; @ %r35 bra $L18; setp.eq.u32 %r36,%r24,5; @ %r36 bra $L19; bra $L6; $L4: setp.eq.u32 %r37,%r24,12; @ %r37 bra $L20; setp.gt.s32 %r38,%r24,12; @ %r38 bra $L7; setp.eq.u32 %r39,%r24,10; @ %r39 bra $L21; setp.eq.u32 %r40,%r24,11; @ %r40 bra $L22; setp.eq.u32 %r41,%r24,9; @ %r41 bra $L23; bra $L6; $L7: setp.eq.u32 %r42,%r24,14; @ %r42 bra $L24; setp.eq.u32 %r43,%r24,15; @ %r43 bra $L25; setp.eq.u32 %r44,%r24,13; @ %r44 bra $L26; bra $L6; $L3: setp.eq.u32 %r45,%r24,25; @ %r45 bra $L27; setp.gt.s32 %r46,%r24,25; @ %r46 bra $L8; setp.eq.u32 %r47,%r24,20; @ %r47 bra $L28; setp.gt.s32 %r48,%r24,20; @ %r48 bra $L9; setp.eq.u32 %r49,%r24,18; @ %r49 bra $L29; setp.eq.u32 %r50,%r24,19; @ %r50 bra $L30; setp.eq.u32 %r51,%r24,17; @ %r51 bra $L31; bra $L6; $L9: setp.eq.u32 %r52,%r24,23; @ %r52 bra $L32; setp.eq.u32 %r53,%r24,24; @ %r53 bra $L33; setp.eq.u32 %r54,%r24,21; @ %r54 bra $L34; bra $L6; $L8: setp.eq.u32 %r55,%r24,29; @ %r55 bra $L35; setp.gt.s32 %r56,%r24,29; @ %r56 bra $L10; setp.eq.u32 %r57,%r24,27; @ %r57 bra $L36; setp.eq.u32 %r58,%r24,28; @ %r58 bra $L37; setp.eq.u32 %r59,%r24,26; @ %r59 bra $L38; bra $L6; $L10: setp.eq.u32 %r60,%r24,30; @ %r60 bra $L39; setp.eq.u32 %r61,%r24,31; @ %r61 bra $L40; $L6: .loc 1 64 10 ld.global.u64 %r62,[_impure_ptr]; add.u64 %r23,%r62,288; .loc 1 244 7 st.u32 [%stack],%r24; cvta.const.u64 %r64,$LC30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r65,[%value_in]; } .loc 1 245 7 bra $L1; $L11: .loc 1 154 14 cvta.const.u64 %r23,$LC15; bra $L1; $L12: .loc 1 114 14 cvta.const.u64 %r23,$LC7; bra $L1; $L13: .loc 1 91 14 cvta.const.u64 %r23,$LC3; bra $L1; $L14: .loc 1 73 3 cvta.const.u64 %r23,$LC1; bra $L1; $L15: .loc 1 86 14 cvta.const.u64 %r23,$LC2; bra $L1; $L16: .loc 1 76 14 cvta.const.u64 %r23,$LC0; bra $L1; $L17: .loc 1 104 14 cvta.const.u64 %r23,$LC5; bra $L1; $L18: .loc 1 109 14 cvta.const.u64 %r23,$LC6; bra $L1; $L19: .loc 1 96 14 cvta.const.u64 %r23,$LC4; bra $L1; $L20: .loc 1 134 14 cvta.const.u64 %r23,$LC11; bra $L1; $L21: .loc 1 124 14 cvta.const.u64 %r23,$LC9; bra $L1; $L22: .loc 1 129 14 cvta.const.u64 %r23,$LC10; bra $L1; $L23: .loc 1 119 14 cvta.const.u64 %r23,$LC8; bra $L1; $L24: .loc 1 144 14 cvta.const.u64 %r23,$LC13; bra $L1; $L25: .loc 1 149 14 cvta.const.u64 %r23,$LC14; bra $L1; $L26: .loc 1 139 14 cvta.const.u64 %r23,$LC12; bra $L1; $L27: .loc 1 225 14 cvta.const.u64 %r23,$LC26; bra $L1; $L28: .loc 1 177 14 cvta.const.u64 %r23,$LC19; bra $L1; $L29: .loc 1 164 14 cvta.const.u64 %r23,$LC17; bra $L1; $L30: .loc 1 169 14 cvta.const.u64 %r23,$LC18; bra $L1; $L31: .loc 1 159 14 cvta.const.u64 %r23,$LC16; bra $L1; $L32: .loc 1 195 14 cvta.const.u64 %r23,$LC21; bra $L1; $L33: .loc 1 220 14 cvta.const.u64 %r23,$LC25; bra $L1; $L34: .loc 1 182 14 cvta.const.u64 %r23,$LC20; bra $L1; $L35: .loc 1 240 14 cvta.const.u64 %r23,$LC29; bra $L1; $L36: .loc 1 235 14 cvta.const.u64 %r23,$LC28; bra $L1; $L37: .loc 1 200 14 cvta.const.u64 %r23,$LC22; bra $L1; $L38: .loc 1 230 14 cvta.const.u64 %r23,$LC27; bra $L1; $L39: .loc 1 205 14 cvta.const.u64 %r23,$LC23; bra $L1; $L40: .loc 1 210 14 cvta.const.u64 %r23,$LC24; $L1: .loc 1 249 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strspn.o/ 0 0 0 644 1569 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strspn .visible .func (.param .u64 %value_out) strspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strspn.c" // BEGIN GLOBAL FUNCTION DEF: strspn .visible .func (.param .u64 %value_out) strspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r40; .reg .pred %r41; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 39 10 ld.s8 %r25,[%r31]; setp.ne.u32 %r33,%r25,0; @ %r33 bra $L2; mov.u64 %r30,0; bra $L1; $L7: .loc 1 41 20 mov.u64 %r26,%r32; mov.u32 %r24,%r22; .loc 1 43 7 cvt.u16.u32 %r35,%r25; $L5: cvt.u16.u32 %r34,%r24; setp.eq.u16 %r36,%r34,%r35; @ %r36 bra $L4; .loc 1 41 25 add.u64 %r26,%r26,1; .loc 1 41 20 ld.s8 %r24,[%r26]; setp.ne.u32 %r37,%r24,0; @ %r37 bra $L5; .loc 1 51 13 sub.u64 %r30,%r27,%r31; bra $L1; $L2: .loc 1 41 20 ld.s8 %r22,[%r32]; mov.u64 %r27,%r31; setp.ne.u32 %r41,%r22,0; $L6: @ %r41 bra $L7; .loc 1 51 13 sub.u64 %r30,%r27,%r31; bra $L1; $L4: .loc 1 48 9 add.u64 %r27,%r27,1; .loc 1 39 10 ld.s8 %r25,[%r27]; setp.ne.u32 %r40,%r25,0; @ %r40 bra $L6; .loc 1 51 13 sub.u64 %r30,%r27,%r31; $L1: .loc 1 52 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strstr.o/ 0 0 0 644 22228 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: two_way_long_needle .func (.param .u64 %value_out) two_way_long_needle (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/string/str-two-way.h" // BEGIN GLOBAL FUNCTION DECL: strstr .visible .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 2 "../../../../../newlib/libc/string/strstr.c" // BEGIN GLOBAL FUNCTION DECL: memcmp .extern .func (.param .u32 %value_out) memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strnlen .extern .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DEF: two_way_long_needle .func (.param .u64 %value_out) two_way_long_needle (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[2048]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r44; .reg .u64 %r53; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r69; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r81; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r110; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .pred %r131; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .pred %r142; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u64 %r162; .reg .pred %r163; .reg .u64 %r165; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .pred %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u32 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .u16 %r179; .reg .u32 %r180; .reg .u16 %r181; .reg .pred %r182; .reg .pred %r183; .reg .pred %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u16 %r188; .reg .u16 %r189; .reg .pred %r190; .reg .pred %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u16 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .u64 %r198; .reg .pred %r199; .reg .u64 %r200; .reg .pred %r201; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r207; .reg .pred %r208; .reg .u64 %r209; .reg .u64 %r210; .reg .u64 %r212; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r216; .reg .pred %r217; .reg .pred %r218; .reg .pred %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u16 %r223; .reg .u16 %r224; .reg .pred %r225; .reg .pred %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u16 %r230; .reg .u16 %r231; .reg .pred %r232; .reg .u64 %r233; .reg .pred %r234; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .pred %r241; .reg .pred %r243; .reg .u64 %r244; .reg .pred %r246; .reg .u64 %r247; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r255; .reg .u16 %r256; mov.u64 %r121,%ar0; mov.u64 %r122,%ar1; mov.u64 %r123,%ar2; mov.u64 %r124,%ar3; .loc 1 115 16 setp.le.u64 %r125,%r124,1; @ %r125 bra $L45; .loc 1 113 5 mov.u64 %r110,0; .loc 1 114 9 mov.u64 %r36,1; .loc 1 114 5 mov.u64 %r65,%r36; .loc 1 112 14 mov.u64 %r37,-1; .loc 1 115 12 mov.u64 %r81,%r36; $L7: .loc 1 117 9 add.u64 %r126,%r123,%r81; .loc 1 118 9 add.u64 %r127,%r123,%r37; add.u64 %r128,%r127,%r65; .loc 1 119 10 ld.u8 %r129,[%r126]; ld.u8 %r130,[%r128]; setp.ge.u16 %r131,%r129,%r130; @ %r131 bra $L3; .loc 1 124 6 sub.u64 %r36,%r81,%r37; mov.u64 %r110,%r81; .loc 1 123 6 mov.u64 %r65,1; bra $L4; $L3: .loc 1 126 15 setp.ne.u16 %r134,%r129,%r130; @ %r134 bra $L5; .loc 1 129 7 setp.eq.u64 %r135,%r36,%r65; @ %r135 bra $L6; .loc 1 130 6 add.u64 %r65,%r65,1; bra $L4; $L6: .loc 1 133 10 add.u64 %r110,%r110,%r36; .loc 1 134 10 mov.u64 %r65,1; bra $L4; $L5: .loc 1 140 18 mov.u64 %r37,%r110; add.u64 %r110,%r110,1; .loc 1 141 10 mov.u64 %r36,1; .loc 1 141 6 mov.u64 %r65,%r36; $L4: .loc 1 115 12 add.u64 %r81,%r65,%r110; .loc 1 115 16 setp.gt.u64 %r136,%r124,%r81; @ %r136 bra $L7; mov.u64 %r53,0; mov.u64 %r73,1; mov.u64 %r103,%r73; mov.u64 %r104,-1; mov.u64 %r91,%r73; .loc 1 176 10 mov.u64 %r255,%r73; $L12: .loc 1 152 9 add.u64 %r137,%r123,%r91; .loc 1 153 9 add.u64 %r138,%r123,%r103; add.u64 %r139,%r138,%r104; .loc 1 154 10 ld.u8 %r140,[%r137]; ld.u8 %r141,[%r139]; setp.le.u16 %r142,%r140,%r141; @ %r142 bra $L8; .loc 1 159 6 sub.u64 %r73,%r91,%r104; mov.u64 %r53,%r91; .loc 1 158 6 mov.u64 %r103,1; bra $L9; $L8: .loc 1 161 15 setp.ne.u16 %r145,%r140,%r141; @ %r145 bra $L10; .loc 1 164 7 setp.eq.u64 %r146,%r73,%r103; @ %r146 bra $L11; .loc 1 165 6 add.u64 %r103,%r103,1; bra $L9; $L11: .loc 1 168 10 add.u64 %r53,%r53,%r73; .loc 1 169 10 mov.u64 %r103,1; bra $L9; $L10: .loc 1 175 22 mov.u64 %r104,%r53; add.u64 %r53,%r53,1; .loc 1 176 10 mov.u64 %r73,%r255; .loc 1 176 6 mov.u64 %r103,1; $L9: .loc 1 150 12 add.u64 %r91,%r53,%r103; .loc 1 150 16 setp.gt.u64 %r147,%r124,%r91; @ %r147 bra $L12; .loc 1 182 22 add.u64 %r119,%r104,1; .loc 1 182 39 add.u64 %r101,%r37,1; .loc 1 182 6 setp.gt.u64 %r148,%r101,%r119; selp.u64 %r36,%r36,%r73,%r148; selp.u64 %r101,%r101,%r119,%r148; bra $L2; $L45: .loc 1 149 9 mov.u64 %r36,1; .loc 1 115 16 mov.u64 %r101,0; $L2: mov.u64 %r61,%frame; add.u64 %r58,%frame,2048; $L13: .loc 1 312 20 st.u64 [%r61],%r124; .loc 1 311 17 add.u64 %r61,%r61,8; setp.ne.u64 %r149,%r58,%r61; @ %r149 bra $L13; add.u64 %r118,%r124,-1; .loc 1 313 17 setp.ne.u64 %r150,%r124,0; @ %r150 bra $L14; $L18: .loc 1 318 32 add.u64 %r154,%r123,%r36; .loc 1 318 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r123; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r154; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r101; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r155,[%value_in]; } .loc 1 318 6 setp.eq.u32 %r156,%r155,0; @ %r156 bra $L46; bra $L62; $L14: add.u64 %r63,%r124,%r123; .loc 1 313 17 mov.u64 %r88,%r123; add.u64 %r251,%r123,%r118; $L17: .loc 1 314 44 ld.u8 %r158,[%r88]; shl.b64 %r159,%r158,3; add.u64 %r160,%frame,%r159; sub.u64 %r162,%r251,%r88; st.u64 [%r160],%r162; .loc 1 313 17 add.u64 %r88,%r88,1; setp.ne.u64 %r163,%r63,%r88; @ %r163 bra $L17; bra $L18; $L46: .loc 1 323 14 mov.u64 %r90,0; .loc 1 325 9 mov.u64 %r106,%r90; .loc 1 353 10 add.u64 %r252,%r101,-1; .loc 1 326 14 or.b64 %r253,%r124,2048; $L15: .loc 1 330 24 add.u64 %r250,%r121,%r106; add.u64 %r165,%r250,%r118; .loc 1 330 10 ld.u8 %r167,[%r165]; shl.b64 %r168,%r167,3; add.u64 %r169,%frame,%r168; ld.u64 %r62,[%r169]; .loc 1 331 7 setp.eq.u64 %r170,%r62,0; @ %r170 bra $L19; .loc 1 333 11 set.u32.ne.u64 %r172,%r90,0; neg.s32 %r173,%r172; mov.u32 %r171,%r173; .loc 1 333 19 set.u32.lt.u64 %r175,%r62,%r36; neg.s32 %r176,%r175; mov.u32 %r174,%r176; cvt.u16.u8 %r256,%r171; mov.u16 %r178,%r256; cvt.u16.u8 %r256,%r174; mov.u16 %r179,%r256; and.b16 %r177,%r178,%r179; cvt.u32.u16 %r180,%r177; cvt.u16.u8 %r181,%r180; setp.eq.u16 %r182,%r181,0; @ %r182 bra $L20; .loc 1 338 11 sub.u64 %r62,%r124,%r36; $L20: .loc 1 341 10 add.u64 %r106,%r106,%r62; .loc 1 340 15 mov.u64 %r90,0; .loc 1 342 8 bra $L21; $L19: .loc 1 346 6 max.u64 %r76,%r101,%r90; .loc 1 347 30 setp.lt.u64 %r183,%r76,%r118; @ %r183 bra $L22; bra $L23; $L24: .loc 1 349 6 add.u64 %r76,%r76,1; .loc 1 347 30 setp.ge.u64 %r184,%r76,%r118; @ %r184 bra $L23; $L22: .loc 1 347 34 add.u64 %r185,%r123,%r76; .loc 1 348 9 add.u64 %r186,%r76,%r106; add.u64 %r187,%r121,%r186; .loc 1 347 30 ld.u8 %r188,[%r185]; ld.u8 %r189,[%r187]; setp.eq.u16 %r190,%r188,%r189; @ %r190 bra $L24; bra $L63; $L27: .loc 1 356 3 add.u64 %r77,%r66,-1; .loc 1 354 30 setp.eq.u64 %r191,%r66,%r90; @ %r191 bra $L47; mov.u64 %r66,%r77; $L43: add.u64 %r100,%r66,1; .loc 1 354 34 add.u64 %r192,%r123,%r66; .loc 1 355 9 add.u64 %r193,%r66,%r106; add.u64 %r194,%r121,%r193; .loc 1 354 30 ld.u8 %r195,[%r192]; ld.u8 %r196,[%r194]; setp.eq.u16 %r197,%r195,%r196; @ %r197 bra $L27; bra $L26; $L47: .loc 1 354 26 mov.u64 %r100,%r90; $L26: .loc 1 357 27 add.u64 %r198,%r90,1; .loc 1 357 11 setp.le.u64 %r199,%r198,%r100; @ %r199 bra $L28; .loc 1 358 10 mov.u64 %r120,%r250; bra $L1; $L28: .loc 1 361 10 add.u64 %r106,%r106,%r36; .loc 1 362 15 sub.u64 %r90,%r124,%r36; $L21: .loc 1 326 14 sub.u64 %r200,%r122,%r124; setp.ge.u64 %r201,%r200,%r106; @ %r201 bra $L15; add.u64 %r205,%r121,%r122; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r205; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r253; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r206,[%value_in]; } add.u64 %r122,%r122,%r206; sub.u64 %r207,%r122,%r124; setp.ge.u64 %r208,%r207,%r106; @ %r208 bra $L15; $L42: .loc 1 409 10 mov.u64 %r120,0; bra $L1; $L62: .loc 1 376 16 sub.u64 %r210,%r124,%r101; max.u64 %r209,%r210,%r101; .loc 1 376 50 add.u64 %r44,%r209,1; .loc 1 377 9 mov.u64 %r34,0; .loc 1 378 14 or.b64 %r254,%r124,2048; $L31: .loc 1 382 24 add.u64 %r249,%r121,%r34; add.u64 %r212,%r249,%r118; .loc 1 382 10 ld.u8 %r214,[%r212]; shl.b64 %r215,%r214,3; add.u64 %r216,%frame,%r215; ld.u64 %r69,[%r216]; .loc 1 383 7 setp.ne.u64 %r217,%r69,0; @ %r217 bra $L32; .loc 1 391 30 setp.lt.u64 %r218,%r101,%r118; @ %r218 bra $L48; bra $L34; $L32: .loc 1 385 10 add.u64 %r34,%r34,%r69; .loc 1 386 8 bra $L35; $L36: .loc 1 393 6 add.u64 %r71,%r71,1; .loc 1 391 30 setp.ge.u64 %r219,%r71,%r118; @ ! %r219 bra $L33; bra $L34; $L48: mov.u64 %r71,%r101; $L33: .loc 1 391 34 add.u64 %r220,%r123,%r71; .loc 1 392 9 add.u64 %r221,%r71,%r34; add.u64 %r222,%r121,%r221; .loc 1 391 30 ld.u8 %r223,[%r220]; ld.u8 %r224,[%r222]; setp.eq.u16 %r225,%r223,%r224; @ %r225 bra $L36; bra $L64; $L39: .loc 1 400 3 add.u64 %r72,%r72,-1; .loc 1 398 29 setp.eq.u64 %r226,%r72,-1; @ %r226 bra $L38; $L44: .loc 1 398 33 add.u64 %r227,%r123,%r72; .loc 1 399 15 add.u64 %r228,%r72,%r34; add.u64 %r229,%r121,%r228; .loc 1 398 29 ld.u8 %r230,[%r227]; ld.u8 %r231,[%r229]; setp.eq.u16 %r232,%r230,%r231; @ %r232 bra $L39; bra $L65; $L35: .loc 1 378 14 sub.u64 %r233,%r122,%r124; setp.le.u64 %r234,%r34,%r233; @ %r234 bra $L31; add.u64 %r238,%r121,%r122; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r238; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r254; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r239,[%value_in]; } add.u64 %r122,%r122,%r239; sub.u64 %r240,%r122,%r124; setp.le.u64 %r241,%r34,%r240; @ %r241 bra $L31; bra $L42; $L23: .loc 1 353 10 mov.u64 %r66,%r252; .loc 1 354 30 setp.gt.u64 %r243,%r101,%r90; @ %r243 bra $L43; mov.u64 %r100,%r101; bra $L26; $L63: sub.u64 %r244,%r106,%r101; add.u64 %r59,%r244,1; .loc 1 366 10 add.u64 %r106,%r59,%r76; .loc 1 367 15 mov.u64 %r90,%r62; bra $L21; $L65: .loc 1 403 10 add.u64 %r34,%r34,%r44; bra $L35; $L38: .loc 1 402 10 mov.u64 %r120,%r249; bra $L1; $L34: .loc 1 397 10 add.u64 %r72,%r101,-1; .loc 1 398 29 setp.ne.u64 %r246,%r101,0; @ %r246 bra $L44; bra $L38; $L64: sub.u64 %r247,%r34,%r101; add.u64 %r105,%r247,1; .loc 1 406 8 add.u64 %r34,%r105,%r71; bra $L35; $L1: .loc 1 410 1 mov.u64 %value,%r120; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strstr .visible .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .local .align 16 .b8 %frame_ar[64]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r35; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .u32 %r62; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r72; .reg .u32 %r75; .reg .u32 %r82; .reg .u32 %r85; .reg .u32 %r99; .reg .u32 %r101; .reg .u32 %r103; .reg .u32 %r105; .reg .u64 %r109; .reg .u32 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .pred %r118; .reg .u64 %r121; .reg .pred %r122; .reg .u32 %r123; .reg .pred %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u16 %r131; .reg .u16 %r132; .reg .u16 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .pred %r136; .reg .pred %r137; .reg .pred %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u16 %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .u32 %r153; .reg .u16 %r154; .reg .pred %r155; .reg .pred %r156; .reg .u16 %r157; .reg .pred %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .pred %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u16 %r171; .reg .u16 %r172; .reg .u16 %r173; .reg .u32 %r174; .reg .u16 %r175; .reg .pred %r176; .reg .pred %r177; .reg .u64 %r179; .reg .u64 %r182; .reg .u64 %r183; .reg .pred %r184; .reg .pred %r185; .reg .u64 %r186; .reg .u64 %r189; .reg .u32 %r190; .reg .u32 %r191; .reg .u64 %r192; .reg .pred %r193; .reg .u32 %r194; .reg .u16 %r196; .reg .u16 %r197; .reg .u32 %r198; .reg .u64 %r199; .reg .u64 %r200; .reg .u32 %r201; .reg .u16 %r202; .reg .u16 %r203; .reg .u32 %r204; .reg .pred %r205; .reg .u64 %r206; .reg .u16 %r208; .reg .u16 %r209; .reg .u32 %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .pred %r213; .reg .u64 %r214; .reg .u16 %r216; .reg .u16 %r217; .reg .u32 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u32 %r224; .reg .pred %r225; .reg .pred %r226; .reg .u16 %r227; .reg .pred %r228; .reg .u64 %r230; .reg .u64 %r231; .reg .pred %r232; .reg .u64 %r237; .reg .u16 %r239; mov.u64 %r115,%ar0; mov.u64 %r116,%ar1; .loc 2 151 9 ld.u8 %r22,[%r116]; .loc 2 151 6 setp.eq.u32 %r117,%r22,0; @ %r117 bra $L86; .loc 2 153 9 ld.u8 %r23,[%r116+1]; .loc 2 153 6 setp.ne.u32 %r118,%r23,0; @ %r118 bra $L68; .loc 2 154 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r22; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r121,[%value_in]; } mov.u64 %r114,%r121; bra $L66; $L68: .loc 2 155 9 ld.u8 %r25,[%r116+2]; .loc 2 155 6 setp.ne.u32 %r122,%r25,0; @ %r122 bra $L69; .loc 2 103 24 shl.b32 %r123,%r22,16; .loc 2 103 31 or.b32 %r62,%r123,%r23; .loc 2 106 10 ld.u8 %r68,[%r115]; .loc 2 106 28 setp.ne.u32 %r124,%r68,0; @ %r124 bra $L87; $L71: .loc 2 108 36 mov.u64 %r114,0; bra $L66; $L87: .loc 2 104 12 mov.u32 %r66,%r25; $L70: .loc 2 107 16 shl.b32 %r64,%r66,16; .loc 2 107 10 or.b32 %r66,%r68,%r64; mov.u64 %r109,%r115; .loc 2 106 41 add.u64 %r115,%r115,1; ld.u8 %r68,[%r115]; .loc 2 106 22 set.u32.ne.u32 %r126,%r62,%r66; neg.s32 %r127,%r126; mov.u32 %r125,%r127; .loc 2 106 33 set.u32.ne.u32 %r129,%r68,0; neg.s32 %r130,%r129; mov.u32 %r128,%r130; .loc 2 106 28 cvt.u16.u8 %r239,%r125; mov.u16 %r132,%r239; cvt.u16.u8 %r239,%r128; mov.u16 %r133,%r239; and.b16 %r131,%r132,%r133; cvt.u32.u16 %r134,%r131; cvt.u16.u8 %r135,%r134; setp.ne.u16 %r136,%r135,0; @ %r136 bra $L70; .loc 2 108 36 setp.ne.u32 %r137,%r62,%r66; @ %r137 bra $L71; add.u64 %r114,%r109,-1; bra $L66; $L69: .loc 2 157 9 ld.u8 %r26,[%r116+3]; .loc 2 157 6 setp.ne.u32 %r138,%r26,0; @ %r138 bra $L72; .loc 2 114 24 shl.b32 %r139,%r22,24; .loc 2 114 40 shl.b32 %r140,%r23,16; .loc 2 114 31 or.b32 %r141,%r139,%r140; .loc 2 114 56 shl.b32 %r142,%r25,8; .loc 2 114 47 or.b32 %r82,%r141,%r142; .loc 2 117 10 ld.u8 %r75,[%r115]; .loc 2 117 28 setp.eq.u32 %r143,%r75,0; @ %r143 bra $L71; .loc 2 115 12 mov.u32 %r72,%r26; $L73: .loc 2 118 16 or.b32 %r85,%r75,%r72; .loc 2 118 10 shl.b32 %r72,%r85,8; mov.u64 %r113,%r115; .loc 2 117 41 add.u64 %r115,%r115,1; ld.u8 %r75,[%r115]; .loc 2 117 22 set.u32.ne.u32 %r145,%r82,%r72; neg.s32 %r146,%r145; mov.u32 %r144,%r146; .loc 2 117 33 set.u32.ne.u32 %r148,%r75,0; neg.s32 %r149,%r148; mov.u32 %r147,%r149; .loc 2 117 28 cvt.u16.u8 %r239,%r144; mov.u16 %r151,%r239; cvt.u16.u8 %r239,%r147; mov.u16 %r152,%r239; and.b16 %r150,%r151,%r152; cvt.u32.u16 %r153,%r150; cvt.u16.u8 %r154,%r153; setp.ne.u16 %r155,%r154,0; @ %r155 bra $L73; .loc 2 119 36 setp.ne.u32 %r156,%r82,%r72; @ %r156 bra $L71; add.u64 %r114,%r113,-2; bra $L66; $L72: .loc 2 159 6 ld.u8 %r157,[%r116+4]; setp.ne.u16 %r158,%r157,0; @ %r158 bra $L74; .loc 2 125 24 shl.b32 %r159,%r22,24; .loc 2 125 40 shl.b32 %r160,%r23,16; .loc 2 125 31 or.b32 %r161,%r159,%r160; .loc 2 125 62 or.b32 %r162,%r161,%r26; .loc 2 125 56 shl.b32 %r163,%r25,8; .loc 2 125 62 or.b32 %r99,%r162,%r163; .loc 2 128 10 ld.u8 %r105,[%r115]; .loc 2 128 26 setp.eq.u32 %r164,%r105,0; @ %r164 bra $L71; .loc 2 126 12 mov.u32 %r103,0; $L75: .loc 2 129 14 shl.b32 %r101,%r103,8; .loc 2 129 8 or.b32 %r103,%r105,%r101; mov.u64 %r35,%r115; .loc 2 128 41 add.u64 %r115,%r115,1; ld.u8 %r105,[%r115]; .loc 2 128 21 set.u32.ne.u32 %r166,%r105,0; neg.s32 %r167,%r166; mov.u32 %r165,%r167; .loc 2 128 32 set.u32.ne.u32 %r169,%r99,%r103; neg.s32 %r170,%r169; mov.u32 %r168,%r170; .loc 2 128 26 cvt.u16.u8 %r239,%r165; mov.u16 %r172,%r239; cvt.u16.u8 %r239,%r168; mov.u16 %r173,%r239; and.b16 %r171,%r172,%r173; cvt.u32.u16 %r174,%r171; cvt.u16.u8 %r175,%r174; setp.ne.u16 %r176,%r175,0; @ %r176 bra $L75; .loc 2 130 36 setp.ne.u32 %r177,%r99,%r103; @ %r177 bra $L71; add.u64 %r114,%r35,-3; bra $L66; $L74: .loc 2 162 19 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r179,[%value_in]; } .loc 2 163 19 or.b64 %r182,%r179,512; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r182; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r183,[%value_in]; } .loc 2 166 6 setp.gt.u64 %r184,%r179,%r183; @ %r184 bra $L71; .loc 2 170 6 setp.gt.u64 %r185,%r179,254; @ %r185 bra $L76; .loc 2 173 46 sub.u64 %r186,%r183,%r179; .loc 2 173 28 add.u64 %r47,%r115,%r186; .loc 2 176 29 cvt.u32.u64 %r190,%r179; add.u32 %r191,%r190,1; .loc 2 176 7 mov.u64 %r189,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r191; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r189; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r192,[%value_in]; } .loc 2 177 21 setp.ne.u64 %r193,%r179,0; @ %r193 bra $L77; $L80: .loc 2 126 12 mov.u64 %r114,%r115; bra $L78; $L77: .loc 2 178 41 cvt.u32.u64 %r194,%r179; cvt.u32.u8 %r111,%r194; mov.u64 %r112,%r116; $L79: .loc 2 178 14 ld.u8 %r239,[%r112]; mov.u16 %r197,%r239; and.b16 %r196,%r197,63; cvt.u32.u16 %r198,%r196; cvt.u64.u8 %r199,%r198; .loc 2 178 32 add.u64 %r200,%frame,%r199; cvt.u32.u32 %r201,%r111; st.u8 [%r200],%r201; .loc 2 177 21 add.u64 %r112,%r112,1; cvt.u16.u32 %r203,%r111; add.u16 %r202,%r203,-1; cvt.u32.u16 %r204,%r202; cvt.u32.u8 %r111,%r204; setp.ne.u32 %r205,%r111,0; @ %r205 bra $L79; bra $L80; $L78: .loc 2 182 6 add.u64 %r53,%r114,-1; .loc 2 185 25 add.u64 %r206,%r53,%r179; .loc 2 185 34 ld.u8 %r239,[%r206]; mov.u16 %r209,%r239; and.b16 %r208,%r209,63; cvt.u32.u16 %r210,%r208; cvt.u64.u8 %r211,%r210; .loc 2 185 22 add.u64 %r212,%frame,%r211; .loc 2 185 11 ld.u8 %r54,[%r212]; .loc 2 186 12 add.u64 %r114,%r53,%r54; .loc 2 186 23 setp.lt.u64 %r213,%r47,%r114; @ %r213 bra $L81; $L83: .loc 2 188 22 add.u64 %r214,%r114,%r179; .loc 2 188 31 ld.u8 %r239,[%r214]; mov.u16 %r217,%r239; and.b16 %r216,%r217,63; cvt.u32.u16 %r218,%r216; cvt.u64.u8 %r219,%r218; .loc 2 188 19 add.u64 %r220,%frame,%r219; .loc 2 188 12 ld.u8 %r56,[%r220]; .loc 2 189 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r116; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r179; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r224,[%value_in]; } .loc 2 189 11 setp.eq.u32 %r225,%r224,0; @ %r225 bra $L66; .loc 2 186 34 add.u64 %r114,%r114,%r56; .loc 2 186 23 setp.ge.u64 %r226,%r47,%r114; @ %r226 bra $L83; $L81: .loc 2 192 11 add.u64 %r45,%r47,%r179; .loc 2 192 7 ld.u8 %r227,[%r45]; setp.ne.u16 %r228,%r227,0; @ %r228 bra $L84; $L85: .loc 2 193 13 mov.u64 %r114,0; bra $L66; $L84: .loc 2 194 11 mov.u64 %r230,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r230; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r231,[%value_in]; } .loc 2 194 8 add.u64 %r47,%r47,%r231; .loc 2 196 17 setp.ge.u64 %r232,%r47,%r114; @ %r232 bra $L78; bra $L85; $L76: .loc 2 202 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r183; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r116; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r179; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r237,[%value_in]; } mov.u64 %r114,%r237; bra $L66; $L86: mov.u64 %r114,%r115; $L66: .loc 2 203 1 mov.u64 %value,%r114; st.param.u64 [%value_out],%value; ret; } lib_a-strtod.o/ 0 0 0 644 66758 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _strtod_l .visible .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtod.c" // BEGIN GLOBAL FUNCTION DECL: _strtod_r .visible .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtod_l .visible .func (.param .f64 %value_out) strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtod .visible .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtof_l .visible .func (.param .f32 %value_out) strtof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtof .visible .func (.param .f32 %value_out) strtof (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: _C_numeric_locale .extern .const .align 8 .u64 _C_numeric_locale[3]; // BEGIN GLOBAL VAR DECL: __mprec_bigtens .extern .const .align 8 .u64 __mprec_bigtens[]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __gethex .extern .func (.param .u32 %value_out) __gethex (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: __copybits .extern .func __copybits (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __match .extern .func (.param .u32 %value_out) __match (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __hexnan .extern .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __s2b .extern .func (.param .u64 %value_out) __s2b (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __d2b .extern .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __i2b .extern .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __pow5mult .extern .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __multiply .extern .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __lshift .extern .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mdiff .extern .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mcmp .extern .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ulp .extern .func (.param .f64 %value_out) __ulp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ratio .extern .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN VAR DEF: tinytens .const .align 8 .u64 tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,1254259266780163907 }; // BEGIN VAR DEF: fpi$1 .const .align 4 .u32 fpi$1[5] = {53,4294966222,971,1,0 }; // BEGIN VAR DEF: fpinan$0 .const .align 4 .u32 fpinan$0[5] = {52,4294966222,971,1,0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {110,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {105,110,105,116,121,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[3] = {97,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: _strtod_l .visible .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u32 %r37; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r51; .reg .u32 %r66; .reg .u64 %r71; .reg .f64 %r73; .reg .u32 %r77; .reg .u64 %r78; .reg .f64 %r95; .reg .f64 %r99; .reg .f64 %r121; .reg .u32 %r126; .reg .u64 %r128; .reg .u32 %r132; .reg .f64 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r152; .reg .u32 %r167; .reg .u32 %r169; .reg .u32 %r181; .reg .f64 %r190; .reg .f64 %r193; .reg .u64 %r195; .reg .f64 %r201; .reg .f64 %r203; .reg .f64 %r204; .reg .f64 %r205; .reg .f64 %r209; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r215; .reg .u32 %r216; .reg .u64 %r217; .reg .u32 %r218; .reg .u32 %r219; .reg .u32 %r220; .reg .u64 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .f64 %r230; .reg .u32 %r231; .reg .f64 %r232; .reg .u32 %r233; .reg .u64 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u32 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .f64 %r241; .reg .f64 %r242; .reg .u64 %r246; .reg .u32 %r253; .reg .u32 %r255; .reg .u64 %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u32 %r260; .reg .u32 %r261; .reg .u32 %r262; .reg .u32 %r264; .reg .u32 %r265; .reg .u32 %r266; .reg .u32 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r281; .reg .u32 %r284; .reg .f64 %r288; .reg .u32 %r289; .reg .u32 %r292; .reg .f64 %r305; .reg .u32 %r309; .reg .u32 %r317; .reg .f64 %r322; .reg .u32 %r323; .reg .u64 %r324; .reg .u32 %r326; .reg .u64 %r328; .reg .u64 %r330; .reg .u32 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u32 %r341; .reg .u64 %r345; .reg .u32 %r352; .reg .u32 %r353; .reg .u64 %r354; .reg .u64 %r355; .reg .f64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r366; .reg .u16 %r367; .reg .pred %r368; .reg .pred %r370; .reg .pred %r372; .reg .pred %r374; .reg .pred %r375; .reg .pred %r377; .reg .pred %r379; .reg .pred %r380; .reg .u16 %r381; .reg .pred %r382; .reg .u16 %r384; .reg .u16 %r385; .reg .u32 %r386; .reg .u16 %r387; .reg .pred %r388; .reg .u64 %r391; .reg .u64 %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .pred %r402; .reg .pred %r403; .reg .u32 %r405; .reg .u64 %r409; .reg .pred %r410; .reg .u32 %r411; .reg .pred %r412; .reg .pred %r413; .reg .pred %r414; .reg .pred %r415; .reg .pred %r416; .reg .u64 %r420; .reg .u64 %r421; .reg .u64 %r422; .reg .u32 %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u32 %r430; .reg .u32 %r431; .reg .u64 %r432; .reg .u64 %r433; .reg .u64 %r434; .reg .u32 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .u32 %r441; .reg .u32 %r442; .reg .u64 %r443; .reg .u64 %r444; .reg .u64 %r445; .reg .u16 %r447; .reg .pred %r448; .reg .pred %r449; .reg .u32 %r450; .reg .pred %r452; .reg .pred %r453; .reg .u32 %r455; .reg .u32 %r456; .reg .u32 %r457; .reg .u32 %r460; .reg .u32 %r461; .reg .u32 %r462; .reg .pred %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r468; .reg .pred %r469; .reg .pred %r470; .reg .u32 %r471; .reg .pred %r472; .reg .u32 %r474; .reg .u32 %r475; .reg .pred %r477; .reg .u32 %r479; .reg .u32 %r480; .reg .pred %r482; .reg .pred %r483; .reg .u32 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .pred %r488; .reg .u32 %r490; .reg .u32 %r491; .reg .u32 %r492; .reg .u64 %r493; .reg .u32 %r494; .reg .pred %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u32 %r498; .reg .u32 %r499; .reg .pred %r500; .reg .u64 %r501; .reg .u16 %r502; .reg .pred %r503; .reg .pred %r505; .reg .u64 %r506; .reg .u32 %r507; .reg .pred %r508; .reg .pred %r509; .reg .u64 %r510; .reg .pred %r511; .reg .u32 %r512; .reg .pred %r513; .reg .u64 %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u32 %r518; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .pred %r522; .reg .u64 %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .u32 %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .u64 %r536; .reg .u64 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u64 %r543; .reg .u32 %r545; .reg .pred %r546; .reg .u64 %r547; .reg .u64 %r548; .reg .u64 %r550; .reg .u64 %r551; .reg .u32 %r552; .reg .pred %r553; .reg .u64 %r554; .reg .u16 %r555; .reg .u32 %r556; .reg .pred %r557; .reg .u64 %r559; .reg .u32 %r562; .reg .pred %r563; .reg .u32 %r564; .reg .u32 %r565; .reg .u64 %r566; .reg .u64 %r570; .reg .u64 %r571; .reg .u64 %r573; .reg .f64 %r574; .reg .pred %r575; .reg .pred %r576; .reg .pred %r577; .reg .u64 %r578; .reg .u32 %r579; .reg .u64 %r580; .reg .u64 %r581; .reg .u64 %r582; .reg .f64 %r583; .reg .f64 %r584; .reg .pred %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u64 %r591; .reg .u64 %r592; .reg .f64 %r593; .reg .f64 %r594; .reg .u32 %r595; .reg .u32 %r596; .reg .pred %r597; .reg .u32 %r598; .reg .u64 %r599; .reg .u64 %r600; .reg .u64 %r601; .reg .u64 %r602; .reg .f64 %r603; .reg .f64 %r604; .reg .f64 %r605; .reg .u32 %r607; .reg .u64 %r608; .reg .u64 %r609; .reg .u64 %r610; .reg .f64 %r611; .reg .pred %r612; .reg .u64 %r613; .reg .u32 %r614; .reg .u64 %r615; .reg .u64 %r616; .reg .u64 %r617; .reg .f64 %r618; .reg .f64 %r619; .reg .pred %r621; .reg .pred %r622; .reg .u64 %r623; .reg .u64 %r624; .reg .u64 %r625; .reg .u64 %r626; .reg .f64 %r627; .reg .f64 %r628; .reg .f64 %r629; .reg .pred %r630; .reg .pred %r631; .reg .u32 %r632; .reg .pred %r633; .reg .u32 %r634; .reg .pred %r635; .reg .f64 %r636; .reg .pred %r637; .reg .pred %r638; .reg .u64 %r639; .reg .u32 %r640; .reg .u32 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .u64 %r647; .reg .u64 %r648; .reg .u64 %r649; .reg .f64 %r650; .reg .f64 %r651; .reg .u64 %r653; .reg .u32 %r654; .reg .pred %r655; .reg .pred %r656; .reg .u32 %r657; .reg .u64 %r658; .reg .u64 %r659; .reg .u64 %r660; .reg .pred %r662; .reg .pred %r663; .reg .u64 %r664; .reg .u64 %r665; .reg .u64 %r666; .reg .u64 %r667; .reg .f64 %r668; .reg .f64 %r669; .reg .f64 %r670; .reg .pred %r671; .reg .pred %r672; .reg .u32 %r674; .reg .pred %r675; .reg .f64 %r676; .reg .pred %r677; .reg .pred %r678; .reg .u32 %r681; .reg .u32 %r682; .reg .u32 %r683; .reg .pred %r684; .reg .pred %r685; .reg .pred %r687; .reg .u32 %r690; .reg .u32 %r691; .reg .u32 %r692; .reg .u32 %r693; .reg .u32 %r694; .reg .u64 %r695; .reg .u64 %r696; .reg .u64 %r697; .reg .u32 %r699; .reg .u32 %r701; .reg .u32 %r702; .reg .u32 %r703; .reg .u64 %r704; .reg .u64 %r705; .reg .f64 %r707; .reg .pred %r708; .reg .u32 %r709; .reg .u64 %r715; .reg .pred %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u32 %r721; .reg .u64 %r722; .reg .pred %r723; .reg .u64 %r727; .reg .u64 %r728; .reg .u64 %r729; .reg .u64 %r731; .reg .u64 %r732; .reg .u64 %r738; .reg .pred %r739; .reg .u32 %r741; .reg .u64 %r742; .reg .pred %r743; .reg .pred %r744; .reg .u32 %r746; .reg .u32 %r747; .reg .pred %r748; .reg .u32 %r749; .reg .pred %r750; .reg .u32 %r751; .reg .u32 %r752; .reg .u32 %r753; .reg .u32 %r754; .reg .u32 %r755; .reg .pred %r756; .reg .u64 %r761; .reg .pred %r762; .reg .u64 %r766; .reg .u64 %r767; .reg .pred %r768; .reg .u64 %r771; .reg .pred %r772; .reg .u64 %r777; .reg .u64 %r778; .reg .pred %r779; .reg .u64 %r783; .reg .pred %r784; .reg .pred %r785; .reg .u64 %r789; .reg .pred %r790; .reg .pred %r791; .reg .u64 %r795; .reg .pred %r796; .reg .u64 %r800; .reg .u64 %r801; .reg .pred %r802; .reg .u32 %r803; .reg .u32 %r806; .reg .pred %r807; .reg .pred %r808; .reg .u64 %r809; .reg .u64 %r810; .reg .pred %r811; .reg .u32 %r813; .reg .u32 %r814; .reg .pred %r815; .reg .u32 %r816; .reg .pred %r817; .reg .u32 %r818; .reg .pred %r819; .reg .u32 %r822; .reg .u64 %r823; .reg .u32 %r826; .reg .pred %r827; .reg .pred %r828; .reg .u64 %r830; .reg .u32 %r832; .reg .pred %r833; .reg .pred %r835; .reg .pred %r836; .reg .u32 %r837; .reg .u32 %r838; .reg .u32 %r839; .reg .u32 %r840; .reg .pred %r841; .reg .u64 %r842; .reg .pred %r843; .reg .u32 %r844; .reg .u32 %r845; .reg .u64 %r846; .reg .u64 %r851; .reg .u64 %r852; .reg .pred %r853; .reg .u32 %r855; .reg .pred %r856; .reg .pred %r857; .reg .pred %r858; .reg .u32 %r860; .reg .u32 %r861; .reg .u64 %r862; .reg .u64 %r863; .reg .pred %r867; .reg .u64 %r868; .reg .u32 %r870; .reg .pred %r871; .reg .u32 %r872; .reg .u32 %r874; .reg .pred %r875; .reg .u64 %r876; .reg .f64 %r880; .reg .pred %r881; .reg .u32 %r882; .reg .u32 %r883; .reg .u32 %r884; .reg .pred %r885; .reg .u32 %r886; .reg .u32 %r887; .reg .u64 %r888; .reg .u64 %r892; .reg .f64 %r893; .reg .f64 %r895; .reg .pred %r896; .reg .u32 %r897; .reg .u32 %r898; .reg .u32 %r899; .reg .pred %r900; .reg .u32 %r901; .reg .u32 %r902; .reg .u64 %r903; .reg .u64 %r907; .reg .f64 %r908; .reg .f64 %r911; .reg .pred %r912; .reg .u64 %r914; .reg .pred %r915; .reg .pred %r916; .reg .pred %r917; .reg .u64 %r919; .reg .u32 %r920; .reg .pred %r921; .reg .u32 %r922; .reg .u64 %r923; .reg .u64 %r924; .reg .u64 %r925; .reg .f64 %r928; .reg .u64 %r930; .reg .u32 %r931; .reg .u32 %r932; .reg .pred %r933; .reg .u64 %r934; .reg .pred %r935; .reg .u64 %r936; .reg .u64 %r937; .reg .u64 %r938; .reg .u32 %r943; .reg .u32 %r944; .reg .u32 %r945; .reg .u16 %r946; .reg .u16 %r948; .reg .u32 %r949; .reg .u16 %r950; .reg .pred %r951; .reg .pred %r952; .reg .u64 %r954; .reg .u32 %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .u64 %r958; .reg .u64 %r959; .reg .u64 %r960; .reg .f64 %r963; .reg .u32 %r967; .reg .u32 %r968; .reg .u32 %r969; .reg .u32 %r970; .reg .u16 %r974; .reg .u16 %r975; .reg .u32 %r977; .reg .u16 %r978; .reg .pred %r979; .reg .u64 %r980; .reg .u64 %r982; .reg .pred %r983; .reg .pred %r984; .reg .pred %r985; .reg .pred %r986; .reg .u64 %r989; .reg .pred %r996; .reg .pred %r998; .reg .u32 %r999; .reg .pred %r1010; .reg .u64 %r1011; .reg .pred %r1012; .reg .u32 %r1014; .reg .u32 %r1015; .reg .pred %r1016; .reg .pred %r1017; .reg .u64 %r1019; .reg .pred %r1020; .reg .u32 %r1024; .reg .pred %r1025; .reg .u64 %r1026; .reg .u32 %r1030; .reg .pred %r1031; .reg .u16 %r1032; .reg .u16 %r1033; .reg .u32 %r1034; .reg .u16 %r1035; .reg .pred %r1036; .reg .u32 %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .u64 %r1040; .reg .u64 %r1041; .reg .u32 %r1042; .reg .u64 %r1043; .reg .pred %r1044; .reg .u32 %r1045; .reg .u64 %r1046; .reg .u64 %r1047; .reg .pred %r1048; .reg .pred %r1049; .reg .u32 %r1050; .reg .u32 %r1051; .reg .u32 %r1052; .reg .u16 %r1053; .reg .u32 %r1054; .reg .u32 %r1055; .reg .u32 %r1056; .reg .u16 %r1057; .reg .u32 %r1058; .reg .u32 %r1059; .reg .u16 %r1060; mov.u64 %r359,%ar0; mov.u64 %r360,%ar1; mov.u64 %r361,%ar2; mov.u64 %r362,%ar3; .loc 1 256 11 mov.u64 %r363,0; st.u64 [%frame+8],%r363; .loc 1 266 14 ld.const.u64 %r246,[_C_numeric_locale]; .loc 1 267 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r246; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r366,[%value_in]; } .loc 1 271 11 mov.u64 %r355,%r363; mov.u64 %r44,%r360; $L9: mov.u64 %r333,%r44; .loc 1 272 8 st.u64 [%frame+16],%r333; .loc 1 272 27 ld.s8 %r25,[%r44]; .loc 1 272 20 cvt.u16.u32 %r367,%r25; setp.eq.u16 %r368,%r367,43; @ %r368 bra $L156; setp.gt.s16 %r370,%r367,43; @ %r370 bra $L3; setp.gt.s16 %r372,%r367,13; @ %r372 bra $L4; setp.gt.s16 %r374,%r367,8; @ %r374 bra $L5; setp.eq.u32 %r375,%r25,0; @ %r375 bra $L6; mov.u32 %r226,0; .loc 1 270 13 mov.u32 %r225,%r226; bra $L7; $L4: .loc 1 272 20 setp.eq.u16 %r377,%r367,32; @ %r377 bra $L5; mov.u32 %r226,0; .loc 1 270 13 mov.u32 %r225,%r226; bra $L7; $L3: .loc 1 272 20 setp.ne.u16 %r379,%r367,45; @ %r379 bra $L157; .loc 1 274 9 mov.u32 %r226,1; bra $L2; $L156: .loc 1 272 20 mov.u32 %r226,0; $L2: .loc 1 277 9 add.u64 %r28,%r44,1; .loc 1 277 7 st.u64 [%frame+16],%r28; .loc 1 277 8 ld.s8 %r25,[%r44+1]; .loc 1 277 7 setp.ne.u32 %r380,%r25,0; @ %r380 bra $L158; bra $L6; $L5: add.u64 %r44,%r44,1; .loc 1 272 20 bra $L9; $L157: mov.u32 %r226,0; bra $L8; $L158: mov.u64 %r333,%r28; $L8: .loc 1 293 5 cvt.u16.u32 %r381,%r25; setp.ne.u16 %r382,%r381,48; @ %r382 bra $L159; .loc 1 299 3 ld.u8 %r1060,[%r333+1]; mov.u16 %r385,%r1060; and.b16 %r384,%r385,-33; cvt.u32.u16 %r386,%r384; cvt.s16.s8 %r387,%r386; setp.ne.u16 %r388,%r387,88; @ %r388 bra $L10; .loc 1 316 16 add.u64 %r396,%frame,8; add.u64 %r397,%frame,24; add.u64 %r398,%frame,16; cvta.const.u64 %r391,fpi$1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r398; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r391; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r397; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r396; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r226; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r362; call (%value_in),__gethex,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r399,[%value_in]; } .loc 1 316 62 and.b32 %r34,%r399,7; setp.eq.u32 %r400,%r34,0; @ %r400 bra $L160; setp.ne.u32 %r401,%r34,6; @ %r401 bra $L12; .loc 1 304 8 add.u64 %r195,%r333,1; .loc 1 1260 5 setp.eq.u64 %r402,%r361,0; @ %r402 bra $L161; .loc 1 1261 7 st.u64 [%r361],%r195; mov.f64 %r358,0d0000000000000000; bra $L1; $L12: .loc 1 324 9 ld.u64 %r35,[%frame+8]; .loc 1 324 8 setp.eq.u64 %r403,%r35,0; @ %r403 bra $L14; .loc 1 325 6 mov.u32 %r405,53; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r405; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; call __copybits,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 326 6 ld.u64 %r409,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call _Bfree,(%out_arg1,%out_arg2); } $L14: .loc 1 328 5 ld.u32 %r37,[%frame+24]; .loc 1 211 2 setp.eq.u32 %r410,%r34,3; @ %r410 bra $L15; and.b32 %r411,%r399,4; setp.ne.u32 %r412,%r411,0; @ %r412 bra $L16; setp.eq.u32 %r413,%r34,1; @ %r413 bra $L17; setp.eq.u32 %r414,%r34,2; @ %r414 bra $L18; bra $L19; $L16: setp.eq.u32 %r415,%r34,4; @ %r415 bra $L20; setp.eq.u32 %r416,%r34,5; @ %r416 bra $L17; bra $L19; $L18: .loc 1 219 9 ld.u32 %r420,[%frame+4]; shl.b64 %r421,%r420,32; ld.u32 %r422,[%frame]; or.b64 %r355,%r422,%r421; .loc 1 220 3 bra $L19; $L17: .loc 1 225 20 ld.u32 %r428,[%frame+4]; and.b32 %r427,%r428,-1048577; .loc 1 225 49 add.u32 %r429,%r37,1075; .loc 1 225 55 shl.b32 %r430,%r429,20; .loc 1 225 33 or.b32 %r431,%r427,%r430; .loc 1 225 9 cvt.u64.u32 %r432,%r431; shl.b64 %r433,%r432,32; ld.u32 %r434,[%frame]; or.b64 %r355,%r434,%r433; .loc 1 226 3 bra $L19; $L15: .loc 1 229 9 mov.u64 %r355,9218868437227405312; .loc 1 231 3 bra $L19; $L20: .loc 1 235 9 mov.u64 %r355,9223372036854775807; $L19: .loc 1 237 8 and.b32 %r438,%r399,8; .loc 1 237 5 setp.ne.u32 %r439,%r438,0; @ %r439 bra $L21; .loc 1 1262 17 mov.b64 %r358,%r355; bra $L22; $L21: .loc 1 238 9 shr.u64 %r440,%r355,32; cvt.u32.u64 %r441,%r440; or.b32 %r442,%r441,-2147483648; cvt.u64.u32 %r443,%r442; shl.b64 %r444,%r443,32; and.b64 %r445,%r355,4294967295; or.b64 %r355,%r445,%r444; .loc 1 1262 17 mov.b64 %r358,%r355; bra $L22; $L160: mov.f64 %r358,0d0000000000000000; bra $L22; $L10: add.u64 %r128,%r333,1; $L23: .loc 1 335 10 mov.u64 %r333,%r128; .loc 1 335 14 st.u64 [%frame+16],%r333; add.u64 %r128,%r333,1; .loc 1 335 9 ld.s8 %r25,[%r333]; .loc 1 335 14 cvt.u16.u32 %r447,%r25; setp.eq.u16 %r448,%r447,48; @ %r448 bra $L23; .loc 1 336 6 setp.eq.u32 %r449,%r25,0; @ %r449 bra $L162; .loc 1 334 7 mov.u32 %r225,1; bra $L7; $L159: .loc 1 270 13 mov.u32 %r225,0; $L7: .loc 1 267 6 cvt.u32.u64 %r450,%r366; .loc 1 347 6 cvt.s64.s32 %r334,%r450; .loc 1 341 35 add.u32 %r1042,%r25,-48; setp.gt.u32 %r452,%r1042,9; @ %r452 bra $L24; add.u64 %r221,%r333,1; .loc 1 340 8 mov.u32 %r233,0; .loc 1 340 4 mov.u32 %r231,%r233; .loc 1 341 9 mov.u32 %r253,%r233; $L27: .loc 1 342 6 setp.gt.s32 %r453,%r253,8; @ %r453 bra $L25; .loc 1 343 10 shl.b32 %r455,%r231,2; add.u32 %r456,%r455,%r231; add.u32 %r457,%r456,%r456; .loc 1 343 6 add.u32 %r231,%r1042,%r457; bra $L26; $L25: .loc 1 345 10 shl.b32 %r460,%r233,2; add.u32 %r461,%r460,%r233; add.u32 %r462,%r461,%r461; .loc 1 345 6 add.u32 %r233,%r1042,%r462; $L26: .loc 1 341 50 add.u32 %r253,%r253,1; .loc 1 341 55 mov.u64 %r43,%r221; st.u64 [%frame+16],%r221; .loc 1 341 24 ld.s8 %r25,[%r221]; .loc 1 341 35 add.u64 %r221,%r221,1; add.u32 %r1042,%r25,-48; setp.le.u32 %r465,%r1042,9; @ %r465 bra $L27; bra $L307; $L150: add.u64 %r71,%r345,1; .loc 1 270 18 mov.u32 %r255,%r1024; $L29: .loc 1 353 7 add.u32 %r255,%r255,1; .loc 1 352 22 st.u64 [%frame+16],%r71; ld.s8 %r218,[%r71]; .loc 1 352 12 add.u64 %r71,%r71,1; setp.eq.u32 %r466,%r218,48; @ %r466 bra $L29; $L151: .loc 1 354 16 add.u32 %r467,%r218,-49; .loc 1 354 7 setp.gt.u32 %r468,%r467,8; @ %r468 bra $L163; .loc 1 355 8 ld.u64 %r333,[%frame+16]; .loc 1 365 10 add.u32 %r341,%r218,-48; .loc 1 366 8 add.u32 %r224,%r255,1; mov.u64 %r324,%r333; .loc 1 340 4 mov.u32 %r231,0; .loc 1 340 8 mov.u32 %r233,%r231; .loc 1 366 8 mov.u32 %r253,1; bra $L31; $L32: .loc 1 364 6 add.u32 %r255,%r255,1; .loc 1 365 10 mov.u32 %r341,%r494; .loc 1 362 36 ld.u64 %r324,[%frame+16]; .loc 1 365 7 setp.eq.u32 %r469,%r494,0; @ %r469 bra $L33; .loc 1 372 11 add.u32 %r1037,%r253,1; mov.u32 %r326,%r1037; .loc 1 366 8 add.u32 %r224,%r224,%r255; .loc 1 367 18 setp.eq.u32 %r470,%r255,1; @ %r470 bra $L34; add.u32 %r471,%r253,%r255; add.u32 %r29,%r471,-1; $L37: mov.u32 %r222,%r253; .loc 1 368 12 mov.u32 %r253,%r1037; .loc 1 368 9 setp.gt.u32 %r472,%r222,8; @ %r472 bra $L35; .loc 1 369 9 shl.b32 %r474,%r231,2; add.u32 %r475,%r474,%r231; add.u32 %r231,%r475,%r475; bra $L36; $L35: .loc 1 370 14 setp.gt.s32 %r477,%r1037,16; @ %r477 bra $L36; .loc 1 371 9 shl.b32 %r479,%r233,2; add.u32 %r480,%r479,%r233; add.u32 %r233,%r480,%r480; $L36: .loc 1 367 18 setp.ne.u32 %r482,%r29,%r1037; @ ! %r482 bra $L308; add.u32 %r1037,%r1037,1; bra $L37; $L308: .loc 1 372 11 add.u32 %r326,%r222,2; $L34: .loc 1 372 8 setp.gt.s32 %r483,%r253,8; @ %r483 bra $L38; mov.u32 %r253,%r326; $L31: .loc 1 373 12 shl.b32 %r485,%r231,2; add.u32 %r486,%r485,%r231; add.u32 %r487,%r486,%r486; .loc 1 373 8 add.u32 %r231,%r341,%r487; .loc 1 376 8 mov.u32 %r255,0; bra $L33; $L38: .loc 1 374 13 setp.gt.s32 %r488,%r326,16; @ %r488 bra $L164; .loc 1 375 12 shl.b32 %r490,%r233,2; add.u32 %r491,%r490,%r233; add.u32 %r492,%r491,%r491; .loc 1 375 8 add.u32 %r233,%r494,%r492; mov.u32 %r253,%r326; .loc 1 376 8 mov.u32 %r255,0; bra $L33; $L164: mov.u32 %r253,%r326; mov.u32 %r255,0; $L33: .loc 1 362 36 add.u64 %r493,%r324,1; .loc 1 362 33 st.u64 [%frame+16],%r493; ld.s8 %r218,[%r324+1]; $L153: .loc 1 362 18 add.u32 %r494,%r218,-48; setp.le.u32 %r495,%r494,9; @ %r495 bra $L32; .loc 1 349 9 mov.u32 %r331,1; .loc 1 380 2 bra $L30; $L163: .loc 1 341 14 mov.u32 %r224,%r1024; mov.u32 %r253,%r224; .loc 1 340 8 mov.u32 %r233,0; .loc 1 340 4 mov.u32 %r231,%r233; .loc 1 349 9 mov.u32 %r331,1; $L30: .loc 1 382 20 and.b32 %r496,%r218,-33; .loc 1 382 5 setp.ne.u32 %r497,%r496,69; @ %r497 bra $L165; .loc 1 383 18 or.b32 %r498,%r253,%r255; or.b32 %r499,%r498,%r225; .loc 1 383 6 setp.eq.u32 %r500,%r499,0; @ %r500 bra $L6; bra $L155; $L179: .loc 1 341 50 mov.u32 %r323,%r253; .loc 1 270 18 mov.u32 %r255,0; .loc 1 341 14 mov.u32 %r224,%r255; .loc 1 270 26 mov.u32 %r331,%r255; $L155: .loc 1 386 7 ld.u64 %r360,[%frame+16]; .loc 1 388 15 add.u64 %r501,%r360,1; .loc 1 388 3 st.u64 [%frame+16],%r501; .loc 1 388 14 ld.s8 %r66,[%r360+1]; .loc 1 388 3 cvt.u16.u32 %r502,%r66; setp.eq.u16 %r503,%r502,43; @ %r503 bra $L166; setp.eq.u16 %r505,%r502,45; @ %r505 bra $L167; .loc 1 388 12 mov.u32 %r218,%r66; .loc 1 387 9 mov.u32 %r220,0; bra $L42; $L166: .loc 1 388 3 mov.u32 %r220,0; bra $L41; $L167: .loc 1 390 11 mov.u32 %r220,1; $L41: .loc 1 392 10 add.u64 %r506,%r360,2; .loc 1 392 7 st.u64 [%frame+16],%r506; ld.s8 %r218,[%r360+2]; $L42: .loc 1 394 16 add.u32 %r507,%r218,-48; .loc 1 394 6 setp.gt.u32 %r508,%r507,9; @ %r508 bra $L43; .loc 1 395 12 setp.ne.u32 %r509,%r218,48; @ %r509 bra $L44; ld.u64 %r510,[%frame+16]; add.u64 %r41,%r510,1; $L45: .loc 1 396 7 st.u64 [%frame+16],%r41; .loc 1 396 9 ld.s8 %r218,[%r41]; .loc 1 395 12 add.u64 %r41,%r41,1; setp.eq.u32 %r511,%r218,48; @ %r511 bra $L45; $L44: .loc 1 397 16 add.u32 %r512,%r218,-49; .loc 1 397 7 setp.gt.u32 %r513,%r512,8; @ %r513 bra $L168; .loc 1 398 7 add.u32 %r257,%r218,-48; .loc 1 399 8 ld.u64 %r256,[%frame+16]; .loc 1 400 17 add.u64 %r514,%r256,1; .loc 1 400 29 st.u64 [%frame+16],%r514; .loc 1 400 16 ld.s8 %r218,[%r256+1]; .loc 1 400 29 add.u32 %r515,%r218,-48; setp.gt.u32 %r516,%r515,9; @ %r516 bra $L46; add.u64 %r217,%r256,2; $L47: .loc 1 401 12 shl.b32 %r518,%r257,2; add.u32 %r519,%r518,%r257; add.u32 %r520,%r519,%r519; .loc 1 401 15 add.u32 %r77,%r520,%r218; .loc 1 401 8 add.u32 %r257,%r77,-48; .loc 1 400 17 mov.u64 %r78,%r217; .loc 1 400 29 st.u64 [%frame+16],%r217; .loc 1 400 16 ld.s8 %r218,[%r217]; .loc 1 400 29 add.u64 %r217,%r217,1; add.u32 %r521,%r218,-48; setp.le.u32 %r522,%r521,9; @ %r522 bra $L47; .loc 1 402 11 sub.u64 %r523,%r78,%r256; .loc 1 402 8 setp.gt.s64 %r524,%r523,8; @ %r524 bra $L169; $L46: min.s32 %r219,%r257,19999; bra $L48; $L169: .loc 1 406 8 mov.u32 %r219,19999; $L48: .loc 1 409 8 setp.eq.u32 %r525,%r220,0; @ %r525 bra $L39; .loc 1 410 8 neg.s32 %r219,%r219; bra $L39; $L43: .loc 1 416 6 st.u64 [%frame+16],%r360; .loc 1 381 4 mov.u32 %r219,0; bra $L39; $L165: mov.u32 %r219,0; bra $L39; $L168: .loc 1 413 7 mov.u32 %r219,0; $L39: .loc 1 418 5 setp.ne.u32 %r526,%r253,0; @ %r526 bra $L170; .loc 1 419 11 or.b32 %r527,%r225,%r255; .loc 1 419 6 setp.eq.u32 %r528,%r527,0; @ %r528 bra $L50; .loc 1 1262 17 mov.f64 %r358,0d0000000000000000; bra $L22; $L50: .loc 1 425 7 setp.ne.u32 %r529,%r331,0; @ %r529 bra $L6; .loc 1 426 5 setp.eq.u32 %r530,%r218,105; @ %r530 bra $L51; setp.gt.s32 %r531,%r218,105; @ %r531 bra $L52; setp.eq.u32 %r532,%r218,73; @ %r532 bra $L51; setp.eq.u32 %r533,%r218,78; @ %r533 bra $L53; bra $L6; $L52: setp.eq.u32 %r534,%r218,110; @ %r534 bra $L53; bra $L6; $L51: .loc 1 429 9 add.u64 %r537,%frame,16; cvta.const.u64 %r536,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r537; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r536; call (%value_in),__match,(%out_arg1,%out_arg2); ld.param.u32 %r538,[%value_in]; } .loc 1 429 8 setp.eq.u32 %r539,%r538,0; @ %r539 bra $L6; .loc 1 430 6 ld.u64 %r541,[%frame+16]; add.u64 %r540,%r541,-1; st.u64 [%frame+16],%r540; .loc 1 431 11 cvta.const.u64 %r543,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r537; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r543; call (%value_in),__match,(%out_arg1,%out_arg2); ld.param.u32 %r545,[%value_in]; } .loc 1 431 9 setp.ne.u32 %r546,%r545,0; @ %r546 bra $L54; .loc 1 432 7 ld.u64 %r548,[%frame+16]; add.u64 %r547,%r548,1; st.u64 [%frame+16],%r547; $L54: .loc 1 437 6 mov.f64 %r358,0d7ff0000000000000; bra $L22; $L53: .loc 1 442 9 add.u64 %r551,%frame,16; cvta.const.u64 %r550,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r551; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r550; call (%value_in),__match,(%out_arg1,%out_arg2); ld.param.u32 %r552,[%value_in]; } .loc 1 442 8 setp.eq.u32 %r553,%r552,0; @ %r553 bra $L6; .loc 1 444 10 ld.u64 %r554,[%frame+16]; .loc 1 444 9 ld.u8 %r556,[%r554]; cvt.s16.s8 %r555,%r556; setp.ne.u16 %r557,%r555,40; @ %r557 bra $L56; .loc 1 445 10 cvta.const.u64 %r559,fpinan$0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r551; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r559; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__hexnan,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r562,[%value_in]; } .loc 1 445 7 setp.ne.u32 %r563,%r562,5; @ %r563 bra $L56; .loc 1 447 31 ld.u32 %r565,[%frame+4]; or.b32 %r564,%r565,2146435072; .loc 1 447 18 cvt.u64.u32 %r566,%r564; .loc 1 449 18 ld.u32 %r570,[%frame]; shl.b64 %r571,%r566,32; or.b64 %r355,%r571,%r570; .loc 1 1262 17 mov.b64 %r358,%r355; .loc 1 449 18 bra $L22; $L56: .loc 1 454 18 cvta.const.u64 %r573,$LC3; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r573; call (%value_in),nan,(%out_arg1); ld.param.f64 %r574,[%value_in]; } mov.f64 %r358,%r574; bra $L22; $L6: .loc 1 1260 5 setp.ne.u64 %r575,%r361,0; @ %r575 bra $L57; .loc 1 1262 26 mov.f64 %r358,0d0000000000000000; bra $L1; $L57: .loc 1 1261 7 st.u64 [%r361],%r360; .loc 1 1262 26 mov.f64 %r358,0d0000000000000000; bra $L1; $L170: mov.u32 %r353,%r253; mov.u32 %r253,%r323; $L49: .loc 1 468 9 sub.u32 %r258,%r219,%r224; .loc 1 475 5 setp.ne.u32 %r576,%r253,0; selp.u32 %r253,%r253,%r353,%r576; .loc 1 477 4 min.s32 %r260,%r353,16; .loc 1 478 11 cvt.rn.f64.u32 %r95,%r231; mov.b64 %r355,%r95; .loc 1 479 5 setp.le.s32 %r577,%r353,9; @ %r577 bra $L59; .loc 1 484 18 cvta.const.u64 %r578,__mprec_tens; .loc 1 484 21 add.u32 %r579,%r260,-9; .loc 1 484 18 cvt.s64.s32 %r580,%r579; shl.b64 %r581,%r580,3; add.u64 %r582,%r578,%r581; .loc 1 484 37 cvt.rn.f64.u32 %r583,%r233; ld.f64 %r584,[%r582]; fma.rn.f64 %r99,%r95,%r584,%r583; .loc 1 484 12 mov.b64 %r355,%r99; $L59: .loc 1 487 5 setp.gt.s32 %r585,%r353,15; @ %r585 bra $L60; .loc 1 494 6 setp.ne.u32 %r586,%r258,0; @ %r586 bra $L61; .loc 1 508 16 mov.b64 %r358,%r355; bra $L22; $L61: .loc 1 496 6 setp.le.s32 %r587,%r258,0; @ %r587 bra $L62; .loc 1 497 7 setp.gt.s32 %r588,%r258,22; @ %r588 bra $L63; .loc 1 508 16 cvta.const.u64 %r589,__mprec_tens; cvt.s64.s32 %r590,%r258; shl.b64 %r591,%r590,3; add.u64 %r592,%r589,%r591; ld.f64 %r593,[%r592]; mov.b64 %r594,%r355; mul.f64 %r358,%r593,%r594; .loc 1 509 5 bra $L22; $L63: .loc 1 513 22 mov.u32 %r596,37; sub.u32 %r595,%r596,%r353; .loc 1 513 7 setp.lt.s32 %r597,%r595,%r258; @ %r597 bra $L64; .loc 1 512 6 mov.u32 %r598,15; sub.u32 %r262,%r598,%r353; .loc 1 525 21 cvta.const.u64 %r599,__mprec_tens; cvt.s64.s32 %r600,%r262; shl.b64 %r601,%r600,3; add.u64 %r602,%r599,%r601; .loc 1 525 14 ld.f64 %r604,[%r602]; mov.b64 %r605,%r355; mul.f64 %r603,%r604,%r605; .loc 1 524 7 sub.u32 %r607,%r258,%r262; .loc 1 538 16 cvt.s64.s32 %r608,%r607; shl.b64 %r609,%r608,3; add.u64 %r610,%r599,%r609; ld.f64 %r611,[%r610]; mul.f64 %r358,%r603,%r611; .loc 1 540 5 bra $L22; $L62: .loc 1 544 11 setp.lt.s32 %r612,%r258,-22; @ %r612 bra $L60; .loc 1 552 15 cvta.const.u64 %r613,__mprec_tens; sub.u32 %r614,%r224,%r219; cvt.s64.s32 %r615,%r614; shl.b64 %r616,%r615,3; add.u64 %r617,%r613,%r616; mov.b64 %r618,%r355; ld.f64 %r619,[%r617]; div.rn.f64 %r358,%r618,%r619; .loc 1 553 4 bra $L22; $L60: .loc 1 557 5 vsub.u32.u32.u32.add %r264,%r353,%r260,%r258; .loc 1 581 5 setp.le.s32 %r621,%r264,0; @ %r621 bra $L65; $L149: .loc 1 582 11 and.b32 %r269,%r264,15; .loc 1 582 6 setp.eq.u32 %r622,%r269,0; @ %r622 bra $L66; .loc 1 583 20 cvta.const.u64 %r623,__mprec_tens; cvt.s64.s32 %r624,%r269; shl.b64 %r625,%r624,3; add.u64 %r626,%r623,%r625; .loc 1 583 13 ld.f64 %r628,[%r626]; mov.b64 %r629,%r355; mul.f64 %r627,%r628,%r629; mov.b64 %r355,%r627; $L66: .loc 1 584 10 and.b32 %r270,%r264,-16; .loc 1 584 6 setp.eq.u32 %r630,%r270,0; @ %r630 bra $L67; .loc 1 585 7 setp.le.s32 %r631,%r270,308; @ %r631 bra $L68; $L73: .loc 1 588 17 mov.u32 %r632,34; st.u32 [%r359],%r632; mov.f64 %r358,0d7ff0000000000000; bra $L22; $L68: .loc 1 628 7 shr.s32 %r273,%r270,4; .loc 1 629 18 setp.le.s32 %r633,%r270,16; @ %r633 bra $L171; mov.b64 %r322,%r355; cvta.const.u64 %r1040,__mprec_bigtens; mov.u64 %r24,%r1040; mov.u32 %r292,0; .loc 1 629 10 mov.u32 %r272,%r292; .loc 1 631 15 mov.u32 %r1058,1; $L71: .loc 1 630 12 and.b32 %r634,%r273,1; .loc 1 630 8 setp.eq.u32 %r635,%r634,0; @ %r635 bra $L70; .loc 1 631 15 ld.f64 %r636,[%r24]; mul.f64 %r322,%r322,%r636; mov.u32 %r292,%r1058; $L70: .loc 1 629 24 add.u32 %r272,%r272,1; .loc 1 629 31 shr.s32 %r273,%r273,1; .loc 1 629 18 add.u64 %r24,%r24,8; setp.ne.u32 %r637,%r273,1; @ %r637 bra $L71; setp.eq.u32 %r638,%r292,0; @ %r638 bra $L69; mov.b64 %r355,%r322; bra $L69; $L171: .loc 1 629 10 mov.u32 %r272,0; cvta.const.u64 %r1040,__mprec_bigtens; $L69: .loc 1 633 15 shr.u64 %r639,%r355,32; cvt.u32.u64 %r640,%r639; add.u32 %r641,%r640,-55574528; cvt.u64.u32 %r642,%r641; shl.b64 %r643,%r642,32; and.b64 %r644,%r355,4294967295; or.b64 %r355,%r644,%r643; .loc 1 634 23 cvt.s64.s32 %r647,%r272; shl.b64 %r648,%r647,3; add.u64 %r649,%r1040,%r648; .loc 1 634 13 ld.f64 %r650,[%r649]; mov.b64 %r651,%r355; mul.f64 %r121,%r650,%r651; mov.b64 %r355,%r121; shr.u64 %r653,%r355,32; cvt.u32.u64 %r654,%r653; .loc 1 635 11 and.b32 %r271,%r654,2146435072; .loc 1 635 7 setp.gt.u32 %r655,%r271,2090860544; @ %r655 bra $L73; .loc 1 638 7 setp.le.u32 %r656,%r271,2089811968; @ %r656 bra $L74; .loc 1 643 16 mov.u64 %r355,9218868437227405311; .loc 1 566 8 mov.u32 %r126,0; bra $L75; $L74: .loc 1 647 16 add.u32 %r657,%r654,55574528; cvt.u64.u32 %r658,%r657; shl.b64 %r659,%r658,32; and.b64 %r660,%r355,4294967295; or.b64 %r355,%r660,%r659; .loc 1 566 8 mov.u32 %r126,0; bra $L75; $L65: .loc 1 650 10 setp.eq.u32 %r662,%r264,0; @ %r662 bra $L67; .loc 1 651 6 neg.s32 %r265,%r264; .loc 1 652 11 and.b32 %r266,%r265,15; .loc 1 652 6 setp.eq.u32 %r663,%r266,0; @ %r663 bra $L76; .loc 1 653 20 cvta.const.u64 %r664,__mprec_tens; cvt.s64.s32 %r665,%r266; shl.b64 %r666,%r665,3; add.u64 %r667,%r664,%r666; .loc 1 653 13 mov.b64 %r669,%r355; ld.f64 %r670,[%r667]; div.rn.f64 %r668,%r669,%r670; mov.b64 %r355,%r668; $L76: .loc 1 654 10 shr.s32 %r268,%r265,4; .loc 1 654 6 setp.eq.u32 %r671,%r268,0; @ %r671 bra $L67; .loc 1 655 7 setp.gt.s32 %r672,%r268,31; @ %r672 bra $L77; .loc 1 658 11 and.b32 %r126,%r268,16; .loc 1 658 7 setp.eq.u32 %r1044,%r126,0; @ %r1044 bra $L78; .loc 1 659 11 mov.u32 %r126,106; setp.eq.u32 %r1044,1,0; $L78: mov.b64 %r232,%r355; cvta.const.u64 %r30,tinytens; mov.u32 %r149,0; .loc 1 662 15 mov.u32 %r1059,1; $L80: .loc 1 661 12 and.b32 %r674,%r268,1; .loc 1 661 8 setp.eq.u32 %r675,%r674,0; @ %r675 bra $L79; .loc 1 662 15 ld.f64 %r676,[%r30]; mul.f64 %r232,%r232,%r676; mov.u32 %r149,%r1059; $L79: .loc 1 660 31 shr.s32 %r268,%r268,1; .loc 1 660 18 add.u64 %r30,%r30,8; setp.ne.u32 %r677,%r268,0; @ %r677 bra $L80; setp.eq.u32 %r678,%r149,0; @ %r678 bra $L81; mov.b64 %r355,%r232; $L81: .loc 1 663 7 @ %r1044 bra $L82; .loc 1 663 34 shr.u64 %r1041,%r355,32; cvt.u32.u64 %r681,%r1041; .loc 1 664 7 shr.u32 %r682,%r681,20; and.b32 %r132,%r682,2047; .loc 1 663 30 mov.u32 %r683,107; sub.u32 %r267,%r683,%r132; .loc 1 663 14 setp.le.s32 %r684,%r267,0; @ %r684 bra $L82; .loc 1 666 8 setp.le.s32 %r685,%r267,31; @ %r685 bra $L83; .loc 1 668 17 and.b64 %r355,%r355,-4294967296; .loc 1 670 9 setp.le.s32 %r687,%r267,52; @ %r687 bra $L84; .loc 1 671 18 mov.u64 %r355,247697979505377280; bra $L82; $L84: .loc 1 673 37 mov.u32 %r691,75; sub.u32 %r690,%r691,%r132; .loc 1 673 32 mov.u32 %r693,-1; shl.b32 %r692,%r693,%r690; .loc 1 673 18 and.b32 %r694,%r692,%r681; cvt.u64.u32 %r695,%r694; shl.b64 %r696,%r695,32; and.b64 %r697,%r355,4294967295; or.b64 %r355,%r697,%r696; bra $L82; $L83: .loc 1 677 17 cvt.u32.u64 %r699,%r355; .loc 1 677 31 mov.u32 %r702,-1; shl.b32 %r701,%r702,%r267; .loc 1 677 17 and.b32 %r703,%r699,%r701; cvt.u64.u32 %r704,%r703; and.b64 %r705,%r355,-4294967296; or.b64 %r355,%r705,%r704; $L82: .loc 1 691 8 mov.b64 %r707,%r355; setp.neu.f64 %r708,%r707,0d0000000000000000; @ %r708 bra $L75; $L77: .loc 1 695 18 mov.u32 %r709,34; st.u32 [%r359],%r709; mov.f64 %r358,0d0000000000000000; bra $L22; $L67: .loc 1 566 8 mov.u32 %r126,0; $L75: .loc 1 720 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r333; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r253; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r353; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r231; call (%value_in),__s2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r715,[%value_in]; } .loc 1 721 5 setp.eq.u64 %r716,%r715,0; @ %r716 bra $L73; setp.ge.s32 %r718,%r258,0; @ %r718 bra $L85; .loc 1 741 14 sub.u32 %r717,%r224,%r219; bra $L86; $L85: mov.u32 %r717,0; $L86: max.s32 %r352,%r258,0; .loc 1 269 8 mov.u64 %r237,0; .loc 1 269 13 mov.u64 %r236,%r237; .loc 1 728 3 add.u64 %r1046,%r715,16; .loc 1 729 8 add.u64 %r1047,%frame,24; .loc 1 796 6 setp.le.s32 %r1048,%r717,0; .loc 1 811 6 setp.gt.s32 %r1049,%r258,0; .loc 1 1189 6 set.u32.eq.u32 %r1050,%r126,0; neg.s32 %r1051,%r1050; mov.u32 %r1052,%r1051; .loc 1 1191 6 cvt.u16.u8 %r1060,%r1052; mov.u16 %r1053,%r1060; .loc 1 1126 8 set.u32.ne.u32 %r1054,%r126,0; neg.s32 %r1055,%r1054; mov.u32 %r1056,%r1055; .loc 1 1126 14 cvt.u16.u8 %r1060,%r1056; mov.u16 %r1057,%r1060; $L145: .loc 1 725 8 ld.u32 %r721,[%r715+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r721; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r722,[%value_in]; } mov.u64 %r235,%r722; .loc 1 726 6 setp.eq.u64 %r723,%r235,0; @ %r723 bra $L87; .loc 1 728 3 ld.s32 %r727,[%r715+20]; add.u64 %r728,%r727,2; shl.b64 %r729,%r728,2; add.u64 %r731,%r235,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r731; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1046; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r732,[%value_in]; } .loc 1 729 8 mov.b64 %r148,%r355; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r148; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1047; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call (%value_in),__d2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r738,[%value_in]; } mov.u64 %r330,%r738; .loc 1 729 6 st.u64 [%frame+8],%r330; .loc 1 730 6 setp.eq.u64 %r739,%r330,0; @ %r739 bra $L88; .loc 1 732 8 mov.u32 %r741,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r741; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r742,[%value_in]; } mov.u64 %r236,%r742; .loc 1 733 6 setp.ne.u64 %r743,%r236,0; @ %r743 bra $L89; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L89: .loc 1 744 11 ld.u32 %r150,[%frame+24]; .loc 1 744 6 setp.lt.s32 %r744,%r150,0; @ %r744 bra $L90; .loc 1 745 8 add.u32 %r212,%r150,%r717; mov.u32 %r215,%r352; bra $L91; $L90: .loc 1 747 8 sub.u32 %r215,%r352,%r150; mov.u32 %r212,%r717; $L91: .loc 1 757 9 ld.u32 %r152,[%frame]; vsub.u32.u32.u32.add %r746,%r150,%r126,%r152; .loc 1 757 5 add.u32 %r277,%r746,-1; .loc 1 758 5 mov.u32 %r747,54; sub.u32 %r223,%r747,%r152; .loc 1 759 6 setp.ge.s32 %r748,%r277,-1022; @ %r748 bra $L172; .loc 1 760 6 mov.u32 %r749,-1022; sub.u32 %r278,%r749,%r277; .loc 1 761 6 sub.u32 %r223,%r223,%r278; .loc 1 762 7 setp.gt.s32 %r750,%r278,31; @ %r750 bra $L93; .loc 1 763 9 mov.u32 %r751,1; shl.b32 %r238,%r751,%r278; .loc 1 755 8 mov.u32 %r239,0; bra $L92; $L93: .loc 1 765 21 mov.u32 %r753,-1054; sub.u32 %r752,%r753,%r277; .loc 1 765 10 mov.u32 %r754,1; shl.b32 %r239,%r754,%r752; .loc 1 754 7 mov.u32 %r238,%r754; bra $L92; $L172: .loc 1 755 8 mov.u32 %r239,0; .loc 1 754 7 mov.u32 %r238,1; $L92: .loc 1 783 7 add.u32 %r213,%r212,%r223; .loc 1 786 7 vadd.u32.u32.u32.add %r216,%r126,%r215,%r223; min.s32 %r755,%r212,%r213; min.s32 %r33,%r755,%r216; .loc 1 791 6 setp.le.s32 %r756,%r33,0; @ %r756 bra $L94; .loc 1 792 8 sub.u32 %r213,%r213,%r33; .loc 1 793 8 sub.u32 %r216,%r216,%r33; .loc 1 794 8 sub.u32 %r212,%r212,%r33; $L94: .loc 1 796 6 @ %r1048 bra $L95; .loc 1 797 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r742; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r717; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r761,[%value_in]; } mov.u64 %r236,%r761; .loc 1 798 7 setp.ne.u64 %r762,%r236,0; @ %r762 bra $L96; .loc 1 800 10 ld.u64 %r330,[%frame+8]; bra $L88; $L96: ld.u64 %r766,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r766; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r767,[%value_in]; } .loc 1 801 7 setp.ne.u64 %r768,%r767,0; @ %r768 bra $L97; .loc 1 803 4 ld.u64 %r330,[%frame+8]; bra $L88; $L97: ld.u64 %r771,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r771; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 804 7 st.u64 [%frame+8],%r767; $L95: .loc 1 806 6 setp.gt.s32 %r772,%r213,0; @ %r772 bra $L98; $L101: .loc 1 811 6 @ ! %r1049 bra $L100; bra $L99; $L98: .loc 1 807 9 ld.u64 %r777,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r777; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r213; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r778,[%value_in]; } mov.u64 %r330,%r778; .loc 1 807 7 st.u64 [%frame+8],%r330; .loc 1 808 7 setp.eq.u64 %r779,%r330,0; @ ! %r779 bra $L101; bra $L88; $L99: .loc 1 812 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r722; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r352; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r783,[%value_in]; } mov.u64 %r235,%r783; .loc 1 813 7 setp.ne.u64 %r784,%r235,0; @ %r784 bra $L100; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L100: .loc 1 816 6 setp.le.s32 %r785,%r216,0; @ %r785 bra $L102; .loc 1 817 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r216; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r789,[%value_in]; } mov.u64 %r235,%r789; .loc 1 818 7 setp.ne.u64 %r790,%r235,0; @ %r790 bra $L102; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L102: .loc 1 821 6 setp.le.s32 %r791,%r212,0; @ %r791 bra $L103; .loc 1 822 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r212; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r795,[%value_in]; } mov.u64 %r236,%r795; .loc 1 823 7 setp.ne.u64 %r796,%r236,0; @ %r796 bra $L103; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L103: .loc 1 826 11 ld.u64 %r800,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r800; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r235; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r801,[%value_in]; } mov.u64 %r237,%r801; .loc 1 827 6 setp.ne.u64 %r802,%r237,0; @ %r802 bra $L104; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L104: .loc 1 829 9 ld.u32 %r281,[%r801+16]; .loc 1 830 16 mov.u32 %r803,0; st.u32 [%r801+16],%r803; .loc 1 831 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r801; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r806,[%value_in]; } .loc 1 925 6 setp.ge.s32 %r807,%r806,0; @ %r807 bra $L105; .loc 1 929 7 setp.ne.u32 %r808,%r281,0; @ %r808 bra $L106; .loc 1 929 28 mov.b64 %r810,%r148; and.b64 %r809,%r810,4503599627370495; setp.ne.u64 %r811,%r809,0; @ %r811 bra $L106; .loc 1 932 9 shr.u64 %r1041,%r355,32; cvt.u32.u64 %r813,%r1041; .loc 1 932 20 and.b32 %r814,%r813,2146435072; .loc 1 932 5 setp.le.u32 %r815,%r814,112197632; @ %r815 bra $L106; .loc 1 944 7 ld.u32 %r816,[%r801+24]; setp.ne.u32 %r817,%r816,0; @ %r817 bra $L107; .loc 1 944 22 ld.u32 %r818,[%r801+20]; setp.le.s32 %r819,%r818,1; @ %r819 bra $L106; $L107: .loc 1 951 12 mov.u32 %r822,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r801; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r822; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r823,[%value_in]; } mov.u64 %r237,%r823; .loc 1 952 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r237; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r826,[%value_in]; } .loc 1 952 7 setp.gt.s32 %r827,%r826,0; @ ! %r827 bra $L106; bra $L108; $L105: .loc 1 956 6 setp.ne.u32 %r828,%r806,0; @ %r828 bra $L109; .loc 1 958 7 setp.eq.u32 %r1039,%r281,0; @ %r1039 bra $L110; .loc 1 959 10 shr.u64 %r830,%r355,32; cvt.u32.u64 %r167,%r830; .loc 1 959 21 and.b32 %r832,%r167,1048575; .loc 1 959 8 setp.ne.u32 %r833,%r832,1048575; @ %r833 bra $L111; .loc 1 960 10 cvt.u32.u64 %r169,%r355; .loc 1 963 59 setp.eq.u32 %r835,%r126,0; @ %r835 bra $L173; .loc 1 962 17 and.b32 %r289,%r167,2146435072; .loc 1 962 11 setp.gt.u32 %r836,%r289,111149056; @ %r836 bra $L174; .loc 1 963 43 shr.u32 %r837,%r289,20; .loc 1 963 40 mov.u32 %r839,107; sub.u32 %r838,%r839,%r837; .loc 1 963 59 mov.u32 %r840,-1; shl.b32 %r240,%r840,%r838; bra $L112; $L173: mov.u32 %r240,-1; bra $L112; $L174: mov.u32 %r240,-1; $L112: .loc 1 960 6 setp.ne.u32 %r841,%r169,%r240; @ %r841 bra $L111; .loc 1 967 9 mov.b64 %r842,%r148; setp.ne.u64 %r843,%r842,9218868437227405311; @ %r843 bra $L113; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L113: .loc 1 969 31 and.b32 %r844,%r167,2146435072; .loc 1 970 7 add.u32 %r845,%r844,1048576; .loc 1 969 17 cvt.u64.u32 %r846,%r845; .loc 1 976 17 shl.b64 %r355,%r846,32; .loc 1 1238 12 mov.b64 %r148,%r355; .loc 1 981 6 bra $L106; $L110: .loc 1 984 40 mov.b64 %r852,%r148; and.b64 %r851,%r852,4503599627370495; .loc 1 984 12 setp.ne.u64 %r853,%r851,0; @ %r853 bra $L111; shr.u64 %r1041,%r355,32; $L108: .loc 1 1102 7 cvt.u32.u64 %r855,%r1041; .loc 1 1002 8 setp.eq.u32 %r856,%r126,0; @ ! %r856 bra $L309; and.b32 %r1045,%r855,2146435072; bra $L114; $L309: .loc 1 1003 8 and.b32 %r1045,%r855,2146435072; .loc 1 1004 9 setp.gt.s32 %r857,%r1045,112197632; @ %r857 bra $L114; .loc 1 1005 10 setp.gt.s32 %r858,%r1045,57671680; @ %r858 bra $L115; ld.u64 %r1043,[%frame+8]; bra $L116; $L114: .loc 1 1014 33 add.u32 %r860,%r1045,-1048576; .loc 1 1016 20 or.b32 %r861,%r860,1048575; .loc 1 1016 16 cvt.u64.u32 %r862,%r861; shl.b64 %r863,%r862,32; .loc 1 1018 16 or.b64 %r355,%r863,4294967295; .loc 1 1238 12 mov.b64 %r148,%r355; .loc 1 1023 5 bra $L106; $L111: .loc 1 1028 7 setp.eq.u32 %r867,%r239,0; @ %r867 bra $L117; .loc 1 1029 11 shr.u64 %r868,%r355,32; cvt.u32.u64 %r181,%r868; .loc 1 1029 22 and.b32 %r870,%r181,%r239; .loc 1 1029 8 setp.eq.u32 %r871,%r870,0; @ %r871 bra $L106; bra $L118; $L117: .loc 1 1032 15 cvt.u32.u64 %r872,%r355; .loc 1 1032 26 and.b32 %r874,%r872,%r238; .loc 1 1032 12 setp.eq.u32 %r875,%r874,0; @ %r875 bra $L106; .loc 1 1102 7 shr.u64 %r876,%r355,32; cvt.u32.u64 %r181,%r876; $L118: .loc 1 1039 7 @ %r1039 bra $L119; .loc 1 191 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r148; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r880,[%value_in]; } mov.f64 %r305,%r880; .loc 1 192 12 setp.eq.u32 %r881,%r126,0; @ %r881 bra $L120; .loc 1 192 62 shr.u32 %r882,%r181,20; and.b32 %r883,%r882,2047; .loc 1 192 36 mov.u32 %r884,107; sub.u32 %r309,%r884,%r883; .loc 1 192 20 setp.le.s32 %r885,%r309,0; @ %r885 bra $L120; .loc 1 194 43 shl.b32 %r886,%r309,20; .loc 1 194 27 add.u32 %r887,%r886,1072693248; .loc 1 194 19 cvt.u64.u32 %r888,%r887; .loc 1 196 19 shl.b64 %r892,%r888,32; .loc 1 198 19 mov.b64 %r893,%r892; mul.f64 %r305,%r305,%r893; $L120: .loc 1 1041 14 add.f64 %r148,%r148,%r305; mov.b64 %r355,%r148; bra $L106; $L119: .loc 1 191 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r148; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r895,[%value_in]; } mov.f64 %r203,%r895; .loc 1 192 12 setp.eq.u32 %r896,%r126,0; @ %r896 bra $L121; .loc 1 192 62 shr.u32 %r897,%r181,20; and.b32 %r898,%r897,2047; .loc 1 192 36 mov.u32 %r899,107; sub.u32 %r317,%r899,%r898; .loc 1 192 20 setp.le.s32 %r900,%r317,0; @ %r900 bra $L122; .loc 1 194 43 shl.b32 %r901,%r317,20; .loc 1 194 27 add.u32 %r902,%r901,1072693248; .loc 1 194 19 cvt.u64.u32 %r903,%r902; .loc 1 196 19 shl.b64 %r907,%r903,32; .loc 1 198 19 mov.b64 %r908,%r907; mul.f64 %r203,%r203,%r908; bra $L122; $L109: .loc 1 1063 15 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r801; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call (%value_in),__ratio,(%out_arg1,%out_arg2); ld.param.f64 %r911,[%value_in]; } .loc 1 1063 6 setp.le.f64 %r912,%r911,0d4000000000000000; @ ! %r912 bra $L310; .loc 1 1064 7 setp.ne.u32 %r1038,%r281,0; @ %r1038 bra $L175; mov.b64 %r51,%r148; .loc 1 1066 24 and.b64 %r914,%r51,4503599627370495; .loc 1 1066 12 setp.eq.u64 %r915,%r914,0; @ %r915 bra $L126; .loc 1 1068 8 setp.eq.u64 %r916,%r51,1; @ ! %r916 bra $L311; ld.u64 %r1043,[%frame+8]; bra $L116; $L311: mov.f64 %r241,0dbff0000000000000; .loc 1 1071 10 mov.f64 %r230,0d3ff0000000000000; bra $L125; $L126: .loc 1 1078 8 setp.lt.f64 %r917,%r911,0d3ff0000000000000; @ %r917 bra $L176; .loc 1 1081 11 mul.f64 %r230,%r911,0d3fe0000000000000; .loc 1 1087 31 neg.f64 %r241,%r230; bra $L125; $L176: mov.f64 %r241,0dbfe0000000000000; .loc 1 1079 11 mov.f64 %r230,0d3fe0000000000000; bra $L125; $L310: .loc 1 1086 9 mul.f64 %r230,%r911,0d3fe0000000000000; .loc 1 1087 31 setp.ne.u32 %r1038,%r281,0; @ %r1038 bra $L177; neg.f64 %r241,%r230; bra $L125; $L177: mov.f64 %r241,%r230; bra $L125; $L175: mov.f64 %r241,0d3ff0000000000000; .loc 1 1065 10 mov.f64 %r230,%r241; $L125: .loc 1 1072 17 mov.b64 %r354,%r241; .loc 1 1102 7 shr.u64 %r919,%r355,32; cvt.u32.u64 %r920,%r919; .loc 1 1102 5 and.b32 %r284,%r920,2146435072; .loc 1 1106 6 setp.ne.u32 %r921,%r284,2145386496; @ %r921 bra $L129; .loc 1 1108 15 add.u32 %r922,%r920,-55574528; cvt.u64.u32 %r923,%r922; shl.b64 %r924,%r923,32; and.b64 %r925,%r355,4294967295; or.b64 %r355,%r925,%r924; .loc 1 1109 24 mov.b64 %r190,%r355; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r190; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r928,[%value_in]; } .loc 1 1110 13 fma.rn.f64 %r193,%r928,%r241,%r190; mov.b64 %r355,%r193; shr.u64 %r930,%r355,32; cvt.u32.u64 %r931,%r930; .loc 1 1111 20 and.b32 %r932,%r931,2146435072; .loc 1 1111 7 setp.le.u32 %r933,%r932,2090860543; @ %r933 bra $L130; .loc 1 1113 8 mov.b64 %r934,%r148; setp.ne.u64 %r935,%r934,9218868437227405311; @ %r935 bra $L131; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L131: .loc 1 1117 16 mov.u64 %r355,9218868437227405311; .loc 1 1119 5 bra $L132; $L130: .loc 1 1122 16 add.u32 %r261,%r931,55574528; cvt.u64.u32 %r936,%r261; shl.b64 %r937,%r936,32; and.b64 %r938,%r355,4294967295; or.b64 %r355,%r938,%r937; bra $L133; $L129: .loc 1 1126 19 set.u32.le.u32 %r944,%r284,111149056; neg.s32 %r945,%r944; mov.u32 %r943,%r945; .loc 1 1126 14 cvt.u16.u8 %r1060,%r943; mov.u16 %r948,%r1060; and.b16 %r946,%r1057,%r948; cvt.u32.u16 %r949,%r946; .loc 1 1126 7 cvt.u16.u8 %r950,%r949; setp.eq.u16 %r951,%r950,0; @ %r951 bra $L134; .loc 1 1127 8 setp.le.f64 %r952,%r230,0d41dfffffffc00000; @ ! %r952 bra $L135; .loc 1 1128 13 cvt.rzi.u32.f64 %r26,%r230; max.u32 %r26,%r26,1; .loc 1 1130 11 cvt.rn.f64.u32 %r230,%r26; .loc 1 1131 33 @ %r1038 bra $L178; neg.f64 %r242,%r230; bra $L137; $L178: mov.f64 %r242,%r230; $L137: .loc 1 1131 18 mov.b64 %r354,%r242; $L135: .loc 1 1133 19 shr.u64 %r954,%r354,32; cvt.u32.u64 %r955,%r954; add.u32 %r956,%r955,112197632; sub.u32 %r957,%r956,%r284; cvt.u64.u32 %r958,%r957; shl.b64 %r959,%r958,32; and.b64 %r960,%r354,4294967295; or.b64 %r354,%r960,%r959; $L134: .loc 1 1135 10 mov.b64 %r201,%r354; .loc 1 1135 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r148; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r963,[%value_in]; } .loc 1 1136 13 fma.rn.f64 %r204,%r201,%r963,%r148; mov.b64 %r355,%r204; shr.u64 %r1041,%r355,32; cvt.u32.u64 %r261,%r1041; $L133: .loc 1 1186 5 and.b32 %r967,%r261,2146435072; .loc 1 1191 6 set.u32.eq.u32 %r969,%r967,%r284; neg.s32 %r970,%r969; mov.u32 %r968,%r970; cvt.u16.u8 %r1060,%r968; mov.u16 %r975,%r1060; and.b16 %r974,%r975,%r1053; cvt.u32.u16 %r977,%r974; cvt.u16.u8 %r978,%r977; setp.eq.u16 %r979,%r978,0; @ %r979 bra $L132; .loc 1 1199 14 cvt.rzi.s64.f64 %r980,%r230; .loc 1 1203 9 cvt.rn.f64.s64 %r205,%r980; sub.f64 %r288,%r230,%r205; .loc 1 1205 7 @ %r1038 bra $L138; .loc 1 1205 28 and.b64 %r982,%r355,4503599627370495; setp.eq.u64 %r983,%r982,0; @ %r983 bra $L139; $L138: .loc 1 1206 8 setp.lt.f64 %r984,%r288,0d3fdfffff94a03595; @ ! %r984 bra $L312; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L312: .loc 1 1206 25 setp.gt.f64 %r985,%r288,0d3fe0000035afe535; @ ! %r985 bra $L132; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L139: .loc 1 1209 12 setp.lt.f64 %r986,%r288,0d3fcfffff94a03595; @ ! %r986 bra $L132; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L132: .loc 1 1214 3 ld.u64 %r989,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r989; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1215 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1216 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1217 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r801; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 725 6 bra $L145; $L106: .loc 1 1233 5 setp.ne.u32 %r996,%r126,0; @ %r996 bra $L115; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L115: .loc 1 1238 12 mul.f64 %r209,%r148,0d3950000000000000; mov.b64 %r355,%r209; .loc 1 1241 6 setp.eq.u64 %r998,%r355,0; @ %r998 bra $L146; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L146: .loc 1 1242 16 mov.u32 %r999,34; st.u32 [%r359],%r999; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; $L142: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r330; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1255 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1256 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1257 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r715; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1258 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1262 17 mov.b64 %r358,%r355; bra $L22; $L162: mov.f64 %r358,0d0000000000000000; $L22: .loc 1 1260 5 setp.eq.u64 %r1010,%r361,0; @ %r1010 bra $L147; .loc 1 1261 7 ld.u64 %r1011,[%frame+16]; st.u64 [%r361],%r1011; $L147: .loc 1 1262 26 setp.eq.u32 %r1012,%r226,0; @ %r1012 bra $L1; neg.f64 %r358,%r358; bra $L1; $L161: .loc 1 1260 5 mov.f64 %r358,0d0000000000000000; .loc 1 1262 26 bra $L1; $L87: .loc 1 1254 2 ld.u64 %r330,[%frame+8]; $L88: .loc 1 588 17 mov.u32 %r1014,34; st.u32 [%r359],%r1014; .loc 1 610 16 mov.u64 %r355,9218868437227405312; bra $L142; $L116: .loc 1 693 15 mov.u64 %r355,0; .loc 1 695 18 mov.u32 %r1015,34; st.u32 [%r359],%r1015; .loc 1 1254 2 mov.u64 %r330,%r1043; bra $L142; $L122: .loc 1 1048 14 sub.f64 %r148,%r148,%r203; .loc 1 1053 8 setp.eq.f64 %r1016,%r148,0d0000000000000000; @ ! %r1016 bra $L115; ld.u64 %r1043,[%frame+8]; bra $L116; $L121: .loc 1 1048 14 sub.f64 %r73,%r148,%r895; mov.b64 %r355,%r73; .loc 1 1254 2 ld.u64 %r1043,[%frame+8]; mov.u64 %r330,%r1043; .loc 1 1053 8 setp.eq.f64 %r1017,%r73,0d0000000000000000; @ ! %r1017 bra $L142; bra $L116; $L64: .loc 1 557 5 vsub.u32.u32.u32.add %r264,%r353,%r260,%r258; bra $L149; $L152: .loc 1 350 11 ld.u64 %r1019,[%frame+16]; add.u64 %r345,%r1019,%r334; st.u64 [%frame+16],%r345; .loc 1 350 5 ld.s8 %r218,[%r345]; .loc 1 352 12 setp.eq.u32 %r1020,%r218,48; @ %r1020 bra $L150; .loc 1 270 18 mov.u32 %r255,%r1024; bra $L151; $L24: .loc 1 347 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r333; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r246; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r334; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1024,[%value_in]; } mov.u32 %r323,%r1024; .loc 1 347 5 setp.eq.u32 %r1025,%r323,0; @ %r1025 bra $L152; .loc 1 341 22 mov.u32 %r218,%r25; .loc 1 341 9 mov.u32 %r323,0; .loc 1 340 8 mov.u32 %r233,%r323; .loc 1 340 4 mov.u32 %r231,%r323; .loc 1 270 18 mov.u32 %r255,%r323; .loc 1 341 14 mov.u32 %r224,%r323; .loc 1 341 9 mov.u32 %r253,%r323; .loc 1 270 26 mov.u32 %r331,%r323; bra $L30; $L154: .loc 1 350 11 ld.u64 %r1026,[%frame+16]; add.u64 %r328,%r1026,%r334; st.u64 [%frame+16],%r328; .loc 1 350 5 ld.s8 %r218,[%r328]; .loc 1 341 50 mov.u32 %r323,%r253; .loc 1 341 14 mov.u32 %r224,%r255; bra $L153; $L307: .loc 1 347 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r246; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r334; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1030,[%value_in]; } mov.u32 %r255,%r1030; .loc 1 347 5 setp.eq.u32 %r1031,%r1030,0; @ %r1031 bra $L154; .loc 1 382 5 cvt.u16.u32 %r1033,%r25; and.b16 %r1032,%r1033,-33; cvt.u32.u16 %r1034,%r1032; cvt.s16.s8 %r1035,%r1034; setp.eq.u16 %r1036,%r1035,69; @ %r1036 bra $L179; .loc 1 341 50 mov.u32 %r353,%r253; .loc 1 341 14 mov.u32 %r224,0; .loc 1 381 4 mov.u32 %r219,%r224; bra $L49; $L1: .loc 1 1263 1 mov.f64 %value,%r358; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtod_r .visible .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .f64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 1270 10 cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r30,[%value_in]; } .loc 1 1271 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtod_l .visible .func (.param .f64 %value_out) strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .f64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 1278 10 ld.global.u64 %r31,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r32,[%value_in]; } .loc 1 1279 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtod .visible .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; .reg .f64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 1284 10 ld.global.u64 %r30,[_impure_ptr]; cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 1285 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtof_l .visible .func (.param .f32 %value_out) strtof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .f64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .f32 %r46; .reg .u64 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .pred %r50; .reg .f64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 1290 16 ld.global.u64 %r37,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r32; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r38,[%value_in]; } .loc 1 1291 6 setp.num.f64 %r39,%r38,%r38; @ %r39 bra $L317; .loc 1 1292 12 mov.b64 %r40,%r38; shr.u64 %r41,%r40,63; cvt.u32.u64 %r43,%r41; .loc 1 1292 39 setp.eq.u32 %r44,%r43,0; @ %r44 bra $L318; .loc 1 1292 29 cvta.const.u64 %r45,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 1292 39 neg.f32 %r29,%r46; bra $L316; $L318: .loc 1 1292 41 cvta.const.u64 %r47,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } mov.f32 %r29,%r48; bra $L316; $L317: .loc 1 1293 9 cvt.rn.f32.f64 %r29,%r38; .loc 1 1295 7 abs.f32 %r49,%r29; .loc 1 1295 6 setp.leu.f32 %r50,%r49,0f7f7fffff; @ %r50 bra $L316; .loc 1 1295 26 abs.f64 %r51,%r38; .loc 1 1295 22 setp.leu.f64 %r52,%r51,0d7fefffffffffffff; @ ! %r52 bra $L316; .loc 1 1296 20 ld.global.u64 %r53,[_impure_ptr]; mov.u32 %r54,34; st.u32 [%r53],%r54; $L316: .loc 1 1299 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtof .visible .func (.param .f32 %value_out) strtof (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .f64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .f32 %r45; .reg .u64 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 1305 16 ld.global.u64 %r36,[_impure_ptr]; cvta.global.u64 %r35,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r35; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r37,[%value_in]; } .loc 1 1306 6 setp.num.f64 %r38,%r37,%r37; @ %r38 bra $L323; .loc 1 1307 12 mov.b64 %r39,%r37; shr.u64 %r40,%r39,63; cvt.u32.u64 %r42,%r40; .loc 1 1307 39 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L324; .loc 1 1307 29 cvta.const.u64 %r44,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 1307 39 neg.f32 %r29,%r45; bra $L322; $L324: .loc 1 1307 41 cvta.const.u64 %r46,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } mov.f32 %r29,%r47; bra $L322; $L323: .loc 1 1308 9 cvt.rn.f32.f64 %r29,%r37; .loc 1 1310 7 abs.f32 %r48,%r29; .loc 1 1310 6 setp.leu.f32 %r49,%r48,0f7f7fffff; @ %r49 bra $L322; .loc 1 1310 26 abs.f64 %r50,%r37; .loc 1 1310 22 setp.leu.f64 %r51,%r50,0d7fefffffffffffff; @ ! %r51 bra $L322; .loc 1 1311 20 ld.global.u64 %r52,[_impure_ptr]; mov.u32 %r53,34; st.u32 [%r52],%r53; $L322: .loc 1 1314 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } lib_a-strtodg.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1368 0 0 0 644 10916 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoimax_l$constprop$0 .func (.param .u64 %value_out) _strtoimax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtoimax.c" // BEGIN GLOBAL FUNCTION DECL: _strtoimax_r .visible .func (.param .u64 %value_out) _strtoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoimax_l .visible .func (.param .u64 %value_out) strtoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoimax .visible .func (.param .u64 %value_out) strtoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoimax_l$constprop$0 .func (.param .u64 %value_out) _strtoimax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u32 %r44; .reg .u32 %r50; .reg .u64 %r52; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u64 %r73; .reg .u16 %r76; .reg .u16 %r78; .reg .pred %r79; .reg .u16 %r80; .reg .pred %r81; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r89; .reg .u16 %r90; .reg .u32 %r91; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .pred %r96; .reg .u64 %r97; .reg .u64 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u32 %r103; .reg .u16 %r104; .reg .pred %r105; .reg .u16 %r107; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .u16 %r112; .reg .u32 %r114; .reg .u16 %r115; .reg .u32 %r117; .reg .u16 %r118; .reg .pred %r119; .reg .u16 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u16 %r132; .reg .u32 %r133; .reg .u16 %r134; .reg .pred %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u16 %r144; .reg .u32 %r145; .reg .u16 %r146; .reg .pred %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u32 %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r157; .reg .pred %r158; .reg .pred %r160; .reg .u64 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u16 %r164; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.u64 %r68,%ar2; mov.u32 %r69,%ar3; mov.u64 %r60,%r67; cvta.const.u64 %r161,_ctype_+1; $L2: mov.u64 %r22,%r60; add.u64 %r33,%r60,1; mov.u64 %r60,%r33; .loc 1 75 5 ld.s8 %r32,[%r22]; .loc 1 76 11 cvt.u32.u32 %r71,%r32; cvt.s64.s8 %r70,%r71; add.u64 %r73,%r161,%r70; ld.u8 %r164,[%r73]; mov.u16 %r76,%r164; and.b16 %r78,%r76,8; setp.ne.u16 %r79,%r78,0; @ %r79 bra $L2; .loc 1 77 5 cvt.u16.u32 %r80,%r32; setp.ne.u16 %r81,%r80,45; @ %r81 bra $L3; .loc 1 79 5 ld.s8 %r32,[%r33]; .loc 1 79 9 add.u64 %r33,%r22,2; .loc 1 78 7 mov.u32 %r37,1; bra $L4; $L3: .loc 1 82 6 setp.ne.u16 %r83,%r80,43; @ %r83 bra $L22; .loc 1 83 6 ld.s8 %r32,[%r60]; .loc 1 83 10 add.u64 %r33,%r22,2; .loc 1 81 7 mov.u32 %r37,0; bra $L4; $L22: mov.u32 %r37,0; $L4: .loc 1 85 12 and.b32 %r84,%r69,-17; .loc 1 85 5 setp.ne.u32 %r85,%r84,0; @ %r85 bra $L5; .loc 1 85 32 cvt.u16.u32 %r86,%r32; setp.ne.u16 %r87,%r86,48; @ %r87 bra $L6; .loc 1 86 29 ld.u8 %r164,[%r33]; mov.u16 %r90,%r164; and.b16 %r89,%r90,-33; cvt.u32.u16 %r91,%r89; .loc 1 86 15 cvt.s16.s8 %r92,%r91; setp.ne.u16 %r93,%r92,88; @ %r93 bra $L7; .loc 1 87 5 ld.s8 %r32,[%r33+1]; .loc 1 88 5 add.u64 %r33,%r33,2; mov.u64 %r59,16; .loc 1 89 8 mov.u32 %r69,16; bra $L8; $L7: .loc 1 91 5 setp.eq.u32 %r94,%r69,0; @ %r94 bra $L23; $L5: .loc 1 94 15 add.u32 %r95,%r69,-2; .loc 1 94 5 setp.gt.u32 %r96,%r95,34; @ %r96 bra $L24; .loc 1 116 18 cvt.s64.s32 %r59,%r69; bra $L8; $L23: .loc 1 91 5 mov.u64 %r59,8; .loc 1 92 23 mov.u32 %r69,8; bra $L8; $L28: .loc 1 91 5 mov.u64 %r59,10; .loc 1 92 23 mov.u32 %r69,10; $L8: .loc 1 115 40 cvt.s64.s32 %r97,%r37; add.u64 %r61,%r97,9223372036854775807; .loc 1 116 18 rem.u64 %r99,%r61,%r59; .loc 1 116 9 cvt.u32.u64 %r40,%r99; .loc 1 117 9 div.u64 %r41,%r61,%r59; mov.u64 %r64,%r33; .loc 1 67 15 mov.u32 %r50,0; .loc 1 64 12 mov.u64 %r52,0; .loc 1 130 8 mov.u32 %r162,-1; .loc 1 132 8 mov.u32 %r163,1; $L15: .loc 1 119 16 cvt.u32.u32 %r100,%r32; cvt.u16.u8 %r102,%r100; add.u16 %r101,%r102,-48; cvt.u32.u16 %r103,%r101; .loc 1 119 6 cvt.u16.u8 %r104,%r103; setp.gt.u16 %r105,%r104,9; @ %r105 bra $L10; .loc 1 120 6 cvt.s32.s8 %r44,%r103; bra $L11; $L10: .loc 1 121 21 add.u16 %r107,%r102,-65; cvt.u32.u16 %r109,%r107; .loc 1 121 11 cvt.u16.u8 %r110,%r109; setp.gt.u16 %r111,%r110,25; @ %r111 bra $L12; .loc 1 122 6 add.u16 %r112,%r102,-55; cvt.u32.u16 %r114,%r112; cvt.s32.s8 %r44,%r114; bra $L11; $L12: .loc 1 123 21 add.u16 %r115,%r102,-97; cvt.u32.u16 %r117,%r115; .loc 1 123 11 cvt.u16.u8 %r118,%r117; setp.gt.u16 %r119,%r118,25; @ %r119 bra $L13; .loc 1 124 6 add.u16 %r120,%r102,-87; cvt.u32.u16 %r122,%r120; cvt.s32.s8 %r44,%r122; $L11: .loc 1 127 6 setp.ge.s32 %r123,%r44,%r69; @ %r123 bra $L13; .loc 1 129 11 shr.u32 %r125,%r50,31; mov.u32 %r126,%r125; .loc 1 129 22 set.u32.lt.u64 %r128,%r41,%r52; neg.s32 %r129,%r128; mov.u32 %r127,%r129; .loc 1 129 15 cvt.u16.u8 %r164,%r126; mov.u16 %r131,%r164; cvt.u16.u8 %r164,%r127; mov.u16 %r132,%r164; or.b16 %r130,%r131,%r132; cvt.u32.u16 %r133,%r130; .loc 1 129 6 cvt.u16.u8 %r134,%r133; setp.ne.u16 %r135,%r134,0; @ %r135 bra $L25; .loc 1 129 31 set.u32.eq.u64 %r137,%r41,%r52; neg.s32 %r138,%r137; mov.u32 %r136,%r138; .loc 1 129 49 set.u32.lt.s32 %r140,%r40,%r44; neg.s32 %r141,%r140; mov.u32 %r139,%r141; cvt.u16.u8 %r164,%r136; mov.u16 %r143,%r164; cvt.u16.u8 %r164,%r139; mov.u16 %r144,%r164; and.b16 %r142,%r143,%r144; cvt.u32.u16 %r145,%r142; cvt.u16.u8 %r146,%r145; setp.ne.u16 %r147,%r146,0; @ %r147 bra $L26; .loc 1 134 8 cvt.u32.u32 %r149,%r44; cvt.s64.s8 %r148,%r149; mad.lo.u64 %r52,%r52,%r59,%r148; .loc 1 132 8 mov.u32 %r50,%r163; bra $L14; $L25: .loc 1 130 8 mov.u32 %r50,%r162; bra $L14; $L26: mov.u32 %r50,%r162; $L14: .loc 1 118 14 ld.s8 %r32,[%r64]; add.u64 %r64,%r64,1; .loc 1 119 6 bra $L15; $L13: .loc 1 137 5 setp.ne.u32 %r150,%r50,-1; @ %r150 bra $L16; .loc 1 139 16 mov.u32 %r151,34; st.u32 [%r66],%r151; .loc 1 145 5 setp.ne.u64 %r152,%r68,0; @ %r152 bra $L17; .loc 1 147 9 mov.u64 %r65,%r61; bra $L1; $L16: .loc 1 140 12 setp.ne.u32 %r153,%r50,0; @ %r153 bra $L19; .loc 1 147 9 mov.u64 %r65,%r52; bra $L9; $L24: mov.u64 %r65,0; $L9: .loc 1 142 16 mov.u32 %r154,22; st.u32 [%r66],%r154; .loc 1 145 5 setp.ne.u64 %r155,%r68,0; @ %r155 bra $L20; bra $L1; $L19: .loc 1 143 12 setp.eq.u32 %r156,%r37,0; @ %r156 bra $L21; .loc 1 144 7 neg.s64 %r61,%r52; .loc 1 145 5 setp.ne.u64 %r157,%r68,0; @ %r157 bra $L17; .loc 1 147 9 mov.u64 %r65,%r61; bra $L1; $L21: .loc 1 145 5 setp.ne.u64 %r158,%r68,0; @ %r158 bra $L27; .loc 1 147 9 mov.u64 %r65,%r52; bra $L1; $L27: .loc 1 145 5 mov.u64 %r61,%r52; $L17: .loc 1 146 13 add.u64 %r67,%r64,-1; .loc 1 147 9 mov.u64 %r65,%r61; $L20: .loc 1 146 11 st.u64 [%r68],%r67; .loc 1 147 9 bra $L1; $L6: .loc 1 91 5 setp.eq.u32 %r160,%r69,0; @ %r160 bra $L28; bra $L5; $L1: .loc 1 148 1 mov.u64 %value,%r65; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoimax_r .visible .func (.param .u64 %value_out) _strtoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 154 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoimax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 155 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoimax_l .visible .func (.param .u64 %value_out) strtoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 163 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoimax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 164 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoimax .visible .func (.param .u64 %value_out) strtoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 169 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoimax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 170 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strtok.o/ 0 0 0 644 1397 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtok .visible .func (.param .u64 %value_out) strtok (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strtok.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __strtok_r .extern .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: strtok .visible .func (.param .u64 %value_out) strtok (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 88 9 ld.global.u64 %r32,[_impure_ptr]; add.u64 %r31,%r32,152; mov.u32 %r30,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r30; call (%value_in),__strtok_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 89 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /1387 0 0 0 644 3623 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __strtok_r .visible .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/string/strtok_r.c" // BEGIN GLOBAL FUNCTION DECL: strtok_r .visible .func (.param .u64 %value_out) strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: __strtok_r .visible .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .pred %r56; .reg .pred %r58; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; mov.u64 %r43,%ar2; mov.u32 %r44,%ar3; .loc 1 43 5 setp.ne.u64 %r45,%r41,0; @ %r45 bra $L2; .loc 1 43 22 ld.u64 %r41,[%r43]; .loc 1 43 16 setp.eq.u64 %r46,%r41,0; @ %r46 bra $L11; $L2: mov.u64 %r38,%r41; .loc 1 53 7 setp.ne.u32 %r58,%r44,0; $L5: mov.u64 %r40,%r38; add.u64 %r38,%r38,1; .loc 1 50 4 ld.s8 %r28,[%r40]; .loc 1 51 2 mov.u64 %r35,%r42; bra $L4; $L6: .loc 1 52 6 add.u64 %r35,%r35,1; setp.ne.u32 %r47,%r28,%r29; @ %r47 bra $L4; .loc 1 53 7 @ %r58 bra $L5; .loc 1 57 12 st.u64 [%r43],%r38; .loc 1 58 11 mov.u32 %r49,0; st.u8 [%r40],%r49; .loc 1 59 15 bra $L1; $L4: .loc 1 51 34 ld.s8 %r29,[%r35]; .loc 1 51 46 setp.ne.u32 %r50,%r29,0; @ %r50 bra $L6; .loc 1 64 5 setp.ne.u32 %r51,%r28,0; @ %r51 bra $L7; .loc 1 65 10 mov.u64 %r52,0; st.u64 [%r43],%r52; .loc 1 66 10 mov.u64 %r40,%r52; bra $L1; $L7: add.u64 %r33,%r38,1; mov.u64 %r27,%r33; .loc 1 75 5 ld.s8 %r30,[%r38]; mov.u64 %r22,%r42; $L10: .loc 1 78 12 ld.s8 %r31,[%r22]; .loc 1 78 7 setp.ne.u32 %r53,%r30,%r31; @ %r53 bra $L8; .loc 1 79 8 setp.eq.u32 %r54,%r30,0; @ %r54 bra $L12; .loc 1 82 12 mov.u32 %r55,0; st.u8 [%r33+-1],%r55; bra $L9; $L12: .loc 1 80 8 mov.u64 %r27,0; $L9: .loc 1 83 12 st.u64 [%r43],%r27; .loc 1 84 12 bra $L1; $L8: .loc 1 86 15 add.u64 %r22,%r22,1; setp.ne.u32 %r56,%r31,0; @ %r56 bra $L10; mov.u64 %r38,%r33; bra $L7; $L11: .loc 1 44 10 mov.u64 %r40,%r41; $L1: .loc 1 89 1 mov.u64 %value,%r40; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtok_r .visible .func (.param .u64 %value_out) strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r29; .reg .u64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 96 9 mov.u32 %r29,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),__strtok_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 97 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strtol.o/ 0 0 0 644 12326 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtol_l$part$0 .func (.param .u64 %value_out) _strtol_l$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtol.c" // BEGIN GLOBAL FUNCTION DECL: _strtol_r .visible .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtol_l .visible .func (.param .u64 %value_out) strtol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtol .visible .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN FUNCTION DEF: _strtol_l$part$0 .func (.param .u64 %value_out) _strtol_l$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u64 %r43; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r86; .reg .u16 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u64 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u32 %r121; .reg .u16 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r132; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u16 %r136; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r35,%r66; cvta.const.u64 %r133,_ctype_+1; $L2: mov.u64 %r22,%r35; add.u64 %r36,%r35,1; mov.u64 %r35,%r36; .loc 1 150 7 ld.u8 %r23,[%r22]; .loc 1 151 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r133,%r69; ld.u8 %r136,[%r72]; mov.u16 %r75,%r136; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 150 5 mov.u32 %r31,%r23; .loc 1 152 5 setp.ne.u32 %r79,%r31,45; @ %r79 bra $L3; .loc 1 154 5 ld.u8 %r31,[%r36]; .loc 1 154 9 add.u64 %r36,%r22,2; mov.u64 %r39,-9223372036854775808; .loc 1 153 7 mov.u32 %r40,1; bra $L4; $L3: .loc 1 155 12 setp.ne.u32 %r80,%r31,43; @ %r80 bra $L20; .loc 1 156 5 ld.u8 %r31,[%r35]; .loc 1 156 9 add.u64 %r36,%r22,2; .loc 1 156 5 mov.u64 %r39,9223372036854775807; .loc 1 137 15 mov.u32 %r40,0; bra $L4; $L20: mov.u64 %r39,9223372036854775807; mov.u32 %r40,0; $L4: .loc 1 157 12 and.b32 %r81,%r68,-17; .loc 1 157 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 184 20 cvt.s64.s32 %r62,%r68; bra $L6; $L5: .loc 1 157 32 setp.ne.u32 %r83,%r31,48; @ %r83 bra $L7; .loc 1 158 29 ld.u8 %r136,[%r36]; mov.u16 %r86,%r136; .loc 1 158 15 and.b16 %r88,%r86,223; setp.ne.u16 %r89,%r88,88; @ %r89 bra $L8; .loc 1 159 5 ld.u8 %r31,[%r36+1]; .loc 1 160 5 add.u64 %r36,%r36,2; mov.u64 %r62,16; .loc 1 161 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 163 5 setp.eq.u32 %r90,%r68,0; @ %r90 bra $L21; .loc 1 184 20 cvt.s64.s32 %r62,%r68; bra $L6; $L21: .loc 1 163 5 mov.u64 %r62,8; .loc 1 164 23 mov.u32 %r68,8; bra $L6; $L24: .loc 1 163 5 mov.u64 %r62,10; .loc 1 164 23 mov.u32 %r68,10; $L6: .loc 1 184 18 rem.u64 %r92,%r39,%r62; .loc 1 184 9 cvt.u32.u64 %r42,%r92; .loc 1 185 9 div.u64 %r43,%r39,%r62; mov.u64 %r61,%r36; .loc 1 186 20 mov.u32 %r49,0; .loc 1 186 11 mov.u64 %r51,0; .loc 1 198 8 mov.u32 %r134,-1; .loc 1 200 8 mov.u32 %r135,1; $L14: .loc 1 187 16 add.u32 %r93,%r31,-48; .loc 1 187 6 setp.gt.u32 %r94,%r93,9; @ %r94 bra $L9; .loc 1 188 6 mov.u32 %r46,%r93; bra $L10; $L9: .loc 1 189 21 add.u32 %r95,%r31,-65; .loc 1 189 11 setp.gt.u32 %r96,%r95,25; @ %r96 bra $L11; .loc 1 190 6 add.u32 %r46,%r31,-55; bra $L10; $L11: .loc 1 191 21 add.u32 %r97,%r31,-97; .loc 1 191 11 setp.gt.u32 %r98,%r97,25; @ %r98 bra $L12; .loc 1 192 6 add.u32 %r46,%r31,-87; $L10: .loc 1 195 6 setp.le.s32 %r99,%r68,%r46; @ %r99 bra $L12; .loc 1 197 11 shr.u32 %r101,%r49,31; mov.u32 %r102,%r101; .loc 1 197 22 set.u32.lt.u64 %r104,%r43,%r51; neg.s32 %r105,%r104; mov.u32 %r103,%r105; .loc 1 197 15 cvt.u16.u8 %r136,%r102; mov.u16 %r107,%r136; cvt.u16.u8 %r136,%r103; mov.u16 %r108,%r136; or.b16 %r106,%r107,%r108; cvt.u32.u16 %r109,%r106; .loc 1 197 6 cvt.u16.u8 %r110,%r109; setp.ne.u16 %r111,%r110,0; @ %r111 bra $L22; .loc 1 197 39 set.u32.eq.u64 %r113,%r43,%r51; neg.s32 %r114,%r113; mov.u32 %r112,%r114; .loc 1 197 54 set.u32.lt.s32 %r116,%r42,%r46; neg.s32 %r117,%r116; mov.u32 %r115,%r117; .loc 1 197 49 cvt.u16.u8 %r136,%r112; mov.u16 %r119,%r136; cvt.u16.u8 %r136,%r115; mov.u16 %r120,%r136; and.b16 %r118,%r119,%r120; cvt.u32.u16 %r121,%r118; .loc 1 197 31 cvt.u16.u8 %r122,%r121; setp.ne.u16 %r123,%r122,0; @ %r123 bra $L23; .loc 1 202 8 cvt.s64.s32 %r124,%r46; mad.lo.u64 %r51,%r51,%r62,%r124; .loc 1 200 8 mov.u32 %r49,%r135; bra $L13; $L22: .loc 1 198 8 mov.u32 %r49,%r134; bra $L13; $L23: mov.u32 %r49,%r134; $L13: .loc 1 186 28 ld.u8 %r31,[%r61]; add.u64 %r61,%r61,1; .loc 1 187 6 bra $L14; $L12: .loc 1 205 5 setp.ne.u32 %r125,%r49,-1; @ %r125 bra $L15; .loc 1 207 16 mov.u32 %r126,34; st.u32 [%r65],%r126; .loc 1 210 5 setp.ne.u64 %r127,%r67,0; @ %r127 bra $L16; .loc 1 206 7 mov.u64 %r51,%r39; bra $L28; $L15: .loc 1 208 12 setp.eq.u32 %r128,%r40,0; @ %r128 bra $L18; .loc 1 209 7 neg.s64 %r51,%r51; $L18: .loc 1 210 5 setp.eq.u64 %r129,%r67,0; @ %r129 bra $L28; .loc 1 211 13 setp.eq.u32 %r130,%r49,0; @ %r130 bra $L19; mov.u64 %r39,%r51; $L16: add.u64 %r66,%r61,-1; mov.u64 %r51,%r39; $L19: .loc 1 211 11 st.u64 [%r67],%r66; bra $L28; $L7: .loc 1 163 5 setp.eq.u32 %r132,%r68,0; @ %r132 bra $L24; .loc 1 184 20 cvt.s64.s32 %r62,%r68; bra $L6; $L28: .loc 1 213 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtol_r .visible .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r50; .reg .u16 %r52; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u32 %r31,%ar3; .loc 1 139 28 set.u32.gt.u32 %r33,%r31,36; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 139 23 set.u32.eq.u32 %r36,%r31,1; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 139 28 cvt.u16.u8 %r52,%r32; mov.u16 %r39,%r52; cvt.u16.u8 %r52,%r35; mov.u16 %r40,%r52; or.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L37; .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 140 9 mov.u32 %r45,22; st.u32 [%r44],%r45; .loc 1 141 10 mov.u64 %r27,0; bra $L36; $L37: { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r31; call (%value_in),_strtol_l$part$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r50,[%value_in]; } mov.u64 %r27,%r50; $L36: .loc 1 222 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtol_l .visible .func (.param .u64 %value_out) strtol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u64 %r51; .reg .u16 %r53; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u32 %r31,%ar2; .loc 1 230 9 ld.global.u64 %r22,[_impure_ptr]; .loc 1 139 28 set.u32.gt.u32 %r34,%r31,36; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 139 23 set.u32.eq.u32 %r37,%r31,1; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 139 28 cvt.u16.u8 %r53,%r33; mov.u16 %r40,%r53; cvt.u16.u8 %r53,%r36; mov.u16 %r41,%r53; or.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L40; .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 140 9 mov.u32 %r46,22; st.u32 [%r45],%r46; .loc 1 141 10 mov.u64 %r28,0; bra $L39; $L40: { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r31; call (%value_in),_strtol_l$part$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r51,[%value_in]; } mov.u64 %r28,%r51; $L39: .loc 1 231 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtol .visible .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r50; .reg .u16 %r52; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u32 %r31,%ar2; .loc 1 238 9 ld.global.u64 %r22,[_impure_ptr]; .loc 1 139 28 set.u32.gt.u32 %r33,%r31,36; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 139 23 set.u32.eq.u32 %r36,%r31,1; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 139 28 cvt.u16.u8 %r52,%r32; mov.u16 %r39,%r52; cvt.u16.u8 %r52,%r35; mov.u16 %r40,%r52; or.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L43; .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 140 9 mov.u32 %r45,22; st.u32 [%r44],%r45; .loc 1 141 10 mov.u64 %r28,0; bra $L42; $L43: { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r31; call (%value_in),_strtol_l$part$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r50,[%value_in]; } mov.u64 %r28,%r50; $L42: .loc 1 239 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-strtold.o/0 0 0 644 3619 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _strtold_r .visible .func (.param .f64 %value_out) _strtold_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/strtold.c" // BEGIN GLOBAL FUNCTION DECL: strtold_l .visible .func (.param .f64 %value_out) strtold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtold .visible .func (.param .f64 %value_out) strtold (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: _strtod_l .extern .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _strtold_r .visible .func (.param .f64 %value_out) _strtold_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .f64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 67 10 cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r30,[%value_in]; } .loc 1 74 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtold_l .visible .func (.param .f64 %value_out) strtold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .f64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 81 10 ld.global.u64 %r31,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r32,[%value_in]; } .loc 1 88 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtold .visible .func (.param .f64 %value_out) strtold (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; .reg .f64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 95 10 ld.global.u64 %r30,[_impure_ptr]; cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 102 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } lib_a-strtoll.o/0 0 0 644 9795 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoll_l$constprop$0 .func (.param .u64 %value_out) _strtoll_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtoll.c" // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .visible .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoll_l .visible .func (.param .u64 %value_out) strtoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoll .visible .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoll_l$constprop$0 .func (.param .u64 %value_out) _strtoll_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r86; .reg .u16 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u64 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u32 %r121; .reg .u16 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r132; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u16 %r136; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r34,%r66; cvta.const.u64 %r133,_ctype_+1; $L2: mov.u64 %r22,%r34; add.u64 %r35,%r34,1; mov.u64 %r34,%r35; .loc 1 147 7 ld.u8 %r23,[%r22]; .loc 1 148 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r133,%r69; ld.u8 %r136,[%r72]; mov.u16 %r75,%r136; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 147 5 mov.u32 %r43,%r23; .loc 1 149 5 setp.ne.u32 %r79,%r43,45; @ %r79 bra $L3; .loc 1 151 5 ld.u8 %r43,[%r35]; .loc 1 151 9 add.u64 %r35,%r22,2; mov.u64 %r38,-9223372036854775808; .loc 1 150 7 mov.u32 %r39,1; bra $L4; $L3: .loc 1 152 12 setp.ne.u32 %r80,%r43,43; @ %r80 bra $L20; .loc 1 153 5 ld.u8 %r43,[%r34]; .loc 1 153 9 add.u64 %r35,%r22,2; .loc 1 153 5 mov.u64 %r38,9223372036854775807; .loc 1 139 15 mov.u32 %r39,0; bra $L4; $L20: mov.u64 %r38,9223372036854775807; mov.u32 %r39,0; $L4: .loc 1 154 12 and.b32 %r81,%r68,-17; .loc 1 154 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 181 20 cvt.s64.s32 %r62,%r68; bra $L6; $L5: .loc 1 154 32 setp.ne.u32 %r83,%r43,48; @ %r83 bra $L7; .loc 1 155 29 ld.u8 %r136,[%r35]; mov.u16 %r86,%r136; .loc 1 155 15 and.b16 %r88,%r86,223; setp.ne.u16 %r89,%r88,88; @ %r89 bra $L8; .loc 1 156 5 ld.u8 %r43,[%r35+1]; .loc 1 157 5 add.u64 %r35,%r35,2; mov.u64 %r62,16; .loc 1 158 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 160 5 setp.eq.u32 %r90,%r68,0; @ %r90 bra $L21; .loc 1 181 20 cvt.s64.s32 %r62,%r68; bra $L6; $L21: .loc 1 160 5 mov.u64 %r62,8; .loc 1 161 23 mov.u32 %r68,8; bra $L6; $L24: .loc 1 160 5 mov.u64 %r62,10; .loc 1 161 23 mov.u32 %r68,10; $L6: .loc 1 181 18 rem.u64 %r92,%r38,%r62; .loc 1 181 9 cvt.u32.u64 %r41,%r92; .loc 1 182 9 div.u64 %r42,%r38,%r62; mov.u64 %r61,%r35; .loc 1 183 20 mov.u32 %r49,0; .loc 1 183 11 mov.u64 %r51,0; .loc 1 195 8 mov.u32 %r134,-1; .loc 1 197 8 mov.u32 %r135,1; $L14: .loc 1 184 16 add.u32 %r93,%r43,-48; .loc 1 184 6 setp.gt.u32 %r94,%r93,9; @ %r94 bra $L9; .loc 1 185 6 mov.u32 %r46,%r93; bra $L10; $L9: .loc 1 186 21 add.u32 %r95,%r43,-65; .loc 1 186 11 setp.gt.u32 %r96,%r95,25; @ %r96 bra $L11; .loc 1 187 6 add.u32 %r46,%r43,-55; bra $L10; $L11: .loc 1 188 21 add.u32 %r97,%r43,-97; .loc 1 188 11 setp.gt.u32 %r98,%r97,25; @ %r98 bra $L12; .loc 1 189 6 add.u32 %r46,%r43,-87; $L10: .loc 1 192 6 setp.le.s32 %r99,%r68,%r46; @ %r99 bra $L12; .loc 1 194 24 shr.u32 %r101,%r49,31; mov.u32 %r102,%r101; .loc 1 194 35 set.u32.lt.u64 %r104,%r42,%r51; neg.s32 %r105,%r104; mov.u32 %r103,%r105; .loc 1 194 28 cvt.u16.u8 %r136,%r102; mov.u16 %r107,%r136; cvt.u16.u8 %r136,%r103; mov.u16 %r108,%r136; or.b16 %r106,%r107,%r108; cvt.u32.u16 %r109,%r106; .loc 1 194 19 cvt.u16.u8 %r110,%r109; setp.ne.u16 %r111,%r110,0; @ %r111 bra $L22; .loc 1 194 52 set.u32.eq.u64 %r113,%r42,%r51; neg.s32 %r114,%r113; mov.u32 %r112,%r114; .loc 1 194 67 set.u32.lt.s32 %r116,%r41,%r46; neg.s32 %r117,%r116; mov.u32 %r115,%r117; .loc 1 194 62 cvt.u16.u8 %r136,%r112; mov.u16 %r119,%r136; cvt.u16.u8 %r136,%r115; mov.u16 %r120,%r136; and.b16 %r118,%r119,%r120; cvt.u32.u16 %r121,%r118; .loc 1 194 44 cvt.u16.u8 %r122,%r121; setp.ne.u16 %r123,%r122,0; @ %r123 bra $L23; .loc 1 199 8 cvt.s64.s32 %r124,%r46; mad.lo.u64 %r51,%r51,%r62,%r124; .loc 1 197 8 mov.u32 %r49,%r135; bra $L13; $L22: .loc 1 195 8 mov.u32 %r49,%r134; bra $L13; $L23: mov.u32 %r49,%r134; $L13: .loc 1 183 28 ld.u8 %r43,[%r61]; add.u64 %r61,%r61,1; .loc 1 184 6 bra $L14; $L12: .loc 1 202 5 setp.ne.u32 %r125,%r49,-1; @ %r125 bra $L15; .loc 1 204 16 mov.u32 %r126,34; st.u32 [%r65],%r126; .loc 1 207 5 setp.ne.u64 %r127,%r67,0; @ %r127 bra $L16; .loc 1 203 7 mov.u64 %r51,%r38; bra $L28; $L15: .loc 1 205 12 setp.eq.u32 %r128,%r39,0; @ %r128 bra $L18; .loc 1 206 7 neg.s64 %r51,%r51; $L18: .loc 1 207 5 setp.eq.u64 %r129,%r67,0; @ %r129 bra $L28; .loc 1 208 13 setp.eq.u32 %r130,%r49,0; @ %r130 bra $L19; mov.u64 %r38,%r51; $L16: add.u64 %r66,%r61,-1; mov.u64 %r51,%r38; $L19: .loc 1 208 11 st.u64 [%r67],%r66; .loc 1 209 9 bra $L28; $L7: .loc 1 160 5 setp.eq.u32 %r132,%r68,0; @ %r132 bra $L24; .loc 1 181 20 cvt.s64.s32 %r62,%r68; bra $L6; $L28: .loc 1 210 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoll_r .visible .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 218 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoll_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 219 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoll_l .visible .func (.param .u64 %value_out) strtoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 227 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoll_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 228 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoll .visible .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 235 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoll_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 236 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /1405 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-strtorx.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-strtoul.o/0 0 0 644 10209 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoul_l$constprop$0 .func (.param .u64 %value_out) _strtoul_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtoul.c" // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .visible .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoul_l .visible .func (.param .u64 %value_out) strtoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoul .visible .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoul_l$constprop$0 .func (.param .u64 %value_out) _strtoul_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r86; .reg .pred %r87; .reg .u16 %r90; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u16 %r146; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r34,%r66; cvta.const.u64 %r143,_ctype_+1; $L2: mov.u64 %r22,%r34; add.u64 %r35,%r34,1; mov.u64 %r34,%r35; .loc 1 143 7 ld.u8 %r23,[%r22]; .loc 1 144 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r143,%r69; ld.u8 %r146,[%r72]; mov.u16 %r75,%r146; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 143 5 mov.u32 %r39,%r23; .loc 1 145 5 setp.ne.u32 %r79,%r39,45; @ %r79 bra $L3; .loc 1 147 5 ld.u8 %r39,[%r35]; .loc 1 147 9 add.u64 %r35,%r22,2; .loc 1 146 7 mov.u32 %r56,1; bra $L4; $L3: .loc 1 148 12 setp.ne.u32 %r80,%r39,43; @ %r80 bra $L20; .loc 1 149 5 ld.u8 %r39,[%r34]; .loc 1 149 9 add.u64 %r35,%r22,2; .loc 1 137 15 mov.u32 %r56,0; bra $L4; $L20: mov.u32 %r56,0; $L4: .loc 1 150 12 and.b32 %r81,%r68,-17; .loc 1 150 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 158 38 cvt.s64.s32 %r62,%r68; .loc 1 158 9 mov.u64 %r83,-1; div.u64 %r61,%r83,%r62; .loc 1 159 36 rem.u64 %r86,%r83,%r62; .loc 1 159 9 cvt.u32.u64 %r57,%r86; bra $L6; $L5: .loc 1 150 32 setp.ne.u32 %r87,%r39,48; @ %r87 bra $L7; .loc 1 151 29 ld.u8 %r146,[%r35]; mov.u16 %r90,%r146; .loc 1 151 15 and.b16 %r92,%r90,223; setp.ne.u16 %r93,%r92,88; @ %r93 bra $L8; .loc 1 152 5 ld.u8 %r39,[%r35+1]; .loc 1 153 5 add.u64 %r35,%r35,2; mov.u32 %r57,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 154 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 156 5 setp.eq.u32 %r94,%r68,0; @ %r94 bra $L21; .loc 1 158 38 cvt.s64.s32 %r62,%r68; .loc 1 158 9 mov.u64 %r95,-1; div.u64 %r61,%r95,%r62; .loc 1 159 36 rem.u64 %r98,%r95,%r62; .loc 1 159 9 cvt.u32.u64 %r57,%r98; bra $L6; $L21: .loc 1 156 5 mov.u32 %r57,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 157 23 mov.u32 %r68,8; bra $L6; $L25: .loc 1 156 5 mov.u32 %r57,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 157 23 mov.u32 %r68,10; $L6: mov.u64 %r37,%r35; .loc 1 160 20 mov.u32 %r45,0; .loc 1 160 11 mov.u64 %r64,0; .loc 1 172 8 mov.u32 %r144,-1; .loc 1 174 8 mov.u32 %r145,1; $L14: .loc 1 161 16 add.u32 %r99,%r39,-48; .loc 1 161 6 setp.gt.u32 %r100,%r99,9; @ %r100 bra $L9; .loc 1 162 6 mov.u32 %r42,%r99; bra $L10; $L9: .loc 1 163 21 add.u32 %r101,%r39,-65; .loc 1 163 11 setp.gt.u32 %r102,%r101,25; @ %r102 bra $L11; .loc 1 164 6 add.u32 %r42,%r39,-55; bra $L10; $L11: .loc 1 165 21 add.u32 %r103,%r39,-97; .loc 1 165 11 setp.gt.u32 %r104,%r103,25; @ %r104 bra $L12; .loc 1 166 6 add.u32 %r42,%r39,-87; $L10: .loc 1 169 6 setp.le.s32 %r105,%r68,%r42; @ %r105 bra $L12; .loc 1 171 24 shr.u32 %r107,%r45,31; mov.u32 %r108,%r107; .loc 1 171 35 set.u32.gt.u64 %r110,%r64,%r61; neg.s32 %r111,%r110; mov.u32 %r109,%r111; .loc 1 171 28 cvt.u16.u8 %r146,%r108; mov.u16 %r113,%r146; cvt.u16.u8 %r146,%r109; mov.u16 %r114,%r146; or.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; .loc 1 171 19 cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L22; .loc 1 171 52 set.u32.eq.u64 %r119,%r64,%r61; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 171 67 set.u32.gt.s32 %r122,%r42,%r57; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 171 62 cvt.u16.u8 %r146,%r118; mov.u16 %r125,%r146; cvt.u16.u8 %r146,%r121; mov.u16 %r126,%r146; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 171 44 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L23; .loc 1 176 8 cvt.s64.s32 %r130,%r42; mad.lo.u64 %r64,%r64,%r62,%r130; .loc 1 174 8 mov.u32 %r45,%r145; bra $L13; $L22: .loc 1 172 8 mov.u32 %r45,%r144; bra $L13; $L23: mov.u32 %r45,%r144; $L13: .loc 1 160 28 ld.u8 %r39,[%r37]; add.u64 %r37,%r37,1; .loc 1 161 6 bra $L14; $L12: .loc 1 179 5 setp.ne.u32 %r131,%r45,-1; @ %r131 bra $L15; .loc 1 181 16 mov.u32 %r132,34; st.u32 [%r65],%r132; .loc 1 184 5 setp.ne.u64 %r133,%r67,0; @ %r133 bra $L24; .loc 1 180 7 mov.u64 %r64,-1; bra $L1; $L15: .loc 1 182 12 setp.eq.u32 %r134,%r56,0; @ %r134 bra $L18; .loc 1 183 7 neg.s64 %r64,%r64; $L18: .loc 1 184 5 setp.eq.u64 %r135,%r67,0; @ %r135 bra $L1; .loc 1 185 13 setp.eq.u32 %r136,%r45,0; @ %r136 bra $L19; bra $L16; $L24: .loc 1 180 7 mov.u64 %r64,-1; $L16: .loc 1 185 13 add.u64 %r66,%r37,-1; $L19: .loc 1 185 11 st.u64 [%r67],%r66; .loc 1 186 9 bra $L1; $L7: .loc 1 156 5 setp.eq.u32 %r138,%r68,0; @ %r138 bra $L25; .loc 1 158 38 cvt.s64.s32 %r62,%r68; .loc 1 158 9 mov.u64 %r139,-1; div.u64 %r61,%r139,%r62; .loc 1 159 36 rem.u64 %r142,%r139,%r62; .loc 1 159 9 cvt.u32.u64 %r57,%r142; bra $L6; $L1: .loc 1 187 1 mov.u64 %value,%r64; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoul_r .visible .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 195 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoul_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 196 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoul_l .visible .func (.param .u64 %value_out) strtoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 204 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoul_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 205 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoul .visible .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 212 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoul_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 213 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /1424 0 0 0 644 10228 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoull_l$constprop$0 .func (.param .u64 %value_out) _strtoull_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtoull.c" // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .visible .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoull_l .visible .func (.param .u64 %value_out) strtoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoull .visible .func (.param .u64 %value_out) strtoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoull_l$constprop$0 .func (.param .u64 %value_out) _strtoull_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r86; .reg .pred %r87; .reg .u16 %r90; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u16 %r146; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r34,%r66; cvta.const.u64 %r143,_ctype_+1; $L2: mov.u64 %r22,%r34; add.u64 %r35,%r34,1; mov.u64 %r34,%r35; .loc 1 141 7 ld.u8 %r23,[%r22]; .loc 1 142 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r143,%r69; ld.u8 %r146,[%r72]; mov.u16 %r75,%r146; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 141 5 mov.u32 %r39,%r23; .loc 1 143 5 setp.ne.u32 %r79,%r39,45; @ %r79 bra $L3; .loc 1 145 5 ld.u8 %r39,[%r35]; .loc 1 145 9 add.u64 %r35,%r22,2; .loc 1 144 7 mov.u32 %r56,1; bra $L4; $L3: .loc 1 146 12 setp.ne.u32 %r80,%r39,43; @ %r80 bra $L20; .loc 1 147 5 ld.u8 %r39,[%r34]; .loc 1 147 9 add.u64 %r35,%r22,2; .loc 1 135 15 mov.u32 %r56,0; bra $L4; $L20: mov.u32 %r56,0; $L4: .loc 1 148 12 and.b32 %r81,%r68,-17; .loc 1 148 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 156 48 cvt.s64.s32 %r62,%r68; .loc 1 156 9 mov.u64 %r83,-1; div.u64 %r61,%r83,%r62; .loc 1 157 46 rem.u64 %r86,%r83,%r62; .loc 1 157 9 cvt.u32.u64 %r57,%r86; bra $L6; $L5: .loc 1 148 32 setp.ne.u32 %r87,%r39,48; @ %r87 bra $L7; .loc 1 149 29 ld.u8 %r146,[%r35]; mov.u16 %r90,%r146; .loc 1 149 15 and.b16 %r92,%r90,223; setp.ne.u16 %r93,%r92,88; @ %r93 bra $L8; .loc 1 150 5 ld.u8 %r39,[%r35+1]; .loc 1 151 5 add.u64 %r35,%r35,2; mov.u32 %r57,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 152 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 154 5 setp.eq.u32 %r94,%r68,0; @ %r94 bra $L21; .loc 1 156 48 cvt.s64.s32 %r62,%r68; .loc 1 156 9 mov.u64 %r95,-1; div.u64 %r61,%r95,%r62; .loc 1 157 46 rem.u64 %r98,%r95,%r62; .loc 1 157 9 cvt.u32.u64 %r57,%r98; bra $L6; $L21: .loc 1 154 5 mov.u32 %r57,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 155 23 mov.u32 %r68,8; bra $L6; $L25: .loc 1 154 5 mov.u32 %r57,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 155 23 mov.u32 %r68,10; $L6: mov.u64 %r37,%r35; .loc 1 158 20 mov.u32 %r45,0; .loc 1 158 11 mov.u64 %r64,0; .loc 1 170 8 mov.u32 %r144,-1; .loc 1 172 8 mov.u32 %r145,1; $L14: .loc 1 159 16 add.u32 %r99,%r39,-48; .loc 1 159 6 setp.gt.u32 %r100,%r99,9; @ %r100 bra $L9; .loc 1 160 6 mov.u32 %r42,%r99; bra $L10; $L9: .loc 1 161 21 add.u32 %r101,%r39,-65; .loc 1 161 11 setp.gt.u32 %r102,%r101,25; @ %r102 bra $L11; .loc 1 162 6 add.u32 %r42,%r39,-55; bra $L10; $L11: .loc 1 163 21 add.u32 %r103,%r39,-97; .loc 1 163 11 setp.gt.u32 %r104,%r103,25; @ %r104 bra $L12; .loc 1 164 6 add.u32 %r42,%r39,-87; $L10: .loc 1 167 6 setp.le.s32 %r105,%r68,%r42; @ %r105 bra $L12; .loc 1 169 24 shr.u32 %r107,%r45,31; mov.u32 %r108,%r107; .loc 1 169 35 set.u32.gt.u64 %r110,%r64,%r61; neg.s32 %r111,%r110; mov.u32 %r109,%r111; .loc 1 169 28 cvt.u16.u8 %r146,%r108; mov.u16 %r113,%r146; cvt.u16.u8 %r146,%r109; mov.u16 %r114,%r146; or.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; .loc 1 169 19 cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L22; .loc 1 169 52 set.u32.eq.u64 %r119,%r64,%r61; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 169 67 set.u32.gt.s32 %r122,%r42,%r57; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 169 62 cvt.u16.u8 %r146,%r118; mov.u16 %r125,%r146; cvt.u16.u8 %r146,%r121; mov.u16 %r126,%r146; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 169 44 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L23; .loc 1 174 8 cvt.s64.s32 %r130,%r42; mad.lo.u64 %r64,%r64,%r62,%r130; .loc 1 172 8 mov.u32 %r45,%r145; bra $L13; $L22: .loc 1 170 8 mov.u32 %r45,%r144; bra $L13; $L23: mov.u32 %r45,%r144; $L13: .loc 1 158 28 ld.u8 %r39,[%r37]; add.u64 %r37,%r37,1; .loc 1 159 6 bra $L14; $L12: .loc 1 177 5 setp.ne.u32 %r131,%r45,-1; @ %r131 bra $L15; .loc 1 179 16 mov.u32 %r132,34; st.u32 [%r65],%r132; .loc 1 182 5 setp.ne.u64 %r133,%r67,0; @ %r133 bra $L24; .loc 1 178 7 mov.u64 %r64,-1; bra $L1; $L15: .loc 1 180 12 setp.eq.u32 %r134,%r56,0; @ %r134 bra $L18; .loc 1 181 7 neg.s64 %r64,%r64; $L18: .loc 1 182 5 setp.eq.u64 %r135,%r67,0; @ %r135 bra $L1; .loc 1 183 13 setp.eq.u32 %r136,%r45,0; @ %r136 bra $L19; bra $L16; $L24: .loc 1 178 7 mov.u64 %r64,-1; $L16: .loc 1 183 13 add.u64 %r66,%r37,-1; $L19: .loc 1 183 11 st.u64 [%r67],%r66; .loc 1 184 9 bra $L1; $L7: .loc 1 154 5 setp.eq.u32 %r138,%r68,0; @ %r138 bra $L25; .loc 1 156 48 cvt.s64.s32 %r62,%r68; .loc 1 156 9 mov.u64 %r139,-1; div.u64 %r61,%r139,%r62; .loc 1 157 46 rem.u64 %r142,%r139,%r62; .loc 1 157 9 cvt.u32.u64 %r57,%r142; bra $L6; $L1: .loc 1 185 1 mov.u64 %value,%r64; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoull_r .visible .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 193 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoull_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 194 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoull_l .visible .func (.param .u64 %value_out) strtoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 202 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoull_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 203 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoull .visible .func (.param .u64 %value_out) strtoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 210 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoull_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 211 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /1442 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1462 0 0 0 644 10829 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoumax_l$constprop$0 .func (.param .u64 %value_out) _strtoumax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/strtoumax.c" // BEGIN GLOBAL FUNCTION DECL: _strtoumax_r .visible .func (.param .u64 %value_out) _strtoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoumax_l .visible .func (.param .u64 %value_out) strtoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoumax .visible .func (.param .u64 %value_out) strtoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoumax_l$constprop$0 .func (.param .u64 %value_out) _strtoumax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r29; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u32 %r42; .reg .u32 %r48; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r59; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r70; .reg .u16 %r73; .reg .u16 %r75; .reg .pred %r76; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u16 %r83; .reg .pred %r84; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .pred %r91; .reg .u32 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u32 %r101; .reg .u16 %r102; .reg .pred %r103; .reg .u16 %r105; .reg .u32 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u32 %r112; .reg .u16 %r113; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u16 %r118; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u32 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u32 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u32 %r149; .reg .pred %r150; .reg .pred %r151; .reg .u32 %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r158; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u16 %r162; mov.u64 %r63,%ar0; mov.u64 %r64,%ar1; mov.u64 %r65,%ar2; mov.u32 %r66,%ar3; mov.u64 %r33,%r64; cvta.const.u64 %r159,_ctype_+1; $L2: mov.u64 %r22,%r33; add.u64 %r35,%r33,1; mov.u64 %r33,%r35; .loc 1 73 5 ld.s8 %r34,[%r22]; .loc 1 74 11 cvt.u32.u32 %r68,%r34; cvt.s64.s8 %r67,%r68; add.u64 %r70,%r159,%r67; ld.u8 %r162,[%r70]; mov.u16 %r73,%r162; and.b16 %r75,%r73,8; setp.ne.u16 %r76,%r75,0; @ %r76 bra $L2; .loc 1 75 5 cvt.u16.u32 %r77,%r34; setp.ne.u16 %r78,%r77,45; @ %r78 bra $L3; .loc 1 77 5 ld.s8 %r34,[%r35]; .loc 1 77 9 add.u64 %r35,%r22,2; .loc 1 76 7 mov.u32 %r55,1; bra $L4; $L3: .loc 1 80 6 setp.ne.u16 %r80,%r77,43; @ %r80 bra $L22; .loc 1 81 6 ld.s8 %r34,[%r33]; .loc 1 81 10 add.u64 %r35,%r22,2; .loc 1 79 7 mov.u32 %r55,0; bra $L4; $L22: mov.u32 %r55,0; $L4: .loc 1 83 12 and.b32 %r81,%r66,-17; .loc 1 83 5 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 83 32 cvt.u16.u32 %r83,%r34; setp.ne.u16 %r84,%r83,48; @ %r84 bra $L6; .loc 1 84 29 ld.u8 %r162,[%r35]; mov.u16 %r87,%r162; and.b16 %r86,%r87,-33; cvt.u32.u16 %r88,%r86; .loc 1 84 15 cvt.s16.s8 %r89,%r88; setp.ne.u16 %r90,%r89,88; @ %r90 bra $L7; .loc 1 85 5 ld.s8 %r34,[%r35+1]; .loc 1 86 5 add.u64 %r35,%r35,2; mov.u32 %r56,15; mov.u64 %r59,1152921504606846975; mov.u64 %r29,16; .loc 1 87 8 mov.u32 %r66,16; bra $L8; $L7: .loc 1 89 5 setp.eq.u32 %r91,%r66,0; @ %r91 bra $L23; $L5: .loc 1 92 15 add.u32 %r92,%r66,-2; .loc 1 92 5 setp.gt.u32 %r93,%r92,34; @ %r93 bra $L24; .loc 1 95 23 cvt.s64.s32 %r29,%r66; .loc 1 95 9 mov.u64 %r94,-1; div.u64 %r59,%r94,%r29; .loc 1 96 23 rem.u64 %r97,%r94,%r29; .loc 1 96 9 cvt.u32.u64 %r56,%r97; bra $L8; $L23: .loc 1 89 5 mov.u32 %r56,7; mov.u64 %r59,2305843009213693951; mov.u64 %r29,8; .loc 1 90 23 mov.u32 %r66,8; bra $L8; $L28: .loc 1 89 5 mov.u32 %r56,5; mov.u64 %r59,1844674407370955161; mov.u64 %r29,10; .loc 1 90 23 mov.u32 %r66,10; $L8: mov.u64 %r37,%r35; .loc 1 91 12 mov.u32 %r48,0; .loc 1 91 6 mov.u64 %r62,0; .loc 1 109 8 mov.u32 %r160,-1; .loc 1 111 8 mov.u32 %r161,1; $L15: .loc 1 98 16 cvt.u32.u32 %r98,%r34; cvt.u16.u8 %r100,%r98; add.u16 %r99,%r100,-48; cvt.u32.u16 %r101,%r99; .loc 1 98 6 cvt.u16.u8 %r102,%r101; setp.gt.u16 %r103,%r102,9; @ %r103 bra $L10; .loc 1 99 6 cvt.s32.s8 %r42,%r101; bra $L11; $L10: .loc 1 100 21 add.u16 %r105,%r100,-65; cvt.u32.u16 %r107,%r105; .loc 1 100 11 cvt.u16.u8 %r108,%r107; setp.gt.u16 %r109,%r108,25; @ %r109 bra $L12; .loc 1 101 6 add.u16 %r110,%r100,-55; cvt.u32.u16 %r112,%r110; cvt.s32.s8 %r42,%r112; bra $L11; $L12: .loc 1 102 21 add.u16 %r113,%r100,-97; cvt.u32.u16 %r115,%r113; .loc 1 102 11 cvt.u16.u8 %r116,%r115; setp.gt.u16 %r117,%r116,25; @ %r117 bra $L13; .loc 1 103 6 add.u16 %r118,%r100,-87; cvt.u32.u16 %r120,%r118; cvt.s32.s8 %r42,%r120; $L11: .loc 1 106 6 setp.ge.s32 %r121,%r42,%r66; @ %r121 bra $L13; .loc 1 108 11 shr.u32 %r123,%r48,31; mov.u32 %r124,%r123; .loc 1 108 22 set.u32.gt.u64 %r126,%r62,%r59; neg.s32 %r127,%r126; mov.u32 %r125,%r127; .loc 1 108 15 cvt.u16.u8 %r162,%r124; mov.u16 %r129,%r162; cvt.u16.u8 %r162,%r125; mov.u16 %r130,%r162; or.b16 %r128,%r129,%r130; cvt.u32.u16 %r131,%r128; .loc 1 108 6 cvt.u16.u8 %r132,%r131; setp.ne.u16 %r133,%r132,0; @ %r133 bra $L25; .loc 1 108 31 set.u32.eq.u64 %r135,%r62,%r59; neg.s32 %r136,%r135; mov.u32 %r134,%r136; .loc 1 108 49 set.u32.gt.s32 %r138,%r42,%r56; neg.s32 %r139,%r138; mov.u32 %r137,%r139; cvt.u16.u8 %r162,%r134; mov.u16 %r141,%r162; cvt.u16.u8 %r162,%r137; mov.u16 %r142,%r162; and.b16 %r140,%r141,%r142; cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L26; .loc 1 113 8 cvt.u32.u32 %r147,%r42; cvt.s64.s8 %r146,%r147; mad.lo.u64 %r62,%r29,%r62,%r146; .loc 1 111 8 mov.u32 %r48,%r161; bra $L14; $L25: .loc 1 109 8 mov.u32 %r48,%r160; bra $L14; $L26: mov.u32 %r48,%r160; $L14: .loc 1 97 14 ld.s8 %r34,[%r37]; add.u64 %r37,%r37,1; .loc 1 98 6 bra $L15; $L13: .loc 1 116 5 setp.ne.u32 %r148,%r48,-1; @ %r148 bra $L16; .loc 1 118 16 mov.u32 %r149,34; st.u32 [%r63],%r149; .loc 1 124 5 setp.ne.u64 %r150,%r65,0; @ %r150 bra $L27; .loc 1 117 7 mov.u64 %r62,-1; bra $L1; $L16: .loc 1 119 12 setp.ne.u32 %r151,%r48,0; @ %r151 bra $L19; bra $L9; $L24: .loc 1 91 6 mov.u64 %r62,0; $L9: .loc 1 121 16 mov.u32 %r152,22; st.u32 [%r63],%r152; .loc 1 124 5 setp.ne.u64 %r153,%r65,0; @ %r153 bra $L20; bra $L1; $L19: .loc 1 122 12 setp.eq.u32 %r154,%r55,0; @ %r154 bra $L21; .loc 1 123 7 neg.s64 %r62,%r62; .loc 1 124 5 setp.ne.u64 %r155,%r65,0; @ %r155 bra $L17; bra $L1; $L21: setp.eq.u64 %r156,%r65,0; @ ! %r156 bra $L17; bra $L1; $L27: .loc 1 117 7 mov.u64 %r62,-1; $L17: .loc 1 125 13 add.u64 %r64,%r37,-1; $L20: .loc 1 125 11 st.u64 [%r65],%r64; .loc 1 126 9 bra $L1; $L6: .loc 1 89 5 setp.eq.u32 %r158,%r66,0; @ %r158 bra $L28; bra $L5; $L1: .loc 1 127 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoumax_r .visible .func (.param .u64 %value_out) _strtoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 133 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoumax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 134 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoumax_l .visible .func (.param .u64 %value_out) strtoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 142 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoumax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 143 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoumax .visible .func (.param .u64 %value_out) strtoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 148 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoumax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 149 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strupr.o/ 0 0 0 644 1452 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strupr .visible .func (.param .u64 %value_out) strupr (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/strupr.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strupr .visible .func (.param .u64 %value_out) strupr (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .pred %r31; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r36; .reg .u16 %r39; .reg .u16 %r41; .reg .pred %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u16 %r49; mov.u64 %r30,%ar0; .loc 1 35 11 ld.u8 %r26,[%r30]; .loc 1 35 16 setp.ne.u32 %r31,%r26,0; @ ! %r31 bra $L7; mov.u64 %r28,%r30; cvta.const.u64 %r48,_ctype_+1; $L2: .loc 1 37 14 cvt.u32.u32 %r34,%r26; cvt.u64.u8 %r33,%r34; add.u64 %r36,%r48,%r33; ld.u8 %r49,[%r36]; mov.u16 %r39,%r49; and.b16 %r41,%r39,3; setp.ne.u16 %r42,%r41,2; @ %r42 bra $L3; .loc 1 37 12 cvt.u16.u32 %r44,%r26; add.u16 %r43,%r44,-32; cvt.u32.u16 %r45,%r43; cvt.u32.u8 %r26,%r45; $L3: cvt.u32.u32 %r46,%r26; st.u8 [%r28],%r46; .loc 1 35 28 add.u64 %r28,%r28,1; .loc 1 35 11 ld.u8 %r26,[%r28]; .loc 1 35 16 setp.ne.u32 %r47,%r26,0; @ %r47 bra $L2; $L7: .loc 1 40 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strxfrm.o/0 0 0 644 1843 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strxfrm .visible .func (.param .u64 %value_out) strxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strxfrm.c" // BEGIN GLOBAL FUNCTION DEF: strxfrm .visible .func (.param .u64 %value_out) strxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .pred %r52; .reg .u64 %r54; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 55 14 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L6; .loc 1 54 7 mov.u64 %r35,0; add.u64 %r54,%r37,1; $L4: add.u64 %r33,%r54,%r35; .loc 1 57 20 add.u64 %r41,%r37,%r35; ld.s8 %r22,[%r41]; .loc 1 57 18 add.u64 %r42,%r36,%r35; cvt.u32.u32 %r43,%r22; st.u8 [%r42],%r43; .loc 1 57 10 setp.eq.u32 %r44,%r22,0; @ %r44 bra $L1; .loc 1 58 9 add.u64 %r35,%r35,1; .loc 1 55 14 setp.ne.u64 %r45,%r38,%r35; @ %r45 bra $L4; bra $L2; $L6: mov.u64 %r33,%r37; $L2: .loc 1 62 10 ld.u8 %r47,[%r33]; cvt.s16.s8 %r46,%r47; setp.eq.u16 %r48,%r46,0; @ %r48 bra $L7; mov.u64 %r29,%r33; $L5: .loc 1 64 7 add.u64 %r29,%r29,1; add.u64 %r49,%r29,%r38; sub.u64 %r35,%r49,%r33; .loc 1 62 10 ld.u8 %r51,[%r29]; cvt.s16.s8 %r50,%r51; setp.ne.u16 %r52,%r50,0; @ %r52 bra $L5; bra $L1; $L7: mov.u64 %r35,%r38; $L1: .loc 1 69 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } /1481 0 0 0 644 45674 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .visible .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .visible .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN GLOBAL FUNCTION DEF: __ssprint_r .visible .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r40; .reg .u64 %r48; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .u32 %r86; .reg .u32 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .u64 %r93; .reg .pred %r94; .reg .u64 %r98; .reg .u64 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u64 %r106; .reg .pred %r107; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r116; .reg .u64 %r121; .reg .pred %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u32 %r129; .reg .u32 %r130; .reg .u64 %r131; mov.u64 %r64,%ar0; mov.u64 %r65,%ar1; mov.u64 %r66,%ar2; .loc 1 274 6 ld.u64 %r40,[%r66]; .loc 1 277 5 ld.u64 %r67,[%r66+16]; setp.ne.u64 %r68,%r67,0; @ %r68 bra $L15; $L14: .loc 1 279 10 mov.u32 %r63,0; bra $L3; $L4: .loc 1 284 6 ld.u64 %r34,[%r40]; .loc 1 285 8 ld.u64 %r35,[%r40+8]; .loc 1 286 7 add.u64 %r40,%r40,16; bra $L2; $L15: .loc 1 272 23 mov.u64 %r34,0; .loc 1 275 6 mov.u64 %r35,%r34; ld.u32 %r129,[%r65+12]; ld.u64 %r131,[%r65]; $L2: .loc 1 288 5 mov.u32 %r52,%r129; .loc 1 292 20 mov.u64 %r59,%r131; .loc 1 283 14 setp.eq.u64 %r69,%r35,0; @ %r69 bra $L4; .loc 1 289 11 cvt.s64.s32 %r60,%r129; .loc 1 289 6 setp.ge.u64 %r70,%r35,%r60; @ %r70 bra $L5; cvt.u32.u64 %r130,%r35; $L12: .loc 1 335 6 mov.u32 %r52,%r130; .loc 1 334 11 cvt.s64.s32 %r58,%r52; .loc 1 336 29 mov.u64 %r59,%r131; mov.u64 %r60,%r58; bra $L6; $L5: .loc 1 289 21 ld.s16 %r23,[%r65+16]; .loc 1 289 16 cvt.u16.u32 %r72,%r23; and.b16 %r71,%r72,1152; setp.ne.u16 %r73,%r71,0; @ %r73 bra $L7; .loc 1 331 6 cvt.u32.u64 %r74,%r35; .loc 1 334 11 cvt.s64.s32 %r58,%r74; bra $L6; $L7: .loc 1 292 34 ld.u64 %r24,[%r65+24]; .loc 1 292 25 sub.u64 %r25,%r131,%r24; .loc 1 292 8 cvt.u32.u64 %r57,%r25; .loc 1 300 32 ld.u32 %r75,[%r65+32]; add.u32 %r77,%r75,%r75; add.u32 %r78,%r77,%r75; .loc 1 300 8 shr.u32 %r79,%r78,31; add.u32 %r80,%r79,%r78; shr.s32 %r54,%r80,1; .loc 1 301 16 cvt.s64.s32 %r28,%r54; .loc 1 301 25 cvt.s64.s32 %r29,%r57; .loc 1 301 31 add.u64 %r82,%r29,1; add.u64 %r83,%r82,%r35; .loc 1 301 7 setp.ge.u64 %r84,%r28,%r83; @ %r84 bra $L8; .loc 1 302 28 add.u32 %r86,%r57,1; .loc 1 302 22 cvt.u32.u64 %r87,%r35; .loc 1 302 28 add.u32 %r54,%r86,%r87; .loc 1 306 28 cvt.s64.s32 %r28,%r54; $L8: .loc 1 303 7 cvt.u16.u32 %r89,%r23; and.b16 %r88,%r89,1024; setp.eq.u16 %r90,%r88,0; @ %r90 bra $L9; .loc 1 306 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r64; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r93,[%value_in]; } mov.u64 %r53,%r93; .loc 1 307 8 setp.eq.u64 %r94,%r53,0; @ %r94 bra $L10; .loc 1 312 5 ld.u64 %r98,[%r65+24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r98; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r99,[%value_in]; } .loc 1 313 16 ld.u16 %r101,[%r65+16]; and.b16 %r100,%r101,-1153; or.b16 %r102,%r100,128; st.u16 [%r65+16],%r102; bra $L11; $L9: .loc 1 317 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r64; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r106,[%value_in]; } mov.u64 %r53,%r106; .loc 1 319 8 setp.ne.u64 %r107,%r106,0; @ %r107 bra $L11; .loc 1 321 6 ld.u64 %r110,[%r65+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r64; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call _free_r,(%out_arg1,%out_arg2); } .loc 1 325 6 bra $L10; $L11: .loc 1 328 18 st.u64 [%r65+24],%r53; .loc 1 329 17 add.u64 %r59,%r53,%r29; .loc 1 329 11 st.u64 [%r65],%r59; .loc 1 330 18 st.u32 [%r65+32],%r54; .loc 1 331 6 cvt.u32.u64 %r52,%r35; mov.u32 %r130,%r52; .loc 1 332 21 sub.u32 %r111,%r54,%r57; .loc 1 332 11 st.u32 [%r65+12],%r111; .loc 1 334 11 cvt.s64.s32 %r58,%r52; .loc 1 334 6 setp.gt.u64 %r112,%r58,%r35; @ ! %r112 bra $L20; mov.u64 %r131,%r59; bra $L12; $L20: mov.u64 %r60,%r58; $L6: .loc 1 336 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r60; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r116,[%value_in]; } .loc 1 337 10 ld.u32 %r129,[%r65+12]; sub.u32 %r129,%r129,%r52; st.u32 [%r65+12],%r129; .loc 1 338 10 ld.u64 %r131,[%r65]; add.u64 %r131,%r131,%r60; st.u64 [%r65],%r131; .loc 1 340 5 add.u64 %r34,%r34,%r58; .loc 1 341 7 sub.u64 %r35,%r35,%r58; .loc 1 342 34 ld.u64 %r121,[%r66+16]; sub.u64 %r48,%r121,%r58; st.u64 [%r66+16],%r48; .loc 1 342 40 setp.ne.u64 %r122,%r48,0; @ %r122 bra $L2; bra $L14; $L10: .loc 1 309 18 mov.u32 %r123,12; st.u32 [%r64],%r123; .loc 1 349 14 ld.u16 %r125,[%r65+16]; or.b16 %r124,%r125,64; st.u16 [%r65+16],%r124; .loc 1 350 18 mov.u64 %r126,0; st.u64 [%r66+16],%r126; .loc 1 352 10 mov.u32 %r63,-1; $L3: .loc 1 278 19 mov.u32 %r127,0; st.u32 [%r66+8],%r127; .loc 1 353 1 mov.u32 %value,%r63; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _svfiprintf_r .visible .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[208]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r48; .reg .u32 %r84; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r100; .reg .u64 %r106; .reg .u64 %r109; .reg .u64 %r111; .reg .u32 %r112; .reg .u64 %r116; .reg .u32 %r117; .reg .u32 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r142; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r154; .reg .u64 %r155; .reg .u64 %r156; .reg .u64 %r158; .reg .u32 %r160; .reg .u64 %r161; .reg .u32 %r162; .reg .u64 %r163; .reg .u64 %r166; .reg .u64 %r170; .reg .u64 %r171; .reg .u64 %r172; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u32 %r198; .reg .u32 %r199; .reg .u32 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .u64 %r207; .reg .u64 %r208; .reg .u32 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r216; .reg .u16 %r225; .reg .u16 %r226; .reg .pred %r227; .reg .u64 %r228; .reg .pred %r229; .reg .u64 %r231; .reg .u64 %r232; .reg .pred %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .u64 %r236; .reg .u32 %r237; .reg .u32 %r238; .reg .u16 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r244; .reg .u32 %r245; .reg .u16 %r246; .reg .u16 %r247; .reg .u16 %r248; .reg .u32 %r249; .reg .u16 %r250; .reg .pred %r251; .reg .u32 %r252; .reg .u16 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u32 %r258; .reg .u32 %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .u16 %r262; .reg .u32 %r263; .reg .u16 %r264; .reg .pred %r265; .reg .u64 %r266; .reg .pred %r267; .reg .u32 %r268; .reg .pred %r269; .reg .u32 %r274; .reg .pred %r275; .reg .pred %r276; .reg .u32 %r277; .reg .pred %r278; .reg .pred %r279; .reg .pred %r280; .reg .pred %r281; .reg .pred %r282; .reg .pred %r283; .reg .pred %r284; .reg .pred %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .pred %r289; .reg .pred %r290; .reg .u32 %r291; .reg .pred %r292; .reg .pred %r293; .reg .pred %r294; .reg .pred %r295; .reg .pred %r296; .reg .pred %r297; .reg .pred %r298; .reg .pred %r299; .reg .pred %r300; .reg .pred %r301; .reg .pred %r302; .reg .pred %r303; .reg .pred %r304; .reg .pred %r305; .reg .pred %r306; .reg .pred %r307; .reg .pred %r308; .reg .pred %r309; .reg .pred %r310; .reg .u32 %r311; .reg .pred %r312; .reg .u32 %r313; .reg .pred %r314; .reg .pred %r315; .reg .pred %r316; .reg .pred %r317; .reg .u32 %r318; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .pred %r323; .reg .u32 %r325; .reg .u32 %r326; .reg .u32 %r327; .reg .pred %r330; .reg .u16 %r331; .reg .pred %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .pred %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .pred %r338; .reg .u32 %r339; .reg .pred %r340; .reg .u32 %r341; .reg .pred %r342; .reg .u16 %r343; .reg .pred %r346; .reg .pred %r347; .reg .u32 %r348; .reg .u64 %r349; .reg .u32 %r350; .reg .pred %r351; .reg .u64 %r352; .reg .u32 %r353; .reg .pred %r354; .reg .u64 %r355; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r358; .reg .pred %r359; .reg .u32 %r360; .reg .pred %r361; .reg .u32 %r362; .reg .pred %r363; .reg .u16 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .pred %r369; .reg .u32 %r371; .reg .u64 %r373; .reg .u64 %r374; .reg .pred %r375; .reg .u64 %r376; .reg .u64 %r378; .reg .u32 %r379; .reg .pred %r380; .reg .u32 %r381; .reg .pred %r382; .reg .u32 %r383; .reg .pred %r384; .reg .u16 %r385; .reg .pred %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .pred %r389; .reg .u32 %r390; .reg .pred %r391; .reg .u32 %r392; .reg .pred %r393; .reg .u16 %r394; .reg .u32 %r395; .reg .pred %r396; .reg .pred %r397; .reg .u32 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .u32 %r401; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r405; .reg .u32 %r406; .reg .u16 %r407; .reg .u16 %r408; .reg .u16 %r409; .reg .u32 %r410; .reg .u16 %r411; .reg .pred %r412; .reg .pred %r413; .reg .pred %r414; .reg .u32 %r415; .reg .u16 %r416; .reg .u16 %r417; .reg .u32 %r418; .reg .u16 %r419; .reg .u16 %r420; .reg .u32 %r421; .reg .pred %r423; .reg .u32 %r424; .reg .u16 %r425; .reg .u32 %r426; .reg .u32 %r427; .reg .u32 %r428; .reg .u16 %r429; .reg .u16 %r430; .reg .u32 %r431; .reg .u16 %r432; .reg .u16 %r433; .reg .u16 %r434; .reg .u32 %r435; .reg .u16 %r436; .reg .pred %r437; .reg .u64 %r440; .reg .u32 %r441; .reg .u64 %r444; .reg .pred %r445; .reg .u32 %r446; .reg .u16 %r447; .reg .u16 %r448; .reg .u64 %r450; .reg .u32 %r451; .reg .u16 %r452; .reg .u16 %r453; .reg .pred %r456; .reg .u64 %r459; .reg .u64 %r460; .reg .u64 %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u64 %r466; .reg .pred %r467; .reg .pred %r468; .reg .u32 %r469; .reg .pred %r470; .reg .u32 %r471; .reg .pred %r472; .reg .u32 %r473; .reg .u16 %r474; .reg .u32 %r475; .reg .pred %r476; .reg .pred %r478; .reg .pred %r479; .reg .pred %r480; .reg .u64 %r482; .reg .pred %r483; .reg .u32 %r488; .reg .pred %r489; .reg .pred %r490; .reg .pred %r492; .reg .u32 %r497; .reg .pred %r498; .reg .u16 %r499; .reg .u32 %r500; .reg .pred %r501; .reg .u64 %r503; .reg .pred %r504; .reg .u32 %r509; .reg .pred %r510; .reg .u64 %r513; .reg .pred %r514; .reg .u32 %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .u64 %r525; .reg .pred %r526; .reg .u32 %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r535; .reg .u32 %r540; .reg .pred %r541; .reg .pred %r542; .reg .pred %r543; .reg .u64 %r545; .reg .pred %r546; .reg .u32 %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r555; .reg .u32 %r560; .reg .pred %r561; .reg .pred %r562; .reg .u32 %r567; .reg .pred %r568; .reg .u32 %r569; .reg .pred %r570; .reg .pred %r571; .reg .pred %r572; .reg .u64 %r574; .reg .pred %r575; .reg .u32 %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r584; .reg .u32 %r589; .reg .pred %r590; .reg .u32 %r591; .reg .pred %r592; .reg .u32 %r597; .reg .pred %r598; .reg .u32 %r599; .reg .pred %r600; .reg .u64 %r604; .reg .u32 %r605; .reg .u16 %r606; .reg .u16 %r607; .reg .pred %r608; .reg .pred %r610; .reg .pred %r611; .reg .u32 %r612; .reg .u32 %r613; .reg .u32 %r614; .reg .u32 %r615; .reg .u32 %r616; .reg .u32 %r617; .reg .u16 %r618; .reg .u16 %r619; .reg .u16 %r620; .reg .u32 %r621; .reg .u16 %r622; .reg .pred %r623; .reg .u64 %r624; .reg .u32 %r625; .reg .pred %r626; .reg .u64 %r628; .reg .u32 %r644; .reg .u64 %r645; .reg .u64 %r646; .reg .u64 %r647; .reg .u16 %r653; mov.u64 %r213,%ar0; mov.u64 %r214,%ar1; mov.u64 %r215,%ar2; mov.u64 %r216,%ar3; .loc 1 869 12 ld.u16 %r226,[%r214+16]; and.b16 %r225,%r226,128; setp.eq.u16 %r227,%r225,0; @ %r227 bra $L22; .loc 1 869 33 ld.u64 %r228,[%r214+24]; setp.ne.u64 %r229,%r228,0; @ %r229 bra $L22; .loc 1 871 28 mov.u64 %r231,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r231; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r232,[%value_in]; } .loc 1 871 26 st.u64 [%r214],%r232; .loc 1 871 17 st.u64 [%r214+24],%r232; .loc 1 872 6 setp.ne.u64 %r233,%r232,0; @ %r233 bra $L23; .loc 1 874 17 mov.u32 %r234,12; st.u32 [%r213],%r234; .loc 1 875 11 mov.u32 %r212,-1; bra $L21; $L23: .loc 1 877 17 mov.u32 %r235,64; st.u32 [%r214+32],%r235; $L22: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r236,0; st.u64 [%frame+184],%r236; .loc 1 885 17 mov.u32 %r237,0; st.u32 [%frame+176],%r237; mov.u64 %r193,%r236; .loc 1 883 21 mov.u64 %r133,%frame; .loc 1 707 8 mov.u64 %r32,%r193; .loc 1 887 6 mov.u32 %r212,%r237; .loc 1 918 4 add.u64 %r645,%frame,168; .loc 1 1687 4 add.u64 %r646,%frame,192; .loc 1 1685 4 add.u64 %r647,%frame,194; $L25: .loc 1 914 24 ld.s8 %r137,[%r215]; .loc 1 914 37 cvt.u16.u32 %r239,%r137; set.u32.ne.u16 %r240,%r239,0; neg.s32 %r241,%r240; mov.u32 %r238,%r241; set.u32.ne.u16 %r244,%r239,37; neg.s32 %r245,%r244; mov.u32 %r242,%r245; cvt.u16.u8 %r653,%r238; mov.u16 %r247,%r653; cvt.u16.u8 %r653,%r242; mov.u16 %r248,%r653; and.b16 %r246,%r247,%r248; cvt.u32.u16 %r249,%r246; cvt.u16.u8 %r250,%r249; setp.eq.u16 %r251,%r250,0; @ %r251 bra $L149; mov.u64 %r146,%r215; $L27: mov.u64 %r171,%r146; .loc 1 915 25 add.u64 %r146,%r146,1; .loc 1 914 24 ld.s8 %r137,[%r146]; .loc 1 914 37 cvt.u16.u32 %r253,%r137; set.u32.ne.u16 %r254,%r253,0; neg.s32 %r255,%r254; mov.u32 %r252,%r255; set.u32.ne.u16 %r258,%r253,37; neg.s32 %r259,%r258; mov.u32 %r256,%r259; cvt.u16.u8 %r653,%r252; mov.u16 %r261,%r653; cvt.u16.u8 %r653,%r256; mov.u16 %r262,%r653; and.b16 %r260,%r261,%r262; cvt.u32.u16 %r263,%r260; cvt.u16.u8 %r264,%r263; setp.ne.u16 %r265,%r264,0; @ %r265 bra $L27; .loc 1 917 16 sub.u64 %r266,%r146,%r215; .loc 1 917 10 cvt.u32.u64 %r138,%r266; .loc 1 917 6 setp.eq.u32 %r267,%r138,0; @ %r267 bra $L26; .loc 1 918 4 st.u64 [%r133],%r215; cvt.s64.s32 %r29,%r138; st.u64 [%r133+8],%r29; add.u64 %r193,%r193,%r29; st.u64 [%frame+184],%r193; ld.u32 %r268,[%frame+176]; add.u32 %r31,%r268,1; st.u32 [%frame+176],%r31; setp.gt.s32 %r269,%r31,7; @ %r269 bra $L28; add.u64 %r133,%r133,16; bra $L29; $L28: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r274,[%value_in]; } setp.ne.u32 %r275,%r274,0; @ %r275 bra $L30; .loc 1 1777 2 ld.u64 %r193,[%frame+184]; .loc 1 918 4 mov.u64 %r133,%frame; $L29: .loc 1 919 8 add.u32 %r212,%r212,%r138; .loc 1 925 21 ld.s8 %r137,[%r171+1]; bra $L26; $L149: .loc 1 914 37 mov.u64 %r146,%r215; $L26: .loc 1 925 20 setp.eq.u32 %r276,%r137,0; @ %r276 bra $L31; .loc 1 929 6 add.u64 %r215,%r146,1; .loc 1 935 8 mov.u32 %r277,0; st.u8 [%frame+194],%r277; .loc 1 947 14 ld.s8 %r200,[%r146+1]; mov.u32 %r147,0; mov.u32 %r149,%r147; .loc 1 934 8 mov.u32 %r128,-1; .loc 1 933 9 mov.u32 %r127,%r147; .loc 1 931 9 mov.u32 %r125,%r147; .loc 1 1060 6 mov.u32 %r644,%r147; $L32: .loc 1 947 18 add.u64 %r215,%r215,1; .loc 1 947 12 mov.u32 %r123,%r200; $L33: .loc 1 948 11 setp.eq.u32 %r278,%r123,88; @ %r278 bra $L34; setp.gt.s32 %r279,%r123,88; @ %r279 bra $L35; setp.eq.u32 %r280,%r123,46; @ %r280 bra $L36; setp.gt.s32 %r281,%r123,46; @ %r281 bra $L37; setp.eq.u32 %r282,%r123,42; @ %r282 bra $L38; setp.gt.s32 %r283,%r123,42; @ %r283 bra $L39; setp.eq.u32 %r284,%r123,32; @ %r284 bra $L40; setp.eq.u32 %r285,%r123,35; @ %r285 bra $L41; bra $L244; $L39: setp.eq.u32 %r286,%r123,43; @ %r286 bra $L43; setp.eq.u32 %r287,%r123,45; @ %r287 bra $L44; bra $L45; $L37: setp.eq.u32 %r288,%r123,68; @ %r288 bra $L46; setp.gt.s32 %r289,%r123,68; @ %r289 bra $L47; setp.eq.u32 %r290,%r123,48; @ %r290 bra $L48; add.u32 %r291,%r123,-49; setp.gt.u32 %r292,%r291,8; @ %r292 bra $L45; mov.u64 %r161,%r215; .loc 1 1077 6 mov.u32 %r127,0; add.u32 %r625,%r123,-48; bra $L49; $L47: .loc 1 948 11 setp.eq.u32 %r293,%r123,79; @ %r293 bra $L50; setp.eq.u32 %r294,%r123,85; @ %r294 bra $L51; bra $L45; $L35: setp.eq.u32 %r295,%r123,111; @ %r295 bra $L52; setp.gt.s32 %r296,%r123,111; @ %r296 bra $L53; setp.eq.u32 %r297,%r123,105; @ %r297 bra $L54; setp.gt.s32 %r298,%r123,105; @ %r298 bra $L55; setp.eq.u32 %r299,%r123,100; @ %r299 bra $L54; setp.eq.u32 %r300,%r123,104; @ %r300 bra $L56; setp.eq.u32 %r301,%r123,99; @ %r301 bra $L57; bra $L45; $L55: setp.eq.u32 %r302,%r123,108; @ %r302 bra $L58; setp.eq.u32 %r303,%r123,110; @ %r303 bra $L59; bra $L45; $L53: setp.eq.u32 %r304,%r123,115; @ %r304 bra $L60; setp.gt.s32 %r305,%r123,115; @ %r305 bra $L61; setp.eq.u32 %r306,%r123,112; @ %r306 bra $L62; setp.eq.u32 %r307,%r123,113; @ %r307 bra $L63; bra $L45; $L61: setp.eq.u32 %r308,%r123,117; @ %r308 bra $L64; setp.eq.u32 %r309,%r123,120; @ %r309 bra $L65; bra $L45; $L54: setp.eq.u32 %r310,%r147,0; @ %r310 bra $L67; cvt.u32.u32 %r311,%r149; st.u8 [%frame+194],%r311; bra $L67; $L65: setp.eq.u32 %r312,%r147,0; @ %r312 bra $L68; cvt.u32.u32 %r313,%r149; st.u8 [%frame+194],%r313; $L68: .loc 1 1538 10 cvta.const.u64 %r32,$LC1; bra $L69; $L40: .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 964 7 setp.ne.u32 %r314,%r149,0; selp.u32 %r147,%r147,1,%r314; selp.u32 %r149,%r149,32,%r314; bra $L32; $L41: .loc 1 968 10 or.b32 %r125,%r125,1; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 969 4 bra $L32; $L38: .loc 1 1007 10 add.u64 %r174,%r216,4; ld.u32 %r127,[%r216]; .loc 1 1011 7 setp.lt.s32 %r315,%r127,0; @ %r315 bra $L71; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1007 10 mov.u64 %r216,%r174; bra $L32; $L71: .loc 1 1013 10 neg.s32 %r127,%r127; .loc 1 1007 10 mov.u64 %r216,%r174; $L44: .loc 1 1016 10 or.b32 %r125,%r125,4; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1017 4 bra $L32; $L43: .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1020 4 mov.u32 %r147,1; .loc 1 1019 9 mov.u32 %r149,%r123; .loc 1 1020 4 bra $L32; $L36: .loc 1 1022 18 add.u64 %r156,%r215,1; .loc 1 1022 12 ld.s8 %r123,[%r215]; .loc 1 1022 7 setp.eq.u32 %r316,%r123,42; @ %r316 bra $L72; .loc 1 1061 11 add.u32 %r625,%r123,-48; setp.le.u32 %r317,%r625,9; @ %r317 bra $L73; .loc 1 1022 18 mov.u64 %r215,%r156; .loc 1 1060 6 mov.u32 %r128,%r644; bra $L33; $L72: ld.u32 %r318,[%r216]; max.s32 %r128,%r318,-1; .loc 1 947 14 ld.s8 %r200,[%r215+1]; .loc 1 1052 10 add.u64 %r216,%r216,4; .loc 1 1022 18 mov.u64 %r215,%r156; .loc 1 1058 5 bra $L32; $L73: mov.u64 %r166,%r156; .loc 1 1060 6 mov.u32 %r128,%r644; $L75: .loc 1 1062 12 shl.b32 %r320,%r128,2; add.u32 %r321,%r320,%r128; add.u32 %r322,%r321,%r321; .loc 1 1062 7 add.u32 %r128,%r322,%r625; mov.u64 %r192,%r166; add.u64 %r166,%r166,1; mov.u64 %r215,%r166; .loc 1 1063 8 ld.s8 %r123,[%r192]; .loc 1 1061 11 add.u32 %r625,%r123,-48; setp.le.u32 %r323,%r625,9; @ %r323 bra $L75; bra $L33; $L48: .loc 1 1073 10 or.b32 %r125,%r125,128; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1074 4 bra $L32; $L49: .loc 1 1079 12 shl.b32 %r325,%r127,2; add.u32 %r326,%r325,%r127; add.u32 %r327,%r326,%r326; .loc 1 1079 7 add.u32 %r127,%r625,%r327; mov.u64 %r144,%r161; add.u64 %r161,%r161,1; mov.u64 %r215,%r161; .loc 1 1080 8 ld.s8 %r123,[%r144]; .loc 1 1081 13 add.u32 %r625,%r123,-48; setp.le.u32 %r330,%r625,9; @ %r330 bra $L49; bra $L33; $L56: .loc 1 1107 11 or.b32 %r125,%r125,64; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1108 4 bra $L32; $L58: .loc 1 1111 8 ld.s8 %r200,[%r215]; .loc 1 1111 7 cvt.u16.u32 %r331,%r200; setp.ne.u16 %r332,%r331,108; @ %r332 bra $L76; .loc 1 1113 11 or.b32 %r125,%r125,32; .loc 1 947 14 ld.s8 %r200,[%r215+1]; .loc 1 1112 8 add.u64 %r215,%r215,1; bra $L32; $L76: .loc 1 1116 11 or.b32 %r125,%r125,16; bra $L32; $L63: .loc 1 1119 10 or.b32 %r125,%r125,32; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1120 4 bra $L32; $L57: .loc 1 1178 9 ld.u32 %r333,[%r216]; st.u8 [%frame+128],%r333; .loc 1 1181 9 mov.u32 %r334,0; st.u8 [%frame+194],%r334; .loc 1 1178 11 add.u64 %r216,%r216,4; .loc 1 1182 4 mov.u32 %r132,1; .loc 1 1179 10 mov.u32 %r129,%r132; .loc 1 1162 7 add.u64 %r124,%frame,128; .loc 1 1182 4 bra $L77; $L46: setp.eq.u32 %r335,%r147,0; @ %r335 bra $L78; cvt.u32.u32 %r336,%r149; st.u8 [%frame+194],%r336; $L78: .loc 1 1184 10 or.b32 %r125,%r125,16; $L67: .loc 1 1188 13 and.b32 %r337,%r125,32; setp.eq.u32 %r338,%r337,0; @ %r338 bra $L79; add.u64 %r188,%r216,7; and.b64 %r184,%r188,-8; add.u64 %r216,%r184,8; ld.u64 %r48,[%r184]; mov.u64 %r130,%r48; bra $L80; $L79: and.b32 %r339,%r125,16; setp.eq.u32 %r340,%r339,0; @ %r340 bra $L81; add.u64 %r178,%r216,7; and.b64 %r177,%r178,-8; add.u64 %r216,%r177,8; ld.u64 %r48,[%r177]; mov.u64 %r130,%r48; bra $L80; $L81: .loc 1 1007 10 ld.u32 %r201,[%r216]; add.u64 %r216,%r216,4; .loc 1 1188 13 and.b32 %r341,%r125,64; setp.eq.u32 %r342,%r341,0; @ %r342 bra $L82; cvt.u16.u32 %r343,%r201; cvt.s64.s16 %r130,%r343; .loc 1 1190 8 mov.u64 %r48,%r130; bra $L80; $L82: .loc 1 1188 13 cvt.s64.s32 %r130,%r201; .loc 1 1190 8 mov.u64 %r48,%r130; $L80: .loc 1 1190 7 setp.ge.s64 %r346,%r48,0; @ %r346 bra $L83; .loc 1 1196 12 neg.s64 %r130,%r130; mov.u32 %r135,45; .loc 1 1199 9 mov.u32 %r131,1; bra $L84; $L59: setp.eq.u32 %r347,%r147,0; @ %r347 bra $L85; cvt.u32.u32 %r348,%r149; st.u8 [%frame+194],%r348; $L85: .loc 1 1188 13 add.u64 %r349,%r216,7; and.b64 %r207,%r349,-8; ld.u64 %r208,[%r207]; add.u64 %r216,%r207,8; .loc 1 1387 14 and.b32 %r350,%r125,32; .loc 1 1387 7 setp.eq.u32 %r351,%r350,0; @ %r351 bra $L86; .loc 1 1388 34 cvt.s64.s32 %r352,%r212; st.u64 [%r208],%r352; bra $L25; $L86: .loc 1 1391 14 and.b32 %r353,%r125,16; .loc 1 1391 7 setp.eq.u32 %r354,%r353,0; @ %r354 bra $L88; .loc 1 1392 34 cvt.s64.s32 %r355,%r212; st.u64 [%r208],%r355; bra $L25; $L88: .loc 1 1393 19 and.b32 %r356,%r125,64; .loc 1 1393 12 setp.eq.u32 %r357,%r356,0; @ %r357 bra $L89; .loc 1 1394 35 st.u16 [%r208],%r212; bra $L25; $L89: .loc 1 1400 33 st.u32 [%r208],%r212; bra $L25; $L50: .loc 1 1403 10 or.b32 %r125,%r125,16; $L52: .loc 1 1406 13 and.b32 %r358,%r125,32; setp.eq.u32 %r359,%r358,0; @ %r359 bra $L90; add.u64 %r170,%r216,7; and.b64 %r163,%r170,-8; add.u64 %r216,%r163,8; ld.u64 %r130,[%r163]; .loc 1 1407 9 mov.u32 %r131,0; bra $L91; $L90: .loc 1 1406 13 and.b32 %r360,%r125,16; setp.eq.u32 %r361,%r360,0; @ %r361 bra $L92; add.u64 %r151,%r216,7; and.b64 %r152,%r151,-8; add.u64 %r216,%r152,8; ld.u64 %r130,[%r152]; .loc 1 1407 9 mov.u32 %r131,%r358; bra $L91; $L92: .loc 1 1007 10 ld.u32 %r202,[%r216]; add.u64 %r216,%r216,4; .loc 1 1406 13 and.b32 %r362,%r125,64; setp.eq.u32 %r363,%r362,0; @ %r363 bra $L93; cvt.u16.u32 %r364,%r202; cvt.u64.u16 %r130,%r364; .loc 1 1407 9 mov.u32 %r131,%r360; bra $L91; $L93: .loc 1 1406 13 cvt.u64.u32 %r130,%r202; .loc 1 1407 9 mov.u32 %r131,%r362; bra $L91; $L62: .loc 1 1421 25 add.u64 %r173,%r216,7; and.b64 %r181,%r173,-8; add.u64 %r216,%r181,8; ld.u64 %r130,[%r181]; .loc 1 1424 10 or.b32 %r125,%r125,2; .loc 1 1425 10 mov.u32 %r365,48; st.u8 [%frame+192],%r365; .loc 1 1426 10 mov.u32 %r366,120; st.u8 [%frame+193],%r366; .loc 1 1423 10 cvta.const.u64 %r32,$LC1; .loc 1 1422 9 mov.u32 %r131,2; .loc 1 1427 4 bra $L91; $L60: .loc 1 1432 7 add.u64 %r190,%r216,7; and.b64 %r191,%r190,-8; add.u64 %r216,%r191,8; ld.u64 %r124,[%r191]; .loc 1 1436 9 mov.u32 %r367,0; st.u8 [%frame+194],%r367; .loc 1 1442 7 setp.ne.u64 %r368,%r124,0; @ %r368 bra $L94; .loc 1 1444 39 min.u32 %r129,%r128,6; mov.u32 %r132,%r129; .loc 1 1443 8 cvta.const.u64 %r124,$LC2; bra $L77; $L94: .loc 1 1511 7 setp.eq.u32 %r369,%r128,-1; @ %r369 bra $L95; .loc 1 1517 15 cvt.s64.s32 %r373,%r128; mov.u32 %r371,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r371; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r373; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r374,[%value_in]; } .loc 1 1519 8 setp.eq.u64 %r375,%r374,0; @ %r375 bra $L150; .loc 1 1520 15 sub.u64 %r376,%r374,%r124; .loc 1 1520 11 cvt.u32.u64 %r129,%r376; mov.u32 %r126,%r125; .loc 1 932 9 mov.u32 %r128,%r371; bra $L96; $L95: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r378,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r129,%r378; mov.u32 %r126,%r125; .loc 1 932 9 mov.u32 %r128,0; bra $L96; $L51: .loc 1 1528 10 or.b32 %r125,%r125,16; $L64: .loc 1 1531 13 and.b32 %r379,%r125,32; setp.eq.u32 %r380,%r379,0; @ %r380 bra $L97; add.u64 %r180,%r216,7; and.b64 %r186,%r180,-8; add.u64 %r216,%r186,8; ld.u64 %r130,[%r186]; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L97: .loc 1 1531 13 and.b32 %r381,%r125,16; setp.eq.u32 %r382,%r381,0; @ %r382 bra $L98; add.u64 %r189,%r216,7; and.b64 %r185,%r189,-8; add.u64 %r216,%r185,8; ld.u64 %r130,[%r185]; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L98: .loc 1 1007 10 ld.u32 %r203,[%r216]; add.u64 %r216,%r216,4; .loc 1 1531 13 and.b32 %r383,%r125,64; setp.eq.u32 %r384,%r383,0; @ %r384 bra $L99; cvt.u16.u32 %r385,%r203; cvt.u64.u16 %r130,%r385; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L99: .loc 1 1531 13 cvt.u64.u32 %r130,%r203; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L34: setp.eq.u32 %r386,%r147,0; @ %r386 bra $L100; cvt.u32.u32 %r387,%r149; st.u8 [%frame+194],%r387; $L100: .loc 1 1535 10 cvta.const.u64 %r32,$LC0; $L69: .loc 1 1539 17 and.b32 %r388,%r125,32; setp.eq.u32 %r389,%r388,0; @ %r389 bra $L101; add.u64 %r172,%r216,7; and.b64 %r154,%r172,-8; add.u64 %r216,%r154,8; ld.u64 %r130,[%r154]; bra $L102; $L101: and.b32 %r390,%r125,16; setp.eq.u32 %r391,%r390,0; @ %r391 bra $L103; add.u64 %r179,%r216,7; and.b64 %r148,%r179,-8; add.u64 %r216,%r148,8; ld.u64 %r130,[%r148]; bra $L102; $L103: .loc 1 1007 10 ld.u32 %r204,[%r216]; add.u64 %r216,%r216,4; .loc 1 1539 17 and.b32 %r392,%r125,64; setp.eq.u32 %r393,%r392,0; @ %r393 bra $L104; cvt.u16.u32 %r394,%r204; cvt.u64.u16 %r130,%r394; bra $L102; $L104: cvt.u64.u32 %r130,%r204; $L102: .loc 1 1542 14 and.b32 %r395,%r125,1; .loc 1 1542 7 setp.eq.u32 %r396,%r395,0; @ %r396 bra $L151; .loc 1 1542 20 setp.eq.u64 %r397,%r130,0; @ %r397 bra $L152; .loc 1 1543 11 mov.u32 %r398,48; st.u8 [%frame+192],%r398; .loc 1 1544 11 st.u8 [%frame+193],%r123; .loc 1 1545 11 or.b32 %r125,%r125,2; .loc 1 1540 9 mov.u32 %r131,2; bra $L91; $L151: mov.u32 %r131,2; bra $L91; $L152: mov.u32 %r131,2; $L91: .loc 1 1552 1 mov.u32 %r135,0; $L84: .loc 1 1197 10 cvt.u32.u32 %r399,%r135; st.u8 [%frame+194],%r399; .loc 1 1558 14 setp.eq.u32 %r400,%r128,-1; @ %r400 bra $L105; .loc 1 1559 11 and.b32 %r126,%r125,-129; .loc 1 1567 15 set.u32.ne.u64 %r402,%r130,0; neg.s32 %r403,%r402; mov.u32 %r401,%r403; .loc 1 1567 28 set.u32.ne.u32 %r405,%r128,0; neg.s32 %r406,%r405; mov.u32 %r404,%r406; .loc 1 1567 20 cvt.u16.u8 %r653,%r401; mov.u16 %r408,%r653; cvt.u16.u8 %r653,%r404; mov.u16 %r409,%r653; or.b16 %r407,%r408,%r409; cvt.u32.u16 %r410,%r407; .loc 1 1567 7 cvt.u16.u8 %r411,%r410; setp.eq.u16 %r412,%r411,0; @ %r412 bra $L106; .loc 1 1559 11 mov.u32 %r125,%r126; $L105: setp.eq.u32 %r413,%r131,1; @ %r413 bra $L107; setp.eq.u32 %r414,%r131,2; @ %r414 bra $L153; mov.u64 %r124,%r645; $L109: mov.u64 %r158,%r124; .loc 1 1576 13 add.u64 %r124,%r124,-1; .loc 1 1576 15 cvt.u32.u64 %r415,%r130; cvt.u16.u8 %r653,%r415; mov.u16 %r417,%r653; and.b16 %r416,%r417,7; cvt.u32.u16 %r418,%r416; cvt.u16.u8 %r653,%r418; mov.u16 %r420,%r653; add.u16 %r419,%r420,48; cvt.u32.u16 %r421,%r419; cvt.s32.s8 %r84,%r421; .loc 1 1576 13 st.u8 [%r124],%r421; .loc 1 1577 14 shr.u64 %r130,%r130,3; .loc 1 1578 15 setp.ne.u64 %r423,%r130,0; @ %r423 bra $L109; .loc 1 1580 22 cvt.u16.u32 %r425,%r84; set.u32.ne.u16 %r426,%r425,48; neg.s32 %r427,%r426; mov.u32 %r424,%r427; .loc 1 1580 9 mov.u32 %r428,%r125; cvt.u16.u8 %r653,%r428; mov.u16 %r430,%r653; and.b16 %r429,%r430,1; cvt.u32.u16 %r431,%r429; .loc 1 1580 22 cvt.u16.u8 %r653,%r424; mov.u16 %r433,%r653; cvt.u16.u8 %r653,%r431; mov.u16 %r434,%r653; and.b16 %r432,%r433,%r434; cvt.u32.u16 %r435,%r432; cvt.u16.u8 %r436,%r435; setp.ne.u16 %r437,%r436,0; @ %r437 bra $L110; .loc 1 1644 21 sub.u64 %r440,%r645,%r124; .loc 1 1644 9 cvt.u32.u64 %r129,%r440; mov.u32 %r126,%r125; bra $L96; $L110: .loc 1 1581 13 add.u64 %r155,%r158,-2; mov.u32 %r441,48; st.u8 [%r124+-1],%r441; .loc 1 1644 21 sub.u64 %r444,%r645,%r155; .loc 1 1644 9 cvt.u32.u64 %r129,%r444; mov.u32 %r126,%r125; .loc 1 1581 13 mov.u64 %r124,%r155; bra $L96; $L157: .loc 1 1559 11 mov.u32 %r125,%r126; $L107: .loc 1 1586 9 setp.gt.u64 %r445,%r130,9; @ %r445 bra $L154; .loc 1 1587 15 cvt.u32.u64 %r446,%r130; cvt.u16.u8 %r653,%r446; mov.u16 %r448,%r653; add.u16 %r447,%r448,48; st.u8 [%frame+167],%r447; .loc 1 1588 7 mov.u32 %r126,%r125; mov.u32 %r129,1; .loc 1 1587 13 add.u64 %r124,%frame,167; .loc 1 1588 7 bra $L96; $L154: .loc 1 1566 7 mov.u64 %r124,%r645; $L112: .loc 1 1594 14 add.u64 %r124,%r124,-1; .loc 1 1594 16 rem.u64 %r450,%r130,10; cvt.u32.u64 %r451,%r450; cvt.u16.u8 %r653,%r451; mov.u16 %r453,%r653; add.u16 %r452,%r453,48; st.u8 [%r124],%r452; mov.u64 %r145,%r130; .loc 1 1615 15 div.u64 %r130,%r130,10; .loc 1 1616 22 setp.gt.u64 %r456,%r145,9; @ %r456 bra $L112; .loc 1 1644 21 sub.u64 %r459,%r645,%r124; .loc 1 1644 9 cvt.u32.u64 %r129,%r459; mov.u32 %r126,%r125; bra $L96; $L153: mov.u64 %r124,%r645; $L108: .loc 1 1621 13 add.u64 %r124,%r124,-1; .loc 1 1621 28 and.b64 %r460,%r130,15; .loc 1 1621 20 add.u64 %r461,%r32,%r460; .loc 1 1621 13 ld.u8 %r462,[%r461]; st.u8 [%r124],%r462; .loc 1 1622 14 shr.u64 %r130,%r130,4; .loc 1 1623 15 setp.ne.u64 %r463,%r130,0; @ %r463 bra $L108; .loc 1 1644 21 sub.u64 %r466,%r645,%r124; .loc 1 1644 9 cvt.u32.u64 %r129,%r466; mov.u32 %r126,%r125; bra $L96; $L106: .loc 1 1641 32 setp.ne.u32 %r467,%r131,0; @ %r467 bra $L155; .loc 1 1641 55 and.b32 %r129,%r125,1; .loc 1 1641 45 setp.eq.u32 %r468,%r129,0; @ %r468 bra $L156; .loc 1 1642 32 mov.u32 %r469,48; st.u8 [%frame+167],%r469; mov.u32 %r128,%r131; add.u64 %r124,%frame,167; bra $L96; $L155: mov.u32 %r128,0; mov.u32 %r129,%r128; .loc 1 1566 7 add.u64 %r124,%frame,168; bra $L96; $L156: mov.u32 %r128,%r131; add.u64 %r124,%frame,168; bra $L96; $L244: setp.eq.u32 %r470,%r147,0; @ %r470 bra $L113; $L147: cvt.u32.u32 %r471,%r149; st.u8 [%frame+194],%r471; $L113: .loc 1 1648 7 setp.eq.u32 %r472,%r123,0; @ %r472 bra $L31; $L148: .loc 1 1652 8 st.u8 [%frame+128],%r123; .loc 1 1654 9 mov.u32 %r473,0; st.u8 [%frame+194],%r473; .loc 1 1655 4 mov.u32 %r132,1; .loc 1 1653 9 mov.u32 %r129,%r132; .loc 1 1651 7 add.u64 %r124,%frame,128; .loc 1 1655 4 bra $L77; $L150: mov.u32 %r129,%r128; mov.u32 %r126,%r125; .loc 1 932 9 mov.u32 %r128,%r371; $L96: .loc 1 1673 10 max.s32 %r132,%r128,%r129; .loc 1 1674 6 ld.u8 %r475,[%frame+194]; cvt.s16.s8 %r474,%r475; setp.eq.u16 %r476,%r474,0; @ %r476 bra $L114; .loc 1 1675 10 add.u32 %r132,%r132,1; $L114: .loc 1 1676 13 and.b32 %r97,%r126,2; .loc 1 1676 6 setp.eq.u32 %r626,%r97,0; @ %r626 bra $L115; .loc 1 1677 10 add.u32 %r132,%r132,2; $L115: .loc 1 1680 14 and.b32 %r98,%r126,132; .loc 1 1681 4 ld.u32 %r198,[%frame+176]; .loc 1 1680 6 setp.ne.u32 %r478,%r98,0; @ %r478 bra $L116; .loc 1 1681 4 sub.u32 %r142,%r127,%r132; setp.le.s32 %r479,%r142,0; @ %r479 bra $L116; setp.le.s32 %r480,%r142,16; @ ! %r480 bra $L245; cvta.const.u64 %r624,blanks$1; bra $L117; $L245: cvta.const.u64 %r624,blanks$1; $L120: st.u64 [%r133],%r624; mov.u64 %r482,16; st.u64 [%r133+8],%r482; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r483,%r198,7; @ %r483 bra $L118; add.u64 %r133,%r133,16; bra $L119; $L118: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r488,[%value_in]; } setp.ne.u32 %r489,%r488,0; @ %r489 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; mov.u64 %r133,%frame; $L119: add.u32 %r142,%r142,-16; setp.gt.s32 %r490,%r142,16; @ %r490 bra $L120; $L117: st.u64 [%r133],%r624; cvt.s64.s32 %r100,%r142; st.u64 [%r133+8],%r100; add.u64 %r193,%r193,%r100; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r492,%r198,7; @ %r492 bra $L121; add.u64 %r133,%r133,16; bra $L116; $L121: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r497,[%value_in]; } setp.ne.u32 %r498,%r497,0; @ %r498 bra $L30; .loc 1 1685 4 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1681 4 mov.u64 %r133,%frame; $L116: .loc 1 1684 6 ld.u8 %r500,[%frame+194]; cvt.s16.s8 %r499,%r500; setp.eq.u16 %r501,%r499,0; @ %r501 bra $L122; .loc 1 1685 4 add.u32 %r198,%r198,1; st.u64 [%r133],%r647; mov.u64 %r503,1; st.u64 [%r133+8],%r503; add.u64 %r193,%r193,1; st.u64 [%frame+184],%r193; st.u32 [%frame+176],%r198; setp.gt.s32 %r504,%r198,7; @ %r504 bra $L123; add.u64 %r133,%r133,16; bra $L122; $L123: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r509,[%value_in]; } setp.ne.u32 %r510,%r509,0; @ %r510 bra $L30; .loc 1 1687 4 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1685 4 mov.u64 %r133,%frame; $L122: .loc 1 1686 6 @ %r626 bra $L124; .loc 1 1687 4 add.u32 %r198,%r198,1; st.u64 [%r133],%r646; mov.u64 %r513,2; st.u64 [%r133+8],%r513; add.u64 %r193,%r193,2; st.u64 [%frame+184],%r193; st.u32 [%frame+176],%r198; setp.gt.s32 %r514,%r198,7; @ %r514 bra $L125; add.u64 %r133,%r133,16; bra $L124; $L125: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r519,[%value_in]; } setp.ne.u32 %r520,%r519,0; @ %r520 bra $L30; .loc 1 1691 4 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1687 4 mov.u64 %r133,%frame; $L124: .loc 1 1690 6 setp.ne.u32 %r521,%r98,128; @ %r521 bra $L126; .loc 1 1691 4 sub.u32 %r139,%r127,%r132; setp.le.s32 %r522,%r139,0; @ %r522 bra $L126; setp.le.s32 %r523,%r139,16; @ ! %r523 bra $L246; cvta.const.u64 %r628,zeroes$0; bra $L127; $L246: cvta.const.u64 %r628,zeroes$0; $L130: st.u64 [%r133],%r628; mov.u64 %r525,16; st.u64 [%r133+8],%r525; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r526,%r198,7; @ %r526 bra $L128; add.u64 %r133,%r133,16; bra $L129; $L128: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r531,[%value_in]; } setp.ne.u32 %r532,%r531,0; @ %r532 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; mov.u64 %r133,%frame; $L129: add.u32 %r139,%r139,-16; setp.gt.s32 %r533,%r139,16; @ %r533 bra $L130; $L127: st.u64 [%r133],%r628; cvt.s64.s32 %r106,%r139; st.u64 [%r133+8],%r106; add.u64 %r193,%r193,%r106; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r535,%r198,7; @ %r535 bra $L131; add.u64 %r133,%r133,16; bra $L126; $L131: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r540,[%value_in]; } setp.ne.u32 %r541,%r540,0; @ %r541 bra $L30; .loc 1 1694 3 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1691 4 mov.u64 %r133,%frame; $L126: .loc 1 1694 3 sub.u32 %r160,%r128,%r129; setp.le.s32 %r542,%r160,0; @ %r542 bra $L132; setp.le.s32 %r543,%r160,16; @ ! %r543 bra $L247; cvta.const.u64 %r628,zeroes$0; bra $L133; $L247: cvta.const.u64 %r628,zeroes$0; $L136: st.u64 [%r133],%r628; mov.u64 %r545,16; st.u64 [%r133+8],%r545; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r546,%r198,7; @ %r546 bra $L134; add.u64 %r133,%r133,16; bra $L135; $L134: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r551,[%value_in]; } setp.ne.u32 %r552,%r551,0; @ %r552 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; mov.u64 %r133,%frame; $L135: add.u32 %r160,%r160,-16; setp.gt.s32 %r553,%r160,16; @ %r553 bra $L136; $L133: st.u64 [%r133],%r628; cvt.s64.s32 %r109,%r160; st.u64 [%r133+8],%r109; add.u64 %r193,%r193,%r109; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r555,%r198,7; @ %r555 bra $L137; add.u64 %r133,%r133,16; bra $L132; $L137: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r560,[%value_in]; } setp.ne.u32 %r561,%r560,0; @ %r561 bra $L30; .loc 1 1760 3 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1694 3 mov.u64 %r133,%frame; $L132: .loc 1 1760 3 st.u64 [%r133],%r124; cvt.s64.s32 %r111,%r129; st.u64 [%r133+8],%r111; add.u64 %r193,%r193,%r111; st.u64 [%frame+184],%r193; add.u32 %r112,%r198,1; st.u32 [%frame+176],%r112; setp.gt.s32 %r562,%r112,7; @ %r562 bra $L138; add.u64 %r134,%r133,16; bra $L139; $L138: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r567,[%value_in]; } setp.ne.u32 %r568,%r567,0; @ %r568 bra $L30; .loc 1 1764 4 ld.u64 %r193,[%frame+184]; .loc 1 1760 3 mov.u64 %r134,%frame; $L139: .loc 1 1763 13 and.b32 %r569,%r126,4; .loc 1 1763 6 setp.eq.u32 %r570,%r569,0; @ %r570 bra $L140; .loc 1 1764 4 sub.u32 %r162,%r127,%r132; setp.le.s32 %r571,%r162,0; @ %r571 bra $L140; ld.u32 %r199,[%frame+176]; setp.le.s32 %r572,%r162,16; @ ! %r572 bra $L248; cvta.const.u64 %r624,blanks$1; bra $L141; $L248: cvta.const.u64 %r624,blanks$1; $L144: st.u64 [%r134],%r624; mov.u64 %r574,16; st.u64 [%r134+8],%r574; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r199,%r199,1; st.u32 [%frame+176],%r199; setp.gt.s32 %r575,%r199,7; @ %r575 bra $L142; add.u64 %r134,%r134,16; bra $L143; $L142: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r580,[%value_in]; } setp.ne.u32 %r581,%r580,0; @ %r581 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r199,[%frame+176]; mov.u64 %r134,%frame; $L143: add.u32 %r162,%r162,-16; setp.gt.s32 %r582,%r162,16; @ %r582 bra $L144; $L141: st.u64 [%r134],%r624; cvt.s64.s32 %r116,%r162; st.u64 [%r134+8],%r116; add.u64 %r193,%r193,%r116; st.u64 [%frame+184],%r193; add.u32 %r117,%r199,1; st.u32 [%frame+176],%r117; setp.le.s32 %r584,%r117,7; @ %r584 bra $L140; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r589,[%value_in]; } setp.ne.u32 %r590,%r589,0; @ %r590 bra $L30; .loc 1 1769 3 ld.u64 %r193,[%frame+184]; $L140: .loc 1 1767 33 max.s32 %r591,%r127,%r132; .loc 1 1767 7 add.u32 %r212,%r212,%r591; .loc 1 1769 3 setp.eq.u64 %r592,%r193,0; @ %r592 bra $L145; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r597,[%value_in]; } setp.ne.u32 %r598,%r597,0; @ %r598 bra $L30; .loc 1 918 4 ld.u64 %r193,[%frame+184]; $L145: .loc 1 1769 3 mov.u32 %r599,0; st.u32 [%frame+176],%r599; mov.u64 %r133,%frame; bra $L25; $L31: .loc 1 1777 2 setp.eq.u64 %r600,%r193,0; @ %r600 bra $L30; add.u64 %r604,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r604; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r605,[%value_in]; } $L30: .loc 1 1784 31 ld.u16 %r607,[%r214+16]; and.b16 %r606,%r607,64; setp.eq.u16 %r608,%r606,0; selp.u32 %r212,%r212,-1,%r608; bra $L21; $L77: .loc 1 932 9 mov.u32 %r126,%r125; mov.u32 %r128,0; bra $L114; $L83: .loc 1 1558 14 setp.ne.u32 %r610,%r128,-1; @ %r610 bra $L146; bra $L107; $L45: setp.ne.u32 %r611,%r147,0; @ ! %r611 bra $L148; bra $L147; $L146: .loc 1 1559 11 and.b32 %r126,%r125,-129; .loc 1 1567 28 set.u32.ne.u32 %r613,%r128,0; neg.s32 %r614,%r613; mov.u32 %r612,%r614; .loc 1 1567 15 set.u32.ne.u64 %r616,%r130,0; neg.s32 %r617,%r616; mov.u32 %r615,%r617; .loc 1 1567 20 cvt.u16.u8 %r653,%r612; mov.u16 %r619,%r653; cvt.u16.u8 %r653,%r615; mov.u16 %r620,%r653; or.b16 %r618,%r619,%r620; cvt.u32.u16 %r621,%r618; .loc 1 1567 7 cvt.u16.u8 %r622,%r621; setp.ne.u16 %r623,%r622,0; @ %r623 bra $L157; mov.u32 %r128,0; mov.u32 %r129,%r128; .loc 1 1566 7 add.u64 %r124,%frame,168; bra $L96; $L21: .loc 1 1786 1 mov.u32 %value,%r212; st.param.u32 [%value_out],%value; ret; } /1501 0 0 0 644 49895 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sungetc_r .visible .func (.param .u32 %value_out) _sungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .visible .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _sfread_r .visible .func (.param .u64 %value_out) _sfread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: __ssvfiscanf_r .visible .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DECL: __submore .extern .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: _sungetc_r .visible .func (.param .u32 %value_out) _sungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r28; .reg .u64 %r32; .reg .u32 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r70; .reg .u32 %r71; mov.u64 %r42,%ar0; mov.u32 %r43,%ar1; mov.u64 %r44,%ar2; .loc 1 267 6 setp.ne.u32 %r45,%r43,-1; @ %r45 bra $L2; $L6: .loc 1 268 12 mov.u32 %r41,-1; bra $L1; $L2: .loc 1 271 14 ld.u16 %r47,[%r44+16]; and.b16 %r46,%r47,-33; st.u16 [%r44+16],%r46; .loc 1 272 7 mov.u32 %r48,%r43; and.b32 %r41,%r43,255; .loc 1 281 13 ld.u32 %r39,[%r44+8]; .loc 1 279 6 ld.u64 %r49,[%r44+88]; setp.eq.u64 %r50,%r49,0; @ %r50 bra $L4; .loc 1 281 10 ld.u32 %r51,[%r44+96]; setp.le.s32 %r52,%r51,%r39; @ %r52 bra $L5; $L7: .loc 1 285 12 ld.u64 %r28,[%r44]; .loc 1 285 8 add.u64 %r53,%r28,-1; .loc 1 285 17 st.u64 [%r44],%r53; st.u8 [%r28+-1],%r48; .loc 1 286 13 ld.u32 %r56,[%r44+8]; add.u32 %r55,%r56,1; st.u32 [%r44+8],%r55; .loc 1 287 14 bra $L1; $L5: .loc 1 281 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r59,[%value_in]; } .loc 1 281 35 setp.ne.u32 %r60,%r59,0; @ ! %r60 bra $L7; bra $L6; $L4: .loc 1 296 14 ld.u64 %r32,[%r44+24]; .loc 1 296 34 ld.u64 %r40,[%r44]; .loc 1 296 6 setp.eq.u64 %r61,%r32,0; @ %r61 bra $L8; .loc 1 296 29 setp.ge.u64 %r62,%r32,%r40; @ %r62 bra $L8; .loc 1 296 64 ld.u8 %r63,[%r40+-1]; .loc 1 296 55 setp.ne.u32 %r64,%r63,%r41; @ %r64 bra $L8; .loc 1 298 13 add.u64 %r65,%r40,-1; st.u64 [%r44],%r65; .loc 1 299 13 add.u32 %r66,%r39,1; st.u32 [%r44+8],%r66; .loc 1 300 14 bra $L1; $L8: .loc 1 308 11 st.u32 [%r44+112],%r39; .loc 1 309 11 st.u64 [%r44+104],%r40; .loc 1 310 19 add.u64 %r67,%r44,116; .loc 1 310 17 st.u64 [%r44+88],%r67; .loc 1 311 17 mov.u32 %r68,3; st.u32 [%r44+96],%r68; .loc 1 312 37 st.u8 [%r44+118],%r48; .loc 1 313 12 add.u64 %r70,%r44,118; .loc 1 313 10 st.u64 [%r44],%r70; .loc 1 314 10 mov.u32 %r71,1; st.u32 [%r44+8],%r71; $L1: .loc 1 316 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ssrefill_r .visible .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r24; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 327 7 ld.u64 %r22,[%r31+88]; .loc 1 327 6 setp.eq.u64 %r32,%r22,0; @ %r32 bra $L13; .loc 1 329 7 add.u64 %r33,%r31,116; setp.eq.u64 %r34,%r22,%r33; @ %r34 bra $L14; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _free_r,(%out_arg1,%out_arg2); } $L14: mov.u64 %r37,0; st.u64 [%r31+88],%r37; .loc 1 330 23 ld.u32 %r24,[%r31+112]; .loc 1 330 19 st.u32 [%r31+8],%r24; .loc 1 330 10 setp.eq.u32 %r38,%r24,0; @ %r38 bra $L13; .loc 1 332 18 ld.u64 %r39,[%r31+104]; st.u64 [%r31],%r39; .loc 1 333 11 mov.u32 %r29,0; bra $L12; $L13: .loc 1 338 10 ld.u64 %r40,[%r31+24]; st.u64 [%r31],%r40; .loc 1 339 10 mov.u32 %r41,0; st.u32 [%r31+8],%r41; .loc 1 340 14 ld.u16 %r43,[%r31+16]; or.b16 %r42,%r43,32; st.u16 [%r31+16],%r42; mov.u32 %r29,-1; $L12: .loc 1 342 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _sfread_r .visible .func (.param .u64 %value_out) _sfread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r22; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r40; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .pred %r60; .reg .u64 %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .pred %r72; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r83; mov.u64 %r45,%ar0; mov.u64 %r46,%ar1; mov.u64 %r47,%ar2; mov.u64 %r48,%ar3; mov.u64 %r49,%ar4; .loc 1 356 14 mul.lo.u64 %r44,%r48,%r47; .loc 1 356 6 setp.eq.u64 %r50,%r44,0; @ ! %r50 bra $L40; bra $L22; $L29: .loc 1 362 16 mov.u64 %r22,%r44; .loc 1 329 7 add.u64 %r83,%r49,116; $L27: .loc 1 364 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r54,[%value_in]; } .loc 1 365 14 ld.u64 %r56,[%r49]; add.u64 %r55,%r56,%r28; st.u64 [%r49],%r55; .loc 1 366 14 mov.u32 %r57,0; st.u32 [%r49+8],%r57; .loc 1 367 9 add.u64 %r46,%r46,%r28; mov.u64 %r26,%r22; .loc 1 368 13 sub.u64 %r22,%r22,%r28; .loc 1 327 7 ld.u64 %r38,[%r49+88]; .loc 1 327 6 setp.eq.u64 %r58,%r38,0; @ %r58 bra $L25; .loc 1 329 7 setp.eq.u64 %r60,%r38,%r83; @ %r60 bra $L26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call _free_r,(%out_arg1,%out_arg2); } $L26: mov.u64 %r63,0; st.u64 [%r49+88],%r63; .loc 1 330 23 ld.u32 %r40,[%r49+112]; .loc 1 330 19 st.u32 [%r49+8],%r40; .loc 1 330 10 setp.eq.u32 %r64,%r40,0; @ %r64 bra $L25; .loc 1 332 22 ld.u64 %r36,[%r49+104]; .loc 1 332 18 st.u64 [%r49],%r36; .loc 1 362 21 cvt.s64.s32 %r28,%r40; .loc 1 362 16 setp.lt.u64 %r65,%r28,%r22; @ %r65 bra $L27; bra $L28; $L25: .loc 1 338 10 ld.u64 %r66,[%r49+24]; st.u64 [%r49],%r66; .loc 1 339 10 mov.u32 %r67,0; st.u32 [%r49+8],%r67; .loc 1 340 14 ld.u16 %r69,[%r49+16]; or.b16 %r68,%r69,32; st.u16 [%r49+16],%r68; .loc 1 372 25 add.u64 %r70,%r44,%r28; sub.u64 %r71,%r70,%r26; .loc 1 372 34 div.u64 %r44,%r71,%r47; bra $L22; $L40: .loc 1 362 21 ld.s32 %r28,[%r49+8]; .loc 1 375 41 ld.u64 %r36,[%r49]; .loc 1 362 16 setp.gt.u64 %r72,%r44,%r28; @ %r72 bra $L29; mov.u64 %r22,%r44; $L28: .loc 1 375 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r22; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r76,[%value_in]; } .loc 1 376 10 cvt.u32.u64 %r77,%r22; ld.u32 %r79,[%r49+8]; sub.u32 %r78,%r79,%r77; st.u32 [%r49+8],%r78; .loc 1 377 10 ld.u64 %r81,[%r49]; add.u64 %r80,%r81,%r22; st.u64 [%r49],%r80; .loc 1 378 10 mov.u64 %r44,%r48; $L22: .loc 1 379 1 mov.u64 %value,%r44; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ssvfiscanf_r .visible .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[304]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r34; .reg .u32 %r41; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r75; .reg .u32 %r90; .reg .u32 %r107; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r154; .reg .u64 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u32 %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u64 %r180; .reg .u64 %r185; .reg .u32 %r187; .reg .u64 %r189; .reg .u64 %r192; .reg .u64 %r197; .reg .u64 %r198; .reg .u32 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .u64 %r208; .reg .u64 %r209; .reg .u64 %r212; .reg .u64 %r213; .reg .u32 %r215; .reg .u64 %r219; .reg .u32 %r221; .reg .u64 %r225; .reg .u32 %r227; .reg .u64 %r233; .reg .u32 %r235; .reg .u32 %r240; .reg .u64 %r241; .reg .u64 %r245; .reg .u32 %r247; .reg .u64 %r251; .reg .u32 %r253; .reg .u64 %r254; .reg .u64 %r258; .reg .u32 %r260; .reg .u64 %r265; .reg .u32 %r267; .reg .u64 %r271; .reg .u32 %r273; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r284; .reg .u64 %r288; .reg .u64 %r290; .reg .u64 %r292; .reg .u64 %r296; .reg .u64 %r301; .reg .u64 %r304; .reg .u32 %r308; .reg .u64 %r309; .reg .u64 %r310; .reg .u64 %r311; .reg .u64 %r312; .reg .u64 %r313; .reg .u32 %r314; .reg .u64 %r316; .reg .u64 %r317; .reg .u32 %r320; .reg .u64 %r321; .reg .u32 %r327; .reg .u64 %r329; .reg .u64 %r330; .reg .u32 %r331; .reg .u64 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u16 %r336; .reg .u16 %r337; .reg .pred %r338; .reg .u16 %r339; .reg .u32 %r341; .reg .u32 %r342; .reg .pred %r343; .reg .pred %r344; .reg .u64 %r345; .reg .u32 %r346; .reg .u64 %r348; .reg .u16 %r351; .reg .u16 %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r358; .reg .u64 %r361; .reg .pred %r362; .reg .u64 %r363; .reg .u32 %r364; .reg .u16 %r365; .reg .u16 %r366; .reg .u64 %r367; .reg .u64 %r369; .reg .u16 %r372; .reg .u16 %r374; .reg .pred %r375; .reg .u32 %r376; .reg .u64 %r377; .reg .pred %r378; .reg .u16 %r379; .reg .pred %r380; .reg .pred %r382; .reg .pred %r384; .reg .pred %r386; .reg .pred %r388; .reg .pred %r390; .reg .pred %r392; .reg .pred %r394; .reg .pred %r396; .reg .pred %r398; .reg .pred %r400; .reg .pred %r402; .reg .pred %r404; .reg .pred %r406; .reg .pred %r408; .reg .pred %r410; .reg .pred %r412; .reg .pred %r414; .reg .pred %r416; .reg .pred %r418; .reg .pred %r420; .reg .pred %r422; .reg .pred %r424; .reg .pred %r426; .reg .pred %r428; .reg .pred %r430; .reg .u32 %r431; .reg .pred %r432; .reg .pred %r433; .reg .pred %r435; .reg .u64 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .u32 %r441; .reg .u16 %r442; .reg .u16 %r443; .reg .u16 %r444; .reg .u16 %r445; .reg .pred %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u64 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .u32 %r453; .reg .u32 %r454; .reg .u32 %r455; .reg .u16 %r456; .reg .u16 %r457; .reg .u16 %r458; .reg .u32 %r459; .reg .u16 %r460; .reg .pred %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u16 %r464; .reg .pred %r465; .reg .u32 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .pred %r469; .reg .u32 %r470; .reg .pred %r471; .reg .u64 %r473; .reg .u64 %r474; .reg .u64 %r475; .reg .u64 %r476; .reg .u32 %r477; .reg .u64 %r480; .reg .u32 %r481; .reg .pred %r482; .reg .u64 %r483; .reg .u32 %r484; .reg .pred %r485; .reg .u32 %r486; .reg .pred %r487; .reg .u64 %r488; .reg .u32 %r489; .reg .pred %r490; .reg .u64 %r491; .reg .u32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .pred %r496; .reg .u64 %r499; .reg .pred %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .u32 %r503; .reg .u16 %r504; .reg .u16 %r505; .reg .u32 %r506; .reg .pred %r507; .reg .u64 %r508; .reg .u64 %r510; .reg .u16 %r513; .reg .u16 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .pred %r518; .reg .pred %r519; .reg .pred %r521; .reg .u64 %r524; .reg .pred %r525; .reg .u64 %r526; .reg .u32 %r527; .reg .u16 %r528; .reg .u16 %r529; .reg .u64 %r530; .reg .u64 %r532; .reg .u16 %r535; .reg .u16 %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .pred %r541; .reg .u32 %r542; .reg .pred %r543; .reg .pred %r545; .reg .u64 %r546; .reg .pred %r547; .reg .pred %r549; .reg .u64 %r552; .reg .pred %r553; .reg .pred %r555; .reg .u64 %r556; .reg .u32 %r557; .reg .u16 %r558; .reg .u16 %r559; .reg .pred %r560; .reg .u32 %r562; .reg .u64 %r563; .reg .u32 %r564; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r570; .reg .pred %r571; .reg .u32 %r572; .reg .pred %r573; .reg .u64 %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .pred %r578; .reg .pred %r579; .reg .u32 %r580; .reg .u64 %r581; .reg .pred %r582; .reg .u32 %r583; .reg .u64 %r584; .reg .pred %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r589; .reg .u64 %r592; .reg .pred %r593; .reg .u64 %r594; .reg .u32 %r595; .reg .u16 %r596; .reg .u16 %r597; .reg .u64 %r599; .reg .u64 %r600; .reg .u16 %r601; .reg .u32 %r602; .reg .pred %r603; .reg .pred %r604; .reg .u32 %r605; .reg .u32 %r606; .reg .u64 %r607; .reg .u32 %r608; .reg .pred %r609; .reg .u32 %r610; .reg .u32 %r611; .reg .u64 %r612; .reg .u32 %r613; .reg .u64 %r614; .reg .pred %r615; .reg .u32 %r616; .reg .pred %r617; .reg .pred %r618; .reg .pred %r620; .reg .u64 %r623; .reg .pred %r624; .reg .u64 %r625; .reg .u32 %r626; .reg .u16 %r627; .reg .u16 %r628; .reg .pred %r629; .reg .u64 %r631; .reg .u64 %r632; .reg .u16 %r633; .reg .u32 %r634; .reg .pred %r635; .reg .u64 %r636; .reg .pred %r637; .reg .u32 %r638; .reg .pred %r639; .reg .u64 %r640; .reg .u64 %r642; .reg .u16 %r644; .reg .u16 %r645; .reg .u32 %r646; .reg .u32 %r647; .reg .pred %r648; .reg .pred %r649; .reg .u32 %r650; .reg .u64 %r651; .reg .pred %r652; .reg .u32 %r653; .reg .u64 %r654; .reg .pred %r655; .reg .pred %r656; .reg .pred %r657; .reg .pred %r659; .reg .u64 %r662; .reg .pred %r663; .reg .u64 %r664; .reg .u32 %r665; .reg .u16 %r666; .reg .u16 %r667; .reg .u64 %r668; .reg .u64 %r670; .reg .u16 %r673; .reg .u16 %r675; .reg .pred %r676; .reg .pred %r677; .reg .u32 %r678; .reg .u32 %r679; .reg .u64 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u32 %r683; .reg .u32 %r684; .reg .u64 %r685; .reg .u32 %r686; .reg .u64 %r687; .reg .pred %r688; .reg .u64 %r689; .reg .u32 %r690; .reg .pred %r691; .reg .pred %r692; .reg .pred %r694; .reg .u64 %r697; .reg .pred %r698; .reg .u64 %r699; .reg .u32 %r700; .reg .u16 %r701; .reg .u16 %r702; .reg .u64 %r703; .reg .u64 %r704; .reg .u64 %r706; .reg .u16 %r709; .reg .u16 %r711; .reg .pred %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .u64 %r715; .reg .pred %r716; .reg .u32 %r717; .reg .u16 %r718; .reg .pred %r719; .reg .pred %r721; .reg .pred %r723; .reg .pred %r725; .reg .u16 %r726; .reg .u32 %r728; .reg .u16 %r730; .reg .u16 %r732; .reg .pred %r733; .reg .u64 %r734; .reg .u64 %r735; .reg .u64 %r736; .reg .u64 %r737; .reg .pred %r739; .reg .pred %r741; .reg .pred %r743; .reg .pred %r745; .reg .pred %r747; .reg .pred %r749; .reg .u32 %r750; .reg .pred %r751; .reg .pred %r752; .reg .u32 %r753; .reg .pred %r754; .reg .pred %r755; .reg .u64 %r756; .reg .u64 %r757; .reg .u64 %r758; .reg .u64 %r759; .reg .pred %r760; .reg .pred %r761; .reg .u32 %r762; .reg .pred %r763; .reg .u32 %r764; .reg .pred %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .pred %r768; .reg .pred %r769; .reg .pred %r771; .reg .u64 %r774; .reg .pred %r775; .reg .u64 %r776; .reg .u32 %r777; .reg .u16 %r778; .reg .u16 %r779; .reg .pred %r780; .reg .u32 %r781; .reg .pred %r782; .reg .pred %r784; .reg .u32 %r788; .reg .u32 %r789; .reg .pred %r791; .reg .u32 %r792; .reg .pred %r793; .reg .u32 %r794; .reg .u64 %r797; .reg .u64 %r800; .reg .u64 %r801; .reg .u32 %r802; .reg .pred %r803; .reg .u32 %r804; .reg .pred %r805; .reg .u64 %r806; .reg .u32 %r807; .reg .pred %r808; .reg .u64 %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u64 %r812; .reg .pred %r813; .reg .u64 %r819; .reg .u64 %r825; .reg .u64 %r826; .reg .u64 %r827; .reg .u64 %r829; .reg .u32 %r830; .reg .pred %r832; .reg .u16 %r833; .reg .u16 %r834; .reg .pred %r835; .reg .u64 %r838; .reg .u32 %r839; .reg .u64 %r848; .reg .u64 %r849; .reg .u16 %r850; mov.u64 %r332,%ar0; mov.u64 %r333,%ar1; mov.u64 %r334,%ar2; mov.u64 %r335,%ar3; .loc 1 591 3 ld.u16 %r337,[%r333+16]; and.b16 %r336,%r337,8192; setp.ne.u16 %r338,%r336,0; @ %r338 bra $L42; or.b16 %r339,%r337,8192; st.u16 [%r333+16],%r339; ld.u32 %r342,[%r333+172]; and.b32 %r341,%r342,-8193; st.u32 [%r333+172],%r341; $L42: .loc 1 602 12 ld.u8 %r28,[%r334]; .loc 1 611 11 add.u64 %r180,%r334,1; .loc 1 613 10 setp.eq.u32 %r343,%r28,0; @ %r343 bra $L169; mov.u64 %r67,0; mov.u32 %r169,0; mov.u32 %r141,%r169; mov.u32 %r331,%r169; cvta.const.u64 %r838,_ctype_+1; .loc 1 329 7 add.u64 %r848,%r333,116; .loc 1 1342 11 add.u64 %r849,%frame,256; bra $L44; $L50: .loc 1 602 12 ld.u8 %r28,[%r180]; .loc 1 611 11 add.u64 %r180,%r180,1; .loc 1 613 10 setp.eq.u32 %r344,%r28,0; @ %r344 bra $L41; $L44: .loc 1 615 26 cvt.u32.u32 %r346,%r28; cvt.u64.u8 %r345,%r346; add.u64 %r348,%r838,%r345; .loc 1 615 23 ld.u8 %r850,[%r348]; mov.u16 %r351,%r850; and.b16 %r353,%r351,8; setp.eq.u16 %r354,%r353,0; @ %r354 bra $L45; .loc 1 649 12 ld.u32 %r41,[%r333+8]; $L51: .loc 1 619 11 setp.gt.s32 %r355,%r41,0; @ %r355 bra $L46; .loc 1 327 7 ld.u64 %r213,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r356,%r213,0; @ %r356 bra $L47; .loc 1 329 7 setp.eq.u64 %r358,%r213,%r848; @ %r358 bra $L48; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r213; call _free_r,(%out_arg1,%out_arg2); } $L48: mov.u64 %r361,0; st.u64 [%r333+88],%r361; .loc 1 330 23 ld.u32 %r215,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r215; .loc 1 330 10 setp.eq.u32 %r362,%r215,0; @ %r362 bra $L47; .loc 1 332 22 ld.u64 %r313,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r313; bra $L49; $L47: .loc 1 338 10 ld.u64 %r363,[%r333+24]; st.u64 [%r333],%r363; .loc 1 339 10 mov.u32 %r364,0; st.u32 [%r333+8],%r364; .loc 1 340 14 ld.u16 %r366,[%r333+16]; or.b16 %r365,%r366,32; st.u16 [%r333+16],%r365; bra $L50; $L46: .loc 1 619 28 ld.u64 %r313,[%r333]; $L49: ld.u8 %r367,[%r313]; add.u64 %r369,%r838,%r367; .loc 1 619 24 ld.u8 %r850,[%r369]; mov.u16 %r372,%r850; and.b16 %r374,%r372,8; setp.eq.u16 %r375,%r374,0; @ %r375 bra $L50; .loc 1 621 13 add.u32 %r141,%r141,1; .loc 1 621 23 ld.u32 %r376,[%r333+8]; add.u32 %r41,%r376,-1; st.u32 [%r333+8],%r41; .loc 1 621 33 add.u64 %r377,%r313,1; st.u64 [%r333],%r377; .loc 1 619 11 bra $L51; $L45: .loc 1 625 10 setp.ne.u32 %r378,%r28,37; @ %r378 bra $L52; .loc 1 640 11 ld.u8 %r314,[%r180]; mov.u64 %r25,%r180; .loc 1 628 13 mov.u32 %r166,0; .loc 1 627 13 mov.u64 %r163,0; bra $L53; $L308: .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 663 10 mov.u32 %r166,16; .loc 1 669 8 mov.u64 %r163,0; $L53: .loc 1 640 15 add.u64 %r180,%r25,1; .loc 1 642 7 cvt.u16.u32 %r379,%r314; setp.eq.u16 %r380,%r379,100; @ %r380 bra $L170; setp.gt.u16 %r382,%r379,100; @ %r382 bra $L55; setp.eq.u16 %r384,%r379,76; @ %r384 bra $L56; setp.gt.u16 %r386,%r379,76; @ %r386 bra $L57; setp.gt.u16 %r388,%r379,57; @ %r388 bra $L58; setp.gt.u16 %r390,%r379,47; @ %r390 bra $L59; setp.eq.u16 %r392,%r379,37; @ %r392 bra $L52; setp.eq.u16 %r394,%r379,42; @ %r394 bra $L60; bra $L41; $L58: setp.eq.u16 %r396,%r379,68; @ %r396 bra $L61; bra $L41; $L57: setp.eq.u16 %r398,%r379,91; @ %r398 bra $L62; setp.gt.u16 %r400,%r379,91; @ %r400 bra $L63; setp.eq.u16 %r402,%r379,79; @ %r402 bra $L64; setp.eq.u16 %r404,%r379,88; @ %r404 bra $L65; bra $L41; $L63: setp.eq.u16 %r406,%r379,99; @ %r406 bra $L66; bra $L41; $L55: setp.eq.u16 %r408,%r379,111; @ %r408 bra $L171; setp.gt.u16 %r410,%r379,111; @ %r410 bra $L67; setp.eq.u16 %r412,%r379,108; @ %r412 bra $L68; setp.gt.u16 %r414,%r379,108; @ %r414 bra $L69; setp.eq.u16 %r416,%r379,104; @ %r416 bra $L70; setp.eq.u16 %r418,%r379,105; @ %r418 bra $L172; bra $L41; $L69: setp.eq.u16 %r420,%r379,110; @ %r420 bra $L71; bra $L41; $L67: setp.eq.u16 %r422,%r379,115; @ %r422 bra $L173; setp.gt.u16 %r424,%r379,115; @ %r424 bra $L72; setp.eq.u16 %r426,%r379,112; @ %r426 bra $L73; bra $L41; $L72: setp.eq.u16 %r428,%r379,117; @ %r428 bra $L174; setp.eq.u16 %r430,%r379,120; @ %r430 bra $L65; bra $L41; $L52: .loc 1 649 11 ld.u32 %r431,[%r333+8]; setp.gt.s32 %r432,%r431,0; @ %r432 bra $L74; .loc 1 327 7 ld.u64 %r219,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r433,%r219,0; @ %r433 bra $L75; .loc 1 329 7 setp.eq.u64 %r435,%r219,%r848; @ %r435 bra $L76; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r219; call _free_r,(%out_arg1,%out_arg2); } $L76: mov.u64 %r438,0; st.u64 [%r333+88],%r438; .loc 1 330 23 ld.u32 %r221,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r221; .loc 1 330 10 setp.eq.u32 %r439,%r221,0; @ %r439 bra $L75; .loc 1 332 22 ld.u64 %r312,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r312; bra $L77; $L75: .loc 1 338 10 ld.u64 %r440,[%r333+24]; st.u64 [%r333],%r440; .loc 1 339 10 mov.u32 %r441,0; st.u32 [%r333+8],%r441; .loc 1 340 14 ld.u16 %r443,[%r333+16]; or.b16 %r442,%r443,32; st.u16 [%r333+16],%r442; bra $L78; $L74: .loc 1 651 15 ld.u64 %r312,[%r333]; $L77: .loc 1 651 11 ld.u8 %r444,[%r312]; ld.u8 %r445,[%r180+-1]; setp.ne.u16 %r446,%r444,%r445; @ %r446 bra $L41; .loc 1 653 14 ld.u32 %r448,[%r333+8]; add.u32 %r447,%r448,-1; st.u32 [%r333+8],%r447; .loc 1 653 24 add.u64 %r449,%r312,1; st.u64 [%r333],%r449; .loc 1 654 13 add.u32 %r141,%r141,1; bra $L50; $L60: .loc 1 660 7 set.u32.ne.u32 %r451,%r166,0; neg.s32 %r452,%r451; mov.u32 %r450,%r452; .loc 1 661 8 set.u32.ne.u64 %r454,%r163,0; neg.s32 %r455,%r454; mov.u32 %r453,%r455; cvt.u16.u8 %r850,%r450; mov.u16 %r457,%r850; cvt.u16.u8 %r850,%r453; mov.u16 %r458,%r850; or.b16 %r456,%r457,%r458; cvt.u32.u16 %r459,%r456; cvt.u16.u8 %r460,%r459; setp.ne.u16 %r461,%r460,0; @ ! %r461 bra $L308; bra $L41; $L68: .loc 1 666 14 and.b32 %r462,%r166,15; .loc 1 666 7 setp.ne.u32 %r463,%r462,0; @ %r463 bra $L41; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 669 7 cvt.u16.u32 %r464,%r314; setp.ne.u16 %r465,%r464,108; @ %r465 bra $L80; .loc 1 672 14 or.b32 %r166,%r166,2; .loc 1 640 11 ld.u8 %r314,[%r25+2]; .loc 1 671 8 add.u64 %r25,%r25,2; bra $L53; $L80: .loc 1 676 12 or.b32 %r166,%r166,1; .loc 1 640 15 mov.u64 %r25,%r180; bra $L53; $L56: .loc 1 679 14 and.b32 %r466,%r166,15; .loc 1 679 7 setp.ne.u32 %r467,%r466,0; @ %r467 bra $L41; .loc 1 681 10 or.b32 %r166,%r166,2; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 682 4 bra $L53; $L70: .loc 1 684 14 and.b32 %r468,%r166,15; .loc 1 684 7 setp.ne.u32 %r469,%r468,0; @ %r469 bra $L41; .loc 1 694 12 or.b32 %r166,%r166,4; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 695 4 bra $L53; $L59: .loc 1 760 14 and.b32 %r470,%r166,143; .loc 1 760 7 setp.ne.u32 %r471,%r470,0; @ %r471 bra $L41; .loc 1 762 18 shl.b64 %r473,%r163,2; add.u64 %r474,%r473,%r163; add.u64 %r475,%r474,%r474; .loc 1 762 23 cvt.u32.u32 %r477,%r314; cvt.u64.u8 %r476,%r477; add.u64 %r301,%r475,%r476; .loc 1 762 10 add.u64 %r163,%r301,-48; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 763 4 bra $L53; $L61: .loc 1 789 10 or.b32 %r166,%r166,1; .loc 1 793 9 mov.u64 %r67,_strtol_r; .loc 1 794 9 mov.u32 %r169,10; .loc 1 792 6 mov.u32 %r204,3; bra $L54; $L64: .loc 1 804 10 or.b32 %r166,%r166,1; .loc 1 808 9 mov.u64 %r67,_strtoul_r; .loc 1 809 9 mov.u32 %r169,8; .loc 1 807 6 mov.u32 %r204,3; bra $L54; $L65: .loc 1 820 10 or.b32 %r166,%r166,512; .loc 1 822 9 mov.u64 %r67,_strtoul_r; .loc 1 823 9 mov.u32 %r169,16; .loc 1 821 6 mov.u32 %r204,3; .loc 1 824 4 bra $L54; $L62: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r180; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r480,[%value_in]; } mov.u64 %r180,%r480; .loc 1 853 10 or.b32 %r166,%r166,64; .loc 1 854 6 mov.u32 %r204,1; .loc 1 855 4 bra $L54; $L66: .loc 1 864 10 or.b32 %r166,%r166,64; .loc 1 865 6 mov.u32 %r204,0; .loc 1 866 4 bra $L54; $L73: .loc 1 869 10 or.b32 %r166,%r166,544; .loc 1 871 9 mov.u64 %r67,_strtoul_r; .loc 1 872 9 mov.u32 %r169,16; .loc 1 870 6 mov.u32 %r204,3; .loc 1 873 4 bra $L54; $L71: .loc 1 876 14 and.b32 %r481,%r166,16; .loc 1 876 7 setp.ne.u32 %r482,%r481,0; @ %r482 bra $L50; .loc 1 888 11 add.u64 %r483,%r335,7; and.b64 %r329,%r483,-8; add.u64 %r335,%r329,8; ld.u64 %r330,[%r329]; .loc 1 886 14 and.b32 %r484,%r166,4; .loc 1 886 7 setp.eq.u32 %r485,%r484,0; @ %r485 bra $L82; .loc 1 889 12 st.u16 [%r330],%r141; bra $L50; $L82: .loc 1 891 19 and.b32 %r486,%r166,1; .loc 1 891 12 setp.eq.u32 %r487,%r486,0; @ %r487 bra $L83; .loc 1 894 12 cvt.s64.s32 %r488,%r141; st.u64 [%r330],%r488; bra $L50; $L83: .loc 1 897 19 and.b32 %r489,%r166,2; .loc 1 897 12 setp.eq.u32 %r490,%r489,0; @ %r490 bra $L84; .loc 1 900 13 cvt.s64.s32 %r491,%r141; st.u64 [%r330],%r491; bra $L50; $L84: .loc 1 906 12 st.u32 [%r330],%r141; bra $L50; $L170: .loc 1 642 7 mov.u64 %r67,_strtol_r; mov.u32 %r169,10; mov.u32 %r204,3; bra $L54; $L171: .loc 1 808 9 mov.u64 %r67,_strtoul_r; .loc 1 809 9 mov.u32 %r169,8; .loc 1 807 6 mov.u32 %r204,3; bra $L54; $L172: .loc 1 799 9 mov.u64 %r67,_strtol_r; .loc 1 800 9 mov.u32 %r169,0; .loc 1 798 6 mov.u32 %r204,3; bra $L54; $L173: .loc 1 848 6 mov.u32 %r204,2; bra $L54; $L174: .loc 1 814 9 mov.u64 %r67,_strtoul_r; .loc 1 815 9 mov.u32 %r169,10; .loc 1 813 6 mov.u32 %r204,3; $L54: .loc 1 917 10 ld.u32 %r492,[%r333+8]; setp.gt.s32 %r493,%r492,0; @ %r493 bra $L85; .loc 1 327 7 ld.u64 %r225,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r494,%r225,0; @ %r494 bra $L86; .loc 1 329 7 setp.eq.u64 %r496,%r225,%r848; @ %r496 bra $L87; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r225; call _free_r,(%out_arg1,%out_arg2); } $L87: mov.u64 %r499,0; st.u64 [%r333+88],%r499; .loc 1 330 23 ld.u32 %r227,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r227; .loc 1 330 10 setp.eq.u32 %r500,%r227,0; @ %r500 bra $L86; .loc 1 332 18 ld.u64 %r501,[%r333+104]; st.u64 [%r333],%r501; bra $L85; $L86: .loc 1 338 10 ld.u64 %r502,[%r333+24]; st.u64 [%r333],%r502; .loc 1 339 10 mov.u32 %r503,0; st.u32 [%r333+8],%r503; .loc 1 340 14 ld.u16 %r505,[%r333+16]; or.b16 %r504,%r505,32; st.u16 [%r333+16],%r504; bra $L78; $L85: .loc 1 924 18 and.b32 %r506,%r166,64; .loc 1 924 10 setp.ne.u32 %r507,%r506,0; @ %r507 bra $L88; .loc 1 926 11 ld.u64 %r292,[%r333]; ld.u8 %r508,[%r292]; add.u64 %r510,%r838,%r508; ld.u8 %r850,[%r510]; mov.u16 %r513,%r850; and.b16 %r515,%r513,8; setp.eq.u16 %r516,%r515,0; @ %r516 bra $L88; $L93: .loc 1 928 13 add.u32 %r141,%r141,1; .loc 1 929 12 ld.u32 %r517,[%r333+8]; add.u32 %r66,%r517,-1; .loc 1 929 11 st.u32 [%r333+8],%r66; setp.le.s32 %r518,%r66,0; @ %r518 bra $L89; .loc 1 930 9 add.u64 %r292,%r292,1; bra $L90; $L89: .loc 1 327 7 ld.u64 %r233,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r519,%r233,0; @ %r519 bra $L91; .loc 1 329 7 setp.eq.u64 %r521,%r233,%r848; @ %r521 bra $L92; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r233; call _free_r,(%out_arg1,%out_arg2); } $L92: mov.u64 %r524,0; st.u64 [%r333+88],%r524; .loc 1 330 23 ld.u32 %r235,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r235; .loc 1 330 10 setp.eq.u32 %r525,%r235,0; @ %r525 bra $L91; .loc 1 332 22 ld.u64 %r292,[%r333+104]; bra $L90; $L91: .loc 1 338 10 ld.u64 %r526,[%r333+24]; st.u64 [%r333],%r526; .loc 1 339 10 mov.u32 %r527,0; st.u32 [%r333+8],%r527; .loc 1 340 14 ld.u16 %r529,[%r333+16]; or.b16 %r528,%r529,32; st.u16 [%r333+16],%r528; bra $L78; $L90: .loc 1 930 9 st.u64 [%r333],%r292; .loc 1 926 11 ld.u8 %r530,[%r292]; add.u64 %r532,%r838,%r530; ld.u8 %r850,[%r532]; mov.u16 %r535,%r850; and.b16 %r537,%r535,8; setp.ne.u16 %r538,%r537,0; @ %r538 bra $L93; $L88: .loc 1 945 7 setp.eq.u32 %r539,%r204,2; @ %r539 bra $L94; setp.eq.u32 %r540,%r204,3; @ %r540 bra $L95; setp.eq.u32 %r541,%r204,1; @ %r541 bra $L96; max.u64 %r209,%r163,1; .loc 1 1017 14 and.b32 %r542,%r166,16; .loc 1 1017 7 setp.eq.u32 %r543,%r542,0; @ %r543 bra $L97; .loc 1 1022 12 ld.u32 %r240,[%r333+8]; .loc 1 1146 25 ld.u64 %r241,[%r333]; .loc 1 1022 24 cvt.u32.u64 %r839,%r209; .loc 1 1022 8 setp.ge.s32 %r545,%r240,%r839; @ %r545 bra $L175; .loc 1 327 7 ld.u64 %r212,[%r333+88]; .loc 1 1019 15 mov.u64 %r208,0; $L101: .loc 1 1024 13 cvt.s64.s32 %r75,%r240; mov.u64 %r290,%r208; add.u64 %r208,%r208,%r75; mov.u64 %r192,%r209; .loc 1 1025 15 sub.u64 %r209,%r209,%r75; .loc 1 1026 16 add.u64 %r546,%r241,%r75; st.u64 [%r333],%r546; .loc 1 327 6 setp.eq.u64 %r547,%r212,0; @ %r547 bra $L99; .loc 1 329 7 setp.eq.u64 %r549,%r212,%r848; @ %r549 bra $L100; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r212; call _free_r,(%out_arg1,%out_arg2); } $L100: mov.u64 %r552,0; st.u64 [%r333+88],%r552; .loc 1 330 23 ld.u32 %r240,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r240; .loc 1 330 10 setp.eq.u32 %r553,%r240,0; @ %r553 bra $L99; .loc 1 332 22 ld.u64 %r241,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r241; mov.u64 %r212,%r552; .loc 1 1022 24 cvt.u32.u64 %r839,%r209; .loc 1 1022 8 setp.gt.s32 %r555,%r839,%r240; @ %r555 bra $L101; .loc 1 1036 13 add.u64 %r208,%r192,%r290; bra $L98; $L99: .loc 1 338 10 ld.u64 %r556,[%r333+24]; st.u64 [%r333],%r556; .loc 1 339 10 mov.u32 %r557,0; st.u32 [%r333+8],%r557; .loc 1 340 14 ld.u16 %r559,[%r333+16]; or.b16 %r558,%r559,32; st.u16 [%r333+16],%r558; .loc 1 1029 9 setp.eq.u64 %r560,%r208,0; @ ! %r560 bra $L103; bra $L78; $L175: .loc 1 1022 8 mov.u64 %r208,%r209; $L98: .loc 1 1037 16 sub.u32 %r562,%r240,%r839; st.u32 [%r333+8],%r562; .loc 1 1038 16 add.u64 %r563,%r241,%r209; st.u64 [%r333],%r563; $L103: .loc 1 1042 14 cvt.u32.u64 %r564,%r208; add.u32 %r141,%r564,%r141; bra $L50; $L97: .loc 1 1053 5 add.u64 %r282,%r335,7; and.b64 %r288,%r282,-8; add.u64 %r335,%r288,8; .loc 1 1054 12 mov.u64 %r567,1; ld.u64 %r566,[%r288]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r566; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r567; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r209; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r333; call (%value_in),_sfread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r570,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r571,%r570,0; @ %r571 bra $L78; .loc 1 1060 14 cvt.u32.u64 %r572,%r570; add.u32 %r141,%r572,%r141; .loc 1 1061 17 add.u32 %r331,%r331,1; bra $L50; $L96: .loc 1 1067 7 setp.ne.u64 %r573,%r163,0; .loc 1 1068 12 selp.u64 %r163,%r163,-1,%r573; .loc 1 1146 25 ld.u64 %r317,[%r333]; .loc 1 1146 21 ld.u8 %r575,[%r317]; add.u64 %r576,%frame,%r575; ld.s8 %r320,[%r576]; .loc 1 1143 14 and.b32 %r577,%r166,16; .loc 1 1143 7 setp.eq.u32 %r578,%r577,0; @ %r578 bra $L105; .loc 1 1146 15 setp.eq.u32 %r579,%r320,0; @ %r579 bra $L41; .loc 1 1148 16 ld.u32 %r580,[%r333+8]; add.u32 %r90,%r580,-1; st.u32 [%r333+8],%r90; .loc 1 1148 26 add.u64 %r581,%r317,1; st.u64 [%r333],%r581; .loc 1 1149 8 add.u64 %r185,%r163,-1; setp.eq.u64 %r582,%r163,1; @ ! %r582 bra $L107; bra $L106; $L112: .loc 1 1148 6 add.u32 %r204,%r204,1; .loc 1 1148 16 ld.u32 %r583,[%r333+8]; add.u32 %r90,%r583,-1; st.u32 [%r333+8],%r90; .loc 1 1148 26 add.u64 %r584,%r311,1; st.u64 [%r333],%r584; .loc 1 1149 8 add.u64 %r185,%r185,-1; setp.eq.u64 %r585,%r185,0; @ %r585 bra $L106; $L107: .loc 1 1151 8 setp.gt.s32 %r586,%r90,0; @ %r586 bra $L108; .loc 1 327 7 ld.u64 %r245,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r587,%r245,0; @ %r587 bra $L109; .loc 1 329 7 setp.eq.u64 %r589,%r245,%r848; @ %r589 bra $L110; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r245; call _free_r,(%out_arg1,%out_arg2); } $L110: mov.u64 %r592,0; st.u64 [%r333+88],%r592; .loc 1 330 23 ld.u32 %r247,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r247; .loc 1 330 10 setp.eq.u32 %r593,%r247,0; @ %r593 bra $L109; .loc 1 332 22 ld.u64 %r311,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r311; bra $L111; $L109: .loc 1 338 10 ld.u64 %r594,[%r333+24]; st.u64 [%r333],%r594; .loc 1 339 10 mov.u32 %r595,0; st.u32 [%r333+8],%r595; .loc 1 340 14 ld.u16 %r597,[%r333+16]; or.b16 %r596,%r597,32; st.u16 [%r333+16],%r596; bra $L106; $L108: .loc 1 1146 25 ld.u64 %r311,[%r333]; $L111: .loc 1 1146 21 ld.u8 %r599,[%r311]; add.u64 %r600,%frame,%r599; .loc 1 1146 15 ld.u8 %r602,[%r600]; cvt.s16.s8 %r601,%r602; setp.ne.u16 %r603,%r601,0; @ %r603 bra $L112; $L106: .loc 1 1160 14 add.u32 %r141,%r141,%r204; bra $L50; $L105: .loc 1 1172 10 add.u64 %r254,%r335,7; and.b64 %r167,%r254,-8; add.u64 %r335,%r167,8; ld.u64 %r202,[%r167]; .loc 1 1173 15 setp.eq.u32 %r604,%r320,0; @ %r604 bra $L41; .loc 1 1175 11 ld.u32 %r606,[%r333+8]; add.u32 %r605,%r606,-1; st.u32 [%r333+8],%r605; .loc 1 1176 19 add.u64 %r607,%r317,1; st.u64 [%r333],%r607; .loc 1 1176 7 add.u64 %r23,%r202,1; .loc 1 1176 10 ld.u8 %r608,[%r317]; st.u8 [%r202],%r608; .loc 1 1180 8 setp.eq.u64 %r609,%r163,1; @ %r609 bra $L113; mov.u64 %r296,%r23; bra $L114; $L119: .loc 1 1175 11 ld.u32 %r611,[%r333+8]; add.u32 %r610,%r611,-1; st.u32 [%r333+8],%r610; .loc 1 1176 19 add.u64 %r612,%r310,1; st.u64 [%r333],%r612; add.u64 %r296,%r296,1; .loc 1 1176 10 ld.u8 %r613,[%r310]; st.u8 [%r23],%r613; .loc 1 1180 8 add.u64 %r614,%r202,%r163; setp.eq.u64 %r615,%r614,%r296; @ %r615 bra $L176; $L114: mov.u64 %r23,%r296; .loc 1 1182 8 ld.u32 %r616,[%r333+8]; setp.gt.s32 %r617,%r616,0; @ %r617 bra $L115; .loc 1 327 7 ld.u64 %r251,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r618,%r251,0; @ %r618 bra $L116; .loc 1 329 7 setp.eq.u64 %r620,%r251,%r848; @ %r620 bra $L117; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r251; call _free_r,(%out_arg1,%out_arg2); } $L117: mov.u64 %r623,0; st.u64 [%r333+88],%r623; .loc 1 330 23 ld.u32 %r253,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r253; .loc 1 330 10 setp.eq.u32 %r624,%r253,0; @ %r624 bra $L116; .loc 1 332 22 ld.u64 %r310,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r310; bra $L118; $L116: .loc 1 338 10 ld.u64 %r625,[%r333+24]; st.u64 [%r333],%r625; .loc 1 339 10 mov.u32 %r626,0; st.u32 [%r333+8],%r626; .loc 1 340 14 ld.u16 %r628,[%r333+16]; or.b16 %r627,%r628,32; st.u16 [%r333+16],%r627; .loc 1 1184 12 setp.eq.u64 %r629,%r202,%r296; @ ! %r629 bra $L113; bra $L78; $L115: .loc 1 1173 25 ld.u64 %r310,[%r333]; $L118: .loc 1 1173 21 ld.u8 %r631,[%r310]; add.u64 %r632,%frame,%r631; .loc 1 1173 15 ld.u8 %r634,[%r632]; cvt.s16.s8 %r633,%r634; setp.ne.u16 %r635,%r633,0; @ %r635 bra $L119; bra $L113; $L176: .loc 1 1176 7 mov.u64 %r23,%r296; $L113: .loc 1 1189 14 sub.u64 %r636,%r23,%r202; .loc 1 1189 10 cvt.u32.u64 %r203,%r636; .loc 1 1190 11 setp.eq.u32 %r637,%r203,0; @ %r637 bra $L41; .loc 1 1192 11 mov.u32 %r638,0; st.u8 [%r23],%r638; .loc 1 1196 17 add.u32 %r331,%r331,1; .loc 1 1197 14 add.u32 %r141,%r141,%r203; bra $L50; $L94: .loc 1 1203 7 setp.ne.u64 %r639,%r163,0; .loc 1 1204 12 selp.u64 %r163,%r163,-1,%r639; .loc 1 1146 25 ld.u64 %r321,[%r333]; .loc 1 1283 16 ld.u8 %r640,[%r321]; add.u64 %r642,%r838,%r640; ld.u8 %r850,[%r642]; mov.u16 %r645,%r850; and.b16 %r644,%r645,8; cvt.u32.u16 %r646,%r644; cvt.s32.s8 %r327,%r646; .loc 1 1280 14 and.b32 %r647,%r166,16; .loc 1 1280 7 setp.eq.u32 %r648,%r647,0; @ %r648 bra $L121; .loc 1 1283 15 setp.ne.u32 %r649,%r327,0; @ %r649 bra $L50; .loc 1 1285 16 ld.u32 %r650,[%r333+8]; add.u32 %r107,%r650,-1; st.u32 [%r333+8],%r107; .loc 1 1285 26 add.u64 %r651,%r321,1; st.u64 [%r333],%r651; .loc 1 1286 8 add.u64 %r201,%r163,-1; setp.ne.u64 %r652,%r163,1; @ %r652 bra $L177; .loc 1 1291 14 add.u32 %r141,%r141,1; bra $L50; $L128: .loc 1 1285 6 add.u32 %r200,%r200,1; .loc 1 1285 16 ld.u32 %r653,[%r333+8]; add.u32 %r107,%r653,-1; st.u32 [%r333+8],%r107; .loc 1 1285 26 add.u64 %r654,%r309,1; st.u64 [%r333],%r654; .loc 1 1286 8 add.u64 %r201,%r201,-1; setp.ne.u64 %r655,%r201,0; @ %r655 bra $L123; .loc 1 1291 14 add.u32 %r141,%r141,%r200; bra $L50; $L177: .loc 1 1285 6 mov.u32 %r200,1; $L123: .loc 1 1288 8 setp.gt.s32 %r656,%r107,0; @ %r656 bra $L124; .loc 1 327 7 ld.u64 %r258,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r657,%r258,0; @ %r657 bra $L125; .loc 1 329 7 setp.eq.u64 %r659,%r258,%r848; @ %r659 bra $L126; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r258; call _free_r,(%out_arg1,%out_arg2); } $L126: mov.u64 %r662,0; st.u64 [%r333+88],%r662; .loc 1 330 23 ld.u32 %r260,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r260; .loc 1 330 10 setp.eq.u32 %r663,%r260,0; @ %r663 bra $L125; .loc 1 332 22 ld.u64 %r309,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r309; bra $L127; $L125: .loc 1 338 10 ld.u64 %r664,[%r333+24]; st.u64 [%r333],%r664; .loc 1 339 10 mov.u32 %r665,0; st.u32 [%r333+8],%r665; .loc 1 340 14 ld.u16 %r667,[%r333+16]; or.b16 %r666,%r667,32; st.u16 [%r333+16],%r666; .loc 1 1291 14 add.u32 %r141,%r141,%r200; bra $L50; $L124: .loc 1 1283 16 ld.u64 %r309,[%r333]; $L127: ld.u8 %r668,[%r309]; add.u64 %r670,%r838,%r668; .loc 1 1283 15 ld.u8 %r850,[%r670]; mov.u16 %r673,%r850; and.b16 %r675,%r673,8; setp.eq.u16 %r676,%r675,0; @ %r676 bra $L128; .loc 1 1291 14 add.u32 %r141,%r141,%r200; bra $L50; $L121: .loc 1 1303 6 add.u64 %r34,%r335,7; and.b64 %r283,%r34,-8; add.u64 %r335,%r283,8; ld.u64 %r198,[%r283]; .loc 1 1305 15 setp.ne.u32 %r677,%r327,0; @ %r677 bra $L178; .loc 1 1307 11 ld.u32 %r679,[%r333+8]; add.u32 %r678,%r679,-1; st.u32 [%r333+8],%r678; .loc 1 1308 19 add.u64 %r680,%r321,1; st.u64 [%r333],%r680; .loc 1 1308 7 add.u64 %r164,%r198,1; .loc 1 1308 10 ld.u8 %r681,[%r321]; st.u8 [%r198],%r681; .loc 1 1312 8 setp.eq.u64 %r682,%r163,1; @ ! %r682 bra $L309; bra $L179; $L136: .loc 1 1307 11 ld.u32 %r684,[%r333+8]; add.u32 %r683,%r684,-1; st.u32 [%r333+8],%r683; .loc 1 1308 19 add.u64 %r685,%r304,1; st.u64 [%r333],%r685; add.u64 %r284,%r284,1; .loc 1 1308 10 ld.u8 %r686,[%r304]; st.u8 [%r164],%r686; .loc 1 1312 8 add.u64 %r687,%r198,%r163; setp.ne.u64 %r688,%r687,%r284; @ %r688 bra $L131; .loc 1 1321 19 sub.u64 %r689,%r284,%r198; .loc 1 1321 14 cvt.u32.u64 %r308,%r689; mov.u64 %r164,%r284; bra $L129; $L309: mov.u64 %r284,%r164; $L131: mov.u64 %r164,%r284; .loc 1 1314 8 ld.u32 %r690,[%r333+8]; setp.gt.s32 %r691,%r690,0; @ %r691 bra $L132; .loc 1 327 7 ld.u64 %r265,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r692,%r265,0; @ %r692 bra $L133; .loc 1 329 7 setp.eq.u64 %r694,%r265,%r848; @ %r694 bra $L134; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r265; call _free_r,(%out_arg1,%out_arg2); } $L134: mov.u64 %r697,0; st.u64 [%r333+88],%r697; .loc 1 330 23 ld.u32 %r267,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r267; .loc 1 330 10 setp.eq.u32 %r698,%r267,0; @ %r698 bra $L133; .loc 1 332 22 ld.u64 %r304,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r304; bra $L135; $L133: .loc 1 338 10 ld.u64 %r699,[%r333+24]; st.u64 [%r333],%r699; .loc 1 339 10 mov.u32 %r700,0; st.u32 [%r333+8],%r700; .loc 1 340 14 ld.u16 %r702,[%r333+16]; or.b16 %r701,%r702,32; st.u16 [%r333+16],%r701; .loc 1 1321 19 sub.u64 %r703,%r284,%r198; .loc 1 1321 14 cvt.u32.u64 %r308,%r703; bra $L129; $L132: .loc 1 1305 16 ld.u64 %r304,[%r333]; $L135: ld.u8 %r704,[%r304]; add.u64 %r706,%r838,%r704; .loc 1 1305 15 ld.u8 %r850,[%r706]; mov.u16 %r709,%r850; and.b16 %r711,%r709,8; setp.eq.u16 %r712,%r711,0; @ %r712 bra $L136; .loc 1 1321 19 sub.u64 %r713,%r284,%r198; .loc 1 1321 14 cvt.u32.u64 %r308,%r713; bra $L129; $L178: .loc 1 1303 6 mov.u64 %r164,%r198; .loc 1 1305 15 mov.u32 %r308,%r647; bra $L129; $L179: .loc 1 1312 8 mov.u32 %r308,1; $L129: .loc 1 1317 11 mov.u32 %r714,0; st.u8 [%r164],%r714; .loc 1 1321 14 add.u32 %r141,%r141,%r308; .loc 1 1322 17 add.u32 %r331,%r331,1; bra $L50; $L95: .loc 1 1335 14 add.u64 %r715,%r163,-1; .loc 1 1335 7 setp.le.u64 %r716,%r715,38; @ %r716 bra $L180; .loc 1 1338 27 cvt.u32.u64 %r717,%r163; .loc 1 1338 19 add.u32 %r170,%r717,-39; .loc 1 1339 14 mov.u64 %r163,39; bra $L137; $L180: .loc 1 1329 13 mov.u32 %r170,0; $L137: .loc 1 1341 10 or.b32 %r168,%r166,3456; .loc 1 1330 8 mov.u32 %r171,0; .loc 1 1342 11 mov.u64 %r165,%r849; $L157: .loc 1 1344 15 ld.u64 %r130,[%r333]; .loc 1 1344 12 ld.u8 %r131,[%r130]; cvt.u16.u32 %r718,%r131; setp.gt.u16 %r719,%r718,57; @ %r719 bra $L138; setp.gt.u16 %r721,%r718,55; @ %r721 bra $L139; setp.eq.u16 %r723,%r718,48; @ %r723 bra $L140; setp.gt.u16 %r725,%r718,48; @ %r725 bra $L141; add.u16 %r726,%r718,-43; cvt.u32.u16 %r728,%r726; cvt.u16.u8 %r850,%r728; mov.u16 %r730,%r850; and.b16 %r732,%r730,253; setp.eq.u16 %r733,%r732,0; @ ! %r733 bra $L143; bra $L142; $L141: .loc 1 1390 19 cvta.const.u64 %r734,basefix$0; cvt.s64.s32 %r735,%r169; add.u64 %r736,%r735,%r735; add.u64 %r737,%r734,%r736; ld.s16 %r169,[%r737]; .loc 1 1391 11 and.b32 %r168,%r168,-2945; .loc 1 1392 5 bra $L144; $L138: setp.gt.u16 %r739,%r718,102; @ %r739 bra $L145; setp.gt.u16 %r741,%r718,96; @ %r741 bra $L146; setp.gt.u16 %r743,%r718,70; @ %r743 bra $L147; setp.gt.u16 %r745,%r718,64; @ ! %r745 bra $L143; bra $L146; $L147: setp.eq.u16 %r747,%r718,88; @ %r747 bra $L148; bra $L143; $L145: setp.eq.u16 %r749,%r718,120; @ %r749 bra $L148; bra $L143; $L140: .loc 1 1361 18 and.b32 %r750,%r168,2048; .loc 1 1361 8 setp.eq.u32 %r751,%r750,0; @ %r751 bra $L144; .loc 1 1363 8 setp.ne.u32 %r752,%r169,0; @ %r752 bra $L149; .loc 1 1366 15 or.b32 %r168,%r168,512; .loc 1 1365 14 mov.u32 %r169,8; $L149: .loc 1 1368 15 and.b32 %r753,%r168,1024; .loc 1 1368 8 setp.eq.u32 %r754,%r753,0; @ %r754 bra $L150; .loc 1 1370 15 and.b32 %r168,%r168,-1409; .loc 1 1371 9 bra $L144; $L150: .loc 1 1373 11 and.b32 %r168,%r168,-897; .loc 1 1374 8 setp.eq.u32 %r755,%r170,0; @ %r755 bra $L151; .loc 1 1376 19 add.u32 %r170,%r170,-1; .loc 1 1377 14 add.u64 %r163,%r163,1; $L151: .loc 1 1379 5 add.u32 %r171,%r171,1; .loc 1 1380 5 bra $L152; $L139: .loc 1 1397 19 cvta.const.u64 %r756,basefix$0; cvt.s64.s32 %r757,%r169; add.u64 %r758,%r757,%r757; add.u64 %r759,%r756,%r758; ld.s16 %r169,[%r759]; .loc 1 1398 8 setp.le.s32 %r760,%r169,8; @ %r760 bra $L143; .loc 1 1400 11 and.b32 %r168,%r168,-2945; .loc 1 1401 5 bra $L144; $L146: .loc 1 1417 8 setp.le.s32 %r761,%r169,10; @ %r761 bra $L143; .loc 1 1419 11 and.b32 %r168,%r168,-2945; .loc 1 1420 5 bra $L144; $L142: .loc 1 1425 15 and.b32 %r762,%r168,128; .loc 1 1425 8 setp.eq.u32 %r763,%r762,0; @ %r763 bra $L143; .loc 1 1427 15 and.b32 %r168,%r168,-129; .loc 1 1428 9 bra $L144; $L148: .loc 1 1435 16 and.b32 %r764,%r168,1536; .loc 1 1435 8 setp.ne.u32 %r765,%r764,512; @ %r765 bra $L143; .loc 1 1438 15 and.b32 %r187,%r168,-513; .loc 1 1442 15 or.b32 %r168,%r187,1280; .loc 1 1437 14 mov.u32 %r169,16; $L144: .loc 1 1457 13 cvt.u32.u32 %r766,%r131; st.u8 [%r165],%r766; .loc 1 1457 10 add.u64 %r165,%r165,1; $L152: .loc 1 1459 12 ld.u32 %r767,[%r333+8]; add.u32 %r140,%r767,-1; .loc 1 1459 11 st.u32 [%r333+8],%r140; setp.le.s32 %r768,%r140,0; @ %r768 bra $L153; .loc 1 1460 9 add.u64 %r142,%r130,1; bra $L154; $L153: .loc 1 327 7 ld.u64 %r271,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r769,%r271,0; @ %r769 bra $L155; .loc 1 329 7 setp.eq.u64 %r771,%r271,%r848; @ %r771 bra $L156; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r271; call _free_r,(%out_arg1,%out_arg2); } $L156: mov.u64 %r774,0; st.u64 [%r333+88],%r774; .loc 1 330 23 ld.u32 %r273,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r273; .loc 1 330 10 setp.eq.u32 %r775,%r273,0; @ %r775 bra $L155; .loc 1 332 22 ld.u64 %r142,[%r333+104]; bra $L154; $L155: .loc 1 338 10 ld.u64 %r776,[%r333+24]; st.u64 [%r333],%r776; .loc 1 339 10 mov.u32 %r777,0; st.u32 [%r333+8],%r777; .loc 1 340 14 ld.u16 %r779,[%r333+16]; or.b16 %r778,%r779,32; st.u16 [%r333+16],%r778; bra $L143; $L154: .loc 1 1460 9 st.u64 [%r333],%r142; .loc 1 1342 30 add.u64 %r163,%r163,-1; .loc 1 1342 18 setp.ne.u64 %r780,%r163,0; @ %r780 bra $L157; $L143: .loc 1 1473 14 and.b32 %r781,%r168,256; .loc 1 1473 7 setp.eq.u32 %r782,%r781,0; @ %r782 bra $L158; .loc 1 1475 11 setp.le.u64 %r784,%r165,%r849; @ %r784 bra $L159; .loc 1 1476 3 add.u64 %r189,%r165,-1; ld.s8 %r788,[%r165+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r788; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r333; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r789,[%value_in]; } mov.u64 %r165,%r189; $L159: .loc 1 1477 11 setp.eq.u64 %r791,%r165,%r849; @ %r791 bra $L41; $L158: .loc 1 1480 15 and.b32 %r792,%r168,16; .loc 1 1480 7 setp.ne.u32 %r793,%r792,0; @ %r793 bra $L160; .loc 1 1484 11 mov.u32 %r794,0; st.u8 [%r165],%r794; .loc 1 1485 15 mov.u64 %r797,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r849; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r797; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r169; call (%value_in),%r67,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r800,[%value_in]; } .loc 1 888 11 add.u64 %r801,%r335,7; and.b64 %r316,%r801,-8; add.u64 %r335,%r316,8; .loc 1 1486 18 and.b32 %r802,%r168,32; .loc 1 1486 11 setp.eq.u32 %r803,%r802,0; @ %r803 bra $L161; .loc 1 1488 12 ld.u64 %r197,[%r316]; .loc 1 1498 11 st.u64 [%r197],%r800; bra $L162; $L161: .loc 1 1507 23 and.b32 %r804,%r168,4; .loc 1 1507 16 setp.eq.u32 %r805,%r804,0; @ %r805 bra $L163; .loc 1 1510 9 ld.u64 %r806,[%r316]; st.u16 [%r806],%r800; bra $L162; $L163: .loc 1 1512 23 and.b32 %r807,%r168,1; .loc 1 1512 16 setp.eq.u32 %r808,%r807,0; @ %r808 bra $L164; .loc 1 1515 9 ld.u64 %r809,[%r316]; st.u64 [%r809],%r800; bra $L162; $L164: .loc 1 1518 23 and.b32 %r810,%r168,2; .loc 1 1518 16 setp.eq.u32 %r811,%r810,0; @ %r811 bra $L165; .loc 1 1521 8 mov.u64 %r812,_strtoul_r; setp.ne.u64 %r813,%r67,%r812; @ %r813 bra $L166; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r849; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r797; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r169; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r819,[%value_in]; } .loc 1 1526 10 mov.u64 %r154,%r819; bra $L167; $L166: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r849; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r797; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r169; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r825,[%value_in]; } mov.u64 %r154,%r825; $L167: .loc 1 1526 10 ld.u64 %r826,[%r316]; st.u64 [%r826],%r154; bra $L162; $L165: .loc 1 1532 9 ld.u64 %r827,[%r316]; st.u32 [%r827],%r800; $L162: .loc 1 1534 17 add.u32 %r331,%r331,1; $L160: .loc 1 1536 15 sub.u64 %r829,%r165,%r849; .loc 1 1536 21 cvt.u32.u64 %r830,%r829; .loc 1 1536 10 vadd.u32.u32.u32.add %r141,%r141,%r171,%r830; .loc 1 1537 4 bra $L50; $L78: .loc 1 1905 63 setp.eq.u32 %r832,%r331,0; @ %r832 bra $L181; .loc 1 1905 25 ld.u16 %r834,[%r333+16]; and.b16 %r833,%r834,64; setp.ne.u16 %r835,%r833,0; .loc 1 1905 63 selp.u32 %r331,-1,%r331,%r835; bra $L41; $L169: .loc 1 613 10 mov.u32 %r331,%r28; bra $L41; $L181: .loc 1 1905 63 mov.u32 %r331,-1; $L43: $L168: $L41: .loc 1 1914 1 mov.u32 %value,%r331; st.param.u32 [%value_out],%value; ret; } /1520 0 0 0 644 44055 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _svfiwprintf_r .visible .func (.param .u32 %value_out) _svfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .extern .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN GLOBAL FUNCTION DEF: _svfiwprintf_r .visible .func (.param .u32 %value_out) _svfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[336]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r33; .reg .u32 %r36; .reg .u64 %r53; .reg .u32 %r74; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r117; .reg .u32 %r118; .reg .u64 %r120; .reg .u64 %r121; .reg .u32 %r125; .reg .u64 %r128; .reg .u64 %r131; .reg .u64 %r132; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u64 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u64 %r163; .reg .u32 %r166; .reg .u32 %r167; .reg .u32 %r169; .reg .u32 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r190; .reg .u32 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r196; .reg .u32 %r198; .reg .u32 %r201; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r208; .reg .u64 %r209; .reg .u64 %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r228; .reg .u64 %r237; .reg .u32 %r238; .reg .u64 %r239; .reg .u32 %r240; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u64 %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r258; .reg .u64 %r259; .reg .u64 %r260; .reg .u64 %r261; .reg .u64 %r262; .reg .u16 %r263; .reg .u16 %r264; .reg .pred %r265; .reg .u64 %r266; .reg .pred %r267; .reg .u64 %r269; .reg .u64 %r270; .reg .pred %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u64 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .u16 %r283; .reg .u16 %r284; .reg .u16 %r285; .reg .u32 %r286; .reg .u16 %r287; .reg .pred %r288; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .u32 %r293; .reg .u32 %r294; .reg .u16 %r295; .reg .u16 %r296; .reg .u16 %r297; .reg .u32 %r298; .reg .u16 %r299; .reg .pred %r300; .reg .u64 %r301; .reg .u64 %r303; .reg .pred %r304; .reg .u64 %r305; .reg .u64 %r306; .reg .u64 %r307; .reg .u32 %r308; .reg .pred %r309; .reg .u32 %r314; .reg .pred %r315; .reg .u16 %r316; .reg .u16 %r317; .reg .pred %r318; .reg .u32 %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .pred %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .pred %r331; .reg .pred %r332; .reg .u32 %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .pred %r338; .reg .pred %r339; .reg .pred %r340; .reg .pred %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .pred %r351; .reg .pred %r352; .reg .u32 %r353; .reg .pred %r354; .reg .u32 %r355; .reg .u32 %r357; .reg .u32 %r358; .reg .u32 %r359; .reg .u32 %r360; .reg .u32 %r361; .reg .pred %r362; .reg .u32 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .u32 %r368; .reg .pred %r369; .reg .pred %r370; .reg .pred %r371; .reg .u32 %r372; .reg .pred %r373; .reg .u32 %r375; .reg .pred %r376; .reg .u16 %r377; .reg .u16 %r378; .reg .u32 %r379; .reg .pred %r381; .reg .u32 %r382; .reg .pred %r383; .reg .u32 %r384; .reg .pred %r385; .reg .u32 %r386; .reg .pred %r387; .reg .u16 %r388; .reg .pred %r391; .reg .pred %r392; .reg .u64 %r393; .reg .u32 %r394; .reg .pred %r395; .reg .u64 %r396; .reg .u64 %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .pred %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .u32 %r406; .reg .pred %r407; .reg .u32 %r408; .reg .pred %r409; .reg .u32 %r410; .reg .pred %r411; .reg .u16 %r412; .reg .u32 %r413; .reg .u32 %r414; .reg .u32 %r415; .reg .pred %r416; .reg .pred %r417; .reg .pred %r418; .reg .u32 %r420; .reg .u64 %r422; .reg .pred %r423; .reg .u64 %r425; .reg .pred %r426; .reg .u64 %r429; .reg .u64 %r430; .reg .u64 %r431; .reg .pred %r432; .reg .u16 %r433; .reg .u16 %r434; .reg .u64 %r436; .reg .u32 %r437; .reg .pred %r438; .reg .u32 %r439; .reg .u64 %r443; .reg .u64 %r445; .reg .u32 %r446; .reg .pred %r447; .reg .u32 %r449; .reg .u64 %r451; .reg .u64 %r452; .reg .pred %r453; .reg .u64 %r454; .reg .u64 %r456; .reg .u32 %r457; .reg .u64 %r459; .reg .u32 %r460; .reg .pred %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u32 %r464; .reg .pred %r465; .reg .u16 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .pred %r469; .reg .u32 %r470; .reg .pred %r471; .reg .u32 %r472; .reg .pred %r473; .reg .u16 %r474; .reg .u32 %r475; .reg .pred %r476; .reg .pred %r477; .reg .u32 %r478; .reg .pred %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u16 %r490; .reg .pred %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .u32 %r495; .reg .pred %r496; .reg .u32 %r497; .reg .u32 %r498; .reg .u32 %r499; .reg .u32 %r500; .reg .u16 %r501; .reg .u16 %r502; .reg .u32 %r503; .reg .u16 %r504; .reg .u16 %r505; .reg .u16 %r506; .reg .u32 %r507; .reg .u16 %r508; .reg .pred %r509; .reg .u64 %r511; .reg .u64 %r513; .reg .u32 %r514; .reg .u64 %r516; .reg .u64 %r518; .reg .pred %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .u64 %r523; .reg .u32 %r524; .reg .u32 %r525; .reg .pred %r528; .reg .u64 %r530; .reg .u64 %r532; .reg .u64 %r533; .reg .u64 %r534; .reg .u64 %r535; .reg .u32 %r536; .reg .pred %r537; .reg .u64 %r539; .reg .u64 %r541; .reg .pred %r542; .reg .pred %r543; .reg .u32 %r544; .reg .pred %r545; .reg .pred %r546; .reg .u32 %r547; .reg .u32 %r548; .reg .pred %r549; .reg .pred %r551; .reg .pred %r552; .reg .pred %r553; .reg .u64 %r555; .reg .pred %r556; .reg .u32 %r561; .reg .pred %r562; .reg .pred %r563; .reg .u64 %r565; .reg .pred %r566; .reg .u32 %r571; .reg .pred %r572; .reg .u32 %r573; .reg .pred %r574; .reg .u64 %r576; .reg .pred %r577; .reg .u32 %r582; .reg .pred %r583; .reg .u64 %r586; .reg .pred %r587; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .pred %r595; .reg .pred %r596; .reg .u64 %r598; .reg .pred %r599; .reg .u32 %r604; .reg .pred %r605; .reg .pred %r606; .reg .u64 %r608; .reg .pred %r609; .reg .u32 %r614; .reg .pred %r615; .reg .pred %r616; .reg .pred %r617; .reg .u64 %r619; .reg .pred %r620; .reg .u32 %r625; .reg .pred %r626; .reg .pred %r627; .reg .u64 %r629; .reg .pred %r630; .reg .u32 %r635; .reg .pred %r636; .reg .u64 %r637; .reg .pred %r638; .reg .u32 %r643; .reg .pred %r644; .reg .u32 %r645; .reg .pred %r646; .reg .pred %r647; .reg .pred %r648; .reg .u64 %r650; .reg .pred %r651; .reg .u32 %r656; .reg .pred %r657; .reg .pred %r658; .reg .u64 %r660; .reg .pred %r661; .reg .u32 %r666; .reg .pred %r667; .reg .u32 %r668; .reg .pred %r669; .reg .u32 %r670; .reg .pred %r671; .reg .u32 %r676; .reg .pred %r677; .reg .u64 %r680; .reg .pred %r681; .reg .u64 %r685; .reg .u32 %r686; .reg .pred %r687; .reg .u16 %r688; .reg .u16 %r689; .reg .u16 %r690; .reg .u16 %r691; .reg .pred %r692; .reg .u16 %r693; .reg .u16 %r694; .reg .u16 %r697; .reg .u16 %r698; .reg .pred %r699; .reg .pred %r701; .reg .pred %r702; .reg .u32 %r703; .reg .u32 %r704; .reg .u32 %r705; .reg .u32 %r706; .reg .u32 %r707; .reg .u32 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u16 %r711; .reg .u32 %r712; .reg .u16 %r713; .reg .pred %r714; .reg .u64 %r715; .reg .pred %r716; .reg .u64 %r717; .reg .pred %r718; .reg .u64 %r719; .reg .u64 %r736; .reg .u64 %r737; .reg .u64 %r738; .reg .u16 %r744; mov.u64 %r259,%ar0; mov.u64 %r260,%ar1; mov.u64 %r261,%ar2; mov.u64 %r262,%ar3; .loc 1 612 12 ld.u16 %r264,[%r260+16]; and.b16 %r263,%r264,128; setp.eq.u16 %r265,%r263,0; @ %r265 bra $L2; .loc 1 612 33 ld.u64 %r266,[%r260+24]; setp.ne.u64 %r267,%r266,0; @ %r267 bra $L2; .loc 1 614 28 mov.u64 %r269,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r269; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r270,[%value_in]; } .loc 1 614 26 st.u64 [%r260],%r270; .loc 1 614 17 st.u64 [%r260+24],%r270; .loc 1 615 6 setp.ne.u64 %r271,%r270,0; @ %r271 bra $L3; .loc 1 617 17 mov.u32 %r272,12; st.u32 [%r259],%r272; .loc 1 618 11 mov.u32 %r258,-1; bra $L1; $L3: .loc 1 620 17 mov.u32 %r273,64; st.u32 [%r260+32],%r273; $L2: .loc 1 626 14 add.u64 %r717,%frame,160; st.u64 [%frame+288],%r717; .loc 1 627 16 mov.u64 %r275,0; st.u64 [%frame+304],%r275; .loc 1 628 17 mov.u32 %r276,0; st.u32 [%frame+296],%r276; .loc 1 626 21 mov.u64 %r160,%r717; .loc 1 435 11 mov.u64 %r33,%r275; .loc 1 630 6 mov.u32 %r258,%r276; .loc 1 647 4 add.u64 %r736,%frame,288; .loc 1 1438 4 add.u64 %r737,%frame,312; .loc 1 1436 4 add.u64 %r738,%frame,320; $L5: .loc 1 644 24 ld.u32 %r169,[%r261]; .loc 1 644 38 set.u32.ne.u32 %r278,%r169,0; neg.s32 %r279,%r278; mov.u32 %r277,%r279; set.u32.ne.u32 %r281,%r169,37; neg.s32 %r282,%r281; mov.u32 %r280,%r282; cvt.u16.u8 %r744,%r277; mov.u16 %r284,%r744; cvt.u16.u8 %r744,%r280; mov.u16 %r285,%r744; and.b16 %r283,%r284,%r285; cvt.u32.u16 %r286,%r283; cvt.u16.u8 %r287,%r286; setp.eq.u16 %r288,%r287,0; @ %r288 bra $L143; mov.u64 %r171,%r261; $L7: mov.u64 %r30,%r171; .loc 1 645 21 add.u64 %r171,%r171,4; .loc 1 644 24 ld.u32 %r169,[%r171]; .loc 1 644 38 set.u32.ne.u32 %r290,%r169,0; neg.s32 %r291,%r290; mov.u32 %r289,%r291; set.u32.ne.u32 %r293,%r169,37; neg.s32 %r294,%r293; mov.u32 %r292,%r294; cvt.u16.u8 %r744,%r289; mov.u16 %r296,%r744; cvt.u16.u8 %r744,%r292; mov.u16 %r297,%r744; and.b16 %r295,%r296,%r297; cvt.u32.u16 %r298,%r295; cvt.u16.u8 %r299,%r298; setp.ne.u16 %r300,%r299,0; @ %r300 bra $L7; .loc 1 646 16 sub.u64 %r301,%r171,%r261; shr.s64 %r303,%r301,2; .loc 1 646 10 cvt.u32.u64 %r170,%r303; .loc 1 646 6 setp.eq.u32 %r304,%r170,0; @ %r304 bra $L6; .loc 1 647 4 st.u64 [%r160],%r261; cvt.s64.s32 %r305,%r170; shl.b64 %r31,%r305,2; st.u64 [%r160+8],%r31; ld.u64 %r307,[%frame+304]; add.u64 %r306,%r307,%r31; st.u64 [%frame+304],%r306; ld.u32 %r308,[%frame+296]; add.u32 %r36,%r308,1; st.u32 [%frame+296],%r36; setp.le.s32 %r309,%r36,7; @ %r309 bra $L8; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r314,[%value_in]; } setp.eq.u32 %r315,%r314,0; @ %r315 bra $L144; ld.u16 %r317,[%r260+16]; and.b16 %r316,%r317,64; cvt.s32.s16 %r246,%r316; bra $L10; $L8: add.u64 %r160,%r160,16; bra $L9; $L144: mov.u64 %r160,%r717; $L9: .loc 1 648 8 add.u32 %r258,%r258,%r170; .loc 1 650 21 ld.u32 %r169,[%r30+4]; bra $L6; $L143: .loc 1 644 38 mov.u64 %r171,%r261; $L6: .loc 1 650 20 setp.eq.u32 %r318,%r169,0; @ %r318 bra $L11; .loc 1 653 6 add.u64 %r261,%r171,4; .loc 1 659 8 mov.u32 %r319,0; st.u32 [%frame+320],%r319; .loc 1 671 14 ld.u32 %r247,[%r171+4]; mov.u32 %r172,%r319; mov.u32 %r173,%r319; .loc 1 658 8 mov.u32 %r154,-1; .loc 1 657 9 mov.u32 %r153,%r319; .loc 1 655 9 mov.u32 %r103,%r319; $L12: .loc 1 671 18 add.u64 %r261,%r261,4; .loc 1 671 12 mov.u32 %r151,%r247; $L13: .loc 1 672 11 setp.eq.u32 %r320,%r151,100; @ %r320 bra $L14; setp.gt.u32 %r321,%r151,100; @ %r321 bra $L15; setp.eq.u32 %r322,%r151,46; @ %r322 bra $L16; setp.gt.u32 %r323,%r151,46; @ %r323 bra $L17; setp.eq.u32 %r324,%r151,42; @ %r324 bra $L18; setp.gt.u32 %r325,%r151,42; @ %r325 bra $L19; setp.eq.u32 %r326,%r151,32; @ %r326 bra $L20; setp.eq.u32 %r327,%r151,35; @ %r327 bra $L21; bra $L239; $L19: setp.eq.u32 %r328,%r151,43; @ %r328 bra $L23; setp.eq.u32 %r329,%r151,45; @ %r329 bra $L24; bra $L25; $L17: setp.eq.u32 %r330,%r151,88; @ %r330 bra $L26; setp.gt.u32 %r331,%r151,88; @ %r331 bra $L27; setp.eq.u32 %r332,%r151,48; @ %r332 bra $L28; add.u32 %r333,%r151,-49; setp.gt.u32 %r334,%r333,8; @ %r334 bra $L25; mov.u64 %r180,%r261; .loc 1 817 6 mov.u32 %r153,0; bra $L29; $L27: .loc 1 672 11 setp.eq.u32 %r335,%r151,99; @ %r335 bra $L30; bra $L25; $L15: setp.eq.u32 %r336,%r151,112; @ %r336 bra $L31; setp.gt.u32 %r337,%r151,112; @ %r337 bra $L32; setp.eq.u32 %r338,%r151,108; @ %r338 bra $L33; setp.gt.u32 %r339,%r151,108; @ %r339 bra $L34; setp.eq.u32 %r340,%r151,104; @ %r340 bra $L35; setp.eq.u32 %r341,%r151,105; @ %r341 bra $L14; bra $L25; $L34: setp.eq.u32 %r342,%r151,110; @ %r342 bra $L36; setp.eq.u32 %r343,%r151,111; @ %r343 bra $L37; bra $L25; $L32: setp.eq.u32 %r344,%r151,117; @ %r344 bra $L38; setp.gt.u32 %r345,%r151,117; @ %r345 bra $L39; setp.eq.u32 %r346,%r151,113; @ %r346 bra $L40; setp.eq.u32 %r347,%r151,115; @ %r347 bra $L41; bra $L25; $L39: setp.ne.u32 %r348,%r151,120; @ %r348 bra $L25; setp.eq.u32 %r349,%r172,0; @ %r349 bra $L42; st.u32 [%frame+320],%r173; $L42: .loc 1 1291 10 cvta.const.u64 %r33,$LC1; bra $L43; $L20: .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 704 7 setp.ne.u32 %r350,%r173,0; selp.u32 %r172,%r172,1,%r350; selp.u32 %r173,%r173,32,%r350; bra $L12; $L21: .loc 1 708 10 or.b32 %r103,%r103,1; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 709 4 bra $L12; $L18: .loc 1 747 10 add.u64 %r217,%r262,4; ld.u32 %r153,[%r262]; .loc 1 751 7 setp.lt.s32 %r351,%r153,0; @ %r351 bra $L45; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 747 10 mov.u64 %r262,%r217; bra $L12; $L45: .loc 1 753 10 neg.s32 %r153,%r153; .loc 1 747 10 mov.u64 %r262,%r217; $L24: .loc 1 756 10 or.b32 %r103,%r103,4; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 757 4 bra $L12; $L23: .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 760 4 mov.u32 %r172,1; .loc 1 759 9 mov.u32 %r173,%r151; .loc 1 760 4 bra $L12; $L16: .loc 1 762 18 add.u64 %r192,%r261,4; .loc 1 762 12 ld.u32 %r151,[%r261]; .loc 1 762 7 setp.eq.u32 %r352,%r151,42; @ %r352 bra $L46; .loc 1 801 11 add.u32 %r353,%r151,-48; setp.le.u32 %r354,%r353,9; @ %r354 bra $L47; .loc 1 762 18 mov.u64 %r261,%r192; .loc 1 801 11 mov.u32 %r154,%r319; bra $L13; $L46: ld.u32 %r355,[%r262]; max.s32 %r154,%r355,-1; .loc 1 671 14 ld.u32 %r247,[%r261+4]; .loc 1 792 10 add.u64 %r262,%r262,4; .loc 1 762 18 mov.u64 %r261,%r192; .loc 1 798 5 bra $L12; $L47: mov.u64 %r184,%r192; .loc 1 800 6 mov.u32 %r191,%r319; $L49: .loc 1 802 12 shl.b32 %r357,%r191,2; add.u32 %r358,%r357,%r191; add.u32 %r359,%r358,%r358; .loc 1 802 16 add.u32 %r360,%r359,-48; add.u32 %r191,%r360,%r151; mov.u64 %r179,%r184; add.u64 %r261,%r184,4; mov.u64 %r184,%r261; .loc 1 803 8 ld.u32 %r151,[%r179]; .loc 1 801 11 add.u32 %r361,%r151,-48; setp.le.u32 %r362,%r361,9; @ %r362 bra $L49; .loc 1 805 9 max.s32 %r154,%r191,-1; .loc 1 806 4 bra $L13; $L28: .loc 1 813 10 or.b32 %r103,%r103,128; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 814 4 bra $L12; $L29: .loc 1 819 12 shl.b32 %r364,%r153,2; add.u32 %r365,%r364,%r153; add.u32 %r366,%r365,%r365; .loc 1 819 16 add.u32 %r367,%r366,-48; add.u32 %r153,%r367,%r151; mov.u64 %r120,%r180; add.u64 %r180,%r180,4; mov.u64 %r261,%r180; .loc 1 820 8 ld.u32 %r151,[%r120]; .loc 1 821 13 add.u32 %r368,%r151,-48; setp.le.u32 %r369,%r368,9; @ %r369 bra $L29; bra $L13; $L35: .loc 1 847 11 or.b32 %r103,%r103,64; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 848 4 bra $L12; $L33: .loc 1 851 8 ld.u32 %r247,[%r261]; .loc 1 851 7 setp.ne.u32 %r370,%r247,108; @ %r370 bra $L51; .loc 1 853 11 or.b32 %r103,%r103,32; .loc 1 671 14 ld.u32 %r247,[%r261+4]; .loc 1 852 8 add.u64 %r261,%r261,4; bra $L12; $L51: .loc 1 856 11 or.b32 %r103,%r103,16; bra $L12; $L40: .loc 1 859 10 or.b32 %r103,%r103,32; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 860 4 bra $L12; $L30: setp.eq.u32 %r371,%r172,0; @ %r371 bra $L52; st.u32 [%frame+320],%r173; $L52: .loc 1 747 10 ld.u32 %r167,[%r262]; add.u64 %r262,%r262,4; .loc 1 903 30 and.b32 %r372,%r103,16; .loc 1 903 19 setp.ne.u32 %r373,%r372,0; @ %r373 bra $L53; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r167; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r375,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r376,%r375,-1; @ %r376 bra $L54; .loc 1 906 20 ld.u16 %r378,[%r260+16]; or.b16 %r377,%r378,64; st.u16 [%r260+16],%r377; .loc 1 1536 31 mov.u32 %r258,%r375; bra $L1; $L54: .loc 1 909 13 mov.u32 %r167,%r375; $L53: .loc 1 909 11 st.u32 [%frame],%r167; .loc 1 915 10 mov.u32 %r379,0; st.u32 [%frame+4],%r379; .loc 1 917 9 st.u32 [%frame+320],%r379; .loc 1 918 4 mov.u32 %r158,1; .loc 1 916 9 mov.u32 %r159,%r158; .loc 1 902 7 mov.u64 %r143,%frame; .loc 1 918 4 bra $L55; $L14: setp.eq.u32 %r381,%r172,0; @ %r381 bra $L56; st.u32 [%frame+320],%r173; $L56: .loc 1 921 13 and.b32 %r382,%r103,32; setp.eq.u32 %r383,%r382,0; @ %r383 bra $L57; add.u64 %r218,%r262,7; and.b64 %r219,%r218,-8; add.u64 %r262,%r219,8; ld.u64 %r53,[%r219]; mov.u64 %r156,%r53; bra $L58; $L57: and.b32 %r384,%r103,16; setp.eq.u32 %r385,%r384,0; @ %r385 bra $L59; add.u64 %r208,%r262,7; and.b64 %r223,%r208,-8; add.u64 %r262,%r223,8; ld.u64 %r53,[%r223]; mov.u64 %r156,%r53; bra $L58; $L59: .loc 1 747 10 ld.u32 %r249,[%r262]; add.u64 %r262,%r262,4; .loc 1 921 13 and.b32 %r386,%r103,64; setp.eq.u32 %r387,%r386,0; @ %r387 bra $L60; cvt.u16.u32 %r388,%r249; cvt.s64.s16 %r156,%r388; .loc 1 923 8 mov.u64 %r53,%r156; bra $L58; $L60: .loc 1 921 13 cvt.s64.s32 %r156,%r249; .loc 1 923 8 mov.u64 %r53,%r156; $L58: .loc 1 923 7 setp.ge.s64 %r391,%r53,0; @ %r391 bra $L61; .loc 1 929 12 neg.s64 %r156,%r156; mov.u32 %r166,45; .loc 1 932 9 mov.u32 %r157,1; bra $L62; $L36: setp.eq.u32 %r392,%r172,0; @ %r392 bra $L63; st.u32 [%frame+320],%r173; $L63: .loc 1 921 13 add.u64 %r393,%r262,7; and.b64 %r252,%r393,-8; add.u64 %r262,%r252,8; .loc 1 1132 14 and.b32 %r394,%r103,32; .loc 1 1132 7 setp.eq.u32 %r395,%r394,0; @ %r395 bra $L64; .loc 1 1133 34 ld.u64 %r396,[%r252]; cvt.s64.s32 %r397,%r258; st.u64 [%r396],%r397; bra $L5; $L64: .loc 1 1136 14 and.b32 %r398,%r103,16; .loc 1 1136 7 setp.eq.u32 %r399,%r398,0; @ %r399 bra $L66; .loc 1 1137 34 ld.u64 %r400,[%r252]; cvt.s64.s32 %r401,%r258; st.u64 [%r400],%r401; bra $L5; $L66: .loc 1 1138 19 and.b32 %r402,%r103,64; .loc 1 1138 12 setp.eq.u32 %r403,%r402,0; @ %r403 bra $L67; .loc 1 1139 35 ld.u64 %r404,[%r252]; st.u16 [%r404],%r258; bra $L5; $L67: .loc 1 1145 33 ld.u64 %r405,[%r252]; st.u32 [%r405],%r258; bra $L5; $L37: .loc 1 1148 13 and.b32 %r406,%r103,32; setp.eq.u32 %r407,%r406,0; @ %r407 bra $L68; add.u64 %r210,%r262,7; and.b64 %r209,%r210,-8; add.u64 %r262,%r209,8; ld.u64 %r156,[%r209]; .loc 1 1149 9 mov.u32 %r157,0; bra $L69; $L68: .loc 1 1148 13 and.b32 %r408,%r103,16; setp.eq.u32 %r409,%r408,0; @ %r409 bra $L70; add.u64 %r211,%r262,7; and.b64 %r183,%r211,-8; add.u64 %r262,%r183,8; ld.u64 %r156,[%r183]; .loc 1 1149 9 mov.u32 %r157,0; bra $L69; $L70: .loc 1 747 10 ld.u32 %r253,[%r262]; add.u64 %r262,%r262,4; .loc 1 1148 13 and.b32 %r410,%r103,64; setp.eq.u32 %r411,%r410,0; @ %r411 bra $L71; cvt.u16.u32 %r412,%r253; cvt.u64.u16 %r156,%r412; .loc 1 1149 9 mov.u32 %r157,0; bra $L69; $L71: .loc 1 1148 13 cvt.u64.u32 %r156,%r253; .loc 1 1149 9 mov.u32 %r157,%r410; bra $L69; $L31: .loc 1 1163 25 add.u64 %r212,%r262,7; and.b64 %r182,%r212,-8; add.u64 %r262,%r182,8; .loc 1 1163 11 ld.u64 %r156,[%r182]; .loc 1 1166 10 or.b32 %r103,%r103,2; .loc 1 1167 10 mov.u32 %r413,48; st.u32 [%frame+312],%r413; .loc 1 1168 10 mov.u32 %r414,120; st.u32 [%frame+316],%r414; .loc 1 1165 10 cvta.const.u64 %r33,$LC1; .loc 1 1164 9 mov.u32 %r157,2; .loc 1 1169 4 bra $L69; $L41: .loc 1 1174 7 add.u64 %r213,%r262,7; and.b64 %r206,%r213,-8; add.u64 %r262,%r206,8; ld.u64 %r143,[%r206]; .loc 1 1178 9 mov.u32 %r415,0; st.u32 [%frame+320],%r415; .loc 1 1184 7 setp.ne.u64 %r416,%r143,0; @ %r416 bra $L72; .loc 1 1186 39 min.u32 %r159,%r154,6; mov.u32 %r158,%r159; .loc 1 1185 8 cvta.const.u64 %r143,$LC2; bra $L55; $L72: .loc 1 1242 30 and.b32 %r74,%r103,16; .loc 1 1242 19 setp.ne.u32 %r417,%r74,0; @ %r417 bra $L73; .loc 1 1246 8 setp.eq.u32 %r418,%r154,-1; @ %r418 bra $L74; .loc 1 1247 16 cvt.s64.s32 %r163,%r154; mov.u32 %r420,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r420; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r163; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r422,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r423,%r422,0; @ %r423 bra $L75; .loc 1 1248 21 sub.u64 %r163,%r422,%r143; bra $L75; $L74: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r425,[%value_in]; } mov.u64 %r163,%r425; $L75: .loc 1 1251 8 setp.le.u64 %r426,%r163,39; @ %r426 bra $L76; .loc 1 1252 64 add.u64 %r429,%r163,1; .loc 1 1252 39 shl.b64 %r430,%r429,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r430; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r431,[%value_in]; } mov.u64 %r176,%r431; .loc 1 1252 12 setp.ne.u64 %r432,%r431,0; @ %r432 bra $L145; .loc 1 1254 18 ld.u16 %r434,[%r260+16]; or.b16 %r433,%r434,64; st.u16 [%r260+16],%r433; .loc 1 1536 31 mov.u32 %r258,-1; bra $L1; $L76: .loc 1 1260 25 setp.eq.u64 %r718,%r163,0; @ %r718 bra $L146; mov.u64 %r162,0; .loc 1 1259 9 mov.u64 %r176,%frame; bra $L77; $L145: mov.u64 %r162,%r176; setp.eq.u64 %r718,%r163,0; $L77: mov.u64 %r193,%r176; mov.u64 %r196,0; $L79: .loc 1 1261 20 add.u64 %r436,%r143,%r196; ld.s8 %r437,[%r436]; st.u32 [%r193],%r437; .loc 1 1260 25 add.u64 %r196,%r196,1; add.u64 %r193,%r193,4; setp.gt.u64 %r438,%r163,%r196; @ %r438 bra $L79; .loc 1 1260 35 @ %r718 bra $L80; cvt.u32.u64 %r439,%r163; bra $L81; $L80: mov.u32 %r439,1; $L81: mov.u32 %r159,%r439; .loc 1 1260 25 selp.u64 %r443,1,%r163,%r718; .loc 1 1262 7 shl.b64 %r445,%r443,2; add.u64 %r228,%r176,%r445; mov.u32 %r158,%r159; mov.u64 %r143,%r176; bra $L78; $L146: .loc 1 1260 25 mov.u32 %r158,%r74; .loc 1 1260 15 mov.u32 %r159,%r74; .loc 1 1260 25 mov.u64 %r228,%frame; mov.u64 %r162,%r163; .loc 1 1259 9 mov.u64 %r143,%frame; $L78: .loc 1 1262 14 mov.u32 %r446,0; st.u32 [%r228],%r446; .loc 1 656 9 mov.u32 %r154,%r74; .loc 1 1242 42 mov.u32 %r152,%r103; bra $L84; $L73: .loc 1 1265 12 setp.eq.u32 %r447,%r154,-1; @ %r447 bra $L85; .loc 1 1271 18 cvt.s64.s32 %r451,%r154; mov.u32 %r449,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r449; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r451; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r452,[%value_in]; } mov.u64 %r162,%r452; .loc 1 1273 8 setp.eq.u64 %r453,%r162,0; @ %r453 bra $L147; .loc 1 1274 15 sub.u64 %r454,%r162,%r143; shr.s64 %r456,%r454,2; .loc 1 1274 11 cvt.u32.u64 %r457,%r456; min.s32 %r159,%r457,%r154; .loc 1 1424 10 max.s32 %r158,%r159,0; mov.u32 %r152,%r103; mov.u64 %r162,0; .loc 1 656 9 mov.u32 %r154,%r449; bra $L84; $L85: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r459,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r159,%r459; .loc 1 1424 10 max.s32 %r158,%r159,0; mov.u32 %r152,%r103; mov.u64 %r162,0; .loc 1 656 9 mov.u32 %r154,0; bra $L84; $L38: .loc 1 1284 13 and.b32 %r460,%r103,32; setp.eq.u32 %r461,%r460,0; @ %r461 bra $L86; add.u64 %r205,%r262,7; and.b64 %r224,%r205,-8; add.u64 %r262,%r224,8; ld.u64 %r156,[%r224]; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L86: .loc 1 1284 13 and.b32 %r462,%r103,16; setp.eq.u32 %r463,%r462,0; @ %r463 bra $L87; add.u64 %r215,%r262,7; and.b64 %r214,%r215,-8; add.u64 %r262,%r214,8; ld.u64 %r156,[%r214]; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L87: .loc 1 747 10 ld.u32 %r254,[%r262]; add.u64 %r262,%r262,4; .loc 1 1284 13 and.b32 %r464,%r103,64; setp.eq.u32 %r465,%r464,0; @ %r465 bra $L88; cvt.u16.u32 %r466,%r254; cvt.u64.u16 %r156,%r466; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L88: .loc 1 1284 13 cvt.u64.u32 %r156,%r254; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L26: setp.eq.u32 %r467,%r172,0; @ %r467 bra $L89; st.u32 [%frame+320],%r173; $L89: .loc 1 1288 10 cvta.const.u64 %r33,$LC0; $L43: .loc 1 1292 17 and.b32 %r468,%r103,32; setp.eq.u32 %r469,%r468,0; @ %r469 bra $L90; add.u64 %r220,%r262,7; and.b64 %r175,%r220,-8; add.u64 %r262,%r175,8; ld.u64 %r156,[%r175]; bra $L91; $L90: and.b32 %r470,%r103,16; setp.eq.u32 %r471,%r470,0; @ %r471 bra $L92; add.u64 %r222,%r262,7; and.b64 %r221,%r222,-8; add.u64 %r262,%r221,8; ld.u64 %r156,[%r221]; bra $L91; $L92: .loc 1 747 10 ld.u32 %r248,[%r262]; add.u64 %r262,%r262,4; .loc 1 1292 17 and.b32 %r472,%r103,64; setp.eq.u32 %r473,%r472,0; @ %r473 bra $L93; cvt.u16.u32 %r474,%r248; cvt.u64.u16 %r156,%r474; bra $L91; $L93: cvt.u64.u32 %r156,%r248; $L91: .loc 1 1295 14 and.b32 %r475,%r103,1; .loc 1 1295 7 setp.eq.u32 %r476,%r475,0; @ %r476 bra $L148; .loc 1 1295 20 setp.eq.u64 %r477,%r156,0; @ %r477 bra $L149; .loc 1 1296 11 mov.u32 %r478,48; st.u32 [%frame+312],%r478; .loc 1 1297 11 st.u32 [%frame+316],%r151; .loc 1 1298 11 or.b32 %r103,%r103,2; .loc 1 1293 9 mov.u32 %r157,2; bra $L69; $L148: mov.u32 %r157,2; bra $L69; $L149: mov.u32 %r157,2; $L69: .loc 1 1305 1 mov.u32 %r166,0; $L62: .loc 1 930 10 st.u32 [%frame+320],%r166; .loc 1 1311 14 setp.eq.u32 %r479,%r154,-1; @ %r479 bra $L94; .loc 1 1312 11 and.b32 %r152,%r103,-129; .loc 1 1320 15 set.u32.ne.u64 %r481,%r156,0; neg.s32 %r482,%r481; mov.u32 %r480,%r482; .loc 1 1320 28 set.u32.ne.u32 %r484,%r154,0; neg.s32 %r485,%r484; mov.u32 %r483,%r485; .loc 1 1320 20 cvt.u16.u8 %r744,%r480; mov.u16 %r487,%r744; cvt.u16.u8 %r744,%r483; mov.u16 %r488,%r744; or.b16 %r486,%r487,%r488; cvt.u32.u16 %r489,%r486; .loc 1 1320 7 cvt.u16.u8 %r490,%r489; setp.eq.u16 %r491,%r490,0; @ %r491 bra $L95; .loc 1 1312 11 mov.u32 %r103,%r152; $L94: setp.eq.u32 %r492,%r157,1; @ %r492 bra $L96; setp.eq.u32 %r493,%r157,2; @ %r493 bra $L150; mov.u64 %r143,%r717; $L98: mov.u64 %r135,%r143; .loc 1 1329 13 add.u64 %r143,%r143,-4; .loc 1 1329 15 cvt.u32.u64 %r494,%r156; and.b32 %r495,%r494,7; add.u32 %r102,%r495,48; .loc 1 1329 13 st.u32 [%r143],%r102; .loc 1 1330 14 shr.u64 %r156,%r156,3; .loc 1 1331 15 setp.ne.u64 %r496,%r156,0; @ %r496 bra $L98; .loc 1 1333 22 set.u32.ne.u32 %r498,%r102,48; neg.s32 %r499,%r498; mov.u32 %r497,%r499; .loc 1 1333 9 mov.u32 %r500,%r103; cvt.u16.u8 %r744,%r500; mov.u16 %r502,%r744; and.b16 %r501,%r502,1; cvt.u32.u16 %r503,%r501; .loc 1 1333 22 cvt.u16.u8 %r744,%r497; mov.u16 %r505,%r744; cvt.u16.u8 %r744,%r503; mov.u16 %r506,%r744; and.b16 %r504,%r505,%r506; cvt.u32.u16 %r507,%r504; cvt.u16.u8 %r508,%r507; setp.ne.u16 %r509,%r508,0; @ %r509 bra $L99; .loc 1 1395 21 sub.u64 %r511,%r717,%r143; shr.s64 %r513,%r511,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r513; mov.u32 %r152,%r103; bra $L100; $L99: .loc 1 1334 13 add.u64 %r190,%r135,-8; mov.u32 %r514,48; st.u32 [%r143+-4],%r514; .loc 1 1395 21 sub.u64 %r516,%r717,%r190; shr.s64 %r518,%r516,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r518; mov.u32 %r152,%r103; .loc 1 1334 13 mov.u64 %r143,%r190; bra $L100; $L154: .loc 1 1312 11 mov.u32 %r103,%r152; $L96: .loc 1 1339 9 setp.gt.u64 %r519,%r156,9; @ %r519 bra $L151; .loc 1 1340 15 cvt.u32.u64 %r520,%r156; add.u32 %r521,%r520,48; .loc 1 1340 13 st.u32 [%frame+156],%r521; .loc 1 1341 7 mov.u32 %r152,%r103; mov.u32 %r159,1; .loc 1 1340 13 add.u64 %r143,%frame,156; .loc 1 1341 7 bra $L100; $L151: .loc 1 1319 7 mov.u64 %r143,%r717; $L101: .loc 1 1347 14 add.u64 %r143,%r143,-4; .loc 1 1347 16 rem.u64 %r523,%r156,10; cvt.u32.u64 %r524,%r523; add.u32 %r525,%r524,48; .loc 1 1347 14 st.u32 [%r143],%r525; mov.u64 %r131,%r156; .loc 1 1366 15 div.u64 %r156,%r156,10; .loc 1 1367 22 setp.gt.u64 %r528,%r131,9; @ %r528 bra $L101; .loc 1 1395 21 sub.u64 %r530,%r717,%r143; shr.s64 %r532,%r530,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r532; mov.u32 %r152,%r103; bra $L100; $L150: mov.u64 %r143,%r717; $L97: .loc 1 1372 13 add.u64 %r143,%r143,-4; .loc 1 1372 28 and.b64 %r533,%r156,15; .loc 1 1372 20 shl.b64 %r534,%r533,2; add.u64 %r535,%r33,%r534; .loc 1 1372 13 ld.u32 %r536,[%r535]; st.u32 [%r143],%r536; .loc 1 1373 14 shr.u64 %r156,%r156,4; .loc 1 1374 15 setp.ne.u64 %r537,%r156,0; @ %r537 bra $L97; .loc 1 1395 21 sub.u64 %r539,%r717,%r143; shr.s64 %r541,%r539,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r541; mov.u32 %r152,%r103; bra $L100; $L95: .loc 1 1392 32 setp.ne.u32 %r542,%r157,0; @ %r542 bra $L152; .loc 1 1392 55 and.b32 %r159,%r103,1; .loc 1 1392 45 setp.eq.u32 %r543,%r159,0; @ %r543 bra $L153; .loc 1 1393 32 mov.u32 %r544,48; st.u32 [%frame+156],%r544; mov.u32 %r154,%r157; add.u64 %r143,%frame,156; bra $L100; $L152: mov.u32 %r154,0; mov.u32 %r159,%r154; .loc 1 1319 7 mov.u64 %r143,%r717; bra $L100; $L153: mov.u32 %r154,%r157; mov.u64 %r143,%r717; $L100: .loc 1 1424 10 max.s32 %r158,%r154,%r159; mov.u64 %r162,0; bra $L84; $L239: setp.eq.u32 %r545,%r172,0; @ %r545 bra $L102; $L141: st.u32 [%frame+320],%r173; $L102: .loc 1 1399 7 setp.eq.u32 %r546,%r151,0; @ %r546 bra $L11; $L142: .loc 1 1403 8 st.u32 [%frame],%r151; .loc 1 1405 9 mov.u32 %r547,0; st.u32 [%frame+320],%r547; .loc 1 1406 4 mov.u32 %r158,1; .loc 1 1404 9 mov.u32 %r159,%r158; .loc 1 1402 7 mov.u64 %r143,%frame; .loc 1 1406 4 bra $L55; $L147: mov.u32 %r158,%r154; mov.u32 %r159,%r154; mov.u32 %r152,%r103; .loc 1 656 9 mov.u32 %r154,%r449; $L84: .loc 1 1425 6 ld.u32 %r548,[%frame+320]; setp.eq.u32 %r549,%r548,0; @ %r549 bra $L103; .loc 1 1426 10 add.u32 %r158,%r158,1; $L103: .loc 1 1427 13 and.b32 %r117,%r152,2; .loc 1 1427 6 setp.eq.u32 %r716,%r117,0; @ %r716 bra $L104; .loc 1 1428 10 add.u32 %r158,%r158,2; $L104: .loc 1 1431 14 and.b32 %r118,%r152,132; .loc 1 1432 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1431 6 setp.ne.u32 %r551,%r118,0; @ %r551 bra $L105; .loc 1 1432 4 sub.u32 %r198,%r153,%r158; setp.le.s32 %r552,%r198,0; @ %r552 bra $L105; setp.le.s32 %r553,%r198,16; @ ! %r553 bra $L240; cvta.const.u64 %r715,blanks$1; bra $L106; $L240: cvta.const.u64 %r715,blanks$1; $L110: st.u64 [%r160],%r715; mov.u64 %r555,64; st.u64 [%r160+8],%r555; add.u64 %r237,%r237,64; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r556,%r238,7; @ %r556 bra $L107; add.u64 %r160,%r160,16; bra $L108; $L107: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r561,[%value_in]; } setp.ne.u32 %r562,%r561,0; @ %r562 bra $L109; ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; mov.u64 %r160,%r717; $L108: add.u32 %r198,%r198,-16; setp.gt.s32 %r563,%r198,16; @ %r563 bra $L110; $L106: st.u64 [%r160],%r715; cvt.s64.s32 %r565,%r198; shl.b64 %r121,%r565,2; st.u64 [%r160+8],%r121; add.u64 %r237,%r237,%r121; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r566,%r238,7; @ %r566 bra $L111; add.u64 %r160,%r160,16; bra $L105; $L111: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r571,[%value_in]; } setp.ne.u32 %r572,%r571,0; @ %r572 bra $L109; .loc 1 1436 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1432 4 mov.u64 %r160,%r717; $L105: .loc 1 1435 6 ld.u32 %r573,[%frame+320]; setp.eq.u32 %r574,%r573,0; @ %r574 bra $L112; .loc 1 1436 4 add.u32 %r238,%r238,1; st.u64 [%r160],%r738; mov.u64 %r576,4; st.u64 [%r160+8],%r576; add.u64 %r237,%r237,4; st.u64 [%frame+304],%r237; st.u32 [%frame+296],%r238; setp.gt.s32 %r577,%r238,7; @ %r577 bra $L113; add.u64 %r160,%r160,16; bra $L112; $L113: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r582,[%value_in]; } setp.ne.u32 %r583,%r582,0; @ %r583 bra $L109; .loc 1 1438 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1436 4 mov.u64 %r160,%r717; $L112: .loc 1 1437 6 @ %r716 bra $L114; .loc 1 1438 4 add.u32 %r238,%r238,1; st.u64 [%r160],%r737; mov.u64 %r586,8; st.u64 [%r160+8],%r586; add.u64 %r237,%r237,8; st.u64 [%frame+304],%r237; st.u32 [%frame+296],%r238; setp.gt.s32 %r587,%r238,7; @ %r587 bra $L115; add.u64 %r160,%r160,16; bra $L114; $L115: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r592,[%value_in]; } setp.ne.u32 %r593,%r592,0; @ %r593 bra $L109; .loc 1 1442 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1438 4 mov.u64 %r160,%r717; $L114: .loc 1 1441 6 setp.ne.u32 %r594,%r118,128; @ %r594 bra $L116; .loc 1 1442 4 sub.u32 %r201,%r153,%r158; setp.le.s32 %r595,%r201,0; @ %r595 bra $L116; setp.le.s32 %r596,%r201,16; @ ! %r596 bra $L241; cvta.const.u64 %r719,zeroes$0; bra $L117; $L241: cvta.const.u64 %r719,zeroes$0; $L120: st.u64 [%r160],%r719; mov.u64 %r598,64; st.u64 [%r160+8],%r598; add.u64 %r237,%r237,64; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r599,%r238,7; @ %r599 bra $L118; add.u64 %r160,%r160,16; bra $L119; $L118: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r604,[%value_in]; } setp.ne.u32 %r605,%r604,0; @ %r605 bra $L109; ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; mov.u64 %r160,%r717; $L119: add.u32 %r201,%r201,-16; setp.gt.s32 %r606,%r201,16; @ %r606 bra $L120; $L117: st.u64 [%r160],%r719; cvt.s64.s32 %r608,%r201; shl.b64 %r128,%r608,2; st.u64 [%r160+8],%r128; add.u64 %r237,%r237,%r128; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r609,%r238,7; @ %r609 bra $L121; add.u64 %r160,%r160,16; bra $L116; $L121: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r614,[%value_in]; } setp.ne.u32 %r615,%r614,0; @ %r615 bra $L109; .loc 1 1445 3 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1442 4 mov.u64 %r160,%r717; $L116: .loc 1 1445 3 sub.u32 %r125,%r154,%r159; setp.le.s32 %r616,%r125,0; @ %r616 bra $L122; setp.le.s32 %r617,%r125,16; @ ! %r617 bra $L242; cvta.const.u64 %r719,zeroes$0; bra $L123; $L242: cvta.const.u64 %r719,zeroes$0; $L126: st.u64 [%r160],%r719; mov.u64 %r619,64; st.u64 [%r160+8],%r619; add.u64 %r237,%r237,64; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r620,%r238,7; @ %r620 bra $L124; add.u64 %r160,%r160,16; bra $L125; $L124: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r625,[%value_in]; } setp.ne.u32 %r626,%r625,0; @ %r626 bra $L109; ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; mov.u64 %r160,%r717; $L125: add.u32 %r125,%r125,-16; setp.gt.s32 %r627,%r125,16; @ %r627 bra $L126; $L123: st.u64 [%r160],%r719; cvt.s64.s32 %r629,%r125; shl.b64 %r132,%r629,2; st.u64 [%r160+8],%r132; add.u64 %r237,%r237,%r132; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r630,%r238,7; @ %r630 bra $L127; add.u64 %r160,%r160,16; bra $L122; $L127: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r635,[%value_in]; } setp.ne.u32 %r636,%r635,0; @ %r636 bra $L109; .loc 1 1512 3 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1445 3 mov.u64 %r160,%r717; $L122: .loc 1 1512 3 st.u64 [%r160],%r143; cvt.s64.s32 %r637,%r159; shl.b64 %r136,%r637,2; st.u64 [%r160+8],%r136; add.u64 %r239,%r136,%r237; st.u64 [%frame+304],%r239; add.u32 %r137,%r238,1; st.u32 [%frame+296],%r137; setp.gt.s32 %r638,%r137,7; @ %r638 bra $L128; add.u64 %r161,%r160,16; bra $L129; $L128: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r643,[%value_in]; } setp.ne.u32 %r644,%r643,0; @ %r644 bra $L109; .loc 1 1516 4 ld.u64 %r239,[%frame+304]; .loc 1 1512 3 mov.u64 %r161,%r717; $L129: .loc 1 1515 13 and.b32 %r645,%r152,4; .loc 1 1515 6 setp.eq.u32 %r646,%r645,0; @ %r646 bra $L130; .loc 1 1516 4 sub.u32 %r145,%r153,%r158; setp.le.s32 %r647,%r145,0; @ %r647 bra $L130; ld.u32 %r240,[%frame+296]; setp.le.s32 %r648,%r145,16; @ ! %r648 bra $L243; cvta.const.u64 %r715,blanks$1; bra $L131; $L243: cvta.const.u64 %r715,blanks$1; $L134: st.u64 [%r161],%r715; mov.u64 %r650,64; st.u64 [%r161+8],%r650; add.u64 %r239,%r239,64; st.u64 [%frame+304],%r239; add.u32 %r240,%r240,1; st.u32 [%frame+296],%r240; setp.gt.s32 %r651,%r240,7; @ %r651 bra $L132; add.u64 %r161,%r161,16; bra $L133; $L132: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r656,[%value_in]; } setp.ne.u32 %r657,%r656,0; @ %r657 bra $L109; ld.u64 %r239,[%frame+304]; ld.u32 %r240,[%frame+296]; mov.u64 %r161,%r717; $L133: add.u32 %r145,%r145,-16; setp.gt.s32 %r658,%r145,16; @ %r658 bra $L134; $L131: st.u64 [%r161],%r715; cvt.s64.s32 %r660,%r145; shl.b64 %r142,%r660,2; st.u64 [%r161+8],%r142; add.u64 %r239,%r239,%r142; st.u64 [%frame+304],%r239; add.u32 %r144,%r240,1; st.u32 [%frame+296],%r144; setp.le.s32 %r661,%r144,7; @ %r661 bra $L130; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r666,[%value_in]; } setp.ne.u32 %r667,%r666,0; @ %r667 bra $L109; .loc 1 1521 3 ld.u64 %r239,[%frame+304]; $L130: .loc 1 1519 33 max.s32 %r668,%r153,%r158; .loc 1 1519 7 add.u32 %r258,%r258,%r668; .loc 1 1521 3 setp.ne.u64 %r669,%r239,0; @ %r669 bra $L135; $L137: mov.u32 %r670,0; st.u32 [%frame+296],%r670; .loc 1 1523 20 setp.ne.u64 %r671,%r162,0; @ %r671 bra $L136; .loc 1 1521 3 mov.u64 %r160,%r717; bra $L5; $L135: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r676,[%value_in]; } setp.ne.u32 %r677,%r676,0; @ ! %r677 bra $L137; bra $L109; $L136: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r162; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r160,%r717; bra $L5; $L11: .loc 1 1529 2 ld.u64 %r680,[%frame+304]; setp.eq.u64 %r681,%r680,0; @ %r681 bra $L138; add.u64 %r685,%frame,288; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r685; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r686,[%value_in]; } setp.eq.u32 %r687,%r686,0; @ %r687 bra $L138; ld.u16 %r689,[%r260+16]; and.b16 %r688,%r689,64; cvt.s32.s16 %r246,%r688; bra $L10; $L138: ld.u16 %r691,[%r260+16]; and.b16 %r690,%r691,64; cvt.s32.s16 %r246,%r690; bra $L10; $L109: .loc 1 1531 5 setp.ne.u64 %r692,%r162,0; @ %r692 bra $L139; ld.u16 %r694,[%r260+16]; and.b16 %r693,%r694,64; cvt.s32.s16 %r246,%r693; bra $L10; $L139: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r162; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r698,[%r260+16]; and.b16 %r697,%r698,64; cvt.s32.s16 %r246,%r697; $L10: .loc 1 1536 31 setp.eq.u32 %r699,%r246,0; selp.u32 %r258,%r258,-1,%r699; bra $L1; $L55: .loc 1 656 9 mov.u32 %r152,%r103; mov.u64 %r162,0; mov.u32 %r154,0; bra $L103; $L61: .loc 1 1311 14 setp.ne.u32 %r701,%r154,-1; @ %r701 bra $L140; bra $L96; $L25: setp.ne.u32 %r702,%r172,0; @ ! %r702 bra $L142; bra $L141; $L140: .loc 1 1312 11 and.b32 %r152,%r103,-129; .loc 1 1320 28 set.u32.ne.u32 %r704,%r154,0; neg.s32 %r705,%r704; mov.u32 %r703,%r705; .loc 1 1320 15 set.u32.ne.u64 %r707,%r156,0; neg.s32 %r708,%r707; mov.u32 %r706,%r708; .loc 1 1320 20 cvt.u16.u8 %r744,%r703; mov.u16 %r710,%r744; cvt.u16.u8 %r744,%r706; mov.u16 %r711,%r744; or.b16 %r709,%r710,%r711; cvt.u32.u16 %r712,%r709; .loc 1 1320 7 cvt.u16.u8 %r713,%r712; setp.ne.u16 %r714,%r713,0; @ %r714 bra $L154; mov.u32 %r154,0; mov.u32 %r159,%r154; .loc 1 1319 7 mov.u64 %r143,%r717; bra $L100; $L1: .loc 1 1538 1 mov.u32 %value,%r258; st.param.u32 [%value_out],%value; ret; } /1541 0 0 0 644 49877 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: __ssvfiwscanf_r .visible .func (.param .u32 %value_out) __ssvfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __submore .extern .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .extern .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN FUNCTION DEF: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r34; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u32 %r72; mov.u64 %r46,%ar0; mov.u32 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 269 6 setp.ne.u32 %r49,%r47,-1; @ ! %r49 bra $L1; .loc 1 273 14 ld.u16 %r51,[%r48+16]; and.b16 %r50,%r51,-33; st.u16 [%r48+16],%r50; .loc 1 282 13 ld.u32 %r44,[%r48+8]; .loc 1 280 6 ld.u64 %r52,[%r48+88]; setp.eq.u64 %r53,%r52,0; @ %r53 bra $L4; .loc 1 282 10 ld.u32 %r54,[%r48+96]; setp.le.s32 %r55,%r54,%r44; @ %r55 bra $L5; $L7: .loc 1 286 14 ld.u64 %r27,[%r48]; add.u64 %r56,%r27,-4; st.u64 [%r48],%r56; .loc 1 287 15 st.u8 [%r27+-4],%r47; .loc 1 288 14 ld.u32 %r58,[%r48+8]; add.u32 %r57,%r58,4; st.u32 [%r48+8],%r57; .loc 1 289 14 bra $L1; $L5: .loc 1 282 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r48; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r61,[%value_in]; } .loc 1 282 35 setp.ne.u32 %r62,%r61,0; @ ! %r62 bra $L7; bra $L1; $L4: .loc 1 298 14 ld.u64 %r34,[%r48+24]; .loc 1 298 34 ld.u64 %r45,[%r48]; .loc 1 298 6 setp.eq.u64 %r63,%r34,0; @ %r63 bra $L8; .loc 1 298 29 setp.ge.u64 %r64,%r34,%r45; @ %r64 bra $L8; .loc 1 299 7 ld.u32 %r65,[%r45+-4]; setp.ne.u32 %r66,%r47,%r65; @ %r66 bra $L8; .loc 1 301 14 add.u64 %r67,%r45,-4; st.u64 [%r48],%r67; .loc 1 302 14 add.u32 %r68,%r44,4; st.u32 [%r48+8],%r68; .loc 1 303 14 bra $L1; $L8: .loc 1 311 11 st.u32 [%r48+112],%r44; .loc 1 312 11 st.u64 [%r48+104],%r45; .loc 1 313 19 add.u64 %r69,%r48,116; .loc 1 313 17 st.u64 [%r48+88],%r69; .loc 1 314 17 mov.u32 %r70,3; st.u32 [%r48+96],%r70; .loc 1 315 12 add.u64 %r71,%r48,115; .loc 1 315 10 st.u64 [%r48],%r71; .loc 1 316 23 st.u32 [%r48+115],%r47; .loc 1 317 10 mov.u32 %r72,2; st.u32 [%r48+8],%r72; $L1: .loc 1 319 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __ssvfiwscanf_r .visible .func (.param .u32 %value_out) __ssvfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r26; .reg .u32 %r28; .reg .u32 %r35; .reg .u32 %r46; .reg .u32 %r48; .reg .u64 %r50; .reg .u32 %r55; .reg .u64 %r56; .reg .u32 %r71; .reg .u32 %r74; .reg .u32 %r86; .reg .u64 %r95; .reg .u32 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r116; .reg .u64 %r119; .reg .u64 %r121; .reg .u64 %r125; .reg .u32 %r126; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r140; .reg .u32 %r141; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u64 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r156; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u64 %r166; .reg .u32 %r167; .reg .u32 %r173; .reg .u64 %r175; .reg .u32 %r176; .reg .u32 %r182; .reg .u64 %r184; .reg .u32 %r185; .reg .u32 %r191; .reg .u64 %r193; .reg .u32 %r194; .reg .u32 %r200; .reg .u64 %r202; .reg .u32 %r203; .reg .u32 %r209; .reg .u64 %r211; .reg .u32 %r212; .reg .u32 %r218; .reg .u64 %r220; .reg .u32 %r221; .reg .u32 %r227; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r236; .reg .u32 %r237; .reg .u64 %r239; .reg .u32 %r240; .reg .u64 %r246; .reg .u64 %r248; .reg .u32 %r249; .reg .u32 %r255; .reg .u64 %r257; .reg .u32 %r258; .reg .u64 %r264; .reg .u64 %r266; .reg .u32 %r267; .reg .u32 %r272; .reg .u64 %r278; .reg .u64 %r279; .reg .u64 %r281; .reg .u32 %r283; .reg .u32 %r285; .reg .u64 %r286; .reg .u64 %r287; .reg .u32 %r288; .reg .u64 %r290; .reg .u64 %r291; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r298; .reg .u64 %r299; .reg .u64 %r300; .reg .u64 %r301; .reg .u64 %r302; .reg .u64 %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r307; .reg .u64 %r309; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r314; .reg .u64 %r315; .reg .u64 %r316; .reg .u64 %r317; .reg .u64 %r318; .reg .u16 %r319; .reg .u16 %r320; .reg .pred %r321; .reg .u16 %r322; .reg .u32 %r324; .reg .u32 %r325; .reg .pred %r326; .reg .pred %r327; .reg .u32 %r329; .reg .pred %r330; .reg .pred %r331; .reg .u32 %r334; .reg .pred %r335; .reg .u64 %r336; .reg .u32 %r337; .reg .pred %r339; .reg .u32 %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .u32 %r351; .reg .pred %r352; .reg .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r357; .reg .pred %r358; .reg .pred %r359; .reg .pred %r360; .reg .pred %r361; .reg .pred %r362; .reg .pred %r363; .reg .pred %r364; .reg .pred %r365; .reg .pred %r366; .reg .pred %r367; .reg .pred %r368; .reg .u32 %r371; .reg .pred %r372; .reg .u64 %r373; .reg .u32 %r374; .reg .pred %r376; .reg .pred %r377; .reg .u32 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u16 %r387; .reg .u16 %r388; .reg .u16 %r389; .reg .u32 %r390; .reg .u16 %r391; .reg .pred %r392; .reg .u32 %r393; .reg .pred %r394; .reg .pred %r395; .reg .u32 %r396; .reg .pred %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u64 %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .pred %r405; .reg .pred %r406; .reg .u32 %r407; .reg .u32 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u16 %r413; .reg .u16 %r414; .reg .u16 %r415; .reg .u32 %r416; .reg .u16 %r417; .reg .pred %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r421; .reg .u32 %r422; .reg .u32 %r423; .reg .u32 %r424; .reg .u16 %r425; .reg .u16 %r426; .reg .u16 %r427; .reg .u32 %r428; .reg .u16 %r429; .reg .pred %r430; .reg .pred %r431; .reg .pred %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u64 %r435; .reg .u32 %r436; .reg .pred %r437; .reg .u32 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .u32 %r441; .reg .pred %r442; .reg .u64 %r443; .reg .pred %r444; .reg .u32 %r447; .reg .pred %r448; .reg .u64 %r449; .reg .u32 %r450; .reg .pred %r452; .reg .u32 %r454; .reg .pred %r455; .reg .pred %r458; .reg .pred %r459; .reg .u32 %r462; .reg .pred %r463; .reg .pred %r464; .reg .u64 %r465; .reg .u32 %r466; .reg .pred %r469; .reg .u32 %r473; .reg .u64 %r474; .reg .u64 %r476; .reg .u64 %r482; .reg .pred %r483; .reg .pred %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r488; .reg .pred %r489; .reg .u32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r495; .reg .u32 %r496; .reg .pred %r499; .reg .u64 %r501; .reg .u32 %r503; .reg .pred %r504; .reg .pred %r505; .reg .u32 %r508; .reg .pred %r509; .reg .u64 %r510; .reg .u32 %r511; .reg .pred %r513; .reg .pred %r514; .reg .u64 %r519; .reg .pred %r520; .reg .u64 %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .u32 %r531; .reg .pred %r532; .reg .u64 %r533; .reg .u32 %r534; .reg .pred %r536; .reg .pred %r537; .reg .u64 %r542; .reg .pred %r543; .reg .u64 %r547; .reg .pred %r548; .reg .u64 %r549; .reg .u64 %r551; .reg .pred %r552; .reg .u32 %r553; .reg .u32 %r556; .reg .u64 %r557; .reg .u64 %r559; .reg .u64 %r565; .reg .pred %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .pred %r571; .reg .u32 %r574; .reg .pred %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .pred %r579; .reg .pred %r580; .reg .u64 %r585; .reg .pred %r586; .reg .u64 %r590; .reg .pred %r591; .reg .u32 %r593; .reg .pred %r594; .reg .u32 %r595; .reg .pred %r596; .reg .u32 %r599; .reg .pred %r600; .reg .u32 %r603; .reg .pred %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .pred %r608; .reg .pred %r609; .reg .u32 %r611; .reg .pred %r612; .reg .u32 %r613; .reg .pred %r614; .reg .u32 %r617; .reg .pred %r618; .reg .u32 %r621; .reg .pred %r622; .reg .u64 %r623; .reg .u32 %r624; .reg .pred %r626; .reg .pred %r627; .reg .u32 %r629; .reg .pred %r630; .reg .u32 %r631; .reg .u32 %r634; .reg .u64 %r635; .reg .u64 %r637; .reg .u64 %r642; .reg .pred %r643; .reg .pred %r644; .reg .u32 %r645; .reg .pred %r646; .reg .pred %r648; .reg .u32 %r651; .reg .pred %r652; .reg .u64 %r653; .reg .u32 %r654; .reg .pred %r656; .reg .pred %r657; .reg .u32 %r659; .reg .pred %r660; .reg .u32 %r662; .reg .u64 %r663; .reg .pred %r664; .reg .u64 %r665; .reg .pred %r666; .reg .u32 %r669; .reg .pred %r670; .reg .u64 %r671; .reg .pred %r673; .reg .pred %r674; .reg .pred %r675; .reg .pred %r676; .reg .u32 %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u64 %r680; .reg .u64 %r681; .reg .u64 %r682; .reg .u64 %r683; .reg .pred %r684; .reg .pred %r685; .reg .pred %r686; .reg .pred %r687; .reg .pred %r688; .reg .pred %r689; .reg .pred %r690; .reg .u32 %r691; .reg .pred %r692; .reg .u64 %r693; .reg .u64 %r694; .reg .u64 %r695; .reg .u64 %r696; .reg .pred %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u32 %r703; .reg .pred %r704; .reg .u64 %r705; .reg .pred %r706; .reg .pred %r707; .reg .pred %r711; .reg .u32 %r712; .reg .pred %r713; .reg .pred %r714; .reg .u32 %r718; .reg .u32 %r719; .reg .pred %r720; .reg .u32 %r724; .reg .pred %r725; .reg .u64 %r729; .reg .u64 %r731; .reg .u64 %r732; .reg .u32 %r733; .reg .pred %r734; .reg .u32 %r735; .reg .pred %r736; .reg .u64 %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u64 %r740; .reg .u32 %r741; .reg .pred %r742; .reg .u64 %r743; .reg .pred %r744; .reg .u64 %r749; .reg .u64 %r754; .reg .u64 %r755; .reg .u64 %r756; .reg .u64 %r757; .reg .u64 %r759; .reg .u32 %r760; .reg .pred %r761; .reg .u16 %r762; .reg .u16 %r763; .reg .pred %r764; .reg .pred %r790; .reg .u32 %r791; .reg .pred %r792; .reg .pred %r793; .reg .pred %r795; .reg .pred %r796; .reg .pred %r797; .reg .pred %r798; .reg .u64 %r799; .reg .u16 %r800; mov.u64 %r315,%ar0; mov.u64 %r316,%ar1; mov.u64 %r317,%ar2; mov.u64 %r318,%ar3; .loc 1 553 3 ld.u16 %r320,[%r316+16]; and.b16 %r319,%r320,8192; setp.ne.u16 %r321,%r319,0; @ %r321 bra $L13; or.b16 %r322,%r320,8192; st.u16 [%r316+16],%r322; ld.u32 %r325,[%r316+172]; or.b32 %r324,%r325,8192; st.u32 [%r316+172],%r324; $L13: .loc 1 560 15 add.u64 %r121,%r317,4; .loc 1 560 9 ld.u32 %r103,[%r317]; .loc 1 561 10 setp.eq.u32 %r326,%r103,0; @ %r326 bra $L163; mov.u64 %r50,0; mov.u32 %r310,0; mov.u32 %r48,%r310; mov.u32 %r314,%r310; mov.u64 %r106,%r50; .loc 1 1115 8 add.u64 %r799,%frame,160; bra $L15; $L164: mov.u64 %r110,%r121; bra $L18; $L165: mov.u64 %r110,%r121; bra $L18; $L172: .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L173: mov.u64 %r110,%r121; bra $L18; $L175: mov.u64 %r110,%r121; bra $L18; $L178: mov.u32 %r48,%r272; mov.u64 %r110,%r121; bra $L18; $L179: mov.u32 %r48,%r272; mov.u64 %r110,%r121; bra $L18; $L181: mov.u64 %r110,%r121; $L18: .loc 1 560 15 add.u64 %r121,%r110,4; .loc 1 560 9 ld.u32 %r103,[%r110]; .loc 1 561 10 setp.eq.u32 %r327,%r103,0; @ %r327 bra $L12; $L15: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r103; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r329,[%value_in]; } mov.u32 %r28,%r329; .loc 1 563 10 setp.eq.u32 %r330,%r28,0; @ %r330 bra $L16; $L19: .loc 1 329 9 ld.u32 %r164,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r331,%r164,0; @ %r331 bra $L17; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r334,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r335,%r334,0; @ %r335 bra $L164; .loc 1 333 10 ld.u32 %r164,[%r316+8]; $L17: .loc 1 331 23 ld.u64 %r166,[%r316]; .loc 1 331 6 ld.u32 %r167,[%r166]; .loc 1 332 10 add.u64 %r336,%r166,4; st.u64 [%r316],%r336; .loc 1 333 10 add.u32 %r337,%r164,-4; st.u32 [%r316+8],%r337; .loc 1 565 14 mov.u32 %r163,%r167; .loc 1 565 46 setp.eq.u32 %r339,%r163,-1; @ %r339 bra $L165; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r163; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r341,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r342,%r341,0; @ %r342 bra $L19; bra $L298; $L16: .loc 1 571 10 setp.ne.u32 %r343,%r103,37; @ %r343 bra $L21; .loc 1 586 11 ld.u32 %r285,[%r121]; .loc 1 574 13 mov.u32 %r108,%r28; .loc 1 586 11 mov.u64 %r26,%r121; .loc 1 573 13 mov.u64 %r104,0; bra $L22; $L300: .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 606 10 mov.u32 %r108,16; .loc 1 612 8 mov.u64 %r104,0; $L22: .loc 1 586 15 add.u64 %r121,%r26,4; .loc 1 588 7 setp.eq.u32 %r344,%r285,104; @ %r344 bra $L23; setp.gt.s32 %r345,%r285,104; @ %r345 bra $L24; setp.eq.u32 %r346,%r285,76; @ %r346 bra $L25; setp.gt.s32 %r347,%r285,76; @ %r347 bra $L26; setp.eq.u32 %r348,%r285,42; @ %r348 bra $L27; setp.gt.s32 %r349,%r285,42; @ %r349 bra $L28; setp.eq.u32 %r350,%r285,37; @ %r350 bra $L21; bra $L12; $L28: add.u32 %r351,%r285,-48; setp.gt.u32 %r352,%r351,9; @ ! %r352 bra $L299; bra $L12; $L26: setp.eq.u32 %r353,%r285,99; @ %r353 bra $L30; setp.gt.s32 %r354,%r285,99; @ %r354 bra $L31; setp.eq.u32 %r355,%r285,88; @ %r355 bra $L32; setp.eq.u32 %r356,%r285,91; @ %r356 bra $L33; bra $L12; $L31: setp.eq.u32 %r357,%r285,100; @ %r357 bra $L166; bra $L12; $L24: setp.eq.u32 %r358,%r285,111; @ %r358 bra $L167; setp.gt.s32 %r359,%r285,111; @ %r359 bra $L36; setp.eq.u32 %r360,%r285,108; @ %r360 bra $L37; setp.eq.u32 %r361,%r285,110; @ %r361 bra $L38; setp.eq.u32 %r362,%r285,105; @ %r362 bra $L168; bra $L12; $L36: setp.eq.u32 %r363,%r285,115; @ %r363 bra $L169; setp.gt.s32 %r364,%r285,115; @ %r364 bra $L39; setp.eq.u32 %r365,%r285,112; @ %r365 bra $L40; bra $L12; $L39: setp.eq.u32 %r366,%r285,117; @ %r366 bra $L170; setp.eq.u32 %r367,%r285,120; @ %r367 bra $L32; bra $L12; $L21: .loc 1 329 9 ld.u32 %r173,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r368,%r173,0; @ %r368 bra $L41; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r371,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r372,%r371,0; @ %r372 bra $L44; .loc 1 333 10 ld.u32 %r173,[%r316+8]; $L41: .loc 1 331 23 ld.u64 %r175,[%r316]; .loc 1 331 6 ld.u32 %r176,[%r175]; .loc 1 332 10 add.u64 %r373,%r175,4; st.u64 [%r316],%r373; .loc 1 333 10 add.u32 %r374,%r173,-4; st.u32 [%r316+8],%r374; .loc 1 592 12 mov.u32 %r162,%r176; .loc 1 592 7 setp.eq.u32 %r376,%r162,-1; @ %r376 bra $L44; .loc 1 594 7 setp.eq.u32 %r377,%r103,%r162; @ %r377 bra $L43; .loc 1 596 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r162; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 597 8 bra $L44; $L43: .loc 1 599 9 add.u32 %r48,%r48,1; .loc 1 600 4 mov.u64 %r110,%r121; bra $L18; $L27: .loc 1 604 8 set.u32.ne.u64 %r382,%r104,0; neg.s32 %r383,%r382; mov.u32 %r381,%r383; .loc 1 603 7 set.u32.ne.u32 %r385,%r108,0; neg.s32 %r386,%r385; mov.u32 %r384,%r386; .loc 1 604 8 cvt.u16.u8 %r800,%r381; mov.u16 %r388,%r800; cvt.u16.u8 %r800,%r384; mov.u16 %r389,%r800; or.b16 %r387,%r388,%r389; cvt.u32.u16 %r390,%r387; cvt.u16.u8 %r391,%r390; setp.ne.u16 %r392,%r391,0; @ ! %r392 bra $L300; bra $L12; $L37: .loc 1 609 14 and.b32 %r393,%r108,15; .loc 1 609 7 setp.ne.u32 %r394,%r393,0; @ %r394 bra $L12; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 612 7 setp.ne.u32 %r395,%r285,108; @ %r395 bra $L46; .loc 1 615 14 or.b32 %r108,%r108,2; .loc 1 789 8 ld.u32 %r285,[%r26+8]; .loc 1 614 8 add.u64 %r26,%r26,8; bra $L22; $L46: .loc 1 619 12 or.b32 %r108,%r108,1; .loc 1 586 15 mov.u64 %r26,%r121; bra $L22; $L25: .loc 1 622 14 and.b32 %r396,%r108,15; .loc 1 622 7 setp.ne.u32 %r397,%r396,0; @ %r397 bra $L12; .loc 1 624 10 or.b32 %r108,%r108,2; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 625 4 bra $L22; $L23: .loc 1 637 12 or.b32 %r108,%r108,4; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 638 4 bra $L22; $L299: .loc 1 703 14 and.b32 %r398,%r108,143; .loc 1 703 7 setp.ne.u32 %r399,%r398,0; @ %r399 bra $L12; .loc 1 705 18 shl.b64 %r401,%r104,2; add.u64 %r402,%r401,%r104; add.u64 %r403,%r402,%r402; add.u64 %r116,%r403,-48; .loc 1 705 23 cvt.u64.u32 %r404,%r285; .loc 1 705 10 add.u64 %r104,%r404,%r116; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 706 4 bra $L22; $L32: .loc 1 749 10 or.b32 %r108,%r108,512; .loc 1 751 9 mov.u64 %r50,_wcstoul_r; .loc 1 752 9 mov.u32 %r28,16; .loc 1 753 4 bra $L35; $L33: .loc 1 781 8 ld.u32 %r35,[%r26+4]; .loc 1 781 7 setp.ne.u32 %r405,%r35,94; @ %r405 bra $L48; .loc 1 784 8 add.u64 %r121,%r26,8; .loc 1 789 8 ld.u32 %r35,[%r26+8]; .loc 1 783 17 mov.u32 %r28,1; $L48: .loc 1 789 7 setp.ne.u32 %r406,%r35,93; @ %r406 bra $L171; .loc 1 790 9 add.u64 %r125,%r121,4; .loc 1 791 11 ld.u32 %r35,[%r121+4]; bra $L49; $L171: mov.u64 %r125,%r121; $L49: .loc 1 791 24 set.u32.ne.u32 %r408,%r35,93; neg.s32 %r409,%r408; mov.u32 %r407,%r409; set.u32.ne.u32 %r411,%r35,0; neg.s32 %r412,%r411; mov.u32 %r410,%r412; cvt.u16.u8 %r800,%r407; mov.u16 %r414,%r800; cvt.u16.u8 %r800,%r410; mov.u16 %r415,%r800; and.b16 %r413,%r414,%r415; cvt.u32.u16 %r416,%r413; cvt.u16.u8 %r417,%r416; setp.eq.u16 %r418,%r417,0; @ %r418 bra $L50; $L51: .loc 1 792 9 add.u64 %r125,%r125,4; .loc 1 791 11 ld.u32 %r126,[%r125]; .loc 1 791 24 set.u32.ne.u32 %r420,%r126,0; neg.s32 %r421,%r420; mov.u32 %r419,%r421; set.u32.ne.u32 %r423,%r126,93; neg.s32 %r424,%r423; mov.u32 %r422,%r424; cvt.u16.u8 %r800,%r419; mov.u16 %r426,%r800; cvt.u16.u8 %r800,%r422; mov.u16 %r427,%r800; and.b16 %r425,%r426,%r427; cvt.u32.u16 %r428,%r425; cvt.u16.u8 %r429,%r428; setp.ne.u16 %r430,%r429,0; @ %r430 bra $L51; $L50: .loc 1 794 7 add.u64 %r110,%r125,4; .loc 1 965 7 setp.eq.u64 %r431,%r104,0; .loc 1 966 12 selp.u64 %r104,-1,%r104,%r431; .loc 1 991 27 sub.u64 %r501,%r125,%r121; shr.s64 %r281,%r501,2; .loc 1 968 27 and.b32 %r503,%r108,17; .loc 1 968 7 setp.eq.u32 %r504,%r503,17; @ ! %r504 bra $L301; bra $L176; $L30: max.u64 %r105,%r104,1; and.b32 %r156,%r108,1; and.b32 %r311,%r108,16; .loc 1 879 14 setp.ne.u32 %r432,%r156,0; @ %r432 bra $L54; bra $L302; $L40: .loc 1 811 10 or.b32 %r108,%r108,544; .loc 1 813 9 mov.u64 %r50,_wcstoul_r; .loc 1 814 9 mov.u32 %r28,16; .loc 1 815 4 bra $L35; $L38: .loc 1 818 14 and.b32 %r433,%r108,16; .loc 1 818 7 setp.ne.u32 %r434,%r433,0; @ %r434 bra $L172; .loc 1 830 11 add.u64 %r435,%r318,7; and.b64 %r279,%r435,-8; ld.u64 %r296,[%r279]; add.u64 %r318,%r279,8; .loc 1 828 14 and.b32 %r436,%r108,4; .loc 1 828 7 setp.eq.u32 %r437,%r436,0; @ %r437 bra $L56; .loc 1 831 12 st.u16 [%r296],%r48; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L56: .loc 1 833 19 and.b32 %r438,%r108,1; .loc 1 833 12 setp.eq.u32 %r439,%r438,0; @ %r439 bra $L57; .loc 1 836 12 cvt.s64.s32 %r440,%r48; st.u64 [%r296],%r440; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L57: .loc 1 839 19 and.b32 %r441,%r108,2; .loc 1 839 12 setp.eq.u32 %r442,%r441,0; @ %r442 bra $L58; .loc 1 842 13 cvt.s64.s32 %r443,%r48; st.u64 [%r296],%r443; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L58: .loc 1 848 12 st.u32 [%r296],%r48; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L166: .loc 1 725 9 mov.u64 %r50,_wcstol_r; .loc 1 726 9 mov.u32 %r310,10; .loc 1 724 6 mov.u32 %r236,3; bra $L59; $L169: .loc 1 588 7 mov.u32 %r236,2; bra $L59; $L61: .loc 1 863 11 add.u32 %r48,%r48,1; $L59: .loc 1 329 9 ld.u32 %r182,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r444,%r182,0; @ %r444 bra $L60; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r447,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r448,%r447,0; @ %r448 bra $L44; .loc 1 333 10 ld.u32 %r182,[%r316+8]; $L60: .loc 1 331 23 ld.u64 %r184,[%r316]; .loc 1 331 6 ld.u32 %r185,[%r184]; .loc 1 332 10 add.u64 %r449,%r184,4; st.u64 [%r316],%r449; .loc 1 333 10 add.u32 %r450,%r182,-4; st.u32 [%r316+8],%r450; .loc 1 862 15 mov.u32 %r130,%r185; .loc 1 862 47 setp.eq.u32 %r452,%r130,-1; @ %r452 bra $L44; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r130; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r454,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r455,%r454,0; @ %r455 bra $L61; bra $L303; $L54: .loc 1 887 11 setp.ne.u32 %r795,%r311,0; @ %r795 bra $L63; .loc 1 894 5 add.u64 %r301,%r318,7; and.b64 %r300,%r301,-8; add.u64 %r318,%r300,8; ld.u64 %r106,[%r300]; $L63: .loc 1 904 11 mov.u64 %r290,0; bra $L64; $L69: .loc 1 898 8 @ %r795 bra $L65; .loc 1 904 14 st.u32 [%r106],%r194; .loc 1 904 11 add.u64 %r106,%r106,4; $L65: add.u32 %r283,%r288,1; .loc 1 896 28 add.u64 %r290,%r290,1; setp.eq.u64 %r458,%r105,%r290; @ %r458 bra $L66; $L64: cvt.u32.u64 %r288,%r290; mov.u32 %r283,%r288; .loc 1 329 9 ld.u32 %r191,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r459,%r191,0; @ %r459 bra $L67; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r462,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r463,%r462,0; @ %r463 bra $L68; $L70: .loc 1 908 11 setp.eq.u32 %r464,%r288,0; @ ! %r464 bra $L66; bra $L44; $L68: .loc 1 333 10 ld.u32 %r191,[%r316+8]; $L67: .loc 1 331 23 ld.u64 %r193,[%r316]; .loc 1 331 6 ld.u32 %r194,[%r193]; .loc 1 332 10 add.u64 %r465,%r193,4; st.u64 [%r316],%r465; .loc 1 333 10 add.u32 %r466,%r191,-4; st.u32 [%r316+8],%r466; .loc 1 896 28 setp.ne.u32 %r469,%r194,-1; @ %r469 bra $L69; bra $L70; $L66: .loc 1 910 14 add.u32 %r48,%r48,%r283; .loc 1 914 11 @ %r795 bra $L173; .loc 1 915 12 add.u32 %r314,%r314,1; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L302: .loc 1 925 11 setp.ne.u32 %r795,%r311,0; @ %r795 bra $L174; .loc 1 932 7 add.u64 %r305,%r318,7; and.b64 %r304,%r305,-8; add.u64 %r318,%r304,8; ld.u64 %r111,[%r304]; bra $L71; $L174: .loc 1 926 7 add.u64 %r111,%frame,168; $L71: .loc 1 934 8 mov.u64 %r474,8; mov.u32 %r473,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r799; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r473; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r474; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r476,[%value_in]; } bra $L72; $L79: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r111; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r203; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r799; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r482,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r483,%r482,-1; @ %r483 bra $L44; .loc 1 941 8 setp.ne.u64 %r484,%r482,0; @ %r484 bra $L73; .loc 1 941 20 ld.u32 %r485,[%frame+160]; setp.eq.u32 %r486,%r485,-4; @ %r486 bra $L74; $L73: .loc 1 942 12 add.u64 %r105,%r105,-1; $L74: .loc 1 943 8 @ %r795 bra $L75; .loc 1 948 13 add.u64 %r111,%r111,%r482; $L75: .loc 1 950 6 add.u32 %r156,%r156,1; .loc 1 935 26 setp.eq.u64 %r488,%r105,0; @ %r488 bra $L76; $L72: .loc 1 329 9 ld.u32 %r200,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r489,%r200,0; @ %r489 bra $L77; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r492,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r493,%r492,0; @ %r493 bra $L78; $L80: .loc 1 952 11 setp.eq.u32 %r494,%r156,0; @ ! %r494 bra $L76; bra $L44; $L78: .loc 1 333 10 ld.u32 %r200,[%r316+8]; $L77: .loc 1 331 23 ld.u64 %r202,[%r316]; .loc 1 331 6 ld.u32 %r203,[%r202]; .loc 1 332 10 add.u64 %r495,%r202,4; st.u64 [%r316],%r495; .loc 1 333 10 add.u32 %r496,%r200,-4; st.u32 [%r316+8],%r496; .loc 1 935 26 setp.ne.u32 %r499,%r203,-1; @ %r499 bra $L79; bra $L80; $L76: .loc 1 954 14 add.u32 %r48,%r48,%r156; .loc 1 958 11 @ %r795 bra $L175; .loc 1 959 12 add.u32 %r314,%r314,1; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L87: add.u64 %r287,%r287,1; bra $L81; $L176: mov.u64 %r287,0; .loc 1 972 24 setp.eq.u32 %r796,%r28,0; $L81: cvt.u32.u64 %r107,%r287; .loc 1 329 9 ld.u32 %r209,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r505,%r209,0; @ %r505 bra $L83; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r508,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r509,%r508,0; @ %r509 bra $L156; .loc 1 333 10 ld.u32 %r209,[%r316+8]; $L83: .loc 1 331 23 ld.u64 %r211,[%r316]; .loc 1 331 6 ld.u32 %r212,[%r211]; .loc 1 332 10 add.u64 %r510,%r211,4; st.u64 [%r316],%r510; .loc 1 333 10 add.u32 %r511,%r209,-4; st.u32 [%r316+8],%r511; .loc 1 971 19 mov.u32 %r151,%r212; .loc 1 972 24 setp.eq.u32 %r513,%r151,-1; @ %r513 bra $L156; .loc 1 972 8 setp.eq.u64 %r514,%r104,%r287; @ %r514 bra $L85; .loc 1 972 24 @ %r796 bra $L86; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r212; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r519,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r520,%r519,0; @ %r520 bra $L87; bra $L85; $L86: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r212; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r524,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r525,%r524,0; @ %r525 bra $L87; bra $L85; $L156: .loc 1 976 11 setp.eq.u32 %r526,%r107,0; @ ! %r526 bra $L88; bra $L12; $L301: and.b32 %r107,%r108,1; .loc 1 979 12 setp.eq.u32 %r527,%r107,0; @ %r527 bra $L89; .loc 1 989 10 add.u64 %r56,%r318,7; and.b64 %r119,%r56,-8; add.u64 %r318,%r119,8; ld.u64 %r148,[%r119]; mov.u64 %r286,%r148; .loc 1 991 24 setp.eq.u32 %r797,%r28,0; .loc 1 990 14 bra $L90; $L95: .loc 1 993 10 st.u32 [%r286],%r221; add.u64 %r104,%r104,-1; add.u64 %r286,%r286,4; $L90: mov.u64 %r106,%r286; .loc 1 329 9 ld.u32 %r218,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r528,%r218,0; @ %r528 bra $L91; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r531,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r532,%r531,0; @ %r532 bra $L157; .loc 1 333 10 ld.u32 %r218,[%r316+8]; $L91: .loc 1 331 23 ld.u64 %r220,[%r316]; .loc 1 331 6 ld.u32 %r221,[%r220]; .loc 1 332 10 add.u64 %r533,%r220,4; st.u64 [%r316],%r533; .loc 1 333 10 add.u32 %r534,%r218,-4; st.u32 [%r316+8],%r534; .loc 1 990 19 mov.u32 %r149,%r221; .loc 1 991 24 setp.eq.u32 %r536,%r149,-1; @ %r536 bra $L157; .loc 1 991 8 setp.eq.u64 %r537,%r104,0; @ %r537 bra $L93; .loc 1 991 24 @ %r797 bra $L94; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r221; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r542,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r543,%r542,0; @ %r543 bra $L95; bra $L93; $L94: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r221; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r547,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r548,%r547,0; @ %r548 bra $L95; bra $L93; $L157: .loc 1 1000 14 sub.u64 %r549,%r286,%r148; shr.s64 %r551,%r549,2; .loc 1 1000 10 cvt.u32.u64 %r107,%r551; .loc 1 1001 11 setp.eq.u32 %r552,%r107,0; @ %r552 bra $L12; .loc 1 1003 11 mov.u32 %r553,0; st.u32 [%r286],%r553; .loc 1 1007 17 add.u32 %r314,%r314,1; bra $L88; $L89: and.b32 %r74,%r108,16; .loc 1 1017 11 setp.ne.u32 %r793,%r74,0; @ %r793 bra $L177; .loc 1 1024 7 add.u64 %r307,%r318,7; and.b64 %r309,%r307,-8; add.u64 %r318,%r309,8; ld.u64 %r112,[%r309]; bra $L96; $L177: .loc 1 1018 7 add.u64 %r112,%frame,168; $L96: .loc 1 1026 8 mov.u64 %r557,8; mov.u32 %r556,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r799; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r556; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r557; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r559,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r798,%r28,0; .loc 1 1027 14 bra $L97; $L105: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r112; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r230; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r799; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r565,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r566,%r565,-1; @ %r566 bra $L44; .loc 1 1034 8 setp.ne.u64 %r567,%r565,0; @ %r567 bra $L98; .loc 1 1034 20 ld.u32 %r568,[%frame+160]; setp.eq.u32 %r569,%r568,-4; @ %r569 bra $L99; $L98: .loc 1 1035 12 add.u64 %r104,%r104,-1; $L99: .loc 1 1036 8 @ %r793 bra $L100; .loc 1 1038 13 add.u64 %r112,%r112,%r565; $L100: .loc 1 1043 6 add.u32 %r107,%r107,1; $L97: .loc 1 329 9 ld.u32 %r227,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r571,%r227,0; @ %r571 bra $L101; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r574,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r575,%r574,0; @ %r575 bra $L158; .loc 1 333 10 ld.u32 %r227,[%r316+8]; $L101: .loc 1 331 23 ld.u64 %r229,[%r316]; .loc 1 331 6 ld.u32 %r230,[%r229]; .loc 1 332 10 add.u64 %r576,%r229,4; st.u64 [%r316],%r576; .loc 1 333 10 add.u32 %r577,%r227,-4; st.u32 [%r316+8],%r577; .loc 1 1027 19 mov.u32 %r146,%r230; .loc 1 1028 22 setp.eq.u32 %r579,%r146,-1; @ %r579 bra $L158; .loc 1 1028 8 setp.eq.u64 %r580,%r104,0; @ %r580 bra $L103; .loc 1 1028 22 @ %r798 bra $L104; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r585,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r586,%r585,0; @ %r586 bra $L105; bra $L103; $L104: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r590,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r591,%r590,0; @ %r591 bra $L105; bra $L103; $L158: .loc 1 1047 11 @ %r793 bra $L88; .loc 1 1049 10 mov.u32 %r593,0; st.u8 [%r112],%r593; .loc 1 1053 14 add.u32 %r314,%r314,1; $L88: .loc 1 1056 10 add.u32 %r48,%r48,%r107; .loc 1 1057 4 bra $L18; $L161: .loc 1 1061 7 setp.ne.u64 %r594,%r104,0; .loc 1 1062 19 selp.u64 %r104,%r104,-1,%r594; .loc 1 1063 27 and.b32 %r595,%r108,17; .loc 1 1063 7 setp.ne.u32 %r596,%r595,17; @ %r596 bra $L107; mov.u64 %r278,%r104; cvt.u32.u64 %r791,%r278; $L110: cvt.u32.u64 %r599,%r278; vsub.u32.u32.u32.add %r272,%r48,%r599,%r791; .loc 1 329 9 ld.u32 %r237,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r600,%r237,0; @ %r600 bra $L108; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r603,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r604,%r603,0; @ %r604 bra $L178; .loc 1 333 10 ld.u32 %r237,[%r316+8]; $L108: .loc 1 331 23 ld.u64 %r239,[%r316]; .loc 1 331 6 ld.u32 %r240,[%r239]; .loc 1 332 10 add.u64 %r605,%r239,4; st.u64 [%r316],%r605; .loc 1 333 10 add.u32 %r606,%r237,-4; st.u32 [%r316+8],%r606; .loc 1 1065 19 mov.u32 %r145,%r240; .loc 1 1066 24 setp.eq.u32 %r608,%r145,-1; @ %r608 bra $L179; .loc 1 1066 8 setp.eq.u64 %r609,%r278,0; @ %r609 bra $L109; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r145; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r611,[%value_in]; } .loc 1 1066 24 add.u64 %r278,%r278,-1; setp.eq.u32 %r612,%r611,0; @ %r612 bra $L110; bra $L109; $L107: .loc 1 1071 19 and.b32 %r613,%r108,1; .loc 1 1071 12 setp.eq.u32 %r614,%r613,0; @ %r614 bra $L111; .loc 1 1081 10 add.u64 %r299,%r318,7; and.b64 %r298,%r299,-8; add.u64 %r318,%r298,8; ld.u64 %r246,[%r298]; .loc 1 1082 14 mov.u64 %r264,%r104; cvt.u32.u64 %r791,%r264; bra $L112; $L116: .loc 1 1085 10 st.u32 [%r246],%r249; add.u64 %r246,%r246,4; $L112: cvt.u32.u64 %r617,%r264; vsub.u32.u32.u32.add %r150,%r48,%r617,%r791; mov.u64 %r106,%r246; .loc 1 329 9 ld.u32 %r55,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r618,%r55,0; @ %r618 bra $L113; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r621,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r622,%r621,0; @ %r622 bra $L159; .loc 1 333 10 ld.u32 %r55,[%r316+8]; $L113: .loc 1 331 23 ld.u64 %r248,[%r316]; .loc 1 331 6 ld.u32 %r249,[%r248]; .loc 1 332 10 add.u64 %r623,%r248,4; st.u64 [%r316],%r623; .loc 1 333 10 add.u32 %r624,%r55,-4; st.u32 [%r316+8],%r624; .loc 1 1082 19 mov.u32 %r144,%r249; .loc 1 1083 24 setp.eq.u32 %r626,%r144,-1; @ %r626 bra $L159; .loc 1 1083 8 setp.eq.u64 %r627,%r264,0; @ %r627 bra $L115; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r144; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r629,[%value_in]; } .loc 1 1083 24 add.u64 %r264,%r264,-1; setp.eq.u32 %r630,%r629,0; @ %r630 bra $L116; bra $L115; $L159: .loc 1 1093 11 mov.u32 %r631,0; st.u32 [%r246],%r631; .loc 1 1097 17 add.u32 %r314,%r314,1; mov.u32 %r48,%r150; mov.u64 %r110,%r121; bra $L18; $L111: .loc 1 1107 18 and.b32 %r71,%r108,16; .loc 1 1107 11 setp.ne.u32 %r792,%r71,0; @ %r792 bra $L180; .loc 1 1114 7 add.u64 %r303,%r318,7; and.b64 %r302,%r303,-8; add.u64 %r318,%r302,8; ld.u64 %r113,[%r302]; bra $L117; $L180: .loc 1 1108 7 add.u64 %r113,%frame,168; $L117: .loc 1 1115 8 mov.u64 %r635,8; mov.u32 %r634,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r799; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r634; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r635; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r637,[%value_in]; } .loc 1 1116 14 bra $L118; $L125: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r258; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r799; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r642,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r643,%r642,-1; @ %r643 bra $L44; .loc 1 1123 8 setp.ne.u64 %r644,%r642,0; @ %r644 bra $L119; .loc 1 1123 20 ld.u32 %r645,[%frame+160]; setp.eq.u32 %r646,%r645,-4; @ %r646 bra $L120; $L119: .loc 1 1124 12 add.u64 %r104,%r104,-1; $L120: .loc 1 1125 8 @ %r792 bra $L121; .loc 1 1127 13 add.u64 %r113,%r113,%r642; $L121: .loc 1 1132 10 add.u32 %r48,%r48,1; $L118: .loc 1 329 9 ld.u32 %r255,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r648,%r255,0; @ %r648 bra $L122; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r651,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r652,%r651,0; @ %r652 bra $L160; .loc 1 333 10 ld.u32 %r255,[%r316+8]; $L122: .loc 1 331 23 ld.u64 %r257,[%r316]; .loc 1 331 6 ld.u32 %r258,[%r257]; .loc 1 332 10 add.u64 %r653,%r257,4; st.u64 [%r316],%r653; .loc 1 333 10 add.u32 %r654,%r255,-4; st.u32 [%r316+8],%r654; .loc 1 1116 19 mov.u32 %r141,%r258; .loc 1 1117 22 setp.eq.u32 %r656,%r141,-1; @ %r656 bra $L160; .loc 1 1117 8 setp.eq.u64 %r657,%r104,0; @ %r657 bra $L124; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r141; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r659,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r660,%r659,0; @ %r660 bra $L125; bra $L124; $L160: .loc 1 1136 11 @ %r792 bra $L181; .loc 1 1138 10 mov.u32 %r662,0; st.u8 [%r113],%r662; .loc 1 1142 14 add.u32 %r314,%r314,1; mov.u64 %r110,%r121; bra $L18; $L305: .loc 1 1150 19 add.u64 %r663,%r104,-1; .loc 1 1150 7 setp.le.u64 %r664,%r663,38; .loc 1 1151 12 selp.u64 %r104,%r104,39,%r664; .loc 1 1152 10 or.b32 %r109,%r108,1408; .loc 1 329 9 ld.u32 %r46,[%r316+8]; mov.u64 %r294,%frame; shl.b64 %r665,%r104,2; add.u64 %r291,%r665,%frame; $L144: mov.u64 %r106,%r294; .loc 1 329 6 setp.gt.s32 %r666,%r46,0; @ %r666 bra $L127; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r669,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r670,%r669,0; @ %r670 bra $L128; .loc 1 333 10 ld.u32 %r46,[%r316+8]; $L127: .loc 1 331 23 ld.u64 %r266,[%r316]; .loc 1 331 6 ld.u32 %r267,[%r266]; .loc 1 332 10 add.u64 %r671,%r266,4; st.u64 [%r316],%r671; .loc 1 333 10 add.u32 %r46,%r46,-4; st.u32 [%r316+8],%r46; .loc 1 1155 10 mov.u32 %r131,%r267; setp.gt.u32 %r673,%r131,57; @ %r673 bra $L129; setp.gt.u32 %r674,%r131,55; @ %r674 bra $L130; setp.eq.u32 %r675,%r131,48; @ %r675 bra $L131; setp.gt.u32 %r676,%r131,48; @ %r676 bra $L132; add.u32 %r677,%r131,-43; and.b32 %r678,%r677,-3; setp.eq.u32 %r679,%r678,0; @ ! %r679 bra $L134; bra $L133; $L132: .loc 1 1191 19 cvta.const.u64 %r680,basefix$0; cvt.s64.s32 %r681,%r310; add.u64 %r682,%r681,%r681; add.u64 %r683,%r680,%r682; ld.s16 %r310,[%r683]; .loc 1 1192 11 and.b32 %r109,%r109,-897; .loc 1 1193 5 bra $L135; $L129: setp.gt.u32 %r684,%r131,102; @ %r684 bra $L136; setp.gt.u32 %r685,%r131,96; @ %r685 bra $L137; setp.gt.u32 %r686,%r131,70; @ %r686 bra $L138; setp.gt.u32 %r687,%r131,64; @ ! %r687 bra $L134; bra $L137; $L138: setp.eq.u32 %r688,%r131,88; @ %r688 bra $L139; bra $L134; $L136: setp.eq.u32 %r689,%r131,120; @ %r689 bra $L139; bra $L304; $L131: .loc 1 1172 8 setp.ne.u32 %r690,%r310,0; @ %r690 bra $L141; .loc 1 1175 15 or.b32 %r109,%r109,512; .loc 1 1174 14 mov.u32 %r310,8; $L141: .loc 1 1177 15 and.b32 %r691,%r109,1024; .loc 1 1177 8 setp.eq.u32 %r692,%r691,0; @ %r692 bra $L142; .loc 1 1178 13 and.b32 %r109,%r109,-1409; bra $L135; $L142: .loc 1 1180 13 and.b32 %r109,%r109,-897; bra $L135; $L130: .loc 1 1198 19 cvta.const.u64 %r693,basefix$0; cvt.s64.s32 %r694,%r310; add.u64 %r695,%r694,%r694; add.u64 %r696,%r693,%r695; ld.s16 %r310,[%r696]; .loc 1 1199 8 setp.le.s32 %r697,%r310,8; @ %r697 bra $L134; .loc 1 1201 11 and.b32 %r109,%r109,-897; .loc 1 1202 5 bra $L135; $L137: .loc 1 1218 8 setp.le.s32 %r698,%r310,10; @ %r698 bra $L134; .loc 1 1220 11 and.b32 %r109,%r109,-897; .loc 1 1221 5 bra $L135; $L133: .loc 1 1226 15 and.b32 %r699,%r109,128; .loc 1 1226 8 setp.eq.u32 %r700,%r699,0; @ %r700 bra $L134; .loc 1 1228 15 and.b32 %r132,%r109,-129; .loc 1 1229 15 or.b32 %r109,%r132,65536; .loc 1 1230 9 bra $L135; $L139: .loc 1 1237 16 and.b32 %r701,%r109,512; .loc 1 1237 8 setp.eq.u32 %r702,%r701,0; @ %r702 bra $L134; .loc 1 1237 52 and.b32 %r703,%r109,65536; .loc 1 1237 41 setp.ne.u32 %r704,%r703,0; selp.u64 %r114,8,4,%r704; add.u64 %r705,%frame,%r114; .loc 1 1237 25 setp.ne.u64 %r706,%r294,%r705; @ %r706 bra $L134; .loc 1 1240 15 and.b32 %r109,%r109,-513; .loc 1 1239 14 mov.u32 %r310,16; .loc 1 1241 9 bra $L135; $L304: .loc 1 1250 11 setp.eq.u32 %r707,%r131,-1; @ %r707 bra $L128; $L134: .loc 1 1251 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r131; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L128; $L135: add.u64 %r294,%r294,4; .loc 1 1257 13 st.u32 [%r106],%r267; .loc 1 1153 18 setp.ne.u64 %r711,%r291,%r294; @ %r711 bra $L144; .loc 1 1257 10 mov.u64 %r106,%r291; $L128: .loc 1 1267 14 and.b32 %r712,%r109,256; .loc 1 1267 7 setp.eq.u32 %r713,%r712,0; @ %r713 bra $L145; .loc 1 1269 11 setp.ge.u64 %r714,%frame,%r106; @ %r714 bra $L12; .loc 1 1270 3 ld.u32 %r718,[%r106+-4]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r718; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L12; $L145: .loc 1 1273 9 ld.u32 %r86,[%r106+-4]; .loc 1 1274 23 and.b32 %r719,%r86,-33; .loc 1 1274 7 setp.ne.u32 %r720,%r719,88; @ %r720 bra $L146; .loc 1 1276 8 add.u64 %r106,%r106,-4; .loc 1 1277 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r86; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } $L146: .loc 1 1279 15 and.b32 %r724,%r109,16; .loc 1 1279 7 setp.ne.u32 %r725,%r724,0; @ %r725 bra $L147; .loc 1 1283 11 st.u32 [%r106],%r724; .loc 1 1284 15 mov.u64 %r729,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r310; call (%value_in),%r50,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r731,[%value_in]; } .loc 1 830 11 add.u64 %r732,%r318,7; and.b64 %r295,%r732,-8; add.u64 %r318,%r295,8; .loc 1 1285 18 and.b32 %r733,%r109,32; .loc 1 1285 11 setp.eq.u32 %r734,%r733,0; @ %r734 bra $L148; .loc 1 1287 12 ld.u64 %r140,[%r295]; .loc 1 1297 11 st.u64 [%r140],%r731; bra $L149; $L148: .loc 1 1306 23 and.b32 %r735,%r109,4; .loc 1 1306 16 setp.eq.u32 %r736,%r735,0; @ %r736 bra $L150; .loc 1 1309 9 ld.u64 %r737,[%r295]; st.u16 [%r737],%r731; bra $L149; $L150: .loc 1 1311 23 and.b32 %r738,%r109,1; .loc 1 1311 16 setp.eq.u32 %r739,%r738,0; @ %r739 bra $L151; .loc 1 1314 9 ld.u64 %r740,[%r295]; st.u64 [%r740],%r731; bra $L149; $L151: .loc 1 1317 23 and.b32 %r741,%r109,2; .loc 1 1317 16 setp.eq.u32 %r742,%r741,0; @ %r742 bra $L152; .loc 1 1320 8 mov.u64 %r743,_wcstoul_r; setp.ne.u64 %r744,%r50,%r743; @ %r744 bra $L153; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r310; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r749,[%value_in]; } .loc 1 1325 10 mov.u64 %r95,%r749; bra $L154; $L153: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r310; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r754,[%value_in]; } mov.u64 %r95,%r754; $L154: .loc 1 1325 10 ld.u64 %r755,[%r295]; st.u64 [%r755],%r95; bra $L149; $L152: .loc 1 1331 9 ld.u64 %r756,[%r295]; st.u32 [%r756],%r731; $L149: .loc 1 1333 17 add.u32 %r314,%r314,1; $L147: .loc 1 1335 15 sub.u64 %r757,%r106,%frame; shr.s64 %r759,%r757,2; .loc 1 1335 10 cvt.u32.u64 %r760,%r759; add.u32 %r48,%r760,%r48; .loc 1 1336 4 mov.u64 %r110,%r121; bra $L18; $L44: .loc 1 1656 63 setp.eq.u32 %r761,%r314,0; @ %r761 bra $L183; .loc 1 1656 25 ld.u16 %r763,[%r316+16]; and.b16 %r762,%r763,64; setp.ne.u16 %r764,%r762,0; .loc 1 1656 63 selp.u32 %r314,-1,%r314,%r764; bra $L12; $L163: .loc 1 561 10 mov.u32 %r314,%r103; bra $L12; $L183: .loc 1 1656 63 mov.u32 %r314,-1; bra $L12; $L14: $L155: $L298: .loc 1 568 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r163; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r110,%r121; bra $L18; $L85: .loc 1 975 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r151; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L156; $L93: .loc 1 999 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r149; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L157; $L103: .loc 1 1046 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r146; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L158; $L109: .loc 1 1069 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r145; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u32 %r48,%r272; mov.u64 %r110,%r121; bra $L18; $L115: .loc 1 1092 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r144; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L159; $L124: .loc 1 1135 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r141; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L160; $L303: .loc 1 866 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r130; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 872 7 setp.eq.u32 %r790,%r236,2; @ ! %r790 bra $L305; bra $L161; $L167: .loc 1 588 7 mov.u64 %r50,_wcstoul_r; mov.u32 %r28,8; bra $L35; $L168: .loc 1 731 9 mov.u64 %r50,_wcstol_r; bra $L35; $L170: .loc 1 743 9 mov.u64 %r50,_wcstoul_r; .loc 1 744 9 mov.u32 %r28,10; $L35: .loc 1 588 7 mov.u32 %r310,%r28; mov.u32 %r236,3; bra $L59; $L12: .loc 1 1665 1 mov.u32 %value,%r314; st.param.u32 [%value_out],%value; ret; } /1561 0 0 0 644 79666 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .visible .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .extern .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[2] = {48,0 }; // BEGIN GLOBAL FUNCTION DEF: _svfprintf_r .visible .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[224]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r25; .reg .f64 %r28; .reg .u64 %r33; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r53; .reg .u32 %r61; .reg .u32 %r62; .reg .u64 %r73; .reg .u32 %r114; .reg .u32 %r126; .reg .u32 %r127; .reg .u64 %r129; .reg .u32 %r131; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r139; .reg .u64 %r143; .reg .u32 %r145; .reg .u64 %r149; .reg .u32 %r150; .reg .u64 %r153; .reg .u32 %r155; .reg .u32 %r158; .reg .u32 %r161; .reg .u32 %r164; .reg .u64 %r168; .reg .u64 %r169; .reg .u32 %r170; .reg .u32 %r172; .reg .u32 %r174; .reg .u32 %r178; .reg .u64 %r181; .reg .u64 %r183; .reg .u32 %r184; .reg .u64 %r186; .reg .u32 %r188; .reg .u64 %r193; .reg .u32 %r194; .reg .u32 %r197; .reg .u32 %r200; .reg .u32 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u32 %r206; .reg .u64 %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r216; .reg .u32 %r217; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r227; .reg .u32 %r228; .reg .u64 %r232; .reg .u32 %r233; .reg .u64 %r239; .reg .u64 %r240; .reg .u32 %r241; .reg .u64 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u64 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r255; .reg .u64 %r257; .reg .u32 %r258; .reg .u64 %r260; .reg .u32 %r265; .reg .u32 %r266; .reg .u32 %r269; .reg .u32 %r270; .reg .u32 %r271; .reg .u64 %r272; .reg .u64 %r273; .reg .u32 %r274; .reg .u64 %r275; .reg .u32 %r276; .reg .u64 %r281; .reg .u64 %r282; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r292; .reg .u64 %r293; .reg .u32 %r294; .reg .u32 %r300; .reg .f64 %r301; .reg .u64 %r304; .reg .u64 %r306; .reg .u64 %r311; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r330; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r335; .reg .u64 %r337; .reg .u64 %r338; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r348; .reg .u64 %r350; .reg .u64 %r354; .reg .u64 %r356; .reg .u64 %r357; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u32 %r367; .reg .u32 %r369; .reg .u32 %r375; .reg .u32 %r376; .reg .u64 %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .u32 %r380; .reg .u32 %r382; .reg .u64 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r389; .reg .u32 %r391; .reg .u32 %r392; .reg .u64 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u32 %r398; .reg .u64 %r401; .reg .u64 %r402; .reg .u32 %r407; .reg .u32 %r408; .reg .u64 %r409; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r412; .reg .u64 %r423; .reg .u64 %r425; .reg .u16 %r426; .reg .u16 %r427; .reg .pred %r428; .reg .u64 %r429; .reg .pred %r430; .reg .u64 %r432; .reg .u64 %r433; .reg .pred %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .u64 %r437; .reg .u32 %r438; .reg .u32 %r439; .reg .u16 %r440; .reg .u32 %r441; .reg .u32 %r442; .reg .u32 %r443; .reg .u32 %r445; .reg .u32 %r446; .reg .u16 %r447; .reg .u16 %r448; .reg .u16 %r449; .reg .u32 %r450; .reg .u16 %r451; .reg .pred %r452; .reg .u32 %r453; .reg .u16 %r454; .reg .u32 %r455; .reg .u32 %r456; .reg .u32 %r457; .reg .u32 %r459; .reg .u32 %r460; .reg .u16 %r461; .reg .u16 %r462; .reg .u16 %r463; .reg .u32 %r464; .reg .u16 %r465; .reg .pred %r466; .reg .u64 %r467; .reg .pred %r468; .reg .u64 %r469; .reg .u64 %r470; .reg .u32 %r471; .reg .pred %r472; .reg .u32 %r477; .reg .pred %r478; .reg .pred %r479; .reg .u32 %r480; .reg .pred %r481; .reg .pred %r482; .reg .pred %r483; .reg .pred %r484; .reg .pred %r485; .reg .pred %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .pred %r490; .reg .pred %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .pred %r495; .reg .pred %r496; .reg .pred %r497; .reg .u32 %r498; .reg .pred %r499; .reg .pred %r500; .reg .pred %r501; .reg .pred %r502; .reg .pred %r503; .reg .pred %r504; .reg .pred %r505; .reg .pred %r506; .reg .pred %r507; .reg .pred %r508; .reg .pred %r509; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .pred %r517; .reg .pred %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u32 %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .u32 %r526; .reg .u32 %r528; .reg .u32 %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u32 %r533; .reg .u32 %r534; .reg .u32 %r535; .reg .pred %r538; .reg .u16 %r539; .reg .pred %r540; .reg .u32 %r541; .reg .u32 %r542; .reg .pred %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u16 %r551; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r556; .reg .u64 %r557; .reg .f64 %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .u32 %r564; .reg .pred %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u32 %r569; .reg .pred %r570; .reg .u32 %r571; .reg .pred %r572; .reg .pred %r573; .reg .u32 %r574; .reg .u32 %r575; .reg .u32 %r576; .reg .u32 %r577; .reg .u32 %r578; .reg .u32 %r579; .reg .u16 %r580; .reg .u16 %r581; .reg .u16 %r582; .reg .u32 %r583; .reg .u16 %r584; .reg .pred %r585; .reg .u64 %r586; .reg .u64 %r587; .reg .u32 %r588; .reg .pred %r589; .reg .pred %r590; .reg .pred %r591; .reg .u32 %r594; .reg .u64 %r602; .reg .u32 %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .pred %r606; .reg .pred %r607; .reg .u64 %r608; .reg .u32 %r609; .reg .pred %r610; .reg .u64 %r611; .reg .u32 %r613; .reg .u32 %r614; .reg .u32 %r615; .reg .u32 %r616; .reg .u32 %r617; .reg .u32 %r618; .reg .u16 %r619; .reg .u16 %r620; .reg .u16 %r621; .reg .u32 %r622; .reg .u16 %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .u32 %r627; .reg .u32 %r628; .reg .pred %r629; .reg .u32 %r631; .reg .u32 %r632; .reg .u16 %r633; .reg .u16 %r634; .reg .pred %r637; .reg .u32 %r638; .reg .u16 %r639; .reg .u16 %r640; .reg .u32 %r641; .reg .pred %r645; .reg .u32 %r647; .reg .pred %r650; .reg .u64 %r656; .reg .u64 %r657; .reg .u64 %r659; .reg .u32 %r660; .reg .u32 %r661; .reg .u16 %r662; .reg .u16 %r663; .reg .pred %r664; .reg .pred %r665; .reg .u32 %r667; .reg .pred %r668; .reg .pred %r669; .reg .pred %r670; .reg .pred %r673; .reg .u32 %r676; .reg .pred %r677; .reg .pred %r681; .reg .u32 %r683; .reg .pred %r684; .reg .u32 %r685; .reg .pred %r686; .reg .u32 %r687; .reg .u64 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .u64 %r691; .reg .u32 %r692; .reg .pred %r693; .reg .u64 %r694; .reg .u32 %r695; .reg .pred %r696; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u16 %r703; .reg .u32 %r704; .reg .u32 %r705; .reg .u32 %r706; .reg .pred %r707; .reg .pred %r708; .reg .u32 %r710; .reg .u64 %r712; .reg .u64 %r713; .reg .pred %r714; .reg .u64 %r715; .reg .u64 %r717; .reg .u32 %r718; .reg .pred %r719; .reg .u32 %r720; .reg .pred %r721; .reg .u32 %r722; .reg .pred %r723; .reg .u16 %r724; .reg .pred %r725; .reg .u32 %r726; .reg .u32 %r727; .reg .pred %r728; .reg .u32 %r729; .reg .pred %r730; .reg .u32 %r731; .reg .pred %r732; .reg .u16 %r733; .reg .u32 %r734; .reg .pred %r735; .reg .pred %r736; .reg .u32 %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u32 %r740; .reg .u32 %r741; .reg .u32 %r742; .reg .u32 %r743; .reg .u32 %r744; .reg .u32 %r745; .reg .u16 %r746; .reg .u16 %r747; .reg .u16 %r748; .reg .u32 %r749; .reg .u16 %r750; .reg .pred %r751; .reg .pred %r752; .reg .pred %r753; .reg .u32 %r754; .reg .u16 %r755; .reg .u16 %r756; .reg .u32 %r757; .reg .u16 %r758; .reg .u16 %r759; .reg .u32 %r760; .reg .pred %r762; .reg .u32 %r763; .reg .u16 %r764; .reg .u32 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .u16 %r768; .reg .u16 %r769; .reg .u32 %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .u16 %r773; .reg .u32 %r774; .reg .u16 %r775; .reg .pred %r776; .reg .u64 %r779; .reg .u32 %r780; .reg .u64 %r783; .reg .pred %r784; .reg .u32 %r785; .reg .u16 %r786; .reg .u16 %r787; .reg .u64 %r789; .reg .u32 %r790; .reg .u16 %r791; .reg .u16 %r792; .reg .pred %r795; .reg .u64 %r798; .reg .u64 %r799; .reg .u64 %r800; .reg .u32 %r801; .reg .pred %r802; .reg .u64 %r805; .reg .pred %r806; .reg .pred %r807; .reg .u32 %r808; .reg .pred %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u32 %r812; .reg .pred %r813; .reg .pred %r815; .reg .pred %r816; .reg .pred %r817; .reg .u64 %r819; .reg .pred %r820; .reg .u32 %r825; .reg .pred %r826; .reg .pred %r827; .reg .pred %r829; .reg .u32 %r834; .reg .pred %r835; .reg .u16 %r836; .reg .u32 %r837; .reg .pred %r838; .reg .u64 %r840; .reg .u32 %r841; .reg .pred %r842; .reg .u32 %r847; .reg .pred %r848; .reg .u64 %r851; .reg .u32 %r852; .reg .pred %r853; .reg .u32 %r858; .reg .pred %r859; .reg .pred %r860; .reg .pred %r861; .reg .pred %r862; .reg .u64 %r864; .reg .pred %r865; .reg .u32 %r870; .reg .pred %r871; .reg .pred %r872; .reg .pred %r874; .reg .u32 %r879; .reg .pred %r880; .reg .pred %r881; .reg .pred %r882; .reg .u64 %r884; .reg .pred %r885; .reg .u32 %r890; .reg .pred %r891; .reg .pred %r892; .reg .pred %r894; .reg .u32 %r899; .reg .pred %r900; .reg .u32 %r901; .reg .pred %r902; .reg .u32 %r903; .reg .pred %r904; .reg .u32 %r909; .reg .pred %r910; .reg .pred %r911; .reg .pred %r912; .reg .u64 %r913; .reg .u64 %r914; .reg .u32 %r915; .reg .pred %r916; .reg .u32 %r921; .reg .pred %r922; .reg .u32 %r923; .reg .pred %r924; .reg .u32 %r925; .reg .pred %r926; .reg .u32 %r927; .reg .pred %r928; .reg .u32 %r933; .reg .pred %r934; .reg .pred %r935; .reg .pred %r936; .reg .u64 %r938; .reg .pred %r939; .reg .u32 %r944; .reg .pred %r945; .reg .pred %r946; .reg .pred %r948; .reg .u32 %r953; .reg .pred %r954; .reg .pred %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .u32 %r958; .reg .pred %r959; .reg .u32 %r964; .reg .pred %r965; .reg .u32 %r966; .reg .pred %r967; .reg .u32 %r968; .reg .pred %r969; .reg .u32 %r970; .reg .pred %r971; .reg .u32 %r976; .reg .pred %r977; .reg .pred %r978; .reg .pred %r979; .reg .u64 %r981; .reg .pred %r982; .reg .u32 %r987; .reg .pred %r988; .reg .pred %r989; .reg .pred %r991; .reg .u32 %r996; .reg .pred %r997; .reg .pred %r998; .reg .u32 %r1003; .reg .pred %r1004; .reg .pred %r1005; .reg .u32 %r1006; .reg .pred %r1007; .reg .u32 %r1012; .reg .pred %r1013; .reg .u32 %r1014; .reg .pred %r1015; .reg .pred %r1016; .reg .u64 %r1018; .reg .pred %r1019; .reg .u32 %r1024; .reg .pred %r1025; .reg .pred %r1026; .reg .pred %r1028; .reg .u32 %r1033; .reg .pred %r1034; .reg .pred %r1035; .reg .u32 %r1036; .reg .pred %r1037; .reg .u32 %r1038; .reg .pred %r1039; .reg .u32 %r1044; .reg .pred %r1045; .reg .u32 %r1046; .reg .pred %r1047; .reg .u64 %r1048; .reg .u64 %r1049; .reg .u32 %r1050; .reg .pred %r1051; .reg .u32 %r1056; .reg .pred %r1057; .reg .u32 %r1058; .reg .u32 %r1059; .reg .pred %r1060; .reg .pred %r1061; .reg .u64 %r1063; .reg .pred %r1064; .reg .u32 %r1069; .reg .pred %r1070; .reg .pred %r1071; .reg .pred %r1073; .reg .u32 %r1078; .reg .pred %r1079; .reg .u32 %r1080; .reg .pred %r1081; .reg .u32 %r1082; .reg .pred %r1083; .reg .u64 %r1084; .reg .pred %r1085; .reg .u32 %r1090; .reg .pred %r1091; .reg .pred %r1092; .reg .u32 %r1097; .reg .pred %r1098; .reg .pred %r1099; .reg .u64 %r1100; .reg .pred %r1101; .reg .u32 %r1106; .reg .pred %r1107; .reg .pred %r1108; .reg .pred %r1109; .reg .u64 %r1111; .reg .pred %r1112; .reg .u32 %r1117; .reg .pred %r1118; .reg .pred %r1119; .reg .pred %r1121; .reg .u32 %r1126; .reg .pred %r1127; .reg .u64 %r1128; .reg .pred %r1129; .reg .u32 %r1134; .reg .pred %r1135; .reg .pred %r1137; .reg .u32 %r1142; .reg .pred %r1143; .reg .u32 %r1144; .reg .pred %r1145; .reg .pred %r1146; .reg .pred %r1147; .reg .u64 %r1149; .reg .pred %r1150; .reg .u32 %r1155; .reg .pred %r1156; .reg .pred %r1157; .reg .pred %r1159; .reg .u32 %r1164; .reg .pred %r1165; .reg .u32 %r1166; .reg .pred %r1167; .reg .u32 %r1168; .reg .u32 %r1173; .reg .pred %r1174; .reg .u64 %r1175; .reg .pred %r1176; .reg .u64 %r1180; .reg .u32 %r1181; .reg .u16 %r1182; .reg .u16 %r1183; .reg .pred %r1184; .reg .u32 %r1186; .reg .pred %r1187; .reg .pred %r1188; .reg .u32 %r1191; .reg .u64 %r1199; .reg .u32 %r1200; .reg .u16 %r1201; .reg .u32 %r1202; .reg .u32 %r1203; .reg .u32 %r1204; .reg .u32 %r1205; .reg .u32 %r1206; .reg .u32 %r1207; .reg .u16 %r1208; .reg .u16 %r1209; .reg .u16 %r1210; .reg .u32 %r1211; .reg .u16 %r1212; .reg .pred %r1213; .reg .u64 %r1214; .reg .u32 %r1217; .reg .u64 %r1225; .reg .u32 %r1227; .reg .pred %r1228; .reg .u64 %r1229; .reg .u32 %r1230; .reg .pred %r1231; .reg .u32 %r1234; .reg .u32 %r1235; .reg .u64 %r1242; .reg .u64 %r1243; .reg .u64 %r1244; .reg .u32 %r1245; .reg .pred %r1246; .reg .u32 %r1247; .reg .u32 %r1248; .reg .u32 %r1249; .reg .u32 %r1250; .reg .u32 %r1251; .reg .u32 %r1252; .reg .u16 %r1253; .reg .u16 %r1254; .reg .u16 %r1255; .reg .u32 %r1256; .reg .u16 %r1257; .reg .pred %r1258; .reg .pred %r1259; .reg .u32 %r1261; .reg .u32 %r1264; .reg .u64 %r1265; .reg .pred %r1266; .reg .u64 %r1267; .reg .u32 %r1290; .reg .u64 %r1291; .reg .u64 %r1292; .reg .u64 %r1293; .reg .u64 %r1294; .reg .u32 %r1295; .reg .u64 %r1296; .reg .u64 %r1297; .reg .u64 %r1298; .reg .u32 %r1299; .reg .u64 %r1300; .reg .u64 %r1301; .reg .u64 %r1302; .reg .u16 %r1309; mov.u64 %r409,%ar0; mov.u64 %r410,%ar1; mov.u64 %r411,%ar2; mov.u64 %r412,%ar3; .loc 1 685 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r423,[%value_in]; } .loc 1 685 8 ld.u64 %r260,[%r423]; .loc 1 686 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r260; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r425,[%value_in]; } .loc 1 869 12 ld.u16 %r427,[%r410+16]; and.b16 %r426,%r427,128; setp.eq.u16 %r428,%r426,0; @ %r428 bra $L2; .loc 1 869 33 ld.u64 %r429,[%r410+24]; setp.ne.u64 %r430,%r429,0; @ %r430 bra $L2; .loc 1 871 28 mov.u64 %r432,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r432; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r433,[%value_in]; } .loc 1 871 26 st.u64 [%r410],%r433; .loc 1 871 17 st.u64 [%r410+24],%r433; .loc 1 872 6 setp.ne.u64 %r434,%r433,0; @ %r434 bra $L3; .loc 1 874 17 mov.u32 %r435,12; st.u32 [%r409],%r435; .loc 1 875 11 mov.u32 %r408,-1; bra $L1; $L3: .loc 1 877 17 mov.u32 %r436,64; st.u32 [%r410+32],%r436; $L2: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r437,0; st.u64 [%frame+184],%r437; .loc 1 885 17 mov.u32 %r438,0; st.u32 [%frame+176],%r438; .loc 1 696 6 mov.u32 %r62,%r438; .loc 1 688 42 mov.f64 %r28,0d0000000000000000; .loc 1 883 21 mov.u64 %r253,%frame; .loc 1 707 8 mov.u64 %r252,%r437; .loc 1 691 6 mov.u32 %r247,%r62; .loc 1 887 6 mov.u32 %r408,%r62; .loc 1 918 4 add.u64 %r1291,%frame,168; .loc 1 1756 5 add.u64 %r1292,%frame,200; .loc 1 1687 4 add.u64 %r1293,%frame,216; .loc 1 1685 4 add.u64 %r1294,%frame,218; .loc 1 1328 11 cvt.u32.u64 %r1295,%r425; .loc 1 1910 4 add.u64 %r1296,%frame,199; add.u64 %r1297,%frame,202; .loc 1 1916 36 add.u64 %r1298,%frame,201; .loc 1 1340 21 add.u32 %r1299,%r1295,1; .loc 1 1873 11 add.u64 %r1300,%frame,192; add.u64 %r1301,%frame,208; add.u64 %r1302,%frame,212; $L5: .loc 1 914 24 ld.s8 %r265,[%r411]; .loc 1 914 37 cvt.u16.u32 %r440,%r265; set.u32.ne.u16 %r441,%r440,37; neg.s32 %r442,%r441; mov.u32 %r439,%r442; set.u32.ne.u16 %r445,%r440,0; neg.s32 %r446,%r445; mov.u32 %r443,%r446; cvt.u16.u8 %r1309,%r439; mov.u16 %r448,%r1309; cvt.u16.u8 %r1309,%r443; mov.u16 %r449,%r1309; and.b16 %r447,%r448,%r449; cvt.u32.u16 %r450,%r447; cvt.u16.u8 %r451,%r450; setp.eq.u16 %r452,%r451,0; @ %r452 bra $L245; mov.u64 %r240,%r411; $L7: mov.u64 %r343,%r240; .loc 1 915 25 add.u64 %r240,%r240,1; .loc 1 914 24 ld.s8 %r265,[%r240]; .loc 1 914 37 cvt.u16.u32 %r454,%r265; set.u32.ne.u16 %r455,%r454,0; neg.s32 %r456,%r455; mov.u32 %r453,%r456; set.u32.ne.u16 %r459,%r454,37; neg.s32 %r460,%r459; mov.u32 %r457,%r460; cvt.u16.u8 %r1309,%r453; mov.u16 %r462,%r1309; cvt.u16.u8 %r1309,%r457; mov.u16 %r463,%r1309; and.b16 %r461,%r462,%r463; cvt.u32.u16 %r464,%r461; cvt.u16.u8 %r465,%r464; setp.ne.u16 %r466,%r465,0; @ %r466 bra $L7; .loc 1 917 16 sub.u64 %r467,%r240,%r411; .loc 1 917 10 cvt.u32.u64 %r266,%r467; .loc 1 917 6 setp.eq.u32 %r468,%r266,0; @ %r468 bra $L6; .loc 1 918 4 st.u64 [%r253],%r411; cvt.s64.s32 %r33,%r266; st.u64 [%r253+8],%r33; ld.u64 %r470,[%frame+184]; add.u64 %r469,%r470,%r33; st.u64 [%frame+184],%r469; ld.u32 %r471,[%frame+176]; add.u32 %r37,%r471,1; st.u32 [%frame+176],%r37; setp.gt.s32 %r472,%r37,7; @ %r472 bra $L8; add.u64 %r253,%r253,16; bra $L9; $L8: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r477,[%value_in]; } setp.ne.u32 %r478,%r477,0; @ %r478 bra $L10; mov.u64 %r253,%frame; $L9: .loc 1 919 8 add.u32 %r408,%r408,%r266; .loc 1 925 21 ld.s8 %r265,[%r343+1]; bra $L6; $L245: .loc 1 914 37 mov.u64 %r240,%r411; $L6: .loc 1 925 20 setp.eq.u32 %r479,%r265,0; @ %r479 bra $L11; .loc 1 929 6 add.u64 %r411,%r240,1; .loc 1 935 8 mov.u32 %r480,0; st.u8 [%frame+218],%r480; .loc 1 947 14 ld.s8 %r387,[%r240+1]; mov.u32 %r320,0; mov.u32 %r321,%r320; .loc 1 934 8 mov.u32 %r246,-1; .loc 1 933 9 mov.u32 %r245,%r320; .loc 1 931 9 mov.u32 %r243,%r320; .loc 1 1060 6 mov.u32 %r1290,%r320; $L12: .loc 1 947 18 add.u64 %r411,%r411,1; .loc 1 947 12 mov.u32 %r241,%r387; $L13: .loc 1 948 11 setp.eq.u32 %r481,%r241,85; @ %r481 bra $L14; setp.gt.s32 %r482,%r241,85; @ %r482 bra $L15; setp.eq.u32 %r483,%r241,46; @ %r483 bra $L16; setp.gt.s32 %r484,%r241,46; @ %r484 bra $L17; setp.eq.u32 %r485,%r241,42; @ %r485 bra $L18; setp.gt.s32 %r486,%r241,42; @ %r486 bra $L19; setp.eq.u32 %r487,%r241,32; @ %r487 bra $L20; setp.eq.u32 %r488,%r241,35; @ %r488 bra $L21; bra $L368; $L19: setp.eq.u32 %r489,%r241,43; @ %r489 bra $L23; setp.eq.u32 %r490,%r241,45; @ %r490 bra $L24; bra $L25; $L17: setp.eq.u32 %r491,%r241,68; @ %r491 bra $L26; setp.gt.s32 %r492,%r241,68; @ %r492 bra $L27; setp.eq.u32 %r493,%r241,48; @ %r493 bra $L28; add.u32 %r494,%r241,-49; setp.gt.u32 %r495,%r494,8; @ %r495 bra $L25; mov.u64 %r333,%r411; .loc 1 1077 6 mov.u32 %r245,0; add.u32 %r1261,%r241,-48; bra $L29; $L27: .loc 1 948 11 setp.eq.u32 %r496,%r241,76; @ %r496 bra $L30; setp.gt.s32 %r497,%r241,76; @ %r497 bra $L31; and.b32 %r498,%r241,-3; setp.eq.u32 %r499,%r498,69; @ ! %r499 bra $L25; bra $L32; $L31: setp.eq.u32 %r500,%r241,79; @ %r500 bra $L33; bra $L25; $L15: setp.eq.u32 %r501,%r241,110; @ %r501 bra $L34; setp.gt.s32 %r502,%r241,110; @ %r502 bra $L35; setp.gt.s32 %r503,%r241,103; @ %r503 bra $L36; setp.gt.s32 %r504,%r241,100; @ %r504 bra $L32; setp.eq.u32 %r505,%r241,99; @ %r505 bra $L37; setp.eq.u32 %r506,%r241,100; @ %r506 bra $L38; setp.eq.u32 %r507,%r241,88; @ %r507 bra $L39; bra $L25; $L36: setp.eq.u32 %r508,%r241,105; @ %r508 bra $L38; setp.eq.u32 %r509,%r241,108; @ %r509 bra $L40; setp.eq.u32 %r510,%r241,104; @ %r510 bra $L41; bra $L25; $L35: setp.eq.u32 %r511,%r241,115; @ %r511 bra $L42; setp.gt.s32 %r512,%r241,115; @ %r512 bra $L43; setp.eq.u32 %r513,%r241,112; @ %r513 bra $L44; setp.eq.u32 %r514,%r241,113; @ %r514 bra $L45; setp.eq.u32 %r515,%r241,111; @ %r515 bra $L46; bra $L25; $L43: setp.eq.u32 %r516,%r241,117; @ %r516 bra $L47; setp.eq.u32 %r517,%r241,120; @ %r517 bra $L48; bra $L25; $L38: setp.eq.u32 %r518,%r320,0; @ %r518 bra $L50; cvt.u32.u32 %r519,%r321; st.u8 [%frame+218],%r519; bra $L50; $L48: setp.eq.u32 %r520,%r320,0; @ %r520 bra $L51; cvt.u32.u32 %r521,%r321; st.u8 [%frame+218],%r521; $L51: .loc 1 1538 10 cvta.const.u64 %r252,$LC5; bra $L52; $L20: .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 964 7 setp.ne.u32 %r522,%r321,0; selp.u32 %r320,%r320,1,%r522; selp.u32 %r321,%r321,32,%r522; bra $L12; $L21: .loc 1 968 10 or.b32 %r243,%r243,1; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 969 4 bra $L12; $L18: .loc 1 1007 10 add.u64 %r169,%r412,4; ld.u32 %r245,[%r412]; .loc 1 1011 7 setp.lt.s32 %r523,%r245,0; @ %r523 bra $L54; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1007 10 mov.u64 %r412,%r169; bra $L12; $L54: .loc 1 1013 10 neg.s32 %r245,%r245; .loc 1 1007 10 mov.u64 %r412,%r169; $L24: .loc 1 1016 10 or.b32 %r243,%r243,4; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1017 4 bra $L12; $L23: .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1020 4 mov.u32 %r320,1; .loc 1 1019 9 mov.u32 %r321,%r241; .loc 1 1020 4 bra $L12; $L16: .loc 1 1022 18 add.u64 %r282,%r411,1; .loc 1 1022 12 ld.s8 %r241,[%r411]; .loc 1 1022 7 setp.eq.u32 %r524,%r241,42; @ %r524 bra $L55; .loc 1 1061 11 add.u32 %r1261,%r241,-48; setp.le.u32 %r525,%r1261,9; @ %r525 bra $L56; .loc 1 1022 18 mov.u64 %r411,%r282; .loc 1 1060 6 mov.u32 %r246,%r1290; bra $L13; $L55: ld.u32 %r526,[%r412]; max.s32 %r246,%r526,-1; .loc 1 947 14 ld.s8 %r387,[%r411+1]; .loc 1 1052 10 add.u64 %r412,%r412,4; .loc 1 1022 18 mov.u64 %r411,%r282; .loc 1 1058 5 bra $L12; $L56: mov.u64 %r338,%r282; .loc 1 1060 6 mov.u32 %r246,%r1290; $L58: .loc 1 1062 12 shl.b32 %r528,%r246,2; add.u32 %r529,%r528,%r246; add.u32 %r530,%r529,%r529; .loc 1 1062 7 add.u32 %r246,%r530,%r1261; mov.u64 %r272,%r338; add.u64 %r338,%r338,1; mov.u64 %r411,%r338; .loc 1 1063 8 ld.s8 %r241,[%r272]; .loc 1 1061 11 add.u32 %r1261,%r241,-48; setp.le.u32 %r531,%r1261,9; @ %r531 bra $L58; bra $L13; $L28: .loc 1 1073 10 or.b32 %r243,%r243,128; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1074 4 bra $L12; $L29: .loc 1 1079 12 shl.b32 %r533,%r245,2; add.u32 %r534,%r533,%r245; add.u32 %r535,%r534,%r534; .loc 1 1079 7 add.u32 %r245,%r1261,%r535; mov.u64 %r257,%r333; add.u64 %r333,%r333,1; mov.u64 %r411,%r333; .loc 1 1080 8 ld.s8 %r241,[%r257]; .loc 1 1081 13 add.u32 %r1261,%r241,-48; setp.le.u32 %r538,%r1261,9; @ %r538 bra $L29; bra $L13; $L30: .loc 1 1097 10 or.b32 %r243,%r243,8; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1098 4 bra $L12; $L41: .loc 1 1107 11 or.b32 %r243,%r243,64; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1108 4 bra $L12; $L40: .loc 1 1111 8 ld.s8 %r387,[%r411]; .loc 1 1111 7 cvt.u16.u32 %r539,%r387; setp.ne.u16 %r540,%r539,108; @ %r540 bra $L59; .loc 1 1113 11 or.b32 %r243,%r243,32; .loc 1 947 14 ld.s8 %r387,[%r411+1]; .loc 1 1112 8 add.u64 %r411,%r411,1; bra $L12; $L59: .loc 1 1116 11 or.b32 %r243,%r243,16; bra $L12; $L45: .loc 1 1119 10 or.b32 %r243,%r243,32; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1120 4 bra $L12; $L37: .loc 1 1178 9 ld.u32 %r541,[%r412]; st.u8 [%frame+128],%r541; .loc 1 1181 9 mov.u32 %r542,0; st.u8 [%frame+218],%r542; .loc 1 1178 11 add.u64 %r412,%r412,4; .loc 1 1182 4 mov.u32 %r161,1; .loc 1 1179 10 mov.u32 %r251,%r161; .loc 1 1162 7 add.u64 %r242,%frame,128; .loc 1 1182 4 bra $L60; $L26: setp.eq.u32 %r543,%r320,0; @ %r543 bra $L61; cvt.u32.u32 %r544,%r321; st.u8 [%frame+218],%r544; $L61: .loc 1 1184 10 or.b32 %r243,%r243,16; $L50: .loc 1 1188 13 and.b32 %r545,%r243,32; setp.eq.u32 %r546,%r545,0; @ %r546 bra $L62; add.u64 %r324,%r412,7; and.b64 %r39,%r324,-8; add.u64 %r412,%r39,8; ld.u64 %r53,[%r39]; mov.u64 %r249,%r53; bra $L63; $L62: and.b32 %r547,%r243,16; setp.eq.u32 %r548,%r547,0; @ %r548 bra $L64; add.u64 %r293,%r412,7; and.b64 %r326,%r293,-8; add.u64 %r412,%r326,8; ld.u64 %r53,[%r326]; mov.u64 %r249,%r53; bra $L63; $L64: .loc 1 1007 10 ld.u32 %r389,[%r412]; add.u64 %r412,%r412,4; .loc 1 1188 13 and.b32 %r549,%r243,64; setp.eq.u32 %r550,%r549,0; @ %r550 bra $L65; cvt.u16.u32 %r551,%r389; cvt.s64.s16 %r249,%r551; .loc 1 1190 8 mov.u64 %r53,%r249; bra $L63; $L65: .loc 1 1188 13 cvt.s64.s32 %r249,%r389; .loc 1 1190 8 mov.u64 %r53,%r249; $L63: .loc 1 1190 7 setp.ge.s64 %r554,%r53,0; @ %r554 bra $L66; .loc 1 1196 12 neg.s64 %r249,%r249; mov.u32 %r258,45; .loc 1 1199 9 mov.u32 %r250,1; bra $L67; $L32: setp.eq.u32 %r555,%r320,0; @ %r555 bra $L68; cvt.u32.u32 %r556,%r321; st.u8 [%frame+218],%r556; $L68: .loc 1 1188 13 add.u64 %r557,%r412,7; and.b64 %r395,%r557,-8; add.u64 %r412,%r395,8; .loc 1 1214 25 ld.f64 %r28,[%r395]; .loc 1 1225 8 abs.f64 %r560,%r28; setp.leu.f64 %r561,%r560,0d7fefffffffffffff; @ %r561 bra $L71; .loc 1 1226 8 setp.lt.f64 %r562,%r28,0d0000000000000000; @ %r562 bra $L72; .loc 1 964 8 ld.s8 %r375,[%frame+218]; bra $L73; $L71: .loc 1 1236 7 setp.nan.f64 %r563,%r28,%r28; @ ! %r563 bra $L369; bra $L74; $L72: .loc 1 1227 11 mov.u32 %r564,45; st.u8 [%frame+218],%r564; mov.u32 %r375,45; $L73: .loc 1 1228 8 setp.le.s32 %r565,%r241,71; @ %r565 bra $L246; .loc 1 1231 9 cvta.const.u64 %r242,$LC1; bra $L76; $L246: .loc 1 1229 9 cvta.const.u64 %r242,$LC0; $L76: .loc 1 1233 11 and.b32 %r244,%r243,-129; .loc 1 1234 5 mov.u32 %r161,3; .loc 1 1232 10 mov.u32 %r251,%r161; .loc 1 932 9 mov.u32 %r246,0; .loc 1 937 8 mov.u32 %r248,%r246; .loc 1 1234 5 bra $L77; $L74: .loc 1 1237 9 mov.b64 %r566,%r28; shr.u64 %r567,%r566,63; cvt.u32.u64 %r569,%r567; .loc 1 1237 8 setp.ne.u32 %r570,%r569,0; @ %r570 bra $L78; .loc 1 964 8 ld.s8 %r375,[%frame+218]; bra $L79; $L78: .loc 1 1238 11 mov.u32 %r571,45; st.u8 [%frame+218],%r571; mov.u32 %r375,45; $L79: .loc 1 1239 8 setp.le.s32 %r572,%r241,71; @ %r572 bra $L247; .loc 1 1242 9 cvta.const.u64 %r242,$LC3; bra $L80; $L247: .loc 1 1240 9 cvta.const.u64 %r242,$LC2; $L80: .loc 1 1244 11 and.b32 %r244,%r243,-129; .loc 1 1245 5 mov.u32 %r161,3; .loc 1 1243 10 mov.u32 %r251,%r161; .loc 1 932 9 mov.u32 %r246,0; .loc 1 937 8 mov.u32 %r248,%r246; .loc 1 1245 5 bra $L77; $L369: .loc 1 1304 32 and.b32 %r392,%r241,-33; .loc 1 1302 7 setp.eq.u32 %r573,%r246,-1; @ %r573 bra $L248; .loc 1 1304 40 set.u32.eq.u32 %r575,%r246,0; neg.s32 %r576,%r575; mov.u32 %r574,%r576; .loc 1 1304 32 set.u32.eq.u32 %r578,%r392,71; neg.s32 %r579,%r578; mov.u32 %r577,%r579; .loc 1 1304 40 cvt.u16.u8 %r1309,%r574; mov.u16 %r581,%r1309; cvt.u16.u8 %r1309,%r577; mov.u16 %r582,%r1309; and.b16 %r580,%r581,%r582; cvt.u32.u16 %r583,%r580; cvt.u16.u8 %r584,%r583; setp.ne.u16 %r585,%r584,0; @ %r585 bra $L82; bra $L81; $L248: .loc 1 1303 10 mov.u32 %r246,6; $L81: .loc 1 1308 10 or.b32 %r244,%r243,256; .loc 1 1807 6 mov.b64 %r586,%r28; shr.u64 %r587,%r586,32; cvt.u32.u64 %r588,%r587; .loc 1 1807 5 setp.ge.s32 %r589,%r588,0; @ %r589 bra $L249; bra $L243; $L262: .loc 1 1305 10 mov.u32 %r246,1; $L243: .loc 1 1808 9 neg.f64 %r301,%r28; .loc 1 1809 9 mov.u32 %r322,45; bra $L83; $L249: mov.f64 %r301,%r28; .loc 1 1811 9 mov.u32 %r322,0; $L83: .loc 1 1860 5 setp.eq.u32 %r590,%r392,70; @ %r590 bra $L84; .loc 1 1867 6 setp.ne.u32 %r591,%r392,69; @ %r591 bra $L85; .loc 1 1868 11 add.u32 %r300,%r246,1; .loc 1 1873 11 mov.u32 %r594,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r301; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r594; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r602,[%value_in]; } mov.u64 %r242,%r602; setp.eq.u32 %r1266,1,1; bra $L86; $L381: .loc 1 1880 10 ld.u32 %r367,[%frame+212]; bra $L87; $L235: .loc 1 1879 23 mov.u32 %r603,1; sub.u32 %r367,%r603,%r246; .loc 1 1879 12 st.u32 [%frame+212],%r367; $L87: .loc 1 1880 10 cvt.s64.s32 %r604,%r367; .loc 1 1880 7 add.u64 %r605,%r604,%r273; add.u64 %r304,%r1199,%r605; setp.eq.u32 %r1266,1,1; $L237: .loc 1 1882 6 setp.eq.f64 %r606,%r301,0d0000000000000000; @ %r606 bra $L250; .loc 1 1884 14 ld.u64 %r219,[%frame+192]; setp.ge.u64 %r607,%r219,%r304; @ %r607 bra $L88; .loc 1 1885 11 mov.u32 %r609,48; $L89: .loc 1 1885 8 add.u64 %r608,%r219,1; st.u64 [%frame+192],%r608; .loc 1 1885 11 st.u8 [%r219],%r609; .loc 1 1884 14 ld.u64 %r219,[%frame+192]; setp.gt.u64 %r610,%r304,%r219; @ %r610 bra $L89; bra $L88; $L382: .loc 1 1887 16 ld.u64 %r611,[%frame+192]; sub.u64 %r306,%r611,%r242; .loc 1 1887 10 cvt.u32.u64 %r1264,%r306; mov.u32 %r62,%r1264; .loc 1 1314 14 ld.u32 %r248,[%frame+212]; bra $L90; $L250: mov.u64 %r219,%r304; $L88: .loc 1 1887 16 sub.u64 %r306,%r219,%r242; .loc 1 1887 10 cvt.u32.u64 %r62,%r306; mov.u32 %r1264,%r62; .loc 1 1314 14 ld.u32 %r248,[%frame+212]; .loc 1 1313 7 @ %r1266 bra $L91; $L90: .loc 1 1314 8 set.u32.lt.s32 %r614,%r248,-3; neg.s32 %r615,%r614; mov.u32 %r613,%r615; .loc 1 1314 20 set.u32.lt.s32 %r617,%r246,%r248; neg.s32 %r618,%r617; mov.u32 %r616,%r618; cvt.u16.u8 %r1309,%r613; mov.u16 %r620,%r1309; cvt.u16.u8 %r1309,%r616; mov.u16 %r621,%r1309; or.b16 %r619,%r620,%r621; cvt.u32.u16 %r622,%r619; cvt.u16.u8 %r623,%r622; setp.eq.u16 %r624,%r623,0; @ %r624 bra $L92; .loc 1 1315 9 add.u32 %r241,%r241,-2; bra $L93; $L91: .loc 1 1323 7 setp.eq.u32 %r625,%r241,102; @ %r625 bra $L94; $L93: .loc 1 1324 5 add.u32 %r61,%r248,-1; st.u32 [%frame+212],%r61; .loc 1 1903 7 st.u8 [%frame+200],%r241; .loc 1 1904 5 setp.ge.s32 %r626,%r61,0; @ %r626 bra $L251; .loc 1 1905 7 mov.u32 %r627,1; sub.u32 %r61,%r627,%r248; .loc 1 1906 8 mov.u32 %r270,45; bra $L95; $L251: .loc 1 1909 8 mov.u32 %r270,43; $L95: cvt.u32.u32 %r628,%r270; st.u8 [%frame+201],%r628; .loc 1 1911 5 setp.le.s32 %r629,%r61,9; @ %r629 bra $L96; .loc 1 1910 4 mov.u64 %r311,%r1296; $L97: mov.u64 %r350,%r311; .loc 1 1913 9 add.u64 %r311,%r350,-1; .loc 1 1913 11 rem.s32 %r631,%r61,10; mov.u32 %r632,%r631; cvt.u16.u8 %r1309,%r632; mov.u16 %r634,%r1309; add.u16 %r633,%r634,48; st.u8 [%r350+-1],%r633; mov.u32 %r289,%r61; .loc 1 1914 17 div.s32 %r61,%r61,10; .loc 1 1914 24 setp.gt.s32 %r637,%r289,99; @ %r637 bra $L97; .loc 1 1915 8 add.u64 %r224,%r350,-2; .loc 1 1915 10 mov.u32 %r638,%r61; cvt.u16.u8 %r1309,%r638; mov.u16 %r640,%r1309; add.u16 %r639,%r640,48; cvt.u32.u16 %r641,%r639; cvt.s32.s8 %r369,%r641; .loc 1 1915 8 st.u8 [%r311+-1],%r641; .loc 1 1916 12 setp.ge.u64 %r645,%r224,%r1296; @ %r645 bra $L252; mov.u64 %r342,%r1297; $L100: .loc 1 1916 43 add.u64 %r224,%r224,1; .loc 1 1916 39 cvt.u32.u32 %r647,%r369; st.u8 [%r342],%r647; .loc 1 1916 12 add.u64 %r342,%r342,1; setp.ne.u64 %r650,%r224,%r1296; @ %r650 bra $L99; .loc 1 1916 36 sub.u64 %r656,%r1298,%r350; add.u64 %r657,%r1297,%r656; .loc 1 1923 12 sub.u64 %r659,%r657,%r1292; cvt.u32.u64 %r247,%r659; bra $L98; $L99: .loc 1 1916 41 ld.s8 %r369,[%r224]; bra $L100; $L96: .loc 1 1920 9 mov.u32 %r660,48; st.u8 [%frame+202],%r660; .loc 1 1921 10 mov.u32 %r661,%r61; cvt.u16.u8 %r1309,%r661; mov.u16 %r663,%r1309; add.u16 %r662,%r663,48; st.u8 [%frame+203],%r662; .loc 1 1921 8 mov.u32 %r247,4; bra $L98; $L252: .loc 1 1916 12 mov.u32 %r247,2; $L98: .loc 1 1326 10 add.u32 %r251,%r247,%r1264; .loc 1 1327 8 setp.gt.s32 %r664,%r1264,1; @ %r664 bra $L101; and.b32 %r248,%r243,1; .loc 1 1327 18 setp.ne.u32 %r665,%r248,0; @ %r665 bra $L101; .loc 1 1673 10 max.s32 %r161,%r251,0; bra $L102; $L101: .loc 1 1328 11 add.u32 %r251,%r1295,%r251; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 937 8 mov.u32 %r248,0; bra $L102; $L94: and.b32 %r667,%r243,1; or.b32 %r391,%r667,%r246; .loc 1 1334 9 setp.gt.s32 %r668,%r248,0; @ %r668 bra $L103; bra $L370; $L92: .loc 1 1342 15 setp.le.s32 %r669,%r1264,%r248; @ %r669 bra $L105; bra $L371; $L103: .loc 1 1336 16 setp.eq.u32 %r670,%r391,0; @ %r670 bra $L253; .loc 1 1337 13 vadd.u32.u32.u32.add %r251,%r246,%r248,%r1295; .loc 1 1673 10 max.s32 %r161,%r251,0; bra $L102; $L370: .loc 1 1339 20 setp.eq.u32 %r673,%r391,0; @ %r673 bra $L254; .loc 1 1340 21 add.u32 %r251,%r1299,%r246; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1339 12 bra $L102; $L105: .loc 1 1344 9 and.b32 %r676,%r243,1; setp.ne.u32 %r677,%r676,0; @ %r677 bra $L108; .loc 1 1673 10 max.s32 %r161,%r248,0; mov.u32 %r251,%r248; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L108: .loc 1 1345 12 add.u32 %r251,%r1295,%r248; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L371: .loc 1 1347 18 add.u32 %r251,%r1295,%r1264; .loc 1 1348 9 setp.le.s32 %r681,%r248,0; @ %r681 bra $L109; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L109: .loc 1 1349 17 mov.u32 %r683,1; .loc 1 1349 12 vsub.u32.u32.u32.add %r251,%r683,%r248,%r251; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L253: mov.u32 %r161,%r248; .loc 1 1314 14 mov.u32 %r251,%r248; bra $L102; $L254: mov.u32 %r161,1; .loc 1 1339 12 mov.u32 %r251,%r161; $L102: .loc 1 1372 7 setp.eq.u32 %r684,%r322,0; @ %r684 bra $L110; .loc 1 1373 10 mov.u32 %r685,45; st.u8 [%frame+218],%r685; .loc 1 932 9 mov.u32 %r246,0; bra $L111; $L34: setp.eq.u32 %r686,%r320,0; @ %r686 bra $L112; cvt.u32.u32 %r687,%r321; st.u8 [%frame+218],%r687; $L112: .loc 1 1188 13 add.u64 %r688,%r412,7; and.b64 %r401,%r688,-8; ld.u64 %r402,[%r401]; add.u64 %r412,%r401,8; .loc 1 1387 14 and.b32 %r689,%r243,32; .loc 1 1387 7 setp.eq.u32 %r690,%r689,0; @ %r690 bra $L113; .loc 1 1388 34 cvt.s64.s32 %r691,%r408; st.u64 [%r402],%r691; bra $L5; $L113: .loc 1 1391 14 and.b32 %r692,%r243,16; .loc 1 1391 7 setp.eq.u32 %r693,%r692,0; @ %r693 bra $L115; .loc 1 1392 34 cvt.s64.s32 %r694,%r408; st.u64 [%r402],%r694; bra $L5; $L115: .loc 1 1393 19 and.b32 %r695,%r243,64; .loc 1 1393 12 setp.eq.u32 %r696,%r695,0; @ %r696 bra $L116; .loc 1 1394 35 st.u16 [%r402],%r408; bra $L5; $L116: .loc 1 1400 33 st.u32 [%r402],%r408; bra $L5; $L33: .loc 1 1403 10 or.b32 %r243,%r243,16; $L46: .loc 1 1406 13 and.b32 %r697,%r243,32; setp.eq.u32 %r698,%r697,0; @ %r698 bra $L117; add.u64 %r275,%r412,7; and.b64 %r335,%r275,-8; add.u64 %r412,%r335,8; ld.u64 %r249,[%r335]; .loc 1 1407 9 mov.u32 %r250,0; bra $L118; $L117: .loc 1 1406 13 and.b32 %r699,%r243,16; setp.eq.u32 %r700,%r699,0; @ %r700 bra $L119; add.u64 %r328,%r412,7; and.b64 %r327,%r328,-8; add.u64 %r412,%r327,8; ld.u64 %r249,[%r327]; .loc 1 1407 9 mov.u32 %r250,%r697; bra $L118; $L119: .loc 1 1007 10 ld.u32 %r396,[%r412]; add.u64 %r412,%r412,4; .loc 1 1406 13 and.b32 %r701,%r243,64; setp.eq.u32 %r702,%r701,0; @ %r702 bra $L120; cvt.u16.u32 %r703,%r396; cvt.u64.u16 %r249,%r703; .loc 1 1407 9 mov.u32 %r250,%r699; bra $L118; $L120: .loc 1 1406 13 cvt.u64.u32 %r249,%r396; .loc 1 1407 9 mov.u32 %r250,%r701; bra $L118; $L44: .loc 1 1421 25 add.u64 %r360,%r412,7; and.b64 %r356,%r360,-8; add.u64 %r412,%r356,8; ld.u64 %r249,[%r356]; .loc 1 1424 10 or.b32 %r243,%r243,2; .loc 1 1425 10 mov.u32 %r704,48; st.u8 [%frame+216],%r704; .loc 1 1426 10 mov.u32 %r705,120; st.u8 [%frame+217],%r705; .loc 1 1423 10 cvta.const.u64 %r252,$LC5; .loc 1 1422 9 mov.u32 %r250,2; .loc 1 1426 15 mov.u32 %r241,120; .loc 1 1427 4 bra $L118; $L42: .loc 1 1432 7 add.u64 %r358,%r412,7; and.b64 %r359,%r358,-8; add.u64 %r412,%r359,8; ld.u64 %r242,[%r359]; .loc 1 1436 9 mov.u32 %r706,0; st.u8 [%frame+218],%r706; .loc 1 1442 7 setp.ne.u64 %r707,%r242,0; @ %r707 bra $L121; .loc 1 1444 39 min.u32 %r251,%r246,6; mov.u32 %r161,%r251; .loc 1 1443 8 cvta.const.u64 %r242,$LC6; bra $L60; $L121: .loc 1 1511 7 setp.eq.u32 %r708,%r246,-1; @ %r708 bra $L122; .loc 1 1517 15 cvt.s64.s32 %r712,%r246; mov.u32 %r710,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r242; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r710; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r712; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r713,[%value_in]; } .loc 1 1519 8 setp.ne.u64 %r714,%r713,0; @ %r714 bra $L123; .loc 1 1674 7 ld.s8 %r375,[%frame+218]; mov.u32 %r161,%r246; mov.u32 %r251,%r246; mov.u32 %r244,%r243; .loc 1 932 9 mov.u32 %r246,%r710; .loc 1 937 8 mov.u32 %r248,%r246; bra $L77; $L123: .loc 1 1520 15 sub.u64 %r715,%r713,%r242; .loc 1 1520 11 cvt.u32.u64 %r251,%r715; .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 1673 10 max.s32 %r161,%r251,0; mov.u32 %r244,%r243; .loc 1 932 9 mov.u32 %r246,%r710; .loc 1 937 8 mov.u32 %r248,%r246; bra $L77; $L122: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r242; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r717,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r251,%r717; .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 1673 10 max.s32 %r161,%r251,0; mov.u32 %r244,%r243; .loc 1 932 9 mov.u32 %r246,0; .loc 1 937 8 mov.u32 %r248,%r246; bra $L77; $L14: .loc 1 1528 10 or.b32 %r243,%r243,16; $L47: .loc 1 1531 13 and.b32 %r718,%r243,32; setp.eq.u32 %r719,%r718,0; @ %r719 bra $L124; add.u64 %r348,%r412,7; and.b64 %r73,%r348,-8; add.u64 %r412,%r73,8; ld.u64 %r249,[%r73]; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L124: .loc 1 1531 13 and.b32 %r720,%r243,16; setp.eq.u32 %r721,%r720,0; @ %r721 bra $L125; add.u64 %r330,%r412,7; and.b64 %r331,%r330,-8; add.u64 %r412,%r331,8; ld.u64 %r249,[%r331]; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L125: .loc 1 1007 10 ld.u32 %r397,[%r412]; add.u64 %r412,%r412,4; .loc 1 1531 13 and.b32 %r722,%r243,64; setp.eq.u32 %r723,%r722,0; @ %r723 bra $L126; cvt.u16.u32 %r724,%r397; cvt.u64.u16 %r249,%r724; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L126: .loc 1 1531 13 cvt.u64.u32 %r249,%r397; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L39: setp.eq.u32 %r725,%r320,0; @ %r725 bra $L127; cvt.u32.u32 %r726,%r321; st.u8 [%frame+218],%r726; $L127: .loc 1 1535 10 cvta.const.u64 %r252,$LC4; $L52: .loc 1 1539 17 and.b32 %r727,%r243,32; setp.eq.u32 %r728,%r727,0; @ %r728 bra $L128; add.u64 %r354,%r412,7; and.b64 %r337,%r354,-8; add.u64 %r412,%r337,8; ld.u64 %r249,[%r337]; bra $L129; $L128: and.b32 %r729,%r243,16; setp.eq.u32 %r730,%r729,0; @ %r730 bra $L130; add.u64 %r357,%r412,7; and.b64 %r211,%r357,-8; add.u64 %r412,%r211,8; ld.u64 %r249,[%r211]; bra $L129; $L130: .loc 1 1007 10 ld.u32 %r398,[%r412]; add.u64 %r412,%r412,4; .loc 1 1539 17 and.b32 %r731,%r243,64; setp.eq.u32 %r732,%r731,0; @ %r732 bra $L131; cvt.u16.u32 %r733,%r398; cvt.u64.u16 %r249,%r733; bra $L129; $L131: cvt.u64.u32 %r249,%r398; $L129: .loc 1 1542 14 and.b32 %r734,%r243,1; .loc 1 1542 7 setp.eq.u32 %r735,%r734,0; @ %r735 bra $L255; .loc 1 1542 20 setp.eq.u64 %r736,%r249,0; @ %r736 bra $L256; .loc 1 1543 11 mov.u32 %r737,48; st.u8 [%frame+216],%r737; .loc 1 1544 11 st.u8 [%frame+217],%r241; .loc 1 1545 11 or.b32 %r243,%r243,2; .loc 1 1540 9 mov.u32 %r250,2; bra $L118; $L255: mov.u32 %r250,2; bra $L118; $L256: mov.u32 %r250,2; $L118: .loc 1 1552 1 mov.u32 %r258,0; $L67: .loc 1 1197 10 cvt.u32.u32 %r738,%r258; st.u8 [%frame+218],%r738; .loc 1 1558 14 setp.eq.u32 %r739,%r246,-1; @ %r739 bra $L132; .loc 1 1559 11 and.b32 %r244,%r243,-129; .loc 1 1567 15 set.u32.ne.u64 %r741,%r249,0; neg.s32 %r742,%r741; mov.u32 %r740,%r742; .loc 1 1567 28 set.u32.ne.u32 %r744,%r246,0; neg.s32 %r745,%r744; mov.u32 %r743,%r745; .loc 1 1567 20 cvt.u16.u8 %r1309,%r740; mov.u16 %r747,%r1309; cvt.u16.u8 %r1309,%r743; mov.u16 %r748,%r1309; or.b16 %r746,%r747,%r748; cvt.u32.u16 %r749,%r746; .loc 1 1567 7 cvt.u16.u8 %r750,%r749; setp.eq.u16 %r751,%r750,0; @ %r751 bra $L133; .loc 1 1559 11 mov.u32 %r243,%r244; $L132: setp.eq.u32 %r752,%r250,1; @ %r752 bra $L134; setp.eq.u32 %r753,%r250,2; @ %r753 bra $L257; mov.u64 %r242,%r1291; $L136: mov.u64 %r325,%r242; .loc 1 1576 13 add.u64 %r242,%r242,-1; .loc 1 1576 15 cvt.u32.u64 %r754,%r249; cvt.u16.u8 %r1309,%r754; mov.u16 %r756,%r1309; and.b16 %r755,%r756,7; cvt.u32.u16 %r757,%r755; cvt.u16.u8 %r1309,%r757; mov.u16 %r759,%r1309; add.u16 %r758,%r759,48; cvt.u32.u16 %r760,%r758; cvt.s32.s8 %r114,%r760; .loc 1 1576 13 st.u8 [%r242],%r760; .loc 1 1577 14 shr.u64 %r249,%r249,3; .loc 1 1578 15 setp.ne.u64 %r762,%r249,0; @ %r762 bra $L136; .loc 1 1580 22 cvt.u16.u32 %r764,%r114; set.u32.ne.u16 %r765,%r764,48; neg.s32 %r766,%r765; mov.u32 %r763,%r766; .loc 1 1580 9 mov.u32 %r767,%r243; cvt.u16.u8 %r1309,%r767; mov.u16 %r769,%r1309; and.b16 %r768,%r769,1; cvt.u32.u16 %r770,%r768; .loc 1 1580 22 cvt.u16.u8 %r1309,%r763; mov.u16 %r772,%r1309; cvt.u16.u8 %r1309,%r770; mov.u16 %r773,%r1309; and.b16 %r771,%r772,%r773; cvt.u32.u16 %r774,%r771; cvt.u16.u8 %r775,%r774; setp.ne.u16 %r776,%r775,0; @ %r776 bra $L137; .loc 1 1644 21 sub.u64 %r779,%r1291,%r242; .loc 1 1644 9 cvt.u32.u64 %r251,%r779; mov.u32 %r244,%r243; bra $L138; $L137: .loc 1 1581 13 add.u64 %r281,%r325,-2; mov.u32 %r780,48; st.u8 [%r242+-1],%r780; .loc 1 1644 21 sub.u64 %r783,%r1291,%r281; .loc 1 1644 9 cvt.u32.u64 %r251,%r783; mov.u32 %r244,%r243; .loc 1 1581 13 mov.u64 %r242,%r281; bra $L138; $L263: .loc 1 1559 11 mov.u32 %r243,%r244; $L134: .loc 1 1586 9 setp.gt.u64 %r784,%r249,9; @ %r784 bra $L258; .loc 1 1587 15 cvt.u32.u64 %r785,%r249; cvt.u16.u8 %r1309,%r785; mov.u16 %r787,%r1309; add.u16 %r786,%r787,48; st.u8 [%frame+167],%r786; .loc 1 1588 7 mov.u32 %r244,%r243; mov.u32 %r251,1; .loc 1 1587 13 add.u64 %r242,%frame,167; .loc 1 1588 7 bra $L138; $L258: .loc 1 1566 7 mov.u64 %r242,%r1291; $L139: .loc 1 1594 14 add.u64 %r242,%r242,-1; .loc 1 1594 16 rem.u64 %r789,%r249,10; cvt.u32.u64 %r790,%r789; cvt.u16.u8 %r1309,%r790; mov.u16 %r792,%r1309; add.u16 %r791,%r792,48; st.u8 [%r242],%r791; mov.u64 %r239,%r249; .loc 1 1615 15 div.u64 %r249,%r249,10; .loc 1 1616 22 setp.gt.u64 %r795,%r239,9; @ %r795 bra $L139; .loc 1 1644 21 sub.u64 %r798,%r1291,%r242; .loc 1 1644 9 cvt.u32.u64 %r251,%r798; mov.u32 %r244,%r243; bra $L138; $L257: mov.u64 %r242,%r1291; $L135: .loc 1 1621 13 add.u64 %r242,%r242,-1; .loc 1 1621 28 and.b64 %r799,%r249,15; .loc 1 1621 20 add.u64 %r800,%r252,%r799; .loc 1 1621 13 ld.u8 %r801,[%r800]; st.u8 [%r242],%r801; .loc 1 1622 14 shr.u64 %r249,%r249,4; .loc 1 1623 15 setp.ne.u64 %r802,%r249,0; @ %r802 bra $L135; .loc 1 1644 21 sub.u64 %r805,%r1291,%r242; .loc 1 1644 9 cvt.u32.u64 %r251,%r805; mov.u32 %r244,%r243; bra $L138; $L133: .loc 1 1641 32 setp.ne.u32 %r806,%r250,0; @ %r806 bra $L259; .loc 1 1641 55 and.b32 %r251,%r243,1; .loc 1 1641 45 setp.eq.u32 %r807,%r251,0; @ %r807 bra $L260; .loc 1 1642 32 mov.u32 %r808,48; st.u8 [%frame+167],%r808; mov.u32 %r246,%r250; add.u64 %r242,%frame,167; bra $L138; $L259: mov.u32 %r246,0; mov.u32 %r251,%r246; .loc 1 1566 7 add.u64 %r242,%frame,168; bra $L138; $L260: mov.u32 %r246,%r250; add.u64 %r242,%frame,168; $L138: .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 1673 10 max.s32 %r161,%r246,%r251; .loc 1 937 8 mov.u32 %r248,0; bra $L77; $L368: setp.eq.u32 %r809,%r320,0; @ %r809 bra $L140; $L239: cvt.u32.u32 %r810,%r321; st.u8 [%frame+218],%r810; $L140: .loc 1 1648 7 setp.eq.u32 %r811,%r241,0; @ %r811 bra $L11; $L240: .loc 1 1652 8 st.u8 [%frame+128],%r241; .loc 1 1654 9 mov.u32 %r812,0; st.u8 [%frame+218],%r812; .loc 1 1655 4 mov.u32 %r161,1; .loc 1 1653 9 mov.u32 %r251,%r161; .loc 1 1651 7 add.u64 %r242,%frame,128; .loc 1 1655 4 bra $L60; $L110: .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 932 9 mov.u32 %r246,%r322; $L77: .loc 1 1674 6 setp.eq.u32 %r813,%r375,0; @ %r813 bra $L141; $L111: .loc 1 1675 10 add.u32 %r161,%r161,1; $L141: .loc 1 1676 13 and.b32 %r126,%r244,2; .loc 1 1676 6 setp.eq.u32 %r1259,%r126,0; @ %r1259 bra $L142; .loc 1 1677 10 add.u32 %r161,%r161,2; $L142: .loc 1 1680 14 and.b32 %r127,%r244,132; .loc 1 1681 4 ld.u64 %r377,[%frame+184]; .loc 1 1680 6 setp.ne.u32 %r815,%r127,0; @ %r815 bra $L143; .loc 1 1681 4 sub.u32 %r136,%r245,%r161; setp.le.s32 %r816,%r136,0; @ %r816 bra $L143; ld.u32 %r376,[%frame+176]; setp.le.s32 %r817,%r136,16; @ ! %r817 bra $L372; cvta.const.u64 %r1265,blanks$1; bra $L144; $L372: cvta.const.u64 %r1265,blanks$1; $L147: st.u64 [%r253],%r1265; mov.u64 %r819,16; st.u64 [%r253+8],%r819; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r376,%r376,1; st.u32 [%frame+176],%r376; setp.gt.s32 %r820,%r376,7; @ %r820 bra $L145; add.u64 %r253,%r253,16; bra $L146; $L145: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r825,[%value_in]; } setp.ne.u32 %r826,%r825,0; @ %r826 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r376,[%frame+176]; mov.u64 %r253,%frame; $L146: add.u32 %r136,%r136,-16; setp.gt.s32 %r827,%r136,16; @ %r827 bra $L147; $L144: st.u64 [%r253],%r1265; cvt.s64.s32 %r129,%r136; st.u64 [%r253+8],%r129; add.u64 %r377,%r377,%r129; st.u64 [%frame+184],%r377; add.u32 %r131,%r376,1; st.u32 [%frame+176],%r131; setp.gt.s32 %r829,%r131,7; @ %r829 bra $L148; add.u64 %r253,%r253,16; bra $L143; $L148: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r834,[%value_in]; } setp.ne.u32 %r835,%r834,0; @ %r835 bra $L10; .loc 1 1685 4 ld.u64 %r377,[%frame+184]; .loc 1 1681 4 mov.u64 %r253,%frame; $L143: .loc 1 1684 6 ld.u8 %r837,[%frame+218]; cvt.s16.s8 %r836,%r837; setp.eq.u16 %r838,%r836,0; @ %r838 bra $L149; .loc 1 1685 4 st.u64 [%r253],%r1294; mov.u64 %r840,1; st.u64 [%r253+8],%r840; add.u64 %r377,%r377,1; st.u64 [%frame+184],%r377; ld.u32 %r841,[%frame+176]; add.u32 %r135,%r841,1; st.u32 [%frame+176],%r135; setp.gt.s32 %r842,%r135,7; @ %r842 bra $L150; add.u64 %r253,%r253,16; bra $L149; $L150: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r847,[%value_in]; } setp.ne.u32 %r848,%r847,0; @ %r848 bra $L10; .loc 1 1687 4 ld.u64 %r377,[%frame+184]; .loc 1 1685 4 mov.u64 %r253,%frame; $L149: .loc 1 1686 6 @ %r1259 bra $L151; .loc 1 1687 4 st.u64 [%r253],%r1293; mov.u64 %r851,2; st.u64 [%r253+8],%r851; add.u64 %r377,%r377,2; st.u64 [%frame+184],%r377; ld.u32 %r852,[%frame+176]; add.u32 %r139,%r852,1; st.u32 [%frame+176],%r139; setp.gt.s32 %r853,%r139,7; @ %r853 bra $L152; add.u64 %r253,%r253,16; bra $L151; $L152: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r858,[%value_in]; } setp.ne.u32 %r859,%r858,0; @ %r859 bra $L10; .loc 1 1691 4 ld.u64 %r377,[%frame+184]; .loc 1 1687 4 mov.u64 %r253,%frame; $L151: .loc 1 1690 6 setp.ne.u32 %r860,%r127,128; @ %r860 bra $L153; .loc 1 1691 4 sub.u32 %r178,%r245,%r161; setp.le.s32 %r861,%r178,0; @ %r861 bra $L153; ld.u32 %r378,[%frame+176]; setp.le.s32 %r862,%r178,16; @ ! %r862 bra $L373; cvta.const.u64 %r1267,zeroes$0; bra $L154; $L373: cvta.const.u64 %r1267,zeroes$0; $L157: st.u64 [%r253],%r1267; mov.u64 %r864,16; st.u64 [%r253+8],%r864; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r378,%r378,1; st.u32 [%frame+176],%r378; setp.gt.s32 %r865,%r378,7; @ %r865 bra $L155; add.u64 %r253,%r253,16; bra $L156; $L155: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r870,[%value_in]; } setp.ne.u32 %r871,%r870,0; @ %r871 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r378,[%frame+176]; mov.u64 %r253,%frame; $L156: add.u32 %r178,%r178,-16; setp.gt.s32 %r872,%r178,16; @ %r872 bra $L157; $L154: st.u64 [%r253],%r1267; cvt.s64.s32 %r143,%r178; st.u64 [%r253+8],%r143; add.u64 %r377,%r377,%r143; st.u64 [%frame+184],%r377; add.u32 %r145,%r378,1; st.u32 [%frame+176],%r145; setp.gt.s32 %r874,%r145,7; @ %r874 bra $L158; add.u64 %r253,%r253,16; bra $L153; $L158: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r879,[%value_in]; } setp.ne.u32 %r880,%r879,0; @ %r880 bra $L10; .loc 1 1694 3 ld.u64 %r377,[%frame+184]; .loc 1 1691 4 mov.u64 %r253,%frame; $L153: .loc 1 1694 3 sub.u32 %r274,%r246,%r251; setp.le.s32 %r881,%r274,0; @ %r881 bra $L159; ld.u32 %r379,[%frame+176]; setp.le.s32 %r882,%r274,16; @ ! %r882 bra $L374; cvta.const.u64 %r1267,zeroes$0; bra $L160; $L374: cvta.const.u64 %r1267,zeroes$0; $L163: st.u64 [%r253],%r1267; mov.u64 %r884,16; st.u64 [%r253+8],%r884; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r379,%r379,1; st.u32 [%frame+176],%r379; setp.gt.s32 %r885,%r379,7; @ %r885 bra $L161; add.u64 %r253,%r253,16; bra $L162; $L161: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r890,[%value_in]; } setp.ne.u32 %r891,%r890,0; @ %r891 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r253,%frame; $L162: add.u32 %r274,%r274,-16; setp.gt.s32 %r892,%r274,16; @ %r892 bra $L163; $L160: st.u64 [%r253],%r1267; cvt.s64.s32 %r149,%r274; st.u64 [%r253+8],%r149; add.u64 %r377,%r377,%r149; st.u64 [%frame+184],%r377; add.u32 %r150,%r379,1; st.u32 [%frame+176],%r150; setp.gt.s32 %r894,%r150,7; @ %r894 bra $L164; add.u64 %r253,%r253,16; bra $L159; $L164: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r899,[%value_in]; } setp.ne.u32 %r900,%r899,0; @ %r900 bra $L10; .loc 1 1699 4 ld.u64 %r377,[%frame+184]; .loc 1 1694 3 mov.u64 %r253,%frame; $L159: .loc 1 1698 14 and.b32 %r901,%r244,256; .loc 1 1698 6 setp.ne.u32 %r902,%r901,0; @ %r902 bra $L165; .loc 1 1699 4 st.u64 [%r253],%r242; cvt.s64.s32 %r153,%r251; st.u64 [%r253+8],%r153; add.u64 %r377,%r377,%r153; st.u64 [%frame+184],%r377; ld.u32 %r903,[%frame+176]; add.u32 %r155,%r903,1; st.u32 [%frame+176],%r155; setp.gt.s32 %r904,%r155,7; @ %r904 bra $L166; add.u64 %r253,%r253,16; bra $L167; $L166: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r909,[%value_in]; } setp.ne.u32 %r910,%r909,0; @ %r910 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1699 4 mov.u64 %r253,%frame; bra $L167; $L165: .loc 1 1701 7 setp.le.s32 %r911,%r241,101; @ %r911 bra $L168; .loc 1 1702 8 setp.neu.f64 %r912,%r28,0d0000000000000000; @ %r912 bra $L169; .loc 1 1704 6 cvta.const.u64 %r913,$LC7; st.u64 [%r253],%r913; mov.u64 %r914,1; st.u64 [%r253+8],%r914; add.u64 %r377,%r377,1; st.u64 [%frame+184],%r377; ld.u32 %r915,[%frame+176]; add.u32 %r158,%r915,1; st.u32 [%frame+176],%r158; setp.gt.s32 %r916,%r158,7; @ %r916 bra $L170; add.u64 %r253,%r253,16; bra $L171; $L170: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r921,[%value_in]; } setp.ne.u32 %r922,%r921,0; @ %r922 bra $L10; .loc 1 1706 7 ld.u64 %r377,[%frame+184]; .loc 1 1704 6 mov.u64 %r253,%frame; $L171: .loc 1 1705 9 ld.u32 %r923,[%frame+212]; setp.lt.s32 %r924,%r923,%r62; @ %r924 bra $L172; .loc 1 1705 31 and.b32 %r925,%r244,1; .loc 1 1705 22 setp.eq.u32 %r926,%r925,0; @ %r926 bra $L167; $L172: .loc 1 1706 7 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r377,%r377,%r425; st.u64 [%frame+184],%r377; ld.u32 %r927,[%frame+176]; add.u32 %r164,%r927,1; st.u32 [%frame+176],%r164; setp.gt.s32 %r928,%r164,7; @ %r928 bra $L173; add.u64 %r253,%r253,16; bra $L174; $L173: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r933,[%value_in]; } setp.ne.u32 %r934,%r933,0; @ %r934 bra $L10; .loc 1 1707 7 ld.u64 %r377,[%frame+184]; .loc 1 1706 7 mov.u64 %r253,%frame; $L174: .loc 1 1707 7 add.u32 %r271,%r62,-1; setp.le.s32 %r935,%r271,0; @ %r935 bra $L167; ld.u32 %r385,[%frame+176]; setp.le.s32 %r936,%r271,16; @ ! %r936 bra $L375; cvta.const.u64 %r1267,zeroes$0; bra $L175; $L375: cvta.const.u64 %r1267,zeroes$0; $L178: st.u64 [%r253],%r1267; mov.u64 %r938,16; st.u64 [%r253+8],%r938; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r939,%r385,7; @ %r939 bra $L176; add.u64 %r253,%r253,16; bra $L177; $L176: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r944,[%value_in]; } setp.ne.u32 %r945,%r944,0; @ %r945 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r253,%frame; $L177: add.u32 %r271,%r271,-16; setp.gt.s32 %r946,%r271,16; @ %r946 bra $L178; $L175: st.u64 [%r253],%r1267; cvt.s64.s32 %r168,%r271; st.u64 [%r253+8],%r168; add.u64 %r377,%r377,%r168; st.u64 [%frame+184],%r377; add.u32 %r170,%r385,1; st.u32 [%frame+176],%r170; setp.gt.s32 %r948,%r170,7; @ %r948 bra $L179; add.u64 %r253,%r253,16; bra $L167; $L179: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r953,[%value_in]; } setp.ne.u32 %r954,%r953,0; @ %r954 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1707 7 mov.u64 %r253,%frame; bra $L167; $L169: .loc 1 1709 21 ld.u32 %r172,[%frame+212]; .loc 1 1709 15 setp.gt.s32 %r955,%r172,0; @ %r955 bra $L180; .loc 1 1710 6 cvta.const.u64 %r956,$LC7; st.u64 [%r253],%r956; mov.u64 %r957,1; st.u64 [%r253+8],%r957; add.u64 %r377,%r377,1; st.u64 [%frame+184],%r377; ld.u32 %r958,[%frame+176]; add.u32 %r174,%r958,1; st.u32 [%frame+176],%r174; setp.gt.s32 %r959,%r174,7; @ %r959 bra $L181; add.u64 %r253,%r253,16; bra $L182; $L181: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r964,[%value_in]; } setp.ne.u32 %r965,%r964,0; @ %r965 bra $L10; .loc 1 1705 15 ld.u32 %r172,[%frame+212]; .loc 1 1706 7 ld.u64 %r377,[%frame+184]; .loc 1 1710 6 mov.u64 %r253,%frame; $L182: .loc 1 1711 15 or.b32 %r966,%r62,%r172; setp.ne.u32 %r967,%r966,0; @ %r967 bra $L183; .loc 1 1711 32 and.b32 %r968,%r244,1; .loc 1 1711 23 setp.ne.u32 %r969,%r968,0; @ %r969 bra $L184; bra $L167; $L183: .loc 1 1712 7 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r383,%r425,%r377; st.u64 [%frame+184],%r383; ld.u32 %r970,[%frame+176]; add.u32 %r384,%r970,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r971,%r384,7; @ %r971 bra $L185; add.u64 %r203,%r253,16; bra $L186; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r976,[%value_in]; } setp.ne.u32 %r977,%r976,0; @ %r977 bra $L10; .loc 1 1713 7 ld.u32 %r172,[%frame+212]; ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; .loc 1 1712 7 mov.u64 %r203,%frame; $L186: .loc 1 1713 7 setp.ge.s32 %r978,%r172,0; @ %r978 bra $L187; neg.s32 %r269,%r172; setp.ge.s32 %r979,%r172,-16; @ ! %r979 bra $L376; cvta.const.u64 %r1267,zeroes$0; bra $L188; $L376: cvta.const.u64 %r1267,zeroes$0; $L191: st.u64 [%r203],%r1267; mov.u64 %r981,16; st.u64 [%r203+8],%r981; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r982,%r384,7; @ %r982 bra $L189; add.u64 %r203,%r203,16; bra $L190; $L189: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r987,[%value_in]; } setp.ne.u32 %r988,%r987,0; @ %r988 bra $L10; ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; mov.u64 %r203,%frame; $L190: add.u32 %r269,%r269,-16; setp.gt.s32 %r989,%r269,16; @ %r989 bra $L191; $L188: st.u64 [%r203],%r1267; cvt.s64.s32 %r181,%r269; st.u64 [%r203+8],%r181; add.u64 %r383,%r383,%r181; st.u64 [%frame+184],%r383; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r991,%r384,7; @ %r991 bra $L192; add.u64 %r203,%r203,16; bra $L187; $L192: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r996,[%value_in]; } setp.ne.u32 %r997,%r996,0; @ %r997 bra $L10; .loc 1 1714 7 ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; .loc 1 1713 7 mov.u64 %r203,%frame; $L187: .loc 1 1714 7 st.u64 [%r203],%r242; cvt.s64.s32 %r183,%r62; st.u64 [%r203+8],%r183; add.u64 %r377,%r183,%r383; st.u64 [%frame+184],%r377; add.u32 %r184,%r384,1; st.u32 [%frame+176],%r184; setp.gt.s32 %r998,%r184,7; @ %r998 bra $L193; add.u64 %r253,%r203,16; bra $L167; $L193: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1003,[%value_in]; } setp.ne.u32 %r1004,%r1003,0; @ %r1004 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1714 7 mov.u64 %r253,%frame; bra $L167; $L180: min.s32 %r25,%r62,%r248; .loc 1 1718 6 setp.le.s32 %r1005,%r25,0; @ %r1005 bra $L194; st.u64 [%r253],%r242; cvt.s64.s32 %r186,%r25; st.u64 [%r253+8],%r186; add.u64 %r377,%r377,%r186; st.u64 [%frame+184],%r377; ld.u32 %r1006,[%frame+176]; add.u32 %r188,%r1006,1; st.u32 [%frame+176],%r188; setp.gt.s32 %r1007,%r188,7; @ %r1007 bra $L195; add.u64 %r253,%r253,16; bra $L194; $L195: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1012,[%value_in]; } setp.ne.u32 %r1013,%r1012,0; @ %r1013 bra $L10; ld.u64 %r377,[%frame+184]; mov.u64 %r253,%frame; $L194: max.s32 %r1014,%r25,0; sub.u32 %r294,%r248,%r1014; setp.le.s32 %r1015,%r294,0; @ %r1015 bra $L196; ld.u32 %r380,[%frame+176]; setp.le.s32 %r1016,%r294,16; @ ! %r1016 bra $L377; cvta.const.u64 %r1267,zeroes$0; bra $L197; $L377: cvta.const.u64 %r1267,zeroes$0; $L200: st.u64 [%r253],%r1267; mov.u64 %r1018,16; st.u64 [%r253+8],%r1018; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r380,%r380,1; st.u32 [%frame+176],%r380; setp.gt.s32 %r1019,%r380,7; @ %r1019 bra $L198; add.u64 %r253,%r253,16; bra $L199; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1024,[%value_in]; } setp.ne.u32 %r1025,%r1024,0; @ %r1025 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r380,[%frame+176]; mov.u64 %r253,%frame; $L199: add.u32 %r294,%r294,-16; setp.gt.s32 %r1026,%r294,16; @ %r1026 bra $L200; $L197: st.u64 [%r253],%r1267; cvt.s64.s32 %r193,%r294; st.u64 [%r253+8],%r193; add.u64 %r377,%r377,%r193; st.u64 [%frame+184],%r377; add.u32 %r194,%r380,1; st.u32 [%frame+176],%r194; setp.gt.s32 %r1028,%r194,7; @ %r1028 bra $L201; add.u64 %r253,%r253,16; bra $L196; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1033,[%value_in]; } setp.ne.u32 %r1034,%r1033,0; @ %r1034 bra $L10; .loc 1 1740 10 ld.u64 %r377,[%frame+184]; .loc 1 1718 6 mov.u64 %r253,%frame; $L196: .loc 1 1739 15 ld.u32 %r197,[%frame+212]; .loc 1 1739 9 setp.lt.s32 %r1035,%r197,%r62; @ %r1035 bra $L202; .loc 1 1739 31 and.b32 %r1036,%r244,1; .loc 1 1739 22 setp.eq.u32 %r1037,%r1036,0; @ %r1037 bra $L203; $L202: .loc 1 1740 10 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r377,%r377,%r425; st.u64 [%frame+184],%r377; ld.u32 %r1038,[%frame+176]; add.u32 %r200,%r1038,1; st.u32 [%frame+176],%r200; setp.gt.s32 %r1039,%r200,7; @ %r1039 bra $L204; add.u64 %r253,%r253,16; bra $L205; $L204: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1044,[%value_in]; } setp.ne.u32 %r1045,%r1044,0; @ %r1045 bra $L10; .loc 1 1741 6 ld.u32 %r197,[%frame+212]; ld.u64 %r377,[%frame+184]; .loc 1 1740 10 mov.u64 %r253,%frame; $L205: .loc 1 1741 6 sub.u32 %r202,%r62,%r197; sub.u32 %r1046,%r62,%r248; min.s32 %r24,%r1046,%r202; setp.le.s32 %r1047,%r24,0; @ %r1047 bra $L206; .loc 1 1720 9 cvt.s64.s32 %r1048,%r248; add.u64 %r1049,%r242,%r1048; .loc 1 1741 6 st.u64 [%r253],%r1049; cvt.s64.s32 %r204,%r24; st.u64 [%r253+8],%r204; add.u64 %r377,%r377,%r204; st.u64 [%frame+184],%r377; ld.u32 %r1050,[%frame+176]; add.u32 %r206,%r1050,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r1051,%r206,7; @ %r1051 bra $L207; add.u64 %r253,%r253,16; bra $L206; $L207: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1056,[%value_in]; } setp.ne.u32 %r1057,%r1056,0; @ %r1057 bra $L10; ld.u32 %r1058,[%frame+212]; sub.u32 %r202,%r62,%r1058; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1741 6 mov.u64 %r253,%frame; $L206: max.s32 %r1059,%r24,0; sub.u32 %r276,%r202,%r1059; setp.le.s32 %r1060,%r276,0; @ %r1060 bra $L167; ld.u32 %r382,[%frame+176]; setp.le.s32 %r1061,%r276,16; @ ! %r1061 bra $L378; cvta.const.u64 %r1267,zeroes$0; bra $L208; $L378: cvta.const.u64 %r1267,zeroes$0; $L211: st.u64 [%r253],%r1267; mov.u64 %r1063,16; st.u64 [%r253+8],%r1063; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r1064,%r382,7; @ %r1064 bra $L209; add.u64 %r253,%r253,16; bra $L210; $L209: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1069,[%value_in]; } setp.ne.u32 %r1070,%r1069,0; @ %r1070 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r253,%frame; $L210: add.u32 %r276,%r276,-16; setp.gt.s32 %r1071,%r276,16; @ %r1071 bra $L211; $L208: st.u64 [%r253],%r1267; cvt.s64.s32 %r210,%r276; st.u64 [%r253+8],%r210; add.u64 %r377,%r377,%r210; st.u64 [%frame+184],%r377; add.u32 %r212,%r382,1; st.u32 [%frame+176],%r212; setp.gt.s32 %r1073,%r212,7; @ %r1073 bra $L212; add.u64 %r253,%r253,16; bra $L167; $L212: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1078,[%value_in]; } setp.ne.u32 %r1079,%r1078,0; @ %r1079 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1741 6 mov.u64 %r253,%frame; bra $L167; $L168: .loc 1 1704 6 add.u64 %r216,%r377,1; .loc 1 1699 4 ld.u32 %r1080,[%frame+176]; add.u32 %r217,%r1080,1; add.u64 %r255,%r253,16; .loc 1 1745 8 setp.gt.s32 %r1081,%r62,1; @ %r1081 bra $L213; .loc 1 1745 27 and.b32 %r1082,%r244,1; .loc 1 1745 18 setp.eq.u32 %r1083,%r1082,0; @ %r1083 bra $L214; $L213: .loc 1 1746 6 st.u64 [%r253],%r242; mov.u64 %r1084,1; st.u64 [%r253+8],%r1084; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r217; setp.le.s32 %r1085,%r217,7; @ %r1085 bra $L215; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1090,[%value_in]; } setp.ne.u32 %r1091,%r1090,0; @ %r1091 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1746 6 mov.u64 %r255,%frame; $L215: .loc 1 1748 6 st.u64 [%r255],%r260; st.u64 [%r255+8],%r425; add.u64 %r216,%r216,%r425; st.u64 [%frame+184],%r216; add.u32 %r217,%r217,1; st.u32 [%frame+176],%r217; setp.gt.s32 %r1092,%r217,7; @ %r1092 bra $L216; add.u64 %r255,%r255,16; bra $L217; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1097,[%value_in]; } setp.ne.u32 %r1098,%r1097,0; @ %r1098 bra $L10; .loc 1 1750 7 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1748 6 mov.u64 %r255,%frame; $L217: .loc 1 1707 7 add.u32 %r292,%r62,-1; .loc 1 1749 9 setp.eq.f64 %r1099,%r28,0d0000000000000000; @ %r1099 bra $L218; .loc 1 1750 7 add.u32 %r217,%r217,1; .loc 1 1747 8 add.u64 %r1100,%r242,1; .loc 1 1750 7 st.u64 [%r255],%r1100; cvt.s64.s32 %r220,%r292; st.u64 [%r255+8],%r220; add.u64 %r216,%r216,%r220; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r217; setp.gt.s32 %r1101,%r217,7; @ %r1101 bra $L219; add.u64 %r255,%r255,16; bra $L220; $L219: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1106,[%value_in]; } setp.ne.u32 %r1107,%r1106,0; @ %r1107 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1750 7 mov.u64 %r255,%frame; bra $L220; $L218: .loc 1 1753 7 setp.le.s32 %r1108,%r292,0; @ %r1108 bra $L220; setp.le.s32 %r1109,%r292,16; @ ! %r1109 bra $L379; cvta.const.u64 %r1267,zeroes$0; bra $L221; $L379: cvta.const.u64 %r1267,zeroes$0; $L224: st.u64 [%r255],%r1267; mov.u64 %r1111,16; st.u64 [%r255+8],%r1111; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; add.u32 %r217,%r217,1; st.u32 [%frame+176],%r217; setp.gt.s32 %r1112,%r217,7; @ %r1112 bra $L222; add.u64 %r255,%r255,16; bra $L223; $L222: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1117,[%value_in]; } setp.ne.u32 %r1118,%r1117,0; @ %r1118 bra $L10; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; mov.u64 %r255,%frame; $L223: add.u32 %r292,%r292,-16; setp.gt.s32 %r1119,%r292,16; @ %r1119 bra $L224; $L221: st.u64 [%r255],%r1267; cvt.s64.s32 %r223,%r292; st.u64 [%r255+8],%r223; add.u64 %r216,%r216,%r223; st.u64 [%frame+184],%r216; add.u32 %r217,%r217,1; st.u32 [%frame+176],%r217; setp.gt.s32 %r1121,%r217,7; @ %r1121 bra $L225; add.u64 %r255,%r255,16; bra $L220; $L225: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1126,[%value_in]; } setp.ne.u32 %r1127,%r1126,0; @ %r1127 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1753 7 mov.u64 %r255,%frame; bra $L220; $L214: .loc 1 1755 6 st.u64 [%r253],%r242; mov.u64 %r1128,1; st.u64 [%r253+8],%r1128; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r217; setp.le.s32 %r1129,%r217,7; @ %r1129 bra $L220; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1134,[%value_in]; } setp.ne.u32 %r1135,%r1134,0; @ %r1135 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1755 6 mov.u64 %r255,%frame; $L220: .loc 1 1756 5 st.u64 [%r255],%r1292; cvt.s64.s32 %r227,%r247; st.u64 [%r255+8],%r227; add.u64 %r377,%r227,%r216; st.u64 [%frame+184],%r377; add.u32 %r228,%r217,1; st.u32 [%frame+176],%r228; setp.gt.s32 %r1137,%r228,7; @ %r1137 bra $L226; add.u64 %r253,%r255,16; bra $L167; $L226: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1142,[%value_in]; } setp.ne.u32 %r1143,%r1142,0; @ %r1143 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1756 5 mov.u64 %r253,%frame; $L167: .loc 1 1763 13 and.b32 %r1144,%r244,4; .loc 1 1763 6 setp.eq.u32 %r1145,%r1144,0; @ %r1145 bra $L227; .loc 1 1764 4 sub.u32 %r290,%r245,%r161; setp.le.s32 %r1146,%r290,0; @ %r1146 bra $L227; ld.u32 %r386,[%frame+176]; setp.le.s32 %r1147,%r290,16; @ ! %r1147 bra $L380; cvta.const.u64 %r1265,blanks$1; bra $L228; $L380: cvta.const.u64 %r1265,blanks$1; $L231: st.u64 [%r253],%r1265; mov.u64 %r1149,16; st.u64 [%r253+8],%r1149; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r1150,%r386,7; @ %r1150 bra $L229; add.u64 %r253,%r253,16; bra $L230; $L229: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1155,[%value_in]; } setp.ne.u32 %r1156,%r1155,0; @ %r1156 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r253,%frame; $L230: add.u32 %r290,%r290,-16; setp.gt.s32 %r1157,%r290,16; @ %r1157 bra $L231; $L228: st.u64 [%r253],%r1265; cvt.s64.s32 %r232,%r290; st.u64 [%r253+8],%r232; add.u64 %r377,%r377,%r232; st.u64 [%frame+184],%r377; add.u32 %r233,%r386,1; st.u32 [%frame+176],%r233; setp.le.s32 %r1159,%r233,7; @ %r1159 bra $L227; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1164,[%value_in]; } setp.ne.u32 %r1165,%r1164,0; @ %r1165 bra $L10; .loc 1 1769 3 ld.u64 %r377,[%frame+184]; $L227: .loc 1 1767 33 max.s32 %r1166,%r245,%r161; .loc 1 1767 7 add.u32 %r408,%r408,%r1166; .loc 1 1769 3 setp.ne.u64 %r1167,%r377,0; @ %r1167 bra $L232; $L233: mov.u32 %r1168,0; st.u32 [%frame+176],%r1168; mov.u64 %r253,%frame; bra $L5; $L232: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1173,[%value_in]; } setp.ne.u32 %r1174,%r1173,0; @ ! %r1174 bra $L233; bra $L10; $L11: .loc 1 1777 2 ld.u64 %r1175,[%frame+184]; setp.eq.u64 %r1176,%r1175,0; @ %r1176 bra $L10; add.u64 %r1180,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1180; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1181,[%value_in]; } $L10: .loc 1 1784 31 ld.u16 %r1183,[%r410+16]; and.b16 %r1182,%r1183,64; setp.eq.u16 %r1184,%r1182,0; selp.u32 %r408,%r408,-1,%r1184; bra $L1; $L184: .loc 1 1712 7 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r383,%r425,%r377; st.u64 [%frame+184],%r383; ld.u32 %r1186,[%frame+176]; add.u32 %r384,%r1186,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r1187,%r384,7; @ %r1187 bra $L185; add.u64 %r203,%r253,16; bra $L187; $L60: .loc 1 932 9 mov.u32 %r244,%r243; mov.u32 %r246,0; mov.u32 %r248,%r246; bra $L141; $L66: .loc 1 1558 14 setp.ne.u32 %r1188,%r246,-1; @ %r1188 bra $L234; bra $L134; $L84: .loc 1 1873 11 mov.u32 %r1191,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r301; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1191; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r246; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1199,[%value_in]; } mov.u64 %r242,%r1199; .loc 1 1876 15 cvt.s64.s32 %r273,%r246; .loc 1 1878 7 ld.u8 %r1202,[%r1199]; cvt.s16.s8 %r1201,%r1202; set.u32.eq.u16 %r1203,%r1201,48; neg.s32 %r1204,%r1203; mov.u32 %r1200,%r1204; .loc 1 1878 23 set.u32.neu.f64 %r1206,%r301,0d0000000000000000; neg.s32 %r1207,%r1206; mov.u32 %r1205,%r1207; cvt.u16.u8 %r1309,%r1200; mov.u16 %r1209,%r1309; cvt.u16.u8 %r1309,%r1205; mov.u16 %r1210,%r1309; and.b16 %r1208,%r1209,%r1210; cvt.u32.u16 %r1211,%r1208; cvt.u16.u8 %r1212,%r1211; setp.ne.u16 %r1213,%r1212,0; @ ! %r1213 bra $L381; bra $L235; $L261: .loc 1 1875 5 mov.u32 %r300,%r246; $L86: .loc 1 1876 15 cvt.s64.s32 %r1214,%r300; .loc 1 1876 6 add.u64 %r304,%r242,%r1214; bra $L237; $L85: .loc 1 1873 11 mov.u32 %r1217,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r301; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1217; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r246; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1225,[%value_in]; } mov.u64 %r242,%r1225; .loc 1 1875 5 setp.ne.u32 %r1266,%r392,71; @ %r1266 bra $L261; mov.u32 %r407,%r246; bra $L238; $L203: .loc 1 1741 6 sub.u32 %r202,%r62,%r197; sub.u32 %r1227,%r62,%r248; min.s32 %r24,%r1227,%r202; bra $L206; $L25: setp.ne.u32 %r1228,%r320,0; @ ! %r1228 bra $L240; bra $L239; $L241: .loc 1 1876 15 cvt.s64.s32 %r1229,%r407; .loc 1 1876 6 add.u64 %r304,%r242,%r1229; setp.ne.u32 %r1266,%r392,71; bra $L237; $L238: .loc 1 1875 31 and.b32 %r1230,%r243,1; setp.ne.u32 %r1231,%r1230,0; @ ! %r1231 bra $L382; bra $L241; $L383: .loc 1 1873 11 mov.u32 %r1235,1; mov.u32 %r1234,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1234; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1235; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1242,[%value_in]; } mov.u64 %r242,%r1242; mov.f64 %r301,%r28; .loc 1 1811 9 mov.u32 %r322,0; .loc 1 1305 10 mov.u32 %r246,%r1235; mov.u32 %r407,%r246; bra $L238; $L82: .loc 1 1308 10 or.b32 %r244,%r243,256; .loc 1 1807 6 mov.b64 %r1243,%r28; shr.u64 %r1244,%r1243,32; cvt.u32.u64 %r1245,%r1244; .loc 1 1807 5 setp.lt.s32 %r1246,%r1245,0; @ ! %r1246 bra $L383; bra $L262; $L234: .loc 1 1559 11 and.b32 %r244,%r243,-129; .loc 1 1567 28 set.u32.ne.u32 %r1248,%r246,0; neg.s32 %r1249,%r1248; mov.u32 %r1247,%r1249; .loc 1 1567 15 set.u32.ne.u64 %r1251,%r249,0; neg.s32 %r1252,%r1251; mov.u32 %r1250,%r1252; .loc 1 1567 20 cvt.u16.u8 %r1309,%r1247; mov.u16 %r1254,%r1309; cvt.u16.u8 %r1309,%r1250; mov.u16 %r1255,%r1309; or.b16 %r1253,%r1254,%r1255; cvt.u32.u16 %r1256,%r1253; .loc 1 1567 7 cvt.u16.u8 %r1257,%r1256; setp.ne.u16 %r1258,%r1257,0; @ %r1258 bra $L263; mov.u32 %r246,0; mov.u32 %r251,%r246; .loc 1 1566 7 add.u64 %r242,%frame,168; bra $L138; $L1: .loc 1 1786 1 mov.u32 %value,%r408; st.param.u32 [%value_out],%value; ret; } /1580 0 0 0 644 54846 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __ssvfscanf_r .visible .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .extern .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _sfread_r .extern .func (.param .u64 %value_out) _sfread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _sungetc_r .extern .func (.param .u32 %value_out) _sungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sprintf .extern .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtod_r .extern .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __ssvfscanf_r .visible .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[608]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r27; .reg .u64 %r33; .reg .u32 %r40; .reg .u64 %r45; .reg .u32 %r68; .reg .u64 %r69; .reg .u64 %r78; .reg .u32 %r94; .reg .u64 %r98; .reg .u64 %r109; .reg .u32 %r116; .reg .u64 %r119; .reg .u64 %r133; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r153; .reg .u64 %r167; .reg .u64 %r177; .reg .u32 %r178; .reg .u32 %r201; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u64 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r255; .reg .u32 %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u64 %r268; .reg .u64 %r276; .reg .u64 %r281; .reg .u64 %r283; .reg .u32 %r287; .reg .u64 %r289; .reg .u64 %r299; .reg .u64 %r300; .reg .u32 %r301; .reg .u64 %r302; .reg .u32 %r303; .reg .u64 %r305; .reg .u32 %r306; .reg .u32 %r307; .reg .u64 %r308; .reg .u32 %r311; .reg .u32 %r315; .reg .u64 %r316; .reg .u32 %r319; .reg .u64 %r320; .reg .u64 %r324; .reg .u64 %r327; .reg .u64 %r329; .reg .u64 %r334; .reg .u64 %r336; .reg .u64 %r337; .reg .u32 %r338; .reg .u64 %r339; .reg .u32 %r340; .reg .u32 %r346; .reg .u64 %r356; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r361; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u32 %r377; .reg .u64 %r378; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u16 %r382; .reg .u16 %r383; .reg .pred %r384; .reg .u16 %r385; .reg .u32 %r387; .reg .u32 %r388; .reg .pred %r389; .reg .pred %r390; .reg .u64 %r391; .reg .u32 %r392; .reg .u64 %r394; .reg .u16 %r396; .reg .u16 %r397; .reg .u32 %r398; .reg .pred %r399; .reg .pred %r400; .reg .u64 %r401; .reg .u64 %r403; .reg .u16 %r406; .reg .u16 %r408; .reg .pred %r409; .reg .u32 %r412; .reg .pred %r413; .reg .u32 %r414; .reg .u64 %r415; .reg .pred %r416; .reg .u16 %r417; .reg .pred %r418; .reg .pred %r420; .reg .pred %r422; .reg .pred %r424; .reg .pred %r426; .reg .pred %r428; .reg .pred %r430; .reg .pred %r432; .reg .pred %r434; .reg .pred %r436; .reg .pred %r438; .reg .pred %r440; .reg .pred %r442; .reg .pred %r444; .reg .pred %r446; .reg .pred %r448; .reg .pred %r450; .reg .pred %r452; .reg .pred %r454; .reg .pred %r456; .reg .pred %r458; .reg .pred %r460; .reg .pred %r462; .reg .pred %r464; .reg .pred %r466; .reg .pred %r468; .reg .pred %r470; .reg .pred %r472; .reg .pred %r474; .reg .u32 %r475; .reg .pred %r476; .reg .u16 %r477; .reg .u16 %r478; .reg .pred %r479; .reg .u32 %r482; .reg .pred %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u64 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u32 %r492; .reg .u16 %r493; .reg .u16 %r494; .reg .u16 %r495; .reg .u32 %r496; .reg .u16 %r497; .reg .pred %r498; .reg .u32 %r499; .reg .pred %r500; .reg .u16 %r501; .reg .pred %r502; .reg .u32 %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r507; .reg .pred %r508; .reg .u64 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u64 %r513; .reg .u32 %r514; .reg .u64 %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u64 %r521; .reg .u32 %r522; .reg .pred %r523; .reg .u32 %r524; .reg .pred %r525; .reg .u64 %r526; .reg .u32 %r527; .reg .pred %r528; .reg .u64 %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u32 %r536; .reg .pred %r537; .reg .u64 %r538; .reg .u64 %r540; .reg .u16 %r543; .reg .u16 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .pred %r548; .reg .u32 %r551; .reg .pred %r552; .reg .u64 %r553; .reg .u64 %r555; .reg .u16 %r558; .reg .u16 %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .u32 %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .u64 %r570; .reg .u32 %r573; .reg .pred %r574; .reg .pred %r575; .reg .u32 %r577; .reg .u64 %r578; .reg .u32 %r579; .reg .u64 %r581; .reg .u64 %r582; .reg .u64 %r585; .reg .pred %r586; .reg .u32 %r587; .reg .pred %r588; .reg .u64 %r590; .reg .u64 %r592; .reg .u32 %r593; .reg .pred %r594; .reg .pred %r595; .reg .u32 %r596; .reg .u64 %r597; .reg .pred %r598; .reg .u32 %r599; .reg .u64 %r600; .reg .pred %r601; .reg .pred %r602; .reg .u64 %r604; .reg .u64 %r606; .reg .u16 %r607; .reg .u32 %r608; .reg .pred %r609; .reg .u32 %r612; .reg .pred %r613; .reg .pred %r614; .reg .u32 %r615; .reg .u32 %r616; .reg .u64 %r617; .reg .u32 %r618; .reg .pred %r619; .reg .u32 %r620; .reg .u32 %r621; .reg .u64 %r622; .reg .u32 %r623; .reg .u64 %r624; .reg .pred %r625; .reg .u32 %r626; .reg .pred %r627; .reg .u32 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u64 %r634; .reg .u64 %r636; .reg .u16 %r637; .reg .u32 %r638; .reg .pred %r639; .reg .u64 %r640; .reg .pred %r641; .reg .u32 %r642; .reg .pred %r643; .reg .u64 %r644; .reg .u64 %r646; .reg .u16 %r648; .reg .u16 %r649; .reg .u32 %r650; .reg .u32 %r651; .reg .pred %r652; .reg .pred %r653; .reg .u32 %r654; .reg .u64 %r655; .reg .pred %r656; .reg .u32 %r657; .reg .u64 %r658; .reg .pred %r659; .reg .pred %r660; .reg .u32 %r663; .reg .pred %r664; .reg .u64 %r665; .reg .u64 %r667; .reg .u16 %r670; .reg .u16 %r672; .reg .pred %r673; .reg .pred %r674; .reg .u32 %r675; .reg .u32 %r676; .reg .u64 %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u32 %r680; .reg .u32 %r681; .reg .u64 %r682; .reg .u32 %r683; .reg .u64 %r684; .reg .pred %r685; .reg .u64 %r686; .reg .u32 %r687; .reg .pred %r688; .reg .u32 %r691; .reg .pred %r692; .reg .u64 %r693; .reg .u64 %r694; .reg .u64 %r696; .reg .u16 %r699; .reg .u16 %r701; .reg .pred %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .u64 %r705; .reg .pred %r706; .reg .u32 %r707; .reg .u16 %r708; .reg .pred %r709; .reg .pred %r711; .reg .pred %r713; .reg .pred %r715; .reg .u16 %r716; .reg .u32 %r718; .reg .u16 %r720; .reg .u16 %r722; .reg .pred %r723; .reg .u64 %r724; .reg .u64 %r725; .reg .u64 %r726; .reg .u64 %r727; .reg .pred %r729; .reg .pred %r731; .reg .pred %r733; .reg .pred %r735; .reg .pred %r737; .reg .pred %r739; .reg .u32 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .pred %r745; .reg .u64 %r746; .reg .u64 %r747; .reg .u64 %r748; .reg .u64 %r749; .reg .pred %r750; .reg .pred %r751; .reg .u32 %r752; .reg .pred %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u32 %r756; .reg .u32 %r757; .reg .pred %r758; .reg .u64 %r759; .reg .u32 %r762; .reg .pred %r763; .reg .pred %r764; .reg .u32 %r765; .reg .pred %r766; .reg .pred %r767; .reg .u32 %r771; .reg .u32 %r772; .reg .pred %r773; .reg .u32 %r774; .reg .pred %r775; .reg .u32 %r776; .reg .u64 %r779; .reg .u64 %r781; .reg .u64 %r782; .reg .u32 %r783; .reg .pred %r784; .reg .u32 %r785; .reg .pred %r786; .reg .u64 %r787; .reg .u32 %r788; .reg .pred %r789; .reg .u64 %r790; .reg .u32 %r791; .reg .pred %r792; .reg .u64 %r793; .reg .pred %r794; .reg .u64 %r799; .reg .u64 %r804; .reg .u64 %r805; .reg .u64 %r806; .reg .u64 %r807; .reg .u32 %r808; .reg .u64 %r811; .reg .u64 %r812; .reg .pred %r813; .reg .u32 %r814; .reg .u16 %r815; .reg .pred %r816; .reg .pred %r818; .reg .pred %r820; .reg .pred %r822; .reg .pred %r824; .reg .u16 %r825; .reg .u32 %r827; .reg .u16 %r829; .reg .u16 %r831; .reg .pred %r832; .reg .pred %r834; .reg .pred %r836; .reg .pred %r838; .reg .pred %r840; .reg .pred %r842; .reg .pred %r844; .reg .pred %r846; .reg .pred %r848; .reg .pred %r850; .reg .pred %r852; .reg .pred %r854; .reg .pred %r856; .reg .pred %r858; .reg .pred %r860; .reg .pred %r862; .reg .pred %r864; .reg .pred %r866; .reg .u32 %r867; .reg .pred %r868; .reg .pred %r869; .reg .u32 %r870; .reg .pred %r871; .reg .u32 %r872; .reg .pred %r873; .reg .u32 %r874; .reg .u16 %r875; .reg .u32 %r876; .reg .u32 %r877; .reg .u32 %r878; .reg .u32 %r879; .reg .u32 %r880; .reg .u16 %r881; .reg .u16 %r882; .reg .u16 %r883; .reg .u32 %r884; .reg .u16 %r885; .reg .pred %r886; .reg .u32 %r887; .reg .pred %r888; .reg .pred %r890; .reg .u32 %r891; .reg .u16 %r892; .reg .u32 %r893; .reg .u32 %r894; .reg .u32 %r895; .reg .u32 %r897; .reg .u32 %r898; .reg .u16 %r899; .reg .u16 %r900; .reg .u16 %r901; .reg .u32 %r902; .reg .u16 %r903; .reg .pred %r904; .reg .u16 %r906; .reg .u32 %r908; .reg .u16 %r910; .reg .pred %r911; .reg .u32 %r912; .reg .u16 %r913; .reg .u32 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .u32 %r917; .reg .u32 %r918; .reg .u16 %r919; .reg .u16 %r920; .reg .u16 %r921; .reg .u32 %r922; .reg .u16 %r923; .reg .pred %r924; .reg .u32 %r925; .reg .pred %r926; .reg .u32 %r927; .reg .u16 %r928; .reg .u16 %r929; .reg .u32 %r930; .reg .u16 %r932; .reg .u16 %r934; .reg .pred %r935; .reg .u16 %r936; .reg .u32 %r938; .reg .u16 %r939; .reg .pred %r940; .reg .u16 %r941; .reg .pred %r942; .reg .u16 %r943; .reg .pred %r944; .reg .u32 %r945; .reg .pred %r946; .reg .u32 %r947; .reg .pred %r948; .reg .pred %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u16 %r952; .reg .u16 %r953; .reg .pred %r954; .reg .u32 %r955; .reg .pred %r956; .reg .u32 %r957; .reg .u32 %r958; .reg .pred %r959; .reg .u64 %r960; .reg .u32 %r963; .reg .pred %r964; .reg .pred %r965; .reg .pred %r966; .reg .u32 %r967; .reg .pred %r968; .reg .pred %r969; .reg .u32 %r973; .reg .u32 %r974; .reg .pred %r975; .reg .u32 %r976; .reg .pred %r977; .reg .u16 %r978; .reg .pred %r979; .reg .u32 %r980; .reg .pred %r982; .reg .pred %r983; .reg .u32 %r987; .reg .u32 %r988; .reg .u32 %r990; .reg .u32 %r992; .reg .u16 %r993; .reg .u16 %r994; .reg .u16 %r995; .reg .u32 %r996; .reg .u16 %r998; .reg .u16 %r999; .reg .u16 %r1000; .reg .u32 %r1001; .reg .u16 %r1002; .reg .pred %r1003; .reg .u32 %r1007; .reg .u32 %r1008; .reg .pred %r1009; .reg .u32 %r1010; .reg .pred %r1011; .reg .u32 %r1012; .reg .pred %r1013; .reg .pred %r1014; .reg .u32 %r1018; .reg .u32 %r1019; .reg .pred %r1020; .reg .u16 %r1021; .reg .u16 %r1022; .reg .u32 %r1023; .reg .u16 %r1024; .reg .pred %r1025; .reg .u32 %r1029; .reg .u32 %r1033; .reg .u32 %r1034; .reg .pred %r1035; .reg .u32 %r1036; .reg .u32 %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .pred %r1040; .reg .u64 %r1043; .reg .u32 %r1044; .reg .u64 %r1045; .reg .u64 %r1046; .reg .pred %r1048; .reg .u64 %r1050; .reg .u32 %r1051; .reg .u64 %r1055; .reg .f64 %r1056; .reg .u64 %r1057; .reg .u32 %r1058; .reg .pred %r1059; .reg .u64 %r1060; .reg .u32 %r1061; .reg .pred %r1062; .reg .pred %r1063; .reg .u64 %r1064; .reg .f32 %r1065; .reg .f32 %r1066; .reg .pred %r1067; .reg .u16 %r1068; .reg .u16 %r1069; .reg .pred %r1070; .reg .u32 %r1072; .reg .pred %r1073; .reg .u32 %r1074; .reg .u32 %r1075; .reg .u64 %r1076; .reg .u64 %r1078; .reg .u64 %r1079; .reg .u16 %r1080; mov.u64 %r378,%ar0; mov.u64 %r379,%ar1; mov.u64 %r380,%ar2; mov.u64 %r381,%ar3; .loc 1 591 3 ld.u16 %r383,[%r379+16]; and.b16 %r382,%r383,8192; setp.ne.u16 %r384,%r382,0; @ %r384 bra $L2; or.b16 %r385,%r383,8192; st.u16 [%r379+16],%r385; ld.u32 %r388,[%r379+172]; and.b32 %r387,%r388,-8193; st.u32 [%r379+172],%r387; $L2: .loc 1 602 12 ld.u8 %r27,[%r380]; .loc 1 611 11 add.u64 %r268,%r380,1; .loc 1 613 10 setp.eq.u32 %r389,%r27,0; @ %r389 bra $L162; mov.u64 %r69,0; mov.u32 %r248,0; mov.u32 %r208,%r248; mov.u32 %r377,%r248; cvta.const.u64 %r1076,_ctype_+1; .loc 1 1859 8 add.u64 %r1078,%frame,329; .loc 1 1146 21 add.u64 %r1079,%frame,350; bra $L4; $L7: .loc 1 602 12 ld.u8 %r27,[%r268]; .loc 1 611 11 add.u64 %r268,%r268,1; .loc 1 613 10 setp.eq.u32 %r390,%r27,0; @ %r390 bra $L1; $L4: .loc 1 615 26 cvt.u32.u32 %r392,%r27; cvt.u64.u8 %r391,%r392; add.u64 %r394,%r1076,%r391; ld.u8 %r1080,[%r394]; mov.u16 %r397,%r1080; and.b16 %r396,%r397,8; cvt.u32.u16 %r398,%r396; cvt.s32.s8 %r258,%r398; .loc 1 615 23 setp.eq.u32 %r399,%r258,0; @ %r399 bra $L5; .loc 1 649 12 ld.u32 %r40,[%r379+8]; $L10: .loc 1 619 11 setp.le.s32 %r400,%r40,0; @ %r400 bra $L6; $L9: .loc 1 619 28 ld.u64 %r33,[%r379]; ld.u8 %r401,[%r33]; add.u64 %r403,%r1076,%r401; .loc 1 619 24 ld.u8 %r1080,[%r403]; mov.u16 %r406,%r1080; and.b16 %r408,%r406,8; setp.eq.u16 %r409,%r408,0; @ ! %r409 bra $L341; bra $L7; $L6: .loc 1 619 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r412,[%value_in]; } setp.ne.u32 %r413,%r412,0; @ ! %r413 bra $L9; bra $L7; $L341: .loc 1 621 13 add.u32 %r208,%r208,1; .loc 1 621 23 ld.u32 %r414,[%r379+8]; add.u32 %r40,%r414,-1; st.u32 [%r379+8],%r40; .loc 1 621 33 add.u64 %r415,%r33,1; st.u64 [%r379],%r415; .loc 1 619 11 bra $L10; $L5: .loc 1 625 10 setp.ne.u32 %r416,%r27,37; @ %r416 bra $L11; .loc 1 640 11 ld.u8 %r338,[%r268]; mov.u64 %r24,%r268; .loc 1 628 13 mov.u32 %r245,%r258; .loc 1 627 13 mov.u64 %r237,0; bra $L12; $L343: .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 663 10 mov.u32 %r245,16; .loc 1 669 8 mov.u64 %r237,0; $L12: .loc 1 640 15 add.u64 %r268,%r24,1; .loc 1 642 7 cvt.u16.u32 %r417,%r338; setp.eq.u16 %r418,%r417,100; @ %r418 bra $L163; setp.gt.u16 %r420,%r417,100; @ %r420 bra $L14; setp.eq.u16 %r422,%r417,71; @ %r422 bra $L164; setp.gt.u16 %r424,%r417,71; @ %r424 bra $L15; setp.gt.u16 %r426,%r417,57; @ %r426 bra $L16; setp.gt.u16 %r428,%r417,47; @ %r428 bra $L17; setp.eq.u16 %r430,%r417,37; @ %r430 bra $L11; setp.eq.u16 %r432,%r417,42; @ %r432 bra $L18; bra $L1; $L16: setp.eq.u16 %r434,%r417,68; @ %r434 bra $L19; setp.eq.u16 %r436,%r417,69; @ %r436 bra $L165; bra $L1; $L15: setp.eq.u16 %r438,%r417,88; @ %r438 bra $L20; setp.gt.u16 %r440,%r417,88; @ %r440 bra $L21; setp.eq.u16 %r442,%r417,76; @ %r442 bra $L22; setp.eq.u16 %r444,%r417,79; @ %r444 bra $L23; bra $L1; $L21: setp.eq.u16 %r446,%r417,91; @ %r446 bra $L24; setp.eq.u16 %r448,%r417,99; @ %r448 bra $L25; bra $L1; $L14: setp.eq.u16 %r450,%r417,111; @ %r450 bra $L166; setp.gt.u16 %r452,%r417,111; @ %r452 bra $L26; setp.eq.u16 %r454,%r417,105; @ %r454 bra $L167; setp.gt.u16 %r456,%r417,105; @ %r456 bra $L27; setp.le.u16 %r458,%r417,103; @ %r458 bra $L168; setp.eq.u16 %r460,%r417,104; @ %r460 bra $L28; bra $L1; $L27: setp.eq.u16 %r462,%r417,108; @ %r462 bra $L29; setp.eq.u16 %r464,%r417,110; @ %r464 bra $L30; bra $L1; $L26: setp.eq.u16 %r466,%r417,115; @ %r466 bra $L169; setp.gt.u16 %r468,%r417,115; @ %r468 bra $L31; setp.eq.u16 %r470,%r417,112; @ %r470 bra $L32; bra $L1; $L31: setp.eq.u16 %r472,%r417,117; @ %r472 bra $L170; setp.eq.u16 %r474,%r417,120; @ %r474 bra $L20; bra $L1; $L11: .loc 1 649 11 ld.u32 %r475,[%r379+8]; setp.le.s32 %r476,%r475,0; @ %r476 bra $L33; $L36: .loc 1 651 15 ld.u64 %r45,[%r379]; .loc 1 651 11 ld.u8 %r477,[%r45]; ld.u8 %r478,[%r268+-1]; setp.ne.u16 %r479,%r477,%r478; @ %r479 bra $L1; bra $L342; $L33: .loc 1 649 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r482,[%value_in]; } setp.ne.u32 %r483,%r482,0; @ ! %r483 bra $L36; bra $L35; $L342: .loc 1 653 14 ld.u32 %r485,[%r379+8]; add.u32 %r484,%r485,-1; st.u32 [%r379+8],%r484; .loc 1 653 24 add.u64 %r486,%r45,1; st.u64 [%r379],%r486; .loc 1 654 13 add.u32 %r208,%r208,1; bra $L7; $L18: .loc 1 660 7 set.u32.ne.u32 %r488,%r245,0; neg.s32 %r489,%r488; mov.u32 %r487,%r489; .loc 1 661 8 set.u32.ne.u64 %r491,%r237,0; neg.s32 %r492,%r491; mov.u32 %r490,%r492; cvt.u16.u8 %r1080,%r487; mov.u16 %r494,%r1080; cvt.u16.u8 %r1080,%r490; mov.u16 %r495,%r1080; or.b16 %r493,%r494,%r495; cvt.u32.u16 %r496,%r493; cvt.u16.u8 %r497,%r496; setp.ne.u16 %r498,%r497,0; @ ! %r498 bra $L343; bra $L1; $L29: .loc 1 666 14 and.b32 %r499,%r245,15; .loc 1 666 7 setp.ne.u32 %r500,%r499,0; @ %r500 bra $L1; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 669 7 cvt.u16.u32 %r501,%r338; setp.ne.u16 %r502,%r501,108; @ %r502 bra $L38; .loc 1 672 14 or.b32 %r245,%r245,2; .loc 1 640 11 ld.u8 %r338,[%r24+2]; .loc 1 671 8 add.u64 %r24,%r24,2; bra $L12; $L38: .loc 1 676 12 or.b32 %r245,%r245,1; .loc 1 640 15 mov.u64 %r24,%r268; bra $L12; $L22: .loc 1 679 14 and.b32 %r503,%r245,15; .loc 1 679 7 setp.ne.u32 %r504,%r503,0; @ %r504 bra $L1; .loc 1 681 10 or.b32 %r245,%r245,2; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 682 4 bra $L12; $L28: .loc 1 684 14 and.b32 %r505,%r245,15; .loc 1 684 7 setp.ne.u32 %r506,%r505,0; @ %r506 bra $L1; .loc 1 694 12 or.b32 %r245,%r245,4; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 695 4 bra $L12; $L17: .loc 1 760 14 and.b32 %r507,%r245,143; .loc 1 760 7 setp.ne.u32 %r508,%r507,0; @ %r508 bra $L1; .loc 1 762 18 shl.b64 %r510,%r237,2; add.u64 %r511,%r510,%r237; add.u64 %r512,%r511,%r511; .loc 1 762 23 cvt.u32.u32 %r514,%r338; cvt.u64.u8 %r513,%r514; add.u64 %r369,%r512,%r513; .loc 1 762 10 add.u64 %r237,%r369,-48; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 763 4 bra $L12; $L19: .loc 1 789 10 or.b32 %r245,%r245,1; .loc 1 793 9 mov.u64 %r69,_strtol_r; .loc 1 794 9 mov.u32 %r248,10; .loc 1 792 6 mov.u32 %r307,3; bra $L13; $L23: .loc 1 804 10 or.b32 %r245,%r245,1; .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r248,8; .loc 1 807 6 mov.u32 %r307,3; bra $L13; $L20: .loc 1 820 10 or.b32 %r245,%r245,512; .loc 1 822 9 mov.u64 %r69,_strtoul_r; .loc 1 823 9 mov.u32 %r248,16; .loc 1 821 6 mov.u32 %r307,3; .loc 1 824 4 bra $L13; $L24: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1079; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r268; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r518,[%value_in]; } mov.u64 %r268,%r518; .loc 1 853 10 or.b32 %r245,%r245,64; .loc 1 854 6 mov.u32 %r307,1; .loc 1 855 4 bra $L13; $L25: .loc 1 864 10 or.b32 %r245,%r245,64; .loc 1 865 6 mov.u32 %r307,0; .loc 1 866 4 bra $L13; $L32: .loc 1 869 10 or.b32 %r245,%r245,544; .loc 1 871 9 mov.u64 %r69,_strtoul_r; .loc 1 872 9 mov.u32 %r248,16; .loc 1 870 6 mov.u32 %r307,3; .loc 1 873 4 bra $L13; $L30: .loc 1 876 14 and.b32 %r519,%r245,16; .loc 1 876 7 setp.ne.u32 %r520,%r519,0; @ %r520 bra $L7; .loc 1 888 11 add.u64 %r521,%r381,7; and.b64 %r337,%r521,-8; ld.u64 %r336,[%r337]; add.u64 %r381,%r337,8; .loc 1 886 14 and.b32 %r522,%r245,4; .loc 1 886 7 setp.eq.u32 %r523,%r522,0; @ %r523 bra $L40; .loc 1 889 12 st.u16 [%r336],%r208; bra $L7; $L40: .loc 1 891 19 and.b32 %r524,%r245,1; .loc 1 891 12 setp.eq.u32 %r525,%r524,0; @ %r525 bra $L41; .loc 1 894 12 cvt.s64.s32 %r526,%r208; st.u64 [%r336],%r526; bra $L7; $L41: .loc 1 897 19 and.b32 %r527,%r245,2; .loc 1 897 12 setp.eq.u32 %r528,%r527,0; @ %r528 bra $L42; .loc 1 900 13 cvt.s64.s32 %r529,%r208; st.u64 [%r336],%r529; bra $L7; $L42: .loc 1 906 12 st.u32 [%r336],%r208; bra $L7; $L163: .loc 1 642 7 mov.u64 %r69,_strtol_r; mov.u32 %r248,10; mov.u32 %r307,3; bra $L13; $L164: .loc 1 837 6 mov.u32 %r307,4; bra $L13; $L165: mov.u32 %r307,4; bra $L13; $L166: .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r248,8; .loc 1 807 6 mov.u32 %r307,3; bra $L13; $L167: .loc 1 799 9 mov.u64 %r69,_strtol_r; .loc 1 800 9 mov.u32 %r248,0; .loc 1 798 6 mov.u32 %r307,3; bra $L13; $L168: .loc 1 837 6 mov.u32 %r307,4; bra $L13; $L169: .loc 1 848 6 mov.u32 %r307,2; bra $L13; $L170: .loc 1 814 9 mov.u64 %r69,_strtoul_r; .loc 1 815 9 mov.u32 %r248,10; .loc 1 813 6 mov.u32 %r307,3; $L13: .loc 1 917 10 ld.u32 %r530,[%r379+8]; setp.le.s32 %r531,%r530,0; @ %r531 bra $L43; $L46: .loc 1 924 18 and.b32 %r532,%r245,64; .loc 1 924 10 setp.eq.u32 %r533,%r532,0; @ ! %r533 bra $L45; bra $L44; $L43: .loc 1 917 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r536,[%value_in]; } setp.ne.u32 %r537,%r536,0; @ ! %r537 bra $L46; bra $L35; $L44: .loc 1 926 11 ld.u64 %r327,[%r379]; ld.u8 %r538,[%r327]; add.u64 %r540,%r1076,%r538; ld.u8 %r1080,[%r540]; mov.u16 %r543,%r1080; and.b16 %r545,%r543,8; setp.eq.u16 %r546,%r545,0; @ %r546 bra $L45; $L49: .loc 1 928 13 add.u32 %r208,%r208,1; .loc 1 929 12 ld.u32 %r547,[%r379+8]; add.u32 %r68,%r547,-1; .loc 1 929 11 st.u32 [%r379+8],%r68; setp.le.s32 %r548,%r68,0; @ %r548 bra $L47; .loc 1 930 9 add.u64 %r327,%r327,1; st.u64 [%r379],%r327; bra $L48; $L47: .loc 1 932 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r551,[%value_in]; } .loc 1 932 11 setp.ne.u32 %r552,%r551,0; @ %r552 bra $L35; .loc 1 926 11 ld.u64 %r327,[%r379]; $L48: ld.u8 %r553,[%r327]; add.u64 %r555,%r1076,%r553; ld.u8 %r1080,[%r555]; mov.u16 %r558,%r1080; and.b16 %r560,%r558,8; setp.ne.u16 %r561,%r560,0; @ %r561 bra $L49; $L45: .loc 1 945 7 setp.eq.u32 %r562,%r307,3; @ %r562 bra $L50; setp.eq.u32 %r563,%r307,4; @ %r563 bra $L51; setp.eq.u32 %r564,%r307,1; @ %r564 bra $L52; setp.eq.u32 %r565,%r307,2; @ %r565 bra $L53; max.u64 %r238,%r237,1; .loc 1 1017 14 and.b32 %r566,%r245,16; .loc 1 1017 7 setp.eq.u32 %r567,%r566,0; @ %r567 bra $L54; .loc 1 1019 15 mov.u64 %r249,0; $L56: .loc 1 1022 12 ld.u32 %r311,[%r379+8]; .loc 1 1026 16 ld.u64 %r329,[%r379]; .loc 1 1022 24 cvt.u32.u64 %r568,%r238; .loc 1 1022 8 setp.le.s32 %r569,%r568,%r311; @ %r569 bra $L55; .loc 1 1024 13 cvt.s64.s32 %r78,%r311; add.u64 %r249,%r249,%r78; .loc 1 1025 15 sub.u64 %r238,%r238,%r78; .loc 1 1026 16 add.u64 %r570,%r329,%r78; st.u64 [%r379],%r570; .loc 1 1027 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r573,[%value_in]; } .loc 1 1027 12 setp.eq.u32 %r574,%r573,0; @ %r574 bra $L56; .loc 1 1029 9 setp.eq.u64 %r575,%r249,0; @ ! %r575 bra $L57; bra $L35; $L55: .loc 1 1036 13 add.u64 %r249,%r249,%r238; .loc 1 1037 16 sub.u32 %r577,%r311,%r568; st.u32 [%r379+8],%r577; .loc 1 1038 16 add.u64 %r578,%r329,%r238; st.u64 [%r379],%r578; $L57: .loc 1 1042 14 cvt.u32.u64 %r579,%r249; add.u32 %r208,%r579,%r208; bra $L7; $L54: .loc 1 1053 5 add.u64 %r356,%r381,7; and.b64 %r358,%r356,-8; add.u64 %r381,%r358,8; .loc 1 1054 12 mov.u64 %r582,1; ld.u64 %r581,[%r358]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r581; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r582; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r238; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r379; call (%value_in),_sfread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r585,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r586,%r585,0; @ %r586 bra $L35; .loc 1 1060 14 cvt.u32.u64 %r587,%r585; add.u32 %r208,%r587,%r208; .loc 1 1061 17 add.u32 %r377,%r377,1; bra $L7; $L52: .loc 1 1067 7 setp.ne.u64 %r588,%r237,0; .loc 1 1068 12 selp.u64 %r237,%r237,-1,%r588; .loc 1 1146 25 ld.u64 %r316,[%r379]; .loc 1 1146 21 ld.u8 %r590,[%r316]; add.u64 %r592,%r1079,%r590; ld.s8 %r319,[%r592]; .loc 1 1143 14 and.b32 %r593,%r245,16; .loc 1 1143 7 setp.eq.u32 %r594,%r593,0; @ %r594 bra $L59; .loc 1 1146 15 setp.eq.u32 %r595,%r319,0; @ %r595 bra $L1; .loc 1 1148 16 ld.u32 %r596,[%r379+8]; add.u32 %r94,%r596,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r597,%r316,1; st.u64 [%r379],%r597; .loc 1 1149 8 add.u64 %r308,%r237,-1; setp.eq.u64 %r598,%r237,1; @ ! %r598 bra $L61; bra $L60; $L63: .loc 1 1148 6 add.u32 %r307,%r307,1; .loc 1 1148 16 ld.u32 %r599,[%r379+8]; add.u32 %r94,%r599,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r600,%r98,1; st.u64 [%r379],%r600; .loc 1 1149 8 add.u64 %r308,%r308,-1; setp.eq.u64 %r601,%r308,0; @ %r601 bra $L60; $L61: .loc 1 1151 8 setp.le.s32 %r602,%r94,0; @ %r602 bra $L62; $L64: .loc 1 1146 25 ld.u64 %r98,[%r379]; .loc 1 1146 21 ld.u8 %r604,[%r98]; add.u64 %r606,%r1079,%r604; .loc 1 1146 15 ld.u8 %r608,[%r606]; cvt.s16.s8 %r607,%r608; setp.ne.u16 %r609,%r607,0; @ %r609 bra $L63; bra $L60; $L62: .loc 1 1151 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r612,[%value_in]; } setp.eq.u32 %r613,%r612,0; @ %r613 bra $L64; $L60: .loc 1 1160 14 add.u32 %r208,%r208,%r307; bra $L7; $L59: .loc 1 1172 10 add.u64 %r371,%r381,7; and.b64 %r370,%r371,-8; add.u64 %r381,%r370,8; ld.u64 %r305,[%r370]; .loc 1 1173 15 setp.eq.u32 %r614,%r319,0; @ %r614 bra $L1; .loc 1 1175 11 ld.u32 %r616,[%r379+8]; add.u32 %r615,%r616,-1; st.u32 [%r379+8],%r615; .loc 1 1176 19 add.u64 %r617,%r316,1; st.u64 [%r379],%r617; .loc 1 1176 7 add.u64 %r240,%r305,1; .loc 1 1176 10 ld.u8 %r618,[%r316]; st.u8 [%r305],%r618; .loc 1 1180 8 setp.eq.u64 %r619,%r237,1; @ %r619 bra $L65; mov.u64 %r334,%r240; bra $L66; $L68: .loc 1 1175 11 ld.u32 %r621,[%r379+8]; add.u32 %r620,%r621,-1; st.u32 [%r379+8],%r620; .loc 1 1176 19 add.u64 %r622,%r109,1; st.u64 [%r379],%r622; add.u64 %r334,%r334,1; .loc 1 1176 10 ld.u8 %r623,[%r109]; st.u8 [%r240],%r623; .loc 1 1180 8 add.u64 %r624,%r305,%r237; setp.eq.u64 %r625,%r624,%r334; @ %r625 bra $L171; $L66: mov.u64 %r240,%r334; .loc 1 1182 8 ld.u32 %r626,[%r379+8]; setp.gt.s32 %r627,%r626,0; @ %r627 bra $L67; .loc 1 1182 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r630,[%value_in]; } setp.eq.u32 %r631,%r630,0; @ %r631 bra $L67; .loc 1 1184 12 setp.eq.u64 %r632,%r305,%r240; @ ! %r632 bra $L65; bra $L35; $L67: .loc 1 1173 25 ld.u64 %r109,[%r379]; .loc 1 1173 21 ld.u8 %r634,[%r109]; add.u64 %r636,%r1079,%r634; .loc 1 1173 15 ld.u8 %r638,[%r636]; cvt.s16.s8 %r637,%r638; setp.ne.u16 %r639,%r637,0; @ %r639 bra $L68; bra $L65; $L171: .loc 1 1176 7 mov.u64 %r240,%r334; $L65: .loc 1 1189 14 sub.u64 %r640,%r240,%r305; .loc 1 1189 10 cvt.u32.u64 %r306,%r640; .loc 1 1190 11 setp.eq.u32 %r641,%r306,0; @ %r641 bra $L1; .loc 1 1192 11 mov.u32 %r642,0; st.u8 [%r240],%r642; .loc 1 1196 17 add.u32 %r377,%r377,1; .loc 1 1197 14 add.u32 %r208,%r208,%r306; bra $L7; $L53: .loc 1 1203 7 setp.ne.u64 %r643,%r237,0; .loc 1 1204 12 selp.u64 %r237,%r237,-1,%r643; .loc 1 1146 25 ld.u64 %r361,[%r379]; .loc 1 1283 16 ld.u8 %r644,[%r361]; add.u64 %r646,%r1076,%r644; ld.u8 %r1080,[%r646]; mov.u16 %r649,%r1080; and.b16 %r648,%r649,8; cvt.u32.u16 %r650,%r648; cvt.s32.s8 %r315,%r650; .loc 1 1280 14 and.b32 %r651,%r245,16; .loc 1 1280 7 setp.eq.u32 %r652,%r651,0; @ %r652 bra $L70; .loc 1 1283 15 setp.ne.u32 %r653,%r315,0; @ %r653 bra $L7; .loc 1 1285 16 ld.u32 %r654,[%r379+8]; add.u32 %r116,%r654,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r655,%r361,1; st.u64 [%r379],%r655; .loc 1 1286 8 add.u64 %r302,%r237,-1; setp.ne.u64 %r656,%r237,1; @ %r656 bra $L172; .loc 1 1291 14 add.u32 %r208,%r208,1; bra $L7; $L74: .loc 1 1285 6 add.u32 %r301,%r301,1; .loc 1 1285 16 ld.u32 %r657,[%r379+8]; add.u32 %r116,%r657,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r658,%r119,1; st.u64 [%r379],%r658; .loc 1 1286 8 add.u64 %r302,%r302,-1; setp.ne.u64 %r659,%r302,0; @ %r659 bra $L72; .loc 1 1291 14 add.u32 %r208,%r208,%r301; bra $L7; $L172: .loc 1 1285 6 mov.u32 %r301,1; $L72: .loc 1 1288 8 setp.gt.s32 %r660,%r116,0; @ %r660 bra $L73; .loc 1 1288 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r663,[%value_in]; } setp.eq.u32 %r664,%r663,0; @ %r664 bra $L73; .loc 1 1291 14 add.u32 %r208,%r208,%r301; bra $L7; $L73: .loc 1 1283 16 ld.u64 %r119,[%r379]; ld.u8 %r665,[%r119]; add.u64 %r667,%r1076,%r665; .loc 1 1283 15 ld.u8 %r1080,[%r667]; mov.u16 %r670,%r1080; and.b16 %r672,%r670,8; setp.eq.u16 %r673,%r672,0; @ %r673 bra $L74; .loc 1 1291 14 add.u32 %r208,%r208,%r301; bra $L7; $L70: .loc 1 1303 6 add.u64 %r239,%r381,7; and.b64 %r372,%r239,-8; add.u64 %r381,%r372,8; ld.u64 %r300,[%r372]; .loc 1 1305 15 setp.ne.u32 %r674,%r315,0; @ %r674 bra $L173; .loc 1 1307 11 ld.u32 %r676,[%r379+8]; add.u32 %r675,%r676,-1; st.u32 [%r379+8],%r675; .loc 1 1308 19 add.u64 %r677,%r361,1; st.u64 [%r379],%r677; .loc 1 1308 7 add.u64 %r241,%r300,1; .loc 1 1308 10 ld.u8 %r678,[%r361]; st.u8 [%r300],%r678; .loc 1 1312 8 setp.eq.u64 %r679,%r237,1; @ ! %r679 bra $L344; bra $L174; $L79: .loc 1 1307 11 ld.u32 %r681,[%r379+8]; add.u32 %r680,%r681,-1; st.u32 [%r379+8],%r680; .loc 1 1308 19 add.u64 %r682,%r133,1; st.u64 [%r379],%r682; add.u64 %r324,%r324,1; .loc 1 1308 10 ld.u8 %r683,[%r133]; st.u8 [%r241],%r683; .loc 1 1312 8 add.u64 %r684,%r300,%r237; setp.ne.u64 %r685,%r684,%r324; @ %r685 bra $L77; .loc 1 1321 19 sub.u64 %r686,%r324,%r300; .loc 1 1321 14 cvt.u32.u64 %r340,%r686; mov.u64 %r241,%r324; bra $L75; $L344: mov.u64 %r324,%r241; $L77: mov.u64 %r241,%r324; .loc 1 1314 8 ld.u32 %r687,[%r379+8]; setp.gt.s32 %r688,%r687,0; @ %r688 bra $L78; .loc 1 1314 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r691,[%value_in]; } setp.eq.u32 %r692,%r691,0; @ %r692 bra $L78; .loc 1 1321 19 sub.u64 %r693,%r241,%r300; .loc 1 1321 14 cvt.u32.u64 %r340,%r693; bra $L75; $L78: .loc 1 1305 16 ld.u64 %r133,[%r379]; ld.u8 %r694,[%r133]; add.u64 %r696,%r1076,%r694; .loc 1 1305 15 ld.u8 %r1080,[%r696]; mov.u16 %r699,%r1080; and.b16 %r701,%r699,8; setp.eq.u16 %r702,%r701,0; @ %r702 bra $L79; .loc 1 1321 19 sub.u64 %r703,%r324,%r300; .loc 1 1321 14 cvt.u32.u64 %r340,%r703; bra $L75; $L173: .loc 1 1303 6 mov.u64 %r241,%r300; .loc 1 1305 15 mov.u32 %r340,%r651; bra $L75; $L174: .loc 1 1312 8 mov.u32 %r340,1; $L75: .loc 1 1317 11 mov.u32 %r704,0; st.u8 [%r241],%r704; .loc 1 1321 14 add.u32 %r208,%r208,%r340; .loc 1 1322 17 add.u32 %r377,%r377,1; bra $L7; $L50: .loc 1 1335 14 add.u64 %r705,%r237,-1; .loc 1 1335 7 setp.le.u64 %r706,%r705,348; @ %r706 bra $L175; .loc 1 1338 27 cvt.u32.u64 %r707,%r237; .loc 1 1338 19 add.u32 %r250,%r707,-349; .loc 1 1339 14 mov.u64 %r237,349; bra $L80; $L175: .loc 1 1329 13 mov.u32 %r250,0; $L80: .loc 1 1341 10 or.b32 %r246,%r245,3456; .loc 1 1330 8 mov.u32 %r251,0; .loc 1 1342 11 mov.u64 %r242,%frame; $L98: .loc 1 1344 15 ld.u64 %r143,[%r379]; .loc 1 1344 12 ld.u8 %r144,[%r143]; cvt.u16.u32 %r708,%r144; setp.gt.u16 %r709,%r708,57; @ %r709 bra $L81; setp.gt.u16 %r711,%r708,55; @ %r711 bra $L82; setp.eq.u16 %r713,%r708,48; @ %r713 bra $L83; setp.gt.u16 %r715,%r708,48; @ %r715 bra $L84; add.u16 %r716,%r708,-43; cvt.u32.u16 %r718,%r716; cvt.u16.u8 %r1080,%r718; mov.u16 %r720,%r1080; and.b16 %r722,%r720,253; setp.eq.u16 %r723,%r722,0; @ ! %r723 bra $L86; bra $L85; $L84: .loc 1 1390 19 cvta.const.u64 %r724,basefix$0; cvt.s64.s32 %r725,%r248; add.u64 %r726,%r725,%r725; add.u64 %r727,%r724,%r726; ld.s16 %r248,[%r727]; .loc 1 1391 11 and.b32 %r246,%r246,-2945; .loc 1 1392 5 bra $L87; $L81: setp.gt.u16 %r729,%r708,102; @ %r729 bra $L88; setp.gt.u16 %r731,%r708,96; @ %r731 bra $L89; setp.gt.u16 %r733,%r708,70; @ %r733 bra $L90; setp.gt.u16 %r735,%r708,64; @ ! %r735 bra $L86; bra $L89; $L90: setp.eq.u16 %r737,%r708,88; @ %r737 bra $L91; bra $L86; $L88: setp.eq.u16 %r739,%r708,120; @ %r739 bra $L91; bra $L86; $L83: .loc 1 1361 18 and.b32 %r740,%r246,2048; .loc 1 1361 8 setp.eq.u32 %r741,%r740,0; @ %r741 bra $L87; .loc 1 1363 8 setp.ne.u32 %r742,%r248,0; @ %r742 bra $L92; .loc 1 1366 15 or.b32 %r246,%r246,512; .loc 1 1365 14 mov.u32 %r248,8; $L92: .loc 1 1368 15 and.b32 %r743,%r246,1024; .loc 1 1368 8 setp.eq.u32 %r744,%r743,0; @ %r744 bra $L93; .loc 1 1370 15 and.b32 %r246,%r246,-1409; .loc 1 1371 9 bra $L87; $L93: .loc 1 1373 11 and.b32 %r246,%r246,-897; .loc 1 1374 8 setp.eq.u32 %r745,%r250,0; @ %r745 bra $L94; .loc 1 1376 19 add.u32 %r250,%r250,-1; .loc 1 1377 14 add.u64 %r237,%r237,1; $L94: .loc 1 1379 5 add.u32 %r251,%r251,1; .loc 1 1380 5 bra $L95; $L82: .loc 1 1397 19 cvta.const.u64 %r746,basefix$0; cvt.s64.s32 %r747,%r248; add.u64 %r748,%r747,%r747; add.u64 %r749,%r746,%r748; ld.s16 %r248,[%r749]; .loc 1 1398 8 setp.le.s32 %r750,%r248,8; @ %r750 bra $L86; .loc 1 1400 11 and.b32 %r246,%r246,-2945; .loc 1 1401 5 bra $L87; $L89: .loc 1 1417 8 setp.le.s32 %r751,%r248,10; @ %r751 bra $L86; .loc 1 1419 11 and.b32 %r246,%r246,-2945; .loc 1 1420 5 bra $L87; $L85: .loc 1 1425 15 and.b32 %r752,%r246,128; .loc 1 1425 8 setp.eq.u32 %r753,%r752,0; @ %r753 bra $L86; .loc 1 1427 15 and.b32 %r246,%r246,-129; .loc 1 1428 9 bra $L87; $L91: .loc 1 1435 16 and.b32 %r754,%r246,1536; .loc 1 1435 8 setp.ne.u32 %r755,%r754,512; @ %r755 bra $L86; .loc 1 1438 15 and.b32 %r287,%r246,-513; .loc 1 1442 15 or.b32 %r246,%r287,1280; .loc 1 1437 14 mov.u32 %r248,16; $L87: .loc 1 1457 13 cvt.u32.u32 %r756,%r144; st.u8 [%r242],%r756; .loc 1 1457 10 add.u64 %r242,%r242,1; $L95: .loc 1 1459 12 ld.u32 %r757,[%r379+8]; add.u32 %r153,%r757,-1; .loc 1 1459 11 st.u32 [%r379+8],%r153; setp.le.s32 %r758,%r153,0; @ %r758 bra $L96; .loc 1 1460 9 add.u64 %r759,%r143,1; st.u64 [%r379],%r759; bra $L97; $L96: .loc 1 1462 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r762,[%value_in]; } .loc 1 1462 11 setp.ne.u32 %r763,%r762,0; @ %r763 bra $L86; $L97: .loc 1 1342 30 add.u64 %r237,%r237,-1; .loc 1 1342 18 setp.ne.u64 %r764,%r237,0; @ %r764 bra $L98; $L86: .loc 1 1473 14 and.b32 %r765,%r246,256; .loc 1 1473 7 setp.eq.u32 %r766,%r765,0; @ %r766 bra $L99; .loc 1 1475 11 setp.ge.u64 %r767,%frame,%r242; @ %r767 bra $L100; .loc 1 1476 3 add.u64 %r289,%r242,-1; ld.s8 %r771,[%r242+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r771; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r772,[%value_in]; } mov.u64 %r242,%r289; $L100: .loc 1 1477 11 setp.eq.u64 %r773,%frame,%r242; @ %r773 bra $L1; $L99: .loc 1 1480 15 and.b32 %r774,%r246,16; .loc 1 1480 7 setp.ne.u32 %r775,%r774,0; @ %r775 bra $L101; .loc 1 1484 11 mov.u32 %r776,0; st.u8 [%r242],%r776; .loc 1 1485 15 mov.u64 %r779,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r248; call (%value_in),%r69,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r781,[%value_in]; } .loc 1 888 11 add.u64 %r782,%r381,7; and.b64 %r359,%r782,-8; add.u64 %r381,%r359,8; .loc 1 1486 18 and.b32 %r783,%r246,32; .loc 1 1486 11 setp.eq.u32 %r784,%r783,0; @ %r784 bra $L102; .loc 1 1488 12 ld.u64 %r299,[%r359]; .loc 1 1498 11 st.u64 [%r299],%r781; bra $L103; $L102: .loc 1 1507 23 and.b32 %r785,%r246,4; .loc 1 1507 16 setp.eq.u32 %r786,%r785,0; @ %r786 bra $L104; .loc 1 1510 9 ld.u64 %r787,[%r359]; st.u16 [%r787],%r781; bra $L103; $L104: .loc 1 1512 23 and.b32 %r788,%r246,1; .loc 1 1512 16 setp.eq.u32 %r789,%r788,0; @ %r789 bra $L105; .loc 1 1515 9 ld.u64 %r790,[%r359]; st.u64 [%r790],%r781; bra $L103; $L105: .loc 1 1518 23 and.b32 %r791,%r246,2; .loc 1 1518 16 setp.eq.u32 %r792,%r791,0; @ %r792 bra $L106; .loc 1 1521 8 mov.u64 %r793,_strtoul_r; setp.ne.u64 %r794,%r69,%r793; @ %r794 bra $L107; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r248; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r799,[%value_in]; } .loc 1 1526 10 mov.u64 %r167,%r799; bra $L108; $L107: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r248; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r804,[%value_in]; } mov.u64 %r167,%r804; $L108: .loc 1 1526 10 ld.u64 %r805,[%r359]; st.u64 [%r805],%r167; bra $L103; $L106: .loc 1 1532 9 ld.u64 %r806,[%r359]; st.u32 [%r806],%r781; $L103: .loc 1 1534 17 add.u32 %r377,%r377,1; $L101: .loc 1 1536 15 sub.u64 %r807,%r242,%frame; .loc 1 1536 21 cvt.u32.u64 %r808,%r807; .loc 1 1536 10 vadd.u32.u32.u32.add %r208,%r208,%r251,%r808; .loc 1 1537 4 bra $L7; $L51: .loc 1 1553 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r811,[%value_in]; } .loc 1 1553 16 ld.u64 %r276,[%r811]; .loc 1 1561 14 add.u64 %r812,%r237,-1; .loc 1 1561 7 setp.le.u64 %r813,%r812,348; @ %r813 bra $L176; .loc 1 1564 27 cvt.u32.u64 %r814,%r237; .loc 1 1564 19 add.u32 %r256,%r814,-349; .loc 1 1565 14 mov.u64 %r237,349; bra $L109; $L176: .loc 1 1550 13 mov.u32 %r256,0; $L109: .loc 1 1567 10 or.b32 %r247,%r245,1920; .loc 1 1551 9 mov.u32 %r257,%r258; .loc 1 1549 10 mov.u64 %r255,0; .loc 1 1569 15 mov.u64 %r254,%r255; .loc 1 1568 11 mov.u64 %r253,%r255; .loc 1 1547 9 mov.u64 %r252,%r255; .loc 1 1570 11 mov.u64 %r243,%frame; $L140: .loc 1 1572 15 ld.u64 %r177,[%r379]; .loc 1 1572 12 ld.u8 %r178,[%r177]; cvt.u16.u32 %r815,%r178; setp.eq.u16 %r816,%r815,78; @ %r816 bra $L110; setp.gt.u16 %r818,%r815,78; @ %r818 bra $L111; setp.gt.u16 %r820,%r815,57; @ %r820 bra $L112; setp.gt.u16 %r822,%r815,48; @ %r822 bra $L113; setp.eq.u16 %r824,%r815,48; @ %r824 bra $L114; add.u16 %r825,%r815,-43; cvt.u32.u16 %r827,%r825; cvt.u16.u8 %r1080,%r827; mov.u16 %r829,%r1080; and.b16 %r831,%r829,253; setp.eq.u16 %r832,%r831,0; @ ! %r832 bra $L116; bra $L115; $L112: setp.eq.u16 %r834,%r815,70; @ %r834 bra $L117; setp.gt.u16 %r836,%r815,70; @ %r836 bra $L118; setp.eq.u16 %r838,%r815,65; @ %r838 bra $L119; setp.eq.u16 %r840,%r815,69; @ %r840 bra $L120; bra $L116; $L118: setp.eq.u16 %r842,%r815,73; @ %r842 bra $L121; bra $L116; $L111: setp.eq.u16 %r844,%r815,102; @ %r844 bra $L117; setp.gt.u16 %r846,%r815,102; @ %r846 bra $L122; setp.eq.u16 %r848,%r815,97; @ %r848 bra $L119; setp.gt.u16 %r850,%r815,97; @ %r850 bra $L123; setp.eq.u16 %r852,%r815,84; @ %r852 bra $L124; setp.eq.u16 %r854,%r815,89; @ %r854 bra $L125; bra $L116; $L123: setp.eq.u16 %r856,%r815,101; @ %r856 bra $L120; bra $L116; $L122: setp.eq.u16 %r858,%r815,116; @ %r858 bra $L124; setp.gt.u16 %r860,%r815,116; @ %r860 bra $L126; setp.eq.u16 %r862,%r815,105; @ %r862 bra $L121; setp.eq.u16 %r864,%r815,110; @ %r864 bra $L110; bra $L116; $L126: setp.eq.u16 %r866,%r815,121; @ %r866 bra $L125; bra $L116; $L114: .loc 1 1580 15 and.b32 %r867,%r247,256; .loc 1 1580 8 setp.eq.u32 %r868,%r867,0; @ %r868 bra $L113; .loc 1 1582 15 and.b32 %r247,%r247,-129; .loc 1 1583 15 add.u64 %r253,%r253,1; .loc 1 1584 12 setp.ne.u32 %r869,%r256,0; @ %r869 bra $L127; .loc 1 1755 13 add.u64 %r237,%r237,-1; bra $L128; $L127: .loc 1 1586 16 add.u32 %r256,%r256,-1; bra $L128; $L113: .loc 1 1601 18 add.u32 %r870,%r257,%r258; .loc 1 1601 8 setp.ne.u32 %r871,%r870,0; @ %r871 bra $L129; .loc 1 1603 15 and.b32 %r247,%r247,-385; .loc 1 1604 9 bra $L130; $L115: .loc 1 1610 15 and.b32 %r872,%r247,128; .loc 1 1610 8 setp.eq.u32 %r873,%r872,0; @ %r873 bra $L129; .loc 1 1612 15 and.b32 %r247,%r247,-129; .loc 1 1613 9 bra $L130; $L110: .loc 1 1618 18 cvt.u16.u32 %r875,%r257; set.u32.eq.u16 %r876,%r875,0; neg.s32 %r877,%r876; mov.u32 %r874,%r877; .loc 1 1618 33 set.u32.eq.u64 %r879,%r253,0; neg.s32 %r880,%r879; mov.u32 %r878,%r880; .loc 1 1618 23 cvt.u16.u8 %r1080,%r874; mov.u16 %r882,%r1080; cvt.u16.u8 %r1080,%r878; mov.u16 %r883,%r1080; and.b16 %r881,%r882,%r883; cvt.u32.u16 %r884,%r881; .loc 1 1618 8 cvt.u16.u8 %r885,%r884; setp.eq.u16 %r886,%r885,0; @ %r886 bra $L131; .loc 1 1619 19 and.b32 %r887,%r247,1792; .loc 1 1619 9 setp.ne.u32 %r888,%r887,1792; @ %r888 bra $L132; .loc 1 1622 15 and.b32 %r247,%r247,-1921; .loc 1 1623 18 mov.u32 %r257,1; .loc 1 1624 9 mov.u64 %r253,0; bra $L130; $L131: .loc 1 1626 8 setp.eq.u16 %r890,%r875,2; @ %r890 bra $L177; $L132: .loc 1 1631 18 cvt.u16.u32 %r892,%r258; set.u32.eq.u16 %r893,%r892,1; neg.s32 %r894,%r893; mov.u32 %r891,%r894; .loc 1 1631 35 set.u32.eq.u16 %r897,%r892,4; neg.s32 %r898,%r897; mov.u32 %r895,%r898; .loc 1 1631 23 cvt.u16.u8 %r1080,%r891; mov.u16 %r900,%r1080; cvt.u16.u8 %r1080,%r895; mov.u16 %r901,%r1080; or.b16 %r899,%r900,%r901; cvt.u32.u16 %r902,%r899; .loc 1 1631 8 cvt.u16.u8 %r903,%r902; setp.eq.u16 %r904,%r903,0; @ %r904 bra $L129; .loc 1 1633 17 add.u16 %r906,%r892,1; cvt.u32.u16 %r908,%r906; cvt.s32.s8 %r258,%r908; .loc 1 1634 9 bra $L130; $L119: .loc 1 1639 8 cvt.u16.u32 %r910,%r257; setp.eq.u16 %r911,%r910,1; @ %r911 bra $L178; bra $L129; $L121: .loc 1 1647 18 cvt.u16.u32 %r913,%r258; set.u32.eq.u16 %r914,%r913,0; neg.s32 %r915,%r914; mov.u32 %r912,%r915; .loc 1 1647 33 set.u32.eq.u64 %r917,%r253,0; neg.s32 %r918,%r917; mov.u32 %r916,%r918; .loc 1 1647 23 cvt.u16.u8 %r1080,%r912; mov.u16 %r920,%r1080; cvt.u16.u8 %r1080,%r916; mov.u16 %r921,%r1080; and.b16 %r919,%r920,%r921; cvt.u32.u16 %r922,%r919; .loc 1 1647 8 cvt.u16.u8 %r923,%r922; setp.eq.u16 %r924,%r923,0; @ %r924 bra $L133; .loc 1 1648 19 and.b32 %r925,%r247,1792; .loc 1 1648 9 setp.ne.u32 %r926,%r925,1792; @ %r926 bra $L134; .loc 1 1651 15 and.b32 %r247,%r247,-1921; .loc 1 1652 18 mov.u32 %r258,1; .loc 1 1653 9 mov.u64 %r253,0; bra $L130; $L133: .loc 1 1655 18 cvt.u32.u32 %r927,%r258; cvt.u16.u8 %r929,%r927; add.u16 %r928,%r929,-3; cvt.u32.u16 %r930,%r928; cvt.u16.u8 %r1080,%r930; mov.u16 %r932,%r1080; .loc 1 1655 8 and.b16 %r934,%r932,253; setp.ne.u16 %r935,%r934,0; @ %r935 bra $L129; .loc 1 1657 17 add.u16 %r936,%r929,1; cvt.u32.u16 %r938,%r936; cvt.s32.s8 %r258,%r938; .loc 1 1658 9 bra $L130; $L117: .loc 1 1663 8 cvt.u16.u32 %r939,%r258; setp.eq.u16 %r940,%r939,2; @ %r940 bra $L179; bra $L129; $L124: .loc 1 1671 8 cvt.u16.u32 %r941,%r258; setp.eq.u16 %r942,%r941,6; @ %r942 bra $L180; bra $L129; $L125: .loc 1 1679 8 cvt.u16.u32 %r943,%r258; setp.eq.u16 %r944,%r943,7; @ %r944 bra $L181; bra $L129; $L120: .loc 1 1688 16 and.b32 %r945,%r247,1280; .loc 1 1688 8 setp.eq.u32 %r946,%r945,1024; @ %r946 bra $L135; .loc 1 1689 20 and.b32 %r947,%r247,1024; .loc 1 1689 9 setp.eq.u32 %r948,%r947,0; @ %r948 bra $L129; .loc 1 1689 29 setp.eq.u64 %r949,%r253,0; @ %r949 bra $L136; $L135: .loc 1 1691 22 and.b32 %r950,%r247,512; .loc 1 1691 12 setp.ne.u32 %r951,%r950,0; @ %r951 bra $L137; .loc 1 1693 17 sub.u64 %r254,%r253,%r252; mov.u64 %r255,%r243; $L137: .loc 1 1698 11 and.b32 %r201,%r247,-1921; .loc 1 1696 15 or.b32 %r247,%r201,384; .loc 1 1699 16 mov.u64 %r253,0; .loc 1 1700 9 bra $L130; $L116: .loc 1 1705 8 ld.u8 %r952,[%r276]; cvt.u16.u32 %r953,%r178; setp.ne.u16 %r954,%r952,%r953; @ %r954 bra $L129; .loc 1 1706 19 and.b32 %r955,%r247,512; .loc 1 1706 9 setp.eq.u32 %r956,%r955,0; @ %r956 bra $L129; .loc 1 1708 15 and.b32 %r247,%r247,-641; .loc 1 1710 9 mov.u64 %r252,%r253; bra $L130; $L177: .loc 1 1628 18 mov.u32 %r257,3; bra $L130; $L178: .loc 1 1641 18 mov.u32 %r257,2; bra $L130; $L179: .loc 1 1665 18 mov.u32 %r258,3; bra $L130; $L180: .loc 1 1673 18 mov.u32 %r258,7; bra $L130; $L181: .loc 1 1681 18 mov.u32 %r258,8; $L130: .loc 1 1753 13 cvt.u32.u32 %r957,%r178; st.u8 [%r243],%r957; .loc 1 1755 13 add.u64 %r237,%r237,-1; .loc 1 1753 10 add.u64 %r243,%r243,1; $L128: .loc 1 1756 8 add.u32 %r208,%r208,1; .loc 1 1757 12 ld.u32 %r958,[%r379+8]; add.u32 %r207,%r958,-1; .loc 1 1757 11 st.u32 [%r379+8],%r207; setp.le.s32 %r959,%r207,0; @ %r959 bra $L138; .loc 1 1758 9 add.u64 %r960,%r177,1; st.u64 [%r379],%r960; bra $L139; $L138: .loc 1 1760 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r963,[%value_in]; } .loc 1 1760 11 setp.ne.u32 %r964,%r963,0; @ %r964 bra $L129; $L139: .loc 1 1570 18 setp.ne.u64 %r965,%r237,0; @ %r965 bra $L140; $L129: .loc 1 1763 7 setp.eq.u64 %r966,%r253,0; @ %r966 bra $L136; .loc 1 1764 12 and.b32 %r247,%r247,-257; $L136: .loc 1 1773 17 add.u32 %r967,%r257,-1; .loc 1 1773 7 setp.gt.u32 %r968,%r967,1; @ %r968 bra $L141; $L161: .loc 1 1778 17 setp.ge.u64 %r969,%frame,%r243; @ %r969 bra $L1; $L142: .loc 1 1780 5 add.u64 %r243,%r243,-1; ld.s8 %r973,[%r243]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r973; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r974,[%value_in]; } .loc 1 1778 17 setp.ne.u64 %r975,%frame,%r243; @ %r975 bra $L142; bra $L1; $L141: .loc 1 1788 17 add.u32 %r976,%r258,-1; .loc 1 1788 7 setp.gt.u32 %r977,%r976,6; @ %r977 bra $L143; .loc 1 1790 11 cvt.u16.u32 %r978,%r258; setp.le.s16 %r979,%r978,2; @ %r979 bra $L144; .loc 1 1791 18 cvt.u32.u32 %r980,%r258; cvt.u32.u8 %r303,%r980; .loc 1 1791 21 setp.ne.u16 %r982,%r978,3; @ %r982 bra $L182; bra $L143; $L144: .loc 1 1798 14 setp.lt.u64 %r983,%frame,%r243; @ %r983 bra $L146; bra $L1; $L182: .loc 1 1791 21 mov.u64 %r281,%r243; cvt.u32.u64 %r1075,%r281; cvt.u32.u64 %r1074,%r281; cvt.u16.u32 %r995,%r303; cvt.u16.u8 %r1080,%r1074; mov.u16 %r1000,%r1080; $L145: .loc 1 1793 7 add.u64 %r281,%r281,-1; ld.s8 %r987,[%r281]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r987; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r988,[%value_in]; } cvt.u32.u64 %r990,%r281; vsub.u32.u32.u32.add %r346,%r990,%r1075,%r208; .loc 1 1791 21 cvt.u32.u64 %r992,%r281; cvt.u16.u8 %r1080,%r992; mov.u16 %r994,%r1080; add.u16 %r993,%r994,%r995; cvt.u32.u16 %r996,%r993; cvt.u16.u8 %r1080,%r996; mov.u16 %r999,%r1080; sub.u16 %r998,%r999,%r1000; cvt.u32.u16 %r1001,%r998; cvt.s16.s8 %r1002,%r1001; setp.gt.s16 %r1003,%r1002,3; @ %r1003 bra $L145; .loc 1 1794 7 mov.u32 %r208,%r346; mov.u64 %r243,%r281; bra $L143; $L146: .loc 1 1800 9 add.u64 %r243,%r243,-1; ld.s8 %r1007,[%r243]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1007; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1008,[%value_in]; } .loc 1 1798 14 setp.ne.u64 %r1009,%frame,%r243; @ %r1009 bra $L146; bra $L1; $L143: .loc 1 1811 14 and.b32 %r1010,%r247,256; .loc 1 1811 7 setp.eq.u32 %r1011,%r1010,0; @ %r1011 bra $L147; .loc 1 1813 18 and.b32 %r1012,%r247,1024; .loc 1 1813 11 setp.eq.u32 %r1013,%r1012,0; @ %r1013 bra $L148; .loc 1 1816 14 setp.ge.u64 %r1014,%frame,%r243; @ %r1014 bra $L1; $L149: .loc 1 1818 9 add.u64 %r243,%r243,-1; ld.s8 %r1018,[%r243]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1018; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1019,[%value_in]; } .loc 1 1816 14 setp.ne.u64 %r1020,%frame,%r243; @ %r1020 bra $L149; bra $L1; $L148: .loc 1 1824 12 ld.s8 %r236,[%r243+-1]; .loc 1 1826 26 cvt.u16.u32 %r1022,%r236; and.b16 %r1021,%r1022,-33; cvt.u32.u16 %r1023,%r1021; .loc 1 1826 11 cvt.s16.s8 %r1024,%r1023; setp.ne.u16 %r1025,%r1024,69; @ %r1025 bra $L150; .loc 1 1824 10 add.u64 %r243,%r243,-1; .loc 1 1825 8 add.u32 %r208,%r208,-1; bra $L151; $L150: .loc 1 1828 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r236; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1029,[%value_in]; } .loc 1 1829 7 ld.s8 %r236,[%r243+-2]; .loc 1 1830 5 add.u32 %r208,%r208,-2; .loc 1 1829 7 add.u64 %r243,%r243,-2; $L151: .loc 1 1832 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r236; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1033,[%value_in]; } $L147: .loc 1 1834 15 and.b32 %r1034,%r247,16; .loc 1 1834 7 setp.ne.u32 %r1035,%r1034,0; @ %r1035 bra $L7; .loc 1 1845 11 mov.u32 %r1036,0; st.u8 [%r243],%r1036; .loc 1 1846 19 and.b32 %r1037,%r247,1536; .loc 1 1846 11 setp.ne.u32 %r1038,%r1037,1024; @ %r1038 bra $L152; .loc 1 1854 11 setp.eq.u64 %r1039,%r252,%r253; @ %r1039 bra $L153; .loc 1 1849 13 sub.u64 %r283,%r252,%r253; bra $L154; $L152: .loc 1 1852 16 setp.eq.u64 %r1040,%r254,0; @ %r1040 bra $L153; .loc 1 1853 55 add.u64 %r1045,%r255,1; .loc 1 1853 27 mov.u32 %r1044,10; mov.u64 %r1043,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1045; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1043; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1044; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r1046,[%value_in]; } .loc 1 1853 25 sub.u64 %r283,%r1046,%r254; mov.u64 %r243,%r255; $L154: .loc 1 1859 8 setp.lt.u64 %r1048,%r243,%r1078; @ %r1048 bra $L155; .loc 1 1860 17 add.u64 %r243,%frame,328; $L155: .loc 1 1861 18 st.u64 [%stack],%r283; cvta.const.u64 %r1050,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r243; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1050; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1051,[%value_in]; } $L153: .loc 1 1873 16 mov.u64 %r1055,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1055; call (%value_in),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r1056,[%value_in]; } .loc 1 888 11 add.u64 %r1057,%r381,7; and.b64 %r320,%r1057,-8; add.u64 %r381,%r320,8; .loc 1 1875 18 and.b32 %r1058,%r247,1; .loc 1 1875 11 setp.eq.u32 %r1059,%r1058,0; @ %r1059 bra $L156; .loc 1 1878 9 ld.u64 %r1060,[%r320]; st.f64 [%r1060],%r1056; bra $L157; $L156: .loc 1 1877 8 ld.u64 %r339,[%r320]; .loc 1 1880 23 and.b32 %r1061,%r247,2; .loc 1 1880 16 setp.eq.u32 %r1062,%r1061,0; @ %r1062 bra $L158; .loc 1 1883 10 st.f64 [%r339],%r1056; bra $L157; $L158: .loc 1 1888 8 setp.num.f64 %r1063,%r1056,%r1056; @ %r1063 bra $L159; .loc 1 1889 14 cvta.const.u64 %r1064,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1064; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r1065,[%value_in]; } .loc 1 1889 12 st.f32 [%r339],%r1065; bra $L157; $L159: .loc 1 1891 12 cvt.rn.f32.f64 %r1066,%r1056; st.f32 [%r339],%r1066; $L157: .loc 1 1893 17 add.u32 %r377,%r377,1; bra $L7; $L35: .loc 1 1905 63 setp.eq.u32 %r1067,%r377,0; @ %r1067 bra $L183; .loc 1 1905 25 ld.u16 %r1069,[%r379+16]; and.b16 %r1068,%r1069,64; setp.ne.u16 %r1070,%r1068,0; .loc 1 1905 63 selp.u32 %r377,-1,%r377,%r1070; bra $L1; $L162: .loc 1 613 10 mov.u32 %r377,%r27; bra $L1; $L183: .loc 1 1905 63 mov.u32 %r377,-1; bra $L1; $L3: $L160: $L134: .loc 1 1773 17 add.u32 %r1072,%r257,-1; .loc 1 1773 7 setp.le.u32 %r1073,%r1072,1; @ %r1073 bra $L161; mov.u64 %r253,0; bra $L143; $L1: .loc 1 1914 1 mov.u32 %value,%r377; st.param.u32 [%value_out],%value; ret; } /1598 0 0 0 644 90600 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9); .file 1 "../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: _svfwprintf_r .visible .func (.param .u32 %value_out) _svfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .extern .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 4 .u32 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 4 .u32 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 4 .u32 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 4 .u32 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 4 .u32 $LC7[2] = {48,0 }; // BEGIN FUNCTION DEF: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u32 %ar6; ld.param.u32 %ar6,[%in_ar6]; .reg .u64 %ar7; ld.param.u64 %ar7,[%in_ar7]; .reg .u64 %ar8; ld.param.u64 %ar8,[%in_ar8]; .reg .u32 %ar9; ld.param.u32 %ar9,[%in_ar9]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r47; .reg .u64 %r50; .reg .u32 %r54; .reg .u64 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r74; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .u32 %r110; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .u32 %r120; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u16 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u16 %r144; mov.u64 %r56,%ar0; mov.f64 %r57,%ar1; mov.u32 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r61,%ar5; mov.u32 %r62,%ar6; mov.u64 %r63,%ar7; mov.u64 %r64,%ar8; mov.u32 %r65,%ar9; .loc 1 1562 6 mov.b64 %r66,%r57; shr.u64 %r67,%r66,32; cvt.u32.u64 %r68,%r67; .loc 1 1562 5 setp.ge.s32 %r69,%r68,0; @ %r69 bra $L18; .loc 1 1563 9 neg.f64 %r57,%r57; .loc 1 1564 9 mov.u32 %r39,45; bra $L2; $L18: .loc 1 1566 9 mov.u32 %r39,0; $L2: st.u32 [%r60],%r39; .loc 1 1616 23 and.b32 %r25,%r62,-33; .loc 1 1616 5 setp.eq.u32 %r70,%r25,70; @ %r70 bra $L3; .loc 1 1623 6 setp.ne.u32 %r71,%r25,69; @ %r71 bra $L4; .loc 1 1624 11 add.u32 %r58,%r58,1; .loc 1 1635 13 add.u64 %r79,%frame,8; mov.u32 %r74,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r74; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r79; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r80,[%value_in]; } mov.u64 %r50,%r80; bra $L5; $L23: .loc 1 1642 10 ld.u32 %r54,[%r61]; bra $L6; $L15: .loc 1 1641 23 mov.u32 %r81,1; sub.u32 %r54,%r81,%r58; .loc 1 1641 12 st.u32 [%r61],%r54; $L6: .loc 1 1642 10 cvt.s64.s32 %r82,%r54; .loc 1 1642 7 add.u64 %r83,%r82,%r47; add.u64 %r35,%r126,%r83; $L13: .loc 1 1644 6 setp.neu.f64 %r84,%r57,0d0000000000000000; @ %r84 bra $L7; .loc 1 1645 8 st.u64 [%frame],%r35; mov.u64 %r29,%r35; bra $L8; $L7: .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.le.u64 %r85,%r35,%r29; @ %r85 bra $L8; .loc 1 1647 11 mov.u32 %r87,48; $L9: .loc 1 1647 8 add.u64 %r86,%r29,1; st.u64 [%frame],%r86; .loc 1 1647 11 st.u8 [%r29],%r87; .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.lt.u64 %r88,%r29,%r35; @ %r88 bra $L9; $L8: .loc 1 1650 18 sub.u64 %r89,%r29,%r50; .loc 1 1650 12 cvt.u32.u64 %r31,%r89; st.u32 [%r63],%r31; .loc 1 1655 28 set.u32.gt.s32 %r91,%r65,0; neg.s32 %r92,%r91; mov.u32 %r90,%r92; set.u32.gt.s32 %r94,%r31,0; neg.s32 %r95,%r94; mov.u32 %r93,%r95; cvt.u16.u8 %r144,%r90; mov.u16 %r97,%r144; cvt.u16.u8 %r144,%r93; mov.u16 %r98,%r144; and.b16 %r96,%r97,%r98; cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r100,%r99; setp.ne.u16 %r101,%r100,0; @ ! %r101 bra $L21; mov.u64 %r36,%r50; mov.u64 %r37,%r64; .loc 1 1655 11 mov.u32 %r40,0; $L11: .loc 1 1656 15 ld.s8 %r103,[%r36]; st.u32 [%r37],%r103; .loc 1 1655 40 add.u32 %r40,%r40,1; .loc 1 1655 28 add.u64 %r36,%r36,1; add.u64 %r37,%r37,4; ld.u32 %r105,[%r63]; min.s32 %r104,%r65,%r105; setp.gt.s32 %r106,%r104,%r40; @ %r106 bra $L11; bra $L21; $L5: .loc 1 1638 15 cvt.s64.s32 %r107,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r107; bra $L13; $L4: .loc 1 1635 13 add.u64 %r115,%frame,8; mov.u32 %r110,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r110; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r115; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r116,[%value_in]; } mov.u64 %r50,%r116; .loc 1 1637 7 setp.ne.u32 %r117,%r25,71; @ ! %r117 bra $L22; bra $L5; $L3: .loc 1 1635 13 add.u64 %r125,%frame,8; mov.u32 %r120,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r120; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r125; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r126,[%value_in]; } mov.u64 %r50,%r126; .loc 1 1638 15 cvt.s64.s32 %r47,%r58; .loc 1 1640 7 ld.u8 %r129,[%r126]; cvt.s16.s8 %r128,%r129; set.u32.eq.u16 %r130,%r128,48; neg.s32 %r131,%r130; mov.u32 %r127,%r131; .loc 1 1640 24 set.u32.neu.f64 %r133,%r57,0d0000000000000000; neg.s32 %r134,%r133; mov.u32 %r132,%r134; cvt.u16.u8 %r144,%r127; mov.u16 %r136,%r144; cvt.u16.u8 %r144,%r132; mov.u16 %r137,%r144; and.b16 %r135,%r136,%r137; cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ ! %r140 bra $L23; bra $L15; $L17: .loc 1 1638 15 cvt.s64.s32 %r141,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r141; bra $L13; $L22: .loc 1 1637 44 and.b32 %r142,%r59,1; .loc 1 1637 35 setp.ne.u32 %r143,%r142,0; @ %r143 bra $L17; .loc 1 1650 18 ld.u64 %r29,[%frame]; bra $L8; $L21: .loc 1 1660 1 mov.u64 %value,%r64; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _svfwprintf_r .visible .func (.param .u32 %value_out) _svfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[400]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r59; .reg .u32 %r67; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r123; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r147; .reg .u32 %r150; .reg .u64 %r153; .reg .u64 %r154; .reg .u32 %r155; .reg .u64 %r158; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u64 %r164; .reg .u64 %r165; .reg .u32 %r167; .reg .u32 %r170; .reg .u32 %r173; .reg .u32 %r176; .reg .u64 %r179; .reg .u32 %r180; .reg .u32 %r182; .reg .u32 %r184; .reg .u64 %r190; .reg .u64 %r192; .reg .f64 %r193; .reg .u32 %r194; .reg .u32 %r195; .reg .u64 %r200; .reg .u32 %r202; .reg .u32 %r206; .reg .u64 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u64 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u32 %r218; .reg .u32 %r223; .reg .u64 %r224; .reg .u32 %r226; .reg .u64 %r230; .reg .u64 %r231; .reg .u32 %r232; .reg .u64 %r237; .reg .u32 %r238; .reg .u64 %r240; .reg .u64 %r243; .reg .u64 %r246; .reg .u32 %r248; .reg .u64 %r253; .reg .u32 %r254; .reg .u64 %r255; .reg .u32 %r262; .reg .u64 %r264; .reg .u32 %r265; .reg .u32 %r266; .reg .u32 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u64 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u64 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u64 %r277; .reg .u64 %r278; .reg .u64 %r279; .reg .u32 %r280; .reg .u32 %r282; .reg .u32 %r283; .reg .u32 %r289; .reg .u32 %r290; .reg .u64 %r294; .reg .u32 %r297; .reg .u32 %r298; .reg .u64 %r299; .reg .u32 %r301; .reg .u64 %r302; .reg .u32 %r303; .reg .u64 %r304; .reg .u32 %r305; .reg .u64 %r306; .reg .u64 %r309; .reg .u64 %r314; .reg .u64 %r317; .reg .u32 %r322; .reg .u32 %r323; .reg .u32 %r324; .reg .u64 %r325; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r330; .reg .u64 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r338; .reg .u64 %r339; .reg .u64 %r340; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r344; .reg .u64 %r347; .reg .u64 %r352; .reg .u64 %r353; .reg .u64 %r354; .reg .u64 %r355; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r364; .reg .u64 %r369; .reg .u64 %r372; .reg .u32 %r381; .reg .u32 %r384; .reg .u32 %r385; .reg .u64 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r392; .reg .u64 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r409; .reg .u64 %r412; .reg .u32 %r413; .reg .u32 %r414; .reg .u64 %r417; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r423; .reg .u64 %r424; .reg .u64 %r425; .reg .u64 %r426; .reg .u64 %r427; .reg .u32 %r429; .reg .u64 %r431; .reg .u64 %r432; .reg .u32 %r433; .reg .u16 %r434; .reg .u16 %r435; .reg .pred %r436; .reg .u64 %r437; .reg .pred %r438; .reg .u64 %r440; .reg .u64 %r441; .reg .pred %r442; .reg .u32 %r443; .reg .u32 %r444; .reg .u64 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .u32 %r453; .reg .u16 %r454; .reg .u16 %r455; .reg .u16 %r456; .reg .u32 %r457; .reg .u16 %r458; .reg .pred %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .u32 %r462; .reg .u32 %r463; .reg .u32 %r464; .reg .u32 %r465; .reg .u16 %r466; .reg .u16 %r467; .reg .u16 %r468; .reg .u32 %r469; .reg .u16 %r470; .reg .pred %r471; .reg .u64 %r472; .reg .u64 %r474; .reg .pred %r475; .reg .u64 %r476; .reg .u64 %r477; .reg .u64 %r478; .reg .u32 %r479; .reg .pred %r480; .reg .u32 %r485; .reg .pred %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .pred %r489; .reg .u32 %r490; .reg .pred %r491; .reg .pred %r492; .reg .pred %r493; .reg .pred %r494; .reg .pred %r495; .reg .pred %r496; .reg .pred %r497; .reg .pred %r498; .reg .pred %r499; .reg .pred %r500; .reg .pred %r501; .reg .pred %r502; .reg .pred %r503; .reg .pred %r504; .reg .pred %r505; .reg .pred %r506; .reg .pred %r507; .reg .pred %r508; .reg .pred %r509; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r515; .reg .u32 %r516; .reg .pred %r517; .reg .pred %r518; .reg .pred %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u32 %r532; .reg .u32 %r534; .reg .u32 %r535; .reg .u32 %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u32 %r541; .reg .u32 %r542; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u32 %r552; .reg .pred %r553; .reg .u16 %r554; .reg .u16 %r555; .reg .u32 %r556; .reg .pred %r558; .reg .u32 %r559; .reg .pred %r560; .reg .u32 %r561; .reg .pred %r562; .reg .u32 %r563; .reg .pred %r564; .reg .u16 %r565; .reg .pred %r568; .reg .pred %r569; .reg .u64 %r570; .reg .f64 %r573; .reg .pred %r574; .reg .pred %r575; .reg .pred %r576; .reg .u32 %r577; .reg .pred %r578; .reg .u64 %r579; .reg .u64 %r580; .reg .u32 %r582; .reg .pred %r583; .reg .u32 %r584; .reg .pred %r585; .reg .pred %r586; .reg .u32 %r587; .reg .u32 %r588; .reg .u32 %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .u32 %r592; .reg .u32 %r593; .reg .u16 %r594; .reg .u16 %r595; .reg .u16 %r596; .reg .u32 %r597; .reg .u16 %r598; .reg .pred %r599; .reg .u32 %r609; .reg .u64 %r613; .reg .pred %r614; .reg .pred %r615; .reg .u64 %r618; .reg .u64 %r619; .reg .u64 %r620; .reg .pred %r621; .reg .u16 %r622; .reg .u16 %r623; .reg .u32 %r634; .reg .u64 %r638; .reg .u32 %r639; .reg .pred %r640; .reg .u32 %r641; .reg .u32 %r642; .reg .u32 %r643; .reg .u32 %r644; .reg .u32 %r645; .reg .u32 %r646; .reg .u16 %r647; .reg .u16 %r648; .reg .u16 %r649; .reg .u32 %r650; .reg .u16 %r651; .reg .pred %r652; .reg .pred %r653; .reg .pred %r654; .reg .u32 %r655; .reg .pred %r656; .reg .u32 %r658; .reg .u32 %r659; .reg .pred %r662; .reg .pred %r665; .reg .pred %r669; .reg .u64 %r675; .reg .u64 %r677; .reg .u64 %r678; .reg .u64 %r679; .reg .u64 %r681; .reg .u64 %r683; .reg .u32 %r684; .reg .u32 %r685; .reg .pred %r686; .reg .pred %r687; .reg .u32 %r688; .reg .pred %r689; .reg .pred %r690; .reg .pred %r691; .reg .u32 %r692; .reg .pred %r693; .reg .u32 %r694; .reg .pred %r695; .reg .pred %r696; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u64 %r701; .reg .u32 %r702; .reg .pred %r703; .reg .u64 %r704; .reg .u64 %r705; .reg .u32 %r706; .reg .pred %r707; .reg .u64 %r708; .reg .u64 %r709; .reg .u32 %r710; .reg .pred %r711; .reg .u64 %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .pred %r715; .reg .u32 %r716; .reg .pred %r717; .reg .u32 %r718; .reg .pred %r719; .reg .u16 %r720; .reg .u32 %r721; .reg .u32 %r722; .reg .u32 %r723; .reg .pred %r724; .reg .pred %r725; .reg .pred %r726; .reg .u64 %r730; .reg .pred %r731; .reg .u64 %r733; .reg .pred %r734; .reg .u64 %r737; .reg .u64 %r738; .reg .u64 %r739; .reg .pred %r740; .reg .u16 %r741; .reg .u16 %r742; .reg .u64 %r744; .reg .u32 %r745; .reg .pred %r746; .reg .u32 %r747; .reg .u64 %r751; .reg .u64 %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u64 %r759; .reg .u64 %r760; .reg .pred %r761; .reg .u64 %r762; .reg .u64 %r764; .reg .u32 %r765; .reg .u64 %r767; .reg .u32 %r768; .reg .pred %r769; .reg .u32 %r770; .reg .pred %r771; .reg .u32 %r772; .reg .pred %r773; .reg .u16 %r774; .reg .pred %r775; .reg .u32 %r776; .reg .pred %r777; .reg .u32 %r778; .reg .pred %r779; .reg .u32 %r780; .reg .pred %r781; .reg .u16 %r782; .reg .u32 %r783; .reg .pred %r784; .reg .pred %r785; .reg .u32 %r786; .reg .pred %r787; .reg .u32 %r788; .reg .u32 %r789; .reg .u32 %r790; .reg .u32 %r791; .reg .u32 %r792; .reg .u32 %r793; .reg .u16 %r794; .reg .u16 %r795; .reg .u16 %r796; .reg .u32 %r797; .reg .u16 %r798; .reg .pred %r799; .reg .pred %r800; .reg .pred %r801; .reg .u32 %r802; .reg .u32 %r803; .reg .pred %r804; .reg .u32 %r805; .reg .u32 %r806; .reg .u32 %r807; .reg .u32 %r808; .reg .u16 %r809; .reg .u16 %r810; .reg .u32 %r811; .reg .u16 %r812; .reg .u16 %r813; .reg .u16 %r814; .reg .u32 %r815; .reg .u16 %r816; .reg .pred %r817; .reg .u64 %r819; .reg .u64 %r821; .reg .u32 %r822; .reg .u64 %r824; .reg .u64 %r826; .reg .pred %r827; .reg .u32 %r828; .reg .u32 %r829; .reg .u64 %r831; .reg .u32 %r832; .reg .u32 %r833; .reg .pred %r836; .reg .u64 %r838; .reg .u64 %r840; .reg .u64 %r841; .reg .u64 %r842; .reg .u64 %r843; .reg .u32 %r844; .reg .pred %r845; .reg .u64 %r847; .reg .u64 %r849; .reg .pred %r850; .reg .pred %r851; .reg .u32 %r852; .reg .pred %r853; .reg .pred %r854; .reg .u32 %r855; .reg .pred %r856; .reg .pred %r858; .reg .pred %r859; .reg .pred %r860; .reg .u64 %r862; .reg .pred %r863; .reg .u32 %r868; .reg .pred %r869; .reg .pred %r870; .reg .u64 %r872; .reg .pred %r873; .reg .u32 %r878; .reg .pred %r879; .reg .u32 %r880; .reg .pred %r881; .reg .u64 %r883; .reg .u32 %r884; .reg .pred %r885; .reg .u32 %r890; .reg .pred %r891; .reg .u64 %r894; .reg .u32 %r895; .reg .pred %r896; .reg .u32 %r901; .reg .pred %r902; .reg .pred %r903; .reg .pred %r904; .reg .pred %r905; .reg .u64 %r907; .reg .pred %r908; .reg .u32 %r913; .reg .pred %r914; .reg .pred %r915; .reg .u64 %r917; .reg .pred %r918; .reg .u32 %r923; .reg .pred %r924; .reg .pred %r925; .reg .pred %r926; .reg .u64 %r928; .reg .pred %r929; .reg .u32 %r934; .reg .pred %r935; .reg .pred %r936; .reg .u64 %r938; .reg .pred %r939; .reg .u32 %r944; .reg .pred %r945; .reg .u32 %r946; .reg .pred %r947; .reg .u64 %r948; .reg .u32 %r949; .reg .pred %r950; .reg .u32 %r955; .reg .pred %r956; .reg .pred %r957; .reg .pred %r958; .reg .u64 %r959; .reg .u64 %r960; .reg .u32 %r961; .reg .pred %r962; .reg .u32 %r967; .reg .pred %r968; .reg .u32 %r969; .reg .pred %r970; .reg .u32 %r971; .reg .pred %r972; .reg .u64 %r974; .reg .u32 %r975; .reg .pred %r976; .reg .u32 %r981; .reg .pred %r982; .reg .pred %r983; .reg .pred %r984; .reg .u64 %r986; .reg .pred %r987; .reg .u32 %r992; .reg .pred %r993; .reg .pred %r994; .reg .u64 %r996; .reg .pred %r997; .reg .u32 %r1002; .reg .pred %r1003; .reg .pred %r1004; .reg .u64 %r1005; .reg .u64 %r1006; .reg .u32 %r1007; .reg .pred %r1008; .reg .u32 %r1013; .reg .pred %r1014; .reg .pred %r1015; .reg .u32 %r1016; .reg .u32 %r1017; .reg .pred %r1018; .reg .u64 %r1020; .reg .u32 %r1021; .reg .pred %r1022; .reg .u32 %r1027; .reg .pred %r1028; .reg .pred %r1029; .reg .pred %r1030; .reg .u64 %r1032; .reg .pred %r1033; .reg .u32 %r1038; .reg .pred %r1039; .reg .pred %r1040; .reg .u64 %r1042; .reg .pred %r1043; .reg .u32 %r1048; .reg .pred %r1049; .reg .u64 %r1050; .reg .pred %r1051; .reg .u32 %r1056; .reg .pred %r1057; .reg .u32 %r1062; .reg .pred %r1063; .reg .u64 %r1064; .reg .u32 %r1065; .reg .pred %r1066; .reg .u32 %r1071; .reg .pred %r1072; .reg .u32 %r1073; .reg .pred %r1074; .reg .pred %r1075; .reg .u64 %r1077; .reg .pred %r1078; .reg .u32 %r1083; .reg .pred %r1084; .reg .pred %r1085; .reg .u64 %r1087; .reg .pred %r1088; .reg .u32 %r1093; .reg .pred %r1094; .reg .u64 %r1095; .reg .pred %r1096; .reg .u32 %r1097; .reg .pred %r1098; .reg .u64 %r1100; .reg .u32 %r1101; .reg .pred %r1102; .reg .u32 %r1107; .reg .pred %r1108; .reg .u64 %r1109; .reg .u64 %r1110; .reg .u64 %r1111; .reg .u64 %r1113; .reg .u32 %r1114; .reg .pred %r1115; .reg .u64 %r1116; .reg .u64 %r1117; .reg .u32 %r1118; .reg .pred %r1119; .reg .u32 %r1124; .reg .pred %r1125; .reg .u32 %r1126; .reg .u32 %r1127; .reg .u32 %r1128; .reg .pred %r1129; .reg .pred %r1130; .reg .u64 %r1132; .reg .pred %r1133; .reg .u32 %r1138; .reg .pred %r1139; .reg .pred %r1140; .reg .u64 %r1142; .reg .pred %r1143; .reg .u32 %r1148; .reg .pred %r1149; .reg .u32 %r1150; .reg .u32 %r1151; .reg .pred %r1152; .reg .u32 %r1153; .reg .pred %r1154; .reg .u64 %r1155; .reg .pred %r1156; .reg .u32 %r1161; .reg .pred %r1162; .reg .u64 %r1164; .reg .pred %r1165; .reg .u32 %r1170; .reg .pred %r1171; .reg .u32 %r1172; .reg .pred %r1173; .reg .u64 %r1174; .reg .u64 %r1175; .reg .pred %r1176; .reg .u32 %r1181; .reg .pred %r1182; .reg .pred %r1183; .reg .pred %r1184; .reg .u64 %r1186; .reg .pred %r1187; .reg .u32 %r1192; .reg .pred %r1193; .reg .pred %r1194; .reg .u64 %r1196; .reg .pred %r1197; .reg .u32 %r1202; .reg .pred %r1203; .reg .u64 %r1204; .reg .pred %r1205; .reg .u32 %r1210; .reg .pred %r1211; .reg .u64 %r1213; .reg .pred %r1214; .reg .u32 %r1219; .reg .pred %r1220; .reg .u32 %r1221; .reg .pred %r1222; .reg .pred %r1223; .reg .pred %r1224; .reg .u64 %r1226; .reg .pred %r1227; .reg .u32 %r1232; .reg .pred %r1233; .reg .pred %r1234; .reg .u64 %r1236; .reg .pred %r1237; .reg .u32 %r1242; .reg .pred %r1243; .reg .u32 %r1244; .reg .pred %r1245; .reg .u32 %r1246; .reg .pred %r1247; .reg .u32 %r1252; .reg .pred %r1253; .reg .u64 %r1256; .reg .pred %r1257; .reg .u64 %r1261; .reg .u32 %r1262; .reg .pred %r1263; .reg .u16 %r1264; .reg .u16 %r1265; .reg .u16 %r1266; .reg .u16 %r1267; .reg .pred %r1268; .reg .u16 %r1269; .reg .u16 %r1270; .reg .u16 %r1273; .reg .u16 %r1274; .reg .pred %r1275; .reg .u64 %r1278; .reg .u32 %r1279; .reg .pred %r1280; .reg .u32 %r1283; .reg .u32 %r1290; .reg .u64 %r1294; .reg .pred %r1295; .reg .pred %r1296; .reg .pred %r1297; .reg .pred %r1298; .reg .u32 %r1299; .reg .u32 %r1300; .reg .u32 %r1301; .reg .u32 %r1302; .reg .u32 %r1303; .reg .u32 %r1304; .reg .u16 %r1305; .reg .u16 %r1306; .reg .u16 %r1307; .reg .u32 %r1308; .reg .u16 %r1309; .reg .pred %r1310; .reg .u64 %r1311; .reg .u64 %r1312; .reg .pred %r1313; .reg .u64 %r1314; .reg .pred %r1315; .reg .u32 %r1321; .reg .u32 %r1322; .reg .u64 %r1346; .reg .u64 %r1347; .reg .u64 %r1348; .reg .u64 %r1349; .reg .u64 %r1350; .reg .u64 %r1351; .reg .u64 %r1352; .reg .u64 %r1353; .reg .u64 %r1354; .reg .u64 %r1355; .reg .u16 %r1362; mov.u64 %r424,%ar0; mov.u64 %r425,%ar1; mov.u64 %r426,%ar2; mov.u64 %r427,%ar3; .loc 1 424 6 mov.u32 %r429,0; st.u32 [%frame+376],%r429; .loc 1 476 29 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r431,[%value_in]; } .loc 1 476 28 ld.u64 %r432,[%r431]; .loc 1 476 18 ld.s8 %r433,[%r432]; st.u32 [%frame+388],%r433; .loc 1 612 12 ld.u16 %r435,[%r425+16]; and.b16 %r434,%r435,128; setp.eq.u16 %r436,%r434,0; @ %r436 bra $L25; .loc 1 612 33 ld.u64 %r437,[%r425+24]; setp.ne.u64 %r438,%r437,0; @ %r438 bra $L25; .loc 1 614 28 mov.u64 %r440,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r441,[%value_in]; } .loc 1 614 26 st.u64 [%r425],%r441; .loc 1 614 17 st.u64 [%r425+24],%r441; .loc 1 615 6 setp.ne.u64 %r442,%r441,0; @ %r442 bra $L26; .loc 1 617 17 mov.u32 %r443,12; st.u32 [%r424],%r443; .loc 1 618 11 mov.u32 %r423,-1; bra $L24; $L26: .loc 1 620 17 mov.u32 %r444,64; st.u32 [%r425+32],%r444; $L25: .loc 1 626 14 add.u64 %r1312,%frame,160; st.u64 [%frame+344],%r1312; .loc 1 627 16 mov.u64 %r446,0; st.u64 [%frame+360],%r446; .loc 1 628 17 mov.u32 %r447,0; st.u32 [%frame+352],%r447; .loc 1 416 42 mov.f64 %r193,0d0000000000000000; .loc 1 626 21 mov.u64 %r274,%r1312; .loc 1 435 11 mov.u64 %r273,%r446; .loc 1 419 6 mov.u32 %r42,%r447; .loc 1 630 6 mov.u32 %r423,%r42; .loc 1 647 4 add.u64 %r1346,%frame,344; .loc 1 1508 5 add.u64 %r1347,%frame,316; .loc 1 1500 6 add.u64 %r1348,%frame,388; .loc 1 1438 4 add.u64 %r1349,%frame,368; .loc 1 1436 4 add.u64 %r1350,%frame,392; add.u64 %r1351,%frame,324; .loc 1 1687 36 add.u64 %r1352,%frame,323; .loc 1 1042 9 add.u64 %r1353,%frame,376; add.u64 %r1354,%frame,380; add.u64 %r1355,%frame,384; $L28: .loc 1 644 24 ld.u32 %r289,[%r426]; .loc 1 644 38 set.u32.ne.u32 %r449,%r289,0; neg.s32 %r450,%r449; mov.u32 %r448,%r450; set.u32.ne.u32 %r452,%r289,37; neg.s32 %r453,%r452; mov.u32 %r451,%r453; cvt.u16.u8 %r1362,%r448; mov.u16 %r455,%r1362; cvt.u16.u8 %r1362,%r451; mov.u16 %r456,%r1362; and.b16 %r454,%r455,%r456; cvt.u32.u16 %r457,%r454; cvt.u16.u8 %r458,%r457; setp.eq.u16 %r459,%r458,0; @ %r459 bra $L271; mov.u64 %r255,%r426; $L30: mov.u64 %r36,%r255; .loc 1 645 21 add.u64 %r255,%r255,4; .loc 1 644 24 ld.u32 %r289,[%r255]; .loc 1 644 38 set.u32.ne.u32 %r461,%r289,0; neg.s32 %r462,%r461; mov.u32 %r460,%r462; set.u32.ne.u32 %r464,%r289,37; neg.s32 %r465,%r464; mov.u32 %r463,%r465; cvt.u16.u8 %r1362,%r460; mov.u16 %r467,%r1362; cvt.u16.u8 %r1362,%r463; mov.u16 %r468,%r1362; and.b16 %r466,%r467,%r468; cvt.u32.u16 %r469,%r466; cvt.u16.u8 %r470,%r469; setp.ne.u16 %r471,%r470,0; @ %r471 bra $L30; .loc 1 646 16 sub.u64 %r472,%r255,%r426; shr.s64 %r474,%r472,2; .loc 1 646 10 cvt.u32.u64 %r290,%r474; .loc 1 646 6 setp.eq.u32 %r475,%r290,0; @ %r475 bra $L29; .loc 1 647 4 st.u64 [%r274],%r426; cvt.s64.s32 %r476,%r290; shl.b64 %r37,%r476,2; st.u64 [%r274+8],%r37; ld.u64 %r478,[%frame+360]; add.u64 %r477,%r478,%r37; st.u64 [%frame+360],%r477; ld.u32 %r479,[%frame+352]; add.u32 %r41,%r479,1; st.u32 [%frame+352],%r41; setp.le.s32 %r480,%r41,7; @ %r480 bra $L31; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r485,[%value_in]; } setp.eq.u32 %r486,%r485,0; @ %r486 bra $L272; ld.u16 %r488,[%r425+16]; and.b16 %r487,%r488,64; cvt.s32.s16 %r403,%r487; bra $L33; $L31: add.u64 %r274,%r274,16; bra $L32; $L272: mov.u64 %r274,%r1312; $L32: .loc 1 648 8 add.u32 %r423,%r423,%r290; .loc 1 650 21 ld.u32 %r289,[%r36+4]; bra $L29; $L271: .loc 1 644 38 mov.u64 %r255,%r426; $L29: .loc 1 650 20 setp.eq.u32 %r489,%r289,0; @ %r489 bra $L34; .loc 1 653 6 add.u64 %r426,%r255,4; .loc 1 659 8 mov.u32 %r490,0; st.u32 [%frame+392],%r490; .loc 1 671 14 ld.u32 %r404,[%r255+4]; mov.u32 %r322,%r490; mov.u32 %r323,%r490; .loc 1 658 8 mov.u32 %r268,-1; .loc 1 657 9 mov.u32 %r267,%r490; .loc 1 655 9 mov.u32 %r265,%r490; $L35: .loc 1 671 18 add.u64 %r426,%r426,4; .loc 1 671 12 mov.u32 %r262,%r404; $L36: .loc 1 672 11 setp.eq.u32 %r491,%r262,99; @ %r491 bra $L37; setp.gt.u32 %r492,%r262,99; @ %r492 bra $L38; setp.eq.u32 %r493,%r262,46; @ %r493 bra $L39; setp.gt.u32 %r494,%r262,46; @ %r494 bra $L40; setp.eq.u32 %r495,%r262,42; @ %r495 bra $L41; setp.gt.u32 %r496,%r262,42; @ %r496 bra $L42; setp.eq.u32 %r497,%r262,32; @ %r497 bra $L43; setp.eq.u32 %r498,%r262,35; @ %r498 bra $L44; bra $L404; $L42: setp.eq.u32 %r499,%r262,43; @ %r499 bra $L46; setp.eq.u32 %r500,%r262,45; @ %r500 bra $L47; bra $L48; $L40: setp.eq.u32 %r501,%r262,71; @ %r501 bra $L49; setp.gt.u32 %r502,%r262,71; @ %r502 bra $L50; setp.gt.u32 %r503,%r262,57; @ %r503 bra $L51; setp.gt.u32 %r504,%r262,48; @ %r504 bra $L52; setp.eq.u32 %r505,%r262,48; @ %r505 bra $L53; mov.u32 %r262,47; bra $L48; $L51: setp.eq.u32 %r506,%r262,69; @ %r506 bra $L49; bra $L48; $L50: setp.eq.u32 %r507,%r262,76; @ %r507 bra $L54; setp.eq.u32 %r508,%r262,88; @ %r508 bra $L55; bra $L48; $L38: setp.eq.u32 %r509,%r262,111; @ %r509 bra $L56; setp.gt.u32 %r510,%r262,111; @ %r510 bra $L57; setp.eq.u32 %r511,%r262,105; @ %r511 bra $L58; setp.gt.u32 %r512,%r262,105; @ %r512 bra $L59; setp.eq.u32 %r513,%r262,104; @ %r513 bra $L60; @ %r511 bra $L48; setp.eq.u32 %r515,%r262,100; @ %r515 bra $L58; add.u32 %r516,%r262,-101; setp.gt.u32 %r517,%r516,2; @ %r517 bra $L273; bra $L49; $L59: setp.eq.u32 %r518,%r262,108; @ %r518 bra $L61; setp.eq.u32 %r519,%r262,110; @ %r519 bra $L62; bra $L48; $L57: setp.eq.u32 %r520,%r262,115; @ %r520 bra $L63; setp.gt.u32 %r521,%r262,115; @ %r521 bra $L64; setp.eq.u32 %r522,%r262,112; @ %r522 bra $L65; setp.eq.u32 %r523,%r262,113; @ %r523 bra $L66; bra $L48; $L64: setp.eq.u32 %r524,%r262,117; @ %r524 bra $L67; setp.ne.u32 %r525,%r262,120; @ %r525 bra $L48; setp.eq.u32 %r526,%r322,0; @ %r526 bra $L68; st.u32 [%frame+392],%r323; $L68: .loc 1 1291 10 cvta.const.u64 %r273,$LC5; bra $L69; $L43: .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 704 7 setp.ne.u32 %r527,%r323,0; selp.u32 %r322,%r322,1,%r527; selp.u32 %r323,%r323,32,%r527; bra $L35; $L44: .loc 1 708 10 or.b32 %r265,%r265,1; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 709 4 bra $L35; $L41: .loc 1 747 10 add.u64 %r330,%r427,4; ld.u32 %r267,[%r427]; .loc 1 751 7 setp.lt.s32 %r528,%r267,0; @ %r528 bra $L71; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 747 10 mov.u64 %r427,%r330; bra $L35; $L71: .loc 1 753 10 neg.s32 %r267,%r267; .loc 1 747 10 mov.u64 %r427,%r330; $L47: .loc 1 756 10 or.b32 %r265,%r265,4; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 757 4 bra $L35; $L46: .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 760 4 mov.u32 %r322,1; .loc 1 759 9 mov.u32 %r323,%r262; .loc 1 760 4 bra $L35; $L39: .loc 1 762 18 add.u64 %r306,%r426,4; .loc 1 762 12 ld.u32 %r262,[%r426]; .loc 1 762 7 setp.eq.u32 %r529,%r262,42; @ %r529 bra $L72; .loc 1 801 11 add.u32 %r530,%r262,-48; setp.le.u32 %r531,%r530,9; @ %r531 bra $L73; .loc 1 762 18 mov.u64 %r426,%r306; .loc 1 801 11 mov.u32 %r268,%r490; bra $L36; $L72: ld.u32 %r532,[%r427]; max.s32 %r268,%r532,-1; .loc 1 671 14 ld.u32 %r404,[%r426+4]; .loc 1 792 10 add.u64 %r427,%r427,4; .loc 1 762 18 mov.u64 %r426,%r306; .loc 1 798 5 bra $L35; $L73: mov.u64 %r333,%r306; .loc 1 800 6 mov.u32 %r209,%r490; $L75: .loc 1 802 12 shl.b32 %r534,%r209,2; add.u32 %r535,%r534,%r209; add.u32 %r536,%r535,%r535; .loc 1 802 16 add.u32 %r537,%r536,-48; add.u32 %r209,%r537,%r262; mov.u64 %r304,%r333; add.u64 %r426,%r333,4; mov.u64 %r333,%r426; .loc 1 803 8 ld.u32 %r262,[%r304]; .loc 1 801 11 add.u32 %r538,%r262,-48; setp.le.u32 %r539,%r538,9; @ %r539 bra $L75; .loc 1 805 9 max.s32 %r268,%r209,-1; .loc 1 806 4 bra $L36; $L53: .loc 1 813 10 or.b32 %r265,%r265,128; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 814 4 bra $L35; $L52: mov.u64 %r327,%r426; .loc 1 817 6 mov.u32 %r267,0; $L77: .loc 1 819 12 shl.b32 %r541,%r267,2; add.u32 %r542,%r541,%r267; add.u32 %r543,%r542,%r542; .loc 1 819 16 add.u32 %r544,%r543,-48; add.u32 %r267,%r544,%r262; mov.u64 %r140,%r327; add.u64 %r327,%r327,4; mov.u64 %r426,%r327; .loc 1 820 8 ld.u32 %r262,[%r140]; .loc 1 821 13 add.u32 %r545,%r262,-48; setp.le.u32 %r546,%r545,9; @ %r546 bra $L77; bra $L36; $L54: .loc 1 837 10 or.b32 %r265,%r265,8; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 838 4 bra $L35; $L60: .loc 1 847 11 or.b32 %r265,%r265,64; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 848 4 bra $L35; $L61: .loc 1 851 8 ld.u32 %r404,[%r426]; .loc 1 851 7 setp.ne.u32 %r547,%r404,108; @ %r547 bra $L78; .loc 1 853 11 or.b32 %r265,%r265,32; .loc 1 671 14 ld.u32 %r404,[%r426+4]; .loc 1 852 8 add.u64 %r426,%r426,4; bra $L35; $L78: .loc 1 856 11 or.b32 %r265,%r265,16; bra $L35; $L66: .loc 1 859 10 or.b32 %r265,%r265,32; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 860 4 bra $L35; $L37: setp.eq.u32 %r548,%r322,0; @ %r548 bra $L79; st.u32 [%frame+392],%r323; $L79: .loc 1 747 10 ld.u32 %r282,[%r427]; add.u64 %r427,%r427,4; .loc 1 903 30 and.b32 %r549,%r265,16; .loc 1 903 19 setp.ne.u32 %r550,%r549,0; @ %r550 bra $L80; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r282; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r552,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r553,%r552,-1; @ %r553 bra $L81; .loc 1 906 20 ld.u16 %r555,[%r425+16]; or.b16 %r554,%r555,64; st.u16 [%r425+16],%r554; .loc 1 1536 31 mov.u32 %r423,%r552; bra $L24; $L81: .loc 1 909 13 mov.u32 %r282,%r552; $L80: .loc 1 909 11 st.u32 [%frame],%r282; .loc 1 915 10 mov.u32 %r556,0; st.u32 [%frame+4],%r556; .loc 1 917 9 st.u32 [%frame+392],%r556; .loc 1 918 4 mov.u32 %r324,1; .loc 1 916 9 mov.u32 %r272,%r324; .loc 1 902 7 mov.u64 %r264,%frame; .loc 1 918 4 bra $L82; $L58: setp.eq.u32 %r558,%r322,0; @ %r558 bra $L83; st.u32 [%frame+392],%r323; $L83: .loc 1 921 13 and.b32 %r559,%r265,32; setp.eq.u32 %r560,%r559,0; @ %r560 bra $L84; add.u64 %r325,%r427,7; and.b64 %r363,%r325,-8; add.u64 %r427,%r363,8; ld.u64 %r59,[%r363]; mov.u64 %r270,%r59; bra $L85; $L84: and.b32 %r561,%r265,16; setp.eq.u32 %r562,%r561,0; @ %r562 bra $L86; add.u64 %r347,%r427,7; and.b64 %r335,%r347,-8; add.u64 %r427,%r335,8; ld.u64 %r59,[%r335]; mov.u64 %r270,%r59; bra $L85; $L86: .loc 1 747 10 ld.u32 %r414,[%r427]; add.u64 %r427,%r427,4; .loc 1 921 13 and.b32 %r563,%r265,64; setp.eq.u32 %r564,%r563,0; @ %r564 bra $L87; cvt.u16.u32 %r565,%r414; cvt.s64.s16 %r270,%r565; .loc 1 923 8 mov.u64 %r59,%r270; bra $L85; $L87: .loc 1 921 13 cvt.s64.s32 %r270,%r414; .loc 1 923 8 mov.u64 %r59,%r270; $L85: .loc 1 923 7 setp.ge.s64 %r568,%r59,0; @ %r568 bra $L88; .loc 1 929 12 neg.s64 %r270,%r270; mov.u32 %r194,45; .loc 1 932 9 mov.u32 %r271,1; bra $L89; $L49: setp.eq.u32 %r569,%r322,0; @ %r569 bra $L90; st.u32 [%frame+392],%r323; $L90: .loc 1 921 13 add.u64 %r570,%r427,7; and.b64 %r412,%r570,-8; add.u64 %r427,%r412,8; .loc 1 947 25 ld.f64 %r193,[%r412]; .loc 1 958 8 abs.f64 %r573,%r193; setp.leu.f64 %r574,%r573,0d7fefffffffffffff; @ %r574 bra $L93; .loc 1 959 8 setp.lt.f64 %r575,%r193,0d0000000000000000; @ %r575 bra $L94; .loc 1 704 8 ld.u32 %r384,[%frame+392]; bra $L95; $L93: .loc 1 969 7 setp.nan.f64 %r576,%r193,%r193; @ ! %r576 bra $L405; bra $L96; $L94: .loc 1 960 11 mov.u32 %r577,45; st.u32 [%frame+392],%r577; mov.u32 %r384,%r577; $L95: .loc 1 961 8 setp.le.u32 %r578,%r262,71; @ %r578 bra $L274; .loc 1 964 9 cvta.const.u64 %r264,$LC1; bra $L98; $L274: .loc 1 962 9 cvta.const.u64 %r264,$LC0; $L98: .loc 1 966 11 and.b32 %r266,%r265,-129; .loc 1 967 5 mov.u32 %r324,3; mov.u64 %r278,0; .loc 1 965 10 mov.u32 %r272,%r324; .loc 1 656 9 mov.u32 %r268,0; .loc 1 661 8 mov.u32 %r269,%r268; .loc 1 967 5 bra $L99; $L96: .loc 1 970 9 mov.b64 %r579,%r193; shr.u64 %r580,%r579,63; cvt.u32.u64 %r582,%r580; .loc 1 970 8 setp.ne.u32 %r583,%r582,0; @ %r583 bra $L100; .loc 1 704 8 ld.u32 %r384,[%frame+392]; bra $L101; $L100: .loc 1 971 11 mov.u32 %r584,45; st.u32 [%frame+392],%r584; mov.u32 %r384,%r584; $L101: .loc 1 972 8 setp.le.u32 %r585,%r262,71; @ %r585 bra $L275; .loc 1 975 9 cvta.const.u64 %r264,$LC3; bra $L102; $L275: .loc 1 973 9 cvta.const.u64 %r264,$LC2; $L102: .loc 1 977 11 and.b32 %r266,%r265,-129; .loc 1 978 5 mov.u32 %r324,3; mov.u64 %r278,0; .loc 1 976 10 mov.u32 %r272,%r324; .loc 1 656 9 mov.u32 %r268,0; .loc 1 661 8 mov.u32 %r269,%r268; .loc 1 978 5 bra $L99; $L405: .loc 1 1040 10 or.b32 %r266,%r265,256; .loc 1 1034 7 setp.eq.u32 %r586,%r268,-1; @ %r586 bra $L276; .loc 1 1036 33 and.b32 %r587,%r262,-33; set.u32.eq.u32 %r589,%r587,71; neg.s32 %r590,%r589; mov.u32 %r588,%r590; .loc 1 1036 42 set.u32.eq.u32 %r592,%r268,0; neg.s32 %r593,%r592; mov.u32 %r591,%r593; cvt.u16.u8 %r1362,%r588; mov.u16 %r595,%r1362; cvt.u16.u8 %r1362,%r591; mov.u16 %r596,%r1362; and.b16 %r594,%r595,%r596; cvt.u32.u16 %r597,%r594; cvt.u16.u8 %r598,%r597; setp.ne.u16 %r599,%r598,0; @ %r599 bra $L104; bra $L103; $L276: .loc 1 1035 10 mov.u32 %r268,6; $L103: .loc 1 1042 9 mov.u32 %r609,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r193; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r268; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r266; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1355; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1354; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r262; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1353; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r609; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r613,[%value_in]; } mov.u64 %r264,%r613; .loc 1 1049 7 setp.ne.u64 %r614,%frame,%r264; @ %r614 bra $L277; .loc 1 1049 26 ld.u32 %r1321,[%frame+376]; .loc 1 1049 18 setp.le.s32 %r615,%r1321,40; @ %r615 bra $L278; bra $L270; $L292: .loc 1 1037 10 mov.u32 %r268,%r1283; $L270: .loc 1 1051 20 cvt.s64.s32 %r618,%r1321; shl.b64 %r619,%r618,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r619; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r620,[%value_in]; } mov.u64 %r278,%r620; .loc 1 1050 8 setp.ne.u64 %r621,%r620,0; @ %r621 bra $L106; .loc 1 1054 20 ld.u16 %r623,[%r425+16]; or.b16 %r622,%r623,64; st.u16 [%r425+16],%r622; .loc 1 1536 31 mov.u32 %r423,-1; bra $L24; $L106: .loc 1 1057 10 ld.u32 %r634,[%frame+376]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r193; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r268; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r266; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1355; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1354; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r262; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1353; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%r278; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r634; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r638,[%value_in]; } mov.u64 %r264,%r638; bra $L105; $L277: mov.u64 %r278,0; bra $L105; $L278: mov.u64 %r278,0; $L105: .loc 1 1082 15 ld.u32 %r1322,[%frame+380]; mov.u32 %r269,%r1322; .loc 1 1061 25 and.b32 %r639,%r262,-33; .loc 1 1061 7 setp.ne.u32 %r640,%r639,71; @ %r640 bra $L107; ld.u32 %r1321,[%frame+376]; $L266: .loc 1 1062 14 mov.u32 %r269,%r1322; .loc 1 1062 20 set.u32.gt.s32 %r642,%r1322,%r268; neg.s32 %r643,%r642; mov.u32 %r641,%r643; .loc 1 1062 8 set.u32.lt.s32 %r645,%r1322,-3; neg.s32 %r646,%r645; mov.u32 %r644,%r646; .loc 1 1062 20 cvt.u16.u8 %r1362,%r641; mov.u16 %r648,%r1362; cvt.u16.u8 %r1362,%r644; mov.u16 %r649,%r1362; or.b16 %r647,%r648,%r649; cvt.u32.u16 %r650,%r647; cvt.u16.u8 %r651,%r650; setp.eq.u16 %r652,%r651,0; @ %r652 bra $L108; .loc 1 1063 9 add.u32 %r262,%r262,-2; bra $L109; $L107: .loc 1 1071 7 setp.eq.u32 %r653,%r262,102; @ %r653 bra $L110; ld.u32 %r1321,[%frame+376]; $L109: .loc 1 1072 5 add.u32 %r74,%r1322,-1; st.u32 [%frame+380],%r74; .loc 1 1674 7 st.u32 [%frame+316],%r262; .loc 1 1675 5 setp.ge.s32 %r654,%r74,0; @ %r654 bra $L279; .loc 1 1676 7 mov.u32 %r655,1; sub.u32 %r74,%r655,%r1322; .loc 1 1677 8 mov.u32 %r298,45; bra $L111; $L279: .loc 1 1680 8 mov.u32 %r298,43; $L111: st.u32 [%frame+320],%r298; .loc 1 1682 5 setp.le.s32 %r656,%r74,9; @ %r656 bra $L112; .loc 1 1681 4 mov.u64 %r317,%r1347; $L113: mov.u64 %r164,%r317; .loc 1 1684 9 add.u64 %r317,%r164,-4; .loc 1 1684 11 rem.s32 %r658,%r74,10; add.u32 %r659,%r658,48; .loc 1 1684 9 st.u32 [%r317],%r659; mov.u32 %r67,%r74; .loc 1 1685 17 div.s32 %r74,%r74,10; .loc 1 1685 24 setp.gt.s32 %r662,%r67,99; @ %r662 bra $L113; .loc 1 1686 8 add.u64 %r314,%r164,-8; .loc 1 1686 10 add.u32 %r381,%r74,48; .loc 1 1686 8 st.u32 [%r317+-4],%r381; .loc 1 1687 12 setp.ge.u64 %r665,%r314,%r1347; @ %r665 bra $L280; mov.u64 %r344,%r1351; $L116: .loc 1 1687 43 add.u64 %r314,%r314,4; .loc 1 1687 39 st.u32 [%r344],%r381; .loc 1 1687 12 add.u64 %r344,%r344,4; setp.lt.u64 %r669,%r314,%r1347; @ %r669 bra $L115; .loc 1 1687 36 sub.u64 %r675,%r1352,%r164; and.b64 %r677,%r675,-4; add.u64 %r678,%r677,4; add.u64 %r679,%r1351,%r678; .loc 1 1694 12 sub.u64 %r681,%r679,%r1347; shr.s64 %r683,%r681,2; cvt.u32.u64 %r42,%r683; bra $L114; $L115: .loc 1 1687 41 ld.u32 %r381,[%r314]; bra $L116; $L112: .loc 1 1691 9 mov.u32 %r684,48; st.u32 [%frame+324],%r684; .loc 1 1692 10 add.u32 %r685,%r74,48; .loc 1 1692 8 st.u32 [%frame+328],%r685; mov.u32 %r42,4; bra $L114; $L280: .loc 1 1687 12 mov.u32 %r42,2; $L114: .loc 1 1074 10 add.u32 %r272,%r1321,%r42; .loc 1 1075 8 setp.gt.s32 %r686,%r1321,1; @ %r686 bra $L117; and.b32 %r269,%r265,1; .loc 1 1075 18 setp.ne.u32 %r687,%r269,0; @ %r687 bra $L117; .loc 1 1424 10 max.s32 %r324,%r272,0; bra $L118; $L117: .loc 1 1076 6 add.u32 %r272,%r272,1; .loc 1 1424 10 max.s32 %r324,%r272,0; .loc 1 661 8 mov.u32 %r269,0; bra $L118; $L110: and.b32 %r688,%r265,1; or.b32 %r409,%r688,%r268; .loc 1 1082 9 setp.gt.s32 %r689,%r269,0; @ %r689 bra $L119; bra $L406; $L108: .loc 1 1090 15 setp.ge.s32 %r690,%r269,%r1321; @ %r690 bra $L121; bra $L407; $L119: .loc 1 1084 16 setp.eq.u32 %r691,%r409,0; @ %r691 bra $L281; .loc 1 1085 21 add.u32 %r692,%r268,1; .loc 1 1085 13 add.u32 %r272,%r692,%r269; mov.u32 %r324,%r272; bra $L118; $L406: .loc 1 1087 20 setp.eq.u32 %r693,%r409,0; @ %r693 bra $L282; .loc 1 1089 10 add.u32 %r272,%r268,2; mov.u32 %r324,%r272; bra $L118; $L121: .loc 1 1092 9 and.b32 %r694,%r265,1; setp.ne.u32 %r695,%r694,0; @ %r695 bra $L124; .loc 1 1424 10 max.s32 %r324,%r269,0; mov.u32 %r272,%r269; .loc 1 1065 9 mov.u32 %r262,103; bra $L118; $L124: .loc 1 1093 7 add.u32 %r272,%r269,1; .loc 1 1424 10 max.s32 %r324,%r272,0; .loc 1 1065 9 mov.u32 %r262,103; bra $L118; $L407: .loc 1 1096 9 setp.gt.s32 %r696,%r269,0; @ %r696 bra $L283; mov.u32 %r697,2; sub.u32 %r280,%r697,%r269; bra $L125; $L283: mov.u32 %r280,1; $L125: .loc 1 1095 11 add.u32 %r272,%r280,%r1321; .loc 1 1424 10 max.s32 %r324,%r272,0; .loc 1 1065 9 mov.u32 %r262,103; bra $L118; $L281: mov.u32 %r324,%r269; mov.u32 %r272,%r269; bra $L118; $L282: mov.u32 %r324,1; .loc 1 1089 10 mov.u32 %r272,%r324; $L118: .loc 1 1117 8 ld.u32 %r268,[%frame+384]; .loc 1 1117 7 setp.eq.u32 %r698,%r268,0; @ %r698 bra $L126; .loc 1 1118 10 mov.u32 %r699,45; st.u32 [%frame+392],%r699; .loc 1 656 9 mov.u32 %r268,0; bra $L127; $L62: setp.eq.u32 %r700,%r322,0; @ %r700 bra $L128; st.u32 [%frame+392],%r323; $L128: .loc 1 921 13 add.u64 %r701,%r427,7; and.b64 %r417,%r701,-8; add.u64 %r427,%r417,8; .loc 1 1132 14 and.b32 %r702,%r265,32; .loc 1 1132 7 setp.eq.u32 %r703,%r702,0; @ %r703 bra $L129; .loc 1 1133 34 ld.u64 %r704,[%r417]; cvt.s64.s32 %r705,%r423; st.u64 [%r704],%r705; bra $L28; $L129: .loc 1 1136 14 and.b32 %r706,%r265,16; .loc 1 1136 7 setp.eq.u32 %r707,%r706,0; @ %r707 bra $L131; .loc 1 1137 34 ld.u64 %r708,[%r417]; cvt.s64.s32 %r709,%r423; st.u64 [%r708],%r709; bra $L28; $L131: .loc 1 1138 19 and.b32 %r710,%r265,64; .loc 1 1138 12 setp.eq.u32 %r711,%r710,0; @ %r711 bra $L132; .loc 1 1139 35 ld.u64 %r712,[%r417]; st.u16 [%r712],%r423; bra $L28; $L132: .loc 1 1145 33 ld.u64 %r713,[%r417]; st.u32 [%r713],%r423; bra $L28; $L56: .loc 1 1148 13 and.b32 %r714,%r265,32; setp.eq.u32 %r715,%r714,0; @ %r715 bra $L133; add.u64 %r338,%r427,7; and.b64 %r340,%r338,-8; add.u64 %r427,%r340,8; ld.u64 %r270,[%r340]; .loc 1 1149 9 mov.u32 %r271,0; bra $L134; $L133: .loc 1 1148 13 and.b32 %r716,%r265,16; setp.eq.u32 %r717,%r716,0; @ %r717 bra $L135; add.u64 %r352,%r427,7; and.b64 %r302,%r352,-8; add.u64 %r427,%r302,8; ld.u64 %r270,[%r302]; .loc 1 1149 9 mov.u32 %r271,%r714; bra $L134; $L135: .loc 1 747 10 ld.u32 %r418,[%r427]; add.u64 %r427,%r427,4; .loc 1 1148 13 and.b32 %r718,%r265,64; setp.eq.u32 %r719,%r718,0; @ %r719 bra $L136; cvt.u16.u32 %r720,%r418; cvt.u64.u16 %r270,%r720; .loc 1 1149 9 mov.u32 %r271,%r716; bra $L134; $L136: .loc 1 1148 13 cvt.u64.u32 %r270,%r418; .loc 1 1149 9 mov.u32 %r271,%r718; bra $L134; $L65: .loc 1 1163 25 add.u64 %r364,%r427,7; and.b64 %r353,%r364,-8; add.u64 %r427,%r353,8; .loc 1 1163 11 ld.u64 %r270,[%r353]; .loc 1 1166 10 or.b32 %r265,%r265,2; .loc 1 1167 10 mov.u32 %r721,48; st.u32 [%frame+368],%r721; .loc 1 1168 10 mov.u32 %r722,120; st.u32 [%frame+372],%r722; .loc 1 1165 10 cvta.const.u64 %r273,$LC5; .loc 1 1164 9 mov.u32 %r271,2; .loc 1 1168 15 mov.u32 %r262,%r722; .loc 1 1169 4 bra $L134; $L63: .loc 1 1174 7 add.u64 %r341,%r427,7; and.b64 %r309,%r341,-8; add.u64 %r427,%r309,8; ld.u64 %r264,[%r309]; .loc 1 1178 9 mov.u32 %r723,0; st.u32 [%frame+392],%r723; .loc 1 1184 7 setp.ne.u64 %r724,%r264,0; @ %r724 bra $L137; .loc 1 1186 39 min.u32 %r272,%r268,6; mov.u32 %r324,%r272; .loc 1 1185 8 cvta.const.u64 %r264,$LC6; bra $L82; $L137: .loc 1 1242 30 and.b32 %r269,%r265,16; .loc 1 1242 19 setp.ne.u32 %r725,%r269,0; @ %r725 bra $L138; .loc 1 1246 8 setp.eq.u32 %r726,%r268,-1; @ %r726 bra $L139; .loc 1 1247 16 cvt.s64.s32 %r279,%r268; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r269; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r279; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r730,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r731,%r730,0; @ %r731 bra $L140; .loc 1 1248 21 sub.u64 %r279,%r730,%r264; bra $L140; $L139: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r733,[%value_in]; } mov.u64 %r279,%r733; $L140: .loc 1 1251 8 setp.le.u64 %r734,%r279,39; @ %r734 bra $L141; .loc 1 1252 64 add.u64 %r737,%r279,1; .loc 1 1252 39 shl.b64 %r738,%r737,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r738; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r739,[%value_in]; } mov.u64 %r294,%r739; .loc 1 1252 12 setp.ne.u64 %r740,%r739,0; @ %r740 bra $L284; .loc 1 1254 18 ld.u16 %r742,[%r425+16]; or.b16 %r741,%r742,64; st.u16 [%r425+16],%r741; .loc 1 1536 31 mov.u32 %r423,-1; bra $L24; $L141: .loc 1 1260 25 setp.eq.u64 %r1315,%r279,0; @ %r1315 bra $L285; mov.u64 %r278,0; .loc 1 1259 9 mov.u64 %r294,%frame; bra $L142; $L284: mov.u64 %r278,%r294; setp.eq.u64 %r1315,%r279,0; $L142: mov.u64 %r339,%r294; mov.u64 %r342,0; $L144: .loc 1 1261 20 add.u64 %r744,%r264,%r342; ld.s8 %r745,[%r744]; st.u32 [%r339],%r745; .loc 1 1260 25 add.u64 %r342,%r342,1; add.u64 %r339,%r339,4; setp.gt.u64 %r746,%r279,%r342; @ %r746 bra $L144; .loc 1 1260 35 @ %r1315 bra $L145; cvt.u32.u64 %r747,%r279; bra $L146; $L145: mov.u32 %r747,1; $L146: mov.u32 %r272,%r747; .loc 1 1260 25 selp.u64 %r751,1,%r279,%r1315; .loc 1 1262 7 shl.b64 %r753,%r751,2; add.u64 %r372,%r294,%r753; mov.u32 %r324,%r272; mov.u64 %r264,%r294; bra $L143; $L285: .loc 1 1260 25 mov.u32 %r324,%r269; .loc 1 1260 15 mov.u32 %r272,%r269; .loc 1 1260 25 mov.u64 %r372,%frame; mov.u64 %r278,%r279; .loc 1 1259 9 mov.u64 %r264,%frame; $L143: .loc 1 1262 14 mov.u32 %r754,0; st.u32 [%r372],%r754; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 656 9 mov.u32 %r268,%r269; .loc 1 1242 42 mov.u32 %r266,%r265; bra $L99; $L138: .loc 1 1265 12 setp.eq.u32 %r755,%r268,-1; @ %r755 bra $L149; .loc 1 1271 18 cvt.s64.s32 %r759,%r268; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r723; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r759; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r760,[%value_in]; } mov.u64 %r278,%r760; .loc 1 1273 8 setp.ne.u64 %r761,%r278,0; @ %r761 bra $L150; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; mov.u32 %r324,%r268; mov.u32 %r272,%r268; mov.u32 %r266,%r265; .loc 1 656 9 mov.u32 %r268,%r723; .loc 1 661 8 mov.u32 %r269,%r268; bra $L99; $L150: .loc 1 1274 15 sub.u64 %r762,%r278,%r264; shr.s64 %r764,%r762,2; .loc 1 1274 11 cvt.u32.u64 %r765,%r764; min.s32 %r272,%r765,%r268; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 1424 10 max.s32 %r324,%r272,0; mov.u32 %r266,%r265; mov.u64 %r278,0; .loc 1 656 9 mov.u32 %r268,%r723; .loc 1 661 8 mov.u32 %r269,%r268; bra $L99; $L149: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r767,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r272,%r767; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 1424 10 max.s32 %r324,%r272,0; mov.u32 %r266,%r265; mov.u64 %r278,0; .loc 1 656 9 mov.u32 %r268,%r723; .loc 1 661 8 mov.u32 %r269,%r268; bra $L99; $L67: .loc 1 1284 13 and.b32 %r768,%r265,32; setp.eq.u32 %r769,%r768,0; @ %r769 bra $L151; add.u64 %r354,%r427,7; and.b64 %r328,%r354,-8; add.u64 %r427,%r328,8; ld.u64 %r270,[%r328]; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L151: .loc 1 1284 13 and.b32 %r770,%r265,16; setp.eq.u32 %r771,%r770,0; @ %r771 bra $L152; add.u64 %r369,%r427,7; and.b64 %r355,%r369,-8; add.u64 %r427,%r355,8; ld.u64 %r270,[%r355]; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L152: .loc 1 747 10 ld.u32 %r419,[%r427]; add.u64 %r427,%r427,4; .loc 1 1284 13 and.b32 %r772,%r265,64; setp.eq.u32 %r773,%r772,0; @ %r773 bra $L153; cvt.u16.u32 %r774,%r419; cvt.u64.u16 %r270,%r774; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L153: .loc 1 1284 13 cvt.u64.u32 %r270,%r419; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L55: setp.eq.u32 %r775,%r322,0; @ %r775 bra $L154; st.u32 [%frame+392],%r323; $L154: .loc 1 1288 10 cvta.const.u64 %r273,$LC4; $L69: .loc 1 1292 17 and.b32 %r776,%r265,32; setp.eq.u32 %r777,%r776,0; @ %r777 bra $L155; add.u64 %r231,%r427,7; and.b64 %r332,%r231,-8; add.u64 %r427,%r332,8; ld.u64 %r270,[%r332]; bra $L156; $L155: and.b32 %r778,%r265,16; setp.eq.u32 %r779,%r778,0; @ %r779 bra $L157; add.u64 %r362,%r427,7; and.b64 %r334,%r362,-8; add.u64 %r427,%r334,8; ld.u64 %r270,[%r334]; bra $L156; $L157: .loc 1 747 10 ld.u32 %r413,[%r427]; add.u64 %r427,%r427,4; .loc 1 1292 17 and.b32 %r780,%r265,64; setp.eq.u32 %r781,%r780,0; @ %r781 bra $L158; cvt.u16.u32 %r782,%r413; cvt.u64.u16 %r270,%r782; bra $L156; $L158: cvt.u64.u32 %r270,%r413; $L156: .loc 1 1295 14 and.b32 %r783,%r265,1; .loc 1 1295 7 setp.eq.u32 %r784,%r783,0; @ %r784 bra $L286; .loc 1 1295 20 setp.eq.u64 %r785,%r270,0; @ %r785 bra $L287; .loc 1 1296 11 mov.u32 %r786,48; st.u32 [%frame+368],%r786; .loc 1 1297 11 st.u32 [%frame+372],%r262; .loc 1 1298 11 or.b32 %r265,%r265,2; .loc 1 1293 9 mov.u32 %r271,2; bra $L134; $L286: mov.u32 %r271,2; bra $L134; $L287: mov.u32 %r271,2; $L134: .loc 1 1305 1 mov.u32 %r194,0; $L89: .loc 1 930 10 st.u32 [%frame+392],%r194; .loc 1 1311 14 setp.eq.u32 %r787,%r268,-1; @ %r787 bra $L159; .loc 1 1312 11 and.b32 %r266,%r265,-129; .loc 1 1320 15 set.u32.ne.u64 %r789,%r270,0; neg.s32 %r790,%r789; mov.u32 %r788,%r790; .loc 1 1320 28 set.u32.ne.u32 %r792,%r268,0; neg.s32 %r793,%r792; mov.u32 %r791,%r793; .loc 1 1320 20 cvt.u16.u8 %r1362,%r788; mov.u16 %r795,%r1362; cvt.u16.u8 %r1362,%r791; mov.u16 %r796,%r1362; or.b16 %r794,%r795,%r796; cvt.u32.u16 %r797,%r794; .loc 1 1320 7 cvt.u16.u8 %r798,%r797; setp.eq.u16 %r799,%r798,0; @ %r799 bra $L160; .loc 1 1312 11 mov.u32 %r265,%r266; $L159: setp.eq.u32 %r800,%r271,1; @ %r800 bra $L161; setp.eq.u32 %r801,%r271,2; @ %r801 bra $L288; mov.u64 %r264,%r1312; $L163: mov.u64 %r158,%r264; .loc 1 1329 13 add.u64 %r264,%r264,-4; .loc 1 1329 15 cvt.u32.u64 %r802,%r270; and.b32 %r803,%r802,7; add.u32 %r123,%r803,48; .loc 1 1329 13 st.u32 [%r264],%r123; .loc 1 1330 14 shr.u64 %r270,%r270,3; .loc 1 1331 15 setp.ne.u64 %r804,%r270,0; @ %r804 bra $L163; .loc 1 1333 22 set.u32.ne.u32 %r806,%r123,48; neg.s32 %r807,%r806; mov.u32 %r805,%r807; .loc 1 1333 9 mov.u32 %r808,%r265; cvt.u16.u8 %r1362,%r808; mov.u16 %r810,%r1362; and.b16 %r809,%r810,1; cvt.u32.u16 %r811,%r809; .loc 1 1333 22 cvt.u16.u8 %r1362,%r805; mov.u16 %r813,%r1362; cvt.u16.u8 %r1362,%r811; mov.u16 %r814,%r1362; and.b16 %r812,%r813,%r814; cvt.u32.u16 %r815,%r812; cvt.u16.u8 %r816,%r815; setp.ne.u16 %r817,%r816,0; @ %r817 bra $L164; .loc 1 1395 21 sub.u64 %r819,%r1312,%r264; shr.s64 %r821,%r819,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r821; mov.u32 %r266,%r265; bra $L165; $L164: .loc 1 1334 13 add.u64 %r299,%r158,-8; mov.u32 %r822,48; st.u32 [%r264+-4],%r822; .loc 1 1395 21 sub.u64 %r824,%r1312,%r299; shr.s64 %r826,%r824,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r826; mov.u32 %r266,%r265; .loc 1 1334 13 mov.u64 %r264,%r299; bra $L165; $L293: .loc 1 1312 11 mov.u32 %r265,%r266; $L161: .loc 1 1339 9 setp.gt.u64 %r827,%r270,9; @ %r827 bra $L289; .loc 1 1340 15 cvt.u32.u64 %r828,%r270; add.u32 %r829,%r828,48; .loc 1 1340 13 st.u32 [%frame+156],%r829; .loc 1 1341 7 mov.u32 %r266,%r265; mov.u32 %r272,1; .loc 1 1340 13 add.u64 %r264,%frame,156; .loc 1 1341 7 bra $L165; $L289: .loc 1 1319 7 mov.u64 %r264,%r1312; $L166: .loc 1 1347 14 add.u64 %r264,%r264,-4; .loc 1 1347 16 rem.u64 %r831,%r270,10; cvt.u32.u64 %r832,%r831; add.u32 %r833,%r832,48; .loc 1 1347 14 st.u32 [%r264],%r833; mov.u64 %r153,%r270; .loc 1 1366 15 div.u64 %r270,%r270,10; .loc 1 1367 22 setp.gt.u64 %r836,%r153,9; @ %r836 bra $L166; .loc 1 1395 21 sub.u64 %r838,%r1312,%r264; shr.s64 %r840,%r838,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r840; mov.u32 %r266,%r265; bra $L165; $L288: mov.u64 %r264,%r1312; $L162: .loc 1 1372 13 add.u64 %r264,%r264,-4; .loc 1 1372 28 and.b64 %r841,%r270,15; .loc 1 1372 20 shl.b64 %r842,%r841,2; add.u64 %r843,%r273,%r842; .loc 1 1372 13 ld.u32 %r844,[%r843]; st.u32 [%r264],%r844; .loc 1 1373 14 shr.u64 %r270,%r270,4; .loc 1 1374 15 setp.ne.u64 %r845,%r270,0; @ %r845 bra $L162; .loc 1 1395 21 sub.u64 %r847,%r1312,%r264; shr.s64 %r849,%r847,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r849; mov.u32 %r266,%r265; bra $L165; $L160: .loc 1 1392 32 setp.ne.u32 %r850,%r271,0; @ %r850 bra $L290; .loc 1 1392 55 and.b32 %r272,%r265,1; .loc 1 1392 45 setp.eq.u32 %r851,%r272,0; @ %r851 bra $L291; .loc 1 1393 32 mov.u32 %r852,48; st.u32 [%frame+156],%r852; mov.u32 %r268,%r271; add.u64 %r264,%frame,156; bra $L165; $L290: mov.u32 %r268,0; mov.u32 %r272,%r268; .loc 1 1319 7 mov.u64 %r264,%r1312; bra $L165; $L291: mov.u32 %r268,%r271; mov.u64 %r264,%r1312; $L165: .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 1424 10 max.s32 %r324,%r268,%r272; mov.u64 %r278,0; .loc 1 661 8 mov.u32 %r269,0; bra $L99; $L404: setp.eq.u32 %r853,%r322,0; @ %r853 bra $L167; $L268: st.u32 [%frame+392],%r323; $L167: .loc 1 1399 7 setp.eq.u32 %r854,%r262,0; @ %r854 bra $L34; $L269: .loc 1 1403 8 st.u32 [%frame],%r262; .loc 1 1405 9 mov.u32 %r855,0; st.u32 [%frame+392],%r855; .loc 1 1406 4 mov.u32 %r324,1; .loc 1 1404 9 mov.u32 %r272,%r324; .loc 1 1402 7 mov.u64 %r264,%frame; .loc 1 1406 4 bra $L82; $L126: .loc 1 1425 7 ld.u32 %r384,[%frame+392]; $L99: .loc 1 1425 6 setp.eq.u32 %r856,%r384,0; @ %r856 bra $L168; $L127: .loc 1 1426 10 add.u32 %r324,%r324,1; $L168: .loc 1 1427 13 and.b32 %r136,%r266,2; .loc 1 1427 6 setp.eq.u32 %r1313,%r136,0; @ %r1313 bra $L169; .loc 1 1428 10 add.u32 %r324,%r324,2; $L169: .loc 1 1431 14 and.b32 %r137,%r266,132; .loc 1 1432 4 ld.u64 %r386,[%frame+360]; .loc 1 1431 6 setp.ne.u32 %r858,%r137,0; @ %r858 bra $L170; .loc 1 1432 4 sub.u32 %r305,%r267,%r324; setp.le.s32 %r859,%r305,0; @ %r859 bra $L170; ld.u32 %r385,[%frame+352]; setp.le.s32 %r860,%r305,16; @ ! %r860 bra $L408; cvta.const.u64 %r1314,blanks$1; bra $L171; $L408: cvta.const.u64 %r1314,blanks$1; $L175: st.u64 [%r274],%r1314; mov.u64 %r862,64; st.u64 [%r274+8],%r862; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r385,%r385,1; st.u32 [%frame+352],%r385; setp.gt.s32 %r863,%r385,7; @ %r863 bra $L172; add.u64 %r274,%r274,16; bra $L173; $L172: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r868,[%value_in]; } setp.ne.u32 %r869,%r868,0; @ %r869 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r385,[%frame+352]; mov.u64 %r274,%r1312; $L173: add.u32 %r305,%r305,-16; setp.gt.s32 %r870,%r305,16; @ %r870 bra $L175; $L171: st.u64 [%r274],%r1314; cvt.s64.s32 %r872,%r305; shl.b64 %r141,%r872,2; st.u64 [%r274+8],%r141; add.u64 %r386,%r386,%r141; st.u64 [%frame+360],%r386; add.u32 %r142,%r385,1; st.u32 [%frame+352],%r142; setp.gt.s32 %r873,%r142,7; @ %r873 bra $L176; add.u64 %r274,%r274,16; bra $L170; $L176: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r878,[%value_in]; } setp.ne.u32 %r879,%r878,0; @ %r879 bra $L174; .loc 1 1436 4 ld.u64 %r386,[%frame+360]; .loc 1 1432 4 mov.u64 %r274,%r1312; $L170: .loc 1 1435 6 ld.u32 %r880,[%frame+392]; setp.eq.u32 %r881,%r880,0; @ %r881 bra $L177; .loc 1 1436 4 st.u64 [%r274],%r1350; mov.u64 %r883,4; st.u64 [%r274+8],%r883; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r884,[%frame+352]; add.u32 %r147,%r884,1; st.u32 [%frame+352],%r147; setp.gt.s32 %r885,%r147,7; @ %r885 bra $L178; add.u64 %r274,%r274,16; bra $L177; $L178: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r890,[%value_in]; } setp.ne.u32 %r891,%r890,0; @ %r891 bra $L174; .loc 1 1438 4 ld.u64 %r386,[%frame+360]; .loc 1 1436 4 mov.u64 %r274,%r1312; $L177: .loc 1 1437 6 @ %r1313 bra $L179; .loc 1 1438 4 st.u64 [%r274],%r1349; mov.u64 %r894,8; st.u64 [%r274+8],%r894; add.u64 %r386,%r386,8; st.u64 [%frame+360],%r386; ld.u32 %r895,[%frame+352]; add.u32 %r150,%r895,1; st.u32 [%frame+352],%r150; setp.gt.s32 %r896,%r150,7; @ %r896 bra $L180; add.u64 %r274,%r274,16; bra $L179; $L180: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r901,[%value_in]; } setp.ne.u32 %r902,%r901,0; @ %r902 bra $L174; .loc 1 1442 4 ld.u64 %r386,[%frame+360]; .loc 1 1438 4 mov.u64 %r274,%r1312; $L179: .loc 1 1441 6 setp.ne.u32 %r903,%r137,128; @ %r903 bra $L181; .loc 1 1442 4 sub.u32 %r143,%r267,%r324; setp.le.s32 %r904,%r143,0; @ %r904 bra $L181; ld.u32 %r387,[%frame+352]; setp.le.s32 %r905,%r143,16; @ ! %r905 bra $L409; cvta.const.u64 %r1311,zeroes$0; bra $L182; $L409: cvta.const.u64 %r1311,zeroes$0; $L185: st.u64 [%r274],%r1311; mov.u64 %r907,64; st.u64 [%r274+8],%r907; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r387,%r387,1; st.u32 [%frame+352],%r387; setp.gt.s32 %r908,%r387,7; @ %r908 bra $L183; add.u64 %r274,%r274,16; bra $L184; $L183: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r913,[%value_in]; } setp.ne.u32 %r914,%r913,0; @ %r914 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r387,[%frame+352]; mov.u64 %r274,%r1312; $L184: add.u32 %r143,%r143,-16; setp.gt.s32 %r915,%r143,16; @ %r915 bra $L185; $L182: st.u64 [%r274],%r1311; cvt.s64.s32 %r917,%r143; shl.b64 %r154,%r917,2; st.u64 [%r274+8],%r154; add.u64 %r386,%r386,%r154; st.u64 [%frame+360],%r386; add.u32 %r155,%r387,1; st.u32 [%frame+352],%r155; setp.gt.s32 %r918,%r155,7; @ %r918 bra $L186; add.u64 %r274,%r274,16; bra $L181; $L186: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r923,[%value_in]; } setp.ne.u32 %r924,%r923,0; @ %r924 bra $L174; .loc 1 1445 3 ld.u64 %r386,[%frame+360]; .loc 1 1442 4 mov.u64 %r274,%r1312; $L181: .loc 1 1445 3 sub.u32 %r160,%r268,%r272; setp.le.s32 %r925,%r160,0; @ %r925 bra $L187; ld.u32 %r388,[%frame+352]; setp.le.s32 %r926,%r160,16; @ ! %r926 bra $L410; cvta.const.u64 %r1311,zeroes$0; bra $L188; $L410: cvta.const.u64 %r1311,zeroes$0; $L191: st.u64 [%r274],%r1311; mov.u64 %r928,64; st.u64 [%r274+8],%r928; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r388,%r388,1; st.u32 [%frame+352],%r388; setp.gt.s32 %r929,%r388,7; @ %r929 bra $L189; add.u64 %r274,%r274,16; bra $L190; $L189: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r934,[%value_in]; } setp.ne.u32 %r935,%r934,0; @ %r935 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r388,[%frame+352]; mov.u64 %r274,%r1312; $L190: add.u32 %r160,%r160,-16; setp.gt.s32 %r936,%r160,16; @ %r936 bra $L191; $L188: st.u64 [%r274],%r1311; cvt.s64.s32 %r938,%r160; shl.b64 %r159,%r938,2; st.u64 [%r274+8],%r159; add.u64 %r386,%r386,%r159; st.u64 [%frame+360],%r386; add.u32 %r161,%r388,1; st.u32 [%frame+352],%r161; setp.gt.s32 %r939,%r161,7; @ %r939 bra $L192; add.u64 %r274,%r274,16; bra $L187; $L192: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r944,[%value_in]; } setp.ne.u32 %r945,%r944,0; @ %r945 bra $L174; .loc 1 1450 4 ld.u64 %r386,[%frame+360]; .loc 1 1445 3 mov.u64 %r274,%r1312; $L187: .loc 1 1449 14 and.b32 %r946,%r266,256; .loc 1 1449 6 setp.ne.u32 %r947,%r946,0; @ %r947 bra $L193; .loc 1 1450 4 st.u64 [%r274],%r264; cvt.s64.s32 %r948,%r272; shl.b64 %r165,%r948,2; st.u64 [%r274+8],%r165; add.u64 %r386,%r386,%r165; st.u64 [%frame+360],%r386; ld.u32 %r949,[%frame+352]; add.u32 %r167,%r949,1; st.u32 [%frame+352],%r167; setp.gt.s32 %r950,%r167,7; @ %r950 bra $L194; add.u64 %r274,%r274,16; bra $L195; $L194: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r955,[%value_in]; } setp.ne.u32 %r956,%r955,0; @ %r956 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1450 4 mov.u64 %r274,%r1312; bra $L195; $L193: .loc 1 1452 7 setp.le.u32 %r957,%r262,101; @ %r957 bra $L196; .loc 1 1453 8 setp.neu.f64 %r958,%r193,0d0000000000000000; @ %r958 bra $L197; .loc 1 1455 6 cvta.const.u64 %r959,$LC7; st.u64 [%r274],%r959; mov.u64 %r960,4; st.u64 [%r274+8],%r960; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r961,[%frame+352]; add.u32 %r170,%r961,1; st.u32 [%frame+352],%r170; setp.gt.s32 %r962,%r170,7; @ %r962 bra $L198; add.u64 %r274,%r274,16; bra $L199; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r967,[%value_in]; } setp.ne.u32 %r968,%r967,0; @ %r968 bra $L174; .loc 1 1457 7 ld.u64 %r386,[%frame+360]; .loc 1 1455 6 mov.u64 %r274,%r1312; $L199: .loc 1 1456 15 ld.u32 %r173,[%frame+376]; .loc 1 1456 9 ld.u32 %r969,[%frame+380]; setp.lt.s32 %r970,%r969,%r173; @ %r970 bra $L200; .loc 1 1456 31 and.b32 %r971,%r266,1; .loc 1 1456 22 setp.eq.u32 %r972,%r971,0; @ %r972 bra $L195; $L200: .loc 1 1457 7 st.u64 [%r274],%r1348; mov.u64 %r974,4; st.u64 [%r274+8],%r974; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r975,[%frame+352]; add.u32 %r176,%r975,1; st.u32 [%frame+352],%r176; setp.gt.s32 %r976,%r176,7; @ %r976 bra $L201; add.u64 %r274,%r274,16; bra $L202; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r981,[%value_in]; } setp.ne.u32 %r982,%r981,0; @ %r982 bra $L174; .loc 1 1458 7 ld.u32 %r173,[%frame+376]; ld.u64 %r386,[%frame+360]; .loc 1 1457 7 mov.u64 %r274,%r1312; $L202: .loc 1 1458 7 add.u32 %r297,%r173,-1; setp.le.s32 %r983,%r297,0; @ %r983 bra $L195; ld.u32 %r396,[%frame+352]; setp.le.s32 %r984,%r297,16; @ ! %r984 bra $L411; cvta.const.u64 %r1311,zeroes$0; bra $L203; $L411: cvta.const.u64 %r1311,zeroes$0; $L206: st.u64 [%r274],%r1311; mov.u64 %r986,64; st.u64 [%r274+8],%r986; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r396,%r396,1; st.u32 [%frame+352],%r396; setp.gt.s32 %r987,%r396,7; @ %r987 bra $L204; add.u64 %r274,%r274,16; bra $L205; $L204: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r992,[%value_in]; } setp.ne.u32 %r993,%r992,0; @ %r993 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r396,[%frame+352]; mov.u64 %r274,%r1312; $L205: add.u32 %r297,%r297,-16; setp.gt.s32 %r994,%r297,16; @ %r994 bra $L206; $L203: st.u64 [%r274],%r1311; cvt.s64.s32 %r996,%r297; shl.b64 %r179,%r996,2; st.u64 [%r274+8],%r179; add.u64 %r386,%r386,%r179; st.u64 [%frame+360],%r386; add.u32 %r180,%r396,1; st.u32 [%frame+352],%r180; setp.gt.s32 %r997,%r180,7; @ %r997 bra $L207; add.u64 %r274,%r274,16; bra $L195; $L207: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1002,[%value_in]; } setp.ne.u32 %r1003,%r1002,0; @ %r1003 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1458 7 mov.u64 %r274,%r1312; bra $L195; $L197: .loc 1 1460 21 ld.u32 %r182,[%frame+380]; .loc 1 1460 15 setp.gt.s32 %r1004,%r182,0; @ %r1004 bra $L208; .loc 1 1461 6 cvta.const.u64 %r1005,$LC7; st.u64 [%r274],%r1005; mov.u64 %r1006,4; st.u64 [%r274+8],%r1006; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r1007,[%frame+352]; add.u32 %r184,%r1007,1; st.u32 [%frame+352],%r184; setp.gt.s32 %r1008,%r184,7; @ %r1008 bra $L209; add.u64 %r274,%r274,16; bra $L210; $L209: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1013,[%value_in]; } setp.ne.u32 %r1014,%r1013,0; @ %r1014 bra $L174; .loc 1 1456 15 ld.u32 %r182,[%frame+380]; .loc 1 1457 7 ld.u64 %r386,[%frame+360]; .loc 1 1461 6 mov.u64 %r274,%r1312; $L210: .loc 1 1462 9 setp.ne.u32 %r1015,%r182,0; @ %r1015 bra $L211; .loc 1 1462 15 ld.u32 %r395,[%frame+376]; .loc 1 1462 32 and.b32 %r1016,%r266,1; .loc 1 1462 23 or.b32 %r1017,%r1016,%r395; setp.ne.u32 %r1018,%r1017,0; @ %r1018 bra $L212; bra $L195; $L211: .loc 1 1463 7 st.u64 [%r274],%r1348; mov.u64 %r1020,4; st.u64 [%r274+8],%r1020; add.u64 %r393,%r386,4; st.u64 [%frame+360],%r393; ld.u32 %r1021,[%frame+352]; add.u32 %r394,%r1021,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1022,%r394,7; @ %r1022 bra $L213; add.u64 %r275,%r274,16; bra $L214; $L213: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1027,[%value_in]; } setp.ne.u32 %r1028,%r1027,0; @ %r1028 bra $L174; .loc 1 1464 7 ld.u32 %r182,[%frame+380]; ld.u64 %r393,[%frame+360]; ld.u32 %r394,[%frame+352]; .loc 1 1463 7 mov.u64 %r275,%r1312; $L214: .loc 1 1464 7 setp.lt.s32 %r1029,%r182,0; @ %r1029 bra $L215; .loc 1 1465 7 ld.u32 %r395,[%frame+376]; bra $L216; $L215: .loc 1 1464 7 neg.s32 %r301,%r182; setp.ge.s32 %r1030,%r182,-16; @ ! %r1030 bra $L412; cvta.const.u64 %r1311,zeroes$0; bra $L217; $L412: cvta.const.u64 %r1311,zeroes$0; $L220: st.u64 [%r275],%r1311; mov.u64 %r1032,64; st.u64 [%r275+8],%r1032; add.u64 %r393,%r393,64; st.u64 [%frame+360],%r393; add.u32 %r394,%r394,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1033,%r394,7; @ %r1033 bra $L218; add.u64 %r275,%r275,16; bra $L219; $L218: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1038,[%value_in]; } setp.ne.u32 %r1039,%r1038,0; @ %r1039 bra $L174; ld.u64 %r393,[%frame+360]; ld.u32 %r394,[%frame+352]; mov.u64 %r275,%r1312; $L219: add.u32 %r301,%r301,-16; setp.gt.s32 %r1040,%r301,16; @ %r1040 bra $L220; $L217: st.u64 [%r275],%r1311; cvt.s64.s32 %r1042,%r301; shl.b64 %r190,%r1042,2; st.u64 [%r275+8],%r190; add.u64 %r393,%r393,%r190; st.u64 [%frame+360],%r393; add.u32 %r394,%r394,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1043,%r394,7; @ %r1043 bra $L221; add.u64 %r275,%r275,16; .loc 1 1465 7 ld.u32 %r395,[%frame+376]; bra $L216; $L221: .loc 1 1464 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1048,[%value_in]; } setp.ne.u32 %r1049,%r1048,0; @ %r1049 bra $L174; .loc 1 1465 7 ld.u32 %r395,[%frame+376]; ld.u64 %r393,[%frame+360]; ld.u32 %r394,[%frame+352]; .loc 1 1464 7 mov.u64 %r275,%r1312; $L216: .loc 1 1465 7 st.u64 [%r275],%r264; cvt.s64.s32 %r1050,%r395; shl.b64 %r192,%r1050,2; st.u64 [%r275+8],%r192; add.u64 %r386,%r192,%r393; st.u64 [%frame+360],%r386; add.u32 %r195,%r394,1; st.u32 [%frame+352],%r195; setp.gt.s32 %r1051,%r195,7; @ %r1051 bra $L222; add.u64 %r274,%r275,16; bra $L195; $L222: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1056,[%value_in]; } setp.ne.u32 %r1057,%r1056,0; @ %r1057 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1465 7 mov.u64 %r274,%r1312; bra $L195; $L208: .loc 1 1469 6 ld.u32 %r1062,[%frame+376]; min.s32 %r28,%r1062,%r269; setp.le.s32 %r1063,%r28,0; @ %r1063 bra $L223; st.u64 [%r274],%r264; cvt.s64.s32 %r1064,%r28; shl.b64 %r200,%r1064,2; st.u64 [%r274+8],%r200; add.u64 %r386,%r386,%r200; st.u64 [%frame+360],%r386; ld.u32 %r1065,[%frame+352]; add.u32 %r202,%r1065,1; st.u32 [%frame+352],%r202; setp.gt.s32 %r1066,%r202,7; @ %r1066 bra $L224; add.u64 %r274,%r274,16; bra $L223; $L224: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1071,[%value_in]; } setp.ne.u32 %r1072,%r1071,0; @ %r1072 bra $L174; ld.u64 %r386,[%frame+360]; mov.u64 %r274,%r1312; $L223: max.s32 %r1073,%r28,0; sub.u32 %r206,%r269,%r1073; setp.le.s32 %r1074,%r206,0; @ %r1074 bra $L225; ld.u32 %r389,[%frame+352]; setp.le.s32 %r1075,%r206,16; @ ! %r1075 bra $L413; cvta.const.u64 %r1311,zeroes$0; bra $L226; $L413: cvta.const.u64 %r1311,zeroes$0; $L229: st.u64 [%r274],%r1311; mov.u64 %r1077,64; st.u64 [%r274+8],%r1077; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r389,%r389,1; st.u32 [%frame+352],%r389; setp.gt.s32 %r1078,%r389,7; @ %r1078 bra $L227; add.u64 %r274,%r274,16; bra $L228; $L227: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1083,[%value_in]; } setp.ne.u32 %r1084,%r1083,0; @ %r1084 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r389,[%frame+352]; mov.u64 %r274,%r1312; $L228: add.u32 %r206,%r206,-16; setp.gt.s32 %r1085,%r206,16; @ %r1085 bra $L229; $L226: st.u64 [%r274],%r1311; cvt.s64.s32 %r1087,%r206; shl.b64 %r208,%r1087,2; st.u64 [%r274+8],%r208; add.u64 %r386,%r386,%r208; st.u64 [%frame+360],%r386; add.u32 %r210,%r389,1; st.u32 [%frame+352],%r210; setp.gt.s32 %r1088,%r210,7; @ %r1088 bra $L230; add.u64 %r274,%r274,16; bra $L225; $L230: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1093,[%value_in]; } setp.ne.u32 %r1094,%r1093,0; @ %r1094 bra $L174; .loc 1 1491 10 ld.u64 %r386,[%frame+360]; .loc 1 1469 6 mov.u64 %r274,%r1312; $L225: .loc 1 1471 9 cvt.s64.s32 %r1095,%r269; shl.b64 %r213,%r1095,2; .loc 1 1490 15 ld.u32 %r214,[%frame+380]; ld.u32 %r215,[%frame+376]; .loc 1 1490 9 setp.lt.s32 %r1096,%r214,%r215; @ %r1096 bra $L231; .loc 1 1490 31 and.b32 %r1097,%r266,1; .loc 1 1490 22 setp.eq.u32 %r1098,%r1097,0; @ %r1098 bra $L232; $L231: .loc 1 1491 10 st.u64 [%r274],%r1348; mov.u64 %r1100,4; st.u64 [%r274+8],%r1100; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r1101,[%frame+352]; add.u32 %r218,%r1101,1; st.u32 [%frame+352],%r218; setp.gt.s32 %r1102,%r218,7; @ %r1102 bra $L233; add.u64 %r274,%r274,16; bra $L232; $L233: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1107,[%value_in]; } setp.ne.u32 %r1108,%r1107,0; @ %r1108 bra $L174; .loc 1 1492 6 ld.u32 %r215,[%frame+376]; ld.u32 %r214,[%frame+380]; ld.u64 %r386,[%frame+360]; .loc 1 1491 10 mov.u64 %r274,%r1312; $L232: .loc 1 1492 6 sub.u32 %r223,%r215,%r214; cvt.s64.s32 %r1109,%r215; shl.b64 %r1110,%r1109,2; sub.u64 %r1111,%r1110,%r213; shr.s64 %r1113,%r1111,2; cvt.u32.u64 %r1114,%r1113; min.s32 %r27,%r1114,%r223; setp.le.s32 %r1115,%r27,0; @ %r1115 bra $L234; .loc 1 1471 9 add.u64 %r1116,%r264,%r213; .loc 1 1492 6 st.u64 [%r274],%r1116; cvt.s64.s32 %r1117,%r27; shl.b64 %r224,%r1117,2; st.u64 [%r274+8],%r224; add.u64 %r386,%r386,%r224; st.u64 [%frame+360],%r386; ld.u32 %r1118,[%frame+352]; add.u32 %r226,%r1118,1; st.u32 [%frame+352],%r226; setp.gt.s32 %r1119,%r226,7; @ %r1119 bra $L235; add.u64 %r274,%r274,16; bra $L234; $L235: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1124,[%value_in]; } setp.ne.u32 %r1125,%r1124,0; @ %r1125 bra $L174; ld.u32 %r1126,[%frame+376]; ld.u32 %r1127,[%frame+380]; sub.u32 %r223,%r1126,%r1127; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1492 6 mov.u64 %r274,%r1312; $L234: max.s32 %r1128,%r27,0; sub.u32 %r283,%r223,%r1128; setp.le.s32 %r1129,%r283,0; @ %r1129 bra $L195; ld.u32 %r392,[%frame+352]; setp.le.s32 %r1130,%r283,16; @ ! %r1130 bra $L414; cvta.const.u64 %r1311,zeroes$0; bra $L236; $L414: cvta.const.u64 %r1311,zeroes$0; $L239: st.u64 [%r274],%r1311; mov.u64 %r1132,64; st.u64 [%r274+8],%r1132; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r392,%r392,1; st.u32 [%frame+352],%r392; setp.gt.s32 %r1133,%r392,7; @ %r1133 bra $L237; add.u64 %r274,%r274,16; bra $L238; $L237: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1138,[%value_in]; } setp.ne.u32 %r1139,%r1138,0; @ %r1139 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r392,[%frame+352]; mov.u64 %r274,%r1312; $L238: add.u32 %r283,%r283,-16; setp.gt.s32 %r1140,%r283,16; @ %r1140 bra $L239; $L236: st.u64 [%r274],%r1311; cvt.s64.s32 %r1142,%r283; shl.b64 %r230,%r1142,2; st.u64 [%r274+8],%r230; add.u64 %r386,%r386,%r230; st.u64 [%frame+360],%r386; add.u32 %r232,%r392,1; st.u32 [%frame+352],%r232; setp.gt.s32 %r1143,%r232,7; @ %r1143 bra $L240; add.u64 %r274,%r274,16; bra $L195; $L240: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1148,[%value_in]; } setp.ne.u32 %r1149,%r1148,0; @ %r1149 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1492 6 mov.u64 %r274,%r1312; bra $L195; $L196: .loc 1 1455 6 add.u64 %r237,%r386,4; .loc 1 1450 4 ld.u32 %r1150,[%frame+352]; add.u32 %r238,%r1150,1; add.u64 %r277,%r274,16; .loc 1 1497 8 ld.u32 %r1151,[%frame+376]; setp.gt.s32 %r1152,%r1151,1; @ %r1152 bra $L241; .loc 1 1497 27 and.b32 %r1153,%r266,1; .loc 1 1497 18 setp.eq.u32 %r1154,%r1153,0; @ %r1154 bra $L242; $L241: .loc 1 1498 6 st.u64 [%r274],%r264; mov.u64 %r1155,4; st.u64 [%r274+8],%r1155; st.u64 [%frame+360],%r237; st.u32 [%frame+352],%r238; setp.le.s32 %r1156,%r238,7; @ %r1156 bra $L243; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1161,[%value_in]; } setp.ne.u32 %r1162,%r1161,0; @ %r1162 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1498 6 mov.u64 %r277,%r1312; $L243: .loc 1 1500 6 st.u64 [%r277],%r1348; mov.u64 %r1164,4; st.u64 [%r277+8],%r1164; add.u64 %r237,%r237,4; st.u64 [%frame+360],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+352],%r238; setp.gt.s32 %r1165,%r238,7; @ %r1165 bra $L244; add.u64 %r277,%r277,16; bra $L245; $L244: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1170,[%value_in]; } setp.ne.u32 %r1171,%r1170,0; @ %r1171 bra $L174; .loc 1 1502 7 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1500 6 mov.u64 %r277,%r1312; $L245: .loc 1 1502 7 ld.u32 %r1172,[%frame+376]; add.u32 %r303,%r1172,-1; .loc 1 1501 9 setp.eq.f64 %r1173,%r193,0d0000000000000000; @ %r1173 bra $L246; .loc 1 1502 7 add.u32 %r238,%r238,1; .loc 1 1499 8 add.u64 %r1174,%r264,4; .loc 1 1502 7 st.u64 [%r277],%r1174; cvt.s64.s32 %r1175,%r303; shl.b64 %r240,%r1175,2; st.u64 [%r277+8],%r240; add.u64 %r237,%r237,%r240; st.u64 [%frame+360],%r237; st.u32 [%frame+352],%r238; setp.gt.s32 %r1176,%r238,7; @ %r1176 bra $L247; add.u64 %r277,%r277,16; bra $L248; $L247: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1181,[%value_in]; } setp.ne.u32 %r1182,%r1181,0; @ %r1182 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1502 7 mov.u64 %r277,%r1312; bra $L248; $L246: .loc 1 1505 7 setp.le.s32 %r1183,%r303,0; @ %r1183 bra $L248; setp.le.s32 %r1184,%r303,16; @ ! %r1184 bra $L415; cvta.const.u64 %r1311,zeroes$0; bra $L249; $L415: cvta.const.u64 %r1311,zeroes$0; $L252: st.u64 [%r277],%r1311; mov.u64 %r1186,64; st.u64 [%r277+8],%r1186; add.u64 %r237,%r237,64; st.u64 [%frame+360],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+352],%r238; setp.gt.s32 %r1187,%r238,7; @ %r1187 bra $L250; add.u64 %r277,%r277,16; bra $L251; $L250: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1192,[%value_in]; } setp.ne.u32 %r1193,%r1192,0; @ %r1193 bra $L174; ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; mov.u64 %r277,%r1312; $L251: add.u32 %r303,%r303,-16; setp.gt.s32 %r1194,%r303,16; @ %r1194 bra $L252; $L249: st.u64 [%r277],%r1311; cvt.s64.s32 %r1196,%r303; shl.b64 %r243,%r1196,2; st.u64 [%r277+8],%r243; add.u64 %r237,%r237,%r243; st.u64 [%frame+360],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+352],%r238; setp.gt.s32 %r1197,%r238,7; @ %r1197 bra $L253; add.u64 %r277,%r277,16; bra $L248; $L253: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1202,[%value_in]; } setp.ne.u32 %r1203,%r1202,0; @ %r1203 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1505 7 mov.u64 %r277,%r1312; bra $L248; $L242: .loc 1 1507 6 st.u64 [%r274],%r264; mov.u64 %r1204,4; st.u64 [%r274+8],%r1204; st.u64 [%frame+360],%r237; st.u32 [%frame+352],%r238; setp.le.s32 %r1205,%r238,7; @ %r1205 bra $L248; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1210,[%value_in]; } setp.ne.u32 %r1211,%r1210,0; @ %r1211 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1507 6 mov.u64 %r277,%r1312; $L248: .loc 1 1508 5 st.u64 [%r277],%r1347; cvt.s64.s32 %r1213,%r42; shl.b64 %r246,%r1213,2; st.u64 [%r277+8],%r246; add.u64 %r386,%r246,%r237; st.u64 [%frame+360],%r386; add.u32 %r248,%r238,1; st.u32 [%frame+352],%r248; setp.gt.s32 %r1214,%r248,7; @ %r1214 bra $L254; add.u64 %r274,%r277,16; bra $L195; $L254: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1219,[%value_in]; } setp.ne.u32 %r1220,%r1219,0; @ %r1220 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1508 5 mov.u64 %r274,%r1312; $L195: .loc 1 1515 13 and.b32 %r1221,%r266,4; .loc 1 1515 6 setp.eq.u32 %r1222,%r1221,0; @ %r1222 bra $L255; .loc 1 1516 4 sub.u32 %r72,%r267,%r324; setp.le.s32 %r1223,%r72,0; @ %r1223 bra $L255; ld.u32 %r397,[%frame+352]; setp.le.s32 %r1224,%r72,16; @ ! %r1224 bra $L416; cvta.const.u64 %r1314,blanks$1; bra $L256; $L416: cvta.const.u64 %r1314,blanks$1; $L259: st.u64 [%r274],%r1314; mov.u64 %r1226,64; st.u64 [%r274+8],%r1226; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r397,%r397,1; st.u32 [%frame+352],%r397; setp.gt.s32 %r1227,%r397,7; @ %r1227 bra $L257; add.u64 %r274,%r274,16; bra $L258; $L257: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1232,[%value_in]; } setp.ne.u32 %r1233,%r1232,0; @ %r1233 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r397,[%frame+352]; mov.u64 %r274,%r1312; $L258: add.u32 %r72,%r72,-16; setp.gt.s32 %r1234,%r72,16; @ %r1234 bra $L259; $L256: st.u64 [%r274],%r1314; cvt.s64.s32 %r1236,%r72; shl.b64 %r253,%r1236,2; st.u64 [%r274+8],%r253; add.u64 %r386,%r386,%r253; st.u64 [%frame+360],%r386; add.u32 %r254,%r397,1; st.u32 [%frame+352],%r254; setp.le.s32 %r1237,%r254,7; @ %r1237 bra $L255; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1242,[%value_in]; } setp.ne.u32 %r1243,%r1242,0; @ %r1243 bra $L174; .loc 1 1521 3 ld.u64 %r386,[%frame+360]; $L255: .loc 1 1519 33 max.s32 %r1244,%r267,%r324; .loc 1 1519 7 add.u32 %r423,%r423,%r1244; .loc 1 1521 3 setp.ne.u64 %r1245,%r386,0; @ %r1245 bra $L260; $L262: mov.u32 %r1246,0; st.u32 [%frame+352],%r1246; .loc 1 1523 20 setp.ne.u64 %r1247,%r278,0; @ %r1247 bra $L261; .loc 1 1521 3 mov.u64 %r274,%r1312; bra $L28; $L260: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1252,[%value_in]; } setp.ne.u32 %r1253,%r1252,0; @ ! %r1253 bra $L262; bra $L174; $L261: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r278; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r274,%r1312; bra $L28; $L34: .loc 1 1529 2 ld.u64 %r1256,[%frame+360]; setp.eq.u64 %r1257,%r1256,0; @ %r1257 bra $L263; add.u64 %r1261,%frame,344; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1261; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1262,[%value_in]; } setp.eq.u32 %r1263,%r1262,0; @ %r1263 bra $L263; ld.u16 %r1265,[%r425+16]; and.b16 %r1264,%r1265,64; cvt.s32.s16 %r403,%r1264; bra $L33; $L263: ld.u16 %r1267,[%r425+16]; and.b16 %r1266,%r1267,64; cvt.s32.s16 %r403,%r1266; bra $L33; $L174: .loc 1 1531 5 setp.ne.u64 %r1268,%r278,0; @ %r1268 bra $L264; ld.u16 %r1270,[%r425+16]; and.b16 %r1269,%r1270,64; cvt.s32.s16 %r403,%r1269; bra $L33; $L264: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r278; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r1274,[%r425+16]; and.b16 %r1273,%r1274,64; cvt.s32.s16 %r403,%r1273; $L33: .loc 1 1536 31 setp.eq.u32 %r1275,%r403,0; selp.u32 %r423,%r423,-1,%r1275; bra $L24; $L212: .loc 1 1463 7 st.u64 [%r274],%r1348; mov.u64 %r1278,4; st.u64 [%r274+8],%r1278; add.u64 %r393,%r386,4; st.u64 [%frame+360],%r393; ld.u32 %r1279,[%frame+352]; add.u32 %r394,%r1279,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1280,%r394,7; @ %r1280 bra $L213; add.u64 %r275,%r274,16; bra $L216; $L82: .loc 1 656 9 mov.u32 %r266,%r265; mov.u64 %r278,0; mov.u32 %r268,0; mov.u32 %r269,%r268; bra $L168; $L104: .loc 1 1042 9 mov.u32 %r1290,40; mov.u32 %r1283,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r193; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1283; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r266; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1355; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1354; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r262; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1353; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r1290; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r1294,[%value_in]; } mov.u64 %r264,%r1294; .loc 1 1049 7 setp.eq.u64 %r1295,%frame,%r264; @ %r1295 bra $L265; mov.u64 %r278,0; .loc 1 1037 10 mov.u32 %r268,%r1283; ld.u32 %r1321,[%frame+376]; ld.u32 %r1322,[%frame+380]; bra $L266; $L88: .loc 1 1311 14 setp.ne.u32 %r1296,%r268,-1; @ %r1296 bra $L267; bra $L161; $L273: .loc 1 672 11 mov.u32 %r262,104; $L48: setp.ne.u32 %r1297,%r322,0; @ ! %r1297 bra $L269; bra $L268; $L265: .loc 1 1049 26 ld.u32 %r1321,[%frame+376]; .loc 1 1049 18 setp.gt.s32 %r1298,%r1321,40; @ %r1298 bra $L292; mov.u64 %r278,0; .loc 1 1037 10 mov.u32 %r268,%r1283; ld.u32 %r1322,[%frame+380]; bra $L266; $L267: .loc 1 1312 11 and.b32 %r266,%r265,-129; .loc 1 1320 15 set.u32.ne.u64 %r1300,%r270,0; neg.s32 %r1301,%r1300; mov.u32 %r1299,%r1301; .loc 1 1320 28 set.u32.ne.u32 %r1303,%r268,0; neg.s32 %r1304,%r1303; mov.u32 %r1302,%r1304; .loc 1 1320 20 cvt.u16.u8 %r1362,%r1299; mov.u16 %r1306,%r1362; cvt.u16.u8 %r1362,%r1302; mov.u16 %r1307,%r1362; or.b16 %r1305,%r1306,%r1307; cvt.u32.u16 %r1308,%r1305; .loc 1 1320 7 cvt.u16.u8 %r1309,%r1308; setp.ne.u16 %r1310,%r1309,0; @ %r1310 bra $L293; mov.u32 %r268,0; mov.u32 %r272,%r268; .loc 1 1319 7 mov.u64 %r264,%r1312; bra $L165; $L24: .loc 1 1538 1 mov.u32 %value,%r423; st.param.u32 [%value_out],%value; ret; } /1618 0 0 0 644 69543 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: __ssvfwscanf_r .visible .func (.param .u32 %value_out) __ssvfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __submore .extern .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .extern .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: swprintf .extern .func (.param .u32 %value_out) swprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstod_r .extern .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN FUNCTION DEF: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r34; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u32 %r72; mov.u64 %r46,%ar0; mov.u32 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 269 6 setp.ne.u32 %r49,%r47,-1; @ ! %r49 bra $L1; .loc 1 273 14 ld.u16 %r51,[%r48+16]; and.b16 %r50,%r51,-33; st.u16 [%r48+16],%r50; .loc 1 282 13 ld.u32 %r44,[%r48+8]; .loc 1 280 6 ld.u64 %r52,[%r48+88]; setp.eq.u64 %r53,%r52,0; @ %r53 bra $L4; .loc 1 282 10 ld.u32 %r54,[%r48+96]; setp.le.s32 %r55,%r54,%r44; @ %r55 bra $L5; $L7: .loc 1 286 14 ld.u64 %r27,[%r48]; add.u64 %r56,%r27,-4; st.u64 [%r48],%r56; .loc 1 287 15 st.u8 [%r27+-4],%r47; .loc 1 288 14 ld.u32 %r58,[%r48+8]; add.u32 %r57,%r58,4; st.u32 [%r48+8],%r57; .loc 1 289 14 bra $L1; $L5: .loc 1 282 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r48; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r61,[%value_in]; } .loc 1 282 35 setp.ne.u32 %r62,%r61,0; @ ! %r62 bra $L7; bra $L1; $L4: .loc 1 298 14 ld.u64 %r34,[%r48+24]; .loc 1 298 34 ld.u64 %r45,[%r48]; .loc 1 298 6 setp.eq.u64 %r63,%r34,0; @ %r63 bra $L8; .loc 1 298 29 setp.ge.u64 %r64,%r34,%r45; @ %r64 bra $L8; .loc 1 299 7 ld.u32 %r65,[%r45+-4]; setp.ne.u32 %r66,%r47,%r65; @ %r66 bra $L8; .loc 1 301 14 add.u64 %r67,%r45,-4; st.u64 [%r48],%r67; .loc 1 302 14 add.u32 %r68,%r44,4; st.u32 [%r48+8],%r68; .loc 1 303 14 bra $L1; $L8: .loc 1 311 11 st.u32 [%r48+112],%r44; .loc 1 312 11 st.u64 [%r48+104],%r45; .loc 1 313 19 add.u64 %r69,%r48,116; .loc 1 313 17 st.u64 [%r48+88],%r69; .loc 1 314 17 mov.u32 %r70,3; st.u32 [%r48+96],%r70; .loc 1 315 12 add.u64 %r71,%r48,115; .loc 1 315 10 st.u64 [%r48],%r71; .loc 1 316 23 st.u32 [%r48+115],%r47; .loc 1 317 10 mov.u32 %r72,2; st.u32 [%r48+8],%r72; $L1: .loc 1 319 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __ssvfwscanf_r .visible .func (.param .u32 %value_out) __ssvfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[1424]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u32 %r34; .reg .u32 %r40; .reg .u32 %r52; .reg .u64 %r54; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r88; .reg .u64 %r97; .reg .u32 %r129; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u32 %r179; .reg .u64 %r180; .reg .u32 %r183; .reg .u64 %r185; .reg .u32 %r187; .reg .u32 %r189; .reg .u64 %r191; .reg .u32 %r192; .reg .u32 %r193; .reg .u64 %r194; .reg .u32 %r196; .reg .u64 %r199; .reg .u64 %r202; .reg .u32 %r204; .reg .u32 %r205; .reg .u32 %r206; .reg .u64 %r218; .reg .u32 %r220; .reg .u32 %r223; .reg .u32 %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u32 %r236; .reg .u32 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u64 %r243; .reg .u32 %r244; .reg .u32 %r250; .reg .u64 %r252; .reg .u32 %r253; .reg .u32 %r259; .reg .u64 %r261; .reg .u32 %r262; .reg .u32 %r268; .reg .u64 %r270; .reg .u32 %r271; .reg .u32 %r277; .reg .u64 %r279; .reg .u32 %r280; .reg .u32 %r286; .reg .u64 %r288; .reg .u32 %r289; .reg .u32 %r295; .reg .u64 %r297; .reg .u32 %r298; .reg .u32 %r304; .reg .u64 %r306; .reg .u32 %r307; .reg .u32 %r313; .reg .u64 %r315; .reg .u32 %r316; .reg .u32 %r322; .reg .u64 %r324; .reg .u32 %r325; .reg .u32 %r332; .reg .u64 %r334; .reg .u32 %r335; .reg .u64 %r342; .reg .u32 %r343; .reg .u32 %r347; .reg .u64 %r350; .reg .u32 %r351; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u32 %r363; .reg .u64 %r364; .reg .u64 %r365; .reg .u32 %r366; .reg .u64 %r368; .reg .u32 %r371; .reg .u64 %r374; .reg .u64 %r377; .reg .u64 %r382; .reg .u32 %r383; .reg .u64 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r388; .reg .u32 %r389; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u64 %r393; .reg .u64 %r394; .reg .u64 %r395; .reg .u64 %r399; .reg .u64 %r400; .reg .u32 %r401; .reg .u32 %r402; .reg .u32 %r407; .reg .u64 %r408; .reg .u64 %r409; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r413; .reg .u64 %r414; .reg .u16 %r415; .reg .u16 %r416; .reg .pred %r417; .reg .u16 %r418; .reg .u32 %r420; .reg .u32 %r421; .reg .pred %r422; .reg .pred %r423; .reg .u32 %r425; .reg .pred %r426; .reg .pred %r427; .reg .u32 %r430; .reg .pred %r431; .reg .u64 %r432; .reg .u32 %r433; .reg .pred %r435; .reg .u32 %r437; .reg .pred %r438; .reg .pred %r439; .reg .pred %r440; .reg .pred %r441; .reg .pred %r442; .reg .pred %r443; .reg .pred %r444; .reg .pred %r445; .reg .pred %r446; .reg .pred %r447; .reg .pred %r448; .reg .u32 %r449; .reg .pred %r450; .reg .pred %r451; .reg .pred %r452; .reg .pred %r453; .reg .pred %r454; .reg .pred %r455; .reg .pred %r456; .reg .pred %r457; .reg .pred %r458; .reg .pred %r459; .reg .pred %r460; .reg .pred %r461; .reg .pred %r462; .reg .pred %r463; .reg .pred %r464; .reg .pred %r465; .reg .pred %r466; .reg .u32 %r469; .reg .pred %r470; .reg .u64 %r471; .reg .u32 %r472; .reg .pred %r474; .reg .pred %r475; .reg .u32 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u16 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u32 %r488; .reg .u16 %r489; .reg .pred %r490; .reg .u32 %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .pred %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u64 %r499; .reg .u64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r503; .reg .pred %r504; .reg .u32 %r505; .reg .u32 %r506; .reg .u32 %r507; .reg .u32 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u16 %r511; .reg .u16 %r512; .reg .u16 %r513; .reg .u32 %r514; .reg .u16 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .u32 %r518; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .u32 %r522; .reg .u16 %r523; .reg .u16 %r524; .reg .u16 %r525; .reg .u32 %r526; .reg .u16 %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u64 %r533; .reg .u32 %r534; .reg .pred %r535; .reg .u32 %r536; .reg .pred %r537; .reg .u64 %r538; .reg .u32 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .pred %r542; .reg .u32 %r545; .reg .pred %r546; .reg .u64 %r547; .reg .u32 %r548; .reg .pred %r550; .reg .u32 %r552; .reg .pred %r553; .reg .pred %r556; .reg .pred %r557; .reg .u32 %r560; .reg .pred %r561; .reg .pred %r562; .reg .u64 %r563; .reg .u32 %r564; .reg .pred %r567; .reg .u32 %r571; .reg .u64 %r572; .reg .u64 %r574; .reg .u64 %r580; .reg .pred %r581; .reg .pred %r582; .reg .u32 %r583; .reg .pred %r584; .reg .pred %r586; .reg .pred %r587; .reg .u32 %r590; .reg .pred %r591; .reg .pred %r592; .reg .u64 %r593; .reg .u32 %r594; .reg .pred %r597; .reg .u64 %r599; .reg .u32 %r601; .reg .pred %r602; .reg .pred %r603; .reg .u32 %r606; .reg .pred %r607; .reg .u64 %r608; .reg .u32 %r609; .reg .pred %r611; .reg .pred %r612; .reg .u64 %r617; .reg .pred %r618; .reg .u64 %r622; .reg .pred %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .u32 %r629; .reg .pred %r630; .reg .u64 %r631; .reg .u32 %r632; .reg .pred %r634; .reg .pred %r635; .reg .u64 %r640; .reg .pred %r641; .reg .u64 %r645; .reg .pred %r646; .reg .u64 %r647; .reg .u64 %r649; .reg .pred %r650; .reg .u32 %r651; .reg .u32 %r654; .reg .u64 %r655; .reg .u64 %r657; .reg .u64 %r663; .reg .pred %r664; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .pred %r669; .reg .u32 %r672; .reg .pred %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .pred %r677; .reg .pred %r678; .reg .u64 %r683; .reg .pred %r684; .reg .u64 %r688; .reg .pred %r689; .reg .u32 %r691; .reg .pred %r692; .reg .u32 %r693; .reg .pred %r694; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r701; .reg .pred %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r706; .reg .pred %r707; .reg .u32 %r709; .reg .pred %r710; .reg .u32 %r711; .reg .pred %r712; .reg .u32 %r715; .reg .pred %r716; .reg .u32 %r719; .reg .pred %r720; .reg .u64 %r721; .reg .u32 %r722; .reg .pred %r724; .reg .pred %r725; .reg .u32 %r727; .reg .pred %r728; .reg .u32 %r729; .reg .u32 %r732; .reg .u64 %r733; .reg .u64 %r735; .reg .u64 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .pred %r746; .reg .u32 %r749; .reg .pred %r750; .reg .u64 %r751; .reg .u32 %r752; .reg .pred %r754; .reg .pred %r755; .reg .u32 %r757; .reg .pred %r758; .reg .u32 %r760; .reg .u64 %r761; .reg .pred %r762; .reg .u64 %r763; .reg .pred %r764; .reg .u32 %r767; .reg .pred %r768; .reg .u64 %r769; .reg .pred %r771; .reg .pred %r772; .reg .pred %r773; .reg .pred %r774; .reg .u32 %r775; .reg .u32 %r776; .reg .pred %r777; .reg .u64 %r778; .reg .u64 %r779; .reg .u64 %r780; .reg .u64 %r781; .reg .pred %r782; .reg .pred %r783; .reg .pred %r784; .reg .pred %r785; .reg .pred %r786; .reg .pred %r787; .reg .pred %r788; .reg .u32 %r789; .reg .pred %r790; .reg .u64 %r791; .reg .u64 %r792; .reg .u64 %r793; .reg .u64 %r794; .reg .pred %r795; .reg .pred %r796; .reg .u32 %r797; .reg .pred %r798; .reg .u32 %r799; .reg .pred %r800; .reg .u32 %r801; .reg .pred %r802; .reg .u64 %r803; .reg .pred %r804; .reg .pred %r805; .reg .pred %r809; .reg .u32 %r810; .reg .pred %r811; .reg .pred %r812; .reg .u32 %r816; .reg .u32 %r817; .reg .pred %r818; .reg .u32 %r822; .reg .pred %r823; .reg .u64 %r827; .reg .u64 %r829; .reg .u64 %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r834; .reg .u64 %r835; .reg .u32 %r836; .reg .pred %r837; .reg .u64 %r838; .reg .u32 %r839; .reg .pred %r840; .reg .u64 %r841; .reg .pred %r842; .reg .u64 %r847; .reg .u64 %r852; .reg .u64 %r853; .reg .u64 %r854; .reg .u64 %r855; .reg .u64 %r857; .reg .u32 %r858; .reg .u64 %r859; .reg .pred %r860; .reg .u32 %r861; .reg .pred %r862; .reg .u32 %r865; .reg .pred %r866; .reg .u64 %r867; .reg .pred %r869; .reg .pred %r870; .reg .pred %r871; .reg .pred %r872; .reg .pred %r873; .reg .pred %r874; .reg .pred %r875; .reg .pred %r876; .reg .pred %r877; .reg .pred %r878; .reg .pred %r879; .reg .pred %r880; .reg .pred %r881; .reg .pred %r882; .reg .pred %r883; .reg .pred %r884; .reg .pred %r885; .reg .pred %r886; .reg .pred %r887; .reg .pred %r888; .reg .pred %r889; .reg .pred %r890; .reg .u32 %r891; .reg .pred %r892; .reg .pred %r893; .reg .u32 %r894; .reg .pred %r895; .reg .u32 %r896; .reg .pred %r897; .reg .u32 %r898; .reg .u16 %r899; .reg .u32 %r900; .reg .u32 %r901; .reg .u32 %r902; .reg .u32 %r903; .reg .u32 %r904; .reg .u16 %r905; .reg .u16 %r906; .reg .u16 %r907; .reg .u32 %r908; .reg .u16 %r909; .reg .pred %r910; .reg .u32 %r911; .reg .pred %r912; .reg .pred %r914; .reg .u32 %r915; .reg .u16 %r916; .reg .u32 %r917; .reg .u32 %r918; .reg .u32 %r919; .reg .u32 %r921; .reg .u32 %r922; .reg .u16 %r923; .reg .u16 %r924; .reg .u16 %r925; .reg .u32 %r926; .reg .u16 %r927; .reg .pred %r928; .reg .u16 %r930; .reg .u32 %r932; .reg .u16 %r934; .reg .pred %r935; .reg .u32 %r936; .reg .u16 %r937; .reg .u32 %r938; .reg .u32 %r939; .reg .u32 %r940; .reg .u32 %r941; .reg .u32 %r942; .reg .u16 %r943; .reg .u16 %r944; .reg .u16 %r945; .reg .u32 %r946; .reg .u16 %r947; .reg .pred %r948; .reg .u32 %r949; .reg .pred %r950; .reg .u32 %r951; .reg .u16 %r952; .reg .u16 %r953; .reg .u32 %r954; .reg .u16 %r956; .reg .u16 %r958; .reg .pred %r959; .reg .u16 %r960; .reg .u32 %r962; .reg .u16 %r963; .reg .pred %r964; .reg .u16 %r965; .reg .pred %r966; .reg .u16 %r967; .reg .pred %r968; .reg .u32 %r969; .reg .pred %r970; .reg .u32 %r971; .reg .pred %r972; .reg .u32 %r974; .reg .pred %r975; .reg .pred %r976; .reg .u32 %r977; .reg .pred %r978; .reg .pred %r979; .reg .pred %r983; .reg .u32 %r985; .reg .pred %r986; .reg .pred %r987; .reg .u32 %r989; .reg .pred %r991; .reg .u32 %r992; .reg .pred %r993; .reg .u16 %r994; .reg .pred %r995; .reg .u32 %r996; .reg .pred %r998; .reg .pred %r999; .reg .u32 %r1001; .reg .u32 %r1003; .reg .u16 %r1004; .reg .u16 %r1005; .reg .u16 %r1006; .reg .u32 %r1007; .reg .u16 %r1009; .reg .u16 %r1010; .reg .u16 %r1011; .reg .u32 %r1012; .reg .u16 %r1013; .reg .pred %r1014; .reg .u32 %r1016; .reg .pred %r1018; .reg .u32 %r1019; .reg .pred %r1020; .reg .u32 %r1021; .reg .pred %r1022; .reg .pred %r1023; .reg .u32 %r1025; .reg .pred %r1027; .reg .u32 %r1028; .reg .pred %r1029; .reg .u32 %r1036; .reg .pred %r1037; .reg .u32 %r1039; .reg .pred %r1040; .reg .pred %r1041; .reg .pred %r1042; .reg .u64 %r1045; .reg .u32 %r1046; .reg .u64 %r1047; .reg .u64 %r1048; .reg .pred %r1050; .reg .u64 %r1052; .reg .u64 %r1053; .reg .u32 %r1054; .reg .u64 %r1058; .reg .f64 %r1059; .reg .u64 %r1060; .reg .u32 %r1061; .reg .pred %r1062; .reg .u64 %r1063; .reg .u32 %r1064; .reg .pred %r1065; .reg .pred %r1066; .reg .u64 %r1067; .reg .f32 %r1068; .reg .f32 %r1069; .reg .pred %r1070; .reg .u16 %r1071; .reg .u16 %r1072; .reg .pred %r1073; .reg .pred %r1099; .reg .pred %r1100; .reg .pred %r1101; .reg .pred %r1102; .reg .u32 %r1103; .reg .u32 %r1104; .reg .pred %r1106; .reg .pred %r1107; .reg .pred %r1108; .reg .pred %r1109; .reg .pred %r1110; .reg .u64 %r1111; .reg .u64 %r1112; .reg .u64 %r1113; .reg .u16 %r1114; mov.u64 %r408,%ar0; mov.u64 %r409,%ar1; mov.u64 %r410,%ar2; mov.u64 %r411,%ar3; .loc 1 547 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r413,[%value_in]; } .loc 1 547 22 ld.u64 %r414,[%r413]; .loc 1 547 10 ld.s8 %r183,[%r414]; .loc 1 553 3 ld.u16 %r416,[%r409+16]; and.b16 %r415,%r416,8192; setp.ne.u16 %r417,%r415,0; @ %r417 bra $L13; or.b16 %r418,%r416,8192; st.u16 [%r409+16],%r418; ld.u32 %r421,[%r409+172]; or.b32 %r420,%r421,8192; st.u32 [%r409+172],%r420; $L13: .loc 1 560 15 add.u64 %r185,%r410,4; .loc 1 560 9 ld.u32 %r156,[%r410]; .loc 1 561 10 setp.eq.u32 %r422,%r156,0; @ %r422 bra $L215; mov.u64 %r54,0; mov.u32 %r402,0; mov.u32 %r52,%r402; mov.u32 %r407,%r402; mov.u64 %r30,%r54; .loc 1 1611 8 add.u64 %r1111,%frame,1316; .loc 1 1613 17 add.u64 %r1112,%frame,1312; .loc 1 1115 8 add.u64 %r1113,%frame,1400; bra $L15; $L216: mov.u64 %r164,%r185; bra $L18; $L217: mov.u64 %r164,%r185; bra $L18; $L225: .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L226: mov.u64 %r164,%r185; bra $L18; $L228: mov.u64 %r164,%r185; bra $L18; $L231: mov.u32 %r52,%r232; mov.u64 %r164,%r185; bra $L18; $L232: mov.u32 %r52,%r232; mov.u64 %r164,%r185; bra $L18; $L234: mov.u64 %r164,%r185; bra $L18; $L247: mov.u64 %r164,%r185; $L18: .loc 1 560 15 add.u64 %r185,%r164,4; .loc 1 560 9 ld.u32 %r156,[%r164]; .loc 1 561 10 setp.eq.u32 %r423,%r156,0; @ %r423 bra $L12; $L15: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r156; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r425,[%value_in]; } mov.u32 %r32,%r425; .loc 1 563 10 setp.eq.u32 %r426,%r32,0; @ %r426 bra $L16; $L19: .loc 1 329 9 ld.u32 %r241,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r427,%r241,0; @ %r427 bra $L17; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r430,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r431,%r430,0; @ %r431 bra $L216; .loc 1 333 10 ld.u32 %r241,[%r409+8]; $L17: .loc 1 331 23 ld.u64 %r243,[%r409]; .loc 1 331 6 ld.u32 %r244,[%r243]; .loc 1 332 10 add.u64 %r432,%r243,4; st.u64 [%r409],%r432; .loc 1 333 10 add.u32 %r433,%r241,-4; st.u32 [%r409+8],%r433; .loc 1 565 14 mov.u32 %r240,%r244; .loc 1 565 46 setp.eq.u32 %r435,%r240,-1; @ %r435 bra $L217; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r240; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r437,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r438,%r437,0; @ %r438 bra $L19; bra $L439; $L16: .loc 1 571 10 setp.ne.u32 %r439,%r156,37; @ %r439 bra $L21; .loc 1 586 11 ld.u32 %r363,[%r185]; .loc 1 574 13 mov.u32 %r34,%r32; .loc 1 586 11 mov.u64 %r29,%r185; .loc 1 573 13 mov.u64 %r158,0; bra $L22; $L440: .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 606 10 mov.u32 %r34,16; .loc 1 612 8 mov.u64 %r158,0; $L22: .loc 1 586 15 add.u64 %r185,%r29,4; .loc 1 588 7 setp.eq.u32 %r440,%r363,104; @ %r440 bra $L23; setp.gt.s32 %r441,%r363,104; @ %r441 bra $L24; setp.eq.u32 %r442,%r363,76; @ %r442 bra $L25; setp.gt.s32 %r443,%r363,76; @ %r443 bra $L26; setp.eq.u32 %r444,%r363,42; @ %r444 bra $L27; setp.gt.s32 %r445,%r363,42; @ %r445 bra $L28; setp.eq.u32 %r446,%r363,37; @ %r446 bra $L21; bra $L12; $L28: setp.gt.s32 %r447,%r363,57; @ %r447 bra $L29; setp.gt.s32 %r448,%r363,47; @ %r448 bra $L30; bra $L12; $L29: and.b32 %r449,%r363,-3; setp.eq.u32 %r450,%r449,69; @ ! %r450 bra $L12; bra $L218; $L26: setp.eq.u32 %r451,%r363,99; @ %r451 bra $L32; setp.gt.s32 %r452,%r363,99; @ %r452 bra $L33; setp.eq.u32 %r453,%r363,88; @ %r453 bra $L34; setp.eq.u32 %r454,%r363,91; @ %r454 bra $L35; bra $L12; $L33: setp.ne.u32 %r455,%r363,100; @ %r455 bra $L219; .loc 1 725 9 mov.u64 %r54,_wcstol_r; .loc 1 726 9 mov.u32 %r402,10; .loc 1 724 6 mov.u32 %r401,3; bra $L60; $L24: .loc 1 588 7 setp.eq.u32 %r456,%r363,111; @ %r456 bra $L220; setp.gt.s32 %r457,%r363,111; @ %r457 bra $L37; setp.eq.u32 %r458,%r363,108; @ %r458 bra $L38; setp.eq.u32 %r459,%r363,110; @ %r459 bra $L39; setp.eq.u32 %r460,%r363,105; @ %r460 bra $L221; bra $L12; $L37: setp.eq.u32 %r461,%r363,115; @ %r461 bra $L222; setp.gt.s32 %r462,%r363,115; @ %r462 bra $L40; setp.eq.u32 %r463,%r363,112; @ %r463 bra $L41; bra $L12; $L40: setp.eq.u32 %r464,%r363,117; @ %r464 bra $L223; setp.eq.u32 %r465,%r363,120; @ %r465 bra $L34; bra $L12; $L21: .loc 1 329 9 ld.u32 %r250,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r466,%r250,0; @ %r466 bra $L42; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r469,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r470,%r469,0; @ %r470 bra $L45; .loc 1 333 10 ld.u32 %r250,[%r409+8]; $L42: .loc 1 331 23 ld.u64 %r252,[%r409]; .loc 1 331 6 ld.u32 %r253,[%r252]; .loc 1 332 10 add.u64 %r471,%r252,4; st.u64 [%r409],%r471; .loc 1 333 10 add.u32 %r472,%r250,-4; st.u32 [%r409+8],%r472; .loc 1 592 12 mov.u32 %r239,%r253; .loc 1 592 7 setp.eq.u32 %r474,%r239,-1; @ %r474 bra $L45; .loc 1 594 7 setp.eq.u32 %r475,%r156,%r239; @ %r475 bra $L44; .loc 1 596 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r239; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 597 8 bra $L45; $L44: .loc 1 599 9 add.u32 %r52,%r52,1; .loc 1 600 4 mov.u64 %r164,%r185; bra $L18; $L27: .loc 1 603 7 set.u32.ne.u32 %r480,%r34,0; neg.s32 %r481,%r480; mov.u32 %r479,%r481; .loc 1 604 8 set.u32.ne.u64 %r483,%r158,0; neg.s32 %r484,%r483; mov.u32 %r482,%r484; cvt.u16.u8 %r1114,%r479; mov.u16 %r486,%r1114; cvt.u16.u8 %r1114,%r482; mov.u16 %r487,%r1114; or.b16 %r485,%r486,%r487; cvt.u32.u16 %r488,%r485; cvt.u16.u8 %r489,%r488; setp.ne.u16 %r490,%r489,0; @ ! %r490 bra $L440; bra $L12; $L38: .loc 1 609 14 and.b32 %r491,%r34,15; .loc 1 609 7 setp.ne.u32 %r492,%r491,0; @ %r492 bra $L12; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 612 7 setp.ne.u32 %r493,%r363,108; @ %r493 bra $L47; .loc 1 615 14 or.b32 %r34,%r34,2; .loc 1 789 8 ld.u32 %r363,[%r29+8]; .loc 1 614 8 add.u64 %r29,%r29,8; bra $L22; $L47: .loc 1 619 12 or.b32 %r34,%r34,1; .loc 1 586 15 mov.u64 %r29,%r185; bra $L22; $L25: .loc 1 622 14 and.b32 %r494,%r34,15; .loc 1 622 7 setp.ne.u32 %r495,%r494,0; @ %r495 bra $L12; .loc 1 624 10 or.b32 %r34,%r34,2; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 625 4 bra $L22; $L23: .loc 1 637 12 or.b32 %r34,%r34,4; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 638 4 bra $L22; $L30: .loc 1 703 14 and.b32 %r496,%r34,143; .loc 1 703 7 setp.ne.u32 %r497,%r496,0; @ %r497 bra $L12; .loc 1 705 18 shl.b64 %r499,%r158,2; add.u64 %r500,%r499,%r158; add.u64 %r501,%r500,%r500; add.u64 %r180,%r501,-48; .loc 1 705 23 cvt.s64.s32 %r502,%r363; .loc 1 705 10 add.u64 %r158,%r502,%r180; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 706 4 bra $L22; $L34: .loc 1 749 10 or.b32 %r34,%r34,512; .loc 1 751 9 mov.u64 %r54,_wcstoul_r; .loc 1 752 9 mov.u32 %r32,16; .loc 1 753 4 bra $L36; $L35: .loc 1 781 8 ld.u32 %r40,[%r29+4]; .loc 1 781 7 setp.ne.u32 %r503,%r40,94; @ %r503 bra $L49; .loc 1 784 8 add.u64 %r185,%r29,8; .loc 1 789 8 ld.u32 %r40,[%r29+8]; .loc 1 783 17 mov.u32 %r32,1; $L49: .loc 1 789 7 setp.ne.u32 %r504,%r40,93; @ %r504 bra $L224; .loc 1 790 9 add.u64 %r191,%r185,4; .loc 1 791 11 ld.u32 %r40,[%r185+4]; bra $L50; $L224: mov.u64 %r191,%r185; $L50: .loc 1 791 24 set.u32.ne.u32 %r506,%r40,0; neg.s32 %r507,%r506; mov.u32 %r505,%r507; set.u32.ne.u32 %r509,%r40,93; neg.s32 %r510,%r509; mov.u32 %r508,%r510; cvt.u16.u8 %r1114,%r505; mov.u16 %r512,%r1114; cvt.u16.u8 %r1114,%r508; mov.u16 %r513,%r1114; and.b16 %r511,%r512,%r513; cvt.u32.u16 %r514,%r511; cvt.u16.u8 %r515,%r514; setp.eq.u16 %r516,%r515,0; @ %r516 bra $L51; $L52: .loc 1 792 9 add.u64 %r191,%r191,4; .loc 1 791 11 ld.u32 %r189,[%r191]; .loc 1 791 24 set.u32.ne.u32 %r518,%r189,0; neg.s32 %r519,%r518; mov.u32 %r517,%r519; set.u32.ne.u32 %r521,%r189,93; neg.s32 %r522,%r521; mov.u32 %r520,%r522; cvt.u16.u8 %r1114,%r517; mov.u16 %r524,%r1114; cvt.u16.u8 %r1114,%r520; mov.u16 %r525,%r1114; and.b16 %r523,%r524,%r525; cvt.u32.u16 %r526,%r523; cvt.u16.u8 %r527,%r526; setp.ne.u16 %r528,%r527,0; @ %r528 bra $L52; $L51: .loc 1 794 7 add.u64 %r164,%r191,4; .loc 1 965 7 setp.eq.u64 %r529,%r158,0; .loc 1 966 12 selp.u64 %r158,-1,%r158,%r529; .loc 1 991 27 sub.u64 %r599,%r191,%r185; shr.s64 %r359,%r599,2; .loc 1 968 27 and.b32 %r601,%r34,17; .loc 1 968 7 setp.eq.u32 %r602,%r601,17; @ ! %r602 bra $L441; bra $L229; $L32: max.u64 %r159,%r158,1; and.b32 %r236,%r34,1; and.b32 %r389,%r34,16; .loc 1 879 14 setp.ne.u32 %r530,%r236,0; @ %r530 bra $L55; bra $L442; $L41: .loc 1 811 10 or.b32 %r34,%r34,544; .loc 1 813 9 mov.u64 %r54,_wcstoul_r; .loc 1 814 9 mov.u32 %r32,16; .loc 1 815 4 bra $L36; $L39: .loc 1 818 14 and.b32 %r531,%r34,16; .loc 1 818 7 setp.ne.u32 %r532,%r531,0; @ %r532 bra $L225; .loc 1 830 11 add.u64 %r533,%r411,7; and.b64 %r361,%r533,-8; ld.u64 %r362,[%r361]; add.u64 %r411,%r361,8; .loc 1 828 14 and.b32 %r534,%r34,4; .loc 1 828 7 setp.eq.u32 %r535,%r534,0; @ %r535 bra $L57; .loc 1 831 12 st.u16 [%r362],%r52; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L57: .loc 1 833 19 and.b32 %r536,%r34,1; .loc 1 833 12 setp.eq.u32 %r537,%r536,0; @ %r537 bra $L58; .loc 1 836 12 cvt.s64.s32 %r538,%r52; st.u64 [%r362],%r538; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L58: .loc 1 839 19 and.b32 %r539,%r34,2; .loc 1 839 12 setp.eq.u32 %r540,%r539,0; @ %r540 bra $L59; .loc 1 842 13 cvt.s64.s32 %r541,%r52; st.u64 [%r362],%r541; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L59: .loc 1 848 12 st.u32 [%r362],%r52; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L218: .loc 1 588 7 mov.u32 %r401,4; bra $L60; $L219: mov.u32 %r401,4; bra $L60; $L222: .loc 1 777 6 mov.u32 %r401,2; bra $L60; $L62: .loc 1 863 11 add.u32 %r52,%r52,1; $L60: .loc 1 329 9 ld.u32 %r259,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r542,%r259,0; @ %r542 bra $L61; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r545,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r546,%r545,0; @ %r546 bra $L45; .loc 1 333 10 ld.u32 %r259,[%r409+8]; $L61: .loc 1 331 23 ld.u64 %r261,[%r409]; .loc 1 331 6 ld.u32 %r262,[%r261]; .loc 1 332 10 add.u64 %r547,%r261,4; st.u64 [%r409],%r547; .loc 1 333 10 add.u32 %r548,%r259,-4; st.u32 [%r409+8],%r548; .loc 1 862 15 mov.u32 %r192,%r262; .loc 1 862 47 setp.eq.u32 %r550,%r192,-1; @ %r550 bra $L45; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r192; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r552,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r553,%r552,0; @ %r553 bra $L62; bra $L443; $L55: .loc 1 887 11 setp.ne.u32 %r1102,%r389,0; @ %r1102 bra $L64; .loc 1 894 5 add.u64 %r384,%r411,7; and.b64 %r385,%r384,-8; add.u64 %r411,%r385,8; ld.u64 %r30,[%r385]; $L64: .loc 1 904 11 mov.u64 %r368,0; bra $L65; $L70: .loc 1 898 8 @ %r1102 bra $L66; .loc 1 904 14 st.u32 [%r30],%r271; .loc 1 904 11 add.u64 %r30,%r30,4; $L66: add.u32 %r179,%r366,1; .loc 1 896 28 add.u64 %r368,%r368,1; setp.eq.u64 %r556,%r159,%r368; @ %r556 bra $L67; $L65: cvt.u32.u64 %r366,%r368; mov.u32 %r179,%r366; .loc 1 329 9 ld.u32 %r268,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r557,%r268,0; @ %r557 bra $L68; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r560,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r561,%r560,0; @ %r561 bra $L69; $L71: .loc 1 908 11 setp.eq.u32 %r562,%r366,0; @ ! %r562 bra $L67; bra $L45; $L69: .loc 1 333 10 ld.u32 %r268,[%r409+8]; $L68: .loc 1 331 23 ld.u64 %r270,[%r409]; .loc 1 331 6 ld.u32 %r271,[%r270]; .loc 1 332 10 add.u64 %r563,%r270,4; st.u64 [%r409],%r563; .loc 1 333 10 add.u32 %r564,%r268,-4; st.u32 [%r409+8],%r564; .loc 1 896 28 setp.ne.u32 %r567,%r271,-1; @ %r567 bra $L70; bra $L71; $L67: .loc 1 910 14 add.u32 %r52,%r52,%r179; .loc 1 914 11 @ %r1102 bra $L226; .loc 1 915 12 add.u32 %r407,%r407,1; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L442: .loc 1 925 11 setp.ne.u32 %r1102,%r389,0; @ %r1102 bra $L227; .loc 1 932 7 add.u64 %r386,%r411,7; and.b64 %r399,%r386,-8; add.u64 %r411,%r399,8; ld.u64 %r165,[%r399]; bra $L72; $L227: .loc 1 926 7 add.u64 %r165,%frame,1408; $L72: .loc 1 934 8 mov.u64 %r572,8; mov.u32 %r571,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r571; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r574,[%value_in]; } bra $L73; $L80: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r165; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r280; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r1113; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r580,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r581,%r580,-1; @ %r581 bra $L45; .loc 1 941 8 setp.ne.u64 %r582,%r580,0; @ %r582 bra $L74; .loc 1 941 20 ld.u32 %r583,[%frame+1400]; setp.eq.u32 %r584,%r583,-4; @ %r584 bra $L75; $L74: .loc 1 942 12 add.u64 %r159,%r159,-1; $L75: .loc 1 943 8 @ %r1102 bra $L76; .loc 1 948 13 add.u64 %r165,%r165,%r580; $L76: .loc 1 950 6 add.u32 %r236,%r236,1; .loc 1 935 26 setp.eq.u64 %r586,%r159,0; @ %r586 bra $L77; $L73: .loc 1 329 9 ld.u32 %r277,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r587,%r277,0; @ %r587 bra $L78; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r590,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r591,%r590,0; @ %r591 bra $L79; $L81: .loc 1 952 11 setp.eq.u32 %r592,%r236,0; @ ! %r592 bra $L77; bra $L45; $L79: .loc 1 333 10 ld.u32 %r277,[%r409+8]; $L78: .loc 1 331 23 ld.u64 %r279,[%r409]; .loc 1 331 6 ld.u32 %r280,[%r279]; .loc 1 332 10 add.u64 %r593,%r279,4; st.u64 [%r409],%r593; .loc 1 333 10 add.u32 %r594,%r277,-4; st.u32 [%r409+8],%r594; .loc 1 935 26 setp.ne.u32 %r597,%r280,-1; @ %r597 bra $L80; bra $L81; $L77: .loc 1 954 14 add.u32 %r52,%r52,%r236; .loc 1 958 11 @ %r1102 bra $L228; .loc 1 959 12 add.u32 %r407,%r407,1; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L88: add.u64 %r365,%r365,1; bra $L82; $L229: mov.u64 %r365,0; .loc 1 972 24 setp.eq.u32 %r1108,%r32,0; $L82: cvt.u32.u64 %r161,%r365; .loc 1 329 9 ld.u32 %r286,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r603,%r286,0; @ %r603 bra $L84; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r606,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r607,%r606,0; @ %r607 bra $L207; .loc 1 333 10 ld.u32 %r286,[%r409+8]; $L84: .loc 1 331 23 ld.u64 %r288,[%r409]; .loc 1 331 6 ld.u32 %r289,[%r288]; .loc 1 332 10 add.u64 %r608,%r288,4; st.u64 [%r409],%r608; .loc 1 333 10 add.u32 %r609,%r286,-4; st.u32 [%r409+8],%r609; .loc 1 971 19 mov.u32 %r231,%r289; .loc 1 972 24 setp.eq.u32 %r611,%r231,-1; @ %r611 bra $L207; .loc 1 972 8 setp.eq.u64 %r612,%r158,%r365; @ %r612 bra $L86; .loc 1 972 24 @ %r1108 bra $L87; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r617,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r618,%r617,0; @ %r618 bra $L88; bra $L86; $L87: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r622,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r623,%r622,0; @ %r623 bra $L88; bra $L86; $L207: .loc 1 976 11 setp.eq.u32 %r624,%r161,0; @ ! %r624 bra $L89; bra $L12; $L441: and.b32 %r161,%r34,1; .loc 1 979 12 setp.eq.u32 %r625,%r161,0; @ %r625 bra $L90; .loc 1 989 10 add.u64 %r388,%r411,7; and.b64 %r387,%r388,-8; add.u64 %r411,%r387,8; ld.u64 %r229,[%r387]; mov.u64 %r364,%r229; .loc 1 991 24 setp.eq.u32 %r1109,%r32,0; .loc 1 990 14 bra $L91; $L96: .loc 1 993 10 st.u32 [%r364],%r298; add.u64 %r158,%r158,-1; add.u64 %r364,%r364,4; $L91: mov.u64 %r30,%r364; .loc 1 329 9 ld.u32 %r295,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r626,%r295,0; @ %r626 bra $L92; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r629,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r630,%r629,0; @ %r630 bra $L208; .loc 1 333 10 ld.u32 %r295,[%r409+8]; $L92: .loc 1 331 23 ld.u64 %r297,[%r409]; .loc 1 331 6 ld.u32 %r298,[%r297]; .loc 1 332 10 add.u64 %r631,%r297,4; st.u64 [%r409],%r631; .loc 1 333 10 add.u32 %r632,%r295,-4; st.u32 [%r409+8],%r632; .loc 1 990 19 mov.u32 %r230,%r298; .loc 1 991 24 setp.eq.u32 %r634,%r230,-1; @ %r634 bra $L208; .loc 1 991 8 setp.eq.u64 %r635,%r158,0; @ %r635 bra $L94; .loc 1 991 24 @ %r1109 bra $L95; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r298; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r640,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r641,%r640,0; @ %r641 bra $L96; bra $L94; $L95: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r298; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r645,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r646,%r645,0; @ %r646 bra $L96; bra $L94; $L208: .loc 1 1000 14 sub.u64 %r647,%r364,%r229; shr.s64 %r649,%r647,2; .loc 1 1000 10 cvt.u32.u64 %r161,%r649; .loc 1 1001 11 setp.eq.u32 %r650,%r161,0; @ %r650 bra $L12; .loc 1 1003 11 mov.u32 %r651,0; st.u32 [%r364],%r651; .loc 1 1007 17 add.u32 %r407,%r407,1; bra $L89; $L90: and.b32 %r76,%r34,16; .loc 1 1017 11 setp.ne.u32 %r1107,%r76,0; @ %r1107 bra $L230; .loc 1 1024 7 add.u64 %r391,%r411,7; and.b64 %r390,%r391,-8; add.u64 %r411,%r390,8; ld.u64 %r166,[%r390]; bra $L97; $L230: .loc 1 1018 7 add.u64 %r166,%frame,1408; $L97: .loc 1 1026 8 mov.u64 %r655,8; mov.u32 %r654,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r654; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r655; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r657,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r1110,%r32,0; .loc 1 1027 14 bra $L98; $L106: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r166; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r307; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r1113; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r663,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r664,%r663,-1; @ %r664 bra $L45; .loc 1 1034 8 setp.ne.u64 %r665,%r663,0; @ %r665 bra $L99; .loc 1 1034 20 ld.u32 %r666,[%frame+1400]; setp.eq.u32 %r667,%r666,-4; @ %r667 bra $L100; $L99: .loc 1 1035 12 add.u64 %r158,%r158,-1; $L100: .loc 1 1036 8 @ %r1107 bra $L101; .loc 1 1038 13 add.u64 %r166,%r166,%r663; $L101: .loc 1 1043 6 add.u32 %r161,%r161,1; $L98: .loc 1 329 9 ld.u32 %r304,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r669,%r304,0; @ %r669 bra $L102; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r672,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r673,%r672,0; @ %r673 bra $L209; .loc 1 333 10 ld.u32 %r304,[%r409+8]; $L102: .loc 1 331 23 ld.u64 %r306,[%r409]; .loc 1 331 6 ld.u32 %r307,[%r306]; .loc 1 332 10 add.u64 %r674,%r306,4; st.u64 [%r409],%r674; .loc 1 333 10 add.u32 %r675,%r304,-4; st.u32 [%r409+8],%r675; .loc 1 1027 19 mov.u32 %r226,%r307; .loc 1 1028 22 setp.eq.u32 %r677,%r226,-1; @ %r677 bra $L209; .loc 1 1028 8 setp.eq.u64 %r678,%r158,0; @ %r678 bra $L104; .loc 1 1028 22 @ %r1110 bra $L105; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r307; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r683,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r684,%r683,0; @ %r684 bra $L106; bra $L104; $L105: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r307; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r688,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r689,%r688,0; @ %r689 bra $L106; bra $L104; $L209: .loc 1 1047 11 @ %r1107 bra $L89; .loc 1 1049 10 mov.u32 %r691,0; st.u8 [%r166],%r691; .loc 1 1053 14 add.u32 %r407,%r407,1; $L89: .loc 1 1056 10 add.u32 %r52,%r52,%r161; .loc 1 1057 4 bra $L18; $L212: .loc 1 1061 7 setp.ne.u64 %r692,%r158,0; .loc 1 1062 19 selp.u64 %r158,%r158,-1,%r692; .loc 1 1063 27 and.b32 %r693,%r34,17; .loc 1 1063 7 setp.ne.u32 %r694,%r693,17; @ %r694 bra $L108; mov.u64 %r360,%r158; cvt.u32.u64 %r1104,%r360; $L111: cvt.u32.u64 %r697,%r360; vsub.u32.u32.u32.add %r232,%r52,%r697,%r1104; .loc 1 329 9 ld.u32 %r313,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r698,%r313,0; @ %r698 bra $L109; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r701,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r702,%r701,0; @ %r702 bra $L231; .loc 1 333 10 ld.u32 %r313,[%r409+8]; $L109: .loc 1 331 23 ld.u64 %r315,[%r409]; .loc 1 331 6 ld.u32 %r316,[%r315]; .loc 1 332 10 add.u64 %r703,%r315,4; st.u64 [%r409],%r703; .loc 1 333 10 add.u32 %r704,%r313,-4; st.u32 [%r409+8],%r704; .loc 1 1065 19 mov.u32 %r224,%r316; .loc 1 1066 24 setp.eq.u32 %r706,%r224,-1; @ %r706 bra $L232; .loc 1 1066 8 setp.eq.u64 %r707,%r360,0; @ %r707 bra $L110; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r224; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r709,[%value_in]; } .loc 1 1066 24 add.u64 %r360,%r360,-1; setp.eq.u32 %r710,%r709,0; @ %r710 bra $L111; bra $L110; $L108: .loc 1 1071 19 and.b32 %r711,%r34,1; .loc 1 1071 12 setp.eq.u32 %r712,%r711,0; @ %r712 bra $L112; .loc 1 1081 10 add.u64 %r393,%r411,7; and.b64 %r392,%r393,-8; add.u64 %r411,%r392,8; ld.u64 %r225,[%r392]; .loc 1 1082 14 mov.u64 %r228,%r158; cvt.u32.u64 %r1104,%r228; bra $L113; $L117: .loc 1 1085 10 st.u32 [%r225],%r325; add.u64 %r225,%r225,4; $L113: cvt.u32.u64 %r715,%r228; vsub.u32.u32.u32.add %r205,%r52,%r715,%r1104; mov.u64 %r30,%r225; .loc 1 329 9 ld.u32 %r322,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r716,%r322,0; @ %r716 bra $L114; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r719,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r720,%r719,0; @ %r720 bra $L210; .loc 1 333 10 ld.u32 %r322,[%r409+8]; $L114: .loc 1 331 23 ld.u64 %r324,[%r409]; .loc 1 331 6 ld.u32 %r325,[%r324]; .loc 1 332 10 add.u64 %r721,%r324,4; st.u64 [%r409],%r721; .loc 1 333 10 add.u32 %r722,%r322,-4; st.u32 [%r409+8],%r722; .loc 1 1082 19 mov.u32 %r223,%r325; .loc 1 1083 24 setp.eq.u32 %r724,%r223,-1; @ %r724 bra $L210; .loc 1 1083 8 setp.eq.u64 %r725,%r228,0; @ %r725 bra $L116; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r223; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r727,[%value_in]; } .loc 1 1083 24 add.u64 %r228,%r228,-1; setp.eq.u32 %r728,%r727,0; @ %r728 bra $L117; bra $L116; $L210: .loc 1 1093 11 mov.u32 %r729,0; st.u32 [%r225],%r729; .loc 1 1097 17 add.u32 %r407,%r407,1; mov.u32 %r52,%r205; mov.u64 %r164,%r185; bra $L18; $L112: .loc 1 1107 18 and.b32 %r73,%r34,16; .loc 1 1107 11 setp.ne.u32 %r1106,%r73,0; @ %r1106 bra $L233; .loc 1 1114 7 add.u64 %r395,%r411,7; and.b64 %r394,%r395,-8; add.u64 %r411,%r394,8; ld.u64 %r167,[%r394]; bra $L118; $L233: .loc 1 1108 7 add.u64 %r167,%frame,1408; $L118: .loc 1 1115 8 mov.u64 %r733,8; mov.u32 %r732,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r732; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r733; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r735,[%value_in]; } .loc 1 1116 14 bra $L119; $L126: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r167; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r335; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1113; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r740,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r741,%r740,-1; @ %r741 bra $L45; .loc 1 1123 8 setp.ne.u64 %r742,%r740,0; @ %r742 bra $L120; .loc 1 1123 20 ld.u32 %r743,[%frame+1400]; setp.eq.u32 %r744,%r743,-4; @ %r744 bra $L121; $L120: .loc 1 1124 12 add.u64 %r158,%r158,-1; $L121: .loc 1 1125 8 @ %r1106 bra $L122; .loc 1 1127 13 add.u64 %r167,%r167,%r740; $L122: .loc 1 1132 10 add.u32 %r52,%r52,1; $L119: .loc 1 329 9 ld.u32 %r332,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r746,%r332,0; @ %r746 bra $L123; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r749,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r750,%r749,0; @ %r750 bra $L211; .loc 1 333 10 ld.u32 %r332,[%r409+8]; $L123: .loc 1 331 23 ld.u64 %r334,[%r409]; .loc 1 331 6 ld.u32 %r335,[%r334]; .loc 1 332 10 add.u64 %r751,%r334,4; st.u64 [%r409],%r751; .loc 1 333 10 add.u32 %r752,%r332,-4; st.u32 [%r409+8],%r752; .loc 1 1116 19 mov.u32 %r220,%r335; .loc 1 1117 22 setp.eq.u32 %r754,%r220,-1; @ %r754 bra $L211; .loc 1 1117 8 setp.eq.u64 %r755,%r158,0; @ %r755 bra $L125; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r220; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r757,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r758,%r757,0; @ %r758 bra $L126; bra $L125; $L211: .loc 1 1136 11 @ %r1106 bra $L234; .loc 1 1138 10 mov.u32 %r760,0; st.u8 [%r167],%r760; .loc 1 1142 14 add.u32 %r407,%r407,1; mov.u64 %r164,%r185; bra $L18; $L213: .loc 1 1150 19 add.u64 %r761,%r158,-1; .loc 1 1150 7 setp.le.u64 %r762,%r761,348; .loc 1 1151 12 selp.u64 %r158,%r158,349,%r762; .loc 1 1152 10 or.b32 %r162,%r34,1408; .loc 1 329 9 ld.u32 %r347,[%r409+8]; mov.u64 %r202,%frame; shl.b64 %r763,%r158,2; add.u64 %r194,%r763,%frame; $L145: mov.u64 %r30,%r202; .loc 1 329 6 setp.gt.s32 %r764,%r347,0; @ %r764 bra $L128; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r767,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r768,%r767,0; @ %r768 bra $L129; .loc 1 333 10 ld.u32 %r347,[%r409+8]; $L128: .loc 1 331 23 ld.u64 %r342,[%r409]; .loc 1 331 6 ld.u32 %r343,[%r342]; .loc 1 332 10 add.u64 %r769,%r342,4; st.u64 [%r409],%r769; .loc 1 333 10 add.u32 %r347,%r347,-4; st.u32 [%r409+8],%r347; .loc 1 1155 10 mov.u32 %r204,%r343; setp.gt.u32 %r771,%r204,57; @ %r771 bra $L130; setp.gt.u32 %r772,%r204,55; @ %r772 bra $L131; setp.eq.u32 %r773,%r204,48; @ %r773 bra $L132; setp.gt.u32 %r774,%r204,48; @ %r774 bra $L133; add.u32 %r775,%r204,-43; and.b32 %r776,%r775,-3; setp.eq.u32 %r777,%r776,0; @ ! %r777 bra $L135; bra $L134; $L133: .loc 1 1191 19 cvta.const.u64 %r778,basefix$0; cvt.s64.s32 %r779,%r402; add.u64 %r780,%r779,%r779; add.u64 %r781,%r778,%r780; ld.s16 %r402,[%r781]; .loc 1 1192 11 and.b32 %r162,%r162,-897; .loc 1 1193 5 bra $L136; $L130: setp.gt.u32 %r782,%r204,102; @ %r782 bra $L137; setp.gt.u32 %r783,%r204,96; @ %r783 bra $L138; setp.gt.u32 %r784,%r204,70; @ %r784 bra $L139; setp.gt.u32 %r785,%r204,64; @ ! %r785 bra $L135; bra $L138; $L139: setp.eq.u32 %r786,%r204,88; @ %r786 bra $L140; bra $L135; $L137: setp.eq.u32 %r787,%r204,120; @ %r787 bra $L140; bra $L444; $L132: .loc 1 1172 8 setp.ne.u32 %r788,%r402,0; @ %r788 bra $L142; .loc 1 1175 15 or.b32 %r162,%r162,512; .loc 1 1174 14 mov.u32 %r402,8; $L142: .loc 1 1177 15 and.b32 %r789,%r162,1024; .loc 1 1177 8 setp.eq.u32 %r790,%r789,0; @ %r790 bra $L143; .loc 1 1178 13 and.b32 %r162,%r162,-1409; bra $L136; $L143: .loc 1 1180 13 and.b32 %r162,%r162,-897; bra $L136; $L131: .loc 1 1198 19 cvta.const.u64 %r791,basefix$0; cvt.s64.s32 %r792,%r402; add.u64 %r793,%r792,%r792; add.u64 %r794,%r791,%r793; ld.s16 %r402,[%r794]; .loc 1 1199 8 setp.le.s32 %r795,%r402,8; @ %r795 bra $L135; .loc 1 1201 11 and.b32 %r162,%r162,-897; .loc 1 1202 5 bra $L136; $L138: .loc 1 1218 8 setp.le.s32 %r796,%r402,10; @ %r796 bra $L135; .loc 1 1220 11 and.b32 %r162,%r162,-897; .loc 1 1221 5 bra $L136; $L134: .loc 1 1226 15 and.b32 %r797,%r162,128; .loc 1 1226 8 setp.eq.u32 %r798,%r797,0; @ %r798 bra $L135; .loc 1 1228 15 and.b32 %r206,%r162,-129; .loc 1 1229 15 or.b32 %r162,%r206,65536; .loc 1 1230 9 bra $L136; $L140: .loc 1 1237 16 and.b32 %r799,%r162,512; .loc 1 1237 8 setp.eq.u32 %r800,%r799,0; @ %r800 bra $L135; .loc 1 1237 52 and.b32 %r801,%r162,65536; .loc 1 1237 41 setp.ne.u32 %r802,%r801,0; selp.u64 %r176,8,4,%r802; add.u64 %r803,%frame,%r176; .loc 1 1237 25 setp.ne.u64 %r804,%r202,%r803; @ %r804 bra $L135; .loc 1 1240 15 and.b32 %r162,%r162,-513; .loc 1 1239 14 mov.u32 %r402,16; .loc 1 1241 9 bra $L136; $L444: .loc 1 1250 11 setp.eq.u32 %r805,%r204,-1; @ %r805 bra $L129; $L135: .loc 1 1251 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r204; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L129; $L136: add.u64 %r202,%r202,4; .loc 1 1257 13 st.u32 [%r30],%r343; .loc 1 1153 18 setp.ne.u64 %r809,%r194,%r202; @ %r809 bra $L145; .loc 1 1257 10 mov.u64 %r30,%r194; $L129: .loc 1 1267 14 and.b32 %r810,%r162,256; .loc 1 1267 7 setp.eq.u32 %r811,%r810,0; @ %r811 bra $L146; .loc 1 1269 11 setp.ge.u64 %r812,%frame,%r30; @ %r812 bra $L12; .loc 1 1270 3 ld.u32 %r816,[%r30+-4]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r816; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L12; $L146: .loc 1 1273 9 ld.u32 %r88,[%r30+-4]; .loc 1 1274 23 and.b32 %r817,%r88,-33; .loc 1 1274 7 setp.ne.u32 %r818,%r817,88; @ %r818 bra $L147; .loc 1 1276 8 add.u64 %r30,%r30,-4; .loc 1 1277 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r88; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } $L147: .loc 1 1279 15 and.b32 %r822,%r162,16; .loc 1 1279 7 setp.ne.u32 %r823,%r822,0; @ %r823 bra $L148; .loc 1 1283 11 st.u32 [%r30],%r822; .loc 1 1284 15 mov.u64 %r827,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r827; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r402; call (%value_in),%r54,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r829,[%value_in]; } .loc 1 830 11 add.u64 %r830,%r411,7; and.b64 %r374,%r830,-8; add.u64 %r411,%r374,8; .loc 1 1285 18 and.b32 %r831,%r162,32; .loc 1 1285 11 setp.eq.u32 %r832,%r831,0; @ %r832 bra $L149; .loc 1 1287 12 ld.u64 %r218,[%r374]; .loc 1 1297 11 st.u64 [%r218],%r829; bra $L150; $L149: .loc 1 1306 23 and.b32 %r833,%r162,4; .loc 1 1306 16 setp.eq.u32 %r834,%r833,0; @ %r834 bra $L151; .loc 1 1309 9 ld.u64 %r835,[%r374]; st.u16 [%r835],%r829; bra $L150; $L151: .loc 1 1311 23 and.b32 %r836,%r162,1; .loc 1 1311 16 setp.eq.u32 %r837,%r836,0; @ %r837 bra $L152; .loc 1 1314 9 ld.u64 %r838,[%r374]; st.u64 [%r838],%r829; bra $L150; $L152: .loc 1 1317 23 and.b32 %r839,%r162,2; .loc 1 1317 16 setp.eq.u32 %r840,%r839,0; @ %r840 bra $L153; .loc 1 1320 8 mov.u64 %r841,_wcstoul_r; setp.ne.u64 %r842,%r54,%r841; @ %r842 bra $L154; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r827; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r402; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r847,[%value_in]; } .loc 1 1325 10 mov.u64 %r97,%r847; bra $L155; $L154: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r827; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r402; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r852,[%value_in]; } mov.u64 %r97,%r852; $L155: .loc 1 1325 10 ld.u64 %r853,[%r374]; st.u64 [%r853],%r97; bra $L150; $L153: .loc 1 1331 9 ld.u64 %r854,[%r374]; st.u32 [%r854],%r829; $L150: .loc 1 1333 17 add.u32 %r407,%r407,1; $L148: .loc 1 1335 15 sub.u64 %r855,%r30,%frame; shr.s64 %r857,%r855,2; .loc 1 1335 10 cvt.u32.u64 %r858,%r857; add.u32 %r52,%r858,%r52; .loc 1 1336 4 mov.u64 %r164,%r185; bra $L18; $L451: .loc 1 1356 14 add.u64 %r859,%r158,-1; .loc 1 1356 7 setp.le.u64 %r860,%r859,348; @ %r860 bra $L236; .loc 1 1359 27 cvt.u32.u64 %r861,%r158; .loc 1 1359 19 add.u32 %r173,%r861,-349; .loc 1 1360 14 mov.u64 %r158,349; bra $L156; $L236: .loc 1 1349 13 mov.u32 %r173,%r552; $L156: .loc 1 1362 10 or.b32 %r163,%r34,1920; .loc 1 329 9 ld.u32 %r383,[%r409+8]; add.u32 %r371,%r52,1; .loc 1 1351 9 mov.u32 %r175,0; .loc 1 1350 9 mov.u32 %r174,%r175; .loc 1 1348 13 mov.u64 %r171,0; .loc 1 1364 15 mov.u64 %r170,%r171; .loc 1 1363 11 mov.u64 %r169,%r171; .loc 1 1346 9 mov.u64 %r168,%r171; .loc 1 1365 11 mov.u64 %r400,%frame; $L185: add.u32 %r52,%r371,-1; .loc 1 329 6 setp.gt.s32 %r862,%r383,0; @ %r862 bra $L157; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r865,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r866,%r865,0; @ %r866 bra $L237; .loc 1 333 10 ld.u32 %r383,[%r409+8]; $L157: .loc 1 331 23 ld.u64 %r350,[%r409]; .loc 1 331 6 ld.u32 %r351,[%r350]; .loc 1 332 10 add.u64 %r867,%r350,4; st.u64 [%r409],%r867; .loc 1 333 10 add.u32 %r383,%r383,-4; st.u32 [%r409+8],%r383; .loc 1 1367 10 mov.u32 %r193,%r351; setp.eq.u32 %r869,%r193,84; @ %r869 bra $L159; setp.gt.u32 %r870,%r193,84; @ %r870 bra $L160; setp.gt.u32 %r871,%r193,57; @ %r871 bra $L161; setp.gt.u32 %r872,%r193,48; @ %r872 bra $L162; setp.eq.u32 %r873,%r193,45; @ %r873 bra $L163; setp.eq.u32 %r874,%r193,48; @ %r874 bra $L164; setp.eq.u32 %r875,%r193,43; @ %r875 bra $L163; bra $L158; $L161: setp.eq.u32 %r876,%r193,70; @ %r876 bra $L165; setp.gt.u32 %r877,%r193,70; @ %r877 bra $L166; setp.eq.u32 %r878,%r193,65; @ %r878 bra $L167; setp.eq.u32 %r879,%r193,69; @ %r879 bra $L168; bra $L158; $L166: setp.eq.u32 %r880,%r193,78; @ %r880 bra $L169; bra $L158; $L160: setp.eq.u32 %r881,%r193,105; @ %r881 bra $L170; setp.gt.u32 %r882,%r193,105; @ %r882 bra $L171; setp.eq.u32 %r883,%r193,101; @ %r883 bra $L168; setp.gt.u32 %r884,%r193,101; @ %r884 bra $L172; setp.eq.u32 %r885,%r193,89; @ %r885 bra $L173; setp.eq.u32 %r886,%r193,97; @ %r886 bra $L167; bra $L158; $L172: setp.eq.u32 %r887,%r193,102; @ %r887 bra $L165; bra $L158; $L171: setp.eq.u32 %r888,%r193,116; @ %r888 bra $L159; setp.eq.u32 %r889,%r193,121; @ %r889 bra $L173; setp.eq.u32 %r890,%r193,110; @ %r890 bra $L169; bra $L158; $L164: .loc 1 1375 15 and.b32 %r891,%r163,256; .loc 1 1375 8 setp.eq.u32 %r892,%r891,0; @ %r892 bra $L162; .loc 1 1377 15 and.b32 %r163,%r163,-129; .loc 1 1378 15 add.u64 %r169,%r169,1; .loc 1 1379 12 setp.eq.u32 %r893,%r173,0; @ %r893 bra $L238; .loc 1 1381 16 add.u32 %r173,%r173,-1; bra $L175; $L162: .loc 1 1396 18 add.u32 %r894,%r174,%r175; .loc 1 1396 8 setp.ne.u32 %r895,%r894,0; @ ! %r895 bra $L445; setp.eq.u64 %r1101,%r169,0; bra $L176; $L445: .loc 1 1398 15 and.b32 %r163,%r163,-385; .loc 1 1399 9 bra $L177; $L163: .loc 1 1405 15 and.b32 %r896,%r163,128; .loc 1 1405 8 setp.eq.u32 %r897,%r896,0; @ ! %r897 bra $L446; setp.eq.u64 %r1101,%r169,0; bra $L176; $L446: .loc 1 1407 15 and.b32 %r163,%r163,-129; .loc 1 1408 9 bra $L177; $L169: .loc 1 1413 18 cvt.u16.u32 %r899,%r174; set.u32.eq.u16 %r900,%r899,0; neg.s32 %r901,%r900; mov.u32 %r898,%r901; .loc 1 1413 33 set.u32.eq.u64 %r903,%r169,0; neg.s32 %r904,%r903; mov.u32 %r902,%r904; .loc 1 1413 23 cvt.u16.u8 %r1114,%r898; mov.u16 %r906,%r1114; cvt.u16.u8 %r1114,%r902; mov.u16 %r907,%r1114; and.b16 %r905,%r906,%r907; cvt.u32.u16 %r908,%r905; .loc 1 1413 8 cvt.u16.u8 %r909,%r908; setp.eq.u16 %r910,%r909,0; @ %r910 bra $L178; .loc 1 1414 19 and.b32 %r911,%r163,1792; .loc 1 1414 9 setp.ne.u32 %r912,%r911,1792; @ %r912 bra $L179; .loc 1 1417 15 and.b32 %r163,%r163,-1921; .loc 1 1418 18 mov.u32 %r174,1; .loc 1 1419 9 mov.u64 %r169,0; bra $L177; $L178: .loc 1 1421 8 setp.eq.u16 %r914,%r899,2; @ %r914 bra $L239; $L179: .loc 1 1426 18 cvt.u16.u32 %r916,%r175; set.u32.eq.u16 %r917,%r916,1; neg.s32 %r918,%r917; mov.u32 %r915,%r918; .loc 1 1426 35 set.u32.eq.u16 %r921,%r916,4; neg.s32 %r922,%r921; mov.u32 %r919,%r922; .loc 1 1426 23 cvt.u16.u8 %r1114,%r915; mov.u16 %r924,%r1114; cvt.u16.u8 %r1114,%r919; mov.u16 %r925,%r1114; or.b16 %r923,%r924,%r925; cvt.u32.u16 %r926,%r923; .loc 1 1426 8 cvt.u16.u8 %r927,%r926; setp.eq.u16 %r928,%r927,0; @ ! %r928 bra $L447; setp.eq.u64 %r1101,%r169,0; bra $L176; $L447: .loc 1 1428 17 add.u16 %r930,%r916,1; cvt.u32.u16 %r932,%r930; cvt.s32.s8 %r175,%r932; .loc 1 1429 9 bra $L177; $L167: .loc 1 1434 8 cvt.u16.u32 %r934,%r174; setp.eq.u16 %r935,%r934,1; @ %r935 bra $L240; setp.eq.u64 %r1101,%r169,0; bra $L176; $L170: .loc 1 1441 18 cvt.u16.u32 %r937,%r175; set.u32.eq.u16 %r938,%r937,0; neg.s32 %r939,%r938; mov.u32 %r936,%r939; .loc 1 1441 33 set.u32.eq.u64 %r941,%r169,0; neg.s32 %r942,%r941; mov.u32 %r940,%r942; .loc 1 1441 23 cvt.u16.u8 %r1114,%r936; mov.u16 %r944,%r1114; cvt.u16.u8 %r1114,%r940; mov.u16 %r945,%r1114; and.b16 %r943,%r944,%r945; cvt.u32.u16 %r946,%r943; .loc 1 1441 8 cvt.u16.u8 %r947,%r946; setp.eq.u16 %r948,%r947,0; @ %r948 bra $L180; .loc 1 1442 19 and.b32 %r949,%r163,1792; .loc 1 1442 9 setp.ne.u32 %r950,%r949,1792; @ %r950 bra $L241; .loc 1 1445 15 and.b32 %r163,%r163,-1921; .loc 1 1446 18 mov.u32 %r175,1; .loc 1 1447 9 mov.u64 %r169,0; bra $L177; $L180: .loc 1 1449 18 cvt.u32.u32 %r951,%r175; cvt.u16.u8 %r953,%r951; add.u16 %r952,%r953,-3; cvt.u32.u16 %r954,%r952; cvt.u16.u8 %r1114,%r954; mov.u16 %r956,%r1114; .loc 1 1449 8 and.b16 %r958,%r956,253; setp.ne.u16 %r959,%r958,0; @ ! %r959 bra $L448; setp.eq.u64 %r1101,%r169,0; bra $L176; $L448: .loc 1 1451 17 add.u16 %r960,%r953,1; cvt.u32.u16 %r962,%r960; cvt.s32.s8 %r175,%r962; .loc 1 1452 9 bra $L177; $L165: .loc 1 1457 8 cvt.u16.u32 %r963,%r175; setp.eq.u16 %r964,%r963,2; @ %r964 bra $L242; setp.eq.u64 %r1101,%r169,0; bra $L176; $L159: .loc 1 1465 8 cvt.u16.u32 %r965,%r175; setp.eq.u16 %r966,%r965,6; @ %r966 bra $L243; setp.eq.u64 %r1101,%r169,0; bra $L176; $L173: .loc 1 1473 8 cvt.u16.u32 %r967,%r175; setp.eq.u16 %r968,%r967,7; @ %r968 bra $L244; setp.eq.u64 %r1101,%r169,0; bra $L176; $L168: .loc 1 1482 16 and.b32 %r969,%r163,1280; .loc 1 1482 8 setp.eq.u32 %r970,%r969,1024; @ %r970 bra $L181; .loc 1 1483 20 and.b32 %r971,%r163,1024; .loc 1 1483 9 setp.eq.u32 %r972,%r971,0; @ ! %r972 bra $L449; setp.eq.u64 %r1101,%r169,0; bra $L176; $L449: .loc 1 1483 29 setp.eq.u64 %r1101,%r169,0; @ %r1101 bra $L176; $L181: .loc 1 1485 22 and.b32 %r974,%r163,512; .loc 1 1485 12 setp.ne.u32 %r975,%r974,0; @ %r975 bra $L182; .loc 1 1487 17 sub.u64 %r170,%r169,%r168; mov.u64 %r171,%r400; $L182: .loc 1 1492 11 and.b32 %r129,%r163,-1921; .loc 1 1490 15 or.b32 %r163,%r129,384; .loc 1 1493 16 mov.u64 %r169,0; .loc 1 1494 9 bra $L177; $L237: mov.u32 %r351,-1; .loc 1 1367 10 mov.u32 %r193,%r351; $L158: .loc 1 1498 8 setp.ne.u32 %r976,%r183,%r351; @ %r976 bra $L183; .loc 1 1498 40 and.b32 %r977,%r163,512; .loc 1 1498 30 setp.eq.u32 %r978,%r977,0; @ %r978 bra $L183; .loc 1 1500 15 and.b32 %r163,%r163,-641; .loc 1 1502 9 mov.u64 %r168,%r169; bra $L177; $L183: .loc 1 1506 11 setp.eq.u32 %r979,%r193,-1; @ %r979 bra $L245; setp.eq.u64 %r1101,%r169,0; bra $L176; $L241: mov.u32 %r175,0; mov.u64 %r169,0; setp.eq.u32 %r1101,1,1; $L176: .loc 1 1507 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r193; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r30,%r400; bra $L184; $L239: .loc 1 1423 18 mov.u32 %r174,3; bra $L177; $L240: .loc 1 1436 18 mov.u32 %r174,2; bra $L177; $L242: .loc 1 1459 18 mov.u32 %r175,3; bra $L177; $L243: .loc 1 1467 18 mov.u32 %r175,7; bra $L177; $L244: .loc 1 1475 18 mov.u32 %r175,8; $L177: .loc 1 1510 10 add.u64 %r30,%r400,4; .loc 1 1510 13 st.u32 [%r400],%r351; bra $L174; $L238: mov.u64 %r30,%r400; $L174: .loc 1 1512 13 add.u64 %r158,%r158,-1; .loc 1 1513 8 mov.u32 %r52,%r371; .loc 1 1365 18 setp.eq.u64 %r983,%r158,0; @ ! %r983 bra $L450; setp.eq.u64 %r1101,%r169,0; bra $L184; $L450: .loc 1 329 9 ld.u32 %r383,[%r409+8]; mov.u64 %r400,%r30; $L175: add.u32 %r371,%r371,1; bra $L185; $L245: mov.u64 %r30,%r400; setp.eq.u64 %r1101,%r169,0; $L184: .loc 1 1515 7 @ %r1101 bra $L186; .loc 1 1516 12 and.b32 %r163,%r163,-257; $L186: .loc 1 1525 17 add.u32 %r985,%r174,-1; .loc 1 1525 7 setp.gt.u32 %r986,%r985,1; @ %r986 bra $L187; .loc 1 1530 17 setp.ge.u64 %r987,%frame,%r30; @ %r987 bra $L12; $L188: .loc 1 1532 5 add.u64 %r30,%r30,-4; ld.u32 %r989,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r989; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1530 17 setp.lt.u64 %r991,%frame,%r30; @ %r991 bra $L188; bra $L12; $L187: .loc 1 1540 17 add.u32 %r992,%r175,-1; .loc 1 1540 7 setp.gt.u32 %r993,%r992,6; @ %r993 bra $L189; .loc 1 1542 11 cvt.u16.u32 %r994,%r175; setp.le.s16 %r995,%r994,2; @ %r995 bra $L190; .loc 1 1543 18 cvt.u32.u32 %r996,%r175; cvt.u32.u8 %r187,%r996; .loc 1 1543 21 setp.ne.u16 %r998,%r994,3; @ %r998 bra $L246; bra $L189; $L190: .loc 1 1550 14 setp.lt.u64 %r999,%frame,%r30; @ %r999 bra $L192; bra $L12; $L246: .loc 1 1543 21 mov.u32 %r196,%r52; mov.u32 %r1103,%r196; cvt.u16.u32 %r1006,%r187; cvt.u16.u8 %r1114,%r1103; mov.u16 %r1011,%r1114; $L191: .loc 1 1545 7 add.u64 %r30,%r30,-4; ld.u32 %r1001,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1001; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1546 7 add.u32 %r196,%r196,-1; .loc 1 1543 21 mov.u32 %r1003,%r196; cvt.u16.u8 %r1114,%r1003; mov.u16 %r1005,%r1114; add.u16 %r1004,%r1005,%r1006; cvt.u32.u16 %r1007,%r1004; cvt.u16.u8 %r1114,%r1007; mov.u16 %r1010,%r1114; sub.u16 %r1009,%r1010,%r1011; cvt.u32.u16 %r1012,%r1009; cvt.s16.s8 %r1013,%r1012; setp.gt.s16 %r1014,%r1013,3; @ %r1014 bra $L191; .loc 1 1546 7 mov.u32 %r52,%r196; bra $L189; $L192: .loc 1 1552 9 add.u64 %r30,%r30,-4; ld.u32 %r1016,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1016; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1550 14 setp.lt.u64 %r1018,%frame,%r30; @ %r1018 bra $L192; bra $L12; $L189: .loc 1 1563 14 and.b32 %r1019,%r163,256; .loc 1 1563 7 setp.eq.u32 %r1020,%r1019,0; @ %r1020 bra $L193; .loc 1 1565 18 and.b32 %r1021,%r163,1024; .loc 1 1565 11 setp.eq.u32 %r1022,%r1021,0; @ %r1022 bra $L194; .loc 1 1568 14 setp.ge.u64 %r1023,%frame,%r30; @ %r1023 bra $L12; $L195: .loc 1 1570 9 add.u64 %r30,%r30,-4; ld.u32 %r1025,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1025; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1568 14 setp.lt.u64 %r1027,%frame,%r30; @ %r1027 bra $L195; bra $L12; $L194: .loc 1 1576 12 ld.u32 %r157,[%r30+-4]; .loc 1 1578 27 and.b32 %r1028,%r157,-33; .loc 1 1578 11 setp.ne.u32 %r1029,%r1028,69; @ %r1029 bra $L196; .loc 1 1576 10 add.u64 %r30,%r30,-4; .loc 1 1577 8 add.u32 %r52,%r52,-1; bra $L197; $L196: .loc 1 1580 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r157; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1581 7 ld.u32 %r157,[%r30+-8]; .loc 1 1582 5 add.u32 %r52,%r52,-2; .loc 1 1581 7 add.u64 %r30,%r30,-8; $L197: .loc 1 1584 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r157; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } $L193: .loc 1 1586 15 and.b32 %r1036,%r163,16; .loc 1 1586 7 setp.ne.u32 %r1037,%r1036,0; @ %r1037 bra $L247; .loc 1 1597 11 st.u32 [%r30],%r1036; .loc 1 1598 19 and.b32 %r1039,%r163,1536; .loc 1 1598 11 setp.ne.u32 %r1040,%r1039,1024; @ %r1040 bra $L198; .loc 1 1606 11 setp.eq.u64 %r1041,%r168,%r169; @ %r1041 bra $L199; .loc 1 1601 13 sub.u64 %r199,%r168,%r169; mov.u64 %r171,%r30; bra $L200; $L198: .loc 1 1604 16 setp.eq.u64 %r1042,%r170,0; @ %r1042 bra $L199; .loc 1 1605 55 add.u64 %r1047,%r171,4; .loc 1 1605 27 mov.u32 %r1046,10; mov.u64 %r1045,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1047; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1045; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1046; call (%value_in),_wcstol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r1048,[%value_in]; } .loc 1 1605 25 sub.u64 %r199,%r1048,%r170; $L200: .loc 1 1611 8 setp.lt.u64 %r1050,%r171,%r1111; .loc 1 1613 17 selp.u64 %r171,%r171,%r1112,%r1050; .loc 1 1615 18 st.u64 [%stack],%r199; cvta.const.u64 %r1053,$LC0; mov.u64 %r1052,21; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r171; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1052; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1053; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1054,[%value_in]; } $L199: .loc 1 1624 16 mov.u64 %r1058,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1058; call (%value_in),_wcstod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r1059,[%value_in]; } .loc 1 830 11 add.u64 %r1060,%r411,7; and.b64 %r377,%r1060,-8; add.u64 %r411,%r377,8; .loc 1 1626 18 and.b32 %r1061,%r163,1; .loc 1 1626 11 setp.eq.u32 %r1062,%r1061,0; @ %r1062 bra $L202; .loc 1 1629 9 ld.u64 %r1063,[%r377]; st.f64 [%r1063],%r1059; bra $L203; $L202: .loc 1 1628 8 ld.u64 %r382,[%r377]; .loc 1 1631 23 and.b32 %r1064,%r163,2; .loc 1 1631 16 setp.eq.u32 %r1065,%r1064,0; @ %r1065 bra $L204; .loc 1 1634 10 st.f64 [%r382],%r1059; bra $L203; $L204: .loc 1 1639 8 setp.num.f64 %r1066,%r1059,%r1059; @ %r1066 bra $L205; .loc 1 1640 14 cvta.const.u64 %r1067,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1067; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r1068,[%value_in]; } .loc 1 1640 12 st.f32 [%r382],%r1068; bra $L203; $L205: .loc 1 1642 12 cvt.rn.f32.f64 %r1069,%r1059; st.f32 [%r382],%r1069; $L203: .loc 1 1644 17 add.u32 %r407,%r407,1; mov.u64 %r164,%r185; bra $L18; $L45: .loc 1 1656 63 setp.eq.u32 %r1070,%r407,0; @ %r1070 bra $L248; .loc 1 1656 25 ld.u16 %r1072,[%r409+16]; and.b16 %r1071,%r1072,64; setp.ne.u16 %r1073,%r1071,0; .loc 1 1656 63 selp.u32 %r407,-1,%r407,%r1073; bra $L12; $L215: .loc 1 561 10 mov.u32 %r407,%r156; bra $L12; $L248: .loc 1 1656 63 mov.u32 %r407,-1; bra $L12; $L14: $L206: $L439: .loc 1 568 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r240; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r164,%r185; bra $L18; $L86: .loc 1 975 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r231; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L207; $L94: .loc 1 999 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L208; $L104: .loc 1 1046 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r226; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L209; $L110: .loc 1 1069 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r224; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u32 %r52,%r232; mov.u64 %r164,%r185; bra $L18; $L116: .loc 1 1092 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r223; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L210; $L125: .loc 1 1135 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r220; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L211; $L443: .loc 1 866 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r192; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 872 7 setp.eq.u32 %r1099,%r401,2; @ %r1099 bra $L212; setp.eq.u32 %r1100,%r401,3; @ ! %r1100 bra $L451; bra $L213; $L220: .loc 1 588 7 mov.u64 %r54,_wcstoul_r; mov.u32 %r32,8; bra $L36; $L221: .loc 1 731 9 mov.u64 %r54,_wcstol_r; bra $L36; $L223: .loc 1 743 9 mov.u64 %r54,_wcstoul_r; .loc 1 744 9 mov.u32 %r32,10; $L36: .loc 1 777 6 mov.u32 %r402,%r32; mov.u32 %r401,3; bra $L60; $L12: .loc 1 1665 1 mov.u32 %value,%r407; st.param.u32 [%value_out],%value; ret; } lib_a-swab.o/ 0 0 0 644 1665 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: swab .visible .func swab (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/swab.c" // BEGIN GLOBAL FUNCTION DEF: swab .visible .func swab (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; mov.u64 %r40,%ar0; mov.u64 %r41,%ar1; mov.u64 %r42,%ar2; .loc 1 28 21 setp.le.s64 %r43,%r42,1; @ %r43 bra $L5; mov.u64 %r34,0; .loc 1 28 12 mov.u64 %r30,1; $L3: .loc 1 30 12 add.u64 %r44,%r40,%r30; .loc 1 31 12 add.u64 %r45,%r40,%r34; ld.s8 %r29,[%r45]; .loc 1 32 17 add.u64 %r46,%r41,%r34; ld.u8 %r47,[%r44]; st.u8 [%r46],%r47; .loc 1 33 17 add.u64 %r48,%r41,%r30; cvt.u32.u32 %r49,%r29; st.u8 [%r48],%r49; .loc 1 28 35 add.u64 %r30,%r30,2; .loc 1 28 21 add.u64 %r34,%r34,2; setp.gt.s64 %r50,%r42,%r30; @ %r50 bra $L3; .loc 1 28 35 add.u64 %r51,%r42,-2; and.b64 %r53,%r51,-2; add.u64 %r32,%r53,3; bra $L2; $L5: .loc 1 28 12 mov.u64 %r32,1; $L2: .loc 1 35 6 setp.ne.u64 %r54,%r42,%r32; @ %r54 bra $L1; .loc 1 36 15 add.u64 %r55,%r41,%r42; add.u64 %r56,%r55,-1; mov.u32 %r57,0; st.u8 [%r56],%r57; $L1: .loc 1 37 1 ret; } lib_a-time.o/ 0 0 0 644 1507 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: time .visible .func (.param .u64 %value_out) time (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/time.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _gettimeofday_r .extern .func (.param .u32 %value_out) _gettimeofday_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: time .visible .func (.param .u64 %value_out) time (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r25,%ar0; .loc 1 40 7 ld.global.u64 %r29,[_impure_ptr]; mov.u64 %r28,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_gettimeofday_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 40 6 setp.lt.s32 %r31,%r30,0; @ %r31 bra $L4; .loc 1 44 13 ld.u64 %r24,[%frame]; bra $L2; $L4: mov.u64 %r24,-1; $L2: .loc 1 43 6 setp.eq.u64 %r32,%r25,0; @ %r32 bra $L1; .loc 1 44 8 st.u64 [%r25],%r24; $L1: .loc 1 46 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-timesr.o/ 0 0 0 644 894 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _times_r .visible .func (.param .u64 %value_out) _times_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/reent/timesr.c" // BEGIN GLOBAL FUNCTION DECL: times .extern .func (.param .u64 %value_out) times (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _times_r .visible .func (.param .u64 %value_out) _times_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar1; .loc 1 52 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),times,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 54 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } /1637 0 0 0 644 1583 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: timingsafe_bcmp .visible .func (.param .u32 %value_out) timingsafe_bcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/timingsafe_bcmp.c" // BEGIN GLOBAL FUNCTION DEF: timingsafe_bcmp .visible .func (.param .u32 %value_out) timingsafe_bcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .u16 %r50; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; .loc 1 26 11 setp.eq.u64 %r37,%r36,0; @ %r37 bra $L4; mov.u64 %r31,%r34; mov.u64 %r30,%r35; add.u64 %r25,%r31,%r36; .loc 1 24 6 mov.u32 %r28,0; $L3: .loc 1 27 16 ld.u8 %r50,[%r31]; mov.u16 %r41,%r50; ld.u8 %r50,[%r30]; mov.u16 %r42,%r50; xor.b16 %r40,%r41,%r42; cvt.u32.u16 %r43,%r40; cvt.u32.u8 %r44,%r43; .loc 1 27 7 or.b32 %r28,%r28,%r44; .loc 1 26 11 add.u64 %r31,%r31,1; add.u64 %r30,%r30,1; setp.ne.u64 %r45,%r25,%r31; @ %r45 bra $L3; .loc 1 28 14 set.u32.ne.u32 %r47,%r28,0; neg.s32 %r33,%r47; bra $L1; $L4: .loc 1 26 11 mov.u32 %r33,0; $L1: .loc 1 29 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } /1662 0 0 0 644 1841 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: timingsafe_memcmp .visible .func (.param .u32 %value_out) timingsafe_memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/timingsafe_memcmp.c" // BEGIN GLOBAL FUNCTION DEF: timingsafe_memcmp .visible .func (.param .u32 %value_out) timingsafe_memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r25; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .pred %r51; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; mov.u64 %r43,%ar2; .loc 1 28 23 setp.eq.u64 %r44,%r43,0; @ %r44 bra $L4; mov.u64 %r39,%r41; mov.u64 %r38,%r42; add.u64 %r35,%r39,%r43; .loc 1 26 22 mov.u32 %r34,0; .loc 1 26 13 mov.u32 %r40,%r34; $L3: .loc 1 30 29 ld.u8 %r23,[%r39]; .loc 1 30 37 ld.u8 %r25,[%r38]; .loc 1 30 33 sub.u32 %r45,%r23,%r25; .loc 1 30 21 shr.s32 %r31,%r45,8; .loc 1 33 33 sub.u32 %r46,%r25,%r23; .loc 1 33 21 shr.s32 %r32,%r46,8; .loc 1 39 30 not.b32 %r47,%r34; .loc 1 36 21 sub.u32 %r48,%r31,%r32; .loc 1 39 28 and.b32 %r49,%r47,%r48; .loc 1 39 21 or.b32 %r40,%r40,%r49; .loc 1 42 28 or.b32 %r50,%r31,%r32; .loc 1 42 22 or.b32 %r34,%r34,%r50; .loc 1 28 23 add.u64 %r39,%r39,1; add.u64 %r38,%r38,1; setp.ne.u64 %r51,%r35,%r39; @ %r51 bra $L3; bra $L1; $L4: .loc 1 26 13 mov.u32 %r40,0; $L1: .loc 1 46 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-tmpfile.o/0 0 0 644 4066 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _tmpfile_r .visible .func (.param .u64 %value_out) _tmpfile_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdio/tmpfile.c" // BEGIN GLOBAL FUNCTION DECL: tmpfile .visible .func (.param .u64 %value_out) tmpfile; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _tmpnam_r .extern .func (.param .u64 %value_out) _tmpnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _close_r .extern .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _remove_r .extern .func (.param .u32 %value_out) _remove_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fdopen_r .extern .func (.param .u64 %value_out) _fdopen_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {119,98,43,0 }; // BEGIN GLOBAL FUNCTION DEF: _tmpfile_r .visible .func (.param .u64 %value_out) _tmpfile_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 16 .b8 %frame_ar[1024]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r42; .reg .u32 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; mov.u64 %r27,%ar0; $L5: .loc 1 63 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),_tmpnam_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 63 10 setp.ne.u64 %r31,%r30,0; @ %r31 bra $L2; $L6: .loc 1 64 9 mov.u64 %r26,0; bra $L1; $L2: .loc 1 65 12 mov.u32 %r35,384; mov.u32 %r34,2562; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r34; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r35; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 68 17 setp.ge.s32 %r37,%r36,0; @ %r37 bra $L4; ld.u32 %r38,[%r27]; setp.eq.u32 %r39,%r38,17; @ %r39 bra $L5; bra $L6; $L7: .loc 1 74 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r36; call (%value_in),_close_r,(%out_arg1,%out_arg2); ld.param.u32 %r42,[%value_in]; } $L8: .loc 1 75 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),_remove_r,(%out_arg1,%out_arg2); ld.param.u32 %r45,[%value_in]; } .loc 1 76 15 st.u32 [%r27],%r25; .loc 1 77 10 bra $L1; $L4: .loc 1 71 8 cvta.const.u64 %r49,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r49; call (%value_in),_fdopen_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r50,[%value_in]; } mov.u64 %r26,%r50; .loc 1 72 5 ld.u32 %r25,[%r27]; .loc 1 73 6 setp.eq.u64 %r51,%r26,0; @ ! %r51 bra $L8; bra $L7; $L1: .loc 1 78 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: tmpfile .visible .func (.param .u64 %value_out) tmpfile { .reg .u64 %value; .reg .u64 %r25; .reg .u64 %r26; .loc 1 85 10 ld.global.u64 %r25,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),_tmpfile_r,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 86 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-tmpnam.o/ 0 0 0 644 11563 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN FUNCTION DECL: worker .func (.param .u32 %value_out) worker (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../newlib/libc/stdio/tmpnam.c" // BEGIN GLOBAL FUNCTION DECL: _tmpnam_r .visible .func (.param .u64 %value_out) _tmpnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _tempnam_r .visible .func (.param .u64 %value_out) _tempnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: tempnam .visible .func (.param .u64 %value_out) tempnam (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: tmpnam .visible .func (.param .u64 %value_out) tmpnam (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _sprintf_r .extern .func (.param .u32 %value_out) _sprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _close_r .extern .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _getpid_r .extern .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: getenv .extern .func (.param .u64 %value_out) getenv (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[11] = {37,115,47,37,115,37,120,46,37,120,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[5] = {47,116,109,112,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[1] = {0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[7] = {84,77,80,68,73,82,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {116,0 }; // BEGIN FUNCTION DEF: worker .func (.param .u32 %value_out) worker (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .local .align 8 .b8 %stack_ar[32]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .u32 %r53; .reg .u64 %r55; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; mov.u32 %r32,%ar4; mov.u64 %r33,%ar5; cvta.const.u64 %r55,$LC0; $L4: .loc 1 102 7 ld.u32 %r37,[%r33]; st.u32 [%stack+20],%r37; st.u32 [%stack+16],%r32; st.u64 [%stack+8],%r31; st.u64 [%stack],%r30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r55; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),_sprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r38,[%value_in]; } .loc 1 103 15 ld.u32 %r41,[%r33]; add.u32 %r40,%r41,1; st.u32 [%r33],%r40; .loc 1 104 11 mov.u32 %r45,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r45; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r45; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r46,[%value_in]; } .loc 1 105 10 setp.ne.u32 %r47,%r46,-1; @ %r47 bra $L2; .loc 1 107 7 ld.u32 %r48,[%r28]; setp.ne.u32 %r49,%r48,88; @ %r49 bra $L5; .loc 1 109 18 mov.u32 %r50,0; st.u8 [%r29],%r50; .loc 1 110 15 mov.u32 %r27,%r45; bra $L1; $L2: .loc 1 114 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r46; call (%value_in),_close_r,(%out_arg1,%out_arg2); ld.param.u32 %r53,[%value_in]; } .loc 1 100 5 bra $L4; $L5: .loc 1 116 10 mov.u32 %r27,1; $L1: .loc 1 117 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _tmpnam_r .visible .func (.param .u64 %value_out) _tmpnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r43; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 126 6 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L7; .loc 1 130 14 add.u64 %r29,%r28,36; $L7: .loc 1 136 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 138 7 add.u64 %r39,%r28,32; cvta.const.u64 %r36,$LC1; cvta.const.u64 %r35,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r36; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r32; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r39; call (%value_in),worker,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r40,[%value_in]; } .loc 1 138 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L9; .loc 1 140 14 ld.u32 %r43,[%r28+32]; add.u32 %r42,%r43,1; st.u32 [%r28+32],%r42; .loc 1 141 14 mov.u64 %r27,%r29; bra $L6; $L9: .loc 1 144 10 mov.u64 %r27,0; $L6: .loc 1 145 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _tempnam_r .visible .func (.param .u64 %value_out) _tempnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .u64 %r46; .reg .u64 %r48; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; mov.u64 %r39,%ar2; .loc 1 154 36 setp.ne.u64 %r40,%r39,0; @ %r40 bra $L11; cvta.const.u64 %r39,$LC3; $L11: .loc 1 155 6 setp.ne.u64 %r41,%r38,0; @ %r41 bra $L12; .loc 1 155 29 cvta.const.u64 %r42,$LC4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; call (%value_in),getenv,(%out_arg1); ld.param.u64 %r43,[%value_in]; } mov.u64 %r38,%r43; .loc 1 155 19 setp.ne.u64 %r44,%r38,0; @ %r44 bra $L12; .loc 1 156 9 cvta.const.u64 %r38,$LC2; $L12: .loc 1 159 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r46,[%value_in]; } .loc 1 159 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r48,[%value_in]; } .loc 1 159 25 cvt.u32.u64 %r51,%r46; cvt.u32.u64 %r52,%r48; add.u32 %r53,%r51,%r52; .loc 1 159 68 add.u32 %r54,%r53,19; .loc 1 161 14 cvt.s64.s32 %r55,%r54; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r56,[%value_in]; } mov.u64 %r36,%r56; .loc 1 162 6 setp.eq.u64 %r57,%r36,0; @ %r57 bra $L13; .loc 1 165 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 164 13 add.u64 %r66,%r37,32; .loc 1 165 23 cvt.u32.u64 %r67,%r37; .loc 1 164 13 xor.b32 %r68,%r67,%r59; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r38; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r39; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r68; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r66; call (%value_in),worker,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r69,[%value_in]; } .loc 1 164 10 setp.ne.u32 %r70,%r69,0; @ %r70 bra $L10; $L13: .loc 1 166 9 mov.u64 %r36,0; $L10: .loc 1 169 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: tempnam .visible .func (.param .u64 %value_out) tempnam (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 177 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_tempnam_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 178 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: tmpnam .visible .func (.param .u64 %value_out) tmpnam (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r43; mov.u64 %r29,%ar0; .loc 1 183 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 126 6 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L20; .loc 1 130 14 add.u64 %r29,%r22,36; $L20: .loc 1 136 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 138 7 add.u64 %r39,%r22,32; cvta.const.u64 %r36,$LC1; cvta.const.u64 %r35,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r36; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r32; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r39; call (%value_in),worker,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r40,[%value_in]; } .loc 1 138 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L22; .loc 1 140 14 ld.u32 %r43,[%r22+32]; add.u32 %r42,%r43,1; st.u32 [%r22+32],%r42; .loc 1 141 14 mov.u64 %r28,%r29; bra $L19; $L22: .loc 1 144 10 mov.u64 %r28,0; $L19: .loc 1 184 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-tolower.o/0 0 0 644 940 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tolower .visible .func (.param .u32 %value_out) tolower (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/tolower.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: tolower .visible .func (.param .u32 %value_out) tolower (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r34; .reg .u16 %r36; .reg .pred %r37; .reg .u16 %r39; mov.u32 %r28,%ar0; .loc 1 80 10 cvt.s64.s32 %r29,%r28; cvta.const.u64 %r30,_ctype_+1; add.u64 %r31,%r29,%r30; .loc 1 80 39 ld.u8 %r39,[%r31]; mov.u16 %r34,%r39; and.b16 %r36,%r34,3; setp.ne.u16 %r37,%r36,1; @ %r37 bra $L2; add.u32 %r28,%r28,32; $L2: .loc 1 82 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-toupper.o/0 0 0 644 941 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: toupper .visible .func (.param .u32 %value_out) toupper (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/ctype/toupper.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: toupper .visible .func (.param .u32 %value_out) toupper (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r34; .reg .u16 %r36; .reg .pred %r37; .reg .u16 %r39; mov.u32 %r28,%ar0; .loc 1 80 10 cvt.s64.s32 %r29,%r28; cvta.const.u64 %r30,_ctype_+1; add.u64 %r31,%r29,%r30; .loc 1 80 38 ld.u8 %r39,[%r31]; mov.u16 %r34,%r39; and.b16 %r36,%r34,3; setp.ne.u16 %r37,%r36,2; @ %r37 bra $L2; add.u32 %r28,%r28,-32; $L2: .loc 1 82 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /1689 0 0 0 644 5312 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .visible .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/time/tzcalc_limits.c" // BEGIN GLOBAL VAR DECL: __month_lengths .extern .const .align 4 .u32 __month_lengths[24]; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DEF: __tzcalc_limits .visible .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r58; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r78; .reg .u64 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r94; .reg .u32 %r96; .reg .u32 %r100; .reg .u64 %r101; .reg .u32 %r102; .reg .u64 %r103; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .pred %r114; .reg .pred %r116; .reg .pred %r121; .reg .u32 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .u32 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r137; .reg .pred %r139; .reg .pred %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .pred %r147; .reg .u64 %r149; .reg .u64 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r154; .reg .pred %r155; .reg .u64 %r156; .reg .pred %r157; .reg .u64 %r158; .reg .pred %r159; mov.u32 %r84,%ar0; .loc 1 18 29 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r85,[%value_in]; } .loc 1 20 6 setp.le.s32 %r86,%r84,1969; @ %r86 bra $L16; .loc 1 23 16 st.u32 [%r85+4],%r84; .loc 1 25 9 add.u32 %r87,%r84,-1970; .loc 1 28 16 add.u32 %r89,%r84,-1969; .loc 1 28 42 shr.s32 %r90,%r89,2; .loc 1 27 27 mad.lo.u32 %r91,%r87,365,%r90; .loc 1 29 16 add.u32 %r92,%r84,-1901; .loc 1 29 45 div.s32 %r94,%r92,-100; .loc 1 30 16 add.u32 %r96,%r84,-1601; .loc 1 30 50 div.s32 %r100,%r96,400; .loc 1 27 13 vadd.u32.u32.u32.add %r61,%r91,%r94,%r100; .loc 1 46 22 rem.s32 %r38,%r84,100; rem.s32 %r39,%r84,400; add.u64 %r72,%r85,8; add.u64 %r68,%r85,88; set.u32.eq.u32 %r102,%r39,0; cvt.s64.s32 %r101,%r102; neg.s64 %r103,%r101; add.u64 %r105,%r103,%r103; add.u64 %r106,%r105,%r103; shl.b64 %r107,%r106,4; and.b32 %r154,%r84,3; setp.ne.u32 %r155,%r154,0; .loc 1 48 21 cvta.const.u64 %r156,__month_lengths; .loc 1 46 22 setp.ne.u32 %r157,%r38,0; selp.u64 %r158,48,%r107,%r157; .loc 1 38 7 setp.ne.u32 %r159,%r39,0; .loc 1 69 46 mov.u32 %r142,86400; $L15: .loc 1 34 26 ld.s8 %r31,[%r72]; .loc 1 37 38 ld.u32 %r82,[%r72+12]; .loc 1 34 10 cvt.u16.u32 %r108,%r31; setp.ne.u16 %r109,%r108,74; @ %r109 bra $L3; .loc 1 37 21 add.u32 %r32,%r61,%r82; .loc 1 38 20 @ %r155 bra $L4; .loc 1 38 7 @ %r157 bra $L5; $L4: @ %r159 bra $L6; $L5: .loc 1 38 20 setp.le.s32 %r114,%r82,59; @ %r114 bra $L6; .loc 1 37 9 add.u32 %r32,%r32,1; $L6: .loc 1 40 4 add.u32 %r55,%r32,-1; bra $L7; $L3: .loc 1 42 15 setp.ne.u16 %r116,%r108,68; @ %r116 bra $L8; .loc 1 43 7 add.u32 %r55,%r61,%r82; bra $L7; $L8: .loc 1 46 22 selp.u64 %r78,%r107,%r158,%r155; .loc 1 48 21 add.u64 %r81,%r78,%r156; .loc 1 52 35 ld.u32 %r67,[%r72+4]; .loc 1 52 18 setp.le.s32 %r121,%r67,1; @ %r121 bra $L19; mov.u64 %r58,%r81; add.u32 %r122,%r67,-1; cvt.u64.u32 %r123,%r122; shl.b64 %r124,%r123,2; add.u64 %r73,%r124,%r81; .loc 1 50 9 mov.u32 %r64,%r61; $L11: .loc 1 53 11 ld.u32 %r125,[%r58]; add.u32 %r64,%r64,%r125; .loc 1 52 18 add.u64 %r58,%r58,4; setp.ne.u64 %r126,%r73,%r58; @ %r126 bra $L11; .loc 1 62 22 cvt.s64.s32 %r127,%r67; shl.b64 %r128,%r127,2; add.u64 %r129,%r128,-4; add.u64 %r81,%r81,%r129; bra $L10; $L19: .loc 1 50 9 mov.u32 %r64,%r61; $L10: .loc 1 55 25 add.u32 %r130,%r64,4; .loc 1 55 11 rem.s32 %r132,%r130,7; .loc 1 57 14 sub.u32 %r56,%r82,%r132; .loc 1 58 7 setp.ge.s32 %r133,%r56,0; @ %r133 bra $L12; .loc 1 59 16 add.u32 %r56,%r56,7; $L12: .loc 1 60 31 ld.u32 %r135,[%r72+8]; add.u32 %r134,%r135,-1; .loc 1 60 36 shl.b32 %r137,%r134,3; .loc 1 60 10 vsub.u32.u32.u32.add %r63,%r137,%r134,%r56; .loc 1 62 22 ld.u32 %r66,[%r81]; .loc 1 62 17 setp.lt.s32 %r139,%r63,%r66; @ %r139 bra $L13; $L14: .loc 1 63 12 add.u32 %r63,%r63,-7; .loc 1 62 17 setp.ge.s32 %r140,%r63,%r66; @ %r140 bra $L14; $L13: .loc 1 65 9 add.u32 %r55,%r64,%r63; $L7: .loc 1 69 46 mul.wide.s32 %r141,%r55,%r142; .loc 1 70 22 ld.s32 %r143,[%r72+16]; .loc 1 69 59 add.u64 %r144,%r141,%r143; .loc 1 70 25 ld.u64 %r146,[%r72+32]; add.u64 %r145,%r144,%r146; .loc 1 69 30 st.u64 [%r72+24],%r145; .loc 1 32 17 add.u64 %r72,%r72,40; setp.ne.u64 %r147,%r68,%r72; @ %r147 bra $L15; .loc 1 73 43 ld.u64 %r149,[%r85+32]; ld.u64 %r150,[%r85+72]; set.u32.lt.s64 %r151,%r149,%r150; neg.s32 %r152,%r151; .loc 1 73 17 st.u32 [%r85],%r152; .loc 1 75 10 mov.u32 %r83,1; bra $L1; $L16: .loc 1 21 12 mov.u32 %r83,0; $L1: .loc 1 76 1 mov.u32 %value,%r83; st.param.u32 [%value_out],%value; ret; } lib_a-tzlock.o/ 0 0 0 644 445 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __tz_lock .visible .func __tz_lock; .file 1 "../../../../../newlib/libc/time/tzlock.c" // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .visible .func __tz_unlock; // BEGIN GLOBAL FUNCTION DEF: __tz_lock .visible .func __tz_lock { .loc 1 44 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __tz_unlock .visible .func __tz_unlock { $LFB3: ret; $LFE3: } lib_a-tzset.o/ 0 0 0 644 1144 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .visible .func _tzset_unlocked; .file 1 "../../../../../newlib/libc/time/tzset.c" // BEGIN GLOBAL FUNCTION DECL: tzset .visible .func tzset; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked_r .extern .func _tzset_unlocked_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DEF: _tzset_unlocked .visible .func _tzset_unlocked { .reg .u64 %r24; .loc 1 67 3 ld.global.u64 %r24,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call _tzset_unlocked_r,(%out_arg1); } .loc 1 68 1 ret; } // BEGIN GLOBAL FUNCTION DEF: tzset .visible .func tzset { .reg .u64 %r24; .loc 1 73 3 { call __tz_lock; } .loc 1 74 3 ld.global.u64 %r24,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call _tzset_unlocked_r,(%out_arg1); } .loc 1 75 3 { call __tz_unlock; } .loc 1 76 1 ret; } lib_a-tzset_r.o/0 0 0 644 17241 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked_r .visible .func _tzset_unlocked_r (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/time/tzset_r.c" // BEGIN GLOBAL FUNCTION DECL: _tzset_r .visible .func _tzset_r (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _tzname .extern .global .align 8 .u64 _tzname[2]; // BEGIN GLOBAL VAR DECL: _daylight .extern .global .align 4 .u32 _daylight[1]; // BEGIN GLOBAL VAR DECL: _timezone .extern .global .align 8 .u64 _timezone[1]; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: _getenv_r .extern .func (.param .u64 %value_out) _getenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: siscanf .extern .func (.param .u32 %value_out) siscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtoul .extern .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .extern .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[19] = {47,37,104,117,37,110,58,37,104,117,37,110,58,37,104,117,37,110,0 }; // BEGIN VAR DEF: __tzname_std .global .align 1 .u8 __tzname_std[11]; // BEGIN VAR DEF: __tzname_dst .global .align 1 .u8 __tzname_dst[11]; // BEGIN VAR DEF: prev_tzenv .global .align 8 .u64 prev_tzenv[1]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {84,90,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {71,77,84,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[15] = {37,49,48,91,94,48,45,57,44,43,45,93,37,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[18] = {37,104,117,37,110,58,37,104,117,37,110,58,37,104,117,37,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[19] = {77,37,104,117,37,110,46,37,104,117,37,110,46,37,104,117,37,110,0 }; // BEGIN GLOBAL FUNCTION DEF: _tzset_unlocked_r .visible .func _tzset_unlocked_r (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .local .align 8 .b8 %stack_ar[48]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r23; .reg .u32 %r33; .reg .u32 %r53; .reg .u64 %r65; .reg .u32 %r68; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r86; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r100; .reg .u64 %r103; .reg .u32 %r118; .reg .u32 %r122; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r128; .reg .u64 %r129; .reg .pred %r130; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r138; .reg .pred %r140; .reg .u32 %r143; .reg .pred %r144; .reg .u64 %r147; .reg .u64 %r150; .reg .u64 %r151; .reg .pred %r152; .reg .u64 %r155; .reg .u16 %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u32 %r163; .reg .pred %r165; .reg .u64 %r166; .reg .u16 %r167; .reg .pred %r168; .reg .pred %r170; .reg .u16 %r171; .reg .u32 %r181; .reg .pred %r183; .reg .u64 %r185; .reg .u64 %r187; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r194; .reg .u64 %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r200; .reg .u64 %r204; .reg .u32 %r205; .reg .pred %r207; .reg .u64 %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r215; .reg .u16 %r216; .reg .pred %r217; .reg .pred %r219; .reg .u16 %r220; .reg .u32 %r223; .reg .u32 %r232; .reg .pred %r234; .reg .u64 %r235; .reg .u64 %r237; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r248; .reg .u64 %r249; .reg .u16 %r250; .reg .pred %r251; .reg .u16 %r252; .reg .pred %r253; .reg .u64 %r255; .reg .u32 %r262; .reg .pred %r264; .reg .u16 %r265; .reg .u16 %r266; .reg .pred %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .pred %r270; .reg .u16 %r271; .reg .pred %r272; .reg .u32 %r273; .reg .u64 %r274; .reg .pred %r276; .reg .u32 %r279; .reg .u64 %r280; .reg .u16 %r281; .reg .pred %r283; .reg .pred %r284; .reg .u32 %r285; .reg .u32 %r286; .reg .u64 %r287; .reg .u32 %r288; .reg .u32 %r289; .reg .u64 %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .u32 %r294; .reg .u16 %r295; .reg .u32 %r296; .reg .pred %r297; .reg .u64 %r299; .reg .u32 %r306; .reg .u32 %r308; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r317; .reg .u64 %r318; .reg .pred %r319; .reg .u32 %r321; .reg .u32 %r322; .reg .u64 %r324; .reg .u32 %r325; .reg .u32 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .u64 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r336; mov.u64 %r125,%ar0; .loc 1 23 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r126,[%value_in]; } .loc 1 25 16 cvta.const.u64 %r128,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r125; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r128; call (%value_in),_getenv_r,(%out_arg1,%out_arg2); ld.param.u64 %r129,[%value_in]; } mov.u64 %r90,%r129; .loc 1 25 6 setp.ne.u64 %r130,%r129,0; @ %r130 bra $L2; .loc 1 27 12 st.global.u64 [_timezone],%r129; .loc 1 28 12 mov.u32 %r132,0; st.global.u32 [_daylight],%r132; .loc 1 29 13 cvta.global.u64 %r133,_tzname; cvta.const.u64 %r134,$LC1; st.u64 [%r133],%r134; .loc 1 30 13 st.u64 [%r133+8],%r134; .loc 1 31 2 ld.global.u64 %r138,[prev_tzenv]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r138; call __nvptx_free,(%out_arg1); } .loc 1 32 13 st.global.u64 [prev_tzenv],%r129; .loc 1 33 2 bra $L1; $L2: .loc 1 36 18 ld.global.u64 %r23,[prev_tzenv]; .loc 1 36 6 setp.eq.u64 %r140,%r23,0; @ %r140 bra $L4; .loc 1 36 29 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r129; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r143,[%value_in]; } .loc 1 36 26 setp.eq.u32 %r144,%r143,0; @ %r144 bra $L1; .loc 1 39 3 ld.global.u64 %r23,[prev_tzenv]; $L4: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __nvptx_free,(%out_arg1); } .loc 1 40 38 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r129; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r147,[%value_in]; } .loc 1 40 16 add.u64 %r150,%r147,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r125; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r150; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r151,[%value_in]; } .loc 1 40 14 st.global.u64 [prev_tzenv],%r151; .loc 1 41 6 setp.eq.u64 %r152,%r151,0; @ %r152 bra $L6; .loc 1 42 5 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r151; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r129; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r155,[%value_in]; } $L6: .loc 1 45 6 ld.u8 %r157,[%r129]; cvt.s16.s8 %r156,%r157; setp.ne.u16 %r158,%r156,58; @ %r158 bra $L7; .loc 1 46 5 add.u64 %r90,%r129,1; $L7: .loc 1 48 7 add.u64 %r329,%frame,8; st.u64 [%stack+8],%r329; cvta.global.u64 %r333,__tzname_std; st.u64 [%stack],%r333; cvta.const.u64 %r327,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r90; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r327; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r163,[%value_in]; } .loc 1 48 6 setp.le.s32 %r165,%r163,0; @ %r165 bra $L1; .loc 1 51 9 ld.s32 %r166,[%frame+8]; add.u64 %r91,%r90,%r166; .loc 1 54 7 ld.s8 %r33,[%r91]; .loc 1 54 6 cvt.u16.u32 %r167,%r33; setp.ne.u16 %r168,%r167,45; @ %r168 bra $L8; .loc 1 57 7 add.u64 %r91,%r91,1; .loc 1 56 12 mov.u32 %r95,-1; bra $L9; $L8: .loc 1 59 11 setp.ne.u16 %r170,%r167,43; @ %r170 bra $L25; .loc 1 60 5 add.u64 %r91,%r91,1; .loc 1 53 8 mov.u32 %r95,1; bra $L9; $L25: mov.u32 %r95,1; $L9: .loc 1 62 6 mov.u16 %r171,0; st.u16 [%frame+20],%r171; .loc 1 63 6 st.u16 [%frame+18],%r171; .loc 1 65 7 st.u64 [%stack+40],%r329; add.u64 %r330,%frame,18; st.u64 [%stack+32],%r330; st.u64 [%stack+24],%r329; add.u64 %r331,%frame,20; st.u64 [%stack+16],%r331; st.u64 [%stack+8],%r329; add.u64 %r332,%frame,22; st.u64 [%stack],%r332; cvta.const.u64 %r328,$LC3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r91; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r328; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r181,[%value_in]; } .loc 1 65 6 setp.le.s32 %r183,%r181,0; @ %r183 bra $L1; .loc 1 68 52 ld.u16 %r185,[%frame+20]; shl.b64 %r187,%r185,4; sub.u64 %r188,%r187,%r185; shl.b64 %r189,%r188,2; .loc 1 68 39 ld.u16 %r190,[%frame+18]; add.u64 %r191,%r189,%r190; .loc 1 68 71 ld.u16 %r194,[%frame+22]; .loc 1 68 57 mad.lo.u64 %r195,%r194,3600,%r191; .loc 1 68 33 cvt.s64.s32 %r196,%r95; mul.lo.u64 %r197,%r195,%r196; .loc 1 68 26 st.u64 [%r126+40],%r197; .loc 1 69 14 cvta.global.u64 %r198,_tzname; st.u64 [%r198],%r333; .loc 1 70 9 ld.s32 %r200,[%frame+8]; add.u64 %r100,%r91,%r200; .loc 1 72 7 st.u64 [%stack+8],%r329; cvta.global.u64 %r204,__tzname_dst; st.u64 [%stack],%r204; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r100; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r327; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r205,[%value_in]; } .loc 1 72 6 setp.gt.s32 %r207,%r205,0; @ %r207 bra $L10; .loc 1 74 18 ld.u64 %r210,[%r198]; st.u64 [%r198+8],%r210; .loc 1 75 17 ld.u64 %r211,[%r126+40]; st.global.u64 [_timezone],%r211; .loc 1 76 17 mov.u32 %r212,0; st.global.u32 [_daylight],%r212; .loc 1 77 7 bra $L1; $L10: .loc 1 80 16 st.u64 [%r198+8],%r204; .loc 1 82 9 ld.s32 %r215,[%frame+8]; add.u64 %r92,%r100,%r215; .loc 1 86 7 ld.s8 %r53,[%r92]; .loc 1 86 6 cvt.u16.u32 %r216,%r53; setp.ne.u16 %r217,%r216,45; @ %r217 bra $L11; .loc 1 89 7 add.u64 %r92,%r92,1; .loc 1 88 12 mov.u32 %r96,-1; bra $L12; $L11: .loc 1 91 11 setp.ne.u16 %r219,%r216,43; @ %r219 bra $L26; .loc 1 92 5 add.u64 %r92,%r92,1; .loc 1 85 8 mov.u32 %r96,1; bra $L12; $L26: mov.u32 %r96,1; $L12: .loc 1 94 6 mov.u16 %r220,0; st.u16 [%frame+22],%r220; .loc 1 95 6 st.u16 [%frame+20],%r220; .loc 1 96 6 st.u16 [%frame+18],%r220; .loc 1 98 6 mov.u32 %r223,0; st.u32 [%frame+8],%r223; .loc 1 99 7 st.u64 [%stack+40],%r329; st.u64 [%stack+32],%r330; st.u64 [%stack+24],%r329; st.u64 [%stack+16],%r331; st.u64 [%stack+8],%r329; st.u64 [%stack],%r332; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r328; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r232,[%value_in]; } .loc 1 99 6 setp.gt.s32 %r234,%r232,0; @ %r234 bra $L13; .loc 1 100 53 ld.u64 %r235,[%r126+40]; add.u64 %r65,%r235,-3600; bra $L14; $L13: .loc 1 102 54 ld.u16 %r237,[%frame+20]; shl.b64 %r239,%r237,4; sub.u64 %r240,%r239,%r237; shl.b64 %r241,%r240,2; .loc 1 102 41 ld.u16 %r242,[%frame+18]; add.u64 %r243,%r241,%r242; .loc 1 102 73 ld.u16 %r246,[%frame+22]; .loc 1 102 59 mad.lo.u64 %r247,%r246,3600,%r243; .loc 1 102 35 cvt.s64.s32 %r248,%r96; mul.lo.u64 %r65,%r247,%r248; $L14: st.u64 [%r126+80],%r65; .loc 1 104 9 ld.s32 %r249,[%frame+8]; add.u64 %r93,%r92,%r249; add.u64 %r103,%r126,8; .loc 1 106 10 mov.u32 %r118,0; .loc 1 113 8 add.u64 %r334,%frame,12; add.u64 %r335,%frame,14; add.u64 %r336,%frame,16; bra $L23; $L29: mov.u32 %r118,1; $L23: .loc 1 108 11 ld.s8 %r68,[%r93]; .loc 1 108 10 cvt.u16.u32 %r250,%r68; setp.ne.u16 %r251,%r250,44; @ %r251 bra $L15; .loc 1 111 11 ld.s8 %r68,[%r93+1]; .loc 1 109 9 add.u64 %r93,%r93,1; $L15: .loc 1 111 10 cvt.u16.u32 %r252,%r68; setp.ne.u16 %r253,%r252,77; @ %r253 bra $L16; .loc 1 113 8 st.u64 [%stack+40],%r329; st.u64 [%stack+32],%r334; st.u64 [%stack+24],%r329; st.u64 [%stack+16],%r335; st.u64 [%stack+8],%r329; st.u64 [%stack],%r336; cvta.const.u64 %r255,$LC4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r93; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r255; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r262,[%value_in]; } .loc 1 113 7 setp.ne.u32 %r264,%r262,3; @ %r264 bra $L1; .loc 1 114 10 ld.u16 %r71,[%frame+16]; .loc 1 114 14 cvt.u16.u32 %r266,%r71; add.u16 %r265,%r266,-1; setp.gt.u16 %r267,%r265,11; @ %r267 bra $L1; .loc 1 114 29 ld.u16 %r72,[%frame+14]; .loc 1 114 33 cvt.u16.u32 %r269,%r72; add.u16 %r268,%r269,-1; setp.gt.u16 %r270,%r268,4; @ %r270 bra $L1; .loc 1 114 47 ld.u16 %r73,[%frame+12]; .loc 1 114 42 cvt.u16.u32 %r271,%r73; setp.gt.u16 %r272,%r271,6; @ %r272 bra $L1; .loc 1 117 23 mov.u32 %r273,77; st.u8 [%r103],%r273; .loc 1 118 22 st.u32 [%r103+4],%r71; .loc 1 119 22 st.u32 [%r103+8],%r72; .loc 1 120 22 st.u32 [%r103+12],%r73; .loc 1 122 10 ld.s32 %r274,[%frame+8]; add.u64 %r93,%r93,%r274; bra $L17; $L16: .loc 1 127 7 setp.ne.u16 %r276,%r252,74; @ %r276 bra $L27; .loc 1 130 8 add.u64 %r93,%r93,1; .loc 1 129 11 mov.u32 %r97,74; bra $L18; $L27: .loc 1 133 9 mov.u32 %r97,68; $L18: .loc 1 135 8 mov.u32 %r279,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r93; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r279; call (%value_in),strtoul,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r280,[%value_in]; } .loc 1 135 6 cvt.u16.u64 %r281,%r280; cvt.u32.u16 %r80,%r281; st.u16 [%frame+12],%r281; .loc 1 140 12 ld.u64 %r81,[%frame]; .loc 1 140 7 setp.ne.u64 %r283,%r81,%r93; @ %r283 bra $L19; .loc 1 142 11 setp.ne.u32 %r284,%r118,0; @ %r284 bra $L20; .loc 1 144 24 mov.u32 %r285,77; st.u8 [%r126+8],%r285; .loc 1 145 23 mov.u32 %r286,3; st.u32 [%r126+12],%r286; .loc 1 146 23 mov.u64 %r287,2; st.u64 [%r126+16],%r287; bra $L21; $L20: .loc 1 151 24 mov.u32 %r288,77; st.u8 [%r126+48],%r288; .loc 1 152 23 mov.u32 %r289,11; st.u32 [%r126+52],%r289; .loc 1 153 23 mov.u64 %r290,1; st.u64 [%r126+56],%r290; bra $L21; $L19: .loc 1 159 27 st.u8 [%r103],%r97; .loc 1 160 26 st.u32 [%r103+12],%r80; $L21: .loc 1 140 12 mov.u64 %r93,%r81; $L17: .loc 1 167 10 mov.u16 %r291,2; st.u16 [%frame+22],%r291; .loc 1 168 10 mov.u16 %r292,0; st.u16 [%frame+20],%r292; .loc 1 169 10 st.u16 [%frame+18],%r292; .loc 1 170 9 mov.u32 %r294,0; st.u32 [%frame+8],%r294; .loc 1 172 10 ld.u8 %r296,[%r93]; cvt.s16.s8 %r295,%r296; setp.ne.u16 %r297,%r295,47; @ %r297 bra $L28; .loc 1 173 2 st.u64 [%stack+40],%r329; st.u64 [%stack+32],%r330; st.u64 [%stack+24],%r329; st.u64 [%stack+16],%r331; st.u64 [%stack+8],%r329; st.u64 [%stack],%r332; cvta.const.u64 %r299,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r93; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r299; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r306,[%value_in]; } .loc 1 175 48 ld.u16 %r308,[%frame+20]; shl.b32 %r310,%r308,4; sub.u32 %r311,%r310,%r308; shl.b32 %r312,%r311,2; ld.u16 %r315,[%frame+22]; mad.lo.u32 %r316,%r315,3600,%r312; ld.u16 %r317,[%frame+18]; add.u32 %r122,%r316,%r317; .loc 1 177 13 ld.s32 %r318,[%frame+8]; add.u64 %r93,%r93,%r318; bra $L22; $L28: mov.u32 %r122,7200; $L22: .loc 1 175 25 st.u32 [%r103+16],%r122; .loc 1 106 17 add.u64 %r103,%r103,40; setp.ne.u32 %r319,%r118,1; @ %r319 bra $L29; .loc 1 180 3 ld.u32 %r321,[%r126+4]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r321; call (%value_in),__tzcalc_limits,(%out_arg1); ld.param.u32 %r322,[%value_in]; } .loc 1 181 30 ld.u64 %r86,[%r126+40]; .loc 1 181 13 st.global.u64 [_timezone],%r86; .loc 1 182 38 ld.u64 %r324,[%r126+80]; set.u32.ne.u64 %r325,%r324,%r86; neg.s32 %r326,%r325; .loc 1 182 13 st.global.u32 [_daylight],%r326; $L1: .loc 1 183 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _tzset_r .visible .func _tzset_r (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; mov.u64 %r22,%ar0; .loc 1 188 3 { call __tz_lock; } .loc 1 189 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call _tzset_unlocked_r,(%out_arg1); } .loc 1 190 3 { call __tz_unlock; } .loc 1 191 1 ret; } lib_a-tzvars.o/ 0 0 0 644 415 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _timezone .visible .global .align 8 .u64 _timezone[1]; // BEGIN GLOBAL VAR DEF: _daylight .visible .global .align 4 .u32 _daylight[1]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {71,77,84,0 }; // BEGIN GLOBAL VAR DEF: _tzname .visible .global .align 8 .u64 _tzname[2] = {generic($LC0),generic($LC0) }; /1712 0 0 0 644 702 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _user_strerror .visible .func (.param .u64 %value_out) _user_strerror (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/u_strerr.c" // BEGIN GLOBAL FUNCTION DEF: _user_strerror .visible .func (.param .u64 %value_out) _user_strerror (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .loc 1 13 10 mov.u64 %value,0; .loc 1 14 1 st.param.u64 [%value_out],%value; ret; } lib_a-unctrl.o/ 0 0 0 644 22904 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN VAR DEF: $LC120 .const .align 1 .u8 $LC120[2] = {120,0 }; // BEGIN VAR DEF: $LC121 .const .align 1 .u8 $LC121[2] = {121,0 }; // BEGIN VAR DEF: $LC122 .const .align 1 .u8 $LC122[2] = {122,0 }; // BEGIN VAR DEF: $LC123 .const .align 1 .u8 $LC123[2] = {123,0 }; // BEGIN VAR DEF: $LC124 .const .align 1 .u8 $LC124[2] = {124,0 }; // BEGIN VAR DEF: $LC125 .const .align 1 .u8 $LC125[2] = {125,0 }; // BEGIN VAR DEF: $LC126 .const .align 1 .u8 $LC126[2] = {126,0 }; // BEGIN VAR DEF: $LC127 .const .align 1 .u8 $LC127[3] = {94,63,0 }; // BEGIN VAR DEF: $LC128 .const .align 1 .u8 $LC128[5] = {48,120,56,48,0 }; // BEGIN VAR DEF: $LC129 .const .align 1 .u8 $LC129[5] = {48,120,56,49,0 }; // BEGIN VAR DEF: $LC80 .const .align 1 .u8 $LC80[2] = {80,0 }; // BEGIN VAR DEF: $LC81 .const .align 1 .u8 $LC81[2] = {81,0 }; // BEGIN VAR DEF: $LC82 .const .align 1 .u8 $LC82[2] = {82,0 }; // BEGIN VAR DEF: $LC83 .const .align 1 .u8 $LC83[2] = {83,0 }; // BEGIN VAR DEF: $LC84 .const .align 1 .u8 $LC84[2] = {84,0 }; // BEGIN VAR DEF: $LC85 .const .align 1 .u8 $LC85[2] = {85,0 }; // BEGIN VAR DEF: $LC86 .const .align 1 .u8 $LC86[2] = {86,0 }; // BEGIN VAR DEF: $LC87 .const .align 1 .u8 $LC87[2] = {87,0 }; // BEGIN VAR DEF: $LC88 .const .align 1 .u8 $LC88[2] = {88,0 }; // BEGIN VAR DEF: $LC89 .const .align 1 .u8 $LC89[2] = {89,0 }; // BEGIN VAR DEF: $LC240 .const .align 1 .u8 $LC240[5] = {48,120,102,48,0 }; // BEGIN VAR DEF: $LC241 .const .align 1 .u8 $LC241[5] = {48,120,102,49,0 }; // BEGIN VAR DEF: $LC242 .const .align 1 .u8 $LC242[5] = {48,120,102,50,0 }; // BEGIN VAR DEF: $LC243 .const .align 1 .u8 $LC243[5] = {48,120,102,51,0 }; // BEGIN VAR DEF: $LC244 .const .align 1 .u8 $LC244[5] = {48,120,102,52,0 }; // BEGIN VAR DEF: $LC245 .const .align 1 .u8 $LC245[5] = {48,120,102,53,0 }; // BEGIN VAR DEF: $LC246 .const .align 1 .u8 $LC246[5] = {48,120,102,54,0 }; // BEGIN VAR DEF: $LC247 .const .align 1 .u8 $LC247[5] = {48,120,102,55,0 }; // BEGIN VAR DEF: $LC248 .const .align 1 .u8 $LC248[5] = {48,120,102,56,0 }; // BEGIN VAR DEF: $LC249 .const .align 1 .u8 $LC249[5] = {48,120,102,57,0 }; // BEGIN VAR DEF: $LC170 .const .align 1 .u8 $LC170[5] = {48,120,97,97,0 }; // BEGIN VAR DEF: $LC171 .const .align 1 .u8 $LC171[5] = {48,120,97,98,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[3] = {94,74,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[3] = {94,75,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[3] = {94,76,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[3] = {94,77,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[3] = {94,78,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[3] = {94,79,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[3] = {94,80,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[3] = {94,81,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[3] = {94,82,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[3] = {94,83,0 }; // BEGIN VAR DEF: $LC133 .const .align 1 .u8 $LC133[5] = {48,120,56,53,0 }; // BEGIN VAR DEF: $LC134 .const .align 1 .u8 $LC134[5] = {48,120,56,54,0 }; // BEGIN VAR DEF: $LC135 .const .align 1 .u8 $LC135[5] = {48,120,56,55,0 }; // BEGIN VAR DEF: $LC136 .const .align 1 .u8 $LC136[5] = {48,120,56,56,0 }; // BEGIN VAR DEF: $LC137 .const .align 1 .u8 $LC137[5] = {48,120,56,57,0 }; // BEGIN VAR DEF: $LC138 .const .align 1 .u8 $LC138[5] = {48,120,56,97,0 }; // BEGIN VAR DEF: $LC139 .const .align 1 .u8 $LC139[5] = {48,120,56,98,0 }; // BEGIN VAR DEF: $LC90 .const .align 1 .u8 $LC90[2] = {90,0 }; // BEGIN VAR DEF: $LC91 .const .align 1 .u8 $LC91[2] = {91,0 }; // BEGIN VAR DEF: $LC92 .const .align 1 .u8 $LC92[2] = {92,0 }; // BEGIN VAR DEF: $LC93 .const .align 1 .u8 $LC93[2] = {93,0 }; // BEGIN VAR DEF: $LC94 .const .align 1 .u8 $LC94[2] = {94,0 }; // BEGIN VAR DEF: $LC95 .const .align 1 .u8 $LC95[2] = {95,0 }; // BEGIN VAR DEF: $LC96 .const .align 1 .u8 $LC96[2] = {96,0 }; // BEGIN VAR DEF: $LC97 .const .align 1 .u8 $LC97[2] = {97,0 }; // BEGIN VAR DEF: $LC98 .const .align 1 .u8 $LC98[2] = {98,0 }; // BEGIN VAR DEF: $LC99 .const .align 1 .u8 $LC99[2] = {99,0 }; // BEGIN VAR DEF: $LC250 .const .align 1 .u8 $LC250[5] = {48,120,102,97,0 }; // BEGIN VAR DEF: $LC251 .const .align 1 .u8 $LC251[5] = {48,120,102,98,0 }; // BEGIN VAR DEF: $LC252 .const .align 1 .u8 $LC252[5] = {48,120,102,99,0 }; // BEGIN VAR DEF: $LC253 .const .align 1 .u8 $LC253[5] = {48,120,102,100,0 }; // BEGIN VAR DEF: $LC254 .const .align 1 .u8 $LC254[5] = {48,120,102,101,0 }; // BEGIN VAR DEF: $LC255 .const .align 1 .u8 $LC255[5] = {48,120,102,102,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[3] = {94,84,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[3] = {94,85,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[3] = {94,86,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[3] = {94,87,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[3] = {94,88,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[3] = {94,89,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[3] = {94,90,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[3] = {94,91,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[3] = {94,92,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[3] = {94,93,0 }; // BEGIN VAR DEF: $LC143 .const .align 1 .u8 $LC143[5] = {48,120,56,102,0 }; // BEGIN VAR DEF: $LC144 .const .align 1 .u8 $LC144[5] = {48,120,57,48,0 }; // BEGIN VAR DEF: $LC145 .const .align 1 .u8 $LC145[5] = {48,120,57,49,0 }; // BEGIN VAR DEF: $LC146 .const .align 1 .u8 $LC146[5] = {48,120,57,50,0 }; // BEGIN VAR DEF: $LC147 .const .align 1 .u8 $LC147[5] = {48,120,57,51,0 }; // BEGIN VAR DEF: $LC148 .const .align 1 .u8 $LC148[5] = {48,120,57,52,0 }; // BEGIN VAR DEF: $LC149 .const .align 1 .u8 $LC149[5] = {48,120,57,53,0 }; // BEGIN VAR DEF: $LC130 .const .align 1 .u8 $LC130[5] = {48,120,56,50,0 }; // BEGIN VAR DEF: $LC131 .const .align 1 .u8 $LC131[5] = {48,120,56,51,0 }; // BEGIN VAR DEF: $LC132 .const .align 1 .u8 $LC132[5] = {48,120,56,52,0 }; // BEGIN VAR DEF: $LC182 .const .align 1 .u8 $LC182[5] = {48,120,98,54,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[3] = {94,126,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[3] = {94,95,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[2] = {32,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[2] = {33,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[2] = {34,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[2] = {35,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[2] = {36,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[2] = {37,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[2] = {38,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[2] = {39,0 }; // BEGIN VAR DEF: $LC153 .const .align 1 .u8 $LC153[5] = {48,120,57,57,0 }; // BEGIN VAR DEF: $LC154 .const .align 1 .u8 $LC154[5] = {48,120,57,97,0 }; // BEGIN VAR DEF: $LC155 .const .align 1 .u8 $LC155[5] = {48,120,57,98,0 }; // BEGIN VAR DEF: $LC156 .const .align 1 .u8 $LC156[5] = {48,120,57,99,0 }; // BEGIN VAR DEF: $LC157 .const .align 1 .u8 $LC157[5] = {48,120,57,100,0 }; // BEGIN VAR DEF: $LC158 .const .align 1 .u8 $LC158[5] = {48,120,57,101,0 }; // BEGIN VAR DEF: $LC159 .const .align 1 .u8 $LC159[5] = {48,120,57,102,0 }; // BEGIN VAR DEF: $LC178 .const .align 1 .u8 $LC178[5] = {48,120,98,50,0 }; // BEGIN VAR DEF: $LC179 .const .align 1 .u8 $LC179[5] = {48,120,98,51,0 }; // BEGIN VAR DEF: $LC210 .const .align 1 .u8 $LC210[5] = {48,120,100,50,0 }; // BEGIN VAR DEF: $LC180 .const .align 1 .u8 $LC180[5] = {48,120,98,52,0 }; // BEGIN VAR DEF: $LC181 .const .align 1 .u8 $LC181[5] = {48,120,98,53,0 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: __unctrllen .visible .const .align 1 .u8 __unctrllen[256] = {2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[2] = {40,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[2] = {41,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[2] = {42,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[2] = {43,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[2] = {44,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[2] = {45,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[2] = {46,0 }; // BEGIN VAR DEF: $LC47 .const .align 1 .u8 $LC47[2] = {47,0 }; // BEGIN VAR DEF: $LC48 .const .align 1 .u8 $LC48[2] = {48,0 }; // BEGIN VAR DEF: $LC49 .const .align 1 .u8 $LC49[2] = {49,0 }; // BEGIN VAR DEF: $LC163 .const .align 1 .u8 $LC163[5] = {48,120,97,51,0 }; // BEGIN VAR DEF: $LC164 .const .align 1 .u8 $LC164[5] = {48,120,97,52,0 }; // BEGIN VAR DEF: $LC165 .const .align 1 .u8 $LC165[5] = {48,120,97,53,0 }; // BEGIN VAR DEF: $LC166 .const .align 1 .u8 $LC166[5] = {48,120,97,54,0 }; // BEGIN VAR DEF: $LC167 .const .align 1 .u8 $LC167[5] = {48,120,97,55,0 }; // BEGIN VAR DEF: $LC168 .const .align 1 .u8 $LC168[5] = {48,120,97,56,0 }; // BEGIN VAR DEF: $LC169 .const .align 1 .u8 $LC169[5] = {48,120,97,57,0 }; // BEGIN VAR DEF: $LC200 .const .align 1 .u8 $LC200[5] = {48,120,99,56,0 }; // BEGIN VAR DEF: $LC201 .const .align 1 .u8 $LC201[5] = {48,120,99,57,0 }; // BEGIN VAR DEF: $LC202 .const .align 1 .u8 $LC202[5] = {48,120,99,97,0 }; // BEGIN VAR DEF: $LC203 .const .align 1 .u8 $LC203[5] = {48,120,99,98,0 }; // BEGIN VAR DEF: $LC204 .const .align 1 .u8 $LC204[5] = {48,120,99,99,0 }; // BEGIN VAR DEF: $LC205 .const .align 1 .u8 $LC205[5] = {48,120,99,100,0 }; // BEGIN VAR DEF: $LC206 .const .align 1 .u8 $LC206[5] = {48,120,99,101,0 }; // BEGIN VAR DEF: $LC207 .const .align 1 .u8 $LC207[5] = {48,120,99,102,0 }; // BEGIN VAR DEF: $LC208 .const .align 1 .u8 $LC208[5] = {48,120,100,48,0 }; // BEGIN VAR DEF: $LC209 .const .align 1 .u8 $LC209[5] = {48,120,100,49,0 }; // BEGIN VAR DEF: $LC140 .const .align 1 .u8 $LC140[5] = {48,120,56,99,0 }; // BEGIN VAR DEF: $LC141 .const .align 1 .u8 $LC141[5] = {48,120,56,100,0 }; // BEGIN VAR DEF: $LC142 .const .align 1 .u8 $LC142[5] = {48,120,56,101,0 }; // BEGIN VAR DEF: $LC176 .const .align 1 .u8 $LC176[5] = {48,120,98,48,0 }; // BEGIN VAR DEF: $LC50 .const .align 1 .u8 $LC50[2] = {50,0 }; // BEGIN VAR DEF: $LC51 .const .align 1 .u8 $LC51[2] = {51,0 }; // BEGIN VAR DEF: $LC52 .const .align 1 .u8 $LC52[2] = {52,0 }; // BEGIN VAR DEF: $LC53 .const .align 1 .u8 $LC53[2] = {53,0 }; // BEGIN VAR DEF: $LC54 .const .align 1 .u8 $LC54[2] = {54,0 }; // BEGIN VAR DEF: $LC55 .const .align 1 .u8 $LC55[2] = {55,0 }; // BEGIN VAR DEF: $LC56 .const .align 1 .u8 $LC56[2] = {56,0 }; // BEGIN VAR DEF: $LC57 .const .align 1 .u8 $LC57[2] = {57,0 }; // BEGIN VAR DEF: $LC58 .const .align 1 .u8 $LC58[2] = {58,0 }; // BEGIN VAR DEF: $LC59 .const .align 1 .u8 $LC59[2] = {59,0 }; // BEGIN VAR DEF: $LC173 .const .align 1 .u8 $LC173[5] = {48,120,97,100,0 }; // BEGIN VAR DEF: $LC174 .const .align 1 .u8 $LC174[5] = {48,120,97,101,0 }; // BEGIN VAR DEF: $LC175 .const .align 1 .u8 $LC175[5] = {48,120,97,102,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {94,64,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {94,65,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[3] = {94,66,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[3] = {94,67,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[3] = {94,68,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[3] = {94,69,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[3] = {94,70,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[3] = {94,71,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[3] = {94,72,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[3] = {94,73,0 }; // BEGIN VAR DEF: $LC211 .const .align 1 .u8 $LC211[5] = {48,120,100,51,0 }; // BEGIN VAR DEF: $LC212 .const .align 1 .u8 $LC212[5] = {48,120,100,52,0 }; // BEGIN VAR DEF: $LC213 .const .align 1 .u8 $LC213[5] = {48,120,100,53,0 }; // BEGIN VAR DEF: $LC214 .const .align 1 .u8 $LC214[5] = {48,120,100,54,0 }; // BEGIN VAR DEF: $LC215 .const .align 1 .u8 $LC215[5] = {48,120,100,55,0 }; // BEGIN VAR DEF: $LC216 .const .align 1 .u8 $LC216[5] = {48,120,100,56,0 }; // BEGIN VAR DEF: $LC217 .const .align 1 .u8 $LC217[5] = {48,120,100,57,0 }; // BEGIN VAR DEF: $LC218 .const .align 1 .u8 $LC218[5] = {48,120,100,97,0 }; // BEGIN VAR DEF: $LC219 .const .align 1 .u8 $LC219[5] = {48,120,100,98,0 }; // BEGIN VAR DEF: $LC160 .const .align 1 .u8 $LC160[5] = {48,120,97,48,0 }; // BEGIN VAR DEF: $LC161 .const .align 1 .u8 $LC161[5] = {48,120,97,49,0 }; // BEGIN VAR DEF: $LC162 .const .align 1 .u8 $LC162[5] = {48,120,97,50,0 }; // BEGIN VAR DEF: $LC100 .const .align 1 .u8 $LC100[2] = {100,0 }; // BEGIN VAR DEF: $LC101 .const .align 1 .u8 $LC101[2] = {101,0 }; // BEGIN VAR DEF: $LC102 .const .align 1 .u8 $LC102[2] = {102,0 }; // BEGIN VAR DEF: $LC103 .const .align 1 .u8 $LC103[2] = {103,0 }; // BEGIN VAR DEF: $LC104 .const .align 1 .u8 $LC104[2] = {104,0 }; // BEGIN VAR DEF: $LC105 .const .align 1 .u8 $LC105[2] = {105,0 }; // BEGIN VAR DEF: $LC106 .const .align 1 .u8 $LC106[2] = {106,0 }; // BEGIN VAR DEF: $LC107 .const .align 1 .u8 $LC107[2] = {107,0 }; // BEGIN VAR DEF: $LC108 .const .align 1 .u8 $LC108[2] = {108,0 }; // BEGIN VAR DEF: $LC109 .const .align 1 .u8 $LC109[2] = {109,0 }; // BEGIN VAR DEF: $LC60 .const .align 1 .u8 $LC60[2] = {60,0 }; // BEGIN VAR DEF: $LC61 .const .align 1 .u8 $LC61[2] = {61,0 }; // BEGIN VAR DEF: $LC62 .const .align 1 .u8 $LC62[2] = {62,0 }; // BEGIN VAR DEF: $LC63 .const .align 1 .u8 $LC63[2] = {63,0 }; // BEGIN VAR DEF: $LC64 .const .align 1 .u8 $LC64[2] = {64,0 }; // BEGIN VAR DEF: $LC65 .const .align 1 .u8 $LC65[2] = {65,0 }; // BEGIN VAR DEF: $LC66 .const .align 1 .u8 $LC66[2] = {66,0 }; // BEGIN VAR DEF: $LC67 .const .align 1 .u8 $LC67[2] = {67,0 }; // BEGIN VAR DEF: $LC68 .const .align 1 .u8 $LC68[2] = {68,0 }; // BEGIN VAR DEF: $LC69 .const .align 1 .u8 $LC69[2] = {69,0 }; // BEGIN VAR DEF: $LC183 .const .align 1 .u8 $LC183[5] = {48,120,98,55,0 }; // BEGIN VAR DEF: $LC184 .const .align 1 .u8 $LC184[5] = {48,120,98,56,0 }; // BEGIN VAR DEF: $LC185 .const .align 1 .u8 $LC185[5] = {48,120,98,57,0 }; // BEGIN VAR DEF: $LC186 .const .align 1 .u8 $LC186[5] = {48,120,98,97,0 }; // BEGIN VAR DEF: $LC187 .const .align 1 .u8 $LC187[5] = {48,120,98,98,0 }; // BEGIN VAR DEF: $LC188 .const .align 1 .u8 $LC188[5] = {48,120,98,99,0 }; // BEGIN VAR DEF: $LC189 .const .align 1 .u8 $LC189[5] = {48,120,98,100,0 }; // BEGIN VAR DEF: $LC220 .const .align 1 .u8 $LC220[5] = {48,120,100,99,0 }; // BEGIN VAR DEF: $LC221 .const .align 1 .u8 $LC221[5] = {48,120,100,100,0 }; // BEGIN VAR DEF: $LC222 .const .align 1 .u8 $LC222[5] = {48,120,100,101,0 }; // BEGIN VAR DEF: $LC223 .const .align 1 .u8 $LC223[5] = {48,120,100,102,0 }; // BEGIN VAR DEF: $LC224 .const .align 1 .u8 $LC224[5] = {48,120,101,48,0 }; // BEGIN VAR DEF: $LC225 .const .align 1 .u8 $LC225[5] = {48,120,101,49,0 }; // BEGIN VAR DEF: $LC226 .const .align 1 .u8 $LC226[5] = {48,120,101,50,0 }; // BEGIN VAR DEF: $LC227 .const .align 1 .u8 $LC227[5] = {48,120,101,51,0 }; // BEGIN VAR DEF: $LC228 .const .align 1 .u8 $LC228[5] = {48,120,101,52,0 }; // BEGIN VAR DEF: $LC229 .const .align 1 .u8 $LC229[5] = {48,120,101,53,0 }; // BEGIN VAR DEF: $LC172 .const .align 1 .u8 $LC172[5] = {48,120,97,99,0 }; // BEGIN VAR DEF: $LC150 .const .align 1 .u8 $LC150[5] = {48,120,57,54,0 }; // BEGIN VAR DEF: $LC151 .const .align 1 .u8 $LC151[5] = {48,120,57,55,0 }; // BEGIN VAR DEF: $LC152 .const .align 1 .u8 $LC152[5] = {48,120,57,56,0 }; // BEGIN VAR DEF: $LC110 .const .align 1 .u8 $LC110[2] = {110,0 }; // BEGIN VAR DEF: $LC111 .const .align 1 .u8 $LC111[2] = {111,0 }; // BEGIN VAR DEF: $LC112 .const .align 1 .u8 $LC112[2] = {112,0 }; // BEGIN VAR DEF: $LC113 .const .align 1 .u8 $LC113[2] = {113,0 }; // BEGIN VAR DEF: $LC114 .const .align 1 .u8 $LC114[2] = {114,0 }; // BEGIN VAR DEF: $LC115 .const .align 1 .u8 $LC115[2] = {115,0 }; // BEGIN VAR DEF: $LC116 .const .align 1 .u8 $LC116[2] = {116,0 }; // BEGIN VAR DEF: $LC117 .const .align 1 .u8 $LC117[2] = {117,0 }; // BEGIN VAR DEF: $LC118 .const .align 1 .u8 $LC118[2] = {118,0 }; // BEGIN VAR DEF: $LC119 .const .align 1 .u8 $LC119[2] = {119,0 }; // BEGIN VAR DEF: $LC177 .const .align 1 .u8 $LC177[5] = {48,120,98,49,0 }; // BEGIN VAR DEF: $LC190 .const .align 1 .u8 $LC190[5] = {48,120,98,101,0 }; // BEGIN VAR DEF: $LC192 .const .align 1 .u8 $LC192[5] = {48,120,99,48,0 }; // BEGIN VAR DEF: $LC191 .const .align 1 .u8 $LC191[5] = {48,120,98,102,0 }; // BEGIN VAR DEF: $LC70 .const .align 1 .u8 $LC70[2] = {70,0 }; // BEGIN VAR DEF: $LC71 .const .align 1 .u8 $LC71[2] = {71,0 }; // BEGIN VAR DEF: $LC72 .const .align 1 .u8 $LC72[2] = {72,0 }; // BEGIN VAR DEF: $LC73 .const .align 1 .u8 $LC73[2] = {73,0 }; // BEGIN VAR DEF: $LC74 .const .align 1 .u8 $LC74[2] = {74,0 }; // BEGIN VAR DEF: $LC75 .const .align 1 .u8 $LC75[2] = {75,0 }; // BEGIN VAR DEF: $LC76 .const .align 1 .u8 $LC76[2] = {76,0 }; // BEGIN VAR DEF: $LC77 .const .align 1 .u8 $LC77[2] = {77,0 }; // BEGIN VAR DEF: $LC78 .const .align 1 .u8 $LC78[2] = {78,0 }; // BEGIN VAR DEF: $LC79 .const .align 1 .u8 $LC79[2] = {79,0 }; // BEGIN VAR DEF: $LC193 .const .align 1 .u8 $LC193[5] = {48,120,99,49,0 }; // BEGIN VAR DEF: $LC194 .const .align 1 .u8 $LC194[5] = {48,120,99,50,0 }; // BEGIN VAR DEF: $LC195 .const .align 1 .u8 $LC195[5] = {48,120,99,51,0 }; // BEGIN VAR DEF: $LC196 .const .align 1 .u8 $LC196[5] = {48,120,99,52,0 }; // BEGIN VAR DEF: $LC197 .const .align 1 .u8 $LC197[5] = {48,120,99,53,0 }; // BEGIN VAR DEF: $LC198 .const .align 1 .u8 $LC198[5] = {48,120,99,54,0 }; // BEGIN VAR DEF: $LC199 .const .align 1 .u8 $LC199[5] = {48,120,99,55,0 }; // BEGIN VAR DEF: $LC230 .const .align 1 .u8 $LC230[5] = {48,120,101,54,0 }; // BEGIN VAR DEF: $LC231 .const .align 1 .u8 $LC231[5] = {48,120,101,55,0 }; // BEGIN VAR DEF: $LC232 .const .align 1 .u8 $LC232[5] = {48,120,101,56,0 }; // BEGIN VAR DEF: $LC233 .const .align 1 .u8 $LC233[5] = {48,120,101,57,0 }; // BEGIN VAR DEF: $LC234 .const .align 1 .u8 $LC234[5] = {48,120,101,97,0 }; // BEGIN VAR DEF: $LC235 .const .align 1 .u8 $LC235[5] = {48,120,101,98,0 }; // BEGIN VAR DEF: $LC236 .const .align 1 .u8 $LC236[5] = {48,120,101,99,0 }; // BEGIN VAR DEF: $LC237 .const .align 1 .u8 $LC237[5] = {48,120,101,100,0 }; // BEGIN VAR DEF: $LC238 .const .align 1 .u8 $LC238[5] = {48,120,101,101,0 }; // BEGIN VAR DEF: $LC239 .const .align 1 .u8 $LC239[5] = {48,120,101,102,0 }; // BEGIN GLOBAL VAR DEF: __unctrl .visible .const .align 8 .u64 __unctrl[256] = {generic($LC0),generic($LC1),generic($LC2),generic($LC3),generic($LC4),generic($LC5),generic($LC6),generic($LC7),generic($LC8),generic($LC9),generic($LC10),generic($LC11),generic($LC12),generic($LC13),generic($LC14),generic($LC15),generic($LC16),generic($LC17),generic($LC18),generic($LC19),generic($LC20),generic($LC21),generic($LC22),generic($LC23),generic($LC24),generic($LC25),generic($LC26),generic($LC27),generic($LC28),generic($LC29),generic($LC30),generic($LC31),generic($LC32),generic($LC33),generic($LC34),generic($LC35),generic($LC36),generic($LC37),generic($LC38),generic($LC39),generic($LC40),generic($LC41),generic($LC42),generic($LC43),generic($LC44),generic($LC45),generic($LC46),generic($LC47),generic($LC48),generic($LC49),generic($LC50),generic($LC51),generic($LC52),generic($LC53),generic($LC54),generic($LC55),generic($LC56),generic($LC57),generic($LC58),generic($LC59),generic($LC60),generic($LC61),generic($LC62),generic($LC63),generic($LC64),generic($LC65),generic($LC66),generic($LC67),generic($LC68),generic($LC69),generic($LC70),generic($LC71),generic($LC72),generic($LC73),generic($LC74),generic($LC75),generic($LC76),generic($LC77),generic($LC78),generic($LC79),generic($LC80),generic($LC81),generic($LC82),generic($LC83),generic($LC84),generic($LC85),generic($LC86),generic($LC87),generic($LC88),generic($LC89),generic($LC90),generic($LC91),generic($LC92),generic($LC93),generic($LC94),generic($LC95),generic($LC96),generic($LC97),generic($LC98),generic($LC99),generic($LC100),generic($LC101),generic($LC102),generic($LC103),generic($LC104),generic($LC105),generic($LC106),generic($LC107),generic($LC108),generic($LC109),generic($LC110),generic($LC111),generic($LC112),generic($LC113),generic($LC114),generic($LC115),generic($LC116),generic($LC117),generic($LC118),generic($LC119),generic($LC120),generic($LC121),generic($LC122),generic($LC123),generic($LC124),generic($LC125),generic($LC126),generic($LC127),generic($LC128),generic($LC129),generic($LC130),generic($LC131),generic($LC132),generic($LC133),generic($LC134),generic($LC135),generic($LC136),generic($LC137),generic($LC138),generic($LC139),generic($LC140),generic($LC141),generic($LC142),generic($LC143),generic($LC144),generic($LC145),generic($LC146),generic($LC147),generic($LC148),generic($LC149),generic($LC150),generic($LC151),generic($LC152),generic($LC153),generic($LC154),generic($LC155),generic($LC156),generic($LC157),generic($LC158),generic($LC159),generic($LC160),generic($LC161),generic($LC162),generic($LC163),generic($LC164),generic($LC165),generic($LC166),generic($LC167),generic($LC168),generic($LC169),generic($LC170),generic($LC171),generic($LC172),generic($LC173),generic($LC174),generic($LC175),generic($LC176),generic($LC177),generic($LC178),generic($LC179),generic($LC180),generic($LC181),generic($LC182),generic($LC183),generic($LC184),generic($LC185),generic($LC186),generic($LC187),generic($LC188),generic($LC189),generic($LC190),generic($LC191),generic($LC192),generic($LC193),generic($LC194),generic($LC195),generic($LC196),generic($LC197),generic($LC198),generic($LC199),generic($LC200),generic($LC201),generic($LC202),generic($LC203),generic($LC204),generic($LC205),generic($LC206),generic($LC207),generic($LC208),generic($LC209),generic($LC210),generic($LC211),generic($LC212),generic($LC213),generic($LC214),generic($LC215),generic($LC216),generic($LC217),generic($LC218),generic($LC219),generic($LC220),generic($LC221),generic($LC222),generic($LC223),generic($LC224),generic($LC225),generic($LC226),generic($LC227),generic($LC228),generic($LC229),generic($LC230),generic($LC231),generic($LC232),generic($LC233),generic($LC234),generic($LC235),generic($LC236),generic($LC237),generic($LC238),generic($LC239),generic($LC240),generic($LC241),generic($LC242),generic($LC243),generic($LC244),generic($LC245),generic($LC246),generic($LC247),generic($LC248),generic($LC249),generic($LC250),generic($LC251),generic($LC252),generic($LC253),generic($LC254),generic($LC255) }; lib_a-ungetc.o/ 0 0 0 644 8910 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __submore .visible .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/ungetc.c" // BEGIN GLOBAL FUNCTION DECL: _ungetc_r .visible .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: ungetc .visible .func (.param .u32 %value_out) ungetc (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __submore .visible .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r59; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; .loc 1 86 14 ld.u64 %r22,[%r37+88]; .loc 1 86 21 add.u64 %r38,%r37,116; .loc 1 86 6 setp.ne.u64 %r39,%r22,%r38; @ %r39 bra $L2; .loc 1 91 34 mov.u64 %r41,1024; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r42,[%value_in]; } .loc 1 91 10 setp.ne.u64 %r43,%r42,0; @ %r43 bra $L3; $L5: .loc 1 92 9 mov.u32 %r35,-1; bra $L1; $L3: .loc 1 93 21 st.u64 [%r37+88],%r42; .loc 1 94 21 mov.u32 %r44,1024; st.u32 [%r37+96],%r44; .loc 1 97 7 ld.u8 %r45,[%r37+118]; st.u8 [%r42+1023],%r45; ld.u8 %r46,[%r37+117]; st.u8 [%r42+1022],%r46; ld.u8 %r47,[%r37+116]; st.u8 [%r42+1021],%r47; .loc 1 95 9 add.u64 %r48,%r42,1021; .loc 1 98 14 st.u64 [%r37],%r48; .loc 1 99 14 mov.u32 %r35,0; bra $L1; $L2: .loc 1 101 5 ld.u32 %r28,[%r37+96]; .loc 1 102 71 add.u32 %r49,%r28,%r28; .loc 1 102 25 cvt.s64.s32 %r53,%r49; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r53; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r54,[%value_in]; } .loc 1 103 6 setp.eq.u64 %r55,%r54,0; @ %r55 bra $L5; .loc 1 105 10 cvt.s64.s32 %r26,%r28; .loc 1 105 30 add.u64 %r27,%r54,%r26; .loc 1 105 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r59,[%value_in]; } .loc 1 106 10 st.u64 [%r37],%r27; .loc 1 107 17 st.u64 [%r37+88],%r54; .loc 1 108 17 st.u32 [%r37+96],%r49; .loc 1 109 10 mov.u32 %r35,0; $L1: .loc 1 110 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ungetc_r .visible .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u32 %r26; .reg .u64 %r34; .reg .u64 %r38; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .pred %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r60; .reg .u16 %r61; .reg .pred %r62; .reg .u16 %r63; .reg .u32 %r65; .reg .u32 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .u16 %r70; .reg .pred %r72; .reg .u16 %r73; .reg .pred %r75; .reg .u16 %r76; .reg .pred %r78; .reg .u32 %r81; .reg .pred %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .u16 %r87; .reg .u16 %r88; .reg .u32 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r104; .reg .pred %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u64 %r111; .reg .u32 %r112; mov.u64 %r52,%ar0; mov.u32 %r53,%ar1; mov.u64 %r54,%ar2; .loc 1 117 6 setp.ne.u32 %r55,%r53,-1; @ %r55 bra $L10; $L15: .loc 1 118 12 mov.u32 %r51,-1; bra $L9; $L10: .loc 1 124 3 setp.eq.u64 %r56,%r52,0; @ %r56 bra $L12; ld.u32 %r57,[%r52+80]; setp.ne.u32 %r58,%r57,0; @ %r58 bra $L12; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; call __sinit,(%out_arg1); } $L12: .loc 1 128 3 ld.s16 %r24,[%r54+16]; cvt.u16.u32 %r61,%r24; and.b16 %r60,%r61,8192; setp.ne.u16 %r62,%r60,0; @ %r62 bra $L13; or.b16 %r63,%r61,8192; cvt.s32.s16 %r24,%r63; ld.u32 %r66,[%r54+172]; and.b32 %r65,%r66,-8193; st.u32 [%r54+172],%r65; $L13: .loc 1 131 14 cvt.u16.u32 %r68,%r24; and.b16 %r67,%r68,-33; cvt.s32.s16 %r26,%r67; st.u16 [%r54+16],%r67; .loc 1 133 6 and.b16 %r70,%r68,4; setp.ne.u16 %r72,%r70,0; @ %r72 bra $L14; .loc 1 139 10 and.b16 %r73,%r68,16; setp.eq.u16 %r75,%r73,0; @ %r75 bra $L15; .loc 1 144 10 and.b16 %r76,%r68,8; setp.eq.u16 %r78,%r76,0; @ %r78 bra $L16; .loc 1 146 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r81,[%value_in]; } .loc 1 146 7 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L15; .loc 1 151 15 ld.u16 %r84,[%r54+16]; and.b16 %r83,%r84,-9; cvt.s32.s16 %r26,%r83; .loc 1 152 11 st.u32 [%r54+12],%r81; .loc 1 153 17 st.u32 [%r54+40],%r81; $L16: .loc 1 155 18 cvt.u16.u32 %r88,%r26; or.b16 %r87,%r88,4; st.u16 [%r54+16],%r87; $L14: .loc 1 157 7 mov.u32 %r89,%r53; and.b32 %r51,%r53,255; .loc 1 166 13 ld.u32 %r50,[%r54+8]; .loc 1 164 6 ld.u64 %r90,[%r54+88]; setp.eq.u64 %r91,%r90,0; @ %r91 bra $L17; .loc 1 166 10 ld.u32 %r92,[%r54+96]; setp.le.s32 %r93,%r92,%r50; @ %r93 bra $L18; $L19: .loc 1 171 12 ld.u64 %r34,[%r54]; .loc 1 171 8 add.u64 %r94,%r34,-1; .loc 1 171 17 st.u64 [%r54],%r94; st.u8 [%r34+-1],%r89; .loc 1 172 13 ld.u32 %r97,[%r54+8]; add.u32 %r96,%r97,1; st.u32 [%r54+8],%r96; .loc 1 174 14 bra $L9; $L18: .loc 1 166 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r100,[%value_in]; } .loc 1 166 35 setp.ne.u32 %r101,%r100,0; @ ! %r101 bra $L19; bra $L15; $L17: .loc 1 183 14 ld.u64 %r38,[%r54+24]; .loc 1 183 34 ld.u64 %r49,[%r54]; .loc 1 183 6 setp.eq.u64 %r102,%r38,0; @ %r102 bra $L20; .loc 1 183 29 setp.ge.u64 %r103,%r38,%r49; @ %r103 bra $L20; .loc 1 183 64 ld.u8 %r104,[%r49+-1]; .loc 1 183 55 setp.ne.u32 %r105,%r104,%r51; @ %r105 bra $L20; .loc 1 185 13 add.u64 %r106,%r49,-1; st.u64 [%r54],%r106; .loc 1 186 13 add.u32 %r107,%r50,1; st.u32 [%r54+8],%r107; .loc 1 188 14 bra $L9; $L20: .loc 1 196 11 st.u32 [%r54+112],%r50; .loc 1 197 11 st.u64 [%r54+104],%r49; .loc 1 198 19 add.u64 %r108,%r54,116; .loc 1 198 17 st.u64 [%r54+88],%r108; .loc 1 199 17 mov.u32 %r109,3; st.u32 [%r54+96],%r109; .loc 1 200 37 st.u8 [%r54+118],%r89; .loc 1 201 12 add.u64 %r111,%r54,118; .loc 1 201 10 st.u64 [%r54],%r111; .loc 1 202 10 mov.u32 %r112,1; st.u32 [%r54+8],%r112; $L9: .loc 1 205 1 mov.u32 %value,%r51; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ungetc .visible .func (.param .u32 %value_out) ungetc (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 212 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 213 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-unlinkr.o/0 0 0 644 1319 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _unlink_r .visible .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/reent/unlinkr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: unlink .extern .func (.param .u32 %value_out) unlink (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _unlink_r .visible .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 46 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 47 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),unlink,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 47 6 setp.ne.u32 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 47 45 ld.global.u32 %r22,[errno]; .loc 1 47 36 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 48 17 st.u32 [%r24],%r22; $L1: .loc 1 50 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-utoa.o/ 0 0 0 644 4091 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __utoa .visible .func (.param .u64 %value_out) __utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/utoa.c" // BEGIN GLOBAL FUNCTION DECL: utoa .visible .func (.param .u64 %value_out) utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[37] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,0 }; // BEGIN GLOBAL FUNCTION DEF: __utoa .visible .func (.param .u64 %value_out) __utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u32 %r38; .reg .u64 %r44; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; mov.u32 %r47,%ar0; mov.u64 %r48,%ar1; mov.u32 %r49,%ar2; .loc 1 35 14 cvta.const.u64 %r51,$LC0; mov.u64 %r52,37; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r52; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r56,[%value_in]; } .loc 1 41 18 add.u32 %r58,%r49,-2; .loc 1 41 6 setp.le.u32 %r59,%r58,34; @ %r59 bra $L2; .loc 1 43 14 mov.u32 %r60,0; st.u8 [%r48],%r60; .loc 1 44 14 mov.u64 %r46,0; bra $L1; $L2: mov.u64 %r35,%r48; .loc 1 41 6 mov.u64 %r44,%r48; .loc 1 48 5 mov.u32 %r29,0; $L4: mov.u32 %r38,%r29; .loc 1 52 12 add.u32 %r29,%r38,1; .loc 1 51 17 rem.u32 %r62,%r47,%r49; .loc 1 52 24 cvt.u64.u32 %r63,%r62; add.u64 %r64,%frame,%r63; .loc 1 52 16 ld.u8 %r65,[%r64]; st.u8 [%r44],%r65; mov.u32 %r31,%r47; .loc 1 53 13 div.u32 %r47,%r47,%r49; .loc 1 54 20 add.u64 %r44,%r44,1; setp.le.u32 %r66,%r49,%r31; @ %r66 bra $L4; .loc 1 55 6 cvt.s64.s32 %r67,%r29; .loc 1 55 10 add.u64 %r68,%r48,%r67; mov.u32 %r69,0; st.u8 [%r68],%r69; .loc 1 58 22 setp.eq.u32 %r70,%r38,0; @ %r70 bra $L5; cvt.s64.s32 %r71,%r38; add.u64 %r30,%r48,%r71; mov.u32 %r34,%r38; $L6: .loc 1 60 9 ld.s8 %r33,[%r35]; .loc 1 61 14 ld.u8 %r72,[%r30]; st.u8 [%r35],%r72; .loc 1 62 14 cvt.u32.u32 %r73,%r33; st.u8 [%r30],%r73; .loc 1 58 33 add.u32 %r34,%r34,-1; .loc 1 58 22 add.u64 %r35,%r35,1; add.u64 %r30,%r30,-1; sub.u32 %r74,%r38,%r34; setp.gt.s32 %r75,%r34,%r74; @ %r75 bra $L6; $L5: .loc 1 44 14 mov.u64 %r46,%r48; $L1: .loc 1 66 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: utoa .visible .func (.param .u64 %value_out) utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r29; mov.u32 %r23,%ar0; mov.u64 %r24,%ar1; mov.u32 %r25,%ar2; .loc 1 73 10 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r25; call (%value_in),__utoa,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r29,[%value_in]; } .loc 1 74 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } /1730 0 0 0 644 4119 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _vdiprintf_r .visible .func (.param .u32 %value_out) _vdiprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vdiprintf.c" // BEGIN GLOBAL FUNCTION DECL: vdiprintf .visible .func (.param .u32 %value_out) vdiprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vasniprintf_r .extern .func (.param .u64 %value_out) _vasniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _vdiprintf_r .visible .func (.param .u32 %value_out) _vdiprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[528]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; mov.u64 %r27,%ar0; mov.u32 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; .loc 1 23 10 mov.u64 %r31,512; st.u64 [%frame+512],%r31; .loc 1 26 7 add.u64 %r37,%frame,512; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r30; call (%value_in),_vasniprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r38,[%value_in]; } .loc 1 27 6 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L4; .loc 1 29 7 ld.u64 %r44,[%frame+512]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r38; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r44; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r45,[%value_in]; } mov.u64 %r24,%r45; .loc 1 29 5 st.u64 [%frame+512],%r24; .loc 1 30 6 setp.eq.u64 %r46,%frame,%r38; @ %r46 bra $L3; .loc 1 31 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call _free_r,(%out_arg1,%out_arg2); } .loc 1 32 10 ld.u64 %r24,[%frame+512]; $L3: cvt.u32.u64 %r26,%r24; bra $L1; $L4: .loc 1 28 12 mov.u32 %r26,-1; $L1: .loc 1 33 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vdiprintf .visible .func (.param .u32 %value_out) vdiprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 42 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vdiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 43 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1749 0 0 0 644 4106 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _vdprintf_r .visible .func (.param .u32 %value_out) _vdprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vdprintf.c" // BEGIN GLOBAL FUNCTION DECL: vdprintf .visible .func (.param .u32 %value_out) vdprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vasnprintf_r .extern .func (.param .u64 %value_out) _vasnprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _vdprintf_r .visible .func (.param .u32 %value_out) _vdprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[528]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; mov.u64 %r27,%ar0; mov.u32 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; .loc 1 23 10 mov.u64 %r31,512; st.u64 [%frame+512],%r31; .loc 1 26 7 add.u64 %r37,%frame,512; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r30; call (%value_in),_vasnprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r38,[%value_in]; } .loc 1 27 6 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L4; .loc 1 29 7 ld.u64 %r44,[%frame+512]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r38; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r44; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r45,[%value_in]; } mov.u64 %r24,%r45; .loc 1 29 5 st.u64 [%frame+512],%r24; .loc 1 30 6 setp.eq.u64 %r46,%frame,%r38; @ %r46 bra $L3; .loc 1 31 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call _free_r,(%out_arg1,%out_arg2); } .loc 1 32 10 ld.u64 %r24,[%frame+512]; $L3: cvt.u32.u64 %r26,%r24; bra $L1; $L4: .loc 1 28 12 mov.u32 %r26,-1; $L1: .loc 1 33 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vdprintf .visible .func (.param .u32 %value_out) vdprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 48 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vdprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 49 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1767 0 0 0 644 53328 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: __sprint_r$part$0 .func (.param .u32 %value_out) __sprint_r$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: __sprint_r .visible .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .visible .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: vfiprintf .visible .func (.param .u32 %value_out) vfiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fputwc_r .extern .func (.param .u32 %value_out) _fputwc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .extern .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN FUNCTION DEF: __sprint_r$part$0 .func (.param .u32 %value_out) __sprint_r$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .pred %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r67; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u64 %r75; mov.u64 %r43,%ar0; mov.u64 %r44,%ar1; mov.u64 %r45,%ar2; .loc 1 410 18 ld.u32 %r47,[%r44+172]; and.b32 %r46,%r47,8192; .loc 1 410 5 setp.eq.u32 %r48,%r46,0; @ %r48 bra $L2; .loc 1 415 7 ld.u64 %r24,[%r45]; .loc 1 416 25 ld.u64 %r75,[%r45+16]; setp.ne.u64 %r50,%r75,0; @ %r50 bra $L3; $L7: .loc 1 403 15 mov.u32 %r42,0; bra $L4; $L3: .loc 1 418 6 ld.u64 %r25,[%r24]; .loc 1 419 23 ld.u64 %r51,[%r24+8]; shr.u64 %r27,%r51,2; .loc 1 419 8 cvt.u32.u64 %r28,%r27; .loc 1 420 18 setp.le.s32 %r52,%r28,0; @ %r52 bra $L5; mov.u64 %r41,%r25; add.u32 %r54,%r28,-1; cvt.u64.u32 %r55,%r54; shl.b64 %r56,%r55,2; add.u64 %r57,%r41,4; add.u64 %r29,%r56,%r57; $L6: .loc 1 421 9 ld.u32 %r59,[%r41]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r59; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r44; call (%value_in),_fputwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r61,[%value_in]; } .loc 1 421 8 setp.eq.u32 %r62,%r61,-1; @ %r62 bra $L8; .loc 1 420 18 add.u64 %r41,%r41,4; setp.ne.u64 %r63,%r29,%r41; @ %r63 bra $L6; ld.u64 %r75,[%r45+16]; $L5: .loc 1 417 30 cvt.s64.s32 %r64,%r28; shl.b64 %r65,%r64,2; .loc 1 417 23 sub.u64 %r75,%r75,%r65; st.u64 [%r45+16],%r75; .loc 1 417 53 add.u64 %r24,%r24,16; .loc 1 416 25 setp.ne.u64 %r67,%r75,0; @ %r67 bra $L3; bra $L7; $L2: .loc 1 429 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r71,[%value_in]; } mov.u32 %r42,%r71; bra $L4; $L8: .loc 1 422 10 mov.u32 %r42,%r61; $L4: .loc 1 431 17 mov.u64 %r72,0; st.u64 [%r45+16],%r72; .loc 1 432 18 mov.u32 %r73,0; st.u32 [%r45+8],%r73; .loc 1 434 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sprint_r .visible .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .u32 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 405 5 ld.u64 %r27,[%r26+16]; setp.ne.u64 %r28,%r27,0; @ %r28 bra $L13; .loc 1 406 19 mov.u32 %r29,0; st.u32 [%r26+8],%r29; .loc 1 407 10 mov.u32 %r23,%r29; bra $L12; $L13: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r33,[%value_in]; } mov.u32 %r23,%r33; $L12: .loc 1 434 1 mov.u32 %value,%r23; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfiprintf_r .visible .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[208]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r34; .reg .u64 %r36; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r53; .reg .u32 %r89; .reg .u32 %r102; .reg .u32 %r103; .reg .u64 %r105; .reg .u64 %r107; .reg .u32 %r108; .reg .u64 %r109; .reg .u32 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r115; .reg .u64 %r116; .reg .u32 %r120; .reg .u64 %r121; .reg .u32 %r122; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .u32 %r133; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u64 %r143; .reg .u64 %r144; .reg .u32 %r146; .reg .u64 %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u32 %r152; .reg .u32 %r154; .reg .u32 %r155; .reg .u64 %r168; .reg .u64 %r175; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r185; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r193; .reg .u64 %r194; .reg .u64 %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r207; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r215; .reg .u64 %r216; .reg .u32 %r217; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r234; .reg .u32 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .pred %r248; .reg .u32 %r249; .reg .pred %r250; .reg .u16 %r252; .reg .u16 %r253; .reg .pred %r254; .reg .u16 %r255; .reg .u32 %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .pred %r261; .reg .u64 %r262; .reg .pred %r263; .reg .u32 %r266; .reg .pred %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .pred %r270; .reg .u16 %r271; .reg .pred %r272; .reg .u32 %r277; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u16 %r281; .reg .u32 %r282; .reg .u32 %r283; .reg .u32 %r284; .reg .u32 %r286; .reg .u32 %r287; .reg .u16 %r288; .reg .u16 %r289; .reg .u16 %r290; .reg .u32 %r291; .reg .u16 %r292; .reg .pred %r293; .reg .u32 %r294; .reg .u16 %r295; .reg .u32 %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r300; .reg .u32 %r301; .reg .u16 %r302; .reg .u16 %r303; .reg .u16 %r304; .reg .u32 %r305; .reg .u16 %r306; .reg .pred %r307; .reg .u64 %r308; .reg .pred %r309; .reg .u64 %r310; .reg .u32 %r311; .reg .pred %r312; .reg .pred %r313; .reg .u32 %r314; .reg .u32 %r319; .reg .pred %r320; .reg .pred %r321; .reg .u32 %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .pred %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .pred %r331; .reg .pred %r332; .reg .pred %r333; .reg .pred %r334; .reg .pred %r335; .reg .u32 %r336; .reg .pred %r337; .reg .pred %r338; .reg .pred %r339; .reg .pred %r340; .reg .pred %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .pred %r351; .reg .pred %r352; .reg .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r358; .reg .pred %r359; .reg .pred %r360; .reg .pred %r361; .reg .pred %r362; .reg .u32 %r363; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .u32 %r370; .reg .u32 %r371; .reg .u32 %r372; .reg .pred %r375; .reg .u16 %r376; .reg .pred %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .pred %r380; .reg .u32 %r381; .reg .u32 %r382; .reg .pred %r383; .reg .u32 %r384; .reg .pred %r385; .reg .u32 %r386; .reg .pred %r387; .reg .u16 %r388; .reg .pred %r391; .reg .pred %r392; .reg .u32 %r393; .reg .u64 %r394; .reg .u32 %r395; .reg .pred %r396; .reg .u64 %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u32 %r401; .reg .pred %r402; .reg .u32 %r403; .reg .pred %r404; .reg .u32 %r405; .reg .pred %r406; .reg .u32 %r407; .reg .pred %r408; .reg .u16 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .pred %r413; .reg .pred %r414; .reg .u32 %r416; .reg .u64 %r418; .reg .u64 %r419; .reg .pred %r420; .reg .u64 %r421; .reg .u64 %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .pred %r427; .reg .u32 %r428; .reg .pred %r429; .reg .u16 %r430; .reg .pred %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u32 %r435; .reg .pred %r436; .reg .u32 %r437; .reg .pred %r438; .reg .u16 %r439; .reg .u32 %r440; .reg .pred %r441; .reg .pred %r442; .reg .u32 %r443; .reg .u32 %r444; .reg .pred %r445; .reg .u32 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u16 %r452; .reg .u16 %r453; .reg .u16 %r454; .reg .u32 %r455; .reg .u16 %r456; .reg .pred %r457; .reg .pred %r458; .reg .pred %r459; .reg .u32 %r460; .reg .u16 %r461; .reg .u16 %r462; .reg .u32 %r463; .reg .u16 %r464; .reg .u16 %r465; .reg .u32 %r466; .reg .pred %r468; .reg .u32 %r469; .reg .u16 %r470; .reg .u32 %r471; .reg .u32 %r472; .reg .u32 %r473; .reg .u16 %r474; .reg .u16 %r475; .reg .u32 %r476; .reg .u16 %r477; .reg .u16 %r478; .reg .u16 %r479; .reg .u32 %r480; .reg .u16 %r481; .reg .pred %r482; .reg .u64 %r485; .reg .u32 %r486; .reg .u64 %r489; .reg .pred %r490; .reg .u32 %r491; .reg .u16 %r492; .reg .u16 %r493; .reg .u64 %r495; .reg .u32 %r496; .reg .u16 %r497; .reg .u16 %r498; .reg .pred %r501; .reg .u64 %r504; .reg .u64 %r505; .reg .u64 %r506; .reg .u32 %r507; .reg .pred %r508; .reg .u64 %r511; .reg .pred %r512; .reg .pred %r513; .reg .u32 %r514; .reg .pred %r515; .reg .u32 %r516; .reg .pred %r517; .reg .u32 %r518; .reg .u16 %r519; .reg .u32 %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .u64 %r527; .reg .pred %r528; .reg .pred %r529; .reg .u32 %r535; .reg .pred %r536; .reg .pred %r537; .reg .pred %r539; .reg .pred %r540; .reg .u16 %r542; .reg .u32 %r543; .reg .pred %r544; .reg .u32 %r549; .reg .pred %r550; .reg .u16 %r551; .reg .u32 %r552; .reg .pred %r553; .reg .u64 %r555; .reg .pred %r556; .reg .pred %r557; .reg .pred %r559; .reg .u32 %r564; .reg .pred %r565; .reg .pred %r566; .reg .u64 %r568; .reg .pred %r569; .reg .pred %r570; .reg .u32 %r576; .reg .pred %r577; .reg .pred %r578; .reg .pred %r579; .reg .pred %r580; .reg .u64 %r582; .reg .pred %r583; .reg .pred %r584; .reg .u32 %r590; .reg .pred %r591; .reg .pred %r592; .reg .pred %r594; .reg .pred %r595; .reg .u32 %r601; .reg .pred %r602; .reg .pred %r603; .reg .pred %r604; .reg .u64 %r606; .reg .pred %r607; .reg .pred %r608; .reg .u32 %r614; .reg .pred %r615; .reg .pred %r616; .reg .pred %r618; .reg .pred %r619; .reg .u32 %r620; .reg .u32 %r625; .reg .pred %r626; .reg .u32 %r627; .reg .pred %r628; .reg .pred %r629; .reg .u32 %r630; .reg .u32 %r631; .reg .pred %r632; .reg .u32 %r637; .reg .pred %r638; .reg .u32 %r639; .reg .pred %r640; .reg .pred %r641; .reg .pred %r642; .reg .u64 %r644; .reg .pred %r645; .reg .pred %r646; .reg .u32 %r652; .reg .pred %r653; .reg .pred %r654; .reg .pred %r656; .reg .pred %r657; .reg .u32 %r658; .reg .u32 %r663; .reg .pred %r664; .reg .u32 %r665; .reg .pred %r666; .reg .u32 %r671; .reg .pred %r672; .reg .u32 %r673; .reg .u64 %r674; .reg .pred %r675; .reg .u64 %r679; .reg .u32 %r680; .reg .u16 %r681; .reg .u16 %r682; .reg .pred %r683; .reg .u32 %r685; .reg .pred %r686; .reg .u32 %r687; .reg .pred %r688; .reg .u64 %r690; .reg .u64 %r694; .reg .pred %r697; .reg .u32 %r698; .reg .u32 %r699; .reg .u32 %r700; .reg .u32 %r701; .reg .u32 %r702; .reg .u32 %r703; .reg .u16 %r704; .reg .u16 %r705; .reg .u16 %r706; .reg .u32 %r707; .reg .u16 %r708; .reg .pred %r709; .reg .u64 %r711; .reg .pred %r714; .reg .u32 %r715; .reg .u64 %r717; .reg .u64 %r718; .reg .u32 %r719; .reg .u32 %r735; .reg .u64 %r736; .reg .u64 %r737; .reg .u64 %r738; .reg .u16 %r744; mov.u64 %r236,%ar0; mov.u64 %r237,%ar1; mov.u64 %r238,%ar2; mov.u64 %r239,%ar3; .loc 1 848 2 setp.eq.u64 %r248,%r236,0; @ %r248 bra $L16; ld.u32 %r249,[%r236+80]; setp.ne.u32 %r250,%r249,0; @ %r250 bra $L16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; call __sinit,(%out_arg1); } $L16: .loc 1 851 2 ld.s16 %r24,[%r237+16]; cvt.u16.u32 %r253,%r24; and.b16 %r252,%r253,8192; setp.ne.u16 %r254,%r252,0; @ %r254 bra $L17; .loc 1 849 2 ld.u32 %r23,[%r237+172]; .loc 1 851 2 or.b16 %r255,%r253,8192; cvt.s32.s16 %r24,%r255; st.u16 [%r237+16],%r255; and.b32 %r258,%r23,-8193; st.u32 [%r237+172],%r258; $L17: .loc 1 854 5 cvt.u16.u32 %r260,%r24; and.b16 %r259,%r260,8; setp.eq.u16 %r261,%r259,0; @ %r261 bra $L18; .loc 1 854 6 ld.u64 %r262,[%r237+24]; setp.ne.u64 %r263,%r262,0; @ %r263 bra $L19; $L18: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r266,[%value_in]; } setp.eq.u32 %r267,%r266,0; @ %r267 bra $L20; $L164: .loc 1 856 10 mov.u32 %r235,-1; bra $L15; $L20: .loc 1 861 9 ld.s16 %r24,[%r237+16]; $L19: .loc 1 861 5 cvt.u16.u32 %r269,%r24; and.b16 %r268,%r269,26; setp.ne.u16 %r270,%r268,10; @ %r270 bra $L22; .loc 1 861 60 ld.u16 %r271,[%r237+18]; setp.lt.s16 %r272,%r271,0; @ %r272 bra $L22; .loc 1 864 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r238; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r239; call (%value_in),__sbprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r277,[%value_in]; } mov.u32 %r235,%r277; bra $L15; $L22: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r278,0; st.u64 [%frame+184],%r278; .loc 1 885 17 mov.u32 %r279,0; st.u32 [%frame+176],%r279; .loc 1 883 21 mov.u64 %r131,%frame; .loc 1 707 8 mov.u64 %r25,%r278; .loc 1 887 6 mov.u32 %r235,%r279; add.u64 %r736,%frame,168; .loc 1 1687 4 add.u64 %r737,%frame,192; .loc 1 1685 4 add.u64 %r738,%frame,194; $L23: .loc 1 914 24 ld.s8 %r138,[%r238]; .loc 1 914 37 cvt.u16.u32 %r281,%r138; set.u32.ne.u16 %r282,%r281,0; neg.s32 %r283,%r282; mov.u32 %r280,%r283; set.u32.ne.u16 %r286,%r281,37; neg.s32 %r287,%r286; mov.u32 %r284,%r287; cvt.u16.u8 %r744,%r280; mov.u16 %r289,%r744; cvt.u16.u8 %r744,%r284; mov.u16 %r290,%r744; and.b16 %r288,%r289,%r290; cvt.u32.u16 %r291,%r288; cvt.u16.u8 %r292,%r291; setp.eq.u16 %r293,%r292,0; @ %r293 bra $L175; mov.u64 %r107,%r238; $L25: mov.u64 %r144,%r107; .loc 1 915 25 add.u64 %r107,%r107,1; .loc 1 914 24 ld.s8 %r138,[%r107]; .loc 1 914 37 cvt.u16.u32 %r295,%r138; set.u32.ne.u16 %r296,%r295,0; neg.s32 %r297,%r296; mov.u32 %r294,%r297; set.u32.ne.u16 %r300,%r295,37; neg.s32 %r301,%r300; mov.u32 %r298,%r301; cvt.u16.u8 %r744,%r294; mov.u16 %r303,%r744; cvt.u16.u8 %r744,%r298; mov.u16 %r304,%r744; and.b16 %r302,%r303,%r304; cvt.u32.u16 %r305,%r302; cvt.u16.u8 %r306,%r305; setp.ne.u16 %r307,%r306,0; @ %r307 bra $L25; .loc 1 917 16 sub.u64 %r308,%r107,%r238; .loc 1 917 10 cvt.u32.u64 %r139,%r308; .loc 1 917 6 setp.eq.u32 %r309,%r139,0; @ %r309 bra $L24; .loc 1 918 4 st.u64 [%r131],%r238; cvt.s64.s32 %r34,%r139; st.u64 [%r131+8],%r34; ld.u64 %r310,[%frame+184]; add.u64 %r36,%r34,%r310; st.u64 [%frame+184],%r36; ld.u32 %r311,[%frame+176]; add.u32 %r38,%r311,1; st.u32 [%frame+176],%r38; setp.gt.s32 %r312,%r38,7; @ %r312 bra $L26; add.u64 %r131,%r131,16; bra $L27; $L26: .loc 1 405 5 setp.ne.u64 %r313,%r36,0; @ %r313 bra $L28; .loc 1 406 19 mov.u32 %r314,0; st.u32 [%frame+176],%r314; .loc 1 918 4 mov.u64 %r131,%frame; bra $L27; $L28: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r319,[%value_in]; } setp.ne.u32 %r320,%r319,0; @ %r320 bra $L29; mov.u64 %r131,%frame; $L27: .loc 1 919 8 add.u32 %r235,%r235,%r139; .loc 1 925 21 ld.s8 %r138,[%r144+1]; bra $L24; $L175: .loc 1 914 37 mov.u64 %r107,%r238; $L24: .loc 1 925 20 setp.eq.u32 %r321,%r138,0; @ %r321 bra $L30; .loc 1 929 6 add.u64 %r238,%r107,1; .loc 1 935 8 mov.u32 %r322,0; st.u8 [%frame+194],%r322; .loc 1 947 14 ld.s8 %r222,[%r107+1]; mov.u32 %r152,0; mov.u32 %r154,%r152; .loc 1 934 8 mov.u32 %r126,-1; .loc 1 933 9 mov.u32 %r125,%r152; .loc 1 931 9 mov.u32 %r122,%r152; .loc 1 1060 6 mov.u32 %r735,%r152; $L31: .loc 1 947 18 add.u64 %r238,%r238,1; .loc 1 947 12 mov.u32 %r120,%r222; $L32: .loc 1 948 11 setp.eq.u32 %r323,%r120,88; @ %r323 bra $L33; setp.gt.s32 %r324,%r120,88; @ %r324 bra $L34; setp.eq.u32 %r325,%r120,46; @ %r325 bra $L35; setp.gt.s32 %r326,%r120,46; @ %r326 bra $L36; setp.eq.u32 %r327,%r120,42; @ %r327 bra $L37; setp.gt.s32 %r328,%r120,42; @ %r328 bra $L38; setp.eq.u32 %r329,%r120,32; @ %r329 bra $L39; setp.eq.u32 %r330,%r120,35; @ %r330 bra $L40; bra $L270; $L38: setp.eq.u32 %r331,%r120,43; @ %r331 bra $L42; setp.eq.u32 %r332,%r120,45; @ %r332 bra $L43; bra $L44; $L36: setp.eq.u32 %r333,%r120,68; @ %r333 bra $L45; setp.gt.s32 %r334,%r120,68; @ %r334 bra $L46; setp.eq.u32 %r335,%r120,48; @ %r335 bra $L47; add.u32 %r336,%r120,-49; setp.gt.u32 %r337,%r336,8; @ %r337 bra $L44; mov.u64 %r178,%r238; .loc 1 1077 6 mov.u32 %r125,0; add.u32 %r715,%r120,-48; bra $L48; $L46: .loc 1 948 11 setp.eq.u32 %r338,%r120,79; @ %r338 bra $L49; setp.eq.u32 %r339,%r120,85; @ %r339 bra $L50; bra $L44; $L34: setp.eq.u32 %r340,%r120,111; @ %r340 bra $L51; setp.gt.s32 %r341,%r120,111; @ %r341 bra $L52; setp.eq.u32 %r342,%r120,105; @ %r342 bra $L53; setp.gt.s32 %r343,%r120,105; @ %r343 bra $L54; setp.eq.u32 %r344,%r120,100; @ %r344 bra $L53; setp.eq.u32 %r345,%r120,104; @ %r345 bra $L55; setp.eq.u32 %r346,%r120,99; @ %r346 bra $L56; bra $L44; $L54: setp.eq.u32 %r347,%r120,108; @ %r347 bra $L57; setp.eq.u32 %r348,%r120,110; @ %r348 bra $L58; bra $L44; $L52: setp.eq.u32 %r349,%r120,115; @ %r349 bra $L59; setp.gt.s32 %r350,%r120,115; @ %r350 bra $L60; setp.eq.u32 %r351,%r120,112; @ %r351 bra $L61; setp.eq.u32 %r352,%r120,113; @ %r352 bra $L62; bra $L44; $L60: setp.eq.u32 %r353,%r120,117; @ %r353 bra $L63; setp.eq.u32 %r354,%r120,120; @ %r354 bra $L64; bra $L44; $L53: setp.eq.u32 %r355,%r152,0; @ %r355 bra $L66; cvt.u32.u32 %r356,%r154; st.u8 [%frame+194],%r356; bra $L66; $L64: setp.eq.u32 %r357,%r152,0; @ %r357 bra $L67; cvt.u32.u32 %r358,%r154; st.u8 [%frame+194],%r358; $L67: .loc 1 1538 10 cvta.const.u64 %r25,$LC1; bra $L68; $L39: .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 964 7 setp.ne.u32 %r359,%r154,0; selp.u32 %r152,%r152,1,%r359; selp.u32 %r154,%r154,32,%r359; bra $L31; $L40: .loc 1 968 10 or.b32 %r122,%r122,1; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 969 4 bra $L31; $L37: .loc 1 1007 10 add.u64 %r185,%r239,4; ld.u32 %r125,[%r239]; .loc 1 1011 7 setp.lt.s32 %r360,%r125,0; @ %r360 bra $L70; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1007 10 mov.u64 %r239,%r185; bra $L31; $L70: .loc 1 1013 10 neg.s32 %r125,%r125; .loc 1 1007 10 mov.u64 %r239,%r185; $L43: .loc 1 1016 10 or.b32 %r122,%r122,4; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1017 4 bra $L31; $L42: .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1020 4 mov.u32 %r152,1; .loc 1 1019 9 mov.u32 %r154,%r120; .loc 1 1020 4 bra $L31; $L35: .loc 1 1022 18 add.u64 %r151,%r238,1; .loc 1 1022 12 ld.s8 %r120,[%r238]; .loc 1 1022 7 setp.eq.u32 %r361,%r120,42; @ %r361 bra $L71; .loc 1 1061 11 add.u32 %r715,%r120,-48; setp.le.u32 %r362,%r715,9; @ %r362 bra $L72; .loc 1 1022 18 mov.u64 %r238,%r151; .loc 1 1060 6 mov.u32 %r126,%r735; bra $L32; $L71: ld.u32 %r363,[%r239]; max.s32 %r126,%r363,-1; .loc 1 947 14 ld.s8 %r222,[%r238+1]; .loc 1 1052 10 add.u64 %r239,%r239,4; .loc 1 1022 18 mov.u64 %r238,%r151; .loc 1 1058 5 bra $L31; $L72: mov.u64 %r181,%r151; .loc 1 1060 6 mov.u32 %r126,%r735; $L74: .loc 1 1062 12 shl.b32 %r365,%r126,2; add.u32 %r366,%r365,%r126; add.u32 %r367,%r366,%r366; .loc 1 1062 7 add.u32 %r126,%r367,%r715; mov.u64 %r234,%r181; add.u64 %r181,%r181,1; mov.u64 %r238,%r181; .loc 1 1063 8 ld.s8 %r120,[%r234]; .loc 1 1061 11 add.u32 %r715,%r120,-48; setp.le.u32 %r368,%r715,9; @ %r368 bra $L74; bra $L32; $L47: .loc 1 1073 10 or.b32 %r122,%r122,128; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1074 4 bra $L31; $L48: .loc 1 1079 12 shl.b32 %r370,%r125,2; add.u32 %r371,%r370,%r125; add.u32 %r372,%r371,%r371; .loc 1 1079 7 add.u32 %r125,%r715,%r372; mov.u64 %r207,%r178; add.u64 %r178,%r178,1; mov.u64 %r238,%r178; .loc 1 1080 8 ld.s8 %r120,[%r207]; .loc 1 1081 13 add.u32 %r715,%r120,-48; setp.le.u32 %r375,%r715,9; @ %r375 bra $L48; bra $L32; $L55: .loc 1 1107 11 or.b32 %r122,%r122,64; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1108 4 bra $L31; $L57: .loc 1 1111 8 ld.s8 %r222,[%r238]; .loc 1 1111 7 cvt.u16.u32 %r376,%r222; setp.ne.u16 %r377,%r376,108; @ %r377 bra $L75; .loc 1 1113 11 or.b32 %r122,%r122,32; .loc 1 947 14 ld.s8 %r222,[%r238+1]; .loc 1 1112 8 add.u64 %r238,%r238,1; bra $L31; $L75: .loc 1 1116 11 or.b32 %r122,%r122,16; bra $L31; $L62: .loc 1 1119 10 or.b32 %r122,%r122,32; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1120 4 bra $L31; $L56: .loc 1 1178 9 ld.u32 %r378,[%r239]; st.u8 [%frame+128],%r378; .loc 1 1181 9 mov.u32 %r379,0; st.u8 [%frame+194],%r379; .loc 1 1178 11 add.u64 %r239,%r239,4; .loc 1 1182 4 mov.u32 %r129,1; .loc 1 1179 10 mov.u32 %r130,%r129; .loc 1 1162 7 add.u64 %r121,%frame,128; .loc 1 1182 4 bra $L76; $L45: setp.eq.u32 %r380,%r152,0; @ %r380 bra $L77; cvt.u32.u32 %r381,%r154; st.u8 [%frame+194],%r381; $L77: .loc 1 1184 10 or.b32 %r122,%r122,16; $L66: .loc 1 1188 13 and.b32 %r382,%r122,32; setp.eq.u32 %r383,%r382,0; @ %r383 bra $L78; add.u64 %r197,%r239,7; and.b64 %r196,%r197,-8; add.u64 %r239,%r196,8; ld.u64 %r53,[%r196]; mov.u64 %r127,%r53; bra $L79; $L78: and.b32 %r384,%r122,16; setp.eq.u32 %r385,%r384,0; @ %r385 bra $L80; add.u64 %r189,%r239,7; and.b64 %r188,%r189,-8; add.u64 %r239,%r188,8; ld.u64 %r53,[%r188]; mov.u64 %r127,%r53; bra $L79; $L80: .loc 1 1007 10 ld.u32 %r223,[%r239]; add.u64 %r239,%r239,4; .loc 1 1188 13 and.b32 %r386,%r122,64; setp.eq.u32 %r387,%r386,0; @ %r387 bra $L81; cvt.u16.u32 %r388,%r223; cvt.s64.s16 %r127,%r388; .loc 1 1190 8 mov.u64 %r53,%r127; bra $L79; $L81: .loc 1 1188 13 cvt.s64.s32 %r127,%r223; .loc 1 1190 8 mov.u64 %r53,%r127; $L79: .loc 1 1190 7 setp.ge.s64 %r391,%r53,0; @ %r391 bra $L82; .loc 1 1196 12 neg.s64 %r127,%r127; mov.u32 %r133,45; .loc 1 1199 9 mov.u32 %r128,1; bra $L83; $L58: setp.eq.u32 %r392,%r152,0; @ %r392 bra $L84; cvt.u32.u32 %r393,%r154; st.u8 [%frame+194],%r393; $L84: .loc 1 1188 13 add.u64 %r394,%r239,7; and.b64 %r229,%r394,-8; ld.u64 %r230,[%r229]; add.u64 %r239,%r229,8; .loc 1 1387 14 and.b32 %r395,%r122,32; .loc 1 1387 7 setp.eq.u32 %r396,%r395,0; @ %r396 bra $L85; .loc 1 1388 34 cvt.s64.s32 %r397,%r235; st.u64 [%r230],%r397; bra $L23; $L85: .loc 1 1391 14 and.b32 %r398,%r122,16; .loc 1 1391 7 setp.eq.u32 %r399,%r398,0; @ %r399 bra $L87; .loc 1 1392 34 cvt.s64.s32 %r400,%r235; st.u64 [%r230],%r400; bra $L23; $L87: .loc 1 1393 19 and.b32 %r401,%r122,64; .loc 1 1393 12 setp.eq.u32 %r402,%r401,0; @ %r402 bra $L88; .loc 1 1394 35 st.u16 [%r230],%r235; bra $L23; $L88: .loc 1 1400 33 st.u32 [%r230],%r235; bra $L23; $L49: .loc 1 1403 10 or.b32 %r122,%r122,16; $L51: .loc 1 1406 13 and.b32 %r403,%r122,32; setp.eq.u32 %r404,%r403,0; @ %r404 bra $L89; add.u64 %r168,%r239,7; and.b64 %r135,%r168,-8; add.u64 %r239,%r135,8; ld.u64 %r127,[%r135]; .loc 1 1407 9 mov.u32 %r128,0; bra $L90; $L89: .loc 1 1406 13 and.b32 %r405,%r122,16; setp.eq.u32 %r406,%r405,0; @ %r406 bra $L91; add.u64 %r179,%r239,7; and.b64 %r39,%r179,-8; add.u64 %r239,%r39,8; ld.u64 %r127,[%r39]; .loc 1 1407 9 mov.u32 %r128,%r403; bra $L90; $L91: .loc 1 1007 10 ld.u32 %r224,[%r239]; add.u64 %r239,%r239,4; .loc 1 1406 13 and.b32 %r407,%r122,64; setp.eq.u32 %r408,%r407,0; @ %r408 bra $L92; cvt.u16.u32 %r409,%r224; cvt.u64.u16 %r127,%r409; .loc 1 1407 9 mov.u32 %r128,%r405; bra $L90; $L92: .loc 1 1406 13 cvt.u64.u32 %r127,%r224; .loc 1 1407 9 mov.u32 %r128,%r407; bra $L90; $L61: .loc 1 1421 25 add.u64 %r182,%r239,7; and.b64 %r195,%r182,-8; add.u64 %r239,%r195,8; ld.u64 %r127,[%r195]; .loc 1 1424 10 or.b32 %r122,%r122,2; .loc 1 1425 10 mov.u32 %r410,48; st.u8 [%frame+192],%r410; .loc 1 1426 10 mov.u32 %r411,120; st.u8 [%frame+193],%r411; .loc 1 1423 10 cvta.const.u64 %r25,$LC1; .loc 1 1422 9 mov.u32 %r128,2; .loc 1 1427 4 bra $L90; $L59: .loc 1 1432 7 add.u64 %r204,%r239,7; and.b64 %r205,%r204,-8; add.u64 %r239,%r205,8; ld.u64 %r121,[%r205]; .loc 1 1436 9 mov.u32 %r412,0; st.u8 [%frame+194],%r412; .loc 1 1442 7 setp.ne.u64 %r413,%r121,0; @ %r413 bra $L93; .loc 1 1444 39 min.u32 %r130,%r126,6; mov.u32 %r129,%r130; .loc 1 1443 8 cvta.const.u64 %r121,$LC2; bra $L76; $L93: .loc 1 1511 7 setp.eq.u32 %r414,%r126,-1; @ %r414 bra $L94; .loc 1 1517 15 cvt.s64.s32 %r418,%r126; mov.u32 %r416,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r418; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r419,[%value_in]; } .loc 1 1519 8 setp.eq.u64 %r420,%r419,0; @ %r420 bra $L176; .loc 1 1520 15 sub.u64 %r421,%r419,%r121; .loc 1 1520 11 cvt.u32.u64 %r130,%r421; mov.u32 %r124,%r122; .loc 1 932 9 mov.u32 %r126,%r416; bra $L95; $L94: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r423,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r130,%r423; mov.u32 %r124,%r122; .loc 1 932 9 mov.u32 %r126,0; bra $L95; $L50: .loc 1 1528 10 or.b32 %r122,%r122,16; $L63: .loc 1 1531 13 and.b32 %r424,%r122,32; setp.eq.u32 %r425,%r424,0; @ %r425 bra $L96; add.u64 %r194,%r239,7; and.b64 %r203,%r194,-8; add.u64 %r239,%r203,8; ld.u64 %r127,[%r203]; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L96: .loc 1 1531 13 and.b32 %r426,%r122,16; setp.eq.u32 %r427,%r426,0; @ %r427 bra $L97; add.u64 %r198,%r239,7; and.b64 %r199,%r198,-8; add.u64 %r239,%r199,8; ld.u64 %r127,[%r199]; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L97: .loc 1 1007 10 ld.u32 %r225,[%r239]; add.u64 %r239,%r239,4; .loc 1 1531 13 and.b32 %r428,%r122,64; setp.eq.u32 %r429,%r428,0; @ %r429 bra $L98; cvt.u16.u32 %r430,%r225; cvt.u64.u16 %r127,%r430; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L98: .loc 1 1531 13 cvt.u64.u32 %r127,%r225; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L33: setp.eq.u32 %r431,%r152,0; @ %r431 bra $L99; cvt.u32.u32 %r432,%r154; st.u8 [%frame+194],%r432; $L99: .loc 1 1535 10 cvta.const.u64 %r25,$LC0; $L68: .loc 1 1539 17 and.b32 %r433,%r122,32; setp.eq.u32 %r434,%r433,0; @ %r434 bra $L100; add.u64 %r136,%r239,7; and.b64 %r177,%r136,-8; add.u64 %r239,%r177,8; ld.u64 %r127,[%r177]; bra $L101; $L100: and.b32 %r435,%r122,16; setp.eq.u32 %r436,%r435,0; @ %r436 bra $L102; add.u64 %r193,%r239,7; and.b64 %r148,%r193,-8; add.u64 %r239,%r148,8; ld.u64 %r127,[%r148]; bra $L101; $L102: .loc 1 1007 10 ld.u32 %r226,[%r239]; add.u64 %r239,%r239,4; .loc 1 1539 17 and.b32 %r437,%r122,64; setp.eq.u32 %r438,%r437,0; @ %r438 bra $L103; cvt.u16.u32 %r439,%r226; cvt.u64.u16 %r127,%r439; bra $L101; $L103: cvt.u64.u32 %r127,%r226; $L101: .loc 1 1542 14 and.b32 %r440,%r122,1; .loc 1 1542 7 setp.eq.u32 %r441,%r440,0; @ %r441 bra $L177; .loc 1 1542 20 setp.eq.u64 %r442,%r127,0; @ %r442 bra $L178; .loc 1 1543 11 mov.u32 %r443,48; st.u8 [%frame+192],%r443; .loc 1 1544 11 st.u8 [%frame+193],%r120; .loc 1 1545 11 or.b32 %r122,%r122,2; .loc 1 1540 9 mov.u32 %r128,2; bra $L90; $L177: mov.u32 %r128,2; bra $L90; $L178: mov.u32 %r128,2; $L90: .loc 1 1552 1 mov.u32 %r133,0; $L83: .loc 1 1197 10 cvt.u32.u32 %r444,%r133; st.u8 [%frame+194],%r444; .loc 1 1558 14 setp.eq.u32 %r445,%r126,-1; @ %r445 bra $L104; .loc 1 1559 11 and.b32 %r124,%r122,-129; .loc 1 1567 15 set.u32.ne.u64 %r447,%r127,0; neg.s32 %r448,%r447; mov.u32 %r446,%r448; .loc 1 1567 28 set.u32.ne.u32 %r450,%r126,0; neg.s32 %r451,%r450; mov.u32 %r449,%r451; .loc 1 1567 20 cvt.u16.u8 %r744,%r446; mov.u16 %r453,%r744; cvt.u16.u8 %r744,%r449; mov.u16 %r454,%r744; or.b16 %r452,%r453,%r454; cvt.u32.u16 %r455,%r452; .loc 1 1567 7 cvt.u16.u8 %r456,%r455; setp.eq.u16 %r457,%r456,0; @ %r457 bra $L105; .loc 1 1559 11 mov.u32 %r122,%r124; $L104: setp.eq.u32 %r458,%r128,1; @ %r458 bra $L106; setp.eq.u32 %r459,%r128,2; @ %r459 bra $L179; mov.u64 %r121,%r736; $L108: mov.u64 %r143,%r121; .loc 1 1576 13 add.u64 %r121,%r121,-1; .loc 1 1576 15 cvt.u32.u64 %r460,%r127; cvt.u16.u8 %r744,%r460; mov.u16 %r462,%r744; and.b16 %r461,%r462,7; cvt.u32.u16 %r463,%r461; cvt.u16.u8 %r744,%r463; mov.u16 %r465,%r744; add.u16 %r464,%r465,48; cvt.u32.u16 %r466,%r464; cvt.s32.s8 %r89,%r466; .loc 1 1576 13 st.u8 [%r121],%r466; .loc 1 1577 14 shr.u64 %r127,%r127,3; .loc 1 1578 15 setp.ne.u64 %r468,%r127,0; @ %r468 bra $L108; .loc 1 1580 22 cvt.u16.u32 %r470,%r89; set.u32.ne.u16 %r471,%r470,48; neg.s32 %r472,%r471; mov.u32 %r469,%r472; .loc 1 1580 9 mov.u32 %r473,%r122; cvt.u16.u8 %r744,%r473; mov.u16 %r475,%r744; and.b16 %r474,%r475,1; cvt.u32.u16 %r476,%r474; .loc 1 1580 22 cvt.u16.u8 %r744,%r469; mov.u16 %r478,%r744; cvt.u16.u8 %r744,%r476; mov.u16 %r479,%r744; and.b16 %r477,%r478,%r479; cvt.u32.u16 %r480,%r477; cvt.u16.u8 %r481,%r480; setp.ne.u16 %r482,%r481,0; @ %r482 bra $L109; .loc 1 1644 21 sub.u64 %r485,%r736,%r121; .loc 1 1644 9 cvt.u32.u64 %r130,%r485; mov.u32 %r124,%r122; bra $L95; $L109: .loc 1 1581 13 add.u64 %r150,%r143,-2; mov.u32 %r486,48; st.u8 [%r121+-1],%r486; .loc 1 1644 21 sub.u64 %r489,%r736,%r150; .loc 1 1644 9 cvt.u32.u64 %r130,%r489; mov.u32 %r124,%r122; .loc 1 1581 13 mov.u64 %r121,%r150; bra $L95; $L186: .loc 1 1559 11 mov.u32 %r122,%r124; $L106: .loc 1 1586 9 setp.gt.u64 %r490,%r127,9; @ %r490 bra $L180; .loc 1 1587 15 cvt.u32.u64 %r491,%r127; cvt.u16.u8 %r744,%r491; mov.u16 %r493,%r744; add.u16 %r492,%r493,48; st.u8 [%frame+167],%r492; .loc 1 1588 7 mov.u32 %r124,%r122; mov.u32 %r130,1; .loc 1 1587 13 add.u64 %r121,%frame,167; .loc 1 1588 7 bra $L95; $L180: .loc 1 1566 7 mov.u64 %r121,%r736; $L111: .loc 1 1594 14 add.u64 %r121,%r121,-1; .loc 1 1594 16 rem.u64 %r495,%r127,10; cvt.u32.u64 %r496,%r495; cvt.u16.u8 %r744,%r496; mov.u16 %r498,%r744; add.u16 %r497,%r498,48; st.u8 [%r121],%r497; mov.u64 %r175,%r127; .loc 1 1615 15 div.u64 %r127,%r127,10; .loc 1 1616 22 setp.gt.u64 %r501,%r175,9; @ %r501 bra $L111; .loc 1 1644 21 sub.u64 %r504,%r736,%r121; .loc 1 1644 9 cvt.u32.u64 %r130,%r504; mov.u32 %r124,%r122; bra $L95; $L179: mov.u64 %r121,%r736; $L107: .loc 1 1621 13 add.u64 %r121,%r121,-1; .loc 1 1621 28 and.b64 %r505,%r127,15; .loc 1 1621 20 add.u64 %r506,%r25,%r505; .loc 1 1621 13 ld.u8 %r507,[%r506]; st.u8 [%r121],%r507; .loc 1 1622 14 shr.u64 %r127,%r127,4; .loc 1 1623 15 setp.ne.u64 %r508,%r127,0; @ %r508 bra $L107; .loc 1 1644 21 sub.u64 %r511,%r736,%r121; .loc 1 1644 9 cvt.u32.u64 %r130,%r511; mov.u32 %r124,%r122; bra $L95; $L105: .loc 1 1641 32 setp.ne.u32 %r512,%r128,0; @ %r512 bra $L181; .loc 1 1641 55 and.b32 %r130,%r122,1; .loc 1 1641 45 setp.eq.u32 %r513,%r130,0; @ %r513 bra $L182; .loc 1 1642 32 mov.u32 %r514,48; st.u8 [%frame+167],%r514; mov.u32 %r126,%r128; add.u64 %r121,%frame,167; bra $L95; $L181: mov.u32 %r126,0; mov.u32 %r130,%r126; .loc 1 1566 7 add.u64 %r121,%frame,168; bra $L95; $L182: mov.u32 %r126,%r128; add.u64 %r121,%frame,168; bra $L95; $L270: setp.eq.u32 %r515,%r152,0; @ %r515 bra $L112; $L170: cvt.u32.u32 %r516,%r154; st.u8 [%frame+194],%r516; $L112: .loc 1 1648 7 setp.eq.u32 %r517,%r120,0; @ %r517 bra $L30; $L171: .loc 1 1652 8 st.u8 [%frame+128],%r120; .loc 1 1654 9 mov.u32 %r518,0; st.u8 [%frame+194],%r518; .loc 1 1655 4 mov.u32 %r129,1; .loc 1 1653 9 mov.u32 %r130,%r129; .loc 1 1651 7 add.u64 %r121,%frame,128; .loc 1 1655 4 bra $L76; $L176: mov.u32 %r130,%r126; mov.u32 %r124,%r122; .loc 1 932 9 mov.u32 %r126,%r416; $L95: .loc 1 1673 10 max.s32 %r129,%r126,%r130; .loc 1 1674 6 ld.u8 %r520,[%frame+194]; cvt.s16.s8 %r519,%r520; setp.eq.u16 %r521,%r519,0; @ %r521 bra $L113; .loc 1 1675 10 add.u32 %r129,%r129,1; $L113: .loc 1 1676 13 and.b32 %r102,%r124,2; .loc 1 1676 6 setp.eq.u32 %r522,%r102,0; @ %r522 bra $L114; .loc 1 1677 10 add.u32 %r129,%r129,2; $L114: .loc 1 1680 14 and.b32 %r103,%r124,132; .loc 1 1681 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r719,%r217,1; mov.u32 %r213,%r719; .loc 1 1680 6 setp.ne.u32 %r523,%r103,0; @ %r523 bra $L115; .loc 1 1681 4 sub.u32 %r155,%r125,%r129; setp.le.s32 %r524,%r155,0; @ %r524 bra $L115; setp.le.s32 %r525,%r155,16; @ %r525 bra $L183; cvta.const.u64 %r717,blanks$1; $L120: st.u64 [%r131],%r717; mov.u64 %r527,16; st.u64 [%r131+8],%r527; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r719; setp.gt.s32 %r528,%r719,7; @ %r528 bra $L117; add.u64 %r131,%r131,16; add.u32 %r212,%r217,2; mov.u32 %r217,%r719; bra $L118; $L117: .loc 1 405 5 setp.ne.u64 %r529,%r216,0; @ %r529 bra $L119; .loc 1 406 19 mov.u32 %r217,%r103; mov.u32 %r212,1; .loc 1 1681 4 mov.u64 %r131,%frame; bra $L118; $L119: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r535,[%value_in]; } setp.ne.u32 %r536,%r535,0; @ %r536 bra $L29; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r212,%r217,1; mov.u64 %r131,%frame; $L118: add.u32 %r155,%r155,-16; setp.gt.s32 %r537,%r155,16; @ ! %r537 bra $L116; add.u32 %r719,%r217,1; bra $L120; $L183: mov.u32 %r212,%r719; cvta.const.u64 %r717,blanks$1; $L116: st.u64 [%r131],%r717; cvt.s64.s32 %r105,%r155; st.u64 [%r131+8],%r105; add.u64 %r216,%r216,%r105; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r212; setp.gt.s32 %r539,%r212,7; @ %r539 bra $L121; add.u64 %r131,%r131,16; .loc 1 1685 4 add.u32 %r213,%r212,1; mov.u32 %r217,%r212; bra $L115; $L121: .loc 1 405 5 setp.ne.u64 %r540,%r216,0; @ %r540 bra $L122; .loc 1 1684 6 ld.u8 %r543,[%frame+194]; cvt.s16.s8 %r542,%r543; setp.ne.u16 %r544,%r542,0; @ ! %r544 bra $L271; bra $L123; $L122: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r549,[%value_in]; } .loc 1 1681 4 setp.ne.u32 %r550,%r549,0; @ %r550 bra $L29; .loc 1 1685 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1681 4 mov.u64 %r131,%frame; $L115: .loc 1 1684 6 ld.u8 %r552,[%frame+194]; cvt.s16.s8 %r551,%r552; setp.eq.u16 %r553,%r551,0; @ %r553 bra $L125; .loc 1 1685 4 st.u64 [%r131],%r738; mov.u64 %r555,1; st.u64 [%r131+8],%r555; add.u64 %r216,%r216,1; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r213; setp.gt.s32 %r556,%r213,7; @ %r556 bra $L126; $L169: add.u64 %r131,%r131,16; .loc 1 1687 4 mov.u32 %r217,%r213; add.u32 %r213,%r213,1; bra $L125; $L126: .loc 1 405 5 setp.ne.u64 %r557,%r216,0; @ %r557 bra $L127; .loc 1 1686 6 setp.ne.u32 %r559,%r102,0; @ %r559 bra $L128; mov.u32 %r217,%r102; mov.u32 %r213,1; .loc 1 1685 4 mov.u64 %r131,%frame; bra $L129; $L127: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r564,[%value_in]; } setp.ne.u32 %r565,%r564,0; @ %r565 bra $L29; .loc 1 1687 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1685 4 mov.u64 %r131,%frame; $L125: .loc 1 1686 6 setp.ne.u32 %r566,%r102,0; @ ! %r566 bra $L129; .loc 1 1687 4 st.u64 [%r131],%r737; mov.u64 %r568,2; st.u64 [%r131+8],%r568; add.u64 %r216,%r216,2; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r213; setp.gt.s32 %r569,%r213,7; @ %r569 bra $L131; $L172: mov.u32 %r217,%r213; $L168: add.u64 %r131,%r131,16; .loc 1 1691 4 add.u32 %r213,%r217,1; bra $L129; $L131: .loc 1 405 5 setp.ne.u64 %r570,%r216,0; @ %r570 bra $L132; .loc 1 406 19 mov.u32 %r213,1; mov.u32 %r217,0; .loc 1 1687 4 mov.u64 %r131,%frame; bra $L129; $L132: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r576,[%value_in]; } setp.ne.u32 %r577,%r576,0; @ %r577 bra $L29; .loc 1 1691 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1687 4 mov.u64 %r131,%frame; $L129: .loc 1 1690 6 setp.ne.u32 %r578,%r103,128; @ %r578 bra $L133; .loc 1 1691 4 sub.u32 %r146,%r125,%r129; setp.le.s32 %r579,%r146,0; @ %r579 bra $L133; setp.le.s32 %r580,%r146,16; @ %r580 bra $L184; cvta.const.u64 %r718,zeroes$0; $L138: st.u64 [%r131],%r718; mov.u64 %r582,16; st.u64 [%r131+8],%r582; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; add.u32 %r108,%r217,1; st.u32 [%frame+176],%r108; setp.gt.s32 %r583,%r108,7; @ %r583 bra $L135; add.u64 %r131,%r131,16; add.u32 %r215,%r217,2; mov.u32 %r217,%r108; bra $L136; $L135: .loc 1 405 5 setp.ne.u64 %r584,%r216,0; @ %r584 bra $L137; .loc 1 406 19 mov.u32 %r215,1; mov.u32 %r217,0; .loc 1 1691 4 mov.u64 %r131,%frame; bra $L136; $L137: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r590,[%value_in]; } setp.ne.u32 %r591,%r590,0; @ %r591 bra $L29; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r215,%r217,1; mov.u64 %r131,%frame; $L136: add.u32 %r146,%r146,-16; setp.gt.s32 %r592,%r146,16; @ %r592 bra $L138; bra $L134; $L184: mov.u32 %r215,%r213; cvta.const.u64 %r718,zeroes$0; $L134: st.u64 [%r131],%r718; cvt.s64.s32 %r109,%r146; st.u64 [%r131+8],%r109; add.u64 %r216,%r216,%r109; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r215; setp.gt.s32 %r594,%r215,7; @ %r594 bra $L139; add.u64 %r131,%r131,16; .loc 1 1694 3 add.u32 %r213,%r215,1; mov.u32 %r217,%r215; bra $L133; $L139: .loc 1 405 5 setp.ne.u64 %r595,%r216,0; @ %r595 bra $L140; .loc 1 406 19 mov.u32 %r213,1; mov.u32 %r217,0; .loc 1 1691 4 mov.u64 %r131,%frame; bra $L133; $L140: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r601,[%value_in]; } setp.ne.u32 %r602,%r601,0; @ %r602 bra $L29; .loc 1 1694 3 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1691 4 mov.u64 %r131,%frame; $L133: .loc 1 1694 3 sub.u32 %r140,%r126,%r130; setp.le.s32 %r603,%r140,0; @ %r603 bra $L141; setp.le.s32 %r604,%r140,16; @ ! %r604 bra $L272; cvta.const.u64 %r718,zeroes$0; bra $L142; $L272: cvta.const.u64 %r718,zeroes$0; $L146: st.u64 [%r131],%r718; mov.u64 %r606,16; st.u64 [%r131+8],%r606; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; add.u32 %r110,%r217,1; st.u32 [%frame+176],%r110; setp.gt.s32 %r607,%r110,7; @ %r607 bra $L143; add.u64 %r131,%r131,16; add.u32 %r213,%r217,2; mov.u32 %r217,%r110; bra $L144; $L143: .loc 1 405 5 setp.ne.u64 %r608,%r216,0; @ %r608 bra $L145; .loc 1 406 19 mov.u32 %r213,1; mov.u32 %r217,0; .loc 1 1694 3 mov.u64 %r131,%frame; bra $L144; $L145: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r614,[%value_in]; } setp.ne.u32 %r615,%r614,0; @ %r615 bra $L29; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; mov.u64 %r131,%frame; $L144: add.u32 %r140,%r140,-16; setp.gt.s32 %r616,%r140,16; @ %r616 bra $L146; $L142: st.u64 [%r131],%r718; cvt.s64.s32 %r111,%r140; st.u64 [%r131+8],%r111; add.u64 %r216,%r216,%r111; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r213; setp.gt.s32 %r618,%r213,7; @ %r618 bra $L147; add.u64 %r131,%r131,16; .loc 1 1760 3 add.u32 %r213,%r213,1; bra $L141; $L147: .loc 1 405 5 setp.ne.u64 %r619,%r216,0; @ %r619 bra $L148; .loc 1 1760 3 st.u64 [%frame],%r121; cvt.s64.s32 %r219,%r130; st.u64 [%frame+8],%r219; st.u64 [%frame+184],%r219; mov.u32 %r620,1; st.u32 [%frame+176],%r620; .loc 1 1694 3 mov.u64 %r131,%frame; bra $L149; $L148: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r625,[%value_in]; } setp.ne.u32 %r626,%r625,0; @ %r626 bra $L29; .loc 1 1760 3 ld.u64 %r216,[%frame+184]; ld.u32 %r627,[%frame+176]; add.u32 %r213,%r627,1; .loc 1 1694 3 mov.u64 %r131,%frame; $L141: .loc 1 1760 3 st.u64 [%r131],%r121; cvt.s64.s32 %r112,%r130; st.u64 [%r131+8],%r112; add.u64 %r219,%r112,%r216; st.u64 [%frame+184],%r219; st.u32 [%frame+176],%r213; setp.gt.s32 %r628,%r213,7; @ %r628 bra $L150; $L149: add.u64 %r132,%r131,16; bra $L151; $L150: .loc 1 405 5 setp.ne.u64 %r629,%r219,0; @ %r629 bra $L152; .loc 1 406 19 mov.u32 %r630,0; st.u32 [%frame+176],%r630; .loc 1 1763 13 and.b32 %r631,%r124,4; .loc 1 1763 6 setp.ne.u32 %r632,%r631,0; @ %r632 bra $L153; bra $L273; $L152: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r637,[%value_in]; } .loc 1 1760 3 setp.ne.u32 %r638,%r637,0; @ %r638 bra $L29; .loc 1 1764 4 ld.u64 %r219,[%frame+184]; .loc 1 1760 3 mov.u64 %r132,%frame; $L151: .loc 1 1763 13 and.b32 %r639,%r124,4; .loc 1 1763 6 setp.eq.u32 %r640,%r639,0; @ %r640 bra $L155; .loc 1 1764 4 sub.u32 %r137,%r125,%r129; setp.le.s32 %r641,%r137,0; @ %r641 bra $L155; bra $L166; $L185: .loc 1 1760 3 mov.u64 %r132,%frame; $L166: .loc 1 1764 4 ld.u32 %r220,[%frame+176]; setp.le.s32 %r642,%r137,16; @ %r642 bra $L156; cvta.const.u64 %r717,blanks$1; $L160: st.u64 [%r132],%r717; mov.u64 %r644,16; st.u64 [%r132+8],%r644; add.u64 %r219,%r219,16; st.u64 [%frame+184],%r219; add.u32 %r115,%r220,1; st.u32 [%frame+176],%r115; setp.gt.s32 %r645,%r115,7; @ %r645 bra $L157; add.u64 %r132,%r132,16; add.u32 %r221,%r220,2; mov.u32 %r220,%r115; bra $L158; $L157: .loc 1 405 5 setp.ne.u64 %r646,%r219,0; @ %r646 bra $L159; .loc 1 406 19 mov.u32 %r221,1; mov.u32 %r220,0; .loc 1 1764 4 mov.u64 %r132,%frame; bra $L158; $L159: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r652,[%value_in]; } setp.ne.u32 %r653,%r652,0; @ %r653 bra $L29; ld.u64 %r219,[%frame+184]; ld.u32 %r220,[%frame+176]; add.u32 %r221,%r220,1; mov.u64 %r132,%frame; $L158: add.u32 %r137,%r137,-16; setp.gt.s32 %r654,%r137,16; @ %r654 bra $L160; bra $L161; $L156: add.u32 %r221,%r220,1; cvta.const.u64 %r717,blanks$1; $L161: st.u64 [%r132],%r717; cvt.s64.s32 %r116,%r137; st.u64 [%r132+8],%r116; add.u64 %r219,%r219,%r116; st.u64 [%frame+184],%r219; st.u32 [%frame+176],%r221; setp.le.s32 %r656,%r221,7; @ %r656 bra $L155; .loc 1 405 5 setp.ne.u64 %r657,%r219,0; @ %r657 bra $L162; .loc 1 1767 33 max.s32 %r658,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r658; bra $L163; $L162: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r663,[%value_in]; } .loc 1 1764 4 setp.ne.u32 %r664,%r663,0; @ %r664 bra $L29; .loc 1 1769 3 ld.u64 %r219,[%frame+184]; $L155: .loc 1 1767 33 max.s32 %r665,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r665; .loc 1 1769 3 setp.eq.u64 %r666,%r219,0; @ %r666 bra $L163; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r671,[%value_in]; } setp.ne.u32 %r672,%r671,0; @ %r672 bra $L29; $L163: mov.u32 %r673,0; st.u32 [%frame+176],%r673; mov.u64 %r131,%frame; bra $L23; $L30: .loc 1 1777 2 ld.u64 %r674,[%frame+184]; setp.eq.u64 %r675,%r674,0; @ %r675 bra $L29; add.u64 %r679,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r679; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r680,[%value_in]; } $L29: .loc 1 1784 31 ld.u16 %r682,[%r237+16]; and.b16 %r681,%r682,64; setp.ne.u16 %r683,%r681,0; @ ! %r683 bra $L15; bra $L164; $L273: .loc 1 1767 33 max.s32 %r685,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r685; bra $L163; $L76: .loc 1 932 9 mov.u32 %r124,%r122; mov.u32 %r126,0; bra $L113; $L82: .loc 1 1558 14 setp.ne.u32 %r686,%r126,-1; @ %r686 bra $L165; bra $L106; $L274: .loc 1 1767 33 max.s32 %r687,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r687; bra $L163; $L153: .loc 1 1764 4 sub.u32 %r137,%r125,%r129; setp.gt.s32 %r688,%r137,0; @ ! %r688 bra $L274; bra $L185; $L128: .loc 1 1687 4 st.u64 [%frame],%r737; mov.u64 %r690,2; st.u64 [%frame+8],%r690; mov.u32 %r217,1; .loc 1 1685 4 mov.u64 %r131,%frame; .loc 1 1687 4 mov.u64 %r216,%r690; bra $L168; $L123: .loc 1 1685 4 st.u64 [%frame],%r738; mov.u64 %r694,1; st.u64 [%frame+8],%r694; mov.u32 %r213,1; .loc 1 1681 4 mov.u64 %r131,%frame; .loc 1 1685 4 mov.u64 %r216,%r694; bra $L169; $L44: setp.ne.u32 %r697,%r152,0; @ ! %r697 bra $L171; bra $L170; $L165: .loc 1 1559 11 and.b32 %r124,%r122,-129; .loc 1 1567 28 set.u32.ne.u32 %r699,%r126,0; neg.s32 %r700,%r699; mov.u32 %r698,%r700; .loc 1 1567 15 set.u32.ne.u64 %r702,%r127,0; neg.s32 %r703,%r702; mov.u32 %r701,%r703; .loc 1 1567 20 cvt.u16.u8 %r744,%r698; mov.u16 %r705,%r744; cvt.u16.u8 %r744,%r701; mov.u16 %r706,%r744; or.b16 %r704,%r705,%r706; cvt.u32.u16 %r707,%r704; .loc 1 1567 7 cvt.u16.u8 %r708,%r707; setp.ne.u16 %r709,%r708,0; @ %r709 bra $L186; mov.u32 %r126,0; mov.u32 %r130,%r126; .loc 1 1566 7 add.u64 %r121,%frame,168; bra $L95; $L173: .loc 1 1687 4 st.u64 [%frame],%r737; mov.u64 %r711,2; st.u64 [%frame+8],%r711; mov.u32 %r213,1; .loc 1 1681 4 mov.u64 %r131,%frame; .loc 1 1687 4 mov.u64 %r216,%r711; bra $L172; $L271: .loc 1 1686 6 setp.ne.u32 %r714,%r102,0; @ %r714 bra $L173; mov.u32 %r217,%r102; mov.u32 %r213,1; .loc 1 1681 4 mov.u64 %r131,%frame; bra $L133; $L15: .loc 1 1786 1 mov.u32 %value,%r235; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiprintf .visible .func (.param .u32 %value_out) vfiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 647 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 649 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[1200]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u16 %r63; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; mov.u64 %r37,%ar3; .loc 1 461 14 ld.u16 %r39,[%r35+16]; and.b16 %r38,%r39,-3; st.u16 [%frame+1040],%r38; .loc 1 462 15 ld.u32 %r40,[%r35+172]; st.u32 [%frame+1196],%r40; .loc 1 463 13 ld.u16 %r41,[%r35+18]; st.u16 [%frame+1042],%r41; .loc 1 464 15 ld.u64 %r42,[%r35+48]; st.u64 [%frame+1072],%r42; .loc 1 465 14 ld.u64 %r43,[%r35+64]; st.u64 [%frame+1088],%r43; .loc 1 468 27 st.u64 [%frame+1024],%frame; .loc 1 468 17 st.u64 [%frame+1048],%frame; .loc 1 469 27 mov.u32 %r44,1024; st.u32 [%frame+1036],%r44; .loc 1 469 17 st.u32 [%frame+1056],%r44; .loc 1 470 16 mov.u32 %r46,0; st.u32 [%frame+1064],%r46; .loc 1 476 8 add.u64 %r51,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r37; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r52,[%value_in]; } mov.u32 %r33,%r52; .loc 1 477 5 setp.lt.s32 %r53,%r33,0; @ %r53 bra $L277; .loc 1 477 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r57,[%value_in]; } .loc 1 477 15 setp.eq.u32 %r58,%r57,0; .loc 1 478 7 selp.u32 %r33,%r33,-1,%r58; $L277: .loc 1 479 5 ld.u16 %r60,[%frame+1040]; and.b16 %r59,%r60,64; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L276; .loc 1 480 14 ld.u16 %r63,[%r35+16]; or.b16 %r62,%r63,64; st.u16 [%r35+16],%r62; $L276: .loc 1 486 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } /1786 0 0 0 644 39065 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .visible .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfiscanf .visible .func (.param .u32 %value_out) vfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfiscanf .visible .func (.param .u32 %value_out) __svfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfiscanf_r .visible .func (.param .u32 %value_out) _vfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fread_r .extern .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _ungetc_r .extern .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfiscanf_r .visible .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[304]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r27; .reg .u64 %r34; .reg .u32 %r41; .reg .u64 %r46; .reg .u32 %r69; .reg .u64 %r70; .reg .u64 %r79; .reg .u32 %r95; .reg .u64 %r98; .reg .u64 %r110; .reg .u32 %r117; .reg .u64 %r119; .reg .u64 %r121; .reg .u64 %r129; .reg .u64 %r135; .reg .u64 %r145; .reg .u32 %r146; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r171; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .u32 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .u64 %r197; .reg .u32 %r201; .reg .u64 %r203; .reg .u32 %r204; .reg .u64 %r206; .reg .u64 %r215; .reg .u64 %r216; .reg .u32 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r223; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r248; .reg .u64 %r252; .reg .u64 %r253; .reg .u32 %r259; .reg .u32 %r260; .reg .u64 %r262; .reg .u64 %r263; .reg .u64 %r264; .reg .u32 %r267; .reg .u64 %r268; .reg .u32 %r274; .reg .u64 %r276; .reg .u64 %r277; .reg .u32 %r278; .reg .u64 %r279; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .u16 %r283; .reg .u16 %r284; .reg .pred %r285; .reg .u16 %r286; .reg .u32 %r288; .reg .pred %r289; .reg .pred %r290; .reg .u64 %r291; .reg .u32 %r292; .reg .u64 %r294; .reg .u16 %r297; .reg .u16 %r299; .reg .pred %r300; .reg .pred %r301; .reg .u64 %r302; .reg .u64 %r304; .reg .u16 %r307; .reg .u16 %r309; .reg .pred %r310; .reg .u32 %r313; .reg .pred %r314; .reg .u32 %r315; .reg .u64 %r316; .reg .pred %r317; .reg .u16 %r318; .reg .pred %r319; .reg .pred %r321; .reg .pred %r323; .reg .pred %r325; .reg .pred %r327; .reg .pred %r329; .reg .pred %r331; .reg .pred %r333; .reg .pred %r335; .reg .pred %r337; .reg .pred %r339; .reg .pred %r341; .reg .pred %r343; .reg .pred %r345; .reg .pred %r347; .reg .pred %r349; .reg .pred %r351; .reg .pred %r353; .reg .pred %r355; .reg .pred %r357; .reg .pred %r359; .reg .pred %r361; .reg .pred %r363; .reg .pred %r365; .reg .pred %r367; .reg .pred %r369; .reg .u32 %r370; .reg .pred %r371; .reg .u16 %r372; .reg .u16 %r373; .reg .pred %r374; .reg .u32 %r377; .reg .pred %r378; .reg .u32 %r379; .reg .u32 %r380; .reg .u64 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u16 %r388; .reg .u16 %r389; .reg .u16 %r390; .reg .u32 %r391; .reg .u16 %r392; .reg .pred %r393; .reg .u32 %r394; .reg .pred %r395; .reg .u16 %r396; .reg .pred %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u32 %r400; .reg .pred %r401; .reg .u32 %r402; .reg .pred %r403; .reg .u64 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r408; .reg .u32 %r409; .reg .u64 %r412; .reg .u32 %r413; .reg .pred %r414; .reg .u64 %r415; .reg .u32 %r416; .reg .pred %r417; .reg .u32 %r418; .reg .pred %r419; .reg .u64 %r420; .reg .u32 %r421; .reg .pred %r422; .reg .u64 %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .pred %r427; .reg .u32 %r430; .reg .pred %r431; .reg .u64 %r432; .reg .u64 %r434; .reg .u16 %r437; .reg .u16 %r439; .reg .pred %r440; .reg .u32 %r441; .reg .pred %r442; .reg .u32 %r445; .reg .pred %r446; .reg .u64 %r447; .reg .u64 %r449; .reg .u16 %r452; .reg .u16 %r454; .reg .pred %r455; .reg .pred %r456; .reg .pred %r457; .reg .pred %r458; .reg .u32 %r459; .reg .pred %r460; .reg .u32 %r461; .reg .pred %r462; .reg .u64 %r463; .reg .u32 %r466; .reg .pred %r467; .reg .pred %r468; .reg .u32 %r470; .reg .u64 %r471; .reg .u32 %r472; .reg .u64 %r474; .reg .u64 %r475; .reg .u64 %r478; .reg .pred %r479; .reg .u32 %r480; .reg .pred %r481; .reg .u64 %r483; .reg .u64 %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .u32 %r488; .reg .u64 %r489; .reg .pred %r490; .reg .u32 %r491; .reg .u64 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r496; .reg .u64 %r497; .reg .u16 %r498; .reg .u32 %r499; .reg .pred %r500; .reg .u32 %r503; .reg .pred %r504; .reg .pred %r505; .reg .u32 %r506; .reg .u32 %r507; .reg .u64 %r508; .reg .u32 %r509; .reg .pred %r510; .reg .u32 %r511; .reg .u32 %r512; .reg .u64 %r513; .reg .u32 %r514; .reg .u64 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .pred %r518; .reg .u32 %r521; .reg .pred %r522; .reg .pred %r523; .reg .u64 %r525; .reg .u64 %r526; .reg .u16 %r527; .reg .u32 %r528; .reg .pred %r529; .reg .u64 %r530; .reg .pred %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u64 %r534; .reg .u64 %r536; .reg .u16 %r538; .reg .u16 %r539; .reg .u32 %r540; .reg .u32 %r541; .reg .pred %r542; .reg .pred %r543; .reg .u32 %r544; .reg .u64 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .u64 %r548; .reg .pred %r549; .reg .pred %r550; .reg .u32 %r553; .reg .pred %r554; .reg .u64 %r555; .reg .u64 %r557; .reg .u16 %r560; .reg .u16 %r562; .reg .pred %r563; .reg .pred %r564; .reg .u32 %r565; .reg .u32 %r566; .reg .u64 %r567; .reg .u32 %r568; .reg .pred %r569; .reg .u32 %r570; .reg .u32 %r571; .reg .u64 %r572; .reg .u32 %r573; .reg .u64 %r574; .reg .pred %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .pred %r578; .reg .u32 %r581; .reg .pred %r582; .reg .u64 %r583; .reg .u64 %r584; .reg .u64 %r586; .reg .u16 %r589; .reg .u16 %r591; .reg .pred %r592; .reg .u64 %r593; .reg .u32 %r594; .reg .u64 %r595; .reg .pred %r596; .reg .u32 %r597; .reg .u16 %r598; .reg .pred %r599; .reg .pred %r601; .reg .pred %r603; .reg .pred %r605; .reg .u16 %r606; .reg .u32 %r608; .reg .u16 %r610; .reg .u16 %r612; .reg .pred %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u64 %r616; .reg .u64 %r617; .reg .pred %r619; .reg .pred %r621; .reg .pred %r623; .reg .pred %r625; .reg .pred %r627; .reg .pred %r629; .reg .u32 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u32 %r633; .reg .pred %r634; .reg .pred %r635; .reg .u64 %r636; .reg .u64 %r637; .reg .u64 %r638; .reg .u64 %r639; .reg .pred %r640; .reg .pred %r641; .reg .u32 %r642; .reg .pred %r643; .reg .u32 %r644; .reg .pred %r645; .reg .u32 %r646; .reg .u32 %r647; .reg .pred %r648; .reg .u64 %r649; .reg .u32 %r652; .reg .pred %r653; .reg .pred %r654; .reg .u32 %r655; .reg .pred %r656; .reg .pred %r658; .reg .u32 %r662; .reg .u32 %r663; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .u32 %r668; .reg .u64 %r671; .reg .u64 %r674; .reg .u64 %r675; .reg .u32 %r676; .reg .pred %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u64 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u64 %r683; .reg .u32 %r684; .reg .pred %r685; .reg .u64 %r686; .reg .pred %r687; .reg .u64 %r693; .reg .u64 %r699; .reg .u64 %r700; .reg .u64 %r701; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r706; .reg .u16 %r707; .reg .u16 %r708; .reg .pred %r709; .reg .u64 %r712; .reg .u64 %r713; .reg .u16 %r714; mov.u64 %r279,%ar0; mov.u64 %r280,%ar1; mov.u64 %r281,%ar2; mov.u64 %r282,%ar3; .loc 1 591 3 ld.u16 %r284,[%r280+16]; and.b16 %r283,%r284,8192; setp.ne.u16 %r285,%r283,0; @ %r285 bra $L2; .loc 1 589 3 ld.u32 %r22,[%r280+172]; .loc 1 591 3 or.b16 %r286,%r284,8192; st.u16 [%r280+16],%r286; and.b32 %r288,%r22,-8193; st.u32 [%r280+172],%r288; $L2: .loc 1 602 12 ld.u8 %r27,[%r281]; .loc 1 611 11 add.u64 %r197,%r281,1; .loc 1 613 10 setp.eq.u32 %r289,%r27,0; @ %r289 bra $L109; mov.u64 %r70,0; mov.u32 %r184,0; mov.u32 %r157,%r184; mov.u32 %r278,%r184; cvta.const.u64 %r712,_ctype_+1; .loc 1 1342 11 add.u64 %r713,%frame,256; bra $L4; $L7: .loc 1 602 12 ld.u8 %r27,[%r197]; .loc 1 611 11 add.u64 %r197,%r197,1; .loc 1 613 10 setp.eq.u32 %r290,%r27,0; @ %r290 bra $L1; $L4: .loc 1 615 26 cvt.u32.u32 %r292,%r27; cvt.u64.u8 %r291,%r292; add.u64 %r294,%r712,%r291; .loc 1 615 23 ld.u8 %r714,[%r294]; mov.u16 %r297,%r714; and.b16 %r299,%r297,8; setp.eq.u16 %r300,%r299,0; @ %r300 bra $L5; .loc 1 649 12 ld.u32 %r41,[%r280+8]; $L10: .loc 1 619 11 setp.le.s32 %r301,%r41,0; @ %r301 bra $L6; $L9: .loc 1 619 28 ld.u64 %r34,[%r280]; ld.u8 %r302,[%r34]; add.u64 %r304,%r712,%r302; .loc 1 619 24 ld.u8 %r714,[%r304]; mov.u16 %r307,%r714; and.b16 %r309,%r307,8; setp.eq.u16 %r310,%r309,0; @ ! %r310 bra $L200; bra $L7; $L6: .loc 1 619 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r313,[%value_in]; } setp.ne.u32 %r314,%r313,0; @ ! %r314 bra $L9; bra $L7; $L200: .loc 1 621 13 add.u32 %r157,%r157,1; .loc 1 621 23 ld.u32 %r315,[%r280+8]; add.u32 %r41,%r315,-1; st.u32 [%r280+8],%r41; .loc 1 621 33 add.u64 %r316,%r34,1; st.u64 [%r280],%r316; .loc 1 619 11 bra $L10; $L5: .loc 1 625 10 setp.ne.u32 %r317,%r27,37; @ %r317 bra $L11; .loc 1 640 11 ld.u8 %r260,[%r197]; mov.u64 %r25,%r197; .loc 1 628 13 mov.u32 %r182,0; .loc 1 627 13 mov.u64 %r129,0; bra $L12; $L202: .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 663 10 mov.u32 %r182,16; .loc 1 669 8 mov.u64 %r129,0; $L12: .loc 1 640 15 add.u64 %r197,%r25,1; .loc 1 642 7 cvt.u16.u32 %r318,%r260; setp.eq.u16 %r319,%r318,100; @ %r319 bra $L110; setp.gt.u16 %r321,%r318,100; @ %r321 bra $L14; setp.eq.u16 %r323,%r318,76; @ %r323 bra $L15; setp.gt.u16 %r325,%r318,76; @ %r325 bra $L16; setp.gt.u16 %r327,%r318,57; @ %r327 bra $L17; setp.gt.u16 %r329,%r318,47; @ %r329 bra $L18; setp.eq.u16 %r331,%r318,37; @ %r331 bra $L11; setp.eq.u16 %r333,%r318,42; @ %r333 bra $L19; bra $L1; $L17: setp.eq.u16 %r335,%r318,68; @ %r335 bra $L20; bra $L1; $L16: setp.eq.u16 %r337,%r318,91; @ %r337 bra $L21; setp.gt.u16 %r339,%r318,91; @ %r339 bra $L22; setp.eq.u16 %r341,%r318,79; @ %r341 bra $L23; setp.eq.u16 %r343,%r318,88; @ %r343 bra $L24; bra $L1; $L22: setp.eq.u16 %r345,%r318,99; @ %r345 bra $L25; bra $L1; $L14: setp.eq.u16 %r347,%r318,111; @ %r347 bra $L111; setp.gt.u16 %r349,%r318,111; @ %r349 bra $L26; setp.eq.u16 %r351,%r318,108; @ %r351 bra $L27; setp.gt.u16 %r353,%r318,108; @ %r353 bra $L28; setp.eq.u16 %r355,%r318,104; @ %r355 bra $L29; setp.eq.u16 %r357,%r318,105; @ %r357 bra $L112; bra $L1; $L28: setp.eq.u16 %r359,%r318,110; @ %r359 bra $L30; bra $L1; $L26: setp.eq.u16 %r361,%r318,115; @ %r361 bra $L113; setp.gt.u16 %r363,%r318,115; @ %r363 bra $L31; setp.eq.u16 %r365,%r318,112; @ %r365 bra $L32; bra $L1; $L31: setp.eq.u16 %r367,%r318,117; @ %r367 bra $L114; setp.eq.u16 %r369,%r318,120; @ %r369 bra $L24; bra $L1; $L11: .loc 1 649 11 ld.u32 %r370,[%r280+8]; setp.le.s32 %r371,%r370,0; @ %r371 bra $L33; $L36: .loc 1 651 15 ld.u64 %r46,[%r280]; .loc 1 651 11 ld.u8 %r372,[%r46]; ld.u8 %r373,[%r197+-1]; setp.ne.u16 %r374,%r372,%r373; @ %r374 bra $L1; bra $L201; $L33: .loc 1 649 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r377,[%value_in]; } setp.ne.u32 %r378,%r377,0; @ ! %r378 bra $L36; bra $L35; $L201: .loc 1 653 14 ld.u32 %r380,[%r280+8]; add.u32 %r379,%r380,-1; st.u32 [%r280+8],%r379; .loc 1 653 24 add.u64 %r381,%r46,1; st.u64 [%r280],%r381; .loc 1 654 13 add.u32 %r157,%r157,1; bra $L7; $L19: .loc 1 660 7 set.u32.ne.u32 %r383,%r182,0; neg.s32 %r384,%r383; mov.u32 %r382,%r384; .loc 1 661 8 set.u32.ne.u64 %r386,%r129,0; neg.s32 %r387,%r386; mov.u32 %r385,%r387; cvt.u16.u8 %r714,%r382; mov.u16 %r389,%r714; cvt.u16.u8 %r714,%r385; mov.u16 %r390,%r714; or.b16 %r388,%r389,%r390; cvt.u32.u16 %r391,%r388; cvt.u16.u8 %r392,%r391; setp.ne.u16 %r393,%r392,0; @ ! %r393 bra $L202; bra $L1; $L27: .loc 1 666 14 and.b32 %r394,%r182,15; .loc 1 666 7 setp.ne.u32 %r395,%r394,0; @ %r395 bra $L1; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 669 7 cvt.u16.u32 %r396,%r260; setp.ne.u16 %r397,%r396,108; @ %r397 bra $L38; .loc 1 672 14 or.b32 %r182,%r182,2; .loc 1 640 11 ld.u8 %r260,[%r25+2]; .loc 1 671 8 add.u64 %r25,%r25,2; bra $L12; $L38: .loc 1 676 12 or.b32 %r182,%r182,1; .loc 1 640 15 mov.u64 %r25,%r197; bra $L12; $L15: .loc 1 679 14 and.b32 %r398,%r182,15; .loc 1 679 7 setp.ne.u32 %r399,%r398,0; @ %r399 bra $L1; .loc 1 681 10 or.b32 %r182,%r182,2; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 682 4 bra $L12; $L29: .loc 1 684 14 and.b32 %r400,%r182,15; .loc 1 684 7 setp.ne.u32 %r401,%r400,0; @ %r401 bra $L1; .loc 1 694 12 or.b32 %r182,%r182,4; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 695 4 bra $L12; $L18: .loc 1 760 14 and.b32 %r402,%r182,143; .loc 1 760 7 setp.ne.u32 %r403,%r402,0; @ %r403 bra $L1; .loc 1 762 18 shl.b64 %r405,%r129,2; add.u64 %r406,%r405,%r129; add.u64 %r407,%r406,%r406; .loc 1 762 23 cvt.u32.u32 %r409,%r260; cvt.u64.u8 %r408,%r409; add.u64 %r253,%r407,%r408; .loc 1 762 10 add.u64 %r129,%r253,-48; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 763 4 bra $L12; $L20: .loc 1 789 10 or.b32 %r182,%r182,1; .loc 1 793 9 mov.u64 %r70,_strtol_r; .loc 1 794 9 mov.u32 %r184,10; .loc 1 792 6 mov.u32 %r201,3; bra $L13; $L23: .loc 1 804 10 or.b32 %r182,%r182,1; .loc 1 808 9 mov.u64 %r70,_strtoul_r; .loc 1 809 9 mov.u32 %r184,8; .loc 1 807 6 mov.u32 %r201,3; bra $L13; $L24: .loc 1 820 10 or.b32 %r182,%r182,512; .loc 1 822 9 mov.u64 %r70,_strtoul_r; .loc 1 823 9 mov.u32 %r184,16; .loc 1 821 6 mov.u32 %r201,3; .loc 1 824 4 bra $L13; $L21: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r197; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r412,[%value_in]; } mov.u64 %r197,%r412; .loc 1 853 10 or.b32 %r182,%r182,64; .loc 1 854 6 mov.u32 %r201,1; .loc 1 855 4 bra $L13; $L25: .loc 1 864 10 or.b32 %r182,%r182,64; .loc 1 865 6 mov.u32 %r201,0; .loc 1 866 4 bra $L13; $L32: .loc 1 869 10 or.b32 %r182,%r182,544; .loc 1 871 9 mov.u64 %r70,_strtoul_r; .loc 1 872 9 mov.u32 %r184,16; .loc 1 870 6 mov.u32 %r201,3; .loc 1 873 4 bra $L13; $L30: .loc 1 876 14 and.b32 %r413,%r182,16; .loc 1 876 7 setp.ne.u32 %r414,%r413,0; @ %r414 bra $L7; .loc 1 888 11 add.u64 %r415,%r282,7; and.b64 %r276,%r415,-8; add.u64 %r282,%r276,8; ld.u64 %r277,[%r276]; .loc 1 886 14 and.b32 %r416,%r182,4; .loc 1 886 7 setp.eq.u32 %r417,%r416,0; @ %r417 bra $L40; .loc 1 889 12 st.u16 [%r277],%r157; bra $L7; $L40: .loc 1 891 19 and.b32 %r418,%r182,1; .loc 1 891 12 setp.eq.u32 %r419,%r418,0; @ %r419 bra $L41; .loc 1 894 12 cvt.s64.s32 %r420,%r157; st.u64 [%r277],%r420; bra $L7; $L41: .loc 1 897 19 and.b32 %r421,%r182,2; .loc 1 897 12 setp.eq.u32 %r422,%r421,0; @ %r422 bra $L42; .loc 1 900 13 cvt.s64.s32 %r423,%r157; st.u64 [%r277],%r423; bra $L7; $L42: .loc 1 906 12 st.u32 [%r277],%r157; bra $L7; $L110: .loc 1 642 7 mov.u64 %r70,_strtol_r; mov.u32 %r184,10; mov.u32 %r201,3; bra $L13; $L111: .loc 1 808 9 mov.u64 %r70,_strtoul_r; .loc 1 809 9 mov.u32 %r184,8; .loc 1 807 6 mov.u32 %r201,3; bra $L13; $L112: .loc 1 799 9 mov.u64 %r70,_strtol_r; .loc 1 800 9 mov.u32 %r184,0; .loc 1 798 6 mov.u32 %r201,3; bra $L13; $L113: .loc 1 848 6 mov.u32 %r201,2; bra $L13; $L114: .loc 1 814 9 mov.u64 %r70,_strtoul_r; .loc 1 815 9 mov.u32 %r184,10; .loc 1 813 6 mov.u32 %r201,3; $L13: .loc 1 917 10 ld.u32 %r424,[%r280+8]; setp.le.s32 %r425,%r424,0; @ %r425 bra $L43; $L46: .loc 1 924 18 and.b32 %r426,%r182,64; .loc 1 924 10 setp.eq.u32 %r427,%r426,0; @ ! %r427 bra $L45; bra $L44; $L43: .loc 1 917 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r430,[%value_in]; } setp.ne.u32 %r431,%r430,0; @ ! %r431 bra $L46; bra $L35; $L44: .loc 1 926 11 ld.u64 %r239,[%r280]; ld.u8 %r432,[%r239]; add.u64 %r434,%r712,%r432; ld.u8 %r714,[%r434]; mov.u16 %r437,%r714; and.b16 %r439,%r437,8; setp.eq.u16 %r440,%r439,0; @ %r440 bra $L45; $L49: .loc 1 928 13 add.u32 %r157,%r157,1; .loc 1 929 12 ld.u32 %r441,[%r280+8]; add.u32 %r69,%r441,-1; .loc 1 929 11 st.u32 [%r280+8],%r69; setp.le.s32 %r442,%r69,0; @ %r442 bra $L47; .loc 1 930 9 add.u64 %r239,%r239,1; st.u64 [%r280],%r239; bra $L48; $L47: .loc 1 932 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r445,[%value_in]; } .loc 1 932 11 setp.ne.u32 %r446,%r445,0; @ %r446 bra $L35; .loc 1 926 11 ld.u64 %r239,[%r280]; $L48: ld.u8 %r447,[%r239]; add.u64 %r449,%r712,%r447; ld.u8 %r714,[%r449]; mov.u16 %r452,%r714; and.b16 %r454,%r452,8; setp.ne.u16 %r455,%r454,0; @ %r455 bra $L49; $L45: .loc 1 945 7 setp.eq.u32 %r456,%r201,2; @ %r456 bra $L50; setp.eq.u32 %r457,%r201,3; @ %r457 bra $L51; setp.eq.u32 %r458,%r201,1; @ %r458 bra $L52; max.u64 %r179,%r129,1; .loc 1 1017 14 and.b32 %r459,%r182,16; .loc 1 1017 7 setp.eq.u32 %r460,%r459,0; @ %r460 bra $L53; .loc 1 1019 15 mov.u64 %r185,0; $L55: .loc 1 1022 12 ld.u32 %r223,[%r280+8]; .loc 1 1026 16 ld.u64 %r263,[%r280]; .loc 1 1022 24 cvt.u32.u64 %r461,%r179; .loc 1 1022 8 setp.le.s32 %r462,%r461,%r223; @ %r462 bra $L54; .loc 1 1024 13 cvt.s64.s32 %r79,%r223; add.u64 %r185,%r185,%r79; .loc 1 1025 15 sub.u64 %r179,%r179,%r79; .loc 1 1026 16 add.u64 %r463,%r263,%r79; st.u64 [%r280],%r463; .loc 1 1027 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r466,[%value_in]; } .loc 1 1027 12 setp.eq.u32 %r467,%r466,0; @ %r467 bra $L55; .loc 1 1029 9 setp.eq.u64 %r468,%r185,0; @ ! %r468 bra $L56; bra $L35; $L54: .loc 1 1036 13 add.u64 %r185,%r185,%r179; .loc 1 1037 16 sub.u32 %r470,%r223,%r461; st.u32 [%r280+8],%r470; .loc 1 1038 16 add.u64 %r471,%r263,%r179; st.u64 [%r280],%r471; $L56: .loc 1 1042 14 cvt.u32.u64 %r472,%r185; add.u32 %r157,%r472,%r157; bra $L7; $L53: .loc 1 1053 5 add.u64 %r236,%r282,7; and.b64 %r231,%r236,-8; add.u64 %r282,%r231,8; .loc 1 1054 12 mov.u64 %r475,1; ld.u64 %r474,[%r231]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r475; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r179; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r280; call (%value_in),_fread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r478,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r479,%r478,0; @ %r479 bra $L35; .loc 1 1060 14 cvt.u32.u64 %r480,%r478; add.u32 %r157,%r480,%r157; .loc 1 1061 17 add.u32 %r278,%r278,1; bra $L7; $L52: .loc 1 1067 7 setp.ne.u64 %r481,%r129,0; .loc 1 1068 12 selp.u64 %r129,%r129,-1,%r481; .loc 1 1146 25 ld.u64 %r264,[%r280]; .loc 1 1146 21 ld.u8 %r483,[%r264]; add.u64 %r484,%frame,%r483; ld.s8 %r267,[%r484]; .loc 1 1143 14 and.b32 %r485,%r182,16; .loc 1 1143 7 setp.eq.u32 %r486,%r485,0; @ %r486 bra $L58; .loc 1 1146 15 setp.eq.u32 %r487,%r267,0; @ %r487 bra $L1; .loc 1 1148 16 ld.u32 %r488,[%r280+8]; add.u32 %r95,%r488,-1; st.u32 [%r280+8],%r95; .loc 1 1148 26 add.u64 %r489,%r264,1; st.u64 [%r280],%r489; .loc 1 1149 8 add.u64 %r203,%r129,-1; setp.eq.u64 %r490,%r129,1; @ ! %r490 bra $L60; bra $L59; $L62: .loc 1 1148 6 add.u32 %r201,%r201,1; .loc 1 1148 16 ld.u32 %r491,[%r280+8]; add.u32 %r95,%r491,-1; st.u32 [%r280+8],%r95; .loc 1 1148 26 add.u64 %r492,%r98,1; st.u64 [%r280],%r492; .loc 1 1149 8 add.u64 %r203,%r203,-1; setp.eq.u64 %r493,%r203,0; @ %r493 bra $L59; $L60: .loc 1 1151 8 setp.le.s32 %r494,%r95,0; @ %r494 bra $L61; $L63: .loc 1 1146 25 ld.u64 %r98,[%r280]; .loc 1 1146 21 ld.u8 %r496,[%r98]; add.u64 %r497,%frame,%r496; .loc 1 1146 15 ld.u8 %r499,[%r497]; cvt.s16.s8 %r498,%r499; setp.ne.u16 %r500,%r498,0; @ %r500 bra $L62; bra $L59; $L61: .loc 1 1151 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r503,[%value_in]; } setp.eq.u32 %r504,%r503,0; @ %r504 bra $L63; $L59: .loc 1 1160 14 add.u32 %r157,%r157,%r201; bra $L7; $L58: .loc 1 1172 10 add.u64 %r233,%r282,7; and.b64 %r232,%r233,-8; add.u64 %r282,%r232,8; ld.u64 %r219,[%r232]; .loc 1 1173 15 setp.eq.u32 %r505,%r267,0; @ %r505 bra $L1; .loc 1 1175 11 ld.u32 %r507,[%r280+8]; add.u32 %r506,%r507,-1; st.u32 [%r280+8],%r506; .loc 1 1176 19 add.u64 %r508,%r264,1; st.u64 [%r280],%r508; .loc 1 1176 7 add.u64 %r180,%r219,1; .loc 1 1176 10 ld.u8 %r509,[%r264]; st.u8 [%r219],%r509; .loc 1 1180 8 setp.eq.u64 %r510,%r129,1; @ %r510 bra $L64; mov.u64 %r252,%r180; bra $L65; $L67: .loc 1 1175 11 ld.u32 %r512,[%r280+8]; add.u32 %r511,%r512,-1; st.u32 [%r280+8],%r511; .loc 1 1176 19 add.u64 %r513,%r110,1; st.u64 [%r280],%r513; add.u64 %r252,%r252,1; .loc 1 1176 10 ld.u8 %r514,[%r110]; st.u8 [%r180],%r514; .loc 1 1180 8 add.u64 %r515,%r219,%r129; setp.eq.u64 %r516,%r515,%r252; @ %r516 bra $L115; $L65: mov.u64 %r180,%r252; .loc 1 1182 8 ld.u32 %r517,[%r280+8]; setp.gt.s32 %r518,%r517,0; @ %r518 bra $L66; .loc 1 1182 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r521,[%value_in]; } setp.eq.u32 %r522,%r521,0; @ %r522 bra $L66; .loc 1 1184 12 setp.eq.u64 %r523,%r219,%r180; @ ! %r523 bra $L64; bra $L35; $L66: .loc 1 1173 25 ld.u64 %r110,[%r280]; .loc 1 1173 21 ld.u8 %r525,[%r110]; add.u64 %r526,%frame,%r525; .loc 1 1173 15 ld.u8 %r528,[%r526]; cvt.s16.s8 %r527,%r528; setp.ne.u16 %r529,%r527,0; @ %r529 bra $L67; bra $L64; $L115: .loc 1 1176 7 mov.u64 %r180,%r252; $L64: .loc 1 1189 14 sub.u64 %r530,%r180,%r219; .loc 1 1189 10 cvt.u32.u64 %r220,%r530; .loc 1 1190 11 setp.eq.u32 %r531,%r220,0; @ %r531 bra $L1; .loc 1 1192 11 mov.u32 %r532,0; st.u8 [%r180],%r532; .loc 1 1196 17 add.u32 %r278,%r278,1; .loc 1 1197 14 add.u32 %r157,%r157,%r220; bra $L7; $L50: .loc 1 1203 7 setp.ne.u64 %r533,%r129,0; .loc 1 1204 12 selp.u64 %r129,%r129,-1,%r533; .loc 1 1146 25 ld.u64 %r268,[%r280]; .loc 1 1283 16 ld.u8 %r534,[%r268]; add.u64 %r536,%r712,%r534; ld.u8 %r714,[%r536]; mov.u16 %r539,%r714; and.b16 %r538,%r539,8; cvt.u32.u16 %r540,%r538; cvt.s32.s8 %r274,%r540; .loc 1 1280 14 and.b32 %r541,%r182,16; .loc 1 1280 7 setp.eq.u32 %r542,%r541,0; @ %r542 bra $L69; .loc 1 1283 15 setp.ne.u32 %r543,%r274,0; @ %r543 bra $L7; .loc 1 1285 16 ld.u32 %r544,[%r280+8]; add.u32 %r117,%r544,-1; st.u32 [%r280+8],%r117; .loc 1 1285 26 add.u64 %r545,%r268,1; st.u64 [%r280],%r545; .loc 1 1286 8 add.u64 %r218,%r129,-1; setp.ne.u64 %r546,%r129,1; @ %r546 bra $L116; .loc 1 1291 14 add.u32 %r157,%r157,1; bra $L7; $L73: .loc 1 1285 6 add.u32 %r217,%r217,1; .loc 1 1285 16 ld.u32 %r547,[%r280+8]; add.u32 %r117,%r547,-1; st.u32 [%r280+8],%r117; .loc 1 1285 26 add.u64 %r548,%r121,1; st.u64 [%r280],%r548; .loc 1 1286 8 add.u64 %r218,%r218,-1; setp.ne.u64 %r549,%r218,0; @ %r549 bra $L71; .loc 1 1291 14 add.u32 %r157,%r157,%r217; bra $L7; $L116: .loc 1 1285 6 mov.u32 %r217,1; $L71: .loc 1 1288 8 setp.gt.s32 %r550,%r117,0; @ %r550 bra $L72; .loc 1 1288 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r553,[%value_in]; } setp.eq.u32 %r554,%r553,0; @ %r554 bra $L72; .loc 1 1291 14 add.u32 %r157,%r157,%r217; bra $L7; $L72: .loc 1 1283 16 ld.u64 %r121,[%r280]; ld.u8 %r555,[%r121]; add.u64 %r557,%r712,%r555; .loc 1 1283 15 ld.u8 %r714,[%r557]; mov.u16 %r560,%r714; and.b16 %r562,%r560,8; setp.eq.u16 %r563,%r562,0; @ %r563 bra $L73; .loc 1 1291 14 add.u32 %r157,%r157,%r217; bra $L7; $L69: .loc 1 1303 6 add.u64 %r238,%r282,7; and.b64 %r237,%r238,-8; add.u64 %r282,%r237,8; ld.u64 %r216,[%r237]; .loc 1 1305 15 setp.ne.u32 %r564,%r274,0; @ %r564 bra $L117; .loc 1 1307 11 ld.u32 %r566,[%r280+8]; add.u32 %r565,%r566,-1; st.u32 [%r280+8],%r565; .loc 1 1308 19 add.u64 %r567,%r268,1; st.u64 [%r280],%r567; .loc 1 1308 7 add.u64 %r119,%r216,1; .loc 1 1308 10 ld.u8 %r568,[%r268]; st.u8 [%r216],%r568; .loc 1 1312 8 setp.eq.u64 %r569,%r129,1; @ ! %r569 bra $L203; bra $L118; $L78: .loc 1 1307 11 ld.u32 %r571,[%r280+8]; add.u32 %r570,%r571,-1; st.u32 [%r280+8],%r570; .loc 1 1308 19 add.u64 %r572,%r135,1; st.u64 [%r280],%r572; add.u64 %r248,%r248,1; .loc 1 1308 10 ld.u8 %r573,[%r135]; st.u8 [%r119],%r573; .loc 1 1312 8 add.u64 %r574,%r216,%r129; setp.ne.u64 %r575,%r574,%r248; @ %r575 bra $L76; .loc 1 1321 19 sub.u64 %r576,%r248,%r216; .loc 1 1321 14 cvt.u32.u64 %r259,%r576; mov.u64 %r119,%r248; bra $L74; $L203: mov.u64 %r248,%r119; $L76: mov.u64 %r119,%r248; .loc 1 1314 8 ld.u32 %r577,[%r280+8]; setp.gt.s32 %r578,%r577,0; @ %r578 bra $L77; .loc 1 1314 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r581,[%value_in]; } setp.eq.u32 %r582,%r581,0; @ %r582 bra $L77; .loc 1 1321 19 sub.u64 %r583,%r119,%r216; .loc 1 1321 14 cvt.u32.u64 %r259,%r583; bra $L74; $L77: .loc 1 1305 16 ld.u64 %r135,[%r280]; ld.u8 %r584,[%r135]; add.u64 %r586,%r712,%r584; .loc 1 1305 15 ld.u8 %r714,[%r586]; mov.u16 %r589,%r714; and.b16 %r591,%r589,8; setp.eq.u16 %r592,%r591,0; @ %r592 bra $L78; .loc 1 1321 19 sub.u64 %r593,%r248,%r216; .loc 1 1321 14 cvt.u32.u64 %r259,%r593; bra $L74; $L117: .loc 1 1303 6 mov.u64 %r119,%r216; .loc 1 1305 15 mov.u32 %r259,%r541; bra $L74; $L118: .loc 1 1312 8 mov.u32 %r259,1; $L74: .loc 1 1317 11 mov.u32 %r594,0; st.u8 [%r119],%r594; .loc 1 1321 14 add.u32 %r157,%r157,%r259; .loc 1 1322 17 add.u32 %r278,%r278,1; bra $L7; $L51: .loc 1 1335 14 add.u64 %r595,%r129,-1; .loc 1 1335 7 setp.le.u64 %r596,%r595,38; @ %r596 bra $L119; .loc 1 1338 27 cvt.u32.u64 %r597,%r129; .loc 1 1338 19 add.u32 %r186,%r597,-39; .loc 1 1339 14 mov.u64 %r129,39; bra $L79; $L119: .loc 1 1329 13 mov.u32 %r186,0; $L79: .loc 1 1341 10 or.b32 %r183,%r182,3456; .loc 1 1330 8 mov.u32 %r187,0; .loc 1 1342 11 mov.u64 %r181,%r713; $L97: .loc 1 1344 15 ld.u64 %r145,[%r280]; .loc 1 1344 12 ld.u8 %r146,[%r145]; cvt.u16.u32 %r598,%r146; setp.gt.u16 %r599,%r598,57; @ %r599 bra $L80; setp.gt.u16 %r601,%r598,55; @ %r601 bra $L81; setp.eq.u16 %r603,%r598,48; @ %r603 bra $L82; setp.gt.u16 %r605,%r598,48; @ %r605 bra $L83; add.u16 %r606,%r598,-43; cvt.u32.u16 %r608,%r606; cvt.u16.u8 %r714,%r608; mov.u16 %r610,%r714; and.b16 %r612,%r610,253; setp.eq.u16 %r613,%r612,0; @ ! %r613 bra $L85; bra $L84; $L83: .loc 1 1390 19 cvta.const.u64 %r614,basefix$0; cvt.s64.s32 %r615,%r184; add.u64 %r616,%r615,%r615; add.u64 %r617,%r614,%r616; ld.s16 %r184,[%r617]; .loc 1 1391 11 and.b32 %r183,%r183,-2945; .loc 1 1392 5 bra $L86; $L80: setp.gt.u16 %r619,%r598,102; @ %r619 bra $L87; setp.gt.u16 %r621,%r598,96; @ %r621 bra $L88; setp.gt.u16 %r623,%r598,70; @ %r623 bra $L89; setp.gt.u16 %r625,%r598,64; @ ! %r625 bra $L85; bra $L88; $L89: setp.eq.u16 %r627,%r598,88; @ %r627 bra $L90; bra $L85; $L87: setp.eq.u16 %r629,%r598,120; @ %r629 bra $L90; bra $L85; $L82: .loc 1 1361 18 and.b32 %r630,%r183,2048; .loc 1 1361 8 setp.eq.u32 %r631,%r630,0; @ %r631 bra $L86; .loc 1 1363 8 setp.ne.u32 %r632,%r184,0; @ %r632 bra $L91; .loc 1 1366 15 or.b32 %r183,%r183,512; .loc 1 1365 14 mov.u32 %r184,8; $L91: .loc 1 1368 15 and.b32 %r633,%r183,1024; .loc 1 1368 8 setp.eq.u32 %r634,%r633,0; @ %r634 bra $L92; .loc 1 1370 15 and.b32 %r183,%r183,-1409; .loc 1 1371 9 bra $L86; $L92: .loc 1 1373 11 and.b32 %r183,%r183,-897; .loc 1 1374 8 setp.eq.u32 %r635,%r186,0; @ %r635 bra $L93; .loc 1 1376 19 add.u32 %r186,%r186,-1; .loc 1 1377 14 add.u64 %r129,%r129,1; $L93: .loc 1 1379 5 add.u32 %r187,%r187,1; .loc 1 1380 5 bra $L94; $L81: .loc 1 1397 19 cvta.const.u64 %r636,basefix$0; cvt.s64.s32 %r637,%r184; add.u64 %r638,%r637,%r637; add.u64 %r639,%r636,%r638; ld.s16 %r184,[%r639]; .loc 1 1398 8 setp.le.s32 %r640,%r184,8; @ %r640 bra $L85; .loc 1 1400 11 and.b32 %r183,%r183,-2945; .loc 1 1401 5 bra $L86; $L88: .loc 1 1417 8 setp.le.s32 %r641,%r184,10; @ %r641 bra $L85; .loc 1 1419 11 and.b32 %r183,%r183,-2945; .loc 1 1420 5 bra $L86; $L84: .loc 1 1425 15 and.b32 %r642,%r183,128; .loc 1 1425 8 setp.eq.u32 %r643,%r642,0; @ %r643 bra $L85; .loc 1 1427 15 and.b32 %r183,%r183,-129; .loc 1 1428 9 bra $L86; $L90: .loc 1 1435 16 and.b32 %r644,%r183,1536; .loc 1 1435 8 setp.ne.u32 %r645,%r644,512; @ %r645 bra $L85; .loc 1 1438 15 and.b32 %r204,%r183,-513; .loc 1 1442 15 or.b32 %r183,%r204,1280; .loc 1 1437 14 mov.u32 %r184,16; $L86: .loc 1 1457 13 cvt.u32.u32 %r646,%r146; st.u8 [%r181],%r646; .loc 1 1457 10 add.u64 %r181,%r181,1; $L94: .loc 1 1459 12 ld.u32 %r647,[%r280+8]; add.u32 %r156,%r647,-1; .loc 1 1459 11 st.u32 [%r280+8],%r156; setp.le.s32 %r648,%r156,0; @ %r648 bra $L95; .loc 1 1460 9 add.u64 %r649,%r145,1; st.u64 [%r280],%r649; bra $L96; $L95: .loc 1 1462 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r652,[%value_in]; } .loc 1 1462 11 setp.ne.u32 %r653,%r652,0; @ %r653 bra $L85; $L96: .loc 1 1342 30 add.u64 %r129,%r129,-1; .loc 1 1342 18 setp.ne.u64 %r654,%r129,0; @ %r654 bra $L97; $L85: .loc 1 1473 14 and.b32 %r655,%r183,256; .loc 1 1473 7 setp.eq.u32 %r656,%r655,0; @ %r656 bra $L98; .loc 1 1475 11 setp.le.u64 %r658,%r181,%r713; @ %r658 bra $L99; .loc 1 1476 3 add.u64 %r206,%r181,-1; ld.s8 %r662,[%r181+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r662; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r280; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r663,[%value_in]; } mov.u64 %r181,%r206; $L99: .loc 1 1477 11 setp.eq.u64 %r665,%r181,%r713; @ %r665 bra $L1; $L98: .loc 1 1480 15 and.b32 %r666,%r183,16; .loc 1 1480 7 setp.ne.u32 %r667,%r666,0; @ %r667 bra $L100; .loc 1 1484 11 mov.u32 %r668,0; st.u8 [%r181],%r668; .loc 1 1485 15 mov.u64 %r671,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r671; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r184; call (%value_in),%r70,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r674,[%value_in]; } .loc 1 888 11 add.u64 %r675,%r282,7; and.b64 %r262,%r675,-8; add.u64 %r282,%r262,8; .loc 1 1486 18 and.b32 %r676,%r183,32; .loc 1 1486 11 setp.eq.u32 %r677,%r676,0; @ %r677 bra $L101; .loc 1 1488 12 ld.u64 %r215,[%r262]; .loc 1 1498 11 st.u64 [%r215],%r674; bra $L102; $L101: .loc 1 1507 23 and.b32 %r678,%r183,4; .loc 1 1507 16 setp.eq.u32 %r679,%r678,0; @ %r679 bra $L103; .loc 1 1510 9 ld.u64 %r680,[%r262]; st.u16 [%r680],%r674; bra $L102; $L103: .loc 1 1512 23 and.b32 %r681,%r183,1; .loc 1 1512 16 setp.eq.u32 %r682,%r681,0; @ %r682 bra $L104; .loc 1 1515 9 ld.u64 %r683,[%r262]; st.u64 [%r683],%r674; bra $L102; $L104: .loc 1 1518 23 and.b32 %r684,%r183,2; .loc 1 1518 16 setp.eq.u32 %r685,%r684,0; @ %r685 bra $L105; .loc 1 1521 8 mov.u64 %r686,_strtoul_r; setp.ne.u64 %r687,%r70,%r686; @ %r687 bra $L106; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r671; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r184; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r693,[%value_in]; } .loc 1 1526 10 mov.u64 %r171,%r693; bra $L107; $L106: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r671; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r184; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r699,[%value_in]; } mov.u64 %r171,%r699; $L107: .loc 1 1526 10 ld.u64 %r700,[%r262]; st.u64 [%r700],%r171; bra $L102; $L105: .loc 1 1532 9 ld.u64 %r701,[%r262]; st.u32 [%r701],%r674; $L102: .loc 1 1534 17 add.u32 %r278,%r278,1; $L100: .loc 1 1536 15 sub.u64 %r703,%r181,%r713; .loc 1 1536 21 cvt.u32.u64 %r704,%r703; .loc 1 1536 10 vadd.u32.u32.u32.add %r157,%r157,%r187,%r704; .loc 1 1537 4 bra $L7; $L35: .loc 1 1905 63 setp.eq.u32 %r706,%r278,0; @ %r706 bra $L120; .loc 1 1905 25 ld.u16 %r708,[%r280+16]; and.b16 %r707,%r708,64; setp.ne.u16 %r709,%r707,0; .loc 1 1905 63 selp.u32 %r278,-1,%r278,%r709; bra $L1; $L109: .loc 1 613 10 mov.u32 %r278,%r27; bra $L1; $L120: .loc 1 1905 63 mov.u32 %r278,-1; $L3: $L108: $L1: .loc 1 1914 1 mov.u32 %value,%r278; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiscanf .visible .func (.param .u32 %value_out) vfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 231 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 233 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L205; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L205; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L205: .loc 1 234 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 235 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfiscanf .visible .func (.param .u32 %value_out) __svfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 242 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 243 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfiscanf_r .visible .func (.param .u32 %value_out) _vfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 253 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L211; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L211; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L211: .loc 1 254 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 255 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1804 0 0 0 644 48243 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _vfiwprintf_r .visible .func (.param .u32 %value_out) _vfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: vfiwprintf .visible .func (.param .u32 %value_out) vfiwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sprint_r .extern .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN GLOBAL FUNCTION DEF: _vfiwprintf_r .visible .func (.param .u32 %value_out) _vfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[1248]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r41; .reg .u64 %r59; .reg .u32 %r80; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r123; .reg .u32 %r124; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r146; .reg .u64 %r148; .reg .u32 %r149; .reg .u32 %r155; .reg .u64 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r170; .reg .u32 %r171; .reg .u64 %r175; .reg .u32 %r177; .reg .u32 %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u64 %r184; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r189; .reg .u64 %r190; .reg .u64 %r194; .reg .u64 %r195; .reg .u32 %r197; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r200; .reg .u32 %r204; .reg .u32 %r207; .reg .u64 %r209; .reg .u64 %r210; .reg .u64 %r221; .reg .u64 %r222; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u64 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r243; .reg .u64 %r252; .reg .u32 %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u32 %r261; .reg .u32 %r262; .reg .u32 %r263; .reg .u32 %r264; .reg .u64 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u32 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u64 %r276; .reg .u64 %r277; .reg .pred %r278; .reg .u32 %r279; .reg .pred %r280; .reg .u16 %r282; .reg .u16 %r283; .reg .pred %r284; .reg .u16 %r285; .reg .u32 %r288; .reg .u16 %r289; .reg .u16 %r290; .reg .pred %r291; .reg .u64 %r292; .reg .pred %r293; .reg .u32 %r296; .reg .pred %r297; .reg .u16 %r298; .reg .u16 %r299; .reg .pred %r300; .reg .u16 %r301; .reg .pred %r302; .reg .u16 %r303; .reg .u32 %r305; .reg .u64 %r307; .reg .u64 %r308; .reg .u32 %r309; .reg .u32 %r311; .reg .u64 %r316; .reg .u32 %r317; .reg .pred %r318; .reg .u32 %r322; .reg .pred %r323; .reg .u16 %r324; .reg .u16 %r325; .reg .pred %r326; .reg .u16 %r327; .reg .u16 %r328; .reg .u64 %r330; .reg .u32 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .u16 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u32 %r341; .reg .u16 %r342; .reg .pred %r343; .reg .u32 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .u16 %r350; .reg .u16 %r351; .reg .u16 %r352; .reg .u32 %r353; .reg .u16 %r354; .reg .pred %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .pred %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u32 %r363; .reg .pred %r364; .reg .u32 %r369; .reg .pred %r370; .reg .u16 %r371; .reg .u16 %r372; .reg .pred %r373; .reg .u32 %r374; .reg .pred %r375; .reg .pred %r376; .reg .pred %r377; .reg .pred %r378; .reg .pred %r379; .reg .pred %r380; .reg .pred %r381; .reg .pred %r382; .reg .pred %r383; .reg .pred %r384; .reg .pred %r385; .reg .pred %r386; .reg .pred %r387; .reg .u32 %r388; .reg .pred %r389; .reg .pred %r390; .reg .pred %r391; .reg .pred %r392; .reg .pred %r393; .reg .pred %r394; .reg .pred %r395; .reg .pred %r396; .reg .pred %r397; .reg .pred %r398; .reg .pred %r399; .reg .pred %r400; .reg .pred %r401; .reg .pred %r402; .reg .pred %r403; .reg .pred %r404; .reg .pred %r405; .reg .pred %r406; .reg .pred %r407; .reg .u32 %r408; .reg .pred %r409; .reg .u32 %r410; .reg .u32 %r412; .reg .u32 %r413; .reg .u32 %r414; .reg .u32 %r415; .reg .u32 %r416; .reg .pred %r417; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r421; .reg .u32 %r422; .reg .u32 %r423; .reg .pred %r424; .reg .pred %r425; .reg .pred %r426; .reg .u32 %r427; .reg .pred %r428; .reg .u32 %r430; .reg .pred %r431; .reg .u16 %r432; .reg .u16 %r433; .reg .u32 %r434; .reg .pred %r436; .reg .u32 %r437; .reg .pred %r438; .reg .u32 %r439; .reg .pred %r440; .reg .u32 %r441; .reg .pred %r442; .reg .u16 %r443; .reg .pred %r446; .reg .pred %r447; .reg .u64 %r448; .reg .u32 %r449; .reg .pred %r450; .reg .u64 %r451; .reg .u64 %r452; .reg .u32 %r453; .reg .pred %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u32 %r457; .reg .pred %r458; .reg .u64 %r459; .reg .u64 %r460; .reg .u32 %r461; .reg .pred %r462; .reg .u32 %r463; .reg .pred %r464; .reg .u32 %r465; .reg .pred %r466; .reg .u16 %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .u32 %r470; .reg .pred %r471; .reg .pred %r472; .reg .pred %r473; .reg .u32 %r475; .reg .u64 %r477; .reg .pred %r478; .reg .u64 %r480; .reg .pred %r481; .reg .u64 %r484; .reg .u64 %r485; .reg .u64 %r486; .reg .pred %r487; .reg .u16 %r488; .reg .u16 %r489; .reg .u64 %r491; .reg .u32 %r492; .reg .pred %r493; .reg .u32 %r494; .reg .u64 %r498; .reg .u64 %r500; .reg .u32 %r501; .reg .pred %r502; .reg .u32 %r504; .reg .u64 %r506; .reg .u64 %r507; .reg .pred %r508; .reg .u64 %r509; .reg .u64 %r511; .reg .u32 %r512; .reg .u64 %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .pred %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u16 %r521; .reg .pred %r522; .reg .u32 %r523; .reg .pred %r524; .reg .u32 %r525; .reg .pred %r526; .reg .u32 %r527; .reg .pred %r528; .reg .u16 %r529; .reg .u32 %r530; .reg .pred %r531; .reg .pred %r532; .reg .u32 %r533; .reg .pred %r534; .reg .u32 %r535; .reg .u32 %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .u32 %r539; .reg .u32 %r540; .reg .u16 %r541; .reg .u16 %r542; .reg .u16 %r543; .reg .u32 %r544; .reg .u16 %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .u32 %r549; .reg .u32 %r550; .reg .pred %r551; .reg .u32 %r552; .reg .u32 %r553; .reg .u32 %r554; .reg .u32 %r555; .reg .u16 %r556; .reg .u16 %r557; .reg .u32 %r558; .reg .u16 %r559; .reg .u16 %r560; .reg .u16 %r561; .reg .u32 %r562; .reg .u16 %r563; .reg .pred %r564; .reg .u64 %r566; .reg .u64 %r568; .reg .u32 %r569; .reg .u64 %r571; .reg .u64 %r573; .reg .pred %r574; .reg .u32 %r575; .reg .u32 %r576; .reg .u64 %r578; .reg .u32 %r579; .reg .u32 %r580; .reg .pred %r583; .reg .u64 %r585; .reg .u64 %r587; .reg .u64 %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u32 %r591; .reg .pred %r592; .reg .u64 %r594; .reg .u64 %r596; .reg .pred %r597; .reg .pred %r598; .reg .u32 %r599; .reg .pred %r600; .reg .pred %r601; .reg .u32 %r602; .reg .u32 %r603; .reg .pred %r604; .reg .pred %r606; .reg .pred %r607; .reg .pred %r608; .reg .u64 %r610; .reg .pred %r611; .reg .u32 %r616; .reg .pred %r617; .reg .pred %r618; .reg .u64 %r620; .reg .pred %r621; .reg .u32 %r626; .reg .pred %r627; .reg .u32 %r628; .reg .pred %r629; .reg .u64 %r631; .reg .pred %r632; .reg .u32 %r637; .reg .pred %r638; .reg .u64 %r641; .reg .pred %r642; .reg .u32 %r647; .reg .pred %r648; .reg .pred %r649; .reg .pred %r650; .reg .pred %r651; .reg .u64 %r653; .reg .pred %r654; .reg .u32 %r659; .reg .pred %r660; .reg .pred %r661; .reg .u64 %r663; .reg .pred %r664; .reg .u32 %r669; .reg .pred %r670; .reg .pred %r671; .reg .pred %r672; .reg .u64 %r674; .reg .pred %r675; .reg .u32 %r680; .reg .pred %r681; .reg .pred %r682; .reg .u64 %r684; .reg .pred %r685; .reg .u32 %r690; .reg .pred %r691; .reg .u64 %r692; .reg .pred %r693; .reg .u32 %r698; .reg .pred %r699; .reg .u32 %r700; .reg .pred %r701; .reg .pred %r702; .reg .pred %r703; .reg .u64 %r705; .reg .pred %r706; .reg .u32 %r711; .reg .pred %r712; .reg .pred %r713; .reg .u64 %r715; .reg .pred %r716; .reg .u32 %r721; .reg .pred %r722; .reg .u32 %r723; .reg .pred %r724; .reg .u32 %r725; .reg .pred %r726; .reg .u32 %r731; .reg .pred %r732; .reg .u64 %r735; .reg .pred %r736; .reg .u64 %r740; .reg .u32 %r741; .reg .pred %r742; .reg .u16 %r743; .reg .u16 %r744; .reg .u16 %r745; .reg .u16 %r746; .reg .pred %r747; .reg .u16 %r748; .reg .u16 %r749; .reg .u16 %r752; .reg .u16 %r753; .reg .pred %r754; .reg .pred %r756; .reg .pred %r757; .reg .u32 %r758; .reg .u32 %r759; .reg .u32 %r760; .reg .u32 %r761; .reg .u32 %r762; .reg .u32 %r763; .reg .u16 %r764; .reg .u16 %r765; .reg .u16 %r766; .reg .u32 %r767; .reg .u16 %r768; .reg .pred %r769; .reg .u64 %r770; .reg .u64 %r771; .reg .pred %r772; .reg .u64 %r774; .reg .pred %r775; .reg .u64 %r792; .reg .u64 %r793; .reg .u64 %r794; .reg .u64 %r795; .reg .u16 %r801; mov.u64 %r274,%ar0; mov.u64 %r275,%ar1; mov.u64 %r276,%ar2; mov.u64 %r277,%ar3; .loc 1 591 2 setp.eq.u64 %r278,%r274,0; @ %r278 bra $L2; ld.u32 %r279,[%r274+80]; setp.ne.u32 %r280,%r279,0; @ %r280 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; call __sinit,(%out_arg1); } $L2: .loc 1 594 2 ld.s16 %r24,[%r275+16]; cvt.u16.u32 %r283,%r24; and.b16 %r282,%r283,8192; setp.ne.u16 %r284,%r282,0; @ %r284 bra $L3; .loc 1 592 2 ld.u32 %r23,[%r275+172]; .loc 1 594 2 or.b16 %r285,%r283,8192; cvt.s32.s16 %r24,%r285; st.u16 [%r275+16],%r285; or.b32 %r288,%r23,8192; st.u32 [%r275+172],%r288; $L3: .loc 1 597 5 cvt.u16.u32 %r290,%r24; and.b16 %r289,%r290,8; setp.eq.u16 %r291,%r289,0; @ %r291 bra $L4; .loc 1 597 6 ld.u64 %r292,[%r275+24]; setp.ne.u64 %r293,%r292,0; @ %r293 bra $L5; $L4: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r296,[%value_in]; } setp.eq.u32 %r297,%r296,0; @ %r297 bra $L6; $L61: .loc 1 599 10 mov.u32 %r273,-1; bra $L1; $L6: .loc 1 604 9 ld.s16 %r24,[%r275+16]; $L5: .loc 1 604 5 cvt.u16.u32 %r299,%r24; and.b16 %r298,%r299,26; setp.ne.u16 %r300,%r298,10; @ %r300 bra $L8; .loc 1 604 60 ld.u16 %r301,[%r275+18]; setp.lt.s16 %r302,%r301,0; @ %r302 bra $L8; .loc 1 187 14 and.b16 %r303,%r299,-3; st.u16 [%frame+1040],%r303; .loc 1 188 15 ld.u32 %r305,[%r275+172]; st.u32 [%frame+1196],%r305; .loc 1 189 13 st.u16 [%frame+1042],%r301; .loc 1 190 15 ld.u64 %r307,[%r275+48]; st.u64 [%frame+1072],%r307; .loc 1 191 14 ld.u64 %r308,[%r275+64]; st.u64 [%frame+1088],%r308; .loc 1 194 27 st.u64 [%frame+1024],%frame; .loc 1 194 17 st.u64 [%frame+1048],%frame; .loc 1 195 27 mov.u32 %r309,1024; st.u32 [%frame+1036],%r309; .loc 1 195 17 st.u32 [%frame+1056],%r309; .loc 1 196 16 mov.u32 %r311,0; st.u32 [%frame+1064],%r311; .loc 1 202 8 add.u64 %r316,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r276; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r277; call (%value_in),_vfiwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r317,[%value_in]; } mov.u32 %r273,%r317; .loc 1 203 5 setp.lt.s32 %r318,%r273,0; @ %r318 bra $L9; .loc 1 203 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r322,[%value_in]; } .loc 1 203 15 setp.eq.u32 %r323,%r322,0; .loc 1 204 7 selp.u32 %r273,%r273,-1,%r323; $L9: .loc 1 205 5 ld.u16 %r325,[%frame+1040]; and.b16 %r324,%r325,64; setp.eq.u16 %r326,%r324,0; @ %r326 bra $L1; .loc 1 206 14 ld.u16 %r328,[%r275+16]; or.b16 %r327,%r328,64; st.u16 [%r275+16],%r327; .loc 1 607 11 bra $L1; $L8: .loc 1 626 14 add.u64 %r770,%frame,1024; st.u64 [%frame+1200],%r770; .loc 1 627 16 mov.u64 %r330,0; st.u64 [%frame+1216],%r330; .loc 1 628 17 mov.u32 %r331,0; st.u32 [%frame+1208],%r331; .loc 1 626 21 mov.u64 %r164,%r770; .loc 1 435 11 mov.u64 %r38,%r330; .loc 1 630 6 mov.u32 %r273,%r331; .loc 1 647 4 add.u64 %r792,%frame,1200; .loc 1 1438 4 add.u64 %r793,%frame,1224; .loc 1 1436 4 add.u64 %r794,%frame,1232; .loc 1 1319 7 add.u64 %r795,%frame,160; $L11: .loc 1 644 24 ld.u32 %r177,[%r276]; .loc 1 644 38 set.u32.ne.u32 %r333,%r177,0; neg.s32 %r334,%r333; mov.u32 %r332,%r334; set.u32.ne.u32 %r336,%r177,37; neg.s32 %r337,%r336; mov.u32 %r335,%r337; cvt.u16.u8 %r801,%r332; mov.u16 %r339,%r801; cvt.u16.u8 %r801,%r335; mov.u16 %r340,%r801; and.b16 %r338,%r339,%r340; cvt.u32.u16 %r341,%r338; cvt.u16.u8 %r342,%r341; setp.eq.u16 %r343,%r342,0; @ %r343 bra $L150; mov.u64 %r195,%r276; $L13: mov.u64 %r35,%r195; .loc 1 645 21 add.u64 %r195,%r195,4; .loc 1 644 24 ld.u32 %r177,[%r195]; .loc 1 644 38 set.u32.ne.u32 %r345,%r177,0; neg.s32 %r346,%r345; mov.u32 %r344,%r346; set.u32.ne.u32 %r348,%r177,37; neg.s32 %r349,%r348; mov.u32 %r347,%r349; cvt.u16.u8 %r801,%r344; mov.u16 %r351,%r801; cvt.u16.u8 %r801,%r347; mov.u16 %r352,%r801; and.b16 %r350,%r351,%r352; cvt.u32.u16 %r353,%r350; cvt.u16.u8 %r354,%r353; setp.ne.u16 %r355,%r354,0; @ %r355 bra $L13; .loc 1 646 16 sub.u64 %r356,%r195,%r276; shr.s64 %r358,%r356,2; .loc 1 646 10 cvt.u32.u64 %r178,%r358; .loc 1 646 6 setp.eq.u32 %r359,%r178,0; @ %r359 bra $L12; .loc 1 647 4 st.u64 [%r164],%r276; cvt.s64.s32 %r360,%r178; shl.b64 %r36,%r360,2; st.u64 [%r164+8],%r36; ld.u64 %r362,[%frame+1216]; add.u64 %r361,%r362,%r36; st.u64 [%frame+1216],%r361; ld.u32 %r363,[%frame+1208]; add.u32 %r41,%r363,1; st.u32 [%frame+1208],%r41; setp.le.s32 %r364,%r41,7; @ %r364 bra $L14; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r369,[%value_in]; } setp.eq.u32 %r370,%r369,0; @ %r370 bra $L151; ld.u16 %r372,[%r275+16]; and.b16 %r371,%r372,64; cvt.s32.s16 %r261,%r371; bra $L16; $L14: add.u64 %r164,%r164,16; bra $L15; $L151: mov.u64 %r164,%r770; $L15: .loc 1 648 8 add.u32 %r273,%r273,%r178; .loc 1 650 21 ld.u32 %r177,[%r35+4]; bra $L12; $L150: .loc 1 644 38 mov.u64 %r195,%r276; $L12: .loc 1 650 20 setp.eq.u32 %r373,%r177,0; @ %r373 bra $L17; .loc 1 653 6 add.u64 %r276,%r195,4; .loc 1 659 8 mov.u32 %r374,0; st.u32 [%frame+1232],%r374; .loc 1 671 14 ld.u32 %r262,[%r195+4]; mov.u32 %r179,%r374; mov.u32 %r180,%r374; .loc 1 658 8 mov.u32 %r158,-1; .loc 1 657 9 mov.u32 %r157,%r374; .loc 1 655 9 mov.u32 %r109,%r374; $L18: .loc 1 671 18 add.u64 %r276,%r276,4; .loc 1 671 12 mov.u32 %r155,%r262; $L19: .loc 1 672 11 setp.eq.u32 %r375,%r155,100; @ %r375 bra $L20; setp.gt.u32 %r376,%r155,100; @ %r376 bra $L21; setp.eq.u32 %r377,%r155,46; @ %r377 bra $L22; setp.gt.u32 %r378,%r155,46; @ %r378 bra $L23; setp.eq.u32 %r379,%r155,42; @ %r379 bra $L24; setp.gt.u32 %r380,%r155,42; @ %r380 bra $L25; setp.eq.u32 %r381,%r155,32; @ %r381 bra $L26; setp.eq.u32 %r382,%r155,35; @ %r382 bra $L27; bra $L252; $L25: setp.eq.u32 %r383,%r155,43; @ %r383 bra $L29; setp.eq.u32 %r384,%r155,45; @ %r384 bra $L30; bra $L31; $L23: setp.eq.u32 %r385,%r155,88; @ %r385 bra $L32; setp.gt.u32 %r386,%r155,88; @ %r386 bra $L33; setp.eq.u32 %r387,%r155,48; @ %r387 bra $L34; add.u32 %r388,%r155,-49; setp.gt.u32 %r389,%r388,8; @ %r389 bra $L31; mov.u64 %r186,%r276; .loc 1 817 6 mov.u32 %r157,0; bra $L35; $L33: .loc 1 672 11 setp.eq.u32 %r390,%r155,99; @ %r390 bra $L36; bra $L31; $L21: setp.eq.u32 %r391,%r155,112; @ %r391 bra $L37; setp.gt.u32 %r392,%r155,112; @ %r392 bra $L38; setp.eq.u32 %r393,%r155,108; @ %r393 bra $L39; setp.gt.u32 %r394,%r155,108; @ %r394 bra $L40; setp.eq.u32 %r395,%r155,104; @ %r395 bra $L41; setp.eq.u32 %r396,%r155,105; @ %r396 bra $L20; bra $L31; $L40: setp.eq.u32 %r397,%r155,110; @ %r397 bra $L42; setp.eq.u32 %r398,%r155,111; @ %r398 bra $L43; bra $L31; $L38: setp.eq.u32 %r399,%r155,117; @ %r399 bra $L44; setp.gt.u32 %r400,%r155,117; @ %r400 bra $L45; setp.eq.u32 %r401,%r155,113; @ %r401 bra $L46; setp.eq.u32 %r402,%r155,115; @ %r402 bra $L47; bra $L31; $L45: setp.ne.u32 %r403,%r155,120; @ %r403 bra $L31; setp.eq.u32 %r404,%r179,0; @ %r404 bra $L48; st.u32 [%frame+1232],%r180; $L48: .loc 1 1291 10 cvta.const.u64 %r38,$LC1; bra $L49; $L26: .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 704 7 setp.ne.u32 %r405,%r180,0; selp.u32 %r179,%r179,1,%r405; selp.u32 %r180,%r180,32,%r405; bra $L18; $L27: .loc 1 708 10 or.b32 %r109,%r109,1; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 709 4 bra $L18; $L24: .loc 1 747 10 add.u64 %r231,%r277,4; ld.u32 %r157,[%r277]; .loc 1 751 7 setp.lt.s32 %r406,%r157,0; @ %r406 bra $L51; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 747 10 mov.u64 %r277,%r231; bra $L18; $L51: .loc 1 753 10 neg.s32 %r157,%r157; .loc 1 747 10 mov.u64 %r277,%r231; $L30: .loc 1 756 10 or.b32 %r109,%r109,4; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 757 4 bra $L18; $L29: .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 760 4 mov.u32 %r179,1; .loc 1 759 9 mov.u32 %r180,%r155; .loc 1 760 4 bra $L18; $L22: .loc 1 762 18 add.u64 %r200,%r276,4; .loc 1 762 12 ld.u32 %r155,[%r276]; .loc 1 762 7 setp.eq.u32 %r407,%r155,42; @ %r407 bra $L52; .loc 1 801 11 add.u32 %r408,%r155,-48; setp.le.u32 %r409,%r408,9; @ %r409 bra $L53; .loc 1 762 18 mov.u64 %r276,%r200; .loc 1 801 11 mov.u32 %r158,%r374; bra $L19; $L52: ld.u32 %r410,[%r277]; max.s32 %r158,%r410,-1; .loc 1 671 14 ld.u32 %r262,[%r276+4]; .loc 1 792 10 add.u64 %r277,%r277,4; .loc 1 762 18 mov.u64 %r276,%r200; .loc 1 798 5 bra $L18; $L53: mov.u64 %r189,%r200; .loc 1 800 6 mov.u32 %r146,%r374; $L55: .loc 1 802 12 shl.b32 %r412,%r146,2; add.u32 %r413,%r412,%r146; add.u32 %r414,%r413,%r413; .loc 1 802 16 add.u32 %r415,%r414,-48; add.u32 %r146,%r415,%r155; mov.u64 %r187,%r189; add.u64 %r276,%r189,4; mov.u64 %r189,%r276; .loc 1 803 8 ld.u32 %r155,[%r187]; .loc 1 801 11 add.u32 %r416,%r155,-48; setp.le.u32 %r417,%r416,9; @ %r417 bra $L55; .loc 1 805 9 max.s32 %r158,%r146,-1; .loc 1 806 4 bra $L19; $L34: .loc 1 813 10 or.b32 %r109,%r109,128; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 814 4 bra $L18; $L35: .loc 1 819 12 shl.b32 %r419,%r157,2; add.u32 %r420,%r419,%r157; add.u32 %r421,%r420,%r420; .loc 1 819 16 add.u32 %r422,%r421,-48; add.u32 %r157,%r422,%r155; mov.u64 %r126,%r186; add.u64 %r186,%r186,4; mov.u64 %r276,%r186; .loc 1 820 8 ld.u32 %r155,[%r126]; .loc 1 821 13 add.u32 %r423,%r155,-48; setp.le.u32 %r424,%r423,9; @ %r424 bra $L35; bra $L19; $L41: .loc 1 847 11 or.b32 %r109,%r109,64; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 848 4 bra $L18; $L39: .loc 1 851 8 ld.u32 %r262,[%r276]; .loc 1 851 7 setp.ne.u32 %r425,%r262,108; @ %r425 bra $L57; .loc 1 853 11 or.b32 %r109,%r109,32; .loc 1 671 14 ld.u32 %r262,[%r276+4]; .loc 1 852 8 add.u64 %r276,%r276,4; bra $L18; $L57: .loc 1 856 11 or.b32 %r109,%r109,16; bra $L18; $L46: .loc 1 859 10 or.b32 %r109,%r109,32; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 860 4 bra $L18; $L36: setp.eq.u32 %r426,%r179,0; @ %r426 bra $L58; st.u32 [%frame+1232],%r180; $L58: .loc 1 747 10 ld.u32 %r171,[%r277]; add.u64 %r277,%r277,4; .loc 1 903 30 and.b32 %r427,%r109,16; .loc 1 903 19 setp.ne.u32 %r428,%r427,0; @ %r428 bra $L59; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r171; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r430,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r431,%r430,-1; @ %r431 bra $L60; .loc 1 906 20 ld.u16 %r433,[%r275+16]; or.b16 %r432,%r433,64; st.u16 [%r275+16],%r432; bra $L61; $L60: .loc 1 909 13 mov.u32 %r171,%r430; $L59: .loc 1 909 11 st.u32 [%frame],%r171; .loc 1 915 10 mov.u32 %r434,0; st.u32 [%frame+4],%r434; .loc 1 917 9 st.u32 [%frame+1232],%r434; .loc 1 918 4 mov.u32 %r161,1; .loc 1 916 9 mov.u32 %r163,%r161; .loc 1 902 7 mov.u64 %r156,%frame; .loc 1 918 4 bra $L62; $L20: setp.eq.u32 %r436,%r179,0; @ %r436 bra $L63; st.u32 [%frame+1232],%r180; $L63: .loc 1 921 13 and.b32 %r437,%r109,32; setp.eq.u32 %r438,%r437,0; @ %r438 bra $L64; add.u64 %r232,%r277,7; and.b64 %r233,%r232,-8; add.u64 %r277,%r233,8; ld.u64 %r59,[%r233]; mov.u64 %r159,%r59; bra $L65; $L64: and.b32 %r439,%r109,16; setp.eq.u32 %r440,%r439,0; @ %r440 bra $L66; add.u64 %r222,%r277,7; and.b64 %r235,%r222,-8; add.u64 %r277,%r235,8; ld.u64 %r59,[%r235]; mov.u64 %r159,%r59; bra $L65; $L66: .loc 1 747 10 ld.u32 %r264,[%r277]; add.u64 %r277,%r277,4; .loc 1 921 13 and.b32 %r441,%r109,64; setp.eq.u32 %r442,%r441,0; @ %r442 bra $L67; cvt.u16.u32 %r443,%r264; cvt.s64.s16 %r159,%r443; .loc 1 923 8 mov.u64 %r59,%r159; bra $L65; $L67: .loc 1 921 13 cvt.s64.s32 %r159,%r264; .loc 1 923 8 mov.u64 %r59,%r159; $L65: .loc 1 923 7 setp.ge.s64 %r446,%r59,0; @ %r446 bra $L68; .loc 1 929 12 neg.s64 %r159,%r159; mov.u32 %r170,45; .loc 1 932 9 mov.u32 %r160,1; bra $L69; $L42: setp.eq.u32 %r447,%r179,0; @ %r447 bra $L70; st.u32 [%frame+1232],%r180; $L70: .loc 1 921 13 add.u64 %r448,%r277,7; and.b64 %r267,%r448,-8; add.u64 %r277,%r267,8; .loc 1 1132 14 and.b32 %r449,%r109,32; .loc 1 1132 7 setp.eq.u32 %r450,%r449,0; @ %r450 bra $L71; .loc 1 1133 34 ld.u64 %r451,[%r267]; cvt.s64.s32 %r452,%r273; st.u64 [%r451],%r452; bra $L11; $L71: .loc 1 1136 14 and.b32 %r453,%r109,16; .loc 1 1136 7 setp.eq.u32 %r454,%r453,0; @ %r454 bra $L73; .loc 1 1137 34 ld.u64 %r455,[%r267]; cvt.s64.s32 %r456,%r273; st.u64 [%r455],%r456; bra $L11; $L73: .loc 1 1138 19 and.b32 %r457,%r109,64; .loc 1 1138 12 setp.eq.u32 %r458,%r457,0; @ %r458 bra $L74; .loc 1 1139 35 ld.u64 %r459,[%r267]; st.u16 [%r459],%r273; bra $L11; $L74: .loc 1 1145 33 ld.u64 %r460,[%r267]; st.u32 [%r460],%r273; bra $L11; $L43: .loc 1 1148 13 and.b32 %r461,%r109,32; setp.eq.u32 %r462,%r461,0; @ %r462 bra $L75; add.u64 %r225,%r277,7; and.b64 %r224,%r225,-8; add.u64 %r277,%r224,8; ld.u64 %r159,[%r224]; .loc 1 1149 9 mov.u32 %r160,0; bra $L76; $L75: .loc 1 1148 13 and.b32 %r463,%r109,16; setp.eq.u32 %r464,%r463,0; @ %r464 bra $L77; add.u64 %r226,%r277,7; and.b64 %r190,%r226,-8; add.u64 %r277,%r190,8; ld.u64 %r159,[%r190]; .loc 1 1149 9 mov.u32 %r160,0; bra $L76; $L77: .loc 1 747 10 ld.u32 %r268,[%r277]; add.u64 %r277,%r277,4; .loc 1 1148 13 and.b32 %r465,%r109,64; setp.eq.u32 %r466,%r465,0; @ %r466 bra $L78; cvt.u16.u32 %r467,%r268; cvt.u64.u16 %r159,%r467; .loc 1 1149 9 mov.u32 %r160,0; bra $L76; $L78: .loc 1 1148 13 cvt.u64.u32 %r159,%r268; .loc 1 1149 9 mov.u32 %r160,%r465; bra $L76; $L37: .loc 1 1163 25 add.u64 %r227,%r277,7; and.b64 %r210,%r227,-8; add.u64 %r277,%r210,8; .loc 1 1163 11 ld.u64 %r159,[%r210]; .loc 1 1166 10 or.b32 %r109,%r109,2; .loc 1 1167 10 mov.u32 %r468,48; st.u32 [%frame+1224],%r468; .loc 1 1168 10 mov.u32 %r469,120; st.u32 [%frame+1228],%r469; .loc 1 1165 10 cvta.const.u64 %r38,$LC1; .loc 1 1164 9 mov.u32 %r160,2; .loc 1 1169 4 bra $L76; $L47: .loc 1 1174 7 add.u64 %r228,%r277,7; and.b64 %r209,%r228,-8; add.u64 %r277,%r209,8; ld.u64 %r156,[%r209]; .loc 1 1178 9 mov.u32 %r470,0; st.u32 [%frame+1232],%r470; .loc 1 1184 7 setp.ne.u64 %r471,%r156,0; @ %r471 bra $L79; .loc 1 1186 39 min.u32 %r163,%r158,6; mov.u32 %r161,%r163; .loc 1 1185 8 cvta.const.u64 %r156,$LC2; bra $L62; $L79: .loc 1 1242 30 and.b32 %r80,%r109,16; .loc 1 1242 19 setp.ne.u32 %r472,%r80,0; @ %r472 bra $L80; .loc 1 1246 8 setp.eq.u32 %r473,%r158,-1; @ %r473 bra $L81; .loc 1 1247 16 cvt.s64.s32 %r168,%r158; mov.u32 %r475,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r475; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r168; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r477,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r478,%r477,0; @ %r478 bra $L82; .loc 1 1248 21 sub.u64 %r168,%r477,%r156; bra $L82; $L81: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r480,[%value_in]; } mov.u64 %r168,%r480; $L82: .loc 1 1251 8 setp.le.u64 %r481,%r168,39; @ %r481 bra $L83; .loc 1 1252 64 add.u64 %r484,%r168,1; .loc 1 1252 39 shl.b64 %r485,%r484,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r485; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r486,[%value_in]; } mov.u64 %r184,%r486; .loc 1 1252 12 setp.ne.u64 %r487,%r486,0; @ %r487 bra $L152; .loc 1 1254 18 ld.u16 %r489,[%r275+16]; or.b16 %r488,%r489,64; st.u16 [%r275+16],%r488; bra $L61; $L83: .loc 1 1260 25 setp.eq.u64 %r775,%r168,0; @ %r775 bra $L153; mov.u64 %r167,0; .loc 1 1259 9 mov.u64 %r184,%frame; bra $L84; $L152: mov.u64 %r167,%r184; setp.eq.u64 %r775,%r168,0; $L84: mov.u64 %r194,%r184; mov.u64 %r198,0; $L86: .loc 1 1261 20 add.u64 %r491,%r156,%r198; ld.s8 %r492,[%r491]; st.u32 [%r194],%r492; .loc 1 1260 25 add.u64 %r198,%r198,1; add.u64 %r194,%r194,4; setp.gt.u64 %r493,%r168,%r198; @ %r493 bra $L86; .loc 1 1260 35 @ %r775 bra $L87; cvt.u32.u64 %r494,%r168; bra $L88; $L87: mov.u32 %r494,1; $L88: mov.u32 %r163,%r494; .loc 1 1260 25 selp.u64 %r498,1,%r168,%r775; .loc 1 1262 7 shl.b64 %r500,%r498,2; add.u64 %r243,%r184,%r500; mov.u32 %r161,%r163; mov.u64 %r156,%r184; bra $L85; $L153: .loc 1 1260 25 mov.u32 %r161,%r80; .loc 1 1260 15 mov.u32 %r163,%r80; .loc 1 1260 25 mov.u64 %r243,%frame; mov.u64 %r167,%r168; .loc 1 1259 9 mov.u64 %r156,%frame; $L85: .loc 1 1262 14 mov.u32 %r501,0; st.u32 [%r243],%r501; .loc 1 656 9 mov.u32 %r158,%r80; .loc 1 1242 42 mov.u32 %r134,%r109; bra $L91; $L80: .loc 1 1265 12 setp.eq.u32 %r502,%r158,-1; @ %r502 bra $L92; .loc 1 1271 18 cvt.s64.s32 %r506,%r158; mov.u32 %r504,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r504; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r506; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r507,[%value_in]; } mov.u64 %r167,%r507; .loc 1 1273 8 setp.eq.u64 %r508,%r167,0; @ %r508 bra $L154; .loc 1 1274 15 sub.u64 %r509,%r167,%r156; shr.s64 %r511,%r509,2; .loc 1 1274 11 cvt.u32.u64 %r512,%r511; min.s32 %r163,%r512,%r158; .loc 1 1424 10 max.s32 %r161,%r163,0; mov.u32 %r134,%r109; mov.u64 %r167,0; .loc 1 656 9 mov.u32 %r158,%r504; bra $L91; $L92: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r514,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r163,%r514; .loc 1 1424 10 max.s32 %r161,%r163,0; mov.u32 %r134,%r109; mov.u64 %r167,0; .loc 1 656 9 mov.u32 %r158,0; bra $L91; $L44: .loc 1 1284 13 and.b32 %r515,%r109,32; setp.eq.u32 %r516,%r515,0; @ %r516 bra $L93; add.u64 %r175,%r277,7; and.b64 %r239,%r175,-8; add.u64 %r277,%r239,8; ld.u64 %r159,[%r239]; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L93: .loc 1 1284 13 and.b32 %r517,%r109,16; setp.eq.u32 %r518,%r517,0; @ %r518 bra $L94; add.u64 %r230,%r277,7; and.b64 %r229,%r230,-8; add.u64 %r277,%r229,8; ld.u64 %r159,[%r229]; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L94: .loc 1 747 10 ld.u32 %r269,[%r277]; add.u64 %r277,%r277,4; .loc 1 1284 13 and.b32 %r519,%r109,64; setp.eq.u32 %r520,%r519,0; @ %r520 bra $L95; cvt.u16.u32 %r521,%r269; cvt.u64.u16 %r159,%r521; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L95: .loc 1 1284 13 cvt.u64.u32 %r159,%r269; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L32: setp.eq.u32 %r522,%r179,0; @ %r522 bra $L96; st.u32 [%frame+1232],%r180; $L96: .loc 1 1288 10 cvta.const.u64 %r38,$LC0; $L49: .loc 1 1292 17 and.b32 %r523,%r109,32; setp.eq.u32 %r524,%r523,0; @ %r524 bra $L97; add.u64 %r236,%r277,7; and.b64 %r221,%r236,-8; add.u64 %r277,%r221,8; ld.u64 %r159,[%r221]; bra $L98; $L97: and.b32 %r525,%r109,16; setp.eq.u32 %r526,%r525,0; @ %r526 bra $L99; add.u64 %r238,%r277,7; and.b64 %r237,%r238,-8; add.u64 %r277,%r237,8; ld.u64 %r159,[%r237]; bra $L98; $L99: .loc 1 747 10 ld.u32 %r263,[%r277]; add.u64 %r277,%r277,4; .loc 1 1292 17 and.b32 %r527,%r109,64; setp.eq.u32 %r528,%r527,0; @ %r528 bra $L100; cvt.u16.u32 %r529,%r263; cvt.u64.u16 %r159,%r529; bra $L98; $L100: cvt.u64.u32 %r159,%r263; $L98: .loc 1 1295 14 and.b32 %r530,%r109,1; .loc 1 1295 7 setp.eq.u32 %r531,%r530,0; @ %r531 bra $L155; .loc 1 1295 20 setp.eq.u64 %r532,%r159,0; @ %r532 bra $L156; .loc 1 1296 11 mov.u32 %r533,48; st.u32 [%frame+1224],%r533; .loc 1 1297 11 st.u32 [%frame+1228],%r155; .loc 1 1298 11 or.b32 %r109,%r109,2; .loc 1 1293 9 mov.u32 %r160,2; bra $L76; $L155: mov.u32 %r160,2; bra $L76; $L156: mov.u32 %r160,2; $L76: .loc 1 1305 1 mov.u32 %r170,0; $L69: .loc 1 930 10 st.u32 [%frame+1232],%r170; .loc 1 1311 14 setp.eq.u32 %r534,%r158,-1; @ %r534 bra $L101; .loc 1 1312 11 and.b32 %r134,%r109,-129; .loc 1 1320 15 set.u32.ne.u64 %r536,%r159,0; neg.s32 %r537,%r536; mov.u32 %r535,%r537; .loc 1 1320 28 set.u32.ne.u32 %r539,%r158,0; neg.s32 %r540,%r539; mov.u32 %r538,%r540; .loc 1 1320 20 cvt.u16.u8 %r801,%r535; mov.u16 %r542,%r801; cvt.u16.u8 %r801,%r538; mov.u16 %r543,%r801; or.b16 %r541,%r542,%r543; cvt.u32.u16 %r544,%r541; .loc 1 1320 7 cvt.u16.u8 %r545,%r544; setp.eq.u16 %r546,%r545,0; @ %r546 bra $L102; .loc 1 1312 11 mov.u32 %r109,%r134; $L101: setp.eq.u32 %r547,%r160,1; @ %r547 bra $L103; setp.eq.u32 %r548,%r160,2; @ %r548 bra $L157; mov.u64 %r156,%r795; $L105: mov.u64 %r140,%r156; .loc 1 1329 13 add.u64 %r156,%r156,-4; .loc 1 1329 15 cvt.u32.u64 %r549,%r159; and.b32 %r550,%r549,7; add.u32 %r108,%r550,48; .loc 1 1329 13 st.u32 [%r156],%r108; .loc 1 1330 14 shr.u64 %r159,%r159,3; .loc 1 1331 15 setp.ne.u64 %r551,%r159,0; @ %r551 bra $L105; .loc 1 1333 22 set.u32.ne.u32 %r553,%r108,48; neg.s32 %r554,%r553; mov.u32 %r552,%r554; .loc 1 1333 9 mov.u32 %r555,%r109; cvt.u16.u8 %r801,%r555; mov.u16 %r557,%r801; and.b16 %r556,%r557,1; cvt.u32.u16 %r558,%r556; .loc 1 1333 22 cvt.u16.u8 %r801,%r552; mov.u16 %r560,%r801; cvt.u16.u8 %r801,%r558; mov.u16 %r561,%r801; and.b16 %r559,%r560,%r561; cvt.u32.u16 %r562,%r559; cvt.u16.u8 %r563,%r562; setp.ne.u16 %r564,%r563,0; @ %r564 bra $L106; .loc 1 1395 21 sub.u64 %r566,%r795,%r156; shr.s64 %r568,%r566,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r568; mov.u32 %r134,%r109; bra $L107; $L106: .loc 1 1334 13 add.u64 %r199,%r140,-8; mov.u32 %r569,48; st.u32 [%r156+-4],%r569; .loc 1 1395 21 sub.u64 %r571,%r795,%r199; shr.s64 %r573,%r571,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r573; mov.u32 %r134,%r109; .loc 1 1334 13 mov.u64 %r156,%r199; bra $L107; $L161: .loc 1 1312 11 mov.u32 %r109,%r134; $L103: .loc 1 1339 9 setp.gt.u64 %r574,%r159,9; @ %r574 bra $L158; .loc 1 1340 15 cvt.u32.u64 %r575,%r159; add.u32 %r576,%r575,48; .loc 1 1340 13 st.u32 [%frame+156],%r576; .loc 1 1341 7 mov.u32 %r134,%r109; mov.u32 %r163,1; .loc 1 1340 13 add.u64 %r156,%frame,156; .loc 1 1341 7 bra $L107; $L158: .loc 1 1319 7 mov.u64 %r156,%r795; $L108: .loc 1 1347 14 add.u64 %r156,%r156,-4; .loc 1 1347 16 rem.u64 %r578,%r159,10; cvt.u32.u64 %r579,%r578; add.u32 %r580,%r579,48; .loc 1 1347 14 st.u32 [%r156],%r580; mov.u64 %r137,%r159; .loc 1 1366 15 div.u64 %r159,%r159,10; .loc 1 1367 22 setp.gt.u64 %r583,%r137,9; @ %r583 bra $L108; .loc 1 1395 21 sub.u64 %r585,%r795,%r156; shr.s64 %r587,%r585,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r587; mov.u32 %r134,%r109; bra $L107; $L157: mov.u64 %r156,%r795; $L104: .loc 1 1372 13 add.u64 %r156,%r156,-4; .loc 1 1372 28 and.b64 %r588,%r159,15; .loc 1 1372 20 shl.b64 %r589,%r588,2; add.u64 %r590,%r38,%r589; .loc 1 1372 13 ld.u32 %r591,[%r590]; st.u32 [%r156],%r591; .loc 1 1373 14 shr.u64 %r159,%r159,4; .loc 1 1374 15 setp.ne.u64 %r592,%r159,0; @ %r592 bra $L104; .loc 1 1395 21 sub.u64 %r594,%r795,%r156; shr.s64 %r596,%r594,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r596; mov.u32 %r134,%r109; bra $L107; $L102: .loc 1 1392 32 setp.ne.u32 %r597,%r160,0; @ %r597 bra $L159; .loc 1 1392 55 and.b32 %r163,%r109,1; .loc 1 1392 45 setp.eq.u32 %r598,%r163,0; @ %r598 bra $L160; .loc 1 1393 32 mov.u32 %r599,48; st.u32 [%frame+156],%r599; mov.u32 %r158,%r160; add.u64 %r156,%frame,156; bra $L107; $L159: mov.u32 %r158,0; mov.u32 %r163,%r158; .loc 1 1319 7 add.u64 %r156,%frame,160; bra $L107; $L160: mov.u32 %r158,%r160; add.u64 %r156,%frame,160; $L107: .loc 1 1424 10 max.s32 %r161,%r158,%r163; mov.u64 %r167,0; bra $L91; $L252: setp.eq.u32 %r600,%r179,0; @ %r600 bra $L109; $L148: st.u32 [%frame+1232],%r180; $L109: .loc 1 1399 7 setp.eq.u32 %r601,%r155,0; @ %r601 bra $L17; $L149: .loc 1 1403 8 st.u32 [%frame],%r155; .loc 1 1405 9 mov.u32 %r602,0; st.u32 [%frame+1232],%r602; .loc 1 1406 4 mov.u32 %r161,1; .loc 1 1404 9 mov.u32 %r163,%r161; .loc 1 1402 7 mov.u64 %r156,%frame; .loc 1 1406 4 bra $L62; $L154: mov.u32 %r161,%r158; mov.u32 %r163,%r158; mov.u32 %r134,%r109; .loc 1 656 9 mov.u32 %r158,%r504; $L91: .loc 1 1425 6 ld.u32 %r603,[%frame+1232]; setp.eq.u32 %r604,%r603,0; @ %r604 bra $L110; .loc 1 1426 10 add.u32 %r161,%r161,1; $L110: .loc 1 1427 13 and.b32 %r123,%r134,2; .loc 1 1427 6 setp.eq.u32 %r772,%r123,0; @ %r772 bra $L111; .loc 1 1428 10 add.u32 %r161,%r161,2; $L111: .loc 1 1431 14 and.b32 %r124,%r134,132; .loc 1 1432 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1431 6 setp.ne.u32 %r606,%r124,0; @ %r606 bra $L112; .loc 1 1432 4 sub.u32 %r204,%r157,%r161; setp.le.s32 %r607,%r204,0; @ %r607 bra $L112; setp.le.s32 %r608,%r204,16; @ ! %r608 bra $L253; cvta.const.u64 %r771,blanks$1; bra $L113; $L253: cvta.const.u64 %r771,blanks$1; $L117: st.u64 [%r164],%r771; mov.u64 %r610,64; st.u64 [%r164+8],%r610; add.u64 %r252,%r252,64; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r611,%r253,7; @ %r611 bra $L114; add.u64 %r164,%r164,16; bra $L115; $L114: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r616,[%value_in]; } setp.ne.u32 %r617,%r616,0; @ %r617 bra $L116; ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; mov.u64 %r164,%r770; $L115: add.u32 %r204,%r204,-16; setp.gt.s32 %r618,%r204,16; @ %r618 bra $L117; $L113: st.u64 [%r164],%r771; cvt.s64.s32 %r620,%r204; shl.b64 %r127,%r620,2; st.u64 [%r164+8],%r127; add.u64 %r252,%r252,%r127; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r621,%r253,7; @ %r621 bra $L118; add.u64 %r164,%r164,16; bra $L112; $L118: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r626,[%value_in]; } setp.ne.u32 %r627,%r626,0; @ %r627 bra $L116; .loc 1 1436 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1432 4 mov.u64 %r164,%r770; $L112: .loc 1 1435 6 ld.u32 %r628,[%frame+1232]; setp.eq.u32 %r629,%r628,0; @ %r629 bra $L119; .loc 1 1436 4 add.u32 %r253,%r253,1; st.u64 [%r164],%r794; mov.u64 %r631,4; st.u64 [%r164+8],%r631; add.u64 %r252,%r252,4; st.u64 [%frame+1216],%r252; st.u32 [%frame+1208],%r253; setp.gt.s32 %r632,%r253,7; @ %r632 bra $L120; add.u64 %r164,%r164,16; bra $L119; $L120: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r637,[%value_in]; } setp.ne.u32 %r638,%r637,0; @ %r638 bra $L116; .loc 1 1438 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1436 4 mov.u64 %r164,%r770; $L119: .loc 1 1437 6 @ %r772 bra $L121; .loc 1 1438 4 add.u32 %r253,%r253,1; st.u64 [%r164],%r793; mov.u64 %r641,8; st.u64 [%r164+8],%r641; add.u64 %r252,%r252,8; st.u64 [%frame+1216],%r252; st.u32 [%frame+1208],%r253; setp.gt.s32 %r642,%r253,7; @ %r642 bra $L122; add.u64 %r164,%r164,16; bra $L121; $L122: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r647,[%value_in]; } setp.ne.u32 %r648,%r647,0; @ %r648 bra $L116; .loc 1 1442 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1438 4 mov.u64 %r164,%r770; $L121: .loc 1 1441 6 setp.ne.u32 %r649,%r124,128; @ %r649 bra $L123; .loc 1 1442 4 sub.u32 %r142,%r157,%r161; setp.le.s32 %r650,%r142,0; @ %r650 bra $L123; setp.le.s32 %r651,%r142,16; @ ! %r651 bra $L254; cvta.const.u64 %r774,zeroes$0; bra $L124; $L254: cvta.const.u64 %r774,zeroes$0; $L127: st.u64 [%r164],%r774; mov.u64 %r653,64; st.u64 [%r164+8],%r653; add.u64 %r252,%r252,64; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r654,%r253,7; @ %r654 bra $L125; add.u64 %r164,%r164,16; bra $L126; $L125: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r659,[%value_in]; } setp.ne.u32 %r660,%r659,0; @ %r660 bra $L116; ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; mov.u64 %r164,%r770; $L126: add.u32 %r142,%r142,-16; setp.gt.s32 %r661,%r142,16; @ %r661 bra $L127; $L124: st.u64 [%r164],%r774; cvt.s64.s32 %r663,%r142; shl.b64 %r133,%r663,2; st.u64 [%r164+8],%r133; add.u64 %r252,%r252,%r133; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r664,%r253,7; @ %r664 bra $L128; add.u64 %r164,%r164,16; bra $L123; $L128: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r669,[%value_in]; } setp.ne.u32 %r670,%r669,0; @ %r670 bra $L116; .loc 1 1445 3 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1442 4 mov.u64 %r164,%r770; $L123: .loc 1 1445 3 sub.u32 %r207,%r158,%r163; setp.le.s32 %r671,%r207,0; @ %r671 bra $L129; setp.le.s32 %r672,%r207,16; @ ! %r672 bra $L255; cvta.const.u64 %r774,zeroes$0; bra $L130; $L255: cvta.const.u64 %r774,zeroes$0; $L133: st.u64 [%r164],%r774; mov.u64 %r674,64; st.u64 [%r164+8],%r674; add.u64 %r252,%r252,64; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r675,%r253,7; @ %r675 bra $L131; add.u64 %r164,%r164,16; bra $L132; $L131: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r680,[%value_in]; } setp.ne.u32 %r681,%r680,0; @ %r681 bra $L116; ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; mov.u64 %r164,%r770; $L132: add.u32 %r207,%r207,-16; setp.gt.s32 %r682,%r207,16; @ %r682 bra $L133; $L130: st.u64 [%r164],%r774; cvt.s64.s32 %r684,%r207; shl.b64 %r138,%r684,2; st.u64 [%r164+8],%r138; add.u64 %r252,%r252,%r138; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r685,%r253,7; @ %r685 bra $L134; add.u64 %r164,%r164,16; bra $L129; $L134: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r690,[%value_in]; } setp.ne.u32 %r691,%r690,0; @ %r691 bra $L116; .loc 1 1512 3 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1445 3 mov.u64 %r164,%r770; $L129: .loc 1 1512 3 st.u64 [%r164],%r156; cvt.s64.s32 %r692,%r163; shl.b64 %r141,%r692,2; st.u64 [%r164+8],%r141; add.u64 %r254,%r141,%r252; st.u64 [%frame+1216],%r254; add.u32 %r143,%r253,1; st.u32 [%frame+1208],%r143; setp.gt.s32 %r693,%r143,7; @ %r693 bra $L135; add.u64 %r165,%r164,16; bra $L136; $L135: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r698,[%value_in]; } setp.ne.u32 %r699,%r698,0; @ %r699 bra $L116; .loc 1 1516 4 ld.u64 %r254,[%frame+1216]; .loc 1 1512 3 mov.u64 %r165,%r770; $L136: .loc 1 1515 13 and.b32 %r700,%r134,4; .loc 1 1515 6 setp.eq.u32 %r701,%r700,0; @ %r701 bra $L137; .loc 1 1516 4 sub.u32 %r197,%r157,%r161; setp.le.s32 %r702,%r197,0; @ %r702 bra $L137; ld.u32 %r255,[%frame+1208]; setp.le.s32 %r703,%r197,16; @ ! %r703 bra $L256; cvta.const.u64 %r771,blanks$1; bra $L138; $L256: cvta.const.u64 %r771,blanks$1; $L141: st.u64 [%r165],%r771; mov.u64 %r705,64; st.u64 [%r165+8],%r705; add.u64 %r254,%r254,64; st.u64 [%frame+1216],%r254; add.u32 %r255,%r255,1; st.u32 [%frame+1208],%r255; setp.gt.s32 %r706,%r255,7; @ %r706 bra $L139; add.u64 %r165,%r165,16; bra $L140; $L139: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r711,[%value_in]; } setp.ne.u32 %r712,%r711,0; @ %r712 bra $L116; ld.u64 %r254,[%frame+1216]; ld.u32 %r255,[%frame+1208]; mov.u64 %r165,%r770; $L140: add.u32 %r197,%r197,-16; setp.gt.s32 %r713,%r197,16; @ %r713 bra $L141; $L138: st.u64 [%r165],%r771; cvt.s64.s32 %r715,%r197; shl.b64 %r148,%r715,2; st.u64 [%r165+8],%r148; add.u64 %r254,%r254,%r148; st.u64 [%frame+1216],%r254; add.u32 %r149,%r255,1; st.u32 [%frame+1208],%r149; setp.le.s32 %r716,%r149,7; @ %r716 bra $L137; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r721,[%value_in]; } setp.ne.u32 %r722,%r721,0; @ %r722 bra $L116; .loc 1 1521 3 ld.u64 %r254,[%frame+1216]; $L137: .loc 1 1519 33 max.s32 %r723,%r157,%r161; .loc 1 1519 7 add.u32 %r273,%r273,%r723; .loc 1 1521 3 setp.ne.u64 %r724,%r254,0; @ %r724 bra $L142; $L144: mov.u32 %r725,0; st.u32 [%frame+1208],%r725; .loc 1 1523 20 setp.ne.u64 %r726,%r167,0; @ %r726 bra $L143; .loc 1 1521 3 mov.u64 %r164,%r770; bra $L11; $L142: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r731,[%value_in]; } setp.ne.u32 %r732,%r731,0; @ ! %r732 bra $L144; bra $L116; $L143: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r167; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r164,%r770; bra $L11; $L17: .loc 1 1529 2 ld.u64 %r735,[%frame+1216]; setp.eq.u64 %r736,%r735,0; @ %r736 bra $L145; add.u64 %r740,%frame,1200; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r740; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r741,[%value_in]; } setp.eq.u32 %r742,%r741,0; @ %r742 bra $L145; ld.u16 %r744,[%r275+16]; and.b16 %r743,%r744,64; cvt.s32.s16 %r261,%r743; bra $L16; $L145: ld.u16 %r746,[%r275+16]; and.b16 %r745,%r746,64; cvt.s32.s16 %r261,%r745; bra $L16; $L116: .loc 1 1531 5 setp.ne.u64 %r747,%r167,0; @ %r747 bra $L146; ld.u16 %r749,[%r275+16]; and.b16 %r748,%r749,64; cvt.s32.s16 %r261,%r748; bra $L16; $L146: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r167; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r753,[%r275+16]; and.b16 %r752,%r753,64; cvt.s32.s16 %r261,%r752; $L16: .loc 1 1536 31 setp.ne.u32 %r754,%r261,0; @ ! %r754 bra $L1; bra $L61; $L62: .loc 1 656 9 mov.u32 %r134,%r109; mov.u64 %r167,0; mov.u32 %r158,0; bra $L110; $L68: .loc 1 1311 14 setp.ne.u32 %r756,%r158,-1; @ %r756 bra $L147; bra $L103; $L31: setp.ne.u32 %r757,%r179,0; @ ! %r757 bra $L149; bra $L148; $L147: .loc 1 1312 11 and.b32 %r134,%r109,-129; .loc 1 1320 28 set.u32.ne.u32 %r759,%r158,0; neg.s32 %r760,%r759; mov.u32 %r758,%r760; .loc 1 1320 15 set.u32.ne.u64 %r762,%r159,0; neg.s32 %r763,%r762; mov.u32 %r761,%r763; .loc 1 1320 20 cvt.u16.u8 %r801,%r758; mov.u16 %r765,%r801; cvt.u16.u8 %r801,%r761; mov.u16 %r766,%r801; or.b16 %r764,%r765,%r766; cvt.u32.u16 %r767,%r764; .loc 1 1320 7 cvt.u16.u8 %r768,%r767; setp.ne.u16 %r769,%r768,0; @ %r769 bra $L161; mov.u32 %r158,0; mov.u32 %r163,%r158; .loc 1 1319 7 add.u64 %r156,%frame,160; bra $L107; $L1: .loc 1 1538 1 mov.u32 %value,%r273; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiwprintf .visible .func (.param .u32 %value_out) vfiwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 373 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 375 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1824 0 0 0 644 45238 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __svfiwscanf_r .visible .func (.param .u32 %value_out) __svfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfiwscanf .visible .func (.param .u32 %value_out) vfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfiwscanf .visible .func (.param .u32 %value_out) __svfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfiwscanf_r .visible .func (.param .u32 %value_out) _vfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fgetwc_r .extern .func (.param .u32 %value_out) _fgetwc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _ungetwc_r .extern .func (.param .u32 %value_out) _ungetwc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfiwscanf_r .visible .func (.param .u32 %value_out) __svfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u64 %r26; .reg .u32 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r37; .reg .u32 %r53; .reg .u64 %r65; .reg .u32 %r72; .reg .u32 %r75; .reg .u32 %r90; .reg .u64 %r93; .reg .u64 %r100; .reg .u32 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r130; .reg .u32 %r137; .reg .u64 %r139; .reg .u64 %r141; .reg .u64 %r143; .reg .u64 %r145; .reg .u32 %r146; .reg .u64 %r149; .reg .u64 %r156; .reg .u64 %r167; .reg .u64 %r170; .reg .u32 %r173; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r183; .reg .u32 %r184; .reg .u64 %r186; .reg .u32 %r192; .reg .u32 %r195; .reg .u32 %r196; .reg .u64 %r197; .reg .u64 %r201; .reg .u64 %r203; .reg .u32 %r204; .reg .u64 %r205; .reg .u64 %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u64 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u16 %r220; .reg .u16 %r221; .reg .pred %r222; .reg .u16 %r223; .reg .u32 %r225; .reg .pred %r226; .reg .pred %r227; .reg .u32 %r229; .reg .pred %r230; .reg .u32 %r233; .reg .pred %r234; .reg .u32 %r236; .reg .pred %r237; .reg .pred %r238; .reg .pred %r239; .reg .pred %r240; .reg .pred %r241; .reg .pred %r242; .reg .pred %r243; .reg .pred %r244; .reg .pred %r245; .reg .u32 %r246; .reg .pred %r247; .reg .pred %r248; .reg .pred %r249; .reg .pred %r250; .reg .pred %r251; .reg .pred %r252; .reg .pred %r253; .reg .pred %r254; .reg .pred %r255; .reg .pred %r256; .reg .pred %r257; .reg .pred %r258; .reg .pred %r259; .reg .pred %r260; .reg .pred %r261; .reg .pred %r262; .reg .u32 %r265; .reg .pred %r266; .reg .pred %r267; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u16 %r278; .reg .u16 %r279; .reg .u16 %r280; .reg .u32 %r281; .reg .u16 %r282; .reg .pred %r283; .reg .u32 %r284; .reg .pred %r285; .reg .pred %r286; .reg .u32 %r287; .reg .pred %r288; .reg .u32 %r289; .reg .pred %r290; .reg .u64 %r292; .reg .u64 %r293; .reg .u64 %r294; .reg .u64 %r295; .reg .pred %r296; .reg .pred %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .u32 %r302; .reg .u32 %r303; .reg .u16 %r304; .reg .u16 %r305; .reg .u16 %r306; .reg .u32 %r307; .reg .u16 %r308; .reg .pred %r309; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .u16 %r316; .reg .u16 %r317; .reg .u16 %r318; .reg .u32 %r319; .reg .u16 %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .u32 %r324; .reg .pred %r325; .reg .u64 %r326; .reg .u32 %r327; .reg .pred %r328; .reg .u32 %r329; .reg .pred %r330; .reg .u64 %r331; .reg .u32 %r332; .reg .pred %r333; .reg .u64 %r334; .reg .u32 %r337; .reg .pred %r338; .reg .u32 %r340; .reg .pred %r341; .reg .pred %r344; .reg .u32 %r347; .reg .pred %r348; .reg .pred %r349; .reg .u32 %r353; .reg .u64 %r354; .reg .u64 %r356; .reg .u64 %r362; .reg .pred %r363; .reg .pred %r364; .reg .u32 %r365; .reg .pred %r366; .reg .pred %r368; .reg .u32 %r371; .reg .pred %r372; .reg .pred %r373; .reg .u64 %r375; .reg .u32 %r377; .reg .pred %r378; .reg .u32 %r381; .reg .pred %r382; .reg .pred %r383; .reg .u64 %r388; .reg .pred %r389; .reg .u64 %r393; .reg .pred %r394; .reg .pred %r395; .reg .pred %r396; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .u64 %r406; .reg .pred %r407; .reg .u64 %r411; .reg .pred %r412; .reg .u64 %r413; .reg .u64 %r415; .reg .pred %r416; .reg .u32 %r417; .reg .u32 %r420; .reg .u64 %r421; .reg .u64 %r423; .reg .u64 %r429; .reg .pred %r430; .reg .pred %r431; .reg .u32 %r432; .reg .pred %r433; .reg .u32 %r437; .reg .pred %r438; .reg .pred %r439; .reg .u64 %r444; .reg .pred %r445; .reg .u64 %r449; .reg .pred %r450; .reg .u32 %r452; .reg .pred %r453; .reg .u32 %r454; .reg .pred %r455; .reg .u32 %r458; .reg .u32 %r461; .reg .pred %r462; .reg .pred %r463; .reg .u32 %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r468; .reg .u32 %r471; .reg .u32 %r474; .reg .pred %r475; .reg .pred %r476; .reg .u32 %r478; .reg .pred %r479; .reg .u32 %r480; .reg .u32 %r483; .reg .u64 %r484; .reg .u64 %r486; .reg .u64 %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .pred %r495; .reg .u32 %r499; .reg .pred %r500; .reg .pred %r501; .reg .u32 %r503; .reg .pred %r504; .reg .u32 %r506; .reg .u64 %r507; .reg .pred %r508; .reg .u64 %r509; .reg .u32 %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .u32 %r517; .reg .u32 %r518; .reg .pred %r519; .reg .u64 %r520; .reg .u64 %r521; .reg .u64 %r522; .reg .u64 %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u64 %r533; .reg .u64 %r534; .reg .u64 %r535; .reg .u64 %r536; .reg .pred %r537; .reg .pred %r538; .reg .u32 %r539; .reg .pred %r540; .reg .u32 %r541; .reg .pred %r542; .reg .u32 %r543; .reg .pred %r544; .reg .u64 %r545; .reg .pred %r546; .reg .pred %r547; .reg .u32 %r551; .reg .pred %r552; .reg .u32 %r553; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r559; .reg .u32 %r560; .reg .u32 %r561; .reg .pred %r562; .reg .u32 %r566; .reg .u32 %r567; .reg .pred %r568; .reg .u64 %r572; .reg .u64 %r574; .reg .u64 %r575; .reg .u32 %r576; .reg .pred %r577; .reg .u32 %r578; .reg .pred %r579; .reg .u64 %r580; .reg .u32 %r581; .reg .pred %r582; .reg .u64 %r583; .reg .u32 %r584; .reg .pred %r585; .reg .u64 %r586; .reg .pred %r587; .reg .u64 %r592; .reg .u64 %r597; .reg .u64 %r598; .reg .u64 %r599; .reg .u64 %r600; .reg .u64 %r602; .reg .u32 %r603; .reg .pred %r604; .reg .u16 %r605; .reg .u16 %r606; .reg .pred %r607; .reg .u32 %r612; .reg .u32 %r616; .reg .u32 %r620; .reg .u32 %r624; .reg .u32 %r628; .reg .u32 %r632; .reg .u32 %r636; .reg .u32 %r640; .reg .pred %r641; .reg .u32 %r642; .reg .pred %r643; .reg .pred %r644; .reg .pred %r645; .reg .pred %r647; .reg .pred %r648; .reg .pred %r649; .reg .u64 %r650; .reg .u16 %r651; mov.u64 %r216,%ar0; mov.u64 %r217,%ar1; mov.u64 %r218,%ar2; mov.u64 %r219,%ar3; .loc 1 553 3 ld.u16 %r221,[%r217+16]; and.b16 %r220,%r221,8192; setp.ne.u16 %r222,%r220,0; @ %r222 bra $L2; .loc 1 551 3 ld.u32 %r22,[%r217+172]; .loc 1 553 3 or.b16 %r223,%r221,8192; st.u16 [%r217+16],%r223; or.b32 %r225,%r22,8192; st.u32 [%r217+172],%r225; $L2: .loc 1 560 15 add.u64 %r130,%r218,4; .loc 1 560 9 ld.u32 %r108,[%r218]; .loc 1 561 10 setp.eq.u32 %r226,%r108,0; @ %r226 bra $L131; mov.u64 %r65,0; mov.u32 %r214,0; mov.u32 %r53,%r214; mov.u32 %r215,%r214; mov.u64 %r141,%r65; .loc 1 1115 8 add.u64 %r650,%frame,160; bra $L4; $L132: mov.u64 %r118,%r130; bra $L6; $L139: .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L140: mov.u64 %r118,%r130; bra $L6; $L142: mov.u64 %r118,%r130; bra $L6; $L145: mov.u32 %r53,%r195; mov.u64 %r118,%r130; bra $L6; $L147: mov.u64 %r118,%r130; $L6: .loc 1 560 15 add.u64 %r130,%r118,4; .loc 1 560 9 ld.u32 %r108,[%r118]; .loc 1 561 10 setp.eq.u32 %r227,%r108,0; @ %r227 bra $L1; $L4: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r108; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r229,[%value_in]; } mov.u32 %r28,%r229; .loc 1 563 10 setp.eq.u32 %r230,%r28,0; @ %r230 bra $L5; $L7: .loc 1 565 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r233,[%value_in]; } .loc 1 565 46 setp.eq.u32 %r234,%r233,-1; @ %r234 bra $L132; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r233; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r236,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r237,%r236,0; @ %r237 bra $L7; bra $L264; $L5: .loc 1 571 10 setp.ne.u32 %r238,%r108,37; @ %r238 bra $L9; .loc 1 586 11 ld.u32 %r109,[%r130]; .loc 1 574 13 mov.u32 %r115,%r28; .loc 1 586 11 mov.u64 %r26,%r130; .loc 1 573 13 mov.u64 %r30,0; bra $L10; $L266: .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 606 10 mov.u32 %r115,16; .loc 1 612 8 mov.u64 %r30,0; $L10: .loc 1 586 15 add.u64 %r130,%r26,4; .loc 1 588 7 setp.eq.u32 %r239,%r109,104; @ %r239 bra $L11; setp.gt.s32 %r240,%r109,104; @ %r240 bra $L12; setp.eq.u32 %r241,%r109,76; @ %r241 bra $L13; setp.gt.s32 %r242,%r109,76; @ %r242 bra $L14; setp.eq.u32 %r243,%r109,42; @ %r243 bra $L15; setp.gt.s32 %r244,%r109,42; @ %r244 bra $L16; setp.eq.u32 %r245,%r109,37; @ %r245 bra $L9; bra $L1; $L16: add.u32 %r246,%r109,-48; setp.gt.u32 %r247,%r246,9; @ ! %r247 bra $L265; bra $L1; $L14: setp.eq.u32 %r248,%r109,99; @ %r248 bra $L18; setp.gt.s32 %r249,%r109,99; @ %r249 bra $L19; setp.eq.u32 %r250,%r109,88; @ %r250 bra $L20; setp.eq.u32 %r251,%r109,91; @ %r251 bra $L21; bra $L1; $L19: setp.eq.u32 %r252,%r109,100; @ %r252 bra $L133; bra $L1; $L12: setp.eq.u32 %r253,%r109,111; @ %r253 bra $L134; setp.gt.s32 %r254,%r109,111; @ %r254 bra $L24; setp.eq.u32 %r255,%r109,108; @ %r255 bra $L25; setp.eq.u32 %r256,%r109,110; @ %r256 bra $L26; setp.eq.u32 %r257,%r109,105; @ %r257 bra $L135; bra $L1; $L24: setp.eq.u32 %r258,%r109,115; @ %r258 bra $L136; setp.gt.s32 %r259,%r109,115; @ %r259 bra $L27; setp.eq.u32 %r260,%r109,112; @ %r260 bra $L28; bra $L1; $L27: setp.eq.u32 %r261,%r109,117; @ %r261 bra $L137; setp.eq.u32 %r262,%r109,120; @ %r262 bra $L20; bra $L1; $L9: .loc 1 592 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r265,[%value_in]; } .loc 1 592 7 setp.eq.u32 %r266,%r265,-1; @ %r266 bra $L31; .loc 1 594 7 setp.eq.u32 %r267,%r108,%r265; @ %r267 bra $L30; .loc 1 596 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r265; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r271,[%value_in]; } .loc 1 597 8 bra $L31; $L30: .loc 1 599 9 add.u32 %r53,%r53,1; .loc 1 600 4 mov.u64 %r118,%r130; bra $L6; $L15: .loc 1 604 8 set.u32.ne.u64 %r273,%r30,0; neg.s32 %r274,%r273; mov.u32 %r272,%r274; .loc 1 603 7 set.u32.ne.u32 %r276,%r115,0; neg.s32 %r277,%r276; mov.u32 %r275,%r277; .loc 1 604 8 cvt.u16.u8 %r651,%r272; mov.u16 %r279,%r651; cvt.u16.u8 %r651,%r275; mov.u16 %r280,%r651; or.b16 %r278,%r279,%r280; cvt.u32.u16 %r281,%r278; cvt.u16.u8 %r282,%r281; setp.ne.u16 %r283,%r282,0; @ ! %r283 bra $L266; bra $L1; $L25: .loc 1 609 14 and.b32 %r284,%r115,15; .loc 1 609 7 setp.ne.u32 %r285,%r284,0; @ %r285 bra $L1; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 612 7 setp.ne.u32 %r286,%r109,108; @ %r286 bra $L33; .loc 1 615 14 or.b32 %r115,%r115,2; .loc 1 789 8 ld.u32 %r109,[%r26+8]; .loc 1 614 8 add.u64 %r26,%r26,8; bra $L10; $L33: .loc 1 619 12 or.b32 %r115,%r115,1; .loc 1 586 15 mov.u64 %r26,%r130; bra $L10; $L13: .loc 1 622 14 and.b32 %r287,%r115,15; .loc 1 622 7 setp.ne.u32 %r288,%r287,0; @ %r288 bra $L1; .loc 1 624 10 or.b32 %r115,%r115,2; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 625 4 bra $L10; $L11: .loc 1 637 12 or.b32 %r115,%r115,4; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 638 4 bra $L10; $L265: .loc 1 703 14 and.b32 %r289,%r115,143; .loc 1 703 7 setp.ne.u32 %r290,%r289,0; @ %r290 bra $L1; .loc 1 705 18 shl.b64 %r292,%r30,2; add.u64 %r293,%r292,%r30; add.u64 %r294,%r293,%r293; add.u64 %r126,%r294,-48; .loc 1 705 23 cvt.u64.u32 %r295,%r109; .loc 1 705 10 add.u64 %r30,%r295,%r126; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 706 4 bra $L10; $L20: .loc 1 749 10 or.b32 %r115,%r115,512; .loc 1 751 9 mov.u64 %r65,_wcstoul_r; .loc 1 752 9 mov.u32 %r28,16; .loc 1 753 4 bra $L23; $L21: .loc 1 781 8 ld.u32 %r37,[%r26+4]; .loc 1 781 7 setp.ne.u32 %r296,%r37,94; @ %r296 bra $L35; .loc 1 784 8 add.u64 %r130,%r26,8; .loc 1 789 8 ld.u32 %r37,[%r26+8]; .loc 1 783 17 mov.u32 %r28,1; $L35: .loc 1 789 7 setp.ne.u32 %r297,%r37,93; @ %r297 bra $L138; .loc 1 790 9 add.u64 %r139,%r130,4; .loc 1 791 11 ld.u32 %r37,[%r130+4]; bra $L36; $L138: mov.u64 %r139,%r130; $L36: .loc 1 791 24 set.u32.ne.u32 %r299,%r37,93; neg.s32 %r300,%r299; mov.u32 %r298,%r300; set.u32.ne.u32 %r302,%r37,0; neg.s32 %r303,%r302; mov.u32 %r301,%r303; cvt.u16.u8 %r651,%r298; mov.u16 %r305,%r651; cvt.u16.u8 %r651,%r301; mov.u16 %r306,%r651; and.b16 %r304,%r305,%r306; cvt.u32.u16 %r307,%r304; cvt.u16.u8 %r308,%r307; setp.eq.u16 %r309,%r308,0; @ %r309 bra $L37; $L38: .loc 1 792 9 add.u64 %r139,%r139,4; .loc 1 791 11 ld.u32 %r137,[%r139]; .loc 1 791 24 set.u32.ne.u32 %r311,%r137,0; neg.s32 %r312,%r311; mov.u32 %r310,%r312; set.u32.ne.u32 %r314,%r137,93; neg.s32 %r315,%r314; mov.u32 %r313,%r315; cvt.u16.u8 %r651,%r310; mov.u16 %r317,%r651; cvt.u16.u8 %r651,%r313; mov.u16 %r318,%r651; and.b16 %r316,%r317,%r318; cvt.u32.u16 %r319,%r316; cvt.u16.u8 %r320,%r319; setp.ne.u16 %r321,%r320,0; @ %r321 bra $L38; $L37: .loc 1 794 7 add.u64 %r118,%r139,4; .loc 1 965 7 setp.eq.u64 %r322,%r30,0; .loc 1 966 12 selp.u64 %r30,-1,%r30,%r322; .loc 1 991 27 sub.u64 %r375,%r139,%r130; shr.s64 %r120,%r375,2; .loc 1 968 27 and.b32 %r377,%r115,17; .loc 1 968 7 setp.eq.u32 %r378,%r377,17; @ ! %r378 bra $L267; bra $L143; $L18: max.u64 %r110,%r30,1; and.b32 %r173,%r115,1; and.b32 %r204,%r115,16; .loc 1 879 14 setp.ne.u32 %r323,%r173,0; @ %r323 bra $L41; bra $L268; $L28: .loc 1 811 10 or.b32 %r115,%r115,544; .loc 1 813 9 mov.u64 %r65,_wcstoul_r; .loc 1 814 9 mov.u32 %r28,16; .loc 1 815 4 bra $L23; $L26: .loc 1 818 14 and.b32 %r324,%r115,16; .loc 1 818 7 setp.ne.u32 %r325,%r324,0; @ %r325 bra $L139; .loc 1 830 11 add.u64 %r326,%r219,7; and.b64 %r149,%r326,-8; ld.u64 %r197,[%r149]; add.u64 %r219,%r149,8; .loc 1 828 14 and.b32 %r327,%r115,4; .loc 1 828 7 setp.eq.u32 %r328,%r327,0; @ %r328 bra $L43; .loc 1 831 12 st.u16 [%r197],%r53; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L43: .loc 1 833 19 and.b32 %r329,%r115,1; .loc 1 833 12 setp.eq.u32 %r330,%r329,0; @ %r330 bra $L44; .loc 1 836 12 cvt.s64.s32 %r331,%r53; st.u64 [%r197],%r331; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L44: .loc 1 839 19 and.b32 %r332,%r115,2; .loc 1 839 12 setp.eq.u32 %r333,%r332,0; @ %r333 bra $L45; .loc 1 842 13 cvt.s64.s32 %r334,%r53; st.u64 [%r197],%r334; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L45: .loc 1 848 12 st.u32 [%r197],%r53; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L133: .loc 1 725 9 mov.u64 %r65,_wcstol_r; .loc 1 726 9 mov.u32 %r214,10; .loc 1 724 6 mov.u32 %r192,3; bra $L46; $L136: .loc 1 588 7 mov.u32 %r192,2; bra $L46; $L47: .loc 1 863 11 add.u32 %r53,%r53,1; $L46: .loc 1 862 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r337,[%value_in]; } .loc 1 862 47 setp.eq.u32 %r338,%r337,-1; @ %r338 bra $L31; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r337; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r340,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r341,%r340,0; @ %r341 bra $L47; bra $L269; $L41: .loc 1 887 11 setp.ne.u32 %r643,%r204,0; @ %r643 bra $L49; .loc 1 894 5 add.u64 %r145,%r219,7; and.b64 %r143,%r145,-8; add.u64 %r219,%r143,8; ld.u64 %r141,[%r143]; $L49: .loc 1 904 11 mov.u64 %r170,0; bra $L50; $L53: .loc 1 898 8 @ %r643 bra $L51; .loc 1 904 14 st.u32 [%r141],%r347; .loc 1 904 11 add.u64 %r141,%r141,4; $L51: add.u32 %r196,%r196,1; .loc 1 896 28 add.u64 %r170,%r170,1; setp.eq.u64 %r344,%r110,%r170; @ %r344 bra $L52; $L50: cvt.u32.u64 %r196,%r170; .loc 1 896 37 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r347,[%value_in]; } .loc 1 896 28 setp.ne.u32 %r348,%r347,-1; @ %r348 bra $L53; .loc 1 908 11 setp.eq.u32 %r349,%r196,0; @ %r349 bra $L31; $L52: .loc 1 910 14 add.u32 %r53,%r53,%r196; .loc 1 914 11 @ %r643 bra $L140; .loc 1 915 12 add.u32 %r215,%r215,1; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L268: .loc 1 925 11 setp.ne.u32 %r643,%r204,0; @ %r643 bra $L141; .loc 1 932 7 add.u64 %r180,%r219,7; and.b64 %r179,%r180,-8; add.u64 %r219,%r179,8; ld.u64 %r122,[%r179]; bra $L54; $L141: .loc 1 926 7 add.u64 %r122,%frame,168; $L54: .loc 1 934 8 mov.u64 %r354,8; mov.u32 %r353,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r650; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r353; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r354; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r356,[%value_in]; } bra $L55; $L60: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r122; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r371; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r650; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r362,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r363,%r362,-1; @ %r363 bra $L31; .loc 1 941 8 setp.ne.u64 %r364,%r362,0; @ %r364 bra $L56; .loc 1 941 20 ld.u32 %r365,[%frame+160]; setp.eq.u32 %r366,%r365,-4; @ %r366 bra $L57; $L56: .loc 1 942 12 add.u64 %r110,%r110,-1; $L57: .loc 1 943 8 @ %r643 bra $L58; .loc 1 948 13 add.u64 %r122,%r122,%r362; $L58: .loc 1 950 6 add.u32 %r173,%r173,1; .loc 1 935 26 setp.eq.u64 %r368,%r110,0; @ %r368 bra $L59; $L55: .loc 1 935 35 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r371,[%value_in]; } .loc 1 935 26 setp.ne.u32 %r372,%r371,-1; @ %r372 bra $L60; .loc 1 952 11 setp.eq.u32 %r373,%r173,0; @ %r373 bra $L31; $L59: .loc 1 954 14 add.u32 %r53,%r53,%r173; .loc 1 958 11 @ %r643 bra $L142; .loc 1 959 12 add.u32 %r215,%r215,1; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L66: add.u64 %r205,%r205,1; bra $L61; $L143: mov.u64 %r205,0; .loc 1 972 24 setp.eq.u32 %r647,%r28,0; $L61: cvt.u32.u64 %r114,%r205; .loc 1 971 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r381,[%value_in]; } .loc 1 972 24 setp.eq.u32 %r382,%r381,-1; @ %r382 bra $L63; .loc 1 972 8 setp.eq.u64 %r383,%r30,%r205; @ %r383 bra $L64; .loc 1 972 24 @ %r647 bra $L65; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r381; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r388,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r389,%r388,0; @ %r389 bra $L66; bra $L64; $L65: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r381; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r393,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r394,%r393,0; @ %r394 bra $L66; bra $L64; $L63: .loc 1 976 11 setp.eq.u32 %r395,%r114,0; @ ! %r395 bra $L67; bra $L1; $L267: and.b32 %r114,%r115,1; .loc 1 979 12 setp.eq.u32 %r396,%r114,0; @ %r396 bra $L68; .loc 1 989 10 add.u64 %r213,%r219,7; and.b64 %r181,%r213,-8; add.u64 %r219,%r181,8; ld.u64 %r167,[%r181]; mov.u64 %r201,%r167; .loc 1 991 24 setp.eq.u32 %r648,%r28,0; .loc 1 990 14 bra $L69; $L73: .loc 1 993 10 st.u32 [%r201],%r399; add.u64 %r30,%r30,-1; add.u64 %r201,%r201,4; $L69: mov.u64 %r141,%r201; .loc 1 990 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r399,[%value_in]; } .loc 1 991 24 setp.eq.u32 %r400,%r399,-1; @ %r400 bra $L70; .loc 1 991 8 setp.eq.u64 %r401,%r30,0; @ %r401 bra $L71; .loc 1 991 24 @ %r648 bra $L72; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r406,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r407,%r406,0; @ %r407 bra $L73; bra $L71; $L72: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r411,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r412,%r411,0; @ %r412 bra $L73; bra $L71; $L70: .loc 1 1000 14 sub.u64 %r413,%r201,%r167; shr.s64 %r415,%r413,2; .loc 1 1000 10 cvt.u32.u64 %r114,%r415; .loc 1 1001 11 setp.eq.u32 %r416,%r114,0; @ %r416 bra $L1; .loc 1 1003 11 mov.u32 %r417,0; st.u32 [%r201],%r417; .loc 1 1007 17 add.u32 %r215,%r215,1; bra $L67; $L68: and.b32 %r75,%r115,16; .loc 1 1017 11 setp.ne.u32 %r645,%r75,0; @ %r645 bra $L144; .loc 1 1024 7 add.u64 %r113,%r219,7; and.b64 %r111,%r113,-8; add.u64 %r219,%r111,8; ld.u64 %r123,[%r111]; bra $L74; $L144: .loc 1 1018 7 add.u64 %r123,%frame,168; $L74: .loc 1 1026 8 mov.u64 %r421,8; mov.u32 %r420,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r650; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r420; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r421; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r423,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r649,%r28,0; .loc 1 1027 14 bra $L75; $L82: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r437; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r650; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r429,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r430,%r429,-1; @ %r430 bra $L31; .loc 1 1034 8 setp.ne.u64 %r431,%r429,0; @ %r431 bra $L76; .loc 1 1034 20 ld.u32 %r432,[%frame+160]; setp.eq.u32 %r433,%r432,-4; @ %r433 bra $L77; $L76: .loc 1 1035 12 add.u64 %r30,%r30,-1; $L77: .loc 1 1036 8 @ %r645 bra $L78; .loc 1 1038 13 add.u64 %r123,%r123,%r429; $L78: .loc 1 1043 6 add.u32 %r114,%r114,1; $L75: .loc 1 1027 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r437,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r438,%r437,-1; @ %r438 bra $L79; .loc 1 1028 8 setp.eq.u64 %r439,%r30,0; @ %r439 bra $L80; .loc 1 1028 22 @ %r649 bra $L81; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r437; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r444,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r445,%r444,0; @ %r445 bra $L82; bra $L80; $L81: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r437; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r449,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r450,%r449,0; @ %r450 bra $L82; bra $L80; $L79: .loc 1 1047 11 @ %r645 bra $L67; .loc 1 1049 10 mov.u32 %r452,0; st.u8 [%r123],%r452; .loc 1 1053 14 add.u32 %r215,%r215,1; $L67: .loc 1 1056 10 add.u32 %r53,%r53,%r114; .loc 1 1057 4 bra $L6; $L129: .loc 1 1061 7 setp.ne.u64 %r453,%r30,0; .loc 1 1062 19 selp.u64 %r30,%r30,-1,%r453; .loc 1 1063 27 and.b32 %r454,%r115,17; .loc 1 1063 7 setp.ne.u32 %r455,%r454,17; @ %r455 bra $L84; mov.u64 %r203,%r30; cvt.u32.u64 %r642,%r203; $L86: cvt.u32.u64 %r458,%r203; vsub.u32.u32.u32.add %r195,%r53,%r458,%r642; .loc 1 1065 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r461,[%value_in]; } .loc 1 1066 24 setp.eq.u32 %r462,%r461,-1; @ %r462 bra $L145; .loc 1 1066 8 setp.eq.u64 %r463,%r203,0; @ %r463 bra $L85; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r461; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r465,[%value_in]; } .loc 1 1066 24 add.u64 %r203,%r203,-1; setp.eq.u32 %r466,%r465,0; @ %r466 bra $L86; bra $L85; $L84: .loc 1 1071 19 and.b32 %r467,%r115,1; .loc 1 1071 12 setp.eq.u32 %r468,%r467,0; @ %r468 bra $L87; .loc 1 1081 10 add.u64 %r212,%r219,7; and.b64 %r211,%r212,-8; add.u64 %r219,%r211,8; ld.u64 %r186,[%r211]; .loc 1 1082 14 mov.u64 %r183,%r30; cvt.u32.u64 %r642,%r183; bra $L88; $L91: .loc 1 1085 10 st.u32 [%r186],%r474; add.u64 %r186,%r186,4; $L88: cvt.u32.u64 %r471,%r183; vsub.u32.u32.u32.add %r184,%r53,%r471,%r642; mov.u64 %r141,%r186; .loc 1 1082 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r474,[%value_in]; } .loc 1 1083 24 setp.eq.u32 %r475,%r474,-1; @ %r475 bra $L89; .loc 1 1083 8 setp.eq.u64 %r476,%r183,0; @ %r476 bra $L90; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r474; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r478,[%value_in]; } .loc 1 1083 24 add.u64 %r183,%r183,-1; setp.eq.u32 %r479,%r478,0; @ %r479 bra $L91; bra $L90; $L89: .loc 1 1093 11 mov.u32 %r480,0; st.u32 [%r186],%r480; .loc 1 1097 17 add.u32 %r215,%r215,1; mov.u32 %r53,%r184; mov.u64 %r118,%r130; bra $L6; $L87: .loc 1 1107 18 and.b32 %r72,%r115,16; .loc 1 1107 11 setp.ne.u32 %r644,%r72,0; @ %r644 bra $L146; .loc 1 1114 7 add.u64 %r117,%r219,7; and.b64 %r112,%r117,-8; add.u64 %r219,%r112,8; ld.u64 %r124,[%r112]; bra $L92; $L146: .loc 1 1108 7 add.u64 %r124,%frame,168; $L92: .loc 1 1115 8 mov.u64 %r484,8; mov.u32 %r483,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r650; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r483; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r484; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r486,[%value_in]; } .loc 1 1116 14 bra $L93; $L99: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r499; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r650; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r491,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r492,%r491,-1; @ %r492 bra $L31; .loc 1 1123 8 setp.ne.u64 %r493,%r491,0; @ %r493 bra $L94; .loc 1 1123 20 ld.u32 %r494,[%frame+160]; setp.eq.u32 %r495,%r494,-4; @ %r495 bra $L95; $L94: .loc 1 1124 12 add.u64 %r30,%r30,-1; $L95: .loc 1 1125 8 @ %r644 bra $L96; .loc 1 1127 13 add.u64 %r124,%r124,%r491; $L96: .loc 1 1132 10 add.u32 %r53,%r53,1; $L93: .loc 1 1116 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r499,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r500,%r499,-1; @ %r500 bra $L97; .loc 1 1117 8 setp.eq.u64 %r501,%r30,0; @ %r501 bra $L98; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r499; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r503,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r504,%r503,0; @ %r504 bra $L99; bra $L98; $L97: .loc 1 1136 11 @ %r644 bra $L147; .loc 1 1138 10 mov.u32 %r506,0; st.u8 [%r124],%r506; .loc 1 1142 14 add.u32 %r215,%r215,1; mov.u64 %r118,%r130; bra $L6; $L271: .loc 1 1150 19 add.u64 %r507,%r30,-1; .loc 1 1150 7 setp.le.u64 %r508,%r507,38; .loc 1 1151 12 selp.u64 %r30,%r30,39,%r508; .loc 1 1152 10 or.b32 %r116,%r115,1408; mov.u64 %r31,%frame; shl.b64 %r509,%r30,2; add.u64 %r119,%r509,%frame; $L117: mov.u64 %r141,%r31; .loc 1 1155 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r512,[%value_in]; } setp.gt.u32 %r513,%r512,57; @ %r513 bra $L101; setp.gt.u32 %r514,%r512,55; @ %r514 bra $L102; setp.eq.u32 %r515,%r512,48; @ %r515 bra $L103; setp.gt.u32 %r516,%r512,48; @ %r516 bra $L104; add.u32 %r517,%r512,-43; and.b32 %r518,%r517,-3; setp.eq.u32 %r519,%r518,0; @ ! %r519 bra $L106; bra $L105; $L104: .loc 1 1191 19 cvta.const.u64 %r520,basefix$0; cvt.s64.s32 %r521,%r214; add.u64 %r522,%r521,%r521; add.u64 %r523,%r520,%r522; ld.s16 %r214,[%r523]; .loc 1 1192 11 and.b32 %r116,%r116,-897; .loc 1 1193 5 bra $L107; $L101: setp.gt.u32 %r524,%r512,102; @ %r524 bra $L108; setp.gt.u32 %r525,%r512,96; @ %r525 bra $L109; setp.gt.u32 %r526,%r512,70; @ %r526 bra $L110; setp.gt.u32 %r527,%r512,64; @ ! %r527 bra $L106; bra $L109; $L110: setp.eq.u32 %r528,%r512,88; @ %r528 bra $L111; bra $L106; $L108: setp.eq.u32 %r529,%r512,120; @ %r529 bra $L111; bra $L270; $L103: .loc 1 1172 8 setp.ne.u32 %r530,%r214,0; @ %r530 bra $L113; .loc 1 1175 15 or.b32 %r116,%r116,512; .loc 1 1174 14 mov.u32 %r214,8; $L113: .loc 1 1177 15 and.b32 %r531,%r116,1024; .loc 1 1177 8 setp.eq.u32 %r532,%r531,0; @ %r532 bra $L114; .loc 1 1178 13 and.b32 %r116,%r116,-1409; bra $L107; $L114: .loc 1 1180 13 and.b32 %r116,%r116,-897; bra $L107; $L102: .loc 1 1198 19 cvta.const.u64 %r533,basefix$0; cvt.s64.s32 %r534,%r214; add.u64 %r535,%r534,%r534; add.u64 %r536,%r533,%r535; ld.s16 %r214,[%r536]; .loc 1 1199 8 setp.le.s32 %r537,%r214,8; @ %r537 bra $L106; .loc 1 1201 11 and.b32 %r116,%r116,-897; .loc 1 1202 5 bra $L107; $L109: .loc 1 1218 8 setp.le.s32 %r538,%r214,10; @ %r538 bra $L106; .loc 1 1220 11 and.b32 %r116,%r116,-897; .loc 1 1221 5 bra $L107; $L105: .loc 1 1226 15 and.b32 %r539,%r116,128; .loc 1 1226 8 setp.eq.u32 %r540,%r539,0; @ %r540 bra $L106; .loc 1 1228 15 and.b32 %r146,%r116,-129; .loc 1 1229 15 or.b32 %r116,%r146,65536; .loc 1 1230 9 bra $L107; $L111: .loc 1 1237 16 and.b32 %r541,%r116,512; .loc 1 1237 8 setp.eq.u32 %r542,%r541,0; @ %r542 bra $L106; .loc 1 1237 52 and.b32 %r543,%r116,65536; .loc 1 1237 41 setp.ne.u32 %r544,%r543,0; selp.u64 %r125,8,4,%r544; add.u64 %r545,%frame,%r125; .loc 1 1237 25 setp.ne.u64 %r546,%r31,%r545; @ %r546 bra $L106; .loc 1 1240 15 and.b32 %r116,%r116,-513; .loc 1 1239 14 mov.u32 %r214,16; .loc 1 1241 9 bra $L107; $L270: .loc 1 1250 11 setp.eq.u32 %r547,%r512,-1; @ %r547 bra $L116; $L106: .loc 1 1251 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r512; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r551,[%value_in]; } bra $L116; $L107: add.u64 %r31,%r31,4; .loc 1 1257 13 st.u32 [%r141],%r512; .loc 1 1153 18 setp.ne.u64 %r552,%r31,%r119; @ %r552 bra $L117; .loc 1 1257 10 mov.u64 %r141,%r31; $L116: .loc 1 1267 14 and.b32 %r553,%r116,256; .loc 1 1267 7 setp.eq.u32 %r554,%r553,0; @ %r554 bra $L118; .loc 1 1269 11 setp.ge.u64 %r555,%frame,%r31; @ %r555 bra $L1; .loc 1 1270 3 ld.u32 %r559,[%r31+-4]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r559; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r560,[%value_in]; } bra $L1; $L118: .loc 1 1273 9 ld.u32 %r90,[%r31+-4]; .loc 1 1274 23 and.b32 %r561,%r90,-33; .loc 1 1274 7 setp.ne.u32 %r562,%r561,88; @ %r562 bra $L119; .loc 1 1276 8 add.u64 %r141,%r31,-4; .loc 1 1277 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r90; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r566,[%value_in]; } $L119: .loc 1 1279 15 and.b32 %r567,%r116,16; .loc 1 1279 7 setp.ne.u32 %r568,%r567,0; @ %r568 bra $L120; .loc 1 1283 11 st.u32 [%r141],%r567; .loc 1 1284 15 mov.u64 %r572,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r214; call (%value_in),%r65,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r574,[%value_in]; } .loc 1 830 11 add.u64 %r575,%r219,7; and.b64 %r93,%r575,-8; add.u64 %r219,%r93,8; .loc 1 1285 18 and.b32 %r576,%r116,32; .loc 1 1285 11 setp.eq.u32 %r577,%r576,0; @ %r577 bra $L121; .loc 1 1287 12 ld.u64 %r156,[%r93]; .loc 1 1297 11 st.u64 [%r156],%r574; bra $L122; $L121: .loc 1 1306 23 and.b32 %r578,%r116,4; .loc 1 1306 16 setp.eq.u32 %r579,%r578,0; @ %r579 bra $L123; .loc 1 1309 9 ld.u64 %r580,[%r93]; st.u16 [%r580],%r574; bra $L122; $L123: .loc 1 1311 23 and.b32 %r581,%r116,1; .loc 1 1311 16 setp.eq.u32 %r582,%r581,0; @ %r582 bra $L124; .loc 1 1314 9 ld.u64 %r583,[%r93]; st.u64 [%r583],%r574; bra $L122; $L124: .loc 1 1317 23 and.b32 %r584,%r116,2; .loc 1 1317 16 setp.eq.u32 %r585,%r584,0; @ %r585 bra $L125; .loc 1 1320 8 mov.u64 %r586,_wcstoul_r; setp.ne.u64 %r587,%r65,%r586; @ %r587 bra $L126; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r214; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r592,[%value_in]; } .loc 1 1325 10 mov.u64 %r100,%r592; bra $L127; $L126: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r214; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r597,[%value_in]; } mov.u64 %r100,%r597; $L127: .loc 1 1325 10 ld.u64 %r598,[%r93]; st.u64 [%r598],%r100; bra $L122; $L125: .loc 1 1331 9 ld.u64 %r599,[%r93]; st.u32 [%r599],%r574; $L122: .loc 1 1333 17 add.u32 %r215,%r215,1; $L120: .loc 1 1335 15 sub.u64 %r600,%r141,%frame; shr.s64 %r602,%r600,2; .loc 1 1335 10 cvt.u32.u64 %r603,%r602; add.u32 %r53,%r603,%r53; .loc 1 1336 4 mov.u64 %r118,%r130; bra $L6; $L31: .loc 1 1656 63 setp.eq.u32 %r604,%r215,0; @ %r604 bra $L149; .loc 1 1656 25 ld.u16 %r606,[%r217+16]; and.b16 %r605,%r606,64; setp.ne.u16 %r607,%r605,0; .loc 1 1656 63 selp.u32 %r215,-1,%r215,%r607; bra $L1; $L131: .loc 1 561 10 mov.u32 %r215,%r108; bra $L1; $L149: .loc 1 1656 63 mov.u32 %r215,-1; bra $L1; $L3: $L128: $L264: .loc 1 568 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r233; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r612,[%value_in]; } mov.u64 %r118,%r130; bra $L6; $L64: .loc 1 975 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r381; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r616,[%value_in]; } bra $L63; $L71: .loc 1 999 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r620,[%value_in]; } bra $L70; $L80: .loc 1 1046 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r437; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r624,[%value_in]; } bra $L79; $L85: .loc 1 1069 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r461; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r628,[%value_in]; } mov.u32 %r53,%r195; mov.u64 %r118,%r130; bra $L6; $L90: .loc 1 1092 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r632,[%value_in]; } bra $L89; $L98: .loc 1 1135 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r499; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r636,[%value_in]; } bra $L97; $L269: .loc 1 866 4 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r337; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r640,[%value_in]; } .loc 1 872 7 setp.eq.u32 %r641,%r192,2; @ %r641 bra $L129; bra $L271; $L134: .loc 1 588 7 mov.u64 %r65,_wcstoul_r; mov.u32 %r28,8; bra $L23; $L135: .loc 1 731 9 mov.u64 %r65,_wcstol_r; bra $L23; $L137: .loc 1 743 9 mov.u64 %r65,_wcstoul_r; .loc 1 744 9 mov.u32 %r28,10; $L23: .loc 1 588 7 mov.u32 %r214,%r28; mov.u32 %r192,3; bra $L46; $L1: .loc 1 1665 1 mov.u32 %value,%r215; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiwscanf .visible .func (.param .u32 %value_out) vfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 233 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 235 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L273; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L273; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L273: .loc 1 236 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 237 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfiwscanf .visible .func (.param .u32 %value_out) __svfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 244 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 245 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfiwscanf_r .visible .func (.param .u32 %value_out) _vfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 255 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L279; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L279; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L279: .loc 1 256 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 257 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1843 0 0 0 644 84894 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _vfprintf_r .visible .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: vfprintf .visible .func (.param .u32 %value_out) vfprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sprint_r .extern .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[2] = {48,0 }; // BEGIN GLOBAL FUNCTION DEF: _vfprintf_r .visible .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[224]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .f64 %r28; .reg .u64 %r38; .reg .u32 %r42; .reg .u64 %r57; .reg .u32 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r118; .reg .u64 %r119; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r134; .reg .u32 %r136; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r144; .reg .u64 %r148; .reg .u32 %r150; .reg .u64 %r154; .reg .u32 %r155; .reg .u64 %r158; .reg .u32 %r160; .reg .u32 %r163; .reg .u32 %r166; .reg .u32 %r169; .reg .u64 %r172; .reg .u32 %r173; .reg .u64 %r174; .reg .u32 %r176; .reg .u32 %r178; .reg .u32 %r182; .reg .u64 %r185; .reg .u64 %r187; .reg .u32 %r188; .reg .u64 %r190; .reg .u32 %r192; .reg .u64 %r197; .reg .u32 %r198; .reg .u32 %r201; .reg .u32 %r204; .reg .u32 %r206; .reg .u64 %r207; .reg .u64 %r208; .reg .u32 %r210; .reg .u64 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u64 %r220; .reg .u32 %r221; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r231; .reg .u32 %r232; .reg .u64 %r236; .reg .u32 %r237; .reg .u64 %r244; .reg .u32 %r245; .reg .u64 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u32 %r252; .reg .u64 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .u64 %r256; .reg .u64 %r257; .reg .u64 %r258; .reg .u32 %r260; .reg .u64 %r262; .reg .u32 %r266; .reg .u32 %r267; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r274; .reg .u64 %r275; .reg .u32 %r277; .reg .u32 %r278; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r284; .reg .u64 %r286; .reg .u32 %r293; .reg .u32 %r295; .reg .u32 %r296; .reg .u64 %r297; .reg .u32 %r298; .reg .u64 %r303; .reg .u32 %r307; .reg .f64 %r308; .reg .u32 %r310; .reg .u32 %r311; .reg .u64 %r314; .reg .u64 %r316; .reg .u64 %r321; .reg .u64 %r325; .reg .u32 %r330; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r337; .reg .u64 %r338; .reg .u64 %r340; .reg .u64 %r342; .reg .u64 %r344; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r354; .reg .u64 %r355; .reg .u64 %r357; .reg .u64 %r360; .reg .u64 %r362; .reg .u64 %r366; .reg .u64 %r367; .reg .u64 %r368; .reg .u64 %r369; .reg .u32 %r373; .reg .u32 %r375; .reg .u32 %r381; .reg .u32 %r382; .reg .u64 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r388; .reg .u64 %r389; .reg .u32 %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r395; .reg .u32 %r397; .reg .u32 %r398; .reg .u64 %r401; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u64 %r407; .reg .u64 %r408; .reg .u32 %r413; .reg .u32 %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .u64 %r429; .reg .u64 %r431; .reg .pred %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u16 %r436; .reg .u16 %r437; .reg .pred %r438; .reg .u16 %r439; .reg .u32 %r442; .reg .u16 %r443; .reg .u16 %r444; .reg .pred %r445; .reg .u64 %r446; .reg .pred %r447; .reg .u32 %r450; .reg .pred %r451; .reg .u16 %r452; .reg .u16 %r453; .reg .pred %r454; .reg .u16 %r455; .reg .pred %r456; .reg .u32 %r461; .reg .u64 %r462; .reg .u32 %r463; .reg .u32 %r464; .reg .u16 %r465; .reg .u32 %r466; .reg .u32 %r467; .reg .u32 %r468; .reg .u32 %r470; .reg .u32 %r471; .reg .u16 %r472; .reg .u16 %r473; .reg .u16 %r474; .reg .u32 %r475; .reg .u16 %r476; .reg .pred %r477; .reg .u32 %r478; .reg .u16 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r484; .reg .u32 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u16 %r490; .reg .pred %r491; .reg .u64 %r492; .reg .pred %r493; .reg .u64 %r494; .reg .u64 %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u32 %r502; .reg .pred %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .pred %r507; .reg .pred %r508; .reg .pred %r509; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .pred %r517; .reg .pred %r518; .reg .u32 %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .u32 %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .pred %r535; .reg .pred %r536; .reg .pred %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .pred %r541; .reg .pred %r542; .reg .pred %r543; .reg .u32 %r544; .reg .pred %r545; .reg .u32 %r546; .reg .pred %r547; .reg .pred %r548; .reg .pred %r549; .reg .pred %r550; .reg .u32 %r551; .reg .u32 %r553; .reg .u32 %r554; .reg .u32 %r555; .reg .pred %r556; .reg .u32 %r558; .reg .u32 %r559; .reg .u32 %r560; .reg .pred %r563; .reg .u16 %r564; .reg .pred %r565; .reg .u32 %r566; .reg .u32 %r567; .reg .pred %r568; .reg .u32 %r569; .reg .u32 %r570; .reg .pred %r571; .reg .u32 %r572; .reg .pred %r573; .reg .u32 %r574; .reg .pred %r575; .reg .u16 %r576; .reg .pred %r579; .reg .pred %r580; .reg .u32 %r581; .reg .u64 %r582; .reg .f64 %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r588; .reg .u32 %r589; .reg .pred %r590; .reg .u64 %r591; .reg .u64 %r592; .reg .u32 %r594; .reg .pred %r595; .reg .u32 %r596; .reg .pred %r597; .reg .pred %r598; .reg .u32 %r599; .reg .u32 %r600; .reg .u32 %r601; .reg .u32 %r602; .reg .u32 %r603; .reg .u32 %r604; .reg .u16 %r605; .reg .u16 %r606; .reg .u16 %r607; .reg .u32 %r608; .reg .u16 %r609; .reg .pred %r610; .reg .u64 %r611; .reg .u64 %r612; .reg .u32 %r613; .reg .pred %r614; .reg .pred %r615; .reg .pred %r616; .reg .u32 %r619; .reg .u64 %r627; .reg .u32 %r628; .reg .u64 %r629; .reg .u64 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u64 %r633; .reg .u32 %r634; .reg .pred %r635; .reg .u64 %r636; .reg .u32 %r638; .reg .u32 %r639; .reg .u32 %r640; .reg .u32 %r641; .reg .u32 %r642; .reg .u32 %r643; .reg .u16 %r644; .reg .u16 %r645; .reg .u16 %r646; .reg .u32 %r647; .reg .u16 %r648; .reg .pred %r649; .reg .pred %r650; .reg .pred %r651; .reg .u32 %r652; .reg .u32 %r653; .reg .pred %r654; .reg .u32 %r656; .reg .u32 %r657; .reg .u16 %r658; .reg .u16 %r659; .reg .pred %r662; .reg .u32 %r663; .reg .u16 %r664; .reg .u16 %r665; .reg .u32 %r666; .reg .pred %r670; .reg .u32 %r672; .reg .pred %r675; .reg .u64 %r681; .reg .u64 %r682; .reg .u64 %r684; .reg .u32 %r685; .reg .u32 %r686; .reg .u16 %r687; .reg .u16 %r688; .reg .pred %r689; .reg .pred %r690; .reg .u32 %r692; .reg .pred %r693; .reg .pred %r694; .reg .pred %r695; .reg .pred %r698; .reg .u32 %r701; .reg .pred %r702; .reg .pred %r706; .reg .u32 %r708; .reg .pred %r709; .reg .u32 %r710; .reg .pred %r711; .reg .u32 %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .pred %r715; .reg .u64 %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u64 %r719; .reg .u32 %r720; .reg .pred %r721; .reg .u32 %r722; .reg .pred %r723; .reg .u32 %r724; .reg .pred %r725; .reg .u32 %r726; .reg .pred %r727; .reg .u16 %r728; .reg .u32 %r729; .reg .u32 %r730; .reg .u32 %r731; .reg .pred %r732; .reg .pred %r733; .reg .u32 %r735; .reg .u64 %r737; .reg .u64 %r738; .reg .pred %r739; .reg .u64 %r740; .reg .u64 %r742; .reg .u32 %r743; .reg .pred %r744; .reg .u32 %r745; .reg .pred %r746; .reg .u32 %r747; .reg .pred %r748; .reg .u16 %r749; .reg .pred %r750; .reg .u32 %r751; .reg .u32 %r752; .reg .pred %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u32 %r756; .reg .pred %r757; .reg .u16 %r758; .reg .u32 %r759; .reg .pred %r760; .reg .pred %r761; .reg .u32 %r762; .reg .u32 %r763; .reg .pred %r764; .reg .u32 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .u32 %r768; .reg .u32 %r769; .reg .u32 %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .u16 %r773; .reg .u32 %r774; .reg .u16 %r775; .reg .pred %r776; .reg .pred %r777; .reg .pred %r778; .reg .u32 %r779; .reg .u16 %r780; .reg .u16 %r781; .reg .u32 %r782; .reg .u16 %r783; .reg .u16 %r784; .reg .u32 %r785; .reg .pred %r787; .reg .u32 %r788; .reg .u16 %r789; .reg .u32 %r790; .reg .u32 %r791; .reg .u32 %r792; .reg .u16 %r793; .reg .u16 %r794; .reg .u32 %r795; .reg .u16 %r796; .reg .u16 %r797; .reg .u16 %r798; .reg .u32 %r799; .reg .u16 %r800; .reg .pred %r801; .reg .u64 %r804; .reg .u32 %r805; .reg .u64 %r808; .reg .pred %r809; .reg .u32 %r810; .reg .u16 %r811; .reg .u16 %r812; .reg .u64 %r814; .reg .u32 %r815; .reg .u16 %r816; .reg .u16 %r817; .reg .pred %r820; .reg .u64 %r823; .reg .u64 %r824; .reg .u64 %r825; .reg .u32 %r826; .reg .pred %r827; .reg .u64 %r830; .reg .pred %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r834; .reg .u32 %r835; .reg .pred %r836; .reg .u32 %r837; .reg .pred %r838; .reg .pred %r840; .reg .pred %r841; .reg .pred %r842; .reg .u64 %r844; .reg .pred %r845; .reg .u32 %r850; .reg .pred %r851; .reg .pred %r852; .reg .pred %r854; .reg .u32 %r859; .reg .pred %r860; .reg .u16 %r861; .reg .u32 %r862; .reg .pred %r863; .reg .u64 %r865; .reg .u32 %r866; .reg .pred %r867; .reg .u32 %r872; .reg .pred %r873; .reg .u64 %r876; .reg .u32 %r877; .reg .pred %r878; .reg .u32 %r883; .reg .pred %r884; .reg .pred %r885; .reg .pred %r886; .reg .pred %r887; .reg .u64 %r889; .reg .pred %r890; .reg .u32 %r895; .reg .pred %r896; .reg .pred %r897; .reg .pred %r899; .reg .u32 %r904; .reg .pred %r905; .reg .pred %r906; .reg .pred %r907; .reg .u64 %r909; .reg .pred %r910; .reg .u32 %r915; .reg .pred %r916; .reg .pred %r917; .reg .pred %r919; .reg .u32 %r924; .reg .pred %r925; .reg .u32 %r926; .reg .pred %r927; .reg .u32 %r928; .reg .pred %r929; .reg .u32 %r934; .reg .pred %r935; .reg .pred %r936; .reg .pred %r937; .reg .u64 %r938; .reg .u64 %r939; .reg .u32 %r940; .reg .pred %r941; .reg .u32 %r946; .reg .pred %r947; .reg .u32 %r948; .reg .pred %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u32 %r952; .reg .pred %r953; .reg .u32 %r958; .reg .pred %r959; .reg .pred %r960; .reg .pred %r961; .reg .u64 %r963; .reg .pred %r964; .reg .u32 %r969; .reg .pred %r970; .reg .pred %r971; .reg .pred %r973; .reg .u32 %r978; .reg .pred %r979; .reg .pred %r980; .reg .u64 %r981; .reg .u64 %r982; .reg .u32 %r983; .reg .pred %r984; .reg .u32 %r989; .reg .pred %r990; .reg .u32 %r991; .reg .pred %r992; .reg .u32 %r993; .reg .pred %r994; .reg .u32 %r995; .reg .pred %r996; .reg .u32 %r1001; .reg .pred %r1002; .reg .pred %r1003; .reg .pred %r1004; .reg .u64 %r1006; .reg .pred %r1007; .reg .u32 %r1012; .reg .pred %r1013; .reg .pred %r1014; .reg .pred %r1016; .reg .u32 %r1021; .reg .pred %r1022; .reg .pred %r1023; .reg .u32 %r1028; .reg .pred %r1029; .reg .pred %r1030; .reg .u32 %r1031; .reg .pred %r1032; .reg .u32 %r1037; .reg .pred %r1038; .reg .u32 %r1039; .reg .pred %r1040; .reg .pred %r1041; .reg .u64 %r1043; .reg .pred %r1044; .reg .u32 %r1049; .reg .pred %r1050; .reg .pred %r1051; .reg .pred %r1053; .reg .u32 %r1058; .reg .pred %r1059; .reg .pred %r1060; .reg .u32 %r1061; .reg .pred %r1062; .reg .u32 %r1063; .reg .pred %r1064; .reg .u32 %r1069; .reg .pred %r1070; .reg .u32 %r1071; .reg .pred %r1072; .reg .u64 %r1073; .reg .u64 %r1074; .reg .u32 %r1075; .reg .pred %r1076; .reg .u32 %r1081; .reg .pred %r1082; .reg .u32 %r1083; .reg .u32 %r1084; .reg .pred %r1085; .reg .pred %r1086; .reg .u64 %r1088; .reg .pred %r1089; .reg .u32 %r1094; .reg .pred %r1095; .reg .pred %r1096; .reg .pred %r1098; .reg .u32 %r1103; .reg .pred %r1104; .reg .u32 %r1105; .reg .pred %r1106; .reg .u32 %r1107; .reg .pred %r1108; .reg .u64 %r1109; .reg .pred %r1110; .reg .u32 %r1115; .reg .pred %r1116; .reg .pred %r1117; .reg .u32 %r1122; .reg .pred %r1123; .reg .pred %r1124; .reg .u64 %r1125; .reg .pred %r1126; .reg .u32 %r1131; .reg .pred %r1132; .reg .pred %r1133; .reg .pred %r1134; .reg .u64 %r1136; .reg .pred %r1137; .reg .u32 %r1142; .reg .pred %r1143; .reg .pred %r1144; .reg .pred %r1146; .reg .u32 %r1151; .reg .pred %r1152; .reg .u64 %r1153; .reg .pred %r1154; .reg .u32 %r1159; .reg .pred %r1160; .reg .pred %r1162; .reg .u32 %r1167; .reg .pred %r1168; .reg .u32 %r1169; .reg .pred %r1170; .reg .pred %r1171; .reg .pred %r1172; .reg .u64 %r1174; .reg .pred %r1175; .reg .u32 %r1180; .reg .pred %r1181; .reg .pred %r1182; .reg .pred %r1184; .reg .u32 %r1189; .reg .pred %r1190; .reg .u32 %r1191; .reg .pred %r1192; .reg .u32 %r1193; .reg .u32 %r1198; .reg .pred %r1199; .reg .u64 %r1200; .reg .pred %r1201; .reg .u64 %r1205; .reg .u32 %r1206; .reg .u16 %r1207; .reg .u16 %r1208; .reg .pred %r1209; .reg .u32 %r1211; .reg .pred %r1212; .reg .pred %r1213; .reg .u64 %r1214; .reg .u32 %r1217; .reg .u64 %r1225; .reg .u32 %r1229; .reg .u64 %r1237; .reg .u32 %r1238; .reg .u16 %r1239; .reg .u32 %r1240; .reg .u32 %r1241; .reg .u32 %r1242; .reg .u32 %r1243; .reg .u32 %r1244; .reg .u32 %r1245; .reg .u16 %r1246; .reg .u16 %r1247; .reg .u16 %r1248; .reg .u32 %r1249; .reg .u16 %r1250; .reg .pred %r1251; .reg .u32 %r1252; .reg .pred %r1253; .reg .u64 %r1254; .reg .u32 %r1255; .reg .pred %r1256; .reg .u32 %r1259; .reg .u32 %r1260; .reg .u64 %r1267; .reg .u64 %r1268; .reg .u64 %r1269; .reg .u32 %r1270; .reg .pred %r1271; .reg .u32 %r1272; .reg .u32 %r1273; .reg .u32 %r1274; .reg .u32 %r1275; .reg .u32 %r1276; .reg .u32 %r1277; .reg .u16 %r1278; .reg .u16 %r1279; .reg .u16 %r1280; .reg .u32 %r1281; .reg .u16 %r1282; .reg .pred %r1283; .reg .u32 %r1284; .reg .pred %r1285; .reg .pred %r1286; .reg .u64 %r1288; .reg .u32 %r1289; .reg .u64 %r1291; .reg .u32 %r1315; .reg .u64 %r1316; .reg .u64 %r1317; .reg .u64 %r1318; .reg .u64 %r1319; .reg .u32 %r1320; .reg .u64 %r1321; .reg .u64 %r1322; .reg .u64 %r1323; .reg .u32 %r1324; .reg .u64 %r1325; .reg .u64 %r1326; .reg .u64 %r1327; .reg .u16 %r1334; mov.u64 %r415,%ar0; mov.u64 %r416,%ar1; mov.u64 %r417,%ar2; mov.u64 %r418,%ar3; .loc 1 685 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r429,[%value_in]; } .loc 1 685 8 ld.u64 %r262,[%r429]; .loc 1 686 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r431,[%value_in]; } .loc 1 848 2 setp.eq.u64 %r432,%r415,0; @ %r432 bra $L2; ld.u32 %r433,[%r415+80]; setp.ne.u32 %r434,%r433,0; @ %r434 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; call __sinit,(%out_arg1); } $L2: .loc 1 851 2 ld.s16 %r26,[%r416+16]; cvt.u16.u32 %r437,%r26; and.b16 %r436,%r437,8192; setp.ne.u16 %r438,%r436,0; @ %r438 bra $L3; .loc 1 849 2 ld.u32 %r24,[%r416+172]; .loc 1 851 2 or.b16 %r439,%r437,8192; cvt.s32.s16 %r26,%r439; st.u16 [%r416+16],%r439; and.b32 %r442,%r24,-8193; st.u32 [%r416+172],%r442; $L3: .loc 1 854 5 cvt.u16.u32 %r444,%r26; and.b16 %r443,%r444,8; setp.eq.u16 %r445,%r443,0; @ %r445 bra $L4; .loc 1 854 6 ld.u64 %r446,[%r416+24]; setp.ne.u64 %r447,%r446,0; @ %r447 bra $L5; $L4: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r450,[%value_in]; } setp.eq.u32 %r451,%r450,0; @ %r451 bra $L6; $L238: .loc 1 856 10 mov.u32 %r414,-1; bra $L1; $L6: .loc 1 861 9 ld.s16 %r26,[%r416+16]; $L5: .loc 1 861 5 cvt.u16.u32 %r453,%r26; and.b16 %r452,%r453,26; setp.ne.u16 %r454,%r452,10; @ %r454 bra $L8; .loc 1 861 60 ld.u16 %r455,[%r416+18]; setp.lt.s16 %r456,%r455,0; @ %r456 bra $L8; .loc 1 864 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r417; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r418; call (%value_in),__sbprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r461,[%value_in]; } mov.u32 %r414,%r461; bra $L1; $L8: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r462,0; st.u64 [%frame+184],%r462; .loc 1 885 17 mov.u32 %r463,0; st.u32 [%frame+176],%r463; .loc 1 696 6 mov.u32 %r66,%r463; .loc 1 688 42 mov.f64 %r28,0d0000000000000000; .loc 1 883 21 mov.u64 %r257,%frame; .loc 1 707 8 mov.u64 %r256,%r462; .loc 1 691 6 mov.u32 %r251,%r66; .loc 1 887 6 mov.u32 %r414,%r66; .loc 1 918 4 add.u64 %r1316,%frame,168; .loc 1 1756 5 add.u64 %r1317,%frame,200; .loc 1 1687 4 add.u64 %r1318,%frame,216; .loc 1 1685 4 add.u64 %r1319,%frame,218; .loc 1 1328 11 cvt.u32.u64 %r1320,%r431; .loc 1 1910 4 add.u64 %r1321,%frame,199; add.u64 %r1322,%frame,202; .loc 1 1916 36 add.u64 %r1323,%frame,201; .loc 1 1340 21 add.u32 %r1324,%r1320,1; .loc 1 1873 11 add.u64 %r1325,%frame,192; add.u64 %r1326,%frame,208; add.u64 %r1327,%frame,212; $L9: .loc 1 914 24 ld.s8 %r266,[%r417]; .loc 1 914 37 cvt.u16.u32 %r465,%r266; set.u32.ne.u16 %r466,%r465,37; neg.s32 %r467,%r466; mov.u32 %r464,%r467; set.u32.ne.u16 %r470,%r465,0; neg.s32 %r471,%r470; mov.u32 %r468,%r471; cvt.u16.u8 %r1334,%r464; mov.u16 %r473,%r1334; cvt.u16.u8 %r1334,%r468; mov.u16 %r474,%r1334; and.b16 %r472,%r473,%r474; cvt.u32.u16 %r475,%r472; cvt.u16.u8 %r476,%r475; setp.eq.u16 %r477,%r476,0; @ %r477 bra $L250; mov.u64 %r119,%r417; $L11: mov.u64 %r354,%r119; .loc 1 915 25 add.u64 %r119,%r119,1; .loc 1 914 24 ld.s8 %r266,[%r119]; .loc 1 914 37 cvt.u16.u32 %r479,%r266; set.u32.ne.u16 %r480,%r479,0; neg.s32 %r481,%r480; mov.u32 %r478,%r481; set.u32.ne.u16 %r484,%r479,37; neg.s32 %r485,%r484; mov.u32 %r482,%r485; cvt.u16.u8 %r1334,%r478; mov.u16 %r487,%r1334; cvt.u16.u8 %r1334,%r482; mov.u16 %r488,%r1334; and.b16 %r486,%r487,%r488; cvt.u32.u16 %r489,%r486; cvt.u16.u8 %r490,%r489; setp.ne.u16 %r491,%r490,0; @ %r491 bra $L11; .loc 1 917 16 sub.u64 %r492,%r119,%r417; .loc 1 917 10 cvt.u32.u64 %r267,%r492; .loc 1 917 6 setp.eq.u32 %r493,%r267,0; @ %r493 bra $L10; .loc 1 918 4 st.u64 [%r257],%r417; cvt.s64.s32 %r38,%r267; st.u64 [%r257+8],%r38; ld.u64 %r495,[%frame+184]; add.u64 %r494,%r495,%r38; st.u64 [%frame+184],%r494; ld.u32 %r496,[%frame+176]; add.u32 %r42,%r496,1; st.u32 [%frame+176],%r42; setp.gt.s32 %r497,%r42,7; @ %r497 bra $L12; add.u64 %r257,%r257,16; bra $L13; $L12: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r502,[%value_in]; } setp.ne.u32 %r503,%r502,0; @ %r503 bra $L14; mov.u64 %r257,%frame; $L13: .loc 1 919 8 add.u32 %r414,%r414,%r267; .loc 1 925 21 ld.s8 %r266,[%r354+1]; bra $L10; $L250: .loc 1 914 37 mov.u64 %r119,%r417; $L10: .loc 1 925 20 setp.eq.u32 %r504,%r266,0; @ %r504 bra $L15; .loc 1 929 6 add.u64 %r417,%r119,1; .loc 1 935 8 mov.u32 %r505,0; st.u8 [%frame+218],%r505; .loc 1 947 14 ld.s8 %r393,[%r119+1]; mov.u32 %r310,0; mov.u32 %r311,%r310; .loc 1 934 8 mov.u32 %r250,-1; .loc 1 933 9 mov.u32 %r249,%r310; .loc 1 931 9 mov.u32 %r247,%r310; .loc 1 1060 6 mov.u32 %r1315,%r310; $L16: .loc 1 947 18 add.u64 %r417,%r417,1; .loc 1 947 12 mov.u32 %r245,%r393; $L17: .loc 1 948 11 setp.eq.u32 %r506,%r245,85; @ %r506 bra $L18; setp.gt.s32 %r507,%r245,85; @ %r507 bra $L19; setp.eq.u32 %r508,%r245,46; @ %r508 bra $L20; setp.gt.s32 %r509,%r245,46; @ %r509 bra $L21; setp.eq.u32 %r510,%r245,42; @ %r510 bra $L22; setp.gt.s32 %r511,%r245,42; @ %r511 bra $L23; setp.eq.u32 %r512,%r245,32; @ %r512 bra $L24; setp.eq.u32 %r513,%r245,35; @ %r513 bra $L25; bra $L374; $L23: setp.eq.u32 %r514,%r245,43; @ %r514 bra $L27; setp.eq.u32 %r515,%r245,45; @ %r515 bra $L28; bra $L29; $L21: setp.eq.u32 %r516,%r245,68; @ %r516 bra $L30; setp.gt.s32 %r517,%r245,68; @ %r517 bra $L31; setp.eq.u32 %r518,%r245,48; @ %r518 bra $L32; add.u32 %r519,%r245,-49; setp.gt.u32 %r520,%r519,8; @ %r520 bra $L29; mov.u64 %r335,%r417; .loc 1 1077 6 mov.u32 %r249,0; add.u32 %r1289,%r245,-48; bra $L33; $L31: .loc 1 948 11 setp.eq.u32 %r521,%r245,76; @ %r521 bra $L34; setp.gt.s32 %r522,%r245,76; @ %r522 bra $L35; and.b32 %r523,%r245,-3; setp.eq.u32 %r524,%r523,69; @ ! %r524 bra $L29; bra $L36; $L35: setp.eq.u32 %r525,%r245,79; @ %r525 bra $L37; bra $L29; $L19: setp.eq.u32 %r526,%r245,110; @ %r526 bra $L38; setp.gt.s32 %r527,%r245,110; @ %r527 bra $L39; setp.gt.s32 %r528,%r245,103; @ %r528 bra $L40; setp.gt.s32 %r529,%r245,100; @ %r529 bra $L36; setp.eq.u32 %r530,%r245,99; @ %r530 bra $L41; setp.eq.u32 %r531,%r245,100; @ %r531 bra $L42; setp.eq.u32 %r532,%r245,88; @ %r532 bra $L43; bra $L29; $L40: setp.eq.u32 %r533,%r245,105; @ %r533 bra $L42; setp.eq.u32 %r534,%r245,108; @ %r534 bra $L44; setp.eq.u32 %r535,%r245,104; @ %r535 bra $L45; bra $L29; $L39: setp.eq.u32 %r536,%r245,115; @ %r536 bra $L46; setp.gt.s32 %r537,%r245,115; @ %r537 bra $L47; setp.eq.u32 %r538,%r245,112; @ %r538 bra $L48; setp.eq.u32 %r539,%r245,113; @ %r539 bra $L49; setp.eq.u32 %r540,%r245,111; @ %r540 bra $L50; bra $L29; $L47: setp.eq.u32 %r541,%r245,117; @ %r541 bra $L51; setp.eq.u32 %r542,%r245,120; @ %r542 bra $L52; bra $L29; $L42: setp.eq.u32 %r543,%r310,0; @ %r543 bra $L54; cvt.u32.u32 %r544,%r311; st.u8 [%frame+218],%r544; bra $L54; $L52: setp.eq.u32 %r545,%r310,0; @ %r545 bra $L55; cvt.u32.u32 %r546,%r311; st.u8 [%frame+218],%r546; $L55: .loc 1 1538 10 cvta.const.u64 %r256,$LC5; bra $L56; $L24: .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 964 7 setp.ne.u32 %r547,%r311,0; selp.u32 %r310,%r310,1,%r547; selp.u32 %r311,%r311,32,%r547; bra $L16; $L25: .loc 1 968 10 or.b32 %r247,%r247,1; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 969 4 bra $L16; $L22: .loc 1 1007 10 add.u64 %r331,%r418,4; ld.u32 %r249,[%r418]; .loc 1 1011 7 setp.lt.s32 %r548,%r249,0; @ %r548 bra $L58; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1007 10 mov.u64 %r418,%r331; bra $L16; $L58: .loc 1 1013 10 neg.s32 %r249,%r249; .loc 1 1007 10 mov.u64 %r418,%r331; $L28: .loc 1 1016 10 or.b32 %r247,%r247,4; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1017 4 bra $L16; $L27: .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1020 4 mov.u32 %r310,1; .loc 1 1019 9 mov.u32 %r311,%r245; .loc 1 1020 4 bra $L16; $L20: .loc 1 1022 18 add.u64 %r286,%r417,1; .loc 1 1022 12 ld.s8 %r245,[%r417]; .loc 1 1022 7 setp.eq.u32 %r549,%r245,42; @ %r549 bra $L59; .loc 1 1061 11 add.u32 %r1289,%r245,-48; setp.le.u32 %r550,%r1289,9; @ %r550 bra $L60; .loc 1 1022 18 mov.u64 %r417,%r286; .loc 1 1060 6 mov.u32 %r250,%r1315; bra $L17; $L59: ld.u32 %r551,[%r418]; max.s32 %r250,%r551,-1; .loc 1 947 14 ld.s8 %r393,[%r417+1]; .loc 1 1052 10 add.u64 %r418,%r418,4; .loc 1 1022 18 mov.u64 %r417,%r286; .loc 1 1058 5 bra $L16; $L60: mov.u64 %r342,%r286; .loc 1 1060 6 mov.u32 %r250,%r1315; $L62: .loc 1 1062 12 shl.b32 %r553,%r250,2; add.u32 %r554,%r553,%r250; add.u32 %r555,%r554,%r554; .loc 1 1062 7 add.u32 %r250,%r555,%r1289; mov.u64 %r282,%r342; add.u64 %r342,%r342,1; mov.u64 %r417,%r342; .loc 1 1063 8 ld.s8 %r245,[%r282]; .loc 1 1061 11 add.u32 %r1289,%r245,-48; setp.le.u32 %r556,%r1289,9; @ %r556 bra $L62; bra $L17; $L32: .loc 1 1073 10 or.b32 %r247,%r247,128; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1074 4 bra $L16; $L33: .loc 1 1079 12 shl.b32 %r558,%r249,2; add.u32 %r559,%r558,%r249; add.u32 %r560,%r559,%r559; .loc 1 1079 7 add.u32 %r249,%r1289,%r560; mov.u64 %r275,%r335; add.u64 %r335,%r335,1; mov.u64 %r417,%r335; .loc 1 1080 8 ld.s8 %r245,[%r275]; .loc 1 1081 13 add.u32 %r1289,%r245,-48; setp.le.u32 %r563,%r1289,9; @ %r563 bra $L33; bra $L17; $L34: .loc 1 1097 10 or.b32 %r247,%r247,8; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1098 4 bra $L16; $L45: .loc 1 1107 11 or.b32 %r247,%r247,64; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1108 4 bra $L16; $L44: .loc 1 1111 8 ld.s8 %r393,[%r417]; .loc 1 1111 7 cvt.u16.u32 %r564,%r393; setp.ne.u16 %r565,%r564,108; @ %r565 bra $L63; .loc 1 1113 11 or.b32 %r247,%r247,32; .loc 1 947 14 ld.s8 %r393,[%r417+1]; .loc 1 1112 8 add.u64 %r417,%r417,1; bra $L16; $L63: .loc 1 1116 11 or.b32 %r247,%r247,16; bra $L16; $L49: .loc 1 1119 10 or.b32 %r247,%r247,32; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1120 4 bra $L16; $L41: .loc 1 1178 9 ld.u32 %r566,[%r418]; st.u8 [%frame+128],%r566; .loc 1 1181 9 mov.u32 %r567,0; st.u8 [%frame+218],%r567; .loc 1 1178 11 add.u64 %r418,%r418,4; .loc 1 1182 4 mov.u32 %r166,1; .loc 1 1179 10 mov.u32 %r255,%r166; .loc 1 1162 7 add.u64 %r246,%frame,128; .loc 1 1182 4 bra $L64; $L30: setp.eq.u32 %r568,%r310,0; @ %r568 bra $L65; cvt.u32.u32 %r569,%r311; st.u8 [%frame+218],%r569; $L65: .loc 1 1184 10 or.b32 %r247,%r247,16; $L54: .loc 1 1188 13 and.b32 %r570,%r247,32; setp.eq.u32 %r571,%r570,0; @ %r571 bra $L66; add.u64 %r333,%r418,7; and.b64 %r297,%r333,-8; add.u64 %r418,%r297,8; ld.u64 %r57,[%r297]; mov.u64 %r253,%r57; bra $L67; $L66: and.b32 %r572,%r247,16; setp.eq.u32 %r573,%r572,0; @ %r573 bra $L68; add.u64 %r283,%r418,7; and.b64 %r334,%r283,-8; add.u64 %r418,%r334,8; ld.u64 %r57,[%r334]; mov.u64 %r253,%r57; bra $L67; $L68: .loc 1 1007 10 ld.u32 %r395,[%r418]; add.u64 %r418,%r418,4; .loc 1 1188 13 and.b32 %r574,%r247,64; setp.eq.u32 %r575,%r574,0; @ %r575 bra $L69; cvt.u16.u32 %r576,%r395; cvt.s64.s16 %r253,%r576; .loc 1 1190 8 mov.u64 %r57,%r253; bra $L67; $L69: .loc 1 1188 13 cvt.s64.s32 %r253,%r395; .loc 1 1190 8 mov.u64 %r57,%r253; $L67: .loc 1 1190 7 setp.ge.s64 %r579,%r57,0; @ %r579 bra $L70; .loc 1 1196 12 neg.s64 %r253,%r253; mov.u32 %r260,45; .loc 1 1199 9 mov.u32 %r254,1; bra $L71; $L36: setp.eq.u32 %r580,%r310,0; @ %r580 bra $L72; cvt.u32.u32 %r581,%r311; st.u8 [%frame+218],%r581; $L72: .loc 1 1188 13 add.u64 %r582,%r418,7; and.b64 %r401,%r582,-8; add.u64 %r418,%r401,8; .loc 1 1214 25 ld.f64 %r28,[%r401]; .loc 1 1225 8 abs.f64 %r585,%r28; setp.leu.f64 %r586,%r585,0d7fefffffffffffff; @ %r586 bra $L75; .loc 1 1226 8 setp.lt.f64 %r587,%r28,0d0000000000000000; @ %r587 bra $L76; .loc 1 964 8 ld.s8 %r381,[%frame+218]; bra $L77; $L75: .loc 1 1236 7 setp.nan.f64 %r588,%r28,%r28; @ ! %r588 bra $L375; bra $L78; $L76: .loc 1 1227 11 mov.u32 %r589,45; st.u8 [%frame+218],%r589; mov.u32 %r381,45; $L77: .loc 1 1228 8 setp.le.s32 %r590,%r245,71; @ %r590 bra $L251; .loc 1 1231 9 cvta.const.u64 %r246,$LC1; bra $L80; $L251: .loc 1 1229 9 cvta.const.u64 %r246,$LC0; $L80: .loc 1 1233 11 and.b32 %r248,%r247,-129; .loc 1 1234 5 mov.u32 %r166,3; .loc 1 1232 10 mov.u32 %r255,%r166; .loc 1 932 9 mov.u32 %r250,0; .loc 1 937 8 mov.u32 %r252,%r250; .loc 1 1234 5 bra $L81; $L78: .loc 1 1237 9 mov.b64 %r591,%r28; shr.u64 %r592,%r591,63; cvt.u32.u64 %r594,%r592; .loc 1 1237 8 setp.ne.u32 %r595,%r594,0; @ %r595 bra $L82; .loc 1 964 8 ld.s8 %r381,[%frame+218]; bra $L83; $L82: .loc 1 1238 11 mov.u32 %r596,45; st.u8 [%frame+218],%r596; mov.u32 %r381,45; $L83: .loc 1 1239 8 setp.le.s32 %r597,%r245,71; @ %r597 bra $L252; .loc 1 1242 9 cvta.const.u64 %r246,$LC3; bra $L84; $L252: .loc 1 1240 9 cvta.const.u64 %r246,$LC2; $L84: .loc 1 1244 11 and.b32 %r248,%r247,-129; .loc 1 1245 5 mov.u32 %r166,3; .loc 1 1243 10 mov.u32 %r255,%r166; .loc 1 932 9 mov.u32 %r250,0; .loc 1 937 8 mov.u32 %r252,%r250; .loc 1 1245 5 bra $L81; $L375: .loc 1 1304 32 and.b32 %r398,%r245,-33; .loc 1 1302 7 setp.eq.u32 %r598,%r250,-1; @ %r598 bra $L253; .loc 1 1304 40 set.u32.eq.u32 %r600,%r250,0; neg.s32 %r601,%r600; mov.u32 %r599,%r601; .loc 1 1304 32 set.u32.eq.u32 %r603,%r398,71; neg.s32 %r604,%r603; mov.u32 %r602,%r604; .loc 1 1304 40 cvt.u16.u8 %r1334,%r599; mov.u16 %r606,%r1334; cvt.u16.u8 %r1334,%r602; mov.u16 %r607,%r1334; and.b16 %r605,%r606,%r607; cvt.u32.u16 %r608,%r605; cvt.u16.u8 %r609,%r608; setp.ne.u16 %r610,%r609,0; @ %r610 bra $L86; bra $L85; $L253: .loc 1 1303 10 mov.u32 %r250,6; $L85: .loc 1 1308 10 or.b32 %r248,%r247,256; .loc 1 1807 6 mov.b64 %r611,%r28; shr.u64 %r612,%r611,32; cvt.u32.u64 %r613,%r612; .loc 1 1807 5 setp.ge.s32 %r614,%r613,0; @ %r614 bra $L254; bra $L248; $L267: .loc 1 1305 10 mov.u32 %r250,1; $L248: .loc 1 1808 9 neg.f64 %r308,%r28; .loc 1 1809 9 mov.u32 %r330,45; bra $L87; $L254: mov.f64 %r308,%r28; .loc 1 1811 9 mov.u32 %r330,0; $L87: .loc 1 1860 5 setp.eq.u32 %r615,%r398,70; @ %r615 bra $L88; .loc 1 1867 6 setp.ne.u32 %r616,%r398,69; @ %r616 bra $L89; .loc 1 1868 11 add.u32 %r307,%r250,1; .loc 1 1873 11 mov.u32 %r619,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r308; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r619; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r307; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r627,[%value_in]; } mov.u64 %r246,%r627; setp.eq.u32 %r1285,1,1; bra $L90; $L387: .loc 1 1880 10 ld.u32 %r373,[%frame+212]; bra $L91; $L242: .loc 1 1879 23 mov.u32 %r628,1; sub.u32 %r373,%r628,%r250; .loc 1 1879 12 st.u32 [%frame+212],%r373; $L91: .loc 1 1880 10 cvt.s64.s32 %r629,%r373; .loc 1 1880 7 add.u64 %r630,%r629,%r174; add.u64 %r314,%r1237,%r630; setp.eq.u32 %r1285,1,1; $L240: .loc 1 1882 6 setp.eq.f64 %r631,%r308,0d0000000000000000; @ %r631 bra $L255; .loc 1 1884 14 ld.u64 %r223,[%frame+192]; setp.ge.u64 %r632,%r223,%r314; @ %r632 bra $L92; .loc 1 1885 11 mov.u32 %r634,48; $L93: .loc 1 1885 8 add.u64 %r633,%r223,1; st.u64 [%frame+192],%r633; .loc 1 1885 11 st.u8 [%r223],%r634; .loc 1 1884 14 ld.u64 %r223,[%frame+192]; setp.gt.u64 %r635,%r314,%r223; @ %r635 bra $L93; bra $L92; $L388: .loc 1 1887 16 ld.u64 %r636,[%frame+192]; sub.u64 %r316,%r636,%r246; .loc 1 1887 10 cvt.u32.u64 %r1284,%r316; mov.u32 %r66,%r1284; .loc 1 1314 14 ld.u32 %r252,[%frame+212]; bra $L94; $L255: mov.u64 %r223,%r314; $L92: .loc 1 1887 16 sub.u64 %r316,%r223,%r246; .loc 1 1887 10 cvt.u32.u64 %r66,%r316; mov.u32 %r1284,%r66; .loc 1 1314 14 ld.u32 %r252,[%frame+212]; .loc 1 1313 7 @ %r1285 bra $L95; $L94: .loc 1 1314 8 set.u32.lt.s32 %r639,%r252,-3; neg.s32 %r640,%r639; mov.u32 %r638,%r640; .loc 1 1314 20 set.u32.lt.s32 %r642,%r250,%r252; neg.s32 %r643,%r642; mov.u32 %r641,%r643; cvt.u16.u8 %r1334,%r638; mov.u16 %r645,%r1334; cvt.u16.u8 %r1334,%r641; mov.u16 %r646,%r1334; or.b16 %r644,%r645,%r646; cvt.u32.u16 %r647,%r644; cvt.u16.u8 %r648,%r647; setp.eq.u16 %r649,%r648,0; @ %r649 bra $L96; .loc 1 1315 9 add.u32 %r245,%r245,-2; bra $L97; $L95: .loc 1 1323 7 setp.eq.u32 %r650,%r245,102; @ %r650 bra $L98; $L97: .loc 1 1324 5 add.u32 %r65,%r252,-1; st.u32 [%frame+212],%r65; .loc 1 1903 7 st.u8 [%frame+200],%r245; .loc 1 1904 5 setp.ge.s32 %r651,%r65,0; @ %r651 bra $L256; .loc 1 1905 7 mov.u32 %r652,1; sub.u32 %r65,%r652,%r252; .loc 1 1906 8 mov.u32 %r272,45; bra $L99; $L256: .loc 1 1909 8 mov.u32 %r272,43; $L99: cvt.u32.u32 %r653,%r272; st.u8 [%frame+201],%r653; .loc 1 1911 5 setp.le.s32 %r654,%r65,9; @ %r654 bra $L100; .loc 1 1910 4 mov.u64 %r321,%r1321; $L101: mov.u64 %r355,%r321; .loc 1 1913 9 add.u64 %r321,%r355,-1; .loc 1 1913 11 rem.s32 %r656,%r65,10; mov.u32 %r657,%r656; cvt.u16.u8 %r1334,%r657; mov.u16 %r659,%r1334; add.u16 %r658,%r659,48; st.u8 [%r355+-1],%r658; mov.u32 %r293,%r65; .loc 1 1914 17 div.s32 %r65,%r65,10; .loc 1 1914 24 setp.gt.s32 %r662,%r293,99; @ %r662 bra $L101; .loc 1 1915 8 add.u64 %r228,%r355,-2; .loc 1 1915 10 mov.u32 %r663,%r65; cvt.u16.u8 %r1334,%r663; mov.u16 %r665,%r1334; add.u16 %r664,%r665,48; cvt.u32.u16 %r666,%r664; cvt.s32.s8 %r375,%r666; .loc 1 1915 8 st.u8 [%r321+-1],%r666; .loc 1 1916 12 setp.ge.u64 %r670,%r228,%r1321; @ %r670 bra $L257; mov.u64 %r348,%r1322; $L104: .loc 1 1916 43 add.u64 %r228,%r228,1; .loc 1 1916 39 cvt.u32.u32 %r672,%r375; st.u8 [%r348],%r672; .loc 1 1916 12 add.u64 %r348,%r348,1; setp.ne.u64 %r675,%r228,%r1321; @ %r675 bra $L103; .loc 1 1916 36 sub.u64 %r681,%r1323,%r355; add.u64 %r682,%r1322,%r681; .loc 1 1923 12 sub.u64 %r684,%r682,%r1317; cvt.u32.u64 %r251,%r684; bra $L102; $L103: .loc 1 1916 41 ld.s8 %r375,[%r228]; bra $L104; $L100: .loc 1 1920 9 mov.u32 %r685,48; st.u8 [%frame+202],%r685; .loc 1 1921 10 mov.u32 %r686,%r65; cvt.u16.u8 %r1334,%r686; mov.u16 %r688,%r1334; add.u16 %r687,%r688,48; st.u8 [%frame+203],%r687; .loc 1 1921 8 mov.u32 %r251,4; bra $L102; $L257: .loc 1 1916 12 mov.u32 %r251,2; $L102: .loc 1 1326 10 add.u32 %r255,%r251,%r1284; .loc 1 1327 8 setp.gt.s32 %r689,%r1284,1; @ %r689 bra $L105; and.b32 %r252,%r247,1; .loc 1 1327 18 setp.ne.u32 %r690,%r252,0; @ %r690 bra $L105; .loc 1 1673 10 max.s32 %r166,%r255,0; bra $L106; $L105: .loc 1 1328 11 add.u32 %r255,%r1320,%r255; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 937 8 mov.u32 %r252,0; bra $L106; $L98: and.b32 %r692,%r247,1; or.b32 %r397,%r692,%r250; .loc 1 1334 9 setp.gt.s32 %r693,%r252,0; @ %r693 bra $L107; bra $L376; $L96: .loc 1 1342 15 setp.le.s32 %r694,%r1284,%r252; @ %r694 bra $L109; bra $L377; $L107: .loc 1 1336 16 setp.eq.u32 %r695,%r397,0; @ %r695 bra $L258; .loc 1 1337 13 vadd.u32.u32.u32.add %r255,%r250,%r252,%r1320; .loc 1 1673 10 max.s32 %r166,%r255,0; bra $L106; $L376: .loc 1 1339 20 setp.eq.u32 %r698,%r397,0; @ %r698 bra $L259; .loc 1 1340 21 add.u32 %r255,%r1324,%r250; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1339 12 bra $L106; $L109: .loc 1 1344 9 and.b32 %r701,%r247,1; setp.ne.u32 %r702,%r701,0; @ %r702 bra $L112; .loc 1 1673 10 max.s32 %r166,%r252,0; mov.u32 %r255,%r252; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L112: .loc 1 1345 12 add.u32 %r255,%r1320,%r252; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L377: .loc 1 1347 18 add.u32 %r255,%r1320,%r1284; .loc 1 1348 9 setp.le.s32 %r706,%r252,0; @ %r706 bra $L113; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L113: .loc 1 1349 17 mov.u32 %r708,1; .loc 1 1349 12 vsub.u32.u32.u32.add %r255,%r708,%r252,%r255; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L258: mov.u32 %r166,%r252; .loc 1 1314 14 mov.u32 %r255,%r252; bra $L106; $L259: mov.u32 %r166,1; .loc 1 1339 12 mov.u32 %r255,%r166; $L106: .loc 1 1372 7 setp.eq.u32 %r709,%r330,0; @ %r709 bra $L114; .loc 1 1373 10 mov.u32 %r710,45; st.u8 [%frame+218],%r710; .loc 1 932 9 mov.u32 %r250,0; bra $L115; $L38: setp.eq.u32 %r711,%r310,0; @ %r711 bra $L116; cvt.u32.u32 %r712,%r311; st.u8 [%frame+218],%r712; $L116: .loc 1 1188 13 add.u64 %r713,%r418,7; and.b64 %r407,%r713,-8; ld.u64 %r408,[%r407]; add.u64 %r418,%r407,8; .loc 1 1387 14 and.b32 %r714,%r247,32; .loc 1 1387 7 setp.eq.u32 %r715,%r714,0; @ %r715 bra $L117; .loc 1 1388 34 cvt.s64.s32 %r716,%r414; st.u64 [%r408],%r716; bra $L9; $L117: .loc 1 1391 14 and.b32 %r717,%r247,16; .loc 1 1391 7 setp.eq.u32 %r718,%r717,0; @ %r718 bra $L119; .loc 1 1392 34 cvt.s64.s32 %r719,%r414; st.u64 [%r408],%r719; bra $L9; $L119: .loc 1 1393 19 and.b32 %r720,%r247,64; .loc 1 1393 12 setp.eq.u32 %r721,%r720,0; @ %r721 bra $L120; .loc 1 1394 35 st.u16 [%r408],%r414; bra $L9; $L120: .loc 1 1400 33 st.u32 [%r408],%r414; bra $L9; $L37: .loc 1 1403 10 or.b32 %r247,%r247,16; $L50: .loc 1 1406 13 and.b32 %r722,%r247,32; setp.eq.u32 %r723,%r722,0; @ %r723 bra $L121; add.u64 %r67,%r418,7; and.b64 %r347,%r67,-8; add.u64 %r418,%r347,8; ld.u64 %r253,[%r347]; .loc 1 1407 9 mov.u32 %r254,0; bra $L122; $L121: .loc 1 1406 13 and.b32 %r724,%r247,16; setp.eq.u32 %r725,%r724,0; @ %r725 bra $L123; add.u64 %r338,%r418,7; and.b64 %r337,%r338,-8; add.u64 %r418,%r337,8; ld.u64 %r253,[%r337]; .loc 1 1407 9 mov.u32 %r254,%r722; bra $L122; $L123: .loc 1 1007 10 ld.u32 %r402,[%r418]; add.u64 %r418,%r418,4; .loc 1 1406 13 and.b32 %r726,%r247,64; setp.eq.u32 %r727,%r726,0; @ %r727 bra $L124; cvt.u16.u32 %r728,%r402; cvt.u64.u16 %r253,%r728; .loc 1 1407 9 mov.u32 %r254,%r724; bra $L122; $L124: .loc 1 1406 13 cvt.u64.u32 %r253,%r402; .loc 1 1407 9 mov.u32 %r254,%r726; bra $L122; $L48: .loc 1 1421 25 add.u64 %r369,%r418,7; and.b64 %r362,%r369,-8; add.u64 %r418,%r362,8; ld.u64 %r253,[%r362]; .loc 1 1424 10 or.b32 %r247,%r247,2; .loc 1 1425 10 mov.u32 %r729,48; st.u8 [%frame+216],%r729; .loc 1 1426 10 mov.u32 %r730,120; st.u8 [%frame+217],%r730; .loc 1 1423 10 cvta.const.u64 %r256,$LC5; .loc 1 1422 9 mov.u32 %r254,2; .loc 1 1426 15 mov.u32 %r245,120; .loc 1 1427 4 bra $L122; $L46: .loc 1 1432 7 add.u64 %r367,%r418,7; and.b64 %r368,%r367,-8; add.u64 %r418,%r368,8; ld.u64 %r246,[%r368]; .loc 1 1436 9 mov.u32 %r731,0; st.u8 [%frame+218],%r731; .loc 1 1442 7 setp.ne.u64 %r732,%r246,0; @ %r732 bra $L125; .loc 1 1444 39 min.u32 %r255,%r250,6; mov.u32 %r166,%r255; .loc 1 1443 8 cvta.const.u64 %r246,$LC6; bra $L64; $L125: .loc 1 1511 7 setp.eq.u32 %r733,%r250,-1; @ %r733 bra $L126; .loc 1 1517 15 cvt.s64.s32 %r737,%r250; mov.u32 %r735,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r246; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r735; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r737; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r738,[%value_in]; } .loc 1 1519 8 setp.ne.u64 %r739,%r738,0; @ %r739 bra $L127; .loc 1 1674 7 ld.s8 %r381,[%frame+218]; mov.u32 %r166,%r250; mov.u32 %r255,%r250; mov.u32 %r248,%r247; .loc 1 932 9 mov.u32 %r250,%r735; .loc 1 937 8 mov.u32 %r252,%r250; bra $L81; $L127: .loc 1 1520 15 sub.u64 %r740,%r738,%r246; .loc 1 1520 11 cvt.u32.u64 %r255,%r740; .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 1673 10 max.s32 %r166,%r255,0; mov.u32 %r248,%r247; .loc 1 932 9 mov.u32 %r250,%r735; .loc 1 937 8 mov.u32 %r252,%r250; bra $L81; $L126: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r246; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r742,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r255,%r742; .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 1673 10 max.s32 %r166,%r255,0; mov.u32 %r248,%r247; .loc 1 932 9 mov.u32 %r250,0; .loc 1 937 8 mov.u32 %r252,%r250; bra $L81; $L18: .loc 1 1528 10 or.b32 %r247,%r247,16; $L51: .loc 1 1531 13 and.b32 %r743,%r247,32; setp.eq.u32 %r744,%r743,0; @ %r744 bra $L128; add.u64 %r357,%r418,7; and.b64 %r216,%r357,-8; add.u64 %r418,%r216,8; ld.u64 %r253,[%r216]; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L128: .loc 1 1531 13 and.b32 %r745,%r247,16; setp.eq.u32 %r746,%r745,0; @ %r746 bra $L129; add.u64 %r340,%r418,7; and.b64 %r344,%r340,-8; add.u64 %r418,%r344,8; ld.u64 %r253,[%r344]; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L129: .loc 1 1007 10 ld.u32 %r403,[%r418]; add.u64 %r418,%r418,4; .loc 1 1531 13 and.b32 %r747,%r247,64; setp.eq.u32 %r748,%r747,0; @ %r748 bra $L130; cvt.u16.u32 %r749,%r403; cvt.u64.u16 %r253,%r749; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L130: .loc 1 1531 13 cvt.u64.u32 %r253,%r403; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L43: setp.eq.u32 %r750,%r310,0; @ %r750 bra $L131; cvt.u32.u32 %r751,%r311; st.u8 [%frame+218],%r751; $L131: .loc 1 1535 10 cvta.const.u64 %r256,$LC4; $L56: .loc 1 1539 17 and.b32 %r752,%r247,32; setp.eq.u32 %r753,%r752,0; @ %r753 bra $L132; add.u64 %r360,%r418,7; and.b64 %r349,%r360,-8; add.u64 %r418,%r349,8; ld.u64 %r253,[%r349]; bra $L133; $L132: and.b32 %r754,%r247,16; setp.eq.u32 %r755,%r754,0; @ %r755 bra $L134; add.u64 %r366,%r418,7; and.b64 %r303,%r366,-8; add.u64 %r418,%r303,8; ld.u64 %r253,[%r303]; bra $L133; $L134: .loc 1 1007 10 ld.u32 %r404,[%r418]; add.u64 %r418,%r418,4; .loc 1 1539 17 and.b32 %r756,%r247,64; setp.eq.u32 %r757,%r756,0; @ %r757 bra $L135; cvt.u16.u32 %r758,%r404; cvt.u64.u16 %r253,%r758; bra $L133; $L135: cvt.u64.u32 %r253,%r404; $L133: .loc 1 1542 14 and.b32 %r759,%r247,1; .loc 1 1542 7 setp.eq.u32 %r760,%r759,0; @ %r760 bra $L260; .loc 1 1542 20 setp.eq.u64 %r761,%r253,0; @ %r761 bra $L261; .loc 1 1543 11 mov.u32 %r762,48; st.u8 [%frame+216],%r762; .loc 1 1544 11 st.u8 [%frame+217],%r245; .loc 1 1545 11 or.b32 %r247,%r247,2; .loc 1 1540 9 mov.u32 %r254,2; bra $L122; $L260: mov.u32 %r254,2; bra $L122; $L261: mov.u32 %r254,2; $L122: .loc 1 1552 1 mov.u32 %r260,0; $L71: .loc 1 1197 10 cvt.u32.u32 %r763,%r260; st.u8 [%frame+218],%r763; .loc 1 1558 14 setp.eq.u32 %r764,%r250,-1; @ %r764 bra $L136; .loc 1 1559 11 and.b32 %r248,%r247,-129; .loc 1 1567 15 set.u32.ne.u64 %r766,%r253,0; neg.s32 %r767,%r766; mov.u32 %r765,%r767; .loc 1 1567 28 set.u32.ne.u32 %r769,%r250,0; neg.s32 %r770,%r769; mov.u32 %r768,%r770; .loc 1 1567 20 cvt.u16.u8 %r1334,%r765; mov.u16 %r772,%r1334; cvt.u16.u8 %r1334,%r768; mov.u16 %r773,%r1334; or.b16 %r771,%r772,%r773; cvt.u32.u16 %r774,%r771; .loc 1 1567 7 cvt.u16.u8 %r775,%r774; setp.eq.u16 %r776,%r775,0; @ %r776 bra $L137; .loc 1 1559 11 mov.u32 %r247,%r248; $L136: setp.eq.u32 %r777,%r254,1; @ %r777 bra $L138; setp.eq.u32 %r778,%r254,2; @ %r778 bra $L262; mov.u64 %r246,%r1316; $L140: mov.u64 %r325,%r246; .loc 1 1576 13 add.u64 %r246,%r246,-1; .loc 1 1576 15 cvt.u32.u64 %r779,%r253; cvt.u16.u8 %r1334,%r779; mov.u16 %r781,%r1334; and.b16 %r780,%r781,7; cvt.u32.u16 %r782,%r780; cvt.u16.u8 %r1334,%r782; mov.u16 %r784,%r1334; add.u16 %r783,%r784,48; cvt.u32.u16 %r785,%r783; cvt.s32.s8 %r118,%r785; .loc 1 1576 13 st.u8 [%r246],%r785; .loc 1 1577 14 shr.u64 %r253,%r253,3; .loc 1 1578 15 setp.ne.u64 %r787,%r253,0; @ %r787 bra $L140; .loc 1 1580 22 cvt.u16.u32 %r789,%r118; set.u32.ne.u16 %r790,%r789,48; neg.s32 %r791,%r790; mov.u32 %r788,%r791; .loc 1 1580 9 mov.u32 %r792,%r247; cvt.u16.u8 %r1334,%r792; mov.u16 %r794,%r1334; and.b16 %r793,%r794,1; cvt.u32.u16 %r795,%r793; .loc 1 1580 22 cvt.u16.u8 %r1334,%r788; mov.u16 %r797,%r1334; cvt.u16.u8 %r1334,%r795; mov.u16 %r798,%r1334; and.b16 %r796,%r797,%r798; cvt.u32.u16 %r799,%r796; cvt.u16.u8 %r800,%r799; setp.ne.u16 %r801,%r800,0; @ %r801 bra $L141; .loc 1 1644 21 sub.u64 %r804,%r1316,%r246; .loc 1 1644 9 cvt.u32.u64 %r255,%r804; mov.u32 %r248,%r247; bra $L142; $L141: .loc 1 1581 13 add.u64 %r284,%r325,-2; mov.u32 %r805,48; st.u8 [%r246+-1],%r805; .loc 1 1644 21 sub.u64 %r808,%r1316,%r284; .loc 1 1644 9 cvt.u32.u64 %r255,%r808; mov.u32 %r248,%r247; .loc 1 1581 13 mov.u64 %r246,%r284; bra $L142; $L268: .loc 1 1559 11 mov.u32 %r247,%r248; $L138: .loc 1 1586 9 setp.gt.u64 %r809,%r253,9; @ %r809 bra $L263; .loc 1 1587 15 cvt.u32.u64 %r810,%r253; cvt.u16.u8 %r1334,%r810; mov.u16 %r812,%r1334; add.u16 %r811,%r812,48; st.u8 [%frame+167],%r811; .loc 1 1588 7 mov.u32 %r248,%r247; mov.u32 %r255,1; .loc 1 1587 13 add.u64 %r246,%frame,167; .loc 1 1588 7 bra $L142; $L263: .loc 1 1566 7 mov.u64 %r246,%r1316; $L143: .loc 1 1594 14 add.u64 %r246,%r246,-1; .loc 1 1594 16 rem.u64 %r814,%r253,10; cvt.u32.u64 %r815,%r814; cvt.u16.u8 %r1334,%r815; mov.u16 %r817,%r1334; add.u16 %r816,%r817,48; st.u8 [%r246],%r816; mov.u64 %r244,%r253; .loc 1 1615 15 div.u64 %r253,%r253,10; .loc 1 1616 22 setp.gt.u64 %r820,%r244,9; @ %r820 bra $L143; .loc 1 1644 21 sub.u64 %r823,%r1316,%r246; .loc 1 1644 9 cvt.u32.u64 %r255,%r823; mov.u32 %r248,%r247; bra $L142; $L262: mov.u64 %r246,%r1316; $L139: .loc 1 1621 13 add.u64 %r246,%r246,-1; .loc 1 1621 28 and.b64 %r824,%r253,15; .loc 1 1621 20 add.u64 %r825,%r256,%r824; .loc 1 1621 13 ld.u8 %r826,[%r825]; st.u8 [%r246],%r826; .loc 1 1622 14 shr.u64 %r253,%r253,4; .loc 1 1623 15 setp.ne.u64 %r827,%r253,0; @ %r827 bra $L139; .loc 1 1644 21 sub.u64 %r830,%r1316,%r246; .loc 1 1644 9 cvt.u32.u64 %r255,%r830; mov.u32 %r248,%r247; bra $L142; $L137: .loc 1 1641 32 setp.ne.u32 %r831,%r254,0; @ %r831 bra $L264; .loc 1 1641 55 and.b32 %r255,%r247,1; .loc 1 1641 45 setp.eq.u32 %r832,%r255,0; @ %r832 bra $L265; .loc 1 1642 32 mov.u32 %r833,48; st.u8 [%frame+167],%r833; mov.u32 %r250,%r254; add.u64 %r246,%frame,167; bra $L142; $L264: mov.u32 %r250,0; mov.u32 %r255,%r250; .loc 1 1566 7 add.u64 %r246,%frame,168; bra $L142; $L265: mov.u32 %r250,%r254; add.u64 %r246,%frame,168; $L142: .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 1673 10 max.s32 %r166,%r250,%r255; .loc 1 937 8 mov.u32 %r252,0; bra $L81; $L374: setp.eq.u32 %r834,%r310,0; @ %r834 bra $L144; $L244: cvt.u32.u32 %r835,%r311; st.u8 [%frame+218],%r835; $L144: .loc 1 1648 7 setp.eq.u32 %r836,%r245,0; @ %r836 bra $L15; $L245: .loc 1 1652 8 st.u8 [%frame+128],%r245; .loc 1 1654 9 mov.u32 %r837,0; st.u8 [%frame+218],%r837; .loc 1 1655 4 mov.u32 %r166,1; .loc 1 1653 9 mov.u32 %r255,%r166; .loc 1 1651 7 add.u64 %r246,%frame,128; .loc 1 1655 4 bra $L64; $L114: .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 932 9 mov.u32 %r250,%r330; $L81: .loc 1 1674 6 setp.eq.u32 %r838,%r381,0; @ %r838 bra $L145; $L115: .loc 1 1675 10 add.u32 %r166,%r166,1; $L145: .loc 1 1676 13 and.b32 %r131,%r248,2; .loc 1 1676 6 setp.eq.u32 %r1286,%r131,0; @ %r1286 bra $L146; .loc 1 1677 10 add.u32 %r166,%r166,2; $L146: .loc 1 1680 14 and.b32 %r132,%r248,132; .loc 1 1681 4 ld.u64 %r383,[%frame+184]; .loc 1 1680 6 setp.ne.u32 %r840,%r132,0; @ %r840 bra $L147; .loc 1 1681 4 sub.u32 %r141,%r249,%r166; setp.le.s32 %r841,%r141,0; @ %r841 bra $L147; ld.u32 %r382,[%frame+176]; setp.le.s32 %r842,%r141,16; @ ! %r842 bra $L378; cvta.const.u64 %r1291,blanks$1; bra $L148; $L378: cvta.const.u64 %r1291,blanks$1; $L151: st.u64 [%r257],%r1291; mov.u64 %r844,16; st.u64 [%r257+8],%r844; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r845,%r382,7; @ %r845 bra $L149; add.u64 %r257,%r257,16; bra $L150; $L149: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r850,[%value_in]; } setp.ne.u32 %r851,%r850,0; @ %r851 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r257,%frame; $L150: add.u32 %r141,%r141,-16; setp.gt.s32 %r852,%r141,16; @ %r852 bra $L151; $L148: st.u64 [%r257],%r1291; cvt.s64.s32 %r134,%r141; st.u64 [%r257+8],%r134; add.u64 %r383,%r383,%r134; st.u64 [%frame+184],%r383; add.u32 %r136,%r382,1; st.u32 [%frame+176],%r136; setp.gt.s32 %r854,%r136,7; @ %r854 bra $L152; add.u64 %r257,%r257,16; bra $L147; $L152: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r859,[%value_in]; } setp.ne.u32 %r860,%r859,0; @ %r860 bra $L14; .loc 1 1685 4 ld.u64 %r383,[%frame+184]; .loc 1 1681 4 mov.u64 %r257,%frame; $L147: .loc 1 1684 6 ld.u8 %r862,[%frame+218]; cvt.s16.s8 %r861,%r862; setp.eq.u16 %r863,%r861,0; @ %r863 bra $L153; .loc 1 1685 4 st.u64 [%r257],%r1319; mov.u64 %r865,1; st.u64 [%r257+8],%r865; add.u64 %r383,%r383,1; st.u64 [%frame+184],%r383; ld.u32 %r866,[%frame+176]; add.u32 %r140,%r866,1; st.u32 [%frame+176],%r140; setp.gt.s32 %r867,%r140,7; @ %r867 bra $L154; add.u64 %r257,%r257,16; bra $L153; $L154: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r872,[%value_in]; } setp.ne.u32 %r873,%r872,0; @ %r873 bra $L14; .loc 1 1687 4 ld.u64 %r383,[%frame+184]; .loc 1 1685 4 mov.u64 %r257,%frame; $L153: .loc 1 1686 6 @ %r1286 bra $L155; .loc 1 1687 4 st.u64 [%r257],%r1318; mov.u64 %r876,2; st.u64 [%r257+8],%r876; add.u64 %r383,%r383,2; st.u64 [%frame+184],%r383; ld.u32 %r877,[%frame+176]; add.u32 %r144,%r877,1; st.u32 [%frame+176],%r144; setp.gt.s32 %r878,%r144,7; @ %r878 bra $L156; add.u64 %r257,%r257,16; bra $L155; $L156: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r883,[%value_in]; } setp.ne.u32 %r884,%r883,0; @ %r884 bra $L14; .loc 1 1691 4 ld.u64 %r383,[%frame+184]; .loc 1 1687 4 mov.u64 %r257,%frame; $L155: .loc 1 1690 6 setp.ne.u32 %r885,%r132,128; @ %r885 bra $L157; .loc 1 1691 4 sub.u32 %r182,%r249,%r166; setp.le.s32 %r886,%r182,0; @ %r886 bra $L157; ld.u32 %r384,[%frame+176]; setp.le.s32 %r887,%r182,16; @ ! %r887 bra $L379; cvta.const.u64 %r1288,zeroes$0; bra $L158; $L379: cvta.const.u64 %r1288,zeroes$0; $L161: st.u64 [%r257],%r1288; mov.u64 %r889,16; st.u64 [%r257+8],%r889; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r890,%r384,7; @ %r890 bra $L159; add.u64 %r257,%r257,16; bra $L160; $L159: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r895,[%value_in]; } setp.ne.u32 %r896,%r895,0; @ %r896 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; mov.u64 %r257,%frame; $L160: add.u32 %r182,%r182,-16; setp.gt.s32 %r897,%r182,16; @ %r897 bra $L161; $L158: st.u64 [%r257],%r1288; cvt.s64.s32 %r148,%r182; st.u64 [%r257+8],%r148; add.u64 %r383,%r383,%r148; st.u64 [%frame+184],%r383; add.u32 %r150,%r384,1; st.u32 [%frame+176],%r150; setp.gt.s32 %r899,%r150,7; @ %r899 bra $L162; add.u64 %r257,%r257,16; bra $L157; $L162: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r904,[%value_in]; } setp.ne.u32 %r905,%r904,0; @ %r905 bra $L14; .loc 1 1694 3 ld.u64 %r383,[%frame+184]; .loc 1 1691 4 mov.u64 %r257,%frame; $L157: .loc 1 1694 3 sub.u32 %r277,%r250,%r255; setp.le.s32 %r906,%r277,0; @ %r906 bra $L163; ld.u32 %r385,[%frame+176]; setp.le.s32 %r907,%r277,16; @ ! %r907 bra $L380; cvta.const.u64 %r1288,zeroes$0; bra $L164; $L380: cvta.const.u64 %r1288,zeroes$0; $L167: st.u64 [%r257],%r1288; mov.u64 %r909,16; st.u64 [%r257+8],%r909; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r910,%r385,7; @ %r910 bra $L165; add.u64 %r257,%r257,16; bra $L166; $L165: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r915,[%value_in]; } setp.ne.u32 %r916,%r915,0; @ %r916 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r257,%frame; $L166: add.u32 %r277,%r277,-16; setp.gt.s32 %r917,%r277,16; @ %r917 bra $L167; $L164: st.u64 [%r257],%r1288; cvt.s64.s32 %r154,%r277; st.u64 [%r257+8],%r154; add.u64 %r383,%r383,%r154; st.u64 [%frame+184],%r383; add.u32 %r155,%r385,1; st.u32 [%frame+176],%r155; setp.gt.s32 %r919,%r155,7; @ %r919 bra $L168; add.u64 %r257,%r257,16; bra $L163; $L168: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r924,[%value_in]; } setp.ne.u32 %r925,%r924,0; @ %r925 bra $L14; .loc 1 1699 4 ld.u64 %r383,[%frame+184]; .loc 1 1694 3 mov.u64 %r257,%frame; $L163: .loc 1 1698 14 and.b32 %r926,%r248,256; .loc 1 1698 6 setp.ne.u32 %r927,%r926,0; @ %r927 bra $L169; .loc 1 1699 4 st.u64 [%r257],%r246; cvt.s64.s32 %r158,%r255; st.u64 [%r257+8],%r158; add.u64 %r383,%r383,%r158; st.u64 [%frame+184],%r383; ld.u32 %r928,[%frame+176]; add.u32 %r160,%r928,1; st.u32 [%frame+176],%r160; setp.gt.s32 %r929,%r160,7; @ %r929 bra $L170; add.u64 %r257,%r257,16; bra $L171; $L170: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r934,[%value_in]; } setp.ne.u32 %r935,%r934,0; @ %r935 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1699 4 mov.u64 %r257,%frame; bra $L171; $L169: .loc 1 1701 7 setp.le.s32 %r936,%r245,101; @ %r936 bra $L172; .loc 1 1702 8 setp.neu.f64 %r937,%r28,0d0000000000000000; @ %r937 bra $L173; .loc 1 1704 6 cvta.const.u64 %r938,$LC7; st.u64 [%r257],%r938; mov.u64 %r939,1; st.u64 [%r257+8],%r939; add.u64 %r383,%r383,1; st.u64 [%frame+184],%r383; ld.u32 %r940,[%frame+176]; add.u32 %r163,%r940,1; st.u32 [%frame+176],%r163; setp.gt.s32 %r941,%r163,7; @ %r941 bra $L174; add.u64 %r257,%r257,16; bra $L175; $L174: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r946,[%value_in]; } setp.ne.u32 %r947,%r946,0; @ %r947 bra $L14; .loc 1 1706 7 ld.u64 %r383,[%frame+184]; .loc 1 1704 6 mov.u64 %r257,%frame; $L175: .loc 1 1705 9 ld.u32 %r948,[%frame+212]; setp.lt.s32 %r949,%r948,%r66; @ %r949 bra $L176; .loc 1 1705 31 and.b32 %r950,%r248,1; .loc 1 1705 22 setp.eq.u32 %r951,%r950,0; @ %r951 bra $L171; $L176: .loc 1 1706 7 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r383,%r383,%r431; st.u64 [%frame+184],%r383; ld.u32 %r952,[%frame+176]; add.u32 %r169,%r952,1; st.u32 [%frame+176],%r169; setp.gt.s32 %r953,%r169,7; @ %r953 bra $L177; add.u64 %r257,%r257,16; bra $L178; $L177: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r958,[%value_in]; } setp.ne.u32 %r959,%r958,0; @ %r959 bra $L14; .loc 1 1707 7 ld.u64 %r383,[%frame+184]; .loc 1 1706 7 mov.u64 %r257,%frame; $L178: .loc 1 1707 7 add.u32 %r274,%r66,-1; setp.le.s32 %r960,%r274,0; @ %r960 bra $L171; ld.u32 %r391,[%frame+176]; setp.le.s32 %r961,%r274,16; @ ! %r961 bra $L381; cvta.const.u64 %r1288,zeroes$0; bra $L179; $L381: cvta.const.u64 %r1288,zeroes$0; $L182: st.u64 [%r257],%r1288; mov.u64 %r963,16; st.u64 [%r257+8],%r963; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r391,%r391,1; st.u32 [%frame+176],%r391; setp.gt.s32 %r964,%r391,7; @ %r964 bra $L180; add.u64 %r257,%r257,16; bra $L181; $L180: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r969,[%value_in]; } setp.ne.u32 %r970,%r969,0; @ %r970 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r391,[%frame+176]; mov.u64 %r257,%frame; $L181: add.u32 %r274,%r274,-16; setp.gt.s32 %r971,%r274,16; @ %r971 bra $L182; $L179: st.u64 [%r257],%r1288; cvt.s64.s32 %r172,%r274; st.u64 [%r257+8],%r172; add.u64 %r383,%r383,%r172; st.u64 [%frame+184],%r383; add.u32 %r173,%r391,1; st.u32 [%frame+176],%r173; setp.gt.s32 %r973,%r173,7; @ %r973 bra $L183; add.u64 %r257,%r257,16; bra $L171; $L183: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r978,[%value_in]; } setp.ne.u32 %r979,%r978,0; @ %r979 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1707 7 mov.u64 %r257,%frame; bra $L171; $L173: .loc 1 1709 21 ld.u32 %r176,[%frame+212]; .loc 1 1709 15 setp.gt.s32 %r980,%r176,0; @ %r980 bra $L184; .loc 1 1710 6 cvta.const.u64 %r981,$LC7; st.u64 [%r257],%r981; mov.u64 %r982,1; st.u64 [%r257+8],%r982; add.u64 %r383,%r383,1; st.u64 [%frame+184],%r383; ld.u32 %r983,[%frame+176]; add.u32 %r178,%r983,1; st.u32 [%frame+176],%r178; setp.gt.s32 %r984,%r178,7; @ %r984 bra $L185; add.u64 %r257,%r257,16; bra $L186; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r989,[%value_in]; } setp.ne.u32 %r990,%r989,0; @ %r990 bra $L14; .loc 1 1705 15 ld.u32 %r176,[%frame+212]; .loc 1 1706 7 ld.u64 %r383,[%frame+184]; .loc 1 1710 6 mov.u64 %r257,%frame; $L186: .loc 1 1711 15 or.b32 %r991,%r66,%r176; setp.ne.u32 %r992,%r991,0; @ %r992 bra $L187; .loc 1 1711 32 and.b32 %r993,%r248,1; .loc 1 1711 23 setp.ne.u32 %r994,%r993,0; @ %r994 bra $L188; bra $L171; $L187: .loc 1 1712 7 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r389,%r431,%r383; st.u64 [%frame+184],%r389; ld.u32 %r995,[%frame+176]; add.u32 %r390,%r995,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r996,%r390,7; @ %r996 bra $L189; add.u64 %r207,%r257,16; bra $L190; $L189: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1001,[%value_in]; } setp.ne.u32 %r1002,%r1001,0; @ %r1002 bra $L14; .loc 1 1713 7 ld.u32 %r176,[%frame+212]; ld.u64 %r389,[%frame+184]; ld.u32 %r390,[%frame+176]; .loc 1 1712 7 mov.u64 %r207,%frame; $L190: .loc 1 1713 7 setp.ge.s32 %r1003,%r176,0; @ %r1003 bra $L191; neg.s32 %r271,%r176; setp.ge.s32 %r1004,%r176,-16; @ ! %r1004 bra $L382; cvta.const.u64 %r1288,zeroes$0; bra $L192; $L382: cvta.const.u64 %r1288,zeroes$0; $L195: st.u64 [%r207],%r1288; mov.u64 %r1006,16; st.u64 [%r207+8],%r1006; add.u64 %r389,%r389,16; st.u64 [%frame+184],%r389; add.u32 %r390,%r390,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r1007,%r390,7; @ %r1007 bra $L193; add.u64 %r207,%r207,16; bra $L194; $L193: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1012,[%value_in]; } setp.ne.u32 %r1013,%r1012,0; @ %r1013 bra $L14; ld.u64 %r389,[%frame+184]; ld.u32 %r390,[%frame+176]; mov.u64 %r207,%frame; $L194: add.u32 %r271,%r271,-16; setp.gt.s32 %r1014,%r271,16; @ %r1014 bra $L195; $L192: st.u64 [%r207],%r1288; cvt.s64.s32 %r185,%r271; st.u64 [%r207+8],%r185; add.u64 %r389,%r389,%r185; st.u64 [%frame+184],%r389; add.u32 %r390,%r390,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r1016,%r390,7; @ %r1016 bra $L196; add.u64 %r207,%r207,16; bra $L191; $L196: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1021,[%value_in]; } setp.ne.u32 %r1022,%r1021,0; @ %r1022 bra $L14; .loc 1 1714 7 ld.u64 %r389,[%frame+184]; ld.u32 %r390,[%frame+176]; .loc 1 1713 7 mov.u64 %r207,%frame; $L191: .loc 1 1714 7 st.u64 [%r207],%r246; cvt.s64.s32 %r187,%r66; st.u64 [%r207+8],%r187; add.u64 %r383,%r187,%r389; st.u64 [%frame+184],%r383; add.u32 %r188,%r390,1; st.u32 [%frame+176],%r188; setp.gt.s32 %r1023,%r188,7; @ %r1023 bra $L197; add.u64 %r257,%r207,16; bra $L171; $L197: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1028,[%value_in]; } setp.ne.u32 %r1029,%r1028,0; @ %r1029 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1714 7 mov.u64 %r257,%frame; bra $L171; $L184: min.s32 %r27,%r66,%r252; .loc 1 1718 6 setp.le.s32 %r1030,%r27,0; @ %r1030 bra $L198; st.u64 [%r257],%r246; cvt.s64.s32 %r190,%r27; st.u64 [%r257+8],%r190; add.u64 %r383,%r383,%r190; st.u64 [%frame+184],%r383; ld.u32 %r1031,[%frame+176]; add.u32 %r192,%r1031,1; st.u32 [%frame+176],%r192; setp.gt.s32 %r1032,%r192,7; @ %r1032 bra $L199; add.u64 %r257,%r257,16; bra $L198; $L199: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1037,[%value_in]; } setp.ne.u32 %r1038,%r1037,0; @ %r1038 bra $L14; ld.u64 %r383,[%frame+184]; mov.u64 %r257,%frame; $L198: max.s32 %r1039,%r27,0; sub.u32 %r298,%r252,%r1039; setp.le.s32 %r1040,%r298,0; @ %r1040 bra $L200; ld.u32 %r386,[%frame+176]; setp.le.s32 %r1041,%r298,16; @ ! %r1041 bra $L383; cvta.const.u64 %r1288,zeroes$0; bra $L201; $L383: cvta.const.u64 %r1288,zeroes$0; $L204: st.u64 [%r257],%r1288; mov.u64 %r1043,16; st.u64 [%r257+8],%r1043; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r1044,%r386,7; @ %r1044 bra $L202; add.u64 %r257,%r257,16; bra $L203; $L202: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1049,[%value_in]; } setp.ne.u32 %r1050,%r1049,0; @ %r1050 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r257,%frame; $L203: add.u32 %r298,%r298,-16; setp.gt.s32 %r1051,%r298,16; @ %r1051 bra $L204; $L201: st.u64 [%r257],%r1288; cvt.s64.s32 %r197,%r298; st.u64 [%r257+8],%r197; add.u64 %r383,%r383,%r197; st.u64 [%frame+184],%r383; add.u32 %r198,%r386,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r1053,%r198,7; @ %r1053 bra $L205; add.u64 %r257,%r257,16; bra $L200; $L205: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1058,[%value_in]; } setp.ne.u32 %r1059,%r1058,0; @ %r1059 bra $L14; .loc 1 1740 10 ld.u64 %r383,[%frame+184]; .loc 1 1718 6 mov.u64 %r257,%frame; $L200: .loc 1 1739 15 ld.u32 %r201,[%frame+212]; .loc 1 1739 9 setp.lt.s32 %r1060,%r201,%r66; @ %r1060 bra $L206; .loc 1 1739 31 and.b32 %r1061,%r248,1; .loc 1 1739 22 setp.eq.u32 %r1062,%r1061,0; @ %r1062 bra $L207; $L206: .loc 1 1740 10 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r383,%r383,%r431; st.u64 [%frame+184],%r383; ld.u32 %r1063,[%frame+176]; add.u32 %r204,%r1063,1; st.u32 [%frame+176],%r204; setp.gt.s32 %r1064,%r204,7; @ %r1064 bra $L208; add.u64 %r257,%r257,16; bra $L209; $L208: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1069,[%value_in]; } setp.ne.u32 %r1070,%r1069,0; @ %r1070 bra $L14; .loc 1 1741 6 ld.u32 %r201,[%frame+212]; ld.u64 %r383,[%frame+184]; .loc 1 1740 10 mov.u64 %r257,%frame; $L209: .loc 1 1741 6 sub.u32 %r206,%r66,%r201; sub.u32 %r1071,%r66,%r252; min.s32 %r25,%r1071,%r206; setp.le.s32 %r1072,%r25,0; @ %r1072 bra $L210; .loc 1 1720 9 cvt.s64.s32 %r1073,%r252; add.u64 %r1074,%r246,%r1073; .loc 1 1741 6 st.u64 [%r257],%r1074; cvt.s64.s32 %r208,%r25; st.u64 [%r257+8],%r208; add.u64 %r383,%r383,%r208; st.u64 [%frame+184],%r383; ld.u32 %r1075,[%frame+176]; add.u32 %r210,%r1075,1; st.u32 [%frame+176],%r210; setp.gt.s32 %r1076,%r210,7; @ %r1076 bra $L211; add.u64 %r257,%r257,16; bra $L210; $L211: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1081,[%value_in]; } setp.ne.u32 %r1082,%r1081,0; @ %r1082 bra $L14; ld.u32 %r1083,[%frame+212]; sub.u32 %r206,%r66,%r1083; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1741 6 mov.u64 %r257,%frame; $L210: max.s32 %r1084,%r25,0; sub.u32 %r278,%r206,%r1084; setp.le.s32 %r1085,%r278,0; @ %r1085 bra $L171; ld.u32 %r388,[%frame+176]; setp.le.s32 %r1086,%r278,16; @ ! %r1086 bra $L384; cvta.const.u64 %r1288,zeroes$0; bra $L212; $L384: cvta.const.u64 %r1288,zeroes$0; $L215: st.u64 [%r257],%r1288; mov.u64 %r1088,16; st.u64 [%r257+8],%r1088; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r388,%r388,1; st.u32 [%frame+176],%r388; setp.gt.s32 %r1089,%r388,7; @ %r1089 bra $L213; add.u64 %r257,%r257,16; bra $L214; $L213: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1094,[%value_in]; } setp.ne.u32 %r1095,%r1094,0; @ %r1095 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r388,[%frame+176]; mov.u64 %r257,%frame; $L214: add.u32 %r278,%r278,-16; setp.gt.s32 %r1096,%r278,16; @ %r1096 bra $L215; $L212: st.u64 [%r257],%r1288; cvt.s64.s32 %r214,%r278; st.u64 [%r257+8],%r214; add.u64 %r383,%r383,%r214; st.u64 [%frame+184],%r383; add.u32 %r215,%r388,1; st.u32 [%frame+176],%r215; setp.gt.s32 %r1098,%r215,7; @ %r1098 bra $L216; add.u64 %r257,%r257,16; bra $L171; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1103,[%value_in]; } setp.ne.u32 %r1104,%r1103,0; @ %r1104 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1741 6 mov.u64 %r257,%frame; bra $L171; $L172: .loc 1 1704 6 add.u64 %r220,%r383,1; .loc 1 1699 4 ld.u32 %r1105,[%frame+176]; add.u32 %r221,%r1105,1; add.u64 %r258,%r257,16; .loc 1 1745 8 setp.gt.s32 %r1106,%r66,1; @ %r1106 bra $L217; .loc 1 1745 27 and.b32 %r1107,%r248,1; .loc 1 1745 18 setp.eq.u32 %r1108,%r1107,0; @ %r1108 bra $L218; $L217: .loc 1 1746 6 st.u64 [%r257],%r246; mov.u64 %r1109,1; st.u64 [%r257+8],%r1109; st.u64 [%frame+184],%r220; st.u32 [%frame+176],%r221; setp.le.s32 %r1110,%r221,7; @ %r1110 bra $L219; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1115,[%value_in]; } setp.ne.u32 %r1116,%r1115,0; @ %r1116 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1746 6 mov.u64 %r258,%frame; $L219: .loc 1 1748 6 st.u64 [%r258],%r262; st.u64 [%r258+8],%r431; add.u64 %r220,%r220,%r431; st.u64 [%frame+184],%r220; add.u32 %r221,%r221,1; st.u32 [%frame+176],%r221; setp.gt.s32 %r1117,%r221,7; @ %r1117 bra $L220; add.u64 %r258,%r258,16; bra $L221; $L220: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1122,[%value_in]; } setp.ne.u32 %r1123,%r1122,0; @ %r1123 bra $L14; .loc 1 1750 7 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1748 6 mov.u64 %r258,%frame; $L221: .loc 1 1707 7 add.u32 %r296,%r66,-1; .loc 1 1749 9 setp.eq.f64 %r1124,%r28,0d0000000000000000; @ %r1124 bra $L222; .loc 1 1750 7 add.u32 %r221,%r221,1; .loc 1 1747 8 add.u64 %r1125,%r246,1; .loc 1 1750 7 st.u64 [%r258],%r1125; cvt.s64.s32 %r224,%r296; st.u64 [%r258+8],%r224; add.u64 %r220,%r220,%r224; st.u64 [%frame+184],%r220; st.u32 [%frame+176],%r221; setp.gt.s32 %r1126,%r221,7; @ %r1126 bra $L223; add.u64 %r258,%r258,16; bra $L224; $L223: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1131,[%value_in]; } setp.ne.u32 %r1132,%r1131,0; @ %r1132 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1750 7 mov.u64 %r258,%frame; bra $L224; $L222: .loc 1 1753 7 setp.le.s32 %r1133,%r296,0; @ %r1133 bra $L224; setp.le.s32 %r1134,%r296,16; @ ! %r1134 bra $L385; cvta.const.u64 %r1288,zeroes$0; bra $L225; $L385: cvta.const.u64 %r1288,zeroes$0; $L228: st.u64 [%r258],%r1288; mov.u64 %r1136,16; st.u64 [%r258+8],%r1136; add.u64 %r220,%r220,16; st.u64 [%frame+184],%r220; add.u32 %r221,%r221,1; st.u32 [%frame+176],%r221; setp.gt.s32 %r1137,%r221,7; @ %r1137 bra $L226; add.u64 %r258,%r258,16; bra $L227; $L226: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1142,[%value_in]; } setp.ne.u32 %r1143,%r1142,0; @ %r1143 bra $L14; ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; mov.u64 %r258,%frame; $L227: add.u32 %r296,%r296,-16; setp.gt.s32 %r1144,%r296,16; @ %r1144 bra $L228; $L225: st.u64 [%r258],%r1288; cvt.s64.s32 %r227,%r296; st.u64 [%r258+8],%r227; add.u64 %r220,%r220,%r227; st.u64 [%frame+184],%r220; add.u32 %r221,%r221,1; st.u32 [%frame+176],%r221; setp.gt.s32 %r1146,%r221,7; @ %r1146 bra $L229; add.u64 %r258,%r258,16; bra $L224; $L229: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1151,[%value_in]; } setp.ne.u32 %r1152,%r1151,0; @ %r1152 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1753 7 mov.u64 %r258,%frame; bra $L224; $L218: .loc 1 1755 6 st.u64 [%r257],%r246; mov.u64 %r1153,1; st.u64 [%r257+8],%r1153; st.u64 [%frame+184],%r220; st.u32 [%frame+176],%r221; setp.le.s32 %r1154,%r221,7; @ %r1154 bra $L224; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1159,[%value_in]; } setp.ne.u32 %r1160,%r1159,0; @ %r1160 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1755 6 mov.u64 %r258,%frame; $L224: .loc 1 1756 5 st.u64 [%r258],%r1317; cvt.s64.s32 %r231,%r251; st.u64 [%r258+8],%r231; add.u64 %r383,%r231,%r220; st.u64 [%frame+184],%r383; add.u32 %r232,%r221,1; st.u32 [%frame+176],%r232; setp.gt.s32 %r1162,%r232,7; @ %r1162 bra $L230; add.u64 %r257,%r258,16; bra $L171; $L230: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1167,[%value_in]; } setp.ne.u32 %r1168,%r1167,0; @ %r1168 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1756 5 mov.u64 %r257,%frame; $L171: .loc 1 1763 13 and.b32 %r1169,%r248,4; .loc 1 1763 6 setp.eq.u32 %r1170,%r1169,0; @ %r1170 bra $L231; .loc 1 1764 4 sub.u32 %r295,%r249,%r166; setp.le.s32 %r1171,%r295,0; @ %r1171 bra $L231; ld.u32 %r392,[%frame+176]; setp.le.s32 %r1172,%r295,16; @ ! %r1172 bra $L386; cvta.const.u64 %r1291,blanks$1; bra $L232; $L386: cvta.const.u64 %r1291,blanks$1; $L235: st.u64 [%r257],%r1291; mov.u64 %r1174,16; st.u64 [%r257+8],%r1174; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r392,%r392,1; st.u32 [%frame+176],%r392; setp.gt.s32 %r1175,%r392,7; @ %r1175 bra $L233; add.u64 %r257,%r257,16; bra $L234; $L233: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1180,[%value_in]; } setp.ne.u32 %r1181,%r1180,0; @ %r1181 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r392,[%frame+176]; mov.u64 %r257,%frame; $L234: add.u32 %r295,%r295,-16; setp.gt.s32 %r1182,%r295,16; @ %r1182 bra $L235; $L232: st.u64 [%r257],%r1291; cvt.s64.s32 %r236,%r295; st.u64 [%r257+8],%r236; add.u64 %r383,%r383,%r236; st.u64 [%frame+184],%r383; add.u32 %r237,%r392,1; st.u32 [%frame+176],%r237; setp.le.s32 %r1184,%r237,7; @ %r1184 bra $L231; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1189,[%value_in]; } setp.ne.u32 %r1190,%r1189,0; @ %r1190 bra $L14; .loc 1 1769 3 ld.u64 %r383,[%frame+184]; $L231: .loc 1 1767 33 max.s32 %r1191,%r249,%r166; .loc 1 1767 7 add.u32 %r414,%r414,%r1191; .loc 1 1769 3 setp.ne.u64 %r1192,%r383,0; @ %r1192 bra $L236; $L237: mov.u32 %r1193,0; st.u32 [%frame+176],%r1193; mov.u64 %r257,%frame; bra $L9; $L236: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1198,[%value_in]; } setp.ne.u32 %r1199,%r1198,0; @ ! %r1199 bra $L237; bra $L14; $L15: .loc 1 1777 2 ld.u64 %r1200,[%frame+184]; setp.eq.u64 %r1201,%r1200,0; @ %r1201 bra $L14; add.u64 %r1205,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1205; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1206,[%value_in]; } $L14: .loc 1 1784 31 ld.u16 %r1208,[%r416+16]; and.b16 %r1207,%r1208,64; setp.ne.u16 %r1209,%r1207,0; @ ! %r1209 bra $L1; bra $L238; $L188: .loc 1 1712 7 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r389,%r431,%r383; st.u64 [%frame+184],%r389; ld.u32 %r1211,[%frame+176]; add.u32 %r390,%r1211,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r1212,%r390,7; @ %r1212 bra $L189; add.u64 %r207,%r257,16; bra $L191; $L64: .loc 1 932 9 mov.u32 %r248,%r247; mov.u32 %r250,0; mov.u32 %r252,%r250; bra $L145; $L70: .loc 1 1558 14 setp.ne.u32 %r1213,%r250,-1; @ %r1213 bra $L239; bra $L138; $L266: .loc 1 1875 5 mov.u32 %r307,%r250; $L90: .loc 1 1876 15 cvt.s64.s32 %r1214,%r307; .loc 1 1876 6 add.u64 %r314,%r246,%r1214; bra $L240; $L89: .loc 1 1873 11 mov.u32 %r1217,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r308; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1217; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r250; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1225,[%value_in]; } mov.u64 %r246,%r1225; .loc 1 1875 5 setp.ne.u32 %r1285,%r398,71; @ %r1285 bra $L266; mov.u32 %r413,%r250; bra $L241; $L88: .loc 1 1873 11 mov.u32 %r1229,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r308; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1229; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r250; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1237,[%value_in]; } mov.u64 %r246,%r1237; .loc 1 1876 15 cvt.s64.s32 %r174,%r250; .loc 1 1878 7 ld.u8 %r1240,[%r1237]; cvt.s16.s8 %r1239,%r1240; set.u32.eq.u16 %r1241,%r1239,48; neg.s32 %r1242,%r1241; mov.u32 %r1238,%r1242; .loc 1 1878 23 set.u32.neu.f64 %r1244,%r308,0d0000000000000000; neg.s32 %r1245,%r1244; mov.u32 %r1243,%r1245; cvt.u16.u8 %r1334,%r1238; mov.u16 %r1247,%r1334; cvt.u16.u8 %r1334,%r1243; mov.u16 %r1248,%r1334; and.b16 %r1246,%r1247,%r1248; cvt.u32.u16 %r1249,%r1246; cvt.u16.u8 %r1250,%r1249; setp.ne.u16 %r1251,%r1250,0; @ ! %r1251 bra $L387; bra $L242; $L207: .loc 1 1741 6 sub.u32 %r206,%r66,%r201; sub.u32 %r1252,%r66,%r252; min.s32 %r25,%r1252,%r206; bra $L210; $L29: setp.ne.u32 %r1253,%r310,0; @ ! %r1253 bra $L245; bra $L244; $L246: .loc 1 1876 15 cvt.s64.s32 %r1254,%r413; .loc 1 1876 6 add.u64 %r314,%r246,%r1254; setp.ne.u32 %r1285,%r398,71; bra $L240; $L241: .loc 1 1875 31 and.b32 %r1255,%r247,1; setp.ne.u32 %r1256,%r1255,0; @ %r1256 bra $L246; bra $L388; $L389: .loc 1 1873 11 mov.u32 %r1260,1; mov.u32 %r1259,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1259; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1260; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1267,[%value_in]; } mov.u64 %r246,%r1267; mov.f64 %r308,%r28; .loc 1 1811 9 mov.u32 %r330,0; .loc 1 1305 10 mov.u32 %r250,%r1260; mov.u32 %r413,%r250; bra $L241; $L86: .loc 1 1308 10 or.b32 %r248,%r247,256; .loc 1 1807 6 mov.b64 %r1268,%r28; shr.u64 %r1269,%r1268,32; cvt.u32.u64 %r1270,%r1269; .loc 1 1807 5 setp.lt.s32 %r1271,%r1270,0; @ ! %r1271 bra $L389; bra $L267; $L239: .loc 1 1559 11 and.b32 %r248,%r247,-129; .loc 1 1567 28 set.u32.ne.u32 %r1273,%r250,0; neg.s32 %r1274,%r1273; mov.u32 %r1272,%r1274; .loc 1 1567 15 set.u32.ne.u64 %r1276,%r253,0; neg.s32 %r1277,%r1276; mov.u32 %r1275,%r1277; .loc 1 1567 20 cvt.u16.u8 %r1334,%r1272; mov.u16 %r1279,%r1334; cvt.u16.u8 %r1334,%r1275; mov.u16 %r1280,%r1334; or.b16 %r1278,%r1279,%r1280; cvt.u32.u16 %r1281,%r1278; .loc 1 1567 7 cvt.u16.u8 %r1282,%r1281; setp.ne.u16 %r1283,%r1282,0; @ %r1283 bra $L268; mov.u32 %r250,0; mov.u32 %r255,%r250; .loc 1 1566 7 add.u64 %r246,%frame,168; bra $L142; $L1: .loc 1 1786 1 mov.u32 %value,%r414; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfprintf .visible .func (.param .u32 %value_out) vfprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 647 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 649 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[1200]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u16 %r63; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; mov.u64 %r37,%ar3; .loc 1 461 14 ld.u16 %r39,[%r35+16]; and.b16 %r38,%r39,-3; st.u16 [%frame+1040],%r38; .loc 1 462 15 ld.u32 %r40,[%r35+172]; st.u32 [%frame+1196],%r40; .loc 1 463 13 ld.u16 %r41,[%r35+18]; st.u16 [%frame+1042],%r41; .loc 1 464 15 ld.u64 %r42,[%r35+48]; st.u64 [%frame+1072],%r42; .loc 1 465 14 ld.u64 %r43,[%r35+64]; st.u64 [%frame+1088],%r43; .loc 1 468 27 st.u64 [%frame+1024],%frame; .loc 1 468 17 st.u64 [%frame+1048],%frame; .loc 1 469 27 mov.u32 %r44,1024; st.u32 [%frame+1036],%r44; .loc 1 469 17 st.u32 [%frame+1056],%r44; .loc 1 470 16 mov.u32 %r46,0; st.u32 [%frame+1064],%r46; .loc 1 476 8 add.u64 %r51,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r37; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r52,[%value_in]; } mov.u32 %r33,%r52; .loc 1 477 5 setp.lt.s32 %r53,%r33,0; @ %r53 bra $L392; .loc 1 477 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r57,[%value_in]; } .loc 1 477 15 setp.eq.u32 %r58,%r57,0; .loc 1 478 7 selp.u32 %r33,%r33,-1,%r58; $L392: .loc 1 479 5 ld.u16 %r60,[%frame+1040]; and.b16 %r59,%r60,64; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L391; .loc 1 480 14 ld.u16 %r63,[%r35+16]; or.b16 %r62,%r63,64; st.u16 [%r35+16],%r62; $L391: .loc 1 486 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-vfscanf.o/0 0 0 644 58833 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __svfscanf_r .visible .func (.param .u32 %value_out) __svfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfscanf .visible .func (.param .u32 %value_out) vfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfscanf .visible .func (.param .u32 %value_out) __svfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfscanf_r .visible .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fread_r .extern .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _ungetc_r .extern .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sprintf .extern .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtod_r .extern .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfscanf_r .visible .func (.param .u32 %value_out) __svfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[608]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r27; .reg .u64 %r33; .reg .u32 %r40; .reg .u64 %r45; .reg .u32 %r68; .reg .u64 %r69; .reg .u64 %r78; .reg .u32 %r94; .reg .u64 %r97; .reg .u64 %r109; .reg .u32 %r116; .reg .u64 %r119; .reg .u64 %r132; .reg .u64 %r142; .reg .u32 %r143; .reg .u32 %r152; .reg .u64 %r166; .reg .u64 %r176; .reg .u32 %r177; .reg .u32 %r200; .reg .u32 %r206; .reg .u32 %r207; .reg .u32 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u32 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u64 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u32 %r257; .reg .u64 %r267; .reg .u64 %r274; .reg .u64 %r279; .reg .u64 %r281; .reg .u32 %r285; .reg .u64 %r287; .reg .u64 %r297; .reg .u64 %r298; .reg .u32 %r300; .reg .u32 %r301; .reg .u64 %r302; .reg .u64 %r304; .reg .u32 %r305; .reg .u32 %r306; .reg .u64 %r307; .reg .u32 %r310; .reg .u32 %r315; .reg .u64 %r316; .reg .u64 %r321; .reg .u64 %r324; .reg .u64 %r326; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u32 %r335; .reg .u64 %r336; .reg .u32 %r337; .reg .u32 %r343; .reg .u64 %r353; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .u32 %r359; .reg .u64 %r360; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u32 %r377; .reg .u64 %r378; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u16 %r382; .reg .u16 %r383; .reg .pred %r384; .reg .u16 %r385; .reg .u32 %r387; .reg .pred %r388; .reg .pred %r389; .reg .u64 %r390; .reg .u32 %r391; .reg .u64 %r393; .reg .u16 %r395; .reg .u16 %r396; .reg .u32 %r397; .reg .pred %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u64 %r402; .reg .u16 %r405; .reg .u16 %r407; .reg .pred %r408; .reg .u32 %r411; .reg .pred %r412; .reg .u32 %r413; .reg .u64 %r414; .reg .pred %r415; .reg .u16 %r416; .reg .pred %r417; .reg .pred %r419; .reg .pred %r421; .reg .pred %r423; .reg .pred %r425; .reg .pred %r427; .reg .pred %r429; .reg .pred %r431; .reg .pred %r433; .reg .pred %r435; .reg .pred %r437; .reg .pred %r439; .reg .pred %r441; .reg .pred %r443; .reg .pred %r445; .reg .pred %r447; .reg .pred %r449; .reg .pred %r451; .reg .pred %r453; .reg .pred %r455; .reg .pred %r457; .reg .pred %r459; .reg .pred %r461; .reg .pred %r463; .reg .pred %r465; .reg .pred %r467; .reg .pred %r469; .reg .pred %r471; .reg .pred %r473; .reg .u32 %r474; .reg .pred %r475; .reg .u16 %r476; .reg .u16 %r477; .reg .pred %r478; .reg .u32 %r481; .reg .pred %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u64 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u16 %r492; .reg .u16 %r493; .reg .u16 %r494; .reg .u32 %r495; .reg .u16 %r496; .reg .pred %r497; .reg .u32 %r498; .reg .pred %r499; .reg .u16 %r500; .reg .pred %r501; .reg .u32 %r502; .reg .pred %r503; .reg .u32 %r504; .reg .pred %r505; .reg .u32 %r506; .reg .pred %r507; .reg .u64 %r509; .reg .u64 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u32 %r513; .reg .u64 %r517; .reg .u32 %r518; .reg .pred %r519; .reg .u64 %r520; .reg .u32 %r521; .reg .pred %r522; .reg .u32 %r523; .reg .pred %r524; .reg .u64 %r525; .reg .u32 %r526; .reg .pred %r527; .reg .u64 %r528; .reg .u32 %r529; .reg .pred %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u32 %r535; .reg .pred %r536; .reg .u64 %r537; .reg .u64 %r539; .reg .u16 %r542; .reg .u16 %r544; .reg .pred %r545; .reg .u32 %r546; .reg .pred %r547; .reg .u32 %r550; .reg .pred %r551; .reg .u64 %r552; .reg .u64 %r554; .reg .u16 %r557; .reg .u16 %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .u32 %r565; .reg .pred %r566; .reg .u32 %r567; .reg .pred %r568; .reg .u64 %r569; .reg .u32 %r572; .reg .pred %r573; .reg .pred %r574; .reg .u32 %r576; .reg .u64 %r577; .reg .u32 %r578; .reg .u64 %r580; .reg .u64 %r581; .reg .u64 %r584; .reg .pred %r585; .reg .u32 %r586; .reg .pred %r587; .reg .u64 %r589; .reg .u64 %r591; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .u32 %r595; .reg .u64 %r596; .reg .pred %r597; .reg .u32 %r598; .reg .u64 %r599; .reg .pred %r600; .reg .pred %r601; .reg .u64 %r603; .reg .u64 %r605; .reg .u16 %r606; .reg .u32 %r607; .reg .pred %r608; .reg .u32 %r611; .reg .pred %r612; .reg .pred %r613; .reg .u32 %r614; .reg .u32 %r615; .reg .u64 %r616; .reg .u32 %r617; .reg .pred %r618; .reg .u32 %r619; .reg .u32 %r620; .reg .u64 %r621; .reg .u32 %r622; .reg .u64 %r623; .reg .pred %r624; .reg .u32 %r625; .reg .pred %r626; .reg .u32 %r629; .reg .pred %r630; .reg .pred %r631; .reg .u64 %r633; .reg .u64 %r635; .reg .u16 %r636; .reg .u32 %r637; .reg .pred %r638; .reg .u64 %r639; .reg .pred %r640; .reg .u32 %r641; .reg .pred %r642; .reg .u64 %r643; .reg .u64 %r645; .reg .u16 %r647; .reg .u16 %r648; .reg .u32 %r649; .reg .u32 %r650; .reg .pred %r651; .reg .pred %r652; .reg .u32 %r653; .reg .u64 %r654; .reg .pred %r655; .reg .u32 %r656; .reg .u64 %r657; .reg .pred %r658; .reg .pred %r659; .reg .u32 %r662; .reg .pred %r663; .reg .u64 %r664; .reg .u64 %r666; .reg .u16 %r669; .reg .u16 %r671; .reg .pred %r672; .reg .pred %r673; .reg .u32 %r674; .reg .u32 %r675; .reg .u64 %r676; .reg .u32 %r677; .reg .pred %r678; .reg .u32 %r679; .reg .u32 %r680; .reg .u64 %r681; .reg .u32 %r682; .reg .u64 %r683; .reg .pred %r684; .reg .u64 %r685; .reg .u32 %r686; .reg .pred %r687; .reg .u32 %r690; .reg .pred %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .u64 %r695; .reg .u16 %r698; .reg .u16 %r700; .reg .pred %r701; .reg .u64 %r702; .reg .u32 %r703; .reg .u64 %r704; .reg .pred %r705; .reg .u32 %r706; .reg .u16 %r707; .reg .pred %r708; .reg .pred %r710; .reg .pred %r712; .reg .pred %r714; .reg .u16 %r715; .reg .u32 %r717; .reg .u16 %r719; .reg .u16 %r721; .reg .pred %r722; .reg .u64 %r723; .reg .u64 %r724; .reg .u64 %r725; .reg .u64 %r726; .reg .pred %r728; .reg .pred %r730; .reg .pred %r732; .reg .pred %r734; .reg .pred %r736; .reg .pred %r738; .reg .u32 %r739; .reg .pred %r740; .reg .pred %r741; .reg .u32 %r742; .reg .pred %r743; .reg .pred %r744; .reg .u64 %r745; .reg .u64 %r746; .reg .u64 %r747; .reg .u64 %r748; .reg .pred %r749; .reg .pred %r750; .reg .u32 %r751; .reg .pred %r752; .reg .u32 %r753; .reg .pred %r754; .reg .u32 %r755; .reg .u32 %r756; .reg .pred %r757; .reg .u64 %r758; .reg .u32 %r761; .reg .pred %r762; .reg .pred %r763; .reg .u32 %r764; .reg .pred %r765; .reg .pred %r766; .reg .u32 %r770; .reg .u32 %r771; .reg .pred %r772; .reg .u32 %r773; .reg .pred %r774; .reg .u32 %r775; .reg .u64 %r778; .reg .u64 %r780; .reg .u64 %r781; .reg .u32 %r782; .reg .pred %r783; .reg .u32 %r784; .reg .pred %r785; .reg .u64 %r786; .reg .u32 %r787; .reg .pred %r788; .reg .u64 %r789; .reg .u32 %r790; .reg .pred %r791; .reg .u64 %r792; .reg .pred %r793; .reg .u64 %r798; .reg .u64 %r803; .reg .u64 %r804; .reg .u64 %r805; .reg .u64 %r806; .reg .u32 %r807; .reg .u64 %r810; .reg .u64 %r811; .reg .pred %r812; .reg .u32 %r813; .reg .u16 %r814; .reg .pred %r815; .reg .pred %r817; .reg .pred %r819; .reg .pred %r821; .reg .pred %r823; .reg .u16 %r824; .reg .u32 %r826; .reg .u16 %r828; .reg .u16 %r830; .reg .pred %r831; .reg .pred %r833; .reg .pred %r835; .reg .pred %r837; .reg .pred %r839; .reg .pred %r841; .reg .pred %r843; .reg .pred %r845; .reg .pred %r847; .reg .pred %r849; .reg .pred %r851; .reg .pred %r853; .reg .pred %r855; .reg .pred %r857; .reg .pred %r859; .reg .pred %r861; .reg .pred %r863; .reg .pred %r865; .reg .u32 %r866; .reg .pred %r867; .reg .pred %r868; .reg .u32 %r869; .reg .pred %r870; .reg .u32 %r871; .reg .pred %r872; .reg .u32 %r873; .reg .u16 %r874; .reg .u32 %r875; .reg .u32 %r876; .reg .u32 %r877; .reg .u32 %r878; .reg .u32 %r879; .reg .u16 %r880; .reg .u16 %r881; .reg .u16 %r882; .reg .u32 %r883; .reg .u16 %r884; .reg .pred %r885; .reg .u32 %r886; .reg .pred %r887; .reg .pred %r889; .reg .u32 %r890; .reg .u16 %r891; .reg .u32 %r892; .reg .u32 %r893; .reg .u32 %r894; .reg .u32 %r896; .reg .u32 %r897; .reg .u16 %r898; .reg .u16 %r899; .reg .u16 %r900; .reg .u32 %r901; .reg .u16 %r902; .reg .pred %r903; .reg .u16 %r905; .reg .u32 %r907; .reg .u16 %r909; .reg .pred %r910; .reg .u32 %r911; .reg .u16 %r912; .reg .u32 %r913; .reg .u32 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .u32 %r917; .reg .u16 %r918; .reg .u16 %r919; .reg .u16 %r920; .reg .u32 %r921; .reg .u16 %r922; .reg .pred %r923; .reg .u32 %r924; .reg .pred %r925; .reg .u32 %r926; .reg .u16 %r927; .reg .u16 %r928; .reg .u32 %r929; .reg .u16 %r931; .reg .u16 %r933; .reg .pred %r934; .reg .u16 %r935; .reg .u32 %r937; .reg .u16 %r938; .reg .pred %r939; .reg .u16 %r940; .reg .pred %r941; .reg .u16 %r942; .reg .pred %r943; .reg .u32 %r944; .reg .pred %r945; .reg .u32 %r946; .reg .pred %r947; .reg .pred %r948; .reg .u32 %r949; .reg .pred %r950; .reg .u16 %r951; .reg .u16 %r952; .reg .pred %r953; .reg .u32 %r954; .reg .pred %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .pred %r958; .reg .u64 %r959; .reg .u32 %r962; .reg .pred %r963; .reg .pred %r964; .reg .pred %r965; .reg .u32 %r966; .reg .pred %r967; .reg .pred %r968; .reg .u32 %r972; .reg .u32 %r973; .reg .pred %r974; .reg .u32 %r975; .reg .pred %r976; .reg .u16 %r977; .reg .pred %r978; .reg .u32 %r979; .reg .pred %r981; .reg .pred %r982; .reg .u32 %r986; .reg .u32 %r987; .reg .u32 %r989; .reg .u32 %r991; .reg .u16 %r992; .reg .u16 %r993; .reg .u16 %r994; .reg .u32 %r995; .reg .u16 %r997; .reg .u16 %r998; .reg .u16 %r999; .reg .u32 %r1000; .reg .u16 %r1001; .reg .pred %r1002; .reg .u32 %r1006; .reg .u32 %r1007; .reg .pred %r1008; .reg .u32 %r1009; .reg .pred %r1010; .reg .u32 %r1011; .reg .pred %r1012; .reg .pred %r1013; .reg .u32 %r1017; .reg .u32 %r1018; .reg .pred %r1019; .reg .u16 %r1020; .reg .u16 %r1021; .reg .u32 %r1022; .reg .u16 %r1023; .reg .pred %r1024; .reg .u32 %r1028; .reg .u32 %r1032; .reg .u32 %r1033; .reg .pred %r1034; .reg .u32 %r1035; .reg .u32 %r1036; .reg .pred %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .u64 %r1042; .reg .u32 %r1043; .reg .u64 %r1044; .reg .u64 %r1045; .reg .pred %r1047; .reg .u64 %r1049; .reg .u32 %r1050; .reg .u64 %r1054; .reg .f64 %r1055; .reg .u64 %r1056; .reg .u32 %r1057; .reg .pred %r1058; .reg .u64 %r1059; .reg .u32 %r1060; .reg .pred %r1061; .reg .pred %r1062; .reg .u64 %r1063; .reg .f32 %r1064; .reg .f32 %r1065; .reg .pred %r1066; .reg .u16 %r1067; .reg .u16 %r1068; .reg .pred %r1069; .reg .u32 %r1071; .reg .pred %r1072; .reg .u32 %r1073; .reg .u32 %r1074; .reg .u64 %r1075; .reg .u64 %r1077; .reg .u64 %r1078; .reg .u16 %r1079; mov.u64 %r378,%ar0; mov.u64 %r379,%ar1; mov.u64 %r380,%ar2; mov.u64 %r381,%ar3; .loc 1 591 3 ld.u16 %r383,[%r379+16]; and.b16 %r382,%r383,8192; setp.ne.u16 %r384,%r382,0; @ %r384 bra $L2; .loc 1 589 3 ld.u32 %r22,[%r379+172]; .loc 1 591 3 or.b16 %r385,%r383,8192; st.u16 [%r379+16],%r385; and.b32 %r387,%r22,-8193; st.u32 [%r379+172],%r387; $L2: .loc 1 602 12 ld.u8 %r27,[%r380]; .loc 1 611 11 add.u64 %r267,%r380,1; .loc 1 613 10 setp.eq.u32 %r388,%r27,0; @ %r388 bra $L162; mov.u64 %r69,0; mov.u32 %r247,0; mov.u32 %r207,%r247; mov.u32 %r377,%r247; cvta.const.u64 %r1075,_ctype_+1; .loc 1 1859 8 add.u64 %r1077,%frame,329; .loc 1 1146 21 add.u64 %r1078,%frame,350; bra $L4; $L7: .loc 1 602 12 ld.u8 %r27,[%r267]; .loc 1 611 11 add.u64 %r267,%r267,1; .loc 1 613 10 setp.eq.u32 %r389,%r27,0; @ %r389 bra $L1; $L4: .loc 1 615 26 cvt.u32.u32 %r391,%r27; cvt.u64.u8 %r390,%r391; add.u64 %r393,%r1075,%r390; ld.u8 %r1079,[%r393]; mov.u16 %r396,%r1079; and.b16 %r395,%r396,8; cvt.u32.u16 %r397,%r395; cvt.s32.s8 %r257,%r397; .loc 1 615 23 setp.eq.u32 %r398,%r257,0; @ %r398 bra $L5; .loc 1 649 12 ld.u32 %r40,[%r379+8]; $L10: .loc 1 619 11 setp.le.s32 %r399,%r40,0; @ %r399 bra $L6; $L9: .loc 1 619 28 ld.u64 %r33,[%r379]; ld.u8 %r400,[%r33]; add.u64 %r402,%r1075,%r400; .loc 1 619 24 ld.u8 %r1079,[%r402]; mov.u16 %r405,%r1079; and.b16 %r407,%r405,8; setp.eq.u16 %r408,%r407,0; @ ! %r408 bra $L341; bra $L7; $L6: .loc 1 619 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r411,[%value_in]; } setp.ne.u32 %r412,%r411,0; @ ! %r412 bra $L9; bra $L7; $L341: .loc 1 621 13 add.u32 %r207,%r207,1; .loc 1 621 23 ld.u32 %r413,[%r379+8]; add.u32 %r40,%r413,-1; st.u32 [%r379+8],%r40; .loc 1 621 33 add.u64 %r414,%r33,1; st.u64 [%r379],%r414; .loc 1 619 11 bra $L10; $L5: .loc 1 625 10 setp.ne.u32 %r415,%r27,37; @ %r415 bra $L11; .loc 1 640 11 ld.u8 %r335,[%r267]; mov.u64 %r25,%r267; .loc 1 628 13 mov.u32 %r244,%r257; .loc 1 627 13 mov.u64 %r236,0; bra $L12; $L343: .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 663 10 mov.u32 %r244,16; .loc 1 669 8 mov.u64 %r236,0; $L12: .loc 1 640 15 add.u64 %r267,%r25,1; .loc 1 642 7 cvt.u16.u32 %r416,%r335; setp.eq.u16 %r417,%r416,100; @ %r417 bra $L163; setp.gt.u16 %r419,%r416,100; @ %r419 bra $L14; setp.eq.u16 %r421,%r416,71; @ %r421 bra $L164; setp.gt.u16 %r423,%r416,71; @ %r423 bra $L15; setp.gt.u16 %r425,%r416,57; @ %r425 bra $L16; setp.gt.u16 %r427,%r416,47; @ %r427 bra $L17; setp.eq.u16 %r429,%r416,37; @ %r429 bra $L11; setp.eq.u16 %r431,%r416,42; @ %r431 bra $L18; bra $L1; $L16: setp.eq.u16 %r433,%r416,68; @ %r433 bra $L19; setp.eq.u16 %r435,%r416,69; @ %r435 bra $L165; bra $L1; $L15: setp.eq.u16 %r437,%r416,88; @ %r437 bra $L20; setp.gt.u16 %r439,%r416,88; @ %r439 bra $L21; setp.eq.u16 %r441,%r416,76; @ %r441 bra $L22; setp.eq.u16 %r443,%r416,79; @ %r443 bra $L23; bra $L1; $L21: setp.eq.u16 %r445,%r416,91; @ %r445 bra $L24; setp.eq.u16 %r447,%r416,99; @ %r447 bra $L25; bra $L1; $L14: setp.eq.u16 %r449,%r416,111; @ %r449 bra $L166; setp.gt.u16 %r451,%r416,111; @ %r451 bra $L26; setp.eq.u16 %r453,%r416,105; @ %r453 bra $L167; setp.gt.u16 %r455,%r416,105; @ %r455 bra $L27; setp.le.u16 %r457,%r416,103; @ %r457 bra $L168; setp.eq.u16 %r459,%r416,104; @ %r459 bra $L28; bra $L1; $L27: setp.eq.u16 %r461,%r416,108; @ %r461 bra $L29; setp.eq.u16 %r463,%r416,110; @ %r463 bra $L30; bra $L1; $L26: setp.eq.u16 %r465,%r416,115; @ %r465 bra $L169; setp.gt.u16 %r467,%r416,115; @ %r467 bra $L31; setp.eq.u16 %r469,%r416,112; @ %r469 bra $L32; bra $L1; $L31: setp.eq.u16 %r471,%r416,117; @ %r471 bra $L170; setp.eq.u16 %r473,%r416,120; @ %r473 bra $L20; bra $L1; $L11: .loc 1 649 11 ld.u32 %r474,[%r379+8]; setp.le.s32 %r475,%r474,0; @ %r475 bra $L33; $L36: .loc 1 651 15 ld.u64 %r45,[%r379]; .loc 1 651 11 ld.u8 %r476,[%r45]; ld.u8 %r477,[%r267+-1]; setp.ne.u16 %r478,%r476,%r477; @ %r478 bra $L1; bra $L342; $L33: .loc 1 649 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r481,[%value_in]; } setp.ne.u32 %r482,%r481,0; @ ! %r482 bra $L36; bra $L35; $L342: .loc 1 653 14 ld.u32 %r484,[%r379+8]; add.u32 %r483,%r484,-1; st.u32 [%r379+8],%r483; .loc 1 653 24 add.u64 %r485,%r45,1; st.u64 [%r379],%r485; .loc 1 654 13 add.u32 %r207,%r207,1; bra $L7; $L18: .loc 1 660 7 set.u32.ne.u32 %r487,%r244,0; neg.s32 %r488,%r487; mov.u32 %r486,%r488; .loc 1 661 8 set.u32.ne.u64 %r490,%r236,0; neg.s32 %r491,%r490; mov.u32 %r489,%r491; cvt.u16.u8 %r1079,%r486; mov.u16 %r493,%r1079; cvt.u16.u8 %r1079,%r489; mov.u16 %r494,%r1079; or.b16 %r492,%r493,%r494; cvt.u32.u16 %r495,%r492; cvt.u16.u8 %r496,%r495; setp.ne.u16 %r497,%r496,0; @ ! %r497 bra $L343; bra $L1; $L29: .loc 1 666 14 and.b32 %r498,%r244,15; .loc 1 666 7 setp.ne.u32 %r499,%r498,0; @ %r499 bra $L1; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 669 7 cvt.u16.u32 %r500,%r335; setp.ne.u16 %r501,%r500,108; @ %r501 bra $L38; .loc 1 672 14 or.b32 %r244,%r244,2; .loc 1 640 11 ld.u8 %r335,[%r25+2]; .loc 1 671 8 add.u64 %r25,%r25,2; bra $L12; $L38: .loc 1 676 12 or.b32 %r244,%r244,1; .loc 1 640 15 mov.u64 %r25,%r267; bra $L12; $L22: .loc 1 679 14 and.b32 %r502,%r244,15; .loc 1 679 7 setp.ne.u32 %r503,%r502,0; @ %r503 bra $L1; .loc 1 681 10 or.b32 %r244,%r244,2; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 682 4 bra $L12; $L28: .loc 1 684 14 and.b32 %r504,%r244,15; .loc 1 684 7 setp.ne.u32 %r505,%r504,0; @ %r505 bra $L1; .loc 1 694 12 or.b32 %r244,%r244,4; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 695 4 bra $L12; $L17: .loc 1 760 14 and.b32 %r506,%r244,143; .loc 1 760 7 setp.ne.u32 %r507,%r506,0; @ %r507 bra $L1; .loc 1 762 18 shl.b64 %r509,%r236,2; add.u64 %r510,%r509,%r236; add.u64 %r511,%r510,%r510; .loc 1 762 23 cvt.u32.u32 %r513,%r335; cvt.u64.u8 %r512,%r513; add.u64 %r369,%r511,%r512; .loc 1 762 10 add.u64 %r236,%r369,-48; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 763 4 bra $L12; $L19: .loc 1 789 10 or.b32 %r244,%r244,1; .loc 1 793 9 mov.u64 %r69,_strtol_r; .loc 1 794 9 mov.u32 %r247,10; .loc 1 792 6 mov.u32 %r306,3; bra $L13; $L23: .loc 1 804 10 or.b32 %r244,%r244,1; .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r247,8; .loc 1 807 6 mov.u32 %r306,3; bra $L13; $L20: .loc 1 820 10 or.b32 %r244,%r244,512; .loc 1 822 9 mov.u64 %r69,_strtoul_r; .loc 1 823 9 mov.u32 %r247,16; .loc 1 821 6 mov.u32 %r306,3; .loc 1 824 4 bra $L13; $L24: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1078; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r267; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r517,[%value_in]; } mov.u64 %r267,%r517; .loc 1 853 10 or.b32 %r244,%r244,64; .loc 1 854 6 mov.u32 %r306,1; .loc 1 855 4 bra $L13; $L25: .loc 1 864 10 or.b32 %r244,%r244,64; .loc 1 865 6 mov.u32 %r306,0; .loc 1 866 4 bra $L13; $L32: .loc 1 869 10 or.b32 %r244,%r244,544; .loc 1 871 9 mov.u64 %r69,_strtoul_r; .loc 1 872 9 mov.u32 %r247,16; .loc 1 870 6 mov.u32 %r306,3; .loc 1 873 4 bra $L13; $L30: .loc 1 876 14 and.b32 %r518,%r244,16; .loc 1 876 7 setp.ne.u32 %r519,%r518,0; @ %r519 bra $L7; .loc 1 888 11 add.u64 %r520,%r381,7; and.b64 %r334,%r520,-8; ld.u64 %r333,[%r334]; add.u64 %r381,%r334,8; .loc 1 886 14 and.b32 %r521,%r244,4; .loc 1 886 7 setp.eq.u32 %r522,%r521,0; @ %r522 bra $L40; .loc 1 889 12 st.u16 [%r333],%r207; bra $L7; $L40: .loc 1 891 19 and.b32 %r523,%r244,1; .loc 1 891 12 setp.eq.u32 %r524,%r523,0; @ %r524 bra $L41; .loc 1 894 12 cvt.s64.s32 %r525,%r207; st.u64 [%r333],%r525; bra $L7; $L41: .loc 1 897 19 and.b32 %r526,%r244,2; .loc 1 897 12 setp.eq.u32 %r527,%r526,0; @ %r527 bra $L42; .loc 1 900 13 cvt.s64.s32 %r528,%r207; st.u64 [%r333],%r528; bra $L7; $L42: .loc 1 906 12 st.u32 [%r333],%r207; bra $L7; $L163: .loc 1 642 7 mov.u64 %r69,_strtol_r; mov.u32 %r247,10; mov.u32 %r306,3; bra $L13; $L164: .loc 1 837 6 mov.u32 %r306,4; bra $L13; $L165: mov.u32 %r306,4; bra $L13; $L166: .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r247,8; .loc 1 807 6 mov.u32 %r306,3; bra $L13; $L167: .loc 1 799 9 mov.u64 %r69,_strtol_r; .loc 1 800 9 mov.u32 %r247,0; .loc 1 798 6 mov.u32 %r306,3; bra $L13; $L168: .loc 1 837 6 mov.u32 %r306,4; bra $L13; $L169: .loc 1 848 6 mov.u32 %r306,2; bra $L13; $L170: .loc 1 814 9 mov.u64 %r69,_strtoul_r; .loc 1 815 9 mov.u32 %r247,10; .loc 1 813 6 mov.u32 %r306,3; $L13: .loc 1 917 10 ld.u32 %r529,[%r379+8]; setp.le.s32 %r530,%r529,0; @ %r530 bra $L43; $L46: .loc 1 924 18 and.b32 %r531,%r244,64; .loc 1 924 10 setp.eq.u32 %r532,%r531,0; @ ! %r532 bra $L45; bra $L44; $L43: .loc 1 917 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r535,[%value_in]; } setp.ne.u32 %r536,%r535,0; @ ! %r536 bra $L46; bra $L35; $L44: .loc 1 926 11 ld.u64 %r324,[%r379]; ld.u8 %r537,[%r324]; add.u64 %r539,%r1075,%r537; ld.u8 %r1079,[%r539]; mov.u16 %r542,%r1079; and.b16 %r544,%r542,8; setp.eq.u16 %r545,%r544,0; @ %r545 bra $L45; $L49: .loc 1 928 13 add.u32 %r207,%r207,1; .loc 1 929 12 ld.u32 %r546,[%r379+8]; add.u32 %r68,%r546,-1; .loc 1 929 11 st.u32 [%r379+8],%r68; setp.le.s32 %r547,%r68,0; @ %r547 bra $L47; .loc 1 930 9 add.u64 %r324,%r324,1; st.u64 [%r379],%r324; bra $L48; $L47: .loc 1 932 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r550,[%value_in]; } .loc 1 932 11 setp.ne.u32 %r551,%r550,0; @ %r551 bra $L35; .loc 1 926 11 ld.u64 %r324,[%r379]; $L48: ld.u8 %r552,[%r324]; add.u64 %r554,%r1075,%r552; ld.u8 %r1079,[%r554]; mov.u16 %r557,%r1079; and.b16 %r559,%r557,8; setp.ne.u16 %r560,%r559,0; @ %r560 bra $L49; $L45: .loc 1 945 7 setp.eq.u32 %r561,%r306,3; @ %r561 bra $L50; setp.eq.u32 %r562,%r306,4; @ %r562 bra $L51; setp.eq.u32 %r563,%r306,1; @ %r563 bra $L52; setp.eq.u32 %r564,%r306,2; @ %r564 bra $L53; max.u64 %r237,%r236,1; .loc 1 1017 14 and.b32 %r565,%r244,16; .loc 1 1017 7 setp.eq.u32 %r566,%r565,0; @ %r566 bra $L54; .loc 1 1019 15 mov.u64 %r248,0; $L56: .loc 1 1022 12 ld.u32 %r310,[%r379+8]; .loc 1 1026 16 ld.u64 %r326,[%r379]; .loc 1 1022 24 cvt.u32.u64 %r567,%r237; .loc 1 1022 8 setp.le.s32 %r568,%r567,%r310; @ %r568 bra $L55; .loc 1 1024 13 cvt.s64.s32 %r78,%r310; add.u64 %r248,%r248,%r78; .loc 1 1025 15 sub.u64 %r237,%r237,%r78; .loc 1 1026 16 add.u64 %r569,%r326,%r78; st.u64 [%r379],%r569; .loc 1 1027 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r572,[%value_in]; } .loc 1 1027 12 setp.eq.u32 %r573,%r572,0; @ %r573 bra $L56; .loc 1 1029 9 setp.eq.u64 %r574,%r248,0; @ ! %r574 bra $L57; bra $L35; $L55: .loc 1 1036 13 add.u64 %r248,%r248,%r237; .loc 1 1037 16 sub.u32 %r576,%r310,%r567; st.u32 [%r379+8],%r576; .loc 1 1038 16 add.u64 %r577,%r326,%r237; st.u64 [%r379],%r577; $L57: .loc 1 1042 14 cvt.u32.u64 %r578,%r248; add.u32 %r207,%r578,%r207; bra $L7; $L54: .loc 1 1053 5 add.u64 %r353,%r381,7; and.b64 %r355,%r353,-8; add.u64 %r381,%r355,8; .loc 1 1054 12 mov.u64 %r581,1; ld.u64 %r580,[%r355]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r580; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r581; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r237; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r379; call (%value_in),_fread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r584,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r585,%r584,0; @ %r585 bra $L35; .loc 1 1060 14 cvt.u32.u64 %r586,%r584; add.u32 %r207,%r586,%r207; .loc 1 1061 17 add.u32 %r377,%r377,1; bra $L7; $L52: .loc 1 1067 7 setp.ne.u64 %r587,%r236,0; .loc 1 1068 12 selp.u64 %r236,%r236,-1,%r587; .loc 1 1146 25 ld.u64 %r360,[%r379]; .loc 1 1146 21 ld.u8 %r589,[%r360]; add.u64 %r591,%r1078,%r589; ld.s8 %r315,[%r591]; .loc 1 1143 14 and.b32 %r592,%r244,16; .loc 1 1143 7 setp.eq.u32 %r593,%r592,0; @ %r593 bra $L59; .loc 1 1146 15 setp.eq.u32 %r594,%r315,0; @ %r594 bra $L1; .loc 1 1148 16 ld.u32 %r595,[%r379+8]; add.u32 %r94,%r595,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r596,%r360,1; st.u64 [%r379],%r596; .loc 1 1149 8 add.u64 %r307,%r236,-1; setp.eq.u64 %r597,%r236,1; @ ! %r597 bra $L61; bra $L60; $L63: .loc 1 1148 6 add.u32 %r306,%r306,1; .loc 1 1148 16 ld.u32 %r598,[%r379+8]; add.u32 %r94,%r598,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r599,%r97,1; st.u64 [%r379],%r599; .loc 1 1149 8 add.u64 %r307,%r307,-1; setp.eq.u64 %r600,%r307,0; @ %r600 bra $L60; $L61: .loc 1 1151 8 setp.le.s32 %r601,%r94,0; @ %r601 bra $L62; $L64: .loc 1 1146 25 ld.u64 %r97,[%r379]; .loc 1 1146 21 ld.u8 %r603,[%r97]; add.u64 %r605,%r1078,%r603; .loc 1 1146 15 ld.u8 %r607,[%r605]; cvt.s16.s8 %r606,%r607; setp.ne.u16 %r608,%r606,0; @ %r608 bra $L63; bra $L60; $L62: .loc 1 1151 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r611,[%value_in]; } setp.eq.u32 %r612,%r611,0; @ %r612 bra $L64; $L60: .loc 1 1160 14 add.u32 %r207,%r207,%r306; bra $L7; $L59: .loc 1 1172 10 add.u64 %r371,%r381,7; and.b64 %r370,%r371,-8; add.u64 %r381,%r370,8; ld.u64 %r304,[%r370]; .loc 1 1173 15 setp.eq.u32 %r613,%r315,0; @ %r613 bra $L1; .loc 1 1175 11 ld.u32 %r615,[%r379+8]; add.u32 %r614,%r615,-1; st.u32 [%r379+8],%r614; .loc 1 1176 19 add.u64 %r616,%r360,1; st.u64 [%r379],%r616; .loc 1 1176 7 add.u64 %r239,%r304,1; .loc 1 1176 10 ld.u8 %r617,[%r360]; st.u8 [%r304],%r617; .loc 1 1180 8 setp.eq.u64 %r618,%r236,1; @ %r618 bra $L65; mov.u64 %r331,%r239; bra $L66; $L68: .loc 1 1175 11 ld.u32 %r620,[%r379+8]; add.u32 %r619,%r620,-1; st.u32 [%r379+8],%r619; .loc 1 1176 19 add.u64 %r621,%r109,1; st.u64 [%r379],%r621; add.u64 %r331,%r331,1; .loc 1 1176 10 ld.u8 %r622,[%r109]; st.u8 [%r239],%r622; .loc 1 1180 8 add.u64 %r623,%r304,%r236; setp.eq.u64 %r624,%r623,%r331; @ %r624 bra $L171; $L66: mov.u64 %r239,%r331; .loc 1 1182 8 ld.u32 %r625,[%r379+8]; setp.gt.s32 %r626,%r625,0; @ %r626 bra $L67; .loc 1 1182 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r629,[%value_in]; } setp.eq.u32 %r630,%r629,0; @ %r630 bra $L67; .loc 1 1184 12 setp.eq.u64 %r631,%r304,%r239; @ ! %r631 bra $L65; bra $L35; $L67: .loc 1 1173 25 ld.u64 %r109,[%r379]; .loc 1 1173 21 ld.u8 %r633,[%r109]; add.u64 %r635,%r1078,%r633; .loc 1 1173 15 ld.u8 %r637,[%r635]; cvt.s16.s8 %r636,%r637; setp.ne.u16 %r638,%r636,0; @ %r638 bra $L68; bra $L65; $L171: .loc 1 1176 7 mov.u64 %r239,%r331; $L65: .loc 1 1189 14 sub.u64 %r639,%r239,%r304; .loc 1 1189 10 cvt.u32.u64 %r305,%r639; .loc 1 1190 11 setp.eq.u32 %r640,%r305,0; @ %r640 bra $L1; .loc 1 1192 11 mov.u32 %r641,0; st.u8 [%r239],%r641; .loc 1 1196 17 add.u32 %r377,%r377,1; .loc 1 1197 14 add.u32 %r207,%r207,%r305; bra $L7; $L53: .loc 1 1203 7 setp.ne.u64 %r642,%r236,0; .loc 1 1204 12 selp.u64 %r236,%r236,-1,%r642; .loc 1 1146 25 ld.u64 %r358,[%r379]; .loc 1 1283 16 ld.u8 %r643,[%r358]; add.u64 %r645,%r1075,%r643; ld.u8 %r1079,[%r645]; mov.u16 %r648,%r1079; and.b16 %r647,%r648,8; cvt.u32.u16 %r649,%r647; cvt.s32.s8 %r359,%r649; .loc 1 1280 14 and.b32 %r650,%r244,16; .loc 1 1280 7 setp.eq.u32 %r651,%r650,0; @ %r651 bra $L70; .loc 1 1283 15 setp.ne.u32 %r652,%r359,0; @ %r652 bra $L7; .loc 1 1285 16 ld.u32 %r653,[%r379+8]; add.u32 %r116,%r653,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r654,%r358,1; st.u64 [%r379],%r654; .loc 1 1286 8 add.u64 %r302,%r236,-1; setp.ne.u64 %r655,%r236,1; @ %r655 bra $L172; .loc 1 1291 14 add.u32 %r207,%r207,1; bra $L7; $L74: .loc 1 1285 6 add.u32 %r301,%r301,1; .loc 1 1285 16 ld.u32 %r656,[%r379+8]; add.u32 %r116,%r656,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r657,%r119,1; st.u64 [%r379],%r657; .loc 1 1286 8 add.u64 %r302,%r302,-1; setp.ne.u64 %r658,%r302,0; @ %r658 bra $L72; .loc 1 1291 14 add.u32 %r207,%r207,%r301; bra $L7; $L172: .loc 1 1285 6 mov.u32 %r301,1; $L72: .loc 1 1288 8 setp.gt.s32 %r659,%r116,0; @ %r659 bra $L73; .loc 1 1288 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r662,[%value_in]; } setp.eq.u32 %r663,%r662,0; @ %r663 bra $L73; .loc 1 1291 14 add.u32 %r207,%r207,%r301; bra $L7; $L73: .loc 1 1283 16 ld.u64 %r119,[%r379]; ld.u8 %r664,[%r119]; add.u64 %r666,%r1075,%r664; .loc 1 1283 15 ld.u8 %r1079,[%r666]; mov.u16 %r669,%r1079; and.b16 %r671,%r669,8; setp.eq.u16 %r672,%r671,0; @ %r672 bra $L74; .loc 1 1291 14 add.u32 %r207,%r207,%r301; bra $L7; $L70: .loc 1 1303 6 add.u64 %r238,%r381,7; and.b64 %r372,%r238,-8; add.u64 %r381,%r372,8; ld.u64 %r298,[%r372]; .loc 1 1305 15 setp.ne.u32 %r673,%r359,0; @ %r673 bra $L173; .loc 1 1307 11 ld.u32 %r675,[%r379+8]; add.u32 %r674,%r675,-1; st.u32 [%r379+8],%r674; .loc 1 1308 19 add.u64 %r676,%r358,1; st.u64 [%r379],%r676; .loc 1 1308 7 add.u64 %r240,%r298,1; .loc 1 1308 10 ld.u8 %r677,[%r358]; st.u8 [%r298],%r677; .loc 1 1312 8 setp.eq.u64 %r678,%r236,1; @ ! %r678 bra $L344; bra $L174; $L79: .loc 1 1307 11 ld.u32 %r680,[%r379+8]; add.u32 %r679,%r680,-1; st.u32 [%r379+8],%r679; .loc 1 1308 19 add.u64 %r681,%r132,1; st.u64 [%r379],%r681; add.u64 %r321,%r321,1; .loc 1 1308 10 ld.u8 %r682,[%r132]; st.u8 [%r240],%r682; .loc 1 1312 8 add.u64 %r683,%r298,%r236; setp.ne.u64 %r684,%r683,%r321; @ %r684 bra $L77; .loc 1 1321 19 sub.u64 %r685,%r321,%r298; .loc 1 1321 14 cvt.u32.u64 %r337,%r685; mov.u64 %r240,%r321; bra $L75; $L344: mov.u64 %r321,%r240; $L77: mov.u64 %r240,%r321; .loc 1 1314 8 ld.u32 %r686,[%r379+8]; setp.gt.s32 %r687,%r686,0; @ %r687 bra $L78; .loc 1 1314 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r690,[%value_in]; } setp.eq.u32 %r691,%r690,0; @ %r691 bra $L78; .loc 1 1321 19 sub.u64 %r692,%r240,%r298; .loc 1 1321 14 cvt.u32.u64 %r337,%r692; bra $L75; $L78: .loc 1 1305 16 ld.u64 %r132,[%r379]; ld.u8 %r693,[%r132]; add.u64 %r695,%r1075,%r693; .loc 1 1305 15 ld.u8 %r1079,[%r695]; mov.u16 %r698,%r1079; and.b16 %r700,%r698,8; setp.eq.u16 %r701,%r700,0; @ %r701 bra $L79; .loc 1 1321 19 sub.u64 %r702,%r321,%r298; .loc 1 1321 14 cvt.u32.u64 %r337,%r702; bra $L75; $L173: .loc 1 1303 6 mov.u64 %r240,%r298; .loc 1 1305 15 mov.u32 %r337,%r650; bra $L75; $L174: .loc 1 1312 8 mov.u32 %r337,1; $L75: .loc 1 1317 11 mov.u32 %r703,0; st.u8 [%r240],%r703; .loc 1 1321 14 add.u32 %r207,%r207,%r337; .loc 1 1322 17 add.u32 %r377,%r377,1; bra $L7; $L50: .loc 1 1335 14 add.u64 %r704,%r236,-1; .loc 1 1335 7 setp.le.u64 %r705,%r704,348; @ %r705 bra $L175; .loc 1 1338 27 cvt.u32.u64 %r706,%r236; .loc 1 1338 19 add.u32 %r249,%r706,-349; .loc 1 1339 14 mov.u64 %r236,349; bra $L80; $L175: .loc 1 1329 13 mov.u32 %r249,0; $L80: .loc 1 1341 10 or.b32 %r245,%r244,3456; .loc 1 1330 8 mov.u32 %r250,0; .loc 1 1342 11 mov.u64 %r241,%frame; $L98: .loc 1 1344 15 ld.u64 %r142,[%r379]; .loc 1 1344 12 ld.u8 %r143,[%r142]; cvt.u16.u32 %r707,%r143; setp.gt.u16 %r708,%r707,57; @ %r708 bra $L81; setp.gt.u16 %r710,%r707,55; @ %r710 bra $L82; setp.eq.u16 %r712,%r707,48; @ %r712 bra $L83; setp.gt.u16 %r714,%r707,48; @ %r714 bra $L84; add.u16 %r715,%r707,-43; cvt.u32.u16 %r717,%r715; cvt.u16.u8 %r1079,%r717; mov.u16 %r719,%r1079; and.b16 %r721,%r719,253; setp.eq.u16 %r722,%r721,0; @ ! %r722 bra $L86; bra $L85; $L84: .loc 1 1390 19 cvta.const.u64 %r723,basefix$0; cvt.s64.s32 %r724,%r247; add.u64 %r725,%r724,%r724; add.u64 %r726,%r723,%r725; ld.s16 %r247,[%r726]; .loc 1 1391 11 and.b32 %r245,%r245,-2945; .loc 1 1392 5 bra $L87; $L81: setp.gt.u16 %r728,%r707,102; @ %r728 bra $L88; setp.gt.u16 %r730,%r707,96; @ %r730 bra $L89; setp.gt.u16 %r732,%r707,70; @ %r732 bra $L90; setp.gt.u16 %r734,%r707,64; @ ! %r734 bra $L86; bra $L89; $L90: setp.eq.u16 %r736,%r707,88; @ %r736 bra $L91; bra $L86; $L88: setp.eq.u16 %r738,%r707,120; @ %r738 bra $L91; bra $L86; $L83: .loc 1 1361 18 and.b32 %r739,%r245,2048; .loc 1 1361 8 setp.eq.u32 %r740,%r739,0; @ %r740 bra $L87; .loc 1 1363 8 setp.ne.u32 %r741,%r247,0; @ %r741 bra $L92; .loc 1 1366 15 or.b32 %r245,%r245,512; .loc 1 1365 14 mov.u32 %r247,8; $L92: .loc 1 1368 15 and.b32 %r742,%r245,1024; .loc 1 1368 8 setp.eq.u32 %r743,%r742,0; @ %r743 bra $L93; .loc 1 1370 15 and.b32 %r245,%r245,-1409; .loc 1 1371 9 bra $L87; $L93: .loc 1 1373 11 and.b32 %r245,%r245,-897; .loc 1 1374 8 setp.eq.u32 %r744,%r249,0; @ %r744 bra $L94; .loc 1 1376 19 add.u32 %r249,%r249,-1; .loc 1 1377 14 add.u64 %r236,%r236,1; $L94: .loc 1 1379 5 add.u32 %r250,%r250,1; .loc 1 1380 5 bra $L95; $L82: .loc 1 1397 19 cvta.const.u64 %r745,basefix$0; cvt.s64.s32 %r746,%r247; add.u64 %r747,%r746,%r746; add.u64 %r748,%r745,%r747; ld.s16 %r247,[%r748]; .loc 1 1398 8 setp.le.s32 %r749,%r247,8; @ %r749 bra $L86; .loc 1 1400 11 and.b32 %r245,%r245,-2945; .loc 1 1401 5 bra $L87; $L89: .loc 1 1417 8 setp.le.s32 %r750,%r247,10; @ %r750 bra $L86; .loc 1 1419 11 and.b32 %r245,%r245,-2945; .loc 1 1420 5 bra $L87; $L85: .loc 1 1425 15 and.b32 %r751,%r245,128; .loc 1 1425 8 setp.eq.u32 %r752,%r751,0; @ %r752 bra $L86; .loc 1 1427 15 and.b32 %r245,%r245,-129; .loc 1 1428 9 bra $L87; $L91: .loc 1 1435 16 and.b32 %r753,%r245,1536; .loc 1 1435 8 setp.ne.u32 %r754,%r753,512; @ %r754 bra $L86; .loc 1 1438 15 and.b32 %r285,%r245,-513; .loc 1 1442 15 or.b32 %r245,%r285,1280; .loc 1 1437 14 mov.u32 %r247,16; $L87: .loc 1 1457 13 cvt.u32.u32 %r755,%r143; st.u8 [%r241],%r755; .loc 1 1457 10 add.u64 %r241,%r241,1; $L95: .loc 1 1459 12 ld.u32 %r756,[%r379+8]; add.u32 %r152,%r756,-1; .loc 1 1459 11 st.u32 [%r379+8],%r152; setp.le.s32 %r757,%r152,0; @ %r757 bra $L96; .loc 1 1460 9 add.u64 %r758,%r142,1; st.u64 [%r379],%r758; bra $L97; $L96: .loc 1 1462 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r761,[%value_in]; } .loc 1 1462 11 setp.ne.u32 %r762,%r761,0; @ %r762 bra $L86; $L97: .loc 1 1342 30 add.u64 %r236,%r236,-1; .loc 1 1342 18 setp.ne.u64 %r763,%r236,0; @ %r763 bra $L98; $L86: .loc 1 1473 14 and.b32 %r764,%r245,256; .loc 1 1473 7 setp.eq.u32 %r765,%r764,0; @ %r765 bra $L99; .loc 1 1475 11 setp.ge.u64 %r766,%frame,%r241; @ %r766 bra $L100; .loc 1 1476 3 add.u64 %r287,%r241,-1; ld.s8 %r770,[%r241+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r770; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r771,[%value_in]; } mov.u64 %r241,%r287; $L100: .loc 1 1477 11 setp.eq.u64 %r772,%frame,%r241; @ %r772 bra $L1; $L99: .loc 1 1480 15 and.b32 %r773,%r245,16; .loc 1 1480 7 setp.ne.u32 %r774,%r773,0; @ %r774 bra $L101; .loc 1 1484 11 mov.u32 %r775,0; st.u8 [%r241],%r775; .loc 1 1485 15 mov.u64 %r778,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r778; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r247; call (%value_in),%r69,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r780,[%value_in]; } .loc 1 888 11 add.u64 %r781,%r381,7; and.b64 %r356,%r781,-8; add.u64 %r381,%r356,8; .loc 1 1486 18 and.b32 %r782,%r245,32; .loc 1 1486 11 setp.eq.u32 %r783,%r782,0; @ %r783 bra $L102; .loc 1 1488 12 ld.u64 %r297,[%r356]; .loc 1 1498 11 st.u64 [%r297],%r780; bra $L103; $L102: .loc 1 1507 23 and.b32 %r784,%r245,4; .loc 1 1507 16 setp.eq.u32 %r785,%r784,0; @ %r785 bra $L104; .loc 1 1510 9 ld.u64 %r786,[%r356]; st.u16 [%r786],%r780; bra $L103; $L104: .loc 1 1512 23 and.b32 %r787,%r245,1; .loc 1 1512 16 setp.eq.u32 %r788,%r787,0; @ %r788 bra $L105; .loc 1 1515 9 ld.u64 %r789,[%r356]; st.u64 [%r789],%r780; bra $L103; $L105: .loc 1 1518 23 and.b32 %r790,%r245,2; .loc 1 1518 16 setp.eq.u32 %r791,%r790,0; @ %r791 bra $L106; .loc 1 1521 8 mov.u64 %r792,_strtoul_r; setp.ne.u64 %r793,%r69,%r792; @ %r793 bra $L107; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r778; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r247; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r798,[%value_in]; } .loc 1 1526 10 mov.u64 %r166,%r798; bra $L108; $L107: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r778; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r247; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r803,[%value_in]; } mov.u64 %r166,%r803; $L108: .loc 1 1526 10 ld.u64 %r804,[%r356]; st.u64 [%r804],%r166; bra $L103; $L106: .loc 1 1532 9 ld.u64 %r805,[%r356]; st.u32 [%r805],%r780; $L103: .loc 1 1534 17 add.u32 %r377,%r377,1; $L101: .loc 1 1536 15 sub.u64 %r806,%r241,%frame; .loc 1 1536 21 cvt.u32.u64 %r807,%r806; .loc 1 1536 10 vadd.u32.u32.u32.add %r207,%r207,%r250,%r807; .loc 1 1537 4 bra $L7; $L51: .loc 1 1553 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r810,[%value_in]; } .loc 1 1553 16 ld.u64 %r274,[%r810]; .loc 1 1561 14 add.u64 %r811,%r236,-1; .loc 1 1561 7 setp.le.u64 %r812,%r811,348; @ %r812 bra $L176; .loc 1 1564 27 cvt.u32.u64 %r813,%r236; .loc 1 1564 19 add.u32 %r255,%r813,-349; .loc 1 1565 14 mov.u64 %r236,349; bra $L109; $L176: .loc 1 1550 13 mov.u32 %r255,0; $L109: .loc 1 1567 10 or.b32 %r246,%r244,1920; .loc 1 1551 9 mov.u32 %r256,%r257; .loc 1 1549 10 mov.u64 %r254,0; .loc 1 1569 15 mov.u64 %r253,%r254; .loc 1 1568 11 mov.u64 %r252,%r254; .loc 1 1547 9 mov.u64 %r251,%r254; .loc 1 1570 11 mov.u64 %r242,%frame; $L140: .loc 1 1572 15 ld.u64 %r176,[%r379]; .loc 1 1572 12 ld.u8 %r177,[%r176]; cvt.u16.u32 %r814,%r177; setp.eq.u16 %r815,%r814,78; @ %r815 bra $L110; setp.gt.u16 %r817,%r814,78; @ %r817 bra $L111; setp.gt.u16 %r819,%r814,57; @ %r819 bra $L112; setp.gt.u16 %r821,%r814,48; @ %r821 bra $L113; setp.eq.u16 %r823,%r814,48; @ %r823 bra $L114; add.u16 %r824,%r814,-43; cvt.u32.u16 %r826,%r824; cvt.u16.u8 %r1079,%r826; mov.u16 %r828,%r1079; and.b16 %r830,%r828,253; setp.eq.u16 %r831,%r830,0; @ ! %r831 bra $L116; bra $L115; $L112: setp.eq.u16 %r833,%r814,70; @ %r833 bra $L117; setp.gt.u16 %r835,%r814,70; @ %r835 bra $L118; setp.eq.u16 %r837,%r814,65; @ %r837 bra $L119; setp.eq.u16 %r839,%r814,69; @ %r839 bra $L120; bra $L116; $L118: setp.eq.u16 %r841,%r814,73; @ %r841 bra $L121; bra $L116; $L111: setp.eq.u16 %r843,%r814,102; @ %r843 bra $L117; setp.gt.u16 %r845,%r814,102; @ %r845 bra $L122; setp.eq.u16 %r847,%r814,97; @ %r847 bra $L119; setp.gt.u16 %r849,%r814,97; @ %r849 bra $L123; setp.eq.u16 %r851,%r814,84; @ %r851 bra $L124; setp.eq.u16 %r853,%r814,89; @ %r853 bra $L125; bra $L116; $L123: setp.eq.u16 %r855,%r814,101; @ %r855 bra $L120; bra $L116; $L122: setp.eq.u16 %r857,%r814,116; @ %r857 bra $L124; setp.gt.u16 %r859,%r814,116; @ %r859 bra $L126; setp.eq.u16 %r861,%r814,105; @ %r861 bra $L121; setp.eq.u16 %r863,%r814,110; @ %r863 bra $L110; bra $L116; $L126: setp.eq.u16 %r865,%r814,121; @ %r865 bra $L125; bra $L116; $L114: .loc 1 1580 15 and.b32 %r866,%r246,256; .loc 1 1580 8 setp.eq.u32 %r867,%r866,0; @ %r867 bra $L113; .loc 1 1582 15 and.b32 %r246,%r246,-129; .loc 1 1583 15 add.u64 %r252,%r252,1; .loc 1 1584 12 setp.ne.u32 %r868,%r255,0; @ %r868 bra $L127; .loc 1 1755 13 add.u64 %r236,%r236,-1; bra $L128; $L127: .loc 1 1586 16 add.u32 %r255,%r255,-1; bra $L128; $L113: .loc 1 1601 18 add.u32 %r869,%r256,%r257; .loc 1 1601 8 setp.ne.u32 %r870,%r869,0; @ %r870 bra $L129; .loc 1 1603 15 and.b32 %r246,%r246,-385; .loc 1 1604 9 bra $L130; $L115: .loc 1 1610 15 and.b32 %r871,%r246,128; .loc 1 1610 8 setp.eq.u32 %r872,%r871,0; @ %r872 bra $L129; .loc 1 1612 15 and.b32 %r246,%r246,-129; .loc 1 1613 9 bra $L130; $L110: .loc 1 1618 18 cvt.u16.u32 %r874,%r256; set.u32.eq.u16 %r875,%r874,0; neg.s32 %r876,%r875; mov.u32 %r873,%r876; .loc 1 1618 33 set.u32.eq.u64 %r878,%r252,0; neg.s32 %r879,%r878; mov.u32 %r877,%r879; .loc 1 1618 23 cvt.u16.u8 %r1079,%r873; mov.u16 %r881,%r1079; cvt.u16.u8 %r1079,%r877; mov.u16 %r882,%r1079; and.b16 %r880,%r881,%r882; cvt.u32.u16 %r883,%r880; .loc 1 1618 8 cvt.u16.u8 %r884,%r883; setp.eq.u16 %r885,%r884,0; @ %r885 bra $L131; .loc 1 1619 19 and.b32 %r886,%r246,1792; .loc 1 1619 9 setp.ne.u32 %r887,%r886,1792; @ %r887 bra $L132; .loc 1 1622 15 and.b32 %r246,%r246,-1921; .loc 1 1623 18 mov.u32 %r256,1; .loc 1 1624 9 mov.u64 %r252,0; bra $L130; $L131: .loc 1 1626 8 setp.eq.u16 %r889,%r874,2; @ %r889 bra $L177; $L132: .loc 1 1631 18 cvt.u16.u32 %r891,%r257; set.u32.eq.u16 %r892,%r891,1; neg.s32 %r893,%r892; mov.u32 %r890,%r893; .loc 1 1631 35 set.u32.eq.u16 %r896,%r891,4; neg.s32 %r897,%r896; mov.u32 %r894,%r897; .loc 1 1631 23 cvt.u16.u8 %r1079,%r890; mov.u16 %r899,%r1079; cvt.u16.u8 %r1079,%r894; mov.u16 %r900,%r1079; or.b16 %r898,%r899,%r900; cvt.u32.u16 %r901,%r898; .loc 1 1631 8 cvt.u16.u8 %r902,%r901; setp.eq.u16 %r903,%r902,0; @ %r903 bra $L129; .loc 1 1633 17 add.u16 %r905,%r891,1; cvt.u32.u16 %r907,%r905; cvt.s32.s8 %r257,%r907; .loc 1 1634 9 bra $L130; $L119: .loc 1 1639 8 cvt.u16.u32 %r909,%r256; setp.eq.u16 %r910,%r909,1; @ %r910 bra $L178; bra $L129; $L121: .loc 1 1647 18 cvt.u16.u32 %r912,%r257; set.u32.eq.u16 %r913,%r912,0; neg.s32 %r914,%r913; mov.u32 %r911,%r914; .loc 1 1647 33 set.u32.eq.u64 %r916,%r252,0; neg.s32 %r917,%r916; mov.u32 %r915,%r917; .loc 1 1647 23 cvt.u16.u8 %r1079,%r911; mov.u16 %r919,%r1079; cvt.u16.u8 %r1079,%r915; mov.u16 %r920,%r1079; and.b16 %r918,%r919,%r920; cvt.u32.u16 %r921,%r918; .loc 1 1647 8 cvt.u16.u8 %r922,%r921; setp.eq.u16 %r923,%r922,0; @ %r923 bra $L133; .loc 1 1648 19 and.b32 %r924,%r246,1792; .loc 1 1648 9 setp.ne.u32 %r925,%r924,1792; @ %r925 bra $L134; .loc 1 1651 15 and.b32 %r246,%r246,-1921; .loc 1 1652 18 mov.u32 %r257,1; .loc 1 1653 9 mov.u64 %r252,0; bra $L130; $L133: .loc 1 1655 18 cvt.u32.u32 %r926,%r257; cvt.u16.u8 %r928,%r926; add.u16 %r927,%r928,-3; cvt.u32.u16 %r929,%r927; cvt.u16.u8 %r1079,%r929; mov.u16 %r931,%r1079; .loc 1 1655 8 and.b16 %r933,%r931,253; setp.ne.u16 %r934,%r933,0; @ %r934 bra $L129; .loc 1 1657 17 add.u16 %r935,%r928,1; cvt.u32.u16 %r937,%r935; cvt.s32.s8 %r257,%r937; .loc 1 1658 9 bra $L130; $L117: .loc 1 1663 8 cvt.u16.u32 %r938,%r257; setp.eq.u16 %r939,%r938,2; @ %r939 bra $L179; bra $L129; $L124: .loc 1 1671 8 cvt.u16.u32 %r940,%r257; setp.eq.u16 %r941,%r940,6; @ %r941 bra $L180; bra $L129; $L125: .loc 1 1679 8 cvt.u16.u32 %r942,%r257; setp.eq.u16 %r943,%r942,7; @ %r943 bra $L181; bra $L129; $L120: .loc 1 1688 16 and.b32 %r944,%r246,1280; .loc 1 1688 8 setp.eq.u32 %r945,%r944,1024; @ %r945 bra $L135; .loc 1 1689 20 and.b32 %r946,%r246,1024; .loc 1 1689 9 setp.eq.u32 %r947,%r946,0; @ %r947 bra $L129; .loc 1 1689 29 setp.eq.u64 %r948,%r252,0; @ %r948 bra $L136; $L135: .loc 1 1691 22 and.b32 %r949,%r246,512; .loc 1 1691 12 setp.ne.u32 %r950,%r949,0; @ %r950 bra $L137; .loc 1 1693 17 sub.u64 %r253,%r252,%r251; mov.u64 %r254,%r242; $L137: .loc 1 1698 11 and.b32 %r200,%r246,-1921; .loc 1 1696 15 or.b32 %r246,%r200,384; .loc 1 1699 16 mov.u64 %r252,0; .loc 1 1700 9 bra $L130; $L116: .loc 1 1705 8 ld.u8 %r951,[%r274]; cvt.u16.u32 %r952,%r177; setp.ne.u16 %r953,%r951,%r952; @ %r953 bra $L129; .loc 1 1706 19 and.b32 %r954,%r246,512; .loc 1 1706 9 setp.eq.u32 %r955,%r954,0; @ %r955 bra $L129; .loc 1 1708 15 and.b32 %r246,%r246,-641; .loc 1 1710 9 mov.u64 %r251,%r252; bra $L130; $L177: .loc 1 1628 18 mov.u32 %r256,3; bra $L130; $L178: .loc 1 1641 18 mov.u32 %r256,2; bra $L130; $L179: .loc 1 1665 18 mov.u32 %r257,3; bra $L130; $L180: .loc 1 1673 18 mov.u32 %r257,7; bra $L130; $L181: .loc 1 1681 18 mov.u32 %r257,8; $L130: .loc 1 1753 13 cvt.u32.u32 %r956,%r177; st.u8 [%r242],%r956; .loc 1 1755 13 add.u64 %r236,%r236,-1; .loc 1 1753 10 add.u64 %r242,%r242,1; $L128: .loc 1 1756 8 add.u32 %r207,%r207,1; .loc 1 1757 12 ld.u32 %r957,[%r379+8]; add.u32 %r206,%r957,-1; .loc 1 1757 11 st.u32 [%r379+8],%r206; setp.le.s32 %r958,%r206,0; @ %r958 bra $L138; .loc 1 1758 9 add.u64 %r959,%r176,1; st.u64 [%r379],%r959; bra $L139; $L138: .loc 1 1760 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r962,[%value_in]; } .loc 1 1760 11 setp.ne.u32 %r963,%r962,0; @ %r963 bra $L129; $L139: .loc 1 1570 18 setp.ne.u64 %r964,%r236,0; @ %r964 bra $L140; $L129: .loc 1 1763 7 setp.eq.u64 %r965,%r252,0; @ %r965 bra $L136; .loc 1 1764 12 and.b32 %r246,%r246,-257; $L136: .loc 1 1773 17 add.u32 %r966,%r256,-1; .loc 1 1773 7 setp.gt.u32 %r967,%r966,1; @ %r967 bra $L141; $L161: .loc 1 1778 17 setp.ge.u64 %r968,%frame,%r242; @ %r968 bra $L1; $L142: .loc 1 1780 5 add.u64 %r242,%r242,-1; ld.s8 %r972,[%r242]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r972; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r973,[%value_in]; } .loc 1 1778 17 setp.ne.u64 %r974,%frame,%r242; @ %r974 bra $L142; bra $L1; $L141: .loc 1 1788 17 add.u32 %r975,%r257,-1; .loc 1 1788 7 setp.gt.u32 %r976,%r975,6; @ %r976 bra $L143; .loc 1 1790 11 cvt.u16.u32 %r977,%r257; setp.le.s16 %r978,%r977,2; @ %r978 bra $L144; .loc 1 1791 18 cvt.u32.u32 %r979,%r257; cvt.u32.u8 %r300,%r979; .loc 1 1791 21 setp.ne.u16 %r981,%r977,3; @ %r981 bra $L182; bra $L143; $L144: .loc 1 1798 14 setp.lt.u64 %r982,%frame,%r242; @ %r982 bra $L146; bra $L1; $L182: .loc 1 1791 21 mov.u64 %r279,%r242; cvt.u32.u64 %r1074,%r279; cvt.u32.u64 %r1073,%r279; cvt.u16.u32 %r994,%r300; cvt.u16.u8 %r1079,%r1073; mov.u16 %r999,%r1079; $L145: .loc 1 1793 7 add.u64 %r279,%r279,-1; ld.s8 %r986,[%r279]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r986; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r987,[%value_in]; } cvt.u32.u64 %r989,%r279; vsub.u32.u32.u32.add %r343,%r989,%r1074,%r207; .loc 1 1791 21 cvt.u32.u64 %r991,%r279; cvt.u16.u8 %r1079,%r991; mov.u16 %r993,%r1079; add.u16 %r992,%r993,%r994; cvt.u32.u16 %r995,%r992; cvt.u16.u8 %r1079,%r995; mov.u16 %r998,%r1079; sub.u16 %r997,%r998,%r999; cvt.u32.u16 %r1000,%r997; cvt.s16.s8 %r1001,%r1000; setp.gt.s16 %r1002,%r1001,3; @ %r1002 bra $L145; .loc 1 1794 7 mov.u32 %r207,%r343; mov.u64 %r242,%r279; bra $L143; $L146: .loc 1 1800 9 add.u64 %r242,%r242,-1; ld.s8 %r1006,[%r242]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1006; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1007,[%value_in]; } .loc 1 1798 14 setp.ne.u64 %r1008,%frame,%r242; @ %r1008 bra $L146; bra $L1; $L143: .loc 1 1811 14 and.b32 %r1009,%r246,256; .loc 1 1811 7 setp.eq.u32 %r1010,%r1009,0; @ %r1010 bra $L147; .loc 1 1813 18 and.b32 %r1011,%r246,1024; .loc 1 1813 11 setp.eq.u32 %r1012,%r1011,0; @ %r1012 bra $L148; .loc 1 1816 14 setp.ge.u64 %r1013,%frame,%r242; @ %r1013 bra $L1; $L149: .loc 1 1818 9 add.u64 %r242,%r242,-1; ld.s8 %r1017,[%r242]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1017; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1018,[%value_in]; } .loc 1 1816 14 setp.ne.u64 %r1019,%frame,%r242; @ %r1019 bra $L149; bra $L1; $L148: .loc 1 1824 12 ld.s8 %r235,[%r242+-1]; .loc 1 1826 26 cvt.u16.u32 %r1021,%r235; and.b16 %r1020,%r1021,-33; cvt.u32.u16 %r1022,%r1020; .loc 1 1826 11 cvt.s16.s8 %r1023,%r1022; setp.ne.u16 %r1024,%r1023,69; @ %r1024 bra $L150; .loc 1 1824 10 add.u64 %r242,%r242,-1; .loc 1 1825 8 add.u32 %r207,%r207,-1; bra $L151; $L150: .loc 1 1828 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r235; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1028,[%value_in]; } .loc 1 1829 7 ld.s8 %r235,[%r242+-2]; .loc 1 1830 5 add.u32 %r207,%r207,-2; .loc 1 1829 7 add.u64 %r242,%r242,-2; $L151: .loc 1 1832 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r235; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1032,[%value_in]; } $L147: .loc 1 1834 15 and.b32 %r1033,%r246,16; .loc 1 1834 7 setp.ne.u32 %r1034,%r1033,0; @ %r1034 bra $L7; .loc 1 1845 11 mov.u32 %r1035,0; st.u8 [%r242],%r1035; .loc 1 1846 19 and.b32 %r1036,%r246,1536; .loc 1 1846 11 setp.ne.u32 %r1037,%r1036,1024; @ %r1037 bra $L152; .loc 1 1854 11 setp.eq.u64 %r1038,%r251,%r252; @ %r1038 bra $L153; .loc 1 1849 13 sub.u64 %r281,%r251,%r252; bra $L154; $L152: .loc 1 1852 16 setp.eq.u64 %r1039,%r253,0; @ %r1039 bra $L153; .loc 1 1853 55 add.u64 %r1044,%r254,1; .loc 1 1853 27 mov.u32 %r1043,10; mov.u64 %r1042,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1044; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1042; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1043; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r1045,[%value_in]; } .loc 1 1853 25 sub.u64 %r281,%r1045,%r253; mov.u64 %r242,%r254; $L154: .loc 1 1859 8 setp.lt.u64 %r1047,%r242,%r1077; @ %r1047 bra $L155; .loc 1 1860 17 add.u64 %r242,%frame,328; $L155: .loc 1 1861 18 st.u64 [%stack],%r281; cvta.const.u64 %r1049,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r242; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1049; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1050,[%value_in]; } $L153: .loc 1 1873 16 mov.u64 %r1054,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1054; call (%value_in),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r1055,[%value_in]; } .loc 1 888 11 add.u64 %r1056,%r381,7; and.b64 %r316,%r1056,-8; add.u64 %r381,%r316,8; .loc 1 1875 18 and.b32 %r1057,%r246,1; .loc 1 1875 11 setp.eq.u32 %r1058,%r1057,0; @ %r1058 bra $L156; .loc 1 1878 9 ld.u64 %r1059,[%r316]; st.f64 [%r1059],%r1055; bra $L157; $L156: .loc 1 1877 8 ld.u64 %r336,[%r316]; .loc 1 1880 23 and.b32 %r1060,%r246,2; .loc 1 1880 16 setp.eq.u32 %r1061,%r1060,0; @ %r1061 bra $L158; .loc 1 1883 10 st.f64 [%r336],%r1055; bra $L157; $L158: .loc 1 1888 8 setp.num.f64 %r1062,%r1055,%r1055; @ %r1062 bra $L159; .loc 1 1889 14 cvta.const.u64 %r1063,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1063; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r1064,[%value_in]; } .loc 1 1889 12 st.f32 [%r336],%r1064; bra $L157; $L159: .loc 1 1891 12 cvt.rn.f32.f64 %r1065,%r1055; st.f32 [%r336],%r1065; $L157: .loc 1 1893 17 add.u32 %r377,%r377,1; bra $L7; $L35: .loc 1 1905 63 setp.eq.u32 %r1066,%r377,0; @ %r1066 bra $L183; .loc 1 1905 25 ld.u16 %r1068,[%r379+16]; and.b16 %r1067,%r1068,64; setp.ne.u16 %r1069,%r1067,0; .loc 1 1905 63 selp.u32 %r377,-1,%r377,%r1069; bra $L1; $L162: .loc 1 613 10 mov.u32 %r377,%r27; bra $L1; $L183: .loc 1 1905 63 mov.u32 %r377,-1; bra $L1; $L3: $L160: $L134: .loc 1 1773 17 add.u32 %r1071,%r256,-1; .loc 1 1773 7 setp.le.u32 %r1072,%r1071,1; @ %r1072 bra $L161; mov.u64 %r252,0; bra $L143; $L1: .loc 1 1914 1 mov.u32 %value,%r377; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfscanf .visible .func (.param .u32 %value_out) vfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 231 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 233 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L346; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L346; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L346: .loc 1 234 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 235 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfscanf .visible .func (.param .u32 %value_out) __svfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 242 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 243 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfscanf_r .visible .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 253 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L352; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L352; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L352: .loc 1 254 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 255 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1861 0 0 0 644 94982 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9); .file 1 "../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vfwprintf_r .visible .func (.param .u32 %value_out) _vfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: vfwprintf .visible .func (.param .u32 %value_out) vfwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sprint_r .extern .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 4 .u32 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 4 .u32 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 4 .u32 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 4 .u32 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 4 .u32 $LC7[2] = {48,0 }; // BEGIN FUNCTION DEF: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u32 %ar6; ld.param.u32 %ar6,[%in_ar6]; .reg .u64 %ar7; ld.param.u64 %ar7,[%in_ar7]; .reg .u64 %ar8; ld.param.u64 %ar8,[%in_ar8]; .reg .u32 %ar9; ld.param.u32 %ar9,[%in_ar9]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r47; .reg .u64 %r50; .reg .u32 %r54; .reg .u64 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r74; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .u32 %r110; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .u32 %r120; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u16 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u16 %r144; mov.u64 %r56,%ar0; mov.f64 %r57,%ar1; mov.u32 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r61,%ar5; mov.u32 %r62,%ar6; mov.u64 %r63,%ar7; mov.u64 %r64,%ar8; mov.u32 %r65,%ar9; .loc 1 1562 6 mov.b64 %r66,%r57; shr.u64 %r67,%r66,32; cvt.u32.u64 %r68,%r67; .loc 1 1562 5 setp.ge.s32 %r69,%r68,0; @ %r69 bra $L18; .loc 1 1563 9 neg.f64 %r57,%r57; .loc 1 1564 9 mov.u32 %r39,45; bra $L2; $L18: .loc 1 1566 9 mov.u32 %r39,0; $L2: st.u32 [%r60],%r39; .loc 1 1616 23 and.b32 %r25,%r62,-33; .loc 1 1616 5 setp.eq.u32 %r70,%r25,70; @ %r70 bra $L3; .loc 1 1623 6 setp.ne.u32 %r71,%r25,69; @ %r71 bra $L4; .loc 1 1624 11 add.u32 %r58,%r58,1; .loc 1 1635 13 add.u64 %r79,%frame,8; mov.u32 %r74,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r74; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r79; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r80,[%value_in]; } mov.u64 %r50,%r80; bra $L5; $L23: .loc 1 1642 10 ld.u32 %r54,[%r61]; bra $L6; $L15: .loc 1 1641 23 mov.u32 %r81,1; sub.u32 %r54,%r81,%r58; .loc 1 1641 12 st.u32 [%r61],%r54; $L6: .loc 1 1642 10 cvt.s64.s32 %r82,%r54; .loc 1 1642 7 add.u64 %r83,%r82,%r47; add.u64 %r35,%r126,%r83; $L13: .loc 1 1644 6 setp.neu.f64 %r84,%r57,0d0000000000000000; @ %r84 bra $L7; .loc 1 1645 8 st.u64 [%frame],%r35; mov.u64 %r29,%r35; bra $L8; $L7: .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.le.u64 %r85,%r35,%r29; @ %r85 bra $L8; .loc 1 1647 11 mov.u32 %r87,48; $L9: .loc 1 1647 8 add.u64 %r86,%r29,1; st.u64 [%frame],%r86; .loc 1 1647 11 st.u8 [%r29],%r87; .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.lt.u64 %r88,%r29,%r35; @ %r88 bra $L9; $L8: .loc 1 1650 18 sub.u64 %r89,%r29,%r50; .loc 1 1650 12 cvt.u32.u64 %r31,%r89; st.u32 [%r63],%r31; .loc 1 1655 28 set.u32.gt.s32 %r91,%r65,0; neg.s32 %r92,%r91; mov.u32 %r90,%r92; set.u32.gt.s32 %r94,%r31,0; neg.s32 %r95,%r94; mov.u32 %r93,%r95; cvt.u16.u8 %r144,%r90; mov.u16 %r97,%r144; cvt.u16.u8 %r144,%r93; mov.u16 %r98,%r144; and.b16 %r96,%r97,%r98; cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r100,%r99; setp.ne.u16 %r101,%r100,0; @ ! %r101 bra $L21; mov.u64 %r36,%r50; mov.u64 %r37,%r64; .loc 1 1655 11 mov.u32 %r40,0; $L11: .loc 1 1656 15 ld.s8 %r103,[%r36]; st.u32 [%r37],%r103; .loc 1 1655 40 add.u32 %r40,%r40,1; .loc 1 1655 28 add.u64 %r36,%r36,1; add.u64 %r37,%r37,4; ld.u32 %r105,[%r63]; min.s32 %r104,%r65,%r105; setp.gt.s32 %r106,%r104,%r40; @ %r106 bra $L11; bra $L21; $L5: .loc 1 1638 15 cvt.s64.s32 %r107,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r107; bra $L13; $L4: .loc 1 1635 13 add.u64 %r115,%frame,8; mov.u32 %r110,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r110; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r115; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r116,[%value_in]; } mov.u64 %r50,%r116; .loc 1 1637 7 setp.ne.u32 %r117,%r25,71; @ ! %r117 bra $L22; bra $L5; $L3: .loc 1 1635 13 add.u64 %r125,%frame,8; mov.u32 %r120,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r120; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r125; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r126,[%value_in]; } mov.u64 %r50,%r126; .loc 1 1638 15 cvt.s64.s32 %r47,%r58; .loc 1 1640 7 ld.u8 %r129,[%r126]; cvt.s16.s8 %r128,%r129; set.u32.eq.u16 %r130,%r128,48; neg.s32 %r131,%r130; mov.u32 %r127,%r131; .loc 1 1640 24 set.u32.neu.f64 %r133,%r57,0d0000000000000000; neg.s32 %r134,%r133; mov.u32 %r132,%r134; cvt.u16.u8 %r144,%r127; mov.u16 %r136,%r144; cvt.u16.u8 %r144,%r132; mov.u16 %r137,%r144; and.b16 %r135,%r136,%r137; cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ ! %r140 bra $L23; bra $L15; $L17: .loc 1 1638 15 cvt.s64.s32 %r141,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r141; bra $L13; $L22: .loc 1 1637 44 and.b32 %r142,%r59,1; .loc 1 1637 35 setp.ne.u32 %r143,%r142,0; @ %r143 bra $L17; .loc 1 1650 18 ld.u64 %r29,[%frame]; bra $L8; $L21: .loc 1 1660 1 mov.u64 %value,%r64; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfwprintf_r .visible .func (.param .u32 %value_out) _vfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[1312]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r45; .reg .u32 %r46; .reg .u64 %r63; .reg .u32 %r71; .reg .u32 %r76; .reg .u32 %r125; .reg .f64 %r137; .reg .u32 %r139; .reg .u32 %r140; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r148; .reg .u32 %r152; .reg .u64 %r153; .reg .u64 %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .u64 %r162; .reg .u64 %r163; .reg .u32 %r164; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r170; .reg .u32 %r173; .reg .u64 %r174; .reg .u32 %r177; .reg .u32 %r180; .reg .u64 %r183; .reg .u32 %r184; .reg .u32 %r186; .reg .u32 %r188; .reg .u64 %r194; .reg .u64 %r196; .reg .u32 %r197; .reg .u64 %r202; .reg .u32 %r204; .reg .u32 %r207; .reg .u64 %r209; .reg .u32 %r210; .reg .u64 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r217; .reg .u32 %r222; .reg .u64 %r224; .reg .u32 %r226; .reg .u64 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u64 %r233; .reg .u64 %r238; .reg .u32 %r239; .reg .u64 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u64 %r245; .reg .u64 %r248; .reg .u32 %r249; .reg .u64 %r252; .reg .u32 %r253; .reg .u64 %r257; .reg .u32 %r258; .reg .u64 %r259; .reg .u32 %r265; .reg .u64 %r267; .reg .u32 %r268; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u64 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u64 %r277; .reg .u64 %r278; .reg .u64 %r279; .reg .u64 %r280; .reg .u32 %r281; .reg .u32 %r283; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r294; .reg .u64 %r297; .reg .u32 %r300; .reg .u32 %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .u64 %r306; .reg .u64 %r307; .reg .u32 %r308; .reg .u32 %r309; .reg .u64 %r310; .reg .u64 %r312; .reg .u64 %r314; .reg .u32 %r320; .reg .u64 %r324; .reg .u64 %r335; .reg .u32 %r339; .reg .u32 %r340; .reg .u64 %r341; .reg .u64 %r343; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .u32 %r353; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u64 %r382; .reg .u64 %r384; .reg .u64 %r387; .reg .u32 %r396; .reg .u32 %r399; .reg .u32 %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r407; .reg .u64 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r424; .reg .u64 %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u64 %r432; .reg .u32 %r433; .reg .u32 %r434; .reg .u32 %r438; .reg .u64 %r439; .reg .u64 %r440; .reg .u64 %r441; .reg .u64 %r442; .reg .u32 %r444; .reg .u64 %r446; .reg .u64 %r447; .reg .u32 %r448; .reg .pred %r449; .reg .u32 %r450; .reg .pred %r451; .reg .u16 %r453; .reg .u16 %r454; .reg .pred %r455; .reg .u16 %r456; .reg .u32 %r459; .reg .u16 %r460; .reg .u16 %r461; .reg .pred %r462; .reg .u64 %r463; .reg .pred %r464; .reg .u32 %r467; .reg .pred %r468; .reg .u16 %r469; .reg .u16 %r470; .reg .pred %r471; .reg .u16 %r472; .reg .pred %r473; .reg .u16 %r474; .reg .u32 %r476; .reg .u64 %r478; .reg .u64 %r479; .reg .u32 %r480; .reg .u32 %r482; .reg .u64 %r487; .reg .u32 %r488; .reg .pred %r489; .reg .u32 %r493; .reg .pred %r494; .reg .u16 %r495; .reg .u16 %r496; .reg .pred %r497; .reg .u16 %r498; .reg .u16 %r499; .reg .u64 %r501; .reg .u32 %r502; .reg .u32 %r503; .reg .u32 %r504; .reg .u32 %r505; .reg .u32 %r506; .reg .u32 %r507; .reg .u32 %r508; .reg .u16 %r509; .reg .u16 %r510; .reg .u16 %r511; .reg .u32 %r512; .reg .u16 %r513; .reg .pred %r514; .reg .u32 %r515; .reg .u32 %r516; .reg .u32 %r517; .reg .u32 %r518; .reg .u32 %r519; .reg .u32 %r520; .reg .u16 %r521; .reg .u16 %r522; .reg .u16 %r523; .reg .u32 %r524; .reg .u16 %r525; .reg .pred %r526; .reg .u64 %r527; .reg .u64 %r529; .reg .pred %r530; .reg .u64 %r531; .reg .u64 %r532; .reg .u64 %r533; .reg .u32 %r534; .reg .pred %r535; .reg .u32 %r540; .reg .pred %r541; .reg .u16 %r542; .reg .u16 %r543; .reg .pred %r544; .reg .u32 %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .pred %r549; .reg .pred %r550; .reg .pred %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .pred %r556; .reg .pred %r557; .reg .pred %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .pred %r566; .reg .pred %r567; .reg .pred %r568; .reg .pred %r570; .reg .u32 %r571; .reg .pred %r572; .reg .pred %r573; .reg .pred %r574; .reg .pred %r575; .reg .pred %r576; .reg .pred %r577; .reg .pred %r578; .reg .pred %r579; .reg .pred %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r583; .reg .pred %r584; .reg .u32 %r585; .reg .pred %r586; .reg .u32 %r587; .reg .u32 %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .u32 %r592; .reg .u32 %r593; .reg .pred %r594; .reg .u32 %r596; .reg .u32 %r597; .reg .u32 %r598; .reg .u32 %r599; .reg .u32 %r600; .reg .pred %r601; .reg .pred %r602; .reg .pred %r603; .reg .u32 %r604; .reg .pred %r605; .reg .u32 %r607; .reg .pred %r608; .reg .u16 %r609; .reg .u16 %r610; .reg .u32 %r611; .reg .pred %r613; .reg .u32 %r614; .reg .pred %r615; .reg .u32 %r616; .reg .pred %r617; .reg .u32 %r618; .reg .pred %r619; .reg .u16 %r620; .reg .pred %r623; .reg .pred %r624; .reg .u64 %r625; .reg .f64 %r628; .reg .pred %r629; .reg .pred %r630; .reg .pred %r631; .reg .u32 %r632; .reg .pred %r633; .reg .u64 %r634; .reg .u64 %r635; .reg .u32 %r637; .reg .pred %r638; .reg .u32 %r639; .reg .pred %r640; .reg .pred %r641; .reg .u32 %r642; .reg .u32 %r643; .reg .u32 %r644; .reg .u32 %r645; .reg .u32 %r646; .reg .u32 %r647; .reg .u32 %r648; .reg .u16 %r649; .reg .u16 %r650; .reg .u16 %r651; .reg .u32 %r652; .reg .u16 %r653; .reg .pred %r654; .reg .u32 %r664; .reg .u64 %r668; .reg .pred %r669; .reg .pred %r670; .reg .u64 %r673; .reg .u64 %r674; .reg .u64 %r675; .reg .pred %r676; .reg .u16 %r677; .reg .u16 %r678; .reg .u32 %r689; .reg .u64 %r693; .reg .u32 %r694; .reg .pred %r695; .reg .u32 %r696; .reg .u32 %r697; .reg .u32 %r698; .reg .u32 %r699; .reg .u32 %r700; .reg .u32 %r701; .reg .u16 %r702; .reg .u16 %r703; .reg .u16 %r704; .reg .u32 %r705; .reg .u16 %r706; .reg .pred %r707; .reg .pred %r708; .reg .pred %r709; .reg .u32 %r710; .reg .pred %r711; .reg .u32 %r713; .reg .u32 %r714; .reg .pred %r717; .reg .pred %r720; .reg .pred %r724; .reg .u64 %r730; .reg .u64 %r732; .reg .u64 %r733; .reg .u64 %r734; .reg .u64 %r736; .reg .u64 %r738; .reg .u32 %r739; .reg .u32 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .pred %r745; .reg .pred %r746; .reg .u32 %r747; .reg .pred %r748; .reg .u32 %r749; .reg .pred %r750; .reg .pred %r751; .reg .u32 %r752; .reg .pred %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u64 %r756; .reg .u32 %r757; .reg .pred %r758; .reg .u64 %r759; .reg .u64 %r760; .reg .u32 %r761; .reg .pred %r762; .reg .u64 %r763; .reg .u64 %r764; .reg .u32 %r765; .reg .pred %r766; .reg .u64 %r767; .reg .u64 %r768; .reg .u32 %r769; .reg .pred %r770; .reg .u32 %r771; .reg .pred %r772; .reg .u32 %r773; .reg .pred %r774; .reg .u16 %r775; .reg .u32 %r776; .reg .u32 %r777; .reg .u32 %r778; .reg .pred %r779; .reg .pred %r780; .reg .pred %r781; .reg .u64 %r785; .reg .pred %r786; .reg .u64 %r788; .reg .pred %r789; .reg .u64 %r792; .reg .u64 %r793; .reg .u64 %r794; .reg .pred %r795; .reg .u16 %r796; .reg .u16 %r797; .reg .u64 %r799; .reg .u32 %r800; .reg .pred %r801; .reg .u32 %r802; .reg .u64 %r806; .reg .u64 %r808; .reg .u32 %r809; .reg .pred %r810; .reg .u64 %r814; .reg .u64 %r815; .reg .pred %r816; .reg .u64 %r817; .reg .u64 %r819; .reg .u32 %r820; .reg .u64 %r822; .reg .u32 %r823; .reg .pred %r824; .reg .u32 %r825; .reg .pred %r826; .reg .u32 %r827; .reg .pred %r828; .reg .u16 %r829; .reg .pred %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r834; .reg .u32 %r835; .reg .pred %r836; .reg .u16 %r837; .reg .u32 %r838; .reg .pred %r839; .reg .pred %r840; .reg .u32 %r841; .reg .pred %r842; .reg .u32 %r843; .reg .u32 %r844; .reg .u32 %r845; .reg .u32 %r846; .reg .u32 %r847; .reg .u32 %r848; .reg .u16 %r849; .reg .u16 %r850; .reg .u16 %r851; .reg .u32 %r852; .reg .u16 %r853; .reg .pred %r854; .reg .pred %r855; .reg .pred %r856; .reg .u32 %r857; .reg .u32 %r858; .reg .pred %r859; .reg .u32 %r860; .reg .u32 %r861; .reg .u32 %r862; .reg .u32 %r863; .reg .u16 %r864; .reg .u16 %r865; .reg .u32 %r866; .reg .u16 %r867; .reg .u16 %r868; .reg .u16 %r869; .reg .u32 %r870; .reg .u16 %r871; .reg .pred %r872; .reg .u64 %r874; .reg .u64 %r876; .reg .u32 %r877; .reg .u64 %r879; .reg .u64 %r881; .reg .pred %r882; .reg .u32 %r883; .reg .u32 %r884; .reg .u64 %r886; .reg .u32 %r887; .reg .u32 %r888; .reg .pred %r891; .reg .u64 %r893; .reg .u64 %r895; .reg .u64 %r896; .reg .u64 %r897; .reg .u64 %r898; .reg .u32 %r899; .reg .pred %r900; .reg .u64 %r902; .reg .u64 %r904; .reg .pred %r905; .reg .pred %r906; .reg .u32 %r907; .reg .pred %r908; .reg .pred %r909; .reg .u32 %r910; .reg .pred %r911; .reg .pred %r913; .reg .pred %r914; .reg .pred %r915; .reg .u64 %r917; .reg .pred %r918; .reg .u32 %r923; .reg .pred %r924; .reg .pred %r925; .reg .u64 %r927; .reg .pred %r928; .reg .u32 %r933; .reg .pred %r934; .reg .u32 %r935; .reg .pred %r936; .reg .u64 %r938; .reg .u32 %r939; .reg .pred %r940; .reg .u32 %r945; .reg .pred %r946; .reg .u64 %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u32 %r956; .reg .pred %r957; .reg .pred %r958; .reg .pred %r959; .reg .pred %r960; .reg .u64 %r962; .reg .pred %r963; .reg .u32 %r968; .reg .pred %r969; .reg .pred %r970; .reg .u64 %r972; .reg .pred %r973; .reg .u32 %r978; .reg .pred %r979; .reg .pred %r980; .reg .pred %r981; .reg .u64 %r983; .reg .pred %r984; .reg .u32 %r989; .reg .pred %r990; .reg .pred %r991; .reg .u64 %r993; .reg .pred %r994; .reg .u32 %r999; .reg .pred %r1000; .reg .u32 %r1001; .reg .pred %r1002; .reg .u64 %r1003; .reg .u32 %r1004; .reg .pred %r1005; .reg .u32 %r1010; .reg .pred %r1011; .reg .pred %r1012; .reg .pred %r1013; .reg .u64 %r1014; .reg .u64 %r1015; .reg .u32 %r1016; .reg .pred %r1017; .reg .u32 %r1022; .reg .pred %r1023; .reg .u32 %r1024; .reg .pred %r1025; .reg .u32 %r1026; .reg .pred %r1027; .reg .u64 %r1029; .reg .u32 %r1030; .reg .pred %r1031; .reg .u32 %r1036; .reg .pred %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .u64 %r1041; .reg .pred %r1042; .reg .u32 %r1047; .reg .pred %r1048; .reg .pred %r1049; .reg .u64 %r1051; .reg .pred %r1052; .reg .u32 %r1057; .reg .pred %r1058; .reg .pred %r1059; .reg .u64 %r1060; .reg .u64 %r1061; .reg .u32 %r1062; .reg .pred %r1063; .reg .u32 %r1068; .reg .pred %r1069; .reg .pred %r1070; .reg .u32 %r1071; .reg .u32 %r1072; .reg .pred %r1073; .reg .u64 %r1075; .reg .u32 %r1076; .reg .pred %r1077; .reg .u32 %r1082; .reg .pred %r1083; .reg .pred %r1084; .reg .pred %r1085; .reg .u64 %r1087; .reg .pred %r1088; .reg .u32 %r1093; .reg .pred %r1094; .reg .pred %r1095; .reg .u64 %r1097; .reg .pred %r1098; .reg .u32 %r1103; .reg .pred %r1104; .reg .u64 %r1105; .reg .pred %r1106; .reg .u32 %r1111; .reg .pred %r1112; .reg .u32 %r1117; .reg .pred %r1118; .reg .u64 %r1119; .reg .u32 %r1120; .reg .pred %r1121; .reg .u32 %r1126; .reg .pred %r1127; .reg .u32 %r1128; .reg .pred %r1129; .reg .pred %r1130; .reg .u64 %r1132; .reg .pred %r1133; .reg .u32 %r1138; .reg .pred %r1139; .reg .pred %r1140; .reg .u64 %r1142; .reg .pred %r1143; .reg .u32 %r1148; .reg .pred %r1149; .reg .u64 %r1150; .reg .pred %r1151; .reg .u32 %r1152; .reg .pred %r1153; .reg .u64 %r1155; .reg .u32 %r1156; .reg .pred %r1157; .reg .u32 %r1162; .reg .pred %r1163; .reg .u64 %r1164; .reg .u64 %r1165; .reg .u64 %r1166; .reg .u64 %r1168; .reg .u32 %r1169; .reg .pred %r1170; .reg .u64 %r1171; .reg .u64 %r1172; .reg .u32 %r1173; .reg .pred %r1174; .reg .u32 %r1179; .reg .pred %r1180; .reg .u32 %r1181; .reg .u32 %r1182; .reg .u32 %r1183; .reg .pred %r1184; .reg .pred %r1185; .reg .u64 %r1187; .reg .pred %r1188; .reg .u32 %r1193; .reg .pred %r1194; .reg .pred %r1195; .reg .u64 %r1197; .reg .pred %r1198; .reg .u32 %r1203; .reg .pred %r1204; .reg .u32 %r1205; .reg .u32 %r1206; .reg .pred %r1207; .reg .u32 %r1208; .reg .pred %r1209; .reg .u64 %r1210; .reg .pred %r1211; .reg .u32 %r1216; .reg .pred %r1217; .reg .u64 %r1219; .reg .pred %r1220; .reg .u32 %r1225; .reg .pred %r1226; .reg .u32 %r1227; .reg .pred %r1228; .reg .u64 %r1229; .reg .u64 %r1230; .reg .pred %r1231; .reg .u32 %r1236; .reg .pred %r1237; .reg .pred %r1238; .reg .pred %r1239; .reg .u64 %r1241; .reg .pred %r1242; .reg .u32 %r1247; .reg .pred %r1248; .reg .pred %r1249; .reg .u64 %r1251; .reg .pred %r1252; .reg .u32 %r1257; .reg .pred %r1258; .reg .u64 %r1259; .reg .pred %r1260; .reg .u32 %r1265; .reg .pred %r1266; .reg .u64 %r1268; .reg .pred %r1269; .reg .u32 %r1274; .reg .pred %r1275; .reg .u32 %r1276; .reg .pred %r1277; .reg .pred %r1278; .reg .pred %r1279; .reg .u64 %r1281; .reg .pred %r1282; .reg .u32 %r1287; .reg .pred %r1288; .reg .pred %r1289; .reg .u64 %r1291; .reg .pred %r1292; .reg .u32 %r1297; .reg .pred %r1298; .reg .u32 %r1299; .reg .pred %r1300; .reg .u32 %r1301; .reg .pred %r1302; .reg .u32 %r1307; .reg .pred %r1308; .reg .u64 %r1311; .reg .pred %r1312; .reg .u64 %r1316; .reg .u32 %r1317; .reg .pred %r1318; .reg .u16 %r1319; .reg .u16 %r1320; .reg .u16 %r1321; .reg .u16 %r1322; .reg .pred %r1323; .reg .u16 %r1324; .reg .u16 %r1325; .reg .u16 %r1328; .reg .u16 %r1329; .reg .pred %r1330; .reg .u64 %r1333; .reg .u32 %r1334; .reg .pred %r1335; .reg .u32 %r1338; .reg .u32 %r1345; .reg .u64 %r1349; .reg .pred %r1350; .reg .pred %r1351; .reg .pred %r1352; .reg .pred %r1353; .reg .u32 %r1354; .reg .u32 %r1355; .reg .u32 %r1356; .reg .u32 %r1357; .reg .u32 %r1358; .reg .u32 %r1359; .reg .u16 %r1360; .reg .u16 %r1361; .reg .u16 %r1362; .reg .u32 %r1363; .reg .u16 %r1364; .reg .pred %r1365; .reg .u64 %r1366; .reg .u64 %r1367; .reg .pred %r1369; .reg .pred %r1370; .reg .u32 %r1376; .reg .u32 %r1377; .reg .u64 %r1378; .reg .u64 %r1402; .reg .u64 %r1403; .reg .u64 %r1404; .reg .u64 %r1405; .reg .u64 %r1406; .reg .u64 %r1407; .reg .u64 %r1408; .reg .u64 %r1409; .reg .u64 %r1410; .reg .u64 %r1411; .reg .u64 %r1412; .reg .u16 %r1419; mov.u64 %r439,%ar0; mov.u64 %r440,%ar1; mov.u64 %r441,%ar2; mov.u64 %r442,%ar3; .loc 1 424 6 mov.u32 %r444,0; st.u32 [%frame+1288],%r444; .loc 1 476 29 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r446,[%value_in]; } .loc 1 476 28 ld.u64 %r447,[%r446]; .loc 1 476 18 ld.s8 %r448,[%r447]; st.u32 [%frame+1300],%r448; .loc 1 591 2 setp.eq.u64 %r449,%r439,0; @ %r449 bra $L25; ld.u32 %r450,[%r439+80]; setp.ne.u32 %r451,%r450,0; @ %r451 bra $L25; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; call __sinit,(%out_arg1); } $L25: .loc 1 594 2 ld.s16 %r29,[%r440+16]; cvt.u16.u32 %r454,%r29; and.b16 %r453,%r454,8192; setp.ne.u16 %r455,%r453,0; @ %r455 bra $L26; .loc 1 592 2 ld.u32 %r27,[%r440+172]; .loc 1 594 2 or.b16 %r456,%r454,8192; cvt.s32.s16 %r29,%r456; st.u16 [%r440+16],%r456; or.b32 %r459,%r27,8192; st.u32 [%r440+172],%r459; $L26: .loc 1 597 5 cvt.u16.u32 %r461,%r29; and.b16 %r460,%r461,8; setp.eq.u16 %r462,%r460,0; @ %r462 bra $L27; .loc 1 597 6 ld.u64 %r463,[%r440+24]; setp.ne.u64 %r464,%r463,0; @ %r464 bra $L28; $L27: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r467,[%value_in]; } setp.eq.u32 %r468,%r467,0; @ %r468 bra $L29; $L88: .loc 1 599 10 mov.u32 %r438,-1; bra $L24; $L29: .loc 1 604 9 ld.s16 %r29,[%r440+16]; $L28: .loc 1 604 5 cvt.u16.u32 %r470,%r29; and.b16 %r469,%r470,26; setp.ne.u16 %r471,%r469,10; @ %r471 bra $L31; .loc 1 604 60 ld.u16 %r472,[%r440+18]; setp.lt.s16 %r473,%r472,0; @ %r473 bra $L31; .loc 1 187 14 and.b16 %r474,%r470,-3; st.u16 [%frame+1040],%r474; .loc 1 188 15 ld.u32 %r476,[%r440+172]; st.u32 [%frame+1196],%r476; .loc 1 189 13 st.u16 [%frame+1042],%r472; .loc 1 190 15 ld.u64 %r478,[%r440+48]; st.u64 [%frame+1072],%r478; .loc 1 191 14 ld.u64 %r479,[%r440+64]; st.u64 [%frame+1088],%r479; .loc 1 194 27 st.u64 [%frame+1024],%frame; .loc 1 194 17 st.u64 [%frame+1048],%frame; .loc 1 195 27 mov.u32 %r480,1024; st.u32 [%frame+1036],%r480; .loc 1 195 17 st.u32 [%frame+1056],%r480; .loc 1 196 16 mov.u32 %r482,0; st.u32 [%frame+1064],%r482; .loc 1 202 8 add.u64 %r487,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r487; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r441; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r442; call (%value_in),_vfwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r488,[%value_in]; } mov.u32 %r438,%r488; .loc 1 203 5 setp.lt.s32 %r489,%r438,0; @ %r489 bra $L32; .loc 1 203 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r487; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r493,[%value_in]; } .loc 1 203 15 setp.eq.u32 %r494,%r493,0; .loc 1 204 7 selp.u32 %r438,%r438,-1,%r494; $L32: .loc 1 205 5 ld.u16 %r496,[%frame+1040]; and.b16 %r495,%r496,64; setp.eq.u16 %r497,%r495,0; @ %r497 bra $L24; .loc 1 206 14 ld.u16 %r499,[%r440+16]; or.b16 %r498,%r499,64; st.u16 [%r440+16],%r498; .loc 1 607 11 bra $L24; $L31: .loc 1 626 14 add.u64 %r1367,%frame,1024; st.u64 [%frame+1256],%r1367; .loc 1 627 16 mov.u64 %r501,0; st.u64 [%frame+1272],%r501; .loc 1 628 17 mov.u32 %r502,0; st.u32 [%frame+1264],%r502; .loc 1 416 42 mov.f64 %r137,0d0000000000000000; .loc 1 626 21 mov.u64 %r277,%r1367; .loc 1 435 11 mov.u64 %r174,%r501; .loc 1 419 6 mov.u32 %r46,%r502; .loc 1 630 6 mov.u32 %r438,%r46; .loc 1 647 4 add.u64 %r1402,%frame,1256; .loc 1 1508 5 add.u64 %r1403,%frame,1228; .loc 1 1500 6 add.u64 %r1404,%frame,1300; .loc 1 1438 4 add.u64 %r1405,%frame,1280; .loc 1 1436 4 add.u64 %r1406,%frame,1304; .loc 1 1319 7 add.u64 %r1407,%frame,160; add.u64 %r1408,%frame,1236; .loc 1 1687 36 add.u64 %r1409,%frame,1235; .loc 1 1042 9 add.u64 %r1410,%frame,1288; add.u64 %r1411,%frame,1292; add.u64 %r1412,%frame,1296; $L34: .loc 1 644 24 ld.u32 %r290,[%r441]; .loc 1 644 38 set.u32.ne.u32 %r504,%r290,0; neg.s32 %r505,%r504; mov.u32 %r503,%r505; set.u32.ne.u32 %r507,%r290,37; neg.s32 %r508,%r507; mov.u32 %r506,%r508; cvt.u16.u8 %r1419,%r503; mov.u16 %r510,%r1419; cvt.u16.u8 %r1419,%r506; mov.u16 %r511,%r1419; and.b16 %r509,%r510,%r511; cvt.u32.u16 %r512,%r509; cvt.u16.u8 %r513,%r512; setp.eq.u16 %r514,%r513,0; @ %r514 bra $L278; mov.u64 %r259,%r441; $L36: mov.u64 %r40,%r259; .loc 1 645 21 add.u64 %r259,%r259,4; .loc 1 644 24 ld.u32 %r290,[%r259]; .loc 1 644 38 set.u32.ne.u32 %r516,%r290,0; neg.s32 %r517,%r516; mov.u32 %r515,%r517; set.u32.ne.u32 %r519,%r290,37; neg.s32 %r520,%r519; mov.u32 %r518,%r520; cvt.u16.u8 %r1419,%r515; mov.u16 %r522,%r1419; cvt.u16.u8 %r1419,%r518; mov.u16 %r523,%r1419; and.b16 %r521,%r522,%r523; cvt.u32.u16 %r524,%r521; cvt.u16.u8 %r525,%r524; setp.ne.u16 %r526,%r525,0; @ %r526 bra $L36; .loc 1 646 16 sub.u64 %r527,%r259,%r441; shr.s64 %r529,%r527,2; .loc 1 646 10 cvt.u32.u64 %r291,%r529; .loc 1 646 6 setp.eq.u32 %r530,%r291,0; @ %r530 bra $L35; .loc 1 647 4 st.u64 [%r277],%r441; cvt.s64.s32 %r531,%r291; shl.b64 %r41,%r531,2; st.u64 [%r277+8],%r41; ld.u64 %r533,[%frame+1272]; add.u64 %r532,%r533,%r41; st.u64 [%frame+1272],%r532; ld.u32 %r534,[%frame+1264]; add.u32 %r45,%r534,1; st.u32 [%frame+1264],%r45; setp.le.s32 %r535,%r45,7; @ %r535 bra $L37; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r540,[%value_in]; } setp.eq.u32 %r541,%r540,0; @ %r541 bra $L279; ld.u16 %r543,[%r440+16]; and.b16 %r542,%r543,64; cvt.s32.s16 %r418,%r542; bra $L39; $L37: add.u64 %r277,%r277,16; bra $L38; $L279: mov.u64 %r277,%r1367; $L38: .loc 1 648 8 add.u32 %r438,%r438,%r291; .loc 1 650 21 ld.u32 %r290,[%r40+4]; bra $L35; $L278: .loc 1 644 38 mov.u64 %r259,%r441; $L35: .loc 1 650 20 setp.eq.u32 %r544,%r290,0; @ %r544 bra $L40; .loc 1 653 6 add.u64 %r441,%r259,4; .loc 1 659 8 mov.u32 %r545,0; st.u32 [%frame+1304],%r545; .loc 1 671 14 ld.u32 %r419,[%r259+4]; mov.u32 %r339,%r545; mov.u32 %r340,%r545; .loc 1 658 8 mov.u32 %r272,-1; .loc 1 657 9 mov.u32 %r271,%r545; .loc 1 655 9 mov.u32 %r268,%r545; $L41: .loc 1 671 18 add.u64 %r441,%r441,4; .loc 1 671 12 mov.u32 %r265,%r419; $L42: .loc 1 672 11 setp.eq.u32 %r546,%r265,99; @ %r546 bra $L43; setp.gt.u32 %r547,%r265,99; @ %r547 bra $L44; setp.eq.u32 %r548,%r265,46; @ %r548 bra $L45; setp.gt.u32 %r549,%r265,46; @ %r549 bra $L46; setp.eq.u32 %r550,%r265,42; @ %r550 bra $L47; setp.gt.u32 %r551,%r265,42; @ %r551 bra $L48; setp.eq.u32 %r552,%r265,32; @ %r552 bra $L49; setp.eq.u32 %r553,%r265,35; @ %r553 bra $L50; bra $L417; $L48: setp.eq.u32 %r554,%r265,43; @ %r554 bra $L52; setp.eq.u32 %r555,%r265,45; @ %r555 bra $L53; bra $L54; $L46: setp.eq.u32 %r556,%r265,71; @ %r556 bra $L55; setp.gt.u32 %r557,%r265,71; @ %r557 bra $L56; setp.gt.u32 %r558,%r265,57; @ %r558 bra $L57; setp.gt.u32 %r559,%r265,48; @ %r559 bra $L58; setp.eq.u32 %r560,%r265,48; @ %r560 bra $L59; mov.u32 %r265,47; bra $L54; $L57: setp.eq.u32 %r561,%r265,69; @ %r561 bra $L55; bra $L54; $L56: setp.eq.u32 %r562,%r265,76; @ %r562 bra $L60; setp.eq.u32 %r563,%r265,88; @ %r563 bra $L61; bra $L54; $L44: setp.eq.u32 %r564,%r265,111; @ %r564 bra $L62; setp.gt.u32 %r565,%r265,111; @ %r565 bra $L63; setp.eq.u32 %r566,%r265,105; @ %r566 bra $L64; setp.gt.u32 %r567,%r265,105; @ %r567 bra $L65; setp.eq.u32 %r568,%r265,104; @ %r568 bra $L66; @ %r566 bra $L54; setp.eq.u32 %r570,%r265,100; @ %r570 bra $L64; add.u32 %r571,%r265,-101; setp.gt.u32 %r572,%r571,2; @ %r572 bra $L280; bra $L55; $L65: setp.eq.u32 %r573,%r265,108; @ %r573 bra $L67; setp.eq.u32 %r574,%r265,110; @ %r574 bra $L68; bra $L54; $L63: setp.eq.u32 %r575,%r265,115; @ %r575 bra $L69; setp.gt.u32 %r576,%r265,115; @ %r576 bra $L70; setp.eq.u32 %r577,%r265,112; @ %r577 bra $L71; setp.eq.u32 %r578,%r265,113; @ %r578 bra $L72; bra $L54; $L70: setp.eq.u32 %r579,%r265,117; @ %r579 bra $L73; setp.ne.u32 %r580,%r265,120; @ %r580 bra $L54; setp.eq.u32 %r581,%r339,0; @ %r581 bra $L74; st.u32 [%frame+1304],%r340; $L74: .loc 1 1291 10 cvta.const.u64 %r174,$LC5; bra $L75; $L49: .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 704 7 setp.ne.u32 %r582,%r340,0; selp.u32 %r339,%r339,1,%r582; selp.u32 %r340,%r340,32,%r582; bra $L41; $L50: .loc 1 708 10 or.b32 %r268,%r268,1; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 709 4 bra $L41; $L47: .loc 1 747 10 add.u64 %r341,%r442,4; ld.u32 %r271,[%r442]; .loc 1 751 7 setp.lt.s32 %r583,%r271,0; @ %r583 bra $L77; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 747 10 mov.u64 %r442,%r341; bra $L41; $L77: .loc 1 753 10 neg.s32 %r271,%r271; .loc 1 747 10 mov.u64 %r442,%r341; $L53: .loc 1 756 10 or.b32 %r268,%r268,4; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 757 4 bra $L41; $L52: .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 760 4 mov.u32 %r339,1; .loc 1 759 9 mov.u32 %r340,%r265; .loc 1 760 4 bra $L41; $L45: .loc 1 762 18 add.u64 %r312,%r441,4; .loc 1 762 12 ld.u32 %r265,[%r441]; .loc 1 762 7 setp.eq.u32 %r584,%r265,42; @ %r584 bra $L78; .loc 1 801 11 add.u32 %r585,%r265,-48; setp.le.u32 %r586,%r585,9; @ %r586 bra $L79; .loc 1 762 18 mov.u64 %r441,%r312; .loc 1 801 11 mov.u32 %r272,%r545; bra $L42; $L78: ld.u32 %r587,[%r442]; max.s32 %r272,%r587,-1; .loc 1 671 14 ld.u32 %r419,[%r441+4]; .loc 1 792 10 add.u64 %r442,%r442,4; .loc 1 762 18 mov.u64 %r441,%r312; .loc 1 798 5 bra $L41; $L79: mov.u64 %r348,%r312; .loc 1 800 6 mov.u32 %r303,%r545; $L81: .loc 1 802 12 shl.b32 %r589,%r303,2; add.u32 %r590,%r589,%r303; add.u32 %r591,%r590,%r590; .loc 1 802 16 add.u32 %r592,%r591,-48; add.u32 %r303,%r592,%r265; mov.u64 %r245,%r348; add.u64 %r441,%r348,4; mov.u64 %r348,%r441; .loc 1 803 8 ld.u32 %r265,[%r245]; .loc 1 801 11 add.u32 %r593,%r265,-48; setp.le.u32 %r594,%r593,9; @ %r594 bra $L81; .loc 1 805 9 max.s32 %r272,%r303,-1; .loc 1 806 4 bra $L42; $L59: .loc 1 813 10 or.b32 %r268,%r268,128; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 814 4 bra $L41; $L58: mov.u64 %r344,%r441; .loc 1 817 6 mov.u32 %r271,0; $L83: .loc 1 819 12 shl.b32 %r596,%r271,2; add.u32 %r597,%r596,%r271; add.u32 %r598,%r597,%r597; .loc 1 819 16 add.u32 %r599,%r598,-48; add.u32 %r271,%r599,%r265; mov.u64 %r142,%r344; add.u64 %r344,%r344,4; mov.u64 %r441,%r344; .loc 1 820 8 ld.u32 %r265,[%r142]; .loc 1 821 13 add.u32 %r600,%r265,-48; setp.le.u32 %r601,%r600,9; @ %r601 bra $L83; bra $L42; $L60: .loc 1 837 10 or.b32 %r268,%r268,8; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 838 4 bra $L41; $L66: .loc 1 847 11 or.b32 %r268,%r268,64; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 848 4 bra $L41; $L67: .loc 1 851 8 ld.u32 %r419,[%r441]; .loc 1 851 7 setp.ne.u32 %r602,%r419,108; @ %r602 bra $L84; .loc 1 853 11 or.b32 %r268,%r268,32; .loc 1 671 14 ld.u32 %r419,[%r441+4]; .loc 1 852 8 add.u64 %r441,%r441,4; bra $L41; $L84: .loc 1 856 11 or.b32 %r268,%r268,16; bra $L41; $L72: .loc 1 859 10 or.b32 %r268,%r268,32; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 860 4 bra $L41; $L43: setp.eq.u32 %r603,%r339,0; @ %r603 bra $L85; st.u32 [%frame+1304],%r340; $L85: .loc 1 747 10 ld.u32 %r283,[%r442]; add.u64 %r442,%r442,4; .loc 1 903 30 and.b32 %r604,%r268,16; .loc 1 903 19 setp.ne.u32 %r605,%r604,0; @ %r605 bra $L86; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r283; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r607,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r608,%r607,-1; @ %r608 bra $L87; .loc 1 906 20 ld.u16 %r610,[%r440+16]; or.b16 %r609,%r610,64; st.u16 [%r440+16],%r609; bra $L88; $L87: .loc 1 909 13 mov.u32 %r283,%r607; $L86: .loc 1 909 11 st.u32 [%frame],%r283; .loc 1 915 10 mov.u32 %r611,0; st.u32 [%frame+4],%r611; .loc 1 917 9 st.u32 [%frame+1304],%r611; .loc 1 918 4 mov.u32 %r353,1; .loc 1 916 9 mov.u32 %r276,%r353; .loc 1 902 7 mov.u64 %r267,%frame; .loc 1 918 4 bra $L89; $L64: setp.eq.u32 %r613,%r339,0; @ %r613 bra $L90; st.u32 [%frame+1304],%r340; $L90: .loc 1 921 13 and.b32 %r614,%r268,32; setp.eq.u32 %r615,%r614,0; @ %r615 bra $L91; add.u64 %r314,%r442,7; and.b64 %r380,%r314,-8; add.u64 %r442,%r380,8; ld.u64 %r63,[%r380]; mov.u64 %r274,%r63; bra $L92; $L91: and.b32 %r616,%r268,16; setp.eq.u32 %r617,%r616,0; @ %r617 bra $L93; add.u64 %r358,%r442,7; and.b64 %r347,%r358,-8; add.u64 %r442,%r347,8; ld.u64 %r63,[%r347]; mov.u64 %r274,%r63; bra $L92; $L93: .loc 1 747 10 ld.u32 %r429,[%r442]; add.u64 %r442,%r442,4; .loc 1 921 13 and.b32 %r618,%r268,64; setp.eq.u32 %r619,%r618,0; @ %r619 bra $L94; cvt.u16.u32 %r620,%r429; cvt.s64.s16 %r274,%r620; .loc 1 923 8 mov.u64 %r63,%r274; bra $L92; $L94: .loc 1 921 13 cvt.s64.s32 %r274,%r429; .loc 1 923 8 mov.u64 %r63,%r274; $L92: .loc 1 923 7 setp.ge.s64 %r623,%r63,0; @ %r623 bra $L95; .loc 1 929 12 neg.s64 %r274,%r274; mov.u32 %r243,45; .loc 1 932 9 mov.u32 %r275,1; bra $L96; $L55: setp.eq.u32 %r624,%r339,0; @ %r624 bra $L97; st.u32 [%frame+1304],%r340; $L97: .loc 1 921 13 add.u64 %r625,%r442,7; and.b64 %r427,%r625,-8; add.u64 %r442,%r427,8; .loc 1 947 25 ld.f64 %r137,[%r427]; .loc 1 958 8 abs.f64 %r628,%r137; setp.leu.f64 %r629,%r628,0d7fefffffffffffff; @ %r629 bra $L100; .loc 1 959 8 setp.lt.f64 %r630,%r137,0d0000000000000000; @ %r630 bra $L101; .loc 1 704 8 ld.u32 %r399,[%frame+1304]; bra $L102; $L100: .loc 1 969 7 setp.nan.f64 %r631,%r137,%r137; @ ! %r631 bra $L418; bra $L103; $L101: .loc 1 960 11 mov.u32 %r632,45; st.u32 [%frame+1304],%r632; mov.u32 %r399,%r632; $L102: .loc 1 961 8 setp.le.u32 %r633,%r265,71; @ %r633 bra $L281; .loc 1 964 9 cvta.const.u64 %r267,$LC1; bra $L105; $L281: .loc 1 962 9 cvta.const.u64 %r267,$LC0; $L105: .loc 1 966 11 and.b32 %r270,%r268,-129; .loc 1 967 5 mov.u32 %r353,3; mov.u64 %r279,0; .loc 1 965 10 mov.u32 %r276,%r353; .loc 1 656 9 mov.u32 %r272,0; .loc 1 661 8 mov.u32 %r231,%r272; .loc 1 967 5 bra $L106; $L103: .loc 1 970 9 mov.b64 %r634,%r137; shr.u64 %r635,%r634,63; cvt.u32.u64 %r637,%r635; .loc 1 970 8 setp.ne.u32 %r638,%r637,0; @ %r638 bra $L107; .loc 1 704 8 ld.u32 %r399,[%frame+1304]; bra $L108; $L107: .loc 1 971 11 mov.u32 %r639,45; st.u32 [%frame+1304],%r639; mov.u32 %r399,%r639; $L108: .loc 1 972 8 setp.le.u32 %r640,%r265,71; @ %r640 bra $L282; .loc 1 975 9 cvta.const.u64 %r267,$LC3; bra $L109; $L282: .loc 1 973 9 cvta.const.u64 %r267,$LC2; $L109: .loc 1 977 11 and.b32 %r270,%r268,-129; .loc 1 978 5 mov.u32 %r353,3; mov.u64 %r279,0; .loc 1 976 10 mov.u32 %r276,%r353; .loc 1 656 9 mov.u32 %r272,0; .loc 1 661 8 mov.u32 %r231,%r272; .loc 1 978 5 bra $L106; $L418: .loc 1 1040 10 or.b32 %r270,%r268,256; .loc 1 1034 7 setp.eq.u32 %r641,%r272,-1; @ %r641 bra $L283; .loc 1 1036 33 and.b32 %r642,%r265,-33; set.u32.eq.u32 %r644,%r642,71; neg.s32 %r645,%r644; mov.u32 %r643,%r645; .loc 1 1036 42 set.u32.eq.u32 %r647,%r272,0; neg.s32 %r648,%r647; mov.u32 %r646,%r648; cvt.u16.u8 %r1419,%r643; mov.u16 %r650,%r1419; cvt.u16.u8 %r1419,%r646; mov.u16 %r651,%r1419; and.b16 %r649,%r650,%r651; cvt.u32.u16 %r652,%r649; cvt.u16.u8 %r653,%r652; setp.ne.u16 %r654,%r653,0; @ %r654 bra $L111; bra $L110; $L283: .loc 1 1035 10 mov.u32 %r272,6; $L110: .loc 1 1042 9 mov.u32 %r664,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r137; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r272; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r270; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1412; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1411; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r265; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1410; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r664; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r668,[%value_in]; } mov.u64 %r267,%r668; .loc 1 1049 7 setp.ne.u64 %r669,%frame,%r267; @ %r669 bra $L284; .loc 1 1049 26 ld.u32 %r1376,[%frame+1288]; .loc 1 1049 18 setp.le.s32 %r670,%r1376,40; @ %r670 bra $L285; bra $L277; $L299: .loc 1 1037 10 mov.u32 %r272,%r1338; $L277: .loc 1 1051 20 cvt.s64.s32 %r673,%r1376; shl.b64 %r674,%r673,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r674; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r675,[%value_in]; } mov.u64 %r279,%r675; .loc 1 1050 8 setp.ne.u64 %r676,%r675,0; @ %r676 bra $L113; .loc 1 1054 20 ld.u16 %r678,[%r440+16]; or.b16 %r677,%r678,64; st.u16 [%r440+16],%r677; bra $L88; $L113: .loc 1 1057 10 ld.u32 %r689,[%frame+1288]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r137; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r272; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r270; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1412; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1411; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r265; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1410; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%r279; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r689; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r693,[%value_in]; } mov.u64 %r267,%r693; bra $L112; $L284: mov.u64 %r279,0; bra $L112; $L285: mov.u64 %r279,0; $L112: .loc 1 1082 15 ld.u32 %r1377,[%frame+1292]; mov.u32 %r231,%r1377; .loc 1 1061 25 and.b32 %r694,%r265,-33; .loc 1 1061 7 setp.ne.u32 %r695,%r694,71; @ %r695 bra $L114; ld.u32 %r1376,[%frame+1288]; $L273: .loc 1 1062 14 mov.u32 %r231,%r1377; .loc 1 1062 20 set.u32.gt.s32 %r697,%r1377,%r272; neg.s32 %r698,%r697; mov.u32 %r696,%r698; .loc 1 1062 8 set.u32.lt.s32 %r700,%r1377,-3; neg.s32 %r701,%r700; mov.u32 %r699,%r701; .loc 1 1062 20 cvt.u16.u8 %r1419,%r696; mov.u16 %r703,%r1419; cvt.u16.u8 %r1419,%r699; mov.u16 %r704,%r1419; or.b16 %r702,%r703,%r704; cvt.u32.u16 %r705,%r702; cvt.u16.u8 %r706,%r705; setp.eq.u16 %r707,%r706,0; @ %r707 bra $L115; .loc 1 1063 9 add.u32 %r265,%r265,-2; bra $L116; $L114: .loc 1 1071 7 setp.eq.u32 %r708,%r265,102; @ %r708 bra $L117; ld.u32 %r1376,[%frame+1288]; $L116: .loc 1 1072 5 add.u32 %r76,%r1377,-1; st.u32 [%frame+1292],%r76; .loc 1 1674 7 st.u32 [%frame+1228],%r265; .loc 1 1675 5 setp.ge.s32 %r709,%r76,0; @ %r709 bra $L286; .loc 1 1676 7 mov.u32 %r710,1; sub.u32 %r76,%r710,%r1377; .loc 1 1677 8 mov.u32 %r305,45; bra $L118; $L286: .loc 1 1680 8 mov.u32 %r305,43; $L118: st.u32 [%frame+1232],%r305; .loc 1 1682 5 setp.le.s32 %r711,%r76,9; @ %r711 bra $L119; .loc 1 1681 4 mov.u64 %r335,%r1403; $L120: mov.u64 %r167,%r335; .loc 1 1684 9 add.u64 %r335,%r167,-4; .loc 1 1684 11 rem.s32 %r713,%r76,10; add.u32 %r714,%r713,48; .loc 1 1684 9 st.u32 [%r335],%r714; mov.u32 %r71,%r76; .loc 1 1685 17 div.s32 %r76,%r76,10; .loc 1 1685 24 setp.gt.s32 %r717,%r71,99; @ %r717 bra $L120; .loc 1 1686 8 add.u64 %r306,%r167,-8; .loc 1 1686 10 add.u32 %r396,%r76,48; .loc 1 1686 8 st.u32 [%r335+-4],%r396; .loc 1 1687 12 setp.ge.u64 %r720,%r306,%r1403; @ %r720 bra $L287; mov.u64 %r359,%r1408; $L123: .loc 1 1687 43 add.u64 %r306,%r306,4; .loc 1 1687 39 st.u32 [%r359],%r396; .loc 1 1687 12 add.u64 %r359,%r359,4; setp.lt.u64 %r724,%r306,%r1403; @ %r724 bra $L122; .loc 1 1687 36 sub.u64 %r730,%r1409,%r167; and.b64 %r732,%r730,-4; add.u64 %r733,%r732,4; add.u64 %r734,%r1408,%r733; .loc 1 1694 12 sub.u64 %r736,%r734,%r1403; shr.s64 %r738,%r736,2; cvt.u32.u64 %r46,%r738; bra $L121; $L122: .loc 1 1687 41 ld.u32 %r396,[%r306]; bra $L123; $L119: .loc 1 1691 9 mov.u32 %r739,48; st.u32 [%frame+1236],%r739; .loc 1 1692 10 add.u32 %r740,%r76,48; .loc 1 1692 8 st.u32 [%frame+1240],%r740; mov.u32 %r46,4; bra $L121; $L287: .loc 1 1687 12 mov.u32 %r46,2; $L121: .loc 1 1074 10 add.u32 %r276,%r1376,%r46; .loc 1 1075 8 setp.gt.s32 %r741,%r1376,1; @ %r741 bra $L124; and.b32 %r231,%r268,1; .loc 1 1075 18 setp.ne.u32 %r742,%r231,0; @ %r742 bra $L124; .loc 1 1424 10 max.s32 %r353,%r276,0; bra $L125; $L124: .loc 1 1076 6 add.u32 %r276,%r276,1; .loc 1 1424 10 max.s32 %r353,%r276,0; .loc 1 661 8 mov.u32 %r231,0; bra $L125; $L117: and.b32 %r743,%r268,1; or.b32 %r424,%r743,%r272; .loc 1 1082 9 setp.gt.s32 %r744,%r231,0; @ %r744 bra $L126; bra $L419; $L115: .loc 1 1090 15 setp.ge.s32 %r745,%r231,%r1376; @ %r745 bra $L128; bra $L420; $L126: .loc 1 1084 16 setp.eq.u32 %r746,%r424,0; @ %r746 bra $L288; .loc 1 1085 21 add.u32 %r747,%r272,1; .loc 1 1085 13 add.u32 %r276,%r747,%r231; mov.u32 %r353,%r276; bra $L125; $L419: .loc 1 1087 20 setp.eq.u32 %r748,%r424,0; @ %r748 bra $L289; .loc 1 1089 10 add.u32 %r276,%r272,2; mov.u32 %r353,%r276; bra $L125; $L128: .loc 1 1092 9 and.b32 %r749,%r268,1; setp.ne.u32 %r750,%r749,0; @ %r750 bra $L131; .loc 1 1424 10 max.s32 %r353,%r231,0; mov.u32 %r276,%r231; .loc 1 1065 9 mov.u32 %r265,103; bra $L125; $L131: .loc 1 1093 7 add.u32 %r276,%r231,1; .loc 1 1424 10 max.s32 %r353,%r276,0; .loc 1 1065 9 mov.u32 %r265,103; bra $L125; $L420: .loc 1 1096 9 setp.gt.s32 %r751,%r231,0; @ %r751 bra $L290; mov.u32 %r752,2; sub.u32 %r281,%r752,%r231; bra $L132; $L290: mov.u32 %r281,1; $L132: .loc 1 1095 11 add.u32 %r276,%r281,%r1376; .loc 1 1424 10 max.s32 %r353,%r276,0; .loc 1 1065 9 mov.u32 %r265,103; bra $L125; $L288: mov.u32 %r353,%r231; mov.u32 %r276,%r231; bra $L125; $L289: mov.u32 %r353,1; .loc 1 1089 10 mov.u32 %r276,%r353; $L125: .loc 1 1117 8 ld.u32 %r272,[%frame+1296]; .loc 1 1117 7 setp.eq.u32 %r753,%r272,0; @ %r753 bra $L133; .loc 1 1118 10 mov.u32 %r754,45; st.u32 [%frame+1304],%r754; .loc 1 656 9 mov.u32 %r272,0; bra $L134; $L68: setp.eq.u32 %r755,%r339,0; @ %r755 bra $L135; st.u32 [%frame+1304],%r340; $L135: .loc 1 921 13 add.u64 %r756,%r442,7; and.b64 %r432,%r756,-8; add.u64 %r442,%r432,8; .loc 1 1132 14 and.b32 %r757,%r268,32; .loc 1 1132 7 setp.eq.u32 %r758,%r757,0; @ %r758 bra $L136; .loc 1 1133 34 ld.u64 %r759,[%r432]; cvt.s64.s32 %r760,%r438; st.u64 [%r759],%r760; bra $L34; $L136: .loc 1 1136 14 and.b32 %r761,%r268,16; .loc 1 1136 7 setp.eq.u32 %r762,%r761,0; @ %r762 bra $L138; .loc 1 1137 34 ld.u64 %r763,[%r432]; cvt.s64.s32 %r764,%r438; st.u64 [%r763],%r764; bra $L34; $L138: .loc 1 1138 19 and.b32 %r765,%r268,64; .loc 1 1138 12 setp.eq.u32 %r766,%r765,0; @ %r766 bra $L139; .loc 1 1139 35 ld.u64 %r767,[%r432]; st.u16 [%r767],%r438; bra $L34; $L139: .loc 1 1145 33 ld.u64 %r768,[%r432]; st.u32 [%r768],%r438; bra $L34; $L62: .loc 1 1148 13 and.b32 %r769,%r268,32; setp.eq.u32 %r770,%r769,0; @ %r770 bra $L140; add.u64 %r349,%r442,7; and.b64 %r350,%r349,-8; add.u64 %r442,%r350,8; ld.u64 %r274,[%r350]; .loc 1 1149 9 mov.u32 %r275,0; bra $L141; $L140: .loc 1 1148 13 and.b32 %r771,%r268,16; setp.eq.u32 %r772,%r771,0; @ %r772 bra $L142; add.u64 %r360,%r442,7; and.b64 %r310,%r360,-8; add.u64 %r442,%r310,8; ld.u64 %r274,[%r310]; .loc 1 1149 9 mov.u32 %r275,%r769; bra $L141; $L142: .loc 1 747 10 ld.u32 %r433,[%r442]; add.u64 %r442,%r442,4; .loc 1 1148 13 and.b32 %r773,%r268,64; setp.eq.u32 %r774,%r773,0; @ %r774 bra $L143; cvt.u16.u32 %r775,%r433; cvt.u64.u16 %r274,%r775; .loc 1 1149 9 mov.u32 %r275,%r771; bra $L141; $L143: .loc 1 1148 13 cvt.u64.u32 %r274,%r433; .loc 1 1149 9 mov.u32 %r275,%r773; bra $L141; $L71: .loc 1 1163 25 add.u64 %r381,%r442,7; and.b64 %r361,%r381,-8; add.u64 %r442,%r361,8; .loc 1 1163 11 ld.u64 %r274,[%r361]; .loc 1 1166 10 or.b32 %r268,%r268,2; .loc 1 1167 10 mov.u32 %r776,48; st.u32 [%frame+1280],%r776; .loc 1 1168 10 mov.u32 %r777,120; st.u32 [%frame+1284],%r777; .loc 1 1165 10 cvta.const.u64 %r174,$LC5; .loc 1 1164 9 mov.u32 %r275,2; .loc 1 1168 15 mov.u32 %r265,%r777; .loc 1 1169 4 bra $L141; $L69: .loc 1 1174 7 add.u64 %r351,%r442,7; and.b64 %r382,%r351,-8; add.u64 %r442,%r382,8; ld.u64 %r267,[%r382]; .loc 1 1178 9 mov.u32 %r778,0; st.u32 [%frame+1304],%r778; .loc 1 1184 7 setp.ne.u64 %r779,%r267,0; @ %r779 bra $L144; .loc 1 1186 39 min.u32 %r276,%r272,6; mov.u32 %r353,%r276; .loc 1 1185 8 cvta.const.u64 %r267,$LC6; bra $L89; $L144: .loc 1 1242 30 and.b32 %r231,%r268,16; .loc 1 1242 19 setp.ne.u32 %r780,%r231,0; @ %r780 bra $L145; .loc 1 1246 8 setp.eq.u32 %r781,%r272,-1; @ %r781 bra $L146; .loc 1 1247 16 cvt.s64.s32 %r280,%r272; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r231; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r280; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r785,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r786,%r785,0; @ %r786 bra $L147; .loc 1 1248 21 sub.u64 %r280,%r785,%r267; bra $L147; $L146: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r788,[%value_in]; } mov.u64 %r280,%r788; $L147: .loc 1 1251 8 setp.le.u64 %r789,%r280,39; @ %r789 bra $L148; .loc 1 1252 64 add.u64 %r792,%r280,1; .loc 1 1252 39 shl.b64 %r793,%r792,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r793; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r794,[%value_in]; } mov.u64 %r297,%r794; .loc 1 1252 12 setp.ne.u64 %r795,%r794,0; @ %r795 bra $L291; .loc 1 1254 18 ld.u16 %r797,[%r440+16]; or.b16 %r796,%r797,64; st.u16 [%r440+16],%r796; bra $L88; $L148: .loc 1 1260 25 setp.eq.u64 %r1370,%r280,0; @ %r1370 bra $L292; mov.u64 %r279,0; .loc 1 1259 9 mov.u64 %r297,%frame; bra $L149; $L291: mov.u64 %r279,%r297; setp.eq.u64 %r1370,%r280,0; $L149: mov.u64 %r355,%r297; mov.u64 %r356,0; $L151: .loc 1 1261 20 add.u64 %r799,%r267,%r356; ld.s8 %r800,[%r799]; st.u32 [%r355],%r800; .loc 1 1260 25 add.u64 %r356,%r356,1; add.u64 %r355,%r355,4; setp.gt.u64 %r801,%r280,%r356; @ %r801 bra $L151; .loc 1 1260 35 @ %r1370 bra $L152; cvt.u32.u64 %r802,%r280; bra $L153; $L152: mov.u32 %r802,1; $L153: mov.u32 %r276,%r802; .loc 1 1260 25 selp.u64 %r806,1,%r280,%r1370; .loc 1 1262 7 shl.b64 %r808,%r806,2; add.u64 %r387,%r297,%r808; mov.u32 %r353,%r276; mov.u64 %r267,%r297; bra $L150; $L292: .loc 1 1260 25 mov.u32 %r353,%r231; .loc 1 1260 15 mov.u32 %r276,%r231; .loc 1 1260 25 mov.u64 %r387,%frame; mov.u64 %r279,%r280; .loc 1 1259 9 mov.u64 %r267,%frame; $L150: .loc 1 1262 14 mov.u32 %r809,0; st.u32 [%r387],%r809; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 656 9 mov.u32 %r272,%r231; .loc 1 1242 42 mov.u32 %r270,%r268; bra $L106; $L145: .loc 1 1265 12 setp.eq.u32 %r810,%r272,-1; @ %r810 bra $L156; .loc 1 1271 18 cvt.s64.s32 %r814,%r272; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r778; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r814; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r815,[%value_in]; } mov.u64 %r279,%r815; .loc 1 1273 8 setp.ne.u64 %r816,%r279,0; @ %r816 bra $L157; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; mov.u32 %r353,%r272; mov.u32 %r276,%r272; mov.u32 %r270,%r268; .loc 1 656 9 mov.u32 %r272,%r778; .loc 1 661 8 mov.u32 %r231,%r272; bra $L106; $L157: .loc 1 1274 15 sub.u64 %r817,%r279,%r267; shr.s64 %r819,%r817,2; .loc 1 1274 11 cvt.u32.u64 %r820,%r819; min.s32 %r276,%r820,%r272; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 1424 10 max.s32 %r353,%r276,0; mov.u32 %r270,%r268; mov.u64 %r279,0; .loc 1 656 9 mov.u32 %r272,%r778; .loc 1 661 8 mov.u32 %r231,%r272; bra $L106; $L156: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r822,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r276,%r822; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 1424 10 max.s32 %r353,%r276,0; mov.u32 %r270,%r268; mov.u64 %r279,0; .loc 1 656 9 mov.u32 %r272,%r778; .loc 1 661 8 mov.u32 %r231,%r272; bra $L106; $L73: .loc 1 1284 13 and.b32 %r823,%r268,32; setp.eq.u32 %r824,%r823,0; @ %r824 bra $L158; add.u64 %r362,%r442,7; and.b64 %r324,%r362,-8; add.u64 %r442,%r324,8; ld.u64 %r274,[%r324]; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L158: .loc 1 1284 13 and.b32 %r825,%r268,16; setp.eq.u32 %r826,%r825,0; @ %r826 bra $L159; add.u64 %r384,%r442,7; and.b64 %r363,%r384,-8; add.u64 %r442,%r363,8; ld.u64 %r274,[%r363]; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L159: .loc 1 747 10 ld.u32 %r434,[%r442]; add.u64 %r442,%r442,4; .loc 1 1284 13 and.b32 %r827,%r268,64; setp.eq.u32 %r828,%r827,0; @ %r828 bra $L160; cvt.u16.u32 %r829,%r434; cvt.u64.u16 %r274,%r829; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L160: .loc 1 1284 13 cvt.u64.u32 %r274,%r434; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L61: setp.eq.u32 %r830,%r339,0; @ %r830 bra $L161; st.u32 [%frame+1304],%r340; $L161: .loc 1 1288 10 cvta.const.u64 %r174,$LC4; $L75: .loc 1 1292 17 and.b32 %r831,%r268,32; setp.eq.u32 %r832,%r831,0; @ %r832 bra $L162; add.u64 %r233,%r442,7; and.b64 %r343,%r233,-8; add.u64 %r442,%r343,8; ld.u64 %r274,[%r343]; bra $L163; $L162: and.b32 %r833,%r268,16; setp.eq.u32 %r834,%r833,0; @ %r834 bra $L164; add.u64 %r379,%r442,7; and.b64 %r345,%r379,-8; add.u64 %r442,%r345,8; ld.u64 %r274,[%r345]; bra $L163; $L164: .loc 1 747 10 ld.u32 %r428,[%r442]; add.u64 %r442,%r442,4; .loc 1 1292 17 and.b32 %r835,%r268,64; setp.eq.u32 %r836,%r835,0; @ %r836 bra $L165; cvt.u16.u32 %r837,%r428; cvt.u64.u16 %r274,%r837; bra $L163; $L165: cvt.u64.u32 %r274,%r428; $L163: .loc 1 1295 14 and.b32 %r838,%r268,1; .loc 1 1295 7 setp.eq.u32 %r839,%r838,0; @ %r839 bra $L293; .loc 1 1295 20 setp.eq.u64 %r840,%r274,0; @ %r840 bra $L294; .loc 1 1296 11 mov.u32 %r841,48; st.u32 [%frame+1280],%r841; .loc 1 1297 11 st.u32 [%frame+1284],%r265; .loc 1 1298 11 or.b32 %r268,%r268,2; .loc 1 1293 9 mov.u32 %r275,2; bra $L141; $L293: mov.u32 %r275,2; bra $L141; $L294: mov.u32 %r275,2; $L141: .loc 1 1305 1 mov.u32 %r243,0; $L96: .loc 1 930 10 st.u32 [%frame+1304],%r243; .loc 1 1311 14 setp.eq.u32 %r842,%r272,-1; @ %r842 bra $L166; .loc 1 1312 11 and.b32 %r270,%r268,-129; .loc 1 1320 15 set.u32.ne.u64 %r844,%r274,0; neg.s32 %r845,%r844; mov.u32 %r843,%r845; .loc 1 1320 28 set.u32.ne.u32 %r847,%r272,0; neg.s32 %r848,%r847; mov.u32 %r846,%r848; .loc 1 1320 20 cvt.u16.u8 %r1419,%r843; mov.u16 %r850,%r1419; cvt.u16.u8 %r1419,%r846; mov.u16 %r851,%r1419; or.b16 %r849,%r850,%r851; cvt.u32.u16 %r852,%r849; .loc 1 1320 7 cvt.u16.u8 %r853,%r852; setp.eq.u16 %r854,%r853,0; @ %r854 bra $L167; .loc 1 1312 11 mov.u32 %r268,%r270; $L166: setp.eq.u32 %r855,%r275,1; @ %r855 bra $L168; setp.eq.u32 %r856,%r275,2; @ %r856 bra $L295; mov.u64 %r267,%r1407; $L170: mov.u64 %r162,%r267; .loc 1 1329 13 add.u64 %r267,%r267,-4; .loc 1 1329 15 cvt.u32.u64 %r857,%r274; and.b32 %r858,%r857,7; add.u32 %r125,%r858,48; .loc 1 1329 13 st.u32 [%r267],%r125; .loc 1 1330 14 shr.u64 %r274,%r274,3; .loc 1 1331 15 setp.ne.u64 %r859,%r274,0; @ %r859 bra $L170; .loc 1 1333 22 set.u32.ne.u32 %r861,%r125,48; neg.s32 %r862,%r861; mov.u32 %r860,%r862; .loc 1 1333 9 mov.u32 %r863,%r268; cvt.u16.u8 %r1419,%r863; mov.u16 %r865,%r1419; and.b16 %r864,%r865,1; cvt.u32.u16 %r866,%r864; .loc 1 1333 22 cvt.u16.u8 %r1419,%r860; mov.u16 %r868,%r1419; cvt.u16.u8 %r1419,%r866; mov.u16 %r869,%r1419; and.b16 %r867,%r868,%r869; cvt.u32.u16 %r870,%r867; cvt.u16.u8 %r871,%r870; setp.ne.u16 %r872,%r871,0; @ %r872 bra $L171; .loc 1 1395 21 sub.u64 %r874,%r1407,%r267; shr.s64 %r876,%r874,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r876; mov.u32 %r270,%r268; bra $L172; $L171: .loc 1 1334 13 add.u64 %r307,%r162,-8; mov.u32 %r877,48; st.u32 [%r267+-4],%r877; .loc 1 1395 21 sub.u64 %r879,%r1407,%r307; shr.s64 %r881,%r879,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r881; mov.u32 %r270,%r268; .loc 1 1334 13 mov.u64 %r267,%r307; bra $L172; $L300: .loc 1 1312 11 mov.u32 %r268,%r270; $L168: .loc 1 1339 9 setp.gt.u64 %r882,%r274,9; @ %r882 bra $L296; .loc 1 1340 15 cvt.u32.u64 %r883,%r274; add.u32 %r884,%r883,48; .loc 1 1340 13 st.u32 [%frame+156],%r884; .loc 1 1341 7 mov.u32 %r270,%r268; mov.u32 %r276,1; .loc 1 1340 13 add.u64 %r267,%frame,156; .loc 1 1341 7 bra $L172; $L296: .loc 1 1319 7 mov.u64 %r267,%r1407; $L173: .loc 1 1347 14 add.u64 %r267,%r267,-4; .loc 1 1347 16 rem.u64 %r886,%r274,10; cvt.u32.u64 %r887,%r886; add.u32 %r888,%r887,48; .loc 1 1347 14 st.u32 [%r267],%r888; mov.u64 %r157,%r274; .loc 1 1366 15 div.u64 %r274,%r274,10; .loc 1 1367 22 setp.gt.u64 %r891,%r157,9; @ %r891 bra $L173; .loc 1 1395 21 sub.u64 %r893,%r1407,%r267; shr.s64 %r895,%r893,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r895; mov.u32 %r270,%r268; bra $L172; $L295: mov.u64 %r267,%r1407; $L169: .loc 1 1372 13 add.u64 %r267,%r267,-4; .loc 1 1372 28 and.b64 %r896,%r274,15; .loc 1 1372 20 shl.b64 %r897,%r896,2; add.u64 %r898,%r174,%r897; .loc 1 1372 13 ld.u32 %r899,[%r898]; st.u32 [%r267],%r899; .loc 1 1373 14 shr.u64 %r274,%r274,4; .loc 1 1374 15 setp.ne.u64 %r900,%r274,0; @ %r900 bra $L169; .loc 1 1395 21 sub.u64 %r902,%r1407,%r267; shr.s64 %r904,%r902,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r904; mov.u32 %r270,%r268; bra $L172; $L167: .loc 1 1392 32 setp.ne.u32 %r905,%r275,0; @ %r905 bra $L297; .loc 1 1392 55 and.b32 %r276,%r268,1; .loc 1 1392 45 setp.eq.u32 %r906,%r276,0; @ %r906 bra $L298; .loc 1 1393 32 mov.u32 %r907,48; st.u32 [%frame+156],%r907; mov.u32 %r272,%r275; add.u64 %r267,%frame,156; bra $L172; $L297: mov.u32 %r272,0; mov.u32 %r276,%r272; .loc 1 1319 7 add.u64 %r267,%frame,160; bra $L172; $L298: mov.u32 %r272,%r275; add.u64 %r267,%frame,160; $L172: .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 1424 10 max.s32 %r353,%r272,%r276; mov.u64 %r279,0; .loc 1 661 8 mov.u32 %r231,0; bra $L106; $L417: setp.eq.u32 %r908,%r339,0; @ %r908 bra $L174; $L275: st.u32 [%frame+1304],%r340; $L174: .loc 1 1399 7 setp.eq.u32 %r909,%r265,0; @ %r909 bra $L40; $L276: .loc 1 1403 8 st.u32 [%frame],%r265; .loc 1 1405 9 mov.u32 %r910,0; st.u32 [%frame+1304],%r910; .loc 1 1406 4 mov.u32 %r353,1; .loc 1 1404 9 mov.u32 %r276,%r353; .loc 1 1402 7 mov.u64 %r267,%frame; .loc 1 1406 4 bra $L89; $L133: .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; $L106: .loc 1 1425 6 setp.eq.u32 %r911,%r399,0; @ %r911 bra $L175; $L134: .loc 1 1426 10 add.u32 %r353,%r353,1; $L175: .loc 1 1427 13 and.b32 %r139,%r270,2; .loc 1 1427 6 setp.eq.u32 %r1369,%r139,0; @ %r1369 bra $L176; .loc 1 1428 10 add.u32 %r353,%r353,2; $L176: .loc 1 1431 14 and.b32 %r140,%r270,132; .loc 1 1432 4 ld.u64 %r401,[%frame+1272]; .loc 1 1431 6 setp.ne.u32 %r913,%r140,0; @ %r913 bra $L177; .loc 1 1432 4 sub.u32 %r249,%r271,%r353; setp.le.s32 %r914,%r249,0; @ %r914 bra $L177; ld.u32 %r400,[%frame+1264]; setp.le.s32 %r915,%r249,16; @ ! %r915 bra $L421; cvta.const.u64 %r1366,blanks$1; bra $L178; $L421: cvta.const.u64 %r1366,blanks$1; $L182: st.u64 [%r277],%r1366; mov.u64 %r917,64; st.u64 [%r277+8],%r917; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r400,%r400,1; st.u32 [%frame+1264],%r400; setp.gt.s32 %r918,%r400,7; @ %r918 bra $L179; add.u64 %r277,%r277,16; bra $L180; $L179: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r923,[%value_in]; } setp.ne.u32 %r924,%r923,0; @ %r924 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r400,[%frame+1264]; mov.u64 %r277,%r1367; $L180: add.u32 %r249,%r249,-16; setp.gt.s32 %r925,%r249,16; @ %r925 bra $L182; $L178: st.u64 [%r277],%r1366; cvt.s64.s32 %r927,%r249; shl.b64 %r143,%r927,2; st.u64 [%r277+8],%r143; add.u64 %r401,%r401,%r143; st.u64 [%frame+1272],%r401; add.u32 %r144,%r400,1; st.u32 [%frame+1264],%r144; setp.gt.s32 %r928,%r144,7; @ %r928 bra $L183; add.u64 %r277,%r277,16; bra $L177; $L183: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r933,[%value_in]; } setp.ne.u32 %r934,%r933,0; @ %r934 bra $L181; .loc 1 1436 4 ld.u64 %r401,[%frame+1272]; .loc 1 1432 4 mov.u64 %r277,%r1367; $L177: .loc 1 1435 6 ld.u32 %r935,[%frame+1304]; setp.eq.u32 %r936,%r935,0; @ %r936 bra $L184; .loc 1 1436 4 st.u64 [%r277],%r1406; mov.u64 %r938,4; st.u64 [%r277+8],%r938; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r939,[%frame+1264]; add.u32 %r148,%r939,1; st.u32 [%frame+1264],%r148; setp.gt.s32 %r940,%r148,7; @ %r940 bra $L185; add.u64 %r277,%r277,16; bra $L184; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r945,[%value_in]; } setp.ne.u32 %r946,%r945,0; @ %r946 bra $L181; .loc 1 1438 4 ld.u64 %r401,[%frame+1272]; .loc 1 1436 4 mov.u64 %r277,%r1367; $L184: .loc 1 1437 6 @ %r1369 bra $L186; .loc 1 1438 4 st.u64 [%r277],%r1405; mov.u64 %r949,8; st.u64 [%r277+8],%r949; add.u64 %r401,%r401,8; st.u64 [%frame+1272],%r401; ld.u32 %r950,[%frame+1264]; add.u32 %r152,%r950,1; st.u32 [%frame+1264],%r152; setp.gt.s32 %r951,%r152,7; @ %r951 bra $L187; add.u64 %r277,%r277,16; bra $L186; $L187: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r956,[%value_in]; } setp.ne.u32 %r957,%r956,0; @ %r957 bra $L181; .loc 1 1442 4 ld.u64 %r401,[%frame+1272]; .loc 1 1438 4 mov.u64 %r277,%r1367; $L186: .loc 1 1441 6 setp.ne.u32 %r958,%r140,128; @ %r958 bra $L188; .loc 1 1442 4 sub.u32 %r294,%r271,%r353; setp.le.s32 %r959,%r294,0; @ %r959 bra $L188; ld.u32 %r402,[%frame+1264]; setp.le.s32 %r960,%r294,16; @ ! %r960 bra $L422; cvta.const.u64 %r1378,zeroes$0; bra $L189; $L422: cvta.const.u64 %r1378,zeroes$0; $L192: st.u64 [%r277],%r1378; mov.u64 %r962,64; st.u64 [%r277+8],%r962; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r402,%r402,1; st.u32 [%frame+1264],%r402; setp.gt.s32 %r963,%r402,7; @ %r963 bra $L190; add.u64 %r277,%r277,16; bra $L191; $L190: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r968,[%value_in]; } setp.ne.u32 %r969,%r968,0; @ %r969 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r402,[%frame+1264]; mov.u64 %r277,%r1367; $L191: add.u32 %r294,%r294,-16; setp.gt.s32 %r970,%r294,16; @ %r970 bra $L192; $L189: st.u64 [%r277],%r1378; cvt.s64.s32 %r972,%r294; shl.b64 %r158,%r972,2; st.u64 [%r277+8],%r158; add.u64 %r401,%r401,%r158; st.u64 [%frame+1272],%r401; add.u32 %r159,%r402,1; st.u32 [%frame+1264],%r159; setp.gt.s32 %r973,%r159,7; @ %r973 bra $L193; add.u64 %r277,%r277,16; bra $L188; $L193: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r978,[%value_in]; } setp.ne.u32 %r979,%r978,0; @ %r979 bra $L181; .loc 1 1445 3 ld.u64 %r401,[%frame+1272]; .loc 1 1442 4 mov.u64 %r277,%r1367; $L188: .loc 1 1445 3 sub.u32 %r300,%r272,%r276; setp.le.s32 %r980,%r300,0; @ %r980 bra $L194; ld.u32 %r403,[%frame+1264]; setp.le.s32 %r981,%r300,16; @ ! %r981 bra $L423; cvta.const.u64 %r1378,zeroes$0; bra $L195; $L423: cvta.const.u64 %r1378,zeroes$0; $L198: st.u64 [%r277],%r1378; mov.u64 %r983,64; st.u64 [%r277+8],%r983; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r403,%r403,1; st.u32 [%frame+1264],%r403; setp.gt.s32 %r984,%r403,7; @ %r984 bra $L196; add.u64 %r277,%r277,16; bra $L197; $L196: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r989,[%value_in]; } setp.ne.u32 %r990,%r989,0; @ %r990 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r403,[%frame+1264]; mov.u64 %r277,%r1367; $L197: add.u32 %r300,%r300,-16; setp.gt.s32 %r991,%r300,16; @ %r991 bra $L198; $L195: st.u64 [%r277],%r1378; cvt.s64.s32 %r993,%r300; shl.b64 %r163,%r993,2; st.u64 [%r277+8],%r163; add.u64 %r401,%r401,%r163; st.u64 [%frame+1272],%r401; add.u32 %r164,%r403,1; st.u32 [%frame+1264],%r164; setp.gt.s32 %r994,%r164,7; @ %r994 bra $L199; add.u64 %r277,%r277,16; bra $L194; $L199: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r999,[%value_in]; } setp.ne.u32 %r1000,%r999,0; @ %r1000 bra $L181; .loc 1 1450 4 ld.u64 %r401,[%frame+1272]; .loc 1 1445 3 mov.u64 %r277,%r1367; $L194: .loc 1 1449 14 and.b32 %r1001,%r270,256; .loc 1 1449 6 setp.ne.u32 %r1002,%r1001,0; @ %r1002 bra $L200; .loc 1 1450 4 st.u64 [%r277],%r267; cvt.s64.s32 %r1003,%r276; shl.b64 %r168,%r1003,2; st.u64 [%r277+8],%r168; add.u64 %r401,%r401,%r168; st.u64 [%frame+1272],%r401; ld.u32 %r1004,[%frame+1264]; add.u32 %r170,%r1004,1; st.u32 [%frame+1264],%r170; setp.gt.s32 %r1005,%r170,7; @ %r1005 bra $L201; add.u64 %r277,%r277,16; bra $L202; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1010,[%value_in]; } setp.ne.u32 %r1011,%r1010,0; @ %r1011 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1450 4 mov.u64 %r277,%r1367; bra $L202; $L200: .loc 1 1452 7 setp.le.u32 %r1012,%r265,101; @ %r1012 bra $L203; .loc 1 1453 8 setp.neu.f64 %r1013,%r137,0d0000000000000000; @ %r1013 bra $L204; .loc 1 1455 6 cvta.const.u64 %r1014,$LC7; st.u64 [%r277],%r1014; mov.u64 %r1015,4; st.u64 [%r277+8],%r1015; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1016,[%frame+1264]; add.u32 %r173,%r1016,1; st.u32 [%frame+1264],%r173; setp.gt.s32 %r1017,%r173,7; @ %r1017 bra $L205; add.u64 %r277,%r277,16; bra $L206; $L205: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1022,[%value_in]; } setp.ne.u32 %r1023,%r1022,0; @ %r1023 bra $L181; .loc 1 1457 7 ld.u64 %r401,[%frame+1272]; .loc 1 1455 6 mov.u64 %r277,%r1367; $L206: .loc 1 1456 15 ld.u32 %r177,[%frame+1288]; .loc 1 1456 9 ld.u32 %r1024,[%frame+1292]; setp.lt.s32 %r1025,%r1024,%r177; @ %r1025 bra $L207; .loc 1 1456 31 and.b32 %r1026,%r270,1; .loc 1 1456 22 setp.eq.u32 %r1027,%r1026,0; @ %r1027 bra $L202; $L207: .loc 1 1457 7 st.u64 [%r277],%r1404; mov.u64 %r1029,4; st.u64 [%r277+8],%r1029; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1030,[%frame+1264]; add.u32 %r180,%r1030,1; st.u32 [%frame+1264],%r180; setp.gt.s32 %r1031,%r180,7; @ %r1031 bra $L208; add.u64 %r277,%r277,16; bra $L209; $L208: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1036,[%value_in]; } setp.ne.u32 %r1037,%r1036,0; @ %r1037 bra $L181; .loc 1 1458 7 ld.u32 %r177,[%frame+1288]; ld.u64 %r401,[%frame+1272]; .loc 1 1457 7 mov.u64 %r277,%r1367; $L209: .loc 1 1458 7 add.u32 %r207,%r177,-1; setp.le.s32 %r1038,%r207,0; @ %r1038 bra $L202; ld.u32 %r411,[%frame+1264]; setp.le.s32 %r1039,%r207,16; @ ! %r1039 bra $L424; cvta.const.u64 %r1378,zeroes$0; bra $L210; $L424: cvta.const.u64 %r1378,zeroes$0; $L213: st.u64 [%r277],%r1378; mov.u64 %r1041,64; st.u64 [%r277+8],%r1041; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r411,%r411,1; st.u32 [%frame+1264],%r411; setp.gt.s32 %r1042,%r411,7; @ %r1042 bra $L211; add.u64 %r277,%r277,16; bra $L212; $L211: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1047,[%value_in]; } setp.ne.u32 %r1048,%r1047,0; @ %r1048 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r411,[%frame+1264]; mov.u64 %r277,%r1367; $L212: add.u32 %r207,%r207,-16; setp.gt.s32 %r1049,%r207,16; @ %r1049 bra $L213; $L210: st.u64 [%r277],%r1378; cvt.s64.s32 %r1051,%r207; shl.b64 %r183,%r1051,2; st.u64 [%r277+8],%r183; add.u64 %r401,%r401,%r183; st.u64 [%frame+1272],%r401; add.u32 %r184,%r411,1; st.u32 [%frame+1264],%r184; setp.gt.s32 %r1052,%r184,7; @ %r1052 bra $L214; add.u64 %r277,%r277,16; bra $L202; $L214: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1057,[%value_in]; } setp.ne.u32 %r1058,%r1057,0; @ %r1058 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1458 7 mov.u64 %r277,%r1367; bra $L202; $L204: .loc 1 1460 21 ld.u32 %r186,[%frame+1292]; .loc 1 1460 15 setp.gt.s32 %r1059,%r186,0; @ %r1059 bra $L215; .loc 1 1461 6 cvta.const.u64 %r1060,$LC7; st.u64 [%r277],%r1060; mov.u64 %r1061,4; st.u64 [%r277+8],%r1061; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1062,[%frame+1264]; add.u32 %r188,%r1062,1; st.u32 [%frame+1264],%r188; setp.gt.s32 %r1063,%r188,7; @ %r1063 bra $L216; add.u64 %r277,%r277,16; bra $L217; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1068,[%value_in]; } setp.ne.u32 %r1069,%r1068,0; @ %r1069 bra $L181; .loc 1 1456 15 ld.u32 %r186,[%frame+1292]; .loc 1 1457 7 ld.u64 %r401,[%frame+1272]; .loc 1 1461 6 mov.u64 %r277,%r1367; $L217: .loc 1 1462 9 setp.ne.u32 %r1070,%r186,0; @ %r1070 bra $L218; .loc 1 1462 15 ld.u32 %r410,[%frame+1288]; .loc 1 1462 32 and.b32 %r1071,%r270,1; .loc 1 1462 23 or.b32 %r1072,%r1071,%r410; setp.ne.u32 %r1073,%r1072,0; @ %r1073 bra $L219; bra $L202; $L218: .loc 1 1463 7 st.u64 [%r277],%r1404; mov.u64 %r1075,4; st.u64 [%r277+8],%r1075; add.u64 %r408,%r401,4; st.u64 [%frame+1272],%r408; ld.u32 %r1076,[%frame+1264]; add.u32 %r409,%r1076,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1077,%r409,7; @ %r1077 bra $L220; add.u64 %r153,%r277,16; bra $L221; $L220: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1082,[%value_in]; } setp.ne.u32 %r1083,%r1082,0; @ %r1083 bra $L181; .loc 1 1464 7 ld.u32 %r186,[%frame+1292]; ld.u64 %r408,[%frame+1272]; ld.u32 %r409,[%frame+1264]; .loc 1 1463 7 mov.u64 %r153,%r1367; $L221: .loc 1 1464 7 setp.lt.s32 %r1084,%r186,0; @ %r1084 bra $L222; .loc 1 1465 7 ld.u32 %r410,[%frame+1288]; bra $L223; $L222: .loc 1 1464 7 neg.s32 %r242,%r186; setp.ge.s32 %r1085,%r186,-16; @ ! %r1085 bra $L425; cvta.const.u64 %r1378,zeroes$0; bra $L224; $L425: cvta.const.u64 %r1378,zeroes$0; $L227: st.u64 [%r153],%r1378; mov.u64 %r1087,64; st.u64 [%r153+8],%r1087; add.u64 %r408,%r408,64; st.u64 [%frame+1272],%r408; add.u32 %r409,%r409,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1088,%r409,7; @ %r1088 bra $L225; add.u64 %r153,%r153,16; bra $L226; $L225: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1093,[%value_in]; } setp.ne.u32 %r1094,%r1093,0; @ %r1094 bra $L181; ld.u64 %r408,[%frame+1272]; ld.u32 %r409,[%frame+1264]; mov.u64 %r153,%r1367; $L226: add.u32 %r242,%r242,-16; setp.gt.s32 %r1095,%r242,16; @ %r1095 bra $L227; $L224: st.u64 [%r153],%r1378; cvt.s64.s32 %r1097,%r242; shl.b64 %r194,%r1097,2; st.u64 [%r153+8],%r194; add.u64 %r408,%r408,%r194; st.u64 [%frame+1272],%r408; add.u32 %r409,%r409,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1098,%r409,7; @ %r1098 bra $L228; add.u64 %r153,%r153,16; .loc 1 1465 7 ld.u32 %r410,[%frame+1288]; bra $L223; $L228: .loc 1 1464 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1103,[%value_in]; } setp.ne.u32 %r1104,%r1103,0; @ %r1104 bra $L181; .loc 1 1465 7 ld.u32 %r410,[%frame+1288]; ld.u64 %r408,[%frame+1272]; ld.u32 %r409,[%frame+1264]; .loc 1 1464 7 mov.u64 %r153,%r1367; $L223: .loc 1 1465 7 st.u64 [%r153],%r267; cvt.s64.s32 %r1105,%r410; shl.b64 %r196,%r1105,2; st.u64 [%r153+8],%r196; add.u64 %r401,%r196,%r408; st.u64 [%frame+1272],%r401; add.u32 %r197,%r409,1; st.u32 [%frame+1264],%r197; setp.gt.s32 %r1106,%r197,7; @ %r1106 bra $L229; add.u64 %r277,%r153,16; bra $L202; $L229: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1111,[%value_in]; } setp.ne.u32 %r1112,%r1111,0; @ %r1112 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1465 7 mov.u64 %r277,%r1367; bra $L202; $L215: .loc 1 1469 6 ld.u32 %r1117,[%frame+1288]; min.s32 %r30,%r1117,%r231; setp.le.s32 %r1118,%r30,0; @ %r1118 bra $L230; st.u64 [%r277],%r267; cvt.s64.s32 %r1119,%r30; shl.b64 %r202,%r1119,2; st.u64 [%r277+8],%r202; add.u64 %r401,%r401,%r202; st.u64 [%frame+1272],%r401; ld.u32 %r1120,[%frame+1264]; add.u32 %r204,%r1120,1; st.u32 [%frame+1264],%r204; setp.gt.s32 %r1121,%r204,7; @ %r1121 bra $L231; add.u64 %r277,%r277,16; bra $L230; $L231: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1126,[%value_in]; } setp.ne.u32 %r1127,%r1126,0; @ %r1127 bra $L181; ld.u64 %r401,[%frame+1272]; mov.u64 %r277,%r1367; $L230: max.s32 %r1128,%r30,0; sub.u32 %r304,%r231,%r1128; setp.le.s32 %r1129,%r304,0; @ %r1129 bra $L232; ld.u32 %r404,[%frame+1264]; setp.le.s32 %r1130,%r304,16; @ ! %r1130 bra $L426; cvta.const.u64 %r1378,zeroes$0; bra $L233; $L426: cvta.const.u64 %r1378,zeroes$0; $L236: st.u64 [%r277],%r1378; mov.u64 %r1132,64; st.u64 [%r277+8],%r1132; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r404,%r404,1; st.u32 [%frame+1264],%r404; setp.gt.s32 %r1133,%r404,7; @ %r1133 bra $L234; add.u64 %r277,%r277,16; bra $L235; $L234: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1138,[%value_in]; } setp.ne.u32 %r1139,%r1138,0; @ %r1139 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r404,[%frame+1264]; mov.u64 %r277,%r1367; $L235: add.u32 %r304,%r304,-16; setp.gt.s32 %r1140,%r304,16; @ %r1140 bra $L236; $L233: st.u64 [%r277],%r1378; cvt.s64.s32 %r1142,%r304; shl.b64 %r209,%r1142,2; st.u64 [%r277+8],%r209; add.u64 %r401,%r401,%r209; st.u64 [%frame+1272],%r401; add.u32 %r210,%r404,1; st.u32 [%frame+1264],%r210; setp.gt.s32 %r1143,%r210,7; @ %r1143 bra $L237; add.u64 %r277,%r277,16; bra $L232; $L237: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1148,[%value_in]; } setp.ne.u32 %r1149,%r1148,0; @ %r1149 bra $L181; .loc 1 1491 10 ld.u64 %r401,[%frame+1272]; .loc 1 1469 6 mov.u64 %r277,%r1367; $L232: .loc 1 1471 9 cvt.s64.s32 %r1150,%r231; shl.b64 %r212,%r1150,2; .loc 1 1490 15 ld.u32 %r213,[%frame+1292]; ld.u32 %r214,[%frame+1288]; .loc 1 1490 9 setp.lt.s32 %r1151,%r213,%r214; @ %r1151 bra $L238; .loc 1 1490 31 and.b32 %r1152,%r270,1; .loc 1 1490 22 setp.eq.u32 %r1153,%r1152,0; @ %r1153 bra $L239; $L238: .loc 1 1491 10 st.u64 [%r277],%r1404; mov.u64 %r1155,4; st.u64 [%r277+8],%r1155; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1156,[%frame+1264]; add.u32 %r217,%r1156,1; st.u32 [%frame+1264],%r217; setp.gt.s32 %r1157,%r217,7; @ %r1157 bra $L240; add.u64 %r277,%r277,16; bra $L239; $L240: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1162,[%value_in]; } setp.ne.u32 %r1163,%r1162,0; @ %r1163 bra $L181; .loc 1 1492 6 ld.u32 %r214,[%frame+1288]; ld.u32 %r213,[%frame+1292]; ld.u64 %r401,[%frame+1272]; .loc 1 1491 10 mov.u64 %r277,%r1367; $L239: .loc 1 1492 6 sub.u32 %r222,%r214,%r213; cvt.s64.s32 %r1164,%r214; shl.b64 %r1165,%r1164,2; sub.u64 %r1166,%r1165,%r212; shr.s64 %r1168,%r1166,2; cvt.u32.u64 %r1169,%r1168; min.s32 %r28,%r1169,%r222; setp.le.s32 %r1170,%r28,0; @ %r1170 bra $L241; .loc 1 1471 9 add.u64 %r1171,%r267,%r212; .loc 1 1492 6 st.u64 [%r277],%r1171; cvt.s64.s32 %r1172,%r28; shl.b64 %r224,%r1172,2; st.u64 [%r277+8],%r224; add.u64 %r401,%r401,%r224; st.u64 [%frame+1272],%r401; ld.u32 %r1173,[%frame+1264]; add.u32 %r226,%r1173,1; st.u32 [%frame+1264],%r226; setp.gt.s32 %r1174,%r226,7; @ %r1174 bra $L242; add.u64 %r277,%r277,16; bra $L241; $L242: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1179,[%value_in]; } setp.ne.u32 %r1180,%r1179,0; @ %r1180 bra $L181; ld.u32 %r1181,[%frame+1288]; ld.u32 %r1182,[%frame+1292]; sub.u32 %r222,%r1181,%r1182; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1492 6 mov.u64 %r277,%r1367; $L241: max.s32 %r1183,%r28,0; sub.u32 %r308,%r222,%r1183; setp.le.s32 %r1184,%r308,0; @ %r1184 bra $L202; ld.u32 %r407,[%frame+1264]; setp.le.s32 %r1185,%r308,16; @ ! %r1185 bra $L427; cvta.const.u64 %r1378,zeroes$0; bra $L243; $L427: cvta.const.u64 %r1378,zeroes$0; $L246: st.u64 [%r277],%r1378; mov.u64 %r1187,64; st.u64 [%r277+8],%r1187; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r407,%r407,1; st.u32 [%frame+1264],%r407; setp.gt.s32 %r1188,%r407,7; @ %r1188 bra $L244; add.u64 %r277,%r277,16; bra $L245; $L244: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1193,[%value_in]; } setp.ne.u32 %r1194,%r1193,0; @ %r1194 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r407,[%frame+1264]; mov.u64 %r277,%r1367; $L245: add.u32 %r308,%r308,-16; setp.gt.s32 %r1195,%r308,16; @ %r1195 bra $L246; $L243: st.u64 [%r277],%r1378; cvt.s64.s32 %r1197,%r308; shl.b64 %r230,%r1197,2; st.u64 [%r277+8],%r230; add.u64 %r401,%r401,%r230; st.u64 [%frame+1272],%r401; add.u32 %r232,%r407,1; st.u32 [%frame+1264],%r232; setp.gt.s32 %r1198,%r232,7; @ %r1198 bra $L247; add.u64 %r277,%r277,16; bra $L202; $L247: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1203,[%value_in]; } setp.ne.u32 %r1204,%r1203,0; @ %r1204 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1492 6 mov.u64 %r277,%r1367; bra $L202; $L203: .loc 1 1455 6 add.u64 %r238,%r401,4; .loc 1 1450 4 ld.u32 %r1205,[%frame+1264]; add.u32 %r239,%r1205,1; add.u64 %r278,%r277,16; .loc 1 1497 8 ld.u32 %r1206,[%frame+1288]; setp.gt.s32 %r1207,%r1206,1; @ %r1207 bra $L248; .loc 1 1497 27 and.b32 %r1208,%r270,1; .loc 1 1497 18 setp.eq.u32 %r1209,%r1208,0; @ %r1209 bra $L249; $L248: .loc 1 1498 6 st.u64 [%r277],%r267; mov.u64 %r1210,4; st.u64 [%r277+8],%r1210; st.u64 [%frame+1272],%r238; st.u32 [%frame+1264],%r239; setp.le.s32 %r1211,%r239,7; @ %r1211 bra $L250; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1216,[%value_in]; } setp.ne.u32 %r1217,%r1216,0; @ %r1217 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1498 6 mov.u64 %r278,%r1367; $L250: .loc 1 1500 6 st.u64 [%r278],%r1404; mov.u64 %r1219,4; st.u64 [%r278+8],%r1219; add.u64 %r238,%r238,4; st.u64 [%frame+1272],%r238; add.u32 %r239,%r239,1; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1220,%r239,7; @ %r1220 bra $L251; add.u64 %r278,%r278,16; bra $L252; $L251: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1225,[%value_in]; } setp.ne.u32 %r1226,%r1225,0; @ %r1226 bra $L181; .loc 1 1502 7 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1500 6 mov.u64 %r278,%r1367; $L252: .loc 1 1502 7 ld.u32 %r1227,[%frame+1288]; add.u32 %r309,%r1227,-1; .loc 1 1501 9 setp.eq.f64 %r1228,%r137,0d0000000000000000; @ %r1228 bra $L253; .loc 1 1502 7 add.u32 %r239,%r239,1; .loc 1 1499 8 add.u64 %r1229,%r267,4; .loc 1 1502 7 st.u64 [%r278],%r1229; cvt.s64.s32 %r1230,%r309; shl.b64 %r241,%r1230,2; st.u64 [%r278+8],%r241; add.u64 %r238,%r238,%r241; st.u64 [%frame+1272],%r238; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1231,%r239,7; @ %r1231 bra $L254; add.u64 %r278,%r278,16; bra $L255; $L254: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1236,[%value_in]; } setp.ne.u32 %r1237,%r1236,0; @ %r1237 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1502 7 mov.u64 %r278,%r1367; bra $L255; $L253: .loc 1 1505 7 setp.le.s32 %r1238,%r309,0; @ %r1238 bra $L255; setp.le.s32 %r1239,%r309,16; @ ! %r1239 bra $L428; cvta.const.u64 %r1378,zeroes$0; bra $L256; $L428: cvta.const.u64 %r1378,zeroes$0; $L259: st.u64 [%r278],%r1378; mov.u64 %r1241,64; st.u64 [%r278+8],%r1241; add.u64 %r238,%r238,64; st.u64 [%frame+1272],%r238; add.u32 %r239,%r239,1; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1242,%r239,7; @ %r1242 bra $L257; add.u64 %r278,%r278,16; bra $L258; $L257: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1247,[%value_in]; } setp.ne.u32 %r1248,%r1247,0; @ %r1248 bra $L181; ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; mov.u64 %r278,%r1367; $L258: add.u32 %r309,%r309,-16; setp.gt.s32 %r1249,%r309,16; @ %r1249 bra $L259; $L256: st.u64 [%r278],%r1378; cvt.s64.s32 %r1251,%r309; shl.b64 %r248,%r1251,2; st.u64 [%r278+8],%r248; add.u64 %r238,%r238,%r248; st.u64 [%frame+1272],%r238; add.u32 %r239,%r239,1; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1252,%r239,7; @ %r1252 bra $L260; add.u64 %r278,%r278,16; bra $L255; $L260: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1257,[%value_in]; } setp.ne.u32 %r1258,%r1257,0; @ %r1258 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1505 7 mov.u64 %r278,%r1367; bra $L255; $L249: .loc 1 1507 6 st.u64 [%r277],%r267; mov.u64 %r1259,4; st.u64 [%r277+8],%r1259; st.u64 [%frame+1272],%r238; st.u32 [%frame+1264],%r239; setp.le.s32 %r1260,%r239,7; @ %r1260 bra $L255; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1265,[%value_in]; } setp.ne.u32 %r1266,%r1265,0; @ %r1266 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1507 6 mov.u64 %r278,%r1367; $L255: .loc 1 1508 5 st.u64 [%r278],%r1403; cvt.s64.s32 %r1268,%r46; shl.b64 %r252,%r1268,2; st.u64 [%r278+8],%r252; add.u64 %r401,%r252,%r238; st.u64 [%frame+1272],%r401; add.u32 %r253,%r239,1; st.u32 [%frame+1264],%r253; setp.gt.s32 %r1269,%r253,7; @ %r1269 bra $L261; add.u64 %r277,%r278,16; bra $L202; $L261: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1274,[%value_in]; } setp.ne.u32 %r1275,%r1274,0; @ %r1275 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1508 5 mov.u64 %r277,%r1367; $L202: .loc 1 1515 13 and.b32 %r1276,%r270,4; .loc 1 1515 6 setp.eq.u32 %r1277,%r1276,0; @ %r1277 bra $L262; .loc 1 1516 4 sub.u32 %r320,%r271,%r353; setp.le.s32 %r1278,%r320,0; @ %r1278 bra $L262; ld.u32 %r412,[%frame+1264]; setp.le.s32 %r1279,%r320,16; @ ! %r1279 bra $L429; cvta.const.u64 %r1366,blanks$1; bra $L263; $L429: cvta.const.u64 %r1366,blanks$1; $L266: st.u64 [%r277],%r1366; mov.u64 %r1281,64; st.u64 [%r277+8],%r1281; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r412,%r412,1; st.u32 [%frame+1264],%r412; setp.gt.s32 %r1282,%r412,7; @ %r1282 bra $L264; add.u64 %r277,%r277,16; bra $L265; $L264: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1287,[%value_in]; } setp.ne.u32 %r1288,%r1287,0; @ %r1288 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r412,[%frame+1264]; mov.u64 %r277,%r1367; $L265: add.u32 %r320,%r320,-16; setp.gt.s32 %r1289,%r320,16; @ %r1289 bra $L266; $L263: st.u64 [%r277],%r1366; cvt.s64.s32 %r1291,%r320; shl.b64 %r257,%r1291,2; st.u64 [%r277+8],%r257; add.u64 %r401,%r401,%r257; st.u64 [%frame+1272],%r401; add.u32 %r258,%r412,1; st.u32 [%frame+1264],%r258; setp.le.s32 %r1292,%r258,7; @ %r1292 bra $L262; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1297,[%value_in]; } setp.ne.u32 %r1298,%r1297,0; @ %r1298 bra $L181; .loc 1 1521 3 ld.u64 %r401,[%frame+1272]; $L262: .loc 1 1519 33 max.s32 %r1299,%r271,%r353; .loc 1 1519 7 add.u32 %r438,%r438,%r1299; .loc 1 1521 3 setp.ne.u64 %r1300,%r401,0; @ %r1300 bra $L267; $L269: mov.u32 %r1301,0; st.u32 [%frame+1264],%r1301; .loc 1 1523 20 setp.ne.u64 %r1302,%r279,0; @ %r1302 bra $L268; .loc 1 1521 3 mov.u64 %r277,%r1367; bra $L34; $L267: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1307,[%value_in]; } setp.ne.u32 %r1308,%r1307,0; @ ! %r1308 bra $L269; bra $L181; $L268: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r279; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r277,%r1367; bra $L34; $L40: .loc 1 1529 2 ld.u64 %r1311,[%frame+1272]; setp.eq.u64 %r1312,%r1311,0; @ %r1312 bra $L270; add.u64 %r1316,%frame,1256; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1317,[%value_in]; } setp.eq.u32 %r1318,%r1317,0; @ %r1318 bra $L270; ld.u16 %r1320,[%r440+16]; and.b16 %r1319,%r1320,64; cvt.s32.s16 %r418,%r1319; bra $L39; $L270: ld.u16 %r1322,[%r440+16]; and.b16 %r1321,%r1322,64; cvt.s32.s16 %r418,%r1321; bra $L39; $L181: .loc 1 1531 5 setp.ne.u64 %r1323,%r279,0; @ %r1323 bra $L271; ld.u16 %r1325,[%r440+16]; and.b16 %r1324,%r1325,64; cvt.s32.s16 %r418,%r1324; bra $L39; $L271: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r279; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r1329,[%r440+16]; and.b16 %r1328,%r1329,64; cvt.s32.s16 %r418,%r1328; $L39: .loc 1 1536 31 setp.ne.u32 %r1330,%r418,0; @ ! %r1330 bra $L24; bra $L88; $L219: .loc 1 1463 7 st.u64 [%r277],%r1404; mov.u64 %r1333,4; st.u64 [%r277+8],%r1333; add.u64 %r408,%r401,4; st.u64 [%frame+1272],%r408; ld.u32 %r1334,[%frame+1264]; add.u32 %r409,%r1334,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1335,%r409,7; @ %r1335 bra $L220; add.u64 %r153,%r277,16; bra $L223; $L89: .loc 1 656 9 mov.u32 %r270,%r268; mov.u64 %r279,0; mov.u32 %r272,0; mov.u32 %r231,%r272; bra $L175; $L111: .loc 1 1042 9 mov.u32 %r1345,40; mov.u32 %r1338,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r137; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1338; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r270; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1412; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1411; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r265; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1410; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r1345; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r1349,[%value_in]; } mov.u64 %r267,%r1349; .loc 1 1049 7 setp.eq.u64 %r1350,%frame,%r267; @ %r1350 bra $L272; mov.u64 %r279,0; .loc 1 1037 10 mov.u32 %r272,%r1338; ld.u32 %r1376,[%frame+1288]; ld.u32 %r1377,[%frame+1292]; bra $L273; $L95: .loc 1 1311 14 setp.ne.u32 %r1351,%r272,-1; @ %r1351 bra $L274; bra $L168; $L280: .loc 1 672 11 mov.u32 %r265,104; $L54: setp.ne.u32 %r1352,%r339,0; @ ! %r1352 bra $L276; bra $L275; $L272: .loc 1 1049 26 ld.u32 %r1376,[%frame+1288]; .loc 1 1049 18 setp.gt.s32 %r1353,%r1376,40; @ %r1353 bra $L299; mov.u64 %r279,0; .loc 1 1037 10 mov.u32 %r272,%r1338; ld.u32 %r1377,[%frame+1292]; bra $L273; $L274: .loc 1 1312 11 and.b32 %r270,%r268,-129; .loc 1 1320 15 set.u32.ne.u64 %r1355,%r274,0; neg.s32 %r1356,%r1355; mov.u32 %r1354,%r1356; .loc 1 1320 28 set.u32.ne.u32 %r1358,%r272,0; neg.s32 %r1359,%r1358; mov.u32 %r1357,%r1359; .loc 1 1320 20 cvt.u16.u8 %r1419,%r1354; mov.u16 %r1361,%r1419; cvt.u16.u8 %r1419,%r1357; mov.u16 %r1362,%r1419; or.b16 %r1360,%r1361,%r1362; cvt.u32.u16 %r1363,%r1360; .loc 1 1320 7 cvt.u16.u8 %r1364,%r1363; setp.ne.u16 %r1365,%r1364,0; @ %r1365 bra $L300; mov.u32 %r272,0; mov.u32 %r276,%r272; .loc 1 1319 7 add.u64 %r267,%frame,160; bra $L172; $L24: .loc 1 1538 1 mov.u32 %value,%r438; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfwprintf .visible .func (.param .u32 %value_out) vfwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 373 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 375 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1880 0 0 0 644 64407 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __svfwscanf_r .visible .func (.param .u32 %value_out) __svfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfwscanf .visible .func (.param .u32 %value_out) vfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfwscanf .visible .func (.param .u32 %value_out) __svfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfwscanf_r .visible .func (.param .u32 %value_out) _vfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fgetwc_r .extern .func (.param .u32 %value_out) _fgetwc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _ungetwc_r .extern .func (.param .u32 %value_out) _ungetwc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: swprintf .extern .func (.param .u32 %value_out) swprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstod_r .extern .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfwscanf_r .visible .func (.param .u32 %value_out) __svfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[1424]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r29; .reg .u32 %r32; .reg .u64 %r34; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r54; .reg .u64 %r56; .reg .u32 %r59; .reg .u64 %r71; .reg .u32 %r79; .reg .u32 %r82; .reg .u32 %r96; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r138; .reg .u32 %r166; .reg .u32 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r172; .reg .u32 %r174; .reg .u32 %r175; .reg .u32 %r176; .reg .u32 %r177; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r191; .reg .u32 %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r201; .reg .u32 %r202; .reg .u64 %r203; .reg .u64 %r210; .reg .u64 %r211; .reg .u32 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u32 %r218; .reg .u64 %r221; .reg .u32 %r227; .reg .u64 %r230; .reg .u32 %r231; .reg .u32 %r237; .reg .u64 %r245; .reg .u64 %r254; .reg .u32 %r260; .reg .u64 %r268; .reg .u32 %r270; .reg .u32 %r274; .reg .u64 %r280; .reg .u32 %r284; .reg .u64 %r286; .reg .u64 %r288; .reg .u32 %r290; .reg .u64 %r291; .reg .u64 %r292; .reg .u64 %r293; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r298; .reg .u64 %r299; .reg .u32 %r300; .reg .u64 %r301; .reg .u32 %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r306; .reg .u64 %r307; .reg .u64 %r309; .reg .u64 %r310; .reg .u16 %r311; .reg .u16 %r312; .reg .pred %r313; .reg .u16 %r314; .reg .u32 %r316; .reg .pred %r317; .reg .pred %r318; .reg .u32 %r320; .reg .pred %r321; .reg .u32 %r324; .reg .pred %r325; .reg .u32 %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .pred %r331; .reg .pred %r332; .reg .pred %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .pred %r338; .reg .u32 %r339; .reg .pred %r340; .reg .pred %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .pred %r351; .reg .pred %r352; .reg .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .u32 %r358; .reg .pred %r359; .reg .pred %r360; .reg .u32 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .u32 %r368; .reg .u32 %r369; .reg .u32 %r370; .reg .u16 %r371; .reg .u16 %r372; .reg .u16 %r373; .reg .u32 %r374; .reg .u16 %r375; .reg .pred %r376; .reg .u32 %r377; .reg .pred %r378; .reg .pred %r379; .reg .u32 %r380; .reg .pred %r381; .reg .u32 %r382; .reg .pred %r383; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r388; .reg .pred %r389; .reg .pred %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u16 %r397; .reg .u16 %r398; .reg .u16 %r399; .reg .u32 %r400; .reg .u16 %r401; .reg .pred %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r405; .reg .u32 %r406; .reg .u32 %r407; .reg .u32 %r408; .reg .u16 %r409; .reg .u16 %r410; .reg .u16 %r411; .reg .u32 %r412; .reg .u16 %r413; .reg .pred %r414; .reg .pred %r415; .reg .pred %r416; .reg .u32 %r417; .reg .pred %r418; .reg .u64 %r419; .reg .u32 %r420; .reg .pred %r421; .reg .u32 %r422; .reg .pred %r423; .reg .u64 %r424; .reg .u32 %r425; .reg .pred %r426; .reg .u64 %r427; .reg .u32 %r430; .reg .pred %r431; .reg .u32 %r433; .reg .pred %r434; .reg .pred %r437; .reg .u32 %r440; .reg .pred %r441; .reg .pred %r442; .reg .u32 %r446; .reg .u64 %r447; .reg .u64 %r449; .reg .u64 %r455; .reg .pred %r456; .reg .pred %r457; .reg .u32 %r458; .reg .pred %r459; .reg .pred %r461; .reg .u32 %r464; .reg .pred %r465; .reg .pred %r466; .reg .u64 %r468; .reg .u32 %r470; .reg .pred %r471; .reg .u32 %r474; .reg .pred %r475; .reg .pred %r476; .reg .u64 %r481; .reg .pred %r482; .reg .u64 %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .u32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r499; .reg .pred %r500; .reg .u64 %r504; .reg .pred %r505; .reg .u64 %r506; .reg .u64 %r508; .reg .pred %r509; .reg .u32 %r510; .reg .u32 %r513; .reg .u64 %r514; .reg .u64 %r516; .reg .u64 %r522; .reg .pred %r523; .reg .pred %r524; .reg .u32 %r525; .reg .pred %r526; .reg .u32 %r530; .reg .pred %r531; .reg .pred %r532; .reg .u64 %r537; .reg .pred %r538; .reg .u64 %r542; .reg .pred %r543; .reg .u32 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .pred %r548; .reg .u32 %r551; .reg .u32 %r554; .reg .pred %r555; .reg .pred %r556; .reg .u32 %r558; .reg .pred %r559; .reg .u32 %r560; .reg .pred %r561; .reg .u32 %r564; .reg .u32 %r567; .reg .pred %r568; .reg .pred %r569; .reg .u32 %r571; .reg .pred %r572; .reg .u32 %r573; .reg .u32 %r576; .reg .u64 %r577; .reg .u64 %r579; .reg .u64 %r584; .reg .pred %r585; .reg .pred %r586; .reg .u32 %r587; .reg .pred %r588; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .u32 %r596; .reg .pred %r597; .reg .u32 %r599; .reg .u64 %r600; .reg .pred %r601; .reg .u64 %r602; .reg .u32 %r605; .reg .pred %r606; .reg .pred %r607; .reg .pred %r608; .reg .pred %r609; .reg .u32 %r610; .reg .u32 %r611; .reg .pred %r612; .reg .u64 %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u64 %r616; .reg .pred %r617; .reg .pred %r618; .reg .pred %r619; .reg .pred %r620; .reg .pred %r621; .reg .pred %r622; .reg .pred %r623; .reg .u32 %r624; .reg .pred %r625; .reg .u64 %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .u64 %r629; .reg .pred %r630; .reg .pred %r631; .reg .u32 %r632; .reg .pred %r633; .reg .u32 %r634; .reg .pred %r635; .reg .u32 %r636; .reg .pred %r637; .reg .u64 %r638; .reg .pred %r639; .reg .pred %r640; .reg .u32 %r644; .reg .pred %r645; .reg .u32 %r646; .reg .pred %r647; .reg .pred %r648; .reg .u32 %r652; .reg .u32 %r653; .reg .u32 %r654; .reg .pred %r655; .reg .u32 %r659; .reg .u32 %r660; .reg .pred %r661; .reg .u64 %r665; .reg .u64 %r667; .reg .u64 %r668; .reg .u32 %r669; .reg .pred %r670; .reg .u32 %r671; .reg .pred %r672; .reg .u64 %r673; .reg .u32 %r674; .reg .pred %r675; .reg .u64 %r676; .reg .u32 %r677; .reg .pred %r678; .reg .u64 %r679; .reg .pred %r680; .reg .u64 %r685; .reg .u64 %r690; .reg .u64 %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .u64 %r695; .reg .u32 %r696; .reg .u64 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .u32 %r702; .reg .pred %r703; .reg .pred %r704; .reg .pred %r705; .reg .pred %r706; .reg .pred %r707; .reg .u32 %r708; .reg .u32 %r709; .reg .pred %r710; .reg .pred %r711; .reg .pred %r712; .reg .pred %r713; .reg .pred %r714; .reg .pred %r715; .reg .pred %r716; .reg .pred %r717; .reg .pred %r718; .reg .pred %r719; .reg .pred %r720; .reg .pred %r721; .reg .pred %r722; .reg .pred %r723; .reg .pred %r724; .reg .pred %r725; .reg .u32 %r726; .reg .pred %r727; .reg .pred %r728; .reg .u32 %r729; .reg .pred %r730; .reg .u32 %r731; .reg .pred %r732; .reg .u32 %r733; .reg .u16 %r734; .reg .u32 %r735; .reg .u32 %r736; .reg .u32 %r737; .reg .u32 %r738; .reg .u32 %r739; .reg .u16 %r740; .reg .u16 %r741; .reg .u16 %r742; .reg .u32 %r743; .reg .u16 %r744; .reg .pred %r745; .reg .u32 %r746; .reg .pred %r747; .reg .pred %r749; .reg .u32 %r750; .reg .u16 %r751; .reg .u32 %r752; .reg .u32 %r753; .reg .u32 %r754; .reg .u32 %r756; .reg .u32 %r757; .reg .u16 %r758; .reg .u16 %r759; .reg .u16 %r760; .reg .u32 %r761; .reg .u16 %r762; .reg .pred %r763; .reg .u16 %r765; .reg .u32 %r767; .reg .u16 %r769; .reg .pred %r770; .reg .u32 %r771; .reg .u16 %r772; .reg .u32 %r773; .reg .u32 %r774; .reg .u32 %r775; .reg .u32 %r776; .reg .u32 %r777; .reg .u16 %r778; .reg .u16 %r779; .reg .u16 %r780; .reg .u32 %r781; .reg .u16 %r782; .reg .pred %r783; .reg .u32 %r784; .reg .pred %r785; .reg .u32 %r786; .reg .u16 %r787; .reg .u16 %r788; .reg .u32 %r789; .reg .u16 %r791; .reg .u16 %r793; .reg .pred %r794; .reg .u16 %r795; .reg .u32 %r797; .reg .u16 %r798; .reg .pred %r799; .reg .u16 %r800; .reg .pred %r801; .reg .u16 %r802; .reg .pred %r803; .reg .u32 %r804; .reg .pred %r805; .reg .u32 %r806; .reg .pred %r807; .reg .u32 %r809; .reg .pred %r810; .reg .pred %r811; .reg .u32 %r812; .reg .pred %r813; .reg .pred %r814; .reg .u32 %r818; .reg .pred %r819; .reg .u32 %r821; .reg .pred %r822; .reg .pred %r823; .reg .u32 %r825; .reg .u32 %r827; .reg .pred %r828; .reg .u32 %r829; .reg .pred %r830; .reg .u16 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r835; .reg .pred %r836; .reg .u32 %r838; .reg .u32 %r840; .reg .u32 %r841; .reg .u16 %r842; .reg .u16 %r843; .reg .u16 %r844; .reg .u32 %r845; .reg .u16 %r847; .reg .u16 %r848; .reg .u16 %r849; .reg .u32 %r850; .reg .u16 %r851; .reg .pred %r852; .reg .u32 %r854; .reg .u32 %r856; .reg .pred %r857; .reg .u32 %r858; .reg .pred %r859; .reg .u32 %r860; .reg .pred %r861; .reg .pred %r862; .reg .u32 %r864; .reg .u32 %r866; .reg .pred %r867; .reg .u32 %r868; .reg .pred %r869; .reg .u32 %r873; .reg .u32 %r877; .reg .u32 %r878; .reg .pred %r879; .reg .u32 %r881; .reg .pred %r882; .reg .pred %r883; .reg .pred %r884; .reg .u64 %r887; .reg .u32 %r888; .reg .u64 %r889; .reg .u64 %r890; .reg .pred %r892; .reg .u64 %r894; .reg .u64 %r895; .reg .u32 %r896; .reg .u64 %r900; .reg .f64 %r901; .reg .u64 %r902; .reg .u32 %r903; .reg .pred %r904; .reg .u64 %r905; .reg .u32 %r906; .reg .pred %r907; .reg .pred %r908; .reg .u64 %r909; .reg .f32 %r910; .reg .f32 %r911; .reg .pred %r912; .reg .u16 %r913; .reg .u16 %r914; .reg .pred %r915; .reg .u32 %r920; .reg .u32 %r924; .reg .u32 %r928; .reg .u32 %r932; .reg .u32 %r936; .reg .u32 %r940; .reg .u32 %r944; .reg .u32 %r948; .reg .pred %r949; .reg .pred %r950; .reg .pred %r951; .reg .pred %r952; .reg .pred %r953; .reg .pred %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .pred %r958; .reg .pred %r959; .reg .pred %r960; .reg .u64 %r961; .reg .u64 %r962; .reg .u64 %r963; .reg .u16 %r964; mov.u64 %r304,%ar0; mov.u64 %r305,%ar1; mov.u64 %r306,%ar2; mov.u64 %r307,%ar3; .loc 1 547 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r309,[%value_in]; } .loc 1 547 22 ld.u64 %r310,[%r309]; ld.s8 %r24,[%r310]; .loc 1 553 3 ld.u16 %r312,[%r305+16]; and.b16 %r311,%r312,8192; setp.ne.u16 %r313,%r311,0; @ %r313 bra $L2; .loc 1 551 3 ld.u32 %r25,[%r305+172]; .loc 1 553 3 or.b16 %r314,%r312,8192; st.u16 [%r305+16],%r314; or.b32 %r316,%r25,8192; st.u32 [%r305+172],%r316; $L2: .loc 1 560 15 add.u64 %r211,%r306,4; .loc 1 560 9 ld.u32 %r166,[%r306]; .loc 1 561 10 setp.eq.u32 %r317,%r166,0; @ %r317 bra $L182; mov.u64 %r71,0; mov.u32 %r300,0; mov.u32 %r59,%r300; mov.u32 %r303,%r300; mov.u64 %r56,%r71; .loc 1 1611 8 add.u64 %r961,%frame,1316; .loc 1 1613 17 add.u64 %r962,%frame,1312; .loc 1 1115 8 add.u64 %r963,%frame,1400; bra $L4; $L183: mov.u64 %r179,%r211; bra $L6; $L191: .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L192: mov.u64 %r179,%r211; bra $L6; $L194: mov.u64 %r179,%r211; bra $L6; $L197: mov.u32 %r59,%r274; mov.u64 %r179,%r211; bra $L6; $L199: mov.u64 %r179,%r211; bra $L6; $L209: mov.u64 %r179,%r211; $L6: .loc 1 560 15 add.u64 %r211,%r179,4; .loc 1 560 9 ld.u32 %r166,[%r179]; .loc 1 561 10 setp.eq.u32 %r318,%r166,0; @ %r318 bra $L1; $L4: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r166; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r320,[%value_in]; } mov.u32 %r32,%r320; .loc 1 563 10 setp.eq.u32 %r321,%r32,0; @ %r321 bra $L5; $L7: .loc 1 565 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r324,[%value_in]; } .loc 1 565 46 setp.eq.u32 %r325,%r324,-1; @ %r325 bra $L183; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r324; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r327,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r328,%r327,0; @ %r328 bra $L7; bra $L400; $L5: .loc 1 571 10 setp.ne.u32 %r329,%r166,37; @ %r329 bra $L9; .loc 1 586 11 ld.u32 %r215,[%r211]; .loc 1 574 13 mov.u32 %r175,%r32; .loc 1 586 11 mov.u64 %r29,%r211; .loc 1 573 13 mov.u64 %r34,0; bra $L10; $L401: .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 606 10 mov.u32 %r175,16; .loc 1 612 8 mov.u64 %r34,0; $L10: .loc 1 586 15 add.u64 %r211,%r29,4; .loc 1 588 7 setp.eq.u32 %r330,%r215,104; @ %r330 bra $L11; setp.gt.s32 %r331,%r215,104; @ %r331 bra $L12; setp.eq.u32 %r332,%r215,76; @ %r332 bra $L13; setp.gt.s32 %r333,%r215,76; @ %r333 bra $L14; setp.eq.u32 %r334,%r215,42; @ %r334 bra $L15; setp.gt.s32 %r335,%r215,42; @ %r335 bra $L16; setp.eq.u32 %r336,%r215,37; @ %r336 bra $L9; bra $L1; $L16: setp.gt.s32 %r337,%r215,57; @ %r337 bra $L17; setp.gt.s32 %r338,%r215,47; @ %r338 bra $L18; bra $L1; $L17: and.b32 %r339,%r215,-3; setp.eq.u32 %r340,%r339,69; @ ! %r340 bra $L1; bra $L184; $L14: setp.eq.u32 %r341,%r215,99; @ %r341 bra $L20; setp.gt.s32 %r342,%r215,99; @ %r342 bra $L21; setp.eq.u32 %r343,%r215,88; @ %r343 bra $L22; setp.eq.u32 %r344,%r215,91; @ %r344 bra $L23; bra $L1; $L21: setp.ne.u32 %r345,%r215,100; @ %r345 bra $L185; .loc 1 725 9 mov.u64 %r71,_wcstol_r; .loc 1 726 9 mov.u32 %r300,10; .loc 1 724 6 mov.u32 %r202,3; bra $L47; $L12: .loc 1 588 7 setp.eq.u32 %r346,%r215,111; @ %r346 bra $L186; setp.gt.s32 %r347,%r215,111; @ %r347 bra $L25; setp.eq.u32 %r348,%r215,108; @ %r348 bra $L26; setp.eq.u32 %r349,%r215,110; @ %r349 bra $L27; setp.eq.u32 %r350,%r215,105; @ %r350 bra $L187; bra $L1; $L25: setp.eq.u32 %r351,%r215,115; @ %r351 bra $L188; setp.gt.s32 %r352,%r215,115; @ %r352 bra $L28; setp.eq.u32 %r353,%r215,112; @ %r353 bra $L29; bra $L1; $L28: setp.eq.u32 %r354,%r215,117; @ %r354 bra $L189; setp.eq.u32 %r355,%r215,120; @ %r355 bra $L22; bra $L1; $L9: .loc 1 592 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r358,[%value_in]; } .loc 1 592 7 setp.eq.u32 %r359,%r358,-1; @ %r359 bra $L32; .loc 1 594 7 setp.eq.u32 %r360,%r166,%r358; @ %r360 bra $L31; .loc 1 596 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r358; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r364,[%value_in]; } .loc 1 597 8 bra $L32; $L31: .loc 1 599 9 add.u32 %r59,%r59,1; .loc 1 600 4 mov.u64 %r179,%r211; bra $L6; $L15: .loc 1 603 7 set.u32.ne.u32 %r366,%r175,0; neg.s32 %r367,%r366; mov.u32 %r365,%r367; .loc 1 604 8 set.u32.ne.u64 %r369,%r34,0; neg.s32 %r370,%r369; mov.u32 %r368,%r370; cvt.u16.u8 %r964,%r365; mov.u16 %r372,%r964; cvt.u16.u8 %r964,%r368; mov.u16 %r373,%r964; or.b16 %r371,%r372,%r373; cvt.u32.u16 %r374,%r371; cvt.u16.u8 %r375,%r374; setp.ne.u16 %r376,%r375,0; @ ! %r376 bra $L401; bra $L1; $L26: .loc 1 609 14 and.b32 %r377,%r175,15; .loc 1 609 7 setp.ne.u32 %r378,%r377,0; @ %r378 bra $L1; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 612 7 setp.ne.u32 %r379,%r215,108; @ %r379 bra $L34; .loc 1 615 14 or.b32 %r175,%r175,2; .loc 1 789 8 ld.u32 %r215,[%r29+8]; .loc 1 614 8 add.u64 %r29,%r29,8; bra $L10; $L34: .loc 1 619 12 or.b32 %r175,%r175,1; .loc 1 586 15 mov.u64 %r29,%r211; bra $L10; $L13: .loc 1 622 14 and.b32 %r380,%r175,15; .loc 1 622 7 setp.ne.u32 %r381,%r380,0; @ %r381 bra $L1; .loc 1 624 10 or.b32 %r175,%r175,2; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 625 4 bra $L10; $L11: .loc 1 637 12 or.b32 %r175,%r175,4; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 638 4 bra $L10; $L18: .loc 1 703 14 and.b32 %r382,%r175,143; .loc 1 703 7 setp.ne.u32 %r383,%r382,0; @ %r383 bra $L1; .loc 1 705 18 shl.b64 %r385,%r34,2; add.u64 %r386,%r385,%r34; add.u64 %r387,%r386,%r386; add.u64 %r280,%r387,-48; .loc 1 705 23 cvt.s64.s32 %r388,%r215; .loc 1 705 10 add.u64 %r34,%r388,%r280; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 706 4 bra $L10; $L22: .loc 1 749 10 or.b32 %r175,%r175,512; .loc 1 751 9 mov.u64 %r71,_wcstoul_r; .loc 1 752 9 mov.u32 %r32,16; .loc 1 753 4 bra $L24; $L23: .loc 1 781 8 ld.u32 %r41,[%r29+4]; .loc 1 781 7 setp.ne.u32 %r389,%r41,94; @ %r389 bra $L36; .loc 1 784 8 add.u64 %r211,%r29,8; .loc 1 789 8 ld.u32 %r41,[%r29+8]; .loc 1 783 17 mov.u32 %r32,1; $L36: .loc 1 789 7 setp.ne.u32 %r390,%r41,93; @ %r390 bra $L190; .loc 1 790 9 add.u64 %r221,%r211,4; .loc 1 791 11 ld.u32 %r41,[%r211+4]; bra $L37; $L190: mov.u64 %r221,%r211; $L37: .loc 1 791 24 set.u32.ne.u32 %r392,%r41,93; neg.s32 %r393,%r392; mov.u32 %r391,%r393; set.u32.ne.u32 %r395,%r41,0; neg.s32 %r396,%r395; mov.u32 %r394,%r396; cvt.u16.u8 %r964,%r391; mov.u16 %r398,%r964; cvt.u16.u8 %r964,%r394; mov.u16 %r399,%r964; and.b16 %r397,%r398,%r399; cvt.u32.u16 %r400,%r397; cvt.u16.u8 %r401,%r400; setp.eq.u16 %r402,%r401,0; @ %r402 bra $L38; $L39: .loc 1 792 9 add.u64 %r221,%r221,4; .loc 1 791 11 ld.u32 %r218,[%r221]; .loc 1 791 24 set.u32.ne.u32 %r404,%r218,0; neg.s32 %r405,%r404; mov.u32 %r403,%r405; set.u32.ne.u32 %r407,%r218,93; neg.s32 %r408,%r407; mov.u32 %r406,%r408; cvt.u16.u8 %r964,%r403; mov.u16 %r410,%r964; cvt.u16.u8 %r964,%r406; mov.u16 %r411,%r964; and.b16 %r409,%r410,%r411; cvt.u32.u16 %r412,%r409; cvt.u16.u8 %r413,%r412; setp.ne.u16 %r414,%r413,0; @ %r414 bra $L39; $L38: .loc 1 794 7 add.u64 %r179,%r221,4; .loc 1 965 7 setp.eq.u64 %r415,%r34,0; .loc 1 966 12 selp.u64 %r34,-1,%r34,%r415; .loc 1 991 27 sub.u64 %r468,%r221,%r211; shr.s64 %r170,%r468,2; .loc 1 968 27 and.b32 %r470,%r175,17; .loc 1 968 7 setp.eq.u32 %r471,%r470,17; @ ! %r471 bra $L402; bra $L195; $L20: max.u64 %r169,%r34,1; and.b32 %r260,%r175,1; and.b32 %r284,%r175,16; .loc 1 879 14 setp.ne.u32 %r416,%r260,0; @ %r416 bra $L42; bra $L403; $L29: .loc 1 811 10 or.b32 %r175,%r175,544; .loc 1 813 9 mov.u64 %r71,_wcstoul_r; .loc 1 814 9 mov.u32 %r32,16; .loc 1 815 4 bra $L24; $L27: .loc 1 818 14 and.b32 %r417,%r175,16; .loc 1 818 7 setp.ne.u32 %r418,%r417,0; @ %r418 bra $L191; .loc 1 830 11 add.u64 %r419,%r307,7; and.b64 %r197,%r419,-8; ld.u64 %r54,[%r197]; add.u64 %r307,%r197,8; .loc 1 828 14 and.b32 %r420,%r175,4; .loc 1 828 7 setp.eq.u32 %r421,%r420,0; @ %r421 bra $L44; .loc 1 831 12 st.u16 [%r54],%r59; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L44: .loc 1 833 19 and.b32 %r422,%r175,1; .loc 1 833 12 setp.eq.u32 %r423,%r422,0; @ %r423 bra $L45; .loc 1 836 12 cvt.s64.s32 %r424,%r59; st.u64 [%r54],%r424; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L45: .loc 1 839 19 and.b32 %r425,%r175,2; .loc 1 839 12 setp.eq.u32 %r426,%r425,0; @ %r426 bra $L46; .loc 1 842 13 cvt.s64.s32 %r427,%r59; st.u64 [%r54],%r427; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L46: .loc 1 848 12 st.u32 [%r54],%r59; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L184: .loc 1 766 6 mov.u32 %r202,4; bra $L47; $L185: mov.u32 %r202,4; bra $L47; $L188: .loc 1 588 7 mov.u32 %r202,2; bra $L47; $L48: .loc 1 863 11 add.u32 %r59,%r59,1; $L47: .loc 1 862 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r430,[%value_in]; } .loc 1 862 47 setp.eq.u32 %r431,%r430,-1; @ %r431 bra $L32; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r430; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r433,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r434,%r433,0; @ %r434 bra $L48; bra $L404; $L42: .loc 1 887 11 setp.ne.u32 %r955,%r284,0; @ %r955 bra $L50; .loc 1 894 5 add.u64 %r296,%r307,7; and.b64 %r295,%r296,-8; add.u64 %r307,%r295,8; ld.u64 %r56,[%r295]; $L50: .loc 1 904 11 mov.u64 %r286,0; bra $L51; $L54: .loc 1 898 8 @ %r955 bra $L52; .loc 1 904 14 st.u32 [%r56],%r440; .loc 1 904 11 add.u64 %r56,%r56,4; $L52: add.u32 %r270,%r270,1; .loc 1 896 28 add.u64 %r286,%r286,1; setp.eq.u64 %r437,%r169,%r286; @ %r437 bra $L53; $L51: cvt.u32.u64 %r270,%r286; .loc 1 896 37 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r440,[%value_in]; } .loc 1 896 28 setp.ne.u32 %r441,%r440,-1; @ %r441 bra $L54; .loc 1 908 11 setp.eq.u32 %r442,%r270,0; @ %r442 bra $L32; $L53: .loc 1 910 14 add.u32 %r59,%r59,%r270; .loc 1 914 11 @ %r955 bra $L192; .loc 1 915 12 add.u32 %r303,%r303,1; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L403: .loc 1 925 11 setp.ne.u32 %r955,%r284,0; @ %r955 bra $L193; .loc 1 932 7 add.u64 %r201,%r307,7; and.b64 %r182,%r201,-8; add.u64 %r307,%r182,8; ld.u64 %r181,[%r182]; bra $L55; $L193: .loc 1 926 7 add.u64 %r181,%frame,1408; $L55: .loc 1 934 8 mov.u64 %r447,8; mov.u32 %r446,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r963; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r446; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r447; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r449,[%value_in]; } bra $L56; $L61: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r181; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r464; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r963; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r455,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r456,%r455,-1; @ %r456 bra $L32; .loc 1 941 8 setp.ne.u64 %r457,%r455,0; @ %r457 bra $L57; .loc 1 941 20 ld.u32 %r458,[%frame+1400]; setp.eq.u32 %r459,%r458,-4; @ %r459 bra $L58; $L57: .loc 1 942 12 add.u64 %r169,%r169,-1; $L58: .loc 1 943 8 @ %r955 bra $L59; .loc 1 948 13 add.u64 %r181,%r181,%r455; $L59: .loc 1 950 6 add.u32 %r260,%r260,1; .loc 1 935 26 setp.eq.u64 %r461,%r169,0; @ %r461 bra $L60; $L56: .loc 1 935 35 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r464,[%value_in]; } .loc 1 935 26 setp.ne.u32 %r465,%r464,-1; @ %r465 bra $L61; .loc 1 952 11 setp.eq.u32 %r466,%r260,0; @ %r466 bra $L32; $L60: .loc 1 954 14 add.u32 %r59,%r59,%r260; .loc 1 958 11 @ %r955 bra $L194; .loc 1 959 12 add.u32 %r303,%r303,1; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L67: add.u64 %r216,%r216,1; bra $L62; $L195: mov.u64 %r216,0; .loc 1 972 24 setp.eq.u32 %r958,%r32,0; $L62: cvt.u32.u64 %r174,%r216; .loc 1 971 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r474,[%value_in]; } .loc 1 972 24 setp.eq.u32 %r475,%r474,-1; @ %r475 bra $L64; .loc 1 972 8 setp.eq.u64 %r476,%r34,%r216; @ %r476 bra $L65; .loc 1 972 24 @ %r958 bra $L66; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r481,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r482,%r481,0; @ %r482 bra $L67; bra $L65; $L66: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r486,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r487,%r486,0; @ %r487 bra $L67; bra $L65; $L64: .loc 1 976 11 setp.eq.u32 %r488,%r174,0; @ ! %r488 bra $L68; bra $L1; $L402: and.b32 %r174,%r175,1; .loc 1 979 12 setp.eq.u32 %r489,%r174,0; @ %r489 bra $L69; .loc 1 989 10 add.u64 %r299,%r307,7; and.b64 %r298,%r299,-8; add.u64 %r307,%r298,8; ld.u64 %r254,[%r298]; mov.u64 %r42,%r254; .loc 1 991 24 setp.eq.u32 %r959,%r32,0; .loc 1 990 14 bra $L70; $L74: .loc 1 993 10 st.u32 [%r42],%r492; add.u64 %r34,%r34,-1; add.u64 %r42,%r42,4; $L70: mov.u64 %r56,%r42; .loc 1 990 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r492,[%value_in]; } .loc 1 991 24 setp.eq.u32 %r493,%r492,-1; @ %r493 bra $L71; .loc 1 991 8 setp.eq.u64 %r494,%r34,0; @ %r494 bra $L72; .loc 1 991 24 @ %r959 bra $L73; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r492; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r499,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r500,%r499,0; @ %r500 bra $L74; bra $L72; $L73: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r492; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r504,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r505,%r504,0; @ %r505 bra $L74; bra $L72; $L71: .loc 1 1000 14 sub.u64 %r506,%r42,%r254; shr.s64 %r508,%r506,2; .loc 1 1000 10 cvt.u32.u64 %r174,%r508; .loc 1 1001 11 setp.eq.u32 %r509,%r174,0; @ %r509 bra $L1; .loc 1 1003 11 mov.u32 %r510,0; st.u32 [%r42],%r510; .loc 1 1007 17 add.u32 %r303,%r303,1; bra $L68; $L69: and.b32 %r82,%r175,16; .loc 1 1017 11 setp.ne.u32 %r952,%r82,0; @ %r952 bra $L196; .loc 1 1024 7 add.u64 %r203,%r307,7; and.b64 %r180,%r203,-8; add.u64 %r307,%r180,8; ld.u64 %r183,[%r180]; bra $L75; $L196: .loc 1 1018 7 add.u64 %r183,%frame,1408; $L75: .loc 1 1026 8 mov.u64 %r514,8; mov.u32 %r513,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r963; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r513; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r514; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r516,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r960,%r32,0; .loc 1 1027 14 bra $L76; $L83: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r183; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r530; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r963; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r522,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r523,%r522,-1; @ %r523 bra $L32; .loc 1 1034 8 setp.ne.u64 %r524,%r522,0; @ %r524 bra $L77; .loc 1 1034 20 ld.u32 %r525,[%frame+1400]; setp.eq.u32 %r526,%r525,-4; @ %r526 bra $L78; $L77: .loc 1 1035 12 add.u64 %r34,%r34,-1; $L78: .loc 1 1036 8 @ %r952 bra $L79; .loc 1 1038 13 add.u64 %r183,%r183,%r522; $L79: .loc 1 1043 6 add.u32 %r174,%r174,1; $L76: .loc 1 1027 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r530,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r531,%r530,-1; @ %r531 bra $L80; .loc 1 1028 8 setp.eq.u64 %r532,%r34,0; @ %r532 bra $L81; .loc 1 1028 22 @ %r960 bra $L82; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r530; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r537,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r538,%r537,0; @ %r538 bra $L83; bra $L81; $L82: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r530; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r542,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r543,%r542,0; @ %r543 bra $L83; bra $L81; $L80: .loc 1 1047 11 @ %r952 bra $L68; .loc 1 1049 10 mov.u32 %r545,0; st.u8 [%r183],%r545; .loc 1 1053 14 add.u32 %r303,%r303,1; $L68: .loc 1 1056 10 add.u32 %r59,%r59,%r174; .loc 1 1057 4 bra $L6; $L179: .loc 1 1061 7 setp.ne.u64 %r546,%r34,0; .loc 1 1062 19 selp.u64 %r34,%r34,-1,%r546; .loc 1 1063 27 and.b32 %r547,%r175,17; .loc 1 1063 7 setp.ne.u32 %r548,%r547,17; @ %r548 bra $L85; mov.u64 %r268,%r34; cvt.u32.u64 %r956,%r268; $L87: cvt.u32.u64 %r551,%r268; vsub.u32.u32.u32.add %r274,%r59,%r551,%r956; .loc 1 1065 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r554,[%value_in]; } .loc 1 1066 24 setp.eq.u32 %r555,%r554,-1; @ %r555 bra $L197; .loc 1 1066 8 setp.eq.u64 %r556,%r268,0; @ %r556 bra $L86; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r554; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r558,[%value_in]; } .loc 1 1066 24 add.u64 %r268,%r268,-1; setp.eq.u32 %r559,%r558,0; @ %r559 bra $L87; bra $L86; $L85: .loc 1 1071 19 and.b32 %r560,%r175,1; .loc 1 1071 12 setp.eq.u32 %r561,%r560,0; @ %r561 bra $L88; .loc 1 1081 10 add.u64 %r292,%r307,7; and.b64 %r291,%r292,-8; add.u64 %r307,%r291,8; ld.u64 %r168,[%r291]; .loc 1 1082 14 mov.u64 %r172,%r34; cvt.u32.u64 %r956,%r172; bra $L89; $L92: .loc 1 1085 10 st.u32 [%r168],%r567; add.u64 %r168,%r168,4; $L89: cvt.u32.u64 %r564,%r172; vsub.u32.u32.u32.add %r214,%r59,%r564,%r956; mov.u64 %r56,%r168; .loc 1 1082 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r567,[%value_in]; } .loc 1 1083 24 setp.eq.u32 %r568,%r567,-1; @ %r568 bra $L90; .loc 1 1083 8 setp.eq.u64 %r569,%r172,0; @ %r569 bra $L91; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r567; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r571,[%value_in]; } .loc 1 1083 24 add.u64 %r172,%r172,-1; setp.eq.u32 %r572,%r571,0; @ %r572 bra $L92; bra $L91; $L90: .loc 1 1093 11 mov.u32 %r573,0; st.u32 [%r168],%r573; .loc 1 1097 17 add.u32 %r303,%r303,1; mov.u32 %r59,%r214; mov.u64 %r179,%r211; bra $L6; $L88: .loc 1 1107 18 and.b32 %r79,%r175,16; .loc 1 1107 11 setp.ne.u32 %r951,%r79,0; @ %r951 bra $L198; .loc 1 1114 7 add.u64 %r294,%r307,7; and.b64 %r293,%r294,-8; add.u64 %r307,%r293,8; ld.u64 %r184,[%r293]; bra $L93; $L198: .loc 1 1108 7 add.u64 %r184,%frame,1408; $L93: .loc 1 1115 8 mov.u64 %r577,8; mov.u32 %r576,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r963; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r576; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r577; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r579,[%value_in]; } .loc 1 1116 14 bra $L94; $L100: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r184; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r592; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r963; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r584,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r585,%r584,-1; @ %r585 bra $L32; .loc 1 1123 8 setp.ne.u64 %r586,%r584,0; @ %r586 bra $L95; .loc 1 1123 20 ld.u32 %r587,[%frame+1400]; setp.eq.u32 %r588,%r587,-4; @ %r588 bra $L96; $L95: .loc 1 1124 12 add.u64 %r34,%r34,-1; $L96: .loc 1 1125 8 @ %r951 bra $L97; .loc 1 1127 13 add.u64 %r184,%r184,%r584; $L97: .loc 1 1132 10 add.u32 %r59,%r59,1; $L94: .loc 1 1116 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r592,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r593,%r592,-1; @ %r593 bra $L98; .loc 1 1117 8 setp.eq.u64 %r594,%r34,0; @ %r594 bra $L99; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r592; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r596,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r597,%r596,0; @ %r597 bra $L100; bra $L99; $L98: .loc 1 1136 11 @ %r951 bra $L199; .loc 1 1138 10 mov.u32 %r599,0; st.u8 [%r184],%r599; .loc 1 1142 14 add.u32 %r303,%r303,1; mov.u64 %r179,%r211; bra $L6; $L180: .loc 1 1150 19 add.u64 %r600,%r34,-1; .loc 1 1150 7 setp.le.u64 %r601,%r600,348; .loc 1 1151 12 selp.u64 %r34,%r34,349,%r601; .loc 1 1152 10 or.b32 %r176,%r175,1408; mov.u64 %r106,%frame; shl.b64 %r602,%r34,2; add.u64 %r189,%r602,%frame; $L118: mov.u64 %r56,%r106; .loc 1 1155 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r605,[%value_in]; } setp.gt.u32 %r606,%r605,57; @ %r606 bra $L102; setp.gt.u32 %r607,%r605,55; @ %r607 bra $L103; setp.eq.u32 %r608,%r605,48; @ %r608 bra $L104; setp.gt.u32 %r609,%r605,48; @ %r609 bra $L105; add.u32 %r610,%r605,-43; and.b32 %r611,%r610,-3; setp.eq.u32 %r612,%r611,0; @ ! %r612 bra $L107; bra $L106; $L105: .loc 1 1191 19 cvta.const.u64 %r613,basefix$0; cvt.s64.s32 %r614,%r300; add.u64 %r615,%r614,%r614; add.u64 %r616,%r613,%r615; ld.s16 %r300,[%r616]; .loc 1 1192 11 and.b32 %r176,%r176,-897; .loc 1 1193 5 bra $L108; $L102: setp.gt.u32 %r617,%r605,102; @ %r617 bra $L109; setp.gt.u32 %r618,%r605,96; @ %r618 bra $L110; setp.gt.u32 %r619,%r605,70; @ %r619 bra $L111; setp.gt.u32 %r620,%r605,64; @ ! %r620 bra $L107; bra $L110; $L111: setp.eq.u32 %r621,%r605,88; @ %r621 bra $L112; bra $L107; $L109: setp.eq.u32 %r622,%r605,120; @ %r622 bra $L112; bra $L405; $L104: .loc 1 1172 8 setp.ne.u32 %r623,%r300,0; @ %r623 bra $L114; .loc 1 1175 15 or.b32 %r176,%r176,512; .loc 1 1174 14 mov.u32 %r300,8; $L114: .loc 1 1177 15 and.b32 %r624,%r176,1024; .loc 1 1177 8 setp.eq.u32 %r625,%r624,0; @ %r625 bra $L115; .loc 1 1178 13 and.b32 %r176,%r176,-1409; bra $L108; $L115: .loc 1 1180 13 and.b32 %r176,%r176,-897; bra $L108; $L103: .loc 1 1198 19 cvta.const.u64 %r626,basefix$0; cvt.s64.s32 %r627,%r300; add.u64 %r628,%r627,%r627; add.u64 %r629,%r626,%r628; ld.s16 %r300,[%r629]; .loc 1 1199 8 setp.le.s32 %r630,%r300,8; @ %r630 bra $L107; .loc 1 1201 11 and.b32 %r176,%r176,-897; .loc 1 1202 5 bra $L108; $L110: .loc 1 1218 8 setp.le.s32 %r631,%r300,10; @ %r631 bra $L107; .loc 1 1220 11 and.b32 %r176,%r176,-897; .loc 1 1221 5 bra $L108; $L106: .loc 1 1226 15 and.b32 %r632,%r176,128; .loc 1 1226 8 setp.eq.u32 %r633,%r632,0; @ %r633 bra $L107; .loc 1 1228 15 and.b32 %r237,%r176,-129; .loc 1 1229 15 or.b32 %r176,%r237,65536; .loc 1 1230 9 bra $L108; $L112: .loc 1 1237 16 and.b32 %r634,%r176,512; .loc 1 1237 8 setp.eq.u32 %r635,%r634,0; @ %r635 bra $L107; .loc 1 1237 52 and.b32 %r636,%r176,65536; .loc 1 1237 41 setp.ne.u32 %r637,%r636,0; selp.u64 %r198,8,4,%r637; add.u64 %r638,%frame,%r198; .loc 1 1237 25 setp.ne.u64 %r639,%r106,%r638; @ %r639 bra $L107; .loc 1 1240 15 and.b32 %r176,%r176,-513; .loc 1 1239 14 mov.u32 %r300,16; .loc 1 1241 9 bra $L108; $L405: .loc 1 1250 11 setp.eq.u32 %r640,%r605,-1; @ %r640 bra $L117; $L107: .loc 1 1251 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r605; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r644,[%value_in]; } bra $L117; $L108: add.u64 %r106,%r106,4; .loc 1 1257 13 st.u32 [%r56],%r605; .loc 1 1153 18 setp.ne.u64 %r645,%r106,%r189; @ %r645 bra $L118; .loc 1 1257 10 mov.u64 %r56,%r106; $L117: .loc 1 1267 14 and.b32 %r646,%r176,256; .loc 1 1267 7 setp.eq.u32 %r647,%r646,0; @ %r647 bra $L119; .loc 1 1269 11 setp.ge.u64 %r648,%frame,%r106; @ %r648 bra $L1; .loc 1 1270 3 ld.u32 %r652,[%r106+-4]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r652; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r653,[%value_in]; } bra $L1; $L119: .loc 1 1273 9 ld.u32 %r96,[%r106+-4]; .loc 1 1274 23 and.b32 %r654,%r96,-33; .loc 1 1274 7 setp.ne.u32 %r655,%r654,88; @ %r655 bra $L120; .loc 1 1276 8 add.u64 %r56,%r106,-4; .loc 1 1277 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r96; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r659,[%value_in]; } $L120: .loc 1 1279 15 and.b32 %r660,%r176,16; .loc 1 1279 7 setp.ne.u32 %r661,%r660,0; @ %r661 bra $L121; .loc 1 1283 11 st.u32 [%r56],%r660; .loc 1 1284 15 mov.u64 %r665,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r665; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; call (%value_in),%r71,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r667,[%value_in]; } .loc 1 830 11 add.u64 %r668,%r307,7; and.b64 %r301,%r668,-8; add.u64 %r307,%r301,8; .loc 1 1285 18 and.b32 %r669,%r176,32; .loc 1 1285 11 setp.eq.u32 %r670,%r669,0; @ %r670 bra $L122; .loc 1 1287 12 ld.u64 %r245,[%r301]; .loc 1 1297 11 st.u64 [%r245],%r667; bra $L123; $L122: .loc 1 1306 23 and.b32 %r671,%r176,4; .loc 1 1306 16 setp.eq.u32 %r672,%r671,0; @ %r672 bra $L124; .loc 1 1309 9 ld.u64 %r673,[%r301]; st.u16 [%r673],%r667; bra $L123; $L124: .loc 1 1311 23 and.b32 %r674,%r176,1; .loc 1 1311 16 setp.eq.u32 %r675,%r674,0; @ %r675 bra $L125; .loc 1 1314 9 ld.u64 %r676,[%r301]; st.u64 [%r676],%r667; bra $L123; $L125: .loc 1 1317 23 and.b32 %r677,%r176,2; .loc 1 1317 16 setp.eq.u32 %r678,%r677,0; @ %r678 bra $L126; .loc 1 1320 8 mov.u64 %r679,_wcstoul_r; setp.ne.u64 %r680,%r71,%r679; @ %r680 bra $L127; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r665; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r685,[%value_in]; } .loc 1 1325 10 mov.u64 %r105,%r685; bra $L128; $L127: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r665; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r690,[%value_in]; } mov.u64 %r105,%r690; $L128: .loc 1 1325 10 ld.u64 %r691,[%r301]; st.u64 [%r691],%r105; bra $L123; $L126: .loc 1 1331 9 ld.u64 %r692,[%r301]; st.u32 [%r692],%r667; $L123: .loc 1 1333 17 add.u32 %r303,%r303,1; $L121: .loc 1 1335 15 sub.u64 %r693,%r56,%frame; shr.s64 %r695,%r693,2; .loc 1 1335 10 cvt.u32.u64 %r696,%r695; add.u32 %r59,%r696,%r59; .loc 1 1336 4 mov.u64 %r179,%r211; bra $L6; $L412: .loc 1 1356 14 add.u64 %r697,%r34,-1; .loc 1 1356 7 setp.le.u64 %r698,%r697,348; @ %r698 bra $L201; .loc 1 1359 27 cvt.u32.u64 %r699,%r34; .loc 1 1359 19 add.u32 %r194,%r699,-349; .loc 1 1360 14 mov.u64 %r34,349; bra $L129; $L201: .loc 1 1349 13 mov.u32 %r194,%r433; $L129: .loc 1 1362 10 or.b32 %r177,%r175,1920; add.u32 %r231,%r59,1; .loc 1 1351 9 mov.u32 %r196,0; .loc 1 1350 9 mov.u32 %r195,%r196; .loc 1 1348 13 mov.u64 %r191,0; .loc 1 1364 15 mov.u64 %r188,%r191; .loc 1 1363 11 mov.u64 %r187,%r191; .loc 1 1346 9 mov.u64 %r186,%r191; .loc 1 1365 11 mov.u64 %r56,%frame; $L157: add.u32 %r59,%r231,-1; .loc 1 1367 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r702,[%value_in]; } setp.eq.u32 %r703,%r702,84; @ %r703 bra $L130; setp.gt.u32 %r704,%r702,84; @ %r704 bra $L131; setp.gt.u32 %r705,%r702,57; @ %r705 bra $L132; setp.gt.u32 %r706,%r702,48; @ %r706 bra $L133; setp.eq.u32 %r707,%r702,48; @ %r707 bra $L134; add.u32 %r708,%r702,-43; and.b32 %r709,%r708,-3; setp.eq.u32 %r710,%r709,0; @ ! %r710 bra $L136; bra $L135; $L132: setp.eq.u32 %r711,%r702,70; @ %r711 bra $L137; setp.gt.u32 %r712,%r702,70; @ %r712 bra $L138; setp.eq.u32 %r713,%r702,65; @ %r713 bra $L139; setp.eq.u32 %r714,%r702,69; @ %r714 bra $L140; bra $L136; $L138: setp.eq.u32 %r715,%r702,78; @ %r715 bra $L141; bra $L136; $L131: setp.eq.u32 %r716,%r702,105; @ %r716 bra $L142; setp.gt.u32 %r717,%r702,105; @ %r717 bra $L143; setp.eq.u32 %r718,%r702,101; @ %r718 bra $L140; setp.gt.u32 %r719,%r702,101; @ %r719 bra $L144; setp.eq.u32 %r720,%r702,89; @ %r720 bra $L145; setp.eq.u32 %r721,%r702,97; @ %r721 bra $L139; bra $L136; $L144: setp.eq.u32 %r722,%r702,102; @ %r722 bra $L137; bra $L136; $L143: setp.eq.u32 %r723,%r702,116; @ %r723 bra $L130; setp.eq.u32 %r724,%r702,121; @ %r724 bra $L145; setp.eq.u32 %r725,%r702,110; @ %r725 bra $L141; bra $L136; $L134: .loc 1 1375 15 and.b32 %r726,%r177,256; .loc 1 1375 8 setp.eq.u32 %r727,%r726,0; @ %r727 bra $L133; .loc 1 1377 15 and.b32 %r177,%r177,-129; .loc 1 1378 15 add.u64 %r187,%r187,1; .loc 1 1379 12 setp.eq.u32 %r728,%r194,0; @ %r728 bra $L146; .loc 1 1381 16 add.u32 %r194,%r194,-1; bra $L147; $L133: .loc 1 1396 18 add.u32 %r729,%r195,%r196; .loc 1 1396 8 setp.ne.u32 %r730,%r729,0; @ ! %r730 bra $L406; setp.eq.u64 %r953,%r187,0; bra $L148; $L406: .loc 1 1398 15 and.b32 %r177,%r177,-385; .loc 1 1399 9 bra $L149; $L135: .loc 1 1405 15 and.b32 %r731,%r177,128; .loc 1 1405 8 setp.eq.u32 %r732,%r731,0; @ ! %r732 bra $L407; setp.eq.u64 %r953,%r187,0; bra $L148; $L407: .loc 1 1407 15 and.b32 %r177,%r177,-129; .loc 1 1408 9 bra $L149; $L141: .loc 1 1413 18 cvt.u16.u32 %r734,%r195; set.u32.eq.u16 %r735,%r734,0; neg.s32 %r736,%r735; mov.u32 %r733,%r736; .loc 1 1413 33 set.u32.eq.u64 %r738,%r187,0; neg.s32 %r739,%r738; mov.u32 %r737,%r739; .loc 1 1413 23 cvt.u16.u8 %r964,%r733; mov.u16 %r741,%r964; cvt.u16.u8 %r964,%r737; mov.u16 %r742,%r964; and.b16 %r740,%r741,%r742; cvt.u32.u16 %r743,%r740; .loc 1 1413 8 cvt.u16.u8 %r744,%r743; setp.eq.u16 %r745,%r744,0; @ %r745 bra $L150; .loc 1 1414 19 and.b32 %r746,%r177,1792; .loc 1 1414 9 setp.ne.u32 %r747,%r746,1792; @ %r747 bra $L151; .loc 1 1417 15 and.b32 %r177,%r177,-1921; .loc 1 1418 18 mov.u32 %r195,1; .loc 1 1419 9 mov.u64 %r187,0; bra $L149; $L150: .loc 1 1421 8 setp.eq.u16 %r749,%r734,2; @ %r749 bra $L202; $L151: .loc 1 1426 18 cvt.u16.u32 %r751,%r196; set.u32.eq.u16 %r752,%r751,1; neg.s32 %r753,%r752; mov.u32 %r750,%r753; .loc 1 1426 35 set.u32.eq.u16 %r756,%r751,4; neg.s32 %r757,%r756; mov.u32 %r754,%r757; .loc 1 1426 23 cvt.u16.u8 %r964,%r750; mov.u16 %r759,%r964; cvt.u16.u8 %r964,%r754; mov.u16 %r760,%r964; or.b16 %r758,%r759,%r760; cvt.u32.u16 %r761,%r758; .loc 1 1426 8 cvt.u16.u8 %r762,%r761; setp.eq.u16 %r763,%r762,0; @ ! %r763 bra $L408; setp.eq.u64 %r953,%r187,0; bra $L148; $L408: .loc 1 1428 17 add.u16 %r765,%r751,1; cvt.u32.u16 %r767,%r765; cvt.s32.s8 %r196,%r767; .loc 1 1429 9 bra $L149; $L139: .loc 1 1434 8 cvt.u16.u32 %r769,%r195; setp.eq.u16 %r770,%r769,1; @ %r770 bra $L203; setp.eq.u64 %r953,%r187,0; bra $L148; $L142: .loc 1 1441 18 cvt.u16.u32 %r772,%r196; set.u32.eq.u16 %r773,%r772,0; neg.s32 %r774,%r773; mov.u32 %r771,%r774; .loc 1 1441 33 set.u32.eq.u64 %r776,%r187,0; neg.s32 %r777,%r776; mov.u32 %r775,%r777; .loc 1 1441 23 cvt.u16.u8 %r964,%r771; mov.u16 %r779,%r964; cvt.u16.u8 %r964,%r775; mov.u16 %r780,%r964; and.b16 %r778,%r779,%r780; cvt.u32.u16 %r781,%r778; .loc 1 1441 8 cvt.u16.u8 %r782,%r781; setp.eq.u16 %r783,%r782,0; @ %r783 bra $L152; .loc 1 1442 19 and.b32 %r784,%r177,1792; .loc 1 1442 9 setp.ne.u32 %r785,%r784,1792; @ %r785 bra $L204; .loc 1 1445 15 and.b32 %r177,%r177,-1921; .loc 1 1446 18 mov.u32 %r196,1; .loc 1 1447 9 mov.u64 %r187,0; bra $L149; $L152: .loc 1 1449 18 cvt.u32.u32 %r786,%r196; cvt.u16.u8 %r788,%r786; add.u16 %r787,%r788,-3; cvt.u32.u16 %r789,%r787; cvt.u16.u8 %r964,%r789; mov.u16 %r791,%r964; .loc 1 1449 8 and.b16 %r793,%r791,253; setp.ne.u16 %r794,%r793,0; @ ! %r794 bra $L409; setp.eq.u64 %r953,%r187,0; bra $L148; $L409: .loc 1 1451 17 add.u16 %r795,%r788,1; cvt.u32.u16 %r797,%r795; cvt.s32.s8 %r196,%r797; .loc 1 1452 9 bra $L149; $L137: .loc 1 1457 8 cvt.u16.u32 %r798,%r196; setp.eq.u16 %r799,%r798,2; @ %r799 bra $L205; setp.eq.u64 %r953,%r187,0; bra $L148; $L130: .loc 1 1465 8 cvt.u16.u32 %r800,%r196; setp.eq.u16 %r801,%r800,6; @ %r801 bra $L206; setp.eq.u64 %r953,%r187,0; bra $L148; $L145: .loc 1 1473 8 cvt.u16.u32 %r802,%r196; setp.eq.u16 %r803,%r802,7; @ %r803 bra $L207; setp.eq.u64 %r953,%r187,0; bra $L148; $L140: .loc 1 1482 16 and.b32 %r804,%r177,1280; .loc 1 1482 8 setp.eq.u32 %r805,%r804,1024; @ %r805 bra $L153; .loc 1 1483 20 and.b32 %r806,%r177,1024; .loc 1 1483 9 setp.eq.u32 %r807,%r806,0; @ ! %r807 bra $L410; setp.eq.u64 %r953,%r187,0; bra $L148; $L410: .loc 1 1483 29 setp.eq.u64 %r953,%r187,0; @ %r953 bra $L148; $L153: .loc 1 1485 22 and.b32 %r809,%r177,512; .loc 1 1485 12 setp.ne.u32 %r810,%r809,0; @ %r810 bra $L154; .loc 1 1487 17 sub.u64 %r188,%r187,%r186; mov.u64 %r191,%r56; $L154: .loc 1 1492 11 and.b32 %r138,%r177,-1921; .loc 1 1490 15 or.b32 %r177,%r138,384; .loc 1 1493 16 mov.u64 %r187,0; .loc 1 1494 9 bra $L149; $L136: .loc 1 1498 8 setp.ne.u32 %r811,%r24,%r702; @ %r811 bra $L155; .loc 1 1498 40 and.b32 %r812,%r177,512; .loc 1 1498 30 setp.eq.u32 %r813,%r812,0; @ %r813 bra $L155; .loc 1 1500 15 and.b32 %r177,%r177,-641; .loc 1 1502 9 mov.u64 %r186,%r187; bra $L149; $L155: .loc 1 1506 11 setp.eq.u32 %r814,%r702,-1; @ ! %r814 bra $L411; setp.eq.u64 %r953,%r187,0; bra $L156; $L411: setp.eq.u64 %r953,%r187,0; bra $L148; $L204: mov.u32 %r196,0; mov.u64 %r187,0; setp.eq.u32 %r953,1,1; $L148: .loc 1 1507 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r702; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r818,[%value_in]; } bra $L156; $L202: .loc 1 1423 18 mov.u32 %r195,3; bra $L149; $L203: .loc 1 1436 18 mov.u32 %r195,2; bra $L149; $L205: .loc 1 1459 18 mov.u32 %r196,3; bra $L149; $L206: .loc 1 1467 18 mov.u32 %r196,7; bra $L149; $L207: .loc 1 1475 18 mov.u32 %r196,8; $L149: .loc 1 1510 13 st.u32 [%r56],%r702; .loc 1 1510 10 add.u64 %r56,%r56,4; $L146: .loc 1 1512 13 add.u64 %r34,%r34,-1; .loc 1 1513 8 mov.u32 %r59,%r231; .loc 1 1365 18 setp.eq.u64 %r819,%r34,0; @ ! %r819 bra $L147; setp.eq.u64 %r953,%r187,0; bra $L156; $L147: add.u32 %r231,%r231,1; bra $L157; $L156: .loc 1 1515 7 @ %r953 bra $L158; .loc 1 1516 12 and.b32 %r177,%r177,-257; $L158: .loc 1 1525 17 add.u32 %r821,%r195,-1; .loc 1 1525 7 setp.gt.u32 %r822,%r821,1; @ %r822 bra $L159; .loc 1 1530 17 setp.ge.u64 %r823,%frame,%r56; @ %r823 bra $L1; $L160: .loc 1 1532 5 add.u64 %r56,%r56,-4; ld.u32 %r825,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r825; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r827,[%value_in]; } .loc 1 1530 17 setp.lt.u64 %r828,%frame,%r56; @ %r828 bra $L160; bra $L1; $L159: .loc 1 1540 17 add.u32 %r829,%r196,-1; .loc 1 1540 7 setp.gt.u32 %r830,%r829,6; @ %r830 bra $L161; .loc 1 1542 11 cvt.u16.u32 %r831,%r196; setp.le.s16 %r832,%r831,2; @ %r832 bra $L162; .loc 1 1543 18 cvt.u32.u32 %r833,%r196; cvt.u32.u8 %r290,%r833; .loc 1 1543 21 setp.ne.u16 %r835,%r831,3; @ %r835 bra $L208; bra $L161; $L162: .loc 1 1550 14 setp.lt.u64 %r836,%frame,%r56; @ %r836 bra $L164; bra $L1; $L208: .loc 1 1543 21 mov.u32 %r227,%r59; mov.u32 %r957,%r227; cvt.u16.u32 %r844,%r290; cvt.u16.u8 %r964,%r957; mov.u16 %r849,%r964; $L163: .loc 1 1545 7 add.u64 %r56,%r56,-4; ld.u32 %r838,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r838; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r840,[%value_in]; } .loc 1 1546 7 add.u32 %r227,%r227,-1; .loc 1 1543 21 mov.u32 %r841,%r227; cvt.u16.u8 %r964,%r841; mov.u16 %r843,%r964; add.u16 %r842,%r843,%r844; cvt.u32.u16 %r845,%r842; cvt.u16.u8 %r964,%r845; mov.u16 %r848,%r964; sub.u16 %r847,%r848,%r849; cvt.u32.u16 %r850,%r847; cvt.s16.s8 %r851,%r850; setp.gt.s16 %r852,%r851,3; @ %r852 bra $L163; .loc 1 1546 7 mov.u32 %r59,%r227; bra $L161; $L164: .loc 1 1552 9 add.u64 %r56,%r56,-4; ld.u32 %r854,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r854; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r856,[%value_in]; } .loc 1 1550 14 setp.lt.u64 %r857,%frame,%r56; @ %r857 bra $L164; bra $L1; $L161: .loc 1 1563 14 and.b32 %r858,%r177,256; .loc 1 1563 7 setp.eq.u32 %r859,%r858,0; @ %r859 bra $L165; .loc 1 1565 18 and.b32 %r860,%r177,1024; .loc 1 1565 11 setp.eq.u32 %r861,%r860,0; @ %r861 bra $L166; .loc 1 1568 14 setp.ge.u64 %r862,%frame,%r56; @ %r862 bra $L1; $L167: .loc 1 1570 9 add.u64 %r56,%r56,-4; ld.u32 %r864,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r864; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r866,[%value_in]; } .loc 1 1568 14 setp.lt.u64 %r867,%frame,%r56; @ %r867 bra $L167; bra $L1; $L166: .loc 1 1576 12 ld.u32 %r167,[%r56+-4]; .loc 1 1578 27 and.b32 %r868,%r167,-33; .loc 1 1578 11 setp.ne.u32 %r869,%r868,69; @ %r869 bra $L168; .loc 1 1576 10 add.u64 %r56,%r56,-4; .loc 1 1577 8 add.u32 %r59,%r59,-1; bra $L169; $L168: .loc 1 1580 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r167; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r873,[%value_in]; } .loc 1 1581 7 ld.u32 %r167,[%r56+-8]; .loc 1 1582 5 add.u32 %r59,%r59,-2; .loc 1 1581 7 add.u64 %r56,%r56,-8; $L169: .loc 1 1584 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r167; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r877,[%value_in]; } $L165: .loc 1 1586 15 and.b32 %r878,%r177,16; .loc 1 1586 7 setp.ne.u32 %r879,%r878,0; @ %r879 bra $L209; .loc 1 1597 11 st.u32 [%r56],%r878; .loc 1 1598 19 and.b32 %r881,%r177,1536; .loc 1 1598 11 setp.ne.u32 %r882,%r881,1024; @ %r882 bra $L170; .loc 1 1606 11 setp.eq.u64 %r883,%r186,%r187; @ %r883 bra $L171; .loc 1 1601 13 sub.u64 %r230,%r186,%r187; mov.u64 %r191,%r56; bra $L172; $L170: .loc 1 1604 16 setp.eq.u64 %r884,%r188,0; @ %r884 bra $L171; .loc 1 1605 55 add.u64 %r889,%r191,4; .loc 1 1605 27 mov.u32 %r888,10; mov.u64 %r887,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r889; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r887; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r888; call (%value_in),_wcstol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r890,[%value_in]; } .loc 1 1605 25 sub.u64 %r230,%r890,%r188; $L172: .loc 1 1611 8 setp.lt.u64 %r892,%r191,%r961; .loc 1 1613 17 selp.u64 %r191,%r191,%r962,%r892; .loc 1 1615 18 st.u64 [%stack],%r230; cvta.const.u64 %r895,$LC0; mov.u64 %r894,21; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r191; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r894; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r895; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r896,[%value_in]; } $L171: .loc 1 1624 16 mov.u64 %r900,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r900; call (%value_in),_wcstod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r901,[%value_in]; } .loc 1 830 11 add.u64 %r902,%r307,7; and.b64 %r210,%r902,-8; add.u64 %r307,%r210,8; .loc 1 1626 18 and.b32 %r903,%r177,1; .loc 1 1626 11 setp.eq.u32 %r904,%r903,0; @ %r904 bra $L174; .loc 1 1629 9 ld.u64 %r905,[%r210]; st.f64 [%r905],%r901; bra $L175; $L174: .loc 1 1628 8 ld.u64 %r288,[%r210]; .loc 1 1631 23 and.b32 %r906,%r177,2; .loc 1 1631 16 setp.eq.u32 %r907,%r906,0; @ %r907 bra $L176; .loc 1 1634 10 st.f64 [%r288],%r901; bra $L175; $L176: .loc 1 1639 8 setp.num.f64 %r908,%r901,%r901; @ %r908 bra $L177; .loc 1 1640 14 cvta.const.u64 %r909,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r909; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r910,[%value_in]; } .loc 1 1640 12 st.f32 [%r288],%r910; bra $L175; $L177: .loc 1 1642 12 cvt.rn.f32.f64 %r911,%r901; st.f32 [%r288],%r911; $L175: .loc 1 1644 17 add.u32 %r303,%r303,1; mov.u64 %r179,%r211; bra $L6; $L32: .loc 1 1656 63 setp.eq.u32 %r912,%r303,0; @ %r912 bra $L210; .loc 1 1656 25 ld.u16 %r914,[%r305+16]; and.b16 %r913,%r914,64; setp.ne.u16 %r915,%r913,0; .loc 1 1656 63 selp.u32 %r303,-1,%r303,%r915; bra $L1; $L182: .loc 1 561 10 mov.u32 %r303,%r166; bra $L1; $L210: .loc 1 1656 63 mov.u32 %r303,-1; bra $L1; $L3: $L178: $L400: .loc 1 568 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r324; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r920,[%value_in]; } mov.u64 %r179,%r211; bra $L6; $L65: .loc 1 975 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r924,[%value_in]; } bra $L64; $L72: .loc 1 999 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r492; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r928,[%value_in]; } bra $L71; $L81: .loc 1 1046 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r530; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r932,[%value_in]; } bra $L80; $L86: .loc 1 1069 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r554; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r936,[%value_in]; } mov.u32 %r59,%r274; mov.u64 %r179,%r211; bra $L6; $L91: .loc 1 1092 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r567; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r940,[%value_in]; } bra $L90; $L99: .loc 1 1135 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r592; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r944,[%value_in]; } bra $L98; $L404: .loc 1 866 4 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r430; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r948,[%value_in]; } .loc 1 872 7 setp.eq.u32 %r949,%r202,2; @ %r949 bra $L179; setp.eq.u32 %r950,%r202,3; @ ! %r950 bra $L412; bra $L180; $L186: .loc 1 588 7 mov.u64 %r71,_wcstoul_r; mov.u32 %r32,8; bra $L24; $L187: .loc 1 731 9 mov.u64 %r71,_wcstol_r; bra $L24; $L189: .loc 1 743 9 mov.u64 %r71,_wcstoul_r; .loc 1 744 9 mov.u32 %r32,10; $L24: .loc 1 588 7 mov.u32 %r300,%r32; mov.u32 %r202,3; bra $L47; $L1: .loc 1 1665 1 mov.u32 %value,%r303; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfwscanf .visible .func (.param .u32 %value_out) vfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 233 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 235 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L414; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L414; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L414: .loc 1 236 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 237 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfwscanf .visible .func (.param .u32 %value_out) __svfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 244 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 245 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfwscanf_r .visible .func (.param .u32 %value_out) _vfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 255 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L420; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L420; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L420: .loc 1 256 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 257 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1898 0 0 0 644 2466 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: viprintf .visible .func (.param .u32 %value_out) viprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/viprintf.c" // BEGIN GLOBAL FUNCTION DECL: _viprintf_r .visible .func (.param .u32 %value_out) _viprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .extern .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: viprintf .visible .func (.param .u32 %value_out) viprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 107 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 110 10 ld.u64 %r31,[%r23+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 111 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _viprintf_r .visible .func (.param .u32 %value_out) _viprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 121 10 ld.u64 %r31,[%r24+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 122 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-viscanf.o/0 0 0 644 2456 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: viscanf .visible .func (.param .u32 %value_out) viscanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/viscanf.c" // BEGIN GLOBAL FUNCTION DECL: _viscanf_r .visible .func (.param .u32 %value_out) _viscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .extern .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: viscanf .visible .func (.param .u32 %value_out) viscanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 91 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 94 10 ld.u64 %r31,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 95 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _viscanf_r .visible .func (.param .u32 %value_out) _viscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 105 10 ld.u64 %r31,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 106 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-vprintf.o/0 0 0 644 2448 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vprintf .visible .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/vprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vprintf_r .visible .func (.param .u32 %value_out) _vprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfprintf_r .extern .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vprintf .visible .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 31 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 34 10 ld.u64 %r31,[%r23+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 35 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vprintf_r .visible .func (.param .u32 %value_out) _vprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 50 10 ld.u64 %r31,[%r24+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 51 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-vscanf.o/ 0 0 0 644 2441 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vscanf .visible .func (.param .u32 %value_out) vscanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/vscanf.c" // BEGIN GLOBAL FUNCTION DECL: _vscanf_r .visible .func (.param .u32 %value_out) _vscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfscanf_r .extern .func (.param .u32 %value_out) __svfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vscanf .visible .func (.param .u32 %value_out) vscanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 32 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 35 10 ld.u64 %r31,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vscanf_r .visible .func (.param .u32 %value_out) _vscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 51 10 ld.u64 %r31,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 52 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1916 0 0 0 644 3574 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsiprintf .visible .func (.param .u32 %value_out) vsiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vsiprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsiprintf_r .visible .func (.param .u32 %value_out) _vsiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vsiprintf .visible .func (.param .u32 %value_out) vsiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 53 22 st.u64 [%frame],%r25; .loc 1 53 15 st.u64 [%frame+24],%r25; .loc 1 54 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 54 22 st.u32 [%frame+12],%r28; .loc 1 52 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 56 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 57 5 ld.u64 %r23,[%frame]; .loc 1 57 9 mov.u32 %r36,0; st.u8 [%r23],%r36; .loc 1 39 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsiprintf_r .visible .func (.param .u32 %value_out) _vsiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 53 22 st.u64 [%frame],%r25; .loc 1 53 15 st.u64 [%frame+24],%r25; .loc 1 54 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 54 22 st.u32 [%frame+12],%r28; .loc 1 52 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 56 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 57 5 ld.u64 %r22,[%frame]; .loc 1 57 9 mov.u32 %r36,0; st.u8 [%r22],%r36; .loc 1 59 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } /1935 0 0 0 644 4492 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsiscanf .visible .func (.param .u32 %value_out) vsiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vsiscanf.c" // BEGIN GLOBAL FUNCTION DECL: _vsiscanf_r .visible .func (.param .u32 %value_out) _vsiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfiscanf_r .extern .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vsiscanf .visible .func (.param .u32 %value_out) vsiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 51 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 52 22 st.u64 [%frame],%r26; .loc 1 52 15 st.u64 [%frame+24],%r26; .loc 1 53 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 53 22 cvt.u32.u64 %r24,%r31; st.u32 [%frame+8],%r24; .loc 1 53 15 st.u32 [%frame+32],%r24; .loc 1 54 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 55 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 56 15 st.u64 [%frame+120],%r33; .loc 1 57 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 58 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsiscanf_r .visible .func (.param .u32 %value_out) _vsiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 51 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 52 22 st.u64 [%frame],%r26; .loc 1 52 15 st.u64 [%frame+24],%r26; .loc 1 53 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 53 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 53 15 st.u32 [%frame+32],%r23; .loc 1 54 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 55 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 56 15 st.u64 [%frame+120],%r33; .loc 1 57 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 58 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 59 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } /1953 0 0 0 644 6462 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsniprintf .visible .func (.param .u32 %value_out) vsniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vsniprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsniprintf_r .visible .func (.param .u32 %value_out) _vsniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vsniprintf .visible .func (.param .u32 %value_out) vsniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; .loc 1 40 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 55 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L2; .loc 1 57 19 mov.u32 %r33,139; st.u32 [%r22],%r33; .loc 1 58 14 mov.u32 %r27,-1; bra $L1; $L2: .loc 1 60 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 61 22 st.u64 [%frame],%r28; .loc 1 61 15 st.u64 [%frame+24],%r28; .loc 1 62 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L4; .loc 1 62 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 62 22 st.u32 [%frame+12],%r25; .loc 1 62 15 st.u32 [%frame+32],%r25; .loc 1 63 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r27,%r42; .loc 1 65 6 setp.lt.s32 %r43,%r27,-1; @ %r43 bra $L5; $L7: .loc 1 68 7 ld.u64 %r26,[%frame]; .loc 1 68 11 mov.u32 %r44,0; st.u8 [%r26],%r44; .loc 1 40 10 bra $L1; $L4: .loc 1 62 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 62 15 st.u32 [%frame+32],%r46; .loc 1 63 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r27,%r53; .loc 1 65 6 setp.lt.s32 %r54,%r27,-1; @ ! %r54 bra $L1; bra $L6; $L5: .loc 1 66 17 mov.u32 %r55,139; st.u32 [%r22],%r55; bra $L7; $L6: mov.u32 %r56,139; st.u32 [%r22],%r56; $L1: .loc 1 41 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsniprintf_r .visible .func (.param .u32 %value_out) _vsniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; mov.u64 %r31,%ar4; .loc 1 55 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L9; .loc 1 57 19 mov.u32 %r33,139; st.u32 [%r27],%r33; .loc 1 58 14 mov.u32 %r26,-1; bra $L8; $L9: .loc 1 60 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 61 22 st.u64 [%frame],%r28; .loc 1 61 15 st.u64 [%frame+24],%r28; .loc 1 62 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L11; .loc 1 62 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 62 22 st.u32 [%frame+12],%r25; .loc 1 62 15 st.u32 [%frame+32],%r25; .loc 1 63 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r26,%r42; .loc 1 65 6 setp.lt.s32 %r43,%r26,-1; @ %r43 bra $L12; $L14: .loc 1 68 7 ld.u64 %r24,[%frame]; .loc 1 68 11 mov.u32 %r44,0; st.u8 [%r24],%r44; bra $L8; $L11: .loc 1 62 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 62 15 st.u32 [%frame+32],%r46; .loc 1 63 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r26,%r53; .loc 1 65 6 setp.lt.s32 %r54,%r26,-1; @ ! %r54 bra $L8; bra $L13; $L12: .loc 1 66 17 mov.u32 %r55,139; st.u32 [%r27],%r55; bra $L14; $L13: mov.u32 %r56,139; st.u32 [%r27],%r56; $L8: .loc 1 70 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } /1973 0 0 0 644 6447 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsnprintf .visible .func (.param .u32 %value_out) vsnprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdio/vsnprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsnprintf_r .visible .func (.param .u32 %value_out) _vsnprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vsnprintf .visible .func (.param .u32 %value_out) vsnprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; .loc 1 40 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 61 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L2; .loc 1 63 19 mov.u32 %r33,139; st.u32 [%r22],%r33; .loc 1 64 14 mov.u32 %r27,-1; bra $L1; $L2: .loc 1 66 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 67 22 st.u64 [%frame],%r28; .loc 1 67 15 st.u64 [%frame+24],%r28; .loc 1 68 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L4; .loc 1 68 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 68 22 st.u32 [%frame+12],%r25; .loc 1 68 15 st.u32 [%frame+32],%r25; .loc 1 69 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r27,%r42; .loc 1 71 6 setp.lt.s32 %r43,%r27,-1; @ %r43 bra $L5; $L7: .loc 1 74 7 ld.u64 %r26,[%frame]; .loc 1 74 11 mov.u32 %r44,0; st.u8 [%r26],%r44; .loc 1 40 10 bra $L1; $L4: .loc 1 68 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 68 15 st.u32 [%frame+32],%r46; .loc 1 69 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r27,%r53; .loc 1 71 6 setp.lt.s32 %r54,%r27,-1; @ ! %r54 bra $L1; bra $L6; $L5: .loc 1 72 17 mov.u32 %r55,139; st.u32 [%r22],%r55; bra $L7; $L6: mov.u32 %r56,139; st.u32 [%r22],%r56; $L1: .loc 1 41 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsnprintf_r .visible .func (.param .u32 %value_out) _vsnprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; mov.u64 %r31,%ar4; .loc 1 61 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L9; .loc 1 63 19 mov.u32 %r33,139; st.u32 [%r27],%r33; .loc 1 64 14 mov.u32 %r26,-1; bra $L8; $L9: .loc 1 66 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 67 22 st.u64 [%frame],%r28; .loc 1 67 15 st.u64 [%frame+24],%r28; .loc 1 68 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L11; .loc 1 68 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 68 22 st.u32 [%frame+12],%r25; .loc 1 68 15 st.u32 [%frame+32],%r25; .loc 1 69 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r26,%r42; .loc 1 71 6 setp.lt.s32 %r43,%r26,-1; @ %r43 bra $L12; $L14: .loc 1 74 7 ld.u64 %r24,[%frame]; .loc 1 74 11 mov.u32 %r44,0; st.u8 [%r24],%r44; bra $L8; $L11: .loc 1 68 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 68 15 st.u32 [%frame+32],%r46; .loc 1 69 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r26,%r53; .loc 1 71 6 setp.lt.s32 %r54,%r26,-1; @ ! %r54 bra $L8; bra $L13; $L12: .loc 1 72 17 mov.u32 %r55,139; st.u32 [%r27],%r55; bra $L14; $L13: mov.u32 %r56,139; st.u32 [%r27],%r56; $L8: .loc 1 76 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } /1992 0 0 0 644 3561 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsprintf .visible .func (.param .u32 %value_out) vsprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vsprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsprintf_r .visible .func (.param .u32 %value_out) _vsprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vsprintf .visible .func (.param .u32 %value_out) vsprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 59 22 st.u64 [%frame],%r25; .loc 1 59 15 st.u64 [%frame+24],%r25; .loc 1 60 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 60 22 st.u32 [%frame+12],%r28; .loc 1 58 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 62 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 63 5 ld.u64 %r23,[%frame]; .loc 1 63 9 mov.u32 %r36,0; st.u8 [%r23],%r36; .loc 1 39 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsprintf_r .visible .func (.param .u32 %value_out) _vsprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 59 22 st.u64 [%frame],%r25; .loc 1 59 15 st.u64 [%frame+24],%r25; .loc 1 60 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 60 22 st.u32 [%frame+12],%r28; .loc 1 58 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 62 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 63 5 ld.u64 %r22,[%frame]; .loc 1 63 9 mov.u32 %r36,0; st.u8 [%r22],%r36; .loc 1 65 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } lib_a-vsscanf.o/0 0 0 644 4479 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsscanf .visible .func (.param .u32 %value_out) vsscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/vsscanf.c" // BEGIN GLOBAL FUNCTION DECL: _vsscanf_r .visible .func (.param .u32 %value_out) _vsscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfscanf_r .extern .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vsscanf .visible .func (.param .u32 %value_out) vsscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 57 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 58 22 st.u64 [%frame],%r26; .loc 1 58 15 st.u64 [%frame+24],%r26; .loc 1 59 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 59 22 cvt.u32.u64 %r24,%r31; st.u32 [%frame+8],%r24; .loc 1 59 15 st.u32 [%frame+32],%r24; .loc 1 60 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 61 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 62 15 st.u64 [%frame+120],%r33; .loc 1 63 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 64 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsscanf_r .visible .func (.param .u32 %value_out) _vsscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[176]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 57 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 58 22 st.u64 [%frame],%r26; .loc 1 58 15 st.u64 [%frame+24],%r26; .loc 1 59 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 59 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 59 15 st.u32 [%frame+32],%r23; .loc 1 60 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 61 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 62 15 st.u64 [%frame+120],%r33; .loc 1 63 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 64 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 65 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-wbuf.o/ 0 0 0 644 5507 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __swbuf_r .visible .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdio/wbuf.c" // BEGIN GLOBAL FUNCTION DECL: __swbuf .visible .func (.param .u32 %value_out) __swbuf (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __swbuf_r .visible .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r31; .reg .u32 %r42; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .pred %r68; .reg .u16 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u32 %r96; .reg .u16 %r97; .reg .pred %r98; .reg .u32 %r101; .reg .pred %r102; .reg .u16 %r104; mov.u64 %r49,%ar0; mov.u32 %r50,%ar1; mov.u64 %r51,%ar2; .loc 1 44 3 setp.eq.u64 %r52,%r49,0; @ %r52 bra $L2; ld.u32 %r53,[%r49+80]; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call __sinit,(%out_arg1); } $L2: .loc 1 54 10 ld.u32 %r56,[%r51+40]; st.u32 [%r51+12],%r56; .loc 1 55 7 ld.s16 %r24,[%r51+16]; .loc 1 55 6 cvt.u16.u32 %r58,%r24; and.b16 %r57,%r58,8; setp.eq.u16 %r59,%r57,0; @ %r59 bra $L3; .loc 1 55 7 ld.u64 %r25,[%r51+24]; setp.ne.u64 %r60,%r25,0; @ %r60 bra $L4; $L3: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } setp.eq.u32 %r64,%r63,0; @ %r64 bra $L5; $L10: .loc 1 56 12 mov.u32 %r48,-1; bra $L1; $L5: .loc 1 59 3 ld.s16 %r24,[%r51+16]; .loc 1 71 23 ld.u64 %r25,[%r51+24]; $L4: .loc 1 57 7 mov.u32 %r65,%r50; and.b32 %r48,%r50,255; .loc 1 59 3 cvt.u16.u32 %r67,%r24; and.b16 %r66,%r67,8192; setp.ne.u16 %r68,%r66,0; @ %r68 bra $L7; or.b16 %r69,%r67,8192; st.u16 [%r51+16],%r69; ld.u32 %r72,[%r51+172]; and.b32 %r71,%r72,-8193; st.u32 [%r51+172],%r71; $L7: .loc 1 71 9 ld.u64 %r31,[%r51]; .loc 1 71 14 sub.u64 %r73,%r31,%r25; .loc 1 71 5 cvt.u32.u64 %r42,%r73; .loc 1 72 6 ld.u32 %r74,[%r51+32]; setp.le.s32 %r75,%r74,%r42; @ %r75 bra $L8; .loc 1 80 6 add.u32 %r47,%r42,1; bra $L9; $L8: .loc 1 74 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r78,[%value_in]; } .loc 1 74 10 setp.ne.u32 %r79,%r78,0; @ %r79 bra $L10; .loc 1 79 6 ld.u64 %r31,[%r51]; mov.u32 %r47,1; $L9: .loc 1 78 9 ld.u32 %r81,[%r51+12]; add.u32 %r80,%r81,-1; st.u32 [%r51+12],%r80; .loc 1 79 10 add.u64 %r82,%r31,1; st.u64 [%r51],%r82; .loc 1 79 13 st.u8 [%r31],%r65; .loc 1 80 6 ld.u32 %r84,[%r51+32]; setp.eq.u32 %r85,%r84,%r47; @ %r85 bra $L11; .loc 1 80 52 set.u32.eq.u32 %r87,%r48,10; neg.s32 %r88,%r87; mov.u32 %r86,%r88; .loc 1 80 28 ld.u8 %r104,[%r51+16]; mov.u16 %r91,%r104; and.b16 %r90,%r91,1; cvt.u32.u16 %r92,%r90; .loc 1 80 52 cvt.u16.u8 %r104,%r86; mov.u16 %r94,%r104; cvt.u16.u8 %r104,%r92; mov.u16 %r95,%r104; and.b16 %r93,%r94,%r95; cvt.u32.u16 %r96,%r93; cvt.u16.u8 %r97,%r96; setp.eq.u16 %r98,%r97,0; @ %r98 bra $L1; $L11: .loc 1 81 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r101,[%value_in]; } .loc 1 81 8 setp.ne.u32 %r102,%r101,0; @ %r102 bra $L10; $L1: .loc 1 84 1 mov.u32 %value,%r48; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __swbuf .visible .func (.param .u32 %value_out) __swbuf (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 93 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 94 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-wcscat.o/ 0 0 0 644 1415 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscat .visible .func (.param .u64 %value_out) wcscat (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcscat.c" // BEGIN GLOBAL FUNCTION DEF: wcscat .visible .func (.param .u64 %value_out) wcscat (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .u32 %r38; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 72 10 ld.u32 %r32,[%r30]; setp.eq.u32 %r33,%r32,0; @ %r33 bra $L6; mov.u64 %r26,%r30; $L3: .loc 1 73 6 add.u64 %r26,%r26,4; .loc 1 72 10 ld.u32 %r34,[%r26]; setp.ne.u32 %r35,%r34,0; @ %r35 bra $L3; bra $L2; $L6: mov.u64 %r26,%r30; $L2: .loc 1 76 10 ld.u32 %r23,[%r31]; setp.eq.u32 %r36,%r23,0; @ %r36 bra $L4; mov.u64 %r24,%r26; $L5: .loc 1 77 14 add.u64 %r31,%r31,4; mov.u64 %r25,%r24; add.u64 %r24,%r24,4; mov.u64 %r26,%r24; .loc 1 77 10 st.u32 [%r25],%r23; .loc 1 76 10 ld.u32 %r23,[%r31]; setp.ne.u32 %r37,%r23,0; @ %r37 bra $L5; $L4: .loc 1 78 6 mov.u32 %r38,0; st.u32 [%r26],%r38; .loc 1 80 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-wcschr.o/ 0 0 0 644 908 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcschr .visible .func (.param .u64 %value_out) wcschr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcschr.c" // BEGIN GLOBAL FUNCTION DEF: wcschr .visible .func (.param .u64 %value_out) wcschr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .pred %r26; .reg .pred %r27; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; $L3: .loc 1 69 11 ld.u32 %r22,[%r24]; .loc 1 69 10 setp.eq.u32 %r26,%r22,%r25; @ %r26 bra $L2; .loc 1 74 16 add.u64 %r24,%r24,4; .loc 1 74 14 setp.ne.u32 %r27,%r22,0; @ %r27 bra $L3; .loc 1 75 10 mov.u64 %r24,0; $L2: .loc 1 76 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-wcscmp.o/ 0 0 0 644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscmp .visible .func (.param .u32 %value_out) wcscmp (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcscmp.c" // BEGIN GLOBAL FUNCTION DEF: wcscmp .visible .func (.param .u32 %value_out) wcscmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r28; .reg .pred %r29; mov.u64 %r26,%ar0; mov.u64 %r24,%ar1; .loc 1 74 9 bra $L2; $L4: .loc 1 75 12 add.u64 %r26,%r26,4; .loc 1 75 8 add.u64 %r24,%r24,4; setp.eq.u32 %r28,%r25,0; @ %r28 bra $L1; $L2: .loc 1 74 10 ld.u32 %r25,[%r26]; .loc 1 74 17 ld.u32 %r22,[%r24]; .loc 1 74 14 setp.eq.u32 %r29,%r25,%r22; @ %r29 bra $L4; .loc 1 77 15 sub.u32 %r25,%r25,%r22; $L1: .loc 1 78 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-wcscoll.o/0 0 0 644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscoll .visible .func (.param .u32 %value_out) wcscoll (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcscoll.c" // BEGIN GLOBAL FUNCTION DECL: wcscmp .extern .func (.param .u32 %value_out) wcscmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: wcscoll .visible .func (.param .u32 %value_out) wcscoll (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 40 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),wcscmp,(%out_arg1,%out_arg2); ld.param.u32 %r27,[%value_in]; } .loc 1 41 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-wcscpy.o/ 0 0 0 644 1203 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscpy .visible .func (.param .u64 %value_out) wcscpy (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcscpy.c" // BEGIN GLOBAL FUNCTION DEF: wcscpy .visible .func (.param .u64 %value_out) wcscpy (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u32 %r33; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 66 7 mov.u32 %r30,0; st.u32 [%r28],%r30; .loc 1 69 10 ld.u32 %r23,[%r29]; setp.eq.u32 %r31,%r23,0; @ %r31 bra $L4; mov.u64 %r22,%r28; $L3: .loc 1 70 14 add.u64 %r29,%r29,4; mov.u64 %r24,%r22; add.u64 %r22,%r22,4; mov.u64 %r25,%r22; .loc 1 70 10 st.u32 [%r24],%r23; .loc 1 69 10 ld.u32 %r23,[%r29]; setp.ne.u32 %r32,%r23,0; @ %r32 bra $L3; bra $L2; $L4: mov.u64 %r25,%r28; $L2: .loc 1 71 6 mov.u32 %r33,0; st.u32 [%r25],%r33; .loc 1 74 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-wcscspn.o/0 0 0 644 1568 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscspn .visible .func (.param .u64 %value_out) wcscspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcscspn.c" // BEGIN GLOBAL FUNCTION DEF: wcscspn .visible .func (.param .u64 %value_out) wcscspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u64 %r36; .reg .pred %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r44; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 66 10 ld.u32 %r23,[%r32]; setp.eq.u32 %r34,%r23,0; @ %r34 bra $L7; .loc 1 69 14 ld.u32 %r26,[%r33]; mov.u64 %r24,%r32; setp.ne.u32 %r44,%r26,0; bra $L3; $L8: mov.u64 %r25,%r33; mov.u32 %r22,%r26; $L5: .loc 1 71 7 setp.ne.u32 %r35,%r23,%r22; @ %r35 bra $L4; .loc 1 79 13 sub.u64 %r36,%r24,%r32; shr.s64 %r31,%r36,2; bra $L1; $L4: .loc 1 73 5 add.u64 %r25,%r25,4; .loc 1 69 14 ld.u32 %r22,[%r25]; setp.ne.u32 %r38,%r22,0; @ %r38 bra $L5; $L6: .loc 1 75 8 add.u64 %r24,%r24,4; .loc 1 66 10 ld.u32 %r23,[%r24]; setp.ne.u32 %r39,%r23,0; @ %r39 bra $L3; .loc 1 79 13 sub.u64 %r40,%r24,%r32; shr.s64 %r31,%r40,2; bra $L1; $L3: .loc 1 69 14 @ %r44 bra $L8; bra $L6; $L7: .loc 1 66 10 mov.u64 %r31,0; $L2: $L1: .loc 1 80 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /2010 0 0 0 644 73866 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/time/../time/strftime.c" // BEGIN FUNCTION DECL: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ctloc .visible .func (.param .u64 %value_out) __ctloc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcsftime .visible .func (.param .u64 %value_out) wcsftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcsftime_l .visible .func (.param .u64 %value_out) wcsftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _C_time_locale .extern .const .align 8 .u64 _C_time_locale[63]; // BEGIN GLOBAL VAR DECL: _tzname .extern .global .align 8 .u64 _tzname[2]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: wcstoul .extern .func (.param .u64 %value_out) wcstoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: mbstowcs .extern .func (.param .u64 %value_out) mbstowcs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: abs .extern .func (.param .u32 %value_out) abs (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: swprintf .extern .func (.param .u32 %value_out) swprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcscpy .extern .func (.param .u64 %value_out) wcscpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: towlower .extern .func (.param .u32 %value_out) towlower (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DECL: labs .extern .func (.param .u64 %value_out) labs (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC9 .const .align 4 .u32 $LC9[8] = {89,45,37,109,45,37,100,0 }; // BEGIN VAR DEF: $LC5 .const .align 4 .u32 $LC5[5] = {37,46,50,100,0 }; // BEGIN VAR DEF: $LC10 .const .align 4 .u32 $LC10[4] = {46,42,117,0 }; // BEGIN VAR DEF: $LC11 .const .align 4 .u32 $LC11[5] = {37,46,51,100,0 }; // BEGIN VAR DEF: $LC12 .const .align 4 .u32 $LC12[10] = {37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC13 .const .align 4 .u32 $LC13[5] = {37,108,108,100,0 }; // BEGIN VAR DEF: $LC14 .const .align 4 .u32 $LC14[15] = {37,46,50,100,58,37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 4 .u32 $LC15[12] = {37,43,48,51,108,100,37,46,50,108,100,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[7] = {37,115,37,46,42,100,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[8] = {37,115,37,48,46,42,100,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {43,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[2] = {45,0 }; // BEGIN VAR DEF: $LC6 .const .align 4 .u32 $LC6[4] = {37,50,100,0 }; // BEGIN VAR DEF: $LC7 .const .align 4 .u32 $LC7[15] = {37,46,50,100,47,37,46,50,100,47,37,46,50,100,0 }; // BEGIN VAR DEF: $LC8 .const .align 4 .u32 $LC8[4] = {37,108,117,0 }; // BEGIN FUNCTION DEF: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r34; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r56; .reg .u32 %r58; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u16 %r87; mov.u32 %r43,%ar0; mov.u32 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 350 14 setp.lt.s32 %r46,%r43,0; selp.u32 %r23,1900,-100,%r46; add.u32 %r24,%r23,%r43; and.b32 %r47,%r43,3; setp.ne.u32 %r48,%r47,0; @ %r48 bra $L3; rem.s32 %r50,%r24,100; setp.ne.u32 %r56,%r50,0; @ %r56 bra $L10; $L3: rem.s32 %r58,%r24,400; set.u32.eq.u32 %r65,%r58,0; neg.s32 %r31,%r65; bra $L4; $L10: mov.u32 %r31,1; $L4: .loc 1 356 11 shl.b32 %r67,%r45,4; add.u32 %r68,%r44,%r44; vadd.u32.u32.u32.add %r34,%r31,%r67,%r68; .loc 1 356 3 setp.gt.s32 %r70,%r34,33; @ %r70 bra $L5; setp.ge.s32 %r71,%r34,0; @ %r71 bra $L6; .loc 1 385 10 mov.u32 %r42,0; bra $L1; $L8: .loc 1 356 3 mov.u64 %r73,11822082166292481; shr.u64 %r72,%r73,%r40; cvt.u32.u64 %r74,%r72; cvt.u16.u8 %r87,%r74; mov.u16 %r76,%r87; and.b16 %r75,%r76,1; cvt.u32.u16 %r77,%r75; .loc 1 370 14 cvt.u32.u8 %r42,%r77; bra $L1; $L6: .loc 1 356 3 mov.u64 %r79,13690420227; shr.u64 %r78,%r79,%r34; cvt.u32.u64 %r80,%r78; cvt.u16.u8 %r87,%r80; mov.u16 %r82,%r87; and.b16 %r81,%r82,1; cvt.u32.u16 %r83,%r81; cvt.u32.u8 %r84,%r83; neg.s32 %r42,%r84; bra $L1; $L5: add.u32 %r40,%r34,-5794; setp.le.u32 %r85,%r40,53; @ %r85 bra $L8; .loc 1 385 10 mov.u32 %r42,0; $L1: .loc 1 387 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 8 .b8 %stack_ar[32]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .local .align 16 .b8 %frame_ar[1152]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r26; .reg .u64 %r33; .reg .u64 %r36; .reg .u64 %r40; .reg .u32 %r43; .reg .u64 %r47; .reg .u32 %r50; .reg .u64 %r53; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r79; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r90; .reg .u64 %r94; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r114; .reg .u32 %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r141; .reg .u32 %r144; .reg .u32 %r151; .reg .u64 %r157; .reg .u64 %r167; .reg .u32 %r171; .reg .u64 %r175; .reg .u64 %r205; .reg .u32 %r209; .reg .u32 %r218; .reg .u64 %r224; .reg .u32 %r225; .reg .u32 %r281; .reg .u32 %r294; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .u32 %r305; .reg .u32 %r318; .reg .u32 %r319; .reg .u32 %r329; .reg .u32 %r330; .reg .u32 %r338; .reg .u32 %r340; .reg .u64 %r345; .reg .u64 %r357; .reg .u64 %r371; .reg .u32 %r375; .reg .u64 %r376; .reg .u64 %r386; .reg .u64 %r387; .reg .u32 %r389; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r404; .reg .u64 %r407; .reg .u64 %r412; .reg .u64 %r413; .reg .u64 %r417; .reg .u64 %r418; .reg .u64 %r423; .reg .u64 %r424; .reg .u64 %r429; .reg .u64 %r430; .reg .u64 %r434; .reg .u64 %r436; .reg .u64 %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u64 %r445; .reg .u64 %r446; .reg .u64 %r451; .reg .u64 %r454; .reg .u64 %r464; .reg .u64 %r465; .reg .u64 %r466; .reg .u64 %r467; .reg .u64 %r468; .reg .pred %r477; .reg .u64 %r478; .reg .u64 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u16 %r490; .reg .pred %r491; .reg .pred %r492; .reg .u32 %r493; .reg .u32 %r494; .reg .u32 %r495; .reg .u32 %r496; .reg .u32 %r497; .reg .u32 %r498; .reg .u16 %r499; .reg .u16 %r500; .reg .u16 %r501; .reg .u32 %r502; .reg .u16 %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r509; .reg .u64 %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .pred %r517; .reg .pred %r518; .reg .pred %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .pred %r535; .reg .pred %r536; .reg .pred %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .pred %r541; .reg .pred %r542; .reg .pred %r543; .reg .pred %r544; .reg .pred %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .pred %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .pred %r556; .reg .pred %r557; .reg .pred %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .pred %r566; .reg .pred %r567; .reg .pred %r568; .reg .u64 %r569; .reg .u64 %r570; .reg .u64 %r571; .reg .u64 %r572; .reg .u64 %r573; .reg .u32 %r574; .reg .u64 %r577; .reg .u64 %r578; .reg .u64 %r579; .reg .pred %r580; .reg .pred %r581; .reg .u64 %r582; .reg .pred %r583; .reg .u32 %r584; .reg .pred %r585; .reg .u64 %r586; .reg .u64 %r587; .reg .u64 %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u32 %r592; .reg .u64 %r595; .reg .u64 %r596; .reg .u64 %r597; .reg .pred %r598; .reg .pred %r599; .reg .u64 %r600; .reg .pred %r601; .reg .u32 %r602; .reg .pred %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .u64 %r606; .reg .u64 %r607; .reg .u32 %r608; .reg .u64 %r611; .reg .u64 %r612; .reg .u64 %r613; .reg .pred %r614; .reg .pred %r615; .reg .u64 %r616; .reg .pred %r617; .reg .u32 %r618; .reg .pred %r619; .reg .u64 %r620; .reg .u64 %r621; .reg .u64 %r622; .reg .u64 %r623; .reg .u64 %r624; .reg .u32 %r625; .reg .u64 %r628; .reg .u64 %r629; .reg .u64 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u64 %r633; .reg .pred %r634; .reg .u32 %r635; .reg .pred %r636; .reg .u64 %r637; .reg .u32 %r638; .reg .u64 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u32 %r644; .reg .u64 %r647; .reg .u64 %r648; .reg .u64 %r649; .reg .u32 %r650; .reg .u64 %r653; .reg .u64 %r654; .reg .u64 %r655; .reg .u32 %r656; .reg .u64 %r659; .reg .u64 %r660; .reg .u32 %r661; .reg .pred %r662; .reg .u64 %r667; .reg .u64 %r668; .reg .u64 %r669; .reg .u64 %r670; .reg .pred %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .pred %r677; .reg .u32 %r679; .reg .pred %r680; .reg .u32 %r682; .reg .u32 %r683; .reg .pred %r684; .reg .u32 %r685; .reg .u32 %r686; .reg .u32 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .u32 %r690; .reg .u16 %r691; .reg .u16 %r692; .reg .u16 %r693; .reg .u32 %r694; .reg .u16 %r695; .reg .pred %r696; .reg .pred %r697; .reg .u64 %r701; .reg .u64 %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r706; .reg .u64 %r707; .reg .pred %r708; .reg .pred %r709; .reg .u64 %r713; .reg .u64 %r714; .reg .u64 %r715; .reg .u32 %r716; .reg .pred %r718; .reg .u64 %r719; .reg .pred %r720; .reg .pred %r721; .reg .u32 %r723; .reg .u32 %r724; .reg .u64 %r727; .reg .u64 %r728; .reg .u64 %r729; .reg .u64 %r730; .reg .u32 %r731; .reg .u32 %r732; .reg .u32 %r733; .reg .u32 %r734; .reg .pred %r736; .reg .u64 %r737; .reg .pred %r738; .reg .u32 %r739; .reg .pred %r740; .reg .pred %r741; .reg .u32 %r742; .reg .u64 %r744; .reg .u64 %r745; .reg .u32 %r748; .reg .pred %r750; .reg .u64 %r753; .reg .u64 %r754; .reg .u64 %r756; .reg .u64 %r757; .reg .u64 %r763; .reg .u64 %r764; .reg .u64 %r765; .reg .u64 %r766; .reg .pred %r767; .reg .u64 %r768; .reg .u32 %r772; .reg .u32 %r773; .reg .u32 %r774; .reg .pred %r775; .reg .u32 %r777; .reg .u32 %r778; .reg .pred %r779; .reg .u32 %r780; .reg .pred %r781; .reg .pred %r782; .reg .u32 %r783; .reg .pred %r784; .reg .u64 %r787; .reg .u64 %r788; .reg .u64 %r789; .reg .u64 %r790; .reg .u32 %r791; .reg .u32 %r793; .reg .u32 %r794; .reg .u32 %r798; .reg .u32 %r799; .reg .pred %r801; .reg .u64 %r802; .reg .pred %r803; .reg .u32 %r804; .reg .u32 %r810; .reg .u32 %r811; .reg .u32 %r812; .reg .pred %r813; .reg .u32 %r815; .reg .u32 %r817; .reg .u32 %r818; .reg .pred %r819; .reg .u32 %r821; .reg .u32 %r822; .reg .pred %r823; .reg .u32 %r824; .reg .pred %r825; .reg .u32 %r826; .reg .u32 %r827; .reg .u32 %r828; .reg .u16 %r829; .reg .u16 %r830; .reg .u16 %r831; .reg .u32 %r832; .reg .u16 %r833; .reg .pred %r834; .reg .pred %r835; .reg .pred %r836; .reg .pred %r838; .reg .u32 %r839; .reg .pred %r840; .reg .u32 %r841; .reg .u32 %r842; .reg .u32 %r843; .reg .u32 %r844; .reg .u32 %r845; .reg .u32 %r846; .reg .u16 %r847; .reg .u16 %r848; .reg .u16 %r849; .reg .u32 %r850; .reg .u16 %r851; .reg .pred %r852; .reg .u32 %r853; .reg .pred %r854; .reg .u32 %r855; .reg .pred %r856; .reg .u32 %r857; .reg .u64 %r859; .reg .u64 %r860; .reg .u64 %r865; .reg .u64 %r866; .reg .u64 %r867; .reg .u32 %r868; .reg .pred %r870; .reg .u64 %r871; .reg .pred %r872; .reg .u64 %r876; .reg .u64 %r877; .reg .u64 %r878; .reg .u32 %r879; .reg .pred %r881; .reg .u64 %r882; .reg .pred %r883; .reg .u64 %r888; .reg .u64 %r889; .reg .u64 %r890; .reg .u32 %r891; .reg .pred %r893; .reg .u64 %r894; .reg .pred %r895; .reg .u64 %r898; .reg .u64 %r899; .reg .u64 %r900; .reg .u64 %r901; .reg .u32 %r902; .reg .u32 %r903; .reg .u32 %r904; .reg .pred %r906; .reg .u64 %r907; .reg .pred %r908; .reg .u64 %r911; .reg .u64 %r912; .reg .u64 %r913; .reg .u64 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .u32 %r917; .reg .pred %r919; .reg .u64 %r920; .reg .pred %r921; .reg .u64 %r924; .reg .u64 %r925; .reg .u64 %r926; .reg .u64 %r927; .reg .u32 %r928; .reg .u32 %r929; .reg .pred %r931; .reg .u64 %r932; .reg .pred %r933; .reg .pred %r935; .reg .u64 %r936; .reg .u64 %r937; .reg .u32 %r938; .reg .u64 %r939; .reg .u32 %r941; .reg .u32 %r942; .reg .u32 %r943; .reg .u64 %r944; .reg .u64 %r945; .reg .u64 %r946; .reg .u64 %r947; .reg .u32 %r949; .reg .u64 %r952; .reg .u64 %r953; .reg .u64 %r954; .reg .pred %r955; .reg .pred %r956; .reg .u64 %r958; .reg .u64 %r959; .reg .pred %r960; .reg .u64 %r961; .reg .u64 %r962; .reg .u32 %r963; .reg .pred %r964; .reg .u32 %r966; .reg .u64 %r967; .reg .u64 %r968; .reg .pred %r969; .reg .u64 %r972; .reg .u64 %r973; .reg .u64 %r974; .reg .u64 %r975; .reg .u32 %r976; .reg .u32 %r977; .reg .u32 %r978; .reg .pred %r980; .reg .u64 %r981; .reg .pred %r982; .reg .u32 %r983; .reg .pred %r984; .reg .pred %r985; .reg .u64 %r986; .reg .u32 %r988; .reg .u32 %r989; .reg .u32 %r990; .reg .u64 %r991; .reg .u64 %r993; .reg .u64 %r994; .reg .u64 %r995; .reg .u64 %r996; .reg .u64 %r998; .reg .u64 %r1001; .reg .u64 %r1002; .reg .u64 %r1003; .reg .u64 %r1004; .reg .u64 %r1005; .reg .u64 %r1006; .reg .u64 %r1010; .reg .u64 %r1011; .reg .u64 %r1012; .reg .u64 %r1013; .reg .u32 %r1014; .reg .u32 %r1016; .reg .u64 %r1017; .reg .u64 %r1018; .reg .u32 %r1019; .reg .u32 %r1021; .reg .u64 %r1022; .reg .u64 %r1023; .reg .u32 %r1024; .reg .u32 %r1025; .reg .u64 %r1026; .reg .u64 %r1027; .reg .u64 %r1028; .reg .u64 %r1029; .reg .u64 %r1031; .reg .u64 %r1032; .reg .u64 %r1033; .reg .u64 %r1034; .reg .u64 %r1035; .reg .u64 %r1037; .reg .u64 %r1038; .reg .u64 %r1039; .reg .u64 %r1040; .reg .u64 %r1041; .reg .u64 %r1043; .reg .u64 %r1044; .reg .u64 %r1045; .reg .u64 %r1046; .reg .u64 %r1047; .reg .u64 %r1048; .reg .u32 %r1049; .reg .pred %r1051; .reg .u64 %r1052; .reg .pred %r1053; .reg .u64 %r1056; .reg .u64 %r1057; .reg .u64 %r1058; .reg .u64 %r1059; .reg .u32 %r1060; .reg .u32 %r1061; .reg .pred %r1063; .reg .u64 %r1064; .reg .pred %r1065; .reg .pred %r1067; .reg .u64 %r1068; .reg .u64 %r1069; .reg .u32 %r1070; .reg .u64 %r1073; .reg .u64 %r1074; .reg .u64 %r1075; .reg .u64 %r1076; .reg .u32 %r1077; .reg .u32 %r1078; .reg .u32 %r1079; .reg .u32 %r1080; .reg .pred %r1082; .reg .u64 %r1083; .reg .pred %r1084; .reg .pred %r1086; .reg .u64 %r1087; .reg .pred %r1088; .reg .u32 %r1089; .reg .u32 %r1090; .reg .u64 %r1093; .reg .u64 %r1094; .reg .u64 %r1095; .reg .u64 %r1096; .reg .u32 %r1097; .reg .u32 %r1098; .reg .u32 %r1099; .reg .u32 %r1100; .reg .u32 %r1102; .reg .u32 %r1103; .reg .pred %r1105; .reg .u64 %r1106; .reg .pred %r1107; .reg .u32 %r1111; .reg .pred %r1112; .reg .pred %r1113; .reg .pred %r1114; .reg .u32 %r1115; .reg .u32 %r1116; .reg .pred %r1117; .reg .u32 %r1118; .reg .pred %r1119; .reg .u32 %r1121; .reg .pred %r1127; .reg .u32 %r1129; .reg .u32 %r1136; .reg .u32 %r1138; .reg .pred %r1139; .reg .u64 %r1142; .reg .u64 %r1143; .reg .u64 %r1144; .reg .u64 %r1145; .reg .u32 %r1146; .reg .pred %r1148; .reg .u64 %r1149; .reg .pred %r1150; .reg .pred %r1152; .reg .u64 %r1153; .reg .u64 %r1154; .reg .u32 %r1155; .reg .u32 %r1156; .reg .pred %r1157; .reg .u64 %r1160; .reg .u64 %r1161; .reg .u64 %r1162; .reg .u64 %r1163; .reg .u32 %r1164; .reg .u32 %r1165; .reg .u32 %r1166; .reg .u32 %r1168; .reg .u32 %r1169; .reg .pred %r1171; .reg .u64 %r1172; .reg .pred %r1173; .reg .pred %r1174; .reg .u32 %r1176; .reg .u32 %r1177; .reg .u64 %r1180; .reg .u64 %r1181; .reg .u64 %r1182; .reg .u64 %r1183; .reg .u32 %r1184; .reg .pred %r1186; .reg .u64 %r1187; .reg .pred %r1188; .reg .pred %r1189; .reg .u32 %r1190; .reg .u32 %r1191; .reg .pred %r1192; .reg .u32 %r1193; .reg .u32 %r1194; .reg .u32 %r1195; .reg .u32 %r1196; .reg .u32 %r1197; .reg .u32 %r1198; .reg .u16 %r1199; .reg .u16 %r1200; .reg .u16 %r1201; .reg .u32 %r1202; .reg .u16 %r1203; .reg .pred %r1204; .reg .u32 %r1205; .reg .pred %r1206; .reg .u32 %r1207; .reg .pred %r1208; .reg .u32 %r1209; .reg .u64 %r1211; .reg .u64 %r1212; .reg .u64 %r1217; .reg .u64 %r1218; .reg .u64 %r1219; .reg .u32 %r1220; .reg .pred %r1222; .reg .u64 %r1223; .reg .pred %r1224; .reg .u32 %r1225; .reg .pred %r1226; .reg .pred %r1227; .reg .u64 %r1228; .reg .u32 %r1230; .reg .u32 %r1231; .reg .u32 %r1232; .reg .u64 %r1233; .reg .u64 %r1235; .reg .u64 %r1236; .reg .u64 %r1237; .reg .u64 %r1238; .reg .u64 %r1240; .reg .u64 %r1243; .reg .u64 %r1244; .reg .u64 %r1247; .reg .u64 %r1248; .reg .u64 %r1249; .reg .u64 %r1250; .reg .u64 %r1252; .reg .u64 %r1254; .reg .u32 %r1255; .reg .pred %r1257; .reg .u64 %r1258; .reg .pred %r1259; .reg .u32 %r1260; .reg .pred %r1261; .reg .pred %r1262; .reg .u64 %r1263; .reg .u32 %r1265; .reg .u32 %r1266; .reg .u32 %r1267; .reg .u64 %r1268; .reg .u64 %r1269; .reg .u64 %r1270; .reg .u64 %r1272; .reg .pred %r1273; .reg .pred %r1274; .reg .u64 %r1275; .reg .u64 %r1276; .reg .pred %r1277; .reg .pred %r1278; .reg .u64 %r1279; .reg .pred %r1281; .reg .u64 %r1282; .reg .u64 %r1283; .reg .u32 %r1284; .reg .u32 %r1285; .reg .pred %r1286; .reg .pred %r1287; .reg .u64 %r1288; .reg .u64 %r1289; .reg .u32 %r1290; .reg .u32 %r1292; .reg .pred %r1293; .reg .u32 %r1294; .reg .u32 %r1295; .reg .u32 %r1296; .reg .u32 %r1297; .reg .u32 %r1298; .reg .u32 %r1299; .reg .u32 %r1300; .reg .u16 %r1301; .reg .u16 %r1302; .reg .u16 %r1303; .reg .u32 %r1304; .reg .u16 %r1305; .reg .pred %r1306; .reg .u32 %r1307; .reg .u32 %r1308; .reg .u32 %r1309; .reg .u32 %r1310; .reg .u32 %r1311; .reg .u32 %r1312; .reg .u16 %r1313; .reg .u16 %r1314; .reg .u16 %r1315; .reg .u32 %r1316; .reg .u16 %r1317; .reg .pred %r1318; .reg .u32 %r1319; .reg .u32 %r1320; .reg .u32 %r1321; .reg .u32 %r1322; .reg .u32 %r1323; .reg .u32 %r1324; .reg .u16 %r1325; .reg .u16 %r1326; .reg .u16 %r1327; .reg .u32 %r1328; .reg .u16 %r1329; .reg .pred %r1330; .reg .pred %r1332; .reg .u32 %r1333; .reg .pred %r1337; .reg .u64 %r1340; .reg .u64 %r1341; .reg .u64 %r1342; .reg .u64 %r1343; .reg .u16 %r1345; mov.u64 %r465,%ar0; mov.u64 %r466,%ar1; mov.u64 %r467,%ar2; mov.u64 %r468,%ar3; .loc 1 688 7 mov.u32 %r218,0; .loc 1 678 10 mov.u64 %r464,0; .loc 1 1397 25 add.u64 %r1340,%r466,-1; .loc 1 1323 3 add.u64 %r1341,%frame,1028; add.u64 %r1342,%frame,1024; .loc 1 932 9 add.u64 %r1343,%frame,1032; bra $L12; $L15: .loc 1 695 7 setp.gt.u64 %r477,%r1340,%r464; @ %r477 bra $L13; $L75: .loc 1 698 13 mov.u64 %r464,0; bra $L11; $L13: .loc 1 696 26 add.u64 %r467,%r467,4; .loc 1 696 17 shl.b64 %r478,%r464,2; add.u64 %r479,%r465,%r478; st.u32 [%r479],%r26; .loc 1 696 13 add.u64 %r464,%r464,1; $L12: .loc 1 693 14 ld.u32 %r26,[%r467]; .loc 1 693 22 set.u32.ne.u32 %r481,%r26,0; neg.s32 %r482,%r481; mov.u32 %r480,%r482; set.u32.ne.u32 %r484,%r26,37; neg.s32 %r485,%r484; mov.u32 %r483,%r485; cvt.u16.u8 %r1345,%r480; mov.u16 %r487,%r1345; cvt.u16.u8 %r1345,%r483; mov.u16 %r488,%r1345; and.b16 %r486,%r487,%r488; cvt.u32.u16 %r489,%r486; cvt.u16.u8 %r490,%r489; setp.ne.u16 %r491,%r490,0; @ %r491 bra $L15; .loc 1 700 10 setp.eq.u32 %r492,%r26,0; @ %r492 bra $L16; .loc 1 708 11 ld.u32 %r404,[%r467+4]; .loc 1 708 30 set.u32.eq.u32 %r494,%r404,48; neg.s32 %r495,%r494; mov.u32 %r493,%r495; set.u32.eq.u32 %r497,%r404,43; neg.s32 %r498,%r497; mov.u32 %r496,%r498; cvt.u16.u8 %r1345,%r493; mov.u16 %r500,%r1345; cvt.u16.u8 %r1345,%r496; mov.u16 %r501,%r1345; or.b16 %r499,%r500,%r501; cvt.u32.u16 %r502,%r499; .loc 1 708 10 cvt.u16.u8 %r503,%r502; setp.ne.u16 %r504,%r503,0; @ %r504 bra $L17; .loc 1 702 13 add.u64 %r33,%r467,4; .loc 1 703 11 mov.u32 %r79,0; bra $L18; $L17: .loc 1 709 15 add.u64 %r33,%r467,8; .loc 1 708 11 mov.u32 %r79,%r404; .loc 1 712 11 ld.u32 %r404,[%r467+8]; $L18: .loc 1 712 30 add.u32 %r505,%r404,-49; .loc 1 712 10 setp.gt.u32 %r506,%r505,8; @ %r506 bra $L158; .loc 1 715 12 mov.u32 %r509,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1342; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r509; call (%value_in),wcstoul,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r511,[%value_in]; } mov.u64 %r36,%r511; .loc 1 716 11 ld.u64 %r33,[%frame+1024]; .loc 1 720 11 ld.u32 %r404,[%r33]; bra $L19; $L158: .loc 1 704 13 mov.u64 %r36,0; $L19: .loc 1 720 10 setp.ne.u32 %r512,%r404,69; @ %r512 bra $L20; .loc 1 747 15 ld.u32 %r404,[%r33+4]; .loc 1 722 17 add.u64 %r33,%r33,4; bra $L21; $L20: .loc 1 733 15 setp.ne.u32 %r513,%r404,79; @ %r513 bra $L21; .loc 1 747 15 ld.u32 %r404,[%r33+4]; .loc 1 735 17 add.u64 %r33,%r33,4; $L21: .loc 1 747 7 setp.eq.u32 %r514,%r404,90; @ %r514 bra $L22; setp.gt.s32 %r515,%r404,90; @ %r515 bra $L23; setp.eq.u32 %r516,%r404,77; @ %r516 bra $L24; setp.gt.s32 %r517,%r404,77; @ %r517 bra $L25; setp.eq.u32 %r518,%r404,68; @ %r518 bra $L26; setp.gt.s32 %r519,%r404,68; @ %r519 bra $L27; setp.eq.u32 %r520,%r404,66; @ %r520 bra $L28; setp.gt.s32 %r521,%r404,66; @ %r521 bra $L29; setp.eq.u32 %r522,%r404,37; @ %r522 bra $L30; setp.eq.u32 %r523,%r404,65; @ %r523 bra $L31; mov.u64 %r464,0; bra $L11; $L29: setp.eq.u32 %r524,%r404,67; @ %r524 bra $L32; mov.u64 %r464,0; bra $L11; $L27: setp.eq.u32 %r525,%r404,71; @ %r525 bra $L33; setp.gt.s32 %r526,%r404,71; @ %r526 bra $L34; setp.eq.u32 %r527,%r404,70; @ %r527 bra $L35; mov.u64 %r464,0; bra $L11; $L34: setp.eq.u32 %r528,%r404,72; @ %r528 bra $L36; setp.eq.u32 %r1337,%r404,73; @ %r1337 bra $L37; mov.u64 %r464,0; bra $L11; $L25: setp.eq.u32 %r530,%r404,85; @ %r530 bra $L38; setp.gt.s32 %r531,%r404,85; @ %r531 bra $L39; setp.eq.u32 %r532,%r404,83; @ %r532 bra $L40; setp.gt.s32 %r533,%r404,83; @ %r533 bra $L41; setp.eq.u32 %r534,%r404,80; @ %r534 bra $L42; setp.eq.u32 %r535,%r404,82; @ %r535 bra $L43; mov.u64 %r464,0; bra $L11; $L41: setp.eq.u32 %r536,%r404,84; @ %r536 bra $L44; mov.u64 %r464,0; bra $L11; $L39: setp.eq.u32 %r537,%r404,88; @ %r537 bra $L45; setp.eq.u32 %r538,%r404,89; @ %r538 bra $L46; setp.eq.u32 %r539,%r404,86; @ %r539 bra $L47; setp.eq.u32 %r540,%r404,87; @ %r540 bra $L48; mov.u64 %r464,0; bra $L11; $L23: setp.eq.u32 %r541,%r404,110; @ %r541 bra $L49; setp.gt.s32 %r542,%r404,110; @ %r542 bra $L50; setp.eq.u32 %r543,%r404,103; @ %r543 bra $L51; setp.gt.s32 %r544,%r404,103; @ %r544 bra $L52; setp.eq.u32 %r545,%r404,99; @ %r545 bra $L53; setp.gt.s32 %r546,%r404,99; @ %r546 bra $L54; setp.eq.u32 %r547,%r404,97; @ %r547 bra $L55; setp.eq.u32 %r548,%r404,98; @ %r548 bra $L56; mov.u64 %r464,0; bra $L11; $L54: add.u32 %r549,%r404,-100; setp.gt.u32 %r550,%r549,1; @ ! %r550 bra $L208; bra $L159; $L52: setp.eq.u32 %r551,%r404,107; @ %r551 bra $L58; setp.gt.s32 %r552,%r404,107; @ %r552 bra $L59; setp.eq.u32 %r553,%r404,104; @ %r553 bra $L56; setp.eq.u32 %r554,%r404,106; @ %r554 bra $L60; mov.u64 %r464,0; bra $L11; $L59: setp.eq.u32 %r555,%r404,108; @ %r555 bra $L61; setp.eq.u32 %r556,%r404,109; @ %r556 bra $L62; mov.u64 %r464,0; bra $L11; $L50: setp.eq.u32 %r557,%r404,117; @ %r557 bra $L63; setp.gt.s32 %r558,%r404,117; @ %r558 bra $L64; setp.eq.u32 %r559,%r404,115; @ %r559 bra $L65; setp.gt.s32 %r560,%r404,115; @ %r560 bra $L66; setp.eq.u32 %r561,%r404,112; @ %r561 bra $L42; setp.eq.u32 %r562,%r404,114; @ %r562 bra $L67; mov.u64 %r464,0; bra $L11; $L66: setp.eq.u32 %r563,%r404,116; @ %r563 bra $L68; mov.u64 %r464,0; bra $L11; $L64: setp.eq.u32 %r564,%r404,121; @ %r564 bra $L69; setp.gt.s32 %r565,%r404,121; @ %r565 bra $L70; setp.eq.u32 %r566,%r404,119; @ %r566 bra $L71; setp.eq.u32 %r567,%r404,120; @ %r567 bra $L72; mov.u64 %r464,0; bra $L11; $L70: setp.eq.u32 %r568,%r404,122; @ %r568 bra $L73; mov.u64 %r464,0; bra $L11; $L55: .loc 1 750 4 cvta.const.u64 %r569,_C_time_locale; ld.s32 %r570,[%r468+24]; add.u64 %r571,%r570,24; shl.b64 %r572,%r571,3; add.u64 %r573,%r569,%r572; ld.u64 %r40,[%r573]; .loc 1 324 28 mov.u32 %r574,0; st.u32 [%frame+1020],%r574; .loc 1 325 18 mov.u64 %r577,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r577; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r578,[%value_in]; } .loc 1 751 18 add.u64 %r579,%r578,-1; setp.gt.u64 %r580,%r579,-3; @ %r580 bra $L74; .loc 1 753 11 setp.ge.u64 %r581,%r464,%r1340; @ %r581 bra $L75; mov.u64 %r424,%frame; shl.b64 %r582,%r464,2; add.u64 %r423,%r465,%r582; add.u64 %r418,%r464,%r578; bra $L76; $L77: add.u64 %r424,%r424,4; add.u64 %r423,%r423,4; setp.ge.u64 %r583,%r464,%r1340; @ %r583 bra $L75; $L76: .loc 1 754 10 add.u64 %r464,%r464,1; .loc 1 754 14 ld.u32 %r584,[%r424]; st.u32 [%r423],%r584; .loc 1 751 18 setp.ne.u64 %r585,%r464,%r418; @ %r585 bra $L77; bra $L74; $L31: .loc 1 760 4 cvta.const.u64 %r586,_C_time_locale; ld.s32 %r587,[%r468+24]; add.u64 %r588,%r587,30; shl.b64 %r589,%r588,3; add.u64 %r590,%r586,%r589; ld.u64 %r47,[%r590+8]; .loc 1 324 28 mov.u32 %r592,0; st.u32 [%frame+1020],%r592; .loc 1 325 18 mov.u64 %r595,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r595; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r596,[%value_in]; } .loc 1 761 18 add.u64 %r597,%r596,-1; setp.gt.u64 %r598,%r597,-3; @ %r598 bra $L74; .loc 1 763 11 setp.ge.u64 %r599,%r464,%r1340; @ %r599 bra $L75; mov.u64 %r454,%frame; shl.b64 %r600,%r464,2; add.u64 %r451,%r465,%r600; add.u64 %r446,%r464,%r596; bra $L78; $L79: add.u64 %r454,%r454,4; add.u64 %r451,%r451,4; setp.ge.u64 %r601,%r464,%r1340; @ %r601 bra $L75; $L78: .loc 1 764 10 add.u64 %r464,%r464,1; .loc 1 764 14 ld.u32 %r602,[%r454]; st.u32 [%r451],%r602; .loc 1 761 18 setp.ne.u64 %r603,%r464,%r446; @ %r603 bra $L79; bra $L74; $L56: .loc 1 771 4 cvta.const.u64 %r604,_C_time_locale; ld.s32 %r605,[%r468+16]; shl.b64 %r606,%r605,3; add.u64 %r607,%r604,%r606; ld.u64 %r53,[%r607]; .loc 1 324 28 mov.u32 %r608,0; st.u32 [%frame+1020],%r608; .loc 1 325 18 mov.u64 %r611,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r611; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r612,[%value_in]; } .loc 1 772 18 add.u64 %r613,%r612,-1; setp.gt.u64 %r614,%r613,-3; @ %r614 bra $L74; .loc 1 774 11 setp.ge.u64 %r615,%r464,%r1340; @ %r615 bra $L75; mov.u64 %r417,%frame; shl.b64 %r616,%r464,2; add.u64 %r412,%r465,%r616; add.u64 %r407,%r464,%r612; bra $L80; $L81: add.u64 %r417,%r417,4; add.u64 %r412,%r412,4; setp.ge.u64 %r617,%r464,%r1340; @ %r617 bra $L75; $L80: .loc 1 775 10 add.u64 %r464,%r464,1; .loc 1 775 14 ld.u32 %r618,[%r417]; st.u32 [%r412],%r618; .loc 1 772 18 setp.ne.u64 %r619,%r464,%r407; @ %r619 bra $L81; bra $L74; $L28: .loc 1 781 4 cvta.const.u64 %r620,_C_time_locale; ld.s32 %r621,[%r468+16]; add.u64 %r622,%r621,12; shl.b64 %r623,%r622,3; add.u64 %r624,%r620,%r623; ld.u64 %r58,[%r624]; .loc 1 324 28 mov.u32 %r625,0; st.u32 [%frame+1020],%r625; .loc 1 325 18 mov.u64 %r628,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r58; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r628; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r629,[%value_in]; } .loc 1 782 18 add.u64 %r630,%r629,-1; setp.gt.u64 %r631,%r630,-3; @ %r631 bra $L74; .loc 1 784 11 setp.ge.u64 %r632,%r464,%r1340; @ %r632 bra $L75; mov.u64 %r442,%frame; shl.b64 %r633,%r464,2; add.u64 %r441,%r465,%r633; add.u64 %r436,%r464,%r629; bra $L82; $L83: add.u64 %r442,%r442,4; add.u64 %r441,%r441,4; setp.ge.u64 %r634,%r464,%r1340; @ %r634 bra $L75; $L82: .loc 1 785 10 add.u64 %r464,%r464,1; .loc 1 785 14 ld.u32 %r635,[%r442]; st.u32 [%r441],%r635; .loc 1 782 18 setp.ne.u64 %r636,%r464,%r436; @ %r636 bra $L83; bra $L74; $L53: .loc 1 796 6 cvta.const.u64 %r637,_C_time_locale; ld.u64 %r62,[%r637+320]; .loc 1 324 28 mov.u32 %r638,0; st.u32 [%frame+1020],%r638; .loc 1 325 18 mov.u64 %r641,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r62; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r641; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r642,[%value_in]; } .loc 1 797 4 bra $L84; $L67: .loc 1 799 4 cvta.const.u64 %r643,_C_time_locale; ld.u64 %r63,[%r643+456]; .loc 1 324 28 mov.u32 %r644,0; st.u32 [%frame+1020],%r644; .loc 1 325 18 mov.u64 %r647,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r647; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r648,[%value_in]; } .loc 1 800 4 bra $L84; $L72: .loc 1 807 6 cvta.const.u64 %r649,_C_time_locale; ld.u64 %r64,[%r649+312]; .loc 1 324 28 mov.u32 %r650,0; st.u32 [%frame+1020],%r650; .loc 1 325 18 mov.u64 %r653,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r653; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r654,[%value_in]; } .loc 1 808 4 bra $L84; $L45: .loc 1 815 6 cvta.const.u64 %r655,_C_time_locale; ld.u64 %r65,[%r655+304]; .loc 1 324 28 mov.u32 %r656,0; st.u32 [%frame+1020],%r656; .loc 1 325 18 mov.u64 %r659,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r65; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r659; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r660,[%value_in]; } $L84: .loc 1 817 7 ld.u32 %r661,[%frame]; setp.eq.u32 %r662,%r661,0; @ %r662 bra $L74; .loc 1 820 14 sub.u64 %r667,%r466,%r464; shl.b64 %r668,%r464,2; add.u64 %r669,%r465,%r668; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r669; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r667; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r468; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r670,[%value_in]; } .loc 1 820 12 cvt.u32.u64 %r71,%r670; .loc 1 822 11 setp.le.s32 %r671,%r71,0; @ %r671 bra $L75; .loc 1 823 9 cvt.s64.s32 %r672,%r71; add.u64 %r464,%r464,%r672; bra $L74; $L32: .loc 1 859 18 ld.u32 %r73,[%r468+20]; .loc 1 871 9 max.u64 %r673,%r36,2; .loc 1 859 28 set.u32.lt.s32 %r675,%r73,-1900; cvt.s64.s32 %r674,%r675; .loc 1 871 9 add.u64 %r413,%r673,%r674; .loc 1 862 5 setp.lt.s32 %r677,%r73,0; @ %r677 bra $L85; .loc 1 861 22 div.s32 %r679,%r73,100; .loc 1 862 5 add.u32 %r76,%r679,19; .loc 1 863 6 setp.ne.u32 %r680,%r79,0; @ %r680 bra $L86; .loc 1 857 9 cvta.const.u64 %r86,$LC1; .loc 1 858 9 cvta.const.u64 %r87,$LC0; bra $L87; $L85: .loc 1 862 7 add.u32 %r682,%r73,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r682; call (%value_in),abs,(%out_arg1); ld.param.u32 %r683,[%value_in]; } .loc 1 862 5 div.s32 %r76,%r683,100; .loc 1 863 6 setp.eq.u32 %r684,%r79,0; @ %r684 bra $L160; .loc 1 866 19 set.u32.gt.s32 %r686,%r683,9999; neg.s32 %r687,%r686; mov.u32 %r685,%r687; .loc 1 866 33 set.u32.eq.u32 %r689,%r79,43; neg.s32 %r690,%r689; mov.u32 %r688,%r690; .loc 1 866 26 cvt.u16.u8 %r1345,%r685; mov.u16 %r692,%r1345; cvt.u16.u8 %r1345,%r688; mov.u16 %r693,%r1345; and.b16 %r691,%r692,%r693; cvt.u32.u16 %r694,%r691; .loc 1 866 10 cvt.u16.u8 %r695,%r694; setp.ne.u16 %r696,%r695,0; @ %r696 bra $L161; $L153: .loc 1 858 9 cvta.const.u64 %r87,$LC0; .loc 1 865 11 cvta.const.u64 %r86,$LC2; bra $L88; $L160: .loc 1 858 9 cvta.const.u64 %r87,$LC0; .loc 1 857 9 cvta.const.u64 %r86,$LC1; bra $L88; $L161: .loc 1 867 13 cvta.const.u64 %r87,$LC3; .loc 1 865 11 cvta.const.u64 %r86,$LC2; $L88: .loc 1 871 9 setp.ge.s32 %r697,%r73,-1900; @ %r697 bra $L87; cvta.const.u64 %r87,$LC4; bra $L87; $L176: .loc 1 865 11 cvta.const.u64 %r86,$LC2; .loc 1 867 13 cvta.const.u64 %r87,$LC3; $L87: .loc 1 871 9 sub.u64 %r701,%r466,%r464; .loc 1 871 21 shl.b64 %r702,%r464,2; .loc 1 871 9 add.u64 %r703,%r465,%r702; st.u32 [%stack+16],%r76; st.u64 [%stack+8],%r413; st.u64 [%stack],%r87; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r703; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r701; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r86; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r704,[%value_in]; } .loc 1 874 13 setp.lt.s32 %r706,%r704,0; @ %r706 bra $L75; cvt.s64.s32 %r707,%r704; add.u64 %r464,%r464,%r707; setp.le.u64 %r708,%r466,%r464; @ ! %r708 bra $L74; bra $L75; $L208: .loc 1 903 11 ld.u32 %r90,[%r468+12]; .loc 1 901 10 setp.eq.u32 %r709,%r404,100; @ %r709 bra $L162; cvta.const.u64 %r94,$LC6; bra $L89; $L162: cvta.const.u64 %r94,$LC5; $L89: sub.u64 %r713,%r466,%r464; .loc 1 901 22 shl.b64 %r714,%r464,2; .loc 1 901 10 add.u64 %r715,%r465,%r714; st.u32 [%stack],%r90; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r715; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r94; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r716,[%value_in]; } .loc 1 904 4 setp.lt.s32 %r718,%r716,0; @ %r718 bra $L75; cvt.s64.s32 %r719,%r716; add.u64 %r464,%r464,%r719; setp.le.u64 %r720,%r466,%r464; @ ! %r720 bra $L74; bra $L75; $L26: .loc 1 911 11 ld.u32 %r97,[%r468+20]; .loc 1 908 10 setp.lt.s32 %r721,%r97,0; @ %r721 bra $L90; rem.s32 %r98,%r97,100; bra $L91; $L90: .loc 1 912 8 add.u32 %r723,%r97,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r723; call (%value_in),abs,(%out_arg1); ld.param.u32 %r724,[%value_in]; } .loc 1 908 10 rem.s32 %r98,%r724,100; $L91: sub.u64 %r728,%r466,%r464; .loc 1 908 22 shl.b64 %r729,%r464,2; .loc 1 908 10 add.u64 %r730,%r465,%r729; st.u32 [%stack+8],%r98; ld.u32 %r731,[%r468+12]; st.u32 [%stack+4],%r731; ld.u32 %r733,[%r468+16]; add.u32 %r732,%r733,1; st.u32 [%stack],%r732; cvta.const.u64 %r727,$LC7; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r730; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r728; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r727; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r734,[%value_in]; } .loc 1 913 11 setp.lt.s32 %r736,%r734,0; @ %r736 bra $L75; cvt.s64.s32 %r737,%r734; add.u64 %r464,%r464,%r737; setp.le.u64 %r738,%r466,%r464; @ ! %r738 bra $L74; bra $L75; $L35: .loc 1 920 13 mov.u32 %r739,37; st.u32 [%frame+1024],%r739; .loc 1 921 9 setp.eq.u32 %r740,%r79,0; @ %r740 bra $L92; .loc 1 922 15 st.u32 [%frame+1028],%r79; max.u64 %r109,%r36,6; .loc 1 929 12 add.u64 %r111,%r109,-6; .loc 1 930 9 setp.ne.u64 %r741,%r109,6; @ %r741 bra $L93; $L95: .loc 1 929 12 mov.u64 %r114,%r1343; bra $L94; $L92: .loc 1 924 15 mov.u32 %r742,43; st.u32 [%frame+1028],%r742; .loc 1 929 12 mov.u64 %r111,4; $L93: .loc 1 932 9 st.u64 [%stack],%r111; cvta.const.u64 %r745,$LC8; mov.u64 %r744,30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1343; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r744; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r745; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r748,[%value_in]; } .loc 1 933 6 setp.le.s32 %r750,%r748,0; @ %r750 bra $L95; .loc 1 934 9 cvt.s64.s32 %r753,%r748; shl.b64 %r754,%r753,2; add.u64 %r114,%r1343,%r754; $L94: .loc 1 936 6 cvta.const.u64 %r756,$LC9; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r756; call (%value_in),wcscpy,(%out_arg1,%out_arg2); ld.param.u64 %r757,[%value_in]; } .loc 1 937 12 sub.u64 %r763,%r466,%r464; shl.b64 %r764,%r464,2; add.u64 %r765,%r465,%r764; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r765; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r763; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1342; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r468; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r766,[%value_in]; } .loc 1 937 10 cvt.u32.u64 %r119,%r766; .loc 1 939 9 setp.le.s32 %r767,%r119,0; @ %r767 bra $L96; .loc 1 940 14 cvt.s64.s32 %r768,%r119; add.u64 %r464,%r464,%r768; bra $L74; $L96: .loc 1 942 15 mov.u64 %r464,0; bra $L11; $L51: ld.u32 %r389,[%r468+20]; .loc 1 949 19 ld.u32 %r772,[%r468+28]; ld.u32 %r773,[%r468+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r389; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r773; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r772; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r774,[%value_in]; } mov.u32 %r121,%r774; .loc 1 951 3 setp.lt.s32 %r775,%r389,0; @ %r775 bra $L97; rem.s32 %r122,%r389,100; bra $L98; $L97: .loc 1 951 5 add.u32 %r777,%r389,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r777; call (%value_in),abs,(%out_arg1); ld.param.u32 %r778,[%value_in]; } .loc 1 951 3 rem.s32 %r122,%r778,100; $L98: .loc 1 952 9 setp.ge.s32 %r779,%r774,0; @ %r779 bra $L99; .loc 1 952 21 ld.u32 %r780,[%r468+20]; setp.lt.s32 %r781,%r780,-1899; .loc 1 953 10 selp.u32 %r121,1,%r774,%r781; bra $L100; $L99: .loc 1 954 14 setp.eq.u32 %r782,%r774,0; @ %r782 bra $L100; .loc 1 954 26 ld.u32 %r783,[%r468+20]; setp.ge.s32 %r784,%r783,-1900; .loc 1 955 10 selp.u32 %r121,%r774,-1,%r784; $L100: .loc 1 956 12 sub.u64 %r788,%r466,%r464; .loc 1 956 24 shl.b64 %r789,%r464,2; .loc 1 956 12 add.u64 %r790,%r465,%r789; .loc 1 957 15 add.u32 %r791,%r121,%r122; .loc 1 957 25 rem.s32 %r793,%r791,100; .loc 1 957 31 add.u32 %r794,%r793,100; .loc 1 956 12 rem.s32 %r798,%r794,100; st.u32 [%stack],%r798; cvta.const.u64 %r787,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r790; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r788; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r787; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r799,[%value_in]; } .loc 1 958 13 setp.lt.s32 %r801,%r799,0; @ %r801 bra $L75; cvt.s64.s32 %r802,%r799; add.u64 %r464,%r464,%r802; setp.le.u64 %r803,%r466,%r464; @ ! %r803 bra $L74; bra $L75; $L33: .loc 1 966 22 ld.u32 %r136,[%r468+20]; .loc 1 966 32 set.u32.lt.s32 %r804,%r136,-1900; neg.s32 %r137,%r804; .loc 1 966 10 mov.u32 %r138,%r137; .loc 1 967 19 ld.u32 %r810,[%r468+28]; ld.u32 %r811,[%r468+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r136; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r811; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r810; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r812,[%value_in]; } mov.u32 %r139,%r812; .loc 1 970 8 setp.lt.s32 %r813,%r136,0; @ %r813 bra $L101; .loc 1 969 25 div.s32 %r815,%r136,100; .loc 1 970 8 add.u32 %r141,%r815,19; bra $L102; $L101: .loc 1 970 10 add.u32 %r817,%r136,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r817; call (%value_in),abs,(%out_arg1); ld.param.u32 %r818,[%value_in]; } .loc 1 970 8 div.s32 %r141,%r818,100; .loc 1 971 22 ld.u32 %r136,[%r468+20]; .loc 1 972 8 setp.lt.s32 %r819,%r136,0; @ %r819 bra $L103; $L102: rem.s32 %r144,%r136,100; bra $L104; $L103: .loc 1 972 10 add.u32 %r821,%r136,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r821; call (%value_in),abs,(%out_arg1); ld.param.u32 %r822,[%value_in]; } .loc 1 972 8 rem.s32 %r144,%r822,100; $L104: .loc 1 973 9 setp.ge.s32 %r823,%r812,0; @ %r823 bra $L105; .loc 1 973 21 ld.u32 %r824,[%r468+20]; setp.lt.s32 %r825,%r824,-1899; @ %r825 bra $L164; bra $L209; $L105: .loc 1 975 22 set.u32.gt.s32 %r827,%r812,0; neg.s32 %r828,%r827; mov.u32 %r826,%r828; .loc 1 975 26 cvt.u16.u8 %r1345,%r826; mov.u16 %r830,%r1345; cvt.u16.u32 %r831,%r137; and.b16 %r829,%r830,%r831; cvt.u32.u16 %r832,%r829; .loc 1 975 14 cvt.u16.u8 %r833,%r832; setp.ne.u16 %r834,%r833,0; @ %r834 bra $L108; bra $L106; $L164: .loc 1 974 22 mov.u32 %r139,1; .loc 1 974 13 mov.u32 %r138,%r139; $L106: .loc 1 977 11 add.u32 %r151,%r139,%r144; .loc 1 978 9 setp.ne.u32 %r835,%r151,-1; @ %r835 bra $L109; $L152: .loc 1 981 3 add.u32 %r141,%r141,-1; .loc 1 980 8 mov.u32 %r151,99; bra $L110; $L109: .loc 1 983 14 setp.ne.u32 %r836,%r151,100; @ %r836 bra $L110; .loc 1 986 3 add.u32 %r141,%r141,1; .loc 1 985 8 mov.u32 %r151,0; $L110: .loc 1 990 38 mad.lo.u32 %r61,%r141,100,%r151; .loc 1 991 9 setp.eq.u32 %r838,%r138,0; @ %r838 bra $L111; $L156: .loc 1 992 15 mov.u32 %r839,45; st.u32 [%frame+1024],%r839; .loc 1 998 9 setp.eq.u64 %r840,%r36,0; @ %r840 bra $L165; $L113: .loc 1 999 8 add.u64 %r36,%r36,-1; mov.u64 %r443,%r1341; bra $L112; $L111: .loc 1 993 19 set.u32.eq.u32 %r842,%r79,43; neg.s32 %r843,%r842; mov.u32 %r841,%r843; .loc 1 993 40 set.u32.gt.u32 %r845,%r61,9999; neg.s32 %r846,%r845; mov.u32 %r844,%r846; .loc 1 993 30 cvt.u16.u8 %r1345,%r841; mov.u16 %r848,%r1345; cvt.u16.u8 %r1345,%r844; mov.u16 %r849,%r1345; and.b16 %r847,%r848,%r849; cvt.u32.u16 %r850,%r847; .loc 1 993 14 cvt.u16.u8 %r851,%r850; setp.eq.u16 %r852,%r851,0; @ %r852 bra $L166; .loc 1 995 10 mov.u32 %r853,43; st.u32 [%frame+1024],%r853; .loc 1 998 9 setp.ne.u64 %r854,%r36,0; @ %r854 bra $L113; bra $L210; $L165: mov.u64 %r443,%r1341; bra $L112; $L166: .loc 1 988 24 mov.u64 %r443,%r1342; $L112: .loc 1 1000 13 mov.u32 %r855,37; st.u32 [%r443],%r855; .loc 1 1001 9 setp.ne.u32 %r856,%r79,0; @ %r856 bra $L115; .loc 1 1000 10 add.u64 %r157,%r443,4; bra $L116; $L115: .loc 1 1002 12 add.u64 %r157,%r443,8; .loc 1 1002 15 mov.u32 %r857,48; st.u32 [%r443+4],%r857; $L116: .loc 1 1003 6 cvta.const.u64 %r859,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r157; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r859; call (%value_in),wcscpy,(%out_arg1,%out_arg2); ld.param.u64 %r860,[%value_in]; } .loc 1 1004 12 sub.u64 %r865,%r466,%r464; .loc 1 1004 24 shl.b64 %r866,%r464,2; .loc 1 1004 12 add.u64 %r867,%r465,%r866; st.u32 [%stack+8],%r61; st.u64 [%stack],%r36; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r867; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r865; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1342; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r868,[%value_in]; } .loc 1 1005 16 setp.lt.s32 %r870,%r868,0; @ %r870 bra $L117; .loc 1 1005 36 cvt.s64.s32 %r871,%r868; add.u64 %r464,%r464,%r871; .loc 1 1005 26 setp.gt.u64 %r872,%r466,%r464; @ %r872 bra $L74; $L117: .loc 1 1006 22 mov.u64 %r464,0; bra $L11; $L155: .loc 1 1022 10 sub.u64 %r876,%r466,%r464; .loc 1 1022 22 shl.b64 %r877,%r464,2; .loc 1 1022 10 add.u64 %r878,%r465,%r877; st.u32 [%stack],%r50; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r878; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r876; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r167; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r879,[%value_in]; } .loc 1 1025 11 setp.lt.s32 %r881,%r879,0; @ %r881 bra $L75; cvt.s64.s32 %r882,%r879; add.u64 %r464,%r464,%r882; setp.le.u64 %r883,%r466,%r464; @ ! %r883 bra $L74; bra $L75; $L154: .loc 1 1035 11 rem.s32 %r171,%r43,12; .loc 1 1041 14 @ %r1337 bra $L167; cvta.const.u64 %r175,$LC6; bra $L119; $L167: cvta.const.u64 %r175,$LC5; $L119: sub.u64 %r888,%r466,%r464; .loc 1 1041 26 shl.b64 %r889,%r464,2; .loc 1 1041 14 add.u64 %r890,%r465,%r889; st.u32 [%stack],%r171; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r890; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r888; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r175; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r891,[%value_in]; } .loc 1 1043 6 setp.lt.s32 %r893,%r891,0; @ %r893 bra $L75; cvt.s64.s32 %r894,%r891; add.u64 %r464,%r464,%r894; setp.le.u64 %r895,%r466,%r464; @ ! %r895 bra $L74; bra $L75; $L60: .loc 1 1047 10 sub.u64 %r899,%r466,%r464; .loc 1 1047 22 shl.b64 %r900,%r464,2; .loc 1 1047 10 add.u64 %r901,%r465,%r900; ld.u32 %r903,[%r468+28]; add.u32 %r902,%r903,1; st.u32 [%stack],%r902; cvta.const.u64 %r898,$LC11; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r901; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r899; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r898; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r904,[%value_in]; } .loc 1 1049 11 setp.lt.s32 %r906,%r904,0; @ %r906 bra $L75; cvt.s64.s32 %r907,%r904; add.u64 %r464,%r464,%r907; setp.le.u64 %r908,%r466,%r464; @ ! %r908 bra $L74; bra $L75; $L62: .loc 1 1057 12 sub.u64 %r912,%r466,%r464; .loc 1 1057 24 shl.b64 %r913,%r464,2; .loc 1 1057 12 add.u64 %r914,%r465,%r913; ld.u32 %r916,[%r468+16]; add.u32 %r915,%r916,1; st.u32 [%stack],%r915; cvta.const.u64 %r911,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r914; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r912; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r911; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r917,[%value_in]; } .loc 1 1059 11 setp.lt.s32 %r919,%r917,0; @ %r919 bra $L75; cvt.s64.s32 %r920,%r917; add.u64 %r464,%r464,%r920; setp.le.u64 %r921,%r466,%r464; @ ! %r921 bra $L74; bra $L75; $L24: .loc 1 1067 12 sub.u64 %r925,%r466,%r464; .loc 1 1067 24 shl.b64 %r926,%r464,2; .loc 1 1067 12 add.u64 %r927,%r465,%r926; ld.u32 %r928,[%r468+4]; st.u32 [%stack],%r928; cvta.const.u64 %r924,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r927; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r925; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r924; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r929,[%value_in]; } .loc 1 1069 11 setp.lt.s32 %r931,%r929,0; @ %r931 bra $L75; cvt.s64.s32 %r932,%r929; add.u64 %r464,%r464,%r932; setp.le.u64 %r933,%r466,%r464; @ ! %r933 bra $L74; bra $L75; $L49: .loc 1 1072 7 setp.ge.u64 %r935,%r464,%r1340; @ %r935 bra $L75; .loc 1 1073 17 shl.b64 %r936,%r464,2; add.u64 %r937,%r465,%r936; mov.u32 %r938,10; st.u32 [%r937],%r938; .loc 1 1073 13 add.u64 %r464,%r464,1; .loc 1 1076 4 bra $L74; $L42: .loc 1 1079 4 cvta.const.u64 %r939,_C_time_locale; ld.u32 %r941,[%r468+8]; set.u32.gt.s32 %r942,%r941,11; neg.s32 %r943,%r942; cvt.s64.s32 %r944,%r943; add.u64 %r945,%r944,40; shl.b64 %r946,%r945,3; add.u64 %r947,%r939,%r946; ld.u64 %r205,[%r947+8]; .loc 1 324 28 mov.u32 %r949,0; st.u32 [%frame+1020],%r949; .loc 1 325 18 mov.u64 %r952,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r205; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r952; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r953,[%value_in]; } .loc 1 1080 18 add.u64 %r954,%r953,-1; setp.gt.u64 %r955,%r954,-3; @ %r955 bra $L74; .loc 1 1082 11 setp.ge.u64 %r956,%r464,%r1340; @ %r956 bra $L75; add.u64 %r430,%r464,%r953; neg.s64 %r958,%r464; shl.b64 %r959,%r958,2; bra $L120; $L122: setp.ge.u64 %r960,%r464,%r1340; @ %r960 bra $L75; $L120: shl.b64 %r434,%r464,2; .loc 1 1083 38 add.u64 %r961,%r434,%r959; add.u64 %r962,%frame,%r961; ld.u32 %r209,[%r962]; .loc 1 1084 8 ld.u32 %r963,[%r33]; setp.ne.u32 %r964,%r963,80; @ %r964 bra $L121; .loc 1 1083 38 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r209; call (%value_in),towlower,(%out_arg1); ld.param.u32 %r966,[%value_in]; } .loc 1 1084 8 mov.u32 %r209,%r966; $L121: .loc 1 1083 10 add.u64 %r464,%r464,1; .loc 1 1083 14 add.u64 %r967,%r434,4; add.u64 %r968,%r465,%r967; st.u32 [%r968+-4],%r209; .loc 1 1080 18 setp.ne.u64 %r969,%r464,%r430; @ %r969 bra $L122; bra $L74; $L43: .loc 1 1090 17 sub.u64 %r973,%r466,%r464; .loc 1 1090 29 shl.b64 %r974,%r464,2; .loc 1 1090 17 add.u64 %r975,%r465,%r974; ld.u32 %r976,[%r468+4]; st.u32 [%stack+4],%r976; ld.u32 %r977,[%r468+8]; st.u32 [%stack],%r977; cvta.const.u64 %r972,$LC12; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r975; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r973; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r972; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r978,[%value_in]; } .loc 1 1092 11 setp.lt.s32 %r980,%r978,0; @ %r980 bra $L75; cvt.s64.s32 %r981,%r978; add.u64 %r464,%r464,%r981; setp.le.u64 %r982,%r466,%r464; @ ! %r982 bra $L74; bra $L75; $L65: .loc 1 1124 9 ld.u32 %r983,[%r468+32]; setp.lt.s32 %r984,%r983,0; @ %r984 bra $L168; .loc 1 1126 3 { call __tz_lock; } .loc 1 1127 6 setp.ne.u32 %r985,%r218,0; @ %r985 bra $L124; .loc 1 1129 7 { call _tzset_unlocked; } $L124: .loc 1 1144 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r986,[%value_in]; } .loc 1 1148 42 ld.u32 %r988,[%r468+32]; set.u32.gt.s32 %r989,%r988,0; neg.s32 %r990,%r989; .loc 1 1148 46 cvt.s64.s32 %r991,%r990; shl.b64 %r993,%r991,2; add.u64 %r994,%r993,%r991; shl.b64 %r995,%r994,3; add.u64 %r996,%r986,%r995; .loc 1 1148 10 ld.u64 %r998,[%r996+40]; neg.s64 %r224,%r998; .loc 1 1150 3 { call __tz_unlock; } mov.u32 %r218,1; bra $L123; $L168: .loc 1 1121 11 mov.u64 %r224,0; $L123: .loc 1 1153 28 ld.u32 %r225,[%r468+20]; .loc 1 1152 12 sub.u64 %r1002,%r466,%r464; .loc 1 1152 24 shl.b64 %r1003,%r464,2; .loc 1 1152 12 add.u64 %r1004,%r465,%r1003; .loc 1 1153 12 cvt.s64.s32 %r1005,%r225; .loc 1 1153 38 add.u64 %r1006,%r1005,-69; .loc 1 1153 43 shr.s64 %r1010,%r1006,63; and.b64 %r1011,%r1010,3; add.u64 %r1012,%r1011,%r1006; shr.s64 %r1013,%r1012,2; .loc 1 1154 23 add.u32 %r1014,%r225,-1; .loc 1 1154 27 div.s32 %r1016,%r1014,100; cvt.s64.s32 %r1017,%r1016; .loc 1 1154 5 sub.u64 %r1018,%r1013,%r1017; .loc 1 1155 23 add.u32 %r1019,%r225,299; .loc 1 1155 29 div.s32 %r1021,%r1019,400; cvt.s64.s32 %r1022,%r1021; .loc 1 1155 5 add.u64 %r1023,%r1018,%r1022; .loc 1 1156 23 add.u32 %r1024,%r225,-70; .loc 1 1156 28 mul.lo.u32 %r1025,%r1024,365; cvt.s64.s32 %r1026,%r1025; .loc 1 1156 5 add.u64 %r1027,%r1023,%r1026; .loc 1 1156 40 ld.s32 %r1028,[%r468+28]; .loc 1 1156 33 add.u64 %r1029,%r1027,%r1028; .loc 1 1156 50 add.u64 %r1031,%r1029,%r1029; add.u64 %r1032,%r1031,%r1029; shl.b64 %r1033,%r1032,3; .loc 1 1157 17 ld.s32 %r1034,[%r468+8]; .loc 1 1157 10 add.u64 %r1035,%r1033,%r1034; .loc 1 1157 27 shl.b64 %r1037,%r1035,4; sub.u64 %r1038,%r1037,%r1035; shl.b64 %r1039,%r1038,2; .loc 1 1157 38 ld.s32 %r1040,[%r468+4]; .loc 1 1157 31 add.u64 %r1041,%r1039,%r1040; .loc 1 1157 47 shl.b64 %r1043,%r1041,4; sub.u64 %r1044,%r1043,%r1041; shl.b64 %r1045,%r1044,2; .loc 1 1158 15 ld.s32 %r1046,[%r468]; .loc 1 1158 8 add.u64 %r1047,%r1045,%r1046; .loc 1 1152 12 sub.u64 %r1048,%r1047,%r224; st.u64 [%stack],%r1048; cvta.const.u64 %r1001,$LC13; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1004; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1002; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1001; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1049,[%value_in]; } .loc 1 1159 6 setp.lt.s32 %r1051,%r1049,0; @ %r1051 bra $L75; cvt.s64.s32 %r1052,%r1049; add.u64 %r464,%r464,%r1052; setp.le.u64 %r1053,%r466,%r464; @ ! %r1053 bra $L74; bra $L75; $L40: .loc 1 1168 12 sub.u64 %r1057,%r466,%r464; .loc 1 1168 24 shl.b64 %r1058,%r464,2; .loc 1 1168 12 add.u64 %r1059,%r465,%r1058; ld.u32 %r1060,[%r468]; st.u32 [%stack],%r1060; cvta.const.u64 %r1056,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1059; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1057; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1056; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1061,[%value_in]; } .loc 1 1170 11 setp.lt.s32 %r1063,%r1061,0; @ %r1063 bra $L75; cvt.s64.s32 %r1064,%r1061; add.u64 %r464,%r464,%r1064; setp.le.u64 %r1065,%r466,%r464; @ ! %r1065 bra $L74; bra $L75; $L68: .loc 1 1173 7 setp.ge.u64 %r1067,%r464,%r1340; @ %r1067 bra $L75; .loc 1 1174 17 shl.b64 %r1068,%r464,2; add.u64 %r1069,%r465,%r1068; mov.u32 %r1070,9; st.u32 [%r1069],%r1070; .loc 1 1174 13 add.u64 %r464,%r464,1; .loc 1 1177 4 bra $L74; $L44: .loc 1 1179 17 sub.u64 %r1074,%r466,%r464; .loc 1 1179 29 shl.b64 %r1075,%r464,2; .loc 1 1179 17 add.u64 %r1076,%r465,%r1075; ld.u32 %r1077,[%r468]; st.u32 [%stack+8],%r1077; ld.u32 %r1078,[%r468+4]; st.u32 [%stack+4],%r1078; ld.u32 %r1079,[%r468+8]; st.u32 [%stack],%r1079; cvta.const.u64 %r1073,$LC14; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1076; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1074; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1073; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1080,[%value_in]; } .loc 1 1181 11 setp.lt.s32 %r1082,%r1080,0; @ %r1082 bra $L75; cvt.s64.s32 %r1083,%r1080; add.u64 %r464,%r464,%r1083; setp.le.u64 %r1084,%r466,%r464; @ ! %r1084 bra $L74; bra $L75; $L63: .loc 1 1196 14 setp.ge.u64 %r1086,%r464,%r1340; @ %r1086 bra $L75; .loc 1 1198 24 ld.u32 %r281,[%r468+24]; .loc 1 696 13 add.u64 %r386,%r464,1; .loc 1 696 7 shl.b64 %r1087,%r464,2; add.u64 %r387,%r465,%r1087; .loc 1 1198 18 setp.ne.u32 %r1088,%r281,0; @ %r1088 bra $L125; .loc 1 1199 28 mov.u32 %r1089,55; st.u32 [%r387],%r1089; .loc 1 1199 24 mov.u64 %r464,%r386; bra $L74; $L125: .loc 1 1201 38 add.u32 %r1090,%r281,48; .loc 1 1201 28 st.u32 [%r387],%r1090; .loc 1 1201 24 mov.u64 %r464,%r386; bra $L74; $L38: .loc 1 1214 12 sub.u64 %r1094,%r466,%r464; .loc 1 1214 24 shl.b64 %r1095,%r464,2; .loc 1 1214 12 add.u64 %r1096,%r465,%r1095; .loc 1 1215 21 ld.u32 %r1098,[%r468+28]; add.u32 %r1097,%r1098,7; .loc 1 1215 25 ld.u32 %r1100,[%r468+24]; sub.u32 %r1099,%r1097,%r1100; .loc 1 1214 12 div.s32 %r1102,%r1099,7; st.u32 [%stack],%r1102; cvta.const.u64 %r1093,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1096; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1094; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1093; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1103,[%value_in]; } .loc 1 1217 11 setp.lt.s32 %r1105,%r1103,0; @ %r1105 bra $L75; cvt.s64.s32 %r1106,%r1103; add.u64 %r464,%r464,%r1106; setp.le.u64 %r1107,%r466,%r464; @ ! %r1107 bra $L74; bra $L75; $L47: ld.u32 %r394,[%r468+20]; ld.u32 %r395,[%r468+24]; ld.u32 %r396,[%r468+28]; .loc 1 1221 19 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r394; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r395; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r396; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1111,[%value_in]; } .loc 1 1222 55 setp.eq.u32 %r1112,%r395,0; @ %r1112 bra $L169; add.u32 %r294,%r395,-1; bra $L126; $L169: mov.u32 %r294,6; $L126: .loc 1 1224 9 setp.gt.s32 %r1113,%r1111,0; @ %r1113 bra $L170; .loc 1 1226 14 setp.ne.u32 %r1114,%r1111,0; @ %r1114 bra $L128; .loc 1 1223 33 add.u32 %r1115,%r396,10; .loc 1 1223 38 sub.u32 %r1116,%r1115,%r294; .loc 1 1223 10 div.s32 %r297,%r1116,7; bra $L127; $L128: .loc 1 1230 27 sub.u32 %r298,%r294,%r396; .loc 1 1231 10 setp.lt.s32 %r1117,%r394,0; selp.u32 %r299,1899,-101,%r1117; add.u32 %r300,%r299,%r394; and.b32 %r1118,%r300,3; setp.ne.u32 %r1119,%r1118,0; @ %r1119 bra $L130; rem.s32 %r1121,%r300,100; setp.ne.u32 %r1127,%r1121,0; @ %r1127 bra $L172; $L130: rem.s32 %r1129,%r300,400; set.u32.eq.u32 %r1136,%r1129,0; neg.s32 %r305,%r1136; bra $L131; $L172: mov.u32 %r305,1; $L131: .loc 1 1231 8 sub.u32 %r1138,%r298,%r305; .loc 1 1230 13 setp.le.s32 %r1139,%r1138,4; selp.u32 %r297,53,52,%r1139; bra $L127; $L170: .loc 1 1225 8 mov.u32 %r297,1; $L127: .loc 1 1240 14 sub.u64 %r1143,%r466,%r464; .loc 1 1240 26 shl.b64 %r1144,%r464,2; .loc 1 1240 14 add.u64 %r1145,%r465,%r1144; st.u32 [%stack],%r297; cvta.const.u64 %r1142,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1145; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1143; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1142; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1146,[%value_in]; } .loc 1 1241 13 setp.lt.s32 %r1148,%r1146,0; @ %r1148 bra $L75; cvt.s64.s32 %r1149,%r1146; add.u64 %r464,%r464,%r1149; setp.le.u64 %r1150,%r466,%r464; @ ! %r1150 bra $L74; bra $L75; $L71: .loc 1 1255 7 setp.ge.u64 %r1152,%r464,%r1340; @ %r1152 bra $L75; .loc 1 1256 24 shl.b64 %r1153,%r464,2; add.u64 %r1154,%r465,%r1153; .loc 1 1256 34 ld.u32 %r1156,[%r468+24]; add.u32 %r1155,%r1156,48; .loc 1 1256 24 st.u32 [%r1154],%r1155; .loc 1 1256 20 add.u64 %r464,%r464,1; .loc 1 1259 4 bra $L74; $L48: .loc 1 1262 23 ld.u32 %r318,[%r468+24]; .loc 1 1262 55 setp.eq.u32 %r1157,%r318,0; @ %r1157 bra $L174; add.u32 %r319,%r318,-1; bra $L132; $L174: mov.u32 %r319,6; $L132: .loc 1 1269 14 sub.u64 %r1161,%r466,%r464; .loc 1 1269 26 shl.b64 %r1162,%r464,2; .loc 1 1269 14 add.u64 %r1163,%r465,%r1162; .loc 1 1263 29 ld.u32 %r1165,[%r468+28]; add.u32 %r1164,%r1165,7; .loc 1 1263 33 sub.u32 %r1166,%r1164,%r319; .loc 1 1263 11 div.s32 %r1168,%r1166,7; .loc 1 1269 14 st.u32 [%stack],%r1168; cvta.const.u64 %r1160,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1163; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1161; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1160; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1169,[%value_in]; } .loc 1 1270 13 setp.lt.s32 %r1171,%r1169,0; @ %r1171 bra $L75; cvt.s64.s32 %r1172,%r1169; add.u64 %r464,%r464,%r1172; setp.le.u64 %r1173,%r466,%r464; @ ! %r1173 bra $L74; bra $L75; $L69: .loc 1 1284 21 ld.u32 %r329,[%r468+20]; .loc 1 1285 9 setp.lt.s32 %r1174,%r329,0; @ %r1174 bra $L133; rem.s32 %r330,%r329,100; bra $L134; $L133: .loc 1 1285 11 add.u32 %r1176,%r329,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r1176; call (%value_in),abs,(%out_arg1); ld.param.u32 %r1177,[%value_in]; } .loc 1 1285 9 rem.s32 %r330,%r1177,100; $L134: .loc 1 1291 13 sub.u64 %r1181,%r466,%r464; .loc 1 1291 25 shl.b64 %r1182,%r464,2; .loc 1 1291 13 add.u64 %r1183,%r465,%r1182; st.u32 [%stack],%r330; cvta.const.u64 %r1180,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1183; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1181; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1180; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1184,[%value_in]; } .loc 1 1294 15 setp.lt.s32 %r1186,%r1184,0; @ %r1186 bra $L75; cvt.s64.s32 %r1187,%r1184; add.u64 %r464,%r464,%r1187; setp.le.u64 %r1188,%r466,%r464; @ ! %r1188 bra $L74; bra $L75; $L46: .loc 1 1308 24 ld.u32 %r338,[%r468+20]; .loc 1 1312 11 setp.ge.s32 %r1189,%r338,-1900; @ %r1189 bra $L135; .loc 1 1314 12 mov.u32 %r1190,45; st.u32 [%frame+1024],%r1190; .loc 1 1315 10 mov.u32 %r1191,-1900; sub.u32 %r340,%r1191,%r338; .loc 1 1322 11 setp.ne.u64 %r1192,%r36,0; @ %r1192 bra $L136; .loc 1 1314 9 mov.u64 %r445,%r1341; bra $L137; $L135: .loc 1 1310 26 add.u32 %r340,%r338,1900; .loc 1 1317 21 set.u32.eq.u32 %r1194,%r79,43; neg.s32 %r1195,%r1194; mov.u32 %r1193,%r1195; .loc 1 1317 40 set.u32.gt.u32 %r1197,%r340,9999; neg.s32 %r1198,%r1197; mov.u32 %r1196,%r1198; .loc 1 1317 32 cvt.u16.u8 %r1345,%r1193; mov.u16 %r1200,%r1345; cvt.u16.u8 %r1345,%r1196; mov.u16 %r1201,%r1345; and.b16 %r1199,%r1200,%r1201; cvt.u32.u16 %r1202,%r1199; .loc 1 1317 16 cvt.u16.u8 %r1203,%r1202; setp.eq.u16 %r1204,%r1203,0; @ %r1204 bra $L175; .loc 1 1319 12 mov.u32 %r1205,43; st.u32 [%frame+1024],%r1205; .loc 1 1322 11 setp.eq.u64 %r1206,%r36,0; @ %r1206 bra $L138; $L136: .loc 1 1323 3 add.u64 %r36,%r36,-1; mov.u64 %r445,%r1341; bra $L137; $L175: .loc 1 1307 26 mov.u64 %r445,%r1342; $L137: .loc 1 1324 15 mov.u32 %r1207,37; st.u32 [%r445],%r1207; .loc 1 1325 11 setp.ne.u32 %r1208,%r79,0; @ %r1208 bra $L139; .loc 1 1324 12 add.u64 %r345,%r445,4; bra $L140; $L139: .loc 1 1326 7 add.u64 %r345,%r445,8; .loc 1 1326 10 mov.u32 %r1209,48; st.u32 [%r445+4],%r1209; $L140: .loc 1 1327 8 cvta.const.u64 %r1211,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r345; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1211; call (%value_in),wcscpy,(%out_arg1,%out_arg2); ld.param.u64 %r1212,[%value_in]; } .loc 1 1328 14 sub.u64 %r1217,%r466,%r464; .loc 1 1328 26 shl.b64 %r1218,%r464,2; .loc 1 1328 14 add.u64 %r1219,%r465,%r1218; st.u32 [%stack+8],%r340; st.u64 [%stack],%r36; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1219; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1217; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1342; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1220,[%value_in]; } .loc 1 1330 8 setp.lt.s32 %r1222,%r1220,0; @ %r1222 bra $L141; cvt.s64.s32 %r1223,%r1220; add.u64 %r464,%r464,%r1223; setp.gt.u64 %r1224,%r466,%r464; @ %r1224 bra $L74; $L141: mov.u64 %r464,0; bra $L11; $L73: .loc 1 1334 14 ld.u32 %r1225,[%r468+32]; setp.lt.s32 %r1226,%r1225,0; @ %r1226 bra $L143; .loc 1 1338 8 { call __tz_lock; } .loc 1 1339 11 setp.ne.u32 %r1227,%r218,0; @ %r1227 bra $L144; .loc 1 1341 5 { call _tzset_unlocked; } $L144: .loc 1 1356 28 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r1228,[%value_in]; } .loc 1 1360 47 ld.u32 %r1230,[%r468+32]; set.u32.gt.s32 %r1231,%r1230,0; neg.s32 %r1232,%r1231; .loc 1 1360 51 cvt.s64.s32 %r1233,%r1232; shl.b64 %r1235,%r1233,2; add.u64 %r1236,%r1235,%r1233; shl.b64 %r1237,%r1236,3; add.u64 %r1238,%r1228,%r1237; .loc 1 1360 15 ld.u64 %r1240,[%r1238+40]; neg.s64 %r357,%r1240; .loc 1 1362 8 { call __tz_unlock; } .loc 1 1365 10 div.s64 %r1243,%r357,60; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1243; call (%value_in),labs,(%out_arg1); ld.param.u64 %r1244,[%value_in]; } .loc 1 1363 14 sub.u64 %r1248,%r466,%r464; .loc 1 1363 26 shl.b64 %r1249,%r464,2; .loc 1 1363 14 add.u64 %r1250,%r465,%r1249; rem.s64 %r1252,%r1244,60; st.u64 [%stack+8],%r1252; div.s64 %r1254,%r357,3600; st.u64 [%stack],%r1254; cvta.const.u64 %r1247,$LC15; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1250; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1248; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1247; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1255,[%value_in]; } .loc 1 1366 15 setp.lt.s32 %r1257,%r1255,0; @ %r1257 bra $L75; cvt.s64.s32 %r1258,%r1255; add.u64 %r464,%r464,%r1258; setp.le.u64 %r1259,%r466,%r464; @ %r1259 bra $L75; mov.u32 %r218,1; bra $L74; $L22: .loc 1 1370 7 ld.u32 %r1260,[%r468+32]; setp.lt.s32 %r1261,%r1260,0; @ %r1261 bra $L143; .loc 1 1375 8 { call __tz_lock; } .loc 1 1376 11 setp.ne.u32 %r1262,%r218,0; @ %r1262 bra $L145; .loc 1 1378 5 { call _tzset_unlocked; } $L145: .loc 1 1389 9 cvta.global.u64 %r1263,_tzname; .loc 1 1389 35 ld.u32 %r1265,[%r468+32]; set.u32.gt.s32 %r1266,%r1265,0; neg.s32 %r1267,%r1266; .loc 1 1389 9 cvt.s64.s32 %r1268,%r1267; shl.b64 %r1269,%r1268,3; add.u64 %r1270,%r1263,%r1269; ld.u64 %r371,[%r1270]; .loc 1 1394 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r371; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r1272,[%value_in]; } .loc 1 1395 22 setp.ne.u64 %r1273,%r1272,0; @ %r1273 bra $L146; mov.u64 %r110,%r464; bra $L147; $L149: .loc 1 1397 8 add.u64 %r429,%r429,4; setp.ge.u64 %r1274,%r376,%r1340; @ %r1274 bra $L148; $L150: .loc 1 1398 25 sub.u64 %r1275,%r376,%r464; add.u64 %r1276,%r371,%r1275; ld.s8 %r375,[%r1276]; .loc 1 1398 14 add.u64 %r376,%r376,1; .loc 1 1398 25 st.u32 [%r429],%r375; .loc 1 1395 22 setp.ne.u64 %r1277,%r376,%r110; @ %r1277 bra $L149; bra $L147; $L148: .loc 1 1401 9 { call __tz_unlock; } .loc 1 1402 16 mov.u64 %r464,0; bra $L11; $L146: .loc 1 1397 8 setp.ge.u64 %r1278,%r464,%r1340; @ %r1278 bra $L148; shl.b64 %r1279,%r464,2; add.u64 %r429,%r465,%r1279; add.u64 %r110,%r464,%r1272; mov.u64 %r376,%r464; bra $L150; $L147: .loc 1 1405 8 { call __tz_unlock; } mov.u64 %r464,%r110; mov.u32 %r218,1; bra $L74; $L30: .loc 1 1409 7 setp.ge.u64 %r1281,%r464,%r1340; @ %r1281 bra $L75; .loc 1 1410 17 shl.b64 %r1282,%r464,2; add.u64 %r1283,%r465,%r1282; mov.u32 %r1284,37; st.u32 [%r1283],%r1284; .loc 1 1410 13 add.u64 %r464,%r464,1; $L74: .loc 1 1417 10 ld.u32 %r1285,[%r33]; setp.eq.u32 %r1286,%r1285,0; @ %r1286 bra $L16; $L143: .loc 1 1418 8 add.u64 %r467,%r33,4; .loc 1 693 13 bra $L12; $L16: .loc 1 1422 6 setp.eq.u64 %r1287,%r466,0; @ %r1287 bra $L11; .loc 1 1423 14 shl.b64 %r1288,%r464,2; add.u64 %r1289,%r465,%r1288; mov.u32 %r1290,0; st.u32 [%r1289],%r1290; bra $L11; $L159: .loc 1 747 7 mov.u64 %r464,0; bra $L11; $L210: .loc 1 1000 13 mov.u32 %r1292,37; st.u32 [%frame+1028],%r1292; mov.u64 %r443,%r1341; bra $L115; $L209: .loc 1 977 11 add.u32 %r151,%r812,%r144; .loc 1 978 9 setp.eq.u32 %r1293,%r151,-1; @ ! %r1293 bra $L110; bra $L152; $L138: .loc 1 1324 15 mov.u32 %r1294,37; st.u32 [%frame+1028],%r1294; .loc 1 1319 9 mov.u64 %r445,%r1341; bra $L139; $L86: .loc 1 866 19 set.u32.gt.s32 %r1296,%r76,99; neg.s32 %r1297,%r1296; mov.u32 %r1295,%r1297; .loc 1 866 33 set.u32.eq.u32 %r1299,%r79,43; neg.s32 %r1300,%r1299; mov.u32 %r1298,%r1300; .loc 1 866 26 cvt.u16.u8 %r1345,%r1295; mov.u16 %r1302,%r1345; cvt.u16.u8 %r1345,%r1298; mov.u16 %r1303,%r1345; and.b16 %r1301,%r1302,%r1303; cvt.u32.u16 %r1304,%r1301; .loc 1 866 10 cvt.u16.u8 %r1305,%r1304; setp.ne.u16 %r1306,%r1305,0; @ ! %r1306 bra $L153; bra $L176; $L61: .loc 1 1034 18 ld.u32 %r43,[%r468+8]; .loc 1 1034 33 set.u32.ne.u32 %r1308,%r43,12; neg.s32 %r1309,%r1308; mov.u32 %r1307,%r1309; set.u32.ne.u32 %r1311,%r43,0; neg.s32 %r1312,%r1311; mov.u32 %r1310,%r1312; cvt.u16.u8 %r1345,%r1307; mov.u16 %r1314,%r1345; cvt.u16.u8 %r1345,%r1310; mov.u16 %r1315,%r1345; and.b16 %r1313,%r1314,%r1315; cvt.u32.u16 %r1316,%r1313; .loc 1 1035 11 cvt.u16.u8 %r1317,%r1316; setp.ne.u16 %r1318,%r1317,0; @ ! %r1318 bra $L211; setp.eq.u32 %r1337,1,0; bra $L154; $L211: mov.u32 %r171,12; .loc 1 1041 14 cvta.const.u64 %r175,$LC6; bra $L119; $L37: .loc 1 1034 18 ld.u32 %r43,[%r468+8]; .loc 1 1034 33 set.u32.ne.u32 %r1320,%r43,0; neg.s32 %r1321,%r1320; mov.u32 %r1319,%r1321; set.u32.ne.u32 %r1323,%r43,12; neg.s32 %r1324,%r1323; mov.u32 %r1322,%r1324; cvt.u16.u8 %r1345,%r1319; mov.u16 %r1326,%r1345; cvt.u16.u8 %r1345,%r1322; mov.u16 %r1327,%r1345; and.b16 %r1325,%r1326,%r1327; cvt.u32.u16 %r1328,%r1325; .loc 1 1035 11 cvt.u16.u8 %r1329,%r1328; setp.ne.u16 %r1330,%r1329,0; @ %r1330 bra $L154; mov.u32 %r171,12; .loc 1 1041 14 cvta.const.u64 %r175,$LC5; bra $L119; $L36: .loc 1 1024 11 ld.u32 %r50,[%r468+8]; .loc 1 1022 10 cvta.const.u64 %r167,$LC5; bra $L155; $L58: .loc 1 1024 11 ld.u32 %r50,[%r468+8]; .loc 1 1022 10 cvta.const.u64 %r167,$LC6; bra $L155; $L157: .loc 1 990 38 mad.lo.u32 %r61,%r141,100,%r59; bra $L156; $L108: .loc 1 977 11 add.u32 %r59,%r144,-1; .loc 1 978 9 setp.ne.u32 %r1332,%r144,0; @ %r1332 bra $L157; .loc 1 981 3 add.u32 %r1333,%r141,-1; .loc 1 990 38 mad.lo.u32 %r61,%r1333,100,99; bra $L156; $L11: .loc 1 1426 1 mov.u64 %value,%r464; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ctloc .visible .func (.param .u64 %value_out) __ctloc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 324 28 mov.u32 %r27,0; st.u32 [%r24+1020],%r27; .loc 1 325 18 mov.u64 %r30,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 326 10 setp.ne.u64 %r32,%r31,-1; .loc 1 327 11 selp.u64 %r22,%r31,0,%r32; st.u64 [%r26],%r22; .loc 1 329 5 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcsftime .visible .func (.param .u64 %value_out) wcsftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1445 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 1448 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcsftime_l .visible .func (.param .u64 %value_out) wcsftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1465 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 1467 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-wcslcat.o/0 0 0 644 3072 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcslcat .visible .func (.param .u64 %value_out) wcslcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcslcat.c" // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: wcslcat .visible .func (.param .u64 %value_out) wcslcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .pred %r53; .reg .u64 %r54; .reg .pred %r56; .reg .pred %r57; .reg .u64 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r69; .reg .u32 %r70; mov.u64 %r43,%ar0; mov.u64 %r44,%ar1; mov.u64 %r45,%ar2; .loc 1 81 21 ld.u32 %r46,[%r43]; setp.eq.u32 %r47,%r46,0; @ %r47 bra $L11; .loc 1 81 25 add.u64 %r26,%r45,-1; .loc 1 81 21 setp.eq.u64 %r48,%r45,0; @ %r48 bra $L12; mov.u64 %r23,%r43; $L5: .loc 1 82 6 add.u64 %r23,%r23,4; .loc 1 81 21 ld.u32 %r49,[%r23]; setp.ne.u32 %r50,%r49,0; @ %r50 bra $L4; .loc 1 83 12 sub.u64 %r51,%r23,%r43; shr.s64 %r42,%r51,2; .loc 1 84 5 sub.u64 %r45,%r45,%r42; bra $L2; $L4: .loc 1 81 25 add.u64 %r26,%r26,-1; .loc 1 81 21 setp.ne.u64 %r53,%r26,-1; @ %r53 bra $L5; .loc 1 83 12 sub.u64 %r54,%r23,%r43; shr.s64 %r42,%r54,2; .loc 1 84 5 sub.u64 %r45,%r45,%r42; bra $L2; $L11: .loc 1 81 21 mov.u64 %r23,%r43; mov.u64 %r42,0; $L2: .loc 1 86 6 setp.eq.u64 %r56,%r45,0; @ %r56 bra $L3; .loc 1 88 10 ld.u32 %r25,[%r44]; .loc 1 88 13 setp.ne.u32 %r57,%r25,0; @ %r57 bra $L13; bra $L7; $L12: .loc 1 83 8 mov.u64 %r42,%r45; $L3: .loc 1 87 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r59,[%value_in]; } .loc 1 87 18 add.u64 %r42,%r42,%r59; bra $L1; $L13: .loc 1 88 13 mov.u64 %r28,%r44; $L6: .loc 1 90 10 setp.ne.u64 %r60,%r45,1; @ %r60 bra $L9; .loc 1 95 8 add.u64 %r30,%r28,4; .loc 1 88 13 ld.u32 %r61,[%r28+4]; setp.ne.u32 %r62,%r61,0; @ %r62 bra $L10; .loc 1 99 21 sub.u64 %r63,%r30,%r44; shr.s64 %r65,%r63,2; .loc 1 99 16 add.u64 %r42,%r42,%r65; bra $L7; $L9: .loc 1 92 9 st.u32 [%r23],%r25; .loc 1 93 5 add.u64 %r45,%r45,-1; mov.u64 %r30,%r28; .loc 1 92 6 add.u64 %r23,%r23,4; $L10: .loc 1 95 8 add.u64 %r28,%r30,4; .loc 1 88 10 ld.u32 %r25,[%r30+4]; .loc 1 88 13 setp.ne.u32 %r66,%r25,0; @ %r66 bra $L6; .loc 1 99 21 sub.u64 %r67,%r28,%r44; shr.s64 %r69,%r67,2; .loc 1 99 16 add.u64 %r42,%r42,%r69; $L7: .loc 1 97 6 mov.u32 %r70,0; st.u32 [%r23],%r70; $L1: .loc 1 100 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } lib_a-wcslcpy.o/0 0 0 644 1951 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcslcpy .visible .func (.param .u64 %value_out) wcslcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcslcpy.c" // BEGIN GLOBAL FUNCTION DEF: wcslcpy .visible .func (.param .u64 %value_out) wcslcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; mov.u64 %r39,%ar2; .loc 1 74 6 setp.eq.u64 %r40,%r39,0; @ %r40 bra $L7; .loc 1 74 14 add.u64 %r28,%r39,-1; setp.eq.u64 %r41,%r39,1; @ %r41 bra $L8; mov.u64 %r29,%r37; mov.u64 %r32,%r38; $L5: mov.u64 %r34,%r32; add.u64 %r32,%r32,4; mov.u64 %r27,%r32; mov.u64 %r33,%r29; add.u64 %r29,%r29,4; mov.u64 %r37,%r29; .loc 1 78 16 ld.u32 %r22,[%r34]; .loc 1 78 14 st.u32 [%r33],%r22; .loc 1 78 7 setp.eq.u32 %r42,%r22,0; @ %r42 bra $L4; .loc 1 81 18 add.u64 %r28,%r28,-1; setp.ne.u64 %r43,%r28,0; @ %r43 bra $L5; bra $L3; $L7: .loc 1 70 18 mov.u64 %r27,%r38; $L2: mov.u64 %r35,%r27; $L6: add.u64 %r35,%r35,4; mov.u64 %r27,%r35; .loc 1 89 14 ld.u32 %r44,[%r35+-4]; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L6; $L4: .loc 1 93 13 sub.u64 %r47,%r27,%r38; shr.s64 %r49,%r47,2; .loc 1 93 19 add.u64 %r46,%r49,-1; bra $L14; $L8: .loc 1 70 18 mov.u64 %r27,%r38; $L3: .loc 1 88 5 mov.u32 %r50,0; st.u32 [%r37],%r50; bra $L2; $L14: .loc 1 94 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-wcslen.o/ 0 0 0 644 944 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcslen .visible .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/string/wcslen.c" // BEGIN GLOBAL FUNCTION DEF: wcslen .visible .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u64 %r33; mov.u64 %r28,%ar0; .loc 1 63 10 ld.u32 %r29,[%r28]; setp.eq.u32 %r30,%r29,0; @ %r30 bra $L4; mov.u64 %r23,%r28; $L3: .loc 1 64 6 add.u64 %r23,%r23,4; .loc 1 63 10 ld.u32 %r31,[%r23]; setp.ne.u32 %r32,%r31,0; @ %r32 bra $L3; .loc 1 66 12 sub.u64 %r33,%r23,%r28; shr.s64 %r27,%r33,2; bra $L1; $L4: .loc 1 63 10 mov.u64 %r27,0; $L1: .loc 1 67 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-wcsncat.o/0 0 0 644 2536 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsncat .visible .func (.param .u64 %value_out) wcsncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcsncat.c" // BEGIN GLOBAL FUNCTION DEF: wcsncat .visible .func (.param .u64 %value_out) wcsncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u16 %r69; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 74 10 ld.u32 %r39,[%r36]; setp.eq.u32 %r40,%r39,0; @ %r40 bra $L6; mov.u64 %r27,%r36; $L3: .loc 1 75 6 add.u64 %r27,%r27,4; .loc 1 74 10 ld.u32 %r41,[%r27]; setp.ne.u32 %r42,%r41,0; @ %r42 bra $L3; bra $L2; $L6: mov.u64 %r27,%r36; $L2: .loc 1 78 10 ld.u32 %r23,[%r37]; .loc 1 78 13 set.u32.ne.u64 %r44,%r38,0; neg.s32 %r45,%r44; mov.u32 %r43,%r45; set.u32.ne.u32 %r47,%r23,0; neg.s32 %r48,%r47; mov.u32 %r46,%r48; cvt.u16.u8 %r69,%r43; mov.u16 %r50,%r69; cvt.u16.u8 %r69,%r46; mov.u16 %r51,%r69; and.b16 %r49,%r50,%r51; cvt.u32.u16 %r52,%r49; cvt.u16.u8 %r53,%r52; setp.eq.u16 %r54,%r53,0; @ %r54 bra $L4; mov.u64 %r25,%r27; $L5: .loc 1 80 16 add.u64 %r37,%r37,4; mov.u64 %r30,%r25; add.u64 %r25,%r25,4; mov.u64 %r27,%r25; .loc 1 80 12 st.u32 [%r30],%r23; .loc 1 81 8 add.u64 %r38,%r38,-1; .loc 1 78 10 ld.u32 %r23,[%r37]; .loc 1 78 13 set.u32.ne.u64 %r56,%r38,0; neg.s32 %r57,%r56; mov.u32 %r55,%r57; set.u32.ne.u32 %r59,%r23,0; neg.s32 %r60,%r59; mov.u32 %r58,%r60; cvt.u16.u8 %r69,%r55; mov.u16 %r62,%r69; cvt.u16.u8 %r69,%r58; mov.u16 %r63,%r69; and.b16 %r61,%r62,%r63; cvt.u32.u16 %r64,%r61; cvt.u16.u8 %r65,%r64; setp.ne.u16 %r66,%r65,0; @ %r66 bra $L5; $L4: .loc 1 83 6 mov.u32 %r67,0; st.u32 [%r27],%r67; .loc 1 85 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } lib_a-wcsncmp.o/0 0 0 644 1384 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsncmp .visible .func (.param .u32 %value_out) wcsncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcsncmp.c" // BEGIN GLOBAL FUNCTION DEF: wcsncmp .visible .func (.param .u32 %value_out) wcsncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 71 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L5; mov.u64 %r23,%r27; $L4: .loc 1 75 11 ld.u32 %r25,[%r26]; .loc 1 75 18 ld.u32 %r22,[%r23]; .loc 1 75 10 setp.eq.u32 %r30,%r25,%r22; @ %r30 bra $L3; .loc 1 77 16 sub.u32 %r25,%r25,%r22; bra $L1; $L3: .loc 1 79 14 add.u64 %r26,%r26,4; .loc 1 79 10 setp.eq.u32 %r31,%r25,0; @ %r31 bra $L1; .loc 1 82 14 add.u64 %r28,%r28,-1; add.u64 %r23,%r23,4; setp.ne.u64 %r32,%r28,0; @ %r32 bra $L4; .loc 1 72 12 mov.u32 %r25,0; bra $L1; $L5: mov.u32 %r25,0; $L1: .loc 1 84 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-wcsncpy.o/0 0 0 644 1531 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsncpy .visible .func (.param .u64 %value_out) wcsncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcsncpy.c" // BEGIN GLOBAL FUNCTION DEF: wcsncpy .visible .func (.param .u64 %value_out) wcsncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .u64 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r39; mov.u64 %r32,%ar0; mov.u64 %r34,%ar2; mov.u64 %r27,%ar1; mov.u64 %r26,%r32; .loc 1 44 8 bra $L2; $L5: .loc 1 46 7 add.u64 %r24,%r34,-1; add.u64 %r23,%r26,4; .loc 1 47 22 ld.u32 %r22,[%r27]; .loc 1 47 20 st.u32 [%r26],%r22; .loc 1 47 9 add.u64 %r27,%r27,4; setp.ne.u32 %r35,%r22,0; @ %r35 bra $L6; .loc 1 49 10 add.u64 %r25,%r34,-2; .loc 1 49 13 setp.ne.u64 %r36,%r24,0; @ %r36 bra $L3; bra $L4; $L6: mov.u64 %r26,%r23; .loc 1 46 7 mov.u64 %r34,%r24; $L2: .loc 1 44 11 setp.ne.u64 %r37,%r34,0; @ %r37 bra $L5; bra $L4; $L3: .loc 1 49 28 st.u32 [%r23],%r22; .loc 1 49 10 add.u64 %r25,%r25,-1; .loc 1 49 13 add.u64 %r23,%r23,4; setp.ne.u64 %r39,%r25,-1; @ %r39 bra $L3; $L4: .loc 1 52 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-wcsnlen.o/0 0 0 644 1421 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsnlen .visible .func (.param .u64 %value_out) wcsnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcsnlen.c" // BEGIN GLOBAL FUNCTION DEF: wcsnlen .visible .func (.param .u64 %value_out) wcsnlen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u64 %r38; .reg .pred %r40; .reg .u64 %r41; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 61 13 ld.u32 %r33,[%r31]; setp.eq.u32 %r34,%r33,0; @ %r34 bra $L5; .loc 1 61 22 add.u64 %r23,%r32,-1; .loc 1 61 13 setp.eq.u64 %r35,%r32,0; @ %r35 bra $L6; mov.u64 %r24,%r31; $L4: .loc 1 62 6 add.u64 %r24,%r24,4; .loc 1 61 13 ld.u32 %r36,[%r24]; setp.ne.u32 %r37,%r36,0; @ %r37 bra $L3; .loc 1 64 21 sub.u64 %r38,%r24,%r31; shr.s64 %r30,%r38,2; bra $L1; $L3: .loc 1 61 22 add.u64 %r23,%r23,-1; .loc 1 61 13 setp.ne.u64 %r40,%r23,-1; @ %r40 bra $L4; .loc 1 64 21 sub.u64 %r41,%r24,%r31; shr.s64 %r30,%r41,2; bra $L1; $L5: .loc 1 61 13 mov.u64 %r30,0; bra $L1; $L6: mov.u64 %r30,%r32; $L1: .loc 1 65 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-wcspbrk.o/0 0 0 644 1406 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcspbrk .visible .func (.param .u64 %value_out) wcspbrk (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcspbrk.c" // BEGIN GLOBAL FUNCTION DEF: wcspbrk .visible .func (.param .u64 %value_out) wcspbrk (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r35; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 67 10 ld.u32 %r23,[%r27]; setp.eq.u32 %r29,%r23,0; @ %r29 bra $L6; .loc 1 70 14 ld.u32 %r25,[%r28]; mov.u64 %r26,%r27; setp.ne.u32 %r35,%r25,0; bra $L3; $L8: mov.u64 %r24,%r28; mov.u32 %r22,%r25; $L4: .loc 1 72 7 setp.eq.u32 %r30,%r22,%r23; @ %r30 bra $L1; .loc 1 77 5 add.u64 %r24,%r24,4; .loc 1 70 14 ld.u32 %r22,[%r24]; setp.ne.u32 %r31,%r22,0; @ %r31 bra $L4; $L5: .loc 1 79 8 add.u64 %r26,%r26,4; .loc 1 67 10 ld.u32 %r23,[%r26]; setp.eq.u32 %r32,%r23,0; @ %r32 bra $L7; $L3: .loc 1 70 14 @ %r35 bra $L8; bra $L5; $L6: .loc 1 81 10 mov.u64 %r26,0; bra $L1; $L7: mov.u64 %r26,0; $L1: .loc 1 82 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-wcsrchr.o/0 0 0 644 1271 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsrchr .visible .func (.param .u64 %value_out) wcsrchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcsrchr.c" // BEGIN GLOBAL FUNCTION DEF: wcsrchr .visible .func (.param .u64 %value_out) wcsrchr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r33; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 69 10 ld.u32 %r28,[%r26]; setp.eq.u32 %r29,%r28,0; @ %r29 bra $L6; mov.u64 %r25,%r26; $L3: .loc 1 70 6 add.u64 %r25,%r25,4; .loc 1 69 10 ld.u32 %r30,[%r25]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L3; bra $L2; $L6: mov.u64 %r25,%r26; $L2: mov.u32 %r23,0; $L5: .loc 1 73 10 setp.eq.u32 %r32,%r27,%r23; @ %r32 bra $L1; .loc 1 78 8 add.u64 %r25,%r25,-4; .loc 1 71 12 setp.gt.u64 %r33,%r26,%r25; @ %r33 bra $L7; .loc 1 73 11 ld.u32 %r23,[%r25]; bra $L5; $L7: .loc 1 80 10 mov.u64 %r25,0; $L1: .loc 1 81 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-wcsspn.o/ 0 0 0 644 1610 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsspn .visible .func (.param .u64 %value_out) wcsspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcsspn.c" // BEGIN GLOBAL FUNCTION DEF: wcsspn .visible .func (.param .u64 %value_out) wcsspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r42; .reg .pred %r45; .reg .u64 %r46; .reg .pred %r48; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; .loc 1 66 10 ld.u32 %r24,[%r34]; setp.ne.u32 %r36,%r24,0; @ %r36 bra $L2; mov.u64 %r33,0; bra $L1; $L7: .loc 1 69 14 mov.u64 %r25,%r35; mov.u32 %r22,%r23; $L5: .loc 1 71 7 setp.eq.u32 %r37,%r22,%r24; @ %r37 bra $L4; .loc 1 73 5 add.u64 %r25,%r25,4; .loc 1 69 14 ld.u32 %r22,[%r25]; setp.ne.u32 %r38,%r22,0; @ %r38 bra $L5; .loc 1 81 13 sub.u64 %r39,%r26,%r34; shr.s64 %r33,%r39,2; bra $L1; $L2: .loc 1 69 14 ld.u32 %r23,[%r35]; mov.u64 %r26,%r34; setp.ne.u32 %r48,%r23,0; $L6: @ %r48 bra $L7; .loc 1 81 13 sub.u64 %r42,%r26,%r34; shr.s64 %r33,%r42,2; $L3: bra $L1; $L4: .loc 1 77 8 add.u64 %r26,%r26,4; .loc 1 66 10 ld.u32 %r24,[%r26]; setp.ne.u32 %r45,%r24,0; @ %r45 bra $L6; .loc 1 81 13 sub.u64 %r46,%r26,%r34; shr.s64 %r33,%r46,2; $L1: .loc 1 82 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcsstr.o/ 0 0 0 644 2190 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsstr .visible .func (.param .u64 %value_out) wcsstr (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcsstr.c" // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: wcsstr .visible .func (.param .u64 %value_out) wcsstr (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .u64 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; .loc 1 71 6 ld.u32 %r35,[%r34]; setp.eq.u32 %r36,%r35,0; @ %r36 bra $L11; .loc 1 76 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r38,[%value_in]; } .loc 1 76 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r40,[%value_in]; } .loc 1 76 6 setp.lt.u64 %r41,%r38,%r40; @ ! %r41 bra $L16; bra $L7; $L9: .loc 1 85 14 mov.u64 %r29,%r33; mov.u64 %r28,%r34; mov.u32 %r26,%r30; $L5: .loc 1 87 7 ld.u32 %r42,[%r29]; setp.ne.u32 %r43,%r42,%r26; @ %r43 bra $L4; .loc 1 89 5 add.u64 %r28,%r28,4; .loc 1 90 5 add.u64 %r29,%r29,4; .loc 1 85 14 ld.u32 %r26,[%r28]; setp.ne.u32 %r44,%r26,0; @ %r44 bra $L5; bra $L11; $L16: .loc 1 81 10 ld.u32 %r45,[%r33]; setp.eq.u32 %r46,%r45,0; @ %r46 bra $L8; .loc 1 85 14 ld.u32 %r30,[%r34]; setp.ne.u32 %r51,%r30,0; $L6: @ %r51 bra $L9; bra $L11; $L7: .loc 1 77 12 mov.u64 %r33,0; bra $L11; $L8: mov.u64 %r33,0; bra $L11; $L4: .loc 1 97 8 add.u64 %r33,%r33,4; .loc 1 81 10 ld.u32 %r49,[%r33]; setp.ne.u32 %r50,%r49,0; @ %r50 bra $L6; .loc 1 77 12 mov.u64 %r33,0; $L11: .loc 1 100 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcstod.o/ 0 0 0 644 15152 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstod_l .visible .func (.param .f64 %value_out) _wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/wcstod.c" // BEGIN GLOBAL FUNCTION DECL: _wcstod_r .visible .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstof_r .visible .func (.param .f32 %value_out) _wcstof_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcstod_l .visible .func (.param .f64 %value_out) wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcstod .visible .func (.param .f64 %value_out) wcstod (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: wcstof_l .visible .func (.param .f32 %value_out) wcstof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcstof .visible .func (.param .f32 %value_out) wcstof (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: _C_numeric_locale .extern .const .align 8 .u64 _C_numeric_locale[3]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcsnrtombs_l .extern .func (.param .u64 %value_out) _wcsnrtombs_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtod_l .extern .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strstr .extern .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: initial$0 .const .align 4 .u64 initial$0[1]; // BEGIN GLOBAL FUNCTION DEF: _wcstod_l .visible .func (.param .f64 %value_out) _wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .local .align 16 .b8 %frame_ar[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r25; .reg .u64 %r33; .reg .u64 %r36; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u64 %r63; .reg .pred %r64; .reg .u64 %r77; .reg .u64 %r82; .reg .f64 %r83; .reg .pred %r84; .reg .u64 %r87; .reg .pred %r88; .reg .u64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; mov.u64 %r41,%ar3; .loc 1 155 15 bra $L2; $L3: .loc 1 156 21 add.u64 %r39,%r39,4; $L2: .loc 1 155 16 ld.u32 %r42,[%r39]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r44,[%value_in]; } setp.ne.u32 %r45,%r44,0; @ %r45 bra $L3; .loc 1 168 13 st.u64 [%frame+8],%r39; .loc 1 169 13 cvta.const.u64 %r46,initial$0; ld.u32 %r47,[%r46]; st.u32 [%frame],%r47; ld.u32 %r49,[%r46+4]; st.u32 [%frame+4],%r49; .loc 1 170 20 add.u64 %r57,%frame,8; mov.u64 %r54,0; mov.u64 %r53,-1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r53; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r54; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r41; call (%value_in),_wcsnrtombs_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r58,[%value_in]; } .loc 1 170 12 setp.ne.u64 %r59,%r58,-1; @ %r59 bra $L4; .loc 1 172 20 setp.ne.u64 %r60,%r40,0; @ %r60 bra $L5; $L7: .loc 1 174 24 mov.f64 %r37,0d0000000000000000; bra $L1; $L5: .loc 1 173 33 st.u64 [%r40],%r39; .loc 1 174 24 mov.f64 %r37,0d0000000000000000; bra $L1; $L4: .loc 1 176 20 add.u64 %r25,%r58,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r63,[%value_in]; } .loc 1 176 12 setp.eq.u64 %r64,%r63,0; @ %r64 bra $L7; .loc 1 178 13 st.u32 [%frame],%r47; st.u32 [%frame+4],%r49; .loc 1 179 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r53; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r25; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r41; call (%value_in),_wcsnrtombs_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r77,[%value_in]; } .loc 1 182 15 add.u64 %r82,%frame,16; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r82; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r41; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r83,[%value_in]; } mov.f64 %r37,%r83; .loc 1 190 12 setp.eq.u64 %r84,%r40,0; @ %r84 bra $L8; .loc 1 191 15 ld.const.u64 %r33,[_C_numeric_locale]; .loc 1 202 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r87,[%value_in]; } .loc 1 203 6 setp.gt.u64 %r88,%r87,1; @ %r88 bra $L9; .loc 1 208 50 ld.u64 %r36,[%frame+16]; bra $L10; $L9: .loc 1 204 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r33; call (%value_in),strstr,(%out_arg1,%out_arg2); ld.param.u64 %r91,[%value_in]; } .loc 1 205 7 setp.ne.u64 %r92,%r91,0; @ %r92 bra $L11; .loc 1 205 15 ld.u64 %r36,[%frame+16]; bra $L10; $L11: ld.u64 %r36,[%frame+16]; .loc 1 205 10 setp.le.u64 %r93,%r36,%r91; @ %r93 bra $L10; .loc 1 206 9 sub.u64 %r94,%r36,%r87; add.u64 %r36,%r94,1; st.u64 [%frame+16],%r36; $L10: .loc 1 208 50 sub.u64 %r96,%r36,%r63; .loc 1 208 43 shl.b64 %r97,%r96,2; add.u64 %r98,%r39,%r97; .loc 1 208 25 st.u64 [%r40],%r98; $L8: .loc 1 211 9 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; call _free_r,(%out_arg1,%out_arg2); } $L1: .loc 1 214 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstod_r .visible .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .f64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 221 10 cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r30,[%value_in]; } .loc 1 222 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstof_r .visible .func (.param .f32 %value_out) _wcstof_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .f64 %r31; .reg .pred %r32; .reg .u64 %r33; .reg .f32 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 229 19 cvta.global.u64 %r30,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r30; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 230 6 setp.num.f64 %r32,%r31,%r31; @ %r32 bra $L20; .loc 1 231 12 cvta.const.u64 %r33,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r34,[%value_in]; } mov.f32 %r23,%r34; bra $L19; $L20: .loc 1 232 10 cvt.rn.f32.f64 %r23,%r31; $L19: .loc 1 233 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstod_l .visible .func (.param .f64 %value_out) wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .f64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 241 10 ld.global.u64 %r31,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r32,[%value_in]; } .loc 1 242 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstod .visible .func (.param .f64 %value_out) wcstod (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; .reg .f64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 247 10 ld.global.u64 %r30,[_impure_ptr]; cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 248 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstof_l .visible .func (.param .f32 %value_out) wcstof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r35; .reg .f64 %r36; .reg .pred %r37; .reg .u64 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .pred %r41; .reg .f64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; .loc 1 254 16 ld.global.u64 %r35,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r30; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r36,[%value_in]; } .loc 1 255 6 setp.num.f64 %r37,%r36,%r36; @ %r37 bra $L25; .loc 1 256 12 cvta.const.u64 %r38,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r39,[%value_in]; } mov.f32 %r27,%r39; bra $L24; $L25: .loc 1 257 9 cvt.rn.f32.f64 %r27,%r36; .loc 1 259 7 abs.f32 %r40,%r27; .loc 1 259 6 setp.leu.f32 %r41,%r40,0f7f7fffff; @ %r41 bra $L24; .loc 1 259 26 abs.f64 %r42,%r36; .loc 1 259 22 setp.leu.f64 %r43,%r42,0d7fefffffffffffff; @ ! %r43 bra $L24; .loc 1 260 20 ld.global.u64 %r44,[_impure_ptr]; mov.u32 %r45,34; st.u32 [%r44],%r45; $L24: .loc 1 263 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstof .visible .func (.param .f32 %value_out) wcstof (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .f64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .pred %r40; .reg .f64 %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 269 16 ld.global.u64 %r34,[_impure_ptr]; cvta.global.u64 %r33,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r35,[%value_in]; } .loc 1 270 6 setp.num.f64 %r36,%r35,%r35; @ %r36 bra $L30; .loc 1 271 12 cvta.const.u64 %r37,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r38,[%value_in]; } mov.f32 %r27,%r38; bra $L29; $L30: .loc 1 272 9 cvt.rn.f32.f64 %r27,%r35; .loc 1 274 7 abs.f32 %r39,%r27; .loc 1 274 6 setp.leu.f32 %r40,%r39,0f7f7fffff; @ %r40 bra $L29; .loc 1 274 26 abs.f64 %r41,%r35; .loc 1 274 22 setp.leu.f64 %r42,%r41,0d7fefffffffffffff; @ ! %r42 bra $L29; .loc 1 275 20 ld.global.u64 %r43,[_impure_ptr]; mov.u32 %r44,34; st.u32 [%r43],%r44; $L29: .loc 1 279 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } /2028 0 0 0 644 10586 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _wcstoimax_l .func (.param .u64 %value_out) _wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstoimax.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoimax_r .visible .func (.param .u64 %value_out) _wcstoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoimax_l .visible .func (.param .u64 %value_out) wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoimax .visible .func (.param .u64 %value_out) wcstoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: _wcstoimax_l .func (.param .u64 %value_out) _wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .pred %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .u32 %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u16 %r127; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u64 %r61,%ar2; mov.u32 %r62,%ar3; mov.u64 %r63,%ar4; mov.u64 %r25,%r60; $L2: mov.u64 %r40,%r25; add.u64 %r23,%r25,4; mov.u64 %r25,%r23; .loc 1 74 5 ld.u32 %r43,[%r40]; .loc 1 75 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r66,[%value_in]; } mov.u32 %r46,%r66; setp.ne.u32 %r67,%r46,0; @ %r67 bra $L2; .loc 1 76 5 setp.ne.u32 %r68,%r43,45; @ %r68 bra $L3; .loc 1 78 5 ld.u32 %r43,[%r23]; .loc 1 78 9 add.u64 %r23,%r40,8; .loc 1 77 7 mov.u32 %r45,1; bra $L4; $L3: .loc 1 81 6 setp.ne.u32 %r69,%r43,43; @ %r69 bra $L22; .loc 1 82 6 ld.u32 %r43,[%r25]; .loc 1 80 7 mov.u32 %r45,%r46; .loc 1 82 10 add.u64 %r23,%r40,8; bra $L4; $L22: .loc 1 80 7 mov.u32 %r45,%r46; $L4: .loc 1 84 12 and.b32 %r70,%r62,-17; .loc 1 84 5 setp.ne.u32 %r71,%r70,0; @ %r71 bra $L5; .loc 1 84 32 setp.ne.u32 %r72,%r43,48; @ %r72 bra $L6; .loc 1 85 31 ld.u32 %r74,[%r23]; and.b32 %r73,%r74,-33; .loc 1 85 16 setp.ne.u32 %r75,%r73,88; @ %r75 bra $L7; .loc 1 86 5 ld.u32 %r43,[%r23+4]; .loc 1 87 5 add.u64 %r23,%r23,8; mov.u64 %r55,16; .loc 1 88 8 mov.u32 %r62,16; bra $L8; $L7: .loc 1 90 5 setp.eq.u32 %r76,%r62,0; @ %r76 bra $L23; $L5: .loc 1 93 15 add.u32 %r77,%r62,-2; .loc 1 93 5 setp.gt.u32 %r78,%r77,34; @ %r78 bra $L24; .loc 1 97 18 cvt.s64.s32 %r55,%r62; bra $L8; $L23: .loc 1 90 5 mov.u64 %r55,8; .loc 1 91 24 mov.u32 %r62,8; bra $L8; $L28: .loc 1 90 5 mov.u64 %r55,10; .loc 1 91 24 mov.u32 %r62,10; $L8: .loc 1 96 40 cvt.s64.s32 %r79,%r45; add.u64 %r56,%r79,9223372036854775807; .loc 1 97 18 rem.u64 %r81,%r56,%r55; .loc 1 97 9 cvt.u32.u64 %r50,%r81; .loc 1 98 9 div.u64 %r51,%r56,%r55; mov.u64 %r54,%r23; .loc 1 92 6 mov.u64 %r42,0; .loc 1 116 8 mov.u32 %r125,-1; .loc 1 118 8 mov.u32 %r126,1; $L15: .loc 1 105 17 add.u32 %r82,%r43,-48; .loc 1 105 6 setp.gt.u32 %r83,%r82,9; @ %r83 bra $L10; .loc 1 106 6 mov.u32 %r44,%r82; bra $L11; $L10: .loc 1 107 22 add.u32 %r84,%r43,-65; .loc 1 107 11 setp.gt.u32 %r85,%r84,25; @ %r85 bra $L12; .loc 1 108 6 add.u32 %r44,%r43,-55; bra $L11; $L12: .loc 1 109 21 add.u32 %r86,%r43,-97; .loc 1 109 11 setp.gt.u32 %r87,%r86,25; @ %r87 bra $L13; .loc 1 110 6 add.u32 %r44,%r43,-87; $L11: .loc 1 113 6 setp.ge.s32 %r88,%r44,%r62; @ %r88 bra $L13; .loc 1 115 11 shr.u32 %r90,%r46,31; mov.u32 %r91,%r90; .loc 1 115 22 set.u32.gt.u64 %r93,%r42,%r51; neg.s32 %r94,%r93; mov.u32 %r92,%r94; .loc 1 115 15 cvt.u16.u8 %r127,%r91; mov.u16 %r96,%r127; cvt.u16.u8 %r127,%r92; mov.u16 %r97,%r127; or.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; .loc 1 115 6 cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L25; .loc 1 115 39 set.u32.eq.u64 %r102,%r42,%r51; neg.s32 %r103,%r102; mov.u32 %r101,%r103; .loc 1 115 54 set.u32.gt.s32 %r105,%r44,%r50; neg.s32 %r106,%r105; mov.u32 %r104,%r106; .loc 1 115 49 cvt.u16.u8 %r127,%r101; mov.u16 %r108,%r127; cvt.u16.u8 %r127,%r104; mov.u16 %r109,%r127; and.b16 %r107,%r108,%r109; cvt.u32.u16 %r110,%r107; .loc 1 115 31 cvt.u16.u8 %r111,%r110; setp.ne.u16 %r112,%r111,0; @ %r112 bra $L26; .loc 1 120 8 cvt.s64.s32 %r113,%r44; mad.lo.u64 %r42,%r42,%r55,%r113; .loc 1 118 8 mov.u32 %r46,%r126; bra $L14; $L25: .loc 1 116 8 mov.u32 %r46,%r125; bra $L14; $L26: mov.u32 %r46,%r125; $L14: .loc 1 99 14 ld.u32 %r43,[%r54]; add.u64 %r54,%r54,4; .loc 1 105 6 bra $L15; $L13: .loc 1 123 5 setp.ne.u32 %r114,%r46,-1; @ %r114 bra $L16; .loc 1 125 16 mov.u32 %r115,34; st.u32 [%r59],%r115; .loc 1 131 5 setp.ne.u64 %r116,%r61,0; @ %r116 bra $L17; .loc 1 133 9 mov.u64 %r58,%r56; bra $L1; $L16: .loc 1 126 12 setp.ne.u32 %r117,%r46,0; @ %r117 bra $L19; .loc 1 133 9 mov.u64 %r58,%r42; bra $L9; $L24: mov.u64 %r58,0; $L9: .loc 1 128 16 mov.u32 %r118,22; st.u32 [%r59],%r118; .loc 1 131 5 setp.ne.u64 %r119,%r61,0; @ %r119 bra $L20; bra $L1; $L19: .loc 1 129 12 setp.eq.u32 %r120,%r45,0; @ %r120 bra $L21; .loc 1 130 7 neg.s64 %r56,%r42; .loc 1 131 5 setp.ne.u64 %r121,%r61,0; @ %r121 bra $L17; .loc 1 133 9 mov.u64 %r58,%r56; bra $L1; $L21: .loc 1 131 5 setp.ne.u64 %r122,%r61,0; @ %r122 bra $L27; .loc 1 133 9 mov.u64 %r58,%r42; bra $L1; $L27: .loc 1 131 5 mov.u64 %r56,%r42; $L17: .loc 1 132 13 add.u64 %r60,%r54,-4; .loc 1 133 9 mov.u64 %r58,%r56; $L20: .loc 1 132 11 st.u64 [%r61],%r60; .loc 1 133 9 bra $L1; $L6: .loc 1 90 5 setp.eq.u32 %r124,%r62,0; @ %r124 bra $L28; bra $L5; $L1: .loc 1 134 1 mov.u64 %value,%r58; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoimax_r .visible .func (.param .u64 %value_out) _wcstoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 140 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoimax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 141 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoimax_l .visible .func (.param .u64 %value_out) wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 149 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoimax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 150 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoimax .visible .func (.param .u64 %value_out) wcstoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 155 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoimax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 156 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcstok.o/ 0 0 0 644 2264 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstok .visible .func (.param .u64 %value_out) wcstok (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcstok.c" // BEGIN GLOBAL FUNCTION DEF: wcstok .visible .func (.param .u64 %value_out) wcstok (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .u64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 102 5 setp.ne.u64 %r39,%r36,0; @ %r39 bra $L2; .loc 1 102 22 ld.u64 %r36,[%r38]; .loc 1 102 16 setp.eq.u64 %r40,%r36,0; @ %r40 bra $L11; $L2: mov.u64 %r34,%r36; $L5: mov.u64 %r35,%r34; add.u64 %r34,%r34,4; .loc 1 109 4 ld.u32 %r23,[%r35]; .loc 1 110 2 mov.u64 %r31,%r37; bra $L4; $L6: .loc 1 111 6 add.u64 %r31,%r31,4; setp.eq.u32 %r41,%r23,%r24; @ %r41 bra $L5; $L4: .loc 1 110 26 ld.u32 %r24,[%r31]; .loc 1 110 38 setp.ne.u32 %r42,%r24,0; @ %r42 bra $L6; .loc 1 114 5 setp.ne.u32 %r43,%r23,0; @ %r43 bra $L7; .loc 1 115 10 mov.u64 %r44,0; st.u64 [%r38],%r44; .loc 1 116 10 mov.u64 %r35,%r44; bra $L1; $L7: add.u64 %r29,%r34,4; mov.u64 %r22,%r29; .loc 1 125 5 ld.u32 %r25,[%r34]; mov.u64 %r27,%r37; $L10: .loc 1 128 12 ld.u32 %r26,[%r27]; .loc 1 128 7 setp.ne.u32 %r45,%r25,%r26; @ %r45 bra $L8; .loc 1 129 8 setp.eq.u32 %r46,%r25,0; @ %r46 bra $L12; .loc 1 132 12 mov.u32 %r47,0; st.u32 [%r29+-4],%r47; bra $L9; $L12: .loc 1 130 8 mov.u64 %r22,0; $L9: .loc 1 133 12 st.u64 [%r38],%r22; .loc 1 134 12 bra $L1; $L8: .loc 1 136 15 add.u64 %r27,%r27,4; setp.ne.u32 %r48,%r26,0; @ %r48 bra $L10; mov.u64 %r34,%r29; bra $L7; $L11: .loc 1 103 10 mov.u64 %r35,%r36; $L1: .loc 1 139 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } lib_a-wcstol.o/ 0 0 0 644 10017 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _wcstol_l .func (.param .u64 %value_out) _wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstol.c" // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .visible .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstol_l .visible .func (.param .u64 %value_out) wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstol .visible .func (.param .u64 %value_out) wcstol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: _wcstol_l .func (.param .u64 %value_out) _wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u16 %r103; .reg .u32 %r104; .reg .u16 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r53,%r57; $L2: mov.u64 %r38,%r53; add.u64 %r39,%r53,4; mov.u64 %r53,%r39; .loc 1 146 5 ld.u32 %r43,[%r38]; .loc 1 147 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r46,%r63; setp.ne.u32 %r64,%r46,0; @ %r64 bra $L2; .loc 1 148 5 setp.ne.u32 %r65,%r43,45; @ %r65 bra $L3; .loc 1 150 5 ld.u32 %r43,[%r39]; .loc 1 150 9 add.u64 %r39,%r38,8; mov.u64 %r25,-9223372036854775808; .loc 1 149 7 mov.u32 %r45,1; bra $L4; $L3: .loc 1 151 12 setp.ne.u32 %r66,%r43,43; @ %r66 bra $L20; .loc 1 152 5 ld.u32 %r43,[%r53]; .loc 1 138 15 mov.u32 %r45,%r46; .loc 1 152 9 add.u64 %r39,%r38,8; .loc 1 152 5 mov.u64 %r25,9223372036854775807; bra $L4; $L20: .loc 1 138 15 mov.u32 %r45,%r46; mov.u64 %r25,9223372036854775807; $L4: .loc 1 153 12 and.b32 %r67,%r59,-17; .loc 1 153 5 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 153 32 setp.ne.u32 %r69,%r43,48; @ %r69 bra $L6; .loc 1 154 31 ld.u32 %r71,[%r39]; and.b32 %r70,%r71,-33; .loc 1 154 16 setp.ne.u32 %r72,%r70,88; @ %r72 bra $L7; .loc 1 155 5 ld.u32 %r43,[%r39+4]; .loc 1 156 5 add.u64 %r39,%r39,8; mov.u64 %r40,16; .loc 1 157 8 mov.u32 %r59,16; bra $L8; $L7: .loc 1 159 5 setp.eq.u32 %r73,%r59,0; @ %r73 bra $L21; .loc 1 180 20 cvt.s64.s32 %r40,%r59; bra $L8; $L5: cvt.s64.s32 %r40,%r59; bra $L8; $L21: .loc 1 159 5 mov.u64 %r40,8; .loc 1 160 24 mov.u32 %r59,8; bra $L8; $L24: .loc 1 159 5 mov.u64 %r40,10; .loc 1 160 24 mov.u32 %r59,10; $L8: .loc 1 180 18 rem.u64 %r75,%r25,%r40; .loc 1 180 9 cvt.u32.u64 %r49,%r75; .loc 1 181 9 div.u64 %r50,%r25,%r40; mov.u64 %r23,%r39; .loc 1 182 11 mov.u64 %r42,0; .loc 1 194 8 mov.u32 %r116,-1; .loc 1 196 8 mov.u32 %r117,1; $L14: .loc 1 183 17 add.u32 %r76,%r43,-48; .loc 1 183 6 setp.gt.u32 %r77,%r76,9; @ %r77 bra $L9; .loc 1 184 6 mov.u32 %r44,%r76; bra $L10; $L9: .loc 1 185 22 add.u32 %r78,%r43,-65; .loc 1 185 11 setp.gt.u32 %r79,%r78,25; @ %r79 bra $L11; .loc 1 186 6 add.u32 %r44,%r43,-55; bra $L10; $L11: .loc 1 187 22 add.u32 %r80,%r43,-97; .loc 1 187 11 setp.gt.u32 %r81,%r80,25; @ %r81 bra $L12; .loc 1 188 6 add.u32 %r44,%r43,-87; $L10: .loc 1 191 6 setp.le.s32 %r82,%r59,%r44; @ %r82 bra $L12; .loc 1 193 24 shr.u32 %r84,%r46,31; mov.u32 %r85,%r84; .loc 1 193 35 set.u32.gt.u64 %r87,%r42,%r50; neg.s32 %r88,%r87; mov.u32 %r86,%r88; .loc 1 193 28 cvt.u16.u8 %r118,%r85; mov.u16 %r90,%r118; cvt.u16.u8 %r118,%r86; mov.u16 %r91,%r118; or.b16 %r89,%r90,%r91; cvt.u32.u16 %r92,%r89; .loc 1 193 19 cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L22; .loc 1 193 52 set.u32.eq.u64 %r96,%r42,%r50; neg.s32 %r97,%r96; mov.u32 %r95,%r97; .loc 1 193 67 set.u32.gt.s32 %r99,%r44,%r49; neg.s32 %r100,%r99; mov.u32 %r98,%r100; .loc 1 193 62 cvt.u16.u8 %r118,%r95; mov.u16 %r102,%r118; cvt.u16.u8 %r118,%r98; mov.u16 %r103,%r118; and.b16 %r101,%r102,%r103; cvt.u32.u16 %r104,%r101; .loc 1 193 44 cvt.u16.u8 %r105,%r104; setp.ne.u16 %r106,%r105,0; @ %r106 bra $L23; .loc 1 198 8 cvt.s64.s32 %r107,%r44; mad.lo.u64 %r42,%r40,%r42,%r107; .loc 1 196 8 mov.u32 %r46,%r117; bra $L13; $L22: .loc 1 194 8 mov.u32 %r46,%r116; bra $L13; $L23: mov.u32 %r46,%r116; $L13: .loc 1 182 28 ld.u32 %r43,[%r23]; add.u64 %r23,%r23,4; .loc 1 183 6 bra $L14; $L12: .loc 1 201 5 setp.ne.u32 %r108,%r46,-1; @ %r108 bra $L15; .loc 1 203 16 mov.u32 %r109,34; st.u32 [%r56],%r109; .loc 1 206 5 setp.ne.u64 %r110,%r58,0; @ %r110 bra $L16; .loc 1 202 7 mov.u64 %r42,%r25; bra $L28; $L15: .loc 1 204 12 setp.eq.u32 %r111,%r45,0; @ %r111 bra $L18; .loc 1 205 7 neg.s64 %r42,%r42; $L18: .loc 1 206 5 setp.eq.u64 %r112,%r58,0; @ %r112 bra $L28; .loc 1 207 11 setp.eq.u32 %r113,%r46,0; @ %r113 bra $L19; mov.u64 %r25,%r42; $L16: add.u64 %r57,%r23,-4; mov.u64 %r42,%r25; $L19: st.u64 [%r58],%r57; .loc 1 208 9 bra $L28; $L6: .loc 1 159 5 setp.eq.u32 %r115,%r59,0; @ %r115 bra $L24; bra $L5; $L28: .loc 1 209 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstol_r .visible .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 217 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 218 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstol_l .visible .func (.param .u64 %value_out) wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 226 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 227 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstol .visible .func (.param .u64 %value_out) wcstol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 234 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 235 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcstold.o/0 0 0 644 2209 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstold_l .visible .func (.param .f64 %value_out) wcstold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/wcstold.c" // BEGIN GLOBAL FUNCTION DECL: wcstold .visible .func (.param .f64 %value_out) wcstold (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: wcstod_l .extern .func (.param .f64 %value_out) wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wcstold_l .visible .func (.param .f64 %value_out) wcstold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .f64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 46 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),wcstod_l,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r29,[%value_in]; } .loc 1 113 1 mov.f64 %value,%r29; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstold .visible .func (.param .f64 %value_out) wcstold (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; .reg .f64 %r28; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 120 10 cvta.global.u64 %r27,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),wcstod_l,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r28,[%value_in]; } .loc 1 124 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-wcstoll.o/0 0 0 644 10069 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstoll_l .visible .func (.param .u64 %value_out) _wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstoll.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .visible .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoll_l .visible .func (.param .u64 %value_out) wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoll .visible .func (.param .u64 %value_out) wcstoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _wcstoll_l .visible .func (.param .u64 %value_out) _wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u16 %r103; .reg .u32 %r104; .reg .u16 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r53,%r57; $L2: mov.u64 %r38,%r53; add.u64 %r39,%r53,4; mov.u64 %r53,%r39; .loc 1 146 5 ld.u32 %r43,[%r38]; .loc 1 147 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r46,%r63; setp.ne.u32 %r64,%r46,0; @ %r64 bra $L2; .loc 1 148 5 setp.ne.u32 %r65,%r43,45; @ %r65 bra $L3; .loc 1 150 5 ld.u32 %r43,[%r39]; .loc 1 150 9 add.u64 %r39,%r38,8; mov.u64 %r25,-9223372036854775808; .loc 1 149 7 mov.u32 %r45,1; bra $L4; $L3: .loc 1 151 12 setp.ne.u32 %r66,%r43,43; @ %r66 bra $L20; .loc 1 152 5 ld.u32 %r43,[%r53]; .loc 1 138 15 mov.u32 %r45,%r46; .loc 1 152 9 add.u64 %r39,%r38,8; .loc 1 152 5 mov.u64 %r25,9223372036854775807; bra $L4; $L20: .loc 1 138 15 mov.u32 %r45,%r46; mov.u64 %r25,9223372036854775807; $L4: .loc 1 153 12 and.b32 %r67,%r59,-17; .loc 1 153 5 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 153 32 setp.ne.u32 %r69,%r43,48; @ %r69 bra $L6; .loc 1 154 31 ld.u32 %r71,[%r39]; and.b32 %r70,%r71,-33; .loc 1 154 16 setp.ne.u32 %r72,%r70,88; @ %r72 bra $L7; .loc 1 155 5 ld.u32 %r43,[%r39+4]; .loc 1 156 5 add.u64 %r39,%r39,8; mov.u64 %r40,16; .loc 1 157 8 mov.u32 %r59,16; bra $L8; $L7: .loc 1 159 5 setp.eq.u32 %r73,%r59,0; @ %r73 bra $L21; .loc 1 180 20 cvt.s64.s32 %r40,%r59; bra $L8; $L5: cvt.s64.s32 %r40,%r59; bra $L8; $L21: .loc 1 159 5 mov.u64 %r40,8; .loc 1 160 24 mov.u32 %r59,8; bra $L8; $L24: .loc 1 159 5 mov.u64 %r40,10; .loc 1 160 24 mov.u32 %r59,10; $L8: .loc 1 180 18 rem.u64 %r75,%r25,%r40; .loc 1 180 9 cvt.u32.u64 %r49,%r75; .loc 1 181 9 div.u64 %r50,%r25,%r40; mov.u64 %r23,%r39; .loc 1 182 11 mov.u64 %r42,0; .loc 1 194 8 mov.u32 %r116,-1; .loc 1 196 8 mov.u32 %r117,1; $L14: .loc 1 183 17 add.u32 %r76,%r43,-48; .loc 1 183 6 setp.gt.u32 %r77,%r76,9; @ %r77 bra $L9; .loc 1 184 6 mov.u32 %r44,%r76; bra $L10; $L9: .loc 1 185 22 add.u32 %r78,%r43,-65; .loc 1 185 11 setp.gt.u32 %r79,%r78,25; @ %r79 bra $L11; .loc 1 186 6 add.u32 %r44,%r43,-55; bra $L10; $L11: .loc 1 187 22 add.u32 %r80,%r43,-97; .loc 1 187 11 setp.gt.u32 %r81,%r80,25; @ %r81 bra $L12; .loc 1 188 6 add.u32 %r44,%r43,-87; $L10: .loc 1 191 6 setp.le.s32 %r82,%r59,%r44; @ %r82 bra $L12; .loc 1 193 24 shr.u32 %r84,%r46,31; mov.u32 %r85,%r84; .loc 1 193 35 set.u32.gt.u64 %r87,%r42,%r50; neg.s32 %r88,%r87; mov.u32 %r86,%r88; .loc 1 193 28 cvt.u16.u8 %r118,%r85; mov.u16 %r90,%r118; cvt.u16.u8 %r118,%r86; mov.u16 %r91,%r118; or.b16 %r89,%r90,%r91; cvt.u32.u16 %r92,%r89; .loc 1 193 19 cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L22; .loc 1 193 52 set.u32.eq.u64 %r96,%r42,%r50; neg.s32 %r97,%r96; mov.u32 %r95,%r97; .loc 1 193 67 set.u32.gt.s32 %r99,%r44,%r49; neg.s32 %r100,%r99; mov.u32 %r98,%r100; .loc 1 193 62 cvt.u16.u8 %r118,%r95; mov.u16 %r102,%r118; cvt.u16.u8 %r118,%r98; mov.u16 %r103,%r118; and.b16 %r101,%r102,%r103; cvt.u32.u16 %r104,%r101; .loc 1 193 44 cvt.u16.u8 %r105,%r104; setp.ne.u16 %r106,%r105,0; @ %r106 bra $L23; .loc 1 198 8 cvt.s64.s32 %r107,%r44; mad.lo.u64 %r42,%r40,%r42,%r107; .loc 1 196 8 mov.u32 %r46,%r117; bra $L13; $L22: .loc 1 194 8 mov.u32 %r46,%r116; bra $L13; $L23: mov.u32 %r46,%r116; $L13: .loc 1 182 28 ld.u32 %r43,[%r23]; add.u64 %r23,%r23,4; .loc 1 183 6 bra $L14; $L12: .loc 1 201 5 setp.ne.u32 %r108,%r46,-1; @ %r108 bra $L15; .loc 1 203 16 mov.u32 %r109,34; st.u32 [%r56],%r109; .loc 1 206 5 setp.ne.u64 %r110,%r58,0; @ %r110 bra $L16; .loc 1 202 7 mov.u64 %r42,%r25; bra $L28; $L15: .loc 1 204 12 setp.eq.u32 %r111,%r45,0; @ %r111 bra $L18; .loc 1 205 7 neg.s64 %r42,%r42; $L18: .loc 1 206 5 setp.eq.u64 %r112,%r58,0; @ %r112 bra $L28; .loc 1 207 11 setp.eq.u32 %r113,%r46,0; @ %r113 bra $L19; mov.u64 %r25,%r42; $L16: add.u64 %r57,%r23,-4; mov.u64 %r42,%r25; $L19: st.u64 [%r58],%r57; .loc 1 208 9 bra $L28; $L6: .loc 1 159 5 setp.eq.u32 %r115,%r59,0; @ %r115 bra $L24; bra $L5; $L28: .loc 1 209 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoll_r .visible .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 217 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 218 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoll_l .visible .func (.param .u64 %value_out) wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 226 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 227 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoll .visible .func (.param .u64 %value_out) wcstoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 234 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 235 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2047 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /2066 0 0 0 644 1433 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstombs .visible .func (.param .u64 %value_out) wcstombs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/wcstombs.c" // BEGIN GLOBAL FUNCTION DEF: wcstombs .visible .func (.param .u64 %value_out) wcstombs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .pred %r37; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 63 6 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L2; mov.u64 %r25,%r31; mov.u64 %r26,%r32; add.u64 %r29,%r25,%r33; .loc 1 61 7 mov.u32 %r24,0; $L4: .loc 1 65 19 ld.s8 %r23,[%r26]; .loc 1 65 17 cvt.u32.u32 %r35,%r23; st.u8 [%r25],%r35; .loc 1 65 10 setp.ne.u32 %r36,%r23,0; @ %r36 bra $L3; .loc 1 71 10 cvt.s64.s32 %r33,%r24; bra $L2; $L3: .loc 1 67 12 add.u32 %r24,%r24,1; .loc 1 68 18 add.u64 %r25,%r25,1; add.u64 %r26,%r26,4; setp.ne.u64 %r37,%r25,%r29; @ %r37 bra $L4; .loc 1 71 10 cvt.s64.s32 %r33,%r24; $L2: .loc 1 73 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2084 0 0 0 644 4631 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstombs_r .visible .func (.param .u64 %value_out) _wcstombs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstombs_r.c" // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DEF: _wcstombs_r .visible .func (.param .u64 %value_out) _wcstombs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u64 %r27; .reg .u64 %r36; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r43; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .u32 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .pred %r67; .reg .u32 %r70; .reg .u32 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r90; .reg .pred %r91; .reg .u64 %r93; mov.u64 %r50,%ar0; mov.u64 %r51,%ar1; mov.u64 %r52,%ar2; mov.u64 %r53,%ar3; mov.u64 %r54,%ar4; .loc 1 17 6 setp.eq.u64 %r55,%r51,0; @ %r55 bra $L2; .loc 1 31 16 setp.ne.u64 %r56,%r53,0; @ %r56 bra $L12; .loc 1 45 14 mov.u64 %r49,%r53; bra $L1; $L2: .loc 1 20 14 ld.u32 %r24,[%r52]; .loc 1 20 20 setp.eq.u32 %r57,%r24,0; @ %r57 bra $L13; .loc 1 19 14 mov.u64 %r49,%r51; cvta.global.u64 %r93,__global_locale; $L6: .loc 1 22 36 add.u64 %r52,%r52,4; .loc 1 22 12 ld.u64 %r64,[%r93+224]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2,.param .u64 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r24; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r54; call (%value_in),%r64,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r63,[%value_in]; } .loc 1 23 7 setp.ne.u32 %r65,%r63,-1; @ %r65 bra $L5; $L7: .loc 1 24 13 mov.u64 %r49,-1; bra $L1; $L5: .loc 1 25 14 cvt.s64.s32 %r66,%r63; add.u64 %r49,%r49,%r66; .loc 1 20 14 ld.u32 %r24,[%r52]; .loc 1 20 20 setp.ne.u32 %r67,%r24,0; @ %r67 bra $L6; bra $L1; $L12: .loc 1 31 16 mov.u64 %r43,%r51; mov.u64 %r40,%r53; cvta.global.u64 %r93,__global_locale; $L3: .loc 1 33 19 ld.u64 %r74,[%r93+224]; ld.u32 %r70,[%r52]; { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2,.param .u64 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r70; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r54; call (%value_in),%r74,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u32 %r73,[%value_in]; } mov.u32 %r38,%r73; .loc 1 34 14 setp.eq.u32 %r75,%r38,-1; @ %r75 bra $L7; .loc 1 36 28 cvt.s64.s32 %r27,%r38; .loc 1 36 44 setp.lt.u64 %r76,%r27,%r40; @ %r76 bra $L8; cvt.u32.u64 %r38,%r40; $L8: .loc 1 37 25 setp.le.s32 %r77,%r38,0; @ %r77 bra $L9; mov.u64 %r39,%r43; mov.u64 %r36,%frame; add.u64 %r78,%r43,1; add.u32 %r79,%r38,-1; cvt.u64.u32 %r80,%r79; add.u64 %r48,%r78,%r80; $L10: .loc 1 38 20 ld.u8 %r81,[%r36]; st.u8 [%r39],%r81; .loc 1 37 25 add.u64 %r39,%r39,1; add.u64 %r36,%r36,1; setp.ne.u64 %r82,%r39,%r48; @ %r82 bra $L10; .loc 1 38 17 cvt.u64.u32 %r83,%r38; add.u64 %r43,%r43,%r83; $L9: .loc 1 40 14 ld.u32 %r84,[%r52]; setp.ne.u32 %r85,%r84,0; @ %r85 bra $L11; .loc 1 41 24 sub.u64 %r86,%r43,%r51; .loc 1 41 33 set.u32.le.u64 %r88,%r27,%r40; cvt.s64.s32 %r87,%r88; .loc 1 41 28 add.u64 %r49,%r86,%r87; bra $L1; $L11: .loc 1 42 11 add.u64 %r52,%r52,4; .loc 1 43 13 cvt.s64.s32 %r90,%r38; sub.u64 %r40,%r40,%r90; .loc 1 31 16 setp.ne.u64 %r91,%r40,0; @ %r91 bra $L3; mov.u64 %r49,%r53; bra $L1; $L13: .loc 1 45 14 mov.u64 %r49,%r51; $L1: .loc 1 47 1 mov.u64 %value,%r49; st.param.u64 [%value_out],%value; ret; } lib_a-wcstoul.o/0 0 0 644 10533 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstoul_l .visible .func (.param .u64 %value_out) _wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstoul.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .visible .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoul_l .visible .func (.param .u64 %value_out) wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoul .visible .func (.param .u64 %value_out) wcstoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _wcstoul_l .visible .func (.param .u64 %value_out) _wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r52; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u64 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .pred %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r121; .reg .u64 %r122; .reg .u64 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u16 %r128; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r48,%r57; $L2: mov.u64 %r36,%r48; add.u64 %r37,%r48,4; mov.u64 %r48,%r37; .loc 1 144 5 ld.u32 %r39,[%r36]; .loc 1 145 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r42,%r63; setp.ne.u32 %r64,%r42,0; @ %r64 bra $L2; .loc 1 146 5 setp.ne.u32 %r65,%r39,45; @ %r65 bra $L3; .loc 1 148 5 ld.u32 %r39,[%r37]; .loc 1 148 9 add.u64 %r37,%r36,8; .loc 1 147 7 mov.u32 %r41,1; bra $L4; $L3: .loc 1 149 12 setp.ne.u32 %r66,%r39,43; @ %r66 bra $L20; .loc 1 150 5 ld.u32 %r39,[%r48]; .loc 1 138 15 mov.u32 %r41,%r42; .loc 1 150 9 add.u64 %r37,%r36,8; bra $L4; $L20: .loc 1 138 15 mov.u32 %r41,%r42; $L4: .loc 1 151 12 and.b32 %r67,%r59,-17; .loc 1 151 5 setp.eq.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 159 38 cvt.s64.s32 %r52,%r59; .loc 1 159 9 mov.u64 %r69,-1; div.u64 %r50,%r69,%r52; .loc 1 160 36 rem.u64 %r72,%r69,%r52; .loc 1 160 9 cvt.u32.u64 %r49,%r72; bra $L6; $L5: .loc 1 151 32 setp.ne.u32 %r73,%r39,48; @ %r73 bra $L7; .loc 1 152 31 ld.u32 %r75,[%r37]; and.b32 %r74,%r75,-33; .loc 1 152 16 setp.ne.u32 %r76,%r74,88; @ %r76 bra $L8; .loc 1 153 5 ld.u32 %r39,[%r37+4]; .loc 1 154 5 add.u64 %r37,%r37,8; mov.u32 %r49,15; mov.u64 %r50,1152921504606846975; mov.u64 %r52,16; .loc 1 155 8 mov.u32 %r59,16; bra $L6; $L8: .loc 1 157 5 setp.eq.u32 %r77,%r59,0; @ %r77 bra $L21; .loc 1 159 38 cvt.s64.s32 %r52,%r59; .loc 1 159 9 mov.u64 %r78,-1; div.u64 %r50,%r78,%r52; .loc 1 160 36 rem.u64 %r81,%r78,%r52; .loc 1 160 9 cvt.u32.u64 %r49,%r81; bra $L6; $L21: .loc 1 157 5 mov.u32 %r49,7; mov.u64 %r50,2305843009213693951; mov.u64 %r52,8; .loc 1 158 24 mov.u32 %r59,8; bra $L6; $L25: .loc 1 157 5 mov.u32 %r49,5; mov.u64 %r50,1844674407370955161; mov.u64 %r52,10; .loc 1 158 24 mov.u32 %r59,10; $L6: mov.u64 %r47,%r37; .loc 1 161 11 mov.u64 %r55,0; .loc 1 173 8 mov.u32 %r126,-1; .loc 1 175 8 mov.u32 %r127,1; $L14: .loc 1 162 17 add.u32 %r82,%r39,-48; .loc 1 162 6 setp.gt.u32 %r83,%r82,9; @ %r83 bra $L9; .loc 1 163 6 mov.u32 %r40,%r82; bra $L10; $L9: .loc 1 164 22 add.u32 %r84,%r39,-65; .loc 1 164 11 setp.gt.u32 %r85,%r84,25; @ %r85 bra $L11; .loc 1 165 6 add.u32 %r40,%r39,-55; bra $L10; $L11: .loc 1 166 22 add.u32 %r86,%r39,-97; .loc 1 166 11 setp.gt.u32 %r87,%r86,25; @ %r87 bra $L12; .loc 1 167 6 add.u32 %r40,%r39,-87; $L10: .loc 1 170 6 setp.le.s32 %r88,%r59,%r40; @ %r88 bra $L12; .loc 1 172 24 shr.u32 %r90,%r42,31; mov.u32 %r91,%r90; .loc 1 172 35 set.u32.gt.u64 %r93,%r55,%r50; neg.s32 %r94,%r93; mov.u32 %r92,%r94; .loc 1 172 28 cvt.u16.u8 %r128,%r91; mov.u16 %r96,%r128; cvt.u16.u8 %r128,%r92; mov.u16 %r97,%r128; or.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; .loc 1 172 19 cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L22; .loc 1 172 52 set.u32.eq.u64 %r102,%r55,%r50; neg.s32 %r103,%r102; mov.u32 %r101,%r103; .loc 1 172 67 set.u32.gt.s32 %r105,%r40,%r49; neg.s32 %r106,%r105; mov.u32 %r104,%r106; .loc 1 172 62 cvt.u16.u8 %r128,%r101; mov.u16 %r108,%r128; cvt.u16.u8 %r128,%r104; mov.u16 %r109,%r128; and.b16 %r107,%r108,%r109; cvt.u32.u16 %r110,%r107; .loc 1 172 44 cvt.u16.u8 %r111,%r110; setp.ne.u16 %r112,%r111,0; @ %r112 bra $L23; .loc 1 177 8 cvt.s64.s32 %r113,%r40; mad.lo.u64 %r55,%r55,%r52,%r113; .loc 1 175 8 mov.u32 %r42,%r127; bra $L13; $L22: .loc 1 173 8 mov.u32 %r42,%r126; bra $L13; $L23: mov.u32 %r42,%r126; $L13: .loc 1 161 28 ld.u32 %r39,[%r47]; add.u64 %r47,%r47,4; .loc 1 162 6 bra $L14; $L12: .loc 1 180 5 setp.ne.u32 %r114,%r42,-1; @ %r114 bra $L15; .loc 1 182 16 mov.u32 %r115,34; st.u32 [%r56],%r115; .loc 1 185 5 setp.ne.u64 %r116,%r58,0; @ %r116 bra $L24; .loc 1 181 7 mov.u64 %r55,-1; bra $L1; $L15: .loc 1 183 12 setp.eq.u32 %r117,%r41,0; @ %r117 bra $L18; .loc 1 184 7 neg.s64 %r55,%r55; $L18: .loc 1 185 5 setp.eq.u64 %r118,%r58,0; @ %r118 bra $L1; .loc 1 186 11 setp.eq.u32 %r119,%r42,0; @ %r119 bra $L19; bra $L16; $L24: .loc 1 181 7 mov.u64 %r55,-1; $L16: .loc 1 186 11 add.u64 %r57,%r47,-4; $L19: st.u64 [%r58],%r57; .loc 1 187 9 bra $L1; $L7: .loc 1 157 5 setp.eq.u32 %r121,%r59,0; @ %r121 bra $L25; .loc 1 159 38 cvt.s64.s32 %r52,%r59; .loc 1 159 9 mov.u64 %r122,-1; div.u64 %r50,%r122,%r52; .loc 1 160 36 rem.u64 %r125,%r122,%r52; .loc 1 160 9 cvt.u32.u64 %r49,%r125; bra $L6; $L1: .loc 1 188 1 mov.u64 %value,%r55; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoul_r .visible .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 196 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoul_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 197 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoul_l .visible .func (.param .u64 %value_out) wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 205 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoul_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 206 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoul .visible .func (.param .u64 %value_out) wcstoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 213 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoul_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 214 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2104 0 0 0 644 11251 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstoull_l .visible .func (.param .u64 %value_out) _wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstoull.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .visible .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoull_l .visible .func (.param .u64 %value_out) wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoull .visible .func (.param .u64 %value_out) wcstoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _wcstoull_l .visible .func (.param .u64 %value_out) _wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r28; .reg .u32 %r34; .reg .u32 %r37; .reg .u32 %r40; .reg .u32 %r51; .reg .u64 %r53; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .u16 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u16 %r145; mov.u64 %r60,%ar0; mov.u64 %r61,%ar1; mov.u64 %r62,%ar2; mov.u32 %r63,%ar3; mov.u64 %r64,%ar4; .loc 1 152 24 set.u32.eq.u32 %r66,%r63,1; neg.s32 %r67,%r66; mov.u32 %r65,%r67; .loc 1 152 30 set.u32.gt.u32 %r69,%r63,36; neg.s32 %r70,%r69; mov.u32 %r68,%r70; cvt.u16.u8 %r145,%r65; mov.u16 %r72,%r145; cvt.u16.u8 %r145,%r68; mov.u16 %r73,%r145; or.b16 %r71,%r72,%r73; cvt.u32.u16 %r74,%r71; cvt.u16.u8 %r75,%r74; setp.eq.u16 %r76,%r75,0; @ %r76 bra $L2; .loc 1 153 16 mov.u32 %r77,22; st.u32 [%r60],%r77; .loc 1 154 9 mov.u64 %r59,0; bra $L1; $L2: mov.u64 %r53,%r61; $L4: mov.u64 %r26,%r53; add.u64 %r24,%r53,4; mov.u64 %r53,%r24; .loc 1 160 5 ld.u32 %r34,[%r26]; .loc 1 161 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r80,[%value_in]; } mov.u32 %r40,%r80; setp.ne.u32 %r81,%r40,0; @ %r81 bra $L4; .loc 1 162 5 setp.ne.u32 %r82,%r34,45; @ %r82 bra $L5; .loc 1 164 5 ld.u32 %r34,[%r24]; .loc 1 164 9 add.u64 %r24,%r26,8; .loc 1 163 7 mov.u32 %r51,1; bra $L6; $L5: .loc 1 165 12 setp.ne.u32 %r83,%r34,43; @ %r83 bra $L21; .loc 1 166 5 ld.u32 %r34,[%r53]; .loc 1 150 15 mov.u32 %r51,%r40; .loc 1 166 9 add.u64 %r24,%r26,8; bra $L6; $L21: .loc 1 150 15 mov.u32 %r51,%r40; $L6: .loc 1 167 12 and.b32 %r84,%r63,-17; .loc 1 167 5 setp.eq.u32 %r85,%r84,0; @ %r85 bra $L7; .loc 1 175 44 cvt.s64.s32 %r23,%r63; .loc 1 175 9 mov.u64 %r86,-1; div.u64 %r28,%r86,%r23; .loc 1 176 42 rem.u64 %r89,%r86,%r23; .loc 1 176 9 cvt.u32.u64 %r56,%r89; bra $L8; $L7: .loc 1 167 32 setp.ne.u32 %r90,%r34,48; @ %r90 bra $L9; .loc 1 168 31 ld.u32 %r92,[%r24]; and.b32 %r91,%r92,-33; .loc 1 168 16 setp.ne.u32 %r93,%r91,88; @ %r93 bra $L10; .loc 1 169 5 ld.u32 %r34,[%r24+4]; .loc 1 170 5 add.u64 %r24,%r24,8; mov.u32 %r56,15; mov.u64 %r28,1152921504606846975; mov.u64 %r23,16; .loc 1 171 8 mov.u32 %r63,16; bra $L8; $L10: .loc 1 173 5 setp.eq.u32 %r94,%r63,0; @ %r94 bra $L22; .loc 1 175 44 cvt.s64.s32 %r23,%r63; .loc 1 175 9 mov.u64 %r95,-1; div.u64 %r28,%r95,%r23; .loc 1 176 42 rem.u64 %r98,%r95,%r23; .loc 1 176 9 cvt.u32.u64 %r56,%r98; bra $L8; $L22: .loc 1 173 5 mov.u32 %r56,7; mov.u64 %r28,2305843009213693951; mov.u64 %r23,8; .loc 1 174 24 mov.u32 %r63,8; bra $L8; $L26: .loc 1 173 5 mov.u32 %r56,5; mov.u64 %r28,1844674407370955161; mov.u64 %r23,10; .loc 1 174 24 mov.u32 %r63,10; $L8: mov.u64 %r55,%r24; .loc 1 177 11 mov.u64 %r59,0; .loc 1 189 8 mov.u32 %r143,-1; .loc 1 191 8 mov.u32 %r144,1; $L16: .loc 1 178 17 add.u32 %r99,%r34,-48; .loc 1 178 6 setp.gt.u32 %r100,%r99,9; @ %r100 bra $L11; .loc 1 179 6 mov.u32 %r37,%r99; bra $L12; $L11: .loc 1 180 22 add.u32 %r101,%r34,-65; .loc 1 180 11 setp.gt.u32 %r102,%r101,25; @ %r102 bra $L13; .loc 1 181 6 add.u32 %r37,%r34,-55; bra $L12; $L13: .loc 1 182 22 add.u32 %r103,%r34,-97; .loc 1 182 11 setp.gt.u32 %r104,%r103,25; @ %r104 bra $L14; .loc 1 183 6 add.u32 %r37,%r34,-87; $L12: .loc 1 186 6 setp.le.s32 %r105,%r63,%r37; @ %r105 bra $L14; .loc 1 188 24 shr.u32 %r107,%r40,31; mov.u32 %r108,%r107; .loc 1 188 35 set.u32.lt.u64 %r110,%r28,%r59; neg.s32 %r111,%r110; mov.u32 %r109,%r111; .loc 1 188 28 cvt.u16.u8 %r145,%r108; mov.u16 %r113,%r145; cvt.u16.u8 %r145,%r109; mov.u16 %r114,%r145; or.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; .loc 1 188 19 cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L23; .loc 1 188 52 set.u32.eq.u64 %r119,%r28,%r59; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 188 67 set.u32.gt.s32 %r122,%r37,%r56; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 188 62 cvt.u16.u8 %r145,%r118; mov.u16 %r125,%r145; cvt.u16.u8 %r145,%r121; mov.u16 %r126,%r145; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 188 44 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L24; .loc 1 193 8 cvt.s64.s32 %r130,%r37; mad.lo.u64 %r59,%r59,%r23,%r130; .loc 1 191 8 mov.u32 %r40,%r144; bra $L15; $L23: .loc 1 189 8 mov.u32 %r40,%r143; bra $L15; $L24: mov.u32 %r40,%r143; $L15: .loc 1 177 28 ld.u32 %r34,[%r55]; add.u64 %r55,%r55,4; .loc 1 178 6 bra $L16; $L14: .loc 1 196 5 setp.ne.u32 %r131,%r40,-1; @ %r131 bra $L17; .loc 1 198 16 mov.u32 %r132,34; st.u32 [%r60],%r132; .loc 1 201 5 setp.ne.u64 %r133,%r62,0; @ %r133 bra $L25; .loc 1 197 7 mov.u64 %r59,-1; bra $L1; $L17: .loc 1 199 12 setp.eq.u32 %r134,%r51,0; @ %r134 bra $L19; .loc 1 200 7 neg.s64 %r59,%r59; $L19: .loc 1 201 5 setp.eq.u64 %r135,%r62,0; @ %r135 bra $L1; .loc 1 202 11 setp.eq.u32 %r136,%r40,0; @ %r136 bra $L20; bra $L18; $L25: .loc 1 197 7 mov.u64 %r59,-1; $L18: .loc 1 202 11 add.u64 %r61,%r55,-4; $L20: st.u64 [%r62],%r61; bra $L1; $L9: .loc 1 173 5 setp.eq.u32 %r138,%r63,0; @ %r138 bra $L26; .loc 1 175 44 cvt.s64.s32 %r23,%r63; .loc 1 175 9 mov.u64 %r139,-1; div.u64 %r28,%r139,%r23; .loc 1 176 42 rem.u64 %r142,%r139,%r23; .loc 1 176 9 cvt.u32.u64 %r56,%r142; bra $L8; $L1: .loc 1 204 1 mov.u64 %value,%r59; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoull_r .visible .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 212 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoull_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 213 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoull_l .visible .func (.param .u64 %value_out) wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 221 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoull_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 222 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoull .visible .func (.param .u64 %value_out) wcstoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 229 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoull_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 230 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2122 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /2142 0 0 0 644 10510 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _wcstoumax_l .func (.param .u64 %value_out) _wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../newlib/libc/stdlib/wcstoumax.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoumax_r .visible .func (.param .u64 %value_out) _wcstoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoumax_l .visible .func (.param .u64 %value_out) wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoumax .visible .func (.param .u64 %value_out) wcstoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: _wcstoumax_l .func (.param .u64 %value_out) _wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r26; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u32 %r96; .reg .u16 %r97; .reg .pred %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u32 %r108; .reg .u16 %r109; .reg .pred %r110; .reg .u64 %r111; .reg .pred %r112; .reg .u32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u16 %r125; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r37,%r57; $L2: mov.u64 %r39,%r37; add.u64 %r26,%r37,4; mov.u64 %r37,%r26; .loc 1 74 5 ld.u32 %r42,[%r39]; .loc 1 75 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r45,%r63; setp.ne.u32 %r64,%r45,0; @ %r64 bra $L2; .loc 1 76 5 setp.ne.u32 %r65,%r42,45; @ %r65 bra $L3; .loc 1 78 5 ld.u32 %r42,[%r26]; .loc 1 78 9 add.u64 %r26,%r39,8; .loc 1 77 7 mov.u32 %r44,1; bra $L4; $L3: .loc 1 81 6 setp.ne.u32 %r66,%r42,43; @ %r66 bra $L22; .loc 1 82 6 ld.u32 %r42,[%r37]; .loc 1 80 7 mov.u32 %r44,%r45; .loc 1 82 10 add.u64 %r26,%r39,8; bra $L4; $L22: .loc 1 80 7 mov.u32 %r44,%r45; $L4: .loc 1 84 12 and.b32 %r67,%r59,-17; .loc 1 84 5 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 84 32 setp.ne.u32 %r69,%r42,48; @ %r69 bra $L6; .loc 1 85 31 ld.u32 %r71,[%r26]; and.b32 %r70,%r71,-33; .loc 1 85 16 setp.ne.u32 %r72,%r70,88; @ %r72 bra $L7; .loc 1 86 5 ld.u32 %r42,[%r26+4]; .loc 1 87 5 add.u64 %r26,%r26,8; mov.u32 %r50,15; mov.u64 %r49,1152921504606846975; mov.u64 %r40,16; .loc 1 88 8 mov.u32 %r59,16; bra $L8; $L7: .loc 1 90 5 setp.eq.u32 %r73,%r59,0; @ %r73 bra $L23; $L5: .loc 1 93 15 add.u32 %r74,%r59,-2; .loc 1 93 5 setp.gt.u32 %r75,%r74,34; @ %r75 bra $L24; .loc 1 96 23 cvt.s64.s32 %r40,%r59; .loc 1 96 9 mov.u64 %r76,-1; div.u64 %r49,%r76,%r40; .loc 1 97 23 rem.u64 %r79,%r76,%r40; .loc 1 97 9 cvt.u32.u64 %r50,%r79; bra $L8; $L23: .loc 1 90 5 mov.u32 %r50,7; mov.u64 %r49,2305843009213693951; mov.u64 %r40,8; .loc 1 91 24 mov.u32 %r59,8; bra $L8; $L28: .loc 1 90 5 mov.u32 %r50,5; mov.u64 %r49,1844674407370955161; mov.u64 %r40,10; .loc 1 91 24 mov.u32 %r59,10; $L8: mov.u64 %r54,%r26; .loc 1 92 6 mov.u64 %r55,0; .loc 1 115 8 mov.u32 %r123,-1; .loc 1 117 8 mov.u32 %r124,1; $L15: .loc 1 104 17 add.u32 %r80,%r42,-48; .loc 1 104 6 setp.gt.u32 %r81,%r80,9; @ %r81 bra $L10; .loc 1 105 6 mov.u32 %r43,%r80; bra $L11; $L10: .loc 1 106 22 add.u32 %r82,%r42,-65; .loc 1 106 11 setp.gt.u32 %r83,%r82,25; @ %r83 bra $L12; .loc 1 107 6 add.u32 %r43,%r42,-55; bra $L11; $L12: .loc 1 108 22 add.u32 %r84,%r42,-97; .loc 1 108 11 setp.gt.u32 %r85,%r84,25; @ %r85 bra $L13; .loc 1 109 6 add.u32 %r43,%r42,-87; $L11: .loc 1 112 6 setp.ge.s32 %r86,%r43,%r59; @ %r86 bra $L13; .loc 1 114 11 shr.u32 %r88,%r45,31; mov.u32 %r89,%r88; .loc 1 114 22 set.u32.gt.u64 %r91,%r55,%r49; neg.s32 %r92,%r91; mov.u32 %r90,%r92; .loc 1 114 15 cvt.u16.u8 %r125,%r89; mov.u16 %r94,%r125; cvt.u16.u8 %r125,%r90; mov.u16 %r95,%r125; or.b16 %r93,%r94,%r95; cvt.u32.u16 %r96,%r93; .loc 1 114 6 cvt.u16.u8 %r97,%r96; setp.ne.u16 %r98,%r97,0; @ %r98 bra $L25; .loc 1 114 39 set.u32.eq.u64 %r100,%r55,%r49; neg.s32 %r101,%r100; mov.u32 %r99,%r101; .loc 1 114 54 set.u32.gt.s32 %r103,%r43,%r50; neg.s32 %r104,%r103; mov.u32 %r102,%r104; .loc 1 114 49 cvt.u16.u8 %r125,%r99; mov.u16 %r106,%r125; cvt.u16.u8 %r125,%r102; mov.u16 %r107,%r125; and.b16 %r105,%r106,%r107; cvt.u32.u16 %r108,%r105; .loc 1 114 31 cvt.u16.u8 %r109,%r108; setp.ne.u16 %r110,%r109,0; @ %r110 bra $L26; .loc 1 119 8 cvt.s64.s32 %r111,%r43; mad.lo.u64 %r55,%r55,%r40,%r111; .loc 1 117 8 mov.u32 %r45,%r124; bra $L14; $L25: .loc 1 115 8 mov.u32 %r45,%r123; bra $L14; $L26: mov.u32 %r45,%r123; $L14: .loc 1 98 14 ld.u32 %r42,[%r54]; add.u64 %r54,%r54,4; .loc 1 104 6 bra $L15; $L13: .loc 1 122 5 setp.ne.u32 %r112,%r45,-1; @ %r112 bra $L16; .loc 1 124 16 mov.u32 %r113,34; st.u32 [%r56],%r113; .loc 1 130 5 setp.ne.u64 %r114,%r58,0; @ %r114 bra $L27; .loc 1 123 7 mov.u64 %r55,-1; bra $L1; $L16: .loc 1 125 12 setp.ne.u32 %r115,%r45,0; @ %r115 bra $L19; bra $L9; $L24: .loc 1 92 6 mov.u64 %r55,0; $L9: .loc 1 127 16 mov.u32 %r116,22; st.u32 [%r56],%r116; .loc 1 130 5 setp.ne.u64 %r117,%r58,0; @ %r117 bra $L20; bra $L1; $L19: .loc 1 128 12 setp.eq.u32 %r118,%r44,0; @ %r118 bra $L21; .loc 1 129 7 neg.s64 %r55,%r55; .loc 1 130 5 setp.ne.u64 %r119,%r58,0; @ %r119 bra $L17; bra $L1; $L21: setp.eq.u64 %r120,%r58,0; @ ! %r120 bra $L17; bra $L1; $L27: .loc 1 123 7 mov.u64 %r55,-1; $L17: .loc 1 131 13 add.u64 %r57,%r54,-4; $L20: .loc 1 131 11 st.u64 [%r58],%r57; .loc 1 132 9 bra $L1; $L6: .loc 1 90 5 setp.eq.u32 %r122,%r59,0; @ %r122 bra $L28; bra $L5; $L1: .loc 1 133 1 mov.u64 %value,%r55; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoumax_r .visible .func (.param .u64 %value_out) _wcstoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 139 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoumax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 140 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoumax_l .visible .func (.param .u64 %value_out) wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 148 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoumax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 149 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoumax .visible .func (.param .u64 %value_out) wcstoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 154 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoumax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 155 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2161 0 0 0 644 2054 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcswidth .visible .func (.param .u32 %value_out) wcswidth (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/wcswidth.c" // BEGIN GLOBAL FUNCTION DECL: __wcwidth .extern .func (.param .u32 %value_out) __wcwidth (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: wcswidth .visible .func (.param .u32 %value_out) wcswidth (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u16 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u16 %r53; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 42 7 set.u32.eq.u64 %r35,%r32,0; neg.s32 %r36,%r35; mov.u32 %r34,%r36; .loc 1 42 18 set.u32.eq.u64 %r38,%r33,0; neg.s32 %r39,%r38; mov.u32 %r37,%r39; .loc 1 42 13 cvt.u16.u8 %r53,%r34; mov.u16 %r41,%r53; cvt.u16.u8 %r53,%r37; mov.u16 %r42,%r53; or.b16 %r40,%r41,%r42; cvt.u32.u16 %r43,%r40; .loc 1 42 6 cvt.u16.u8 %r44,%r43; setp.ne.u16 %r45,%r44,0; @ %r45 bra $L4; mov.u64 %r29,%r32; .loc 1 41 10 mov.u32 %r31,0; $L3: .loc 1 61 14 ld.u32 %r46,[%r29]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r46; call (%value_in),__wcwidth,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 61 8 setp.lt.s32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 63 9 add.u32 %r31,%r31,%r47; .loc 1 64 20 ld.u32 %r49,[%r29]; setp.eq.u32 %r50,%r49,0; @ %r50 bra $L1; add.u64 %r33,%r33,-1; add.u64 %r29,%r29,4; setp.ne.u64 %r51,%r33,0; @ %r51 bra $L3; bra $L1; $L4: .loc 1 43 12 mov.u32 %r31,0; bra $L1; $L5: .loc 1 62 14 mov.u32 %r31,-1; $L1: .loc 1 66 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-wcsxfrm.o/0 0 0 644 1226 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsxfrm .visible .func (.param .u64 %value_out) wcsxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wcsxfrm.c" // BEGIN GLOBAL FUNCTION DECL: wcslcpy .extern .func (.param .u64 %value_out) wcslcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wcsxfrm .visible .func (.param .u64 %value_out) wcsxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 44 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),wcslcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r29,[%value_in]; } .loc 1 45 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-wctomb.o/ 0 0 0 644 1218 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wctomb .visible .func (.param .u32 %value_out) wctomb (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/wctomb.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: wctomb .visible .func (.param .u32 %value_out) wctomb (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .pred %r29; .reg .u64 %r30; .reg .u32 %r31; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 59 12 setp.eq.u64 %r28,%r26,0; @ %r28 bra $L4; .loc 1 63 5 setp.le.u32 %r29,%r27,255; @ %r29 bra $L3; .loc 1 64 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r30,[%value_in]; } .loc 1 64 9 mov.u32 %r31,138; st.u32 [%r30],%r31; .loc 1 65 10 mov.u32 %r25,-1; bra $L1; $L3: .loc 1 68 14 st.u8 [%r26],%r27; .loc 1 69 16 mov.u32 %r25,1; bra $L1; $L4: .loc 1 60 24 mov.u32 %r25,0; $L1: .loc 1 71 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } /2179 0 0 0 644 2722 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wctomb_r .visible .func (.param .u32 %value_out) _wctomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/stdlib/wctomb_r.c" // BEGIN GLOBAL FUNCTION DECL: __ascii_wctomb .visible .func (.param .u32 %value_out) __ascii_wctomb (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DEF: _wctomb_r .visible .func (.param .u32 %value_out) _wctomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 15 10 cvta.global.u64 %r32,__global_locale; ld.u64 %r34,[%r32+224]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2,.param .u64 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),%r34,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r33,[%value_in]; } .loc 1 16 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ascii_wctomb .visible .func (.param .u32 %value_out) __ascii_wctomb (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r29; .reg .pred %r30; .reg .u32 %r31; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u32 %r27,%ar2; .loc 1 29 6 setp.eq.u64 %r29,%r26,0; @ %r29 bra $L5; .loc 1 35 6 setp.le.u32 %r30,%r27,255; @ %r30 bra $L4; .loc 1 38 17 mov.u32 %r31,138; st.u32 [%r25],%r31; .loc 1 39 14 mov.u32 %r24,-1; bra $L2; $L4: .loc 1 42 8 st.u8 [%r26],%r27; .loc 1 43 10 mov.u32 %r24,1; bra $L2; $L5: .loc 1 30 12 mov.u32 %r24,0; $L2: .loc 1 44 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } lib_a-wcwidth.o/0 0 0 644 3214 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __wcwidth .visible .func (.param .u32 %value_out) __wcwidth (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/string/wcwidth.c" // BEGIN GLOBAL FUNCTION DECL: wcwidth .visible .func (.param .u32 %value_out) wcwidth (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswprint .extern .func (.param .u32 %value_out) iswprint (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswcntrl .extern .func (.param .u32 %value_out) iswcntrl (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __wcwidth .visible .func (.param .u32 %value_out) __wcwidth (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r47; mov.u32 %r29,%ar0; .loc 1 224 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswprint,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 224 6 setp.ne.u32 %r32,%r31,0; @ %r32 bra $L3; .loc 1 226 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswcntrl,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 226 22 set.u32.eq.u32 %r36,%r29,0; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 226 6 set.u32.ne.u32 %r39,%r34,0; neg.s32 %r40,%r39; mov.u32 %r38,%r40; .loc 1 226 22 cvt.u16.u8 %r47,%r35; mov.u16 %r42,%r47; cvt.u16.u8 %r47,%r38; mov.u16 %r43,%r47; or.b16 %r41,%r42,%r43; cvt.u32.u16 %r44,%r41; cvt.u32.u8 %r45,%r44; add.u32 %r28,%r45,-1; bra $L1; $L3: .loc 1 225 12 mov.u32 %r28,1; $L1: .loc 1 230 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcwidth .visible .func (.param .u32 %value_out) wcwidth (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r47; mov.u32 %r29,%ar0; .loc 1 224 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswprint,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 224 6 setp.ne.u32 %r32,%r31,0; @ %r32 bra $L6; .loc 1 226 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswcntrl,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 226 22 set.u32.eq.u32 %r36,%r29,0; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 226 6 set.u32.ne.u32 %r39,%r34,0; neg.s32 %r40,%r39; mov.u32 %r38,%r40; .loc 1 226 22 cvt.u16.u8 %r47,%r35; mov.u16 %r42,%r47; cvt.u16.u8 %r47,%r38; mov.u16 %r43,%r47; or.b16 %r41,%r42,%r43; cvt.u32.u16 %r44,%r41; cvt.u32.u8 %r45,%r44; add.u32 %r28,%r45,-1; bra $L4; $L6: .loc 1 225 12 mov.u32 %r28,1; $L4: .loc 1 241 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-wmemchr.o/0 0 0 644 1256 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemchr .visible .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wmemchr.c" // BEGIN GLOBAL FUNCTION DEF: wmemchr .visible .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .pred %r31; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 72 17 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L4; .loc 1 72 10 mov.u64 %r23,0; $L3: .loc 1 74 10 ld.u32 %r29,[%r25]; setp.eq.u32 %r30,%r29,%r26; @ %r30 bra $L5; .loc 1 79 8 add.u64 %r25,%r25,4; .loc 1 72 23 add.u64 %r23,%r23,1; .loc 1 72 17 setp.ne.u64 %r31,%r27,%r23; @ %r31 bra $L3; .loc 1 81 10 mov.u64 %r24,0; bra $L1; $L4: mov.u64 %r24,%r27; bra $L1; $L5: mov.u64 %r24,%r25; $L1: .loc 1 82 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-wmemcmp.o/0 0 0 644 1412 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemcmp .visible .func (.param .u32 %value_out) wmemcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wmemcmp.c" // BEGIN GLOBAL FUNCTION DEF: wmemcmp .visible .func (.param .u32 %value_out) wmemcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 71 17 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L5; .loc 1 71 10 mov.u64 %r24,0; $L4: .loc 1 73 11 ld.u32 %r22,[%r26]; .loc 1 73 18 ld.u32 %r23,[%r27]; .loc 1 73 10 setp.eq.u32 %r30,%r22,%r23; @ %r30 bra $L3; .loc 1 76 25 setp.gt.s32 %r31,%r22,%r23; selp.u32 %r25,1,-1,%r31; bra $L1; $L3: .loc 1 78 9 add.u64 %r26,%r26,4; .loc 1 79 9 add.u64 %r27,%r27,4; .loc 1 71 23 add.u64 %r24,%r24,1; .loc 1 71 17 setp.ne.u64 %r32,%r28,%r24; @ %r32 bra $L4; .loc 1 81 10 mov.u32 %r25,0; bra $L1; $L5: mov.u32 %r25,0; $L1: .loc 1 82 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-wmemcpy.o/0 0 0 644 1260 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemcpy .visible .func (.param .u64 %value_out) wmemcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wmemcpy.c" // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wmemcpy .visible .func (.param .u64 %value_out) wmemcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 69 22 shl.b64 %r30,%r26,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 70 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /2197 0 0 0 644 1268 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemmove .visible .func (.param .u64 %value_out) wmemmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wmemmove.c" // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wmemmove .visible .func (.param .u64 %value_out) wmemmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 74 22 shl.b64 %r30,%r26,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 75 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-wmemset.o/0 0 0 644 1113 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemset .visible .func (.param .u64 %value_out) wmemset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/wmemset.c" // BEGIN GLOBAL FUNCTION DEF: wmemset .visible .func (.param .u64 %value_out) wmemset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .pred %r29; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 70 16 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L2; .loc 1 69 4 mov.u64 %r22,%r25; .loc 1 70 9 mov.u64 %r23,0; $L3: .loc 1 71 6 st.u32 [%r22],%r26; .loc 1 72 4 add.u64 %r22,%r22,4; .loc 1 70 22 add.u64 %r23,%r23,1; .loc 1 70 16 setp.ne.u64 %r29,%r27,%r23; @ %r29 bra $L3; $L2: .loc 1 75 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-write.o/ 0 0 0 644 2140 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: write .visible .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/machine/nvptx/write.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: printf .extern .func (.param .u32 %value_out) printf (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {37,99,0 }; // BEGIN GLOBAL FUNCTION DEF: write .visible .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 8 .b8 %stack_ar[16]; .reg .u64 %stack; cvta.local.u64 %stack,%stack_ar; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .pred %r43; .reg .u64 %r45; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 25 15 add.u32 %r34,%r31,-1; .loc 1 25 6 setp.gt.u32 %r35,%r34,1; @ %r35 bra $L2; .loc 1 30 17 setp.ne.u64 %r36,%r33,0; @ %r36 bra $L3; bra $L4; $L2: .loc 1 27 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 27 13 mov.u32 %r38,9; st.u32 [%r37],%r38; .loc 1 28 14 mov.u32 %r30,-1; bra $L1; $L3: mov.u64 %r28,%r32; add.u64 %r29,%r28,%r33; cvta.const.u64 %r45,$LC0; $L6: .loc 1 31 5 ld.s8 %r40,[%r28]; st.u32 [%stack],%r40; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%stack; call (%value_in),printf,(%out_arg1,%out_arg2); ld.param.u32 %r41,[%value_in]; } .loc 1 30 17 add.u64 %r28,%r28,1; setp.ne.u64 %r43,%r28,%r29; @ %r43 bra $L6; $L4: .loc 1 32 10 cvt.u32.u64 %r30,%r33; $L1: .loc 1 33 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-writer.o/ 0 0 0 644 1777 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _write_r .visible .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/reent/writer.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: write .extern .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _write_r .visible .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 48 9 mov.u32 %r29,0; st.global.u32 [errno],%r29; .loc 1 49 24 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r33,[%value_in]; } .loc 1 49 12 cvt.s64.s32 %r24,%r33; .loc 1 49 6 setp.ne.u32 %r34,%r33,-1; @ %r34 bra $L1; .loc 1 49 62 ld.global.u32 %r23,[errno]; .loc 1 49 53 setp.eq.u32 %r35,%r23,0; @ %r35 bra $L1; .loc 1 50 17 st.u32 [%r25],%r23; $L1: .loc 1 52 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-wsetup.o/ 0 0 0 644 4406 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .visible .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdio/wsetup.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __smakebuf_r .extern .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __swsetup_r .visible .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .pred %r52; .reg .u32 %r53; .reg .u16 %r54; .reg .u16 %r56; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u64 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .pred %r85; .reg .u16 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u16 %r90; .reg .pred %r93; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 38 3 ld.global.u64 %r30,[_impure_ptr]; setp.eq.u64 %r43,%r30,0; @ %r43 bra $L2; ld.u32 %r44,[%r30+80]; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call __sinit,(%out_arg1); } $L2: .loc 1 44 10 ld.s16 %r38,[%r42+16]; .loc 1 44 6 cvt.u16.u32 %r48,%r38; and.b16 %r47,%r48,8; setp.eq.u16 %r49,%r47,0; @ %r49 bra $L3; .loc 1 59 20 ld.u64 %r39,[%r42+24]; bra $L4; $L3: .loc 1 46 10 and.b16 %r50,%r48,16; setp.ne.u16 %r52,%r50,0; @ %r52 bra $L5; .loc 1 48 16 mov.u32 %r53,9; st.u32 [%r41],%r53; .loc 1 49 15 or.b16 %r54,%r48,64; st.u16 [%r42+16],%r54; .loc 1 50 11 mov.u32 %r40,-1; bra $L1; $L5: .loc 1 52 10 and.b16 %r56,%r48,4; setp.ne.u16 %r58,%r56,0; @ %r58 bra $L7; .loc 1 59 20 ld.u64 %r39,[%r42+24]; bra $L8; $L7: .loc 1 55 8 ld.u64 %r24,[%r42+88]; .loc 1 55 7 setp.eq.u64 %r59,%r24,0; @ %r59 bra $L9; .loc 1 56 6 add.u64 %r60,%r42,116; setp.eq.u64 %r61,%r24,%r60; @ %r61 bra $L10; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call _free_r,(%out_arg1,%out_arg2); } .loc 1 57 15 ld.s16 %r38,[%r42+16]; $L10: .loc 1 56 6 mov.u64 %r64,0; st.u64 [%r42+88],%r64; $L9: .loc 1 57 15 cvt.u16.u32 %r66,%r38; and.b16 %r65,%r66,-37; cvt.s32.s16 %r38,%r65; .loc 1 58 11 mov.u32 %r67,0; st.u32 [%r42+8],%r67; .loc 1 59 20 ld.u64 %r39,[%r42+24]; .loc 1 59 11 st.u64 [%r42],%r39; $L8: .loc 1 61 18 cvt.u16.u32 %r69,%r38; or.b16 %r68,%r69,8; cvt.s32.s16 %r38,%r68; st.u16 [%r42+16],%r68; $L4: .loc 1 69 6 setp.ne.u64 %r93,%r39,0; @ %r93 bra $L11; .loc 1 70 9 cvt.u16.u32 %r73,%r38; and.b16 %r72,%r73,640; setp.eq.u16 %r74,%r72,512; @ %r74 bra $L11; .loc 1 71 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call __smakebuf_r,(%out_arg1,%out_arg2); } .loc 1 73 9 ld.s16 %r38,[%r42+16]; .loc 1 86 15 ld.u64 %r39,[%r42+24]; setp.ne.u64 %r93,%r39,0; $L11: .loc 1 73 6 cvt.u16.u32 %r78,%r38; and.b16 %r77,%r78,1; setp.eq.u16 %r79,%r77,0; @ %r79 bra $L12; .loc 1 80 14 mov.u32 %r80,0; st.u32 [%r42+12],%r80; .loc 1 81 22 ld.u32 %r82,[%r42+32]; neg.s32 %r81,%r82; .loc 1 81 20 st.u32 [%r42+40],%r81; bra $L13; $L12: .loc 1 84 38 and.b16 %r83,%r78,2; setp.ne.u16 %r85,%r83,0; @ %r85 bra $L15; ld.u32 %r29,[%r42+32]; bra $L14; $L15: mov.u32 %r29,0; $L14: .loc 1 84 12 st.u32 [%r42+12],%r29; $L13: .loc 1 86 6 @ %r93 bra $L16; .loc 1 86 22 cvt.u16.u32 %r88,%r38; and.b16 %r87,%r88,128; setp.eq.u16 %r89,%r87,0; @ %r89 bra $L17; .loc 1 89 18 or.b16 %r90,%r88,64; st.u16 [%r42+16],%r90; .loc 1 90 14 mov.u32 %r40,-1; bra $L1; $L16: .loc 1 92 10 mov.u32 %r40,0; bra $L1; $L17: mov.u32 %r40,0; $L1: .loc 1 93 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } /2215 0 0 0 644 3463 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __xpg_strerror_r .visible .func (.param .u32 %value_out) __xpg_strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/xpg_strerror_r.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strerror_r .extern .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __xpg_strerror_r .visible .func (.param .u32 %value_out) __xpg_strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r24; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r41; .reg .pred %r42; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r51; .reg .pred %r52; .reg .u16 %r53; .reg .u32 %r54; .reg .pred %r55; mov.u32 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 12 7 mov.u32 %r32,0; st.u32 [%frame],%r32; .loc 1 14 6 setp.eq.u64 %r33,%r31,0; @ %r33 bra $L4; .loc 1 16 11 ld.global.u64 %r38,[_impure_ptr]; mov.u32 %r36,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r36; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r39,[%value_in]; } .loc 1 17 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r41,[%value_in]; } .loc 1 17 6 setp.lt.u64 %r42,%r41,%r31; @ %r42 bra $L3; .loc 1 19 7 add.u64 %r24,%r31,-1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r46,[%value_in]; } .loc 1 20 21 add.u64 %r47,%r30,%r24; mov.u32 %r48,0; st.u8 [%r47],%r48; .loc 1 21 14 mov.u32 %r28,34; bra $L1; $L3: .loc 1 23 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r51,[%value_in]; } .loc 1 24 11 ld.u32 %r28,[%frame]; .loc 1 24 38 setp.ne.u32 %r52,%r28,0; @ %r52 bra $L1; .loc 1 24 18 ld.u8 %r54,[%r39]; cvt.s16.s8 %r53,%r54; setp.ne.u16 %r55,%r53,0; .loc 1 24 38 selp.u32 %r28,%r28,22,%r55; bra $L1; $L4: .loc 1 15 12 mov.u32 %r28,34; $L1: .loc 1 25 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } 07070100000090000081a4000000000000000000000002630c8f2500000000000000000000000000000000000000000000002200000000./usr/nvptx-none/lib/mgomp/libc.a07070100000090000081a4000000000000000000000002630c8f250029fdb8000000000000000000000000000000000000002200000000./usr/nvptx-none/lib/mgomp/libg.a! // 2240 ` lib_a-__adjust.o/ lib_a-__atexit.o/ lib_a-__call_atexit.o/ lib_a-__dprintf.o/ lib_a-__ten_mu.o/ lib_a-aligned_alloc.o/ lib_a-arc4random.o/ lib_a-arc4random_uniform.o/ lib_a-asctime_r.o/ lib_a-clearerr.o/ lib_a-cxa_atexit.o/ lib_a-cxa_finalize.o/ lib_a-difftime.o/ lib_a-dtoastub.o/ lib_a-explicit_bzero.o/ lib_a-fiprintf.o/ lib_a-gdtoa-gethex.o/ lib_a-gdtoa-hexnan.o/ lib_a-getchar_u.o/ lib_a-getdelim.o/ lib_a-getenv_r.o/ lib_a-getreent.o/ lib_a-gettimeofdayr.o/ lib_a-gettzinfo.o/ lib_a-gmtime_r.o/ lib_a-isxdigit.o/ lib_a-lcltime_r.o/ lib_a-localeconv.o/ lib_a-mallinfor.o/ lib_a-mallstatsr.o/ lib_a-mbstowcs.o/ lib_a-mbstowcs_r.o/ lib_a-mbtowc_r.o/ lib_a-month_lengths.o/ lib_a-on_exit_args.o/ lib_a-putchar_u.o/ lib_a-quick_exit.o/ lib_a-reallocarray.o/ lib_a-reallocf.o/ lib_a-reallocr.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_scalbn.o/ lib_a-sb_charsets.o/ lib_a-setbuffer.o/ lib_a-setlinebuf.o/ lib_a-sf_copysign.o/ lib_a-sf_finite.o/ lib_a-sf_fpclassify.o/ lib_a-sf_frexp.o/ lib_a-sf_isinf.o/ lib_a-sf_isinff.o/ lib_a-sf_isnan.o/ lib_a-sf_isnanf.o/ lib_a-sf_ldexp.o/ lib_a-sf_scalbn.o/ lib_a-siprintf.o/ lib_a-sniprintf.o/ lib_a-snprintf.o/ lib_a-strcasecmp.o/ lib_a-strdup_r.o/ lib_a-strerror.o/ lib_a-strerror_r.o/ lib_a-strftime.o/ lib_a-strncasecmp.o/ lib_a-strptime.o/ lib_a-strsignal.o/ lib_a-strtoimax.o/ lib_a-strtok_r.o/ lib_a-strtoll_r.o/ lib_a-strtoull.o/ lib_a-strtoull_r.o/ lib_a-strtoumax.o/ lib_a-svfiprintf.o/ lib_a-svfiscanf.o/ lib_a-svfiwprintf.o/ lib_a-svfiwscanf.o/ lib_a-svfprintf.o/ lib_a-svfscanf.o/ lib_a-svfwprintf.o/ lib_a-svfwscanf.o/ lib_a-timingsafe_bcmp.o/ lib_a-timingsafe_memcmp.o/ lib_a-tzcalc_limits.o/ lib_a-u_strerr.o/ lib_a-vdiprintf.o/ lib_a-vdprintf.o/ lib_a-vfiprintf.o/ lib_a-vfiscanf.o/ lib_a-vfiwprintf.o/ lib_a-vfiwscanf.o/ lib_a-vfprintf.o/ lib_a-vfwprintf.o/ lib_a-vfwscanf.o/ lib_a-viprintf.o/ lib_a-vsiprintf.o/ lib_a-vsiscanf.o/ lib_a-vsniprintf.o/ lib_a-vsnprintf.o/ lib_a-vsprintf.o/ lib_a-wcsftime.o/ lib_a-wcstoimax.o/ lib_a-wcstoll_r.o/ lib_a-wcstombs.o/ lib_a-wcstombs_r.o/ lib_a-wcstoull.o/ lib_a-wcstoull_r.o/ lib_a-wcstoumax.o/ lib_a-wcswidth.o/ lib_a-wctomb_r.o/ lib_a-wmemmove.o/ lib_a-xpg_strerror_r.o/ lib_a-_Exit.o/ 0 0 0 644 591 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _Exit .visible .func _Exit (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/_Exit.c" // BEGIN GLOBAL FUNCTION DECL: _exit .extern .func _exit (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _Exit .visible .func _Exit (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r22; mov.u32 %r22,%ar0; .loc 1 39 3 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r22; call _exit,(%out_arg1); trap; // (noreturn) exit; // (noreturn) } } /0 0 0 0 644 2268 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __adjust .visible .func (.param .f64 %value_out) __adjust (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/__adjust.c" // BEGIN GLOBAL FUNCTION DECL: __exp10 .extern .func (.param .f64 %value_out) __exp10 (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __adjust .visible .func (.param .f64 %value_out) __adjust (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .f64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u32 %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r41; .reg .f64 %r42; .reg .f64 %r44; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u32 %r30,%ar2; mov.u32 %r31,%ar3; .loc 1 22 6 setp.le.s32 %r32,%r30,308; @ %r32 bra $L2; .loc 1 24 19 mov.u32 %r33,34; st.u32 [%r28],%r33; .loc 1 25 33 setp.ne.u32 %r34,%r31,0; selp.f64 %r27,0dfff0000000000000,0d7ff0000000000000,%r34; bra $L1; $L2: .loc 1 27 11 setp.ge.s32 %r35,%r30,-308; @ %r35 bra $L4; .loc 1 29 19 mov.u32 %r36,34; st.u32 [%r28],%r36; .loc 1 30 14 mov.f64 %r27,0d0000000000000000; bra $L1; $L4: .loc 1 33 5 ld.f64 %r27,[%r29]; .loc 1 34 6 setp.eq.u32 %r37,%r31,0; @ %r37 bra $L5; .loc 1 35 7 neg.f64 %r27,%r27; $L5: .loc 1 36 6 setp.eq.u32 %r38,%r30,0; @ %r38 bra $L1; .loc 1 39 6 setp.ge.s32 %r39,%r30,0; @ %r39 bra $L6; .loc 1 40 25 neg.s32 %r41,%r30; .loc 1 40 16 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r41; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 40 14 div.rn.f64 %r27,%r27,%r42; bra $L1; $L6: .loc 1 42 16 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r30; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 42 14 mul.f64 %r27,%r27,%r44; $L1: .loc 1 43 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } /18 0 0 0 644 3194 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __register_exitproc .visible .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/__atexit.c" // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __register_exitproc .visible .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r27; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r63; mov.u32 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; mov.u64 %r39,%ar3; .loc 1 80 7 ld.const.u64 %r22,[_global_impure_ptr]; .loc 1 80 5 ld.u64 %r33,[%r22+504]; .loc 1 81 6 setp.ne.u64 %r40,%r33,0; @ %r40 bra $L2; .loc 1 83 26 add.u64 %r33,%r22,512; .loc 1 83 22 st.u64 [%r22+504],%r33; $L2: .loc 1 90 8 ld.u32 %r23,[%r33+8]; .loc 1 90 6 setp.gt.s32 %r41,%r23,31; @ %r41 bra $L3; .loc 1 154 18 add.u32 %r34,%r23,1; bra $L4; $L3: .loc 1 98 30 mov.u64 %r42,792; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r43,[%value_in]; } mov.u64 %r33,%r43; .loc 1 99 10 setp.eq.u64 %r45,%r33,0; @ %r45 bra $L9; .loc 1 106 15 mov.u32 %r46,0; st.u32 [%r33+8],%r46; .loc 1 107 16 ld.u64 %r47,[%r22+504]; st.u64 [%r33],%r47; .loc 1 108 22 st.u64 [%r22+504],%r33; .loc 1 110 33 mov.u64 %r48,0; st.u64 [%r33+784],%r48; mov.u32 %r34,1; mov.u32 %r23,%r46; $L4: .loc 1 118 6 setp.ne.u32 %r49,%r36,0; @ %r49 bra $L6; cvt.s64.s32 %r63,%r23; bra $L7; $L6: cvt.s64.s32 %r63,%r23; shl.b64 %r51,%r63,3; add.u64 %r32,%r33,%r51; .loc 1 148 30 st.u64 [%r32+272],%r38; .loc 1 149 28 mov.u32 %r52,1; shl.b32 %r27,%r52,%r23; .loc 1 149 22 ld.u32 %r54,[%r33+784]; or.b32 %r53,%r54,%r27; st.u32 [%r33+784],%r53; .loc 1 150 34 st.u64 [%r32+528],%r39; .loc 1 151 10 setp.ne.u32 %r55,%r36,2; @ %r55 bra $L7; .loc 1 152 16 ld.u32 %r57,[%r33+788]; or.b32 %r56,%r57,%r27; st.u32 [%r33+788],%r56; $L7: .loc 1 154 18 st.u32 [%r33+8],%r34; .loc 1 154 22 add.u64 %r59,%r63,2; shl.b64 %r60,%r59,3; add.u64 %r61,%r33,%r60; st.u64 [%r61],%r37; .loc 1 158 10 mov.u32 %r35,0; bra $L1; $L9: .loc 1 104 11 mov.u32 %r35,-1; $L1: .loc 1 159 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } /36 0 0 0 644 3808 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __call_exitprocs .visible .func __call_exitprocs (.param .u32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/__call_atexit.c" // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __call_exitprocs .visible .func __call_exitprocs (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r27; .reg .u64 %r34; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r80; .reg .pred %r83; mov.u32 %r48,%ar0; mov.u64 %r49,%ar1; .loc 1 86 7 ld.const.u64 %r47,[_global_impure_ptr]; .loc 1 87 9 add.u64 %r36,%r47,504; setp.eq.u64 %r83,%r49,0; $L24: .loc 1 86 5 ld.u64 %r39,[%r47+504]; .loc 1 88 10 setp.ne.u64 %r50,%r39,0; @ ! %r50 bra $L1; .loc 1 87 9 mov.u64 %r34,%r36; $L2: .loc 1 95 17 ld.u32 %r37,[%r39+8]; .loc 1 95 14 add.u32 %r42,%r37,-1; .loc 1 95 31 setp.lt.s32 %r51,%r42,0; @ %r51 bra $L3; cvt.s64.s32 %r52,%r37; add.u64 %r53,%r52,1; shl.b64 %r54,%r53,3; add.u64 %r43,%r39,%r54; $L12: .loc 1 102 7 @ %r83 bra $L4; .loc 1 102 20 ld.u64 %r56,[%r43+512]; setp.ne.u64 %r57,%r56,%r49; @ %r57 bra $L5; $L4: .loc 1 107 7 ld.u64 %r41,[%r43]; .loc 1 108 21 add.u32 %r58,%r37,-1; .loc 1 108 7 setp.ne.u32 %r59,%r58,%r42; @ %r59 bra $L6; .loc 1 109 13 st.u32 [%r39+8],%r42; mov.u32 %r37,%r42; bra $L7; $L6: .loc 1 111 17 mov.u64 %r60,0; st.u64 [%r43],%r60; $L7: .loc 1 114 7 setp.eq.u64 %r61,%r41,0; @ %r61 bra $L5; .loc 1 99 6 mov.u32 %r62,1; shl.b32 %r27,%r62,%r42; .loc 1 120 33 ld.u32 %r64,[%r39+784]; and.b32 %r63,%r27,%r64; .loc 1 120 14 setp.ne.u32 %r65,%r63,0; @ %r65 bra $L8; .loc 1 121 6 { $LCT0: .callprototype _; call %r41,$LCT0; } bra $L9; $L8: .loc 1 123 7 ld.u64 %r44,[%r43+256]; .loc 1 122 28 ld.u32 %r67,[%r39+788]; and.b32 %r66,%r27,%r67; .loc 1 122 12 setp.ne.u32 %r68,%r66,0; @ %r68 bra $L10; .loc 1 123 7 { $LCT1: .callprototype _ ( .param .u32 %in_ar0,.param .u64 %in_ar1); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call %r41,(%out_arg1,%out_arg2),$LCT1; } bra $L9; $L10: .loc 1 125 7 { $LCT2: .callprototype _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call %r41,(%out_arg1),$LCT2; } $L9: .loc 1 130 7 ld.u32 %r72,[%r39+8]; setp.ne.u32 %r73,%r72,%r37; @ %r73 bra $L24; .loc 1 130 23 ld.u64 %r74,[%r34]; setp.ne.u64 %r75,%r74,%r39; @ %r75 bra $L24; $L5: .loc 1 95 38 add.u32 %r42,%r42,-1; .loc 1 95 31 add.u64 %r43,%r43,-8; setp.ne.u32 %r76,%r42,-1; @ %r76 bra $L12; $L3: .loc 1 139 28 ld.u64 %r46,[%r39]; .loc 1 139 10 setp.ne.u32 %r77,%r37,0; @ %r77 bra $L13; .loc 1 139 24 setp.eq.u64 %r78,%r46,0; @ %r78 bra $L13; .loc 1 142 11 st.u64 [%r34],%r46; .loc 1 147 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call __nvptx_free,(%out_arg1); } .loc 1 148 6 ld.u64 %r39,[%r34]; bra $L14; $L13: .loc 1 152 10 mov.u64 %r34,%r39; .loc 1 139 28 mov.u64 %r39,%r46; $L14: .loc 1 88 10 setp.ne.u64 %r80,%r39,0; @ %r80 bra $L2; $L1: .loc 1 161 1 ret; } /59 0 0 0 644 15646 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: print_number .func print_number (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/misc/__dprintf.c" // BEGIN GLOBAL FUNCTION DECL: __dprintf .visible .func __dprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __unctrl .extern .const .align 8 .u64 __unctrl[256]; // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: chars$0 .const .align 1 .u8 chars$0[16] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102 }; // BEGIN VAR DEF: big_endian_p .global .align 4 .u32 big_endian_p[1]; // BEGIN FUNCTION DEF: print_number .func print_number (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u64 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r68; .reg .u32 %r70; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u16 %r76; mov.u32 %r36,%ar0; mov.u32 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 230 7 xor.b32 %r39,%r37,1; mov.u32 %r40,%r39; cvt.u16.u8 %r76,%r40; mov.u16 %r42,%r76; and.b16 %r41,%r42,1; cvt.u32.u16 %r43,%r41; .loc 1 230 24 shr.u64 %r45,%r38,63; cvt.u32.u64 %r46,%r45; .loc 1 230 19 cvt.u16.u8 %r76,%r43; mov.u16 %r48,%r76; cvt.u16.u8 %r76,%r46; mov.u16 %r49,%r76; and.b16 %r47,%r48,%r49; cvt.u32.u16 %r50,%r47; .loc 1 230 6 cvt.u16.u8 %r51,%r50; setp.eq.u16 %r52,%r51,0; @ %r52 bra $L2; mov.u32 %r53,45; st.u8 [%frame],%r53; .loc 1 257 3 ld.global.u64 %r58,[_impure_ptr]; mov.u64 %r57,1; mov.u32 %r55,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r57; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r59,[%value_in]; } .loc 1 233 11 neg.s64 %r29,%r38; bra $L3; $L2: .loc 1 236 7 mov.u64 %r29,%r38; $L3: .loc 1 239 8 mov.u32 %r60,0; st.u8 [%frame+31],%r60; .loc 1 242 22 cvt.s64.s32 %r35,%r36; .loc 1 239 8 add.u64 %r28,%frame,31; cvta.const.u64 %r75,chars$0; $L4: .loc 1 242 12 add.u64 %r28,%r28,-1; .loc 1 242 22 rem.u64 %r63,%r29,%r35; .loc 1 242 19 add.u64 %r64,%r75,%r63; .loc 1 242 12 ld.u8 %r65,[%r64]; st.u8 [%r28],%r65; mov.u64 %r34,%r29; .loc 1 243 9 div.u64 %r29,%r29,%r35; .loc 1 245 12 setp.ge.u64 %r66,%r34,%r35; @ %r66 bra $L4; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r68,[%value_in]; } ld.global.u64 %r73,[_impure_ptr]; mov.u32 %r70,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r70; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r68; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r74,[%value_in]; } .loc 1 248 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: __dprintf .visible .func __dprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u64 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r74; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r80; .reg .u32 %r88; .reg .u64 %r90; .reg .u32 %r91; .reg .pred %r93; .reg .u16 %r94; .reg .pred %r95; .reg .u16 %r96; .reg .pred %r97; .reg .u32 %r98; .reg .u32 %r100; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .pred %r106; .reg .pred %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u64 %r124; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r131; .reg .u32 %r133; .reg .u64 %r136; .reg .u64 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u64 %r140; .reg .u32 %r145; .reg .pred %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u32 %r153; .reg .u64 %r154; .reg .u64 %r156; .reg .u64 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r163; .reg .u64 %r174; .reg .u32 %r176; .reg .u64 %r179; .reg .u64 %r180; .reg .pred %r182; .reg .pred %r184; .reg .pred %r186; .reg .pred %r188; .reg .pred %r190; .reg .pred %r192; .reg .pred %r194; .reg .pred %r196; .reg .u64 %r197; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u64 %r204; .reg .u32 %r206; .reg .u64 %r209; .reg .u64 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u64 %r213; .reg .u64 %r218; .reg .u32 %r220; .reg .u64 %r223; .reg .u64 %r224; .reg .pred %r225; .reg .u16 %r227; .reg .u32 %r228; .reg .u32 %r230; .reg .u32 %r232; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r236; .reg .pred %r237; .reg .pred %r238; .reg .u32 %r239; .reg .pred %r240; .reg .pred %r241; .reg .u32 %r242; .reg .pred %r243; .reg .pred %r244; .reg .pred %r245; .reg .pred %r246; .reg .pred %r247; mov.u64 %r90,%ar0; .loc 1 70 18 mov.u32 %r91,0; st.global.u32 [big_endian_p],%r91; .loc 1 74 3 mov.u64 %r49,%args; .loc 1 79 10 ld.s8 %r36,[%r90]; setp.ne.u32 %r93,%r36,0; @ ! %r93 bra $L6; $L7: .loc 1 85 10 cvt.u16.u32 %r94,%r36; setp.eq.u16 %r95,%r94,37; @ %r95 bra $L8; .loc 1 87 4 ld.s8 %r38,[%r90]; bra $L9; $L8: .loc 1 85 26 ld.s8 %r38,[%r90+1]; .loc 1 85 23 cvt.u16.u32 %r96,%r38; setp.ne.u16 %r97,%r96,37; @ %r97 bra $L10; add.u64 %r90,%r90,1; $L9: .loc 1 87 20 add.u64 %r90,%r90,1; cvt.u32.u32 %r98,%r38; st.u8 [%frame],%r98; .loc 1 257 3 ld.global.u64 %r103,[_impure_ptr]; mov.u64 %r102,1; mov.u32 %r100,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r103; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r100; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r102; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r104,[%value_in]; } .loc 1 88 4 bra $L11; $L10: .loc 1 91 10 setp.ne.u16 %r106,%r96,78; @ %r106 bra $L12; .loc 1 93 10 ld.u32 %r46,[%r49]; .loc 1 94 6 add.u64 %r56,%r49,11; and.b64 %r57,%r56,-8; add.u64 %r49,%r57,8; ld.u64 %r51,[%r57]; .loc 1 96 12 add.u64 %r47,%r90,3; .loc 1 96 6 ld.s8 %r48,[%r90+2]; .loc 1 98 19 add.u32 %r88,%r46,-1; setp.lt.s32 %r107,%r88,0; @ %r107 bra $L33; .loc 1 100 8 cvt.u16.u32 %r108,%r48; setp.eq.u16 %r109,%r108,112; setp.gt.s16 %r238,%r108,112; .loc 1 112 5 set.u32.ne.u16 %r239,%r108,100; .loc 1 207 10 setp.ne.u16 %r240,%r108,100; .loc 1 112 5 setp.eq.u16 %r241,%r108,120; selp.u32 %r242,16,10,%r241; .loc 1 100 8 setp.eq.u16 %r243,%r108,115; setp.le.s16 %r244,%r108,114; setp.eq.u16 %r245,%r108,117; setp.eq.u16 %r246,%r108,99; setp.eq.u16 %r247,%r108,100; $L31: @ %r109 bra $L13; @ %r238 bra $L14; @ %r246 bra $L15; @ %r247 bra $L16; bra $L17; $L14: @ %r243 bra $L18; @ %r244 bra $L17; @ %r245 bra $L16; @ %r241 bra $L16; bra $L17; $L15: .loc 1 103 19 add.u64 %r50,%r51,1; cvta.const.u64 %r124,__unctrl; ld.u8 %r127,[%r51]; shl.b64 %r128,%r127,3; add.u64 %r129,%r124,%r128; ld.u64 %r27,[%r129]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r131,[%value_in]; } ld.global.u64 %r136,[_impure_ptr]; mov.u32 %r133,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r136; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r133; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r131; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r137,[%value_in]; } .loc 1 103 19 mov.u64 %r51,%r50; .loc 1 268 1 bra $L17; $L13: .loc 1 106 5 mov.u64 %r140,0; mov.u32 %r139,1; mov.u32 %r138,16; { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r138; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r139; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r140; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 107 7 add.u64 %r51,%r51,8; .loc 1 108 5 bra $L17; $L16: .loc 1 112 5 neg.s32 %r29,%r239; .loc 1 204 63 ld.u8 %r41,[%r51+3]; .loc 1 204 50 ld.u8 %r37,[%r51+2]; .loc 1 204 7 ld.u8 %r23,[%r51]; .loc 1 203 10 ld.global.u32 %r145,[big_endian_p]; setp.eq.u32 %r146,%r145,0; @ %r146 bra $L19; .loc 1 204 18 shl.b64 %r147,%r23,24; .loc 1 204 28 ld.u8 %r148,[%r51+1]; .loc 1 204 39 shl.b64 %r150,%r148,16; .loc 1 204 25 or.b64 %r151,%r147,%r150; .loc 1 204 4 or.b64 %r152,%r151,%r41; .loc 1 204 54 shl.b32 %r153,%r37,8; cvt.s64.s32 %r154,%r153; .loc 1 204 4 or.b64 %r60,%r152,%r154; bra $L20; $L19: .loc 1 206 4 ld.u8 %r156,[%r51+1]; shl.b64 %r157,%r156,8; or.b64 %r158,%r157,%r23; ld.u8 %r159,[%r51+2]; shl.b64 %r160,%r159,16; or.b64 %r161,%r160,%r158; shl.b64 %r163,%r41,24; or.b64 %r60,%r163,%r161; $L20: .loc 1 207 10 @ %r240 bra $L21; .loc 1 208 9 xor.b64 %r80,%r60,2147483648; .loc 1 208 4 add.u64 %r60,%r80,-2147483648; .loc 1 112 5 mov.u32 %r39,10; bra $L22; $L21: mov.u32 %r39,%r242; $L22: { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r39; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r60; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 114 7 add.u64 %r51,%r51,4; .loc 1 115 5 bra $L17; $L18: .loc 1 117 5 ld.u64 %r30,[%r51]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r174,[%value_in]; } ld.global.u64 %r179,[_impure_ptr]; mov.u32 %r176,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r179; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r176; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r174; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r180,[%value_in]; } .loc 1 118 7 add.u64 %r51,%r51,8; .loc 1 119 5 bra $L17; $L12: .loc 1 127 20 add.u64 %r90,%r90,2; .loc 1 127 4 setp.eq.u16 %r182,%r96,112; @ %r182 bra $L23; setp.gt.s16 %r184,%r96,112; @ %r184 bra $L24; setp.eq.u16 %r186,%r96,99; @ %r186 bra $L25; setp.eq.u16 %r188,%r96,100; @ %r188 bra $L26; bra $L11; $L24: setp.eq.u16 %r190,%r96,115; @ %r190 bra $L27; setp.le.s16 %r192,%r96,114; @ %r192 bra $L11; setp.eq.u16 %r194,%r96,117; @ %r194 bra $L26; setp.eq.u16 %r196,%r96,120; @ %r196 bra $L28; bra $L11; $L25: .loc 1 130 12 mov.u64 %r63,%r49; add.u64 %r49,%r49,4; .loc 1 131 22 cvta.const.u64 %r197,__unctrl; ld.u8 %r200,[%r63]; shl.b64 %r201,%r200,3; add.u64 %r202,%r197,%r201; ld.u64 %r34,[%r202]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r204,[%value_in]; } ld.global.u64 %r209,[_impure_ptr]; mov.u32 %r206,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r209; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r206; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r34; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r204; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r210,[%value_in]; } .loc 1 268 1 bra $L11; $L23: .loc 1 134 27 add.u64 %r59,%r49,7; and.b64 %r62,%r59,-8; add.u64 %r49,%r62,8; .loc 1 135 8 ld.u64 %r213,[%r62]; mov.u32 %r212,1; mov.u32 %r211,16; { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r212; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r213; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 136 8 bra $L11; $L30: .loc 1 141 8 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r40; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r76; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r77; call print_number,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 142 8 bra $L11; $L27: .loc 1 144 10 add.u64 %r61,%r49,7; and.b64 %r65,%r61,-8; add.u64 %r49,%r65,8; ld.u64 %r43,[%r65]; .loc 1 267 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r218,[%value_in]; } ld.global.u64 %r223,[_impure_ptr]; mov.u32 %r220,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r223; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r220; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r218; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r224,[%value_in]; } .loc 1 268 1 bra $L11; $L33: .loc 1 96 12 mov.u64 %r90,%r47; $L11: .loc 1 79 10 ld.s8 %r36,[%r90]; setp.ne.u32 %r225,%r36,0; @ %r225 bra $L7; bra $L6; $L26: .loc 1 140 12 mov.u64 %r74,%r49; add.u64 %r49,%r49,4; .loc 1 140 10 ld.s32 %r77,[%r74]; .loc 1 141 8 cvt.u16.u32 %r227,%r38; set.u32.ne.u16 %r228,%r227,100; neg.s32 %r76,%r228; mov.u32 %r40,10; bra $L30; $L28: .loc 1 140 12 mov.u64 %r58,%r49; add.u64 %r49,%r49,4; .loc 1 140 10 ld.s32 %r77,[%r58]; .loc 1 141 8 mov.u32 %r76,1; mov.u32 %r40,16; bra $L30; $L32: mov.u32 %r230,32; st.u8 [%frame],%r230; .loc 1 257 3 ld.global.u64 %r235,[_impure_ptr]; mov.u64 %r234,1; mov.u32 %r232,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r235; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r232; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r234; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r236,[%value_in]; } .loc 1 98 19 add.u32 %r88,%r88,-1; bra $L31; $L17: .loc 1 121 11 setp.ne.u32 %r237,%r88,0; @ %r237 bra $L32; .loc 1 96 12 mov.u64 %r90,%r47; bra $L11; $L6: .loc 1 152 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-__exp10.o/0 0 0 644 5799 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __exp10 .visible .func (.param .f64 %value_out) __exp10 (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/__exp10.c" // BEGIN VAR DEF: powtab$0 .const .align 8 .u64 powtab$0[5] = {4607182418800017408,4621819117588971520,4636737291354636288,4652007308841189376,4666723172467343360 }; // BEGIN GLOBAL FUNCTION DEF: __exp10 .visible .func (.param .f64 %value_out) __exp10 (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r26; .reg .f64 %r32; .reg .f64 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r52; .reg .f64 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u32 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u32 %r84; .reg .f64 %r85; .reg .u32 %r87; .reg .f64 %r88; .reg .f64 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .u32 %r98; .reg .pred %r99; .reg .u32 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .u32 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .pred %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u32 %r116; .reg .f64 %r117; .reg .u32 %r119; .reg .f64 %r120; mov.u32 %r59,%ar0; .loc 1 18 6 setp.gt.u32 %r60,%r59,4; @ %r60 bra $L2; .loc 1 19 20 cvta.const.u64 %r61,powtab$0; cvt.u64.u32 %r62,%r59; shl.b64 %r63,%r62,3; add.u64 %r64,%r61,%r63; ld.f64 %r58,[%r64]; bra $L1; $L2: .loc 1 20 14 and.b32 %r65,%r59,1; .loc 1 20 11 setp.eq.u32 %r66,%r65,0; @ %r66 bra $L4; .loc 1 22 21 add.u32 %r23,%r59,-1; .loc 1 18 6 setp.eq.u32 %r67,%r59,5; @ %r67 bra $L19; .loc 1 20 14 and.b32 %r68,%r23,1; .loc 1 20 11 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L6; .loc 1 18 6 setp.eq.u32 %r70,%r59,6; @ %r70 bra $L20; .loc 1 22 21 add.u32 %r72,%r59,-3; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r72; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r73,[%value_in]; } .loc 1 22 19 mul.f64 %r74,%r73,0d4024000000000000; mul.f64 %r75,%r74,0d4024000000000000; mul.f64 %r58,%r75,0d4024000000000000; bra $L1; $L20: mov.f64 %r58,0d412e848000000000; bra $L1; $L6: .loc 1 26 18 shr.u32 %r26,%r23,1; .loc 1 18 6 setp.gt.u32 %r76,%r23,9; @ %r76 bra $L8; .loc 1 19 20 cvta.const.u64 %r77,powtab$0; cvt.u64.u32 %r78,%r26; shl.b64 %r79,%r78,3; add.u64 %r80,%r77,%r79; ld.f64 %r32,[%r80]; bra $L9; $L8: .loc 1 20 14 and.b32 %r81,%r26,1; .loc 1 20 11 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L10; .loc 1 22 21 add.u32 %r84,%r26,-1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r84; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 22 19 mul.f64 %r32,%r85,0d4024000000000000; bra $L9; $L10: .loc 1 26 18 shr.u32 %r87,%r23,2; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r87; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r88,[%value_in]; } .loc 1 27 16 mul.f64 %r32,%r88,%r88; $L9: mul.f64 %r89,%r32,%r32; .loc 1 22 19 mul.f64 %r58,%r89,0d4024000000000000; .loc 1 27 16 bra $L1; $L19: mov.f64 %r58,0d40f86a0000000000; .loc 1 22 19 bra $L1; $L4: .loc 1 26 18 shr.u32 %r24,%r59,1; .loc 1 18 6 setp.gt.u32 %r90,%r59,9; @ %r90 bra $L11; .loc 1 19 20 cvta.const.u64 %r91,powtab$0; cvt.u64.u32 %r92,%r24; shl.b64 %r93,%r92,3; add.u64 %r94,%r91,%r93; ld.f64 %r38,[%r94]; .loc 1 27 16 mul.f64 %r58,%r38,%r38; .loc 1 19 20 bra $L1; $L11: .loc 1 20 14 and.b32 %r95,%r24,1; .loc 1 20 11 setp.eq.u32 %r96,%r95,0; @ %r96 bra $L13; .loc 1 22 21 add.u32 %r40,%r24,-1; .loc 1 18 6 setp.eq.u32 %r97,%r24,5; @ %r97 bra $L21; .loc 1 20 14 and.b32 %r98,%r40,1; .loc 1 20 11 setp.eq.u32 %r99,%r98,0; @ %r99 bra $L15; .loc 1 22 21 add.u32 %r101,%r24,-2; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r101; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r102,[%value_in]; } .loc 1 22 19 mul.f64 %r103,%r102,0d4024000000000000; mul.f64 %r44,%r103,0d4024000000000000; .loc 1 27 16 mul.f64 %r58,%r44,%r44; .loc 1 22 19 bra $L1; $L15: .loc 1 26 18 shr.u32 %r105,%r40,1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r105; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r106,[%value_in]; } .loc 1 27 16 mul.f64 %r107,%r106,%r106; .loc 1 22 19 mul.f64 %r42,%r107,0d4024000000000000; .loc 1 27 16 mul.f64 %r58,%r42,%r42; bra $L1; $L21: mov.f64 %r58,0d4202a05f20000000; .loc 1 22 19 bra $L1; $L13: .loc 1 26 18 shr.u32 %r41,%r59,2; .loc 1 18 6 setp.gt.u32 %r108,%r59,19; @ %r108 bra $L16; .loc 1 19 20 cvta.const.u64 %r109,powtab$0; cvt.u64.u32 %r110,%r41; shl.b64 %r111,%r110,3; add.u64 %r112,%r109,%r111; ld.f64 %r52,[%r112]; bra $L17; $L16: .loc 1 20 14 and.b32 %r113,%r41,1; .loc 1 20 11 setp.eq.u32 %r114,%r113,0; @ %r114 bra $L18; .loc 1 22 21 add.u32 %r116,%r41,-1; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r116; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r117,[%value_in]; } .loc 1 22 19 mul.f64 %r52,%r117,0d4024000000000000; bra $L17; $L18: .loc 1 26 18 shr.u32 %r119,%r59,3; { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r119; call (%value_in),__exp10,(%out_arg1); ld.param.f64 %r120,[%value_in]; } .loc 1 27 16 mul.f64 %r52,%r120,%r120; $L17: mul.f64 %r43,%r52,%r52; mul.f64 %r58,%r43,%r43; $L1: .loc 1 29 1 mov.f64 %value,%r58; st.param.f64 [%value_out],%value; ret; } /78 0 0 0 644 840 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ten_mul .visible .func (.param .u32 %value_out) __ten_mul (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/__ten_mu.c" // BEGIN GLOBAL FUNCTION DEF: __ten_mul .visible .func (.param .u32 %value_out) __ten_mul (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .f64 %r28; .reg .f64 %r29; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 20 8 cvt.rn.f64.s32 %r28,%r27; ld.f64 %r29,[%r26]; fma.rn.f64 %r24,%r29,0d4024000000000000,%r28; st.f64 [%r26],%r24; .loc 1 22 10 mov.u32 %value,0; .loc 1 23 1 st.param.u32 [%value_out],%value; ret; } lib_a-abort.o/ 0 0 0 644 287 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: abort .visible .func abort; .file 1 "../../../../../../../newlib/libc/machine/nvptx/abort.c" // BEGIN GLOBAL FUNCTION DEF: abort .visible .func abort { .loc 1 22 5 trap; exit; } lib_a-abs.o/ 0 0 0 644 520 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: abs .visible .func (.param .u32 %value_out) abs (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/abs.c" // BEGIN GLOBAL FUNCTION DEF: abs .visible .func (.param .u32 %value_out) abs (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; mov.u32 %r23,%ar0; .loc 1 37 23 abs.s32 %value,%r23; .loc 1 38 1 st.param.u32 [%value_out],%value; ret; } /96 0 0 0 644 1283 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: aligned_alloc .visible .func (.param .u64 %value_out) aligned_alloc (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/aligned_alloc.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _memalign_r .extern .func (.param .u64 %value_out) _memalign_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: aligned_alloc .visible .func (.param .u64 %value_out) aligned_alloc (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 36 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_memalign_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 37 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /119 0 0 0 644 33160 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: chacha_encrypt_bytes$constprop$0 .func chacha_encrypt_bytes$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/chacha_private.h" // BEGIN FUNCTION DECL: chacha_keysetup$constprop$0 .func chacha_keysetup$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: _rs_stir .func _rs_stir; .file 2 "../../../../../../newlib/libc/stdlib/arc4random.c" .file 3 "../../../../../../newlib/libc/stdlib/arc4random.h" // BEGIN GLOBAL FUNCTION DECL: arc4random .visible .func (.param .u32 %value_out) arc4random; // BEGIN GLOBAL FUNCTION DECL: arc4random_buf .visible .func arc4random_buf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: getentropy .extern .func (.param .u32 %value_out) getentropy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: raise .extern .func (.param .u32 %value_out) raise (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: explicit_bzero .extern .func explicit_bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: rs .global .align 8 .u64 rs[1]; // BEGIN VAR DEF: rsx .global .align 8 .u64 rsx[1]; // BEGIN VAR DEF: _arc4random_data .global .align 8 .u64 _arc4random_data[138]; // BEGIN FUNCTION DEF: chacha_encrypt_bytes$constprop$0 .func chacha_encrypt_bytes$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,64; sub.u64 %stack,%frame,0; } .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r264; .reg .u64 %r266; .reg .u64 %r268; .reg .u32 %r269; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .u32 %r283; .reg .u32 %r284; .reg .u32 %r285; .reg .u32 %r286; .reg .u32 %r287; .reg .u32 %r288; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .u32 %r293; .reg .u32 %r294; .reg .u32 %r295; .reg .u32 %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .pred %r301; .reg .pred %r302; .reg .u32 %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r307; .reg .u32 %r308; .reg .u32 %r309; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r317; .reg .u32 %r318; .reg .u32 %r319; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u32 %r323; .reg .u32 %r324; .reg .u32 %r325; .reg .u32 %r326; .reg .u32 %r327; .reg .u32 %r328; .reg .u32 %r329; .reg .u32 %r330; .reg .u32 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .u32 %r338; .reg .u32 %r339; .reg .u32 %r340; .reg .u32 %r341; .reg .u32 %r342; .reg .u32 %r343; .reg .u32 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .pred %r351; .reg .u32 %r352; .reg .pred %r353; mov.u64 %r266,%ar0; mov.u64 %r268,%ar2; .loc 1 98 6 ld.u32 %r22,[%r266]; .loc 1 99 6 ld.u32 %r23,[%r266+4]; .loc 1 100 6 ld.u32 %r24,[%r266+8]; .loc 1 101 6 ld.u32 %r25,[%r266+12]; .loc 1 102 6 ld.u32 %r26,[%r266+16]; .loc 1 103 6 ld.u32 %r27,[%r266+20]; .loc 1 104 6 ld.u32 %r28,[%r266+24]; .loc 1 105 6 ld.u32 %r29,[%r266+28]; .loc 1 106 6 ld.u32 %r30,[%r266+32]; .loc 1 107 6 ld.u32 %r31,[%r266+36]; .loc 1 108 7 ld.u32 %r32,[%r266+40]; .loc 1 109 7 ld.u32 %r33,[%r266+44]; .loc 1 110 7 ld.u32 %r34,[%r266+48]; .loc 1 111 7 ld.u32 %r146,[%r266+52]; .loc 1 112 7 ld.u32 %r35,[%r266+56]; .loc 1 113 7 ld.u32 %r36,[%r266+60]; .loc 1 110 7 mov.u32 %r144,%r34; .loc 1 113 7 mov.u32 %r142,1024; $L2: .loc 1 133 9 mov.u32 %r106,%r33; .loc 1 137 9 mov.u32 %r93,%r36; .loc 1 129 8 mov.u32 %r120,%r29; .loc 1 125 8 mov.u32 %r127,%r25; .loc 1 132 9 mov.u32 %r94,%r32; .loc 1 136 9 mov.u32 %r129,%r35; .loc 1 128 8 mov.u32 %r108,%r28; .loc 1 124 8 mov.u32 %r115,%r24; .loc 1 131 8 mov.u32 %r130,%r31; mov.u32 %r117,%r146; .loc 1 127 8 mov.u32 %r96,%r27; .loc 1 123 8 mov.u32 %r103,%r23; .loc 1 130 8 mov.u32 %r118,%r30; mov.u32 %r105,%r144; .loc 1 126 8 mov.u32 %r132,%r26; .loc 1 122 8 mov.u32 %r91,%r22; mov.u32 %r264,10; $L3: .loc 1 139 7 add.u32 %r37,%r91,%r132; xor.b32 %r38,%r37,%r105; shl.b32 %r269,%r38,16; shr.u32 %r39,%r38,16; or.b32 %r39,%r39,%r269; add.u32 %r40,%r39,%r118; xor.b32 %r41,%r40,%r132; shl.b32 %r270,%r41,12; shr.u32 %r42,%r41,20; or.b32 %r42,%r42,%r270; add.u32 %r43,%r37,%r42; xor.b32 %r44,%r39,%r43; shl.b32 %r271,%r44,8; shr.u32 %r45,%r44,24; or.b32 %r45,%r45,%r271; add.u32 %r46,%r40,%r45; xor.b32 %r47,%r42,%r46; shl.b32 %r272,%r47,7; shr.u32 %r48,%r47,25; or.b32 %r48,%r48,%r272; .loc 1 140 7 add.u32 %r49,%r103,%r96; xor.b32 %r50,%r49,%r117; shl.b32 %r273,%r50,16; shr.u32 %r51,%r50,16; or.b32 %r51,%r51,%r273; add.u32 %r52,%r51,%r130; xor.b32 %r53,%r52,%r96; shl.b32 %r274,%r53,12; shr.u32 %r54,%r53,20; or.b32 %r54,%r54,%r274; add.u32 %r55,%r49,%r54; xor.b32 %r56,%r51,%r55; shl.b32 %r275,%r56,8; shr.u32 %r57,%r56,24; or.b32 %r57,%r57,%r275; add.u32 %r58,%r52,%r57; xor.b32 %r59,%r54,%r58; shl.b32 %r276,%r59,7; shr.u32 %r60,%r59,25; or.b32 %r60,%r60,%r276; .loc 1 141 7 add.u32 %r61,%r115,%r108; xor.b32 %r62,%r61,%r129; shl.b32 %r277,%r62,16; shr.u32 %r63,%r62,16; or.b32 %r63,%r63,%r277; add.u32 %r64,%r63,%r94; xor.b32 %r65,%r64,%r108; shl.b32 %r278,%r65,12; shr.u32 %r66,%r65,20; or.b32 %r66,%r66,%r278; add.u32 %r67,%r61,%r66; xor.b32 %r68,%r63,%r67; shl.b32 %r279,%r68,8; shr.u32 %r69,%r68,24; or.b32 %r69,%r69,%r279; add.u32 %r70,%r64,%r69; xor.b32 %r71,%r66,%r70; shl.b32 %r280,%r71,7; shr.u32 %r72,%r71,25; or.b32 %r72,%r72,%r280; .loc 1 142 7 add.u32 %r73,%r127,%r120; xor.b32 %r74,%r73,%r93; shl.b32 %r281,%r74,16; shr.u32 %r75,%r74,16; or.b32 %r75,%r75,%r281; add.u32 %r76,%r75,%r106; xor.b32 %r77,%r76,%r120; shl.b32 %r282,%r77,12; shr.u32 %r78,%r77,20; or.b32 %r78,%r78,%r282; add.u32 %r79,%r73,%r78; xor.b32 %r80,%r75,%r79; shl.b32 %r283,%r80,8; shr.u32 %r81,%r80,24; or.b32 %r81,%r81,%r283; add.u32 %r82,%r76,%r81; xor.b32 %r83,%r78,%r82; shl.b32 %r284,%r83,7; shr.u32 %r84,%r83,25; or.b32 %r84,%r84,%r284; .loc 1 143 7 add.u32 %r85,%r43,%r60; xor.b32 %r86,%r81,%r85; shl.b32 %r285,%r86,16; shr.u32 %r87,%r86,16; or.b32 %r87,%r87,%r285; add.u32 %r88,%r70,%r87; xor.b32 %r89,%r60,%r88; shl.b32 %r286,%r89,12; shr.u32 %r90,%r89,20; or.b32 %r90,%r90,%r286; add.u32 %r91,%r85,%r90; xor.b32 %r92,%r87,%r91; shl.b32 %r287,%r92,8; shr.u32 %r93,%r92,24; or.b32 %r93,%r93,%r287; add.u32 %r94,%r88,%r93; xor.b32 %r95,%r90,%r94; shl.b32 %r288,%r95,7; shr.u32 %r96,%r95,25; or.b32 %r96,%r96,%r288; .loc 1 144 7 add.u32 %r97,%r55,%r72; xor.b32 %r98,%r45,%r97; shl.b32 %r289,%r98,16; shr.u32 %r99,%r98,16; or.b32 %r99,%r99,%r289; add.u32 %r100,%r82,%r99; xor.b32 %r101,%r72,%r100; shl.b32 %r290,%r101,12; shr.u32 %r102,%r101,20; or.b32 %r102,%r102,%r290; add.u32 %r103,%r97,%r102; xor.b32 %r104,%r99,%r103; shl.b32 %r291,%r104,8; shr.u32 %r105,%r104,24; or.b32 %r105,%r105,%r291; add.u32 %r106,%r100,%r105; xor.b32 %r107,%r102,%r106; shl.b32 %r292,%r107,7; shr.u32 %r108,%r107,25; or.b32 %r108,%r108,%r292; .loc 1 145 7 add.u32 %r109,%r67,%r84; xor.b32 %r110,%r57,%r109; shl.b32 %r293,%r110,16; shr.u32 %r111,%r110,16; or.b32 %r111,%r111,%r293; add.u32 %r112,%r46,%r111; xor.b32 %r113,%r84,%r112; shl.b32 %r294,%r113,12; shr.u32 %r114,%r113,20; or.b32 %r114,%r114,%r294; add.u32 %r115,%r109,%r114; xor.b32 %r116,%r111,%r115; shl.b32 %r295,%r116,8; shr.u32 %r117,%r116,24; or.b32 %r117,%r117,%r295; add.u32 %r118,%r112,%r117; xor.b32 %r119,%r114,%r118; shl.b32 %r296,%r119,7; shr.u32 %r120,%r119,25; or.b32 %r120,%r120,%r296; .loc 1 146 7 add.u32 %r121,%r48,%r79; xor.b32 %r122,%r69,%r121; shl.b32 %r297,%r122,16; shr.u32 %r123,%r122,16; or.b32 %r123,%r123,%r297; add.u32 %r124,%r58,%r123; xor.b32 %r125,%r48,%r124; shl.b32 %r298,%r125,12; shr.u32 %r126,%r125,20; or.b32 %r126,%r126,%r298; add.u32 %r127,%r121,%r126; xor.b32 %r128,%r123,%r127; shl.b32 %r299,%r128,8; shr.u32 %r129,%r128,24; or.b32 %r129,%r129,%r299; add.u32 %r130,%r124,%r129; xor.b32 %r131,%r126,%r130; shl.b32 %r300,%r131,7; shr.u32 %r132,%r131,25; or.b32 %r132,%r132,%r300; .loc 1 138 19 add.u32 %r264,%r264,-1; setp.ne.u32 %r301,%r264,0; @ %r301 bra $L3; .loc 1 148 8 add.u32 %r133,%r22,%r91; .loc 1 149 8 add.u32 %r134,%r23,%r103; .loc 1 150 8 add.u32 %r135,%r24,%r115; .loc 1 151 8 add.u32 %r136,%r25,%r127; .loc 1 152 8 add.u32 %r137,%r26,%r132; .loc 1 153 8 add.u32 %r138,%r27,%r96; .loc 1 154 8 add.u32 %r139,%r28,%r108; .loc 1 155 8 add.u32 %r140,%r29,%r120; .loc 1 156 8 add.u32 %r141,%r30,%r118; .loc 1 157 8 add.u32 %r143,%r31,%r130; .loc 1 158 9 add.u32 %r145,%r32,%r94; .loc 1 159 9 add.u32 %r147,%r33,%r106; .loc 1 160 9 add.u32 %r148,%r105,%r144; .loc 1 161 9 add.u32 %r149,%r117,%r146; .loc 1 162 9 add.u32 %r150,%r35,%r129; .loc 1 163 9 add.u32 %r151,%r36,%r93; .loc 1 184 9 add.u32 %r144,%r144,1; .loc 1 185 8 setp.ne.u32 %r302,%r144,0; @ %r302 bra $L4; .loc 1 186 11 add.u32 %r146,%r146,1; $L4: .loc 1 190 5 st.u8 [%r268],%r133; shr.u32 %r303,%r133,8; st.u8 [%r268+1],%r303; shr.u32 %r304,%r133,16; st.u8 [%r268+2],%r304; shr.u32 %r305,%r133,24; st.u8 [%r268+3],%r305; .loc 1 191 5 st.u8 [%r268+4],%r134; shr.u32 %r306,%r134,8; st.u8 [%r268+5],%r306; shr.u32 %r307,%r134,16; st.u8 [%r268+6],%r307; shr.u32 %r308,%r134,24; st.u8 [%r268+7],%r308; .loc 1 192 5 st.u8 [%r268+8],%r135; shr.u32 %r309,%r135,8; st.u8 [%r268+9],%r309; shr.u32 %r310,%r135,16; st.u8 [%r268+10],%r310; shr.u32 %r311,%r135,24; st.u8 [%r268+11],%r311; .loc 1 193 5 st.u8 [%r268+12],%r136; shr.u32 %r312,%r136,8; st.u8 [%r268+13],%r312; shr.u32 %r313,%r136,16; st.u8 [%r268+14],%r313; shr.u32 %r314,%r136,24; st.u8 [%r268+15],%r314; .loc 1 194 5 st.u8 [%r268+16],%r137; shr.u32 %r315,%r137,8; st.u8 [%r268+17],%r315; shr.u32 %r316,%r137,16; st.u8 [%r268+18],%r316; shr.u32 %r317,%r137,24; st.u8 [%r268+19],%r317; .loc 1 195 5 st.u8 [%r268+20],%r138; shr.u32 %r318,%r138,8; st.u8 [%r268+21],%r318; shr.u32 %r319,%r138,16; st.u8 [%r268+22],%r319; shr.u32 %r320,%r138,24; st.u8 [%r268+23],%r320; .loc 1 196 5 st.u8 [%r268+24],%r139; shr.u32 %r321,%r139,8; st.u8 [%r268+25],%r321; shr.u32 %r322,%r139,16; st.u8 [%r268+26],%r322; shr.u32 %r323,%r139,24; st.u8 [%r268+27],%r323; .loc 1 197 5 st.u8 [%r268+28],%r140; shr.u32 %r324,%r140,8; st.u8 [%r268+29],%r324; shr.u32 %r325,%r140,16; st.u8 [%r268+30],%r325; shr.u32 %r326,%r140,24; st.u8 [%r268+31],%r326; .loc 1 198 5 st.u8 [%r268+32],%r141; shr.u32 %r327,%r141,8; st.u8 [%r268+33],%r327; shr.u32 %r328,%r141,16; st.u8 [%r268+34],%r328; shr.u32 %r329,%r141,24; st.u8 [%r268+35],%r329; .loc 1 199 5 st.u8 [%r268+36],%r143; shr.u32 %r330,%r143,8; st.u8 [%r268+37],%r330; shr.u32 %r331,%r143,16; st.u8 [%r268+38],%r331; shr.u32 %r332,%r143,24; st.u8 [%r268+39],%r332; .loc 1 200 5 st.u8 [%r268+40],%r145; shr.u32 %r333,%r145,8; st.u8 [%r268+41],%r333; shr.u32 %r334,%r145,16; st.u8 [%r268+42],%r334; shr.u32 %r335,%r145,24; st.u8 [%r268+43],%r335; .loc 1 201 5 st.u8 [%r268+44],%r147; shr.u32 %r336,%r147,8; st.u8 [%r268+45],%r336; shr.u32 %r337,%r147,16; st.u8 [%r268+46],%r337; shr.u32 %r338,%r147,24; st.u8 [%r268+47],%r338; .loc 1 202 5 st.u8 [%r268+48],%r148; shr.u32 %r339,%r148,8; st.u8 [%r268+49],%r339; shr.u32 %r340,%r148,16; st.u8 [%r268+50],%r340; shr.u32 %r341,%r148,24; st.u8 [%r268+51],%r341; .loc 1 203 5 st.u8 [%r268+52],%r149; shr.u32 %r342,%r149,8; st.u8 [%r268+53],%r342; shr.u32 %r343,%r149,16; st.u8 [%r268+54],%r343; shr.u32 %r344,%r149,24; st.u8 [%r268+55],%r344; .loc 1 204 5 st.u8 [%r268+56],%r150; shr.u32 %r345,%r150,8; st.u8 [%r268+57],%r345; shr.u32 %r346,%r150,16; st.u8 [%r268+58],%r346; shr.u32 %r347,%r150,24; st.u8 [%r268+59],%r347; .loc 1 205 5 st.u8 [%r268+60],%r151; shr.u32 %r348,%r151,8; st.u8 [%r268+61],%r348; shr.u32 %r349,%r151,16; st.u8 [%r268+62],%r349; shr.u32 %r350,%r151,24; st.u8 [%r268+63],%r350; .loc 1 207 8 setp.ne.u32 %r351,%r142,64; @ %r351 bra $L5; .loc 1 184 9 add.u32 %r352,%r34,16; .loc 1 211 20 st.u32 [%r266+48],%r352; .loc 1 212 20 st.u32 [%r266+52],%r146; bra $L9; $L5: .loc 1 215 11 add.u32 %r142,%r142,-64; .loc 1 216 7 add.u64 %r268,%r268,64; .loc 1 116 8 setp.le.u32 %r353,%r142,63; .loc 1 120 9 selp.u64 %r268,%frame,%r268,%r353; bra $L2; $L9: .loc 1 221 1 ret; } // BEGIN FUNCTION DEF: chacha_keysetup$constprop$0 .func chacha_keysetup$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 58 17 ld.u8 %r32,[%r31]; ld.u8 %r33,[%r31+1]; shl.b64 %r34,%r33,8; or.b64 %r35,%r34,%r32; ld.u8 %r36,[%r31+2]; shl.b64 %r37,%r36,16; or.b64 %r38,%r37,%r35; ld.u8 %r39,[%r31+3]; shl.b64 %r40,%r39,24; or.b64 %r41,%r40,%r38; .loc 1 58 15 st.u32 [%r30+16],%r41; .loc 1 59 17 ld.u8 %r43,[%r31+4]; ld.u8 %r44,[%r31+5]; shl.b64 %r45,%r44,8; or.b64 %r46,%r45,%r43; ld.u8 %r47,[%r31+6]; shl.b64 %r48,%r47,16; or.b64 %r49,%r48,%r46; ld.u8 %r50,[%r31+7]; shl.b64 %r51,%r50,24; or.b64 %r52,%r51,%r49; .loc 1 59 15 st.u32 [%r30+20],%r52; .loc 1 60 17 ld.u8 %r54,[%r31+8]; ld.u8 %r55,[%r31+9]; shl.b64 %r56,%r55,8; or.b64 %r57,%r56,%r54; ld.u8 %r58,[%r31+10]; shl.b64 %r59,%r58,16; or.b64 %r60,%r59,%r57; ld.u8 %r61,[%r31+11]; shl.b64 %r62,%r61,24; or.b64 %r63,%r62,%r60; .loc 1 60 15 st.u32 [%r30+24],%r63; .loc 1 61 17 ld.u8 %r65,[%r31+12]; ld.u8 %r66,[%r31+13]; shl.b64 %r67,%r66,8; or.b64 %r68,%r67,%r65; ld.u8 %r69,[%r31+14]; shl.b64 %r70,%r69,16; or.b64 %r71,%r70,%r68; ld.u8 %r72,[%r31+15]; shl.b64 %r73,%r72,24; or.b64 %r74,%r73,%r71; .loc 1 61 15 st.u32 [%r30+28],%r74; .loc 1 68 17 ld.u8 %r76,[%r31+16]; ld.u8 %r77,[%r31+17]; shl.b64 %r78,%r77,8; or.b64 %r79,%r78,%r76; ld.u8 %r80,[%r31+18]; shl.b64 %r81,%r80,16; or.b64 %r82,%r81,%r79; ld.u8 %r83,[%r31+19]; shl.b64 %r84,%r83,24; or.b64 %r85,%r84,%r82; .loc 1 68 15 st.u32 [%r30+32],%r85; .loc 1 69 17 ld.u8 %r87,[%r31+20]; ld.u8 %r88,[%r31+21]; shl.b64 %r89,%r88,8; or.b64 %r90,%r89,%r87; ld.u8 %r91,[%r31+22]; shl.b64 %r92,%r91,16; or.b64 %r93,%r92,%r90; ld.u8 %r94,[%r31+23]; shl.b64 %r95,%r94,24; or.b64 %r96,%r95,%r93; .loc 1 69 15 st.u32 [%r30+36],%r96; .loc 1 70 18 ld.u8 %r98,[%r31+24]; ld.u8 %r99,[%r31+25]; shl.b64 %r100,%r99,8; or.b64 %r101,%r100,%r98; ld.u8 %r102,[%r31+26]; shl.b64 %r103,%r102,16; or.b64 %r104,%r103,%r101; ld.u8 %r105,[%r31+27]; shl.b64 %r106,%r105,24; or.b64 %r107,%r106,%r104; .loc 1 70 16 st.u32 [%r30+40],%r107; .loc 1 71 18 ld.u8 %r109,[%r31+28]; ld.u8 %r110,[%r31+29]; shl.b64 %r111,%r110,8; or.b64 %r112,%r111,%r109; ld.u8 %r113,[%r31+30]; shl.b64 %r114,%r113,16; or.b64 %r115,%r114,%r112; ld.u8 %r116,[%r31+31]; shl.b64 %r117,%r116,24; or.b64 %r118,%r117,%r115; .loc 1 71 16 st.u32 [%r30+44],%r118; .loc 1 72 15 mov.u32 %r120,1634760805; st.u32 [%r30],%r120; .loc 1 73 15 mov.u32 %r121,857760878; st.u32 [%r30+4],%r121; .loc 1 74 15 mov.u32 %r122,2036477234; st.u32 [%r30+8],%r122; .loc 1 75 15 mov.u32 %r123,1797285236; st.u32 [%r30+12],%r123; .loc 1 76 1 ret; } // BEGIN FUNCTION DEF: _rs_stir .func _rs_stir { .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r61; .reg .u32 %r63; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .pred %r72; .reg .u32 %r75; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u32 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u16 %r117; .loc 2 89 6 mov.u64 %r46,40; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r46; call (%value_in),getentropy,(%out_arg1,%out_arg2); ld.param.u32 %r47,[%value_in]; } .loc 2 89 5 setp.ne.u32 %r48,%r47,-1; @ %r48 bra $L12; .loc 3 69 2 mov.u32 %r49,9; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r49; call (%value_in),raise,(%out_arg1); ld.param.u32 %r50,[%value_in]; } $L12: .loc 2 92 5 ld.global.u64 %r51,[rs]; setp.ne.u64 %r52,%r51,0; @ %r52 bra $L13; .loc 3 79 7 cvta.global.u64 %r53,_arc4random_data; st.global.u64 [rs],%r53; .loc 3 80 8 add.u64 %r54,%r53,16; st.global.u64 [rsx],%r54; .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 st.u64 [%r53+64],%r51; .loc 1 83 16 ld.u32 %r61,[%frame+32]; st.u32 [%r53+72],%r61; .loc 1 84 16 ld.u32 %r63,[%frame+36]; st.u32 [%r53+76],%r63; .loc 1 85 1 bra $L14; $L13: .loc 2 126 9 ld.global.u64 %r36,[rsx]; add.u64 %r37,%r36,64; .loc 2 125 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; call chacha_encrypt_bytes$constprop$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r28,%r37; mov.u64 %r30,%frame; add.u64 %r34,%frame,40; $L15: .loc 2 133 19 ld.u8 %r117,[%r28]; mov.u16 %r70,%r117; ld.u8 %r117,[%r30]; mov.u16 %r71,%r117; xor.b16 %r69,%r70,%r71; st.u8 [%r28],%r69; .loc 2 132 17 add.u64 %r28,%r28,1; add.u64 %r30,%r30,1; setp.ne.u64 %r72,%r30,%r34; @ %r72 bra $L15; .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 mov.u32 %r75,0; st.u32 [%r36+48],%r75; .loc 1 82 16 st.u32 [%r36+52],%r75; .loc 1 83 18 ld.u8 %r77,[%r36+96]; ld.u8 %r78,[%r36+97]; shl.b64 %r79,%r78,8; or.b64 %r80,%r79,%r77; ld.u8 %r81,[%r36+98]; shl.b64 %r82,%r81,16; or.b64 %r83,%r82,%r80; ld.u8 %r84,[%r36+99]; shl.b64 %r85,%r84,24; or.b64 %r86,%r85,%r83; .loc 1 83 16 st.u32 [%r36+56],%r86; .loc 1 84 18 ld.u8 %r88,[%r36+100]; ld.u8 %r89,[%r36+101]; shl.b64 %r90,%r89,8; or.b64 %r91,%r90,%r88; ld.u8 %r92,[%r36+102]; shl.b64 %r93,%r92,16; or.b64 %r94,%r93,%r91; ld.u8 %r95,[%r36+103]; shl.b64 %r96,%r95,24; or.b64 %r97,%r96,%r94; .loc 1 84 16 st.u32 [%r36+60],%r97; .loc 2 137 2 mov.u64 %r101,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r75; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r101; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r102,[%value_in]; } .loc 2 138 14 ld.global.u64 %r103,[rs]; mov.u64 %r104,984; st.u64 [%r103],%r104; $L14: .loc 2 96 2 mov.u64 %r106,40; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r106; call explicit_bzero,(%out_arg1,%out_arg2); } .loc 2 99 14 ld.global.u64 %r107,[rs]; mov.u64 %r108,0; st.u64 [%r107],%r108; .loc 2 100 12 ld.global.u64 %r113,[rsx]; add.u64 %r112,%r113,64; .loc 2 100 2 mov.u64 %r111,1024; mov.u32 %r110,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r110; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r111; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r114,[%value_in]; } .loc 2 102 15 ld.global.u64 %r115,[rs]; mov.u64 %r116,1600000; st.u64 [%r115+8],%r116; .loc 2 104 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: arc4random .visible .func (.param .u32 %value_out) arc4random { .reg .u32 %value; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r66; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .pred %r97; .reg .u64 %r98; .loc 2 110 6 ld.global.u64 %r98,[rs]; .loc 2 110 5 setp.eq.u64 %r42,%r98,0; @ %r42 bra $L18; .loc 2 110 15 ld.u64 %r29,[%r98+8]; .loc 2 110 10 setp.gt.u64 %r43,%r29,4; @ %r43 bra $L19; $L18: .loc 2 111 3 { call _rs_stir; } .loc 2 112 8 ld.global.u64 %r98,[rs]; ld.u64 %r29,[%r98+8]; .loc 2 112 5 setp.le.u64 %r44,%r29,4; @ %r44 bra $L24; $L19: .loc 2 115 16 add.u64 %r31,%r29,-4; bra $L20; $L29: .loc 2 173 48 mov.u64 %r46,1024; sub.u64 %r35,%r46,%r96; $L21: .loc 2 173 14 ld.global.u64 %r49,[rsx]; add.u64 %r48,%r49,64; .loc 2 173 12 add.u64 %r25,%r48,%r35; .loc 2 174 2 mov.u64 %r52,4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r52; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 2 175 2 mov.u32 %r55,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r52; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r57,[%value_in]; } .loc 2 176 14 ld.global.u64 %r26,[rs]; ld.u64 %r59,[%r26]; add.u64 %r58,%r59,-4; st.u64 [%r26],%r58; .loc 2 191 9 ld.u32 %r41,[%frame]; bra $L28; $L22: .loc 2 126 9 ld.global.u64 %r22,[rsx]; add.u64 %r40,%r22,64; .loc 2 125 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r40; call chacha_encrypt_bytes$constprop$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 mov.u32 %r66,0; st.u32 [%r22+48],%r66; .loc 1 82 16 st.u32 [%r22+52],%r66; .loc 1 83 18 ld.u8 %r68,[%r22+96]; ld.u8 %r69,[%r22+97]; shl.b64 %r70,%r69,8; or.b64 %r71,%r70,%r68; ld.u8 %r72,[%r22+98]; shl.b64 %r73,%r72,16; or.b64 %r74,%r73,%r71; ld.u8 %r75,[%r22+99]; shl.b64 %r76,%r75,24; or.b64 %r77,%r76,%r74; .loc 1 83 16 st.u32 [%r22+56],%r77; .loc 1 84 18 ld.u8 %r79,[%r22+100]; ld.u8 %r80,[%r22+101]; shl.b64 %r81,%r80,8; or.b64 %r82,%r81,%r79; ld.u8 %r83,[%r22+102]; shl.b64 %r84,%r83,16; or.b64 %r85,%r84,%r82; ld.u8 %r86,[%r22+103]; shl.b64 %r87,%r86,24; or.b64 %r88,%r87,%r85; .loc 1 84 16 st.u32 [%r22+60],%r88; .loc 2 137 2 mov.u64 %r92,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r40; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r66; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r92; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r93,[%value_in]; } .loc 2 138 14 ld.global.u64 %r94,[rs]; mov.u64 %r95,984; st.u64 [%r94],%r95; .loc 2 139 1 mov.u64 %r35,%r92; bra $L21; $L24: .loc 2 113 16 mov.u64 %r31,0; $L20: st.u64 [%r98+8],%r31; .loc 2 171 5 ld.u64 %r96,[%r98]; setp.le.u64 %r97,%r96,3; @ ! %r97 bra $L29; bra $L22; $L28: .loc 2 192 1 mov.u32 %value,%r41; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: arc4random_buf .visible .func arc4random_buf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r35; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r55; .reg .u32 %r57; .reg .u64 %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u32 %r68; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .pred %r100; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 2 110 6 ld.global.u64 %r98,[rs]; .loc 2 110 5 setp.eq.u64 %r43,%r98,0; @ %r43 bra $L31; .loc 2 110 15 ld.u64 %r30,[%r98+8]; .loc 2 110 10 setp.lt.u64 %r44,%r42,%r30; @ %r44 bra $L32; $L31: .loc 2 111 3 { call _rs_stir; } .loc 2 112 8 ld.global.u64 %r98,[rs]; ld.u64 %r30,[%r98+8]; .loc 2 112 5 setp.lt.u64 %r45,%r42,%r30; @ %r45 bra $L32; .loc 2 113 16 mov.u64 %r32,0; $L34: st.u64 [%r98+8],%r32; .loc 2 149 11 setp.ne.u64 %r100,%r42,0; @ %r100 bra $L33; bra $L30; $L32: .loc 2 115 16 sub.u64 %r32,%r30,%r42; bra $L34; $L33: .loc 2 150 9 ld.u64 %r23,[%r98]; .loc 2 152 16 ld.global.u64 %r99,[rsx]; add.u64 %r35,%r99,64; .loc 2 150 6 setp.eq.u64 %r49,%r23,0; @ %r49 bra $L35; .loc 2 151 6 min.u64 %r24,%r23,%r42; .loc 2 153 8 sub.u64 %r50,%r35,%r23; .loc 2 152 14 add.u64 %r26,%r50,1024; .loc 2 154 4 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r55,[%value_in]; } .loc 2 155 4 mov.u32 %r57,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r57; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r59,[%value_in]; } .loc 2 156 8 add.u64 %r41,%r41,%r24; .loc 2 157 6 sub.u64 %r42,%r42,%r24; .loc 2 158 16 ld.global.u64 %r98,[rs]; ld.u64 %r60,[%r98]; sub.u64 %r29,%r60,%r24; st.u64 [%r98],%r29; .loc 2 160 6 setp.eq.u64 %r61,%r29,0; @ %r61 bra $L41; setp.ne.u64 %r100,%r42,0; bra $L37; $L41: setp.ne.u64 %r100,%r42,0; ld.global.u64 %r99,[rsx]; bra $L35; $L37: .loc 2 149 11 @ %r100 bra $L33; bra $L30; $L35: .loc 2 126 9 add.u64 %r39,%r99,64; .loc 2 125 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r99; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r39; call chacha_encrypt_bytes$constprop$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 2 80 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r99; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call chacha_keysetup$constprop$0,(%out_arg1,%out_arg2); } .loc 1 81 16 mov.u32 %r68,0; st.u32 [%r99+48],%r68; .loc 1 82 16 st.u32 [%r99+52],%r68; .loc 1 83 18 ld.u8 %r70,[%r99+96]; ld.u8 %r71,[%r99+97]; shl.b64 %r72,%r71,8; or.b64 %r73,%r72,%r70; ld.u8 %r74,[%r99+98]; shl.b64 %r75,%r74,16; or.b64 %r76,%r75,%r73; ld.u8 %r77,[%r99+99]; shl.b64 %r78,%r77,24; or.b64 %r79,%r78,%r76; .loc 1 83 16 st.u32 [%r99+56],%r79; .loc 1 84 18 ld.u8 %r81,[%r99+100]; ld.u8 %r82,[%r99+101]; shl.b64 %r83,%r82,8; or.b64 %r84,%r83,%r81; ld.u8 %r85,[%r99+102]; shl.b64 %r86,%r85,16; or.b64 %r87,%r86,%r84; ld.u8 %r88,[%r99+103]; shl.b64 %r89,%r88,24; or.b64 %r90,%r89,%r87; .loc 1 84 16 st.u32 [%r99+60],%r90; .loc 2 137 2 mov.u64 %r94,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r68; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r94; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r95,[%value_in]; } .loc 2 138 14 ld.global.u64 %r98,[rs]; mov.u64 %r97,984; st.u64 [%r98],%r97; .loc 2 139 1 bra $L37; $L30: .loc 2 204 1 ret; } /139 0 0 0 644 1138 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: arc4random_uniform .visible .func (.param .u32 %value_out) arc4random_uniform (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/arc4random_uniform.c" // BEGIN GLOBAL FUNCTION DECL: arc4random .extern .func (.param .u32 %value_out) arc4random; // BEGIN GLOBAL FUNCTION DEF: arc4random_uniform .visible .func (.param .u32 %value_out) arc4random_uniform (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r25; .reg .u32 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .pred %r30; mov.u32 %r26,%ar0; .loc 1 37 5 setp.le.u32 %r27,%r26,1; @ %r27 bra $L4; .loc 1 41 8 neg.s32 %r28,%r26; .loc 1 41 6 rem.u32 %r23,%r28,%r26; $L3: .loc 1 50 7 { .param .u32 %value_in; call (%value_in),arc4random; ld.param.u32 %r29,[%value_in]; } .loc 1 51 6 setp.gt.u32 %r30,%r23,%r29; @ %r30 bra $L3; .loc 1 55 11 rem.u32 %r25,%r29,%r26; bra $L1; $L4: .loc 1 38 10 mov.u32 %r25,0; $L1: .loc 1 56 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-asctime.o/0 0 0 644 1090 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: asctime .visible .func (.param .u64 %value_out) asctime (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/asctime.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: asctime_r .extern .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: asctime .visible .func (.param .u64 %value_out) asctime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 56 28 ld.global.u64 %r29,[_impure_ptr]; add.u64 %r28,%r29,160; .loc 1 56 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),asctime_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 57 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /167 0 0 0 644 3025 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: asctime_r .visible .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/time/asctime_r.c" // BEGIN GLOBAL FUNCTION DECL: siprintf .extern .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: day_name$0 .const .align 1 .u8 day_name$0[21] = {83,117,110,77,111,110,84,117,101,87,101,100,84,104,117,70,114,105,83,97,116 }; // BEGIN VAR DEF: mon_name$1 .const .align 1 .u8 mon_name$1[36] = {74,97,110,70,101,98,77,97,114,65,112,114,77,97,121,74,117,110,74,117,108,65,117,103,83,101,112,79,99,116,78,111,118,68,101,99 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[32] = {37,46,51,115,32,37,46,51,115,37,51,100,32,37,46,50,100,58,37,46,50,100,58,37,46,50,100,32,37,100,10,0 }; // BEGIN GLOBAL FUNCTION DEF: asctime_r .visible .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,48; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; mov.u64 %r35,%ar0; mov.u64 %r36,%ar1; .loc 1 20 3 ld.u32 %r40,[%r35+20]; add.u32 %r39,%r40,1900; st.u32 [%stack+32],%r39; ld.u32 %r41,[%r35]; st.u32 [%stack+28],%r41; ld.u32 %r42,[%r35+4]; st.u32 [%stack+24],%r42; ld.u32 %r43,[%r35+8]; st.u32 [%stack+20],%r43; ld.u32 %r44,[%r35+12]; st.u32 [%stack+16],%r44; .loc 1 22 14 ld.s32 %r45,[%r35+16]; add.u64 %r47,%r45,%r45; add.u64 %r48,%r47,%r45; cvta.const.u64 %r50,mon_name$1; add.u64 %r49,%r48,%r50; .loc 1 20 3 st.u64 [%stack+8],%r49; .loc 1 21 14 ld.s32 %r51,[%r35+24]; add.u64 %r53,%r51,%r51; add.u64 %r54,%r53,%r51; cvta.const.u64 %r56,day_name$0; add.u64 %r55,%r54,%r56; .loc 1 20 3 st.u64 [%stack],%r55; cvta.const.u64 %r38,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r57,[%value_in]; } .loc 1 26 1 mov.u64 %value,%r36; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-assert.o/ 0 0 0 644 1235 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __assert_func .visible .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../../newlib/libc/machine/nvptx/assert.c" // BEGIN GLOBAL FUNCTION DECL: __assert .visible .func __assert (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: abort .extern .func abort; // BEGIN GLOBAL FUNCTION DEF: __assert_func .visible .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .loc 1 28 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } // BEGIN GLOBAL FUNCTION DEF: __assert .visible .func __assert (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .loc 1 28 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } lib_a-atexit.o/ 0 0 0 644 1165 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atexit .visible .func (.param .u32 %value_out) atexit (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/atexit.c" // BEGIN GLOBAL FUNCTION DECL: __register_exitproc .extern .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atexit .visible .func (.param .u32 %value_out) atexit (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r23,%ar0; .loc 1 58 10 mov.u64 %r27,0; mov.u32 %r24,0; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__register_exitproc,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r28,[%value_in]; } .loc 1 59 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-atof.o/ 0 0 0 644 914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atof .visible .func (.param .f64 %value_out) atof (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/atof.c" // BEGIN GLOBAL FUNCTION DECL: strtod .extern .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atof .visible .func (.param .f64 %value_out) atof (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .f64 %r26; mov.u64 %r23,%ar0; .loc 1 62 10 mov.u64 %r25,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),strtod,(%out_arg1,%out_arg2); ld.param.f64 %r26,[%value_in]; } .loc 1 63 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-atoff.o/ 0 0 0 644 917 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atoff .visible .func (.param .f32 %value_out) atoff (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/atoff.c" // BEGIN GLOBAL FUNCTION DECL: strtof .extern .func (.param .f32 %value_out) strtof (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: atoff .visible .func (.param .f32 %value_out) atoff (.param .u64 %in_ar0) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .f32 %r26; mov.u64 %r23,%ar0; .loc 1 7 10 mov.u64 %r25,0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),strtof,(%out_arg1,%out_arg2); ld.param.f32 %r26,[%value_in]; } .loc 1 8 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-atoi.o/ 0 0 0 644 2194 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atoi .visible .func (.param .u32 %value_out) atoi (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/atoi.c" // BEGIN GLOBAL FUNCTION DECL: _atoi_r .visible .func (.param .u32 %value_out) _atoi_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtol .extern .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atoi .visible .func (.param .u32 %value_out) atoi (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 52 16 mov.u32 %r27,10; mov.u64 %r26,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r28,[%value_in]; } .loc 1 52 10 cvt.u32.u64 %value,%r28; .loc 1 53 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _atoi_r .visible .func (.param .u32 %value_out) _atoi_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 60 16 mov.u32 %r29,10; mov.u64 %r28,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 60 10 cvt.u32.u64 %value,%r30; .loc 1 61 1 st.param.u32 [%value_out],%value; ret; } lib_a-atol.o/ 0 0 0 644 2160 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atol .visible .func (.param .u64 %value_out) atol (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/atol.c" // BEGIN GLOBAL FUNCTION DECL: _atol_r .visible .func (.param .u64 %value_out) _atol_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtol .extern .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atol .visible .func (.param .u64 %value_out) atol (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; mov.u64 %r23,%ar0; .loc 1 12 10 mov.u32 %r26,10; mov.u64 %r25,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r27,[%value_in]; } .loc 1 13 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _atol_r .visible .func (.param .u64 %value_out) _atol_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 19 10 mov.u32 %r28,10; mov.u64 %r27,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r28; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r29,[%value_in]; } .loc 1 20 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-atoll.o/ 0 0 0 644 2173 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: atoll .visible .func (.param .u64 %value_out) atoll (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/atoll.c" // BEGIN GLOBAL FUNCTION DECL: _atoll_r .visible .func (.param .u64 %value_out) _atoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtoll .extern .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: atoll .visible .func (.param .u64 %value_out) atoll (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; mov.u64 %r23,%ar0; .loc 1 70 9 mov.u32 %r26,10; mov.u64 %r25,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; call (%value_in),strtoll,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r27,[%value_in]; } .loc 1 71 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _atoll_r .visible .func (.param .u64 %value_out) _atoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 78 9 mov.u32 %r28,10; mov.u64 %r27,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r28; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r29,[%value_in]; } .loc 1 79 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-bcopy.o/ 0 0 0 644 1095 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bcopy .visible .func bcopy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/bcopy.c" // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: bcopy .visible .func bcopy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r28; mov.u64 %r22,%ar0; mov.u64 %r23,%ar1; mov.u64 %r24,%ar2; .loc 1 31 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r28,[%value_in]; } .loc 1 32 1 ret; } lib_a-bsearch.o/0 0 0 644 2492 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bsearch .visible .func (.param .u64 %value_out) bsearch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/search/bsearch.c" // BEGIN GLOBAL FUNCTION DEF: bsearch .visible .func (.param .u64 %value_out) bsearch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .u16 %r57; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; mov.u64 %r34,%ar3; mov.u64 %r35,%ar4; .loc 1 71 13 set.u32.eq.u64 %r37,%r33,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 71 26 set.u32.eq.u64 %r40,%r34,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 71 18 cvt.u16.u8 %r57,%r36; mov.u16 %r43,%r57; cvt.u16.u8 %r57,%r39; mov.u16 %r44,%r57; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; .loc 1 71 6 cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 66 10 mov.u64 %r27,0; $L5: .loc 1 76 22 add.u64 %r48,%r27,%r33; .loc 1 76 13 shr.u64 %r28,%r48,1; .loc 1 77 15 mad.lo.u64 %r30,%r34,%r28,%r32; .loc 1 79 16 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),%r35,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r52,[%value_in]; } .loc 1 81 10 setp.lt.s32 %r53,%r52,0; @ %r53 bra $L6; .loc 1 83 15 setp.eq.u32 %r54,%r52,0; @ %r54 bra $L1; .loc 1 84 15 add.u64 %r27,%r28,1; bra $L3; $L6: .loc 1 82 15 mov.u64 %r33,%r28; $L3: .loc 1 74 16 setp.lt.u64 %r55,%r27,%r33; @ %r55 bra $L5; $L2: .loc 1 72 12 mov.u64 %r30,0; $L1: .loc 1 90 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-bzero.o/ 0 0 0 644 1002 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bzero .visible .func bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/bzero.c" // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: bzero .visible .func bzero (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r27; mov.u64 %r22,%ar0; mov.u64 %r23,%ar1; .loc 1 33 2 mov.u32 %r25,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r27,[%value_in]; } .loc 1 34 1 ret; } lib_a-calloc.o/ 0 0 0 644 1622 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: calloc .visible .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../../newlib/libc/machine/nvptx/calloc.c" // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: calloc .visible .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r30; .reg .u32 %r32; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 22 13 mul.lo.u64 %r27,%r24,%r25; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r28,[%value_in]; } mov.u64 %r23,%r28; .loc 1 23 6 setp.eq.u64 %r30,%r23,0; @ %r30 bra $L1; .loc 1 25 10 mov.u32 %r32,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r34,[%value_in]; } mov.u64 %r23,%r34; $L1: .loc 1 26 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-callocr.o/0 0 0 644 1124 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _calloc_r .visible .func (.param .u64 %value_out) _calloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../../newlib/libc/machine/nvptx/callocr.c" // BEGIN GLOBAL FUNCTION DECL: calloc .extern .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _calloc_r .visible .func (.param .u64 %value_out) _calloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 21 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),calloc,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 22 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-cfreer.o/ 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; /186 0 0 0 644 995 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clearerr .visible .func clearerr (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/clearerr.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: clearerr .visible .func clearerr (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u16 %r31; .reg .u16 %r32; mov.u64 %r26,%ar0; .loc 1 77 3 ld.global.u64 %r25,[_impure_ptr]; setp.eq.u64 %r27,%r25,0; @ %r27 bra $L2; ld.u32 %r28,[%r25+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L2: .loc 1 79 3 ld.u16 %r32,[%r26+16]; and.b16 %r31,%r32,-97; st.u16 [%r26+16],%r31; .loc 1 81 1 ret; } lib_a-clock.o/ 0 0 0 644 1813 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: clock .visible .func (.param .u64 %value_out) clock; .file 1 "../../../../../../newlib/libc/time/clock.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _times_r .extern .func (.param .u64 %value_out) _times_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: clock .visible .func (.param .u64 %value_out) clock { .reg .u64 %value; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .loc 1 58 14 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),_times_r,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } mov.u64 %r29,%r33; .loc 1 58 6 setp.eq.u64 %r34,%r29,-1; @ %r34 bra $L1; .loc 1 59 38 ld.u64 %r36,[%frame]; ld.u64 %r37,[%frame+8]; add.u64 %r35,%r36,%r37; .loc 1 59 56 ld.u64 %r39,[%frame+16]; add.u64 %r38,%r35,%r39; .loc 1 59 9 ld.u64 %r40,[%frame+24]; add.u64 %r29,%r38,%r40; $L1: .loc 1 63 1 mov.u64 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-closer.o/ 0 0 0 644 1314 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _close_r .visible .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/reent/closer.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: close .extern .func (.param .u32 %value_out) close (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _close_r .visible .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 46 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 47 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; call (%value_in),close,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 47 6 setp.ne.u32 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 47 42 ld.global.u32 %r22,[errno]; .loc 1 47 33 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 48 17 st.u32 [%r24],%r22; $L1: .loc 1 50 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-ctime.o/ 0 0 0 644 1097 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctime .visible .func (.param .u64 %value_out) ctime (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/ctime.c" // BEGIN GLOBAL FUNCTION DECL: localtime .extern .func (.param .u64 %value_out) localtime (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: asctime .extern .func (.param .u64 %value_out) asctime (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ctime .visible .func (.param .u64 %value_out) ctime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 42 19 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),localtime,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 42 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),asctime,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 43 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-ctime_r.o/0 0 0 644 1910 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ctime_r .visible .func (.param .u64 %value_out) ctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/time/ctime_r.c" // BEGIN GLOBAL FUNCTION DECL: localtime_r .extern .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: asctime_r .extern .func (.param .u64 %value_out) asctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: ctime_r .visible .func (.param .u64 %value_out) ctime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 13 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),localtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 13 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),asctime_r,(%out_arg1,%out_arg2); ld.param.u64 %r31,[%value_in]; } .loc 1 14 1 mov.u64 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-ctype_.o/ 0 0 0 644 1682 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL VAR DEF: _ctype_b .visible .const .align 1 .u8 _ctype_b[384] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32,32,32,32,32,32,32,32,40,40,40,40,40,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,136,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,4,4,4,4,4,4,4,4,4,4,16,16,16,16,16,16,16,65,65,65,65,65,65,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,16,16,16,16,16,66,66,66,66,66,66,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,16,16,16,16,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: _ctype_ .visible .const .align 1 .u8 _ctype_[257] = {0,32,32,32,32,32,32,32,32,32,40,40,40,40,40,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,136,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,4,4,4,4,4,4,4,4,4,4,16,16,16,16,16,16,16,65,65,65,65,65,65,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,16,16,16,16,16,16,66,66,66,66,66,66,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,16,16,16,16,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; /204 0 0 0 644 1405 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __cxa_atexit .visible .func (.param .u32 %value_out) __cxa_atexit (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/cxa_atexit.c" // BEGIN GLOBAL FUNCTION DECL: __register_exitproc .extern .func (.param .u32 %value_out) __register_exitproc (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: __cxa_atexit .visible .func (.param .u32 %value_out) __cxa_atexit (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 38 12 mov.u32 %r26,2; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r25; call (%value_in),__register_exitproc,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r30,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } /224 0 0 0 644 761 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __cxa_finalize .visible .func __cxa_finalize (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/cxa_finalize.c" // BEGIN GLOBAL FUNCTION DECL: __call_exitprocs .extern .func __call_exitprocs (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __cxa_finalize .visible .func __cxa_finalize (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u32 %r23; mov.u64 %r22,%ar0; .loc 1 18 3 mov.u32 %r23,0; { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call __call_exitprocs,(%out_arg1,%out_arg2); } .loc 1 19 1 ret; } /246 0 0 0 644 725 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: difftime .visible .func (.param .f64 %value_out) difftime (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/time/difftime.c" // BEGIN GLOBAL FUNCTION DEF: difftime .visible .func (.param .f64 %value_out) difftime (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 36 24 sub.u64 %r27,%r24,%r25; .loc 1 36 10 cvt.rn.f64.s64 %value,%r27; .loc 1 37 1 st.param.f64 [%value_out],%value; ret; } lib_a-div.o/ 0 0 0 644 1167 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: div .visible .func div (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/div.c" // BEGIN GLOBAL FUNCTION DEF: div .visible .func div (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 85 15 div.s32 %r22,%r25,%r26; .loc 1 86 14 rem.s32 %r23,%r25,%r26; .loc 1 113 5 setp.lt.s32 %r27,%r25,0; @ %r27 bra $L2; .loc 1 113 15 setp.ge.s32 %r28,%r23,0; @ %r28 bra $L3; .loc 1 114 3 add.u32 %r22,%r22,1; .loc 1 115 9 sub.u32 %r23,%r23,%r26; bra $L3; $L2: .loc 1 117 19 setp.le.s32 %r29,%r23,0; @ %r29 bra $L3; .loc 1 118 3 add.u32 %r22,%r22,-1; .loc 1 119 9 add.u32 %r23,%r23,%r26; $L3: .loc 1 121 9 st.u32 [%r24],%r22; st.u32 [%r24+4],%r23; .loc 1 122 1 ret; } lib_a-drand48.o/0 0 0 644 1686 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _drand48_r .visible .func (.param .f64 %value_out) _drand48_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/drand48.c" // BEGIN GLOBAL FUNCTION DECL: drand48 .visible .func (.param .f64 %value_out) drand48; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _erand48_r .extern .func (.param .f64 %value_out) _erand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _drand48_r .visible .func (.param .f64 %value_out) _drand48_r (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .f64 %r28; mov.u64 %r24,%ar0; .loc 1 20 24 add.u64 %r27,%r24,240; .loc 1 20 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_erand48_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } .loc 1 21 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: drand48 .visible .func (.param .f64 %value_out) drand48 { .reg .f64 %value; .reg .u64 %r22; .reg .u64 %r27; .reg .f64 %r28; .loc 1 27 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 20 24 add.u64 %r27,%r22,240; .loc 1 20 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_erand48_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } .loc 1 28 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-dtoa.o/ 0 0 0 644 63773 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: quorem .func (.param .u32 %value_out) quorem (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/dtoa.c" // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .visible .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL VAR DECL: __mprec_bigtens .extern .const .align 8 .u64 __mprec_bigtens[]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[]; // BEGIN GLOBAL FUNCTION DECL: __mcmp .extern .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __d2b .extern .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __i2b .extern .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __pow5mult .extern .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __multiply .extern .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __hi0bits .extern .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __lshift .extern .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __multadd .extern .func (.param .u64 %value_out) __multadd (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mdiff .extern .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[9] = {73,110,102,105,110,105,116,121,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {78,97,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[44] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,100,116,111,97,46,99,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[2] = {48,0 }; // BEGIN FUNCTION DEF: quorem .func (.param .u32 %value_out) quorem (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r24; .reg .u32 %r26; .reg .u32 %r32; .reg .u32 %r51; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u64 %r75; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r95; .reg .u64 %r97; .reg .u64 %r102; .reg .u64 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r116; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .pred %r129; .reg .u32 %r130; .reg .pred %r131; .reg .pred %r132; .reg .pred %r133; .reg .u32 %r134; .reg .pred %r135; .reg .u32 %r138; .reg .pred %r139; .reg .u32 %r140; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u64 %r160; .reg .u64 %r161; mov.u64 %r106,%ar0; mov.u64 %r107,%ar1; .loc 1 47 5 ld.u32 %r73,[%r107+20]; .loc 1 52 6 ld.u32 %r108,[%r106+20]; setp.lt.s32 %r109,%r108,%r73; @ %r109 bra $L13; .loc 1 55 7 add.u32 %r66,%r73,-1; .loc 1 55 12 cvt.s64.s32 %r110,%r66; shl.b64 %r23,%r110,2; .loc 1 54 6 add.u64 %r161,%r107,24; .loc 1 55 7 add.u64 %r75,%r161,%r23; .loc 1 56 6 add.u64 %r160,%r106,24; .loc 1 57 7 add.u64 %r77,%r160,%r23; .loc 1 58 7 ld.u32 %r24,[%r77]; .loc 1 58 20 ld.u32 %r112,[%r75]; add.u32 %r26,%r112,1; .loc 1 58 5 div.u32 %r71,%r24,%r26; .loc 1 63 6 setp.lt.u32 %r113,%r24,%r26; @ %r113 bra $L3; mov.u64 %r97,%r160; mov.u64 %r95,%r161; .loc 1 66 13 mov.u32 %r70,0; .loc 1 65 14 mov.u32 %r68,%r70; $L4: .loc 1 70 7 ld.u32 %r78,[%r95]; .loc 1 71 13 and.b32 %r114,%r78,65535; .loc 1 71 7 mad.lo.u32 %r79,%r114,%r71,%r70; .loc 1 72 13 shr.u32 %r116,%r78,16; .loc 1 72 30 shr.u32 %r118,%r79,16; .loc 1 72 7 mad.lo.u32 %r80,%r116,%r71,%r118; .loc 1 73 10 shr.u32 %r70,%r80,16; .loc 1 74 9 ld.u32 %r32,[%r97]; .loc 1 74 13 and.b32 %r119,%r32,65535; .loc 1 74 29 and.b32 %r121,%r79,65535; .loc 1 74 39 vsub.u32.u32.u32.add %r81,%r68,%r121,%r119; .loc 1 77 13 shr.u32 %r122,%r32,16; .loc 1 77 26 and.b32 %r123,%r80,65535; .loc 1 75 11 shr.s32 %r125,%r81,16; .loc 1 77 36 vsub.u32.u32.u32.add %r83,%r122,%r123,%r125; .loc 1 78 11 shr.s32 %r68,%r83,16; .loc 1 80 4 shl.b32 %r126,%r83,16; and.b32 %r127,%r81,65535; or.b32 %r128,%r126,%r127; st.u32 [%r97],%r128; .loc 1 90 17 add.u64 %r97,%r97,4; add.u64 %r95,%r95,4; setp.ge.u64 %r129,%r75,%r95; @ %r129 bra $L4; .loc 1 91 10 ld.u32 %r130,[%r77]; setp.ne.u32 %r131,%r130,0; @ %r131 bra $L3; .loc 1 94 22 add.u64 %r84,%r77,-4; setp.gt.u64 %r132,%r84,%r160; @ %r132 bra $L5; bra $L6; $L7: .loc 1 95 6 add.u32 %r66,%r66,-1; .loc 1 94 22 add.u64 %r84,%r84,-4; setp.le.u64 %r133,%r84,%r160; @ %r133 bra $L6; $L5: ld.u32 %r134,[%r84]; setp.eq.u32 %r135,%r134,0; @ %r135 bra $L7; $L6: .loc 1 96 12 st.u32 [%r106+20],%r66; $L3: .loc 1 99 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r107; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r138,[%value_in]; } .loc 1 99 6 setp.lt.s32 %r139,%r138,0; @ %r139 bra $L8; .loc 1 101 8 add.u32 %r71,%r71,1; mov.u64 %r104,%r160; mov.u64 %r102,%r161; .loc 1 102 14 mov.u32 %r69,0; $L9: .loc 1 109 7 ld.u32 %r85,[%r102]; .loc 1 113 9 ld.u32 %r51,[%r104]; .loc 1 113 13 and.b32 %r140,%r51,65535; .loc 1 110 13 and.b32 %r142,%r85,65535; .loc 1 113 39 vsub.u32.u32.u32.add %r86,%r69,%r142,%r140; .loc 1 116 13 shr.u32 %r143,%r51,16; .loc 1 111 13 shr.u32 %r144,%r85,16; .loc 1 114 11 shr.s32 %r146,%r86,16; .loc 1 116 36 vsub.u32.u32.u32.add %r88,%r143,%r144,%r146; .loc 1 117 11 shr.s32 %r69,%r88,16; .loc 1 119 4 shl.b32 %r147,%r88,16; and.b32 %r148,%r86,65535; or.b32 %r149,%r147,%r148; st.u32 [%r104],%r149; .loc 1 129 17 add.u64 %r104,%r104,4; add.u64 %r102,%r102,4; setp.ge.u64 %r150,%r75,%r102; @ %r150 bra $L9; .loc 1 131 16 cvt.s64.s32 %r151,%r66; shl.b64 %r152,%r151,2; .loc 1 131 11 add.u64 %r89,%r160,%r152; .loc 1 132 10 ld.u32 %r153,[%r89]; setp.ne.u32 %r154,%r153,0; @ %r154 bra $L8; .loc 1 134 22 add.u64 %r90,%r89,-4; setp.gt.u64 %r155,%r90,%r160; @ %r155 bra $L10; bra $L11; $L12: .loc 1 135 6 add.u32 %r66,%r66,-1; .loc 1 134 22 add.u64 %r90,%r90,-4; setp.le.u64 %r156,%r90,%r160; @ %r156 bra $L11; $L10: ld.u32 %r157,[%r90]; setp.eq.u32 %r158,%r157,0; @ %r158 bra $L12; $L11: .loc 1 136 12 st.u32 [%r106+20],%r66; $L8: .loc 1 139 10 mov.u32 %r105,%r71; bra $L1; $L13: .loc 1 53 12 mov.u32 %r105,0; $L1: .loc 1 140 1 mov.u32 %value,%r105; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _dtoa_r .visible .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r33; .reg .u32 %r37; .reg .u32 %r43; .reg .f64 %r45; .reg .u64 %r49; .reg .f64 %r50; .reg .u64 %r52; .reg .u32 %r58; .reg .u32 %r61; .reg .u32 %r64; .reg .u32 %r67; .reg .f64 %r69; .reg .f64 %r74; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r94; .reg .f64 %r101; .reg .u32 %r102; .reg .f64 %r110; .reg .f64 %r115; .reg .u32 %r117; .reg .f64 %r118; .reg .u64 %r147; .reg .u32 %r153; .reg .u64 %r155; .reg .u64 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u32 %r176; .reg .u32 %r178; .reg .u32 %r181; .reg .u32 %r182; .reg .u32 %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .u32 %r188; .reg .u32 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r194; .reg .f64 %r195; .reg .u64 %r196; .reg .u64 %r198; .reg .u64 %r199; .reg .u32 %r200; .reg .u64 %r203; .reg .u32 %r205; .reg .f64 %r206; .reg .u32 %r207; .reg .u64 %r208; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .f64 %r216; .reg .u32 %r217; .reg .u64 %r218; .reg .u32 %r219; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r225; .reg .u32 %r226; .reg .u32 %r227; .reg .u32 %r228; .reg .u32 %r229; .reg .u32 %r233; .reg .u32 %r239; .reg .u32 %r241; .reg .u32 %r242; .reg .f64 %r243; .reg .u32 %r246; .reg .u64 %r249; .reg .u32 %r251; .reg .u64 %r252; .reg .u64 %r258; .reg .u32 %r261; .reg .u32 %r262; .reg .u64 %r263; .reg .u64 %r264; .reg .u32 %r269; .reg .f64 %r270; .reg .u64 %r276; .reg .u64 %r277; .reg .f64 %r279; .reg .u32 %r281; .reg .u64 %r282; .reg .u64 %r284; .reg .u64 %r286; .reg .u32 %r288; .reg .f64 %r290; .reg .f64 %r294; .reg .u32 %r297; .reg .u64 %r299; .reg .u32 %r300; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r308; .reg .u32 %r309; .reg .u32 %r310; .reg .f64 %r315; .reg .f64 %r317; .reg .u32 %r318; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .f64 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r336; .reg .pred %r337; .reg .u32 %r338; .reg .u32 %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .pred %r346; .reg .u32 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r350; .reg .u32 %r352; .reg .u32 %r353; .reg .pred %r354; .reg .u32 %r355; .reg .u64 %r356; .reg .u64 %r357; .reg .pred %r358; .reg .pred %r359; .reg .u32 %r360; .reg .pred %r361; .reg .u64 %r362; .reg .u64 %r367; .reg .u64 %r368; .reg .pred %r369; .reg .u64 %r377; .reg .u32 %r379; .reg .u64 %r380; .reg .u32 %r381; .reg .pred %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u64 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u64 %r394; .reg .u64 %r395; .reg .u64 %r396; .reg .f64 %r398; .reg .f64 %r399; .reg .f64 %r400; .reg .f64 %r401; .reg .pred %r402; .reg .f64 %r403; .reg .pred %r404; .reg .pred %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r408; .reg .u64 %r409; .reg .f64 %r410; .reg .pred %r411; .reg .pred %r412; .reg .u32 %r413; .reg .pred %r414; .reg .pred %r415; .reg .pred %r416; .reg .pred %r417; .reg .u32 %r418; .reg .pred %r419; .reg .u64 %r421; .reg .u64 %r422; .reg .pred %r423; .reg .u64 %r426; .reg .pred %r427; .reg .u64 %r428; .reg .u32 %r429; .reg .u64 %r430; .reg .u64 %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .u32 %r434; .reg .u32 %r435; .reg .u16 %r436; .reg .u16 %r437; .reg .u32 %r438; .reg .u16 %r439; .reg .u16 %r440; .reg .u16 %r441; .reg .u32 %r442; .reg .pred %r443; .reg .pred %r444; .reg .u64 %r445; .reg .u32 %r446; .reg .u64 %r447; .reg .u64 %r448; .reg .u64 %r449; .reg .u32 %r450; .reg .pred %r451; .reg .u64 %r452; .reg .f64 %r453; .reg .pred %r454; .reg .u32 %r455; .reg .pred %r456; .reg .f64 %r457; .reg .pred %r458; .reg .pred %r459; .reg .u64 %r460; .reg .u32 %r461; .reg .u64 %r462; .reg .u64 %r463; .reg .u64 %r464; .reg .f64 %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r468; .reg .f64 %r469; .reg .pred %r470; .reg .pred %r471; .reg .pred %r472; .reg .pred %r473; .reg .pred %r474; .reg .pred %r475; .reg .u32 %r476; .reg .f64 %r477; .reg .u64 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u64 %r482; .reg .u64 %r483; .reg .u64 %r484; .reg .f64 %r486; .reg .u64 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u64 %r491; .reg .u64 %r492; .reg .u64 %r493; .reg .pred %r495; .reg .f64 %r496; .reg .pred %r497; .reg .f64 %r498; .reg .pred %r499; .reg .u32 %r500; .reg .u16 %r501; .reg .u16 %r502; .reg .u32 %r503; .reg .u64 %r504; .reg .u32 %r505; .reg .u64 %r506; .reg .u64 %r507; .reg .u64 %r508; .reg .f64 %r509; .reg .pred %r510; .reg .f64 %r511; .reg .f64 %r512; .reg .pred %r514; .reg .f64 %r515; .reg .f64 %r516; .reg .pred %r517; .reg .pred %r518; .reg .f64 %r519; .reg .u32 %r520; .reg .u16 %r521; .reg .u16 %r522; .reg .pred %r523; .reg .pred %r525; .reg .f64 %r526; .reg .pred %r527; .reg .f64 %r528; .reg .f64 %r529; .reg .pred %r530; .reg .u16 %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u32 %r534; .reg .u64 %r535; .reg .f64 %r536; .reg .u32 %r537; .reg .u16 %r538; .reg .u16 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .u32 %r546; .reg .u32 %r547; .reg .u32 %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u16 %r551; .reg .u32 %r552; .reg .u16 %r553; .reg .pred %r554; .reg .u64 %r555; .reg .u64 %r556; .reg .u64 %r557; .reg .u64 %r558; .reg .u32 %r560; .reg .u32 %r561; .reg .u32 %r562; .reg .u32 %r563; .reg .u32 %r564; .reg .u16 %r565; .reg .u16 %r566; .reg .u16 %r567; .reg .u32 %r568; .reg .u16 %r569; .reg .pred %r570; .reg .pred %r571; .reg .f64 %r572; .reg .f64 %r573; .reg .pred %r574; .reg .f64 %r575; .reg .f64 %r576; .reg .f64 %r577; .reg .u32 %r578; .reg .u16 %r579; .reg .u16 %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r583; .reg .u32 %r584; .reg .pred %r585; .reg .pred %r586; .reg .u16 %r587; .reg .pred %r588; .reg .u16 %r590; .reg .u32 %r592; .reg .u32 %r593; .reg .u32 %r594; .reg .u64 %r595; .reg .u64 %r596; .reg .pred %r597; .reg .f64 %r598; .reg .f64 %r599; .reg .f64 %r600; .reg .u32 %r601; .reg .u16 %r602; .reg .u16 %r603; .reg .pred %r604; .reg .pred %r606; .reg .pred %r607; .reg .u32 %r608; .reg .u32 %r609; .reg .pred %r610; .reg .pred %r612; .reg .u32 %r614; .reg .u64 %r615; .reg .u32 %r616; .reg .u32 %r617; .reg .u32 %r618; .reg .u32 %r619; .reg .u32 %r620; .reg .u32 %r621; .reg .u16 %r622; .reg .u16 %r623; .reg .u16 %r624; .reg .u32 %r625; .reg .u16 %r626; .reg .pred %r627; .reg .pred %r628; .reg .pred %r630; .reg .u64 %r634; .reg .u64 %r638; .reg .pred %r641; .reg .u64 %r645; .reg .u64 %r649; .reg .u32 %r651; .reg .u64 %r652; .reg .pred %r653; .reg .u64 %r657; .reg .pred %r658; .reg .pred %r659; .reg .u64 %r660; .reg .pred %r661; .reg .u64 %r662; .reg .u32 %r663; .reg .u32 %r664; .reg .pred %r665; .reg .pred %r666; .reg .u32 %r667; .reg .u32 %r668; .reg .u32 %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .u32 %r675; .reg .u32 %r676; .reg .u32 %r677; .reg .pred %r678; .reg .u32 %r679; .reg .pred %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u64 %r686; .reg .pred %r687; .reg .u64 %r691; .reg .u32 %r692; .reg .pred %r695; .reg .u32 %r698; .reg .pred %r699; .reg .u32 %r702; .reg .u32 %r703; .reg .u64 %r704; .reg .u32 %r705; .reg .u32 %r706; .reg .u32 %r707; .reg .u16 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u32 %r711; .reg .u64 %r717; .reg .pred %r718; .reg .u32 %r719; .reg .u32 %r720; .reg .u32 %r721; .reg .u16 %r722; .reg .u16 %r723; .reg .u16 %r724; .reg .u32 %r725; .reg .u16 %r726; .reg .pred %r727; .reg .pred %r728; .reg .u32 %r731; .reg .u64 %r733; .reg .u32 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .pred %r740; .reg .u64 %r744; .reg .pred %r745; .reg .u32 %r748; .reg .u64 %r749; .reg .pred %r750; .reg .u64 %r751; .reg .u32 %r752; .reg .u64 %r754; .reg .u64 %r758; .reg .u64 %r759; .reg .u64 %r760; .reg .u64 %r761; .reg .u64 %r762; .reg .u64 %r763; .reg .u32 %r766; .reg .u64 %r767; .reg .u32 %r768; .reg .u64 %r769; .reg .u32 %r772; .reg .u32 %r775; .reg .u64 %r779; .reg .u32 %r780; .reg .pred %r781; .reg .u32 %r784; .reg .u32 %r790; .reg .u32 %r791; .reg .pred %r792; .reg .pred %r793; .reg .pred %r794; .reg .pred %r795; .reg .u32 %r799; .reg .u32 %r800; .reg .pred %r801; .reg .pred %r802; .reg .u32 %r805; .reg .u64 %r806; .reg .u32 %r809; .reg .pred %r810; .reg .pred %r811; .reg .u32 %r812; .reg .pred %r813; .reg .pred %r814; .reg .pred %r815; .reg .pred %r816; .reg .u32 %r817; .reg .u32 %r818; .reg .u16 %r819; .reg .u16 %r820; .reg .pred %r821; .reg .u32 %r824; .reg .u32 %r825; .reg .u64 %r826; .reg .pred %r827; .reg .u64 %r832; .reg .u64 %r837; .reg .u64 %r842; .reg .u32 %r845; .reg .u64 %r846; .reg .u32 %r847; .reg .pred %r848; .reg .u64 %r849; .reg .pred %r850; .reg .u32 %r851; .reg .u64 %r852; .reg .u32 %r855; .reg .u32 %r856; .reg .u64 %r857; .reg .u32 %r860; .reg .u64 %r861; .reg .u32 %r864; .reg .pred %r865; .reg .pred %r866; .reg .u32 %r867; .reg .pred %r868; .reg .pred %r869; .reg .u32 %r870; .reg .u16 %r871; .reg .pred %r872; .reg .u16 %r874; .reg .u16 %r876; .reg .u32 %r877; .reg .pred %r878; .reg .pred %r881; .reg .u32 %r882; .reg .u32 %r883; .reg .u32 %r884; .reg .u32 %r885; .reg .u32 %r886; .reg .u32 %r887; .reg .u16 %r888; .reg .u16 %r889; .reg .u16 %r890; .reg .u32 %r891; .reg .u16 %r892; .reg .pred %r893; .reg .u32 %r900; .reg .pred %r901; .reg .pred %r903; .reg .pred %r904; .reg .pred %r907; .reg .pred %r908; .reg .u32 %r909; .reg .pred %r910; .reg .f64 %r911; .reg .u64 %r913; .reg .u32 %r914; .reg .u32 %r915; .reg .u64 %r916; .reg .u64 %r917; .reg .u64 %r918; .reg .u32 %r922; .reg .u32 %r923; .reg .u64 %r926; .reg .pred %r927; .reg .pred %r928; .reg .pred %r929; .reg .pred %r930; .reg .pred %r931; .reg .pred %r932; .reg .u64 %r933; .reg .pred %r934; .reg .u32 %r935; .reg .u32 %r936; .reg .u32 %r937; .reg .u32 %r939; .reg .u32 %r940; .reg .u32 %r941; .reg .u16 %r942; .reg .u16 %r943; .reg .u16 %r944; .reg .u32 %r945; .reg .u16 %r946; .reg .pred %r947; .reg .u64 %r948; .reg .u32 %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u64 %r952; .reg .u64 %r953; .reg .u64 %r954; .reg .u64 %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .pred %r958; .reg .u32 %r961; .reg .u32 %r962; .reg .u16 %r965; mov.u64 %r330,%ar0; mov.f64 %r331,%ar1; mov.u32 %r332,%ar2; mov.u32 %r333,%ar3; mov.u64 %r334,%ar4; mov.u64 %r335,%ar5; mov.u64 %r336,%ar6; .loc 1 232 7 mov.b64 %r326,%r331; .loc 1 235 7 ld.u64 %r22,[%r330+96]; .loc 1 235 6 setp.eq.u64 %r337,%r22,0; @ %r337 bra $L19; .loc 1 237 35 ld.u32 %r23,[%r330+104]; .loc 1 237 33 st.u32 [%r22+8],%r23; .loc 1 238 42 mov.u32 %r339,1; shl.b32 %r338,%r339,%r23; .loc 1 238 38 st.u32 [%r22+12],%r338; .loc 1 239 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 240 29 mov.u64 %r342,0; st.u64 [%r330+96],%r342; $L19: mov.b64 %r343,%r331; shr.u64 %r344,%r343,32; cvt.u32.u64 %r153,%r344; .loc 1 243 6 setp.ge.s32 %r346,%r153,0; @ %r346 bra $L20; .loc 1 246 13 mov.u32 %r347,1; st.u32 [%r335],%r347; .loc 1 247 17 and.b32 %r153,%r153,2147483647; cvt.u64.u32 %r348,%r153; shl.b64 %r349,%r348,32; and.b64 %r350,%r326,4294967295; or.b64 %r326,%r350,%r349; .loc 1 263 13 mov.b64 %r270,%r326; bra $L21; $L20: .loc 1 250 11 mov.u32 %r352,0; st.u32 [%r335],%r352; mov.f64 %r270,%r331; $L21: .loc 1 254 18 and.b32 %r353,%r153,2146435072; .loc 1 254 6 setp.ne.u32 %r354,%r353,2146435072; @ %r354 bra $L22; .loc 1 260 14 mov.u32 %r355,9999; st.u32 [%r334],%r355; .loc 1 263 13 mov.b64 %r357,%r270; and.b64 %r356,%r357,4503599627370495; .loc 1 263 52 setp.eq.u64 %r358,%r356,0; @ %r358 bra $L23; bra $L259; $L184: cvta.const.u64 %r329,$LC0; .loc 1 269 17 add.u64 %r199,%r329,8; bra $L140; $L185: .loc 1 263 52 cvta.const.u64 %r329,$LC1; .loc 1 269 17 add.u64 %r199,%r329,3; $L140: .loc 1 267 7 st.u64 [%r336],%r199; bra $L18; $L22: .loc 1 278 6 setp.neu.f64 %r359,%r270,0d0000000000000000; @ %r359 bra $L26; .loc 1 280 14 mov.u32 %r360,1; st.u32 [%r334],%r360; .loc 1 282 10 setp.eq.u64 %r361,%r336,0; @ %r361 bra $L156; .loc 1 283 7 cvta.const.u64 %r362,$LC2+1; st.u64 [%r336],%r362; .loc 1 284 14 cvta.const.u64 %r329,$LC2; bra $L18; $L26: .loc 1 287 7 add.u64 %r367,%frame,4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r270; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r367; call (%value_in),__d2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r368,[%value_in]; } mov.u64 %r190,%r368; .loc 1 291 29 shr.u32 %r33,%r153,20; .loc 1 291 6 setp.eq.u32 %r369,%r33,0; @ %r369 bra $L27; .loc 1 294 12 mov.b64 %r327,%r270; .loc 1 296 18 and.b64 %r377,%r327,4503599627370495; or.b64 %r327,%r377,4607182418800017408; .loc 1 324 9 add.u32 %r175,%r33,-1023; .loc 1 336 17 ld.u32 %r269,[%frame+4]; .loc 1 330 14 mov.u32 %r189,0; bra $L28; $L27: .loc 1 336 17 ld.u32 %r269,[%frame+4]; ld.u32 %r379,[%frame]; add.u32 %r37,%r269,%r379; .loc 1 336 9 add.u32 %r205,%r37,1074; mov.b64 %r380,%r331; cvt.u32.u64 %r381,%r380; .loc 1 341 8 setp.le.s32 %r382,%r205,32; @ %r382 bra $L29; .loc 1 340 40 mov.u32 %r384,64; sub.u32 %r383,%r384,%r205; .loc 1 340 33 shl.b32 %r385,%r153,%r383; .loc 1 340 65 add.u32 %r386,%r37,1042; .loc 1 340 59 shr.u32 %r387,%r381,%r386; .loc 1 341 8 or.b32 %r200,%r385,%r387; bra $L30; $L29: .loc 1 341 28 mov.u32 %r389,32; sub.u32 %r388,%r389,%r205; .loc 1 341 8 shl.b32 %r200,%r381,%r388; $L30: .loc 1 343 12 cvt.rn.f64.u32 %r45,%r200; mov.b64 %r327,%r45; .loc 1 344 18 shr.u64 %r391,%r327,32; cvt.u32.u64 %r392,%r391; add.u32 %r393,%r392,-32505856; cvt.u64.u32 %r394,%r393; shl.b64 %r395,%r394,32; and.b64 %r396,%r327,4294967295; or.b64 %r327,%r396,%r395; .loc 1 345 9 add.u32 %r175,%r37,-1; .loc 1 346 14 mov.u32 %r189,1; $L28: .loc 1 352 14 mov.b64 %r399,%r327; mov.f64 %r400,0d3ff8000000000000; sub.f64 %r398,%r399,%r400; .loc 1 352 41 fma.rn.f64 %r50,%r398,0d3fd287a7636f4361,0d3fc68a288b60c8b3; .loc 1 352 63 cvt.rn.f64.s32 %r401,%r175; .loc 1 352 6 fma.rn.f64 %r206,%r401,0d3fd34413509f79fb,%r50; .loc 1 354 5 cvt.rzi.s32.f64 %r181,%r206; .loc 1 355 6 setp.lt.f64 %r402,%r206,0d0000000000000000; @ ! %r402 bra $L31; .loc 1 355 21 cvt.rn.f64.s32 %r403,%r181; .loc 1 355 15 setp.eq.f64 %r404,%r403,%r206; @ %r404 bra $L31; .loc 1 356 6 add.u32 %r181,%r181,-1; $L31: .loc 1 364 13 sub.u32 %r318,%r269,%r175; .loc 1 364 5 add.u32 %r187,%r318,-1; .loc 1 358 6 setp.gt.u32 %r405,%r181,22; @ %r405 bra $L157; .loc 1 360 21 cvta.const.u64 %r406,__mprec_tens; cvt.s64.s32 %r407,%r181; shl.b64 %r408,%r407,3; add.u64 %r409,%r406,%r408; .loc 1 360 10 ld.f64 %r410,[%r409]; setp.gt.f64 %r411,%r410,%r270; @ ! %r411 bra $L260; .loc 1 361 3 add.u32 %r181,%r181,-1; .loc 1 362 15 mov.u32 %r184,0; bra $L33; $L157: .loc 1 357 11 mov.u32 %r184,1; $L33: .loc 1 365 6 setp.ge.s32 %r412,%r187,0; @ %r412 bra $L158; $L152: .loc 1 372 10 mov.u32 %r413,1; sub.u32 %r172,%r413,%r318; .loc 1 373 10 mov.u32 %r187,0; bra $L36; $L158: .loc 1 367 10 mov.u32 %r172,0; $L36: .loc 1 375 6 setp.lt.s32 %r414,%r181,0; @ ! %r414 bra $L151; bra $L37; $L190: .loc 1 362 15 mov.u32 %r184,0; .loc 1 367 10 mov.u32 %r172,%r184; $L151: .loc 1 379 10 add.u32 %r187,%r187,%r181; mov.u32 %r261,%r181; .loc 1 377 10 mov.u32 %r173,0; bra $L38; $L37: .loc 1 383 10 sub.u32 %r172,%r172,%r181; .loc 1 384 10 neg.s32 %r173,%r181; mov.u32 %r261,%r181; .loc 1 385 10 mov.u32 %r181,0; $L38: .loc 1 387 6 setp.gt.u32 %r415,%r332,9; @ %r415 bra $L159; .loc 1 390 6 setp.le.s32 %r416,%r332,5; @ %r416 bra $L160; .loc 1 392 12 add.u32 %r332,%r332,-4; .loc 1 393 17 mov.u32 %r67,0; bra $L40; $L188: .loc 1 405 17 mov.u32 %r251,0; bra $L149; $L189: .loc 1 397 3 mov.u32 %r251,1; $L149: .loc 1 408 10 setp.le.s32 %r417,%r333,0; @ %r417 bra $L161; mov.u32 %r262,%r333; mov.u32 %r281,%r333; mov.u32 %r176,%r333; bra $L41; $L187: .loc 1 413 17 mov.u32 %r251,0; $L147: .loc 1 416 19 add.u32 %r262,%r333,%r261; .loc 1 416 9 add.u32 %r281,%r262,1; max.s32 %r176,%r281,1; $L41: .loc 1 423 32 mov.u32 %r418,0; st.u32 [%r330+104],%r418; .loc 1 423 77 cvt.s64.s32 %r284,%r176; setp.le.s32 %r419,%r176,31; @ %r419 bra $L162; mov.u32 %r207,1; .loc 1 422 5 mov.u32 %r241,4; $L43: .loc 1 425 28 mov.u32 %r58,%r207; .loc 1 424 10 add.u32 %r241,%r241,%r241; .loc 1 423 77 add.u32 %r207,%r58,1; .loc 1 423 73 cvt.s64.s32 %r421,%r241; add.u64 %r422,%r421,28; .loc 1 423 77 setp.le.u64 %r423,%r422,%r284; @ %r423 bra $L43; st.u32 [%r330+104],%r58; bra $L42; $L162: mov.u32 %r58,%r418; $L42: .loc 1 426 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r58; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r426,[%value_in]; } mov.u64 %r208,%r426; setp.ne.u64 %r427,%r426,0; @ %r427 bra $L44; $L145: cvta.const.u64 %r431,$LC3; mov.u64 %r430,0; mov.u32 %r429,426; cvta.const.u64 %r428,$LC4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r428; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r429; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r430; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r431; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L44: .loc 1 426 25 st.u64 [%r330+96],%r426; .loc 1 429 17 mov.u32 %r61,%r281; set.u32.le.u32 %r433,%r281,14; neg.s32 %r434,%r433; mov.u32 %r432,%r434; .loc 1 429 38 mov.u32 %r435,%r67; cvt.u16.u8 %r965,%r435; mov.u16 %r437,%r965; and.b16 %r436,%r437,1; cvt.u32.u16 %r438,%r436; cvt.u16.u8 %r965,%r432; mov.u16 %r440,%r965; cvt.u16.u8 %r965,%r438; mov.u16 %r441,%r965; and.b16 %r439,%r440,%r441; cvt.u32.u16 %r442,%r439; cvt.u32.u8 %r64,%r442; .loc 1 429 6 setp.eq.u32 %r443,%r64,0; @ %r443 bra $L45; .loc 1 438 10 setp.le.s32 %r444,%r261,0; @ %r444 bra $L46; .loc 1 440 7 cvta.const.u64 %r445,__mprec_tens; .loc 1 440 16 and.b32 %r446,%r261,15; .loc 1 440 7 cvt.s64.s32 %r447,%r446; shl.b64 %r448,%r447,3; add.u64 %r449,%r445,%r448; ld.f64 %r195,[%r449]; .loc 1 441 6 shr.s32 %r182,%r261,4; .loc 1 442 10 and.b32 %r450,%r182,16; .loc 1 442 7 setp.eq.u32 %r451,%r450,0; @ %r451 bra $L163; .loc 1 445 10 and.b32 %r182,%r182,15; .loc 1 446 22 cvta.const.u64 %r452,__mprec_bigtens; .loc 1 446 12 ld.f64 %r453,[%r452+32]; div.rn.f64 %r69,%r270,%r453; .loc 1 447 12 mov.u32 %r178,3; bra $L47; $L163: mov.f64 %r69,%r270; .loc 1 437 12 mov.u32 %r178,2; $L47: .loc 1 449 11 setp.eq.u32 %r454,%r182,0; @ %r454 bra $L48; cvta.const.u64 %r155,__mprec_bigtens; $L50: .loc 1 450 12 and.b32 %r455,%r182,1; .loc 1 450 9 setp.eq.u32 %r456,%r455,0; @ %r456 bra $L49; .loc 1 452 7 add.u32 %r178,%r178,1; .loc 1 453 6 ld.f64 %r457,[%r155]; mul.f64 %r195,%r195,%r457; $L49: .loc 1 449 16 shr.s32 %r182,%r182,1; .loc 1 449 11 add.u64 %r155,%r155,8; setp.ne.u32 %r458,%r182,0; @ %r458 bra $L50; $L48: .loc 1 455 8 div.rn.f64 %r279,%r69,%r195; bra $L51; $L46: .loc 1 457 15 setp.eq.u32 %r459,%r261,0; @ %r459 bra $L164; .loc 1 457 20 neg.s32 %r210,%r261; .loc 1 459 15 cvta.const.u64 %r460,__mprec_tens; .loc 1 459 19 and.b32 %r461,%r210,15; .loc 1 459 15 cvt.s64.s32 %r462,%r461; shl.b64 %r463,%r462,3; add.u64 %r464,%r460,%r463; .loc 1 459 8 ld.f64 %r465,[%r464]; mul.f64 %r74,%r270,%r465; .loc 1 460 11 shr.s32 %r211,%r210,4; .loc 1 460 22 setp.eq.u32 %r466,%r211,0; @ %r466 bra $L165; cvta.const.u64 %r218,__mprec_bigtens; mov.f64 %r279,%r74; mov.u32 %r242,0; .loc 1 437 12 mov.u32 %r178,2; $L53: .loc 1 461 12 and.b32 %r467,%r211,1; .loc 1 461 9 setp.eq.u32 %r468,%r467,0; @ %r468 bra $L52; .loc 1 463 7 add.u32 %r178,%r178,1; .loc 1 464 7 ld.f64 %r469,[%r218]; mul.f64 %r279,%r279,%r469; mov.u32 %r242,%r64; $L52: .loc 1 460 27 shr.s32 %r211,%r211,1; .loc 1 460 22 add.u64 %r218,%r218,8; setp.ne.u32 %r470,%r211,0; @ %r470 bra $L53; setp.eq.u32 %r471,%r242,0; selp.f64 %r279,%r74,%r279,%r471; bra $L51; $L164: mov.f64 %r279,%r270; .loc 1 437 12 mov.u32 %r178,2; bra $L51; $L165: .loc 1 460 22 mov.f64 %r279,%r74; .loc 1 437 12 mov.u32 %r178,2; $L51: .loc 1 467 10 setp.eq.u32 %r472,%r184,0; @ %r472 bra $L55; .loc 1 467 19 setp.lt.f64 %r473,%r279,0d3ff0000000000000; @ ! %r473 bra $L55; .loc 1 467 31 setp.eq.u32 %r474,%r281,0; @ %r474 bra $L57; .loc 1 469 7 setp.le.s32 %r475,%r262,0; @ %r475 bra $L58; .loc 1 472 5 add.u32 %r246,%r261,-1; .loc 1 473 8 mul.f64 %r279,%r279,0d4024000000000000; .loc 1 474 8 add.u32 %r476,%r178,1; .loc 1 476 20 cvt.rn.f64.s32 %r477,%r476; .loc 1 476 26 fma.rn.f64 %r294,%r279,%r477,0d401c000000000000; .loc 1 476 13 mov.b64 %r328,%r294; .loc 1 477 19 shr.u64 %r479,%r328,32; cvt.u32.u64 %r480,%r479; add.u32 %r481,%r480,-54525952; cvt.u64.u32 %r482,%r481; shl.b64 %r483,%r482,32; and.b64 %r484,%r328,4294967295; or.b64 %r328,%r484,%r483; mov.u32 %r297,%r262; bra $L59; $L55: .loc 1 476 20 cvt.rn.f64.s32 %r486,%r178; .loc 1 476 26 fma.rn.f64 %r78,%r486,%r279,0d401c000000000000; .loc 1 476 13 mov.b64 %r328,%r78; .loc 1 477 19 shr.u64 %r488,%r328,32; cvt.u32.u64 %r489,%r488; add.u32 %r490,%r489,-54525952; cvt.u64.u32 %r491,%r490; shl.b64 %r492,%r491,32; and.b64 %r493,%r328,4294967295; or.b64 %r328,%r493,%r492; .loc 1 478 10 setp.ne.u32 %r495,%r281,0; @ %r495 bra $L167; $L144: .loc 1 481 8 mov.f64 %r496,0d4014000000000000; sub.f64 %r80,%r279,%r496; .loc 1 482 17 mov.b64 %r81,%r328; .loc 1 482 7 setp.gt.f64 %r497,%r80,%r81; @ %r497 bra $L168; .loc 1 484 14 neg.f64 %r498,%r81; .loc 1 484 7 setp.lt.f64 %r499,%r80,%r498; @ %r499 bra $L169; bra $L58; $L167: mov.u32 %r246,%r261; mov.u32 %r297,%r281; $L59: .loc 1 497 10 cvt.rzi.s32.f64 %r310,%r279; .loc 1 499 19 mov.u32 %r500,%r310; cvt.u16.u8 %r965,%r500; mov.u16 %r502,%r965; add.u16 %r501,%r502,48; cvt.u32.u16 %r503,%r501; .loc 1 494 38 mov.b64 %r315,%r328; .loc 1 494 22 cvta.const.u64 %r504,__mprec_tens; .loc 1 494 28 add.u32 %r505,%r297,-1; .loc 1 494 22 cvt.s64.s32 %r506,%r505; shl.b64 %r507,%r506,3; add.u64 %r508,%r504,%r507; ld.f64 %r317,[%r508]; .loc 1 498 12 cvt.rn.f64.s32 %r509,%r310; sub.f64 %r94,%r279,%r509; .loc 1 499 10 add.u64 %r196,%r426,1; .loc 1 489 10 setp.eq.u32 %r510,%r251,0; @ %r510 bra $L62; .loc 1 494 16 mov.f64 %r512,0d3fe0000000000000; div.rn.f64 %r511,%r512,%r317; .loc 1 494 33 sub.f64 %r89,%r511,%r315; .loc 1 499 13 st.u8 [%r426],%r503; .loc 1 500 11 setp.gt.f64 %r514,%r89,%r94; @ ! %r514 bra $L261; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r426; .loc 1 499 10 mov.u64 %r208,%r196; bra $L65; $L261: mov.u64 %r203,%r196; .loc 1 495 11 mov.u32 %r215,0; .loc 1 502 15 mov.f64 %r516,0d3ff0000000000000; $L67: mov.u64 %r196,%r203; sub.f64 %r515,%r516,%r94; .loc 1 502 11 setp.lt.f64 %r517,%r515,%r89; @ %r517 bra $L77; .loc 1 504 11 add.u32 %r215,%r215,1; setp.ge.s32 %r518,%r215,%r297; @ %r518 bra $L58; .loc 1 506 14 mul.f64 %r89,%r89,0d4024000000000000; .loc 1 507 12 mul.f64 %r90,%r94,0d4024000000000000; .loc 1 497 10 cvt.rzi.s32.f64 %r214,%r90; .loc 1 498 12 cvt.rn.f64.s32 %r519,%r214; sub.f64 %r94,%r90,%r519; add.u64 %r203,%r203,1; .loc 1 499 19 mov.u32 %r520,%r214; cvt.u16.u8 %r965,%r520; mov.u16 %r522,%r965; add.u16 %r521,%r522,48; st.u8 [%r196],%r521; .loc 1 500 11 setp.lt.f64 %r523,%r94,%r89; @ ! %r523 bra $L67; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r426; mov.u64 %r208,%r203; bra $L65; $L62: .loc 1 514 10 mul.f64 %r91,%r315,%r317; .loc 1 519 13 st.u8 [%r426],%r503; .loc 1 520 11 setp.ne.u32 %r525,%r297,1; @ %r525 bra $L69; $L73: .loc 1 522 19 add.f64 %r526,%r91,0d3fe0000000000000; .loc 1 522 8 setp.lt.f64 %r527,%r526,%r94; @ %r527 bra $L77; .loc 1 524 24 mov.f64 %r529,0d3fe0000000000000; sub.f64 %r528,%r529,%r91; .loc 1 524 13 setp.gt.f64 %r530,%r528,%r94; @ ! %r530 bra $L58; $L71: mov.u64 %r52,%r196; .loc 1 526 21 add.u64 %r196,%r196,-1; ld.u8 %r532,[%r196]; cvt.s16.s8 %r531,%r532; setp.eq.u16 %r533,%r531,48; @ %r533 bra $L71; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r426; mov.u64 %r208,%r52; bra $L65; $L69: mov.u64 %r171,%r196; add.u32 %r534,%r297,-2; cvt.u64.u32 %r299,%r534; add.u64 %r535,%r426,2; add.u64 %r147,%r535,%r299; $L72: .loc 1 515 26 mul.f64 %r101,%r94,0d4024000000000000; .loc 1 517 10 cvt.rzi.s32.f64 %r213,%r101; .loc 1 518 12 cvt.rn.f64.s32 %r536,%r213; sub.f64 %r94,%r101,%r536; .loc 1 519 19 mov.u32 %r537,%r213; cvt.u16.u8 %r965,%r537; mov.u16 %r539,%r965; add.u16 %r538,%r539,48; st.u8 [%r171],%r538; .loc 1 520 11 add.u64 %r171,%r171,1; setp.ne.u64 %r540,%r147,%r171; @ %r540 bra $L72; .loc 1 519 10 add.u64 %r541,%r299,1; add.u64 %r196,%r196,%r541; bra $L73; $L58: .loc 1 538 11 mov.b64 %r326,%r270; $L45: .loc 1 545 10 ld.u32 %r102,[%frame]; .loc 1 545 6 not.b32 %r543,%r102; shr.u32 %r544,%r543,31; mov.u32 %r545,%r544; .loc 1 545 15 set.u32.le.s32 %r547,%r261,14; neg.s32 %r548,%r547; mov.u32 %r546,%r548; cvt.u16.u8 %r965,%r545; mov.u16 %r550,%r965; cvt.u16.u8 %r965,%r546; mov.u16 %r551,%r965; and.b16 %r549,%r550,%r551; cvt.u32.u16 %r552,%r549; cvt.u16.u8 %r553,%r552; setp.eq.u16 %r554,%r553,0; @ %r554 bra $L74; .loc 1 548 10 cvta.const.u64 %r555,__mprec_tens; cvt.s64.s32 %r556,%r261; shl.b64 %r557,%r556,3; add.u64 %r558,%r555,%r557; ld.f64 %r216,[%r558]; .loc 1 549 19 shr.u32 %r560,%r333,31; mov.u32 %r561,%r560; .loc 1 549 31 set.u32.le.s32 %r563,%r281,0; neg.s32 %r564,%r563; mov.u32 %r562,%r564; .loc 1 549 23 cvt.u16.u8 %r965,%r561; mov.u16 %r566,%r965; cvt.u16.u8 %r965,%r562; mov.u16 %r567,%r965; and.b16 %r565,%r566,%r567; cvt.u32.u16 %r568,%r565; .loc 1 549 10 cvt.u16.u8 %r569,%r568; setp.eq.u16 %r570,%r569,0; @ %r570 bra $L75; .loc 1 552 7 setp.ne.u32 %r571,%r281,0; @ %r571 bra $L170; .loc 1 552 29 mul.f64 %r572,%r216,0d4014000000000000; .loc 1 552 17 mov.b64 %r573,%r326; setp.ge.f64 %r574,%r572,%r573; @ %r574 bra $L171; .loc 1 551 6 mov.u64 %r277,0; .loc 1 551 12 mov.u64 %r192,%r277; bra $L60; $L75: .loc 1 558 9 mov.b64 %r243,%r326; .loc 1 558 12 div.rn.f64 %r575,%r243,%r216; .loc 1 558 6 cvt.rzi.s32.f64 %r217,%r575; .loc 1 559 13 cvt.rn.f64.s32 %r576,%r217; .loc 1 559 8 neg.f64 %r577,%r576; fma.rn.f64 %r110,%r577,%r216,%r243; .loc 1 568 6 add.u64 %r196,%r208,1; .loc 1 568 15 mov.u32 %r578,%r217; cvt.u16.u8 %r965,%r578; mov.u16 %r580,%r965; add.u16 %r579,%r580,48; st.u8 [%r208],%r579; .loc 1 569 7 setp.ne.u32 %r581,%r281,1; @ %r581 bra $L76; $L81: .loc 1 571 12 add.f64 %r115,%r110,%r110; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 572 17 setp.gt.f64 %r582,%r115,%r216; @ %r582 bra $L172; .loc 1 572 29 setp.neu.f64 %r583,%r115,%r216; @ %r583 bra $L173; .loc 1 572 51 and.b32 %r584,%r217,1; .loc 1 572 45 setp.ne.u32 %r585,%r584,0; @ %r585 bra $L174; mov.u64 %r329,%r208; mov.u64 %r208,%r196; bra $L65; $L79: .loc 1 576 10 setp.ne.u64 %r586,%r196,%r208; @ %r586 bra $L77; .loc 1 578 5 add.u32 %r246,%r246,1; .loc 1 580 4 mov.u32 %r305,49; bra $L78; $L172: .loc 1 574 3 mov.u32 %r246,%r261; bra $L77; $L174: mov.u32 %r246,%r261; $L66: $L77: mov.u64 %r49,%r196; .loc 1 575 17 add.u64 %r196,%r196,-1; .loc 1 575 12 ld.s8 %r117,[%r196]; .loc 1 575 17 cvt.u16.u32 %r587,%r117; setp.eq.u16 %r588,%r587,57; @ %r588 bra $L79; .loc 1 582 5 add.u16 %r590,%r587,1; cvt.u32.u16 %r592,%r590; cvt.s32.s8 %r305,%r592; $L78: cvt.u32.u32 %r593,%r305; st.u8 [%r196],%r593; .loc 1 854 14 add.u32 %r306,%r246,1; mov.u64 %r329,%r208; mov.u64 %r208,%r49; bra $L65; $L76: mov.u64 %r276,%r196; add.u32 %r594,%r61,-2; cvt.u64.u32 %r595,%r594; add.u64 %r596,%r208,2; add.u64 %r264,%r595,%r596; $L82: mov.u64 %r282,%r276; .loc 1 586 14 mul.f64 %r118,%r110,0d4024000000000000; .loc 1 586 7 setp.neu.f64 %r597,%r118,0d0000000000000000; @ %r597 bra $L80; .loc 1 854 14 add.u32 %r306,%r261,1; mov.u64 %r329,%r208; mov.u64 %r208,%r276; bra $L65; $L80: .loc 1 558 12 div.rn.f64 %r598,%r118,%r216; .loc 1 558 6 cvt.rzi.s32.f64 %r217,%r598; .loc 1 559 13 cvt.rn.f64.s32 %r599,%r217; .loc 1 559 8 neg.f64 %r600,%r599; fma.rn.f64 %r110,%r600,%r216,%r118; add.u64 %r276,%r276,1; mov.u64 %r196,%r276; .loc 1 568 15 mov.u32 %r601,%r217; cvt.u16.u8 %r965,%r601; mov.u16 %r603,%r965; add.u16 %r602,%r603,48; st.u8 [%r282],%r602; .loc 1 569 7 setp.eq.u64 %r604,%r264,%r276; @ ! %r604 bra $L82; bra $L81; $L74: .loc 1 595 6 setp.eq.u32 %r958,%r251,0; @ %r958 bra $L175; $L265: .loc 1 597 10 setp.gt.s32 %r606,%r332,1; @ %r606 bra $L84; .loc 1 601 45 setp.eq.u32 %r607,%r189,0; @ %r607 bra $L85; add.u32 %r222,%r102,1075; .loc 1 627 10 add.u32 %r187,%r187,%r222; mov.u32 %r186,%r173; .loc 1 592 6 mov.u32 %r185,%r172; add.u32 %r172,%r172,%r222; bra $L86; $L85: .loc 1 601 45 mov.u32 %r608,54; ld.u32 %r609,[%frame+4]; sub.u32 %r221,%r608,%r609; .loc 1 627 10 add.u32 %r187,%r187,%r221; mov.u32 %r186,%r173; .loc 1 592 6 mov.u32 %r185,%r172; .loc 1 627 10 add.u32 %r172,%r172,%r221; bra $L86; $L84: .loc 1 611 6 add.u32 %r219,%r281,-1; .loc 1 612 7 setp.lt.s32 %r610,%r173,%r219; @ %r610 bra $L87; .loc 1 613 9 sub.u32 %r186,%r173,%r219; bra $L88; $L87: .loc 1 616 11 vsub.u32.u32.u32.add %r181,%r219,%r173,%r181; mov.u32 %r173,%r219; .loc 1 618 11 mov.u32 %r186,0; $L88: .loc 1 620 7 setp.lt.s32 %r612,%r281,0; @ %r612 bra $L89; .loc 1 627 10 add.u32 %r187,%r187,%r281; .loc 1 592 6 mov.u32 %r185,%r172; .loc 1 627 10 add.u32 %r172,%r172,%r281; bra $L86; $L89: .loc 1 622 11 sub.u32 %r185,%r172,%r281; $L86: .loc 1 628 13 mov.u32 %r614,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r614; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r615,[%value_in]; } mov.u64 %r192,%r615; bra $L83; $L175: mov.u32 %r186,%r173; .loc 1 592 6 mov.u32 %r185,%r172; .loc 1 594 7 mov.u64 %r192,0; $L83: .loc 1 630 10 set.u32.gt.s32 %r617,%r185,0; neg.s32 %r618,%r617; mov.u32 %r616,%r618; .loc 1 630 20 set.u32.gt.s32 %r620,%r187,0; neg.s32 %r621,%r620; mov.u32 %r619,%r621; .loc 1 630 14 cvt.u16.u8 %r965,%r616; mov.u16 %r623,%r965; cvt.u16.u8 %r965,%r619; mov.u16 %r624,%r965; and.b16 %r622,%r623,%r624; cvt.u32.u16 %r625,%r622; .loc 1 630 6 cvt.u16.u8 %r626,%r625; setp.eq.u16 %r627,%r626,0; @ %r627 bra $L90; .loc 1 632 9 min.s32 %r223,%r185,%r187; .loc 1 633 10 sub.u32 %r172,%r172,%r223; .loc 1 634 10 sub.u32 %r185,%r185,%r223; .loc 1 635 10 sub.u32 %r187,%r187,%r223; $L90: .loc 1 637 6 setp.eq.u32 %r628,%r173,0; @ %r628 bra $L91; .loc 1 639 10 @ %r958 bra $L92; .loc 1 641 7 setp.le.s32 %r630,%r186,0; @ %r630 bra $L93; .loc 1 643 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r186; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r634,[%value_in]; } mov.u64 %r192,%r634; .loc 1 644 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r368; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r638,[%value_in]; } .loc 1 645 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r368; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 646 10 mov.u64 %r190,%r638; $L93: .loc 1 648 17 sub.u32 %r225,%r173,%r186; .loc 1 648 13 setp.eq.u32 %r641,%r173,%r186; @ %r641 bra $L91; .loc 1 649 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r225; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r645,[%value_in]; } mov.u64 %r190,%r645; bra $L91; $L92: .loc 1 652 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r368; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r173; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r649,[%value_in]; } mov.u64 %r190,%r649; $L91: .loc 1 654 7 mov.u32 %r651,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r651; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r652,[%value_in]; } mov.u64 %r277,%r652; .loc 1 655 6 setp.le.s32 %r653,%r181,0; @ %r653 bra $L94; .loc 1 656 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r181; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r657,[%value_in]; } mov.u64 %r277,%r657; .loc 1 661 6 setp.le.s32 %r658,%r332,1; @ %r658 bra $L95; .loc 1 660 13 mov.u32 %r188,0; bra $L96; $L94: .loc 1 661 6 setp.gt.s32 %r659,%r332,1; @ %r659 bra $L176; .loc 1 663 22 and.b64 %r660,%r326,4503599627370495; .loc 1 663 10 setp.ne.u64 %r661,%r660,0; @ %r661 bra $L177; .loc 1 665 7 shr.u64 %r662,%r326,32; cvt.u32.u64 %r663,%r662; .loc 1 665 17 and.b32 %r664,%r663,2146435072; .loc 1 665 4 setp.eq.u32 %r665,%r664,0; @ %r665 bra $L178; $L155: .loc 1 670 7 add.u32 %r172,%r172,1; .loc 1 671 7 add.u32 %r187,%r187,1; .loc 1 672 14 mov.u32 %r188,1; bra $L97; $L176: .loc 1 660 13 mov.u32 %r188,0; bra $L97; $L177: mov.u32 %r188,0; bra $L97; $L178: mov.u32 %r188,%r664; $L97: .loc 1 685 53 setp.eq.u32 %r666,%r181,0; @ %r666 bra $L179; $L96: .loc 1 685 47 ld.u32 %r669,[%r277+20]; add.u32 %r668,%r669,-1; .loc 1 685 24 cvt.s64.s32 %r670,%r668; add.u64 %r671,%r670,4; shl.b64 %r672,%r671,2; add.u64 %r673,%r277,%r672; ld.u32 %r667,[%r673+8]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r667; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r675,[%value_in]; } .loc 1 685 53 mov.u32 %r676,32; sub.u32 %r226,%r676,%r675; bra $L98; $L142: .loc 1 686 7 mov.u32 %r677,32; sub.u32 %r227,%r677,%r288; .loc 1 691 6 setp.le.s32 %r678,%r227,4; @ %r678 bra $L99; .loc 1 693 9 mov.u32 %r679,28; sub.u32 %r228,%r679,%r288; .loc 1 694 10 add.u32 %r172,%r172,%r228; .loc 1 695 10 add.u32 %r185,%r185,%r228; .loc 1 696 10 add.u32 %r187,%r187,%r228; bra $L100; $L99: .loc 1 698 11 setp.eq.u32 %r680,%r227,4; @ %r680 bra $L100; .loc 1 700 9 mov.u32 %r681,60; sub.u32 %r43,%r681,%r288; $L143: .loc 1 701 10 add.u32 %r172,%r172,%r43; .loc 1 702 10 add.u32 %r185,%r185,%r43; .loc 1 703 10 add.u32 %r187,%r187,%r43; $L100: .loc 1 705 6 setp.le.s32 %r682,%r172,0; @ %r682 bra $L101; .loc 1 706 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r172; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r686,[%value_in]; } mov.u64 %r190,%r686; $L101: .loc 1 707 6 setp.le.s32 %r687,%r187,0; @ %r687 bra $L102; .loc 1 708 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r187; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r691,[%value_in]; } mov.u64 %r277,%r691; $L102: .loc 1 720 25 set.u32.gt.s32 %r692,%r332,2; neg.s32 %r309,%r692; .loc 1 709 6 setp.eq.u32 %r695,%r184,0; @ %r695 bra $L103; .loc 1 711 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r698,[%value_in]; } .loc 1 711 10 setp.ge.s32 %r699,%r698,0; @ %r699 bra $L103; .loc 1 713 5 add.u32 %r229,%r261,-1; .loc 1 714 8 mov.u32 %r703,0; mov.u32 %r702,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r702; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r703; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r704,[%value_in]; } mov.u64 %r190,%r704; .loc 1 720 12 set.u32.le.s32 %r706,%r262,0; neg.s32 %r707,%r706; mov.u32 %r705,%r707; .loc 1 720 17 cvt.u16.u8 %r965,%r705; mov.u16 %r709,%r965; cvt.u16.u32 %r710,%r309; and.b16 %r708,%r709,%r710; cvt.u32.u16 %r711,%r708; cvt.u32.u8 %r308,%r711; .loc 1 715 7 @ %r958 bra $L104; .loc 1 716 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r702; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r703; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r717,[%value_in]; } mov.u64 %r192,%r717; .loc 1 720 6 setp.ne.u32 %r718,%r308,0; @ %r718 bra $L180; .loc 1 713 5 mov.u32 %r261,%r229; .loc 1 720 6 mov.u32 %r281,%r262; bra $L106; $L103: .loc 1 720 12 set.u32.le.s32 %r720,%r281,0; neg.s32 %r721,%r720; mov.u32 %r719,%r721; .loc 1 720 17 cvt.u16.u8 %r965,%r719; mov.u16 %r723,%r965; cvt.u16.u32 %r724,%r309; and.b16 %r722,%r723,%r724; cvt.u32.u16 %r725,%r722; .loc 1 720 6 cvt.u16.u8 %r726,%r725; setp.eq.u16 %r727,%r726,0; @ ! %r727 bra $L105; bra $L107; $L180: .loc 1 713 5 mov.u32 %r261,%r229; .loc 1 720 6 mov.u32 %r281,%r262; bra $L105; $L186: .loc 1 713 5 mov.u32 %r261,%r229; .loc 1 720 6 mov.u32 %r281,%r262; $L105: .loc 1 722 10 setp.ne.u32 %r728,%r281,0; @ %r728 bra $L61; .loc 1 722 35 mov.u32 %r731,5; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r731; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r281; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r733,[%value_in]; } mov.u64 %r277,%r733; .loc 1 722 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r736,[%value_in]; } .loc 1 722 20 setp.gt.s32 %r737,%r736,0; @ %r737 bra $L60; bra $L61; $L169: .loc 1 480 6 mov.u64 %r277,0; .loc 1 480 12 mov.u64 %r192,%r277; bra $L61; $L170: .loc 1 551 6 mov.u64 %r277,0; .loc 1 551 12 mov.u64 %r192,%r277; bra $L61; $L171: .loc 1 551 6 mov.u64 %r277,0; .loc 1 551 12 mov.u64 %r192,%r277; $L61: .loc 1 726 6 not.b32 %r239,%r333; .loc 1 727 4 mov.u64 %r329,%r208; bra $L108; $L168: .loc 1 480 6 mov.u64 %r277,0; .loc 1 480 12 mov.u64 %r192,%r277; $L60: .loc 1 730 12 mov.u32 %r738,49; st.u8 [%r208],%r738; .loc 1 731 8 add.u32 %r239,%r261,1; .loc 1 732 7 mov.u64 %r329,%r208; .loc 1 730 9 add.u64 %r208,%r208,1; .loc 1 732 7 bra $L108; $L107: .loc 1 734 6 @ %r958 bra $L109; $L106: .loc 1 736 10 setp.le.s32 %r740,%r185,0; @ %r740 bra $L110; .loc 1 737 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r185; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r744,[%value_in]; } mov.u64 %r192,%r744; $L110: .loc 1 744 10 setp.eq.u32 %r745,%r188,0; @ %r745 bra $L181; .loc 1 746 10 ld.u32 %r748,[%r192+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r748; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r749,[%value_in]; } setp.ne.u64 %r750,%r749,0; @ %r750 bra $L112; cvta.const.u64 %r754,$LC3; mov.u32 %r752,746; cvta.const.u64 %r751,$LC4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r751; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r752; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r749; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r754; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L112: .loc 1 747 4 ld.s32 %r758,[%r192+20]; add.u64 %r759,%r758,2; shl.b64 %r760,%r759,2; add.u64 %r761,%r192,16; add.u64 %r762,%r749,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r762; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r761; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r760; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r763,[%value_in]; } .loc 1 748 10 mov.u32 %r766,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r749; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r766; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r767,[%value_in]; } mov.u64 %r194,%r767; bra $L111; $L181: mov.u64 %r194,%r192; $L111: mov.u64 %r258,%r208; add.u32 %r768,%r281,-1; cvt.u64.u32 %r769,%r768; add.u64 %r252,%r769,%r208; .loc 1 762 30 cvt.u32.u64 %r961,%r326; .loc 1 762 40 and.b32 %r962,%r961,1; $L128: .loc 1 753 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r772,[%value_in]; } .loc 1 753 8 add.u32 %r174,%r772,48; .loc 1 757 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r775,[%value_in]; } .loc 1 758 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r194; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r779,[%value_in]; } .loc 1 759 26 ld.u32 %r780,[%r779+16]; setp.ne.u32 %r781,%r780,0; @ %r781 bra $L113; .loc 1 759 28 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r779; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r784,[%value_in]; } mov.u32 %r233,%r784; .loc 1 760 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r779; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 762 16 or.b32 %r790,%r784,%r332; .loc 1 762 25 or.b32 %r791,%r962,%r790; setp.ne.u32 %r792,%r791,0; @ %r792 bra $L114; .loc 1 764 11 setp.eq.u32 %r793,%r174,57; @ ! %r793 bra $L262; add.u64 %r957,%r258,1; bra $L115; $L262: .loc 1 766 11 setp.le.s32 %r794,%r775,0; @ %r794 bra $L116; .loc 1 767 6 add.u32 %r174,%r772,49; $L116: .loc 1 768 10 add.u64 %r198,%r258,1; .loc 1 768 13 st.u8 [%r258],%r174; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 769 8 mov.u64 %r191,%r192; mov.u64 %r192,%r194; bra $L117; $L114: add.u64 %r198,%r258,1; mov.u64 %r957,%r198; .loc 1 772 13 setp.lt.s32 %r795,%r775,0; @ %r795 bra $L118; .loc 1 772 35 or.b32 %r799,%r775,%r332; .loc 1 774 8 or.b32 %r800,%r962,%r799; setp.ne.u32 %r801,%r800,0; @ %r801 bra $L119; $L118: .loc 1 778 11 setp.le.s32 %r802,%r233,0; @ %r802 bra $L120; .loc 1 780 9 mov.u32 %r805,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r805; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r806,[%value_in]; } mov.u64 %r190,%r806; .loc 1 781 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r809,[%value_in]; } .loc 1 782 21 setp.gt.s32 %r810,%r809,0; @ %r810 bra $L121; .loc 1 782 32 setp.ne.u32 %r811,%r809,0; @ %r811 bra $L120; .loc 1 782 54 and.b32 %r812,%r174,1; .loc 1 782 46 setp.eq.u32 %r813,%r812,0; @ %r813 bra $L120; $L121: .loc 1 783 9 setp.eq.u32 %r814,%r174,57; @ %r814 bra $L115; .loc 1 783 15 add.u32 %r174,%r772,49; $L120: .loc 1 786 13 st.u8 [%r258],%r174; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 787 8 mov.u64 %r191,%r192; mov.u64 %r192,%r194; bra $L117; $L119: .loc 1 789 7 setp.le.s32 %r815,%r233,0; @ %r815 bra $L122; .loc 1 791 11 setp.ne.u32 %r816,%r174,57; @ %r816 bra $L123; $L115: .loc 1 794 7 mov.u64 %r198,%r957; .loc 1 794 10 mov.u32 %r817,57; st.u8 [%r258],%r817; .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 795 5 mov.u64 %r191,%r192; mov.u64 %r192,%r194; mov.u32 %r300,57; bra $L124; $L123: .loc 1 854 14 add.u32 %r306,%r261,1; .loc 1 797 19 mov.u32 %r818,%r174; cvt.u16.u8 %r965,%r818; mov.u16 %r820,%r965; add.u16 %r819,%r820,1; st.u8 [%r258],%r819; .loc 1 798 8 mov.u64 %r191,%r192; mov.u64 %r192,%r194; bra $L117; $L122: .loc 1 800 9 st.u8 [%r258],%r174; .loc 1 801 7 setp.eq.u64 %r821,%r252,%r258; @ %r821 bra $L125; .loc 1 803 8 mov.u32 %r825,0; mov.u32 %r824,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r826,[%value_in]; } mov.u64 %r190,%r826; .loc 1 804 7 setp.ne.u64 %r827,%r192,%r194; @ %r827 bra $L126; .loc 1 805 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r832,[%value_in]; } mov.u64 %r192,%r832; mov.u64 %r194,%r192; bra $L127; $L126: .loc 1 808 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r837,[%value_in]; } mov.u64 %r192,%r837; .loc 1 809 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r194; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r824; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r825; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r842,[%value_in]; } mov.u64 %r194,%r842; $L127: .loc 1 753 8 mov.u64 %r258,%r957; bra $L128; $L109: .loc 1 854 14 add.u32 %r306,%r261,1; $L141: .loc 1 720 6 mov.u64 %r249,0; $L133: .loc 1 816 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r845,[%value_in]; } .loc 1 816 13 add.u32 %r174,%r845,48; .loc 1 816 7 add.u64 %r846,%r208,%r249; st.u8 [%r846],%r174; .loc 1 817 5 add.u64 %r249,%r249,1; cvt.u32.u64 %r847,%r249; setp.lt.s32 %r848,%r847,%r281; @ %r848 bra $L129; .loc 1 816 4 setp.le.s32 %r850,%r281,0; @ %r850 bra $L130; add.u32 %r851,%r281,-1; cvt.u64.u32 %r852,%r851; add.u64 %r849,%r852,1; bra $L131; $L130: mov.u64 %r849,1; $L131: add.u64 %r198,%r208,%r849; .loc 1 594 13 mov.u64 %r191,0; bra $L132; $L129: .loc 1 819 6 mov.u32 %r856,0; mov.u32 %r855,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r855; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r856; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r857,[%value_in]; } mov.u64 %r190,%r857; .loc 1 816 7 bra $L133; $L125: .loc 1 854 14 add.u32 %r306,%r261,1; mov.u64 %r191,%r192; mov.u64 %r192,%r194; $L132: .loc 1 824 7 mov.u32 %r860,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r860; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r861,[%value_in]; } mov.u64 %r190,%r861; .loc 1 825 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r190; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r864,[%value_in]; } .loc 1 826 6 setp.gt.s32 %r865,%r864,0; @ %r865 bra $L134; .loc 1 826 15 setp.ne.u32 %r866,%r864,0; @ %r866 bra $L239; .loc 1 826 36 and.b32 %r867,%r174,1; .loc 1 826 28 setp.eq.u32 %r868,%r867,0; @ %r868 bra $L239; .loc 1 840 14 ld.s8 %r300,[%r198+-1]; bra $L124; $L138: .loc 1 830 5 add.u64 %r263,%r263,-1; setp.eq.u64 %r869,%r956,%r208; @ %r869 bra $L136; .loc 1 829 14 ld.s8 %r300,[%r263]; mov.u64 %r198,%r956; add.u64 %r956,%r956,-1; bra $L137; $L136: .loc 1 833 11 mov.u32 %r870,49; st.u8 [%r208],%r870; .loc 1 854 14 add.u32 %r306,%r306,1; .loc 1 834 6 bra $L117; $L134: .loc 1 840 14 ld.s8 %r300,[%r198+-1]; $L124: add.u64 %r956,%r198,-1; mov.u64 %r263,%r956; $L137: .loc 1 829 19 cvt.u16.u32 %r871,%r300; setp.eq.u16 %r872,%r871,57; @ %r872 bra $L138; .loc 1 836 7 add.u16 %r874,%r871,1; st.u8 [%r956],%r874; bra $L117; $L239: mov.u64 %r286,%r198; .loc 1 840 19 add.u64 %r198,%r198,-1; ld.u8 %r877,[%r198]; cvt.s16.s8 %r876,%r877; setp.eq.u16 %r878,%r876,48; @ %r878 bra $L239; .loc 1 841 8 mov.u64 %r198,%r286; $L117: .loc 1 844 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 845 6 setp.eq.u64 %r881,%r192,0; @ %r881 bra $L182; .loc 1 847 11 set.u32.ne.u64 %r883,%r191,0; neg.s32 %r884,%r883; mov.u32 %r882,%r884; .loc 1 847 22 set.u32.ne.u64 %r886,%r191,%r192; neg.s32 %r887,%r886; mov.u32 %r885,%r887; .loc 1 847 15 cvt.u16.u8 %r965,%r882; mov.u16 %r889,%r965; cvt.u16.u8 %r965,%r885; mov.u16 %r890,%r965; and.b16 %r888,%r889,%r890; cvt.u32.u16 %r891,%r888; .loc 1 847 10 cvt.u16.u8 %r892,%r891; setp.eq.u16 %r893,%r892,0; @ %r893 bra $L183; .loc 1 848 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r191; call _Bfree,(%out_arg1,%out_arg2); } mov.u64 %r329,%r208; mov.u64 %r208,%r198; bra $L139; $L183: mov.u64 %r329,%r208; mov.u64 %r208,%r198; $L139: .loc 1 849 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r192; call _Bfree,(%out_arg1,%out_arg2); } bra $L65; $L173: mov.u64 %r329,%r208; mov.u64 %r208,%r196; bra $L65; $L182: .loc 1 851 1 mov.u64 %r329,%r208; mov.u64 %r208,%r198; $L65: .loc 1 852 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r190; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 853 6 mov.u32 %r900,0; st.u8 [%r208],%r900; .loc 1 854 10 st.u32 [%r334],%r306; .loc 1 855 6 setp.eq.u64 %r901,%r336,0; @ %r901 bra $L18; .loc 1 856 10 st.u64 [%r336],%r208; bra $L18; $L156: .loc 1 284 14 cvta.const.u64 %r329,$LC2; bra $L18; $L23: .loc 1 266 10 setp.ne.u64 %r903,%r336,0; @ %r903 bra $L184; .loc 1 263 52 cvta.const.u64 %r329,$LC0; bra $L18; $L259: .loc 1 266 10 setp.ne.u64 %r904,%r336,0; @ %r904 bra $L185; .loc 1 263 52 cvta.const.u64 %r329,$LC1; bra $L18; $L108: .loc 1 844 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r277; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 854 14 add.u32 %r306,%r239,1; .loc 1 845 6 setp.ne.u64 %r907,%r192,0; @ %r907 bra $L139; bra $L65; $L104: .loc 1 720 6 setp.ne.u32 %r908,%r308,0; @ %r908 bra $L186; mov.u32 %r306,%r261; mov.u32 %r281,%r262; bra $L141; $L179: .loc 1 685 53 mov.u32 %r226,1; $L98: .loc 1 685 58 add.u32 %r909,%r187,%r226; .loc 1 685 10 and.b32 %r288,%r909,31; .loc 1 685 6 setp.ne.u32 %r910,%r288,0; @ %r910 bra $L142; mov.u32 %r43,28; bra $L143; $L57: .loc 1 476 20 cvt.rn.f64.s32 %r911,%r178; .loc 1 476 26 fma.rn.f64 %r290,%r279,%r911,0d401c000000000000; .loc 1 476 13 mov.b64 %r328,%r290; .loc 1 477 19 shr.u64 %r913,%r328,32; cvt.u32.u64 %r914,%r913; add.u32 %r915,%r914,-54525952; cvt.u64.u32 %r916,%r915; shl.b64 %r917,%r916,32; and.b64 %r918,%r328,4294967295; or.b64 %r328,%r918,%r917; bra $L144; $L113: .loc 1 760 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r779; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 759 26 mov.u32 %r233,1; bra $L114; $L159: .loc 1 389 13 mov.u32 %r67,1; .loc 1 388 10 mov.u32 %r332,0; .loc 1 395 13 mov.u32 %r251,%r67; .loc 1 396 8 mov.u32 %r281,-1; .loc 1 402 15 mov.u32 %r333,%r332; bra $L39; $L161: .loc 1 409 10 mov.u32 %r333,1; mov.u32 %r281,%r333; $L39: .loc 1 423 32 mov.u32 %r922,0; st.u32 [%r330+104],%r922; mov.u32 %r262,%r281; mov.u32 %r58,%r922; bra $L42; $L264: mov.u32 %r923,0; st.u32 [%r330+104],%r923; .loc 1 426 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r330; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r923; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r926,[%value_in]; } mov.u64 %r208,%r926; setp.eq.u64 %r927,%r208,0; @ ! %r927 bra $L263; bra $L145; $L160: .loc 1 389 13 mov.u32 %r67,1; $L40: .loc 1 397 3 setp.eq.u32 %r928,%r332,3; @ %r928 bra $L187; setp.gt.s32 %r929,%r332,3; @ %r929 bra $L148; setp.eq.u32 %r930,%r332,2; @ %r930 bra $L188; bra $L264; $L148: setp.eq.u32 %r931,%r332,4; @ %r931 bra $L189; mov.u32 %r251,1; bra $L147; $L260: .loc 1 365 6 setp.ge.s32 %r932,%r187,0; @ %r932 bra $L190; .loc 1 362 15 mov.u32 %r184,0; bra $L152; $L95: .loc 1 663 22 and.b64 %r933,%r326,4503599627370495; .loc 1 663 10 setp.eq.u64 %r934,%r933,0; @ %r934 bra $L153; .loc 1 660 13 mov.u32 %r188,0; bra $L96; $L263: .loc 1 426 25 st.u64 [%r330+96],%r208; .loc 1 545 10 ld.u32 %r102,[%frame]; .loc 1 545 15 set.u32.le.s32 %r936,%r261,14; neg.s32 %r937,%r936; mov.u32 %r935,%r937; .loc 1 545 6 not.b32 %r939,%r102; shr.u32 %r940,%r939,31; mov.u32 %r941,%r940; .loc 1 545 15 cvt.u16.u8 %r965,%r935; mov.u16 %r943,%r965; cvt.u16.u8 %r965,%r941; mov.u16 %r944,%r965; and.b16 %r942,%r943,%r944; cvt.u32.u16 %r945,%r942; cvt.u16.u8 %r946,%r945; setp.ne.u16 %r947,%r946,0; @ %r947 bra $L154; .loc 1 396 8 mov.u32 %r281,-1; .loc 1 396 16 mov.u32 %r262,%r281; .loc 1 402 15 mov.u32 %r333,%r923; setp.eq.u32 %r958,1,0; bra $L265; $L153: .loc 1 665 7 shr.u64 %r948,%r326,32; cvt.u32.u64 %r949,%r948; .loc 1 665 17 and.b32 %r950,%r949,2146435072; .loc 1 665 4 setp.ne.u32 %r951,%r950,0; @ %r951 bra $L155; .loc 1 660 13 mov.u32 %r188,%r950; bra $L96; $L154: .loc 1 548 10 cvta.const.u64 %r952,__mprec_tens; cvt.s64.s32 %r953,%r261; shl.b64 %r954,%r953,3; add.u64 %r955,%r952,%r954; ld.f64 %r216,[%r955]; .loc 1 396 8 mov.u32 %r281,-1; .loc 1 429 17 mov.u32 %r61,%r281; bra $L75; $L18: .loc 1 858 1 mov.u64 %value,%r329; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } /264 0 0 0 644 2066 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __dtoa .visible .func (.param .u64 %value_out) __dtoa (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../../newlib/libc/stdlib/dtoastub.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DEF: __dtoa .visible .func (.param .u64 %value_out) __dtoa (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r37; .reg .u64 %r38; mov.f64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; mov.u64 %r28,%ar4; mov.u64 %r29,%ar5; .loc 1 18 10 ld.global.u64 %r37,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r28; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r29; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r38,[%value_in]; } .loc 1 19 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-dummy.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-ecvtbuf.o/0 0 0 644 34473 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: print_e .func print_e (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5); .file 1 "../../../../../../newlib/libc/stdlib/ecvtbuf.c" // BEGIN GLOBAL FUNCTION DECL: fcvtbuf .visible .func (.param .u64 %value_out) fcvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: ecvtbuf .visible .func (.param .u64 %value_out) ecvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _gcvt .visible .func (.param .u64 %value_out) _gcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5); // BEGIN GLOBAL FUNCTION DECL: _dcvt .visible .func (.param .u64 %value_out) _dcvt (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u32 %in_ar6); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _mprec_log10 .extern .func (.param .f64 %value_out) _mprec_log10 (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN FUNCTION DEF: print_e .func print_e (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r50; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .f64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r66; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u64 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .u16 %r95; .reg .pred %r96; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r104; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u32 %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u32 %r129; .reg .pred %r130; .reg .u64 %r131; .reg .u16 %r132; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; mov.f64 %r60,%ar2; mov.u32 %r61,%ar3; mov.u32 %r62,%ar4; mov.u32 %r63,%ar5; .loc 1 143 7 add.u64 %r71,%frame,12; add.u64 %r72,%frame,8; add.u32 %r73,%r61,1; mov.u32 %r66,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r66; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r73; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r72; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r71; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r74,[%value_in]; } .loc 1 145 13 ld.u32 %r23,[%frame+8]; .loc 1 145 6 setp.ne.u32 %r75,%r23,9999; @ %r75 bra $L2; .loc 1 147 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r74; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r78,[%value_in]; } bra $L1; $L2: .loc 1 151 14 add.u64 %r43,%r74,1; .loc 1 151 7 add.u64 %r52,%r59,1; .loc 1 151 10 ld.u8 %r79,[%r74]; st.u8 [%r59],%r79; .loc 1 152 6 setp.gt.s32 %r80,%r61,0; @ %r80 bra $L4; bra $L5; $L6: .loc 1 161 18 add.u64 %r43,%r43,1; mov.u64 %r57,%r53; add.u64 %r52,%r53,1; mov.u64 %r53,%r52; .loc 1 161 14 cvt.u32.u32 %r81,%r25; st.u8 [%r57],%r81; .loc 1 162 13 add.u32 %r61,%r61,-1; .loc 1 155 10 ld.s8 %r25,[%r43]; .loc 1 155 13 cvt.u16.u32 %r83,%r25; set.u32.ne.u16 %r84,%r83,0; neg.s32 %r85,%r84; mov.u32 %r82,%r85; set.u32.gt.s32 %r87,%r61,0; neg.s32 %r88,%r87; mov.u32 %r86,%r88; cvt.u16.u8 %r132,%r82; mov.u16 %r90,%r132; cvt.u16.u8 %r132,%r86; mov.u16 %r91,%r132; and.b16 %r89,%r90,%r91; cvt.u32.u16 %r92,%r89; cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L6; mov.u32 %r63,0; $L5: .loc 1 168 6 cvt.u16.u32 %r95,%r62; setp.eq.u16 %r96,%r95,103; @ %r96 bra $L16; .loc 1 170 11 setp.eq.u16 %r98,%r95,71; @ ! %r98 bra $L21; bra $L17; $L11: .loc 1 177 10 add.u64 %r26,%r52,1; .loc 1 176 8 setp.eq.u32 %r99,%r63,0; @ %r99 bra $L18; .loc 1 177 13 mov.u32 %r100,46; st.u8 [%r52],%r100; bra $L9; $L18: mov.u64 %r26,%r52; $L9: mov.u64 %r45,%r26; cvt.s64.s32 %r50,%r61; add.u64 %r131,%r45,%r50; .loc 1 180 11 mov.u32 %r101,48; $L10: st.u8 [%r45],%r101; .loc 1 174 21 add.u64 %r45,%r45,1; setp.ne.u64 %r102,%r131,%r45; @ %r102 bra $L10; .loc 1 180 8 mov.u64 %r52,%r131; bra $L7; $L21: .loc 1 174 21 setp.gt.s32 %r103,%r61,0; @ %r103 bra $L11; bra $L7; $L16: .loc 1 169 10 mov.u32 %r62,101; bra $L7; $L17: .loc 1 171 10 mov.u32 %r62,69; $L7: .loc 1 187 10 cvt.u32.u32 %r104,%r62; st.u8 [%r52],%r104; .loc 1 188 8 add.u32 %r42,%r23,-1; .loc 1 191 11 add.u64 %r41,%r52,2; .loc 1 189 6 setp.ge.s32 %r105,%r42,0; @ %r105 bra $L12; .loc 1 191 14 mov.u32 %r106,45; st.u8 [%r52+1],%r106; .loc 1 192 15 mov.u32 %r107,1; sub.u32 %r42,%r107,%r23; bra $L13; $L12: .loc 1 196 14 mov.u32 %r108,43; st.u8 [%r52+1],%r108; $L13: .loc 1 198 6 setp.le.s32 %r109,%r42,99; @ %r109 bra $L14; .loc 1 200 11 div.s32 %r46,%r42,100; .loc 1 201 11 add.u64 %r41,%r52,3; .loc 1 201 20 mov.u32 %r110,%r46; cvt.u16.u8 %r132,%r110; mov.u16 %r112,%r132; add.u16 %r111,%r112,48; st.u8 [%r52+2],%r111; .loc 1 202 13 mad.lo.u32 %r42,%r46,-100,%r42; $L14: .loc 1 204 7 div.s32 %r47,%r42,10; .loc 1 205 16 mov.u32 %r114,%r47; cvt.u16.u8 %r132,%r114; mov.u16 %r116,%r132; add.u16 %r115,%r116,48; st.u8 [%r41],%r115; .loc 1 206 16 shl.b32 %r118,%r47,2; add.u32 %r119,%r118,%r47; add.u32 %r120,%r119,%r119; .loc 1 206 9 sub.u32 %r122,%r42,%r120; .loc 1 207 18 mov.u32 %r123,%r122; cvt.u16.u8 %r132,%r123; mov.u16 %r125,%r132; add.u16 %r124,%r125,48; st.u8 [%r41+1],%r124; .loc 1 209 10 mov.u32 %r126,0; st.u8 [%r41+2],%r126; bra $L1; $L15: .loc 1 158 9 mov.u32 %r127,46; st.u8 [%r59+1],%r127; .loc 1 161 16 ld.s8 %r25,[%r74+1]; add.u64 %r53,%r59,2; bra $L6; $L4: .loc 1 155 13 ld.u8 %r129,[%r74+1]; cvt.s16.s8 %r128,%r129; setp.ne.u16 %r130,%r128,0; @ %r130 bra $L15; .loc 1 153 9 mov.u32 %r63,1; bra $L5; $L1: .loc 1 210 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: fcvtbuf .visible .func (.param .u64 %value_out) fcvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r34; .reg .u64 %r38; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r68; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; mov.u64 %r53,%ar2; mov.u64 %r54,%ar3; mov.u64 %r55,%ar4; .loc 1 225 18 ld.global.u64 %r31,[_impure_ptr]; .loc 1 231 6 setp.ne.u64 %r56,%r55,0; @ %r56 bra $L23; .loc 1 235 53 ld.u64 %r55,[%r31+136]; .loc 1 233 36 add.u32 %r57,%r52,35; .loc 1 233 10 ld.u32 %r58,[%r31+128]; setp.gt.s32 %r59,%r58,%r57; @ %r59 bra $L23; .loc 1 236 20 add.u32 %r24,%r52,36; .loc 1 235 29 cvt.s64.s32 %r63,%r24; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r63; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r64,[%value_in]; } mov.u64 %r55,%r64; .loc 1 235 7 setp.eq.u64 %r65,%r55,0; @ %r65 bra $L30; .loc 1 238 19 st.u32 [%r31+128],%r24; .loc 1 239 19 st.u64 [%r31+136],%r55; $L23: .loc 1 247 7 mov.u32 %r68,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r68; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r52; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r53; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r54; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r73,[%value_in]; } .loc 1 251 8 ld.u32 %r74,[%r53]; neg.s32 %r34,%r74; .loc 1 252 12 ld.u64 %r75,[%frame]; setp.ge.u64 %r76,%r73,%r75; @ %r76 bra $L31; mov.u64 %r45,%r55; mov.u64 %r46,%r73; $L27: mov.u64 %r32,%r45; add.u64 %r45,%r45,1; mov.u64 %r38,%r45; .loc 1 254 19 ld.u8 %r77,[%r46]; st.u8 [%r32],%r77; .loc 1 255 11 add.u32 %r34,%r34,1; .loc 1 252 12 add.u64 %r46,%r46,1; ld.u64 %r78,[%frame]; setp.gt.u64 %r79,%r78,%r46; @ %r79 bra $L27; bra $L26; $L31: mov.u64 %r38,%r55; $L26: .loc 1 258 15 setp.le.s32 %r80,%r52,%r34; @ %r80 bra $L28; mov.u64 %r29,%r38; add.u32 %r81,%r52,-1; sub.u32 %r82,%r81,%r34; cvt.u64.u32 %r43,%r82; add.u64 %r83,%r38,1; add.u64 %r44,%r83,%r43; .loc 1 260 19 mov.u32 %r84,48; $L29: st.u8 [%r29],%r84; .loc 1 258 15 add.u64 %r29,%r29,1; setp.ne.u64 %r85,%r29,%r44; @ %r85 bra $L29; .loc 1 260 16 add.u64 %r86,%r43,1; add.u64 %r38,%r38,%r86; $L28: .loc 1 263 15 mov.u32 %r87,0; st.u8 [%r38],%r87; .loc 1 264 10 mov.u64 %r50,%r55; bra $L22; $L30: .loc 1 237 13 mov.u64 %r50,%r64; $L22: .loc 1 265 1 mov.u64 %value,%r50; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ecvtbuf .visible .func (.param .u64 %value_out) ecvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u64 %r34; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r60; .reg .u64 %r61; .reg .pred %r62; .reg .u32 %r65; .reg .u64 %r70; .reg .u64 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; mov.f64 %r49,%ar0; mov.u32 %r50,%ar1; mov.u64 %r51,%ar2; mov.u64 %r52,%ar3; mov.u64 %r53,%ar4; .loc 1 274 18 ld.global.u64 %r29,[_impure_ptr]; .loc 1 280 6 setp.ne.u64 %r54,%r53,0; @ %r54 bra $L35; .loc 1 284 53 ld.u64 %r53,[%r29+136]; .loc 1 282 10 ld.u32 %r55,[%r29+128]; setp.gt.s32 %r56,%r55,%r50; @ %r56 bra $L35; .loc 1 285 20 add.u32 %r23,%r50,1; .loc 1 284 29 cvt.s64.s32 %r60,%r23; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r60; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r61,[%value_in]; } mov.u64 %r53,%r61; .loc 1 284 7 setp.eq.u64 %r62,%r53,0; @ %r62 bra $L42; .loc 1 287 19 st.u32 [%r29+128],%r23; .loc 1 288 19 st.u64 [%r29+136],%r53; $L35: .loc 1 296 7 mov.u32 %r65,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r49; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r65; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r50; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r51; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r52; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r70,[%value_in]; } .loc 1 300 12 ld.u64 %r71,[%frame]; setp.ge.u64 %r72,%r70,%r71; @ %r72 bra $L43; mov.u64 %r43,%r53; mov.u64 %r44,%r70; .loc 1 278 7 mov.u32 %r32,0; $L39: mov.u64 %r30,%r43; add.u64 %r43,%r43,1; mov.u64 %r34,%r43; .loc 1 302 19 ld.u8 %r73,[%r44]; st.u8 [%r30],%r73; .loc 1 303 11 add.u32 %r32,%r32,1; .loc 1 300 12 add.u64 %r44,%r44,1; ld.u64 %r74,[%frame]; setp.gt.u64 %r75,%r74,%r44; @ %r75 bra $L39; bra $L38; $L43: mov.u64 %r34,%r53; .loc 1 278 7 mov.u32 %r32,0; $L38: .loc 1 306 15 setp.le.s32 %r76,%r50,%r32; @ %r76 bra $L40; mov.u64 %r27,%r34; add.u32 %r77,%r50,-1; sub.u32 %r78,%r77,%r32; cvt.u64.u32 %r41,%r78; add.u64 %r79,%r34,1; add.u64 %r42,%r79,%r41; .loc 1 308 19 mov.u32 %r80,48; $L41: st.u8 [%r27],%r80; .loc 1 306 15 add.u64 %r27,%r27,1; setp.ne.u64 %r81,%r27,%r42; @ %r81 bra $L41; .loc 1 308 16 add.u64 %r82,%r41,1; add.u64 %r34,%r34,%r82; $L40: .loc 1 311 15 mov.u32 %r83,0; st.u8 [%r34],%r83; .loc 1 312 10 mov.u64 %r48,%r53; bra $L34; $L42: .loc 1 286 13 mov.u64 %r48,%r61; $L34: .loc 1 313 1 mov.u64 %value,%r48; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _gcvt .visible .func (.param .u64 %value_out) _gcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r45; .reg .u32 %r47; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r69; .reg .u64 %r71; .reg .u64 %r75; .reg .f64 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r92; .reg .f64 %r94; .reg .pred %r95; .reg .u32 %r98; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u16 %r120; .reg .u16 %r121; .reg .u16 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .u16 %r134; .reg .u16 %r135; .reg .u32 %r136; .reg .u16 %r137; .reg .pred %r138; .reg .pred %r139; .reg .u16 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .pred %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u64 %r149; .reg .u32 %r150; .reg .pred %r151; .reg .u32 %r152; .reg .u64 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u16 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u16 %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .u32 %r165; .reg .u16 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u16 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .u32 %r179; .reg .u16 %r180; .reg .pred %r181; .reg .pred %r182; .reg .pred %r183; .reg .u64 %r184; .reg .u32 %r185; .reg .u64 %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u64 %r189; .reg .u32 %r190; .reg .u16 %r192; mov.u64 %r75,%ar0; mov.f64 %r76,%ar1; mov.u32 %r77,%ar2; mov.u64 %r78,%ar3; mov.u32 %r79,%ar4; mov.u32 %r80,%ar5; .loc 1 327 6 setp.lt.f64 %r81,%r76,0d0000000000000000; @ ! %r81 bra $L47; .loc 1 329 15 neg.f64 %r76,%r76; $L47: .loc 1 332 6 setp.neu.f64 %r82,%r76,0d0000000000000000; @ %r82 bra $L49; .loc 1 334 14 mov.u32 %r83,48; st.u8 [%r78],%r83; .loc 1 335 12 mov.u32 %r84,0; st.u8 [%r78+1],%r84; bra $L50; $L49: .loc 1 343 6 setp.le.f64 %r85,%r76,0d3f1a36e2eb1c432d; @ ! %r85 bra $L85; $L53: .loc 1 352 7 add.u32 %r92,%r77,-1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r78; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r76; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r92; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r79; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r80; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } bra $L50; $L85: .loc 1 343 39 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r77; call (%value_in),_mprec_log10,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 343 25 setp.le.f64 %r95,%r94,%r76; @ %r95 bra $L53; .loc 1 364 11 add.u64 %r103,%frame,8; add.u64 %r104,%frame,12; mov.u32 %r98,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r76; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r98; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r77; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r104; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r103; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r105,[%value_in]; } mov.u64 %r39,%r105; .loc 1 366 17 ld.u32 %r26,[%frame+12]; .loc 1 366 10 setp.eq.u32 %r106,%r26,9999; @ %r106 bra $L54; .loc 1 371 14 ld.s8 %r27,[%r39]; .loc 1 371 17 setp.eq.u32 %r107,%r27,0; @ %r107 bra $L68; mov.u64 %r71,%r78; bra $L56; $L54: .loc 1 368 4 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r110,[%value_in]; } bra $L50; $L57: .loc 1 373 15 add.u64 %r39,%r39,1; add.u64 %r71,%r71,1; mov.u64 %r41,%r71; .loc 1 373 11 cvt.u32.u32 %r111,%r27; st.u8 [%r36],%r111; .loc 1 374 9 add.u32 %r26,%r26,-1; st.u32 [%frame+12],%r26; .loc 1 375 10 add.u32 %r77,%r77,-1; .loc 1 371 14 ld.s8 %r27,[%r39]; .loc 1 371 17 setp.eq.u32 %r112,%r27,0; @ %r112 bra $L55; $L56: mov.u64 %r36,%r71; setp.gt.s32 %r113,%r26,0; @ %r113 bra $L57; bra $L58; $L68: mov.u64 %r41,%r78; $L55: .loc 1 378 24 set.u32.gt.s32 %r115,%r77,0; neg.s32 %r116,%r115; mov.u32 %r114,%r116; set.u32.gt.s32 %r118,%r26,0; neg.s32 %r119,%r118; mov.u32 %r117,%r119; cvt.u16.u8 %r192,%r114; mov.u16 %r121,%r192; cvt.u16.u8 %r192,%r117; mov.u16 %r122,%r192; and.b16 %r120,%r121,%r122; cvt.u32.u16 %r123,%r120; cvt.u16.u8 %r124,%r123; setp.eq.u16 %r125,%r124,0; @ %r125 bra $L69; add.u32 %r67,%r26,-1; mov.u64 %r69,%r41; .loc 1 380 11 mov.u32 %r126,48; $L59: mov.u64 %r45,%r69; add.u64 %r36,%r69,1; mov.u64 %r69,%r36; st.u8 [%r45],%r126; .loc 1 381 9 mov.u32 %r29,%r67; .loc 1 382 10 add.u32 %r77,%r77,-1; .loc 1 378 24 add.u32 %r67,%r67,-1; set.u32.gt.s32 %r128,%r77,0; neg.s32 %r129,%r128; mov.u32 %r127,%r129; set.u32.gt.s32 %r131,%r29,0; neg.s32 %r132,%r131; mov.u32 %r130,%r132; cvt.u16.u8 %r192,%r127; mov.u16 %r134,%r192; cvt.u16.u8 %r192,%r130; mov.u16 %r135,%r192; and.b16 %r133,%r134,%r135; cvt.u32.u16 %r136,%r133; cvt.u16.u8 %r137,%r136; setp.ne.u16 %r138,%r137,0; @ %r138 bra $L59; st.u32 [%frame+12],%r29; bra $L58; $L69: mov.u64 %r36,%r41; $L58: .loc 1 385 10 setp.ne.u32 %r139,%r80,0; @ %r139 bra $L60; .loc 1 385 15 ld.u8 %r141,[%r39]; cvt.s16.s8 %r140,%r141; setp.eq.u16 %r142,%r140,0; @ %r142 bra $L61; $L60: .loc 1 387 7 setp.ne.u64 %r143,%r78,%r36; @ %r143 bra $L62; .loc 1 388 13 mov.u32 %r144,48; st.u8 [%r78],%r144; .loc 1 388 10 add.u64 %r36,%r78,1; $L62: .loc 1 389 8 add.u64 %r37,%r36,1; .loc 1 389 11 mov.u32 %r145,46; st.u8 [%r36],%r145; .loc 1 392 17 ld.u32 %r47,[%frame+12]; setp.ge.s32 %r146,%r47,0; @ %r146 bra $L63; mov.u64 %r62,%r37; mov.u32 %r148,1; sub.u32 %r147,%r148,%r47; cvt.u64.u32 %r149,%r147; add.u64 %r66,%r36,%r149; .loc 1 394 15 mov.u32 %r150,48; $L64: st.u8 [%r62],%r150; .loc 1 392 17 add.u64 %r62,%r62,1; setp.ne.u64 %r151,%r62,%r66; @ %r151 bra $L64; .loc 1 394 12 neg.s32 %r152,%r47; cvt.u64.u32 %r153,%r152; add.u64 %r37,%r37,%r153; mov.u32 %r154,0; st.u32 [%frame+12],%r154; $L63: .loc 1 399 11 ld.s8 %r34,[%r39]; .loc 1 399 14 cvt.u16.u32 %r156,%r34; set.u32.ne.u16 %r157,%r156,0; neg.s32 %r158,%r157; mov.u32 %r155,%r158; set.u32.gt.s32 %r160,%r77,0; neg.s32 %r161,%r160; mov.u32 %r159,%r161; cvt.u16.u8 %r192,%r155; mov.u16 %r163,%r192; cvt.u16.u8 %r192,%r159; mov.u16 %r164,%r192; and.b16 %r162,%r163,%r164; cvt.u32.u16 %r165,%r162; cvt.u16.u8 %r166,%r165; setp.eq.u16 %r167,%r166,0; @ %r167 bra $L70; mov.u64 %r60,%r37; $L66: .loc 1 401 19 add.u64 %r39,%r39,1; mov.u64 %r38,%r60; add.u64 %r60,%r60,1; mov.u64 %r36,%r60; .loc 1 401 15 cvt.u32.u32 %r168,%r34; st.u8 [%r38],%r168; .loc 1 402 14 add.u32 %r77,%r77,-1; .loc 1 399 11 ld.s8 %r34,[%r39]; .loc 1 399 14 cvt.u16.u32 %r170,%r34; set.u32.ne.u16 %r171,%r170,0; neg.s32 %r172,%r171; mov.u32 %r169,%r172; set.u32.gt.s32 %r174,%r77,0; neg.s32 %r175,%r174; mov.u32 %r173,%r175; cvt.u16.u8 %r192,%r169; mov.u16 %r177,%r192; cvt.u16.u8 %r192,%r173; mov.u16 %r178,%r192; and.b16 %r176,%r177,%r178; cvt.u32.u16 %r179,%r176; cvt.u16.u8 %r180,%r179; setp.ne.u16 %r181,%r180,0; @ %r181 bra $L66; bra $L65; $L70: mov.u64 %r36,%r37; $L65: .loc 1 405 7 setp.eq.u32 %r182,%r80,0; @ %r182 bra $L61; .loc 1 407 22 setp.le.s32 %r183,%r77,0; @ %r183 bra $L61; mov.u64 %r30,%r36; add.u64 %r184,%r36,1; add.u32 %r185,%r77,-1; cvt.u64.u32 %r186,%r185; add.u64 %r59,%r184,%r186; .loc 1 409 12 mov.u32 %r187,48; $L67: st.u8 [%r30],%r187; .loc 1 407 22 add.u64 %r30,%r30,1; setp.ne.u64 %r188,%r30,%r59; @ %r188 bra $L67; .loc 1 409 9 cvt.u64.u32 %r189,%r77; add.u64 %r36,%r36,%r189; $L61: .loc 1 414 14 mov.u32 %r190,0; st.u8 [%r36],%r190; $L50: .loc 1 418 1 mov.u64 %value,%r78; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _dcvt .visible .func (.param .u64 %value_out) _dcvt (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .f64 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u32 %in_ar6) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %ar2; ld.param.f64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u32 %ar6; ld.param.u32 %ar6,[%in_ar6]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r29; .reg .u64 %r35; .reg .u32 %r37; .reg .u32 %r40; .reg .u32 %r41; .reg .u64 %r43; .reg .u64 %r48; .reg .u32 %r51; .reg .u64 %r52; .reg .u32 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r63; .reg .u64 %r67; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .f64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .u32 %r81; .reg .u16 %r83; .reg .u16 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .pred %r92; .reg .u64 %r93; .reg .pred %r94; .reg .pred %r95; .reg .u32 %r98; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .u64 %r120; .reg .u32 %r121; .reg .pred %r122; .reg .u16 %r123; .reg .u32 %r124; .reg .pred %r125; .reg .pred %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u16 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u32 %r137; .reg .u16 %r138; .reg .pred %r139; .reg .u32 %r140; .reg .u32 %r142; .reg .u32 %r143; .reg .u16 %r144; .reg .u16 %r145; .reg .u16 %r146; .reg .u32 %r147; .reg .u16 %r148; .reg .pred %r149; .reg .u32 %r150; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u16 %r157; .reg .u16 %r158; .reg .u16 %r159; .reg .u32 %r160; .reg .u16 %r161; .reg .pred %r162; .reg .pred %r163; .reg .pred %r164; .reg .u32 %r165; .reg .pred %r166; .reg .pred %r167; .reg .pred %r168; .reg .u32 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .pred %r173; .reg .u64 %r174; .reg .u32 %r175; .reg .pred %r176; .reg .u64 %r183; .reg .u16 %r191; mov.u64 %r75,%ar0; mov.u64 %r76,%ar1; mov.f64 %r77,%ar2; mov.u32 %r78,%ar3; mov.u32 %r80,%ar5; mov.u32 %r81,%ar6; .loc 1 429 3 cvt.u16.u32 %r84,%r80; add.u16 %r83,%r84,-69; cvt.u32.u16 %r85,%r83; cvt.u32.u8 %r51,%r85; cvt.u16.u32 %r86,%r51; setp.gt.u16 %r87,%r86,34; @ %r87 bra $L87; mov.u64 %r88,1; shl.b64 %r22,%r88,%r51; and.b64 %r89,%r22,4294967297; setp.ne.u64 %r90,%r89,0; @ %r90 bra $L88; and.b64 %r91,%r22,17179869188; setp.ne.u64 %r92,%r91,0; @ %r92 bra $L89; and.b64 %r93,%r22,8589934594; setp.eq.u64 %r94,%r93,0; @ %r94 bra $L87; .loc 1 433 7 setp.eq.u32 %r95,%r78,0; selp.u32 %r81,%r81,1,%r95; .loc 1 73 15 add.u64 %r103,%frame,8; add.u64 %r104,%frame,12; mov.u32 %r98,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r77; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r98; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r78; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r104; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r103; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r105,[%value_in]; } .loc 1 75 13 ld.u32 %r27,[%frame+12]; .loc 1 75 6 setp.eq.u32 %r106,%r27,9999; @ %r106 bra $L91; .loc 1 80 10 ld.s8 %r26,[%r105]; .loc 1 80 13 setp.eq.u32 %r107,%r26,0; @ %r107 bra $L109; mov.u64 %r73,%r76; mov.u64 %r25,%r105; bra $L93; $L91: .loc 1 77 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r76; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r110,[%value_in]; } bra $L87; $L94: .loc 1 82 18 add.u64 %r25,%r25,1; add.u64 %r73,%r73,1; mov.u64 %r48,%r73; .loc 1 82 14 cvt.u32.u32 %r111,%r26; st.u8 [%r35],%r111; .loc 1 83 12 add.u32 %r27,%r27,-1; st.u32 [%frame+12],%r27; .loc 1 80 10 ld.s8 %r26,[%r25]; .loc 1 80 13 setp.eq.u32 %r112,%r26,0; @ %r112 bra $L92; $L93: mov.u64 %r35,%r73; setp.gt.s32 %r113,%r27,0; @ %r113 bra $L94; bra $L95; $L109: mov.u64 %r25,%r105; mov.u64 %r48,%r76; $L92: .loc 1 86 16 setp.le.s32 %r114,%r27,0; @ %r114 bra $L110; mov.u64 %r67,%r48; add.u64 %r115,%r48,1; add.u32 %r116,%r27,-1; cvt.u64.u32 %r117,%r116; add.u64 %r72,%r115,%r117; .loc 1 88 14 mov.u32 %r118,48; $L96: st.u8 [%r67],%r118; .loc 1 86 16 add.u64 %r67,%r67,1; setp.ne.u64 %r119,%r67,%r72; @ %r119 bra $L96; .loc 1 88 11 cvt.u64.u32 %r120,%r27; add.u64 %r35,%r48,%r120; mov.u32 %r121,0; st.u32 [%frame+12],%r121; .loc 1 89 12 mov.u32 %r27,%r121; bra $L95; $L110: .loc 1 86 16 mov.u64 %r35,%r48; $L95: .loc 1 92 6 setp.ne.u32 %r122,%r81,0; @ %r122 bra $L97; .loc 1 92 11 ld.u8 %r124,[%r25]; cvt.s16.s8 %r123,%r124; setp.eq.u16 %r125,%r123,0; @ %r125 bra $L98; $L97: .loc 1 94 10 setp.ne.u64 %r126,%r105,%r25; @ %r126 bra $L99; .loc 1 95 9 mov.u32 %r127,48; st.u8 [%r35],%r127; .loc 1 95 6 add.u64 %r35,%r35,1; $L99: .loc 1 96 21 set.u32.gt.s32 %r128,%r78,0; neg.s32 %r41,%r128; .loc 1 96 10 set.u32.ne.u32 %r132,%r27,0; neg.s32 %r133,%r132; mov.u32 %r131,%r133; .loc 1 96 21 cvt.u16.u8 %r191,%r131; mov.u16 %r135,%r191; cvt.u16.u32 %r136,%r41; and.b16 %r134,%r135,%r136; cvt.u32.u16 %r137,%r134; cvt.u16.u8 %r138,%r137; setp.eq.u16 %r139,%r138,0; @ %r139 bra $L100; .loc 1 97 9 mov.u32 %r140,46; st.u8 [%r35],%r140; .loc 1 97 6 add.u64 %r35,%r35,1; $L100: .loc 1 98 20 ld.u32 %r57,[%frame+12]; .loc 1 98 24 shr.u32 %r142,%r57,31; mov.u32 %r143,%r142; cvt.u16.u8 %r191,%r143; mov.u16 %r145,%r191; cvt.u16.u32 %r146,%r41; and.b16 %r144,%r145,%r146; cvt.u32.u16 %r147,%r144; cvt.u16.u8 %r148,%r147; setp.eq.u16 %r149,%r148,0; @ %r149 bra $L101; add.u32 %r63,%r57,1; .loc 1 100 11 mov.u32 %r150,48; $L102: mov.u64 %r52,%r35; add.u64 %r35,%r35,1; st.u8 [%r52],%r150; .loc 1 101 9 mov.u32 %r37,%r63; .loc 1 102 10 add.u32 %r78,%r78,-1; .loc 1 98 24 add.u32 %r63,%r63,1; shr.u32 %r152,%r37,31; mov.u32 %r153,%r152; set.u32.gt.s32 %r155,%r78,0; neg.s32 %r156,%r155; mov.u32 %r154,%r156; cvt.u16.u8 %r191,%r153; mov.u16 %r158,%r191; cvt.u16.u8 %r191,%r154; mov.u16 %r159,%r191; and.b16 %r157,%r158,%r159; cvt.u32.u16 %r160,%r157; cvt.u16.u8 %r161,%r160; setp.ne.u16 %r162,%r161,0; @ %r162 bra $L102; st.u32 [%frame+12],%r37; $L101: .loc 1 106 14 ld.s8 %r40,[%r25]; .loc 1 106 17 setp.eq.u32 %r163,%r40,0; @ %r163 bra $L103; setp.le.s32 %r164,%r78,0; @ %r164 bra $L98; mov.u64 %r61,%r35; $L106: .loc 1 108 15 add.u64 %r25,%r25,1; mov.u64 %r29,%r61; add.u64 %r61,%r61,1; mov.u64 %r35,%r61; .loc 1 108 11 cvt.u32.u32 %r165,%r40; st.u8 [%r29],%r165; .loc 1 109 10 add.u32 %r78,%r78,-1; .loc 1 106 14 ld.s8 %r40,[%r25]; .loc 1 106 17 setp.ne.u32 %r166,%r40,0; @ %r166 bra $L104; $L103: .loc 1 112 21 setp.gt.s32 %r167,%r78,0; @ %r167 bra $L105; bra $L98; $L104: .loc 1 106 17 setp.ne.u32 %r168,%r78,0; @ %r168 bra $L106; bra $L98; $L105: mov.u64 %r43,%r35; add.u32 %r169,%r78,-1; cvt.u64.u32 %r170,%r169; add.u64 %r171,%r35,1; add.u64 %r60,%r170,%r171; .loc 1 114 11 mov.u32 %r172,48; $L107: st.u8 [%r43],%r172; .loc 1 112 21 add.u64 %r43,%r43,1; setp.ne.u64 %r173,%r43,%r60; @ %r173 bra $L107; .loc 1 114 8 cvt.u64.u32 %r174,%r78; add.u64 %r35,%r35,%r174; $L98: .loc 1 118 10 mov.u32 %r175,0; st.u8 [%r35],%r175; bra $L87; $L89: .loc 1 437 10 setp.ne.u32 %r176,%r78,0; .loc 1 438 12 selp.u32 %r78,%r78,1,%r176; .loc 1 439 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r77; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r78; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r76; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r80; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r81; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r183,[%value_in]; } .loc 1 440 7 bra $L87; $L88: .loc 1 443 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r76; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r77; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r78; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r80; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r81; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L87: .loc 1 446 1 mov.u64 %value,%r76; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-efgcvt.o/ 0 0 0 644 9007 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fcvt .visible .func (.param .u64 %value_out) fcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/efgcvt.c" // BEGIN GLOBAL FUNCTION DECL: fcvtf .visible .func (.param .u64 %value_out) fcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: gcvt .visible .func (.param .u64 %value_out) gcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: gcvtf .visible .func (.param .u64 %value_out) gcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: ecvt .visible .func (.param .u64 %value_out) ecvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: ecvtf .visible .func (.param .u64 %value_out) ecvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fcvtbuf .extern .func (.param .u64 %value_out) fcvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _gcvt .extern .func (.param .u64 %value_out) _gcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5); // BEGIN GLOBAL FUNCTION DECL: ecvtbuf .extern .func (.param .u64 %value_out) ecvtbuf (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DEF: fcvt .visible .func (.param .u64 %value_out) fcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f64 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 114 10 mov.u64 %r31,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),fcvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 115 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fcvtf .visible .func (.param .u64 %value_out) fcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .f64 %r33; .reg .u64 %r34; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 123 10 cvt.f64.f32 %r33,%r24; .loc 1 114 10 mov.u64 %r32,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r32; call (%value_in),fcvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 124 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: gcvt .visible .func (.param .u64 %value_out) gcvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .f64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; mov.f64 %r26,%ar0; mov.u32 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 133 6 setp.lt.f64 %r29,%r26,0d0000000000000000; @ ! %r29 bra $L9; .loc 1 134 10 mov.u32 %r30,45; st.u8 [%r28],%r30; .loc 1 135 8 add.u64 %r24,%r28,1; .loc 1 136 11 add.u32 %r27,%r27,-1; bra $L4; $L9: mov.u64 %r24,%r28; $L4: .loc 1 138 11 ld.global.u64 %r37,[_impure_ptr]; mov.u32 %r36,0; mov.u32 %r35,103; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r24; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r35; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r36; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r38,[%value_in]; } .loc 1 138 57 setp.ne.u64 %r39,%r38,0; selp.u64 %value,%r28,0,%r39; .loc 1 139 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: gcvtf .visible .func (.param .u64 %value_out) gcvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f64 %r22; .reg .u64 %r23; .reg .f32 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; mov.f32 %r27,%ar0; mov.u32 %r28,%ar1; mov.u64 %r29,%ar2; .loc 1 147 10 cvt.f64.f32 %r22,%r27; .loc 1 133 6 setp.lt.f32 %r30,%r27,0f00000000; @ ! %r30 bra $L16; .loc 1 134 10 mov.u32 %r31,45; st.u8 [%r29],%r31; .loc 1 135 8 add.u64 %r23,%r29,1; .loc 1 136 11 add.u32 %r28,%r28,-1; bra $L11; $L16: mov.u64 %r23,%r29; $L11: .loc 1 138 11 ld.global.u64 %r38,[_impure_ptr]; mov.u32 %r37,0; mov.u32 %r36,103; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r22; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r23; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r36; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r37; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r39,[%value_in]; } .loc 1 138 57 setp.ne.u64 %r40,%r39,0; selp.u64 %value,%r29,0,%r40; .loc 1 149 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ecvt .visible .func (.param .u64 %value_out) ecvt (.param .f64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f64 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.f64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 158 10 mov.u64 %r31,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),ecvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 159 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ecvtf .visible .func (.param .u64 %value_out) ecvtf (.param .f32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .f64 %r33; .reg .u64 %r34; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 167 10 cvt.f64.f32 %r33,%r24; .loc 1 158 10 mov.u64 %r32,0; { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r32; call (%value_in),ecvtbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 168 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } lib_a-environ.o/0 0 0 644 248 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN VAR DEF: initial_env .global .align 8 .u64 initial_env[1]; // END PREAMBLE // BEGIN GLOBAL VAR DEF: environ .visible .global .align 8 .u64 environ[1] = {generic(initial_env) }; lib_a-envlock.o/0 0 0 644 637 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __env_lock .visible .func __env_lock (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/envlock.c" // BEGIN GLOBAL FUNCTION DECL: __env_unlock .visible .func __env_unlock (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __env_lock .visible .func __env_lock (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 45 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __env_unlock .visible .func __env_unlock (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; $LFB3: ret; $LFE3: } lib_a-eprintf.o/0 0 0 644 2069 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __eprintf .visible .func __eprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/eprintf.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fiprintf .extern .func (.param .u32 %value_out) fiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: abort .extern .func abort; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: __eprintf .visible .func __eprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,32; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 23 20 ld.global.u64 %r30,[_impure_ptr]; .loc 1 23 10 ld.u64 %r31,[%r30+24]; st.u64 [%stack+16],%r27; st.u32 [%stack+8],%r26; st.u64 [%stack],%r25; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),fiprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } .loc 1 24 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } lib_a-erand48.o/0 0 0 644 2965 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _erand48_r .visible .func (.param .f64 %value_out) _erand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/erand48.c" // BEGIN GLOBAL FUNCTION DECL: erand48 .visible .func (.param .f64 %value_out) erand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: ldexp .extern .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _erand48_r .visible .func (.param .f64 %value_out) _erand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f64 %r28; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r38; .reg .f64 %r39; .reg .u32 %r40; .reg .f64 %r41; .reg .u32 %r43; .reg .f64 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .f64 %r51; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 10 ld.u16 %r40,[%r34]; cvt.rn.f64.u32 %r39,%r40; mov.u32 %r38,-48; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } .loc 1 22 5 ld.u16 %r45,[%r34+2]; cvt.rn.f64.u32 %r44,%r45; mov.u32 %r43,-32; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r43; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } .loc 1 21 40 add.f64 %r28,%r41,%r46; .loc 1 23 5 ld.u16 %r50,[%r34+4]; cvt.rn.f64.u32 %r49,%r50; mov.u32 %r48,-16; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r48; call (%value_in),ldexp,(%out_arg1,%out_arg2); ld.param.f64 %r51,[%value_in]; } .loc 1 22 35 add.f64 %value,%r28,%r51; .loc 1 24 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: erand48 .visible .func (.param .f64 %value_out) erand48 (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .f64 %r28; mov.u64 %r24,%ar0; .loc 1 30 10 ld.global.u64 %r27,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_erand48_r,(%out_arg1,%out_arg2); ld.param.f64 %r28,[%value_in]; } .loc 1 31 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-errno.o/ 0 0 0 644 512 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __errno .visible .func (.param .u64 %value_out) __errno; .file 1 "../../../../../../newlib/libc/errno/errno.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: __errno .visible .func (.param .u64 %value_out) __errno { .reg .u64 %value; .loc 1 13 10 ld.global.u64 %value,[_impure_ptr]; .loc 1 14 1 st.param.u64 [%value_out],%value; ret; } lib_a-exit.o/ 0 0 0 644 751 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: exit .visible .func exit (.param .u32 %in_ar0); .file 1 "../../../../../../../newlib/libc/machine/nvptx/exit.c" // BEGIN GLOBAL VAR DEF: __exitval_ptr .weak .global .align 8 .u64 __exitval_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: exit .visible .func exit (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u32 %r23; .reg .pred %r24; mov.u32 %r23,%ar0; .loc 1 28 7 ld.global.u64 %r22,[__exitval_ptr]; .loc 1 28 6 setp.eq.u64 %r24,%r22,0; @ %r24 bra $L3; .loc 1 29 20 st.u32 [%r22],%r23; $L3: .loc 1 31 5 // #APP // 31 "../../../../../../../newlib/libc/machine/nvptx/exit.c" 1 exit; // #NO_APP bra $L3; } /282 0 0 0 644 820 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: explicit_bzero .visible .func explicit_bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/explicit_bzero.c" // BEGIN GLOBAL FUNCTION DECL: bzero .extern .func bzero (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: explicit_bzero .visible .func explicit_bzero (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r23; mov.u64 %r22,%ar0; mov.u64 %r23,%ar1; .loc 1 15 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call bzero,(%out_arg1,%out_arg2); } .loc 1 16 1 ret; } lib_a-fclose.o/ 0 0 0 644 4588 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fclose_r .visible .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/fclose.c" // BEGIN GLOBAL FUNCTION DECL: fclose .visible .func (.param .u32 %value_out) fclose (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sflush_r .extern .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .extern .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .extern .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DEF: _fclose_r .visible .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .pred %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u16 %r41; .reg .pred %r42; .reg .u32 %r45; .reg .pred %r46; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .u64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u64 %r63; .reg .pred %r64; .reg .u64 %r67; .reg .u16 %r68; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; .loc 1 64 6 setp.ne.u64 %r36,%r35,0; @ %r36 bra $L2; $L5: .loc 1 65 12 mov.u32 %r33,0; bra $L1; $L2: .loc 1 67 3 setp.eq.u64 %r37,%r34,0; @ %r37 bra $L4; ld.u32 %r38,[%r34+80]; setp.ne.u32 %r39,%r38,0; @ %r39 bra $L4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call __sinit,(%out_arg1); } $L4: .loc 1 78 6 ld.u16 %r41,[%r35+16]; setp.eq.u16 %r42,%r41,0; @ %r42 bra $L5; .loc 1 94 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r45,[%value_in]; } mov.u32 %r33,%r45; .loc 1 96 9 ld.u64 %r24,[%r35+80]; .loc 1 96 6 setp.eq.u64 %r46,%r24,0; @ %r46 bra $L6; .loc 1 96 29 ld.u64 %r49,[%r35+48]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; call (%value_in),%r24,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r50,[%value_in]; } .loc 1 96 26 setp.ge.s32 %r51,%r50,0; .loc 1 97 7 selp.u32 %r33,%r33,-1,%r51; $L6: .loc 1 98 6 ld.u16 %r53,[%r35+16]; and.b16 %r52,%r53,128; setp.eq.u16 %r54,%r52,0; @ %r54 bra $L7; .loc 1 99 5 ld.u64 %r57,[%r35+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r57; call _free_r,(%out_arg1,%out_arg2); } $L7: .loc 1 100 7 ld.u64 %r30,[%r35+88]; .loc 1 100 6 setp.eq.u64 %r58,%r30,0; @ %r58 bra $L8; .loc 1 101 5 add.u64 %r59,%r35,116; setp.eq.u64 %r60,%r30,%r59; @ %r60 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call _free_r,(%out_arg1,%out_arg2); } $L9: mov.u64 %r63,0; st.u64 [%r35+88],%r63; $L8: .loc 1 102 7 ld.u64 %r32,[%r35+120]; .loc 1 102 6 setp.eq.u64 %r64,%r32,0; @ %r64 bra $L10; .loc 1 103 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r67,0; st.u64 [%r35+120],%r67; $L10: .loc 1 104 3 { call __sfp_lock_acquire; } .loc 1 105 14 mov.u16 %r68,0; st.u16 [%r35+16],%r68; .loc 1 112 3 { call __sfp_lock_release; } $L1: .loc 1 118 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fclose .visible .func (.param .u32 %value_out) fclose (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 125 10 ld.global.u64 %r27,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 126 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-fcntlr.o/ 0 0 0 644 2249 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fcntl_r .visible .func (.param .u32 %value_out) _fcntl_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/reent/fcntlr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: fcntl .extern .func (.param .u32 %value_out) fcntl (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _fcntl_r .visible .func (.param .u32 %value_out) _fcntl_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .pred %r33; .reg .pred %r34; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; mov.u32 %r27,%ar3; .loc 1 50 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 51 14 st.u32 [%stack],%r27; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),fcntl,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r31,[%value_in]; } .loc 1 51 6 setp.ne.u32 %r33,%r31,-1; @ %r33 bra $L1; .loc 1 51 52 ld.global.u32 %r22,[errno]; .loc 1 51 43 setp.eq.u32 %r34,%r22,0; @ %r34 bra $L1; .loc 1 52 17 st.u32 [%r24],%r22; $L1: .loc 1 54 1 mov.u32 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-fdopen.o/ 0 0 0 644 5525 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fdopen_r .visible .func (.param .u64 %value_out) _fdopen_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fdopen.c" // BEGIN GLOBAL FUNCTION DECL: fdopen .visible .func (.param .u64 %value_out) fdopen (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sflags .extern .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfp .extern .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _fdopen_r .visible .func (.param .u64 %value_out) _fdopen_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 66 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } .loc 1 66 6 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L3; .loc 1 81 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),__sfp,(%out_arg1); ld.param.u64 %r35,[%value_in]; } mov.u64 %r25,%r35; .loc 1 81 6 setp.eq.u64 %r36,%r25,0; @ %r36 bra $L1; .loc 1 86 14 st.u16 [%r25+16],%r32; .loc 1 95 13 st.u16 [%r25+18],%r27; .loc 1 96 15 st.u64 [%r25+48],%r25; .loc 1 103 13 mov.u64 %r37,__sread; st.u64 [%r25+56],%r37; .loc 1 104 14 mov.u64 %r38,__swrite; st.u64 [%r25+64],%r38; .loc 1 105 13 mov.u64 %r39,__sseek; st.u64 [%r25+72],%r39; .loc 1 106 14 mov.u64 %r40,__sclose; st.u64 [%r25+80],%r40; .loc 1 119 10 bra $L1; $L3: .loc 1 67 12 mov.u64 %r25,0; $L1: .loc 1 120 1 mov.u64 %value,%r25; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fdopen .visible .func (.param .u64 %value_out) fdopen (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; mov.u32 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 128 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 66 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } .loc 1 66 6 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L9; .loc 1 81 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call (%value_in),__sfp,(%out_arg1); ld.param.u64 %r35,[%value_in]; } mov.u64 %r26,%r35; .loc 1 81 6 setp.eq.u64 %r36,%r26,0; @ %r36 bra $L7; .loc 1 86 14 st.u16 [%r26+16],%r32; .loc 1 95 13 st.u16 [%r26+18],%r27; .loc 1 96 15 st.u64 [%r26+48],%r26; .loc 1 103 13 mov.u64 %r37,__sread; st.u64 [%r26+56],%r37; .loc 1 104 14 mov.u64 %r38,__swrite; st.u64 [%r26+64],%r38; .loc 1 105 13 mov.u64 %r39,__sseek; st.u64 [%r26+72],%r39; .loc 1 106 14 mov.u64 %r40,__sclose; st.u64 [%r26+80],%r40; .loc 1 119 10 bra $L7; $L9: .loc 1 67 12 mov.u64 %r26,0; $L7: .loc 1 129 1 mov.u64 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-feof.o/ 0 0 0 644 1115 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: feof .visible .func (.param .u32 %value_out) feof (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/feof.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: feof .visible .func (.param .u32 %value_out) feof (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u16 %r34; .reg .u16 %r35; .reg .u32 %r36; mov.u64 %r28,%ar0; .loc 1 71 3 ld.global.u64 %r25,[_impure_ptr]; setp.eq.u64 %r29,%r25,0; @ %r29 bra $L2; ld.u32 %r30,[%r25+80]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L2: .loc 1 73 12 ld.u16 %r35,[%r28+16]; shr.u16 %r34,%r35,5; cvt.u32.u16 %r36,%r34; and.b32 %value,%r36,1; .loc 1 76 1 st.param.u32 [%value_out],%value; ret; } lib_a-ferror.o/ 0 0 0 644 1125 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ferror .visible .func (.param .u32 %value_out) ferror (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/ferror.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ferror .visible .func (.param .u32 %value_out) ferror (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u16 %r34; .reg .u16 %r35; .reg .u32 %r36; mov.u64 %r28,%ar0; .loc 1 80 3 ld.global.u64 %r25,[_impure_ptr]; setp.eq.u64 %r29,%r25,0; @ %r29 bra $L2; ld.u32 %r30,[%r25+80]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L2: .loc 1 82 12 ld.u16 %r35,[%r28+16]; shr.u16 %r34,%r35,6; cvt.u32.u16 %r36,%r34; and.b32 %value,%r36,1; .loc 1 85 1 st.param.u32 [%value_out],%value; ret; } lib_a-fflush.o/ 0 0 0 644 11972 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sflush_r .visible .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/fflush.c" // BEGIN GLOBAL FUNCTION DECL: _fflush_r .visible .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: fflush .visible .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fwalk_reent .extern .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __sflush_r .visible .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r41; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .pred %r78; .reg .u16 %r79; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .u64 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .pred %r96; .reg .pred %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u16 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .u64 %r118; .reg .u32 %r122; .reg .u64 %r124; .reg .pred %r125; .reg .pred %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u32 %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .u64 %r137; .reg .pred %r138; .reg .u64 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .pred %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u16 %r147; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r155; .reg .u32 %r156; .reg .u64 %r157; .reg .pred %r158; .reg .u16 %r159; .reg .u16 %r160; .reg .u64 %r161; .reg .pred %r162; .reg .u16 %r164; .reg .u16 %r165; .reg .u64 %r167; .reg .u16 %r168; .reg .pred %r170; .reg .u16 %r171; .reg .u16 %r172; .reg .u64 %r174; .reg .u16 %r175; .reg .pred %r177; .reg .u64 %r178; .reg .u16 %r179; mov.u64 %r74,%ar0; mov.u64 %r75,%ar1; .loc 1 111 9 ld.s16 %r53,[%r75+16]; .loc 1 112 6 cvt.u16.u32 %r77,%r53; and.b16 %r76,%r77,8; setp.ne.u16 %r78,%r76,0; @ %r78 bra $L2; .loc 1 118 18 or.b16 %r79,%r77,2048; cvt.s32.s16 %r22,%r79; st.u16 [%r75+16],%r79; .loc 1 128 10 ld.u32 %r82,[%r75+8]; setp.gt.s32 %r83,%r82,0; @ %r83 bra $L3; .loc 1 128 23 ld.u32 %r84,[%r75+112]; setp.gt.s32 %r85,%r84,0; @ %r85 bra $L3; $L5: .loc 1 205 14 mov.u32 %r73,0; bra $L1; $L3: .loc 1 128 44 ld.u64 %r25,[%r75+72]; .loc 1 128 39 setp.eq.u64 %r86,%r25,0; @ %r86 bra $L5; .loc 1 140 14 ld.u32 %r60,[%r74]; .loc 1 141 16 mov.u32 %r87,0; st.u32 [%r74],%r87; .loc 1 154 12 ld.u64 %r178,[%r75+48]; .loc 1 143 7 cvt.u16.u32 %r89,%r53; and.b16 %r88,%r89,4096; setp.eq.u16 %r90,%r88,0; @ %r90 bra $L6; .loc 1 144 13 ld.u64 %r51,[%r75+144]; bra $L7; $L6: .loc 1 154 12 mov.u32 %r94,1; mov.u64 %r93,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r178; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r93; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r94; call (%value_in),%r25,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r95,[%value_in]; } mov.u64 %r51,%r95; .loc 1 155 11 setp.ne.u64 %r96,%r51,-1; @ %r96 bra $L8; .loc 1 155 32 ld.u32 %r26,[%r74]; .loc 1 155 26 setp.ne.u32 %r97,%r26,0; @ %r97 bra $L9; .loc 1 164 18 ld.s16 %r22,[%r75+16]; .loc 1 182 17 ld.u64 %r25,[%r75+72]; ld.u64 %r178,[%r75+48]; bra $L7; $L9: .loc 1 158 31 set.u32.eq.u32 %r99,%r26,29; neg.s32 %r100,%r99; mov.u32 %r98,%r100; set.u32.eq.u32 %r102,%r26,22; neg.s32 %r103,%r102; mov.u32 %r101,%r103; cvt.u16.u8 %r179,%r98; mov.u16 %r105,%r179; cvt.u16.u8 %r179,%r101; mov.u16 %r106,%r179; or.b16 %r104,%r105,%r106; cvt.u32.u16 %r107,%r104; .loc 1 158 8 cvt.u16.u8 %r108,%r107; setp.eq.u16 %r109,%r108,0; @ %r109 bra $L10; .loc 1 161 21 st.u32 [%r74],%r60; .loc 1 160 16 mov.u32 %r73,%r87; bra $L1; $L10: .loc 1 164 18 ld.u16 %r111,[%r75+16]; or.b16 %r110,%r111,64; st.u16 [%r75+16],%r110; .loc 1 157 9 mov.u32 %r73,-1; bra $L1; $L8: .loc 1 164 18 ld.s16 %r22,[%r75+16]; .loc 1 182 17 ld.u64 %r25,[%r75+72]; ld.u64 %r178,[%r75+48]; $L7: .loc 1 168 14 cvt.u16.u32 %r113,%r22; and.b16 %r112,%r113,4; setp.eq.u16 %r114,%r112,0; @ %r114 bra $L11; .loc 1 172 27 ld.s32 %r115,[%r75+8]; .loc 1 172 22 sub.u64 %r51,%r51,%r115; .loc 1 173 18 ld.u64 %r116,[%r75+88]; setp.eq.u64 %r117,%r116,0; @ %r117 bra $L11; .loc 1 174 29 ld.s32 %r118,[%r75+112]; .loc 1 174 24 sub.u64 %r51,%r51,%r118; $L11: .loc 1 182 15 mov.u32 %r122,0; { .param .u64 %value_in; $LCT1: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r178; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r51; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r122; call (%value_in),%r25,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u64 %r124,[%value_in]; } .loc 1 183 7 setp.ne.u64 %r125,%r124,-1; @ %r125 bra $L12; .loc 1 183 27 ld.u32 %r38,[%r74]; .loc 1 183 21 setp.le.u32 %r126,%r38,29; @ %r126 bra $L13; .loc 1 201 19 ld.s16 %r39,[%r75+16]; bra $L14; $L13: ld.s16 %r39,[%r75+16]; .loc 1 183 21 mov.u64 %r128,-541065218; shr.s64 %r127,%r128,%r38; cvt.u32.u64 %r129,%r127; cvt.u16.u8 %r179,%r129; mov.u16 %r131,%r179; and.b16 %r130,%r131,1; cvt.u32.u16 %r132,%r130; .loc 1 184 33 cvt.u16.u8 %r133,%r132; setp.ne.u16 %r134,%r133,0; @ ! %r134 bra $L44; bra $L14; $L23: .loc 1 193 51 setp.eq.u32 %r135,%r38,0; @ ! %r135 bra $L17; $L16: .loc 1 194 15 st.u64 [%r75+144],%r124; $L17: .loc 1 195 20 st.u32 [%r74],%r60; .loc 1 196 12 ld.u64 %r41,[%r75+88]; .loc 1 196 11 setp.eq.u64 %r136,%r41,0; @ %r136 bra $L5; .loc 1 197 3 add.u64 %r137,%r75,116; setp.eq.u64 %r138,%r41,%r137; @ %r138 bra $L18; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call _free_r,(%out_arg1,%out_arg2); } $L18: mov.u64 %r141,0; st.u64 [%r75+88],%r141; .loc 1 205 14 mov.u32 %r73,0; bra $L1; $L14: .loc 1 201 19 cvt.u16.u32 %r143,%r39; or.b16 %r142,%r143,64; st.u16 [%r75+16],%r142; .loc 1 202 15 mov.u32 %r73,-1; bra $L1; $L2: .loc 1 207 10 ld.u64 %r57,[%r75+24]; .loc 1 207 6 setp.eq.u64 %r144,%r57,0; @ %r144 bra $L5; .loc 1 212 14 ld.u64 %r146,[%r75]; sub.u64 %r145,%r146,%r57; .loc 1 212 5 cvt.u32.u64 %r58,%r145; .loc 1 219 10 st.u64 [%r75],%r57; .loc 1 220 42 and.b16 %r147,%r77,3; setp.ne.u16 %r149,%r147,0; @ %r149 bra $L24; ld.u32 %r52,[%r75+32]; bra $L19; $L24: mov.u32 %r52,0; $L19: .loc 1 220 10 st.u32 [%r75+12],%r52; .loc 1 222 12 setp.le.s32 %r150,%r58,0; @ %r150 bra $L5; $L21: .loc 1 224 11 ld.u64 %r155,[%r75+48]; ld.u64 %r157,[%r75+64]; { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r74; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r155; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; call (%value_in),%r157,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT2; ld.param.u32 %r156,[%value_in]; } .loc 1 225 10 setp.gt.s32 %r158,%r156,0; @ %r158 bra $L20; .loc 1 227 22 ld.u16 %r160,[%r75+16]; or.b16 %r159,%r160,64; st.u16 [%r75+16],%r159; .loc 1 228 18 mov.u32 %r73,-1; bra $L1; $L20: .loc 1 230 9 cvt.s64.s32 %r161,%r156; add.u64 %r57,%r57,%r161; .loc 1 231 9 sub.u32 %r58,%r58,%r156; .loc 1 222 12 setp.gt.s32 %r162,%r58,0; @ %r162 bra $L21; bra $L5; $L12: .loc 1 189 19 ld.u16 %r165,[%r75+16]; and.b16 %r164,%r165,-2049; st.u16 [%r75+16],%r164; .loc 1 191 15 st.u32 [%r75+8],%r122; .loc 1 192 15 ld.u64 %r167,[%r75+24]; st.u64 [%r75],%r167; .loc 1 193 11 and.b16 %r168,%r165,4096; setp.ne.u16 %r170,%r168,0; @ %r170 bra $L16; bra $L17; $L44: .loc 1 189 19 cvt.u16.u32 %r172,%r39; and.b16 %r171,%r172,-2049; st.u16 [%r75+16],%r171; .loc 1 191 15 st.u32 [%r75+8],%r122; .loc 1 192 15 ld.u64 %r174,[%r75+24]; st.u64 [%r75],%r174; .loc 1 193 11 and.b16 %r175,%r172,4096; setp.ne.u16 %r177,%r175,0; @ ! %r177 bra $L17; bra $L23; $L1: .loc 1 234 1 mov.u32 %value,%r73; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fflush_r .visible .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u16 %r31; .reg .pred %r32; .reg .u32 %r35; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 272 3 setp.eq.u64 %r27,%r25,0; @ %r27 bra $L46; ld.u32 %r28,[%r25+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L46; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call __sinit,(%out_arg1); } $L46: .loc 1 274 6 ld.u16 %r31,[%r26+16]; setp.eq.u16 %r32,%r31,0; @ %r32 bra $L48; .loc 1 278 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } mov.u32 %r24,%r35; .loc 1 280 10 bra $L45; $L48: .loc 1 275 12 mov.u32 %r24,0; $L45: .loc 1 281 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fflush .visible .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u16 %r37; .reg .pred %r38; .reg .u32 %r41; mov.u64 %r27,%ar0; .loc 1 288 6 setp.ne.u64 %r28,%r27,0; @ %r28 bra $L53; .loc 1 289 12 ld.const.u64 %r31,[_global_impure_ptr]; mov.u64 %r30,_fflush_r; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),_fwalk_reent,(%out_arg1,%out_arg2); ld.param.u32 %r32,[%value_in]; } mov.u32 %r26,%r32; bra $L52; $L53: .loc 1 291 10 ld.global.u64 %r23,[_impure_ptr]; .loc 1 272 3 setp.eq.u64 %r33,%r23,0; @ %r33 bra $L55; ld.u32 %r34,[%r23+80]; setp.ne.u32 %r35,%r34,0; @ %r35 bra $L55; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L55: .loc 1 274 6 ld.u16 %r37,[%r27+16]; setp.eq.u16 %r38,%r37,0; @ %r38 bra $L56; .loc 1 278 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r41,[%value_in]; } mov.u32 %r26,%r41; .loc 1 280 10 bra $L52; $L56: .loc 1 275 12 mov.u32 %r26,0; $L52: .loc 1 292 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-ffs.o/ 0 0 0 644 661 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ffs .visible .func (.param .u32 %value_out) ffs (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/misc/ffs.c" // BEGIN GLOBAL FUNCTION DEF: ffs .visible .func (.param .u32 %value_out) ffs (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .pred %r26; mov.u32 %r23,%ar0; .loc 1 31 10 brev.b32 %r25,%r23; clz.b32 %r24,%r25; setp.ne.u32 %r26,%r23,0; selp.u32 %r24,%r24,-1,%r26; add.u32 %value,%r24,1; .loc 1 32 1 st.param.u32 [%value_out],%value; ret; } lib_a-ffsl.o/ 0 0 0 644 803 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ffsl .visible .func (.param .u32 %value_out) ffsl (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/ffsl.c" // BEGIN GLOBAL FUNCTION DECL: __ffsdi2 .extern .func (.param .u32 %value_out) __ffsdi2 (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ffsl .visible .func (.param .u32 %value_out) ffsl (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; mov.u64 %r23,%ar0; .loc 1 33 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),__ffsdi2,(%out_arg1); ld.param.u32 %r26,[%value_in]; } .loc 1 34 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-ffsll.o/ 0 0 0 644 808 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ffsll .visible .func (.param .u32 %value_out) ffsll (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/ffsll.c" // BEGIN GLOBAL FUNCTION DECL: __ffsdi2 .extern .func (.param .u32 %value_out) __ffsdi2 (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: ffsll .visible .func (.param .u32 %value_out) ffsll (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; mov.u64 %r23,%ar0; .loc 1 33 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),__ffsdi2,(%out_arg1); ld.param.u32 %r26,[%value_in]; } .loc 1 34 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-fgetc.o/ 0 0 0 644 3051 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fgetc_r .visible .func (.param .u32 %value_out) _fgetc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/fgetc.c" // BEGIN GLOBAL FUNCTION DECL: fgetc .visible .func (.param .u32 %value_out) fgetc (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fgetc_r .visible .func (.param .u32 %value_out) _fgetc_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 92 3 setp.eq.u64 %r31,%r29,0; @ %r31 bra $L2; ld.u32 %r32,[%r29+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call __sinit,(%out_arg1); } $L2: .loc 1 94 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r28,%r39; bra $L1; $L3: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r28,[%r25]; $L1: .loc 1 97 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fgetc .visible .func (.param .u32 %value_out) fgetc (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r30,%ar0; .loc 1 106 18 ld.global.u64 %r28,[_impure_ptr]; .loc 1 108 3 setp.eq.u64 %r31,%r28,0; @ %r31 bra $L9; ld.u32 %r32,[%r28+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __sinit,(%out_arg1); } $L9: .loc 1 110 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L10; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r29,%r39; bra $L8; $L10: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r29,[%r25]; $L8: .loc 1 116 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-fgetpos.o/0 0 0 644 2228 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fgetpos_r .visible .func (.param .u32 %value_out) _fgetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fgetpos.c" // BEGIN GLOBAL FUNCTION DECL: fgetpos .visible .func (.param .u32 %value_out) fgetpos (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _ftell_r .extern .func (.param .u64 %value_out) _ftell_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fgetpos_r .visible .func (.param .u32 %value_out) _fgetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 72 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),_ftell_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 72 8 st.u64 [%r27],%r30; .loc 1 74 6 set.u32.eq.u64 %r33,%r30,-1; neg.s32 %value,%r33; .loc 1 79 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fgetpos .visible .func (.param .u32 %value_out) fgetpos (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r34; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 72 10 ld.global.u64 %r30,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),_ftell_r,(%out_arg1,%out_arg2); ld.param.u64 %r31,[%value_in]; } .loc 1 72 8 st.u64 [%r27],%r31; .loc 1 74 6 set.u32.eq.u64 %r34,%r31,-1; neg.s32 %value,%r34; .loc 1 88 1 st.param.u32 [%value_out],%value; ret; } lib_a-fgets.o/ 0 0 0 644 5738 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fgets_r .visible .func (.param .u64 %value_out) _fgets_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/fgets.c" // BEGIN GLOBAL FUNCTION DECL: fgets .visible .func (.param .u64 %value_out) fgets (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fgets_r .visible .func (.param .u64 %value_out) _fgets_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r28; .reg .u32 %r37; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r61; .reg .u32 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u64 %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r89; .reg .pred %r90; .reg .u32 %r91; mov.u64 %r52,%ar0; mov.u64 %r53,%ar1; mov.u32 %r54,%ar2; mov.u64 %r55,%ar3; .loc 1 106 6 setp.gt.s32 %r56,%r54,1; @ %r56 bra $L2; $L7: .loc 1 107 12 mov.u64 %r51,0; bra $L1; $L2: .loc 1 111 3 setp.eq.u64 %r57,%r52,0; @ %r57 bra $L4; ld.u32 %r58,[%r52+80]; setp.ne.u32 %r59,%r58,0; @ %r59 bra $L4; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; call __sinit,(%out_arg1); } $L4: .loc 1 136 4 add.u32 %r44,%r54,-1; mov.u64 %r46,%r53; $L10: .loc 1 142 16 ld.s32 %r45,[%r55+8]; .loc 1 142 10 setp.ne.u64 %r61,%r45,0; @ %r61 bra $L5; .loc 1 144 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r64,[%value_in]; } .loc 1 144 7 setp.eq.u32 %r65,%r64,0; @ %r65 bra $L6; .loc 1 147 11 setp.eq.u64 %r66,%r46,%r53; @ ! %r66 bra $L8; bra $L7; $L6: .loc 1 154 8 ld.s32 %r45,[%r55+8]; $L5: .loc 1 156 9 ld.u64 %r47,[%r55]; .loc 1 164 15 cvt.s64.s32 %r67,%r44; min.u64 %r23,%r67,%r45; .loc 1 166 29 mov.u32 %r69,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r69; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r71,[%value_in]; } .loc 1 167 10 setp.eq.u64 %r72,%r71,0; @ %r72 bra $L9; .loc 1 169 8 add.u64 %r49,%r71,1; .loc 1 169 14 sub.u64 %r28,%r49,%r47; .loc 1 170 11 cvt.u32.u64 %r73,%r28; ld.u32 %r75,[%r55+8]; sub.u32 %r74,%r75,%r73; st.u32 [%r55+8],%r74; .loc 1 171 11 st.u64 [%r55],%r49; .loc 1 172 11 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r79,[%value_in]; } .loc 1 173 11 add.u64 %r80,%r46,%r28; mov.u32 %r81,0; st.u8 [%r80],%r81; .loc 1 175 11 mov.u64 %r51,%r53; bra $L1; $L9: .loc 1 177 14 cvt.u32.u64 %r37,%r23; ld.u32 %r83,[%r55+8]; sub.u32 %r82,%r83,%r37; st.u32 [%r55+8],%r82; .loc 1 178 14 ld.u64 %r85,[%r55]; add.u64 %r84,%r85,%r23; st.u64 [%r55],%r84; .loc 1 179 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r89,[%value_in]; } .loc 1 180 9 add.u64 %r46,%r46,%r23; .loc 1 182 13 sub.u32 %r44,%r44,%r37; .loc 1 182 21 setp.ne.u32 %r90,%r44,0; @ %r90 bra $L10; $L8: .loc 1 183 6 mov.u32 %r91,0; st.u8 [%r46],%r91; .loc 1 185 10 mov.u64 %r51,%r53; $L1: .loc 1 186 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fgets .visible .func (.param .u64 %value_out) fgets (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 195 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_fgets_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 196 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-fileno.o/ 0 0 0 644 1320 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fileno .visible .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/fileno.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: fileno .visible .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u16 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u32 %r36; mov.u64 %r28,%ar0; .loc 1 69 3 ld.global.u64 %r26,[_impure_ptr]; setp.eq.u64 %r29,%r26,0; @ %r29 bra $L2; ld.u32 %r30,[%r26+80]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call __sinit,(%out_arg1); } $L2: .loc 1 71 6 ld.u16 %r33,[%r28+16]; setp.eq.u16 %r34,%r33,0; @ %r34 bra $L3; .loc 1 72 12 ld.s16 %r27,[%r28+18]; bra $L1; $L3: .loc 1 76 22 ld.global.u64 %r35,[_impure_ptr]; mov.u32 %r36,9; st.u32 [%r35],%r36; .loc 1 75 14 mov.u32 %r27,-1; $L1: .loc 1 80 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-findfp.o/ 0 0 0 644 15646 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: __fp_lock .func (.param .u32 %value_out) __fp_lock (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/findfp.c" // BEGIN GLOBAL FUNCTION DECL: _cleanup_r .visible .func _cleanup_r (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: __fp_unlock .func (.param .u32 %value_out) __fp_unlock (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: __sinit$part$0 .func __sinit$part$0 (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfmoreglue .visible .func (.param .u64 %value_out) __sfmoreglue (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sfp .visible .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _cleanup .visible .func _cleanup; // BEGIN GLOBAL FUNCTION DECL: __sinit .visible .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .visible .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .visible .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DECL: __sinit_lock_acquire .visible .func __sinit_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sinit_lock_release .visible .func __sinit_lock_release; // BEGIN GLOBAL FUNCTION DECL: __fp_lock_all .visible .func __fp_lock_all; // BEGIN GLOBAL FUNCTION DECL: __fp_unlock_all .visible .func __fp_unlock_all; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fclose_r .extern .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fwalk_reent .extern .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fwalk .extern .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DEF: __sf .visible .global .align 8 .u64 __sf[66]; // BEGIN FUNCTION DEF: __fp_lock .func (.param .u32 %value_out) __fp_lock (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 338 10 mov.u32 %value,0; .loc 1 339 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _cleanup_r .visible .func _cleanup_r (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u32 %r40; .reg .u64 %r42; .reg .u32 %r43; mov.u64 %r25,%ar0; .loc 1 222 10 ld.u64 %r22,[%r25+8]; .loc 1 222 6 cvta.global.u64 %r26,__sf; setp.eq.u64 %r27,%r22,%r26; @ %r27 bra $L3; .loc 1 223 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } $L3: .loc 1 224 10 ld.u64 %r23,[%r25+16]; .loc 1 224 6 cvta.global.u64 %r31,__sf+176; setp.eq.u64 %r32,%r23,%r31; @ %r32 bra $L4; .loc 1 225 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } $L4: .loc 1 226 10 ld.u64 %r24,[%r25+24]; .loc 1 226 6 cvta.global.u64 %r36,__sf+352; setp.eq.u64 %r37,%r24,%r36; @ %r37 bra $L5; .loc 1 227 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r40,[%value_in]; } $L5: .loc 1 229 10 mov.u64 %r42,_fclose_r; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),_fwalk_reent,(%out_arg1,%out_arg2); ld.param.u32 %r43,[%value_in]; } .loc 1 230 1 ret; } // BEGIN FUNCTION DEF: __fp_unlock .func (.param .u32 %value_out) __fp_unlock (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; $LFB28: mov.u32 %value,0; st.param.u32 [%value_out],%value; ret; $LFE28: } // BEGIN FUNCTION DEF: __sinit$part$0 .func __sinit$part$0 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .u32 %r33; .reg .u32 %r39; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r58; .reg .u64 %r60; .reg .u32 %r68; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u32 %r97; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r110; .reg .u32 %r119; mov.u64 %r24,%ar0; .loc 1 256 16 mov.u64 %r25,_cleanup_r; st.u64 [%r24+88],%r25; .loc 1 258 20 mov.u64 %r26,0; st.u64 [%r24+1312],%r26; .loc 1 284 14 cvta.global.u64 %r27,__sf; .loc 1 284 6 ld.u64 %r28,[%r27+48]; setp.ne.u64 %r29,%r28,0; @ %r29 bra $L8; .loc 1 285 18 ld.const.u64 %r23,[_global_impure_ptr]; .loc 1 285 35 mov.u32 %r30,3; st.u32 [%r23+1320],%r30; .loc 1 286 34 st.u64 [%r23+1328],%r27; .loc 1 55 16 mov.u32 %r33,0; st.u32 [%r27+172],%r33; .loc 1 51 11 st.u64 [%r27],%r28; .loc 1 52 11 st.u64 [%r27+8],%r28; .loc 1 54 15 mov.u32 %r39,4; st.u32 [%r27+16],%r39; .loc 1 57 18 st.u64 [%r27+24],%r28; .loc 1 58 18 st.u32 [%r27+32],%r33; .loc 1 59 17 st.u32 [%r27+40],%r33; .loc 1 60 3 add.u64 %r49,%r27,164; mov.u64 %r48,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r50,[%value_in]; } .loc 1 61 16 st.u64 [%r27+48],%r27; .loc 1 62 14 mov.u64 %r54,__sread; st.u64 [%r27+56],%r54; .loc 1 64 15 mov.u64 %r56,__swrite; st.u64 [%r27+64],%r56; .loc 1 70 14 mov.u64 %r58,__sseek; st.u64 [%r27+72],%r58; .loc 1 72 15 mov.u64 %r60,__sclose; st.u64 [%r27+80],%r60; .loc 1 55 16 st.u32 [%r27+348],%r33; .loc 1 51 11 st.u64 [%r27+176],%r28; .loc 1 52 11 st.u64 [%r27+184],%r28; .loc 1 54 15 mov.u32 %r68,65545; st.u32 [%r27+192],%r68; .loc 1 57 18 st.u64 [%r27+200],%r28; .loc 1 58 18 st.u32 [%r27+208],%r33; .loc 1 59 17 st.u32 [%r27+216],%r33; .loc 1 60 3 add.u64 %r78,%r27,340; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r79,[%value_in]; } .loc 1 61 16 add.u64 %r81,%r27,176; st.u64 [%r27+224],%r81; .loc 1 62 14 st.u64 [%r27+232],%r54; .loc 1 64 15 st.u64 [%r27+240],%r56; .loc 1 70 14 st.u64 [%r27+248],%r58; .loc 1 72 15 st.u64 [%r27+256],%r60; .loc 1 55 16 st.u32 [%r27+524],%r33; .loc 1 51 11 st.u64 [%r27+352],%r28; .loc 1 52 11 st.u64 [%r27+360],%r28; .loc 1 54 15 mov.u32 %r97,131090; st.u32 [%r27+368],%r97; .loc 1 57 18 st.u64 [%r27+376],%r28; .loc 1 58 18 st.u32 [%r27+384],%r33; .loc 1 59 17 st.u32 [%r27+392],%r33; .loc 1 60 3 add.u64 %r107,%r27,516; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r107; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r108,[%value_in]; } .loc 1 61 16 add.u64 %r110,%r27,352; st.u64 [%r27+400],%r110; .loc 1 62 14 st.u64 [%r27+408],%r54; .loc 1 64 15 st.u64 [%r27+416],%r56; .loc 1 70 14 st.u64 [%r27+424],%r58; .loc 1 72 15 st.u64 [%r27+432],%r60; $L8: .loc 1 297 17 mov.u32 %r119,1; st.u32 [%r24+80],%r119; .loc 1 300 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sfmoreglue .visible .func (.param .u64 %value_out) __sfmoreglue (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u64 %r41; .reg .u64 %r42; mov.u64 %r28,%ar0; mov.u32 %r29,%ar1; .loc 1 132 36 add.u32 %r30,%r29,-1; .loc 1 132 41 mov.u32 %r31,176; mul.wide.s32 %r23,%r30,%r31; .loc 1 132 5 add.u64 %r34,%r23,200; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r35,[%value_in]; } .loc 1 133 6 setp.eq.u64 %r36,%r35,0; @ %r36 bra $L9; .loc 1 135 17 mov.u64 %r37,0; st.u64 [%r35],%r37; .loc 1 136 18 st.u32 [%r35+8],%r29; .loc 1 137 19 add.u64 %r25,%r35,24; .loc 1 137 17 st.u64 [%r35+16],%r25; .loc 1 138 3 add.u64 %r41,%r23,176; mov.u32 %r39,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r41; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r42,[%value_in]; } $L9: .loc 1 140 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sfp .visible .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r69; .reg .pred %r70; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .u32 %r76; .reg .u32 %r78; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r82; mov.u64 %r42,%ar0; .loc 1 155 21 ld.const.u64 %r22,[_global_impure_ptr]; .loc 1 155 6 ld.u32 %r43,[%r22+80]; setp.ne.u32 %r44,%r43,0; @ %r44 bra $L15; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call __sinit$part$0,(%out_arg1); } $L15: .loc 1 157 10 add.u64 %r28,%r22,1312; $L22: .loc 1 159 15 ld.u64 %r29,[%r28+16]; .loc 1 159 29 ld.u32 %r30,[%r28+8]; .loc 1 159 46 setp.le.s32 %r46,%r30,0; @ %r46 bra $L16; add.u64 %r31,%r29,16; add.u32 %r47,%r30,-1; cvt.u64.u32 %r48,%r47; add.u64 %r50,%r29,192; mad.lo.u64 %r40,%r48,176,%r50; $L19: add.u64 %r41,%r31,-16; .loc 1 160 5 ld.u16 %r51,[%r31]; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L17; .loc 1 173 15 mov.u32 %r53,0; st.u32 [%r41+172],%r53; .loc 1 179 10 mov.u64 %r54,0; st.u64 [%r41],%r54; .loc 1 181 10 st.u64 [%r41+8],%r54; .loc 1 172 14 mov.u32 %r56,-65535; st.u32 [%r41+16],%r56; .loc 1 182 17 st.u64 [%r41+24],%r54; .loc 1 183 17 st.u32 [%r41+32],%r53; .loc 1 184 16 st.u32 [%r41+40],%r53; .loc 1 185 11 add.u64 %r63,%r31,148; .loc 1 185 3 mov.u64 %r62,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r62; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r64,[%value_in]; } .loc 1 187 17 st.u64 [%r41+88],%r54; .loc 1 188 17 st.u32 [%r41+96],%r53; .loc 1 189 17 st.u64 [%r41+120],%r54; .loc 1 190 17 st.u32 [%r41+128],%r53; .loc 1 192 10 bra $L14; $L17: .loc 1 159 46 add.u64 %r31,%r31,176; setp.ne.u64 %r69,%r31,%r40; @ %r69 bra $L19; $L16: .loc 1 162 12 ld.u64 %r25,[%r28]; .loc 1 162 10 setp.ne.u64 %r70,%r25,0; @ %r70 bra $L20; .loc 1 132 5 mov.u64 %r72,728; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r72; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r73,[%value_in]; } mov.u64 %r41,%r73; .loc 1 133 6 setp.ne.u64 %r74,%r41,0; @ %r74 bra $L21; .loc 1 163 14 st.u64 [%r28],%r41; .loc 1 167 13 mov.u32 %r76,12; st.u32 [%r42],%r76; .loc 1 168 10 bra $L14; $L21: .loc 1 135 17 st.u64 [%r73],%r25; .loc 1 136 18 mov.u32 %r78,4; st.u32 [%r73+8],%r78; .loc 1 137 19 add.u64 %r35,%r73,24; .loc 1 137 17 st.u64 [%r73+16],%r35; .loc 1 138 3 mov.u64 %r81,704; mov.u32 %r80,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r80; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r81; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r82,[%value_in]; } .loc 1 139 10 mov.u64 %r25,%r73; .loc 1 163 14 st.u64 [%r28],%r25; $L20: .loc 1 157 40 mov.u64 %r28,%r25; .loc 1 159 25 bra $L22; $L14: .loc 1 193 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _cleanup .visible .func _cleanup { .reg .u64 %r24; .loc 1 236 3 ld.const.u64 %r24,[_global_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call _cleanup_r,(%out_arg1); } .loc 1 237 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sinit .visible .func __sinit (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; mov.u64 %r23,%ar0; .loc 1 249 6 ld.u32 %r24,[%r23+80]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L25; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit$part$0,(%out_arg1); } $L25: .loc 1 300 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sfp_lock_acquire .visible .func __sfp_lock_acquire { .loc 1 311 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __sfp_lock_release .visible .func __sfp_lock_release { $LFB22: ret; $LFE22: } // BEGIN GLOBAL FUNCTION DEF: __sinit_lock_acquire .visible .func __sinit_lock_acquire { $LFB24: ret; $LFE24: } // BEGIN GLOBAL FUNCTION DEF: __sinit_lock_release .visible .func __sinit_lock_release { $LFB26: ret; $LFE26: } // BEGIN GLOBAL FUNCTION DEF: __fp_lock_all .visible .func __fp_lock_all { .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .loc 1 356 10 ld.global.u64 %r25,[_impure_ptr]; mov.u64 %r24,__fp_lock; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fwalk,(%out_arg1,%out_arg2); ld.param.u32 %r26,[%value_in]; } .loc 1 357 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __fp_unlock_all .visible .func __fp_unlock_all { .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .loc 1 362 10 ld.global.u64 %r25,[_impure_ptr]; mov.u64 %r24,__fp_unlock; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_fwalk,(%out_arg1,%out_arg2); ld.param.u32 %r26,[%value_in]; } .loc 1 365 1 ret; } lib_a-fini.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /306 0 0 0 644 2551 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fiprintf_r .visible .func (.param .u32 %value_out) _fiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/fiprintf.c" // BEGIN GLOBAL FUNCTION DECL: fiprintf .visible .func (.param .u32 %value_out) fiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .extern .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fiprintf_r .visible .func (.param .u32 %value_out) _fiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 33 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fiprintf .visible .func (.param .u32 %value_out) fiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 48 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 51 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-fiscanf.o/0 0 0 644 2546 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fiscanf .visible .func (.param .u32 %value_out) fiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fiscanf.c" // BEGIN GLOBAL FUNCTION DECL: _fiscanf_r .visible .func (.param .u32 %value_out) _fiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .extern .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: fiscanf .visible .func (.param .u32 %value_out) fiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 33 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fiscanf_r .visible .func (.param .u32 %value_out) _fiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 47 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 50 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-flags.o/ 0 0 0 644 2274 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sflags .visible .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/flags.c" // BEGIN GLOBAL FUNCTION DEF: __sflags .visible .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .pred %r37; .reg .pred %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .pred %r42; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r47; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 39 15 ld.s8 %r22,[%r32]; .loc 1 39 3 cvt.u16.u32 %r34,%r22; setp.eq.u16 %r35,%r34,114; @ %r35 bra $L9; setp.eq.u16 %r37,%r34,119; @ %r37 bra $L10; setp.eq.u16 %r39,%r34,97; @ %r39 bra $L11; .loc 1 59 19 mov.u32 %r40,22; st.u32 [%r31],%r40; .loc 1 60 14 mov.u32 %r30,0; bra $L1; $L7: .loc 1 64 7 cvt.u16.u32 %r41,%r25; setp.eq.u16 %r42,%r41,43; @ %r42 bra $L4; setp.eq.u16 %r44,%r41,120; @ %r44 bra $L5; bra $L6; $L4: .loc 1 67 35 and.b32 %r23,%r30,-29; .loc 1 67 8 or.b32 %r30,%r23,16; .loc 1 68 11 and.b32 %r24,%r27,-4; .loc 1 68 6 or.b32 %r27,%r24,2; .loc 1 69 4 bra $L6; $L5: .loc 1 86 6 or.b32 %r27,%r27,2048; .loc 1 87 4 bra $L6; $L9: .loc 1 44 9 mov.u32 %r29,0; .loc 1 43 9 mov.u32 %r27,%r29; .loc 1 42 11 mov.u32 %r30,4; bra $L2; $L10: .loc 1 39 3 mov.u32 %r29,1536; mov.u32 %r27,1; mov.u32 %r30,8; bra $L2; $L11: .loc 1 56 9 mov.u32 %r29,520; .loc 1 55 9 mov.u32 %r27,1; .loc 1 54 11 mov.u32 %r30,264; $L2: .loc 1 62 10 add.u64 %r28,%r32,1; ld.s8 %r25,[%r32+1]; setp.ne.u32 %r45,%r25,0; @ %r45 bra $L7; bra $L8; $L6: add.u64 %r28,%r28,1; ld.s8 %r25,[%r28]; setp.ne.u32 %r46,%r25,0; @ %r46 bra $L7; $L8: .loc 1 92 13 or.b32 %r47,%r29,%r27; .loc 1 92 9 st.u32 [%r33],%r47; $L1: .loc 1 94 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-fls.o/ 0 0 0 644 762 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fls .visible .func (.param .u32 %value_out) fls (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/string/fls.c" // BEGIN GLOBAL FUNCTION DEF: fls .visible .func (.param .u32 %value_out) fls (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .u32 %r29; mov.u32 %r27,%ar0; .loc 1 34 5 setp.eq.u32 %r28,%r27,0; @ %r28 bra $L3; .loc 1 37 33 clz.b32 %r23,%r27; .loc 1 37 31 mov.u32 %r29,32; sub.u32 %r26,%r29,%r23; bra $L1; $L3: .loc 1 35 10 mov.u32 %r26,%r27; $L1: .loc 1 38 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-flsl.o/ 0 0 0 644 764 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: flsl .visible .func (.param .u32 %value_out) flsl (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/flsl.c" // BEGIN GLOBAL FUNCTION DEF: flsl .visible .func (.param .u32 %value_out) flsl (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; mov.u64 %r27,%ar0; .loc 1 34 5 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L3; .loc 1 37 33 clz.b64 %r23,%r27; .loc 1 37 31 mov.u32 %r29,64; sub.u32 %r26,%r29,%r23; bra $L1; $L3: .loc 1 35 10 mov.u32 %r26,0; $L1: .loc 1 38 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-flsll.o/ 0 0 0 644 769 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: flsll .visible .func (.param .u32 %value_out) flsll (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/flsll.c" // BEGIN GLOBAL FUNCTION DEF: flsll .visible .func (.param .u32 %value_out) flsll (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; mov.u64 %r27,%ar0; .loc 1 34 5 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L3; .loc 1 37 33 clz.b64 %r23,%r27; .loc 1 37 31 mov.u32 %r29,64; sub.u32 %r26,%r29,%r23; bra $L1; $L3: .loc 1 35 10 mov.u32 %r26,0; $L1: .loc 1 38 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-fopen.o/ 0 0 0 644 6072 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fopen_r .visible .func (.param .u64 %value_out) _fopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fopen.c" // BEGIN GLOBAL FUNCTION DECL: fopen .visible .func (.param .u64 %value_out) fopen (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sflags .extern .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfp .extern .func (.param .u64 %value_out) __sfp (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .extern .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .extern .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fseek_r .extern .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _fopen_r .visible .func (.param .u64 %value_out) _fopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .pred %r39; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u16 %r53; .reg .pred %r55; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 124 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r35,[%value_in]; } .loc 1 124 6 setp.ne.u32 %r36,%r35,0; @ %r36 bra $L2; $L4: .loc 1 125 12 mov.u64 %r28,0; bra $L1; $L2: .loc 1 126 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call (%value_in),__sfp,(%out_arg1); ld.param.u64 %r38,[%value_in]; } mov.u64 %r28,%r38; .loc 1 126 6 setp.eq.u64 %r39,%r28,0; @ %r39 bra $L4; .loc 1 129 12 mov.u32 %r43,438; ld.u32 %r42,[%frame]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r42; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r43; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } .loc 1 129 6 setp.ge.s32 %r45,%r44,0; @ %r45 bra $L5; .loc 1 131 7 { call __sfp_lock_acquire; } .loc 1 132 18 mov.u16 %r46,0; st.u16 [%r28+16],%r46; .loc 1 136 7 { call __sfp_lock_release; } .loc 1 137 14 mov.u64 %r28,0; bra $L1; $L5: .loc 1 142 13 st.u16 [%r28+18],%r44; .loc 1 143 14 cvt.u16.u32 %r47,%r35; st.u16 [%r28+16],%r47; .loc 1 144 15 st.u64 [%r28+48],%r28; .loc 1 145 13 mov.u64 %r49,__sread; st.u64 [%r28+56],%r49; .loc 1 146 14 mov.u64 %r50,__swrite; st.u64 [%r28+64],%r50; .loc 1 147 13 mov.u64 %r51,__sseek; st.u64 [%r28+72],%r51; .loc 1 148 14 mov.u64 %r52,__sclose; st.u64 [%r28+80],%r52; .loc 1 150 6 and.b16 %r53,%r47,256; setp.eq.u16 %r55,%r53,0; @ %r55 bra $L1; .loc 1 151 5 mov.u32 %r59,2; mov.u64 %r58,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r58; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r59; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r60,[%value_in]; } $L1: .loc 1 160 1 mov.u64 %value,%r28; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fopen .visible .func (.param .u64 %value_out) fopen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 168 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_fopen_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 169 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-fprintf.o/0 0 0 644 2538 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fprintf_r .visible .func (.param .u32 %value_out) _fprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/fprintf.c" // BEGIN GLOBAL FUNCTION DECL: fprintf .visible .func (.param .u32 %value_out) fprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfprintf_r .extern .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fprintf_r .visible .func (.param .u32 %value_out) _fprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 33 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fprintf .visible .func (.param .u32 %value_out) fprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 54 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 57 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-fputc.o/ 0 0 0 644 2791 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fputc_r .visible .func (.param .u32 %value_out) _fputc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fputc.c" // BEGIN GLOBAL FUNCTION DECL: fputc .visible .func (.param .u32 %value_out) fputc (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _putc_r .extern .func (.param .u32 %value_out) _putc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _fputc_r .visible .func (.param .u32 %value_out) _fputc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r34; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 95 3 setp.eq.u64 %r27,%r24,0; @ %r27 bra $L2; ld.u32 %r28,[%r24+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L2: .loc 1 97 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),_putc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r34,[%value_in]; } .loc 1 100 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fputc .visible .func (.param .u32 %value_out) fputc (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r34; mov.u32 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 109 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 111 3 setp.eq.u64 %r27,%r23,0; @ %r27 bra $L7; ld.u32 %r28,[%r23+80]; setp.ne.u32 %r29,%r28,0; @ %r29 bra $L7; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L7: .loc 1 113 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),_putc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r34,[%value_in]; } .loc 1 119 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } lib_a-fputs.o/ 0 0 0 644 3930 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fputs_r .visible .func (.param .u32 %value_out) _fputs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fputs.c" // BEGIN GLOBAL FUNCTION DECL: fputs .visible .func (.param .u32 %value_out) fputs (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .extern .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _fputs_r .visible .func (.param .u32 %value_out) _fputs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u16 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u16 %r44; .reg .u32 %r46; .reg .u32 %r50; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 98 16 st.u64 [%frame+24],%r31; .loc 1 99 33 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r34,[%value_in]; } .loc 1 99 31 st.u64 [%frame+16],%r34; .loc 1 99 15 st.u64 [%frame+32],%r34; .loc 1 100 15 add.u64 %r35,%frame,24; st.u64 [%frame],%r35; .loc 1 101 18 mov.u32 %r36,1; st.u32 [%frame+8],%r36; .loc 1 103 3 setp.eq.u64 %r37,%r30,0; @ %r37 bra $L2; ld.u32 %r38,[%r30+80]; setp.ne.u32 %r39,%r38,0; @ %r39 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call __sinit,(%out_arg1); } $L2: .loc 1 106 3 ld.u16 %r42,[%r32+16]; and.b16 %r41,%r42,8192; setp.ne.u16 %r43,%r41,0; @ %r43 bra $L3; .loc 1 105 3 ld.u32 %r24,[%r32+172]; .loc 1 106 3 or.b16 %r44,%r42,8192; st.u16 [%r32+16],%r44; and.b32 %r46,%r24,-8193; st.u32 [%r32+172],%r46; $L3: .loc 1 107 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r50,[%value_in]; } .loc 1 133 1 mov.u32 %value,%r50; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fputs .visible .func (.param .u32 %value_out) fputs (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 140 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_fputs_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 141 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-fread.o/ 0 0 0 644 8586 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fread_r .visible .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdio/fread.c" // BEGIN GLOBAL FUNCTION DECL: fread .visible .func (.param .u64 %value_out) fread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fread_r .visible .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r38; .reg .u64 %r42; .reg .u64 %r45; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u16 %r78; .reg .u16 %r79; .reg .pred %r80; .reg .u16 %r81; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .pred %r99; .reg .u64 %r101; .reg .pred %r102; .reg .u64 %r105; .reg .u32 %r108; .reg .u32 %r109; .reg .pred %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .u32 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .pred %r126; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .pred %r137; .reg .u64 %r138; mov.u64 %r68,%ar0; mov.u64 %r69,%ar1; mov.u64 %r70,%ar2; mov.u64 %r71,%ar3; mov.u64 %r72,%ar4; .loc 1 155 14 mul.lo.u64 %r67,%r71,%r70; .loc 1 155 6 setp.eq.u64 %r73,%r67,0; @ %r73 bra $L1; .loc 1 158 3 setp.eq.u64 %r74,%r68,0; @ %r74 bra $L3; ld.u32 %r75,[%r68+80]; setp.ne.u32 %r76,%r75,0; @ %r76 bra $L3; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; call __sinit,(%out_arg1); } $L3: .loc 1 161 3 ld.s16 %r24,[%r72+16]; cvt.u16.u32 %r79,%r24; and.b16 %r78,%r79,8192; setp.ne.u16 %r80,%r78,0; @ %r80 bra $L4; .loc 1 160 3 ld.u32 %r23,[%r72+172]; .loc 1 161 3 or.b16 %r81,%r79,8192; cvt.s32.s16 %r24,%r81; st.u16 [%r72+16],%r81; and.b32 %r84,%r23,-8193; st.u32 [%r72+172],%r84; $L4: .loc 1 162 9 ld.u32 %r66,[%r72+8]; .loc 1 162 6 setp.lt.s32 %r85,%r66,0; @ %r85 bra $L5; .loc 1 173 33 cvt.s64.s32 %r42,%r66; bra $L6; $L5: .loc 1 163 12 mov.u32 %r86,0; st.u32 [%r72+8],%r86; mov.u64 %r42,0; mov.u32 %r66,%r86; $L6: .loc 1 174 45 ld.u64 %r138,[%r72]; .loc 1 170 6 cvt.u16.u32 %r88,%r24; and.b16 %r87,%r88,2; setp.eq.u16 %r89,%r87,0; @ %r89 bra $L16; .loc 1 173 47 min.u64 %r29,%r42,%r67; .loc 1 174 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r93,[%value_in]; } .loc 1 175 14 ld.u64 %r95,[%r72]; add.u64 %r94,%r95,%r29; st.u64 [%r72],%r94; .loc 1 173 11 cvt.u32.u64 %r96,%r29; .loc 1 176 14 ld.u32 %r98,[%r72+8]; sub.u32 %r97,%r98,%r96; st.u32 [%r72+8],%r97; .loc 1 178 13 sub.u64 %r25,%r67,%r29; .loc 1 181 11 ld.u64 %r34,[%r72+88]; .loc 1 181 10 setp.eq.u64 %r99,%r34,0; @ ! %r99 bra $L26; setp.ne.u64 %r137,%r25,0; bra $L8; $L26: .loc 1 181 22 setp.ne.u64 %r137,%r25,0; @ %r137 bra $L9; $L13: .loc 1 256 10 mov.u64 %r67,%r71; bra $L1; $L9: .loc 1 182 2 add.u64 %r101,%r72,116; setp.eq.u64 %r102,%r34,%r101; @ %r102 bra $L10; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call _free_r,(%out_arg1,%out_arg2); } $L10: mov.u64 %r105,0; st.u64 [%r72+88],%r105; bra $L8; $L12: .loc 1 189 10 ld.u64 %r58,[%r72+24]; .loc 1 190 11 ld.u64 %r59,[%r72]; .loc 1 191 8 ld.u32 %r60,[%r72+32]; .loc 1 193 18 st.u64 [%r72+24],%r53; .loc 1 194 18 st.u32 [%r72+32],%r25; .loc 1 195 11 st.u64 [%r72],%r53; .loc 1 196 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r72; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r108,[%value_in]; } .loc 1 198 18 st.u64 [%r72+24],%r58; .loc 1 199 18 st.u32 [%r72+32],%r60; .loc 1 200 11 st.u64 [%r72],%r59; .loc 1 201 15 ld.s32 %r38,[%r72+8]; .loc 1 201 10 sub.u64 %r62,%r25,%r38; .loc 1 202 6 add.u64 %r53,%r53,%r38; .loc 1 203 11 mov.u32 %r109,0; st.u32 [%r72+8],%r109; .loc 1 204 7 setp.eq.u32 %r110,%r108,0; @ %r110 bra $L17; .loc 1 214 22 add.u64 %r111,%r38,%r67; sub.u64 %r112,%r111,%r25; .loc 1 214 31 div.u64 %r67,%r112,%r70; bra $L1; $L8: .loc 1 177 9 add.u64 %r53,%r69,%r29; bra $L11; $L17: .loc 1 201 10 mov.u64 %r25,%r62; setp.ne.u64 %r137,%r25,0; $L11: .loc 1 185 20 @ %r137 bra $L12; bra $L13; $L15: .loc 1 223 11 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r117,[%value_in]; } .loc 1 224 11 ld.u64 %r119,[%r72]; add.u64 %r118,%r119,%r45; st.u64 [%r72],%r118; .loc 1 226 6 add.u64 %r69,%r69,%r45; .loc 1 227 10 sub.u64 %r56,%r26,%r45; .loc 1 228 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r72; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r122,[%value_in]; } .loc 1 228 7 setp.ne.u32 %r123,%r122,0; @ %r123 bra $L14; .loc 1 221 25 ld.u32 %r66,[%r72+8]; .loc 1 227 10 mov.u64 %r26,%r56; ld.u64 %r138,[%r72]; bra $L7; $L14: .loc 1 239 22 add.u64 %r124,%r45,%r67; sub.u64 %r125,%r124,%r26; .loc 1 239 31 div.u64 %r67,%r125,%r70; bra $L1; $L16: mov.u64 %r26,%r67; $L7: .loc 1 221 25 cvt.s64.s32 %r45,%r66; .loc 1 221 20 setp.gt.u64 %r126,%r26,%r45; @ %r126 bra $L15; .loc 1 242 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r130,[%value_in]; } .loc 1 243 14 cvt.u32.u64 %r131,%r26; ld.u32 %r133,[%r72+8]; sub.u32 %r132,%r133,%r131; st.u32 [%r72+8],%r132; .loc 1 244 14 ld.u64 %r135,[%r72]; add.u64 %r134,%r135,%r26; st.u64 [%r72],%r134; .loc 1 256 10 mov.u64 %r67,%r71; $L1: .loc 1 257 1 mov.u64 %value,%r67; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fread .visible .func (.param .u64 %value_out) fread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 266 11 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_fread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 267 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } lib_a-free.o/ 0 0 0 644 1108 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .visible .func __nvptx_free (.param .u64 %in_ar0); .file 1 "../../../../../../../newlib/libc/machine/nvptx/free.c" // BEGIN GLOBAL FUNCTION DECL: free .extern .func free (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_uni .extern .shared .u32 __nvptx_uni[32]; // BEGIN GLOBAL FUNCTION DEF: __nvptx_free .visible .func __nvptx_free (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .pred %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .u64 %r29; { .reg .u32 %ustmp0; .reg .u64 %ustmp1; mov.u32 %ustmp0,%tid.y; mul.wide.u32 %ustmp1,%ustmp0,4; mov.u64 %r29,__nvptx_uni; add.u64 %r29,%r29,%ustmp1; ld.shared.u32 %r27,[%r29]; mov.u32 %ustmp0,%laneid; and.b32 %r27,%r27,%ustmp0; setp.eq.u32 %r28,%r27,%ustmp0; } mov.u64 %r23,%ar0; .loc 1 24 6 setp.eq.u64 %r24,%r23,0; @ %r24 bra $L1; .loc 1 25 5 add.u64 %r26,%r23,-8; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; @ %r28 call free,(%out_arg1); } $L1: .loc 1 26 1 ret; } lib_a-freer.o/ 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-freopen.o/0 0 0 644 11065 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _freopen_r .visible .func (.param .u64 %value_out) _freopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/freopen.c" // BEGIN GLOBAL FUNCTION DECL: freopen .visible .func (.param .u64 %value_out) freopen (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sflags .extern .func (.param .u32 %value_out) __sflags (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _fclose_r .extern .func (.param .u32 %value_out) _fclose_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_acquire .extern .func __sfp_lock_acquire; // BEGIN GLOBAL FUNCTION DECL: __sfp_lock_release .extern .func __sfp_lock_release; // BEGIN GLOBAL FUNCTION DECL: __sread .extern .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .extern .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .extern .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .extern .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _freopen_r .visible .func (.param .u64 %value_out) _freopen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r30; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r45; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r63; .reg .pred %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u32 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r77; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .pred %r85; .reg .u32 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .pred %r92; .reg .u64 %r95; .reg .u64 %r96; .reg .u32 %r99; .reg .pred %r101; .reg .u64 %r102; .reg .pred %r103; .reg .u64 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u64 %r111; .reg .u32 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r121; .reg .pred %r122; .reg .u16 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .pred %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u64 %r132; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; mov.u64 %r50,%ar2; mov.u64 %r51,%ar3; .loc 1 87 3 setp.eq.u64 %r52,%r48,0; @ %r52 bra $L2; ld.u32 %r53,[%r48+80]; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call __sinit,(%out_arg1); } $L2: .loc 1 99 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r50; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sflags,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r59,[%value_in]; } .loc 1 99 6 setp.ne.u32 %r60,%r59,0; @ %r60 bra $L3; .loc 1 106 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fclose_r,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } .loc 1 107 14 mov.u64 %r47,0; bra $L1; $L3: .loc 1 118 9 ld.s16 %r23,[%r51+16]; .loc 1 118 6 setp.ne.u32 %r64,%r23,0; @ %r64 bra $L5; .loc 1 119 16 mov.u16 %r65,32; st.u16 [%r51+16],%r65; .loc 1 137 6 setp.eq.u64 %r66,%r49,0; @ %r66 bra $L6; bra $L7; $L5: .loc 1 122 10 cvt.u16.u32 %r68,%r23; and.b16 %r67,%r68,8; setp.eq.u16 %r69,%r67,0; @ %r69 bra $L8; .loc 1 123 2 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r72,[%value_in]; } $L8: .loc 1 128 13 ld.u64 %r25,[%r51+80]; .loc 1 128 10 setp.eq.u64 %r73,%r25,0; @ %r73 bra $L9; .loc 1 129 2 ld.u64 %r132,[%r51+48]; .loc 1 128 30 setp.eq.u64 %r74,%r49,0; @ %r74 bra $L10; .loc 1 129 2 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r132; call (%value_in),%r25,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r77,[%value_in]; } $L7: .loc 1 139 11 mov.u32 %r81,438; ld.u32 %r80,[%frame]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r80; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r82,[%value_in]; } mov.u32 %r38,%r82; .loc 1 140 9 ld.u32 %r39,[%r48]; ld.u16 %r84,[%r51+16]; and.b16 %r83,%r84,128; cvt.s32.s16 %r45,%r83; bra $L11; $L6: .loc 1 174 10 ld.u64 %r25,[%r51+80]; .loc 1 174 7 setp.eq.u64 %r85,%r25,0; @ %r85 bra $L18; ld.u64 %r132,[%r51+48]; $L10: .loc 1 175 6 { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r132; call (%value_in),%r25,(%out_arg1,%out_arg2),$LCT1; ld.param.u32 %r89,[%value_in]; } ld.u16 %r91,[%r51+16]; and.b16 %r90,%r91,128; cvt.s32.s16 %r45,%r90; .loc 1 173 6 mov.u32 %r39,9; .loc 1 159 9 mov.u32 %r38,-1; $L11: .loc 1 186 6 setp.eq.u32 %r92,%r45,0; @ %r92 bra $L12; .loc 1 187 5 ld.u64 %r95,[%r51+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r95; call _free_r,(%out_arg1,%out_arg2); } bra $L12; $L18: .loc 1 173 6 mov.u32 %r39,9; .loc 1 159 9 mov.u32 %r38,-1; $L12: .loc 1 190 10 mov.u64 %r96,0; st.u64 [%r51],%r96; .loc 1 189 10 st.u64 [%r51+8],%r96; .loc 1 191 17 st.u64 [%r51+24],%r96; .loc 1 192 17 mov.u32 %r99,0; st.u32 [%r51+32],%r99; .loc 1 193 16 st.u32 [%r51+40],%r99; .loc 1 194 7 ld.u64 %r28,[%r51+88]; .loc 1 194 6 setp.eq.u64 %r101,%r28,0; @ %r101 bra $L13; .loc 1 195 5 add.u64 %r102,%r51,116; setp.eq.u64 %r103,%r28,%r102; @ %r103 bra $L14; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call _free_r,(%out_arg1,%out_arg2); } $L14: mov.u64 %r106,0; st.u64 [%r51+88],%r106; $L13: .loc 1 196 17 mov.u32 %r107,0; st.u32 [%r51+96],%r107; .loc 1 197 7 ld.u64 %r30,[%r51+120]; .loc 1 197 6 setp.eq.u64 %r108,%r30,0; @ %r108 bra $L15; .loc 1 198 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r111,0; st.u64 [%r51+120],%r111; $L15: .loc 1 199 17 mov.u32 %r112,0; st.u32 [%r51+128],%r112; .loc 1 200 14 ld.u16 %r114,[%r51+16]; and.b16 %r113,%r114,-8193; st.u16 [%r51+16],%r113; .loc 1 201 15 ld.u32 %r116,[%r51+172]; and.b32 %r115,%r116,-8193; st.u32 [%r51+172],%r115; .loc 1 202 11 add.u64 %r120,%r51,164; .loc 1 202 3 mov.u64 %r119,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r120; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r112; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r119; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r121,[%value_in]; } .loc 1 204 6 setp.ge.s32 %r122,%r38,0; @ %r122 bra $L16; .loc 1 206 7 { call __sfp_lock_acquire; } .loc 1 207 18 mov.u16 %r123,0; st.u16 [%r51+16],%r123; .loc 1 208 19 st.u32 [%r48],%r39; .loc 1 214 7 { call __sfp_lock_release; } .loc 1 218 14 mov.u64 %r47,0; bra $L1; $L16: .loc 1 221 14 st.u16 [%r51+16],%r59; .loc 1 222 13 st.u16 [%r51+18],%r38; .loc 1 223 15 st.u64 [%r51+48],%r51; .loc 1 224 13 mov.u64 %r124,__sread; st.u64 [%r51+56],%r124; .loc 1 225 14 mov.u64 %r125,__swrite; st.u64 [%r51+64],%r125; .loc 1 226 13 mov.u64 %r126,__sseek; st.u64 [%r51+72],%r126; .loc 1 227 14 mov.u64 %r127,__sclose; st.u64 [%r51+80],%r127; .loc 1 239 10 mov.u64 %r47,%r51; bra $L1; $L9: .loc 1 137 6 setp.ne.u64 %r129,%r49,0; @ %r129 bra $L7; ld.u16 %r131,[%r51+16]; and.b16 %r130,%r131,128; cvt.s32.s16 %r45,%r130; .loc 1 173 6 mov.u32 %r39,9; .loc 1 159 9 mov.u32 %r38,-1; bra $L11; $L1: .loc 1 240 1 mov.u64 %value,%r47; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: freopen .visible .func (.param .u64 %value_out) freopen (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 249 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_freopen_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 250 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-fscanf.o/ 0 0 0 644 2525 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: fscanf .visible .func (.param .u32 %value_out) fscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fscanf.c" // BEGIN GLOBAL FUNCTION DECL: _fscanf_r .visible .func (.param .u32 %value_out) _fscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfscanf_r .extern .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: fscanf .visible .func (.param .u32 %value_out) fscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 33 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fscanf_r .visible .func (.param .u32 %value_out) _fscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 53 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 56 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-fseek.o/ 0 0 0 644 2579 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fseek_r .visible .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/fseek.c" // BEGIN GLOBAL FUNCTION DECL: fseek .visible .func (.param .u32 %value_out) fseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fseeko_r .extern .func (.param .u32 %value_out) _fseeko_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fseek_r .visible .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 89 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_fseeko_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r31,[%value_in]; } .loc 1 90 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fseek .visible .func (.param .u32 %value_out) fseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 89 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_fseeko_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 100 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-fsetpos.o/0 0 0 644 2596 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fsetpos_r .visible .func (.param .u32 %value_out) _fsetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fsetpos.c" // BEGIN GLOBAL FUNCTION DECL: fsetpos .visible .func (.param .u32 %value_out) fsetpos (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fseek_r .extern .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _fsetpos_r .visible .func (.param .u32 %value_out) _fsetpos_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r36; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 66 11 mov.u32 %r32,0; ld.u64 %r31,[%r28]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 68 6 set.u32.ne.u32 %r36,%r33,0; neg.s32 %value,%r36; .loc 1 71 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fsetpos .visible .func (.param .u32 %value_out) fsetpos (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r37; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 66 11 ld.global.u64 %r33,[_impure_ptr]; mov.u32 %r32,0; ld.u64 %r31,[%r28]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r34,[%value_in]; } .loc 1 68 6 set.u32.ne.u32 %r37,%r34,0; neg.s32 %value,%r37; .loc 1 80 1 st.param.u32 [%value_out],%value; ret; } lib_a-fstatr.o/ 0 0 0 644 1521 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fstat_r .visible .func (.param .u32 %value_out) _fstat_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/fstatr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: fstat .extern .func (.param .u32 %value_out) fstat (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fstat_r .visible .func (.param .u32 %value_out) _fstat_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 54 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 55 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),fstat,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 55 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 55 49 ld.global.u32 %r22,[errno]; .loc 1 55 40 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 56 17 st.u32 [%r24],%r22; $L1: .loc 1 58 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-ftell.o/ 0 0 0 644 1791 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _ftell_r .visible .func (.param .u64 %value_out) _ftell_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/ftell.c" // BEGIN GLOBAL FUNCTION DECL: ftell .visible .func (.param .u64 %value_out) ftell (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _ftello_r .extern .func (.param .u64 %value_out) _ftello_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _ftell_r .visible .func (.param .u64 %value_out) _ftell_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 91 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_ftello_r,(%out_arg1,%out_arg2); ld.param.u64 %r27,[%value_in]; } .loc 1 98 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ftell .visible .func (.param .u64 %value_out) ftell (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 91 9 ld.global.u64 %r27,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_ftello_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 106 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-fvwrite.o/0 0 0 644 18231 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .visible .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/fvwrite.c" // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: __sfvwrite_r .visible .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r53; .reg .u64 %r57; .reg .u32 %r59; .reg .u64 %r70; .reg .u32 %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r84; .reg .u64 %r89; .reg .u64 %r93; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r99; .reg .u64 %r102; .reg .u64 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u64 %r122; .reg .u32 %r124; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r131; .reg .u32 %r132; .reg .u32 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .pred %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .pred %r144; .reg .u64 %r145; .reg .pred %r146; .reg .u32 %r149; .reg .pred %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .pred %r153; .reg .pred %r154; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .pred %r162; .reg .u64 %r163; .reg .pred %r164; .reg .u16 %r165; .reg .pred %r167; .reg .pred %r168; .reg .u16 %r169; .reg .u16 %r170; .reg .pred %r171; .reg .pred %r172; .reg .u16 %r173; .reg .pred %r175; .reg .u32 %r176; .reg .u32 %r177; .reg .u32 %r179; .reg .u32 %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .u64 %r184; .reg .u64 %r185; .reg .pred %r186; .reg .u32 %r188; .reg .u32 %r189; .reg .u16 %r190; .reg .u16 %r191; .reg .pred %r192; .reg .u64 %r195; .reg .pred %r196; .reg .u32 %r197; .reg .u64 %r201; .reg .u64 %r202; .reg .u16 %r203; .reg .u16 %r204; .reg .u16 %r205; .reg .u64 %r209; .reg .pred %r210; .reg .u64 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .pred %r218; .reg .u64 %r222; .reg .u32 %r223; .reg .u64 %r225; .reg .u64 %r227; .reg .pred %r228; .reg .u64 %r229; .reg .pred %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r236; .reg .u64 %r238; .reg .pred %r240; .reg .u32 %r243; .reg .pred %r244; .reg .u32 %r246; .reg .u32 %r248; .reg .u64 %r253; .reg .u32 %r254; .reg .u64 %r255; .reg .pred %r256; .reg .u64 %r257; .reg .pred %r258; .reg .pred %r259; .reg .pred %r260; .reg .pred %r261; .reg .u32 %r263; .reg .u64 %r265; .reg .pred %r266; .reg .u64 %r267; .reg .u64 %r268; .reg .u32 %r269; .reg .u64 %r270; .reg .u64 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u64 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r279; .reg .u16 %r280; .reg .u16 %r281; .reg .u16 %r282; .reg .u32 %r283; .reg .u16 %r284; .reg .pred %r285; .reg .u64 %r289; .reg .u64 %r290; .reg .u64 %r291; .reg .u32 %r294; .reg .pred %r295; .reg .pred %r296; .reg .u64 %r301; .reg .u32 %r302; .reg .u64 %r303; .reg .pred %r304; .reg .u64 %r308; .reg .u32 %r309; .reg .u32 %r310; .reg .u64 %r311; .reg .u64 %r312; .reg .pred %r313; .reg .u32 %r316; .reg .pred %r317; .reg .u64 %r318; .reg .pred %r319; .reg .u16 %r320; .reg .u16 %r321; .reg .u32 %r323; .reg .u64 %r324; .reg .u64 %r325; .reg .u32 %r326; .reg .u64 %r327; .reg .u16 %r328; mov.u64 %r137,%ar0; mov.u64 %r138,%ar1; mov.u64 %r139,%ar2; .loc 1 59 6 ld.u64 %r140,[%r139+16]; setp.ne.u64 %r141,%r140,0; @ %r141 bra $L2; $L11: .loc 1 60 12 mov.u32 %r136,0; bra $L1; $L2: .loc 1 63 7 ld.s16 %r124,[%r138+16]; .loc 1 63 6 cvt.u16.u32 %r143,%r124; and.b16 %r142,%r143,8; setp.eq.u16 %r144,%r142,0; @ %r144 bra $L4; .loc 1 63 7 ld.u64 %r145,[%r138+24]; setp.ne.u64 %r146,%r145,0; @ %r146 bra $L5; $L4: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r149,[%value_in]; } setp.ne.u32 %r150,%r149,0; @ %r150 bra $L40; .loc 1 89 9 ld.s16 %r124,[%r138+16]; $L5: .loc 1 66 7 ld.u64 %r29,[%r139]; .loc 1 89 6 cvt.u16.u32 %r152,%r124; and.b16 %r151,%r152,2; setp.ne.u16 %r153,%r151,0; @ %r153 bra $L41; bra $L65; $L8: .loc 1 97 4 ld.u64 %r82,[%r29]; ld.u64 %r84,[%r29+8]; add.u64 %r29,%r29,16; bra $L6; $L41: .loc 1 53 24 mov.u64 %r82,0; .loc 1 67 7 mov.u64 %r84,%r82; ld.u64 %r327,[%r138+64]; ld.u64 %r325,[%r138+48]; $L6: .loc 1 97 4 setp.eq.u64 %r154,%r84,0; @ %r154 bra $L8; .loc 1 99 6 min.u64 %r159,%r84,2147482624; .loc 1 98 8 cvt.u32.u64 %r160,%r159; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r325; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r82; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r160; call (%value_in),%r327,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r161,[%value_in]; } .loc 1 100 7 setp.le.s32 %r162,%r161,0; @ %r162 bra $L9; .loc 1 102 6 cvt.s64.s32 %r26,%r161; add.u64 %r82,%r82,%r26; .loc 1 103 8 sub.u64 %r84,%r84,%r26; .loc 1 105 30 ld.u64 %r163,[%r139+16]; sub.u64 %r28,%r163,%r26; st.u64 [%r139+16],%r28; .loc 1 105 36 setp.ne.u64 %r164,%r28,0; @ ! %r164 bra $L11; ld.u64 %r327,[%r138+64]; ld.u64 %r325,[%r138+48]; bra $L6; $L65: .loc 1 107 11 and.b16 %r165,%r152,1; setp.eq.u16 %r167,%r165,0; @ %r167 bra $L42; .loc 1 215 14 mov.u32 %r107,0; .loc 1 214 15 mov.u32 %r106,%r107; .loc 1 53 24 mov.u64 %r103,0; .loc 1 67 7 mov.u64 %r102,%r103; bra $L13; $L14: .loc 1 124 4 ld.u64 %r93,[%r29]; ld.u64 %r96,[%r29+8]; add.u64 %r29,%r29,16; bra $L12; $L42: .loc 1 53 24 mov.u64 %r93,0; .loc 1 67 7 mov.u64 %r96,%r93; ld.u64 %r324,[%r138]; ld.u32 %r323,[%r138+12]; $L12: .loc 1 131 21 mov.u64 %r131,%r324; .loc 1 125 6 mov.u32 %r104,%r323; .loc 1 124 4 setp.eq.u64 %r168,%r96,0; @ %r168 bra $L14; .loc 1 126 7 cvt.u16.u32 %r170,%r124; and.b16 %r169,%r170,512; setp.eq.u16 %r171,%r169,0; @ %r171 bra $L15; .loc 1 128 16 cvt.s64.s32 %r30,%r323; .loc 1 128 11 setp.le.u64 %r172,%r30,%r96; @ %r172 bra $L16; cvt.u32.u64 %r326,%r96; $L24: .loc 1 176 5 mov.u32 %r104,%r326; .loc 1 175 16 cvt.s64.s32 %r57,%r104; .loc 1 177 8 mov.u64 %r131,%r324; mov.u64 %r30,%r57; bra $L17; $L16: .loc 1 128 21 and.b16 %r173,%r170,1152; setp.ne.u16 %r175,%r173,0; @ %r175 bra $L18; .loc 1 172 7 cvt.u32.u64 %r176,%r96; .loc 1 175 16 cvt.s64.s32 %r57,%r176; bra $L17; $L18: .loc 1 131 35 ld.u64 %r31,[%r138+24]; .loc 1 131 26 sub.u64 %r32,%r324,%r31; .loc 1 131 9 cvt.u32.u64 %r121,%r32; .loc 1 139 33 ld.u32 %r177,[%r138+32]; add.u32 %r179,%r177,%r177; add.u32 %r180,%r179,%r177; .loc 1 139 9 shr.u32 %r181,%r180,31; add.u32 %r182,%r181,%r180; shr.s32 %r109,%r182,1; .loc 1 140 17 cvt.s64.s32 %r35,%r109; .loc 1 140 26 cvt.s64.s32 %r36,%r121; .loc 1 140 32 add.u64 %r184,%r36,1; add.u64 %r185,%r184,%r96; .loc 1 140 8 setp.ge.u64 %r186,%r35,%r185; @ %r186 bra $L19; .loc 1 141 30 add.u32 %r188,%r121,1; .loc 1 141 24 cvt.u32.u64 %r189,%r96; .loc 1 141 30 add.u32 %r109,%r188,%r189; .loc 1 145 32 cvt.s64.s32 %r35,%r109; $L19: .loc 1 142 8 cvt.u16.u32 %r191,%r124; and.b16 %r190,%r191,1024; setp.eq.u16 %r192,%r190,0; @ %r192 bra $L20; .loc 1 145 32 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r195,[%value_in]; } mov.u64 %r108,%r195; .loc 1 146 12 setp.ne.u64 %r196,%r195,0; @ %r196 bra $L21; .loc 1 148 18 mov.u32 %r197,12; st.u32 [%r137],%r197; .loc 1 263 14 ld.s16 %r132,[%r138+16]; .loc 1 149 6 bra $L22; $L21: .loc 1 151 9 ld.u64 %r201,[%r138+24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r201; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r202,[%value_in]; } .loc 1 152 20 ld.u16 %r204,[%r138+16]; and.b16 %r203,%r204,-1153; or.b16 %r205,%r203,128; st.u16 [%r138+16],%r205; bra $L23; $L20: .loc 1 156 32 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r209,[%value_in]; } mov.u64 %r108,%r209; .loc 1 158 12 setp.ne.u64 %r210,%r209,0; @ %r210 bra $L23; .loc 1 162 6 ld.u64 %r213,[%r138+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r213; call _free_r,(%out_arg1,%out_arg2); } .loc 1 163 17 ld.u16 %r215,[%r138+16]; and.b16 %r214,%r215,-129; cvt.s32.s16 %r132,%r214; .loc 1 165 18 mov.u32 %r216,12; st.u32 [%r137],%r216; .loc 1 166 6 bra $L22; $L23: .loc 1 169 19 st.u64 [%r138+24],%r108; .loc 1 170 18 add.u64 %r131,%r108,%r36; .loc 1 170 12 st.u64 [%r138],%r131; .loc 1 171 19 st.u32 [%r138+32],%r109; .loc 1 172 7 cvt.u32.u64 %r104,%r96; mov.u32 %r326,%r104; .loc 1 173 22 sub.u32 %r217,%r109,%r121; .loc 1 173 12 st.u32 [%r138+12],%r217; .loc 1 175 16 cvt.s64.s32 %r57,%r104; .loc 1 175 11 setp.gt.u64 %r218,%r57,%r96; @ ! %r218 bra $L66; mov.u64 %r324,%r131; bra $L24; $L66: mov.u64 %r30,%r57; $L17: .loc 1 177 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r131; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r93; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r222,[%value_in]; } .loc 1 178 15 ld.u32 %r323,[%r138+12]; sub.u32 %r223,%r323,%r104; st.u32 [%r138+12],%r223; .loc 1 179 15 ld.u64 %r324,[%r138]; add.u64 %r225,%r324,%r30; st.u64 [%r138],%r225; bra $L25; $L15: .loc 1 182 12 ld.u64 %r227,[%r138+24]; setp.lt.u64 %r228,%r227,%r324; @ %r228 bra $L26; .loc 1 182 52 ld.u32 %r53,[%r138+32]; cvt.s64.s32 %r229,%r53; .loc 1 182 36 setp.le.u64 %r230,%r229,%r96; @ %r230 bra $L27; $L26: .loc 1 185 12 cvt.s64.s32 %r232,%r323; min.u64 %r231,%r232,%r96; .loc 1 185 10 cvt.u32.u64 %r120,%r231; .loc 1 186 8 cvt.s64.s32 %r57,%r120; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r324; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r93; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r236,[%value_in]; } .loc 1 187 15 ld.u32 %r323,[%r138+12]; sub.u32 %r59,%r323,%r120; st.u32 [%r138+12],%r59; .loc 1 188 15 ld.u64 %r324,[%r138]; add.u64 %r238,%r324,%r57; st.u64 [%r138],%r238; .loc 1 189 11 setp.ne.u32 %r240,%r59,0; @ %r240 bra $L25; .loc 1 189 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r243,[%value_in]; } .loc 1 189 24 setp.eq.u32 %r244,%r243,0; @ %r244 bra $L25; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L27: .loc 1 195 13 min.u64 %r122,%r96,2147483647; .loc 1 195 38 cvt.u32.u64 %r246,%r122; div.s32 %r248,%r246,%r53; .loc 1 195 10 mul.lo.u32 %r118,%r248,%r53; .loc 1 196 12 ld.u64 %r253,[%r138+48]; ld.u64 %r255,[%r138+64]; { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r253; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r93; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r118; call (%value_in),%r255,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u32 %r254,[%value_in]; } .loc 1 197 11 setp.gt.s32 %r256,%r254,0; @ %r256 bra $L29; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L29: .loc 1 200 6 cvt.s64.s32 %r57,%r254; $L25: add.u64 %r93,%r93,%r57; .loc 1 201 8 sub.u64 %r96,%r96,%r57; .loc 1 203 30 ld.u64 %r257,[%r139+16]; sub.u64 %r70,%r257,%r57; st.u64 [%r139+16],%r70; .loc 1 203 36 setp.eq.u64 %r258,%r70,0; @ %r258 bra $L11; .loc 1 126 10 ld.s16 %r124,[%r138+16]; ld.u64 %r324,[%r138]; ld.u32 %r323,[%r138+12]; bra $L12; $L33: add.u64 %r128,%r29,8; $L31: .loc 1 218 4 ld.u64 %r102,[%r128]; mov.u64 %r127,%r29; add.u64 %r29,%r29,16; add.u64 %r128,%r128,16; setp.eq.u64 %r259,%r102,0; @ %r259 bra $L31; ld.u64 %r103,[%r127]; bra $L32; $L13: setp.eq.u64 %r260,%r102,0; @ %r260 bra $L33; .loc 1 219 7 setp.ne.u32 %r261,%r106,0; @ %r261 bra $L34; $L32: .loc 1 221 13 mov.u32 %r263,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r103; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r263; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r102; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r265,[%value_in]; } .loc 1 222 15 setp.eq.u64 %r266,%r265,0; @ %r266 bra $L35; .loc 1 222 25 add.u64 %r267,%r265,1; .loc 1 222 29 sub.u64 %r268,%r267,%r103; .loc 1 222 15 cvt.u32.u64 %r107,%r268; bra $L34; $L35: .loc 1 222 39 cvt.u32.u64 %r269,%r102; add.u32 %r107,%r269,1; $L34: .loc 1 225 8 cvt.s64.s32 %r271,%r107; min.u64 %r270,%r271,%r102; .loc 1 225 6 cvt.u32.u64 %r117,%r270; .loc 1 226 24 ld.u32 %r78,[%r138+32]; .loc 1 226 6 ld.u32 %r272,[%r138+12]; add.u32 %r105,%r78,%r272; .loc 1 227 10 ld.u64 %r79,[%r138]; .loc 1 227 7 ld.u64 %r274,[%r138+24]; set.u32.gt.u64 %r275,%r79,%r274; neg.s32 %r276,%r275; mov.u32 %r273,%r276; .loc 1 227 31 set.u32.gt.s32 %r278,%r117,%r105; neg.s32 %r279,%r278; mov.u32 %r277,%r279; cvt.u16.u8 %r328,%r273; mov.u16 %r281,%r328; cvt.u16.u8 %r328,%r277; mov.u16 %r282,%r328; and.b16 %r280,%r281,%r282; cvt.u32.u16 %r283,%r280; cvt.u16.u8 %r284,%r283; setp.eq.u16 %r285,%r284,0; @ %r285 bra $L36; .loc 1 229 8 cvt.s64.s32 %r81,%r105; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r81; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r289,[%value_in]; } .loc 1 231 15 ld.u64 %r291,[%r138]; add.u64 %r290,%r291,%r81; st.u64 [%r138],%r290; .loc 1 232 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r294,[%value_in]; } .loc 1 232 11 setp.eq.u32 %r295,%r294,0; @ %r295 bra $L37; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L36: .loc 1 235 12 setp.gt.s32 %r296,%r78,%r117; @ %r296 bra $L38; .loc 1 237 12 ld.u64 %r301,[%r138+48]; ld.u64 %r303,[%r138+64]; { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r301; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r103; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r78; call (%value_in),%r303,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT2; ld.param.u32 %r302,[%value_in]; } mov.u32 %r105,%r302; .loc 1 238 11 setp.gt.s32 %r304,%r302,0; @ %r304 bra $L37; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L38: .loc 1 244 8 cvt.s64.s32 %r89,%r117; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r89; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r308,[%value_in]; } .loc 1 245 15 ld.u32 %r310,[%r138+12]; sub.u32 %r309,%r310,%r117; st.u32 [%r138+12],%r309; .loc 1 246 15 ld.u64 %r312,[%r138]; add.u64 %r311,%r312,%r89; st.u64 [%r138],%r311; mov.u32 %r105,%r117; $L37: .loc 1 248 16 sub.u32 %r107,%r107,%r105; .loc 1 248 7 setp.ne.u32 %r313,%r107,0; @ %r313 bra $L44; .loc 1 251 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r138; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r316,[%value_in]; } mov.u32 %r106,%r316; .loc 1 251 11 setp.eq.u32 %r317,%r316,0; @ %r317 bra $L39; .loc 1 263 14 ld.s16 %r132,[%r138+16]; bra $L22; $L44: mov.u32 %r106,1; $L39: .loc 1 255 6 cvt.s64.s32 %r95,%r105; add.u64 %r103,%r103,%r95; .loc 1 256 8 sub.u64 %r102,%r102,%r95; .loc 1 258 30 ld.u64 %r318,[%r139+16]; sub.u64 %r99,%r318,%r95; st.u64 [%r139+16],%r99; .loc 1 258 36 setp.ne.u64 %r319,%r99,0; @ %r319 bra $L13; bra $L11; $L9: .loc 1 263 14 ld.s16 %r132,[%r138+16]; $L22: cvt.u16.u32 %r321,%r132; or.b16 %r320,%r321,64; st.u16 [%r138+16],%r320; .loc 1 264 10 mov.u32 %r136,-1; bra $L1; $L40: .loc 1 64 12 mov.u32 %r136,-1; $L1: .loc 1 265 1 mov.u32 %value,%r136; st.param.u32 [%value_out],%value; ret; } lib_a-fwalk.o/ 0 0 0 644 3751 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fwalk .visible .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/fwalk.c" // BEGIN GLOBAL FUNCTION DECL: _fwalk_reent .visible .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _fwalk .visible .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 46 10 add.u64 %r32,%r41,1312; .loc 1 35 19 mov.u32 %r40,0; $L5: .loc 1 47 13 ld.u64 %r30,[%r32+16]; .loc 1 47 27 ld.u32 %r31,[%r32+8]; .loc 1 47 44 setp.le.s32 %r43,%r31,0; @ %r43 bra $L2; add.u64 %r25,%r30,16; add.u32 %r44,%r31,-1; cvt.u64.u32 %r45,%r44; add.u64 %r47,%r30,192; mad.lo.u64 %r37,%r45,176,%r47; $L4: add.u64 %r39,%r25,-16; .loc 1 48 10 ld.u16 %r48,[%r25]; setp.le.u16 %r49,%r48,1; @ %r49 bra $L3; .loc 1 48 46 ld.u16 %r50,[%r25+2]; setp.eq.u16 %r51,%r50,-1; @ %r51 bra $L3; .loc 1 49 10 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),%r42,(%out_arg1),$LCT0; ld.param.u32 %r53,[%value_in]; } .loc 1 49 6 or.b32 %r40,%r40,%r53; $L3: .loc 1 47 44 add.u64 %r25,%r25,176; setp.ne.u64 %r54,%r25,%r37; @ %r54 bra $L4; $L2: .loc 1 46 40 ld.u64 %r32,[%r32]; .loc 1 46 29 setp.ne.u64 %r55,%r32,0; @ %r55 bra $L5; .loc 1 52 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _fwalk_reent .visible .func (.param .u32 %value_out) _fwalk_reent (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 72 10 add.u64 %r32,%r41,1312; .loc 1 61 19 mov.u32 %r40,0; $L15: .loc 1 73 13 ld.u64 %r30,[%r32+16]; .loc 1 73 27 ld.u32 %r31,[%r32+8]; .loc 1 73 44 setp.le.s32 %r43,%r31,0; @ %r43 bra $L12; add.u64 %r25,%r30,16; add.u32 %r44,%r31,-1; cvt.u64.u32 %r45,%r44; add.u64 %r47,%r30,192; mad.lo.u64 %r37,%r45,176,%r47; $L14: add.u64 %r39,%r25,-16; .loc 1 74 10 ld.u16 %r48,[%r25]; setp.le.u16 %r49,%r48,1; @ %r49 bra $L13; .loc 1 74 46 ld.u16 %r50,[%r25+2]; setp.eq.u16 %r51,%r50,-1; @ %r51 bra $L13; .loc 1 75 10 { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),%r42,(%out_arg1,%out_arg2),$LCT1; ld.param.u32 %r54,[%value_in]; } .loc 1 75 6 or.b32 %r40,%r40,%r54; $L13: .loc 1 73 44 add.u64 %r25,%r25,176; setp.ne.u64 %r55,%r25,%r37; @ %r55 bra $L14; $L12: .loc 1 72 40 ld.u64 %r32,[%r32]; .loc 1 72 29 setp.ne.u64 %r56,%r32,0; @ %r56 bra $L15; .loc 1 78 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-fwrite.o/ 0 0 0 644 6111 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _fwrite_r .visible .func (.param .u64 %value_out) _fwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdio/fwrite.c" // BEGIN GLOBAL FUNCTION DECL: fwrite .visible .func (.param .u64 %value_out) fwrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .extern .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _fwrite_r .visible .func (.param .u64 %value_out) _fwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u16 %r44; .reg .u16 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r49; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; mov.u64 %r35,%ar2; mov.u64 %r36,%ar3; mov.u64 %r37,%ar4; .loc 1 122 16 st.u64 [%frame+24],%r34; .loc 1 123 35 mul.lo.u64 %r30,%r36,%r35; .loc 1 123 31 st.u64 [%frame+32],%r30; .loc 1 123 17 st.u64 [%frame+16],%r30; .loc 1 124 15 add.u64 %r38,%frame,24; st.u64 [%frame],%r38; .loc 1 125 18 mov.u32 %r39,1; st.u32 [%frame+8],%r39; .loc 1 133 3 setp.eq.u64 %r40,%r33,0; @ %r40 bra $L2; ld.u32 %r41,[%r33+80]; setp.ne.u32 %r42,%r41,0; @ %r42 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call __sinit,(%out_arg1); } $L2: .loc 1 136 3 ld.u16 %r45,[%r37+16]; and.b16 %r44,%r45,8192; setp.ne.u16 %r46,%r44,0; @ %r46 bra $L3; .loc 1 135 3 ld.u32 %r23,[%r37+172]; .loc 1 136 3 or.b16 %r47,%r45,8192; st.u16 [%r37+16],%r47; and.b32 %r49,%r23,-8193; st.u32 [%r37+172],%r49; $L3: .loc 1 137 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r53,[%value_in]; } .loc 1 137 6 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 143 13 ld.u64 %r56,[%frame+16]; sub.u64 %r55,%r30,%r56; .loc 1 143 30 div.u64 %r32,%r55,%r35; bra $L1; $L5: .loc 1 140 14 mov.u64 %r32,%r36; $L1: .loc 1 168 1 mov.u64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: fwrite .visible .func (.param .u64 %value_out) fwrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u16 %r44; .reg .u16 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r49; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; mov.u64 %r37,%ar3; .loc 1 177 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 122 16 st.u64 [%frame+24],%r34; .loc 1 123 35 mul.lo.u64 %r23,%r35,%r36; .loc 1 123 31 st.u64 [%frame+32],%r23; .loc 1 123 17 st.u64 [%frame+16],%r23; .loc 1 124 15 add.u64 %r38,%frame,24; st.u64 [%frame],%r38; .loc 1 125 18 mov.u32 %r39,1; st.u32 [%frame+8],%r39; .loc 1 133 3 setp.eq.u64 %r40,%r22,0; @ %r40 bra $L10; ld.u32 %r41,[%r22+80]; setp.ne.u32 %r42,%r41,0; @ %r42 bra $L10; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call __sinit,(%out_arg1); } $L10: .loc 1 136 3 ld.u16 %r45,[%r37+16]; and.b16 %r44,%r45,8192; setp.ne.u16 %r46,%r44,0; @ %r46 bra $L11; .loc 1 135 3 ld.u32 %r25,[%r37+172]; .loc 1 136 3 or.b16 %r47,%r45,8192; st.u16 [%r37+16],%r47; and.b32 %r49,%r25,-8193; st.u32 [%r37+172],%r49; $L11: .loc 1 137 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r53,[%value_in]; } .loc 1 137 6 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L13; .loc 1 143 13 ld.u64 %r56,[%frame+16]; sub.u64 %r55,%r23,%r56; .loc 1 143 30 div.u64 %r33,%r55,%r35; bra $L9; $L13: .loc 1 140 14 mov.u64 %r33,%r36; $L9: .loc 1 178 1 mov.u64 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } /324 0 0 0 644 32570 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: rshift .func rshift (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/gdtoa-gethex.c" // BEGIN GLOBAL FUNCTION DECL: __gethex .visible .func (.param .u32 %value_out) __gethex (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL VAR DECL: _C_numeric_locale .extern .const .align 8 .u64 _C_numeric_locale[3]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __hi0bits .extern .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __any_on .extern .func (.param .u32 %value_out) __any_on (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __lshift .extern .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[52] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,103,100,116,111,97,45,103,101,116,104,101,120,46,99,0 }; // BEGIN GLOBAL VAR DEF: __hexdig .visible .const .align 1 .u8 __hexdig[256] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,17,18,19,20,21,22,23,24,25,0,0,0,0,0,0,0,26,27,28,29,30,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,27,28,29,30,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; // BEGIN FUNCTION DEF: rshift .func rshift (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r33; .reg .u32 %r36; .reg .u64 %r40; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r52; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u64 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; mov.u64 %r69,%ar0; mov.u32 %r70,%ar1; .loc 1 78 4 shr.s32 %r44,%r70,5; .loc 1 79 11 ld.u32 %r22,[%r69+20]; .loc 1 79 5 setp.le.s32 %r71,%r22,%r44; @ %r71 bra $L2; .loc 1 77 9 add.u64 %r43,%r69,24; .loc 1 80 13 cvt.s64.s32 %r24,%r22; .loc 1 80 10 shl.b64 %r73,%r24,2; .loc 1 80 6 add.u64 %r45,%r43,%r73; .loc 1 81 5 cvt.s64.s32 %r26,%r44; shl.b64 %r75,%r26,2; add.u64 %r46,%r43,%r75; .loc 1 82 9 and.b32 %r47,%r70,31; .loc 1 82 6 setp.ne.u32 %r76,%r47,0; @ %r76 bra $L3; .loc 1 93 12 setp.gt.u64 %r77,%r45,%r46; @ %r77 bra $L4; bra $L2; $L3: .loc 1 83 6 mov.u32 %r78,32; sub.u32 %r48,%r78,%r47; .loc 1 84 10 add.u64 %r49,%r46,4; .loc 1 84 6 ld.u32 %r79,[%r46]; shr.u32 %r50,%r79,%r47; .loc 1 85 12 setp.le.u64 %r80,%r45,%r49; @ %r80 bra $L5; mov.u64 %r23,%r49; mov.u64 %r52,%r43; $L6: .loc 1 86 22 ld.u32 %r82,[%r23]; shl.b32 %r81,%r82,%r48; .loc 1 86 29 or.b32 %r83,%r81,%r50; .loc 1 86 11 st.u32 [%r52],%r83; .loc 1 87 7 ld.u32 %r84,[%r23]; shr.u32 %r50,%r84,%r47; .loc 1 85 12 add.u64 %r23,%r23,4; add.u64 %r52,%r52,4; setp.gt.u64 %r85,%r45,%r23; @ %r85 bra $L6; .loc 1 86 8 sub.u64 %r86,%r24,%r26; shl.b64 %r87,%r86,2; add.u64 %r91,%r87,-4; add.u64 %r40,%r43,%r91; .loc 1 89 13 st.u32 [%r40],%r50; .loc 1 89 7 setp.eq.u32 %r92,%r50,0; @ %r92 bra $L7; bra $L11; $L12: .loc 1 77 9 mov.u64 %r40,%r43; $L11: .loc 1 90 7 add.u64 %r40,%r40,4; bra $L7; $L4: mov.u64 %r63,%r43; mov.u64 %r65,%r46; $L8: .loc 1 94 13 ld.u32 %r33,[%r65]; .loc 1 94 11 st.u32 [%r63],%r33; .loc 1 93 12 add.u64 %r63,%r63,4; add.u64 %r65,%r65,4; setp.gt.u64 %r93,%r45,%r65; @ %r93 bra $L8; .loc 1 94 8 sub.u64 %r94,%r24,%r26; shl.b64 %r99,%r94,2; add.u64 %r40,%r43,%r99; $L7: .loc 1 96 20 sub.u64 %r100,%r40,%r43; shr.s64 %r102,%r100,2; .loc 1 96 15 cvt.u32.u64 %r36,%r102; st.u32 [%r69+20],%r36; .loc 1 96 5 setp.ne.u32 %r103,%r36,0; @ %r103 bra $L1; $L10: .loc 1 97 12 mov.u32 %r104,0; st.u32 [%r69+24],%r104; .loc 1 98 1 bra $L1; $L2: .loc 1 96 15 mov.u32 %r105,0; st.u32 [%r69+20],%r105; bra $L10; $L5: .loc 1 89 13 st.u32 [%r69+24],%r50; .loc 1 89 7 setp.ne.u32 %r106,%r50,0; @ %r106 bra $L12; bra $L2; $L1: .loc 1 98 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __gethex .visible .func (.param .u32 %value_out) __gethex (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r30; .reg .u32 %r32; .reg .u32 %r39; .reg .u32 %r41; .reg .u64 %r50; .reg .u32 %r60; .reg .u32 %r62; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r86; .reg .u32 %r101; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r118; .reg .u64 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .u64 %r125; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u64 %r144; .reg .u32 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u32 %r152; .reg .u32 %r154; .reg .u64 %r167; .reg .u32 %r174; .reg .u32 %r177; .reg .u64 %r178; .reg .u64 %r188; .reg .u64 %r191; .reg .u64 %r195; .reg .u64 %r197; .reg .u32 %r207; .reg .u32 %r217; .reg .u32 %r218; .reg .u32 %r221; .reg .u64 %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u32 %r227; .reg .u64 %r231; .reg .u64 %r232; .reg .u16 %r234; .reg .pred %r235; .reg .u16 %r236; .reg .pred %r237; .reg .u64 %r239; .reg .u64 %r240; .reg .u16 %r241; .reg .pred %r242; .reg .u32 %r246; .reg .pred %r247; .reg .u64 %r249; .reg .u64 %r250; .reg .pred %r251; .reg .u16 %r252; .reg .pred %r253; .reg .u16 %r254; .reg .pred %r255; .reg .u64 %r257; .reg .u64 %r258; .reg .u16 %r260; .reg .u32 %r261; .reg .u64 %r265; .reg .u64 %r266; .reg .u16 %r267; .reg .pred %r268; .reg .u64 %r271; .reg .u64 %r272; .reg .pred %r273; .reg .u32 %r277; .reg .pred %r278; .reg .pred %r279; .reg .u64 %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .u64 %r284; .reg .u64 %r285; .reg .u16 %r286; .reg .pred %r287; .reg .u64 %r289; .reg .u64 %r290; .reg .u16 %r291; .reg .pred %r292; .reg .u64 %r293; .reg .u32 %r294; .reg .u32 %r295; .reg .pred %r296; .reg .u64 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u16 %r301; .reg .u16 %r303; .reg .pred %r304; .reg .u16 %r305; .reg .pred %r306; .reg .pred %r308; .reg .u64 %r310; .reg .u64 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u32 %r314; .reg .u16 %r315; .reg .pred %r316; .reg .u64 %r319; .reg .u64 %r320; .reg .u16 %r321; .reg .u16 %r322; .reg .u32 %r323; .reg .u16 %r324; .reg .pred %r325; .reg .u32 %r327; .reg .u32 %r328; .reg .u32 %r329; .reg .u64 %r332; .reg .u64 %r333; .reg .u16 %r334; .reg .u16 %r335; .reg .u32 %r336; .reg .u16 %r337; .reg .pred %r338; .reg .pred %r339; .reg .pred %r340; .reg .pred %r341; .reg .u64 %r342; .reg .u32 %r343; .reg .pred %r344; .reg .pred %r345; .reg .u64 %r348; .reg .pred %r349; .reg .u64 %r350; .reg .u32 %r351; .reg .u64 %r353; .reg .pred %r354; .reg .u16 %r355; .reg .u16 %r356; .reg .pred %r357; .reg .pred %r358; .reg .u64 %r359; .reg .pred %r361; .reg .u32 %r365; .reg .pred %r366; .reg .u64 %r369; .reg .u64 %r370; .reg .u16 %r372; .reg .u16 %r373; .reg .u32 %r374; .reg .u32 %r375; .reg .u32 %r376; .reg .pred %r377; .reg .u64 %r378; .reg .u64 %r379; .reg .u64 %r381; .reg .u32 %r383; .reg .pred %r384; .reg .u32 %r387; .reg .pred %r388; .reg .u32 %r389; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .pred %r398; .reg .pred %r399; .reg .u32 %r402; .reg .u32 %r403; .reg .pred %r404; .reg .pred %r407; .reg .u64 %r411; .reg .u32 %r412; .reg .pred %r413; .reg .u64 %r416; .reg .pred %r417; .reg .pred %r418; .reg .pred %r419; .reg .pred %r420; .reg .pred %r421; .reg .pred %r422; .reg .pred %r423; .reg .u32 %r426; .reg .u32 %r427; .reg .pred %r428; .reg .pred %r429; .reg .pred %r430; .reg .u32 %r431; .reg .u64 %r435; .reg .pred %r436; .reg .pred %r437; .reg .u32 %r440; .reg .u32 %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u64 %r444; .reg .u32 %r445; .reg .u32 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u32 %r449; .reg .pred %r450; .reg .pred %r453; .reg .pred %r454; .reg .pred %r455; .reg .pred %r456; .reg .u32 %r457; .reg .pred %r458; .reg .u32 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .pred %r462; .reg .u32 %r463; .reg .pred %r464; .reg .u64 %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r469; .reg .u32 %r470; .reg .pred %r471; .reg .u32 %r474; .reg .u32 %r475; .reg .u64 %r476; .reg .pred %r477; .reg .u64 %r478; .reg .u32 %r479; .reg .u64 %r481; .reg .u64 %r485; .reg .u64 %r486; .reg .u64 %r487; .reg .u64 %r488; .reg .u64 %r489; .reg .u64 %r490; .reg .u32 %r493; .reg .u64 %r494; .reg .u64 %r495; .reg .u64 %r496; .reg .u64 %r497; .reg .u32 %r499; .reg .pred %r500; .reg .u32 %r501; .reg .u32 %r502; .reg .pred %r503; .reg .u32 %r504; .reg .u64 %r505; .reg .u64 %r506; .reg .u64 %r507; .reg .u32 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u32 %r511; .reg .u32 %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .u32 %r516; .reg .u64 %r517; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .pred %r522; .reg .pred %r523; .reg .u64 %r524; .reg .u64 %r525; .reg .u32 %r526; .reg .u64 %r527; .reg .pred %r528; .reg .u32 %r529; .reg .u32 %r530; .reg .u32 %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u64 %r534; .reg .u64 %r536; .reg .u64 %r538; .reg .u64 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .u64 %r543; .reg .pred %r544; .reg .u32 %r545; .reg .u32 %r546; .reg .pred %r547; .reg .u32 %r549; .reg .u16 %r551; .reg .u16 %r553; .reg .pred %r554; .reg .pred %r556; .reg .u64 %r557; .reg .u32 %r558; .reg .u16 %r559; mov.u64 %r222,%ar0; mov.u64 %r223,%ar1; mov.u64 %r224,%ar2; mov.u64 %r225,%ar3; mov.u64 %r226,%ar4; mov.u32 %r227,%ar5; .loc 1 152 23 ld.const.u64 %r120,[_C_numeric_locale]; .loc 1 154 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r120; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r231,[%value_in]; } .loc 1 155 16 add.u64 %r232,%r120,%r231; ld.u8 %r122,[%r232+-1]; .loc 1 158 7 ld.u64 %r24,[%r223]; .loc 1 159 10 ld.u8 %r25,[%r24+2]; .loc 1 159 20 cvt.u16.u32 %r234,%r25; setp.ne.u16 %r235,%r234,48; @ %r235 bra $L19; add.u64 %r188,%r24,3; .loc 1 157 10 mov.u32 %r146,0; $L20: .loc 1 160 10 add.u32 %r146,%r146,1; .loc 1 159 10 mov.u64 %r144,%r188; .loc 1 159 20 add.u64 %r188,%r188,1; .loc 1 159 10 ld.u8 %r25,[%r188+-1]; .loc 1 159 20 cvt.u16.u32 %r236,%r25; setp.eq.u16 %r237,%r236,48; @ %r237 bra $L20; bra $L21; $L19: .loc 1 159 10 add.u64 %r144,%r24,2; .loc 1 157 10 mov.u32 %r146,0; $L21: .loc 1 166 7 cvta.const.u64 %r557,__hexdig; cvt.s64.s32 %r239,%r25; add.u64 %r240,%r557,%r239; .loc 1 166 5 ld.u8 %r241,[%r240]; setp.ne.u16 %r242,%r241,0; @ %r242 bra $L22; .loc 1 168 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r144; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r120; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r231; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r246,[%value_in]; } .loc 1 168 6 setp.ne.u32 %r247,%r246,0; @ %r247 bra $L23; .loc 1 171 14 add.u64 %r26,%r144,%r231; .loc 1 172 8 ld.u8 %r30,[%r26]; cvt.s64.s32 %r249,%r30; add.u64 %r250,%r557,%r249; ld.u8 %r207,[%r250]; .loc 1 172 6 setp.eq.u32 %r251,%r207,0; @ %r251 bra $L24; .loc 1 174 12 cvt.u16.u32 %r252,%r30; setp.ne.u16 %r253,%r252,48; @ %r253 bra $L94; mov.u64 %r144,%r26; $L26: .loc 1 175 5 add.u64 %r144,%r144,1; .loc 1 174 9 ld.u8 %r32,[%r144]; .loc 1 174 12 cvt.u16.u32 %r254,%r32; setp.eq.u16 %r255,%r254,48; @ %r255 bra $L26; .loc 1 176 7 cvt.s64.s32 %r257,%r32; add.u64 %r258,%r557,%r257; ld.u8 %r207,[%r258]; bra $L25; $L94: .loc 1 174 12 mov.u64 %r144,%r26; $L25: .loc 1 176 6 cvt.u16.u32 %r260,%r207; set.u32.eq.u16 %r261,%r260,0; neg.s32 %r147,%r261; .loc 1 178 11 mov.u32 %r146,1; bra $L27; $L95: .loc 1 181 8 mov.u64 %r109,%r144; $L28: .loc 1 182 4 add.u64 %r109,%r109,1; .loc 1 181 8 ld.u8 %r265,[%r109]; add.u64 %r266,%r557,%r265; ld.u8 %r267,[%r266]; setp.ne.u16 %r268,%r267,0; @ %r268 bra $L28; bra $L29; $L22: ld.u8 %r271,[%r144]; add.u64 %r272,%r557,%r271; ld.u8 %r207,[%r272]; .loc 1 164 7 mov.u32 %r147,0; .loc 1 163 8 mov.u64 %r26,0; $L27: .loc 1 181 8 setp.ne.u32 %r273,%r207,0; @ %r273 bra $L95; mov.u64 %r109,%r144; $L29: .loc 1 183 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r109; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r120; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r231; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r277,[%value_in]; } mov.u32 %r115,%r277; .loc 1 183 5 setp.ne.u32 %r278,%r115,0; @ %r278 bra $L30; .loc 1 185 6 setp.eq.u64 %r279,%r26,0; @ %r279 bra $L31; .loc 1 191 18 sub.u64 %r280,%r109,%r26; .loc 1 191 10 cvt.u32.u64 %r281,%r280; .loc 1 191 27 shl.b32 %r282,%r281,2; .loc 1 191 5 neg.s32 %r115,%r282; .loc 1 194 9 ld.u8 %r217,[%r109]; bra $L34; $L31: .loc 1 186 14 add.u64 %r125,%r109,%r231; .loc 1 187 9 ld.u8 %r217,[%r125]; cvt.s64.s32 %r284,%r217; add.u64 %r285,%r557,%r284; ld.u8 %r286,[%r285]; setp.eq.u16 %r287,%r286,0; @ %r287 bra $L96; mov.u64 %r109,%r125; $L33: .loc 1 188 5 add.u64 %r109,%r109,1; .loc 1 187 9 ld.u8 %r217,[%r109]; cvt.s64.s32 %r289,%r217; add.u64 %r290,%r557,%r289; ld.u8 %r291,[%r290]; setp.ne.u16 %r292,%r291,0; @ %r292 bra $L33; .loc 1 191 18 sub.u64 %r293,%r109,%r125; .loc 1 191 10 cvt.u32.u64 %r294,%r293; .loc 1 191 27 shl.b32 %r295,%r294,2; .loc 1 191 5 neg.s32 %r115,%r295; bra $L34; $L30: .loc 1 194 9 ld.u8 %r217,[%r109]; .loc 1 190 5 setp.eq.u64 %r296,%r26,0; @ %r296 bra $L97; .loc 1 191 18 sub.u64 %r297,%r109,%r26; .loc 1 191 10 cvt.u32.u64 %r298,%r297; .loc 1 191 27 shl.b32 %r299,%r298,2; .loc 1 191 5 neg.s32 %r115,%r299; bra $L34; $L96: .loc 1 187 9 mov.u64 %r109,%r125; bra $L34; $L97: .loc 1 165 4 mov.u32 %r115,0; $L34: .loc 1 194 2 cvt.u16.u32 %r301,%r217; and.b16 %r303,%r301,223; setp.ne.u16 %r304,%r303,80; @ %r304 bra $L98; mov.u64 %r26,%r109; bra $L90; $L115: mov.u32 %r115,0; mov.u32 %r147,1; $L90: .loc 1 198 10 ld.u8 %r218,[%r26+1]; cvt.u16.u32 %r305,%r218; setp.eq.u16 %r306,%r305,43; @ %r306 bra $L99; setp.eq.u16 %r308,%r305,45; @ %r308 bra $L100; .loc 1 198 3 add.u64 %r110,%r26,1; .loc 1 197 9 mov.u32 %r111,0; bra $L37; $L99: mov.u32 %r111,0; bra $L36; $L100: mov.u32 %r111,1; $L36: .loc 1 203 5 add.u64 %r110,%r26,2; .loc 1 205 12 ld.u8 %r218,[%r26+2]; $L37: cvt.s64.s32 %r310,%r218; add.u64 %r311,%r557,%r310; ld.u8 %r39,[%r311]; .loc 1 205 6 cvt.u16.u32 %r313,%r39; add.u16 %r312,%r313,-1; cvt.u32.u16 %r314,%r312; .loc 1 205 35 cvt.u16.u8 %r315,%r314; setp.gt.u16 %r316,%r315,24; @ %r316 bra $L101; .loc 1 209 6 add.u32 %r128,%r39,-16; .loc 1 210 38 add.u64 %r109,%r110,1; .loc 1 210 14 ld.u8 %r319,[%r110+1]; add.u64 %r320,%r557,%r319; ld.u8 %r127,[%r320]; .loc 1 210 38 cvt.u16.u32 %r322,%r127; add.u16 %r321,%r322,-1; cvt.u32.u16 %r323,%r321; cvt.u16.u8 %r324,%r323; setp.gt.u16 %r325,%r324,24; @ %r325 bra $L38; $L39: .loc 1 211 11 shl.b32 %r327,%r128,2; add.u32 %r328,%r327,%r128; add.u32 %r329,%r328,%r328; .loc 1 211 15 add.u32 %r41,%r329,%r127; .loc 1 211 7 add.u32 %r128,%r41,-16; .loc 1 210 38 add.u64 %r109,%r109,1; .loc 1 210 14 ld.u8 %r332,[%r109]; add.u64 %r333,%r557,%r332; ld.u8 %r127,[%r333]; .loc 1 210 38 cvt.u16.u32 %r335,%r127; add.u16 %r334,%r335,-1; cvt.u32.u16 %r336,%r334; cvt.u16.u8 %r337,%r336; setp.le.u16 %r338,%r337,24; @ %r338 bra $L39; $L38: .loc 1 212 6 setp.eq.u32 %r339,%r111,0; @ %r339 bra $L40; .loc 1 213 7 neg.s32 %r128,%r128; $L40: .loc 1 214 5 add.u32 %r115,%r115,%r128; bra $L35; $L98: .loc 1 194 2 mov.u64 %r26,%r109; bra $L35; $L101: mov.u64 %r109,%r26; $L35: .loc 1 216 6 st.u64 [%r223],%r109; .loc 1 217 5 setp.eq.u32 %r340,%r147,0; @ %r340 bra $L41; $L89: .loc 1 218 32 setp.ne.u32 %r341,%r146,0; selp.u32 %r221,0,6,%r341; bra $L18; $L41: .loc 1 219 9 sub.u64 %r342,%r26,%r144; .loc 1 219 14 cvt.u32.u64 %r343,%r342; add.u32 %r143,%r343,-1; .loc 1 220 15 setp.le.s32 %r344,%r143,7; @ %r344 bra $L103; .loc 1 220 8 mov.u32 %r142,%r147; $L44: .loc 1 221 4 add.u32 %r142,%r142,1; .loc 1 220 22 shr.s32 %r143,%r143,1; .loc 1 220 15 setp.gt.s32 %r345,%r143,7; @ %r345 bra $L44; bra $L43; $L103: .loc 1 220 8 mov.u32 %r142,%r147; $L43: .loc 1 222 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r142; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r348,[%value_in]; } mov.u64 %r108,%r348; setp.ne.u64 %r349,%r348,0; @ %r349 bra $L45; cvta.const.u64 %r353,$LC0; mov.u32 %r351,222; cvta.const.u64 %r350,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r350; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r351; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r348; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r353; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L45: .loc 1 223 4 add.u64 %r114,%r348,24; .loc 1 226 11 setp.ge.u64 %r354,%r144,%r26; @ %r354 bra $L104; .loc 1 223 4 mov.u64 %r178,%r114; .loc 1 224 4 mov.u32 %r123,%r147; .loc 1 225 4 mov.u32 %r116,0; .loc 1 227 6 cvt.u16.u32 %r356,%r122; $L53: add.u64 %r141,%r26,-1; ld.u8 %r355,[%r26+-1]; setp.eq.u16 %r357,%r355,%r356; @ %r357 bra $L47; $L50: .loc 1 233 6 setp.eq.u32 %r358,%r123,32; @ ! %r358 bra $L170; bra $L48; $L47: .loc 1 227 42 sub.u64 %r359,%r141,%r231; add.u64 %r50,%r359,1; .loc 1 227 25 setp.lt.u64 %r361,%r50,%r144; @ %r361 bra $L50; .loc 1 228 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r120; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r231; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r365,[%value_in]; } .loc 1 228 7 setp.eq.u32 %r366,%r365,0; @ ! %r366 bra $L50; bra $L105; $L170: .loc 1 239 5 mov.u32 %r112,%r123; add.u32 %r123,%r123,4; bra $L52; $L48: .loc 1 234 9 st.u32 [%r178],%r116; .loc 1 234 6 add.u64 %r178,%r178,4; .loc 1 236 6 mov.u32 %r112,%r147; .loc 1 234 9 mov.u32 %r123,4; .loc 1 235 6 mov.u32 %r116,0; $L52: .loc 1 238 9 ld.u8 %r369,[%r26+-1]; add.u64 %r370,%r557,%r369; .loc 1 238 27 ld.u8 %r559,[%r370]; mov.u16 %r373,%r559; and.b16 %r372,%r373,15; cvt.u32.u16 %r374,%r372; cvt.u32.u8 %r375,%r374; .loc 1 238 35 shl.b32 %r376,%r375,%r112; .loc 1 238 5 or.b32 %r116,%r116,%r376; .loc 1 227 6 mov.u64 %r26,%r141; bra $L51; $L105: mov.u64 %r26,%r50; $L51: .loc 1 226 11 setp.gt.u64 %r377,%r26,%r144; @ %r377 bra $L53; bra $L46; $L104: .loc 1 223 4 mov.u64 %r178,%r114; .loc 1 225 4 mov.u32 %r116,0; $L46: .loc 1 241 7 st.u32 [%r178],%r116; .loc 1 241 4 add.u64 %r378,%r178,4; .loc 1 242 18 sub.u64 %r379,%r378,%r114; shr.s64 %r381,%r379,2; .loc 1 242 14 cvt.u32.u64 %r130,%r381; .loc 1 242 10 st.u32 [%r348+20],%r130; .loc 1 243 8 shl.b32 %r60,%r130,5; .loc 1 243 13 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r116; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r383,[%value_in]; } .loc 1 243 4 sub.u32 %r131,%r60,%r383; .loc 1 244 8 ld.u32 %r113,[%r224]; .loc 1 247 5 setp.le.s32 %r384,%r131,%r113; @ %r384 bra $L54; .loc 1 248 5 sub.u32 %r134,%r131,%r113; .loc 1 249 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r348; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r387,[%value_in]; } mov.u32 %r62,%r387; .loc 1 249 6 setp.eq.u32 %r388,%r62,0; @ %r388 bra $L55; .loc 1 251 6 add.u32 %r135,%r134,-1; .loc 1 252 11 shr.s32 %r389,%r135,5; .loc 1 252 9 cvt.s64.s32 %r390,%r389; shl.b64 %r391,%r390,2; add.u64 %r392,%r114,%r391; .loc 1 252 31 and.b32 %r393,%r135,31; .loc 1 252 25 mov.u32 %r395,1; shl.b32 %r394,%r395,%r393; .loc 1 252 21 ld.u32 %r397,[%r392]; and.b32 %r396,%r394,%r397; .loc 1 252 7 setp.eq.u32 %r398,%r396,0; @ %r398 bra $L106; .loc 1 254 8 setp.le.s32 %r399,%r135,1; @ %r399 bra $L56; .loc 1 254 18 add.u32 %r402,%r134,-2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r348; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r402; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r403,[%value_in]; } .loc 1 254 15 setp.ne.u32 %r404,%r403,0; @ %r404 bra $L107; $L56: .loc 1 253 14 mov.u32 %r62,2; bra $L55; $L106: .loc 1 250 13 mov.u32 %r62,%r395; bra $L55; $L107: .loc 1 255 15 mov.u32 %r62,3; $L55: .loc 1 258 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r348; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call rshift,(%out_arg1,%out_arg2); } .loc 1 259 5 add.u32 %r115,%r115,%r134; bra $L57; $L54: .loc 1 261 10 setp.ge.s32 %r407,%r131,%r113; @ %r407 bra $L108; .loc 1 262 5 sub.u32 %r133,%r113,%r131; .loc 1 263 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r348; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r133; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r411,[%value_in]; } mov.u64 %r108,%r411; .loc 1 264 5 sub.u32 %r115,%r115,%r133; .loc 1 265 5 add.u64 %r114,%r108,24; .loc 1 245 11 mov.u32 %r62,0; bra $L57; $L108: mov.u32 %r62,0; $L57: .loc 1 267 5 ld.u32 %r412,[%r224+8]; setp.ge.s32 %r413,%r412,%r115; @ %r413 bra $L58; $L59: .loc 1 269 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 270 7 mov.u64 %r416,0; st.u64 [%r226],%r416; .loc 1 271 10 mov.u32 %r221,163; bra $L18; $L58: .loc 1 274 13 ld.u32 %r74,[%r224+4]; .loc 1 274 5 setp.le.s32 %r417,%r74,%r115; @ %r417 bra $L109; .loc 1 276 5 sub.u32 %r136,%r74,%r115; .loc 1 277 6 setp.gt.s32 %r418,%r113,%r136; @ %r418 bra $L61; .loc 1 278 15 ld.u32 %r75,[%r224+12]; .loc 1 278 4 setp.eq.u32 %r419,%r75,2; @ %r419 bra $L62; setp.eq.u32 %r420,%r75,3; @ %r420 bra $L63; setp.ne.u32 %r421,%r75,1; @ %r421 bra $L64; .loc 1 280 8 setp.eq.u32 %r422,%r113,%r136; @ ! %r422 bra $L64; .loc 1 280 20 setp.eq.u32 %r423,%r113,1; @ %r423 bra $L66; .loc 1 280 33 add.u32 %r426,%r113,-1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r426; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r427,[%value_in]; } .loc 1 280 30 setp.eq.u32 %r428,%r427,0; @ %r428 bra $L64; .loc 1 290 16 ld.u32 %r74,[%r224+4]; bra $L66; $L62: .loc 1 284 8 setp.eq.u32 %r429,%r227,0; @ ! %r429 bra $L64; bra $L66; $L63: .loc 1 288 8 setp.eq.u32 %r430,%r227,0; @ %r430 bra $L64; $L66: .loc 1 290 11 st.u32 [%r225],%r74; .loc 1 291 21 mov.u32 %r431,1; st.u32 [%r108+20],%r431; .loc 1 291 11 st.u32 [%r114],%r431; .loc 1 292 10 st.u64 [%r226],%r108; .loc 1 293 13 mov.u32 %r221,98; bra $L18; $L64: .loc 1 297 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 298 8 mov.u64 %r435,0; st.u64 [%r226],%r435; .loc 1 299 11 mov.u32 %r221,80; bra $L18; $L61: .loc 1 301 5 add.u32 %r137,%r136,-1; .loc 1 302 6 setp.ne.u32 %r436,%r62,0; @ %r436 bra $L110; .loc 1 304 11 setp.eq.u32 %r437,%r137,0; @ %r437 bra $L68; .loc 1 305 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r137; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r440,[%value_in]; } mov.u32 %r62,%r440; bra $L68; $L110: .loc 1 303 13 mov.u32 %r62,1; $L68: .loc 1 306 10 shr.s32 %r441,%r137,5; .loc 1 306 8 cvt.s64.s32 %r442,%r441; shl.b64 %r443,%r442,2; add.u64 %r444,%r114,%r443; .loc 1 306 30 and.b32 %r445,%r137,31; .loc 1 306 24 mov.u32 %r447,1; shl.b32 %r446,%r447,%r445; .loc 1 306 20 ld.u32 %r449,[%r444]; and.b32 %r448,%r446,%r449; .loc 1 306 6 setp.eq.u32 %r450,%r448,0; @ %r450 bra $L69; .loc 1 307 13 or.b32 %r62,%r62,2; $L69: .loc 1 308 9 sub.u32 %r113,%r113,%r136; .loc 1 309 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r136; call rshift,(%out_arg1,%out_arg2); } .loc 1 310 5 ld.u32 %r115,[%r224+4]; .loc 1 275 7 mov.u32 %r221,2; bra $L60; $L109: .loc 1 273 6 mov.u32 %r221,1; $L60: .loc 1 312 5 setp.eq.u32 %r453,%r62,0; @ %r453 bra $L70; .loc 1 314 13 ld.u32 %r86,[%r224+12]; .loc 1 314 3 setp.eq.u32 %r454,%r86,2; @ %r454 bra $L71; setp.eq.u32 %r455,%r86,3; @ %r455 bra $L72; setp.ne.u32 %r456,%r86,1; @ %r456 bra $L73; .loc 1 318 21 and.b32 %r457,%r62,2; .loc 1 318 10 setp.eq.u32 %r458,%r457,0; @ %r458 bra $L73; .loc 1 319 27 ld.u32 %r460,[%r114]; or.b32 %r459,%r62,%r460; and.b32 %r461,%r459,1; .loc 1 319 8 setp.ne.u32 %r462,%r461,0; @ %r462 bra $L74; bra $L73; $L71: .loc 1 323 7 mov.u32 %r463,1; sub.u32 %r227,%r463,%r227; $L72: .loc 1 328 6 setp.eq.u32 %r464,%r227,0; @ %r464 bra $L73; $L74: .loc 1 329 6 ld.u32 %r138,[%r108+20]; .loc 1 110 4 add.u64 %r148,%r108,24; .loc 1 111 9 cvt.s64.s32 %r465,%r138; shl.b64 %r149,%r465,2; .loc 1 111 5 add.u64 %r150,%r148,%r149; mov.u64 %r191,%r148; .loc 1 118 8 mov.u32 %r558,0; $L77: .loc 1 114 7 ld.u32 %r152,[%r191]; .loc 1 114 6 setp.eq.u32 %r466,%r152,-1; @ %r466 bra $L75; .loc 1 115 4 add.u32 %r467,%r152,1; st.u32 [%r191],%r467; .loc 1 116 11 bra $L76; $L75: .loc 1 118 8 st.u32 [%r191],%r558; .loc 1 119 13 add.u64 %r191,%r191,4; setp.gt.u64 %r469,%r150,%r191; @ %r469 bra $L77; .loc 1 131 8 ld.u32 %r154,[%r108+20]; .loc 1 131 6 ld.u32 %r470,[%r108+12]; setp.lt.s32 %r471,%r154,%r470; @ %r471 bra $L78; .loc 1 132 9 ld.u32 %r475,[%r108+8]; add.u32 %r474,%r475,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r476,[%value_in]; } setp.ne.u64 %r477,%r476,0; @ %r477 bra $L79; cvta.const.u64 %r481,$LC0; mov.u32 %r479,132; cvta.const.u64 %r478,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r478; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r479; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r476; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r481; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L79: .loc 1 133 4 ld.s32 %r485,[%r108+20]; add.u64 %r486,%r485,2; shl.b64 %r487,%r486,2; add.u64 %r488,%r108,16; add.u64 %r489,%r476,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r489; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r488; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r487; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r490,[%value_in]; } .loc 1 134 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r222; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 137 10 ld.u32 %r154,[%r476+20]; .loc 1 331 6 add.u64 %r148,%r476,24; mov.u64 %r108,%r476; $L78: .loc 1 137 16 add.u32 %r493,%r154,1; st.u32 [%r108+20],%r493; .loc 1 137 20 cvt.s64.s32 %r494,%r154; add.u64 %r495,%r494,4; shl.b64 %r496,%r495,2; add.u64 %r497,%r108,%r496; mov.u32 %r499,1; st.u32 [%r497+8],%r499; $L76: .loc 1 332 7 setp.ne.u32 %r500,%r221,2; @ %r500 bra $L80; .loc 1 333 29 ld.u32 %r502,[%r224]; add.u32 %r501,%r502,-1; .loc 1 333 8 setp.ne.u32 %r503,%r501,%r113; @ %r503 bra $L111; .loc 1 334 17 shr.s32 %r504,%r113,5; .loc 1 334 10 cvt.s64.s32 %r505,%r504; shl.b64 %r506,%r505,2; add.u64 %r507,%r148,%r506; .loc 1 334 42 and.b32 %r508,%r113,31; .loc 1 334 32 mov.u32 %r510,1; shl.b32 %r509,%r510,%r508; .loc 1 334 28 ld.u32 %r512,[%r507]; and.b32 %r511,%r509,%r512; .loc 1 334 6 setp.eq.u32 %r513,%r511,0; selp.u32 %r221,34,33,%r513; bra $L70; $L80: .loc 1 337 15 ld.u32 %r101,[%r108+20]; .loc 1 337 12 setp.gt.s32 %r514,%r101,%r138; @ %r514 bra $L82; .loc 1 338 12 and.b32 %r139,%r113,31; .loc 1 338 5 setp.eq.u32 %r515,%r139,0; @ %r515 bra $L113; .loc 1 339 13 add.u64 %r517,%r148,%r149; ld.u32 %r516,[%r517+-4]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r516; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r519,[%value_in]; } .loc 1 339 33 mov.u32 %r521,32; sub.u32 %r520,%r521,%r139; .loc 1 339 9 setp.ge.s32 %r522,%r519,%r520; @ %r522 bra $L114; .loc 1 79 11 ld.u32 %r101,[%r108+20]; $L82: .loc 1 79 5 setp.le.s32 %r523,%r101,0; @ %r523 bra $L83; .loc 1 80 10 cvt.s64.s32 %r524,%r101; shl.b64 %r525,%r524,2; .loc 1 80 6 add.u64 %r167,%r148,%r525; .loc 1 84 6 ld.u32 %r526,[%r108+24]; shr.u32 %r174,%r526,1; .loc 1 84 10 add.u64 %r527,%r108,28; .loc 1 85 12 setp.le.u64 %r528,%r167,%r527; @ %r528 bra $L84; mov.u64 %r197,%r527; mov.u64 %r195,%r148; $L85: .loc 1 86 22 ld.u32 %r530,[%r197]; shl.b32 %r529,%r530,31; .loc 1 86 29 or.b32 %r531,%r529,%r174; .loc 1 86 11 st.u32 [%r195],%r531; .loc 1 87 7 ld.u32 %r532,[%r197]; shr.u32 %r174,%r532,1; .loc 1 85 12 add.u64 %r197,%r197,4; add.u64 %r195,%r195,4; setp.gt.u64 %r533,%r167,%r197; @ %r533 bra $L85; .loc 1 86 8 sub.u64 %r534,%r167,%r108; add.u64 %r536,%r534,-29; and.b64 %r538,%r536,-4; add.u64 %r539,%r538,4; add.u64 %r118,%r148,%r539; .loc 1 89 13 st.u32 [%r118],%r174; .loc 1 89 7 setp.eq.u32 %r540,%r174,0; @ %r540 bra $L86; bra $L92; $L116: .loc 1 77 9 mov.u64 %r118,%r148; $L92: .loc 1 90 7 add.u64 %r118,%r118,4; $L86: .loc 1 96 20 sub.u64 %r541,%r118,%r148; shr.s64 %r543,%r541,2; .loc 1 96 15 cvt.u32.u64 %r177,%r543; st.u32 [%r108+20],%r177; .loc 1 96 5 setp.ne.u32 %r544,%r177,0; @ %r544 bra $L87; $L88: .loc 1 97 12 mov.u32 %r545,0; st.u32 [%r108+24],%r545; $L87: .loc 1 341 8 add.u32 %r115,%r115,1; ld.u32 %r546,[%r224+8]; setp.lt.s32 %r547,%r546,%r115; @ %r547 bra $L59; mov.u32 %r221,33; bra $L70; $L111: mov.u32 %r221,34; bra $L70; $L113: mov.u32 %r221,33; bra $L70; $L114: mov.u32 %r221,33; bra $L70; $L73: .loc 1 347 8 or.b32 %r221,%r221,16; $L70: .loc 1 349 6 st.u64 [%r226],%r108; .loc 1 350 7 st.u32 [%r225],%r115; .loc 1 351 9 bra $L18; $L83: .loc 1 96 15 mov.u32 %r549,0; st.u32 [%r108+20],%r549; bra $L88; $L171: .loc 1 216 6 st.u64 [%r223],%r26; bra $L89; $L23: .loc 1 194 9 ld.u8 %r30,[%r144]; mov.u64 %r26,%r144; $L24: .loc 1 194 2 cvt.u16.u32 %r551,%r30; and.b16 %r553,%r551,223; setp.eq.u16 %r554,%r553,80; @ ! %r554 bra $L171; bra $L115; $L172: .loc 1 96 15 st.u32 [%r108+20],%r174; bra $L88; $L84: .loc 1 89 13 st.u32 [%r108+24],%r174; .loc 1 89 7 setp.ne.u32 %r556,%r174,0; @ %r556 bra $L116; bra $L172; $L18: .loc 1 352 1 mov.u32 %value,%r221; st.param.u32 [%value_out],%value; ret; } /346 0 0 0 644 9730 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __match .visible .func (.param .u32 %value_out) __match (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/gdtoa-hexnan.c" // BEGIN GLOBAL FUNCTION DECL: __hexnan .visible .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __hexdig .extern .const .align 1 .u8 __hexdig[]; // BEGIN GLOBAL FUNCTION DEF: __match .visible .func (.param .u32 %value_out) __match (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; mov.u64 %r32,%ar0; .loc 1 52 14 ld.u64 %r27,[%r32]; mov.u64 %r25,%ar1; .loc 1 54 7 bra $L2; $L5: .loc 1 55 12 ld.s8 %r26,[%r27]; .loc 1 55 25 add.u32 %r34,%r26,-65; setp.gt.u32 %r35,%r34,25; @ %r35 bra $L3; .loc 1 56 6 add.u32 %r26,%r26,32; $L3: .loc 1 57 6 add.u64 %r25,%r25,1; setp.ne.u32 %r36,%r26,%r28; @ %r36 bra $L6; $L2: .loc 1 54 12 ld.s8 %r28,[%r25]; .loc 1 55 6 add.u64 %r27,%r27,1; .loc 1 54 20 setp.ne.u32 %r37,%r28,0; @ %r37 bra $L5; .loc 1 60 6 st.u64 [%r32],%r27; .loc 1 61 9 mov.u32 %r31,1; bra $L1; $L6: .loc 1 58 11 mov.u32 %r31,0; $L1: .loc 1 62 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __hexnan .visible .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r38; .reg .u32 %r39; .reg .u64 %r45; .reg .u32 %r47; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r96; .reg .u32 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u64 %r113; .reg .u64 %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .pred %r130; .reg .u32 %r133; .reg .u32 %r134; .reg .pred %r135; .reg .pred %r137; .reg .u64 %r138; .reg .pred %r139; .reg .u32 %r140; .reg .pred %r141; .reg .u16 %r143; .reg .u16 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .pred %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u16 %r156; .reg .u16 %r157; .reg .u16 %r158; .reg .u32 %r159; .reg .u16 %r160; .reg .pred %r161; .reg .pred %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .pred %r167; .reg .pred %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .pred %r172; .reg .u64 %r173; .reg .u64 %r175; .reg .u32 %r176; .reg .pred %r177; .reg .pred %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .pred %r183; .reg .pred %r184; .reg .pred %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u64 %r190; .reg .u32 %r191; .reg .u32 %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .u16 %r195; mov.u64 %r103,%ar0; mov.u64 %r104,%ar1; mov.u64 %r105,%ar2; .loc 1 89 8 ld.u32 %r53,[%r104]; .loc 1 90 18 shr.s32 %r106,%r53,5; .loc 1 90 9 cvt.s64.s32 %r107,%r106; shl.b64 %r108,%r107,2; .loc 1 90 4 add.u64 %r54,%r105,%r108; .loc 1 91 12 and.b32 %r24,%r53,31; .loc 1 91 5 setp.ne.u32 %r109,%r24,0; @ %r109 bra $L8; .loc 1 93 7 add.u64 %r67,%r54,-4; .loc 1 90 4 mov.u64 %r45,%r54; bra $L9; $L8: .loc 1 92 4 add.u64 %r45,%r54,4; mov.u64 %r67,%r54; $L9: .loc 1 93 7 mov.u32 %r110,0; st.u32 [%r45+-4],%r110; .loc 1 96 4 ld.u64 %r58,[%r103]; .loc 1 97 8 add.u64 %r59,%r58,1; .loc 1 97 11 ld.u8 %r60,[%r58+1]; .loc 1 97 8 setp.ne.u32 %r111,%r60,0; @ %r111 bra $L36; $L19: .loc 1 130 10 mov.u32 %r102,4; bra $L7; $L36: .loc 1 97 8 mov.u64 %r65,%r67; mov.u64 %r38,%r67; .loc 1 95 20 mov.u32 %r52,%r110; .loc 1 95 16 mov.u32 %r51,%r52; .loc 1 95 10 mov.u32 %r47,%r52; cvta.const.u64 %r190,__hexdig; .loc 1 125 9 mov.u32 %r191,%r52; mov.u32 %r192,%r52; .loc 1 71 4 mov.u32 %r193,8; .loc 1 73 4 mov.u32 %r194,32; $L10: .loc 1 98 13 cvt.u64.u32 %r113,%r60; add.u64 %r114,%r190,%r113; ld.u8 %r25,[%r114]; .loc 1 98 6 setp.ne.u32 %r115,%r25,0; @ %r115 bra $L12; .loc 1 99 7 setp.gt.u32 %r116,%r60,32; @ %r116 bra $L13; .loc 1 100 8 setp.le.s32 %r117,%r47,%r51; @ %r117 bra $L14; .loc 1 101 12 set.u32.lt.u64 %r119,%r38,%r65; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 101 22 set.u32.le.s32 %r122,%r52,7; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 101 17 cvt.u16.u8 %r195,%r118; mov.u16 %r125,%r195; cvt.u16.u8 %r195,%r121; mov.u16 %r126,%r195; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 101 9 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L15; $L18: .loc 1 103 9 setp.ge.u64 %r130,%r105,%r38; @ %r130 bra $L37; bra $L51; $L15: .loc 1 71 4 sub.u32 %r68,%r193,%r52; .loc 1 72 4 shl.b32 %r69,%r68,2; .loc 1 73 4 sub.u32 %r70,%r194,%r69; .loc 1 127 10 ld.u32 %r76,[%r38]; add.u64 %r96,%r38,4; mov.u64 %r71,%r38; $L17: .loc 1 75 10 ld.u32 %r73,[%r96]; .loc 1 75 14 shl.b32 %r133,%r73,%r70; .loc 1 75 6 or.b32 %r134,%r133,%r76; st.u32 [%r71],%r134; .loc 1 76 8 shr.u32 %r76,%r73,%r69; st.u32 [%r96],%r76; .loc 1 77 15 add.u64 %r71,%r71,4; add.u64 %r96,%r96,4; setp.lt.u64 %r135,%r71,%r65; @ %r135 bra $L17; bra $L18; $L51: .loc 1 108 11 add.u64 %r65,%r38,-4; st.u32 [%r38+-4],%r191; mov.u32 %r51,%r47; mov.u64 %r38,%r65; .loc 1 110 8 mov.u32 %r52,0; bra $L14; $L13: .loc 1 114 7 setp.ne.u32 %r137,%r60,41; @ %r137 bra $L19; .loc 1 115 13 add.u64 %r138,%r59,1; .loc 1 115 9 st.u64 [%r103],%r138; .loc 1 116 5 bra $L20; $L12: .loc 1 120 10 add.u32 %r47,%r47,1; .loc 1 121 6 add.u32 %r52,%r52,1; setp.gt.s32 %r139,%r52,8; @ %r139 bra $L21; .loc 1 127 13 ld.u32 %r140,[%r38]; shl.b32 %r87,%r140,4; bra $L22; $L21: .loc 1 122 7 setp.ge.u64 %r141,%r105,%r38; @ %r141 bra $L14; .loc 1 125 9 st.u32 [%r38+-4],%r191; add.u64 %r38,%r38,-4; mov.u32 %r87,%r192; .loc 1 124 6 mov.u32 %r52,1; $L22: .loc 1 127 24 cvt.u16.u32 %r144,%r25; and.b16 %r143,%r144,15; cvt.u32.u16 %r145,%r143; cvt.u32.u8 %r146,%r145; .loc 1 127 19 or.b32 %r147,%r146,%r87; .loc 1 127 6 st.u32 [%r38],%r147; bra $L14; $L37: .loc 1 104 9 mov.u32 %r52,8; $L14: .loc 1 97 8 add.u64 %r59,%r59,1; .loc 1 97 11 ld.u8 %r60,[%r59]; .loc 1 97 8 setp.ne.u32 %r148,%r60,0; @ %r148 bra $L10; $L20: .loc 1 129 5 setp.eq.u32 %r149,%r47,0; @ %r149 bra $L19; .loc 1 131 8 set.u32.lt.u64 %r151,%r38,%r65; neg.s32 %r152,%r151; mov.u32 %r150,%r152; .loc 1 131 18 set.u32.le.s32 %r154,%r52,7; neg.s32 %r155,%r154; mov.u32 %r153,%r155; .loc 1 131 13 cvt.u16.u8 %r195,%r150; mov.u16 %r157,%r195; cvt.u16.u8 %r195,%r153; mov.u16 %r158,%r195; and.b16 %r156,%r157,%r158; cvt.u32.u16 %r159,%r156; .loc 1 131 5 cvt.u16.u8 %r160,%r159; setp.ne.u16 %r161,%r160,0; @ %r161 bra $L23; $L27: .loc 1 133 5 setp.lt.u64 %r162,%r105,%r38; @ %r162 bra $L24; bra $L52; $L23: .loc 1 71 4 mov.u32 %r163,8; sub.u32 %r77,%r163,%r52; .loc 1 72 4 shl.b32 %r78,%r77,2; .loc 1 73 4 mov.u32 %r164,32; sub.u32 %r79,%r164,%r78; .loc 1 75 6 ld.u32 %r64,[%r38]; add.u64 %r66,%r38,4; mov.u64 %r80,%r38; $L26: .loc 1 75 10 ld.u32 %r81,[%r66]; .loc 1 75 14 shl.b32 %r165,%r81,%r79; .loc 1 75 6 or.b32 %r166,%r165,%r64; st.u32 [%r80],%r166; .loc 1 76 8 shr.u32 %r64,%r81,%r78; st.u32 [%r66],%r64; .loc 1 77 15 add.u64 %r80,%r80,4; add.u64 %r66,%r66,4; setp.lt.u64 %r167,%r80,%r65; @ %r167 bra $L26; bra $L27; $L24: mov.u64 %r89,%r105; .loc 1 133 5 mov.u64 %r88,%r38; $L28: .loc 1 135 14 ld.u32 %r39,[%r88]; .loc 1 135 12 st.u32 [%r89],%r39; .loc 1 136 12 add.u64 %r88,%r88,4; add.u64 %r89,%r89,4; setp.ge.u64 %r168,%r67,%r88; @ %r168 bra $L28; .loc 1 135 9 add.u64 %r170,%r67,1; add.u64 %r171,%r38,1; setp.lt.u64 %r172,%r170,%r171; @ %r172 bra $L29; sub.u64 %r173,%r67,%r38; and.b64 %r175,%r173,-4; add.u64 %r169,%r175,4; bra $L30; $L29: mov.u64 %r169,4; $L30: add.u64 %r72,%r105,%r169; .loc 1 137 12 mov.u32 %r176,0; $L31: st.u32 [%r72],%r176; .loc 1 138 13 add.u64 %r72,%r72,4; setp.ge.u64 %r177,%r67,%r72; @ %r177 bra $L31; .loc 1 146 7 ld.u32 %r86,[%r45+-4]; bra $L32; $L52: .loc 1 143 8 ld.u32 %r86,[%r45+-4]; .loc 1 142 6 setp.eq.u32 %r178,%r24,0; @ %r178 bra $L32; .loc 1 143 44 mov.u32 %r180,32; sub.u32 %r179,%r180,%r24; .loc 1 143 33 mov.u32 %r182,-1; shr.u32 %r181,%r182,%r179; .loc 1 143 8 and.b32 %r86,%r86,%r181; st.u32 [%r45+-4],%r86; $L32: .loc 1 146 6 setp.ne.u32 %r183,%r86,0; @ %r183 bra $L38; .loc 1 148 6 setp.eq.u64 %r184,%r105,%r67; @ ! %r184 bra $L34; bra $L33; $L35: setp.ne.u64 %r185,%r105,%r67; @ %r185 bra $L34; $L33: .loc 1 149 8 mov.u32 %r186,1; st.u32 [%r67],%r186; .loc 1 153 9 mov.u32 %r102,5; .loc 1 150 4 bra $L7; $L34: .loc 1 145 16 add.u64 %r67,%r67,-4; .loc 1 146 6 ld.u32 %r187,[%r67]; setp.eq.u32 %r188,%r187,0; @ %r188 bra $L35; .loc 1 153 9 mov.u32 %r102,5; bra $L7; $L38: mov.u32 %r102,5; $L7: .loc 1 154 1 mov.u32 %value,%r102; st.param.u32 [%value_out],%value; ret; } lib_a-getc.o/ 0 0 0 644 3040 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getc_r .visible .func (.param .u32 %value_out) _getc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/getc.c" // BEGIN GLOBAL FUNCTION DECL: getc .visible .func (.param .u32 %value_out) getc (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getc_r .visible .func (.param .u32 %value_out) _getc_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 83 3 setp.eq.u64 %r31,%r29,0; @ %r31 bra $L2; ld.u32 %r32,[%r29+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call __sinit,(%out_arg1); } $L2: .loc 1 85 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r28,%r39; bra $L1; $L3: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r28,[%r25]; $L1: .loc 1 88 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getc .visible .func (.param .u32 %value_out) getc (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r39; .reg .u64 %r40; mov.u64 %r30,%ar0; .loc 1 96 18 ld.global.u64 %r28,[_impure_ptr]; .loc 1 98 3 setp.eq.u64 %r31,%r28,0; @ %r31 bra $L9; ld.u32 %r32,[%r28+80]; setp.ne.u32 %r33,%r32,0; @ %r33 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __sinit,(%out_arg1); } $L9: .loc 1 100 12 ld.u32 %r35,[%r30+8]; add.u32 %r24,%r35,-1; st.u32 [%r30+8],%r24; setp.ge.s32 %r36,%r24,0; @ %r36 bra $L10; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } mov.u32 %r29,%r39; bra $L8; $L10: ld.u64 %r25,[%r30]; add.u64 %r40,%r25,1; st.u64 [%r30],%r40; ld.u8 %r29,[%r25]; $L8: .loc 1 103 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-getc_u.o/ 0 0 0 644 2501 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getc_unlocked_r .visible .func (.param .u32 %value_out) _getc_unlocked_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/getc_u.c" // BEGIN GLOBAL FUNCTION DECL: getc_unlocked .visible .func (.param .u32 %value_out) getc_unlocked (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getc_unlocked_r .visible .func (.param .u32 %value_out) _getc_unlocked_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r34; .reg .u64 %r35; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 77 10 ld.u32 %r30,[%r29+8]; add.u32 %r23,%r30,-1; st.u32 [%r29+8],%r23; setp.ge.s32 %r31,%r23,0; @ %r31 bra $L2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r34,[%value_in]; } mov.u32 %r27,%r34; bra $L1; $L2: ld.u64 %r24,[%r29]; add.u64 %r35,%r24,1; st.u64 [%r29],%r35; ld.u8 %r27,[%r24]; $L1: .loc 1 78 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getc_unlocked .visible .func (.param .u32 %value_out) getc_unlocked (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; mov.u64 %r29,%ar0; .loc 1 85 10 ld.u32 %r30,[%r29+8]; add.u32 %r23,%r30,-1; st.u32 [%r29+8],%r23; setp.ge.s32 %r31,%r23,0; @ %r31 bra $L5; ld.global.u64 %r34,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } mov.u32 %r28,%r35; bra $L4; $L5: ld.u64 %r25,[%r29]; add.u64 %r36,%r25,1; st.u64 [%r29],%r36; ld.u8 %r28,[%r25]; $L4: .loc 1 86 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-getchar.o/0 0 0 644 1645 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getchar_r .visible .func (.param .u32 %value_out) _getchar_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/getchar.c" // BEGIN GLOBAL FUNCTION DECL: getchar .visible .func (.param .u32 %value_out) getchar; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _getc_r .extern .func (.param .u32 %value_out) _getc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getchar_r .visible .func (.param .u32 %value_out) _getchar_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 78 10 ld.u64 %r27,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 79 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getchar .visible .func (.param .u32 %value_out) getchar { .reg .u32 %value; .reg .u64 %r23; .reg .u64 %r27; .reg .u32 %r28; .loc 1 86 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 90 10 ld.u64 %r27,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 91 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /368 0 0 0 644 1755 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _getchar_unlocked_r .visible .func (.param .u32 %value_out) _getchar_unlocked_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/getchar_u.c" // BEGIN GLOBAL FUNCTION DECL: getchar_unlocked .visible .func (.param .u32 %value_out) getchar_unlocked; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _getc_unlocked_r .extern .func (.param .u32 %value_out) _getc_unlocked_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _getchar_unlocked_r .visible .func (.param .u32 %value_out) _getchar_unlocked_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r24,%ar0; .loc 1 75 10 ld.u64 %r27,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_unlocked_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 76 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getchar_unlocked .visible .func (.param .u32 %value_out) getchar_unlocked { .reg .u32 %value; .reg .u64 %r22; .reg .u64 %r27; .reg .u32 %r28; .loc 1 85 36 ld.global.u64 %r22,[_impure_ptr]; .loc 1 85 10 ld.u64 %r27,[%r22+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_getc_unlocked_r,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } .loc 1 86 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /387 0 0 0 644 5310 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __getdelim .visible .func (.param .u64 %value_out) __getdelim (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/getdelim.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: getc_unlocked .extern .func (.param .u32 %value_out) getc_unlocked (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __getdelim .visible .func (.param .u64 %value_out) __getdelim (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r26; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .pred %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .pred %r78; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .pred %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .pred %r99; .reg .u16 %r100; mov.u64 %r47,%ar0; mov.u64 %r48,%ar1; mov.u32 %r49,%ar2; mov.u64 %r50,%ar3; .loc 1 55 28 set.u32.eq.u64 %r52,%r47,0; neg.s32 %r53,%r52; mov.u32 %r51,%r53; .loc 1 55 36 set.u32.eq.u64 %r55,%r48,0; neg.s32 %r56,%r55; mov.u32 %r54,%r56; cvt.u16.u8 %r100,%r51; mov.u16 %r58,%r100; cvt.u16.u8 %r100,%r54; mov.u16 %r59,%r100; or.b16 %r57,%r58,%r59; cvt.u32.u16 %r60,%r57; .loc 1 55 10 set.u32.eq.u64 %r62,%r50,0; neg.s32 %r63,%r62; mov.u32 %r61,%r63; .loc 1 55 36 cvt.u16.u8 %r100,%r60; mov.u16 %r65,%r100; cvt.u16.u8 %r100,%r61; mov.u16 %r66,%r100; or.b16 %r64,%r65,%r66; cvt.u32.u16 %r67,%r64; cvt.u16.u8 %r68,%r67; setp.eq.u16 %r69,%r68,0; @ %r69 bra $L2; .loc 1 57 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 57 13 mov.u32 %r71,22; st.u32 [%r70],%r71; .loc 1 58 14 mov.u64 %r46,-1; bra $L1; $L2: .loc 1 61 7 ld.u64 %r39,[%r47]; .loc 1 62 6 setp.eq.u64 %r72,%r39,0; @ %r72 bra $L4; .loc 1 62 19 ld.u64 %r73,[%r48]; setp.gt.u64 %r74,%r73,3; @ %r74 bra $L5; $L4: .loc 1 64 21 mov.u64 %r76,128; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r76; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r77,[%value_in]; } mov.u64 %r39,%r77; .loc 1 65 10 setp.ne.u64 %r78,%r39,0; @ %r78 bra $L6; $L13: .loc 1 67 11 mov.u64 %r46,-1; bra $L1; $L6: .loc 1 69 15 st.u64 [%r47],%r39; .loc 1 70 10 st.u64 [%r48],%r76; $L5: .loc 1 73 3 ld.global.u64 %r35,[_impure_ptr]; setp.eq.u64 %r80,%r35,0; @ %r80 bra $L7; ld.u32 %r81,[%r35+80]; setp.ne.u32 %r82,%r81,0; @ %r82 bra $L7; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call __sinit,(%out_arg1); } $L7: .loc 1 77 12 ld.u64 %r40,[%r48]; mov.u64 %r45,%r39; bra $L8; $L10: .loc 1 87 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; call (%value_in),getc_unlocked,(%out_arg1); ld.param.u32 %r85,[%value_in]; } .loc 1 87 14 setp.eq.u32 %r86,%r85,-1; @ %r86 bra $L9; add.u64 %r26,%r26,1; .loc 1 94 22 st.u8 [%r34],%r85; .loc 1 95 18 setp.eq.u32 %r87,%r85,%r49; @ %r87 bra $L9; $L12: mov.u64 %r34,%r26; .loc 1 85 25 setp.ne.u64 %r88,%r33,%r26; @ %r88 bra $L10; bra $L29; $L30: .loc 1 116 19 st.u64 [%r47],%r45; .loc 1 117 14 st.u64 [%r48],%r95; .loc 1 118 21 cvt.s64.s32 %r32,%r37; .loc 1 118 15 add.u64 %r39,%r45,%r32; .loc 1 119 20 sub.u64 %r40,%r95,%r32; $L8: mov.u64 %r26,%r39; add.u64 %r89,%r40,-1; add.u64 %r33,%r26,%r89; bra $L12; $L14: .loc 1 130 8 mov.u32 %r90,0; st.u8 [%r26],%r90; .loc 1 131 10 sub.u64 %r46,%r26,%r45; bra $L1; $L9: .loc 1 126 6 setp.eq.u64 %r92,%r45,%r26; @ ! %r92 bra $L14; bra $L13; $L29: .loc 1 106 21 sub.u64 %r93,%r33,%r45; .loc 1 106 15 cvt.u32.u64 %r37,%r93; .loc 1 107 19 ld.u64 %r94,[%r48]; add.u64 %r95,%r94,%r94; .loc 1 108 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r95; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r98,[%value_in]; } mov.u64 %r45,%r98; .loc 1 109 14 setp.eq.u64 %r99,%r45,0; @ ! %r99 bra $L30; bra $L14; $L1: .loc 1 132 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-getenv.o/ 0 0 0 644 2500 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _findenv .visible .func (.param .u64 %value_out) _findenv (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/getenv.c" // BEGIN GLOBAL FUNCTION DECL: getenv .visible .func (.param .u64 %value_out) getenv (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _findenv_r .extern .func (.param .u64 %value_out) _findenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _findenv .visible .func (.param .u64 %value_out) _findenv (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 69 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_findenv_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 70 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: getenv .visible .func (.param .u64 %value_out) getenv (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u64 %r28; .reg .u64 %r29; mov.u64 %r24,%ar0; .loc 1 82 10 ld.global.u64 %r28,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_findenv_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r29,[%value_in]; } .loc 1 83 1 mov.u64 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } /405 0 0 0 644 5728 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _findenv_r .visible .func (.param .u64 %value_out) _findenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/getenv_r.c" // BEGIN GLOBAL FUNCTION DECL: _getenv_r .visible .func (.param .u64 %value_out) _getenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: environ .extern .global .align 8 .u64 environ[1]; // BEGIN GLOBAL FUNCTION DECL: __env_lock .extern .func __env_lock (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __env_unlock .extern .func __env_unlock (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _findenv_r .visible .func (.param .u64 %value_out) _findenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .pred %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .pred %r62; .reg .u32 %r64; .reg .u16 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u16 %r72; .reg .u16 %r73; .reg .u16 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u32 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u16 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r94; .reg .pred %r96; .reg .u16 %r98; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; mov.u64 %r46,%ar2; .loc 1 84 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __env_lock,(%out_arg1); } .loc 1 88 8 ld.global.u64 %r38,[environ]; .loc 1 88 6 setp.eq.u64 %r48,%r38,0; @ %r48 bra $L2; .loc 1 95 10 ld.s8 %r22,[%r45]; .loc 1 95 13 cvt.u16.u32 %r50,%r22; set.u32.ne.u16 %r51,%r50,61; neg.s32 %r52,%r51; mov.u32 %r49,%r52; set.u32.ne.u16 %r55,%r50,0; neg.s32 %r56,%r55; mov.u32 %r53,%r56; cvt.u16.u8 %r98,%r49; mov.u16 %r58,%r98; cvt.u16.u8 %r98,%r53; mov.u16 %r59,%r98; and.b16 %r57,%r58,%r59; cvt.u32.u16 %r60,%r57; cvt.u16.u8 %r61,%r60; setp.ne.u16 %r62,%r61,0; @ %r62 bra $L10; mov.u64 %r39,%r45; bra $L4; $L2: .loc 1 90 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __env_unlock,(%out_arg1); } .loc 1 91 14 mov.u64 %r43,0; bra $L1; $L10: .loc 1 95 13 mov.u64 %r39,%r45; $L3: .loc 1 95 29 add.u64 %r39,%r39,1; .loc 1 95 10 ld.s8 %r22,[%r39]; .loc 1 95 13 cvt.u16.u32 %r65,%r22; set.u32.ne.u16 %r66,%r65,0; neg.s32 %r67,%r66; mov.u32 %r64,%r67; set.u32.ne.u16 %r70,%r65,61; neg.s32 %r71,%r70; mov.u32 %r68,%r71; cvt.u16.u8 %r98,%r64; mov.u16 %r73,%r98; cvt.u16.u8 %r98,%r68; mov.u16 %r74,%r98; and.b16 %r72,%r73,%r74; cvt.u32.u16 %r75,%r72; cvt.u16.u8 %r76,%r75; setp.ne.u16 %r77,%r76,0; @ %r77 bra $L3; $L4: .loc 1 98 5 cvt.u16.u32 %r78,%r22; setp.ne.u16 %r79,%r78,61; @ ! %r79 bra $L2; .loc 1 100 13 sub.u64 %r80,%r39,%r45; .loc 1 100 9 cvt.u32.u64 %r36,%r80; .loc 1 101 26 ld.u64 %r35,[%r38]; setp.eq.u64 %r81,%r35,0; @ %r81 bra $L2; .loc 1 102 12 cvt.s64.s32 %r42,%r36; $L9: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r45; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r42; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r85,[%value_in]; } .loc 1 102 10 setp.ne.u32 %r86,%r85,0; @ %r86 bra $L8; .loc 1 103 17 ld.u64 %r87,[%r38]; add.u64 %r37,%r87,%r42; .loc 1 103 12 ld.u8 %r89,[%r37]; cvt.s16.s8 %r88,%r89; setp.ne.u16 %r90,%r88,61; @ %r90 bra $L8; .loc 1 105 16 ld.global.u64 %r92,[environ]; sub.u64 %r91,%r38,%r92; shr.s64 %r94,%r91,3; .loc 1 105 12 st.u32 [%r46],%r94; .loc 1 106 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __env_unlock,(%out_arg1); } .loc 1 107 11 add.u64 %r43,%r37,1; bra $L1; $L8: .loc 1 101 30 add.u64 %r38,%r38,8; .loc 1 101 26 ld.u64 %r35,[%r38]; setp.ne.u64 %r96,%r35,0; @ %r96 bra $L9; bra $L2; $L1: .loc 1 112 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _getenv_r .visible .func (.param .u64 %value_out) _getenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r28; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 125 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_findenv_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r28,[%value_in]; } .loc 1 126 1 mov.u64 %value,%r28; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-getline.o/0 0 0 644 1363 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __getline .visible .func (.param .u64 %value_out) __getline (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/getline.c" // BEGIN GLOBAL FUNCTION DECL: __getdelim .extern .func (.param .u64 %value_out) __getdelim (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: __getline .visible .func (.param .u64 %value_out) __getline (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 44 10 mov.u32 %r28,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r25; call (%value_in),__getdelim,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 45 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /423 0 0 0 644 527 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __getreent .visible .func (.param .u64 %value_out) __getreent; .file 1 "../../../../../../newlib/libc/reent/getreent.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: __getreent .visible .func (.param .u64 %value_out) __getreent { .reg .u64 %value; .loc 1 19 10 ld.global.u64 %value,[_impure_ptr]; .loc 1 20 1 st.param.u64 [%value_out],%value; ret; } lib_a-gets.o/ 0 0 0 644 3017 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _gets_r .visible .func (.param .u64 %value_out) _gets_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/gets.c" // BEGIN GLOBAL FUNCTION DECL: gets .visible .func (.param .u64 %value_out) gets (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srget_r .extern .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _gets_r .visible .func (.param .u64 %value_out) _gets_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .pred %r49; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; .loc 1 74 6 ld.u64 %r31,[%r34+8]; .loc 1 75 3 ld.u32 %r36,[%r34+80]; setp.ne.u32 %r37,%r36,0; @ %r37 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call __sinit,(%out_arg1); } $L2: mov.u64 %r26,%r35; bra $L3; $L7: .loc 1 78 8 setp.ne.u32 %r39,%r46,-1; @ %r39 bra $L4; .loc 1 79 10 setp.eq.u64 %r40,%r26,%r35; @ %r40 bra $L9; $L8: .loc 1 88 6 mov.u32 %r41,0; st.u8 [%r26],%r41; .loc 1 90 10 mov.u64 %r33,%r35; bra $L1; $L4: .loc 1 87 12 st.u8 [%r26],%r32; add.u64 %r26,%r26,1; $L3: .loc 1 77 15 ld.u32 %r42,[%r31+8]; add.u32 %r25,%r42,-1; st.u32 [%r31+8],%r25; setp.ge.s32 %r43,%r25,0; @ %r43 bra $L6; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__srget_r,(%out_arg1,%out_arg2); ld.param.u32 %r46,[%value_in]; } mov.u32 %r32,%r46; .loc 1 77 36 setp.ne.u32 %r47,%r46,10; @ %r47 bra $L7; bra $L8; $L6: .loc 1 77 15 ld.u64 %r27,[%r31]; add.u64 %r48,%r27,1; st.u64 [%r31],%r48; ld.u8 %r32,[%r27]; .loc 1 77 36 setp.ne.u32 %r49,%r32,10; @ %r49 bra $L4; bra $L8; $L9: .loc 1 82 11 mov.u64 %r33,0; $L1: .loc 1 91 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: gets .visible .func (.param .u64 %value_out) gets (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 98 10 ld.global.u64 %r27,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_gets_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 99 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } /441 0 0 0 644 1577 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _gettimeofday_r .visible .func (.param .u32 %value_out) _gettimeofday_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/gettimeofdayr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: gettimeofday .extern .func (.param .u32 %value_out) gettimeofday (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _gettimeofday_r .visible .func (.param .u32 %value_out) _gettimeofday_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 61 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 62 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),gettimeofday,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 62 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 62 66 ld.global.u32 %r22,[errno]; .loc 1 62 57 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 63 17 st.u32 [%r24],%r22; $L1: .loc 1 65 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } /464 0 0 0 644 530 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .visible .func (.param .u64 %value_out) __gettzinfo; .file 1 "../../../../../../newlib/libc/time/gettzinfo.c" // BEGIN VAR DEF: tzinfo .global .align 8 .u64 tzinfo[11] = {1,74,0,0,0,0,74,0,0,0,0 }; // BEGIN GLOBAL FUNCTION DEF: __gettzinfo .visible .func (.param .u64 %value_out) __gettzinfo { .reg .u64 %value; .loc 1 14 10 cvta.global.u64 %value,tzinfo; .loc 1 15 1 st.param.u64 [%value_out],%value; ret; } lib_a-gmtime.o/ 0 0 0 644 1082 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gmtime .visible .func (.param .u64 %value_out) gmtime (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/gmtime.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: gmtime_r .extern .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: gmtime .visible .func (.param .u64 %value_out) gmtime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 58 40 ld.global.u64 %r29,[_impure_ptr]; add.u64 %r28,%r29,188; .loc 1 58 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),gmtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 59 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /483 0 0 0 644 4543 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: gmtime_r .visible .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/time/gmtime_r.c" // BEGIN GLOBAL FUNCTION DEF: gmtime_r .visible .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r30; .reg .u64 %r35; .reg .u32 %r47; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r86; .reg .u64 %r88; .reg .u64 %r89; .reg .pred %r90; .reg .u64 %r95; .reg .u64 %r100; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u64 %r108; .reg .u64 %r110; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r126; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r139; .reg .u32 %r141; .reg .pred %r142; .reg .u32 %r144; .reg .u32 %r146; .reg .pred %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u32 %r152; .reg .pred %r157; .reg .u32 %r159; .reg .u32 %r165; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; mov.u64 %r88,%ar0; mov.u64 %r89,%ar1; .loc 1 53 16 ld.u64 %r71,[%r88]; .loc 1 58 18 div.s64 %r22,%r71,86400; .loc 1 59 7 rem.s64 %r66,%r71,86400; .loc 1 60 6 setp.lt.s64 %r90,%r66,0; @ %r90 bra $L2; .loc 1 58 8 add.u64 %r65,%r22,719468; bra $L3; $L2: .loc 1 62 11 add.u64 %r66,%r66,86400; .loc 1 63 7 add.u64 %r65,%r22,719467; $L3: .loc 1 67 29 div.s64 %r95,%r66,3600; .loc 1 67 18 st.u32 [%r89+8],%r95; .loc 1 68 7 rem.s64 %r72,%r66,3600; .loc 1 69 28 div.s64 %r100,%r72,60; .loc 1 69 17 st.u32 [%r89+4],%r100; .loc 1 70 28 rem.s64 %r104,%r72,60; .loc 1 70 17 st.u32 [%r89],%r104; .loc 1 73 40 add.u64 %r105,%r65,3; .loc 1 73 48 rem.s64 %r30,%r105,7; .loc 1 73 16 cvt.u32.u64 %r67,%r30; .loc 1 73 6 setp.ge.s64 %r106,%r30,0; @ %r106 bra $L4; .loc 1 74 13 add.u32 %r67,%r67,7; $L4: .loc 1 75 16 st.u32 [%r89+24],%r67; .loc 1 80 7 setp.ge.s64 %r107,%r65,0; @ %r107 bra $L5; .loc 1 80 34 add.u64 %r108,%r65,-146096; .loc 1 80 56 div.s64 %r110,%r108,146097; .loc 1 80 7 cvt.u32.u64 %r68,%r110; bra $L6; $L5: .loc 1 80 56 div.s64 %r112,%r65,146097; .loc 1 80 7 cvt.u32.u64 %r68,%r112; $L6: .loc 1 81 23 cvt.s64.s32 %r113,%r68; .loc 1 81 17 mad.lo.u64 %r35,%r113,-146097,%r65; .loc 1 82 64 div.u64 %r116,%r35,36524; .loc 1 82 55 add.u64 %r117,%r116,%r35; .loc 1 82 30 div.u64 %r120,%r35,1460; .loc 1 82 55 sub.u64 %r121,%r117,%r120; .loc 1 83 14 div.u64 %r123,%r35,146096; .loc 1 82 83 sub.u64 %r124,%r121,%r123; .loc 1 83 36 div.u64 %r126,%r124,365; .loc 1 82 11 cvt.u32.u64 %r74,%r126; .loc 1 84 71 div.u32 %r128,%r74,100; .loc 1 84 20 cvt.u32.u64 %r129,%r35; .loc 1 84 37 mul.lo.u32 %r131,%r74,365; .loc 1 84 11 vsub.u32.u32.u32.add %r132,%r128,%r131,%r129; .loc 1 84 57 shr.u32 %r133,%r74,2; .loc 1 84 11 sub.u32 %r75,%r132,%r133; .loc 1 85 14 shl.b32 %r135,%r75,2; add.u32 %r136,%r135,%r75; .loc 1 85 24 add.u32 %r47,%r136,2; .loc 1 85 9 div.u32 %r76,%r47,153; .loc 1 86 7 add.u32 %r137,%r75,1; .loc 1 86 32 mad.lo.u32 %r139,%r76,153,2; .loc 1 86 37 div.u32 %r141,%r139,5; .loc 1 86 7 sub.u32 %r77,%r137,%r141; .loc 1 87 27 setp.le.u32 %r142,%r47,1529; selp.u32 %r69,2,-10,%r142; .loc 1 87 9 add.u32 %r78,%r69,%r76; .loc 1 88 40 mad.lo.u32 %r144,%r68,400,%r74; .loc 1 88 71 set.u32.le.u32 %r146,%r78,1; .loc 1 88 62 sub.u32 %r79,%r144,%r146; .loc 1 91 70 setp.le.u32 %r148,%r75,305; @ %r148 bra $L8; .loc 1 91 15 add.u32 %r70,%r75,-306; bra $L9; $L8: .loc 1 92 54 and.b32 %r149,%r74,3; setp.ne.u32 %r150,%r149,0; @ %r150 bra $L10; rem.u32 %r152,%r74,100; setp.ne.u32 %r157,%r152,0; @ %r157 bra $L13; $L10: rem.u32 %r159,%r74,400; set.u32.eq.u32 %r165,%r159,0; neg.s32 %r86,%r165; bra $L11; $L13: mov.u32 %r86,1; $L11: .loc 1 92 52 add.u32 %r167,%r75,59; add.u32 %r70,%r167,%r86; $L9: .loc 1 90 16 st.u32 [%r89+28],%r70; .loc 1 93 23 add.u32 %r168,%r79,-1900; .loc 1 93 16 st.u32 [%r89+20],%r168; .loc 1 94 15 st.u32 [%r89+16],%r78; .loc 1 95 16 st.u32 [%r89+12],%r77; .loc 1 97 17 mov.u32 %r169,0; st.u32 [%r89+32],%r169; .loc 1 100 1 mov.u64 %value,%r89; st.param.u64 [%value_out],%value; ret; } lib_a-imaxabs.o/0 0 0 644 540 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: imaxabs .visible .func (.param .u64 %value_out) imaxabs (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/imaxabs.c" // BEGIN GLOBAL FUNCTION DEF: imaxabs .visible .func (.param .u64 %value_out) imaxabs (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 35 21 abs.s64 %value,%r23; .loc 1 36 1 st.param.u64 [%value_out],%value; ret; } lib_a-imaxdiv.o/0 0 0 644 820 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: imaxdiv .visible .func imaxdiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/imaxdiv.c" // BEGIN GLOBAL FUNCTION DEF: imaxdiv .visible .func imaxdiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 39 22 div.s64 %r27,%r25,%r26; .loc 1 47 9 st.u64 [%r24],%r27; .loc 1 40 21 rem.s64 %r28,%r25,%r26; .loc 1 47 9 st.u64 [%r24+8],%r28; .loc 1 48 1 ret; } lib_a-impure.o/ 0 0 0 644 868 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DECL: __sf .extern .global .align 8 .u64 __sf[66]; // BEGIN VAR DEF: impure_data .global .align 8 .u64 impure_data[167] = {0,generic(__sf),generic(__sf) + 176,generic(__sf) + 352,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1842796655094713586,47245025004,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }; // BEGIN GLOBAL VAR DEF: _global_impure_ptr .visible .const .align 8 .u64 _global_impure_ptr[1] = {generic(impure_data) }; // BEGIN GLOBAL VAR DEF: _impure_ptr .visible .global .align 8 .u64 _impure_ptr[1] = {generic(impure_data) }; lib_a-index.o/ 0 0 0 644 1009 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: index .visible .func (.param .u64 %value_out) index (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/index.c" // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: index .visible .func (.param .u64 %value_out) index (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r27; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 37 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r27,[%value_in]; } .loc 1 38 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-init.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-iprintf.o/0 0 0 644 2389 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: iprintf .visible .func (.param .u32 %value_out) iprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/iprintf.c" // BEGIN GLOBAL FUNCTION DECL: _iprintf_r .visible .func (.param .u32 %value_out) _iprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .extern .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: iprintf .visible .func (.param .u32 %value_out) iprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r26,%ar0; .loc 1 32 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 36 9 ld.u64 %r32,[%r23+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _iprintf_r .visible .func (.param .u32 %value_out) _iprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 52 9 ld.u64 %r32,[%r25+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 55 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-isalnum.o/0 0 0 644 961 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isalnum .visible .func (.param .u32 %value_out) isalnum (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isalnum.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isalnum .visible .func (.param .u32 %value_out) isalnum (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 49 20 cvta.const.u64 %r28,_ctype_; .loc 1 49 22 add.u32 %r29,%r26,1; .loc 1 49 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 49 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,7; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 50 1 st.param.u32 [%value_out],%value; ret; } lib_a-isalpha.o/0 0 0 644 961 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isalpha .visible .func (.param .u32 %value_out) isalpha (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isalpha.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isalpha .visible .func (.param .u32 %value_out) isalpha (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 48 20 cvta.const.u64 %r28,_ctype_; .loc 1 48 22 add.u32 %r29,%r26,1; .loc 1 48 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 48 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,3; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 49 1 st.param.u32 [%value_out],%value; ret; } lib_a-isattyr.o/0 0 0 644 1322 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _isatty_r .visible .func (.param .u32 %value_out) _isatty_r (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/reent/isattyr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: isatty .extern .func (.param .u32 %value_out) isatty (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _isatty_r .visible .func (.param .u32 %value_out) _isatty_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 51 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 52 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; call (%value_in),isatty,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 52 6 setp.ne.u32 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 52 43 ld.global.u32 %r22,[errno]; .loc 1 52 34 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 53 17 st.u32 [%r24],%r22; $L1: .loc 1 55 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-iscanf.o/ 0 0 0 644 2382 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: iscanf .visible .func (.param .u32 %value_out) iscanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/iscanf.c" // BEGIN GLOBAL FUNCTION DECL: _iscanf_r .visible .func (.param .u32 %value_out) _iscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .extern .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: iscanf .visible .func (.param .u32 %value_out) iscanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r26,%ar0; .loc 1 34 32 ld.global.u64 %r22,[_impure_ptr]; .loc 1 34 9 ld.u64 %r32,[%r22+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 37 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _iscanf_r .visible .func (.param .u32 %value_out) _iscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 49 9 ld.u64 %r32,[%r25+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 52 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-iscntrl.o/0 0 0 644 962 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: iscntrl .visible .func (.param .u32 %value_out) iscntrl (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/iscntrl.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: iscntrl .visible .func (.param .u32 %value_out) iscntrl (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 51 20 cvta.const.u64 %r28,_ctype_; .loc 1 51 22 add.u32 %r29,%r26,1; .loc 1 51 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 51 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,32; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 52 1 st.param.u32 [%value_out],%value; ret; } lib_a-isdigit.o/0 0 0 644 961 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isdigit .visible .func (.param .u32 %value_out) isdigit (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isdigit.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isdigit .visible .func (.param .u32 %value_out) isdigit (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 50 20 cvta.const.u64 %r28,_ctype_; .loc 1 50 22 add.u32 %r29,%r26,1; .loc 1 50 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 50 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,4; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 51 1 st.param.u32 [%value_out],%value; ret; } lib_a-islower.o/0 0 0 644 963 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: islower .visible .func (.param .u32 %value_out) islower (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/islower.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: islower .visible .func (.param .u32 %value_out) islower (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r27; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r38; .reg .u32 %r39; .reg .u16 %r41; mov.u32 %r27,%ar0; .loc 1 48 22 cvta.const.u64 %r29,_ctype_; .loc 1 48 24 add.u32 %r30,%r27,1; .loc 1 48 22 cvt.s64.s32 %r31,%r30; add.u64 %r32,%r29,%r31; .loc 1 48 39 ld.u8 %r41,[%r32]; mov.u16 %r35,%r41; and.b16 %r38,%r35,3; set.u32.eq.u16 %r39,%r38,2; neg.s32 %value,%r39; .loc 1 49 1 st.param.u32 [%value_out],%value; ret; } lib_a-isprint.o/0 0 0 644 1606 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isgraph .visible .func (.param .u32 %value_out) isgraph (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isprint.c" // BEGIN GLOBAL FUNCTION DECL: isprint .visible .func (.param .u32 %value_out) isprint (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isgraph .visible .func (.param .u32 %value_out) isgraph (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 62 20 cvta.const.u64 %r28,_ctype_; .loc 1 62 22 add.u32 %r29,%r26,1; .loc 1 62 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 62 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,23; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 63 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: isprint .visible .func (.param .u32 %value_out) isprint (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; mov.u32 %r26,%ar0; .loc 1 70 20 cvta.const.u64 %r28,_ctype_; .loc 1 70 22 add.u32 %r29,%r26,1; .loc 1 70 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; ld.s8 %r32,[%r31]; .loc 1 70 26 and.b32 %value,%r32,151; .loc 1 71 1 st.param.u32 [%value_out],%value; ret; } lib_a-ispunct.o/0 0 0 644 962 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ispunct .visible .func (.param .u32 %value_out) ispunct (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/ispunct.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: ispunct .visible .func (.param .u32 %value_out) ispunct (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 50 20 cvta.const.u64 %r28,_ctype_; .loc 1 50 22 add.u32 %r29,%r26,1; .loc 1 50 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 50 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,16; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 51 1 st.param.u32 [%value_out],%value; ret; } lib_a-isspace.o/0 0 0 644 961 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isspace .visible .func (.param .u32 %value_out) isspace (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isspace.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isspace .visible .func (.param .u32 %value_out) isspace (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 49 20 cvta.const.u64 %r28,_ctype_; .loc 1 49 22 add.u32 %r29,%r26,1; .loc 1 49 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 49 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,8; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 50 1 st.param.u32 [%value_out],%value; ret; } lib_a-isupper.o/0 0 0 644 963 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isupper .visible .func (.param .u32 %value_out) isupper (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isupper.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isupper .visible .func (.param .u32 %value_out) isupper (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r27; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r38; .reg .u32 %r39; .reg .u16 %r41; mov.u32 %r27,%ar0; .loc 1 46 22 cvta.const.u64 %r29,_ctype_; .loc 1 46 24 add.u32 %r30,%r27,1; .loc 1 46 22 cvt.s64.s32 %r31,%r30; add.u64 %r32,%r29,%r31; .loc 1 46 39 ld.u8 %r41,[%r32]; mov.u16 %r35,%r41; and.b16 %r38,%r35,3; set.u32.eq.u16 %r39,%r38,1; neg.s32 %value,%r39; .loc 1 47 1 st.param.u32 [%value_out],%value; ret; } /501 0 0 0 644 967 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isxdigit .visible .func (.param .u32 %value_out) isxdigit (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/isxdigit.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: isxdigit .visible .func (.param .u32 %value_out) isxdigit (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .u16 %r36; mov.u32 %r26,%ar0; .loc 1 49 20 cvta.const.u64 %r28,_ctype_; .loc 1 49 22 add.u32 %r29,%r26,1; .loc 1 49 20 cvt.s64.s32 %r30,%r29; add.u64 %r31,%r28,%r30; .loc 1 49 26 ld.u8 %r36,[%r31]; mov.u16 %r34,%r36; and.b16 %r33,%r34,68; cvt.u32.u16 %r35,%r33; cvt.s32.s8 %value,%r35; .loc 1 50 1 st.param.u32 [%value_out],%value; ret; } lib_a-itoa.o/ 0 0 0 644 4265 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __itoa .visible .func (.param .u64 %value_out) __itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/itoa.c" // BEGIN GLOBAL FUNCTION DECL: itoa .visible .func (.param .u64 %value_out) itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __utoa .extern .func (.param .u64 %value_out) __utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: __itoa .visible .func (.param .u64 %value_out) __itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u16 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .u16 %r55; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; mov.u32 %r33,%ar2; .loc 1 41 18 add.u32 %r34,%r33,-2; .loc 1 41 6 setp.le.u32 %r35,%r34,34; @ %r35 bra $L2; .loc 1 43 14 mov.u32 %r36,0; st.u8 [%r32],%r36; .loc 1 44 14 mov.u64 %r30,0; bra $L1; $L2: .loc 1 49 13 set.u32.eq.u32 %r38,%r33,10; neg.s32 %r39,%r38; mov.u32 %r37,%r39; .loc 1 49 30 shr.u32 %r41,%r31,31; mov.u32 %r42,%r41; .loc 1 49 20 cvt.u16.u8 %r55,%r37; mov.u16 %r44,%r55; cvt.u16.u8 %r55,%r42; mov.u16 %r45,%r55; and.b16 %r43,%r44,%r45; cvt.u32.u16 %r46,%r43; .loc 1 49 6 cvt.u16.u8 %r47,%r46; setp.eq.u16 %r48,%r47,0; @ %r48 bra $L4; .loc 1 51 16 mov.u32 %r49,45; st.u8 [%r32],%r49; .loc 1 52 26 neg.s32 %r28,%r31; .loc 1 57 3 add.u64 %r29,%r32,1; bra $L5; $L4: .loc 1 55 12 mov.u32 %r28,%r31; mov.u64 %r29,%r32; $L5: .loc 1 57 3 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r33; call (%value_in),__utoa,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 1 58 10 mov.u64 %r30,%r32; $L1: .loc 1 59 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: itoa .visible .func (.param .u64 %value_out) itoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u16 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .u16 %r55; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; mov.u32 %r33,%ar2; .loc 1 41 18 add.u32 %r34,%r33,-2; .loc 1 41 6 setp.le.u32 %r35,%r34,34; @ %r35 bra $L7; .loc 1 43 14 mov.u32 %r36,0; st.u8 [%r32],%r36; .loc 1 44 14 mov.u64 %r30,0; bra $L6; $L7: .loc 1 49 13 set.u32.eq.u32 %r38,%r33,10; neg.s32 %r39,%r38; mov.u32 %r37,%r39; .loc 1 49 30 shr.u32 %r41,%r31,31; mov.u32 %r42,%r41; .loc 1 49 20 cvt.u16.u8 %r55,%r37; mov.u16 %r44,%r55; cvt.u16.u8 %r55,%r42; mov.u16 %r45,%r55; and.b16 %r43,%r44,%r45; cvt.u32.u16 %r46,%r43; .loc 1 49 6 cvt.u16.u8 %r47,%r46; setp.eq.u16 %r48,%r47,0; @ %r48 bra $L9; .loc 1 51 16 mov.u32 %r49,45; st.u8 [%r32],%r49; .loc 1 52 26 neg.s32 %r28,%r31; .loc 1 57 3 add.u64 %r29,%r32,1; bra $L10; $L9: .loc 1 55 12 mov.u32 %r28,%r31; mov.u64 %r29,%r32; $L10: .loc 1 57 3 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r33; call (%value_in),__utoa,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 1 58 10 mov.u64 %r30,%r32; $L6: .loc 1 67 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-jrand48.o/0 0 0 644 1966 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _jrand48_r .visible .func (.param .u64 %value_out) _jrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/jrand48.c" // BEGIN GLOBAL FUNCTION DECL: jrand48 .visible .func (.param .u64 %value_out) jrand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _jrand48_r .visible .func (.param .u64 %value_out) _jrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r33,[%r29+4]; .loc 1 21 27 shl.b64 %r34,%r33,16; .loc 1 21 36 ld.u16 %r35,[%r29+2]; .loc 1 21 34 add.u64 %value,%r34,%r35; .loc 1 22 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: jrand48 .visible .func (.param .u64 %value_out) jrand48 (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; mov.u64 %r29,%ar0; .loc 1 20 3 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r34,[%r29+4]; .loc 1 21 27 shl.b64 %r35,%r34,16; .loc 1 21 36 ld.u16 %r36,[%r29+2]; .loc 1 21 34 add.u64 %value,%r35,%r36; .loc 1 29 1 st.param.u64 [%value_out],%value; ret; } lib_a-labs.o/ 0 0 0 644 525 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: labs .visible .func (.param .u64 %value_out) labs (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/labs.c" // BEGIN GLOBAL FUNCTION DEF: labs .visible .func (.param .u64 %value_out) labs (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 42 10 abs.s64 %value,%r23; .loc 1 43 1 st.param.u64 [%value_out],%value; ret; } lib_a-lcltime.o/0 0 0 644 1104 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: localtime .visible .func (.param .u64 %value_out) localtime (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/lcltime.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: localtime_r .extern .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: localtime .visible .func (.param .u64 %value_out) localtime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 51 43 ld.global.u64 %r29,[_impure_ptr]; add.u64 %r28,%r29,188; .loc 1 51 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),localtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 52 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /519 0 0 0 644 9502 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: localtime_r .visible .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/time/lcltime_r.c" // BEGIN GLOBAL VAR DECL: _daylight .extern .global .align 4 .u32 _daylight[1]; // BEGIN GLOBAL VAR DECL: __month_lengths .extern .const .align 4 .u32 __month_lengths[24]; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: gmtime_r .extern .func (.param .u64 %value_out) gmtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .extern .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DEF: localtime_r .visible .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r32; .reg .u32 %r37; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r57; .reg .u32 %r59; .reg .u32 %r63; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r82; .reg .u32 %r88; .reg .u64 %r89; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r94; .reg .u64 %r103; .reg .u32 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r119; .reg .pred %r125; .reg .u32 %r127; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .u32 %r143; .reg .pred %r144; .reg .u32 %r145; .reg .pred %r146; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .u32 %r151; .reg .u64 %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .u32 %r162; .reg .u64 %r165; .reg .u32 %r166; .reg .u32 %r167; .reg .u64 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u64 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .pred %r176; .reg .u32 %r177; .reg .pred %r178; .reg .u32 %r179; .reg .pred %r180; .reg .u32 %r181; .reg .pred %r182; .reg .u32 %r183; .reg .pred %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u32 %r189; .reg .u32 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .pred %r194; .reg .u32 %r195; .reg .pred %r196; .reg .u32 %r197; .reg .u32 %r198; .reg .u32 %r199; .reg .pred %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .pred %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .pred %r208; .reg .u32 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .pred %r215; .reg .u32 %r217; .reg .pred %r223; .reg .u32 %r225; .reg .u32 %r232; .reg .u32 %r233; .reg .u64 %r234; mov.u64 %r109,%ar0; mov.u64 %r110,%ar1; .loc 1 25 29 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r111,[%value_in]; } .loc 1 28 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r109; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),gmtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r114,[%value_in]; } .loc 1 30 8 ld.u32 %r115,[%r114+20]; add.u32 %r91,%r115,1900; .loc 1 31 24 and.b32 %r116,%r115,3; setp.ne.u32 %r117,%r116,0; @ %r117 bra $L2; rem.s32 %r119,%r91,100; setp.ne.u32 %r125,%r119,0; @ %r125 bra $L31; $L2: rem.s32 %r127,%r91,400; set.u32.eq.u32 %r134,%r127,0; cvt.s64.s32 %r133,%r134; neg.s64 %r135,%r133; add.u64 %r137,%r135,%r135; add.u64 %r138,%r137,%r135; shl.b64 %r103,%r138,4; bra $L3; $L31: mov.u64 %r103,48; $L3: .loc 1 31 6 cvta.const.u64 %r140,__month_lengths; add.u64 %r92,%r103,%r140; .loc 1 33 3 { call __tz_lock; } .loc 1 34 3 { call _tzset_unlocked; } .loc 1 35 6 ld.global.u32 %r141,[_daylight]; setp.eq.u32 %r142,%r141,0; @ %r142 bra $L4; .loc 1 37 10 ld.u32 %r143,[%r111+4]; setp.ne.u32 %r144,%r143,%r91; @ %r144 bra $L5; $L8: .loc 1 39 7 ld.u64 %r106,[%r109]; .loc 1 39 32 ld.u64 %r107,[%r111+32]; .loc 1 41 4 ld.u32 %r145,[%r111]; setp.ne.u32 %r146,%r145,0; @ %r146 bra $L6; bra $L33; $L5: .loc 1 37 35 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__tzcalc_limits,(%out_arg1); ld.param.u32 %r148,[%value_in]; } .loc 1 37 32 setp.ne.u32 %r149,%r148,0; @ %r149 bra $L8; bra $L34; $L6: .loc 1 40 4 setp.ge.s64 %r150,%r106,%r107; @ %r150 bra $L10; .loc 1 38 16 mov.u32 %r151,0; st.u32 [%r114+32],%r151; bra $L11; $L10: .loc 1 40 4 ld.u64 %r152,[%r111+72]; setp.le.s64 %r153,%r152,%r106; @ %r153 bra $L12; .loc 1 38 16 mov.u32 %r154,1; st.u32 [%r114+32],%r154; bra $L13; $L12: mov.u32 %r155,0; st.u32 [%r114+32],%r155; bra $L11; $L33: .loc 1 42 4 setp.lt.s64 %r156,%r106,%r107; @ %r156 bra $L14; .loc 1 38 16 mov.u32 %r157,1; st.u32 [%r114+32],%r157; bra $L13; $L14: .loc 1 42 31 ld.u64 %r32,[%r111+72]; .loc 1 42 4 set.u32.gt.s64 %r159,%r32,%r106; neg.s32 %r160,%r159; .loc 1 38 16 st.u32 [%r114+32],%r160; .loc 1 51 5 setp.gt.s64 %r161,%r32,%r106; @ %r161 bra $L13; bra $L11; $L34: .loc 1 44 16 mov.u32 %r162,-1; st.u32 [%r114+32],%r162; bra $L11; $L4: .loc 1 47 19 st.u32 [%r114+32],%r141; bra $L11; $L13: .loc 1 51 5 ld.u64 %r89,[%r111+80]; $L30: .loc 1 54 10 rem.s64 %r94,%r89,3600; .loc 1 57 24 rem.s64 %r165,%r94,60; .loc 1 57 8 cvt.u32.u64 %r166,%r165; .loc 1 59 15 ld.u32 %r167,[%r114]; sub.u32 %r37,%r167,%r166; st.u32 [%r114],%r37; .loc 1 56 24 div.s64 %r169,%r94,60; .loc 1 56 8 cvt.u32.u64 %r170,%r169; .loc 1 60 15 ld.u32 %r171,[%r114+4]; sub.u32 %r39,%r171,%r170; st.u32 [%r114+4],%r39; .loc 1 53 25 div.s64 %r173,%r89,3600; .loc 1 53 9 cvt.u32.u64 %r174,%r173; .loc 1 61 16 ld.u32 %r175,[%r114+8]; sub.u32 %r41,%r175,%r174; st.u32 [%r114+8],%r41; .loc 1 63 6 setp.le.s32 %r176,%r37,59; @ %r176 bra $L15; .loc 1 65 19 add.u32 %r39,%r39,1; st.u32 [%r114+4],%r39; .loc 1 66 19 add.u32 %r177,%r37,-60; st.u32 [%r114],%r177; bra $L16; $L15: .loc 1 68 11 setp.ge.s32 %r178,%r37,0; @ %r178 bra $L16; .loc 1 70 19 add.u32 %r39,%r39,-1; st.u32 [%r114+4],%r39; .loc 1 71 19 add.u32 %r179,%r37,60; st.u32 [%r114],%r179; $L16: .loc 1 73 6 setp.le.s32 %r180,%r39,59; @ %r180 bra $L17; .loc 1 75 20 add.u32 %r41,%r41,1; st.u32 [%r114+8],%r41; .loc 1 76 19 add.u32 %r181,%r39,-60; st.u32 [%r114+4],%r181; bra $L18; $L17: .loc 1 78 11 setp.ge.s32 %r182,%r39,0; @ %r182 bra $L18; .loc 1 80 20 add.u32 %r41,%r41,-1; st.u32 [%r114+8],%r41; .loc 1 81 19 add.u32 %r183,%r39,60; st.u32 [%r114+4],%r183; $L18: .loc 1 83 6 setp.le.s32 %r184,%r41,23; @ %r184 bra $L19; .loc 1 85 7 ld.u32 %r186,[%r114+28]; add.u32 %r185,%r186,1; st.u32 [%r114+28],%r185; .loc 1 86 7 ld.u32 %r187,[%r114+24]; add.u32 %r57,%r187,1; .loc 1 87 10 setp.le.s32 %r188,%r57,6; .loc 1 88 15 selp.u32 %r57,%r57,0,%r188; st.u32 [%r114+24],%r57; .loc 1 89 7 ld.u32 %r189,[%r114+12]; add.u32 %r59,%r189,1; st.u32 [%r114+12],%r59; .loc 1 90 20 add.u32 %r190,%r41,-24; st.u32 [%r114+8],%r190; .loc 1 91 32 ld.u32 %r63,[%r114+16]; .loc 1 91 28 cvt.s64.s32 %r191,%r63; shl.b64 %r192,%r191,2; add.u64 %r193,%r92,%r192; ld.u32 %r66,[%r193]; .loc 1 91 10 setp.gt.s32 %r194,%r59,%r66; @ ! %r194 bra $L22; .loc 1 93 17 sub.u32 %r195,%r59,%r66; st.u32 [%r114+12],%r195; .loc 1 94 16 add.u32 %r68,%r63,1; .loc 1 95 7 setp.eq.u32 %r196,%r63,11; @ %r196 bra $L23; .loc 1 94 16 st.u32 [%r114+16],%r68; bra $L22; $L23: .loc 1 97 20 mov.u32 %r197,0; st.u32 [%r114+16],%r197; .loc 1 98 21 ld.u32 %r199,[%r114+20]; add.u32 %r198,%r199,1; st.u32 [%r114+20],%r198; .loc 1 99 21 st.u32 [%r114+28],%r197; bra $L22; $L19: .loc 1 103 11 setp.ge.s32 %r201,%r41,0; @ %r201 bra $L22; .loc 1 105 20 ld.u32 %r203,[%r114+28]; add.u32 %r202,%r203,-1; st.u32 [%r114+28],%r202; .loc 1 106 20 ld.u32 %r204,[%r114+24]; add.u32 %r74,%r204,-1; .loc 1 107 10 setp.ge.s32 %r205,%r74,0; .loc 1 108 15 selp.u32 %r74,%r74,6,%r205; st.u32 [%r114+24],%r74; .loc 1 109 20 ld.u32 %r206,[%r114+12]; add.u32 %r76,%r206,-1; st.u32 [%r114+12],%r76; .loc 1 110 20 add.u32 %r207,%r41,24; st.u32 [%r114+8],%r207; .loc 1 111 10 setp.ne.u32 %r208,%r76,0; @ %r208 bra $L22; .loc 1 113 16 ld.u32 %r209,[%r114+16]; add.u32 %r79,%r209,-1; .loc 1 114 7 setp.lt.s32 %r210,%r79,0; @ %r210 bra $L26; .loc 1 113 16 st.u32 [%r114+16],%r79; .loc 1 120 21 cvt.s64.s32 %r211,%r79; shl.b64 %r105,%r211,2; bra $L27; $L26: .loc 1 116 20 mov.u32 %r212,11; st.u32 [%r114+16],%r212; .loc 1 117 21 ld.u32 %r80,[%r114+20]; add.u32 %r213,%r80,-1; st.u32 [%r114+20],%r213; .loc 1 118 29 add.u32 %r82,%r80,1899; and.b32 %r214,%r82,3; setp.ne.u32 %r215,%r214,0; @ %r215 bra $L28; rem.s32 %r217,%r82,100; setp.ne.u32 %r223,%r217,0; @ %r223 bra $L32; $L28: rem.s32 %r225,%r82,400; set.u32.eq.u32 %r232,%r225,0; neg.s32 %r233,%r232; .loc 1 118 27 add.u32 %r104,%r233,364; bra $L29; $L32: mov.u32 %r104,365; $L29: .loc 1 118 21 st.u32 [%r114+28],%r104; mov.u64 %r105,44; $L27: .loc 1 120 21 add.u64 %r234,%r92,%r105; ld.u32 %r88,[%r234]; .loc 1 120 17 st.u32 [%r114+12],%r88; $L22: .loc 1 123 3 { call __tz_unlock; } .loc 1 125 10 bra $L35; $L11: .loc 1 51 5 ld.u64 %r89,[%r111+40]; bra $L30; $L35: .loc 1 126 1 mov.u64 %value,%r114; st.param.u64 [%value_out],%value; ret; } lib_a-lcong48.o/0 0 0 644 2003 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _lcong48_r .visible .func _lcong48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/lcong48.c" // BEGIN GLOBAL FUNCTION DECL: lcong48 .visible .func lcong48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: _lcong48_r .visible .func _lcong48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u64 %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 21 20 ld.u16 %r31,[%r30]; st.u16 [%r29+240],%r31; .loc 1 22 20 ld.u16 %r32,[%r30+2]; st.u16 [%r29+242],%r32; .loc 1 23 20 ld.u16 %r33,[%r30+4]; st.u16 [%r29+244],%r33; .loc 1 24 20 ld.u16 %r34,[%r30+6]; st.u16 [%r29+246],%r34; .loc 1 25 20 ld.u16 %r35,[%r30+8]; st.u16 [%r29+248],%r35; .loc 1 26 20 ld.u16 %r36,[%r30+10]; st.u16 [%r29+250],%r36; .loc 1 27 16 ld.u16 %r37,[%r30+12]; st.u16 [%r29+252],%r37; .loc 1 28 1 ret; } // BEGIN GLOBAL FUNCTION DEF: lcong48 .visible .func lcong48 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; mov.u64 %r30,%ar0; .loc 1 34 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 20 ld.u16 %r31,[%r30]; st.u16 [%r22+240],%r31; .loc 1 22 20 ld.u16 %r32,[%r30+2]; st.u16 [%r22+242],%r32; .loc 1 23 20 ld.u16 %r33,[%r30+4]; st.u16 [%r22+244],%r33; .loc 1 24 20 ld.u16 %r34,[%r30+6]; st.u16 [%r22+246],%r34; .loc 1 25 20 ld.u16 %r35,[%r30+8]; st.u16 [%r22+248],%r35; .loc 1 26 20 ld.u16 %r36,[%r30+10]; st.u16 [%r22+250],%r36; .loc 1 27 16 ld.u16 %r37,[%r30+12]; st.u16 [%r22+252],%r37; .loc 1 35 1 ret; } lib_a-ldiv.o/ 0 0 0 644 1163 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldiv .visible .func ldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/ldiv.c" // BEGIN GLOBAL FUNCTION DEF: ldiv .visible .func ldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 88 15 div.s64 %r22,%r25,%r26; .loc 1 89 14 rem.s64 %r23,%r25,%r26; .loc 1 90 5 setp.lt.s64 %r27,%r25,0; @ %r27 bra $L2; .loc 1 90 15 setp.ge.s64 %r28,%r23,0; @ %r28 bra $L3; .loc 1 91 3 add.u64 %r22,%r22,1; .loc 1 92 9 sub.u64 %r23,%r23,%r26; bra $L3; $L2: .loc 1 94 19 setp.le.s64 %r29,%r23,0; @ %r29 bra $L3; .loc 1 95 3 add.u64 %r22,%r22,-1; .loc 1 96 9 add.u64 %r23,%r23,%r26; $L3: .loc 1 98 9 st.u64 [%r24],%r22; st.u64 [%r24+8],%r23; .loc 1 99 1 ret; } lib_a-ldtoa.o/ 0 0 0 644 144795 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: eshdn1 .func eshdn1 (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/ldtoa.c" // BEGIN FUNCTION DECL: eshup1 .func eshup1 (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: m16m .func m16m (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: emovo$constprop$0 .func emovo$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: enormlz .func (.param .u32 %value_out) enormlz (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eshift$part$0 .func (.param .u32 %value_out) eshift$part$0 (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN FUNCTION DECL: e53toe$isra$0 .func e53toe$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: emovi .func emovi (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: ecmp .func (.param .u32 %value_out) ecmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: emdnorm .func emdnorm (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); // BEGIN FUNCTION DECL: eiremain .func eiremain (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: ediv .func ediv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN FUNCTION DECL: emul .func emul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _ldtoa_r .visible .func (.param .u64 %value_out) _ldtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _ldcheck .visible .func (.param .u32 %value_out) _ldcheck (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: sprintf .extern .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: etens .const .align 2 .u16 etens[130] = {25974,19090,32842,5439,51532,38810,35360,20994,50272,29989,27186,52818,12954,10446,42829,24036,50493,15197,40587,23186,21100,20686,61835,15656,25869,3095,33141,30086,51574,19784,40038,22776,48208,23636,52325,37318,42510,41134,58137,18083,34078,60087,39166,36891,56763,56973,40441,60411,43646,17233,565,311,14001,13164,50799,36063,33001,18377,37818,16808,20728,9723,51051,27505,15551,42709,65487,8009,49784,16595,0,0,0,0,61472,46493,11120,44456,40389,16489,0,0,0,0,0,0,1024,51647,36379,16436,0,0,0,0,0,0,0,8192,48828,16409,0,0,0,0,0,0,0,0,40000,16396,0,0,0,0,0,0,0,0,51200,16389,0,0,0,0,0,0,0,0,40960,16386 }; // BEGIN VAR DEF: emtens .const .align 2 .u16 emtens[130] = {8240,53244,41411,33059,11747,40926,53966,1224,42717,2776,33380,53963,62186,4820,18725,11748,13366,21327,52910,9579,62783,63128,27603,344,34726,49341,55895,33445,41638,12981,59185,1236,58354,54066,28978,53788,56099,60978,36937,14682,41534,21256,65275,4437,64145,6457,25466,17189,49201,15532,57965,56286,53341,46070,44156,58528,25788,18044,56784,15957,10784,25124,18355,39127,16163,59813,42297,59943,43135,16170,2907,19186,42369,6381,26590,38074,17721,7853,53169,16276,49009,43443,31113,48744,19502,57691,50253,38078,59029,16329,15693,31805,14010,3371,64962,52988,33889,30481,43980,16356,49493,42152,16462,24851,54211,25899,57881,5976,53687,16369,55050,28835,2621,41943,15728,55050,28835,2621,41943,16376,52429,52428,52428,52428,52428,52428,52428,52428,52428,16379 }; // BEGIN VAR DEF: bmask .const .align 2 .u16 bmask[17] = {65535,65534,65532,65528,65520,65504,65472,65408,65280,65024,64512,63488,61440,57344,49152,32768,0 }; // BEGIN VAR DEF: eone .const .align 2 .u16 eone[10] = {0,0,0,0,0,0,0,0,32768,16383 }; // BEGIN VAR DEF: ezero .const .align 2 .u16 ezero[10]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[12] = {32,45,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[11] = {32,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {78,97,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {69,37,100,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[45] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,108,100,116,111,97,46,99,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[6] = {32,78,97,78,32,0 }; // BEGIN FUNCTION DEF: eshdn1 .func eshdn1 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .pred %r40; .reg .u16 %r42; .reg .u16 %r44; .reg .u16 %r45; .reg .pred %r46; mov.u64 %r30,%ar0; .loc 1 819 5 add.u64 %r29,%r30,4; add.u64 %r25,%r30,26; .loc 1 821 8 mov.u32 %r28,0; $L5: .loc 1 824 11 ld.u16 %r22,[%r29]; .loc 1 824 10 cvt.u16.u32 %r32,%r22; and.b16 %r31,%r32,1; setp.eq.u16 %r33,%r31,0; @ %r33 bra $L2; .loc 1 825 7 cvt.u16.u32 %r35,%r28; or.b16 %r34,%r35,1; cvt.u32.u16 %r28,%r34; $L2: .loc 1 826 10 cvt.u16.u32 %r37,%r22; shr.u16 %r36,%r37,1; .loc 1 827 10 cvt.u16.u32 %r39,%r28; and.b16 %r38,%r39,2; setp.ne.u16 %r40,%r38,0; @ %r40 bra $L3; .loc 1 826 10 st.u16 [%r29],%r36; bra $L4; $L3: .loc 1 828 5 or.b16 %r42,%r36,-32768; st.u16 [%r29],%r42; $L4: .loc 1 829 12 cvt.u16.u32 %r44,%r28; add.u16 %r45,%r44,%r44; cvt.u32.u16 %r28,%r45; .loc 1 830 7 add.u64 %r29,%r29,2; .loc 1 822 17 setp.ne.u64 %r46,%r25,%r29; @ %r46 bra $L5; .loc 1 832 1 ret; } // BEGIN FUNCTION DEF: eshup1 .func eshup1 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r22; .reg .u64 %r26; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u16 %r31; .reg .pred %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .pred %r39; .reg .u16 %r41; .reg .u16 %r43; .reg .u16 %r44; .reg .pred %r45; mov.u64 %r30,%ar0; .loc 1 846 5 add.u64 %r29,%r30,24; add.u64 %r26,%r30,2; .loc 1 847 8 mov.u32 %r28,0; $L14: .loc 1 851 11 ld.u16 %r22,[%r29]; .loc 1 851 10 cvt.u16.u32 %r31,%r22; setp.ge.s16 %r32,%r31,0; @ %r32 bra $L11; .loc 1 852 7 cvt.u16.u32 %r34,%r28; or.b16 %r33,%r34,1; cvt.u32.u16 %r28,%r33; $L11: .loc 1 853 10 cvt.u16.u32 %r35,%r22; add.u16 %r36,%r35,%r35; .loc 1 854 10 cvt.u16.u32 %r38,%r28; and.b16 %r37,%r38,2; setp.ne.u16 %r39,%r37,0; @ %r39 bra $L12; .loc 1 853 10 st.u16 [%r29],%r36; bra $L13; $L12: .loc 1 855 5 or.b16 %r41,%r36,1; st.u16 [%r29],%r41; $L13: .loc 1 856 12 cvt.u16.u32 %r43,%r28; add.u16 %r44,%r43,%r43; cvt.u32.u16 %r28,%r44; .loc 1 857 7 add.u64 %r29,%r29,-2; .loc 1 849 17 setp.ne.u64 %r45,%r26,%r29; @ %r45 bra $L14; .loc 1 859 1 ret; } // BEGIN FUNCTION DEF: m16m .func m16m (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; } .reg .u32 %r22; .reg .u64 %r27; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u64 %r67; mov.u32 %r49,%ar0; mov.u64 %r50,%ar1; mov.u64 %r51,%ar2; .loc 1 1021 9 mov.u16 %r52,0; st.u16 [%frame+22],%r52; .loc 1 1022 7 st.u16 [%frame+24],%r52; .loc 1 1023 6 add.u64 %r39,%r50,24; .loc 1 1021 6 add.u64 %r38,%frame,24; add.u64 %r67,%frame,4; $L18: .loc 1 1027 11 ld.u16 %r22,[%r39]; .loc 1 1029 4 add.u64 %r39,%r39,-2; .loc 1 1030 4 add.u64 %r38,%r38,-2; .loc 1 1027 10 setp.eq.u32 %r54,%r22,0; @ %r54 bra $L17; .loc 1 1035 6 mul.wide.u32 %r40,%r22,%r49; .loc 1 1036 15 and.b64 %r55,%r40,65535; .loc 1 1036 27 ld.u16 %r56,[%r38+2]; .loc 1 1036 10 add.u64 %r41,%r55,%r56; .loc 1 1037 12 st.u16 [%r38+2],%r41; .loc 1 1038 19 shr.u64 %r27,%r41,16; .loc 1 1038 31 shr.u64 %r57,%r40,16; .loc 1 1038 40 ld.u16 %r58,[%r38]; .loc 1 1038 10 add.u64 %r59,%r57,%r58; add.u64 %r42,%r59,%r27; .loc 1 1039 10 st.u16 [%r38],%r42; .loc 1 1040 22 shr.u64 %r60,%r42,16; .loc 1 1040 14 cvt.u16.u64 %r61,%r60; cvt.u32.u16 %r22,%r61; $L17: .loc 1 1031 14 cvt.u16.u32 %r62,%r22; st.u16 [%r38+-2],%r62; .loc 1 1025 21 setp.ne.u64 %r64,%r38,%r67; @ %r64 bra $L18; mov.u64 %r43,%r38; add.u64 %r37,%r51,4; add.u64 %r45,%frame,26; $L19: .loc 1 1044 10 ld.u16 %r65,[%r43]; st.u16 [%r37],%r65; .loc 1 1043 17 add.u64 %r43,%r43,2; add.u64 %r37,%r37,2; setp.ne.u64 %r66,%r43,%r45; @ %r66 bra $L19; .loc 1 1045 1 ret; } // BEGIN FUNCTION DEF: emovo$constprop$0 .func emovo$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r29; .reg .u64 %r34; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .pred %r56; .reg .u16 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .pred %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; .loc 1 674 12 ld.u16 %r29,[%r48+2]; .loc 1 673 6 ld.u16 %r50,[%r48]; setp.eq.u16 %r51,%r50,0; @ %r51 bra $L26; .loc 1 674 10 cvt.u16.u32 %r53,%r29; or.b16 %r52,%r53,-32768; cvt.u32.u16 %r29,%r52; $L26: cvt.u16.u32 %r54,%r29; st.u16 [%r49+18],%r54; .loc 1 678 6 ld.u16 %r55,[%r48+2]; setp.ne.u16 %r56,%r55,32767; @ %r56 bra $L27; add.u64 %r46,%r48,6; add.u64 %r43,%r48,26; $L29: .loc 1 751 7 ld.u16 %r57,[%r46]; setp.ne.u16 %r58,%r57,0; @ %r58 bra $L28; .loc 1 749 25 add.u64 %r46,%r46,2; setp.ne.u64 %r59,%r43,%r46; @ %r59 bra $L29; bra $L42; $L28: mov.u64 %r23,%r49; add.u64 %r27,%r49,16; .loc 1 3843 9 mov.u16 %r60,0; $L31: st.u16 [%r23],%r60; .loc 1 3842 21 add.u64 %r23,%r23,2; setp.ne.u64 %r61,%r23,%r27; @ %r61 bra $L31; .loc 1 3844 14 mov.u16 %r62,-16384; st.u16 [%r49+16],%r62; .loc 1 3850 14 mov.u16 %r63,32767; st.u16 [%r49+18],%r63; .loc 1 684 4 bra $L25; $L42: mov.u64 %r25,%r49; add.u64 %r47,%r49,18; $L33: .loc 1 581 10 st.u16 [%r25],%r57; .loc 1 580 17 add.u64 %r25,%r25,2; setp.ne.u64 %r65,%r25,%r47; @ %r65 bra $L33; .loc 1 582 6 ld.u16 %r67,[%r49+18]; or.b16 %r66,%r67,32767; st.u16 [%r49+18],%r66; .loc 1 688 7 bra $L25; $L27: add.u64 %r34,%r48,6; add.u64 %r39,%r49,16; add.u64 %r37,%r48,24; $L34: .loc 1 695 10 ld.u16 %r68,[%r34]; st.u16 [%r39],%r68; .loc 1 694 17 add.u64 %r34,%r34,2; add.u64 %r39,%r39,-2; setp.ne.u64 %r69,%r34,%r37; @ %r69 bra $L34; $L25: .loc 1 696 1 ret; } // BEGIN FUNCTION DEF: enormlz .func (.param .u32 %value_out) enormlz (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u16 %r54; .reg .pred %r55; .reg .u16 %r56; .reg .pred %r57; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r68; .reg .u16 %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .pred %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u16 %r78; .reg .u16 %r79; .reg .u16 %r80; .reg .u16 %r82; .reg .u16 %r83; .reg .pred %r84; .reg .pred %r86; .reg .pred %r87; .reg .u64 %r89; .reg .u64 %r91; .reg .u16 %r92; mov.u64 %r49,%ar0; .loc 1 2569 7 ld.u16 %r23,[%r49+4]; .loc 1 2569 6 setp.eq.u32 %r50,%r23,0; @ %r50 bra $L44; .loc 1 2607 6 cvt.u16.u32 %r52,%r23; and.b16 %r51,%r52,-256; setp.ne.u16 %r53,%r51,0; @ %r53 bra $L45; .loc 1 2567 6 mov.u32 %r48,0; bra $L59; $L44: .loc 1 2572 7 ld.u16 %r46,[%r49+6]; .loc 1 2572 6 cvt.u16.u32 %r54,%r46; setp.lt.s16 %r55,%r54,0; @ %r55 bra $L61; .loc 1 2567 6 mov.u32 %r48,%r23; add.u64 %r91,%r49,26; .loc 1 924 6 mov.u16 %r92,0; bra $L48; $L51: .loc 1 919 5 add.u64 %r30,%r49,6; .loc 1 918 5 add.u64 %r42,%r49,4; $L50: .loc 1 922 14 add.u64 %r30,%r30,2; .loc 1 922 10 cvt.u16.u32 %r56,%r46; st.u16 [%r42],%r56; .loc 1 921 17 add.u64 %r42,%r42,2; setp.eq.u64 %r57,%r91,%r30; @ %r57 bra $L49; .loc 1 922 12 ld.u16 %r46,[%r30]; bra $L50; $L49: .loc 1 924 6 st.u16 [%r49+24],%r92; .loc 1 2577 10 add.u32 %r48,%r48,16; .loc 1 2581 10 setp.eq.u32 %r59,%r48,160; @ %r59 bra $L43; .loc 1 2574 10 ld.u16 %r46,[%r49+6]; $L48: .loc 1 2574 13 setp.eq.u32 %r60,%r46,0; @ %r60 bra $L51; cvt.u16.u32 %r62,%r46; and.b16 %r61,%r62,-256; cvt.u32.u16 %r41,%r61; .loc 1 2585 24 setp.ne.u16 %r63,%r61,0; @ %r63 bra $L55; .loc 1 895 5 add.u64 %r45,%r49,24; add.u64 %r89,%r49,2; $L54: .loc 1 896 10 mov.u32 %r33,%r41; .loc 1 895 5 mov.u64 %r36,%r45; $L53: mov.u32 %r31,%r33; .loc 1 900 14 ld.u16 %r65,[%r36]; shr.u16 %r64,%r65,8; cvt.u32.u16 %r33,%r64; .loc 1 901 10 shl.b16 %r66,%r65,8; .loc 1 902 10 cvt.u16.u32 %r69,%r31; or.b16 %r68,%r66,%r69; st.u16 [%r36],%r68; .loc 1 904 7 add.u64 %r36,%r36,-2; .loc 1 898 17 setp.ne.u64 %r70,%r36,%r89; @ %r70 bra $L53; .loc 1 2588 10 add.u32 %r48,%r48,8; .loc 1 2585 11 ld.u16 %r46,[%r49+6]; .loc 1 2585 24 cvt.u16.u32 %r72,%r46; and.b16 %r71,%r72,-256; setp.eq.u16 %r73,%r71,0; @ %r73 bra $L54; bra $L55; $L56: .loc 1 2593 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshup1,(%out_arg1); } .loc 1 2594 10 add.u32 %r48,%r48,1; .loc 1 2595 10 setp.gt.s32 %r75,%r48,160; @ %r75 bra $L43; .loc 1 2591 11 ld.u16 %r46,[%r49+6]; $L55: .loc 1 2591 24 cvt.u16.u32 %r76,%r46; setp.ge.s16 %r77,%r76,0; @ %r77 bra $L56; bra $L43; $L45: .loc 1 873 5 add.u64 %r40,%r49,4; add.u64 %r24,%r49,26; .loc 1 874 10 mov.u32 %r47,0; $L58: .loc 1 877 14 cvt.u16.u32 %r79,%r23; shl.b16 %r78,%r79,8; cvt.u32.u16 %r37,%r78; .loc 1 878 10 shr.u16 %r80,%r79,8; .loc 1 879 10 cvt.u16.u32 %r83,%r47; or.b16 %r82,%r80,%r83; st.u16 [%r40],%r82; .loc 1 881 7 add.u64 %r40,%r40,2; .loc 1 875 17 setp.ne.u64 %r84,%r24,%r40; @ %r84 bra $L57; .loc 1 2612 10 ld.u16 %r23,[%r49+4]; .loc 1 2610 10 mov.u32 %r48,-8; bra $L59; $L57: .loc 1 877 16 ld.u16 %r23,[%r40]; .loc 1 880 14 mov.u32 %r47,%r37; bra $L58; $L60: .loc 1 2614 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshdn1,(%out_arg1); } .loc 1 2615 10 add.u32 %r48,%r48,-1; .loc 1 2617 10 setp.eq.u32 %r86,%r48,-145; @ %r86 bra $L43; .loc 1 2612 10 ld.u16 %r23,[%r49+4]; $L59: .loc 1 2612 13 setp.ne.u32 %r87,%r23,0; @ %r87 bra $L60; bra $L43; $L61: .loc 1 2573 12 mov.u32 %r48,%r23; $L43: .loc 1 2624 1 mov.u32 %value,%r48; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eshift$part$0 .func (.param .u32 %value_out) eshift$part$0 (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u32 %r32; .reg .u32 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .u32 %r45; .reg .u64 %r48; .reg .u64 %r51; .reg .u32 %r54; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r61; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .u16 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .pred %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r94; .reg .pred %r95; .reg .u16 %r96; .reg .u16 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .pred %r106; .reg .pred %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u16 %r116; .reg .pred %r117; .reg .pred %r122; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r132; .reg .u16 %r134; .reg .u32 %r135; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .pred %r142; mov.u64 %r75,%ar0; mov.u32 %r76,%ar1; .loc 1 2504 6 setp.lt.s32 %r77,%r76,0; @ %r77 bra $L72; .loc 1 2530 17 setp.gt.s32 %r78,%r76,15; @ %r78 bra $L73; bra $L74; $L72: .loc 1 2506 10 neg.s32 %r43,%r76; .loc 1 2507 17 setp.ge.s32 %r142,%r76,-15; @ %r142 bra $L75; .loc 1 938 5 add.u64 %r140,%r75,26; .loc 1 895 5 add.u64 %r58,%r75,24; .loc 1 2501 8 mov.u32 %r23,0; add.u64 %r141,%r75,4; .loc 1 943 10 mov.u16 %r85,0; $L77: .loc 1 2509 9 ld.u16 %r81,[%r75+24]; cvt.u16.u32 %r82,%r23; or.b16 %r80,%r81,%r82; cvt.u32.u16 %r23,%r80; .loc 1 938 5 mov.u64 %r41,%r140; .loc 1 937 5 mov.u64 %r39,%r58; $L76: .loc 1 941 12 add.u64 %r39,%r39,-2; add.u64 %r41,%r41,-2; ld.u16 %r83,[%r39]; st.u16 [%r41],%r83; .loc 1 940 17 setp.ne.u64 %r84,%r39,%r141; @ %r84 bra $L76; .loc 1 943 10 st.u16 [%r75+4],%r85; .loc 1 2511 7 add.u32 %r43,%r43,-16; .loc 1 2507 17 setp.gt.s32 %r86,%r43,15; @ %r86 bra $L77; mov.u32 %r87,-16; sub.u32 %r37,%r87,%r76; @ %r142 bra $L78; and.b32 %r94,%r37,-16; neg.s32 %r88,%r94; bra $L79; $L78: mov.u32 %r88,0; $L79: .loc 1 2511 7 add.u32 %r43,%r37,%r88; .loc 1 2514 17 setp.le.s32 %r95,%r43,7; @ %r95 bra $L80; bra $L91; $L93: .loc 1 2501 8 mov.u32 %r23,0; add.u64 %r140,%r75,26; add.u64 %r141,%r75,4; $L91: .loc 1 2516 15 ld.u8 %r96,[%r75+24]; .loc 1 2516 9 cvt.u16.u32 %r99,%r23; or.b16 %r98,%r96,%r99; cvt.u32.u16 %r23,%r98; .loc 1 873 5 mov.u64 %r48,%r141; .loc 1 874 10 mov.u32 %r45,0; $L81: mov.u32 %r73,%r45; .loc 1 877 14 ld.u16 %r101,[%r48]; shl.b16 %r100,%r101,8; cvt.u32.u16 %r45,%r100; .loc 1 878 10 shr.u16 %r102,%r101,8; .loc 1 879 10 cvt.u16.u32 %r105,%r73; or.b16 %r104,%r102,%r105; st.u16 [%r48],%r104; .loc 1 881 7 add.u64 %r48,%r48,2; .loc 1 875 17 setp.ne.u64 %r106,%r48,%r140; @ %r106 bra $L81; .loc 1 2518 7 add.u32 %r43,%r43,-8; $L80: .loc 1 2521 17 setp.eq.u32 %r107,%r43,0; @ %r107 bra $L82; $L83: .loc 1 2523 15 ld.u16 %r109,[%r75+24]; and.b16 %r108,%r109,1; .loc 1 2523 9 cvt.u16.u32 %r111,%r23; or.b16 %r110,%r108,%r111; cvt.u32.u16 %r23,%r110; .loc 1 2524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call eshdn1,(%out_arg1); } .loc 1 2525 7 add.u32 %r43,%r43,-1; .loc 1 2521 17 setp.ne.u32 %r113,%r43,0; @ %r113 bra $L83; bra $L82; $L73: .loc 1 918 5 add.u64 %r61,%r75,4; mov.u32 %r32,%r76; add.u64 %r139,%r75,24; .loc 1 924 6 mov.u16 %r116,0; $L85: mov.u64 %r38,%r61; .loc 1 918 5 mov.u64 %r51,%r61; $L84: .loc 1 922 7 add.u64 %r51,%r51,2; .loc 1 922 10 ld.u16 %r114,[%r51]; st.u16 [%r38],%r114; .loc 1 921 17 add.u64 %r38,%r38,2; setp.ne.u64 %r115,%r139,%r51; @ %r115 bra $L84; .loc 1 924 6 st.u16 [%r75+24],%r116; .loc 1 2533 7 add.u32 %r32,%r32,-16; .loc 1 2530 17 setp.gt.s32 %r117,%r32,15; @ %r117 bra $L85; .loc 1 2533 7 and.b32 %r76,%r76,15; $L74: .loc 1 2536 17 setp.le.s32 %r122,%r76,7; @ %r122 bra $L86; .loc 1 895 5 add.u64 %r57,%r75,24; add.u64 %r40,%r75,2; .loc 1 896 10 mov.u32 %r54,0; $L87: mov.u32 %r72,%r54; .loc 1 900 14 ld.u16 %r124,[%r57]; shr.u16 %r123,%r124,8; cvt.u32.u16 %r54,%r123; .loc 1 901 10 shl.b16 %r125,%r124,8; .loc 1 902 10 cvt.u16.u32 %r128,%r72; or.b16 %r127,%r125,%r128; st.u16 [%r57],%r127; .loc 1 904 7 add.u64 %r57,%r57,-2; .loc 1 898 17 setp.ne.u64 %r129,%r40,%r57; @ %r129 bra $L87; .loc 1 2539 7 add.u32 %r76,%r76,-8; $L86: .loc 1 2542 17 setp.ne.u32 %r130,%r76,0; @ %r130 bra $L88; $L90: .loc 1 896 10 mov.u32 %r74,0; bra $L71; $L88: .loc 1 2544 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call eshup1,(%out_arg1); } .loc 1 2545 7 add.u32 %r76,%r76,-1; .loc 1 2542 17 setp.ne.u32 %r132,%r76,0; @ %r132 bra $L88; bra $L90; $L82: .loc 1 2548 6 cvt.u16.u32 %r134,%r23; set.u32.ne.u16 %r135,%r134,0; neg.s32 %r74,%r135; bra $L71; $L75: .loc 1 2514 17 setp.lt.s32 %r138,%r76,-7; @ %r138 bra $L93; .loc 1 2501 8 mov.u32 %r23,0; bra $L83; $L71: .loc 1 2551 1 mov.u32 %value,%r74; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: e53toe$isra$0 .func e53toe$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r41; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u16 %r70; .reg .u16 %r73; .reg .u16 %r77; .reg .u16 %r79; .reg .pred %r82; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u16 %r90; .reg .pred %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .pred %r97; .reg .u16 %r98; .reg .pred %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .pred %r103; .reg .u16 %r104; .reg .pred %r105; .reg .pred %r106; .reg .u16 %r107; .reg .u16 %r109; .reg .pred %r111; .reg .u16 %r112; .reg .u16 %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .u16 %r117; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u16 %r124; .reg .pred %r125; .reg .u16 %r126; .reg .u16 %r127; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r132; .reg .u16 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u32 %r138; .reg .u32 %r139; .reg .u16 %r140; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.u64 %r60,%frame; add.u64 %r51,%frame,26; .loc 1 708 11 mov.u16 %r68,0; $L107: st.u16 [%r60],%r68; .loc 1 707 17 add.u64 %r60,%r60,2; setp.ne.u64 %r69,%r51,%r60; @ %r69 bra $L107; .loc 1 2076 7 ld.u16 %r70,[%r66+6]; .loc 1 2076 6 shr.s16 %r73,%r70,15; cvt.u32.u16 %r59,%r73; st.u16 [%frame],%r73; .loc 1 2078 14 and.b16 %r140,%r70,15; .loc 1 2078 22 or.b16 %r77,%r140,16; .loc 1 2078 9 st.u16 [%frame+4],%r77; .loc 1 2079 5 and.b16 %r79,%r70,32752; .loc 1 2081 6 setp.ne.u16 %r82,%r79,32752; @ %r82 bra $L108; .loc 1 2085 10 setp.ne.u16 %r85,%r140,0; @ %r85 bra $L109; .loc 1 2085 32 ld.u16 %r86,[%r66+4]; setp.ne.u16 %r87,%r86,0; @ %r87 bra $L109; .loc 1 2086 4 ld.u16 %r88,[%r66+2]; setp.ne.u16 %r89,%r88,0; @ %r89 bra $L109; .loc 1 2086 20 ld.u16 %r90,[%r66]; setp.eq.u16 %r91,%r90,0; @ %r91 bra $L110; $L109: mov.u64 %r52,%r67; add.u64 %r64,%r67,16; .loc 1 3843 9 mov.u16 %r92,0; $L111: st.u16 [%r52],%r92; .loc 1 3842 21 add.u64 %r52,%r52,2; setp.ne.u64 %r93,%r52,%r64; @ %r93 bra $L111; .loc 1 3844 14 mov.u16 %r94,-16384; st.u16 [%r67+16],%r94; .loc 1 3850 14 mov.u16 %r95,32767; st.u16 [%r67+18],%r95; .loc 1 2089 4 bra $L106; $L110: mov.u64 %r61,%r67; add.u64 %r34,%r67,20; .loc 1 2086 20 mov.u64 %r35,%r67; $L113: .loc 1 467 10 st.u16 [%r35],%r90; .loc 1 466 17 add.u64 %r35,%r35,2; setp.ne.u64 %r97,%r34,%r35; @ %r97 bra $L113; add.u64 %r36,%r67,18; mov.u64 %r22,%r67; .loc 1 581 10 mov.u16 %r98,0; $L114: st.u16 [%r22],%r98; .loc 1 580 17 add.u64 %r22,%r22,2; setp.ne.u64 %r99,%r36,%r22; @ %r99 bra $L114; .loc 1 582 6 ld.u16 %r101,[%r67+18]; or.b16 %r100,%r101,32767; st.u16 [%r67+18],%r100; .loc 1 2102 10 setp.eq.u32 %r103,%r59,0; @ %r103 bra $L106; $L115: .loc 1 558 10 ld.u16 %r104,[%r61]; setp.ne.u16 %r105,%r104,0; @ %r105 bra $L106; .loc 1 556 17 add.u64 %r61,%r61,2; setp.ne.u64 %r106,%r36,%r61; @ %r106 bra $L115; .loc 1 502 13 add.u16 %r107,%r100,-32768; st.u16 [%r67+18],%r107; bra $L106; $L108: .loc 1 2107 5 shr.u16 %r109,%r79,4; cvt.u32.u16 %r41,%r109; .loc 1 2085 38 ld.u16 %r62,[%r66+4]; .loc 1 2086 10 ld.u16 %r49,[%r66+2]; .loc 1 2086 26 ld.u16 %r63,[%r66]; .loc 1 2110 6 setp.ne.u32 %r111,%r41,0; @ %r111 bra $L116; .loc 1 2113 13 and.b16 %r112,%r77,-17; st.u16 [%frame+4],%r112; .loc 1 2116 9 mov.u16 %r114,15360; st.u16 [%frame+2],%r114; .loc 1 2119 8 cvt.u16.u32 %r115,%r62; st.u16 [%frame+6],%r115; .loc 1 2120 8 cvt.u16.u32 %r116,%r49; st.u16 [%frame+8],%r116; .loc 1 2121 8 cvt.u16.u32 %r117,%r63; st.u16 [%frame+10],%r117; mov.u32 %r119,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r119; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r120,[%value_in]; } .loc 1 2131 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r122,[%value_in]; } .loc 1 2131 10 setp.le.s32 %r123,%r122,144; @ %r123 bra $L117; add.u64 %r33,%frame,2; .loc 1 720 11 mov.u16 %r124,0; $L118: st.u16 [%r33],%r124; .loc 1 719 17 add.u64 %r33,%r33,2; setp.ne.u64 %r125,%r51,%r33; @ %r125 bra $L118; bra $L119; $L117: .loc 1 2134 8 ld.u16 %r127,[%frame+2]; add.u16 %r126,%r127,1; cvt.u16.u32 %r128,%r122; sub.u16 %r129,%r126,%r128; st.u16 [%frame+2],%r129; $L119: .loc 1 2136 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r67; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L106; $L116: .loc 1 2115 5 add.u16 %r132,%r109,15360; .loc 1 2116 9 st.u16 [%frame+2],%r132; .loc 1 2119 8 cvt.u16.u32 %r134,%r62; st.u16 [%frame+6],%r134; .loc 1 2120 8 cvt.u16.u32 %r135,%r49; st.u16 [%frame+8],%r135; .loc 1 2121 8 cvt.u16.u32 %r136,%r63; st.u16 [%frame+10],%r136; mov.u32 %r138,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r138; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r139,[%value_in]; } bra $L119; $L106: .loc 1 2138 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN FUNCTION DEF: emovi .func emovi (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r37; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r47; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r57; .reg .u64 %r58; .reg .u16 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u16 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u16 %r75; .reg .pred %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u16 %r80; .reg .u16 %r81; mov.u64 %r57,%ar0; mov.u64 %r58,%ar1; .loc 1 626 6 ld.u16 %r60,[%r57+18]; shr.s16 %r61,%r60,15; st.u16 [%r58],%r61; .loc 1 632 5 add.u64 %r37,%r58,4; .loc 1 632 8 ld.u16 %r63,[%r57+18]; and.b16 %r62,%r63,32767; st.u16 [%r58+2],%r62; .loc 1 634 6 setp.ne.u16 %r66,%r62,32767; @ %r66 bra $L131; .loc 1 553 6 ld.u16 %r68,[%r57+18]; and.b16 %r67,%r68,32767; setp.ne.u16 %r69,%r67,32767; @ %r69 bra $L132; add.u64 %r41,%r57,18; mov.u64 %r50,%r57; $L134: .loc 1 558 10 ld.u16 %r70,[%r50]; setp.ne.u16 %r71,%r70,0; @ %r71 bra $L133; .loc 1 556 17 add.u64 %r50,%r50,2; setp.ne.u64 %r72,%r41,%r50; @ %r72 bra $L134; bra $L132; $L135: .loc 1 641 11 ld.u16 %r73,[%r30]; st.u16 [%r29],%r73; .loc 1 640 18 add.u64 %r30,%r30,-2; add.u64 %r29,%r29,2; setp.ne.u64 %r74,%r30,%r51; @ %r74 bra $L135; bra $L130; $L132: mov.u64 %r34,%r37; add.u64 %r33,%r34,22; .loc 1 646 7 mov.u16 %r75,0; $L137: st.u16 [%r34],%r75; .loc 1 645 21 add.u64 %r34,%r34,2; setp.ne.u64 %r76,%r33,%r34; @ %r76 bra $L137; bra $L130; $L131: .loc 1 651 8 mov.u16 %r77,0; st.u16 [%r58+4],%r77; add.u64 %r43,%r57,16; add.u64 %r26,%r58,6; $L139: .loc 1 654 10 ld.u16 %r78,[%r43]; st.u16 [%r26],%r78; mov.u64 %r47,%r43; .loc 1 653 17 add.u64 %r43,%r43,-2; add.u64 %r26,%r26,2; setp.ne.u64 %r79,%r47,%r57; @ %r79 bra $L139; .loc 1 656 6 mov.u16 %r80,0; st.u16 [%r58+24],%r80; bra $L130; $L133: .loc 1 639 9 mov.u16 %r81,0; st.u16 [%r58+4],%r81; add.u64 %r30,%r57,16; add.u64 %r29,%r58,6; add.u64 %r51,%r57,-4; bra $L135; $L130: .loc 1 657 1 ret; } // BEGIN FUNCTION DEF: ecmp .func (.param .u32 %value_out) ecmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,64; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u32 %r24; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .pred %r57; .reg .u16 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r69; .reg .u16 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u16 %r77; .reg .pred %r78; .reg .u16 %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .pred %r90; .reg .pred %r91; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; .loc 1 553 6 ld.u16 %r56,[%r53+18]; and.b16 %r55,%r56,32767; setp.ne.u16 %r57,%r55,32767; @ %r57 bra $L145; mov.u64 %r49,%r53; add.u64 %r51,%r53,18; $L147: .loc 1 558 10 ld.u16 %r58,[%r49]; setp.ne.u16 %r59,%r58,0; @ %r59 bra $L157; .loc 1 556 17 add.u64 %r49,%r49,2; setp.ne.u64 %r60,%r49,%r51; @ %r60 bra $L147; $L145: .loc 1 553 6 ld.u16 %r62,[%r54+18]; and.b16 %r61,%r62,32767; setp.ne.u16 %r63,%r61,32767; @ %r63 bra $L148; mov.u64 %r46,%r54; add.u64 %r48,%r54,18; $L149: .loc 1 558 10 ld.u16 %r64,[%r46]; setp.ne.u16 %r65,%r64,0; @ %r65 bra $L158; .loc 1 556 17 add.u64 %r46,%r46,2; setp.ne.u64 %r66,%r46,%r48; @ %r66 bra $L149; $L148: .loc 1 2436 3 add.u64 %r69,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r69; call emovi,(%out_arg1,%out_arg2); } .loc 1 2438 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 2441 7 ld.u16 %r24,[%frame+26]; .loc 1 2441 6 ld.u16 %r72,[%frame]; cvt.u16.u32 %r73,%r24; setp.eq.u16 %r74,%r72,%r73; @ %r74 bra $L150; add.u64 %r30,%frame,28; add.u64 %r35,%frame,2; add.u64 %r22,%frame,50; $L152: .loc 1 2446 7 ld.u16 %r77,[%r30]; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L151; .loc 1 2448 7 ld.u16 %r79,[%r35]; setp.ne.u16 %r80,%r79,0; @ %r80 bra $L151; .loc 1 2444 21 add.u64 %r30,%r30,2; add.u64 %r35,%r35,2; setp.ne.u64 %r81,%r22,%r30; @ %r81 bra $L152; .loc 1 2451 14 mov.u32 %r52,0; bra $L144; $L151: .loc 1 2453 10 setp.eq.u32 %r82,%r24,0; .loc 1 2456 9 selp.u32 %r52,1,-1,%r82; bra $L144; $L150: .loc 1 2459 6 setp.eq.u32 %r83,%r24,0; .loc 1 2462 11 selp.u32 %r52,1,-1,%r83; add.u64 %r41,%frame,2; add.u64 %r34,%frame,28; add.u64 %r43,%frame,24; bra $L154; $L156: .loc 1 2466 11 ld.u16 %r28,[%r34]; .loc 1 2466 19 ld.u16 %r29,[%r41]; .loc 1 2466 10 add.u64 %r41,%r41,2; add.u64 %r34,%r34,2; cvt.u16.u32 %r85,%r28; cvt.u16.u32 %r86,%r29; setp.eq.u16 %r87,%r85,%r86; @ %r87 bra $L154; .loc 1 2479 6 setp.gt.u16 %r90,%r85,%r86; @ %r90 bra $L144; bra $L165; $L154: .loc 1 2471 14 setp.ne.u64 %r91,%r41,%r43; @ %r91 bra $L156; .loc 1 2451 14 mov.u32 %r52,0; bra $L144; $L165: .loc 1 2482 13 neg.s32 %r52,%r52; bra $L144; $L157: .loc 1 2434 12 mov.u32 %r52,-2; bra $L144; $L158: mov.u32 %r52,-2; $L144: .loc 1 2483 1 mov.u32 %value,%r52; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: emdnorm .func emdnorm (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r39; .reg .u64 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r70; .reg .u64 %r73; .reg .u64 %r85; .reg .u64 %r88; .reg .u64 %r89; .reg .u32 %r93; .reg .u32 %r94; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r112; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .u32 %r128; .reg .u64 %r129; .reg .u32 %r131; .reg .u64 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .u32 %r142; .reg .u16 %r143; .reg .pred %r144; .reg .u16 %r145; .reg .pred %r146; .reg .pred %r148; .reg .u32 %r151; .reg .u32 %r152; .reg .pred %r153; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u16 %r159; .reg .pred %r160; .reg .pred %r161; .reg .pred %r162; .reg .pred %r163; .reg .pred %r164; .reg .pred %r165; .reg .pred %r166; .reg .u16 %r167; .reg .u16 %r168; .reg .u16 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u64 %r172; .reg .u64 %r173; .reg .pred %r176; .reg .pred %r177; .reg .u16 %r178; .reg .u16 %r179; .reg .u32 %r180; .reg .u64 %r183; .reg .u16 %r184; .reg .u16 %r185; .reg .u16 %r186; .reg .pred %r187; .reg .pred %r188; .reg .u64 %r189; .reg .u32 %r190; .reg .u32 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u64 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .u16 %r198; .reg .u16 %r199; .reg .u16 %r200; .reg .pred %r201; .reg .u16 %r202; .reg .u16 %r203; .reg .u16 %r204; .reg .u16 %r205; .reg .u16 %r206; .reg .u16 %r207; .reg .u16 %r208; .reg .pred %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u16 %r216; .reg .u16 %r217; .reg .u16 %r218; .reg .u32 %r219; .reg .u16 %r220; .reg .pred %r221; .reg .u16 %r222; .reg .u16 %r223; .reg .pred %r224; .reg .pred %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u16 %r229; .reg .u16 %r230; .reg .u16 %r231; .reg .pred %r232; .reg .pred %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .pred %r241; .reg .u16 %r243; .reg .pred %r244; .reg .u16 %r246; .reg .pred %r247; .reg .u16 %r248; .reg .pred %r249; .reg .u16 %r250; .reg .u16 %r251; .reg .pred %r252; .reg .u16 %r254; .reg .u64 %r255; .reg .u64 %r256; .reg .u16 %r257; .reg .u16 %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .u16 %r262; .reg .u16 %r264; .reg .u16 %r266; .reg .pred %r267; .reg .pred %r270; .reg .pred %r272; .reg .u16 %r274; .reg .pred %r275; .reg .u32 %r276; .reg .pred %r277; .reg .pred %r278; .reg .u16 %r279; mov.u64 %r124,%ar0; mov.u32 %r125,%ar1; mov.u32 %r126,%ar2; mov.u64 %r127,%ar3; mov.u32 %r128,%ar4; mov.u64 %r129,%ar5; .loc 1 1225 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r131,[%value_in]; } .loc 1 1235 7 cvt.s64.s32 %r132,%r131; sub.u64 %r49,%r127,%r132; .loc 1 1240 10 set.u32.gt.s32 %r134,%r131,144; neg.s32 %r135,%r134; mov.u32 %r133,%r135; .loc 1 1240 27 set.u32.le.s64 %r137,%r49,32766; neg.s32 %r138,%r137; mov.u32 %r136,%r138; .loc 1 1240 19 cvt.u16.u8 %r279,%r133; mov.u16 %r140,%r279; cvt.u16.u8 %r279,%r136; mov.u16 %r141,%r279; and.b16 %r139,%r140,%r141; cvt.u32.u16 %r142,%r139; .loc 1 1240 6 cvt.u16.u8 %r143,%r142; setp.eq.u16 %r144,%r143,0; @ %r144 bra $L167; .loc 1 718 3 add.u64 %r57,%r124,2; add.u64 %r58,%r124,26; .loc 1 720 11 mov.u16 %r145,0; $L168: st.u16 [%r57],%r145; .loc 1 719 17 add.u64 %r57,%r57,2; setp.ne.u64 %r146,%r58,%r57; @ %r146 bra $L168; bra $L166; $L167: .loc 1 1246 6 setp.ge.s64 %r278,%r49,0; @ %r278 bra $L170; .loc 1 1248 10 setp.lt.s64 %r148,%r49,-144; @ %r148 bra $L171; .loc 1 1250 6 cvt.u32.u64 %r151,%r49; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r151; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r152,[%value_in]; } .loc 1 1252 7 setp.eq.u32 %r153,%r152,0; .loc 1 1253 11 selp.u32 %r125,%r125,1,%r153; .loc 1 1262 6 setp.eq.u32 %r270,%r128,0; @ ! %r270 bra $L226; bra $L200; $L171: .loc 1 718 3 add.u64 %r70,%r124,2; add.u64 %r50,%r124,26; $L173: .loc 1 720 11 st.u16 [%r70],%r143; .loc 1 719 17 add.u64 %r70,%r70,2; setp.ne.u64 %r155,%r50,%r70; @ %r155 bra $L173; bra $L166; $L170: .loc 1 1262 6 setp.eq.u32 %r156,%r128,0; @ %r156 bra $L175; .loc 1 1265 10 ld.u32 %r123,[%r129+4]; .loc 1 1265 6 ld.u32 %r157,[%r129]; setp.eq.u32 %r158,%r123,%r157; @ %r158 bra $L176; $L204: add.u64 %r96,%r129,26; add.u64 %r73,%r129,52; .loc 1 708 11 mov.u16 %r159,0; $L177: st.u16 [%r96],%r159; .loc 1 707 17 add.u64 %r96,%r96,2; setp.ne.u64 %r160,%r73,%r96; @ %r160 bra $L177; .loc 1 1268 7 setp.eq.u32 %r161,%r123,56; @ %r161 bra $L206; setp.gt.s32 %r162,%r123,56; @ %r162 bra $L179; setp.eq.u32 %r163,%r123,24; @ %r163 bra $L207; setp.eq.u32 %r164,%r123,53; @ %r164 bra $L208; mov.u32 %r115,12; mov.u32 %r117,65535; mov.u32 %r118,32768; mov.u32 %r94,1; mov.u32 %r93,11; bra $L178; $L179: setp.eq.u32 %r165,%r123,64; @ %r165 bra $L209; setp.eq.u32 %r166,%r123,113; @ %r166 bra $L210; mov.u32 %r115,12; mov.u32 %r117,65535; mov.u32 %r118,32768; mov.u32 %r94,1; mov.u32 %r93,11; bra $L178; $L206: mov.u32 %r115,6; mov.u32 %r117,255; mov.u32 %r118,128; mov.u32 %r94,256; mov.u32 %r93,%r115; bra $L178; $L207: mov.u32 %r115,4; mov.u32 %r117,255; mov.u32 %r118,128; mov.u32 %r94,256; mov.u32 %r93,%r115; bra $L178; $L208: mov.u32 %r115,6; mov.u32 %r117,2047; mov.u32 %r118,1024; mov.u32 %r94,2048; mov.u32 %r93,%r115; bra $L178; $L209: mov.u32 %r115,7; mov.u32 %r117,65535; mov.u32 %r118,32768; mov.u32 %r94,1; mov.u32 %r93,6; bra $L178; $L210: mov.u32 %r115,10; mov.u32 %r117,32767; mov.u32 %r118,16384; mov.u32 %r94,32768; mov.u32 %r93,%r115; $L178: .loc 1 1272 12 st.u32 [%r129+8],%r115; .loc 1 1273 14 cvt.u16.u32 %r167,%r117; st.u16 [%r129+20],%r167; .loc 1 1274 15 cvt.u16.u32 %r168,%r118; st.u16 [%r129+22],%r168; .loc 1 1275 15 cvt.u16.u32 %r169,%r94; st.u16 [%r129+24],%r169; .loc 1 1276 12 st.u32 [%r129+12],%r93; .loc 1 1315 26 cvt.s64.s32 %r170,%r93; add.u64 %r171,%r170,8; add.u64 %r172,%r171,%r171; add.u64 %r173,%r129,%r172; st.u16 [%r173+10],%r169; .loc 1 1316 18 st.u32 [%r129],%r123; $L176: .loc 1 1325 6 setp.gt.s64 %r176,%r49,0; @ %r176 bra $L180; $L205: .loc 1 1325 18 setp.eq.u32 %r177,%r123,144; @ %r177 bra $L181; .loc 1 1330 25 ld.u16 %r179,[%r124+24]; and.b16 %r178,%r179,1; cvt.u32.u16 %r180,%r178; .loc 1 1330 12 or.b32 %r125,%r125,%r180; .loc 1 1331 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call eshdn1,(%out_arg1); } $L180: .loc 1 1336 12 ld.u32 %r29,[%r129+8]; cvt.s64.s32 %r30,%r29; .loc 1 1336 8 add.u64 %r183,%r30,%r30; add.u64 %r32,%r124,%r183; ld.u16 %r33,[%r32]; .loc 1 1336 23 ld.u16 %r34,[%r129+20]; .loc 1 1336 5 cvt.u16.u32 %r185,%r33; cvt.u16.u32 %r186,%r34; and.b16 %r184,%r185,%r186; cvt.u32.u16 %r51,%r184; .loc 1 1337 6 setp.gt.s32 %r187,%r123,143; @ %r187 bra $L182; .loc 1 1340 16 setp.gt.s32 %r188,%r29,11; @ %r188 bra $L182; add.u64 %r189,%r183,2; add.u64 %r64,%r124,%r189; mov.u32 %r191,11; sub.u32 %r190,%r191,%r29; cvt.u64.u32 %r192,%r190; add.u64 %r193,%r192,%r30; add.u64 %r194,%r193,%r193; add.u64 %r195,%r124,4; add.u64 %r97,%r194,%r195; .loc 1 1344 9 mov.u16 %r200,0; $L184: .loc 1 1342 7 ld.u16 %r196,[%r64]; setp.eq.u16 %r197,%r196,0; @ %r197 bra $L183; .loc 1 1343 8 cvt.u16.u32 %r199,%r51; or.b16 %r198,%r199,1; cvt.u32.u16 %r51,%r198; $L183: .loc 1 1344 9 st.u16 [%r64],%r200; .loc 1 1340 16 add.u64 %r64,%r64,2; setp.ne.u64 %r201,%r64,%r97; @ %r201 bra $L184; .loc 1 1348 14 ld.u16 %r33,[%r32]; .loc 1 1348 21 ld.u16 %r34,[%r129+20]; $L182: .loc 1 1348 14 cvt.u16.u32 %r203,%r34; not.b16 %r202,%r203; cvt.u16.u32 %r205,%r33; and.b16 %r204,%r202,%r205; st.u16 [%r32],%r204; .loc 1 1349 15 ld.u16 %r39,[%r129+22]; .loc 1 1349 24 cvt.u16.u32 %r207,%r39; cvt.u16.u32 %r208,%r51; and.b16 %r206,%r207,%r208; .loc 1 1349 6 setp.ne.u16 %r209,%r206,0; @ %r209 bra $L185; $L190: .loc 1 1368 18 set.u32.ne.u32 %r211,%r123,144; neg.s32 %r212,%r211; mov.u32 %r210,%r212; .loc 1 1368 6 set.u32.le.s64 %r214,%r49,0; neg.s32 %r215,%r214; mov.u32 %r213,%r215; .loc 1 1368 18 cvt.u16.u8 %r279,%r210; mov.u16 %r217,%r279; cvt.u16.u8 %r279,%r213; mov.u16 %r218,%r279; and.b16 %r216,%r217,%r218; cvt.u32.u16 %r219,%r216; cvt.u16.u8 %r220,%r219; setp.ne.u16 %r221,%r220,0; @ ! %r221 bra $L227; bra $L186; $L185: .loc 1 1351 10 cvt.u16.u32 %r222,%r39; cvt.u16.u32 %r223,%r51; setp.ne.u16 %r224,%r222,%r223; @ %r224 bra $L188; .loc 1 1353 7 setp.ne.u32 %r225,%r125,0; @ %r225 bra $L189; .loc 1 1355 14 ld.s32 %r226,[%r129+12]; add.u64 %r227,%r226,%r226; add.u64 %r228,%r124,%r227; .loc 1 1355 38 ld.u16 %r230,[%r228]; ld.u16 %r231,[%r129+24]; and.b16 %r229,%r230,%r231; .loc 1 1355 11 setp.eq.u16 %r232,%r229,0; @ ! %r232 bra $L188; bra $L190; $L189: .loc 1 1360 11 setp.ne.u32 %r233,%r126,0; @ %r233 bra $L190; $L188: .loc 1 958 5 add.u64 %r88,%r129,50; .loc 1 959 5 add.u64 %r89,%r124,24; add.u64 %r67,%r129,28; .loc 1 960 9 mov.u32 %r120,0; $L191: .loc 1 963 11 ld.u16 %r234,[%r88]; .loc 1 963 34 ld.u16 %r235,[%r89]; .loc 1 963 32 add.u64 %r236,%r234,%r235; .loc 1 963 55 cvt.u64.u32 %r237,%r120; .loc 1 963 9 add.u64 %r85,%r236,%r237; .loc 1 964 10 shr.u64 %r238,%r85,16; cvt.u32.u64 %r239,%r238; and.b32 %r120,%r239,1; .loc 1 968 12 st.u16 [%r89],%r85; .loc 1 969 7 add.u64 %r88,%r88,-2; .loc 1 970 7 add.u64 %r89,%r89,-2; .loc 1 961 17 setp.ne.u64 %r241,%r67,%r88; @ %r241 bra $L191; bra $L190; $L186: .loc 1 1373 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call eshup1,(%out_arg1); } .loc 1 1375 6 ld.u16 %r243,[%r124+4]; setp.eq.u16 %r244,%r243,0; @ %r244 bra $L192; $L194: .loc 1 1377 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call eshdn1,(%out_arg1); } .loc 1 1378 11 add.u64 %r49,%r49,1; bra $L193; $L227: .loc 1 1375 6 ld.u16 %r246,[%r124+4]; setp.ne.u16 %r247,%r246,0; @ %r247 bra $L194; $L193: .loc 1 1381 13 mov.u16 %r248,0; st.u16 [%r124+24],%r248; .loc 1 1382 6 setp.le.s64 %r249,%r49,32766; @ ! %r249 bra $L202; setp.ge.s64 %r278,%r49,0; bra $L195; $L202: .loc 1 1388 12 mov.u16 %r250,32767; st.u16 [%r124+2],%r250; add.u64 %r66,%r124,4; add.u64 %r68,%r124,24; .loc 1 1390 7 mov.u16 %r251,0; $L196: st.u16 [%r66],%r251; .loc 1 1389 21 add.u64 %r66,%r66,2; setp.ne.u64 %r252,%r66,%r68; @ %r252 bra $L196; bra $L166; $L195: .loc 1 1409 6 @ %r278 bra $L197; $L199: .loc 1 1410 10 mov.u16 %r254,0; st.u16 [%r124+2],%r254; bra $L166; $L197: .loc 1 1412 12 st.u16 [%r124+2],%r49; bra $L166; $L181: .loc 1 1336 8 ld.s32 %r255,[%r129+8]; add.u64 %r256,%r255,%r255; add.u64 %r112,%r124,%r256; .loc 1 1336 5 ld.u16 %r258,[%r112]; ld.u16 %r259,[%r129+20]; and.b16 %r257,%r258,%r259; cvt.u32.u16 %r51,%r257; .loc 1 1348 14 not.b16 %r260,%r259; and.b16 %r262,%r260,%r258; st.u16 [%r112],%r262; .loc 1 1349 15 ld.u16 %r39,[%r129+22]; .loc 1 1349 24 cvt.u16.u32 %r266,%r39; and.b16 %r264,%r257,%r266; .loc 1 1349 6 setp.ne.u16 %r267,%r264,0; @ %r267 bra $L185; bra $L228; $L192: .loc 1 1381 13 st.u16 [%r124+24],%r243; bra $L195; $L200: st.u16 [%r124+24],%r143; bra $L199; $L175: st.u16 [%r124+24],%r143; .loc 1 1382 6 setp.gt.s64 %r272,%r49,32766; @ ! %r272 bra $L197; bra $L202; $L229: .loc 1 1381 13 st.u16 [%r124+24],%r274; bra $L195; $L228: .loc 1 1375 6 ld.u16 %r274,[%r124+4]; setp.ne.u16 %r275,%r274,0; @ ! %r275 bra $L229; bra $L194; $L226: .loc 1 1265 10 ld.u32 %r123,[%r129+4]; .loc 1 1265 6 ld.u32 %r276,[%r129]; setp.ne.u32 %r277,%r123,%r276; @ %r277 bra $L204; bra $L205; $L166: .loc 1 1413 1 ret; } // BEGIN FUNCTION DEF: eiremain .func eiremain (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u64 %r70; .reg .u32 %r72; .reg .u64 %r73; .reg .u16 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .pred %r82; .reg .pred %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u32 %r89; .reg .pred %r91; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .pred %r97; .reg .u32 %r102; .reg .u64 %r104; .reg .u64 %r105; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; .loc 1 3736 19 add.u64 %r32,%r67,52; .loc 1 3738 6 ld.u16 %r33,[%r65+2]; .loc 1 3739 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r65; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r69,[%value_in]; } cvt.s64.s32 %r70,%r69; .loc 1 3739 6 sub.u64 %r35,%r33,%r70; .loc 1 3740 6 ld.u16 %r36,[%r66+2]; .loc 1 3741 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r72,[%value_in]; } cvt.s64.s32 %r73,%r72; .loc 1 3741 6 sub.u64 %r38,%r36,%r73; mov.u64 %r54,%r32; add.u64 %r55,%r67,78; .loc 1 708 11 mov.u16 %r74,0; $L231: st.u16 [%r54],%r74; .loc 1 707 17 add.u64 %r54,%r54,2; setp.ne.u64 %r75,%r54,%r55; @ %r75 bra $L231; .loc 1 3743 13 setp.gt.s64 %r76,%r35,%r38; @ %r76 bra $L232; .loc 1 792 5 add.u64 %r61,%r65,4; .loc 1 793 5 add.u64 %r60,%r66,4; add.u64 %r104,%r65,26; add.u64 %r105,%r66,2; $L238: mov.u64 %r42,%r61; mov.u64 %r29,%r60; $L236: .loc 1 796 10 ld.u16 %r77,[%r42]; ld.u16 %r78,[%r29]; setp.eq.u16 %r79,%r77,%r78; @ %r79 bra $L233; .loc 1 802 6 setp.gt.u16 %r82,%r77,%r78; @ %r82 bra $L239; bra $L235; $L233: .loc 1 794 17 add.u64 %r42,%r42,2; add.u64 %r29,%r29,2; setp.ne.u64 %r83,%r104,%r42; @ %r83 bra $L236; $L235: .loc 1 986 5 add.u64 %r52,%r65,24; .loc 1 987 5 add.u64 %r53,%r66,24; .loc 1 988 9 mov.u32 %r41,0; $L237: .loc 1 991 11 ld.u16 %r84,[%r53]; .loc 1 991 55 cvt.u64.u32 %r85,%r41; .loc 1 991 9 sub.u64 %r86,%r84,%r85; .loc 1 991 34 ld.u16 %r87,[%r52]; .loc 1 991 9 sub.u64 %r49,%r86,%r87; .loc 1 992 10 shr.u64 %r88,%r49,16; cvt.u32.u64 %r89,%r88; and.b32 %r41,%r89,1; .loc 1 996 12 st.u16 [%r53],%r49; .loc 1 997 7 add.u64 %r52,%r52,-2; .loc 1 998 7 add.u64 %r53,%r53,-2; .loc 1 989 17 setp.ne.u64 %r91,%r105,%r53; @ %r91 bra $L237; .loc 1 3748 6 mov.u32 %r30,1; bra $L234; $L239: .loc 1 3752 6 mov.u32 %r30,0; $L234: .loc 1 3754 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; call eshup1,(%out_arg1); } .loc 1 3755 21 ld.u16 %r94,[%r67+76]; cvt.u16.u32 %r95,%r30; or.b16 %r93,%r94,%r95; st.u16 [%r67+76],%r93; .loc 1 3756 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call eshup1,(%out_arg1); } .loc 1 3757 10 add.u64 %r38,%r38,-1; .loc 1 3743 13 setp.le.s64 %r97,%r35,%r38; @ %r97 bra $L238; $L232: .loc 1 3759 3 mov.u32 %r102,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r102; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r102; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r38; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r102; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r67; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3760 1 ret; } // BEGIN FUNCTION DEF: ediv .func ediv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,80; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r50; .reg .u64 %r56; .reg .u32 %r59; .reg .u64 %r63; .reg .u64 %r68; .reg .u64 %r71; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r78; .reg .u32 %r85; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r90; .reg .u64 %r95; .reg .u64 %r98; .reg .u64 %r100; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r107; .reg .u32 %r110; .reg .u64 %r112; .reg .u64 %r114; .reg .u64 %r118; .reg .u64 %r120; .reg .u32 %r127; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r140; .reg .u64 %r141; .reg .u64 %r144; .reg .u64 %r148; .reg .u64 %r155; .reg .u64 %r158; .reg .u64 %r160; .reg .u64 %r163; .reg .u64 %r164; .reg .u32 %r170; .reg .u64 %r172; .reg .u64 %r175; .reg .u64 %r176; .reg .u32 %r177; .reg .u64 %r179; .reg .u64 %r181; .reg .u64 %r186; .reg .u64 %r188; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r205; .reg .u64 %r212; .reg .u32 %r216; .reg .u32 %r218; .reg .u32 %r220; .reg .u32 %r221; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u16 %r232; .reg .u16 %r233; .reg .pred %r234; .reg .u16 %r235; .reg .pred %r236; .reg .pred %r237; .reg .u16 %r238; .reg .pred %r239; .reg .u16 %r240; .reg .u16 %r241; .reg .pred %r242; .reg .u16 %r243; .reg .pred %r244; .reg .pred %r245; .reg .u16 %r246; .reg .pred %r247; .reg .u64 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u16 %r252; .reg .u16 %r253; .reg .u16 %r254; .reg .u16 %r255; .reg .pred %r257; .reg .u32 %r260; .reg .pred %r261; .reg .u16 %r262; .reg .pred %r263; .reg .pred %r264; .reg .u16 %r265; .reg .pred %r266; .reg .pred %r267; .reg .u16 %r268; .reg .pred %r269; .reg .u16 %r270; .reg .u16 %r271; .reg .pred %r273; .reg .u16 %r274; .reg .pred %r275; .reg .pred %r276; .reg .u16 %r277; .reg .pred %r278; .reg .pred %r279; .reg .u32 %r281; .reg .u16 %r282; .reg .u16 %r283; .reg .pred %r284; .reg .pred %r285; .reg .u32 %r286; .reg .u16 %r287; .reg .u16 %r288; .reg .u16 %r289; .reg .pred %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .pred %r293; .reg .u16 %r294; .reg .pred %r295; .reg .pred %r302; .reg .u16 %r303; .reg .pred %r304; .reg .u32 %r307; .reg .u64 %r308; .reg .pred %r311; .reg .u16 %r312; .reg .pred %r313; .reg .u16 %r314; .reg .u16 %r315; .reg .pred %r316; .reg .u16 %r317; .reg .pred %r318; .reg .u32 %r321; .reg .u64 %r322; .reg .pred %r325; .reg .u16 %r326; .reg .u16 %r327; .reg .u16 %r328; .reg .u32 %r329; .reg .u32 %r330; .reg .u16 %r331; .reg .u16 %r332; .reg .pred %r333; .reg .u16 %r334; .reg .u16 %r335; .reg .u16 %r336; .reg .u16 %r337; .reg .u16 %r338; .reg .pred %r339; .reg .u16 %r342; .reg .u64 %r343; .reg .u64 %r345; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .pred %r350; .reg .u64 %r352; .reg .u16 %r355; .reg .u16 %r361; .reg .u16 %r362; .reg .pred %r363; .reg .pred %r366; .reg .pred %r367; .reg .u16 %r368; .reg .u16 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u64 %r373; .reg .u64 %r374; .reg .u32 %r375; .reg .pred %r378; .reg .u16 %r379; .reg .u16 %r380; .reg .pred %r381; .reg .pred %r384; .reg .pred %r385; .reg .u16 %r386; .reg .u16 %r387; .reg .u64 %r388; .reg .u64 %r389; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u32 %r393; .reg .pred %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .u64 %r399; .reg .u64 %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .pred %r406; .reg .u16 %r407; .reg .u16 %r408; .reg .pred %r411; .reg .u16 %r412; .reg .pred %r413; .reg .u16 %r414; .reg .u16 %r415; .reg .u16 %r416; .reg .pred %r417; .reg .u32 %r418; .reg .u16 %r419; .reg .u16 %r422; .reg .pred %r423; .reg .u32 %r426; .reg .u32 %r428; .reg .u64 %r430; .reg .u64 %r431; .reg .u16 %r433; .reg .u16 %r434; .reg .u16 %r435; .reg .u32 %r436; .reg .u32 %r437; .reg .u16 %r438; .reg .u32 %r443; .reg .u16 %r444; .reg .pred %r446; .reg .pred %r448; .reg .pred %r450; .reg .u64 %r451; .reg .u64 %r452; .reg .u64 %r453; .reg .u64 %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u64 %r459; .reg .u32 %r462; .reg .u64 %r463; .reg .u64 %r464; mov.u64 %r224,%ar0; mov.u64 %r225,%ar1; mov.u64 %r226,%ar2; mov.u64 %r227,%ar3; .loc 1 553 6 ld.u16 %r233,[%r224+18]; and.b16 %r232,%r233,32767; setp.ne.u16 %r234,%r232,32767; @ %r234 bra $L245; mov.u64 %r56,%r224; add.u64 %r26,%r224,18; mov.u64 %r98,%r224; $L247: .loc 1 558 10 ld.u16 %r235,[%r98]; setp.ne.u16 %r236,%r235,0; @ %r236 bra $L246; .loc 1 556 17 add.u64 %r98,%r98,2; setp.ne.u64 %r237,%r26,%r98; @ %r237 bra $L247; bra $L245; $L246: mov.u64 %r29,%r226; add.u64 %r102,%r224,20; $L248: .loc 1 483 10 ld.u16 %r238,[%r56]; st.u16 [%r29],%r238; .loc 1 482 17 add.u64 %r56,%r56,2; add.u64 %r29,%r29,2; setp.ne.u64 %r239,%r56,%r102; @ %r239 bra $L248; bra $L244; $L245: .loc 1 553 6 ld.u16 %r241,[%r225+18]; and.b16 %r240,%r241,32767; setp.ne.u16 %r242,%r240,32767; @ %r242 bra $L250; mov.u64 %r193,%r225; add.u64 %r459,%r225,18; mov.u64 %r181,%r225; $L252: .loc 1 558 10 ld.u16 %r243,[%r181]; setp.ne.u16 %r244,%r243,0; @ %r244 bra $L251; .loc 1 556 17 add.u64 %r181,%r181,2; setp.ne.u64 %r245,%r181,%r459; @ %r245 bra $L252; bra $L250; $L251: mov.u64 %r22,%r226; add.u64 %r87,%r22,20; $L253: .loc 1 483 10 ld.u16 %r246,[%r193]; st.u16 [%r22],%r246; .loc 1 482 17 add.u64 %r22,%r22,2; add.u64 %r193,%r193,2; setp.ne.u64 %r247,%r87,%r22; @ %r247 bra $L253; bra $L244; $L250: .loc 1 1588 9 cvta.const.u64 %r249,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r224; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r249; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r250,[%value_in]; } .loc 1 1588 6 setp.eq.u32 %r251,%r250,0; @ %r251 bra $L254; $L257: .loc 1 532 9 ld.u16 %r85,[%r224+18]; cvt.u16.u32 %r253,%r85; and.b16 %r252,%r253,32767; ld.u16 %r177,[%r225+18]; cvt.u16.u32 %r255,%r177; and.b16 %r254,%r255,32767; .loc 1 532 6 setp.eq.u16 %r257,%r252,32767; @ %r257 bra $L255; bra $L345; $L254: .loc 1 1588 35 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r225; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r249; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r260,[%value_in]; } .loc 1 1588 31 setp.ne.u32 %r261,%r260,0; @ %r261 bra $L257; $L264: mov.u64 %r186,%r226; add.u64 %r120,%r226,16; .loc 1 3843 9 mov.u16 %r268,0; bra $L258; $L255: mov.u64 %r114,%r224; add.u64 %r25,%r224,18; $L260: .loc 1 558 10 ld.u16 %r262,[%r114]; setp.ne.u16 %r263,%r262,0; @ %r263 bra $L259; .loc 1 556 17 add.u64 %r114,%r114,2; setp.ne.u64 %r264,%r25,%r114; @ %r264 bra $L260; bra $L346; $L307: mov.u64 %r27,%r225; add.u64 %r459,%r225,18; $L263: .loc 1 558 10 ld.u16 %r265,[%r27]; setp.ne.u16 %r266,%r265,0; @ %r266 bra $L309; .loc 1 556 17 add.u64 %r27,%r27,2; setp.ne.u64 %r267,%r27,%r459; @ %r267 bra $L263; bra $L264; $L258: .loc 1 3843 9 st.u16 [%r186],%r268; .loc 1 3842 21 add.u64 %r186,%r186,2; setp.ne.u64 %r269,%r120,%r186; @ %r269 bra $L258; .loc 1 3844 14 mov.u16 %r270,-16384; st.u16 [%r226+16],%r270; .loc 1 3850 14 mov.u16 %r271,32767; st.u16 [%r226+18],%r271; .loc 1 1593 7 bra $L244; $L345: .loc 1 532 6 setp.ne.u16 %r273,%r254,32767; @ %r273 bra $L266; .loc 1 541 12 mov.u32 %r59,0; add.u64 %r459,%r225,18; bra $L262; $L309: .loc 1 538 14 mov.u32 %r59,1; bra $L262; $L313: .loc 1 541 12 mov.u32 %r59,0; add.u64 %r459,%r225,18; $L262: mov.u64 %r141,%r225; mov.u64 %r28,%r225; $L268: .loc 1 558 10 ld.u16 %r274,[%r28]; setp.ne.u16 %r275,%r274,0; @ %r275 bra $L267; .loc 1 556 17 add.u64 %r28,%r28,2; setp.ne.u64 %r276,%r28,%r459; @ %r276 bra $L268; bra $L347; $L350: mov.u64 %r78,%r224; add.u64 %r198,%r78,18; $L271: .loc 1 558 10 ld.u16 %r277,[%r78]; setp.ne.u16 %r278,%r277,0; @ %r278 bra $L310; .loc 1 556 17 add.u64 %r78,%r78,2; setp.ne.u64 %r279,%r78,%r198; @ %r279 bra $L271; $L305: .loc 1 518 6 cvt.u16.u32 %r282,%r85; cvt.s32.s16 %r281,%r282; shr.u32 %r88,%r281,31; $L273: .loc 1 558 10 ld.u16 %r283,[%r141]; setp.ne.u16 %r284,%r283,0; @ %r284 bra $L311; .loc 1 556 17 add.u64 %r141,%r141,2; setp.ne.u64 %r285,%r459,%r141; @ %r285 bra $L273; bra $L348; $L311: .loc 1 516 12 mov.u32 %r110,0; $L272: .loc 1 1600 10 xor.b32 %r286,%r110,%r88; cvt.u16.u32 %r287,%r286; shl.b16 %r288,%r287,15; st.u16 [%r226+18],%r288; mov.u64 %r90,%r226; add.u64 %r148,%r226,18; .loc 1 581 10 mov.u16 %r289,0; $L275: st.u16 [%r90],%r289; .loc 1 580 17 add.u64 %r90,%r90,2; setp.ne.u64 %r290,%r90,%r148; @ %r290 bra $L275; .loc 1 582 6 ld.u16 %r292,[%r226+18]; or.b16 %r291,%r292,32767; st.u16 [%r226+18],%r291; .loc 1 1605 7 bra $L244; $L267: .loc 1 1607 6 setp.eq.u32 %r293,%r59,0; @ %r293 bra $L266; $L308: mov.u64 %r103,%r226; add.u64 %r74,%r103,20; .loc 1 467 10 mov.u16 %r294,0; $L276: st.u16 [%r103],%r294; .loc 1 466 17 add.u64 %r103,%r103,2; setp.ne.u64 %r295,%r74,%r103; @ %r295 bra $L276; bra $L244; $L266: .loc 1 1613 3 add.u64 %r458,%frame,54; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r224; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r458; call emovi,(%out_arg1,%out_arg2); } .loc 1 1614 3 add.u64 %r454,%frame,28; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r225; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r454; call emovi,(%out_arg1,%out_arg2); } .loc 1 1615 11 ld.u16 %r31,[%frame+56]; .loc 1 1616 11 ld.u16 %r32,[%frame+30]; .loc 1 1617 6 setp.eq.u32 %r302,%r32,0; @ %r302 bra $L277; .loc 1 1630 1 bra $L349; $L281: .loc 1 1621 7 add.u64 %r112,%r112,2; ld.u16 %r303,[%r112+-2]; setp.eq.u16 %r304,%r303,0; @ %r304 bra $L279; .loc 1 1623 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r307,[%value_in]; } cvt.s64.s32 %r308,%r307; .loc 1 1623 12 neg.s64 %r46,%r308; .loc 1 1632 9 ld.u16 %r170,[%frame+56]; .loc 1 1624 8 bra $L280; $L277: add.u64 %r112,%frame,32; add.u64 %r457,%frame,52; $L279: .loc 1 1619 21 setp.ne.u64 %r311,%r457,%r112; @ %r311 bra $L281; mov.u64 %r47,%r226; add.u64 %r118,%r47,20; .loc 1 467 10 mov.u16 %r312,0; $L282: st.u16 [%r47],%r312; .loc 1 466 17 add.u64 %r47,%r47,2; setp.ne.u64 %r313,%r47,%r118; @ %r313 bra $L282; bra $L244; $L349: .loc 1 1616 7 cvt.u16.u32 %r314,%r32; cvt.u64.u16 %r46,%r314; mov.u32 %r170,%r31; $L280: .loc 1 1615 7 cvt.u16.u32 %r315,%r31; cvt.u64.u16 %r45,%r315; .loc 1 1632 6 setp.eq.u32 %r316,%r170,0; @ %r316 bra $L283; .loc 1 1650 1 bra $L284; $L286: .loc 1 1636 7 add.u64 %r100,%r100,2; ld.u16 %r317,[%r100+-2]; setp.eq.u16 %r318,%r317,0; @ %r318 bra $L285; .loc 1 1638 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r458; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r321,[%value_in]; } cvt.s64.s32 %r322,%r321; .loc 1 1638 12 sub.u64 %r45,%r45,%r322; .loc 1 1639 8 bra $L284; $L283: add.u64 %r100,%frame,58; add.u64 %r199,%frame,78; $L285: .loc 1 1634 21 setp.ne.u64 %r325,%r100,%r199; @ %r325 bra $L286; .loc 1 1642 10 ld.u16 %r327,[%frame+54]; ld.u16 %r328,[%frame+28]; set.u32.ne.u16 %r329,%r327,%r328; neg.s32 %r330,%r329; cvt.u16.u32 %r326,%r330; shl.b16 %r331,%r326,15; st.u16 [%r226+18],%r331; mov.u64 %r212,%r226; add.u64 %r107,%r226,18; .loc 1 581 10 mov.u16 %r332,0; $L287: st.u16 [%r212],%r332; .loc 1 580 17 add.u64 %r212,%r212,2; setp.ne.u64 %r333,%r107,%r212; @ %r333 bra $L287; .loc 1 582 6 ld.u16 %r335,[%r226+18]; or.b16 %r334,%r335,32767; st.u16 [%r226+18],%r334; .loc 1 1648 7 bra $L244; $L284: .loc 1 1063 8 ld.u16 %r336,[%frame+28]; st.u16 [%r227+52],%r336; .loc 1 1064 8 ld.u16 %r337,[%frame+30]; st.u16 [%r227+54],%r337; add.u64 %r144,%r227,56; add.u64 %r43,%r227,78; mov.u64 %r205,%r144; .loc 1 1068 12 mov.u16 %r338,0; $L288: st.u16 [%r205],%r338; .loc 1 1066 17 add.u64 %r205,%r205,2; setp.ne.u64 %r339,%r43,%r205; @ %r339 bra $L288; .loc 1 1070 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; call eshdn1,(%out_arg1); } .loc 1 1071 9 ld.u16 %r127,[%frame+60]; .loc 1 1078 18 cvt.u16.u32 %r342,%r127; cvt.u64.u16 %r134,%r342; cvt.u64.u32 %r343,%r127; shl.b64 %r345,%r343,16; sub.u64 %r135,%r345,%r343; add.u64 %r456,%frame,32; add.u64 %r457,%frame,52; add.u64 %r451,%frame,4; add.u64 %r453,%frame,26; add.u64 %r452,%frame,24; add.u64 %r455,%frame,30; .loc 1 988 9 mov.u32 %r462,0; .loc 1 986 5 add.u64 %r463,%frame,78; add.u64 %r464,%frame,2; $L301: .loc 1 1075 16 ld.u16 %r347,[%frame+32]; .loc 1 1075 40 shl.b64 %r348,%r347,16; .loc 1 1075 52 ld.u16 %r349,[%frame+34]; .loc 1 1075 12 add.u64 %r133,%r348,%r349; .loc 1 1078 10 setp.gt.u64 %r350,%r133,%r135; @ %r350 bra $L312; .loc 1 1081 15 div.u64 %r352,%r133,%r134; .loc 1 1081 8 cvt.u16.u64 %r355,%r352; cvt.u32.u16 %r137,%r355; bra $L289; $L312: .loc 1 1079 8 mov.u32 %r137,65535; $L289: .loc 1 1090 7 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r137; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r458; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r95,%r451; mov.u64 %r63,%r456; mov.u64 %r155,%r456; mov.u64 %r158,%r451; $L293: .loc 1 796 10 ld.u16 %r361,[%r158]; ld.u16 %r362,[%r155]; setp.eq.u16 %r363,%r361,%r362; @ %r363 bra $L290; .loc 1 802 6 setp.gt.u16 %r366,%r361,%r362; @ %r366 bra $L291; bra $L292; $L290: .loc 1 794 17 add.u64 %r158,%r158,2; add.u64 %r155,%r155,2; setp.ne.u64 %r367,%r453,%r158; @ %r367 bra $L293; bra $L292; $L291: .loc 1 1094 10 cvt.u16.u32 %r369,%r137; add.u16 %r368,%r369,-1; cvt.u32.u16 %r138,%r368; .loc 1 988 9 mov.u32 %r216,%r462; .loc 1 986 5 mov.u64 %r163,%r463; .loc 1 987 5 mov.u64 %r164,%r452; $L294: .loc 1 991 11 ld.u16 %r370,[%r164]; .loc 1 991 55 cvt.u64.u32 %r371,%r216; .loc 1 991 9 sub.u64 %r372,%r370,%r371; .loc 1 991 34 ld.u16 %r373,[%r163]; .loc 1 991 9 sub.u64 %r160,%r372,%r373; .loc 1 992 10 shr.u64 %r374,%r160,16; cvt.u32.u64 %r375,%r374; and.b32 %r216,%r375,1; .loc 1 996 12 st.u16 [%r164],%r160; .loc 1 997 7 add.u64 %r163,%r163,-2; .loc 1 998 7 add.u64 %r164,%r164,-2; .loc 1 989 17 setp.ne.u64 %r378,%r164,%r464; @ %r378 bra $L294; mov.u64 %r71,%r456; $L297: .loc 1 796 10 ld.u16 %r379,[%r95]; ld.u16 %r380,[%r71]; setp.eq.u16 %r381,%r379,%r380; @ %r381 bra $L295; .loc 1 802 6 setp.gt.u16 %r384,%r379,%r380; @ %r384 bra $L296; .loc 1 1094 10 mov.u32 %r137,%r138; bra $L292; $L295: .loc 1 794 17 add.u64 %r95,%r95,2; add.u64 %r71,%r71,2; setp.ne.u64 %r385,%r453,%r95; @ %r385 bra $L297; .loc 1 1094 10 mov.u32 %r137,%r138; bra $L292; $L296: .loc 1 1098 14 cvt.u16.u32 %r387,%r137; add.u16 %r386,%r387,-2; cvt.u32.u16 %r137,%r386; .loc 1 988 9 mov.u32 %r218,%r462; .loc 1 986 5 mov.u64 %r175,%r463; .loc 1 987 5 mov.u64 %r176,%r452; $L298: .loc 1 991 11 ld.u16 %r388,[%r176]; .loc 1 991 55 cvt.u64.u32 %r389,%r218; .loc 1 991 9 sub.u64 %r390,%r388,%r389; .loc 1 991 34 ld.u16 %r391,[%r175]; .loc 1 991 9 sub.u64 %r172,%r390,%r391; .loc 1 992 10 shr.u64 %r392,%r172,16; cvt.u32.u64 %r393,%r392; and.b32 %r218,%r393,1; .loc 1 996 12 st.u16 [%r176],%r172; .loc 1 997 7 add.u64 %r175,%r175,-2; .loc 1 998 7 add.u64 %r176,%r176,-2; .loc 1 989 17 setp.ne.u64 %r396,%r176,%r464; @ %r396 bra $L298; $L292: .loc 1 988 9 mov.u32 %r220,%r462; .loc 1 986 5 mov.u64 %r191,%r452; .loc 1 987 5 mov.u64 %r192,%r457; $L299: .loc 1 991 11 ld.u16 %r397,[%r192]; .loc 1 991 55 cvt.u64.u32 %r398,%r220; .loc 1 991 9 sub.u64 %r399,%r397,%r398; .loc 1 991 34 ld.u16 %r400,[%r191]; .loc 1 991 9 sub.u64 %r188,%r399,%r400; .loc 1 992 10 shr.u64 %r401,%r188,16; cvt.u32.u64 %r402,%r401; and.b32 %r220,%r402,1; .loc 1 996 12 st.u16 [%r192],%r188; .loc 1 997 7 add.u64 %r191,%r191,-2; .loc 1 998 7 add.u64 %r192,%r192,-2; .loc 1 989 17 setp.ne.u64 %r406,%r192,%r455; @ %r406 bra $L299; .loc 1 1121 16 cvt.u16.u32 %r407,%r137; st.u16 [%r144],%r407; mov.u64 %r50,%r456; .loc 1 918 5 mov.u64 %r179,%r456; $L300: .loc 1 922 7 add.u64 %r179,%r179,2; .loc 1 922 10 ld.u16 %r408,[%r179]; st.u16 [%r50],%r408; .loc 1 921 17 add.u64 %r50,%r50,2; setp.ne.u64 %r411,%r179,%r457; @ %r411 bra $L300; .loc 1 924 6 mov.u16 %r412,0; st.u16 [%frame+52],%r412; .loc 1 1072 17 add.u64 %r144,%r144,2; setp.ne.u64 %r413,%r43,%r144; @ %r413 bra $L301; mov.u64 %r68,%r454; .loc 1 1126 5 mov.u32 %r140,0; $L302: .loc 1 1129 9 ld.u16 %r415,[%r63]; cvt.u16.u32 %r416,%r140; or.b16 %r414,%r415,%r416; cvt.u32.u16 %r140,%r414; .loc 1 1127 17 add.u64 %r63,%r63,2; setp.ne.u64 %r417,%r458,%r63; @ %r417 bra $L302; .loc 1 1131 6 cvt.u16.u32 %r419,%r140; set.u32.ne.u16 %r418,%r419,0; neg.s32 %r221,%r418; add.u64 %r73,%r227,52; $L303: .loc 1 1135 12 ld.u16 %r422,[%r73]; st.u16 [%r68],%r422; .loc 1 1134 17 add.u64 %r73,%r73,2; add.u64 %r68,%r68,2; setp.ne.u64 %r423,%r458,%r68; @ %r423 bra $L303; .loc 1 1654 12 sub.u64 %r430,%r46,%r45; .loc 1 1654 6 add.u64 %r431,%r430,16383; .loc 1 1655 3 mov.u32 %r428,64; mov.u32 %r426,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r221; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r426; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r431; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r428; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r227; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1657 6 ld.u16 %r434,[%frame+54]; ld.u16 %r435,[%frame+28]; set.u32.ne.u16 %r436,%r434,%r435; neg.s32 %r437,%r436; cvt.u16.u32 %r433,%r437; neg.s16 %r438,%r433; st.u16 [%frame+28],%r438; .loc 1 1661 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r454; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r226; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L244; $L348: .loc 1 518 6 cvt.u16.u32 %r444,%r177; cvt.s32.s16 %r443,%r444; shr.u32 %r110,%r443,31; bra $L272; $L310: .loc 1 516 12 mov.u32 %r88,0; bra $L273; $L347: .loc 1 553 6 setp.ne.u16 %r446,%r252,32767; @ %r446 bra $L305; bra $L350; $L346: .loc 1 532 6 setp.eq.u16 %r448,%r254,32767; @ %r448 bra $L307; bra $L308; $L259: setp.eq.u16 %r450,%r254,32767; @ ! %r450 bra $L266; bra $L313; $L244: .loc 1 1662 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN FUNCTION DEF: emul .func emul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,80; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r33; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r75; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r85; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r98; .reg .u64 %r102; .reg .u32 %r104; .reg .u32 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u32 %r110; .reg .u64 %r113; .reg .u64 %r115; .reg .u32 %r117; .reg .u64 %r118; .reg .u32 %r121; .reg .u32 %r125; .reg .u64 %r132; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r138; .reg .u64 %r139; .reg .u32 %r141; .reg .u64 %r143; .reg .u64 %r149; .reg .u64 %r151; .reg .u32 %r156; .reg .u64 %r162; .reg .u64 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u16 %r167; .reg .u16 %r168; .reg .pred %r170; .reg .u16 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u16 %r174; .reg .pred %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .pred %r179; .reg .u16 %r180; .reg .pred %r181; .reg .pred %r182; .reg .u16 %r183; .reg .pred %r184; .reg .u16 %r185; .reg .pred %r186; .reg .pred %r187; .reg .u16 %r188; .reg .pred %r189; .reg .pred %r190; .reg .u16 %r191; .reg .pred %r192; .reg .u16 %r193; .reg .u16 %r194; .reg .u16 %r195; .reg .pred %r196; .reg .pred %r197; .reg .u16 %r198; .reg .pred %r199; .reg .u16 %r200; .reg .pred %r201; .reg .pred %r202; .reg .u16 %r203; .reg .pred %r204; .reg .pred %r205; .reg .u32 %r207; .reg .u16 %r208; .reg .u32 %r210; .reg .u16 %r211; .reg .u16 %r212; .reg .pred %r213; .reg .u16 %r214; .reg .pred %r215; .reg .pred %r216; .reg .u32 %r218; .reg .u16 %r219; .reg .u32 %r220; .reg .u16 %r221; .reg .u16 %r222; .reg .u16 %r223; .reg .pred %r224; .reg .u16 %r225; .reg .u16 %r226; .reg .pred %r233; .reg .u16 %r234; .reg .pred %r235; .reg .u32 %r238; .reg .u64 %r239; .reg .pred %r242; .reg .u16 %r243; .reg .pred %r244; .reg .u16 %r245; .reg .u16 %r246; .reg .pred %r247; .reg .u16 %r248; .reg .pred %r249; .reg .u32 %r252; .reg .u64 %r253; .reg .pred %r256; .reg .u16 %r257; .reg .pred %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .pred %r262; .reg .pred %r263; .reg .u16 %r264; .reg .u16 %r265; .reg .u16 %r266; .reg .u64 %r271; .reg .u64 %r272; .reg .u64 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u32 %r276; .reg .pred %r279; .reg .u16 %r280; .reg .pred %r281; .reg .u16 %r282; .reg .pred %r285; .reg .u16 %r286; .reg .pred %r287; .reg .u32 %r290; .reg .u32 %r292; .reg .u64 %r294; .reg .u64 %r295; .reg .u16 %r297; .reg .u16 %r298; .reg .u16 %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .u16 %r302; .reg .u16 %r306; .reg .pred %r307; .reg .u64 %r309; .reg .u32 %r310; .reg .pred %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u16 %r314; .reg .u16 %r315; .reg .pred %r317; .reg .u64 %r319; .reg .u32 %r320; .reg .pred %r321; .reg .u16 %r322; .reg .u16 %r323; .reg .pred %r325; .reg .u16 %r326; .reg .u16 %r327; .reg .pred %r328; .reg .u16 %r329; .reg .u16 %r330; .reg .pred %r332; .reg .pred %r334; .reg .pred %r336; .reg .pred %r338; .reg .u64 %r339; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r346; mov.u64 %r162,%ar0; mov.u64 %r163,%ar1; mov.u64 %r164,%ar2; mov.u64 %r165,%ar3; ld.u16 %r168,[%r162+18]; and.b16 %r167,%r168,32767; .loc 1 553 6 setp.ne.u16 %r170,%r167,32767; @ %r170 bra $L352; mov.u64 %r75,%r162; add.u64 %r341,%r162,18; mov.u64 %r28,%r162; $L354: .loc 1 558 10 ld.u16 %r171,[%r28]; setp.ne.u16 %r172,%r171,0; @ %r172 bra $L353; .loc 1 556 17 add.u64 %r28,%r28,2; setp.ne.u64 %r173,%r28,%r341; @ %r173 bra $L354; bra $L352; $L353: mov.u64 %r69,%r164; add.u64 %r113,%r69,20; $L355: .loc 1 483 10 ld.u16 %r174,[%r75]; st.u16 [%r69],%r174; .loc 1 482 17 add.u64 %r69,%r69,2; add.u64 %r75,%r75,2; setp.ne.u64 %r175,%r69,%r113; @ %r175 bra $L355; bra $L351; $L352: .loc 1 553 9 ld.u16 %r110,[%r163+18]; cvt.u16.u32 %r177,%r110; and.b16 %r176,%r177,32767; cvt.u32.u16 %r141,%r176; .loc 1 553 6 setp.ne.u16 %r179,%r176,32767; @ %r179 bra $L357; mov.u64 %r71,%r163; add.u64 %r342,%r163,18; mov.u64 %r89,%r163; $L359: .loc 1 558 10 ld.u16 %r180,[%r89]; setp.ne.u16 %r181,%r180,0; @ %r181 bra $L358; .loc 1 556 17 add.u64 %r89,%r89,2; setp.ne.u64 %r182,%r342,%r89; @ %r182 bra $L359; bra $L459; $L358: mov.u64 %r108,%r164; add.u64 %r107,%r163,20; $L361: .loc 1 483 10 ld.u16 %r183,[%r71]; st.u16 [%r108],%r183; .loc 1 482 17 add.u64 %r71,%r71,2; add.u64 %r108,%r108,2; setp.ne.u64 %r184,%r71,%r107; @ %r184 bra $L361; bra $L351; $L409: mov.u64 %r70,%r162; add.u64 %r341,%r162,18; $L363: .loc 1 558 10 ld.u16 %r185,[%r70]; setp.ne.u16 %r186,%r185,0; @ %r186 bra $L362; .loc 1 556 17 add.u64 %r70,%r70,2; setp.ne.u64 %r187,%r70,%r341; @ %r187 bra $L363; bra $L460; $L406: mov.u64 %r143,%r163; $L366: .loc 1 558 10 ld.u16 %r188,[%r143]; setp.ne.u16 %r189,%r188,0; @ %r189 bra $L365; .loc 1 556 17 add.u64 %r143,%r143,2; setp.ne.u64 %r190,%r143,%r342; @ %r190 bra $L366; bra $L461; $L404: mov.u64 %r65,%r164; add.u64 %r91,%r164,16; .loc 1 3843 9 mov.u16 %r191,0; $L368: st.u16 [%r65],%r191; .loc 1 3842 21 add.u64 %r65,%r65,2; setp.ne.u64 %r192,%r91,%r65; @ %r192 bra $L368; .loc 1 3844 14 mov.u16 %r193,-16384; st.u16 [%r164+16],%r193; .loc 1 3850 14 mov.u16 %r194,32767; st.u16 [%r164+18],%r194; .loc 1 1699 7 bra $L351; $L405: mov.u64 %r60,%r162; $L371: .loc 1 558 10 ld.u16 %r195,[%r60]; setp.ne.u16 %r196,%r195,0; @ %r196 bra $L410; .loc 1 556 17 add.u64 %r60,%r60,2; setp.ne.u64 %r197,%r60,%r341; @ %r197 bra $L371; bra $L372; $L410: mov.u32 %r50,32767; $L370: .loc 1 532 6 cvt.u16.u32 %r198,%r141; setp.ne.u16 %r199,%r198,32767; @ %r199 bra $L373; add.u64 %r342,%r163,18; $L407: mov.u64 %r88,%r163; $L374: .loc 1 558 10 ld.u16 %r200,[%r88]; setp.ne.u16 %r201,%r200,0; @ %r201 bra $L373; .loc 1 556 17 add.u64 %r88,%r88,2; setp.ne.u64 %r202,%r342,%r88; @ %r202 bra $L374; bra $L462; $L372: mov.u64 %r98,%r162; $L377: .loc 1 558 10 ld.u16 %r203,[%r98]; setp.ne.u16 %r204,%r203,0; @ %r204 bra $L411; .loc 1 556 17 add.u64 %r98,%r98,2; setp.ne.u64 %r205,%r98,%r341; @ %r205 bra $L377; bra $L463; $L403: .loc 1 518 6 cvt.u16.u32 %r208,%r42; cvt.s32.s16 %r207,%r208; shr.u32 %r106,%r207,31; bra $L379; $L463: cvt.u16.u32 %r211,%r42; cvt.s32.s16 %r210,%r211; shr.u32 %r106,%r210,31; bra $L376; $L411: .loc 1 516 12 mov.u32 %r106,0; $L376: .loc 1 553 6 cvt.u16.u32 %r212,%r141; setp.ne.u16 %r213,%r212,32767; @ %r213 bra $L380; add.u64 %r342,%r163,18; $L379: mov.u64 %r59,%r163; $L382: .loc 1 558 10 ld.u16 %r214,[%r59]; setp.ne.u16 %r215,%r214,0; @ %r215 bra $L412; .loc 1 556 17 add.u64 %r59,%r59,2; setp.ne.u64 %r216,%r59,%r342; @ %r216 bra $L382; $L380: .loc 1 518 6 cvt.u16.u32 %r219,%r110; cvt.s32.s16 %r218,%r219; shr.u32 %r104,%r218,31; bra $L381; $L412: .loc 1 516 12 mov.u32 %r104,0; $L381: .loc 1 1706 10 xor.b32 %r220,%r104,%r106; cvt.u16.u32 %r221,%r220; shl.b16 %r222,%r221,15; st.u16 [%r164+18],%r222; mov.u64 %r109,%r164; add.u64 %r80,%r164,18; .loc 1 581 10 mov.u16 %r223,0; $L383: st.u16 [%r109],%r223; .loc 1 580 17 add.u64 %r109,%r109,2; setp.ne.u64 %r224,%r80,%r109; @ %r224 bra $L383; .loc 1 582 6 ld.u16 %r226,[%r164+18]; or.b16 %r225,%r226,32767; st.u16 [%r164+18],%r225; .loc 1 1711 7 bra $L351; $L373: .loc 1 1714 3 add.u64 %r344,%frame,52; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r162; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r344; call emovi,(%out_arg1,%out_arg2); } .loc 1 1715 3 add.u64 %r343,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r163; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r343; call emovi,(%out_arg1,%out_arg2); } .loc 1 1716 11 ld.u16 %r29,[%frame+54]; .loc 1 1717 11 ld.u16 %r30,[%frame+28]; .loc 1 1718 6 setp.eq.u32 %r233,%r29,0; @ %r233 bra $L384; .loc 1 1731 1 bra $L464; $L388: .loc 1 1722 7 add.u64 %r79,%r79,2; ld.u16 %r234,[%r79+-2]; setp.eq.u16 %r235,%r234,0; @ %r235 bra $L386; .loc 1 1724 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r344; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r238,[%value_in]; } cvt.s64.s32 %r239,%r238; .loc 1 1724 12 neg.s64 %r39,%r239; .loc 1 1733 9 ld.u16 %r125,[%frame+28]; .loc 1 1725 8 bra $L387; $L384: add.u64 %r79,%frame,56; add.u64 %r64,%frame,76; $L386: .loc 1 1720 21 setp.ne.u64 %r242,%r64,%r79; @ %r242 bra $L388; mov.u64 %r93,%r164; add.u64 %r151,%r93,20; .loc 1 467 10 mov.u16 %r243,0; $L389: st.u16 [%r93],%r243; .loc 1 466 17 add.u64 %r93,%r93,2; setp.ne.u64 %r244,%r93,%r151; @ %r244 bra $L389; bra $L351; $L464: .loc 1 1716 7 cvt.u16.u32 %r245,%r29; cvt.u64.u16 %r39,%r245; mov.u32 %r125,%r30; $L387: .loc 1 1717 7 cvt.u16.u32 %r246,%r30; cvt.u64.u16 %r40,%r246; .loc 1 1733 6 setp.eq.u32 %r247,%r125,0; @ %r247 bra $L390; .loc 1 1746 1 bra $L391; $L393: .loc 1 1737 7 add.u64 %r115,%r115,2; ld.u16 %r248,[%r115+-2]; setp.eq.u16 %r249,%r248,0; @ %r249 bra $L392; .loc 1 1739 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r343; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r252,[%value_in]; } cvt.s64.s32 %r253,%r252; .loc 1 1739 12 sub.u64 %r40,%r40,%r253; .loc 1 1153 12 ld.u16 %r125,[%frame+28]; .loc 1 1740 8 bra $L391; $L390: add.u64 %r115,%frame,30; add.u64 %r102,%frame,50; $L392: .loc 1 1735 21 setp.ne.u64 %r256,%r102,%r115; @ %r256 bra $L393; mov.u64 %r118,%r164; add.u64 %r149,%r118,20; .loc 1 467 10 mov.u16 %r257,0; $L394: st.u16 [%r118],%r257; .loc 1 466 17 add.u64 %r118,%r118,2; setp.ne.u64 %r258,%r118,%r149; @ %r258 bra $L394; bra $L351; $L391: .loc 1 1152 12 ld.u16 %r259,[%frame+26]; st.u16 [%r165+52],%r259; .loc 1 1153 12 cvt.u16.u32 %r260,%r125; st.u16 [%r165+54],%r260; add.u64 %r85,%r165,56; mov.u64 %r33,%r85; add.u64 %r339,%r165,78; .loc 1 1155 14 mov.u16 %r261,0; $L395: st.u16 [%r33],%r261; .loc 1 1154 17 add.u64 %r33,%r33,2; setp.ne.u64 %r262,%r339,%r33; @ %r262 bra $L395; .loc 1 959 5 add.u64 %r92,%r165,76; .loc 1 1157 5 mov.u32 %r121,0; .loc 1 1158 5 add.u64 %r61,%frame,76; add.u64 %r345,%frame,56; add.u64 %r346,%frame,2; $L400: .loc 1 1162 11 ld.u16 %r117,[%r61]; .loc 1 1164 4 add.u64 %r61,%r61,-2; .loc 1 1162 10 setp.ne.u32 %r263,%r117,0; @ %r263 bra $L396; $L399: .loc 1 1171 9 ld.u16 %r265,[%r165+76]; cvt.u16.u32 %r266,%r121; or.b16 %r264,%r265,%r266; cvt.u32.u16 %r121,%r264; .loc 1 938 5 mov.u64 %r139,%r339; .loc 1 937 5 mov.u64 %r138,%r92; bra $L397; $L396: .loc 1 1168 4 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r117; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r343; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 959 5 mov.u64 %r136,%r92; .loc 1 960 9 mov.u32 %r156,0; .loc 1 958 5 add.u64 %r135,%frame,24; $L398: .loc 1 963 11 ld.u16 %r271,[%r135]; .loc 1 963 34 ld.u16 %r272,[%r136]; .loc 1 963 32 add.u64 %r273,%r271,%r272; .loc 1 963 55 cvt.u64.u32 %r274,%r156; .loc 1 963 9 add.u64 %r132,%r273,%r274; .loc 1 964 10 shr.u64 %r275,%r132,16; cvt.u32.u64 %r276,%r275; and.b32 %r156,%r276,1; .loc 1 968 12 st.u16 [%r136],%r132; .loc 1 969 7 add.u64 %r135,%r135,-2; .loc 1 970 7 add.u64 %r136,%r136,-2; .loc 1 961 17 setp.ne.u64 %r279,%r135,%r346; @ %r279 bra $L398; bra $L399; $L397: .loc 1 941 12 add.u64 %r138,%r138,-2; add.u64 %r139,%r139,-2; ld.u16 %r280,[%r138]; st.u16 [%r139],%r280; .loc 1 940 17 setp.ne.u64 %r281,%r85,%r138; @ %r281 bra $L397; .loc 1 943 10 mov.u16 %r282,0; st.u16 [%r165+56],%r282; .loc 1 1160 21 setp.ne.u64 %r285,%r61,%r345; @ %r285 bra $L400; add.u64 %r49,%r165,52; mov.u64 %r43,%r343; $L401: .loc 1 1176 10 ld.u16 %r286,[%r49]; st.u16 [%r43],%r286; .loc 1 1175 17 add.u64 %r49,%r49,2; add.u64 %r43,%r43,2; setp.ne.u64 %r287,%r43,%r344; @ %r287 bra $L401; .loc 1 1751 12 add.u64 %r294,%r39,%r40; .loc 1 1751 6 add.u64 %r295,%r294,-16382; .loc 1 1752 3 mov.u32 %r292,64; mov.u32 %r290,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r343; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r121; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r290; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r295; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r292; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r165; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1754 6 ld.u16 %r298,[%frame+52]; ld.u16 %r299,[%frame+26]; set.u32.ne.u16 %r300,%r298,%r299; neg.s32 %r301,%r300; cvt.u16.u32 %r297,%r301; neg.s16 %r302,%r297; st.u16 [%frame+26],%r302; .loc 1 1758 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r343; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r164; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L351; $L462: .loc 1 553 6 cvt.u16.u32 %r306,%r50; setp.ne.u16 %r307,%r306,32767; @ %r307 bra $L403; mov.u32 %r141,%r50; add.u64 %r341,%r162,18; bra $L372; $L461: .loc 1 1695 26 cvta.const.u64 %r309,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r162; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r309; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r310,[%value_in]; } .loc 1 1695 22 setp.eq.u32 %r311,%r310,0; @ %r311 bra $L404; .loc 1 553 9 ld.u16 %r110,[%r163+18]; cvt.u16.u32 %r313,%r110; and.b16 %r312,%r313,32767; cvt.u32.u16 %r141,%r312; .loc 1 532 9 ld.u16 %r42,[%r162+18]; cvt.u16.u32 %r315,%r42; and.b16 %r314,%r315,32767; cvt.u32.u16 %r50,%r314; .loc 1 532 6 setp.eq.u16 %r317,%r314,32767; @ ! %r317 bra $L370; add.u64 %r341,%r162,18; bra $L405; $L460: .loc 1 1694 23 cvta.const.u64 %r319,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r163; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r319; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r320,[%value_in]; } .loc 1 1694 19 setp.eq.u32 %r321,%r320,0; @ %r321 bra $L404; .loc 1 532 9 ld.u16 %r110,[%r163+18]; cvt.u16.u32 %r323,%r110; and.b16 %r322,%r323,32767; cvt.u32.u16 %r141,%r322; .loc 1 532 6 setp.eq.u16 %r325,%r322,32767; @ ! %r325 bra $L465; add.u64 %r342,%r163,18; bra $L406; $L465: .loc 1 532 9 ld.u16 %r42,[%r162+18]; .loc 1 532 6 cvt.u16.u32 %r327,%r42; and.b16 %r326,%r327,32767; setp.eq.u16 %r328,%r326,32767; @ %r328 bra $L405; bra $L373; $L365: .loc 1 532 9 ld.u16 %r42,[%r162+18]; cvt.u16.u32 %r330,%r42; and.b16 %r329,%r330,32767; cvt.u32.u16 %r141,%r329; .loc 1 532 6 setp.eq.u16 %r332,%r329,32767; @ ! %r332 bra $L466; add.u64 %r341,%r162,18; bra $L405; $L466: mov.u32 %r50,%r141; bra $L407; $L467: .loc 1 532 9 ld.u16 %r42,[%r162+18]; bra $L405; $L362: .loc 1 532 6 setp.eq.u16 %r334,%r176,32767; @ ! %r334 bra $L467; add.u64 %r342,%r163,18; bra $L406; $L459: setp.eq.u16 %r336,%r167,32767; @ ! %r336 bra $L406; bra $L409; $L357: setp.eq.u16 %r338,%r167,32767; @ %r338 bra $L409; bra $L373; $L351: .loc 1 1759 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: _ldtoa_r .visible .func (.param .u64 %value_out) _ldtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,352; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r26; .reg .u32 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r39; .reg .u64 %r42; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r48; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r70; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r77; .reg .u64 %r80; .reg .u64 %r81; .reg .u32 %r83; .reg .u64 %r85; .reg .u64 %r86; .reg .u32 %r89; .reg .u64 %r96; .reg .u64 %r100; .reg .u32 %r102; .reg .u64 %r108; .reg .u64 %r110; .reg .u64 %r112; .reg .u32 %r114; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r139; .reg .u64 %r141; .reg .u32 %r144; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r154; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r162; .reg .u32 %r169; .reg .u64 %r174; .reg .u32 %r176; .reg .u64 %r183; .reg .u32 %r185; .reg .u32 %r188; .reg .u32 %r189; .reg .u32 %r191; .reg .u64 %r196; .reg .u32 %r198; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r204; .reg .u64 %r214; .reg .u32 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r228; .reg .u64 %r231; .reg .u64 %r233; .reg .u32 %r235; .reg .u64 %r236; .reg .u64 %r239; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r256; .reg .u64 %r257; .reg .u64 %r262; .reg .u64 %r264; .reg .u64 %r265; .reg .u64 %r267; .reg .u64 %r269; .reg .u64 %r271; .reg .u64 %r272; .reg .u64 %r276; .reg .u64 %r279; .reg .u64 %r281; .reg .u64 %r283; .reg .u64 %r294; .reg .u64 %r298; .reg .u32 %r302; .reg .u32 %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r307; .reg .u32 %r312; .reg .u64 %r314; .reg .u64 %r318; .reg .u32 %r321; .reg .u64 %r323; .reg .u32 %r327; .reg .u64 %r328; .reg .u32 %r329; .reg .u64 %r338; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r350; .reg .u64 %r352; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r363; .reg .u64 %r366; .reg .u64 %r367; .reg .u32 %r368; .reg .u32 %r373; .reg .u64 %r374; .reg .u32 %r375; .reg .u64 %r382; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r390; .reg .u32 %r395; .reg .u64 %r396; .reg .u32 %r397; .reg .u32 %r398; .reg .u32 %r403; .reg .u64 %r404; .reg .u32 %r405; .reg .u32 %r410; .reg .u64 %r411; .reg .u64 %r418; .reg .u64 %r421; .reg .u64 %r422; .reg .u64 %r423; .reg .u32 %r424; .reg .u32 %r429; .reg .u64 %r430; .reg .u32 %r431; .reg .u32 %r436; .reg .u64 %r437; .reg .u64 %r440; .reg .u64 %r446; .reg .u64 %r452; .reg .u64 %r454; .reg .u64 %r457; .reg .u64 %r461; .reg .u64 %r469; .reg .u64 %r470; .reg .u64 %r475; .reg .u64 %r482; .reg .u64 %r492; .reg .u32 %r493; .reg .u64 %r494; .reg .u64 %r496; .reg .u32 %r503; .reg .u32 %r505; .reg .u64 %r507; .reg .f64 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u64 %r513; .reg .u32 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u32 %r540; .reg .u32 %r541; .reg .u64 %r544; .reg .u64 %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u16 %r553; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r557; .reg .u16 %r558; .reg .pred %r559; .reg .pred %r560; .reg .u16 %r563; .reg .pred %r564; .reg .pred %r565; .reg .u32 %r566; .reg .u16 %r567; .reg .pred %r568; .reg .u16 %r569; .reg .pred %r570; .reg .u16 %r571; .reg .u16 %r574; .reg .pred %r575; .reg .pred %r576; .reg .u16 %r577; .reg .pred %r578; .reg .pred %r579; .reg .pred %r580; .reg .u64 %r582; .reg .u32 %r584; .reg .u64 %r587; .reg .u32 %r589; .reg .u16 %r591; .reg .pred %r592; .reg .u64 %r594; .reg .u32 %r596; .reg .u32 %r601; .reg .pred %r602; .reg .pred %r603; .reg .u16 %r604; .reg .pred %r605; .reg .u16 %r606; .reg .u16 %r613; .reg .pred %r614; .reg .u16 %r615; .reg .u16 %r616; .reg .u32 %r617; .reg .pred %r618; .reg .u16 %r619; .reg .pred %r620; .reg .u32 %r621; .reg .u16 %r622; .reg .pred %r623; .reg .pred %r624; .reg .pred %r625; .reg .u32 %r626; .reg .u32 %r627; .reg .u64 %r629; .reg .u16 %r631; .reg .pred %r632; .reg .u64 %r634; .reg .u64 %r635; .reg .u32 %r636; .reg .u32 %r638; .reg .u32 %r639; .reg .u64 %r640; .reg .u64 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u16 %r644; .reg .u16 %r645; .reg .u16 %r646; .reg .u16 %r647; .reg .pred %r648; .reg .u16 %r649; .reg .u16 %r650; .reg .pred %r651; .reg .u16 %r652; .reg .u16 %r653; .reg .pred %r654; .reg .u16 %r655; .reg .pred %r656; .reg .pred %r657; .reg .u16 %r658; .reg .pred %r659; .reg .pred %r660; .reg .u16 %r668; .reg .u16 %r669; .reg .pred %r671; .reg .u16 %r672; .reg .pred %r673; .reg .u16 %r674; .reg .u16 %r675; .reg .pred %r676; .reg .u16 %r677; .reg .u16 %r678; .reg .pred %r679; .reg .u16 %r680; .reg .pred %r681; .reg .pred %r682; .reg .u32 %r685; .reg .u32 %r687; .reg .u16 %r690; .reg .u16 %r691; .reg .pred %r692; .reg .pred %r695; .reg .pred %r696; .reg .u16 %r697; .reg .u16 %r698; .reg .pred %r699; .reg .u16 %r700; .reg .pred %r701; .reg .pred %r702; .reg .u16 %r703; .reg .pred %r704; .reg .u16 %r705; .reg .pred %r706; .reg .u16 %r707; .reg .u16 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u16 %r711; .reg .u16 %r712; .reg .pred %r713; .reg .u16 %r715; .reg .u16 %r717; .reg .u16 %r718; .reg .pred %r721; .reg .u16 %r724; .reg .pred %r725; .reg .pred %r726; .reg .u16 %r727; .reg .pred %r728; .reg .u16 %r729; .reg .u16 %r730; .reg .pred %r731; .reg .u16 %r732; .reg .u16 %r733; .reg .pred %r734; .reg .u16 %r735; .reg .u16 %r736; .reg .u16 %r737; .reg .pred %r738; .reg .u64 %r739; .reg .u64 %r740; .reg .u64 %r741; .reg .u64 %r742; .reg .u64 %r743; .reg .u32 %r744; .reg .pred %r748; .reg .u64 %r749; .reg .u64 %r750; .reg .u64 %r751; .reg .u64 %r752; .reg .u64 %r753; .reg .u32 %r754; .reg .pred %r758; .reg .u32 %r763; .reg .pred %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .pred %r773; .reg .pred %r774; .reg .u16 %r775; .reg .pred %r776; .reg .u16 %r777; .reg .u16 %r778; .reg .pred %r780; .reg .u16 %r781; .reg .u16 %r782; .reg .u16 %r783; .reg .u16 %r784; .reg .u16 %r785; .reg .pred %r786; .reg .u16 %r787; .reg .pred %r788; .reg .u32 %r792; .reg .pred %r793; .reg .u16 %r806; .reg .u16 %r807; .reg .pred %r809; .reg .u32 %r814; .reg .pred %r815; .reg .u16 %r816; .reg .pred %r817; .reg .u16 %r818; .reg .pred %r819; .reg .u16 %r827; .reg .pred %r828; .reg .u16 %r833; .reg .u16 %r834; .reg .pred %r835; .reg .u16 %r836; .reg .pred %r837; .reg .u16 %r838; .reg .u64 %r843; .reg .u64 %r844; .reg .u64 %r845; .reg .u64 %r846; .reg .u64 %r847; .reg .u32 %r848; .reg .pred %r852; .reg .u16 %r855; .reg .pred %r856; .reg .u16 %r857; .reg .pred %r858; .reg .u16 %r863; .reg .pred %r864; .reg .pred %r866; .reg .u16 %r867; .reg .pred %r868; .reg .u16 %r869; .reg .pred %r870; .reg .u16 %r875; .reg .pred %r876; .reg .u16 %r877; .reg .pred %r878; .reg .u32 %r882; .reg .pred %r883; .reg .u32 %r897; .reg .u32 %r898; .reg .pred %r900; .reg .u32 %r906; .reg .pred %r907; .reg .u16 %r918; .reg .pred %r919; .reg .u16 %r920; .reg .u16 %r925; .reg .pred %r926; .reg .u16 %r927; .reg .pred %r933; .reg .u16 %r934; .reg .pred %r935; .reg .u16 %r936; .reg .u16 %r937; .reg .u16 %r938; .reg .u16 %r939; .reg .u16 %r940; .reg .u16 %r941; .reg .pred %r942; .reg .u16 %r944; .reg .u16 %r946; .reg .u16 %r947; .reg .pred %r950; .reg .u16 %r951; .reg .pred %r952; .reg .u16 %r953; .reg .u16 %r954; .reg .pred %r955; .reg .u16 %r956; .reg .u16 %r957; .reg .u16 %r958; .reg .u16 %r959; .reg .u16 %r960; .reg .u16 %r961; .reg .pred %r962; .reg .u16 %r964; .reg .u16 %r966; .reg .u16 %r967; .reg .pred %r970; .reg .u16 %r971; .reg .pred %r972; .reg .u16 %r973; .reg .u16 %r974; .reg .u16 %r975; .reg .u16 %r976; .reg .u16 %r977; .reg .u16 %r978; .reg .pred %r979; .reg .u16 %r981; .reg .u16 %r983; .reg .u16 %r984; .reg .pred %r987; .reg .u64 %r988; .reg .u64 %r989; .reg .u64 %r990; .reg .u64 %r991; .reg .u64 %r992; .reg .u32 %r993; .reg .pred %r997; .reg .pred %r1003; .reg .u32 %r1007; .reg .pred %r1008; .reg .pred %r1009; .reg .u32 %r1010; .reg .pred %r1011; .reg .pred %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .pred %r1015; .reg .u32 %r1016; .reg .pred %r1017; .reg .u32 %r1018; .reg .u16 %r1019; .reg .u16 %r1020; .reg .u32 %r1021; .reg .pred %r1022; .reg .u16 %r1023; .reg .pred %r1024; .reg .u16 %r1025; .reg .u16 %r1026; .reg .u16 %r1027; .reg .u16 %r1028; .reg .u16 %r1029; .reg .u16 %r1030; .reg .pred %r1031; .reg .u16 %r1033; .reg .u16 %r1035; .reg .u16 %r1036; .reg .pred %r1039; .reg .u16 %r1040; .reg .pred %r1041; .reg .u16 %r1042; .reg .u16 %r1043; .reg .pred %r1044; .reg .u16 %r1045; .reg .u16 %r1046; .reg .u16 %r1047; .reg .u16 %r1048; .reg .u16 %r1049; .reg .u16 %r1050; .reg .pred %r1051; .reg .u16 %r1053; .reg .u16 %r1055; .reg .u16 %r1056; .reg .pred %r1059; .reg .u16 %r1060; .reg .pred %r1061; .reg .u16 %r1062; .reg .u16 %r1063; .reg .u16 %r1064; .reg .u16 %r1065; .reg .u16 %r1066; .reg .u16 %r1067; .reg .pred %r1068; .reg .u16 %r1070; .reg .u16 %r1072; .reg .u16 %r1073; .reg .pred %r1076; .reg .u64 %r1077; .reg .u64 %r1078; .reg .u64 %r1079; .reg .u64 %r1080; .reg .u64 %r1081; .reg .u32 %r1082; .reg .pred %r1086; .reg .u16 %r1093; .reg .u16 %r1094; .reg .u32 %r1095; .reg .u32 %r1097; .reg .pred %r1098; .reg .u16 %r1099; .reg .pred %r1100; .reg .pred %r1101; .reg .u64 %r1107; .reg .u32 %r1109; .reg .pred %r1110; .reg .pred %r1111; .reg .u64 %r1112; .reg .u16 %r1113; .reg .u32 %r1114; .reg .u64 %r1117; .reg .u16 %r1119; .reg .u16 %r1120; .reg .pred %r1123; .reg .u16 %r1125; .reg .u16 %r1126; .reg .u32 %r1127; .reg .pred %r1128; .reg .u32 %r1129; .reg .u16 %r1130; .reg .pred %r1131; .reg .pred %r1132; .reg .u32 %r1133; .reg .pred %r1134; .reg .u16 %r1137; .reg .u16 %r1138; .reg .u32 %r1139; .reg .u64 %r1141; .reg .u32 %r1142; .reg .u16 %r1144; .reg .u16 %r1145; .reg .pred %r1146; .reg .u16 %r1147; .reg .pred %r1148; .reg .pred %r1149; .reg .u16 %r1150; .reg .pred %r1151; .reg .pred %r1152; .reg .u32 %r1153; .reg .u32 %r1154; .reg .pred %r1155; .reg .u16 %r1156; .reg .pred %r1157; .reg .u16 %r1158; .reg .u32 %r1159; .reg .pred %r1160; .reg .pred %r1161; .reg .u32 %r1162; .reg .pred %r1163; .reg .u32 %r1164; .reg .u16 %r1165; .reg .u32 %r1166; .reg .u32 %r1167; .reg .u32 %r1168; .reg .u32 %r1170; .reg .u32 %r1171; .reg .u32 %r1172; .reg .u16 %r1173; .reg .u16 %r1174; .reg .u16 %r1175; .reg .u32 %r1176; .reg .u16 %r1177; .reg .pred %r1178; .reg .pred %r1180; .reg .u32 %r1181; .reg .u32 %r1182; .reg .u16 %r1183; .reg .u32 %r1184; .reg .u32 %r1185; .reg .u32 %r1186; .reg .u32 %r1188; .reg .u32 %r1189; .reg .u16 %r1190; .reg .u16 %r1191; .reg .u16 %r1192; .reg .u32 %r1193; .reg .u16 %r1194; .reg .pred %r1195; .reg .u32 %r1196; .reg .u16 %r1197; .reg .u32 %r1198; .reg .u32 %r1199; .reg .u32 %r1200; .reg .u32 %r1202; .reg .u32 %r1203; .reg .u16 %r1204; .reg .u16 %r1205; .reg .u16 %r1206; .reg .u32 %r1207; .reg .u16 %r1208; .reg .pred %r1209; .reg .u32 %r1210; .reg .pred %r1211; .reg .pred %r1212; .reg .u16 %r1213; .reg .pred %r1214; .reg .u32 %r1215; .reg .u16 %r1216; .reg .u32 %r1217; .reg .pred %r1218; .reg .u64 %r1220; .reg .pred %r1221; .reg .u64 %r1223; .reg .pred %r1224; .reg .pred %r1225; .reg .u32 %r1226; .reg .pred %r1227; .reg .u32 %r1228; .reg .u32 %r1229; .reg .u32 %r1230; .reg .pred %r1231; .reg .u64 %r1233; .reg .u64 %r1234; .reg .pred %r1235; .reg .u64 %r1238; .reg .pred %r1239; .reg .u64 %r1240; .reg .u32 %r1241; .reg .u64 %r1243; .reg .u64 %r1247; .reg .pred %r1248; .reg .u64 %r1250; .reg .u64 %r1251; .reg .u32 %r1253; .reg .u16 %r1254; .reg .pred %r1255; .reg .u64 %r1257; .reg .u32 %r1259; .reg .u16 %r1261; .reg .pred %r1262; .reg .u16 %r1263; .reg .u32 %r1265; .reg .u64 %r1267; .reg .pred %r1268; .reg .u32 %r1269; .reg .u64 %r1270; .reg .pred %r1271; .reg .u64 %r1272; .reg .u64 %r1273; .reg .u64 %r1274; .reg .u64 %r1275; .reg .u64 %r1276; .reg .u64 %r1277; .reg .u64 %r1279; .reg .u64 %r1281; .reg .u64 %r1285; .reg .u64 %r1286; .reg .u64 %r1288; .reg .u64 %r1289; .reg .u64 %r1290; .reg .u64 %r1291; .reg .u64 %r1292; .reg .u64 %r1293; .reg .u16 %r1294; .reg .u64 %r1295; .reg .u64 %r1296; .reg .u64 %r1297; .reg .u64 %r1298; .reg .u64 %r1299; .reg .u32 %r1316; .reg .u32 %r1317; .reg .u64 %r1318; .reg .u64 %r1319; .reg .u64 %r1320; .reg .u64 %r1321; .reg .u64 %r1322; .reg .u64 %r1323; .reg .u64 %r1324; .reg .u64 %r1325; .reg .u64 %r1326; .reg .u64 %r1327; .reg .u64 %r1328; .reg .u64 %r1329; .reg .u64 %r1330; .reg .u64 %r1331; .reg .u64 %r1332; .reg .u64 %r1333; .reg .u64 %r1335; .reg .u64 %r1336; .reg .u64 %r1337; .reg .u16 %r1346; mov.u64 %r507,%ar0; mov.f64 %r508,%ar1; mov.u32 %r509,%ar2; mov.u32 %r510,%ar3; mov.u64 %r511,%ar4; mov.u64 %r512,%ar5; mov.u64 %r513,%ar6; .loc 1 2799 8 st.f64 [%frame+344],%r508; .loc 1 2802 13 mov.u32 %r537,-1; st.u32 [%frame],%r537; .loc 1 2803 14 mov.u32 %r538,144; st.u32 [%frame+4],%r538; .loc 1 2808 7 ld.u64 %r22,[%r507+96]; .loc 1 2808 6 setp.eq.u64 %r539,%r22,0; @ %r539 bra $L643; .loc 1 2810 36 ld.u32 %r24,[%r507+104]; .loc 1 2810 34 st.u32 [%r22+8],%r24; .loc 1 2811 43 mov.u32 %r541,1; shl.b32 %r540,%r541,%r24; .loc 1 2811 39 st.u32 [%r22+12],%r540; .loc 1 2812 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r507; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 2813 30 mov.u64 %r544,0; st.u64 [%r507+96],%r544; .loc 1 2991 10 ld.u32 %r389,[%frame+4]; bra $L469; $L643: mov.u32 %r389,%r538; $L469: .loc 1 2819 3 add.u64 %r1298,%frame,294; add.u64 %r548,%frame,344; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r548; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1298; call e53toe$isra$0,(%out_arg1,%out_arg2); } .loc 1 553 9 ld.u16 %r70,[%frame+312]; cvt.u16.u32 %r550,%r70; and.b16 %r549,%r550,32767; .loc 1 553 6 setp.ne.u16 %r1271,%r549,32767; @ %r1271 bra $L470; mov.u64 %r254,%r1298; add.u64 %r307,%frame,312; $L472: .loc 1 558 10 ld.u16 %r553,[%r254]; setp.ne.u16 %r554,%r553,0; @ %r554 bra $L644; .loc 1 556 17 add.u64 %r254,%r254,2; setp.ne.u64 %r555,%r254,%r307; @ %r555 bra $L472; $L470: .loc 1 518 6 cvt.u16.u32 %r558,%r70; cvt.s32.s16 %r557,%r558; shr.u32 %r74,%r557,31; bra $L471; $L644: .loc 1 2829 11 mov.u32 %r74,0; $L471: st.u32 [%r512],%r74; .loc 1 2831 6 setp.eq.u32 %r559,%r509,3; @ %r559 bra $L645; .loc 1 2836 6 setp.eq.u32 %r560,%r509,0; @ %r560 bra $L646; .loc 1 2832 13 add.u32 %r62,%r510,-1; bra $L473; $L645: mov.u32 %r62,%r510; $L473: min.s32 %r53,%r62,42; bra $L474; $L646: .loc 1 2837 13 mov.u32 %r53,20; $L474: .loc 1 553 6 @ %r1271 bra $L475; mov.u64 %r221,%r1298; add.u64 %r454,%frame,312; $L477: .loc 1 558 10 ld.u16 %r563,[%r221]; setp.ne.u16 %r564,%r563,0; @ %r564 bra $L476; .loc 1 556 17 add.u64 %r221,%r221,2; setp.ne.u64 %r565,%r221,%r454; @ %r565 bra $L477; $L475: .loc 1 3000 15 mov.u32 %r566,144; st.u32 [%frame+4],%r566; mov.u64 %r272,%r1298; add.u64 %r1295,%frame,268; add.u64 %r305,%frame,314; mov.u64 %r267,%r1295; $L478: .loc 1 483 10 ld.u16 %r567,[%r272]; st.u16 [%r267],%r567; .loc 1 482 17 add.u64 %r272,%r272,2; add.u64 %r267,%r267,2; setp.ne.u64 %r568,%r272,%r305; @ %r568 bra $L478; .loc 1 3002 8 ld.u16 %r83,[%frame+286]; .loc 1 3002 6 cvt.u16.u32 %r569,%r83; setp.ge.s16 %r570,%r569,0; @ %r570 bra $L647; .loc 1 3005 17 and.b16 %r571,%r569,32767; cvt.u32.u16 %r83,%r571; st.u16 [%frame+286],%r571; .loc 1 3004 12 mov.u32 %r89,65535; bra $L479; $L647: .loc 1 3009 12 mov.u32 %r89,0; $L479: add.u64 %r1293,%frame,242; mov.u64 %r81,%r1293; add.u64 %r253,%frame,262; .loc 1 3004 12 mov.u64 %r269,%r1293; mov.u32 %r397,0; cvta.const.u64 %r1273,eone; mov.u64 %r86,%r1273; $L481: .loc 1 483 14 add.u64 %r86,%r86,2; .loc 1 483 10 cvt.u16.u32 %r574,%r397; st.u16 [%r269],%r574; .loc 1 482 17 add.u64 %r269,%r269,2; setp.eq.u64 %r575,%r253,%r269; @ %r575 bra $L480; .loc 1 483 12 ld.u16 %r397,[%r86]; bra $L481; $L480: .loc 1 3015 6 setp.ne.u32 %r576,%r83,0; @ %r576 bra $L482; add.u64 %r271,%r1295,18; mov.u64 %r26,%r1295; $L484: .loc 1 3019 7 ld.u16 %r577,[%r26]; setp.ne.u16 %r578,%r577,0; @ %r578 bra $L483; .loc 1 3017 21 add.u64 %r26,%r26,2; setp.ne.u64 %r579,%r26,%r271; @ %r579 bra $L484; $L488: .loc 1 3011 9 mov.u32 %r136,0; add.u64 %r1276,%frame,80; add.u64 %r1286,%frame,190; add.u64 %r1288,%frame,214; bra $L485; $L639: .loc 1 3030 10 setp.eq.u32 %r580,%r89,0; @ %r580 bra $L486; .loc 1 3031 2 add.u64 %r1276,%frame,80; cvta.const.u64 %r582,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r582; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r584,[%value_in]; } .loc 1 3034 13 mov.u32 %r136,9999; bra $L487; $L486: .loc 1 3033 2 add.u64 %r1276,%frame,80; cvta.const.u64 %r587,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r587; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r589,[%value_in]; } .loc 1 3034 13 mov.u32 %r136,9999; bra $L487; $L737: .loc 1 3041 24 ld.u16 %r591,[%frame+284]; setp.lt.s16 %r592,%r591,0; @ %r592 bra $L483; .loc 1 3044 7 add.u64 %r1276,%frame,80; cvta.const.u64 %r594,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r594; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r596,[%value_in]; } .loc 1 3045 13 mov.u32 %r136,9999; .loc 1 3046 7 bra $L487; $L483: .loc 1 3050 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1273; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r601,[%value_in]; } .loc 1 3051 6 setp.eq.u32 %r602,%r601,0; @ %r602 bra $L488; .loc 1 3054 6 setp.ge.s32 %r603,%r601,0; @ %r603 bra $L489; add.u64 %r1289,%frame,216; mov.u64 %r141,%r1289; add.u64 %r457,%r1295,20; mov.u64 %r251,%r1289; mov.u64 %r250,%r1295; $L490: .loc 1 483 10 ld.u16 %r604,[%r250]; st.u16 [%r251],%r604; .loc 1 482 17 add.u64 %r250,%r250,2; add.u64 %r251,%r251,2; setp.ne.u64 %r605,%r250,%r457; @ %r605 bra $L490; .loc 1 3058 17 mov.u16 %r606,16526; st.u16 [%frame+234],%r606; .loc 1 3061 9 mov.u32 %r102,16; .loc 1 3011 9 mov.u32 %r136,0; .loc 1 3060 9 cvta.const.u64 %r96,etens+160; add.u64 %r1276,%frame,80; add.u64 %r1299,%frame,320; add.u64 %r1286,%frame,190; add.u64 %r1277,%r1293,18; add.u64 %r1281,%r96,100; add.u64 %r1323,%frame,338; .loc 1 1478 3 add.u64 %r1324,%frame,164; .loc 1 1479 3 add.u64 %r1325,%frame,138; add.u64 %r1326,%frame,140; add.u64 %r1327,%frame,166; add.u64 %r1328,%frame,162; add.u64 %r1329,%frame,210; add.u64 %r1330,%frame,188; add.u64 %r1331,%frame,104; add.u64 %r1332,%frame,208; add.u64 %r1333,%frame,340; $L538: .loc 1 3064 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r96; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } mov.u64 %r298,%r1299; mov.u64 %r242,%r1299; mov.u64 %r239,%r1293; $L491: .loc 1 483 10 ld.u16 %r613,[%r239]; st.u16 [%r242],%r613; .loc 1 482 17 add.u64 %r239,%r239,2; add.u64 %r242,%r242,2; setp.ne.u64 %r614,%r239,%r253; @ %r614 bra $L491; .loc 1 3692 18 ld.u16 %r198,[%frame+338]; .loc 1 3693 14 cvt.u16.u32 %r616,%r198; and.b16 %r615,%r616,32767; cvt.u32.u16 %r617,%r615; .loc 1 3693 5 add.u32 %r201,%r617,-16382; .loc 1 3694 6 setp.gt.s32 %r618,%r201,0; @ %r618 bra $L492; mov.u64 %r231,%r1286; .loc 1 467 10 mov.u16 %r619,0; $L493: st.u16 [%r231],%r619; .loc 1 466 17 add.u64 %r231,%r231,2; setp.ne.u64 %r620,%r1329,%r231; @ %r620 bra $L493; bra $L494; $L492: .loc 1 3700 5 mov.u32 %r621,144; sub.u32 %r29,%r621,%r201; mov.u64 %r241,%r1286; mov.u64 %r245,%r1286; mov.u64 %r244,%r1299; $L495: .loc 1 483 10 ld.u16 %r622,[%r244]; st.u16 [%r245],%r622; .loc 1 482 17 add.u64 %r244,%r244,2; add.u64 %r245,%r245,2; setp.ne.u64 %r623,%r1333,%r244; @ %r623 bra $L495; .loc 1 3702 6 setp.le.s32 %r624,%r29,0; @ %r624 bra $L496; .loc 1 3706 12 setp.gt.s32 %r625,%r29,15; @ %r625 bra $L497; .loc 1 3705 5 mov.u64 %r304,%r1286; bra $L498; $L496: mov.u64 %r33,%r1286; .loc 1 3703 5 mov.u64 %r54,%r1293; bra $L499; $L497: mov.u32 %r627,128; sub.u32 %r626,%r627,%r201; shr.u32 %r312,%r626,4; cvt.u64.u32 %r446,%r312; add.u64 %r629,%r446,%r446; add.u64 %r1292,%r1286,2; add.u64 %r249,%r629,%r1292; .loc 1 3708 12 mov.u16 %r631,0; $L500: st.u16 [%r241],%r631; .loc 1 3706 12 mov.u64 %r241,%r1292; setp.ne.u64 %r632,%r249,%r1292; @ ! %r632 bra $L733; add.u64 %r1292,%r1292,2; bra $L500; $L733: .loc 1 3708 9 add.u64 %r634,%r446,1; add.u64 %r635,%r634,%r634; add.u64 %r304,%r1286,%r635; mov.u32 %r636,128; .loc 1 3709 9 shl.b32 %r638,%r312,4; neg.s32 %r639,%r638; vsub.u32.u32.u32.add %r29,%r636,%r201,%r639; $L498: .loc 1 3712 14 cvta.const.u64 %r640,bmask; cvt.s64.s32 %r641,%r29; add.u64 %r642,%r641,%r641; add.u64 %r643,%r640,%r642; .loc 1 3712 6 ld.u16 %r645,[%r304]; ld.u16 %r646,[%r643]; and.b16 %r644,%r645,%r646; st.u16 [%r304],%r644; $L494: .loc 1 3716 6 cvt.u16.u32 %r647,%r198; setp.ge.s16 %r648,%r647,0; @ %r648 bra $L496; mov.u64 %r469,%r1286; mov.u64 %r152,%r1286; $L535: .loc 1 3720 7 ld.u16 %r649,[%r298]; ld.u16 %r650,[%r152]; setp.eq.u16 %r651,%r649,%r650; @ %r651 bra $L501; .loc 1 553 6 ld.u16 %r653,[%frame+208]; and.b16 %r652,%r653,32767; setp.ne.u16 %r654,%r652,32767; @ %r654 bra $L502; mov.u64 %r55,%r1286; $L503: .loc 1 558 10 ld.u16 %r655,[%r55]; setp.ne.u16 %r656,%r655,0; @ %r656 bra $L496; .loc 1 556 17 add.u64 %r55,%r55,2; setp.ne.u64 %r657,%r55,%r1332; @ %r657 bra $L503; mov.u64 %r440,%r1286; $L504: .loc 1 558 10 ld.u16 %r658,[%r440]; setp.ne.u16 %r659,%r658,0; @ %r659 bra $L502; .loc 1 556 17 add.u64 %r440,%r440,2; setp.ne.u64 %r660,%r1332,%r440; @ %r660 bra $L504; bra $L496; $L502: .loc 1 1478 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1273; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1324; call emovi,(%out_arg1,%out_arg2); } .loc 1 1479 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1325; call emovi,(%out_arg1,%out_arg2); } .loc 1 1481 11 ld.u16 %r669,[%frame+164]; not.b16 %r668,%r669; cvt.u32.u16 %r329,%r668; st.u16 [%frame+164],%r668; .loc 1 1484 7 ld.u16 %r279,[%frame+166]; .loc 1 1485 7 ld.u16 %r294,[%frame+140]; .loc 1 1486 6 sub.u64 %r281,%r279,%r294; .loc 1 1487 6 setp.le.s64 %r671,%r281,0; @ %r671 bra $L506; mov.u64 %r482,%r1325; mov.u64 %r475,%r1276; mov.u64 %r496,%r1276; mov.u64 %r494,%r1325; $L507: .loc 1 734 10 ld.u16 %r672,[%r494]; st.u16 [%r496],%r672; .loc 1 733 17 add.u64 %r494,%r494,2; add.u64 %r496,%r496,2; setp.ne.u64 %r673,%r1328,%r494; @ %r673 bra $L507; .loc 1 736 6 mov.u16 %r674,0; st.u16 [%frame+104],%r674; mov.u64 %r283,%r1324; $L509: .loc 1 734 14 add.u64 %r283,%r283,2; .loc 1 734 10 cvt.u16.u32 %r675,%r329; st.u16 [%r482],%r675; .loc 1 733 17 add.u64 %r482,%r482,2; setp.eq.u64 %r676,%r1328,%r482; @ %r676 bra $L508; .loc 1 734 12 ld.u16 %r329,[%r283]; bra $L509; $L508: .loc 1 736 6 mov.u16 %r677,0; st.u16 [%frame+162],%r677; mov.u64 %r233,%r1324; $L510: .loc 1 734 10 ld.u16 %r678,[%r475]; st.u16 [%r233],%r678; .loc 1 733 17 add.u64 %r475,%r475,2; add.u64 %r233,%r233,2; setp.ne.u64 %r679,%r475,%r1331; @ %r679 bra $L510; .loc 1 736 6 mov.u16 %r680,0; st.u16 [%frame+188],%r680; .loc 1 1493 10 sub.u64 %r281,%r294,%r279; .loc 1 1492 11 ld.u16 %r294,[%frame+140]; $L506: .loc 1 1496 6 setp.eq.u64 %r681,%r281,0; @ %r681 bra $L511; .loc 1 1498 10 setp.ge.s64 %r682,%r281,-145; @ ! %r682 bra $L513; .loc 1 1500 9 cvt.u32.u64 %r685,%r281; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1324; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r685; call (%value_in),eshift$part$0,(%out_arg1,%out_arg2); ld.param.u32 %r687,[%value_in]; } mov.u32 %r302,%r687; bra $L514; $L511: add.u64 %r323,%frame,168; add.u64 %r318,%frame,142; mov.u64 %r59,%r1324; $L517: .loc 1 796 10 ld.u16 %r690,[%r323]; ld.u16 %r691,[%r318]; setp.eq.u16 %r692,%r690,%r691; @ %r692 bra $L515; .loc 1 802 6 setp.gt.u16 %r695,%r690,%r691; @ %r695 bra $L516; .loc 1 1495 8 mov.u32 %r302,0; bra $L514; $L515: .loc 1 794 17 add.u64 %r323,%r323,2; add.u64 %r318,%r318,2; setp.ne.u64 %r696,%r1286,%r323; @ %r696 bra $L517; .loc 1 1510 7 ld.u16 %r697,[%frame+164]; ld.u16 %r698,[%frame+138]; setp.eq.u16 %r699,%r697,%r698; @ %r699 bra $L518; .loc 1 467 10 mov.u16 %r700,0; $L519: st.u16 [%r469],%r700; .loc 1 466 17 add.u64 %r469,%r469,2; setp.ne.u64 %r701,%r469,%r1329; @ %r701 bra $L519; bra $L496; $L518: .loc 1 1517 11 ld.u16 %r327,[%frame+140]; .loc 1 1517 7 setp.ne.u32 %r702,%r327,0; @ %r702 bra $L520; .loc 1 1517 21 ld.u16 %r703,[%frame+144]; setp.lt.s16 %r704,%r703,0; @ %r704 bra $L520; .loc 1 846 5 add.u64 %r328,%frame,162; $L524: .loc 1 851 11 ld.u16 %r321,[%r328]; .loc 1 851 10 cvt.u16.u32 %r705,%r321; setp.ge.s16 %r706,%r705,0; @ %r706 bra $L521; .loc 1 852 7 cvt.u16.u32 %r708,%r327; or.b16 %r707,%r708,1; cvt.u32.u16 %r327,%r707; $L521: .loc 1 853 10 cvt.u16.u32 %r709,%r321; add.u16 %r710,%r709,%r709; .loc 1 854 10 cvt.u16.u32 %r712,%r327; and.b16 %r711,%r712,2; setp.ne.u16 %r713,%r711,0; @ %r713 bra $L522; .loc 1 853 10 st.u16 [%r328],%r710; bra $L523; $L522: .loc 1 855 5 or.b16 %r715,%r710,1; st.u16 [%r328],%r715; $L523: .loc 1 856 12 cvt.u16.u32 %r717,%r327; add.u16 %r718,%r717,%r717; cvt.u32.u16 %r327,%r718; .loc 1 857 7 add.u64 %r328,%r328,-2; .loc 1 849 17 setp.ne.u64 %r721,%r328,%r1326; @ %r721 bra $L524; bra $L513; $L520: add.u64 %r470,%frame,140; $L528: .loc 1 1525 11 ld.u16 %r724,[%r470]; setp.eq.u16 %r725,%r724,0; @ %r725 bra $L526; .loc 1 1528 9 add.u64 %r294,%r294,1; .loc 1 1529 5 bra $L527; $L526: .loc 1 1523 18 add.u64 %r470,%r470,2; setp.ne.u64 %r726,%r1328,%r470; @ %r726 bra $L528; $L527: .loc 1 1532 12 st.u16 [%frame+140],%r294; .loc 1 1533 4 bra $L513; $L516: mov.u64 %r461,%r1325; mov.u64 %r44,%r1276; .loc 1 802 6 mov.u64 %r345,%r1276; mov.u64 %r350,%r1325; $L529: .loc 1 734 10 ld.u16 %r727,[%r350]; st.u16 [%r345],%r727; .loc 1 733 17 add.u64 %r350,%r350,2; add.u64 %r345,%r345,2; setp.ne.u64 %r728,%r1328,%r350; @ %r728 bra $L529; .loc 1 736 6 mov.u16 %r729,0; st.u16 [%frame+104],%r729; mov.u64 %r492,%r1324; $L530: .loc 1 734 10 ld.u16 %r730,[%r492]; st.u16 [%r461],%r730; .loc 1 733 17 add.u64 %r492,%r492,2; add.u64 %r461,%r461,2; setp.ne.u64 %r731,%r1330,%r492; @ %r731 bra $L530; .loc 1 736 6 mov.u16 %r732,0; st.u16 [%frame+162],%r732; $L531: .loc 1 734 10 ld.u16 %r733,[%r44]; st.u16 [%r59],%r733; .loc 1 733 17 add.u64 %r44,%r44,2; add.u64 %r59,%r59,2; setp.ne.u64 %r734,%r44,%r1331; @ %r734 bra $L531; .loc 1 736 6 mov.u16 %r735,0; st.u16 [%frame+188],%r735; .loc 1 1495 8 mov.u32 %r302,0; $L514: .loc 1 1542 6 ld.u16 %r736,[%frame+164]; ld.u16 %r737,[%frame+138]; setp.ne.u16 %r738,%r736,%r737; @ %r738 bra $L648; .loc 1 960 9 mov.u32 %r493,0; .loc 1 959 5 mov.u64 %r342,%r1328; .loc 1 958 5 add.u64 %r341,%frame,188; $L533: .loc 1 963 11 ld.u16 %r739,[%r341]; .loc 1 963 34 ld.u16 %r740,[%r342]; .loc 1 963 32 add.u64 %r741,%r739,%r740; .loc 1 963 55 cvt.u64.u32 %r742,%r493; .loc 1 963 9 add.u64 %r338,%r741,%r742; .loc 1 964 10 shr.u64 %r743,%r338,16; cvt.u32.u64 %r744,%r743; and.b32 %r493,%r744,1; .loc 1 968 12 st.u16 [%r342],%r338; .loc 1 969 7 add.u64 %r341,%r341,-2; .loc 1 970 7 add.u64 %r342,%r342,-2; .loc 1 961 17 setp.ne.u64 %r748,%r341,%r1327; @ %r748 bra $L533; .loc 1 1545 14 mov.u32 %r303,0; bra $L534; $L648: .loc 1 988 9 mov.u32 %r77,0; .loc 1 986 5 add.u64 %r355,%frame,188; .loc 1 987 5 mov.u64 %r356,%r1328; $L532: .loc 1 991 11 ld.u16 %r749,[%r356]; .loc 1 991 55 cvt.u64.u32 %r750,%r77; .loc 1 991 9 sub.u64 %r751,%r749,%r750; .loc 1 991 34 ld.u16 %r752,[%r355]; .loc 1 991 9 sub.u64 %r352,%r751,%r752; .loc 1 992 10 shr.u64 %r753,%r352,16; cvt.u32.u64 %r754,%r753; and.b32 %r77,%r754,1; .loc 1 996 12 st.u16 [%r356],%r352; .loc 1 997 7 add.u64 %r355,%r355,-2; .loc 1 998 7 add.u64 %r356,%r356,-2; .loc 1 989 17 setp.ne.u64 %r758,%r356,%r1326; @ %r758 bra $L532; .loc 1 1550 14 mov.u32 %r303,1; $L534: .loc 1 1552 3 mov.u32 %r763,64; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r302; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r303; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r294; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r763; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L513: .loc 1 1555 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L496; $L501: .loc 1 3718 21 add.u64 %r298,%r298,2; add.u64 %r152,%r152,2; setp.ne.u64 %r770,%r1323,%r298; @ %r770 bra $L535; bra $L496; $L499: .loc 1 3068 11 ld.u16 %r771,[%r54]; ld.u16 %r772,[%r33]; setp.ne.u16 %r773,%r771,%r772; @ %r773 bra $L536; .loc 1 3066 18 add.u64 %r54,%r54,2; add.u64 %r33,%r33,2; setp.ne.u64 %r774,%r54,%r1277; @ %r774 bra $L499; mov.u64 %r58,%r1289; mov.u64 %r42,%r1293; $L537: .loc 1 483 10 ld.u16 %r775,[%r42]; st.u16 [%r58],%r775; .loc 1 482 17 add.u64 %r42,%r42,2; add.u64 %r58,%r58,2; setp.ne.u64 %r776,%r42,%r253; @ %r776 bra $L537; .loc 1 3072 10 add.u32 %r136,%r136,%r102; $L536: .loc 1 3074 6 add.u64 %r96,%r96,20; .loc 1 3075 6 cvt.u16.u32 %r778,%r102; shr.u16 %r777,%r778,1; cvt.u32.u16 %r102,%r777; .loc 1 3077 16 setp.ne.u64 %r780,%r96,%r1281; @ %r780 bra $L538; .loc 1 3080 17 ld.u16 %r782,[%frame+234]; ld.u16 %r783,[%frame+286]; add.u16 %r781,%r782,%r783; add.u16 %r784,%r781,-16526; st.u16 [%frame+234],%r784; add.u64 %r48,%r1289,20; mov.u64 %r387,%r1295; $L539: .loc 1 483 10 ld.u16 %r785,[%r141]; st.u16 [%r387],%r785; .loc 1 482 17 add.u64 %r141,%r141,2; add.u64 %r387,%r387,2; setp.ne.u64 %r786,%r48,%r141; @ %r786 bra $L539; mov.u64 %r80,%r1293; mov.u32 %r375,0; cvta.const.u64 %r110,eone; $L541: .loc 1 483 14 add.u64 %r110,%r110,2; .loc 1 483 10 cvt.u16.u32 %r787,%r375; st.u16 [%r80],%r787; .loc 1 482 17 add.u64 %r80,%r80,2; setp.eq.u64 %r788,%r80,%r253; @ %r788 bra $L649; .loc 1 483 12 ld.u16 %r375,[%r110]; bra $L541; $L543: .loc 1 3088 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r792,[%value_in]; } .loc 1 3088 7 setp.gt.s32 %r793,%r792,0; @ %r793 bra $L542; .loc 1 3090 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1289; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3091 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r112; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1293; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3092 14 add.u32 %r136,%r136,%r114; $L542: .loc 1 3094 6 cvt.u16.u32 %r807,%r114; shr.u16 %r806,%r807,1; cvt.u32.u16 %r114,%r806; .loc 1 3095 7 setp.eq.u64 %r809,%r112,%r1279; @ ! %r809 bra $L734; add.u64 %r1288,%frame,214; bra $L485; $L734: .loc 1 3097 6 add.u64 %r112,%r112,20; bra $L540; $L649: .loc 1 3084 9 mov.u32 %r114,4096; .loc 1 3085 9 cvta.const.u64 %r112,etens; add.u64 %r1279,%r112,240; $L540: .loc 1 3086 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1289; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r814,[%value_in]; } .loc 1 3086 28 setp.le.s32 %r815,%r814,0; @ %r815 bra $L543; add.u64 %r1288,%frame,214; bra $L485; $L489: .loc 1 3103 10 ld.u16 %r816,[%frame+286]; setp.ne.u16 %r817,%r816,0; @ %r817 bra $L544; .loc 1 3105 32 ld.u16 %r818,[%frame+284]; setp.lt.s16 %r819,%r818,0; @ %r819 bra $L650; .loc 1 3011 9 mov.u32 %r136,0; cvta.const.u64 %r1279,etens+240; $L546: .loc 1 3107 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1295; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3108 14 add.u32 %r136,%r136,-1; .loc 1 3105 32 ld.u16 %r827,[%frame+284]; setp.ge.s16 %r828,%r827,0; @ %r828 bra $L546; add.u64 %r1286,%frame,190; add.u64 %r1288,%frame,214; bra $L545; $L544: .loc 1 3113 4 add.u64 %r1286,%frame,190; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovi,(%out_arg1,%out_arg2); } .loc 1 3011 9 mov.u32 %r136,0; add.u64 %r1288,%frame,214; add.u64 %r1335,%frame,216; add.u64 %r1336,%frame,192; add.u64 %r1337,%frame,240; $L554: .loc 1 3116 11 ld.u16 %r834,[%frame+214]; and.b16 %r833,%r834,7; setp.ne.u16 %r835,%r833,0; @ %r835 bra $L547; mov.u64 %r257,%r1286; mov.u64 %r265,%r1335; mov.u64 %r220,%r1335; mov.u64 %r452,%r1286; $L548: .loc 1 734 10 ld.u16 %r836,[%r452]; st.u16 [%r220],%r836; .loc 1 733 17 add.u64 %r452,%r452,2; add.u64 %r220,%r220,2; setp.ne.u64 %r837,%r1288,%r452; @ %r837 bra $L548; .loc 1 736 6 mov.u16 %r838,0; st.u16 [%frame+240],%r838; .loc 1 3120 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1335; call eshdn1,(%out_arg1); } .loc 1 3121 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1335; call eshdn1,(%out_arg1); } .loc 1 960 9 mov.u32 %r235,0; .loc 1 959 5 add.u64 %r367,%frame,240; .loc 1 958 5 mov.u64 %r366,%r1288; $L549: .loc 1 963 11 ld.u16 %r843,[%r366]; .loc 1 963 34 ld.u16 %r844,[%r367]; .loc 1 963 32 add.u64 %r845,%r843,%r844; .loc 1 963 55 cvt.u64.u32 %r846,%r235; .loc 1 963 9 add.u64 %r363,%r845,%r846; .loc 1 964 10 shr.u64 %r847,%r363,16; cvt.u32.u64 %r848,%r847; and.b32 %r235,%r848,1; .loc 1 968 12 st.u16 [%r367],%r363; .loc 1 969 7 add.u64 %r366,%r366,-2; .loc 1 970 7 add.u64 %r367,%r367,-2; .loc 1 961 17 setp.ne.u64 %r852,%r366,%r1336; @ %r852 bra $L549; .loc 1 3123 13 ld.u16 %r1294,[%frame+218]; add.u16 %r1294,%r1294,3; st.u16 [%frame+218],%r1294; .loc 1 3124 20 ld.u16 %r855,[%frame+220]; setp.ne.u16 %r856,%r855,0; @ %r856 bra $L550; $L552: .loc 1 3129 11 ld.u16 %r857,[%frame+240]; setp.ne.u16 %r858,%r857,0; @ ! %r858 bra $L735; bra $L547; $L550: .loc 1 3126 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1335; call eshdn1,(%out_arg1); } .loc 1 3127 10 ld.u16 %r1294,[%frame+218]; add.u16 %r1294,%r1294,1; st.u16 [%frame+218],%r1294; .loc 1 3124 20 ld.u16 %r863,[%frame+220]; setp.ne.u16 %r864,%r863,0; @ %r864 bra $L550; bra $L552; $L735: .loc 1 3131 11 setp.gt.u16 %r866,%r1294,16382; @ %r866 bra $L547; $L553: .loc 1 734 10 ld.u16 %r867,[%r265]; st.u16 [%r257],%r867; .loc 1 733 17 add.u64 %r265,%r265,2; add.u64 %r257,%r257,2; setp.ne.u64 %r868,%r265,%r1337; @ %r868 bra $L553; .loc 1 736 6 mov.u16 %r869,0; st.u16 [%frame+214],%r869; .loc 1 3134 14 add.u32 %r136,%r136,-1; .loc 1 3114 18 setp.ne.u32 %r870,%r136,-43; @ %r870 bra $L554; $L547: .loc 1 3136 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; call emovo$constprop$0,(%out_arg1,%out_arg2); } bra $L545; $L650: .loc 1 3011 9 mov.u32 %r136,0; add.u64 %r1286,%frame,190; add.u64 %r1288,%frame,214; $L545: mov.u64 %r247,%r1286; add.u64 %r256,%r1295,20; mov.u64 %r219,%r1295; $L555: .loc 1 483 10 ld.u16 %r875,[%r219]; st.u16 [%r247],%r875; .loc 1 482 17 add.u64 %r219,%r219,2; add.u64 %r247,%r247,2; setp.ne.u64 %r876,%r256,%r219; @ %r876 bra $L555; mov.u64 %r246,%r1293; mov.u32 %r388,0; cvta.const.u64 %r139,eone; $L557: .loc 1 483 14 add.u64 %r139,%r139,2; .loc 1 483 10 cvt.u16.u32 %r877,%r388; st.u16 [%r246],%r877; .loc 1 482 17 add.u64 %r246,%r246,2; setp.eq.u64 %r878,%r253,%r246; @ %r878 bra $L651; .loc 1 483 12 ld.u16 %r388,[%r139]; bra $L557; $L560: .loc 1 3145 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r882,[%value_in]; } .loc 1 3145 7 setp.lt.s32 %r883,%r882,0; @ %r883 bra $L558; .loc 1 3147 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1286; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3148 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1293; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3149 14 add.u32 %r136,%r136,%r144; $L558: .loc 1 3151 6 shr.u32 %r897,%r144,31; add.u32 %r898,%r897,%r144; shr.s32 %r144,%r898,1; .loc 1 3152 7 add.u64 %r314,%r314,20; setp.eq.u64 %r900,%r314,260; @ ! %r900 bra $L556; bra $L559; $L651: mov.u64 %r314,0; .loc 1 3138 9 mov.u32 %r144,-4096; cvta.const.u64 %r1272,etens; cvta.const.u64 %r1285,emtens; $L556: add.u64 %r262,%r1272,%r314; add.u64 %r264,%r1285,%r314; .loc 1 3143 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1273; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r906,[%value_in]; } .loc 1 3143 29 setp.gt.s32 %r907,%r906,0; @ %r907 bra $L560; $L559: .loc 1 3157 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1273; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1293; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } add.u64 %r1276,%frame,80; $L485: .loc 1 3161 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r108,%r1286; mov.u64 %r85,%r1286; $L561: .loc 1 734 10 ld.u16 %r918,[%r85]; st.u16 [%r81],%r918; .loc 1 733 17 add.u64 %r85,%r85,2; add.u64 %r81,%r81,2; setp.ne.u64 %r919,%r85,%r1288; @ %r919 bra $L561; .loc 1 736 6 mov.u16 %r920,0; st.u16 [%frame+266],%r920; .loc 1 3163 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r100,%r1295; $L562: .loc 1 734 10 ld.u16 %r925,[%r108]; st.u16 [%r100],%r925; .loc 1 733 17 add.u64 %r108,%r108,2; add.u64 %r100,%r100,2; setp.ne.u64 %r926,%r108,%r1288; @ %r926 bra $L562; .loc 1 736 6 mov.u16 %r927,0; st.u16 [%frame+292],%r927; .loc 1 3165 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3166 9 ld.u16 %r154,[%frame+76]; .loc 1 3167 23 setp.eq.u64 %r933,%r154,0; @ ! %r933 bra $L564; cvta.const.u64 %r1274,ezero; .loc 1 846 5 add.u64 %r1318,%frame,292; add.u64 %r1319,%frame,270; add.u64 %r1320,%r1295,24; add.u64 %r1321,%frame,240; add.u64 %r1322,%frame,218; bra $L563; $L653: .loc 1 847 8 mov.u32 %r373,0; .loc 1 846 5 mov.u64 %r374,%r1318; $L568: .loc 1 851 11 ld.u16 %r368,[%r374]; .loc 1 851 10 cvt.u16.u32 %r934,%r368; setp.ge.s16 %r935,%r934,0; @ %r935 bra $L565; .loc 1 852 7 cvt.u16.u32 %r937,%r373; or.b16 %r936,%r937,1; cvt.u32.u16 %r373,%r936; $L565: .loc 1 853 10 cvt.u16.u32 %r938,%r368; add.u16 %r939,%r938,%r938; .loc 1 854 10 cvt.u16.u32 %r941,%r373; and.b16 %r940,%r941,2; setp.ne.u16 %r942,%r940,0; @ %r942 bra $L566; .loc 1 853 10 st.u16 [%r374],%r939; bra $L567; $L566: .loc 1 855 5 or.b16 %r944,%r939,1; st.u16 [%r374],%r944; $L567: .loc 1 856 12 cvt.u16.u32 %r946,%r373; add.u16 %r947,%r946,%r946; cvt.u32.u16 %r373,%r947; .loc 1 857 7 add.u64 %r374,%r374,-2; .loc 1 849 17 setp.ne.u64 %r950,%r374,%r1319; @ %r950 bra $L568; add.u64 %r125,%frame,216; mov.u64 %r135,%r1295; $L569: .loc 1 734 10 ld.u16 %r951,[%r135]; st.u16 [%r125],%r951; .loc 1 733 17 add.u64 %r135,%r135,2; add.u64 %r125,%r125,2; setp.ne.u64 %r952,%r1320,%r135; @ %r952 bra $L569; .loc 1 736 6 mov.u16 %r953,0; st.u16 [%frame+240],%r953; .loc 1 847 8 mov.u32 %r403,0; .loc 1 846 5 mov.u64 %r404,%r1321; $L573: .loc 1 851 11 ld.u16 %r398,[%r404]; .loc 1 851 10 cvt.u16.u32 %r954,%r398; setp.ge.s16 %r955,%r954,0; @ %r955 bra $L570; .loc 1 852 7 cvt.u16.u32 %r957,%r403; or.b16 %r956,%r957,1; cvt.u32.u16 %r403,%r956; $L570: .loc 1 853 10 cvt.u16.u32 %r958,%r398; add.u16 %r959,%r958,%r958; .loc 1 854 10 cvt.u16.u32 %r961,%r403; and.b16 %r960,%r961,2; setp.ne.u16 %r962,%r960,0; @ %r962 bra $L571; .loc 1 853 10 st.u16 [%r404],%r959; bra $L572; $L571: .loc 1 855 5 or.b16 %r964,%r959,1; st.u16 [%r404],%r964; $L572: .loc 1 856 12 cvt.u16.u32 %r966,%r403; add.u16 %r967,%r966,%r966; cvt.u32.u16 %r403,%r967; .loc 1 857 7 add.u64 %r404,%r404,-2; .loc 1 849 17 setp.ne.u64 %r970,%r404,%r1322; @ %r970 bra $L573; .loc 1 847 8 mov.u32 %r395,0; .loc 1 846 5 mov.u64 %r396,%r1321; $L577: .loc 1 851 11 ld.u16 %r390,[%r396]; .loc 1 851 10 cvt.u16.u32 %r971,%r390; setp.ge.s16 %r972,%r971,0; @ %r972 bra $L574; .loc 1 852 7 cvt.u16.u32 %r974,%r395; or.b16 %r973,%r974,1; cvt.u32.u16 %r395,%r973; $L574: .loc 1 853 10 cvt.u16.u32 %r975,%r390; add.u16 %r976,%r975,%r975; .loc 1 854 10 cvt.u16.u32 %r978,%r395; and.b16 %r977,%r978,2; setp.ne.u16 %r979,%r977,0; @ %r979 bra $L575; .loc 1 853 10 st.u16 [%r396],%r976; bra $L576; $L575: .loc 1 855 5 or.b16 %r981,%r976,1; st.u16 [%r396],%r981; $L576: .loc 1 856 12 cvt.u16.u32 %r983,%r395; add.u16 %r984,%r983,%r983; cvt.u32.u16 %r395,%r984; .loc 1 857 7 add.u64 %r396,%r396,-2; .loc 1 849 17 setp.ne.u64 %r987,%r396,%r1322; @ %r987 bra $L577; .loc 1 960 9 mov.u32 %r503,0; .loc 1 959 5 mov.u64 %r386,%r1318; .loc 1 958 5 mov.u64 %r385,%r1321; $L578: .loc 1 963 11 ld.u16 %r988,[%r385]; .loc 1 963 34 ld.u16 %r989,[%r386]; .loc 1 963 32 add.u64 %r990,%r988,%r989; .loc 1 963 55 cvt.u64.u32 %r991,%r503; .loc 1 963 9 add.u64 %r382,%r990,%r991; .loc 1 964 10 shr.u64 %r992,%r382,16; cvt.u32.u64 %r993,%r992; and.b32 %r503,%r993,1; .loc 1 968 12 st.u16 [%r386],%r382; .loc 1 969 7 add.u64 %r385,%r385,-2; .loc 1 970 7 add.u64 %r386,%r386,-2; .loc 1 961 17 setp.ne.u64 %r997,%r385,%r1322; @ %r997 bra $L578; .loc 1 3174 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3175 13 ld.u16 %r158,[%frame+76]; .loc 1 3176 13 add.u32 %r136,%r136,-1; .loc 1 3167 23 setp.ne.u64 %r1003,%r158,0; @ %r1003 bra $L652; $L563: .loc 1 3167 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1274; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r1007,[%value_in]; } .loc 1 3167 23 setp.ne.u32 %r1008,%r1007,0; @ %r1008 bra $L653; bra $L564; $L652: mov.u64 %r154,%r158; $L564: .loc 1 3179 6 setp.ne.u32 %r1009,%r89,0; .loc 1 3182 10 selp.u32 %r73,45,32,%r1009; cvt.u32.u32 %r1010,%r73; st.u8 [%frame+80],%r1010; .loc 1 3184 6 setp.ne.u32 %r1011,%r509,3; @ %r1011 bra $L655; .loc 1 3185 11 add.u32 %r162,%r53,%r136; bra $L580; $L655: .loc 1 2990 9 mov.u32 %r162,%r53; $L580: min.s32 %r159,%r162,42; .loc 1 3192 6 setp.ne.u64 %r1012,%r154,10; @ %r1012 bra $L581; .loc 1 3194 12 mov.u32 %r1013,49; st.u8 [%frame+81],%r1013; .loc 1 3195 12 mov.u32 %r1014,46; st.u8 [%frame+82],%r1014; .loc 1 3201 13 add.u32 %r136,%r136,1; .loc 1 3196 10 setp.le.s32 %r1015,%r162,0; @ %r1015 bra $L582; .loc 1 3198 9 mov.u32 %r1016,48; st.u8 [%frame+83],%r1016; .loc 1 3199 10 add.u32 %r159,%r159,-1; .loc 1 3198 6 add.u64 %r126,%frame,84; bra $L642; $L582: .loc 1 3202 10 setp.ne.u32 %r1017,%r162,0; @ %r1017 bra $L656; .loc 1 3195 9 add.u64 %r126,%frame,83; bra $L642; $L581: .loc 1 3210 14 cvt.u32.u64 %r1018,%r154; .loc 1 3210 27 cvt.u16.u8 %r1346,%r1018; mov.u16 %r1020,%r1346; add.u16 %r1019,%r1020,48; st.u8 [%frame+81],%r1019; .loc 1 3211 12 mov.u32 %r1021,46; st.u8 [%frame+82],%r1021; .loc 1 3214 17 setp.lt.s32 %r1022,%r162,0; @ %r1022 bra $L585; .loc 1 3211 9 add.u64 %r126,%frame,83; $L642: mov.u64 %r151,%r126; add.u64 %r1289,%frame,216; add.u64 %r1291,%frame,240; add.u64 %r1297,%frame,292; add.u64 %r1296,%frame,270; add.u64 %r1270,%r1295,24; add.u64 %r1290,%frame,218; cvt.u32.u64 %r1269,%r151; .loc 1 847 8 mov.u32 %r1317,0; $L600: mov.u64 %r423,%r151; mov.u32 %r410,%r1317; .loc 1 846 5 mov.u64 %r411,%r1297; $L589: .loc 1 851 11 ld.u16 %r405,[%r411]; .loc 1 851 10 cvt.u16.u32 %r1023,%r405; setp.ge.s16 %r1024,%r1023,0; @ %r1024 bra $L586; .loc 1 852 7 cvt.u16.u32 %r1026,%r410; or.b16 %r1025,%r1026,1; cvt.u32.u16 %r410,%r1025; $L586: .loc 1 853 10 cvt.u16.u32 %r1027,%r405; add.u16 %r1028,%r1027,%r1027; .loc 1 854 10 cvt.u16.u32 %r1030,%r410; and.b16 %r1029,%r1030,2; setp.ne.u16 %r1031,%r1029,0; @ %r1031 bra $L587; .loc 1 853 10 st.u16 [%r411],%r1028; bra $L588; $L587: .loc 1 855 5 or.b16 %r1033,%r1028,1; st.u16 [%r411],%r1033; $L588: .loc 1 856 12 cvt.u16.u32 %r1035,%r410; add.u16 %r1036,%r1035,%r1035; cvt.u32.u16 %r410,%r1036; .loc 1 857 7 add.u64 %r411,%r411,-2; .loc 1 849 17 setp.ne.u64 %r1039,%r411,%r1296; @ %r1039 bra $L589; mov.u64 %r196,%r1289; mov.u64 %r202,%r1295; $L590: .loc 1 734 10 ld.u16 %r1040,[%r202]; st.u16 [%r196],%r1040; .loc 1 733 17 add.u64 %r202,%r202,2; add.u64 %r196,%r196,2; setp.ne.u64 %r1041,%r1270,%r202; @ %r1041 bra $L590; .loc 1 736 6 mov.u16 %r1042,0; st.u16 [%frame+240],%r1042; .loc 1 847 8 mov.u32 %r436,%r1317; .loc 1 846 5 mov.u64 %r437,%r1291; $L594: .loc 1 851 11 ld.u16 %r431,[%r437]; .loc 1 851 10 cvt.u16.u32 %r1043,%r431; setp.ge.s16 %r1044,%r1043,0; @ %r1044 bra $L591; .loc 1 852 7 cvt.u16.u32 %r1046,%r436; or.b16 %r1045,%r1046,1; cvt.u32.u16 %r436,%r1045; $L591: .loc 1 853 10 cvt.u16.u32 %r1047,%r431; add.u16 %r1048,%r1047,%r1047; .loc 1 854 10 cvt.u16.u32 %r1050,%r436; and.b16 %r1049,%r1050,2; setp.ne.u16 %r1051,%r1049,0; @ %r1051 bra $L592; .loc 1 853 10 st.u16 [%r437],%r1048; bra $L593; $L592: .loc 1 855 5 or.b16 %r1053,%r1048,1; st.u16 [%r437],%r1053; $L593: .loc 1 856 12 cvt.u16.u32 %r1055,%r436; add.u16 %r1056,%r1055,%r1055; cvt.u32.u16 %r436,%r1056; .loc 1 857 7 add.u64 %r437,%r437,-2; .loc 1 849 17 setp.ne.u64 %r1059,%r437,%r1290; @ %r1059 bra $L594; .loc 1 847 8 mov.u32 %r429,%r1317; .loc 1 846 5 mov.u64 %r430,%r1291; $L598: .loc 1 851 11 ld.u16 %r424,[%r430]; .loc 1 851 10 cvt.u16.u32 %r1060,%r424; setp.ge.s16 %r1061,%r1060,0; @ %r1061 bra $L595; .loc 1 852 7 cvt.u16.u32 %r1063,%r429; or.b16 %r1062,%r1063,1; cvt.u32.u16 %r429,%r1062; $L595: .loc 1 853 10 cvt.u16.u32 %r1064,%r424; add.u16 %r1065,%r1064,%r1064; .loc 1 854 10 cvt.u16.u32 %r1067,%r429; and.b16 %r1066,%r1067,2; setp.ne.u16 %r1068,%r1066,0; @ %r1068 bra $L596; .loc 1 853 10 st.u16 [%r430],%r1065; bra $L597; $L596: .loc 1 855 5 or.b16 %r1070,%r1065,1; st.u16 [%r430],%r1070; $L597: .loc 1 856 12 cvt.u16.u32 %r1072,%r429; add.u16 %r1073,%r1072,%r1072; cvt.u32.u16 %r429,%r1073; .loc 1 857 7 add.u64 %r430,%r430,-2; .loc 1 849 17 setp.ne.u64 %r1076,%r430,%r1290; @ %r1076 bra $L598; .loc 1 960 9 mov.u32 %r505,%r1317; .loc 1 959 5 mov.u64 %r422,%r1297; .loc 1 958 5 mov.u64 %r421,%r1291; $L599: .loc 1 963 11 ld.u16 %r1077,[%r421]; .loc 1 963 34 ld.u16 %r1078,[%r422]; .loc 1 963 32 add.u64 %r1079,%r1077,%r1078; .loc 1 963 55 cvt.u64.u32 %r1080,%r505; .loc 1 963 9 add.u64 %r418,%r1079,%r1080; .loc 1 964 10 shr.u64 %r1081,%r418,16; cvt.u32.u64 %r1082,%r1081; and.b32 %r505,%r1082,1; .loc 1 968 12 st.u16 [%r422],%r418; .loc 1 969 7 add.u64 %r421,%r421,-2; .loc 1 970 7 add.u64 %r422,%r422,-2; .loc 1 961 17 setp.ne.u64 %r1086,%r421,%r1290; @ %r1086 bra $L599; .loc 1 3222 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1295; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3223 26 ld.u16 %r169,[%frame+76]; add.u64 %r151,%r151,1; mov.u64 %r39,%r151; .loc 1 3223 35 cvt.u16.u32 %r1094,%r169; add.u16 %r1093,%r1094,48; st.u8 [%r423],%r1093; .loc 1 3214 17 cvt.u32.u64 %r1095,%r151; sub.u32 %r1097,%r1095,%r1269; setp.le.s32 %r1098,%r1097,%r159; @ %r1098 bra $L600; bra $L601; $L585: .loc 1 3225 16 ld.u16 %r169,[%frame+76]; add.u64 %r423,%frame,82; .loc 1 3211 9 add.u64 %r39,%frame,83; $L601: .loc 1 3225 9 cvt.u16.u32 %r1099,%r169; cvt.u64.u16 %r174,%r1099; .loc 1 3229 6 setp.le.s64 %r1100,%r174,4; @ %r1100 bra $L584; .loc 1 3232 10 setp.ne.u64 %r1101,%r174,5; @ %r1101 bra $L602; .loc 1 3234 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1295; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1293; call emovo$constprop$0,(%out_arg1,%out_arg2); } .loc 1 3235 8 cvta.const.u64 %r1107,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1293; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1107; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r1109,[%value_in]; } .loc 1 3235 7 setp.ne.u32 %r1110,%r1109,0; @ %r1110 bra $L602; .loc 1 3237 7 setp.lt.s32 %r1111,%r159,0; @ %r1111 bra $L584; .loc 1 3237 33 ld.s8 %r176,[%r39+-2]; .loc 1 3237 42 cvt.u16.u32 %r1113,%r176; set.u32.eq.u16 %r1114,%r1113,46; cvt.s64.s32 %r1112,%r1114; .loc 1 3237 22 add.u64 %r1117,%r423,%r1112; .loc 1 3237 18 ld.u8 %r1346,[%r1117+-1]; mov.u16 %r1120,%r1346; and.b16 %r1119,%r1120,1; setp.eq.u16 %r1123,%r1119,0; @ ! %r1123 bra $L736; bra $L584; $L602: .loc 1 3242 7 add.u64 %r183,%r39,-2; ld.u8 %r1346,[%r39+-2]; mov.u16 %r1126,%r1346; and.b16 %r1125,%r1126,127; cvt.u32.u16 %r1127,%r1125; cvt.s32.s8 %r185,%r1127; .loc 1 3245 10 setp.ge.s32 %r1128,%r159,0; @ %r1128 bra $L604; .loc 1 3248 7 mov.u32 %r1129,49; st.u8 [%r39+-2],%r1129; .loc 1 3249 10 add.u32 %r136,%r136,1; .loc 1 3250 4 bra $L584; $L604: .loc 1 3271 7 mov.u32 %r1316,48; $L608: .loc 1 3252 15 cvt.u16.u32 %r1130,%r185; setp.ne.u16 %r1131,%r1130,46; @ %r1131 bra $L605; .loc 1 3255 6 ld.s8 %r188,[%r183+-1]; .loc 1 3256 6 add.u32 %r189,%r188,1; .loc 1 3259 7 setp.gt.s32 %r1132,%r189,57; @ %r1132 bra $L606; .loc 1 3257 9 st.u8 [%r183+-1],%r189; bra $L584; $L606: .loc 1 3261 14 add.u32 %r136,%r136,1; .loc 1 3262 11 mov.u32 %r1133,49; st.u8 [%r183+-1],%r1133; bra $L584; $L605: .loc 1 3267 9 add.u32 %r191,%r185,1; .loc 1 3269 10 setp.gt.s32 %r1134,%r191,57; @ %r1134 bra $L607; .loc 1 3268 12 st.u8 [%r183],%r191; bra $L584; $L607: .loc 1 3271 7 st.u8 [%r183],%r1316; .loc 1 3242 7 add.u64 %r183,%r183,-1; ld.u8 %r1346,[%r183]; mov.u16 %r1138,%r1346; and.b16 %r1137,%r1138,127; cvt.u32.u16 %r1139,%r1137; cvt.s32.s8 %r185,%r1139; bra $L608; $L656: .loc 1 3195 9 add.u64 %r423,%frame,83; $L584: .loc 1 3282 3 st.u32 [%stack],%r136; cvta.const.u64 %r1141,$LC3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r423; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1141; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1142,[%value_in]; } $L487: .loc 1 3285 15 st.u32 [%frame+4],%r389; .loc 1 3286 17 st.u32 [%frame+16],%r136; .loc 1 532 6 ld.u16 %r1145,[%frame+312]; and.b16 %r1144,%r1145,32767; setp.ne.u16 %r1146,%r1144,32767; @ %r1146 bra $L609; mov.u64 %r218,%r1298; add.u64 %r204,%frame,312; mov.u64 %r214,%r218; $L611: .loc 1 558 10 ld.u16 %r1147,[%r214]; setp.ne.u16 %r1148,%r1147,0; @ %r1148 bra $L610; .loc 1 556 17 add.u64 %r214,%r214,2; setp.ne.u64 %r1149,%r204,%r214; @ %r1149 bra $L611; bra $L612; $L610: .loc 1 558 10 ld.u16 %r1150,[%r218]; setp.ne.u16 %r1151,%r1150,0; @ %r1151 bra $L612; .loc 1 556 17 add.u64 %r218,%r218,2; setp.ne.u64 %r1152,%r204,%r218; @ %r1152 bra $L610; bra $L609; $L612: .loc 1 2848 14 mov.u32 %r1153,9999; st.u32 [%r511],%r1153; .loc 1 2849 7 bra $L613; $L609: .loc 1 2851 26 add.u32 %r1154,%r136,1; .loc 1 2851 10 st.u32 [%r511],%r1154; .loc 1 2857 10 ld.s8 %r31,[%frame+80]; .loc 1 2857 13 setp.eq.u32 %r1155,%r31,0; @ %r1155 bra $L657; .loc 1 2856 5 mov.u64 %r63,%r1276; $L618: .loc 1 2859 10 cvt.u16.u32 %r1156,%r31; setp.ne.u16 %r1157,%r1156,46; @ %r1157 bra $L615; .loc 1 2868 13 ld.u8 %r1159,[%r63]; cvt.s16.s8 %r1158,%r1159; setp.ne.u16 %r1160,%r1158,0; @ %r1160 bra $L616; bra $L617; $L615: .loc 1 2861 7 add.u64 %r63,%r63,1; .loc 1 2857 10 ld.s8 %r31,[%r63]; .loc 1 2857 13 setp.ne.u32 %r1161,%r31,0; @ %r1161 bra $L618; bra $L617; $L616: add.u64 %r1275,%r63,1; mov.u64 %r228,%r1275; $L619: .loc 1 2870 10 ld.s8 %r32,[%r228]; cvt.u32.u32 %r1162,%r32; st.u8 [%r63],%r1162; .loc 1 2871 7 mov.u64 %r63,%r1275; .loc 1 2868 13 add.u64 %r228,%r228,1; setp.ne.u32 %r1163,%r32,0; @ ! %r1163 bra $L617; add.u64 %r1275,%r1275,1; bra $L619; $L620: .loc 1 2878 5 add.u64 %r63,%r63,-1; .loc 1 2877 20 ld.u8 %r1166,[%r63]; cvt.s16.s8 %r1165,%r1166; set.u32.ne.u16 %r1167,%r1165,69; neg.s32 %r1168,%r1167; mov.u32 %r1164,%r1168; set.u32.gt.u64 %r1171,%r63,%r1276; neg.s32 %r1172,%r1171; mov.u32 %r1170,%r1172; cvt.u16.u8 %r1346,%r1164; mov.u16 %r1174,%r1346; cvt.u16.u8 %r1346,%r1170; mov.u16 %r1175,%r1346; and.b16 %r1173,%r1174,%r1175; cvt.u32.u16 %r1176,%r1173; cvt.u16.u8 %r1177,%r1176; setp.ne.u16 %r1178,%r1177,0; @ %r1178 bra $L620; bra $L614; $L617: setp.gt.u64 %r1180,%r63,%r1276; @ %r1180 bra $L620; bra $L614; $L657: .loc 1 2856 5 mov.u64 %r63,%r1276; $L614: .loc 1 2879 6 mov.u32 %r1181,0; st.u8 [%r63],%r1181; $L613: .loc 1 2885 10 ld.s8 %r64,[%frame+80]; .loc 1 2885 20 cvt.u16.u32 %r1183,%r64; set.u32.eq.u16 %r1184,%r1183,32; neg.s32 %r1185,%r1184; mov.u32 %r1182,%r1185; set.u32.eq.u16 %r1188,%r1183,45; neg.s32 %r1189,%r1188; mov.u32 %r1186,%r1189; cvt.u16.u8 %r1346,%r1182; mov.u16 %r1191,%r1346; cvt.u16.u8 %r1346,%r1186; mov.u16 %r1192,%r1346; or.b16 %r1190,%r1191,%r1192; cvt.u32.u16 %r1193,%r1190; cvt.u16.u8 %r1194,%r1193; setp.eq.u16 %r1195,%r1194,0; @ %r1195 bra $L658; .loc 1 2884 5 mov.u64 %r68,%r1276; $L622: .loc 1 2886 5 add.u64 %r68,%r68,1; .loc 1 2885 10 ld.s8 %r64,[%r68]; .loc 1 2885 20 cvt.u16.u32 %r1197,%r64; set.u32.eq.u16 %r1198,%r1197,32; neg.s32 %r1199,%r1198; mov.u32 %r1196,%r1199; set.u32.eq.u16 %r1202,%r1197,45; neg.s32 %r1203,%r1202; mov.u32 %r1200,%r1203; cvt.u16.u8 %r1346,%r1196; mov.u16 %r1205,%r1346; cvt.u16.u8 %r1346,%r1200; mov.u16 %r1206,%r1346; or.b16 %r1204,%r1205,%r1206; cvt.u32.u16 %r1207,%r1204; cvt.u16.u8 %r1208,%r1207; setp.ne.u16 %r1209,%r1208,0; @ %r1209 bra $L622; bra $L621; $L658: .loc 1 2884 5 mov.u64 %r68,%r1276; $L621: mov.u64 %r236,%r1276; $L624: mov.u64 %r65,%r236; .loc 1 2890 20 add.u64 %r68,%r68,1; .loc 1 2890 16 cvt.u32.u32 %r1210,%r64; st.u8 [%r236],%r1210; .loc 1 2890 24 add.u64 %r236,%r236,1; setp.eq.u32 %r1211,%r64,0; @ %r1211 bra $L623; .loc 1 2890 18 ld.s8 %r64,[%r68]; bra $L624; $L623: .loc 1 2902 10 ld.s8 %r137,[%r65+-1]; .loc 1 2895 6 setp.eq.u32 %r1212,%r509,2; @ %r1212 bra $L625; max.s32 %r57,%r53,%r136; .loc 1 2902 26 cvt.u16.u32 %r1213,%r137; setp.eq.u16 %r1214,%r1213,48; @ %r1214 bra $L626; bra $L627; $L660: mov.u64 %r23,1; $L629: add.u64 %r276,%r65,-2; .loc 1 2903 12 mov.u32 %r1215,0; $L630: add.u64 %r65,%r65,-1; st.u8 [%r65],%r1215; .loc 1 2902 26 ld.u8 %r1217,[%r276]; cvt.s16.s8 %r1216,%r1217; setp.eq.u16 %r1218,%r1216,48; @ %r1218 bra $L628; bra $L627; $L626: .loc 1 2902 43 cvt.s64.s32 %r23,%r57; .loc 1 2902 33 sub.u64 %r1220,%r65,%r1276; .loc 1 2902 26 setp.lt.s64 %r1221,%r23,%r1220; @ %r1221 bra $L629; bra $L627; $L628: add.u64 %r276,%r276,-1; .loc 1 2902 33 sub.u64 %r1223,%r65,%r1276; .loc 1 2902 26 setp.lt.s64 %r1224,%r23,%r1223; @ %r1224 bra $L630; $L627: .loc 1 2907 6 setp.ne.u32 %r1225,%r509,3; @ %r1225 bra $L631; .loc 1 2907 30 add.u32 %r1226,%r53,%r136; .loc 1 2907 17 setp.ge.s32 %r1227,%r1226,0; @ %r1227 bra $L632; .loc 1 2910 10 mov.u32 %r1228,0; st.u8 [%frame+80],%r1228; .loc 1 2911 14 mov.u32 %r1229,0; st.u32 [%r511],%r1229; .loc 1 2909 9 mov.u64 %r65,%r1276; bra $L633; $L638: .loc 1 2923 33 mov.u32 %r1230,0; st.u32 [%r507+104],%r1230; .loc 1 2924 48 cvt.s64.s32 %r344,%r56; setp.le.u64 %r1231,%r344,31; @ %r1231 bra $L659; mov.u32 %r217,1; .loc 1 2922 5 mov.u32 %r67,4; $L635: .loc 1 2925 29 mov.u32 %r45,%r217; .loc 1 2924 56 add.u32 %r67,%r67,%r67; .loc 1 2924 48 add.u32 %r217,%r45,1; .loc 1 2924 44 cvt.s64.s32 %r1233,%r67; add.u64 %r1234,%r1233,28; .loc 1 2924 48 setp.le.u64 %r1235,%r1234,%r344; @ %r1235 bra $L635; st.u32 [%r507+104],%r45; bra $L634; $L659: mov.u32 %r45,%r1230; $L634: .loc 1 2926 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r507; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r45; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r1238,[%value_in]; } setp.ne.u64 %r1239,%r1238,0; @ %r1239 bra $L636; cvta.const.u64 %r1243,$LC4; mov.u32 %r1241,2926; cvta.const.u64 %r1240,$LC5; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1240; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1241; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1238; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r1243; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L636: .loc 1 2926 26 st.u64 [%r507+96],%r1238; .loc 1 2930 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1238; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1276; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r1247,[%value_in]; } .loc 1 2932 6 setp.eq.u64 %r1248,%r513,0; @ %r1248 bra $L468; .loc 1 2933 24 sub.u64 %r1250,%r65,%r1276; .loc 1 2933 19 add.u64 %r1251,%r1238,%r1250; .loc 1 2933 10 st.u64 [%r513],%r1251; .loc 1 2935 10 bra $L468; $L632: .loc 1 2918 16 ld.u32 %r1253,[%r511]; add.u32 %r510,%r510,%r1253; $L633: .loc 1 2918 7 add.u32 %r56,%r510,3; bra $L638; $L631: .loc 1 2920 7 add.u32 %r56,%r510,9; bra $L638; $L482: .loc 1 3028 6 cvt.u16.u32 %r1254,%r83; setp.eq.u16 %r1255,%r1254,32767; @ ! %r1255 bra $L737; bra $L639; $L476: .loc 1 2995 7 add.u64 %r1276,%frame,80; cvta.const.u64 %r1257,$LC6; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1276; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1257; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1259,[%value_in]; } .loc 1 2996 13 mov.u32 %r136,9999; .loc 1 2997 7 bra $L487; $L625: .loc 1 2902 26 cvt.u16.u32 %r1261,%r137; setp.eq.u16 %r1262,%r1261,48; @ %r1262 bra $L641; bra $L631; $L736: .loc 1 3242 7 add.u64 %r183,%r39,-2; and.b16 %r1263,%r1113,127; cvt.u32.u16 %r1265,%r1263; cvt.s32.s8 %r185,%r1265; bra $L604; $L641: .loc 1 2902 33 sub.u64 %r1267,%r65,%r1276; .loc 1 2902 26 setp.gt.s64 %r1268,%r1267,1; @ %r1268 bra $L660; bra $L631; $L468: .loc 1 2936 1 mov.u64 %value,%r1238; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ldcheck .visible .func (.param .u32 %value_out) _ldcheck (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; .reg .f64 %r31; .reg .u64 %r34; .reg .u16 %r35; .reg .u16 %r36; .reg .pred %r37; .reg .u16 %r38; .reg .pred %r39; .reg .pred %r40; mov.u64 %r30,%ar0; .loc 1 2954 8 ld.f64 %r31,[%r30]; st.f64 [%frame+32],%r31; .loc 1 2958 3 add.u64 %r34,%frame,32; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call e53toe$isra$0,(%out_arg1,%out_arg2); } .loc 1 2965 6 ld.u16 %r36,[%frame+18]; and.b16 %r35,%r36,32767; setp.ne.u16 %r37,%r35,32767; @ %r37 bra $L741; mov.u64 %r25,%frame; add.u64 %r26,%frame,18; $L740: .loc 1 558 10 ld.u16 %r38,[%r25]; setp.ne.u16 %r39,%r38,0; @ %r39 bra $L742; .loc 1 556 17 add.u64 %r25,%r25,2; setp.ne.u64 %r40,%r25,%r26; @ %r40 bra $L740; .loc 1 2971 14 mov.u32 %r29,2; bra $L738; $L741: .loc 1 2974 12 mov.u32 %r29,0; bra $L738; $L742: .loc 1 2969 9 mov.u32 %r29,1; $L738: .loc 1 2975 1 mov.u32 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-linkr.o/ 0 0 0 644 1513 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _link_r .visible .func (.param .u32 %value_out) _link_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/linkr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: link .extern .func (.param .u32 %value_out) link (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _link_r .visible .func (.param .u32 %value_out) _link_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 52 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 53 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),link,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 53 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 53 47 ld.global.u32 %r22,[errno]; .loc 1 53 38 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 54 17 st.u32 [%r24],%r22; $L1: .loc 1 56 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-llabs.o/ 0 0 0 644 530 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: llabs .visible .func (.param .u64 %value_out) llabs (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/llabs.c" // BEGIN GLOBAL FUNCTION DEF: llabs .visible .func (.param .u64 %value_out) llabs (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 59 21 abs.s64 %value,%r23; .loc 1 60 1 st.param.u64 [%value_out],%value; ret; } lib_a-lldiv.o/ 0 0 0 644 1027 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: lldiv .visible .func lldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/lldiv.c" // BEGIN GLOBAL FUNCTION DEF: lldiv .visible .func lldiv (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r31; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 101 22 div.s64 %r22,%r27,%r28; .loc 1 102 21 rem.s64 %r23,%r27,%r28; .loc 1 103 17 not.b64 %r29,%r27; and.b64 %r30,%r29,%r23; setp.ge.s64 %r31,%r30,0; @ %r31 bra $L2; .loc 1 104 14 add.u64 %r22,%r22,1; .loc 1 105 14 sub.u64 %r23,%r23,%r28; $L2: .loc 1 107 9 st.u64 [%r26],%r22; st.u64 [%r26+8],%r23; .loc 1 108 1 ret; } lib_a-locale.o/ 0 0 0 644 5571 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _setlocale_r .visible .func (.param .u64 %value_out) _setlocale_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/locale/locale.c" // BEGIN GLOBAL FUNCTION DECL: __locale_mb_cur_max .visible .func (.param .u32 %value_out) __locale_mb_cur_max; // BEGIN GLOBAL FUNCTION DECL: setlocale .visible .func (.param .u64 %value_out) setlocale (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_b .extern .const .align 1 .u8 _ctype_b[]; // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ascii_wctomb .extern .func (.param .u32 %value_out) __ascii_wctomb (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ascii_mbtowc .extern .func (.param .u32 %value_out) __ascii_mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[1] = {0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {46,0 }; // BEGIN GLOBAL VAR DEF: __global_locale .visible .global .align 8 .u64 __global_locale[53] = {67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,67,0,0,0,__ascii_wctomb,__ascii_mbtowc,0,generic(_ctype_b) + 127,generic($LC3),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),9187201950435737471,140185576636287,20628226808283137,0,0,0,20628226808283136,0,0,0,0 }; // BEGIN GLOBAL VAR DEF: _PathLocale .visible .global .align 8 .u64 _PathLocale[1]; // BEGIN GLOBAL FUNCTION DEF: _setlocale_r .visible .func (.param .u64 %value_out) _setlocale_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r28; .reg .pred %r29; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r36; .reg .pred %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u64 %r43; mov.u64 %r28,%ar2; .loc 1 298 6 setp.ne.u64 %r29,%r28,0; @ %r29 bra $L2; $L4: .loc 1 304 10 cvta.const.u64 %r25,$LC0; bra $L1; $L2: .loc 1 300 11 cvta.const.u64 %r31,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r32,[%value_in]; } .loc 1 300 10 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 300 39 cvta.const.u64 %r43,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r43; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r36,[%value_in]; } .loc 1 300 36 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L4; .loc 1 301 7 cvta.const.u64 %r39,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r40,[%value_in]; } .loc 1 301 4 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L4; .loc 1 302 16 mov.u64 %r25,0; $L1: .loc 1 438 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_mb_cur_max .visible .func (.param .u32 %value_out) __locale_mb_cur_max { .reg .u32 %value; .reg .u64 %r25; .loc 1 981 45 cvta.global.u64 %r25,__global_locale; ld.s8 %value,[%r25+352]; .loc 1 983 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: setlocale .visible .func (.param .u64 %value_out) setlocale (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r42; mov.u64 %r27,%ar1; .loc 1 298 6 setp.ne.u64 %r28,%r27,0; @ %r28 bra $L16; $L18: .loc 1 304 10 cvta.const.u64 %r25,$LC0; bra $L15; $L16: .loc 1 300 11 cvta.const.u64 %r30,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r31,[%value_in]; } .loc 1 300 10 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L18; .loc 1 300 39 cvta.const.u64 %r42,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r35,[%value_in]; } .loc 1 300 36 setp.eq.u32 %r36,%r35,0; @ %r36 bra $L18; .loc 1 301 7 cvta.const.u64 %r38,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r39,[%value_in]; } .loc 1 301 4 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L18; .loc 1 302 16 mov.u64 %r25,0; $L15: .loc 1 1006 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } /538 0 0 0 644 1400 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __localeconv_l .visible .func (.param .u64 %value_out) __localeconv_l (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/locale/localeconv.c" // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .visible .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: localeconv .visible .func (.param .u64 %value_out) localeconv; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DEF: __localeconv_l .visible .func (.param .u64 %value_out) __localeconv_l (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; mov.u64 %r23,%ar0; .loc 1 8 17 add.u64 %value,%r23,256; .loc 1 51 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _localeconv_r .visible .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 59 10 cvta.global.u64 %value,__global_locale+256; .loc 1 60 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: localeconv .visible .func (.param .u64 %value_out) localeconv { .reg .u64 %value; .loc 1 66 10 cvta.global.u64 %value,__global_locale+256; .loc 1 67 1 st.param.u64 [%value_out],%value; ret; } lib_a-lrand48.o/0 0 0 644 1997 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _lrand48_r .visible .func (.param .u64 %value_out) _lrand48_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/lrand48.c" // BEGIN GLOBAL FUNCTION DECL: lrand48 .visible .func (.param .u64 %value_out) lrand48; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _lrand48_r .visible .func (.param .u64 %value_out) _lrand48_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r31; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u64 %r40; mov.u64 %r31,%ar0; .loc 1 20 17 add.u64 %r34,%r31,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r36,[%r31+244]; .loc 1 21 50 shl.b64 %r37,%r36,15; .loc 1 22 39 ld.u16 %r39,[%r31+242]; shr.u16 %r38,%r39,1; cvt.u64.u16 %r40,%r38; .loc 1 21 57 add.u64 %value,%r37,%r40; .loc 1 23 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: lrand48 .visible .func (.param .u64 %value_out) lrand48 { .reg .u64 %value; .reg .u64 %r22; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u64 %r40; .loc 1 29 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 20 17 add.u64 %r34,%r22,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r36,[%r22+244]; .loc 1 21 50 shl.b64 %r37,%r36,15; .loc 1 22 39 ld.u16 %r39,[%r22+242]; shr.u16 %r38,%r39,1; cvt.u64.u16 %r40,%r38; .loc 1 21 57 add.u64 %value,%r37,%r40; .loc 1 30 1 st.param.u64 [%value_out],%value; ret; } lib_a-lseekr.o/ 0 0 0 644 1728 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _lseek_r .visible .func (.param .u64 %value_out) _lseek_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/reent/lseekr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: lseek .extern .func (.param .u64 %value_out) lseek (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _lseek_r .visible .func (.param .u64 %value_out) _lseek_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r32; .reg .pred %r33; .reg .pred %r34; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; mov.u32 %r27,%ar3; .loc 1 48 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 49 14 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; call (%value_in),lseek,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } .loc 1 49 6 setp.ne.u64 %r33,%r32,-1; @ %r33 bra $L1; .loc 1 49 64 ld.global.u32 %r22,[errno]; .loc 1 49 55 setp.eq.u32 %r34,%r22,0; @ %r34 bra $L1; .loc 1 50 17 st.u32 [%r24],%r22; $L1: .loc 1 52 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-makebuf.o/0 0 0 644 7423 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __smakebuf_r .visible .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/makebuf.c" // BEGIN GLOBAL FUNCTION DECL: __swhatbuf_r .visible .func (.param .u32 %value_out) __swhatbuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _fstat_r .extern .func (.param .u32 %value_out) _fstat_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _cleanup_r .extern .func _cleanup_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _isatty_r .extern .func (.param .u32 %value_out) _isatty_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: __smakebuf_r .visible .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,112; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u64 %r23; .reg .u64 %r27; .reg .u32 %r29; .reg .u32 %r41; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .pred %r58; .reg .u32 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .u64 %r74; .reg .pred %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .pred %r78; .reg .u16 %r79; .reg .u16 %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .pred %r87; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; mov.u64 %r51,%ar0; mov.u64 %r52,%ar1; .loc 1 46 9 ld.s16 %r22,[%r52+16]; .loc 1 46 6 cvt.u16.u32 %r54,%r22; and.b16 %r53,%r54,2; setp.eq.u16 %r55,%r53,0; @ %r55 bra $L2; .loc 1 48 32 add.u64 %r23,%r52,119; .loc 1 48 30 st.u64 [%r52],%r23; .loc 1 48 21 st.u64 [%r52+24],%r23; .loc 1 49 21 mov.u32 %r56,1; st.u32 [%r52+32],%r56; bra $L1; $L2: .loc 1 96 9 ld.s16 %r41,[%r52+18]; .loc 1 96 6 cvt.u16.u32 %r57,%r41; setp.lt.s16 %r58,%r57,0; @ %r58 bra $L4; .loc 1 96 24 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_fstat_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r62,[%value_in]; } .loc 1 96 21 setp.ge.s32 %r63,%r62,0; @ %r63 bra $L5; ld.s16 %r22,[%r52+16]; $L4: .loc 1 101 10 cvt.u16.u32 %r65,%r22; and.b16 %r64,%r65,128; setp.ne.u16 %r66,%r64,0; @ %r66 bra $L10; .loc 1 99 19 mov.u32 %r47,0; .loc 1 104 18 mov.u64 %r50,1024; .loc 1 101 10 mov.u32 %r48,%r47; bra $L6; $L5: .loc 1 109 17 ld.u32 %r68,[%frame+4]; and.b32 %r67,%r68,61440; set.u32.eq.u32 %r70,%r67,8192; neg.s32 %r47,%r70; .loc 1 123 12 mov.u64 %r50,1024; .loc 1 124 10 mov.u32 %r48,2048; bra $L6; $L10: .loc 1 99 19 mov.u32 %r47,0; .loc 1 102 18 mov.u64 %r50,64; mov.u32 %r48,%r47; $L6: .loc 1 53 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r50; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r74,[%value_in]; } .loc 1 53 6 setp.ne.u64 %r75,%r74,0; @ %r75 bra $L7; .loc 1 55 10 ld.u16 %r77,[%r52+16]; and.b16 %r76,%r77,512; setp.ne.u16 %r78,%r76,0; @ %r78 bra $L1; .loc 1 57 15 and.b16 %r79,%r77,-4; or.b16 %r81,%r79,2; st.u16 [%r52+16],%r81; .loc 1 58 29 add.u64 %r27,%r52,119; .loc 1 58 27 st.u64 [%r52],%r27; .loc 1 58 18 st.u64 [%r52+24],%r27; .loc 1 59 18 mov.u32 %r82,1; st.u32 [%r52+32],%r82; bra $L1; $L7: .loc 1 64 22 mov.u64 %r83,_cleanup_r; st.u64 [%r51+88],%r83; .loc 1 65 18 ld.u16 %r85,[%r52+16]; or.b16 %r84,%r85,128; cvt.s32.s16 %r29,%r84; st.u16 [%r52+16],%r84; .loc 1 66 30 st.u64 [%r52],%r74; .loc 1 66 21 st.u64 [%r52+24],%r74; .loc 1 67 21 st.u32 [%r52+32],%r50; .loc 1 68 10 setp.eq.u32 %r87,%r47,0; @ %r87 bra $L8; .loc 1 68 25 ld.s16 %r90,[%r52+18]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r90; call (%value_in),_isatty_r,(%out_arg1,%out_arg2); ld.param.u32 %r91,[%value_in]; } .loc 1 68 22 setp.ne.u32 %r92,%r91,0; @ %r92 bra $L9; .loc 1 69 18 ld.s16 %r29,[%r52+16]; bra $L8; $L9: .loc 1 69 13 ld.u16 %r94,[%r52+16]; and.b16 %r93,%r94,-4; or.b16 %r95,%r93,1; cvt.s32.s16 %r29,%r95; $L8: .loc 1 70 18 cvt.u16.u32 %r96,%r48; cvt.u16.u32 %r98,%r29; or.b16 %r97,%r96,%r98; st.u16 [%r52+16],%r97; $L1: .loc 1 72 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: __swhatbuf_r .visible .func (.param .u32 %value_out) __swhatbuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,112; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r25; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u16 %r37; .reg .pred %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .pred %r41; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; mov.u64 %r35,%ar2; mov.u64 %r36,%ar3; .loc 1 96 9 ld.s16 %r22,[%r34+18]; .loc 1 96 6 cvt.u16.u32 %r37,%r22; setp.ge.s16 %r38,%r37,0; @ %r38 bra $L15; $L17: .loc 1 101 10 ld.u16 %r40,[%r34+16]; and.b16 %r39,%r40,128; setp.eq.u16 %r41,%r39,0; @ %r41 bra $L18; mov.u32 %r25,0; mov.u64 %r31,64; mov.u32 %r32,%r25; bra $L16; $L15: .loc 1 96 24 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r22; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),_fstat_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r45,[%value_in]; } .loc 1 96 21 setp.lt.s32 %r46,%r45,0; @ %r46 bra $L17; .loc 1 109 17 ld.u32 %r48,[%frame+4]; and.b32 %r47,%r48,61440; set.u32.eq.u32 %r50,%r47,8192; neg.s32 %r25,%r50; .loc 1 124 10 mov.u64 %r31,1024; mov.u32 %r32,2048; bra $L16; $L18: mov.u32 %r25,0; mov.u64 %r31,1024; mov.u32 %r32,%r25; $L16: .loc 1 99 19 st.u32 [%r36],%r25; .loc 1 104 18 st.u64 [%r35],%r31; .loc 1 125 1 mov.u32 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /558 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-malloc.o/ 0 0 0 644 1630 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .visible .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); .file 1 "../../../../../../../newlib/libc/machine/nvptx/malloc.c" // BEGIN GLOBAL FUNCTION DECL: malloc .extern .func (.param .u64 %value_out) malloc (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_uni .extern .shared .u32 __nvptx_uni[32]; // BEGIN GLOBAL FUNCTION DEF: __nvptx_malloc .visible .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u64 %r35; { .reg .u32 %ustmp0; .reg .u64 %ustmp1; mov.u32 %ustmp0,%tid.y; mul.wide.u32 %ustmp1,%ustmp0,4; mov.u64 %r35,__nvptx_uni; add.u64 %r35,%r35,%ustmp1; ld.shared.u32 %r31,[%r35]; mov.u32 %ustmp0,%laneid; and.b32 %r31,%r31,%ustmp0; setp.eq.u32 %r34,%r31,%ustmp0; } mov.u64 %r25,%ar0; .loc 1 24 20 add.u64 %r27,%r25,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; @ %r34 call (%value_in),malloc,(%out_arg1); ld.param.u64 %r28,[%value_in]; } mov.b64 {%r32,%r33},%r28; shfl.idx.b32 %r32,%r32,%r31,31; shfl.idx.b32 %r33,%r33,%r31,31; mov.b64 %r28,{%r32,%r33}; .loc 1 25 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L3; .loc 1 26 6 add.u64 %r24,%r28,8; .loc 1 26 22 st.u64 [%r28],%r25; bra $L1; $L3: .loc 1 24 20 mov.u64 %r24,%r28; $L1: .loc 1 29 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-mallocr.o/0 0 0 644 1492 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _malloc_r .visible .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../../newlib/libc/machine/nvptx/mallocr.c" // BEGIN GLOBAL FUNCTION DECL: _free_r .visible .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _malloc_r .visible .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar1; .loc 1 20 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 21 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _free_r .visible .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; mov.u64 %r23,%ar1; .loc 1 25 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __nvptx_free,(%out_arg1); } .loc 1 26 1 ret; } /577 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-mblen.o/ 0 0 0 644 1039 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mblen .visible .func (.param .u32 %value_out) mblen (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/mblen.c" // BEGIN GLOBAL FUNCTION DEF: mblen .visible .func (.param .u32 %value_out) mblen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .pred %r26; .reg .u16 %r27; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 66 6 setp.eq.u64 %r26,%r24,0; @ %r26 bra $L3; .loc 1 66 17 ld.u8 %r28,[%r24]; cvt.s16.s8 %r27,%r28; setp.eq.u16 %r29,%r27,0; @ %r29 bra $L4; .loc 1 68 6 setp.ne.u64 %r30,%r25,0; .loc 1 69 12 selp.u32 %r23,1,-1,%r30; bra $L1; $L3: .loc 1 67 12 mov.u32 %r23,0; bra $L1; $L4: mov.u32 %r23,0; $L1: .loc 1 72 1 mov.u32 %value,%r23; st.param.u32 [%value_out],%value; ret; } lib_a-mblen_r.o/0 0 0 644 1227 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mblen_r .visible .func (.param .u32 %value_out) _mblen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/mblen_r.c" // BEGIN GLOBAL FUNCTION DEF: _mblen_r .visible .func (.param .u32 %value_out) _mblen_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .pred %r28; .reg .u16 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 61 6 setp.eq.u64 %r28,%r25,0; @ %r28 bra $L3; .loc 1 61 17 ld.u8 %r30,[%r25]; cvt.s16.s8 %r29,%r30; setp.eq.u16 %r31,%r29,0; @ %r31 bra $L4; .loc 1 63 6 setp.ne.u64 %r32,%r26,0; .loc 1 64 12 selp.u32 %r23,1,-1,%r32; bra $L1; $L3: .loc 1 62 12 mov.u32 %r23,0; bra $L1; $L4: mov.u32 %r23,0; $L1: .loc 1 67 1 mov.u32 %value,%r23; st.param.u32 [%value_out],%value; ret; } /597 0 0 0 644 1398 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mbstowcs .visible .func (.param .u64 %value_out) mbstowcs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/mbstowcs.c" // BEGIN GLOBAL FUNCTION DEF: mbstowcs .visible .func (.param .u64 %value_out) mbstowcs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r35; .reg .pred %r36; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 63 6 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L2; mov.u64 %r25,%r31; mov.u64 %r26,%r32; add.u64 %r29,%r26,%r33; .loc 1 61 7 mov.u32 %r24,0; $L4: .loc 1 65 22 ld.s8 %r23,[%r26]; .loc 1 65 20 st.u32 [%r25],%r23; .loc 1 65 10 setp.ne.u32 %r35,%r23,0; @ %r35 bra $L3; .loc 1 71 10 cvt.s64.s32 %r33,%r24; bra $L2; $L3: .loc 1 67 12 add.u32 %r24,%r24,1; .loc 1 68 18 add.u64 %r25,%r25,4; add.u64 %r26,%r26,1; setp.ne.u64 %r36,%r26,%r29; @ %r36 bra $L4; .loc 1 71 10 cvt.s64.s32 %r33,%r24; $L2: .loc 1 73 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /615 0 0 0 644 2936 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mbstowcs_r .visible .func (.param .u64 %value_out) _mbstowcs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/mbstowcs_r.c" // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: __locale_mb_cur_max .extern .func (.param .u32 %value_out) __locale_mb_cur_max; // BEGIN GLOBAL FUNCTION DEF: _mbstowcs_r .visible .func (.param .u64 %value_out) _mbstowcs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r22; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u32 %r36; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .u64 %r51; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; mov.u64 %r32,%ar4; .loc 1 16 6 setp.eq.u64 %r33,%r29,0; @ %r33 bra $L7; .loc 1 18 12 setp.eq.u64 %r34,%r31,0; @ ! %r34 bra $L2; bra $L8; $L7: .loc 1 17 7 mov.u64 %r31,1; $L2: mov.u64 %r27,0; cvta.global.u64 %r51,__global_locale; $L6: .loc 1 20 15 ld.u64 %r22,[%r51+232]; .loc 1 20 37 { .param .u32 %value_in; call (%value_in),__locale_mb_cur_max; ld.param.u32 %r36,[%value_in]; } .loc 1 20 15 cvt.s64.s32 %r42,%r36; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u64 %in_ar3,.param .u64 %in_ar4); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r42; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r32; call (%value_in),%r22,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5),$LCT0; ld.param.u32 %r43,[%value_in]; } .loc 1 21 10 setp.ge.s32 %r44,%r43,0; @ %r44 bra $L4; .loc 1 23 19 mov.u32 %r45,0; st.u32 [%r32],%r45; .loc 1 24 11 mov.u64 %r27,-1; bra $L1; $L4: .loc 1 26 15 setp.eq.u32 %r46,%r43,0; @ %r46 bra $L1; .loc 1 28 9 cvt.s64.s32 %r47,%r43; add.u64 %r30,%r30,%r47; .loc 1 29 7 add.u64 %r27,%r27,1; .loc 1 30 10 setp.eq.u64 %r48,%r29,0; @ %r48 bra $L6; .loc 1 32 4 add.u64 %r29,%r29,4; .loc 1 33 4 add.u64 %r31,%r31,-1; .loc 1 18 12 setp.eq.u64 %r49,%r31,0; @ ! %r49 bra $L6; bra $L1; $L8: mov.u64 %r27,%r31; $L1: .loc 1 37 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-mbtowc.o/ 0 0 0 644 1285 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mbtowc .visible .func (.param .u32 %value_out) mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/mbtowc.c" // BEGIN GLOBAL FUNCTION DEF: mbtowc .visible .func (.param .u32 %value_out) mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .u16 %r33; .reg .u32 %r34; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 74 6 setp.eq.u64 %r29,%r27,0; @ %r29 bra $L4; .loc 1 76 6 setp.eq.u64 %r30,%r28,0; @ %r30 bra $L5; .loc 1 79 22 ld.s8 %r24,[%r27]; .loc 1 78 6 setp.eq.u64 %r31,%r26,0; @ %r31 bra $L3; .loc 1 79 12 st.u32 [%r26],%r24; $L3: .loc 1 80 14 cvt.u16.u32 %r33,%r24; set.u32.ne.u16 %r34,%r33,0; neg.s32 %r25,%r34; bra $L1; $L4: .loc 1 75 12 mov.u32 %r25,0; bra $L1; $L5: .loc 1 77 12 mov.u32 %r25,-1; $L1: .loc 1 82 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } /635 0 0 0 644 3594 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mbtowc_r .visible .func (.param .u32 %value_out) _mbtowc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/mbtowc_r.c" // BEGIN GLOBAL FUNCTION DECL: __ascii_mbtowc .visible .func (.param .u32 %value_out) __ascii_mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _mbtowc_r .visible .func (.param .u32 %value_out) _mbtowc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; mov.u64 %r28,%ar4; .loc 1 17 10 cvta.global.u64 %r34,__global_locale; ld.u64 %r36,[%r34+232]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u64 %in_ar3,.param .u64 %in_ar4); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r28; call (%value_in),%r36,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5),$LCT0; ld.param.u32 %r35,[%value_in]; } .loc 1 18 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ascii_mbtowc .visible .func (.param .u32 %value_out) __ascii_mbtowc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; } .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .pred %r32; .reg .pred %r33; .reg .pred %r34; .reg .u32 %r35; .reg .u16 %r37; .reg .u32 %r38; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; .loc 1 30 6 setp.ne.u64 %r32,%r28,0; .loc 1 31 9 selp.u64 %r28,%r28,%frame,%r32; .loc 1 33 6 setp.eq.u64 %r33,%r29,0; @ %r33 bra $L5; .loc 1 36 6 setp.eq.u64 %r34,%r30,0; @ %r34 bra $L6; .loc 1 47 10 ld.u8 %r35,[%r29]; st.u32 [%r28],%r35; .loc 1 49 6 ld.u8 %r37,[%r29]; set.u32.ne.u16 %r38,%r37,0; neg.s32 %r26,%r38; bra $L2; $L5: .loc 1 34 12 mov.u32 %r26,0; bra $L2; $L6: .loc 1 37 12 mov.u32 %r26,-2; $L2: .loc 1 53 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } lib_a-memchr.o/ 0 0 0 644 3123 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memchr .visible .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/memchr.c" // BEGIN GLOBAL FUNCTION DEF: memchr .visible .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .pred %r72; .reg .pred %r73; mov.u64 %r46,%ar0; mov.u32 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 70 17 mov.u32 %r49,%r47; cvt.u32.u8 %r39,%r49; .loc 1 77 10 and.b64 %r50,%r46,7; setp.eq.u64 %r51,%r50,0; @ %r51 bra $L10; .loc 1 79 18 add.u64 %r24,%r48,-1; .loc 1 79 10 setp.eq.u64 %r52,%r48,0; @ %r52 bra $L11; .loc 1 81 10 cvt.u16.u32 %r55,%r39; bra $L4; $L5: .loc 1 79 18 add.u64 %r24,%r24,-1; .loc 1 79 10 setp.eq.u64 %r53,%r24,-1; @ %r53 bra $L12; $L4: .loc 1 81 10 ld.u8 %r54,[%r46]; setp.eq.u16 %r56,%r54,%r55; @ %r56 bra $L13; .loc 1 83 10 add.u64 %r46,%r46,1; .loc 1 77 10 and.b64 %r57,%r46,7; setp.ne.u64 %r58,%r57,0; @ %r58 bra $L5; bra $L2; $L10: mov.u64 %r24,%r48; $L2: .loc 1 86 6 setp.le.u64 %r59,%r24,7; @ %r59 bra $L6; and.b32 %r38,%r47,255; .loc 1 97 16 shl.b32 %r60,%r38,8; .loc 1 97 21 or.b32 %r61,%r60,%r38; .loc 1 97 12 cvt.s64.s32 %r40,%r61; .loc 1 98 19 shl.b64 %r27,%r40,16; .loc 1 98 12 or.b64 %r41,%r27,%r40; .loc 1 100 22 shl.b64 %r28,%r41,32; .loc 1 100 14 or.b64 %r42,%r28,%r41; $L8: .loc 1 104 15 ld.u64 %r62,[%r46]; xor.b64 %r30,%r42,%r62; add.u64 %r63,%r30,-72340172838076673; not.b64 %r64,%r30; and.b64 %r65,%r63,%r64; and.b64 %r66,%r65,-9187201950435737472; .loc 1 104 14 setp.ne.u64 %r67,%r66,0; @ %r67 bra $L7; .loc 1 106 18 add.u64 %r24,%r24,-8; .loc 1 107 15 add.u64 %r46,%r46,8; .loc 1 102 21 setp.gt.u64 %r68,%r24,7; @ %r68 bra $L8; $L6: .loc 1 118 10 setp.eq.u64 %r69,%r24,0; @ %r69 bra $L14; $L7: add.u64 %r37,%r46,%r24; .loc 1 77 10 mov.u64 %r45,%r46; .loc 1 120 10 cvt.u16.u32 %r71,%r39; $L9: ld.u8 %r70,[%r45]; setp.eq.u16 %r72,%r70,%r71; @ %r72 bra $L1; .loc 1 122 10 add.u64 %r45,%r45,1; .loc 1 118 10 setp.ne.u64 %r73,%r37,%r45; @ %r73 bra $L9; .loc 1 80 16 mov.u64 %r45,0; bra $L1; $L11: mov.u64 %r45,%r48; bra $L1; $L12: mov.u64 %r45,0; bra $L1; $L13: mov.u64 %r45,%r46; bra $L1; $L14: mov.u64 %r45,%r24; $L1: .loc 1 126 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } lib_a-memcmp.o/ 0 0 0 644 2243 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memcmp .visible .func (.param .u32 %value_out) memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/memcmp.c" // BEGIN GLOBAL FUNCTION DEF: memcmp .visible .func (.param .u32 %value_out) memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u32 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .pred %r55; .reg .u64 %r57; .reg .u64 %r58; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; .loc 1 73 6 setp.le.u64 %r41,%r40,7; @ %r41 bra $L2; .loc 1 73 25 or.b64 %r42,%r38,%r39; and.b64 %r43,%r42,7; .loc 1 73 21 setp.eq.u64 %r44,%r43,0; @ %r44 bra $L3; bra $L15; $L2: .loc 1 94 11 add.u64 %r28,%r40,-1; .loc 1 94 10 setp.ne.u64 %r45,%r40,0; @ %r45 bra $L10; .loc 1 102 10 mov.u32 %r37,0; bra $L1; $L3: .loc 1 81 14 ld.u64 %r46,[%r38]; ld.u64 %r47,[%r39]; setp.ne.u64 %r48,%r46,%r47; @ %r48 bra $L7; .loc 1 83 13 add.u64 %r38,%r38,8; .loc 1 84 13 add.u64 %r39,%r39,8; .loc 1 85 13 add.u64 %r40,%r40,-8; .loc 1 79 16 setp.gt.u64 %r49,%r40,7; @ %r49 bra $L3; bra $L2; $L10: .loc 1 49 1 mov.u64 %r30,%r38; .loc 1 94 10 add.u64 %r57,%r28,1; add.u64 %r58,%r30,%r57; $L9: .loc 1 96 11 ld.u8 %r26,[%r30]; .loc 1 96 18 ld.u8 %r27,[%r39]; .loc 1 96 10 cvt.u16.u32 %r50,%r26; cvt.u16.u32 %r51,%r27; setp.eq.u16 %r52,%r50,%r51; @ %r52 bra $L8; .loc 1 97 13 sub.u32 %r37,%r26,%r27; bra $L1; $L8: .loc 1 98 9 add.u64 %r30,%r30,1; .loc 1 99 9 add.u64 %r39,%r39,1; .loc 1 94 10 setp.ne.u64 %r55,%r30,%r58; @ %r55 bra $L9; .loc 1 102 10 mov.u32 %r37,0; bra $L1; $L15: .loc 1 94 11 add.u64 %r28,%r40,-1; bra $L10; $L7: add.u64 %r28,%r40,-1; bra $L10; $L1: .loc 1 104 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } lib_a-memcpy.o/ 0 0 0 644 3095 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memcpy .visible .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/memcpy.c" // BEGIN GLOBAL FUNCTION DEF: memcpy .visible .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u64 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r90; mov.u64 %r62,%ar0; mov.u64 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 73 6 setp.le.u64 %r65,%r64,31; @ %r65 bra $L11; .loc 1 73 28 or.b64 %r66,%r62,%r63; and.b64 %r67,%r66,7; .loc 1 73 24 setp.eq.u64 %r68,%r67,0; @ %r68 bra $L3; bra $L16; $L18: .loc 1 92 16 and.b64 %r64,%r64,7; add.u64 %r69,%r37,-8; and.b64 %r71,%r69,-8; add.u64 %r40,%r71,8; .loc 1 91 23 add.u64 %r31,%r31,%r40; .loc 1 91 40 add.u64 %r63,%r63,%r40; bra $L2; $L11: .loc 1 66 9 mov.u64 %r31,%r62; bra $L2; $L12: .loc 1 89 19 mov.u64 %r64,%r37; $L2: .loc 1 100 14 add.u64 %r35,%r64,-1; .loc 1 100 10 setp.ne.u64 %r72,%r64,0; @ %r72 bra $L5; bra $L17; $L3: add.u64 %r73,%r64,-32; and.b64 %r75,%r73,-32; add.u64 %r55,%r75,32; add.u64 %r56,%r63,%r55; .loc 1 75 19 mov.u64 %r41,%r62; $L7: .loc 1 81 26 ld.u64 %r76,[%r63]; st.u64 [%r41],%r76; .loc 1 82 26 ld.u64 %r77,[%r63+8]; st.u64 [%r41+8],%r77; .loc 1 83 26 ld.u64 %r78,[%r63+16]; st.u64 [%r41+16],%r78; add.u64 %r63,%r63,32; add.u64 %r41,%r41,32; .loc 1 84 26 ld.u64 %r79,[%r63+-8]; st.u64 [%r41+-8],%r79; .loc 1 79 19 setp.ne.u64 %r80,%r56,%r63; @ %r80 bra $L7; .loc 1 84 23 add.u64 %r31,%r62,%r55; .loc 1 85 16 and.b64 %r37,%r64,31; .loc 1 89 19 and.b64 %r81,%r64,24; setp.eq.u64 %r82,%r81,0; @ %r82 bra $L12; mov.u64 %r47,%r31; mov.u64 %r46,%r63; add.u64 %r90,%r63,%r37; $L8: .loc 1 91 26 ld.u64 %r83,[%r46]; st.u64 [%r47],%r83; .loc 1 89 19 add.u64 %r46,%r46,8; add.u64 %r47,%r47,8; sub.u64 %r84,%r90,%r46; setp.gt.u64 %r85,%r84,7; @ %r85 bra $L8; bra $L18; $L5: mov.u64 %r33,%r31; mov.u64 %r42,%r63; add.u64 %r86,%r35,1; add.u64 %r45,%r33,%r86; $L10: .loc 1 101 12 ld.u8 %r87,[%r42]; st.u8 [%r33],%r87; .loc 1 100 10 add.u64 %r33,%r33,1; add.u64 %r42,%r42,1; setp.ne.u64 %r88,%r33,%r45; @ %r88 bra $L10; bra $L17; $L16: .loc 1 100 14 add.u64 %r35,%r64,-1; .loc 1 66 9 mov.u64 %r31,%r62; bra $L5; $L17: .loc 1 105 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } lib_a-memmove.o/0 0 0 644 3697 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memmove .visible .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/memmove.c" // BEGIN GLOBAL FUNCTION DEF: memmove .visible .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u64 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .pred %r91; .reg .u64 %r93; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; .loc 1 86 6 setp.le.u64 %r68,%r65,%r66; @ %r68 bra $L2; .loc 1 86 30 add.u64 %r40,%r66,%r67; .loc 1 86 17 setp.le.u64 %r69,%r40,%r65; @ %r69 bra $L2; .loc 1 90 11 add.u64 %r41,%r65,%r67; .loc 1 91 14 setp.eq.u64 %r70,%r67,0; @ %r70 bra $L16; $L4: .loc 1 93 11 add.u64 %r40,%r40,-1; add.u64 %r41,%r41,-1; ld.u8 %r71,[%r40]; st.u8 [%r41],%r71; .loc 1 91 14 setp.ne.u64 %r72,%r66,%r40; @ %r72 bra $L4; bra $L16; $L2: .loc 1 101 10 setp.le.u64 %r73,%r67,31; @ %r73 bra $L13; .loc 1 101 34 or.b64 %r74,%r65,%r66; and.b64 %r75,%r74,7; .loc 1 101 30 setp.eq.u64 %r76,%r75,0; @ %r76 bra $L6; bra $L23; $L24: .loc 1 120 22 and.b64 %r67,%r67,7; add.u64 %r77,%r36,-8; and.b64 %r79,%r77,-8; add.u64 %r32,%r79,8; .loc 1 119 27 add.u64 %r33,%r33,%r32; .loc 1 119 44 add.u64 %r66,%r66,%r32; bra $L5; $L13: mov.u64 %r33,%r65; bra $L5; $L14: .loc 1 117 25 mov.u64 %r67,%r36; $L5: .loc 1 128 20 add.u64 %r34,%r67,-1; .loc 1 128 14 setp.ne.u64 %r80,%r67,0; @ %r80 bra $L8; bra $L16; $L6: add.u64 %r81,%r67,-32; and.b64 %r83,%r81,-32; add.u64 %r58,%r83,32; add.u64 %r59,%r66,%r58; .loc 1 101 30 mov.u64 %r44,%r65; $L9: .loc 1 109 32 ld.u64 %r25,[%r66]; .loc 1 109 30 st.u64 [%r44],%r25; .loc 1 110 32 ld.u64 %r26,[%r66+8]; .loc 1 110 30 st.u64 [%r44+8],%r26; .loc 1 111 32 ld.u64 %r27,[%r66+16]; .loc 1 111 30 st.u64 [%r44+16],%r27; add.u64 %r66,%r66,32; add.u64 %r44,%r44,32; .loc 1 112 32 ld.u64 %r28,[%r66+-8]; .loc 1 112 30 st.u64 [%r44+-8],%r28; .loc 1 107 25 setp.ne.u64 %r84,%r59,%r66; @ %r84 bra $L9; .loc 1 112 27 add.u64 %r33,%r65,%r58; .loc 1 113 22 and.b64 %r36,%r67,31; .loc 1 117 25 and.b64 %r85,%r67,24; setp.eq.u64 %r86,%r85,0; @ %r86 bra $L14; mov.u64 %r50,%r33; mov.u64 %r49,%r66; add.u64 %r93,%r66,%r36; $L10: .loc 1 119 32 ld.u64 %r29,[%r49]; .loc 1 119 30 st.u64 [%r50],%r29; .loc 1 117 25 add.u64 %r49,%r49,8; add.u64 %r50,%r50,8; sub.u64 %r87,%r93,%r49; setp.gt.u64 %r88,%r87,7; @ %r88 bra $L10; bra $L24; $L8: mov.u64 %r37,%r33; mov.u64 %r45,%r66; add.u64 %r89,%r34,1; add.u64 %r48,%r37,%r89; $L12: .loc 1 130 18 ld.u8 %r90,[%r45]; st.u8 [%r37],%r90; .loc 1 128 14 add.u64 %r37,%r37,1; add.u64 %r45,%r45,1; setp.ne.u64 %r91,%r37,%r48; @ %r91 bra $L12; bra $L16; $L23: .loc 1 128 20 add.u64 %r34,%r67,-1; mov.u64 %r33,%r65; bra $L8; $L16: .loc 1 136 1 mov.u64 %value,%r65; st.param.u64 [%value_out],%value; ret; } lib_a-memset.o/ 0 0 0 644 3540 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memset .visible .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/memset.c" // BEGIN GLOBAL FUNCTION DEF: memset .visible .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r37; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r55; .reg .u64 %r58; .reg .u64 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .pred %r67; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u64 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .pred %r87; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r93; .reg .pred %r94; .reg .u64 %r95; mov.u64 %r62,%ar0; mov.u32 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 51 10 mov.u64 %r58,%r62; and.b64 %r65,%r62,7; setp.eq.u64 %r66,%r65,0; @ %r66 bra $L14; .loc 1 53 12 add.u64 %r43,%r64,-1; .loc 1 53 10 setp.ne.u64 %r67,%r64,0; @ ! %r67 bra $L18; .loc 1 42 9 mov.u64 %r44,%r62; .loc 1 54 14 mov.u32 %r71,%r63; bra $L4; $L6: .loc 1 53 12 add.u64 %r43,%r43,-1; .loc 1 53 10 add.u64 %r58,%r58,1; setp.eq.u64 %r70,%r43,-1; @ %r70 bra $L18; $L4: .loc 1 54 11 add.u64 %r44,%r44,1; .loc 1 54 14 st.u8 [%r58],%r71; .loc 1 51 10 and.b64 %r72,%r44,7; setp.ne.u64 %r73,%r72,0; @ %r73 bra $L6; bra $L2; $L14: .loc 1 42 9 mov.u64 %r44,%r62; .loc 1 51 10 mov.u64 %r43,%r64; $L2: .loc 1 59 6 setp.gt.u64 %r74,%r43,7; @ %r74 bra $L7; bra $L11; $L16: .loc 1 81 16 mov.u64 %r43,%r45; $L11: .loc 1 92 10 setp.ne.u64 %r75,%r43,0; @ %r75 bra $L8; bra $L18; $L7: .loc 1 48 16 and.b32 %r38,%r63,255; .loc 1 66 19 shl.b32 %r76,%r38,8; .loc 1 66 25 or.b32 %r77,%r76,%r38; .loc 1 66 14 cvt.u64.u32 %r39,%r77; .loc 1 67 25 shl.b64 %r27,%r39,16; .loc 1 67 14 or.b64 %r40,%r27,%r39; .loc 1 69 26 shl.b64 %r28,%r40,32; .loc 1 69 16 or.b64 %r41,%r28,%r40; .loc 1 72 16 setp.le.u64 %r78,%r43,31; @ %r78 bra $L15; add.u64 %r79,%r43,-32; and.b64 %r81,%r79,-32; add.u64 %r82,%r81,32; add.u64 %r55,%r44,%r82; $L10: .loc 1 74 27 st.u64 [%r44],%r41; .loc 1 75 27 st.u64 [%r44+8],%r41; .loc 1 76 27 st.u64 [%r44+16],%r41; add.u64 %r44,%r44,32; .loc 1 77 27 st.u64 [%r44+-8],%r41; .loc 1 72 16 setp.ne.u64 %r83,%r55,%r44; @ %r83 bra $L10; .loc 1 78 13 and.b64 %r45,%r43,31; .loc 1 81 16 and.b64 %r84,%r43,24; setp.eq.u64 %r85,%r84,0; @ ! %r85 bra $L9; bra $L16; $L15: .loc 1 72 16 mov.u64 %r45,%r43; $L9: mov.u64 %r31,%r44; add.u64 %r95,%r44,%r45; $L12: .loc 1 83 27 st.u64 [%r31],%r41; .loc 1 81 16 add.u64 %r31,%r31,8; sub.u64 %r86,%r95,%r31; setp.gt.u64 %r87,%r86,7; @ %r87 bra $L12; .loc 1 83 24 add.u64 %r88,%r45,-8; and.b64 %r90,%r88,-8; add.u64 %r91,%r90,8; add.u64 %r44,%r44,%r91; .loc 1 84 13 and.b64 %r43,%r45,7; bra $L11; $L8: mov.u64 %r33,%r44; add.u64 %r37,%r33,%r43; .loc 1 93 10 mov.u32 %r93,%r63; $L13: st.u8 [%r33],%r93; .loc 1 92 10 add.u64 %r33,%r33,1; setp.ne.u64 %r94,%r37,%r33; @ %r94 bra $L13; $L18: .loc 1 96 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } lib_a-misc.o/ 0 0 0 644 1564 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: close .visible .func (.param .u32 %value_out) close (.param .u32 %in_ar0); .file 1 "../../../../../../../newlib/libc/machine/nvptx/misc.c" // BEGIN GLOBAL FUNCTION DECL: lseek .visible .func (.param .u64 %value_out) lseek (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: read .visible .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: close .visible .func (.param .u32 %value_out) close (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .loc 1 23 10 mov.u32 %value,-1; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: lseek .visible .func (.param .u64 %value_out) lseek (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .loc 1 28 10 mov.u64 %value,0; .loc 1 29 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: read .visible .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .loc 1 33 10 mov.u32 %value,0; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } lib_a-mkdirr.o/ 0 0 0 644 1521 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mkdir_r .visible .func (.param .u32 %value_out) _mkdir_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/mkdirr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: mkdir .extern .func (.param .u32 %value_out) mkdir (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _mkdir_r .visible .func (.param .u32 %value_out) _mkdir_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .pred %r32; .reg .pred %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u32 %r27,%ar2; .loc 1 49 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 50 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),mkdir,(%out_arg1,%out_arg2); ld.param.u32 %r31,[%value_in]; } .loc 1 50 6 setp.ne.u32 %r32,%r31,-1; @ %r32 bra $L1; .loc 1 50 50 ld.global.u32 %r23,[errno]; .loc 1 50 41 setp.eq.u32 %r33,%r23,0; @ %r33 bra $L1; .loc 1 51 17 st.u32 [%r25],%r23; $L1: .loc 1 53 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-mktime.o/ 0 0 0 644 20593 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: validate_structure .func validate_structure (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/mktime.c" // BEGIN GLOBAL FUNCTION DECL: mktime .visible .func (.param .u64 %value_out) mktime (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _daylight .extern .global .align 4 .u32 _daylight[1]; // BEGIN GLOBAL FUNCTION DECL: div .extern .func div (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .extern .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: DAYS_IN_MONTH .const .align 4 .u32 DAYS_IN_MONTH[12] = {31,28,31,30,31,30,31,31,30,31,30,31 }; // BEGIN VAR DEF: _DAYS_BEFORE_MONTH .const .align 4 .u32 _DAYS_BEFORE_MONTH[12] = {0,31,59,90,120,151,181,212,243,273,304,334 }; // BEGIN FUNCTION DEF: validate_structure .func validate_structure (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r32; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .pred %r78; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .pred %r103; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u32 %r113; .reg .pred %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .u32 %r131; .reg .pred %r132; .reg .u32 %r134; .reg .pred %r140; .reg .u32 %r141; .reg .u32 %r143; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r152; .reg .u64 %r153; .reg .u64 %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r158; .reg .pred %r159; .reg .u32 %r161; .reg .pred %r167; .reg .u32 %r168; .reg .u32 %r170; .reg .pred %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .pred %r180; .reg .pred %r181; .reg .pred %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .u32 %r188; .reg .u32 %r189; .reg .u32 %r190; .reg .u32 %r191; mov.u64 %r77,%ar0; .loc 1 71 12 ld.u32 %r22,[%r77]; .loc 1 71 6 setp.gt.u32 %r78,%r22,59; @ %r78 bra $L2; .loc 1 82 12 ld.u32 %r74,[%r77+4]; bra $L3; $L2: .loc 1 73 13 mov.u32 %r81,60; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r22; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r60,[%frame+4]; .loc 1 74 21 ld.u32 %r82,[%r77+4]; ld.u32 %r83,[%frame]; add.u32 %r74,%r82,%r83; st.u32 [%r77+4],%r74; .loc 1 75 10 setp.lt.s32 %r84,%r60,0; @ %r84 bra $L4; .loc 1 75 26 st.u32 [%r77],%r60; bra $L3; $L4: .loc 1 77 18 add.u32 %r85,%r60,60; st.u32 [%r77],%r85; .loc 1 78 4 add.u32 %r74,%r74,-1; st.u32 [%r77+4],%r74; $L3: .loc 1 82 6 setp.gt.u32 %r86,%r74,59; @ %r86 bra $L5; .loc 1 93 12 ld.u32 %r75,[%r77+8]; bra $L6; $L5: .loc 1 84 13 mov.u32 %r89,60; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r74; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r89; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r69,[%frame+4]; .loc 1 85 22 ld.u32 %r90,[%r77+8]; ld.u32 %r91,[%frame]; add.u32 %r75,%r90,%r91; st.u32 [%r77+8],%r75; .loc 1 86 10 setp.lt.s32 %r92,%r69,0; @ %r92 bra $L7; .loc 1 86 26 st.u32 [%r77+4],%r69; bra $L6; $L7: .loc 1 88 18 add.u32 %r93,%r69,60; st.u32 [%r77+4],%r93; .loc 1 89 4 add.u32 %r75,%r75,-1; st.u32 [%r77+8],%r75; $L6: .loc 1 93 6 setp.gt.u32 %r94,%r75,23; @ ! %r94 bra $L9; .loc 1 95 13 mov.u32 %r97,24; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r75; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r97; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r71,[%frame+4]; .loc 1 96 22 ld.u32 %r98,[%r77+12]; ld.u32 %r99,[%frame]; add.u32 %r32,%r98,%r99; st.u32 [%r77+12],%r32; .loc 1 97 10 setp.lt.s32 %r100,%r71,0; @ %r100 bra $L10; .loc 1 97 27 st.u32 [%r77+8],%r71; bra $L9; $L10: .loc 1 99 19 add.u32 %r101,%r71,24; st.u32 [%r77+8],%r101; .loc 1 100 4 add.u32 %r102,%r32,-1; st.u32 [%r77+12],%r102; $L9: .loc 1 104 12 ld.u32 %r63,[%r77+16]; .loc 1 104 6 setp.gt.u32 %r103,%r63,11; @ %r103 bra $L12; .loc 1 115 7 ld.u32 %r76,[%r77+20]; bra $L13; $L12: .loc 1 106 13 mov.u32 %r106,12; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r63; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r106; call div,(%out_arg1,%out_arg2,%out_arg3); } ld.u32 %r63,[%frame+4]; .loc 1 107 22 ld.u32 %r107,[%r77+20]; ld.u32 %r108,[%frame]; add.u32 %r76,%r107,%r108; st.u32 [%r77+20],%r76; .loc 1 108 10 setp.lt.s32 %r109,%r63,0; @ %r109 bra $L14; .loc 1 108 26 st.u32 [%r77+16],%r63; bra $L13; $L14: .loc 1 110 18 add.u32 %r63,%r63,12; st.u32 [%r77+16],%r63; .loc 1 111 4 add.u32 %r76,%r76,-1; st.u32 [%r77+20],%r76; $L13: .loc 1 115 7 and.b32 %r110,%r76,3; .loc 1 115 6 setp.ne.u32 %r111,%r110,0; @ %r111 bra $L30; rem.s32 %r113,%r76,100; .loc 1 115 38 setp.ne.u32 %r119,%r113,0; @ %r119 bra $L31; .loc 1 115 7 add.u32 %r120,%r76,1900; rem.s32 %r122,%r120,400; setp.ne.u32 %r128,%r122,0; .loc 1 116 17 selp.u32 %r67,28,29,%r128; bra $L15; $L30: .loc 1 68 7 mov.u32 %r67,28; bra $L15; $L31: .loc 1 116 17 mov.u32 %r67,29; $L15: .loc 1 118 12 ld.u32 %r50,[%r77+12]; .loc 1 118 6 setp.gt.s32 %r129,%r50,0; @ %r129 bra $L40; .loc 1 130 22 cvta.const.u64 %r185,DAYS_IN_MONTH; .loc 1 116 17 mov.u32 %r186,31; .loc 1 128 7 mov.u32 %r187,28; mov.u32 %r188,29; bra $L20; $L40: cvta.const.u64 %r184,DAYS_IN_MONTH; .loc 1 141 22 mov.u32 %r189,0; .loc 1 144 7 mov.u32 %r190,28; mov.u32 %r191,29; bra $L16; $L20: .loc 1 122 8 add.u32 %r63,%r63,-1; .loc 1 122 7 setp.ne.u32 %r130,%r63,-1; @ %r130 bra $L17; .loc 1 124 13 ld.u32 %r42,[%r77+20]; .loc 1 124 22 add.u32 %r43,%r42,-1; st.u32 [%r77+20],%r43; .loc 1 127 5 and.b32 %r131,%r43,3; .loc 1 128 7 setp.ne.u32 %r132,%r131,0; @ %r132 bra $L33; rem.s32 %r134,%r43,100; .loc 1 127 36 setp.ne.u32 %r140,%r134,0; @ %r140 bra $L34; .loc 1 127 5 add.u32 %r141,%r42,1899; rem.s32 %r143,%r141,400; setp.ne.u32 %r149,%r143,0; .loc 1 128 7 selp.u32 %r67,28,29,%r149; bra $L18; $L17: .loc 1 130 22 setp.eq.u32 %r150,%r63,1; @ %r150 bra $L36; cvt.s64.s32 %r152,%r63; shl.b64 %r153,%r152,2; add.u64 %r154,%r185,%r153; ld.u32 %r61,[%r154]; bra $L19; $L36: mov.u32 %r61,%r67; $L19: .loc 1 130 19 add.u32 %r50,%r50,%r61; .loc 1 120 29 setp.le.s32 %r155,%r50,0; @ %r155 bra $L20; st.u32 [%r77+12],%r50; st.u32 [%r77+16],%r63; bra $L1; $L26: .loc 1 137 19 sub.u32 %r50,%r50,%r65; st.u32 [%r77+12],%r50; .loc 1 138 7 st.u32 [%r77+16],%r72; setp.eq.u32 %r156,%r72,12; @ %r156 bra $L22; $L28: add.u32 %r72,%r72,1; add.u64 %r62,%r62,4; bra $L23; $L22: .loc 1 140 13 ld.u32 %r52,[%r77+20]; .loc 1 140 22 add.u32 %r53,%r52,1; st.u32 [%r77+20],%r53; .loc 1 141 22 st.u32 [%r77+16],%r189; .loc 1 143 5 and.b32 %r158,%r53,3; .loc 1 144 7 setp.ne.u32 %r159,%r158,0; @ %r159 bra $L37; rem.s32 %r161,%r53,100; .loc 1 143 36 setp.ne.u32 %r167,%r161,0; @ %r167 bra $L38; .loc 1 143 5 add.u32 %r168,%r52,1901; rem.s32 %r170,%r168,400; setp.ne.u32 %r176,%r170,0; .loc 1 144 7 selp.u32 %r67,28,29,%r176; bra $L24; $L37: mov.u32 %r67,%r190; bra $L24; $L38: mov.u32 %r67,%r191; $L24: mov.u32 %r63,0; $L16: add.u32 %r72,%r63,1; cvt.s64.s32 %r177,%r63; shl.b64 %r178,%r177,2; add.u64 %r62,%r184,%r178; $L23: .loc 1 135 31 setp.eq.u32 %r180,%r72,2; @ %r180 bra $L25; ld.u32 %r65,[%r62]; .loc 1 135 29 setp.lt.s32 %r181,%r65,%r50; @ %r181 bra $L26; bra $L1; $L33: .loc 1 128 7 mov.u32 %r67,%r187; bra $L18; $L34: mov.u32 %r67,%r188; $L18: .loc 1 116 17 mov.u32 %r61,%r186; .loc 1 130 22 mov.u32 %r63,11; bra $L19; $L29: .loc 1 137 19 sub.u32 %r50,%r50,%r67; st.u32 [%r77+12],%r50; .loc 1 138 7 st.u32 [%r77+16],%r72; bra $L28; $L25: .loc 1 135 29 setp.lt.s32 %r183,%r67,%r50; @ %r183 bra $L29; $L1: .loc 1 148 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: mktime .visible .func (.param .u64 %value_out) mktime (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r29; .reg .u32 %r33; .reg .u32 %r55; .reg .u32 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u32 %r70; .reg .u32 %r75; .reg .u64 %r90; .reg .u32 %r91; .reg .u64 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r102; .reg .u32 %r103; .reg .u64 %r104; .reg .u32 %r105; .reg .u64 %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u64 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r133; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .pred %r151; .reg .u32 %r152; .reg .pred %r153; .reg .u32 %r155; .reg .pred %r161; .reg .u32 %r162; .reg .u32 %r164; .reg .pred %r170; .reg .u32 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u32 %r174; .reg .pred %r175; .reg .u32 %r177; .reg .pred %r182; .reg .u32 %r183; .reg .u32 %r185; .reg .pred %r190; .reg .pred %r191; .reg .pred %r192; .reg .pred %r193; .reg .u32 %r194; .reg .pred %r195; .reg .u32 %r197; .reg .pred %r203; .reg .u32 %r204; .reg .u32 %r206; .reg .pred %r212; .reg .pred %r213; .reg .u32 %r214; .reg .pred %r215; .reg .u32 %r217; .reg .pred %r223; .reg .u32 %r224; .reg .u32 %r226; .reg .pred %r232; .reg .pred %r234; .reg .u32 %r235; .reg .u32 %r236; .reg .pred %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .u16 %r245; .reg .u16 %r246; .reg .u16 %r247; .reg .u32 %r248; .reg .u16 %r249; .reg .pred %r250; .reg .u32 %r252; .reg .pred %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u32 %r258; .reg .u32 %r261; .reg .pred %r262; .reg .u16 %r263; .reg .u16 %r264; .reg .u16 %r265; .reg .u32 %r266; .reg .u16 %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .u32 %r270; .reg .pred %r271; .reg .pred %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .pred %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u64 %r278; .reg .u32 %r280; .reg .pred %r281; .reg .pred %r282; .reg .pred %r283; .reg .u32 %r284; .reg .pred %r285; .reg .u32 %r286; .reg .pred %r287; .reg .u32 %r289; .reg .pred %r295; .reg .u32 %r296; .reg .u32 %r298; .reg .pred %r304; .reg .u32 %r305; .reg .pred %r306; .reg .u32 %r308; .reg .pred %r314; .reg .u32 %r315; .reg .u32 %r317; .reg .pred %r323; .reg .pred %r324; .reg .u32 %r325; .reg .pred %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .pred %r330; .reg .u32 %r331; .reg .u32 %r333; .reg .u64 %r334; .reg .u32 %r336; .reg .pred %r337; .reg .u64 %r340; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r343; .reg .u16 %r345; mov.u64 %r130,%ar0; .loc 1 156 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r131,[%value_in]; } .loc 1 159 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call validate_structure,(%out_arg1); } .loc 1 162 41 ld.s32 %r133,[%r130+4]; shl.b64 %r135,%r133,4; sub.u64 %r136,%r135,%r133; shl.b64 %r137,%r136,2; .loc 1 162 15 ld.s32 %r138,[%r130]; .loc 1 162 24 add.u64 %r139,%r137,%r138; .loc 1 163 21 ld.s32 %r142,[%r130+8]; .loc 1 162 59 mad.lo.u64 %r29,%r142,3600,%r139; .loc 1 167 35 ld.u32 %r33,[%r130+16]; .loc 1 166 26 ld.u32 %r144,[%r130+12]; add.u32 %r143,%r144,-1; cvt.s64.s32 %r145,%r143; .loc 1 167 29 cvta.const.u64 %r146,_DAYS_BEFORE_MONTH; cvt.s64.s32 %r147,%r33; shl.b64 %r148,%r147,2; add.u64 %r149,%r146,%r148; ld.s32 %r150,[%r149]; .loc 1 167 8 add.u64 %r93,%r145,%r150; .loc 1 168 6 setp.gt.s32 %r151,%r33,1; @ %r151 bra $L43; .loc 1 168 28 ld.u32 %r94,[%r130+20]; bra $L44; $L43: ld.u32 %r94,[%r130+20]; and.b32 %r152,%r94,3; .loc 1 168 25 setp.ne.u32 %r153,%r152,0; @ %r153 bra $L44; rem.s32 %r155,%r94,100; .loc 1 168 59 setp.ne.u32 %r161,%r155,0; @ %r161 bra $L45; .loc 1 168 28 add.u32 %r162,%r94,1900; rem.s32 %r164,%r162,400; setp.ne.u32 %r170,%r164,0; @ %r170 bra $L44; $L45: .loc 1 169 9 add.u64 %r93,%r93,1; $L44: .loc 1 172 18 st.u32 [%r130+28],%r93; .loc 1 174 30 add.u32 %r171,%r94,10000; .loc 1 174 6 setp.gt.u32 %r172,%r171,20000; @ %r172 bra $L71; .loc 1 178 6 setp.le.s32 %r173,%r94,70; @ %r173 bra $L47; .loc 1 180 17 mov.u32 %r103,70; .loc 1 181 10 mov.u64 %r340,365; mov.u64 %r341,366; $L49: and.b32 %r174,%r103,3; setp.ne.u32 %r175,%r174,0; @ %r175 bra $L72; rem.s32 %r177,%r103,100; setp.ne.u32 %r182,%r177,0; @ %r182 bra $L73; add.u32 %r183,%r103,1900; rem.s32 %r185,%r183,400; setp.ne.u32 %r190,%r185,0; selp.u64 %r95,365,366,%r190; bra $L48; $L72: mov.u64 %r95,%r340; bra $L48; $L73: mov.u64 %r95,%r341; $L48: .loc 1 181 7 add.u64 %r93,%r93,%r95; .loc 1 180 50 add.u32 %r103,%r103,1; .loc 1 180 28 setp.ne.u32 %r191,%r103,%r94; @ %r191 bra $L49; bra $L50; $L47: .loc 1 183 11 setp.eq.u32 %r192,%r94,70; @ %r192 bra $L50; .loc 1 185 28 setp.eq.u32 %r193,%r94,69; @ %r193 bra $L75; .loc 1 185 17 mov.u32 %r102,69; .loc 1 186 10 mov.u64 %r342,365; mov.u64 %r343,366; $L53: and.b32 %r194,%r102,3; setp.ne.u32 %r195,%r194,0; @ %r195 bra $L76; rem.s32 %r197,%r102,100; setp.ne.u32 %r203,%r197,0; @ %r203 bra $L77; add.u32 %r204,%r102,1900; rem.s32 %r206,%r204,400; setp.ne.u32 %r212,%r206,0; selp.u64 %r96,365,366,%r212; bra $L52; $L76: mov.u64 %r96,%r342; bra $L52; $L77: mov.u64 %r96,%r343; $L52: .loc 1 186 7 sub.u64 %r93,%r93,%r96; .loc 1 185 50 add.u32 %r102,%r102,-1; .loc 1 185 28 setp.ne.u32 %r213,%r102,%r94; @ %r213 bra $L53; .loc 1 187 15 and.b32 %r214,%r94,3; setp.ne.u32 %r215,%r214,0; @ %r215 bra $L79; rem.s32 %r217,%r94,100; setp.ne.u32 %r223,%r217,0; @ %r223 bra $L80; add.u32 %r224,%r94,1900; rem.s32 %r226,%r224,400; setp.ne.u32 %r232,%r226,0; selp.u64 %r97,365,366,%r232; bra $L51; $L75: mov.u64 %r97,365; bra $L51; $L79: mov.u64 %r97,365; bra $L51; $L80: mov.u64 %r97,366; $L51: .loc 1 187 12 sub.u64 %r93,%r93,%r97; $L50: .loc 1 191 7 mad.lo.u64 %r104,%r93,86400,%r29; .loc 1 193 3 { call __tz_lock; } .loc 1 195 3 { call _tzset_unlocked; } .loc 1 197 7 ld.global.u32 %r55,[_daylight]; .loc 1 197 6 setp.eq.u32 %r234,%r55,0; @ %r234 bra $L54; .loc 1 200 11 ld.u32 %r235,[%r130+20]; add.u32 %r105,%r235,1900; .loc 1 202 23 ld.u32 %r57,[%r130+32]; .loc 1 202 16 min.s32 %r55,%r57,1; .loc 1 205 10 ld.u32 %r236,[%r131+4]; setp.ne.u32 %r237,%r236,%r105; @ %r237 bra $L55; $L58: .loc 1 209 48 ld.u64 %r60,[%r131+32]; .loc 1 210 32 ld.u64 %r61,[%r131+80]; .loc 1 211 41 ld.u64 %r62,[%r131+72]; .loc 1 214 32 ld.u64 %r63,[%r131+40]; .loc 1 213 11 sub.u64 %r108,%r62,%r63; .loc 1 211 11 sub.u64 %r238,%r62,%r61; .loc 1 216 35 set.u32.lt.s64 %r240,%r104,%r238; neg.s32 %r241,%r240; mov.u32 %r239,%r241; .loc 1 216 12 set.u32.ge.s64 %r243,%r104,%r108; neg.s32 %r244,%r243; mov.u32 %r242,%r244; .loc 1 216 28 cvt.u16.u8 %r345,%r239; mov.u16 %r246,%r345; cvt.u16.u8 %r345,%r242; mov.u16 %r247,%r345; and.b16 %r245,%r246,%r247; cvt.u32.u16 %r248,%r245; .loc 1 216 7 cvt.u16.u8 %r249,%r248; setp.ne.u16 %r250,%r249,0; @ %r250 bra $L56; bra $L103; $L55: .loc 1 205 32 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r105; call (%value_in),__tzcalc_limits,(%out_arg1); ld.param.u32 %r252,[%value_in]; } .loc 1 205 29 setp.ne.u32 %r253,%r252,0; @ %r253 bra $L58; bra $L56; $L103: .loc 1 209 18 sub.u64 %r254,%r60,%r61; .loc 1 221 17 set.u32.ge.s64 %r255,%r104,%r254; neg.s32 %r127,%r255; .loc 1 221 40 set.u32.lt.s64 %r258,%r104,%r108; neg.s32 %r128,%r258; .loc 1 222 10 ld.u32 %r261,[%r131]; setp.eq.u32 %r262,%r261,0; @ %r262 bra $L59; .loc 1 221 33 cvt.u16.u32 %r264,%r127; cvt.u16.u32 %r265,%r128; and.b16 %r263,%r264,%r265; cvt.u32.u16 %r266,%r263; .loc 1 222 10 cvt.u32.u8 %r98,%r266; bra $L60; $L59: .loc 1 222 33 cvt.u16.u32 %r268,%r127; cvt.u16.u32 %r269,%r128; or.b16 %r267,%r268,%r269; cvt.u32.u16 %r270,%r267; .loc 1 222 10 cvt.u32.u8 %r98,%r270; $L60: .loc 1 226 12 setp.lt.s32 %r271,%r57,0; @ %r271 bra $L82; .loc 1 226 39 xor.b32 %r70,%r98,%r55; .loc 1 226 28 setp.ne.u32 %r272,%r70,1; @ %r272 bra $L83; .loc 1 234 9 cvt.u32.u64 %r273,%r63; cvt.u32.u64 %r274,%r61; sub.u32 %r109,%r273,%r274; .loc 1 237 19 ld.u32 %r125,[%r130]; .loc 1 239 9 ld.u32 %r126,[%r130+12]; .loc 1 235 8 setp.ne.u32 %r275,%r98,0; @ %r275 bra $L61; .loc 1 237 19 sub.u32 %r276,%r125,%r109; st.u32 [%r130],%r276; .loc 1 236 12 neg.s32 %r277,%r109; .loc 1 238 9 cvt.s64.s32 %r278,%r277; add.u64 %r104,%r104,%r278; .loc 1 240 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call validate_structure,(%out_arg1); } .loc 1 241 10 ld.u32 %r280,[%r130+12]; sub.u32 %r55,%r280,%r126; .loc 1 243 8 setp.eq.u32 %r281,%r280,%r126; @ %r281 bra $L54; $L69: .loc 1 245 10 setp.gt.s32 %r282,%r55,1; @ %r282 bra $L84; .loc 1 247 15 setp.lt.s32 %r283,%r55,-1; @ %r283 bra $L85; .loc 1 250 12 cvt.s64.s32 %r124,%r55; mov.u32 %r70,%r55; bra $L62; $L84: mov.u64 %r124,-1; .loc 1 246 11 mov.u32 %r70,-1; bra $L62; $L85: mov.u64 %r124,1; $L62: .loc 1 250 12 add.u64 %r93,%r93,%r124; .loc 1 252 27 ld.u32 %r284,[%r130+28]; add.u32 %r75,%r70,%r284; .loc 1 252 10 setp.ge.s32 %r285,%r75,0; @ %r285 bra $L63; .loc 1 253 6 add.u32 %r111,%r94,-1; .loc 1 254 23 and.b32 %r286,%r111,3; .loc 1 254 43 setp.ne.u32 %r287,%r286,0; @ %r287 bra $L86; rem.s32 %r289,%r111,100; .loc 1 254 23 setp.ne.u32 %r295,%r289,0; @ %r295 bra $L87; add.u32 %r296,%r94,1899; rem.s32 %r298,%r296,400; setp.ne.u32 %r304,%r298,0; .loc 1 254 43 selp.u32 %r99,364,365,%r304; bra $L64; $L86: mov.u32 %r99,364; bra $L64; $L87: mov.u32 %r99,365; $L64: .loc 1 254 21 st.u32 [%r130+28],%r99; mov.u32 %r55,%r98; bra $L56; $L63: .loc 1 256 13 and.b32 %r305,%r94,3; setp.ne.u32 %r306,%r305,0; @ %r306 bra $L89; rem.s32 %r308,%r94,100; setp.ne.u32 %r314,%r308,0; @ %r314 bra $L90; add.u32 %r315,%r94,1900; rem.s32 %r317,%r315,400; setp.ne.u32 %r323,%r317,0; selp.u32 %r100,365,366,%r323; bra $L65; $L89: mov.u32 %r100,365; bra $L65; $L90: mov.u32 %r100,366; $L65: .loc 1 257 9 setp.ge.s32 %r324,%r75,%r100; @ %r324 bra $L66; .loc 1 252 27 st.u32 [%r130+28],%r75; mov.u32 %r55,%r98; bra $L56; $L66: .loc 1 258 20 sub.u32 %r325,%r75,%r100; st.u32 [%r130+28],%r325; mov.u32 %r55,%r98; bra $L56; $L82: mov.u32 %r55,%r98; bra $L56; $L83: mov.u32 %r55,%r98; $L56: .loc 1 267 6 setp.ne.u32 %r326,%r55,1; @ %r326 bra $L54; $L70: .loc 1 268 9 ld.u64 %r327,[%r131+80]; add.u64 %r129,%r104,%r327; mov.u32 %r55,1; bra $L67; $L54: .loc 1 270 9 ld.u64 %r328,[%r131+40]; add.u64 %r129,%r104,%r328; $L67: .loc 1 272 3 { call __tz_unlock; } .loc 1 275 19 st.u32 [%r130+32],%r55; .loc 1 278 31 add.u64 %r329,%r93,4; .loc 1 278 36 rem.s64 %r90,%r329,7; .loc 1 278 23 cvt.u32.u64 %r91,%r90; .loc 1 278 6 setp.lt.s64 %r330,%r90,0; @ %r330 bra $L68; .loc 1 278 23 st.u32 [%r130+24],%r91; bra $L42; $L68: .loc 1 279 20 add.u32 %r331,%r91,7; st.u32 [%r130+24],%r331; bra $L42; $L71: .loc 1 175 14 mov.u64 %r129,-1; bra $L42; $L61: .loc 1 237 19 add.u32 %r333,%r109,%r125; st.u32 [%r130],%r333; .loc 1 238 9 cvt.s64.s32 %r334,%r109; add.u64 %r104,%r104,%r334; .loc 1 240 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call validate_structure,(%out_arg1); } .loc 1 241 10 ld.u32 %r336,[%r130+12]; sub.u32 %r55,%r336,%r126; .loc 1 243 8 setp.ne.u32 %r337,%r336,%r126; @ ! %r337 bra $L70; bra $L69; $L42: .loc 1 282 1 mov.u64 %value,%r129; st.param.u64 [%value_out],%value; ret; } lib_a-mlock.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /653 0 0 0 644 247 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: __month_lengths .visible .const .align 4 .u32 __month_lengths[24] = {31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31 }; lib_a-mprec.o/ 0 0 0 644 61216 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _Balloc .visible .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/mprec.c" // BEGIN GLOBAL FUNCTION DECL: _Bfree .visible .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __multadd .visible .func (.param .u64 %value_out) __multadd (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __s2b .visible .func (.param .u64 %value_out) __s2b (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: __hi0bits .visible .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __lo0bits .visible .func (.param .u32 %value_out) __lo0bits (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __i2b .visible .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __multiply .visible .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __pow5mult .visible .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __lshift .visible .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mcmp .visible .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __mdiff .visible .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __ulp .visible .func (.param .f64 %value_out) __ulp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __b2d .visible .func (.param .f64 %value_out) __b2d (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __d2b .visible .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ratio .visible .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _mprec_log10 .visible .func (.param .f64 %value_out) _mprec_log10 (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __copybits .visible .func __copybits (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __any_on .visible .func (.param .u32 %value_out) __any_on (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _calloc_r .extern .func (.param .u64 %value_out) _calloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __assert_func .extern .func __assert_func (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL VAR DEF: __mprec_tens .visible .const .align 8 .u64 __mprec_tens[25] = {4607182418800017408,4621819117588971520,4636737291354636288,4652007308841189376,4666723172467343360,4681608360884174848,4696837146684686336,4711630319722168320,4726483295884279808,4741671816366391296,4756540486875873280,4771362005757984768,4786511204640096256,4801453603149578240,4816244402031689728,4831355200913801216,4846369599423283200,4861130398305394688,4876203697187506176,4891288408196988160,4906019910204099648,4921056587992461136,4936209963552724370,4950912855330343670,4965913770331839924 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[45] = {46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,46,46,47,110,101,119,108,105,98,47,108,105,98,99,47,115,116,100,108,105,98,47,109,112,114,101,99,46,99,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {66,97,108,108,111,99,32,115,117,99,99,101,101,100,101,100,0 }; // BEGIN GLOBAL VAR DEF: __mprec_tinytens .visible .const .align 8 .u64 __mprec_tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,776877706278891331 }; // BEGIN GLOBAL VAR DEF: __mprec_bigtens .visible .const .align 8 .u64 __mprec_bigtens[5] = {4846369599423283200,5085611494797045271,5564284217833028085,6521906365687930162,8436737289693151036 }; // BEGIN VAR DEF: p05$0 .const .align 4 .u32 p05$0[3] = {5,25,125 }; // BEGIN GLOBAL FUNCTION DEF: _Balloc .visible .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; mov.u64 %r31,%ar0; mov.u32 %r32,%ar1; .loc 1 103 7 ld.u64 %r22,[%r31+120]; .loc 1 103 6 setp.ne.u64 %r33,%r22,0; @ %r33 bra $L2; .loc 1 106 53 mov.u64 %r36,65; mov.u64 %r35,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r37,[%value_in]; } mov.u64 %r22,%r37; .loc 1 106 31 st.u64 [%r31+120],%r22; .loc 1 109 10 setp.ne.u64 %r38,%r22,0; @ %r38 bra $L2; $L6: .loc 1 111 11 mov.u64 %r30,0; bra $L1; $L2: .loc 1 115 36 cvt.s64.s32 %r39,%r32; shl.b64 %r40,%r39,3; add.u64 %r24,%r22,%r40; .loc 1 115 11 ld.u64 %r30,[%r24]; .loc 1 115 6 setp.eq.u64 %r41,%r30,0; @ %r41 bra $L4; .loc 1 117 38 ld.u64 %r25,[%r30]; .loc 1 117 34 st.u64 [%r24],%r25; bra $L5; $L4: .loc 1 121 9 mov.u32 %r42,1; shl.b32 %r29,%r42,%r32; .loc 1 125 24 cvt.s64.s32 %r46,%r29; add.u64 %r47,%r46,7; .loc 1 123 24 shl.b64 %r48,%r47,2; mov.u64 %r44,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r49,[%value_in]; } mov.u64 %r30,%r49; .loc 1 127 10 setp.eq.u64 %r50,%r30,0; @ %r50 bra $L6; .loc 1 128 14 st.u32 [%r30+8],%r32; .loc 1 129 19 st.u32 [%r30+12],%r29; $L5: .loc 1 131 13 mov.u64 %r51,0; st.u64 [%r30+16],%r51; $L1: .loc 1 133 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _Bfree .visible .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 139 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L10; .loc 1 141 41 ld.s32 %r30,[%r28+8]; shl.b64 %r31,%r30,3; ld.u64 %r32,[%r27+120]; add.u64 %r25,%r32,%r31; ld.u64 %r26,[%r25]; .loc 1 141 16 st.u64 [%r28],%r26; .loc 1 142 38 st.u64 [%r25],%r28; $L10: .loc 1 144 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __multadd .visible .func (.param .u64 %value_out) __multadd (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r55; .reg .u64 %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r83; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u32 %r101; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; mov.u32 %r60,%ar2; mov.u32 %r61,%ar3; .loc 1 159 7 ld.u32 %r42,[%r59+20]; add.u64 %r55,%r59,24; .loc 1 161 5 mov.u32 %r41,0; $L16: .loc 1 165 10 ld.u32 %r43,[%r55]; .loc 1 166 15 and.b32 %r62,%r43,65535; .loc 1 166 9 mad.lo.u32 %r44,%r62,%r60,%r61; .loc 1 167 15 shr.u32 %r64,%r43,16; .loc 1 167 31 shr.u32 %r66,%r44,16; .loc 1 167 9 mad.lo.u32 %r45,%r64,%r60,%r66; .loc 1 168 20 shr.u32 %r61,%r45,16; .loc 1 169 17 shl.b32 %r67,%r45,16; .loc 1 169 29 and.b32 %r68,%r44,65535; .loc 1 169 24 add.u32 %r69,%r67,%r68; .loc 1 169 12 st.u32 [%r55],%r69; .loc 1 176 14 add.u32 %r41,%r41,1; add.u64 %r55,%r55,4; setp.gt.s32 %r70,%r42,%r41; @ %r70 bra $L16; .loc 1 177 6 setp.eq.u32 %r71,%r61,0; @ %r71 bra $L15; .loc 1 179 10 ld.u32 %r72,[%r59+12]; setp.gt.s32 %r73,%r72,%r42; @ %r73 bra $L18; .loc 1 181 9 ld.u32 %r77,[%r59+8]; add.u32 %r76,%r77,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r76; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r78,[%value_in]; } setp.ne.u64 %r79,%r78,0; @ %r79 bra $L19; cvta.const.u64 %r83,$LC0; mov.u32 %r81,181; cvta.const.u64 %r80,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r80; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r81; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r78; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r83; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L19: .loc 1 182 4 ld.s32 %r87,[%r59+20]; add.u64 %r88,%r87,2; shl.b64 %r89,%r88,2; add.u64 %r90,%r59,16; add.u64 %r91,%r78,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r91; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r90; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r89; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r92,[%value_in]; } .loc 1 141 41 ld.s32 %r93,[%r59+8]; shl.b64 %r94,%r93,3; ld.u64 %r95,[%r58+120]; add.u64 %r51,%r95,%r94; ld.u64 %r52,[%r51]; .loc 1 141 16 st.u64 [%r59],%r52; .loc 1 142 38 st.u64 [%r51],%r59; mov.u64 %r59,%r78; $L18: .loc 1 186 20 cvt.s64.s32 %r96,%r42; add.u64 %r97,%r96,4; shl.b64 %r98,%r97,2; add.u64 %r99,%r59,%r98; st.u32 [%r99+8],%r61; .loc 1 186 16 add.u32 %r101,%r42,1; .loc 1 187 15 st.u32 [%r59+20],%r101; $L15: .loc 1 190 1 mov.u64 %value,%r59; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __s2b .visible .func (.param .u64 %value_out) __s2b (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r34; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r61; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r76; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .u64 %r94; .reg .pred %r95; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; mov.u32 %r55,%ar2; mov.u32 %r56,%ar3; mov.u32 %r57,%ar4; .loc 1 203 11 add.u32 %r58,%r56,8; .loc 1 203 5 div.s32 %r31,%r58,9; .loc 1 204 24 setp.le.s32 %r59,%r56,9; @ %r59 bra $L32; .loc 1 204 17 mov.u32 %r37,1; .loc 1 204 10 mov.u32 %r38,0; $L25: .loc 1 204 31 add.u32 %r37,%r37,%r37; .loc 1 204 39 add.u32 %r38,%r38,1; .loc 1 204 24 setp.gt.s32 %r61,%r31,%r37; @ %r61 bra $L25; bra $L24; $L32: .loc 1 204 10 mov.u32 %r38,0; $L24: .loc 1 206 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r64,[%value_in]; } mov.u64 %r52,%r64; setp.ne.u64 %r65,%r64,0; @ %r65 bra $L26; cvta.const.u64 %r69,$LC0; mov.u32 %r67,206; cvta.const.u64 %r66,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r67; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r64; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r69; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L26: .loc 1 207 12 st.u32 [%r52+24],%r57; .loc 1 208 11 mov.u32 %r70,1; st.u32 [%r52+20],%r70; .loc 1 216 6 setp.le.s32 %r71,%r55,9; @ %r71 bra $L27; .loc 1 218 9 add.u64 %r34,%r54,9; mov.u64 %r45,%r34; add.u32 %r72,%r55,-10; cvt.u64.u32 %r49,%r72; add.u64 %r73,%r54,10; add.u64 %r51,%r73,%r49; $L28: .loc 1 220 27 ld.s8 %r78,[%r45]; .loc 1 220 6 add.u32 %r79,%r78,-48; mov.u32 %r76,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r52; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r76; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r79; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r80,[%value_in]; } mov.u64 %r52,%r80; .loc 1 221 18 add.u64 %r45,%r45,1; setp.ne.u64 %r81,%r45,%r51; @ %r81 bra $L28; .loc 1 222 8 add.u64 %r82,%r49,2; add.u64 %r36,%r34,%r82; bra $L29; $L27: .loc 1 225 7 add.u64 %r36,%r54,10; .loc 1 215 5 mov.u32 %r55,9; $L29: .loc 1 226 12 setp.le.s32 %r83,%r56,%r55; @ %r83 bra $L23; mov.u64 %r30,%r36; add.u32 %r84,%r56,-1; sub.u32 %r85,%r84,%r55; cvt.u64.u32 %r86,%r85; add.u64 %r87,%r30,1; add.u64 %r44,%r86,%r87; $L31: .loc 1 227 30 ld.s8 %r92,[%r30]; .loc 1 227 9 add.u32 %r93,%r92,-48; mov.u32 %r90,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r52; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r90; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r93; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r94,[%value_in]; } mov.u64 %r52,%r94; .loc 1 226 12 add.u64 %r30,%r30,1; setp.ne.u64 %r95,%r30,%r44; @ %r95 bra $L31; $L23: .loc 1 229 1 mov.u64 %value,%r52; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __hi0bits .visible .func (.param .u32 %value_out) __hi0bits (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .pred %r37; .reg .pred %r38; .reg .u32 %r39; .reg .pred %r40; mov.u32 %r29,%ar0; .loc 1 236 11 and.b32 %r30,%r29,-65536; .loc 1 236 6 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L42; .loc 1 239 9 shl.b32 %r29,%r29,16; .loc 1 238 9 mov.u32 %r28,16; bra $L37; $L42: .loc 1 234 16 mov.u32 %r28,0; $L37: .loc 1 241 11 and.b32 %r32,%r29,-16777216; .loc 1 241 6 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L38; .loc 1 243 9 add.u32 %r28,%r28,8; .loc 1 244 9 shl.b32 %r29,%r29,8; $L38: .loc 1 246 11 and.b32 %r34,%r29,-268435456; .loc 1 246 6 setp.ne.u32 %r35,%r34,0; @ %r35 bra $L39; .loc 1 248 9 add.u32 %r28,%r28,4; .loc 1 249 9 shl.b32 %r29,%r29,4; $L39: .loc 1 251 11 and.b32 %r36,%r29,-1073741824; .loc 1 251 6 setp.ne.u32 %r37,%r36,0; @ %r37 bra $L40; .loc 1 253 9 add.u32 %r28,%r28,2; .loc 1 254 9 shl.b32 %r29,%r29,2; $L40: .loc 1 256 6 setp.lt.s32 %r38,%r29,0; @ %r38 bra $L36; .loc 1 258 8 add.u32 %r28,%r28,1; .loc 1 259 15 and.b32 %r39,%r29,1073741824; .loc 1 259 10 setp.ne.u32 %r40,%r39,0; .loc 1 260 9 selp.u32 %r28,%r28,32,%r40; $L36: .loc 1 263 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __lo0bits .visible .func (.param .u32 %value_out) __lo0bits (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r32; .reg .u32 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; mov.u64 %r34,%ar0; .loc 1 269 20 ld.u32 %r32,[%r34]; .loc 1 271 9 and.b32 %r35,%r32,7; .loc 1 271 6 setp.eq.u32 %r36,%r35,0; @ %r36 bra $L44; .loc 1 273 13 and.b32 %r37,%r32,1; .loc 1 273 10 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L52; .loc 1 275 13 and.b32 %r39,%r32,2; .loc 1 275 10 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L46; .loc 1 277 11 shr.u32 %r41,%r32,1; .loc 1 277 7 st.u32 [%r34],%r41; .loc 1 278 11 mov.u32 %r33,1; bra $L43; $L46: .loc 1 280 14 shr.u32 %r42,%r32,2; .loc 1 280 10 st.u32 [%r34],%r42; .loc 1 281 14 mov.u32 %r33,2; bra $L43; $L44: .loc 1 284 11 and.b32 %r43,%r32,65535; .loc 1 284 6 setp.ne.u32 %r44,%r43,0; @ %r44 bra $L53; .loc 1 287 9 shr.u32 %r32,%r32,16; .loc 1 286 9 mov.u32 %r33,16; bra $L47; $L53: .loc 1 283 5 mov.u32 %r33,%r35; $L47: .loc 1 289 11 and.b32 %r45,%r32,255; .loc 1 289 6 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L48; .loc 1 291 9 add.u32 %r33,%r33,8; .loc 1 292 9 shr.u32 %r32,%r32,8; $L48: .loc 1 294 11 and.b32 %r47,%r32,15; .loc 1 294 6 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L49; .loc 1 296 9 add.u32 %r33,%r33,4; .loc 1 297 9 shr.u32 %r32,%r32,4; $L49: .loc 1 299 11 and.b32 %r49,%r32,3; .loc 1 299 6 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L50; .loc 1 301 9 add.u32 %r33,%r33,2; .loc 1 302 9 shr.u32 %r32,%r32,2; $L50: .loc 1 304 11 and.b32 %r51,%r32,1; .loc 1 304 6 setp.ne.u32 %r52,%r51,0; @ %r52 bra $L51; .loc 1 306 8 add.u32 %r33,%r33,1; .loc 1 307 9 shr.u32 %r32,%r32,1; .loc 1 308 10 setp.eq.u32 %r53,%r32,0; @ %r53 bra $L54; $L51: .loc 1 311 6 st.u32 [%r34],%r32; .loc 1 312 10 bra $L43; $L52: .loc 1 274 9 mov.u32 %r33,0; bra $L43; $L54: .loc 1 309 9 mov.u32 %r33,32; $L43: .loc 1 313 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __i2b .visible .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 103 7 ld.u64 %r23,[%r26+120]; .loc 1 103 6 setp.ne.u64 %r28,%r23,0; @ %r28 bra $L56; .loc 1 106 53 mov.u64 %r31,65; mov.u64 %r30,8; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } mov.u64 %r23,%r32; .loc 1 106 31 st.u64 [%r26+120],%r23; .loc 1 109 10 setp.eq.u64 %r33,%r23,0; @ %r33 bra $L57; $L56: .loc 1 115 11 ld.u64 %r25,[%r23+8]; .loc 1 115 6 setp.eq.u64 %r34,%r25,0; @ %r34 bra $L58; .loc 1 117 38 ld.u64 %r24,[%r25]; .loc 1 117 34 st.u64 [%r23+8],%r24; bra $L59; $L58: .loc 1 123 24 mov.u64 %r37,36; mov.u64 %r36,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r38,[%value_in]; } mov.u64 %r25,%r38; .loc 1 127 10 setp.eq.u64 %r39,%r25,0; @ %r39 bra $L57; .loc 1 128 14 mov.u64 %r40,8589934593; st.u64 [%r25+8],%r40; bra $L59; $L57: .loc 1 320 7 cvta.const.u64 %r44,$LC0; mov.u64 %r43,0; mov.u32 %r42,320; cvta.const.u64 %r41,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r42; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r44; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L59: .loc 1 321 12 st.u32 [%r25+24],%r27; .loc 1 131 13 mov.u64 %r45,4294967296; st.u64 [%r25+16],%r45; .loc 1 324 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __multiply .visible .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r32; .reg .u32 %r53; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r83; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u32 %r99; .reg .u64 %r100; .reg .pred %r101; .reg .u32 %r102; .reg .pred %r103; .reg .u64 %r106; .reg .pred %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .pred %r119; .reg .u32 %r120; .reg .pred %r121; .reg .pred %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u64 %r128; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .pred %r144; .reg .u64 %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .u64 %r162; .reg .pred %r163; .reg .pred %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u32 %r169; mov.u64 %r96,%ar0; mov.u64 %r97,%ar1; mov.u64 %r98,%ar2; .loc 1 337 8 ld.u32 %r22,[%r97+20]; .loc 1 337 18 ld.u32 %r23,[%r98+20]; .loc 1 337 6 setp.lt.s32 %r101,%r22,%r23; @ %r101 bra $L67; mov.u32 %r99,%r23; mov.u32 %r23,%r22; mov.u32 %r22,%r99; mov.u64 %r100,%r98; mov.u64 %r98,%r97; mov.u64 %r97,%r100; $L67: .loc 1 343 5 ld.u32 %r57,[%r98+8]; .loc 1 346 6 add.u32 %r68,%r23,%r22; .loc 1 347 6 ld.u32 %r102,[%r98+12]; setp.ge.s32 %r103,%r102,%r68; @ %r103 bra $L68; .loc 1 348 6 add.u32 %r57,%r57,1; $L68: .loc 1 349 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r96; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r57; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r106,[%value_in]; } setp.ne.u64 %r107,%r106,0; @ %r107 bra $L69; cvta.const.u64 %r111,$LC0; mov.u32 %r109,349; cvta.const.u64 %r108,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r109; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r106; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r111; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L69: .loc 1 350 10 add.u64 %r77,%r106,24; .loc 1 350 26 cvt.s64.s32 %r112,%r68; shl.b64 %r113,%r112,2; .loc 1 350 22 add.u64 %r67,%r77,%r113; .loc 1 350 34 setp.lt.u64 %r114,%r77,%r67; @ %r114 bra $L84; $L73: .loc 1 352 6 add.u64 %r168,%r98,24; .loc 1 353 12 cvt.s64.s32 %r115,%r23; shl.b64 %r116,%r115,2; .loc 1 353 7 add.u64 %r64,%r168,%r116; .loc 1 354 6 add.u64 %r76,%r97,24; .loc 1 355 12 cvt.s64.s32 %r117,%r22; shl.b64 %r118,%r117,2; .loc 1 355 7 add.u64 %r65,%r76,%r118; .loc 1 358 13 setp.lt.u64 %r119,%r76,%r65; @ %r119 bra $L71; bra $L72; $L84: .loc 1 350 34 mov.u64 %r78,%r77; .loc 1 351 8 mov.u32 %r120,0; $L70: st.u32 [%r78],%r120; .loc 1 350 41 add.u64 %r78,%r78,4; .loc 1 350 34 setp.gt.u64 %r121,%r67,%r78; @ %r121 bra $L70; bra $L73; $L72: .loc 1 413 43 setp.gt.s32 %r122,%r68,0; @ %r122 bra $L74; bra $L75; $L71: add.u64 %r124,%r98,25; setp.lt.u64 %r125,%r64,%r124; @ %r125 bra $L76; sub.u64 %r126,%r64,%r98; add.u64 %r128,%r126,-25; and.b64 %r130,%r128,-4; add.u64 %r123,%r130,4; bra $L77; $L76: mov.u64 %r123,4; $L77: .loc 1 364 10 mov.u32 %r169,0; $L82: .loc 1 360 16 ld.u32 %r28,[%r76]; .loc 1 360 14 and.b32 %r69,%r28,65535; .loc 1 360 10 setp.eq.u32 %r131,%r69,0; @ %r131 bra $L78; mov.u64 %r79,%r77; .loc 1 362 6 mov.u64 %r60,%r168; .loc 1 364 10 mov.u32 %r58,%r169; $L79: .loc 1 367 13 ld.u32 %r29,[%r60]; .loc 1 367 33 ld.u32 %r32,[%r79]; .loc 1 367 16 and.b32 %r132,%r29,65535; .loc 1 367 37 and.b32 %r134,%r32,65535; .loc 1 367 30 mad.lo.u32 %r135,%r132,%r69,%r134; .loc 1 367 10 add.u32 %r70,%r135,%r58; .loc 1 369 16 add.u64 %r60,%r60,4; .loc 1 369 19 shr.u32 %r136,%r29,16; .loc 1 369 37 shr.u32 %r138,%r32,16; .loc 1 369 30 mad.lo.u32 %r139,%r136,%r69,%r138; .loc 1 368 14 shr.u32 %r140,%r70,16; .loc 1 369 11 add.u32 %r72,%r139,%r140; .loc 1 370 14 shr.u32 %r58,%r72,16; .loc 1 371 8 shl.b32 %r141,%r72,16; and.b32 %r142,%r70,65535; or.b32 %r143,%r141,%r142; st.u32 [%r79],%r143; .loc 1 373 13 add.u64 %r79,%r79,4; setp.gt.u64 %r144,%r64,%r60; @ %r144 bra $L79; .loc 1 374 8 add.u64 %r145,%r77,%r123; st.u32 [%r145],%r58; .loc 1 376 16 ld.u32 %r28,[%r76]; $L78: .loc 1 376 14 shr.u32 %r73,%r28,16; .loc 1 376 10 setp.eq.u32 %r146,%r73,0; @ %r146 bra $L80; .loc 1 381 7 ld.u32 %r62,[%r77]; mov.u64 %r83,%r168; mov.u32 %r53,%r62; mov.u64 %r61,%r77; .loc 1 380 10 mov.u32 %r59,%r169; $L81: .loc 1 384 16 ld.u16 %r147,[%r83]; .loc 1 384 37 shr.u32 %r150,%r53,16; .loc 1 384 30 mad.lo.u32 %r151,%r147,%r73,%r150; .loc 1 384 10 add.u32 %r74,%r151,%r59; .loc 1 386 8 add.u64 %r61,%r61,4; shl.b32 %r152,%r74,16; and.b32 %r153,%r62,65535; or.b32 %r154,%r152,%r153; st.u32 [%r61+-4],%r154; .loc 1 387 33 ld.u32 %r53,[%r61]; .loc 1 387 19 ld.u32 %r156,[%r83]; shr.u32 %r155,%r156,16; .loc 1 387 37 and.b32 %r158,%r53,65535; .loc 1 387 30 mad.lo.u32 %r159,%r155,%r73,%r158; .loc 1 385 14 shr.u32 %r160,%r74,16; .loc 1 387 11 add.u32 %r62,%r159,%r160; .loc 1 388 14 shr.u32 %r59,%r62,16; .loc 1 390 13 add.u64 %r83,%r83,4; setp.gt.u64 %r161,%r64,%r83; @ %r161 bra $L81; .loc 1 391 8 add.u64 %r162,%r77,%r123; st.u32 [%r162],%r62; $L80: .loc 1 358 22 add.u64 %r76,%r76,4; .loc 1 358 29 add.u64 %r77,%r77,4; .loc 1 358 13 setp.gt.u64 %r163,%r65,%r76; @ %r163 bra $L82; bra $L72; $L83: .loc 1 413 54 add.u32 %r68,%r68,-1; .loc 1 413 43 setp.eq.u32 %r164,%r68,0; @ %r164 bra $L75; $L74: add.u64 %r67,%r67,-4; ld.u32 %r165,[%r67]; setp.eq.u32 %r166,%r165,0; @ %r166 bra $L83; $L75: .loc 1 414 11 st.u32 [%r106+20],%r68; .loc 1 416 1 mov.u64 %value,%r106; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __pow5mult .visible .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u64 %r78; .reg .u64 %r79; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u32 %r38,%ar2; .loc 1 425 10 and.b32 %r26,%r38,3; .loc 1 425 6 setp.eq.u32 %r39,%r26,0; @ %r39 bra $L100; .loc 1 426 29 cvta.const.u64 %r44,p05$0; .loc 1 426 32 add.u32 %r45,%r26,-1; .loc 1 426 29 cvt.s64.s32 %r46,%r45; shl.b64 %r47,%r46,2; add.u64 %r48,%r44,%r47; .loc 1 426 9 mov.u32 %r43,0; ld.u32 %r42,[%r48]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r42; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r43; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r49,[%value_in]; } mov.u64 %r37,%r49; $L100: .loc 1 428 11 shr.s32 %r25,%r38,2; .loc 1 428 6 setp.eq.u32 %r50,%r25,0; @ %r50 bra $L107; .loc 1 431 12 ld.u64 %r27,[%r36+112]; .loc 1 431 6 setp.ne.u64 %r51,%r27,0; @ %r51 bra $L102; .loc 1 320 7 mov.u32 %r53,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r53; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r54,[%value_in]; } mov.u64 %r27,%r54; setp.ne.u64 %r55,%r54,0; @ %r55 bra $L103; cvta.const.u64 %r59,$LC0; mov.u32 %r57,320; cvta.const.u64 %r56,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r57; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r54; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r59; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L103: .loc 1 321 12 mov.u32 %r60,625; st.u32 [%r27+24],%r60; .loc 1 322 11 st.u32 [%r27+20],%r53; .loc 1 434 31 st.u64 [%r36+112],%r27; .loc 1 435 17 mov.u64 %r62,0; st.u64 [%r27],%r62; $L102: .loc 1 420 1 mov.u64 %r35,%r37; bra $L104; $L106: mov.u64 %r27,%r29; $L104: .loc 1 439 13 and.b32 %r63,%r25,1; .loc 1 439 10 setp.eq.u32 %r64,%r63,0; @ %r64 bra $L105; .loc 1 441 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r68,[%value_in]; } .loc 1 139 6 setp.eq.u64 %r69,%r35,0; @ %r69 bra $L108; .loc 1 141 41 ld.s32 %r70,[%r35+8]; shl.b64 %r71,%r70,3; ld.u64 %r72,[%r36+120]; add.u64 %r33,%r72,%r71; ld.u64 %r34,[%r33]; .loc 1 141 16 st.u64 [%r35],%r34; .loc 1 142 38 st.u64 [%r33],%r35; .loc 1 443 6 mov.u64 %r35,%r68; bra $L105; $L108: mov.u64 %r35,%r68; $L105: .loc 1 445 15 shr.s32 %r25,%r25,1; .loc 1 445 10 setp.eq.u32 %r73,%r25,0; @ %r73 bra $L99; .loc 1 447 17 ld.u64 %r29,[%r27]; .loc 1 447 10 setp.ne.u64 %r74,%r29,0; @ %r74 bra $L106; .loc 1 449 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r78,[%value_in]; } mov.u64 %r29,%r78; .loc 1 449 20 st.u64 [%r27],%r29; .loc 1 450 15 mov.u64 %r79,0; st.u64 [%r78],%r79; bra $L106; $L107: .loc 1 429 12 mov.u64 %r35,%r37; $L99: .loc 1 455 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __lshift .visible .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r60; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r70; .reg .u64 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .pred %r85; .reg .u64 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .u64 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .pred %r115; .reg .u64 %r116; .reg .u64 %r118; .reg .u64 %r120; .reg .u64 %r121; .reg .pred %r122; .reg .pred %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; mov.u64 %r79,%ar0; mov.u64 %r80,%ar1; mov.u32 %r81,%ar2; .loc 1 465 5 shr.s32 %r37,%r81,5; .loc 1 469 6 ld.u32 %r43,[%r80+8]; .loc 1 470 10 ld.u32 %r82,[%r80+20]; add.u32 %r23,%r37,%r82; .loc 1 470 6 add.u32 %r38,%r23,1; .loc 1 471 10 ld.u32 %r44,[%r80+12]; .loc 1 471 27 setp.le.s32 %r83,%r38,%r44; @ %r83 bra $L119; $L120: .loc 1 472 7 add.u32 %r43,%r43,1; .loc 1 471 34 add.u32 %r44,%r44,%r44; .loc 1 471 27 setp.gt.s32 %r85,%r38,%r44; @ %r85 bra $L120; $L119: .loc 1 473 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r43; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r88,[%value_in]; } setp.ne.u64 %r89,%r88,0; @ %r89 bra $L121; cvta.const.u64 %r93,$LC0; mov.u32 %r91,473; cvta.const.u64 %r90,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r90; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r91; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r88; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r93; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L121: .loc 1 474 6 add.u64 %r34,%r88,24; .loc 1 475 17 setp.le.s32 %r94,%r37,0; @ %r94 bra $L122; mov.u64 %r70,%r34; add.u32 %r95,%r37,-1; cvt.u64.u32 %r96,%r95; shl.b64 %r97,%r96,2; add.u64 %r98,%r97,28; add.u64 %r77,%r88,%r98; .loc 1 476 11 mov.u32 %r99,0; $L123: st.u32 [%r70],%r99; .loc 1 475 17 add.u64 %r70,%r70,4; setp.ne.u64 %r100,%r70,%r77; @ %r100 bra $L123; .loc 1 476 8 cvt.u64.u32 %r101,%r37; shl.b64 %r102,%r101,2; add.u64 %r34,%r34,%r102; $L122: .loc 1 477 5 add.u64 %r103,%r80,24; .loc 1 478 10 ld.s32 %r104,[%r80+20]; shl.b64 %r105,%r104,2; .loc 1 478 6 add.u64 %r40,%r103,%r105; .loc 1 480 9 and.b32 %r41,%r81,31; .loc 1 480 6 setp.eq.u32 %r106,%r41,0; @ %r106 bra $L124; .loc 1 482 10 mov.u32 %r107,32; sub.u32 %r42,%r107,%r41; mov.u64 %r33,%r103; mov.u64 %r60,%r34; .loc 1 483 9 mov.u32 %r36,0; $L125: .loc 1 486 15 ld.u32 %r109,[%r33]; shl.b32 %r108,%r109,%r41; .loc 1 486 20 or.b32 %r110,%r108,%r36; .loc 1 486 10 st.u32 [%r60],%r110; .loc 1 487 6 ld.u32 %r111,[%r33]; shr.u32 %r36,%r111,%r42; .loc 1 489 16 add.u64 %r33,%r33,4; add.u64 %r60,%r60,4; setp.gt.u64 %r112,%r40,%r33; @ %r112 bra $L125; .loc 1 486 7 add.u64 %r114,%r80,25; setp.lt.u64 %r115,%r40,%r114; @ %r115 bra $L126; sub.u64 %r116,%r40,%r80; add.u64 %r118,%r116,-25; and.b64 %r120,%r118,-4; add.u64 %r113,%r120,4; bra $L127; $L126: mov.u64 %r113,4; $L127: .loc 1 490 16 add.u64 %r121,%r34,%r113; st.u32 [%r121],%r36; .loc 1 490 10 setp.eq.u32 %r122,%r36,0; .loc 1 470 6 selp.u32 %r23,%r23,%r38,%r122; bra $L128; $L124: mov.u64 %r64,%r103; mov.u64 %r66,%r34; $L129: .loc 1 510 15 ld.u32 %r31,[%r64]; .loc 1 510 13 st.u32 [%r66],%r31; .loc 1 511 14 add.u64 %r64,%r64,4; add.u64 %r66,%r66,4; setp.gt.u64 %r123,%r40,%r64; @ %r123 bra $L129; $L128: .loc 1 512 12 st.u32 [%r88+20],%r23; .loc 1 141 41 ld.s32 %r124,[%r80+8]; shl.b64 %r125,%r124,3; ld.u64 %r126,[%r79+120]; add.u64 %r48,%r126,%r125; ld.u64 %r49,[%r48]; .loc 1 141 16 st.u64 [%r80],%r49; .loc 1 142 38 st.u64 [%r48],%r80; .loc 1 515 1 mov.u64 %value,%r88; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __mcmp .visible .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 523 5 ld.u32 %r27,[%r32+20]; .loc 1 524 5 ld.u32 %r28,[%r33+20]; .loc 1 531 9 sub.u32 %r31,%r27,%r28; .loc 1 531 6 setp.ne.u32 %r34,%r27,%r28; @ %r34 bra $L136; .loc 1 533 7 add.u64 %r29,%r32,24; .loc 1 534 12 cvt.s64.s32 %r35,%r28; shl.b64 %r22,%r35,2; .loc 1 534 6 add.u64 %r25,%r29,%r22; .loc 1 535 7 add.u64 %r36,%r33,24; .loc 1 536 6 add.u64 %r26,%r36,%r22; $L139: .loc 1 539 10 add.u64 %r25,%r25,-4; .loc 1 539 11 ld.u32 %r23,[%r25]; .loc 1 539 10 add.u64 %r26,%r26,-4; .loc 1 539 20 ld.u32 %r24,[%r26]; .loc 1 539 10 setp.eq.u32 %r37,%r23,%r24; @ %r37 bra $L138; .loc 1 540 24 setp.lt.u32 %r38,%r23,%r24; selp.u32 %r31,-1,1,%r38; bra $L136; $L138: .loc 1 541 10 setp.lt.u64 %r39,%r29,%r25; @ %r39 bra $L139; $L136: .loc 1 545 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __mdiff .visible .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r41; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u64 %r91; .reg .u64 %r94; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u64 %r118; .reg .u32 %r119; .reg .u32 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u64 %r144; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r149; .reg .u64 %r151; .reg .pred %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u64 %r162; .reg .pred %r163; .reg .u32 %r164; .reg .pred %r165; .reg .pred %r167; .reg .u32 %r169; .reg .u64 %r170; .reg .pred %r171; .reg .pred %r172; mov.u64 %r104,%ar0; mov.u64 %r105,%ar1; mov.u64 %r106,%ar2; .loc 1 523 5 ld.u32 %r75,[%r105+20]; .loc 1 524 5 ld.u32 %r76,[%r106+20]; .loc 1 531 9 sub.u32 %r53,%r75,%r76; .loc 1 531 6 setp.ne.u32 %r109,%r75,%r76; @ %r109 bra $L143; .loc 1 533 7 add.u64 %r77,%r105,24; .loc 1 534 12 cvt.s64.s32 %r110,%r76; shl.b64 %r78,%r110,2; .loc 1 534 6 add.u64 %r80,%r77,%r78; .loc 1 535 7 add.u64 %r111,%r106,24; .loc 1 536 6 add.u64 %r82,%r111,%r78; $L147: .loc 1 539 10 add.u64 %r80,%r80,-4; .loc 1 539 11 ld.u32 %r81,[%r80]; .loc 1 539 10 add.u64 %r82,%r82,-4; .loc 1 539 20 ld.u32 %r83,[%r82]; .loc 1 539 10 setp.eq.u32 %r112,%r81,%r83; @ %r112 bra $L144; .loc 1 540 24 setp.ge.u32 %r113,%r81,%r83; @ %r113 bra $L145; mov.u64 %r108,%r105; mov.u64 %r105,%r106; mov.u64 %r106,%r108; .loc 1 572 9 mov.u32 %r53,1; bra $L145; $L144: .loc 1 541 10 setp.ge.u64 %r114,%r77,%r80; @ ! %r114 bra $L147; bra $L146; $L159: .loc 1 562 11 cvta.const.u64 %r118,$LC0; mov.u32 %r116,562; cvta.const.u64 %r115,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r116; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r118; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L166: .loc 1 563 15 mov.u32 %r119,1; st.u32 [%r103+20],%r119; .loc 1 564 16 st.u32 [%r103+24],%r169; .loc 1 565 14 bra $L142; $L161: .loc 1 575 7 mov.u32 %r53,0; $L145: .loc 1 576 7 ld.u32 %r123,[%r105+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r124,[%value_in]; } mov.u64 %r103,%r124; setp.ne.u64 %r125,%r124,0; @ %r125 bra $L149; cvta.const.u64 %r129,$LC0; mov.u32 %r127,576; cvta.const.u64 %r126,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r126; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r127; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r124; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r129; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L149: .loc 1 577 12 st.u32 [%r124+16],%r53; .loc 1 578 6 ld.u32 %r70,[%r105+20]; .loc 1 579 6 add.u64 %r61,%r105,24; .loc 1 580 12 cvt.s64.s32 %r130,%r70; shl.b64 %r131,%r130,2; .loc 1 580 7 add.u64 %r62,%r61,%r131; .loc 1 582 6 add.u64 %r57,%r106,24; .loc 1 583 12 ld.s32 %r132,[%r106+20]; shl.b64 %r133,%r132,2; .loc 1 583 7 add.u64 %r64,%r57,%r133; .loc 1 584 6 add.u64 %r65,%r124,24; mov.u64 %r55,%r65; .loc 1 579 6 mov.u64 %r56,%r61; .loc 1 585 10 mov.u32 %r54,0; $L150: .loc 1 589 12 ld.u32 %r25,[%r56]; .loc 1 589 29 ld.u32 %r27,[%r57]; .loc 1 589 16 and.b32 %r134,%r25,65535; .loc 1 589 33 and.b32 %r136,%r27,65535; .loc 1 589 43 vsub.u32.u32.u32.add %r66,%r54,%r136,%r134; .loc 1 592 15 add.u64 %r56,%r56,4; .loc 1 592 31 add.u64 %r57,%r57,4; .loc 1 592 18 shr.u32 %r137,%r25,16; .loc 1 592 34 shr.u32 %r138,%r27,16; .loc 1 590 14 shr.s32 %r140,%r66,16; .loc 1 592 41 vsub.u32.u32.u32.add %r68,%r137,%r138,%r140; .loc 1 593 14 shr.s32 %r54,%r68,16; .loc 1 595 7 shl.b32 %r141,%r68,16; and.b32 %r142,%r66,65535; or.b32 %r51,%r141,%r142; st.u32 [%r55],%r51; .loc 1 597 13 add.u64 %r55,%r55,4; setp.gt.u64 %r143,%r64,%r57; @ %r143 bra $L150; add.u64 %r94,%r106,25; sub.u64 %r144,%r64,%r106; add.u64 %r146,%r144,-25; shr.u64 %r91,%r146,2; setp.lt.u64 %r172,%r64,%r94; @ %r172 bra $L151; shl.b64 %r147,%r91,2; bra $L152; $L151: mov.u64 %r147,0; $L152: add.u64 %r69,%r65,%r147; @ %r172 bra $L153; add.u64 %r151,%r91,1; shl.b64 %r149,%r151,2; bra $L154; $L153: mov.u64 %r149,4; $L154: .loc 1 592 15 add.u64 %r102,%r61,%r149; .loc 1 595 7 add.u64 %r101,%r65,%r149; .loc 1 598 13 setp.le.u64 %r152,%r62,%r102; @ %r152 bra $L155; mov.u64 %r60,%r101; mov.u64 %r73,%r102; $L156: .loc 1 600 12 ld.u32 %r41,[%r73]; .loc 1 600 16 and.b32 %r153,%r41,65535; .loc 1 600 26 add.u32 %r71,%r153,%r54; .loc 1 603 15 add.u64 %r73,%r73,4; .loc 1 603 18 shr.u32 %r154,%r41,16; .loc 1 601 14 shr.s32 %r155,%r71,16; .loc 1 603 25 add.u32 %r74,%r154,%r155; .loc 1 604 14 shr.s32 %r54,%r74,16; .loc 1 606 7 shl.b32 %r156,%r74,16; and.b32 %r157,%r71,65535; or.b32 %r51,%r156,%r157; st.u32 [%r60],%r51; .loc 1 598 13 add.u64 %r60,%r60,4; setp.gt.u64 %r158,%r62,%r73; @ %r158 bra $L156; add.u64 %r159,%r62,-1; sub.u64 %r160,%r159,%r102; and.b64 %r162,%r160,-4; add.u64 %r69,%r101,%r162; $L155: .loc 1 625 10 setp.ne.u32 %r163,%r51,0; @ %r163 bra $L157; $L158: .loc 1 626 7 add.u32 %r70,%r70,-1; .loc 1 625 10 add.u64 %r69,%r69,-4; ld.u32 %r164,[%r69]; setp.eq.u32 %r165,%r164,0; @ %r165 bra $L158; $L157: .loc 1 627 11 st.u32 [%r124+20],%r70; .loc 1 628 10 bra $L142; $L143: .loc 1 567 6 setp.ge.s32 %r167,%r53,0; @ %r167 bra $L161; mov.u64 %r107,%r105; mov.u64 %r105,%r106; mov.u64 %r106,%r107; .loc 1 572 9 mov.u32 %r53,1; bra $L145; $L146: .loc 1 562 11 mov.u32 %r169,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r169; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r170,[%value_in]; } mov.u64 %r103,%r170; setp.eq.u64 %r171,%r103,0; @ ! %r171 bra $L166; bra $L159; $L142: .loc 1 629 1 mov.u64 %value,%r103; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ulp .visible .func (.param .f64 %value_out) __ulp (.param .f64 %in_ar0) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u32 %r29; .reg .f64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; mov.f64 %r33,%ar0; .loc 1 639 18 mov.b64 %r34,%r33; shr.u64 %r35,%r34,32; cvt.u32.u64 %r36,%r35; and.b32 %r37,%r36,2146435072; .loc 1 639 30 add.u32 %r23,%r37,-54525952; .loc 1 641 6 setp.gt.s32 %r38,%r23,0; @ %r38 bra $L171; .loc 1 656 11 neg.s32 %r24,%r23; .loc 1 656 9 shr.s32 %r28,%r24,20; .loc 1 657 10 setp.gt.s32 %r39,%r24,20971519; @ %r39 bra $L169; .loc 1 659 24 mov.u32 %r40,524288; shr.s32 %r23,%r40,%r28; mov.u32 %r26,0; bra $L168; $L169: .loc 1 667 6 add.u32 %r29,%r28,-20; .loc 1 669 34 setp.gt.s32 %r41,%r29,30; @ %r41 bra $L172; mov.u32 %r42,-2147483648; shr.u32 %r26,%r42,%r29; bra $L170; $L172: mov.u32 %r26,1; $L170: mov.u32 %r23,0; bra $L168; $L171: mov.u32 %r26,0; $L168: .loc 1 647 17 cvt.u64.u32 %r43,%r23; .loc 1 649 17 cvt.u64.u32 %r47,%r26; shl.b64 %r48,%r43,32; or.b64 %r49,%r48,%r47; .loc 1 674 11 mov.b64 %value,%r49; .loc 1 675 1 st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __b2d .visible .func (.param .f64 %value_out) __b2d (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .u32 %r30; .reg .u32 %r32; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r50; .reg .f64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .pred %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u64 %r79; .reg .u64 %r83; .reg .pred %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .u64 %r92; .reg .u64 %r93; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r98; .reg .pred %r102; mov.u64 %r52,%ar0; mov.u64 %r53,%ar1; .loc 1 690 7 add.u64 %r37,%r52,24; .loc 1 691 12 ld.s32 %r54,[%r52+20]; shl.b64 %r55,%r54,2; .loc 1 691 6 add.u64 %r38,%r37,%r55; .loc 1 692 5 add.u64 %r39,%r38,-4; ld.u32 %r40,[%r38+-4]; .loc 1 697 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r40; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 698 11 mov.u32 %r59,32; sub.u32 %r58,%r59,%r57; .loc 1 698 6 st.u32 [%r53],%r58; .loc 1 700 6 setp.gt.s32 %r60,%r57,10; @ %r60 bra $L174; .loc 1 702 32 mov.u32 %r61,11; sub.u32 %r25,%r61,%r57; .loc 1 702 22 shr.u32 %r62,%r40,%r25; .loc 1 702 18 or.b32 %r63,%r62,1072693248; .loc 1 702 10 cvt.u64.u32 %r64,%r63; shl.b64 %r50,%r64,32; .loc 1 703 28 setp.ge.u64 %r68,%r37,%r39; @ %r68 bra $L181; .loc 1 705 40 ld.u32 %r69,[%r38+-8]; shr.u32 %r46,%r69,%r25; bra $L175; $L181: mov.u32 %r46,0; $L175: .loc 1 705 31 add.u32 %r70,%r57,21; .loc 1 705 14 shl.b32 %r71,%r40,%r70; .loc 1 705 36 or.b32 %r30,%r71,%r46; .loc 1 707 7 bra $L176; $L174: .loc 1 710 9 add.u32 %r47,%r57,-11; .loc 1 709 24 setp.ge.u64 %r72,%r37,%r39; @ %r72 bra $L177; ld.u32 %r30,[%r38+-8]; .loc 1 710 6 setp.eq.u32 %r73,%r47,0; @ %r73 bra $L178; .loc 1 712 38 sub.u32 %r32,%r59,%r47; .loc 1 712 22 shl.b32 %r75,%r40,%r47; .loc 1 712 31 shr.u32 %r76,%r30,%r32; .loc 1 712 27 or.b32 %r77,%r75,%r76; or.b32 %r78,%r77,1072693248; .loc 1 712 10 cvt.u64.u32 %r79,%r78; shl.b64 %r50,%r79,32; .loc 1 715 14 shl.b32 %r30,%r30,%r47; .loc 1 709 24 add.u64 %r83,%r38,-8; .loc 1 713 28 setp.ge.u64 %r84,%r37,%r83; @ %r84 bra $L176; .loc 1 715 23 ld.u32 %r86,[%r38+-12]; shr.u32 %r85,%r86,%r32; .loc 1 715 19 or.b32 %r30,%r30,%r85; bra $L176; $L178: .loc 1 720 18 or.b32 %r87,%r40,1072693248; .loc 1 720 10 cvt.u64.u32 %r88,%r87; shl.b64 %r50,%r88,32; $L176: .loc 1 705 10 cvt.u64.u32 %r92,%r30; and.b64 %r93,%r50,-4294967296; or.b64 %r50,%r93,%r92; .loc 1 750 11 mov.b64 %r51,%r50; bra $L185; $L180: .loc 1 712 22 shl.b32 %r96,%r40,%r47; .loc 1 712 27 or.b32 %r97,%r96,1072693248; .loc 1 712 10 cvt.u64.u32 %r98,%r97; shl.b64 %r50,%r98,32; mov.u32 %r30,0; bra $L176; $L177: .loc 1 710 6 setp.ne.u32 %r102,%r47,0; @ %r102 bra $L180; .loc 1 709 24 mov.u32 %r30,%r47; bra $L178; $L185: .loc 1 751 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __d2b .visible .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r30; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r51; .reg .f64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .u64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u32 %r96; .reg .u32 %r97; mov.u64 %r51,%ar0; mov.f64 %r52,%ar1; mov.u64 %r53,%ar2; mov.u64 %r54,%ar3; .loc 1 778 7 mov.u32 %r56,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r56; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r57,[%value_in]; } setp.ne.u64 %r58,%r57,0; @ %r58 bra $L187; cvta.const.u64 %r62,$LC0; mov.u32 %r60,778; cvta.const.u64 %r59,$LC1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r60; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r62; call __assert_func,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); trap; // (noreturn) exit; // (noreturn) } $L187: mov.b64 %r63,%r52; shr.u64 %r64,%r63,32; cvt.u32.u64 %r65,%r64; .loc 1 784 10 and.b32 %r22,%r65,1048575; .loc 1 792 23 shr.u32 %r66,%r65,20; and.b32 %r24,%r66,2047; .loc 1 792 6 setp.ne.u32 %r67,%r24,0; @ %r67 bra $L188; .loc 1 784 5 st.u32 [%frame],%r22; bra $L189; $L188: .loc 1 793 7 or.b32 %r68,%r22,1048576; st.u32 [%frame],%r68; $L189: mov.b64 %r69,%r52; cvt.u32.u64 %r70,%r69; .loc 1 797 6 setp.eq.u32 %r71,%r70,0; @ %r71 bra $L190; .loc 1 799 9 st.u32 [%frame+4],%r70; .loc 1 800 11 add.u64 %r73,%frame,4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r74,[%value_in]; } mov.u32 %r43,%r74; .loc 1 803 23 ld.u32 %r30,[%frame]; .loc 1 801 10 setp.eq.u32 %r75,%r43,0; @ %r75 bra $L191; .loc 1 803 30 mov.u32 %r77,32; sub.u32 %r76,%r77,%r43; .loc 1 803 23 shl.b32 %r78,%r30,%r76; .loc 1 803 19 ld.u32 %r80,[%frame+4]; or.b32 %r79,%r78,%r80; .loc 1 803 15 st.u32 [%r57+24],%r79; .loc 1 804 6 shr.u32 %r30,%r30,%r43; st.u32 [%frame],%r30; bra $L192; $L191: .loc 1 807 7 ld.u32 %r81,[%frame+4]; st.u32 [%r57+24],%r81; $L192: .loc 1 808 27 st.u32 [%r57+28],%r30; .loc 1 808 36 setp.ne.u32 %r82,%r30,0; selp.u32 %r42,2,1,%r82; bra $L194; $L190: .loc 1 817 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r84,[%value_in]; } .loc 1 818 12 ld.u32 %r85,[%frame]; st.u32 [%r57+24],%r85; .loc 1 821 9 add.u32 %r43,%r84,32; .loc 1 819 9 mov.u32 %r42,1; $L194: .loc 1 808 19 st.u32 [%r57+20],%r42; .loc 1 879 6 setp.eq.u32 %r86,%r24,0; @ %r86 bra $L195; .loc 1 886 22 add.u32 %r87,%r24,-1075; .loc 1 886 32 add.u32 %r88,%r87,%r43; .loc 1 886 10 st.u32 [%r53],%r88; .loc 1 887 17 mov.u32 %r89,53; sub.u32 %r23,%r89,%r43; bra $L196; $L195: .loc 1 893 36 add.u32 %r90,%r43,-1074; .loc 1 893 10 st.u32 [%r53],%r90; .loc 1 895 34 cvt.s64.s32 %r92,%r42; shl.b64 %r93,%r92,2; .loc 1 895 24 add.u64 %r94,%r57,%r93; ld.u32 %r91,[%r94+20]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r91; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r96,[%value_in]; } .loc 1 895 18 shl.b32 %r97,%r42,5; .loc 1 895 22 sub.u32 %r23,%r97,%r96; $L196: .loc 1 887 13 st.u32 [%r54],%r23; .loc 1 902 1 mov.u64 %value,%r57; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ratio .visible .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .f64 %r22; .reg .u32 %r35; .reg .f64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r47; .reg .f64 %r48; .reg .f64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r70; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; mov.u64 %r43,%ar0; mov.u64 %r44,%ar1; .loc 1 913 10 add.u64 %r47,%frame,4; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; call (%value_in),__b2d,(%out_arg1,%out_arg2); ld.param.f64 %r48,[%value_in]; } mov.f64 %r39,%r48; .loc 1 913 8 mov.b64 %r40,%r39; .loc 1 914 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__b2d,(%out_arg1,%out_arg2); ld.param.f64 %r51,[%value_in]; } mov.f64 %r22,%r51; .loc 1 914 8 mov.b64 %r41,%r22; .loc 1 916 31 ld.u32 %r53,[%r43+20]; ld.u32 %r54,[%r44+20]; sub.u32 %r52,%r53,%r54; .loc 1 916 20 shl.b32 %r55,%r52,5; .loc 1 916 10 ld.u32 %r57,[%frame+4]; ld.u32 %r58,[%frame]; .loc 1 916 5 vsub.u32.u32.u32.add %r35,%r57,%r58,%r55; .loc 1 935 6 setp.le.s32 %r59,%r35,0; @ %r59 bra $L199; .loc 1 936 21 shl.b32 %r60,%r35,20; .loc 1 936 16 shr.u64 %r62,%r40,32; cvt.u32.u64 %r63,%r62; add.u32 %r64,%r60,%r63; cvt.u64.u32 %r65,%r64; shl.b64 %r66,%r65,32; and.b64 %r67,%r40,4294967295; or.b64 %r68,%r67,%r66; .loc 1 943 12 mov.b64 %r39,%r68; bra $L200; $L199: .loc 1 940 23 shl.b32 %r70,%r35,20; .loc 1 940 18 shr.u64 %r73,%r41,32; cvt.u32.u64 %r74,%r73; sub.u32 %r75,%r74,%r70; cvt.u64.u32 %r76,%r75; shl.b64 %r77,%r76,32; and.b64 %r78,%r41,4294967295; or.b64 %r79,%r78,%r77; .loc 1 943 19 mov.b64 %r22,%r79; $L200: .loc 1 943 15 div.rn.f64 %value,%r39,%r22; .loc 1 944 1 st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _mprec_log10 .visible .func (.param .f64 %value_out) _mprec_log10 (.param .u32 %in_ar0) { .reg .f64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .f64 %r22; .reg .u32 %r23; .reg .pred %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; mov.u32 %r23,%ar0; .loc 1 975 6 setp.gt.s32 %r24,%r23,23; @ %r24 bra $L204; .loc 1 976 16 cvta.const.u64 %r25,__mprec_tens; cvt.s64.s32 %r26,%r23; shl.b64 %r27,%r26,3; add.u64 %r28,%r25,%r27; ld.f64 %r22,[%r28]; bra $L201; $L204: .loc 1 974 10 mov.f64 %r22,0d3ff0000000000000; $L202: .loc 1 979 9 mul.f64 %r22,%r22,0d4024000000000000; .loc 1 980 10 add.u32 %r23,%r23,-1; .loc 1 977 14 setp.ne.u32 %r29,%r23,0; @ %r29 bra $L202; $L201: .loc 1 983 1 mov.f64 %value,%r22; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __copybits .visible .func __copybits (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r27; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; mov.u64 %r48,%ar0; mov.u32 %r49,%ar1; mov.u64 %r50,%ar2; .loc 1 995 14 add.u32 %r51,%r49,-1; .loc 1 995 18 shr.s32 %r52,%r51,5; .loc 1 995 29 add.u32 %r53,%r52,1; cvt.s64.s32 %r54,%r53; shl.b64 %r55,%r54,2; .loc 1 995 5 add.u64 %r32,%r48,%r55; .loc 1 996 4 add.u64 %r33,%r50,24; .loc 1 998 9 ld.s32 %r56,[%r50+20]; shl.b64 %r57,%r56,2; .loc 1 998 5 add.u64 %r34,%r33,%r57; .loc 1 999 10 setp.ge.u64 %r58,%r33,%r34; @ %r58 bra $L207; mov.u64 %r42,%r48; mov.u64 %r43,%r33; $L208: .loc 1 1000 10 ld.u32 %r27,[%r43]; .loc 1 1000 8 st.u32 [%r42],%r27; .loc 1 999 10 add.u64 %r42,%r42,4; add.u64 %r43,%r43,4; setp.gt.u64 %r59,%r34,%r43; @ %r59 bra $L208; .loc 1 1000 5 sub.u64 %r60,%r34,%r50; add.u64 %r62,%r60,-25; and.b64 %r64,%r62,-4; add.u64 %r65,%r64,4; add.u64 %r48,%r48,%r65; $L207: .loc 1 1009 10 setp.le.u64 %r66,%r32,%r48; @ %r66 bra $L206; mov.u64 %r31,%r48; .loc 1 1010 8 mov.u32 %r67,0; $L210: st.u32 [%r31],%r67; .loc 1 1009 10 add.u64 %r31,%r31,4; setp.gt.u64 %r68,%r32,%r31; @ %r68 bra $L210; $L206: .loc 1 1011 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __any_on .visible .func (.param .u32 %value_out) __any_on (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; mov.u64 %r34,%ar0; mov.u32 %r35,%ar1; .loc 1 1020 4 add.u64 %r24,%r34,24; .loc 1 1021 7 ld.u32 %r25,[%r34+20]; .loc 1 1022 4 shr.s32 %r26,%r35,5; .loc 1 1023 5 setp.ge.s32 %r36,%r25,%r26; @ %r36 bra $L214; .loc 1 1033 4 cvt.s64.s32 %r37,%r25; shl.b64 %r38,%r37,2; add.u64 %r23,%r24,%r38; bra $L217; $L214: .loc 1 1026 14 cvt.s64.s32 %r39,%r26; shl.b64 %r40,%r39,2; add.u64 %r23,%r24,%r40; .loc 1 1025 10 setp.le.s32 %r41,%r25,%r26; @ %r41 bra $L217; .loc 1 1025 26 and.b32 %r27,%r35,31; .loc 1 1025 20 setp.eq.u32 %r42,%r27,0; @ %r42 bra $L217; .loc 1 1026 11 ld.u32 %r28,[%r23]; .loc 1 1027 6 shr.u32 %r29,%r28,%r27; .loc 1 1028 6 shl.b32 %r43,%r29,%r27; .loc 1 1029 6 setp.ne.u32 %r44,%r28,%r43; @ %r44 bra $L219; bra $L217; $L218: .loc 1 1035 6 add.u64 %r23,%r23,-4; ld.u32 %r45,[%r23]; setp.ne.u32 %r46,%r45,0; @ %r46 bra $L220; $L217: .loc 1 1034 10 setp.gt.u64 %r47,%r23,%r24; @ %r47 bra $L218; .loc 1 1037 9 mov.u32 %r33,0; bra $L213; $L219: .loc 1 1030 11 mov.u32 %r33,1; bra $L213; $L220: mov.u32 %r33,1; $L213: .loc 1 1038 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-mrand48.o/0 0 0 644 1845 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _mrand48_r .visible .func (.param .u64 %value_out) _mrand48_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/mrand48.c" // BEGIN GLOBAL FUNCTION DECL: mrand48 .visible .func (.param .u64 %value_out) mrand48; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _mrand48_r .visible .func (.param .u64 %value_out) _mrand48_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; mov.u64 %r29,%ar0; .loc 1 20 17 add.u64 %r32,%r29,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r34,[%r29+244]; .loc 1 21 35 shl.b64 %r35,%r34,16; .loc 1 21 44 ld.u16 %r36,[%r29+242]; .loc 1 21 42 add.u64 %value,%r35,%r36; .loc 1 22 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: mrand48 .visible .func (.param .u64 %value_out) mrand48 { .reg .u64 %value; .reg .u64 %r22; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .loc 1 28 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 20 17 add.u64 %r32,%r22,240; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 11 ld.u16 %r34,[%r22+244]; .loc 1 21 35 shl.b64 %r35,%r34,16; .loc 1 21 44 ld.u16 %r36,[%r22+242]; .loc 1 21 42 add.u64 %value,%r35,%r36; .loc 1 29 1 st.param.u64 [%value_out],%value; ret; } lib_a-msize.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-msizer.o/ 0 0 0 644 175 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mallocr .visible .global .align 4 .u32 _dummy_mallocr[1] = {1 }; lib_a-mstats.o/ 0 0 0 644 173 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_mstats .visible .global .align 4 .u32 _dummy_mstats[1] = {1 }; lib_a-mtrim.o/ 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-ndbm.o/ 0 0 0 644 15331 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: dbm_open .visible .func (.param .u64 %value_out) dbm_open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/search/ndbm.c" // BEGIN GLOBAL FUNCTION DECL: dbm_close .visible .func dbm_close (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: dbm_fetch .visible .func dbm_fetch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: dbm_firstkey .visible .func dbm_firstkey (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: dbm_nextkey .visible .func dbm_nextkey (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: dbm_delete .visible .func (.param .u32 %value_out) dbm_delete (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: dbm_store .visible .func (.param .u32 %value_out) dbm_store (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: dbm_error .visible .func (.param .u32 %value_out) dbm_error (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: dbm_clearerr .visible .func (.param .u32 %value_out) dbm_clearerr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: dbm_dirfno .visible .func (.param .u32 %value_out) dbm_dirfno (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strcat .extern .func (.param .u64 %value_out) strcat (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __hash_open .extern .func (.param .u64 %value_out) __hash_open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {46,100,98,0 }; // BEGIN GLOBAL FUNCTION DEF: dbm_open .visible .func (.param .u64 %value_out) dbm_open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1056; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u64 %r46; .reg .u64 %r49; .reg .u64 %r55; .reg .u64 %r56; mov.u64 %r28,%ar0; mov.u32 %r29,%ar1; mov.u32 %r30,%ar2; .loc 1 69 13 mov.u64 %r31,171798695936; st.u64 [%frame+1024],%r31; .loc 1 71 13 mov.u64 %r32,1; st.u64 [%frame+1032],%r32; .loc 1 73 12 mov.u64 %r33,0; st.u64 [%frame+1040],%r33; .loc 1 74 14 mov.u32 %r34,0; st.u32 [%frame+1048],%r34; .loc 1 76 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r36,[%value_in]; } .loc 1 76 37 cvta.const.u64 %r37,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r38,[%value_in]; } .loc 1 76 35 mov.u64 %r40,1024; sub.u64 %r39,%r40,%r38; .loc 1 76 4 setp.lt.u64 %r41,%r36,%r39; @ %r41 bra $L2; .loc 1 77 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r42,[%value_in]; } .loc 1 77 9 mov.u32 %r43,91; st.u32 [%r42],%r43; .loc 1 78 9 mov.u64 %r27,%r33; bra $L1; $L2: .loc 1 80 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r46,[%value_in]; } .loc 1 81 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r49,[%value_in]; } .loc 1 82 17 add.u64 %r55,%frame,1024; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r34; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r55; call (%value_in),__hash_open,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r56,[%value_in]; } mov.u64 %r27,%r56; $L1: .loc 1 83 1 mov.u64 %value,%r27; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_close .visible .func dbm_close (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; mov.u64 %r23,%ar0; .loc 1 88 11 ld.u64 %r26,[%r23+8]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call (%value_in),%r26,(%out_arg1),$LCT0; ld.param.u32 %r25,[%value_in]; } .loc 1 89 1 ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_fetch .visible .func dbm_fetch (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .pred %r42; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 103 14 ld.u64 %r33,[%r32]; st.u64 [%frame+16],%r33; .loc 1 104 19 ld.s32 %r34,[%r32+8]; st.u64 [%frame+24],%r34; .loc 1 105 14 add.u64 %r39,%frame,16; ld.u64 %r41,[%r31+24]; mov.u32 %r38,0; { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r38; call (%value_in),%r41,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u32 %r40,[%value_in]; } .loc 1 106 5 setp.ne.u32 %r42,%r40,0; @ %r42 bra $L7; .loc 1 110 27 ld.u64 %r27,[%frame]; .loc 1 111 16 ld.u32 %r29,[%frame+8]; bra $L6; $L7: mov.u32 %r29,%r38; mov.u64 %r27,0; $L6: .loc 1 112 9 st.u64 [%r30],%r27; st.u32 [%r30+8],%r29; .loc 1 113 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_firstkey .visible .func dbm_firstkey (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .pred %r36; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 127 14 add.u64 %r33,%frame,16; ld.u64 %r35,[%r28+40]; mov.u32 %r32,3; { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),%r35,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT2; ld.param.u32 %r34,[%value_in]; } .loc 1 128 5 setp.ne.u32 %r36,%r34,0; @ %r36 bra $L10; .loc 1 130 25 ld.u64 %r26,[%frame+16]; bra $L9; $L10: mov.u64 %r26,0; $L9: .loc 1 131 15 ld.u32 %r24,[%frame+24]; .loc 1 132 9 st.u64 [%r27],%r26; st.u32 [%r27+8],%r24; .loc 1 133 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_nextkey .visible .func dbm_nextkey (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .pred %r36; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 147 14 add.u64 %r33,%frame,16; ld.u64 %r35,[%r28+40]; mov.u32 %r32,7; { .param .u32 %value_in; $LCT3: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),%r35,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT3; ld.param.u32 %r34,[%value_in]; } .loc 1 148 5 setp.ne.u32 %r36,%r34,0; @ %r36 bra $L13; .loc 1 150 25 ld.u64 %r26,[%frame+16]; bra $L12; $L13: mov.u64 %r26,0; $L12: .loc 1 151 15 ld.u32 %r24,[%frame+24]; .loc 1 152 9 st.u64 [%r27],%r26; st.u32 [%r27+8],%r24; .loc 1 153 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_delete .visible .func (.param .u32 %value_out) dbm_delete (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 166 14 ld.u64 %r32,[%r31]; st.u64 [%frame],%r32; .loc 1 167 19 ld.s32 %r33,[%r31+8]; st.u64 [%frame+8],%r33; .loc 1 168 14 ld.u64 %r38,[%r30+16]; mov.u32 %r36,0; { .param .u32 %value_in; $LCT4: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r36; call (%value_in),%r38,(%out_arg1,%out_arg2,%out_arg3),$LCT4; ld.param.u32 %r37,[%value_in]; } .loc 1 169 5 set.u32.ne.u32 %value,%r37,0; .loc 1 173 1 st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_store .visible .func (.param .u32 %value_out) dbm_store (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; mov.u64 %r35,%ar2; mov.u32 %r36,%ar3; .loc 1 186 14 ld.u64 %r37,[%r34]; st.u64 [%frame+16],%r37; .loc 1 187 19 ld.s32 %r38,[%r34+8]; st.u64 [%frame+24],%r38; .loc 1 188 15 ld.u64 %r39,[%r35]; st.u64 [%frame],%r39; .loc 1 189 21 ld.s32 %r40,[%r35+8]; st.u64 [%frame+8],%r40; .loc 1 190 13 set.u32.eq.u32 %r46,%r36,0; neg.s32 %r47,%r46; shl.b32 %r48,%r47,3; add.u64 %r49,%frame,16; ld.u64 %r51,[%r33+32]; { .param .u32 %value_in; $LCT5: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r48; call (%value_in),%r51,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT5; ld.param.u32 %r50,[%value_in]; } .loc 1 192 1 mov.u32 %value,%r50; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_error .visible .func (.param .u32 %value_out) dbm_error (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar0; .loc 1 200 12 ld.u64 %r26,[%r24+56]; ld.u32 %value,[%r26+320]; .loc 1 201 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_clearerr .visible .func (.param .u32 %value_out) dbm_clearerr (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; mov.u64 %r24,%ar0; .loc 1 209 12 ld.u64 %r25,[%r24+56]; mov.u32 %r26,0; st.u32 [%r25+320],%r26; .loc 1 211 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: dbm_dirfno .visible .func (.param .u32 %value_out) dbm_dirfno (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar0; .loc 1 216 31 ld.u64 %r26,[%r24+56]; ld.u32 %value,[%r26+284]; .loc 1 217 1 st.param.u32 [%value_out],%value; ret; } lib_a-nrand48.o/0 0 0 644 2118 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _nrand48_r .visible .func (.param .u64 %value_out) _nrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/nrand48.c" // BEGIN GLOBAL FUNCTION DECL: nrand48 .visible .func (.param .u64 %value_out) nrand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __dorand48 .extern .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _nrand48_r .visible .func (.param .u64 %value_out) _nrand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u64 %r39; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 20 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r35,[%r31+4]; .loc 1 21 42 shl.b64 %r36,%r35,15; .loc 1 22 31 ld.u16 %r38,[%r31+2]; shr.u16 %r37,%r38,1; cvt.u64.u16 %r39,%r37; .loc 1 21 49 add.u64 %value,%r36,%r39; .loc 1 23 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: nrand48 .visible .func (.param .u64 %value_out) nrand48 (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r31; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u64 %r40; mov.u64 %r31,%ar0; .loc 1 20 3 ld.global.u64 %r34,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call __dorand48,(%out_arg1,%out_arg2); } .loc 1 21 17 ld.u16 %r36,[%r31+4]; .loc 1 21 42 shl.b64 %r37,%r36,15; .loc 1 22 31 ld.u16 %r39,[%r31+2]; shr.u16 %r38,%r39,1; cvt.u64.u16 %r40,%r38; .loc 1 21 49 add.u64 %value,%r37,%r40; .loc 1 30 1 st.param.u64 [%value_out],%value; ret; } /676 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-openr.o/ 0 0 0 644 2241 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _open_r .visible .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/reent/openr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: open .extern .func (.param .u32 %value_out) open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _open_r .visible .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .pred %r33; .reg .pred %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u32 %r27,%ar3; .loc 1 49 9 mov.u32 %r28,0; st.global.u32 [errno],%r28; .loc 1 50 14 st.u32 [%stack],%r27; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),open,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r31,[%value_in]; } .loc 1 50 6 setp.ne.u32 %r33,%r31,-1; @ %r33 bra $L1; .loc 1 50 56 ld.global.u32 %r22,[errno]; .loc 1 50 47 setp.eq.u32 %r34,%r22,0; @ %r34 bra $L1; .loc 1 51 17 st.u32 [%r24],%r22; $L1: .loc 1 53 1 mov.u32 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-perror.o/ 0 0 0 644 7945 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _perror_r .visible .func _perror_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/perror.c" // BEGIN GLOBAL FUNCTION DECL: perror .visible .func perror (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fileno .extern .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strerror_r .extern .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {58,32,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {10,0 }; // BEGIN GLOBAL FUNCTION DEF: _perror_r .visible .func _perror_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r54; .reg .pred %r55; .reg .u16 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r60; .reg .pred %r61; .reg .u32 %r63; .reg .u64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u64 %r72; .reg .pred %r73; .reg .u32 %r75; .reg .u64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r87; .reg .pred %r88; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r93; .reg .u64 %r98; .reg .pred %r99; .reg .pred %r100; .reg .u64 %r102; .reg .pred %r103; .reg .u32 %r105; .reg .u64 %r110; .reg .pred %r111; .reg .pred %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u64 %r115; .reg .u64 %r116; mov.u64 %r47,%ar0; mov.u64 %r48,%ar1; .loc 1 81 9 ld.u64 %r35,[%r47+24]; .loc 1 83 3 ld.u32 %r49,[%r47+80]; setp.ne.u32 %r50,%r49,0; @ %r50 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; call __sinit,(%out_arg1); } $L2: .loc 1 86 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r54,[%value_in]; } .loc 1 87 6 setp.eq.u64 %r55,%r48,0; @ %r55 bra $L3; .loc 1 87 17 ld.u8 %r57,[%r48]; cvt.s16.s8 %r56,%r57; setp.eq.u16 %r58,%r56,0; @ %r58 bra $L3; .loc 1 89 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r60,[%value_in]; } mov.u64 %r37,%r60; setp.eq.u64 %r61,%r37,0; @ %r61 bra $L4; $L5: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r63,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r37; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r68,[%value_in]; } setp.lt.s64 %r69,%r68,0; @ %r69 bra $L4; sub.u64 %r37,%r37,%r68; add.u64 %r48,%r48,%r68; setp.ne.u64 %r70,%r37,0; @ %r70 bra $L5; $L4: .loc 1 90 7 cvta.const.u64 %r115,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r72,[%value_in]; } mov.u64 %r39,%r72; setp.eq.u64 %r73,%r39,0; @ %r73 bra $L3; mov.u64 %r40,%r115; $L6: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r75,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r75; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r40; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r39; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r80,[%value_in]; } setp.lt.s64 %r81,%r80,0; @ %r81 bra $L3; sub.u64 %r39,%r39,%r80; add.u64 %r40,%r40,%r80; setp.ne.u64 %r82,%r39,0; @ %r82 bra $L6; $L3: .loc 1 93 16 mov.u32 %r85,1; ld.u32 %r84,[%r47]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r84; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r85; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r87,[%value_in]; } mov.u64 %r43,%r87; .loc 1 93 6 setp.eq.u64 %r88,%r43,0; @ %r88 bra $L7; .loc 1 94 5 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r90,[%value_in]; } mov.u64 %r42,%r90; setp.eq.u64 %r91,%r42,0; @ %r91 bra $L7; $L8: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r93,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r93; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r42; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r98,[%value_in]; } setp.lt.s64 %r99,%r98,0; @ %r99 bra $L7; sub.u64 %r42,%r42,%r98; add.u64 %r43,%r43,%r98; setp.ne.u64 %r100,%r42,0; @ %r100 bra $L8; $L7: .loc 1 99 3 cvta.const.u64 %r116,$LC1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r102,[%value_in]; } mov.u64 %r45,%r102; setp.eq.u64 %r103,%r45,0; @ %r103 bra $L9; mov.u64 %r46,%r116; $L10: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r105,[%value_in]; } { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r105; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r46; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r45; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r110,[%value_in]; } setp.lt.s64 %r111,%r110,0; @ %r111 bra $L9; sub.u64 %r45,%r45,%r110; add.u64 %r46,%r46,%r110; setp.ne.u64 %r112,%r45,0; @ %r112 bra $L10; $L9: .loc 1 101 14 ld.u16 %r114,[%r35+16]; and.b16 %r113,%r114,-4097; st.u16 [%r35+16],%r113; .loc 1 103 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: perror .visible .func perror (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r26; mov.u64 %r23,%ar0; .loc 1 110 3 ld.global.u64 %r26,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _perror_r,(%out_arg1,%out_arg2); } .loc 1 111 1 ret; } lib_a-printf.o/ 0 0 0 644 1419 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: printf .visible .func (.param .u32 %value_out) printf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../../newlib/libc/machine/nvptx/printf.c" // BEGIN GLOBAL FUNCTION DECL: vprintf .extern .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_uni .extern .shared .u32 __nvptx_uni[32]; // BEGIN GLOBAL FUNCTION DEF: printf .visible .func (.param .u32 %value_out) printf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r28; .reg .u32 %r30; .reg .pred %r31; .reg .u64 %r32; { .reg .u32 %ustmp0; .reg .u64 %ustmp1; mov.u32 %ustmp0,%tid.y; mul.wide.u32 %ustmp1,%ustmp0,4; mov.u64 %r32,__nvptx_uni; add.u64 %r32,%r32,%ustmp1; ld.shared.u32 %r30,[%r32]; mov.u32 %ustmp0,%laneid; and.b32 %r30,%r30,%ustmp0; setp.eq.u32 %r31,%r30,%ustmp0; } mov.u64 %r24,%ar0; .loc 1 27 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%args; @ %r31 call (%value_in),vprintf,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } shfl.idx.b32 %r28,%r28,%r30,31; .loc 1 30 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-psignal.o/0 0 0 644 6327 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: psignal .visible .func psignal (.param .u32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/signal/psignal.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fflush .extern .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fileno .extern .func (.param .u32 %value_out) fileno (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: write .extern .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strsignal .extern .func (.param .u64 %value_out) strsignal (.param .u32 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {58,32,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {10,0 }; // BEGIN GLOBAL FUNCTION DEF: psignal .visible .func psignal (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r39; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r63; .reg .pred %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u64 %r76; .reg .pred %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .u64 %r89; .reg .u64 %r91; .reg .pred %r92; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r96; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .u64 %r104; .reg .pred %r105; .reg .u64 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u64 %r116; .reg .u64 %r117; mov.u32 %r52,%ar0; mov.u64 %r53,%ar1; .loc 1 55 11 ld.global.u64 %r55,[_impure_ptr]; .loc 1 55 3 ld.u64 %r56,[%r55+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; call (%value_in),fflush,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 56 6 setp.eq.u64 %r58,%r53,0; @ %r58 bra $L2; .loc 1 56 17 ld.u8 %r60,[%r53]; cvt.s16.s8 %r59,%r60; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L2; .loc 1 58 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r63,[%value_in]; } mov.u64 %r45,%r63; setp.eq.u64 %r64,%r45,0; @ %r64 bra $L3; $L4: ld.global.u64 %r66,[_impure_ptr]; ld.u64 %r67,[%r66+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r67; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r68,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r68; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r72,[%value_in]; } setp.lt.s32 %r73,%r72,0; @ %r73 bra $L3; cvt.s64.s32 %r29,%r72; sub.u64 %r45,%r45,%r29; add.u64 %r53,%r53,%r29; setp.ne.u64 %r74,%r45,0; @ %r74 bra $L4; $L3: .loc 1 59 7 cvta.const.u64 %r116,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r76,[%value_in]; } mov.u64 %r46,%r76; setp.eq.u64 %r77,%r46,0; @ %r77 bra $L2; mov.u64 %r47,%r116; $L5: ld.global.u64 %r79,[_impure_ptr]; ld.u64 %r80,[%r79+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r80; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r81,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r81; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r46; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r85,[%value_in]; } setp.lt.s32 %r86,%r85,0; @ %r86 bra $L2; cvt.s64.s32 %r34,%r85; sub.u64 %r46,%r46,%r34; add.u64 %r47,%r47,%r34; setp.ne.u64 %r87,%r46,0; @ %r87 bra $L5; $L2: .loc 1 61 3 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r52; call (%value_in),strsignal,(%out_arg1); ld.param.u64 %r89,[%value_in]; } mov.u64 %r49,%r89; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r91,[%value_in]; } mov.u64 %r48,%r91; setp.eq.u64 %r92,%r48,0; @ %r92 bra $L6; $L7: ld.global.u64 %r94,[_impure_ptr]; ld.u64 %r95,[%r94+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r95; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r96,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r96; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r48; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r100,[%value_in]; } setp.lt.s32 %r101,%r100,0; @ %r101 bra $L6; cvt.s64.s32 %r39,%r100; sub.u64 %r48,%r48,%r39; add.u64 %r49,%r49,%r39; setp.ne.u64 %r102,%r48,0; @ %r102 bra $L7; $L6: .loc 1 66 3 cvta.const.u64 %r117,$LC1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r117; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r104,[%value_in]; } mov.u64 %r50,%r104; setp.eq.u64 %r105,%r50,0; @ %r105 bra $L1; mov.u64 %r51,%r117; $L9: ld.global.u64 %r107,[_impure_ptr]; ld.u64 %r108,[%r107+24]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r108; call (%value_in),fileno,(%out_arg1); ld.param.u32 %r109,[%value_in]; } { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r109; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r50; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r113,[%value_in]; } setp.lt.s32 %r114,%r113,0; @ %r114 bra $L1; cvt.s64.s32 %r44,%r113; sub.u64 %r50,%r50,%r44; add.u64 %r51,%r51,%r44; setp.ne.u64 %r115,%r50,0; @ %r115 bra $L9; $L1: .loc 1 68 1 ret; } lib_a-putc.o/ 0 0 0 644 4273 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _putc_r .visible .func (.param .u32 %value_out) _putc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/putc.c" .file 2 "/home/abuild/rpmbuild/BUILD/gcc-11.3.0+git1637/newlib/libc/include/stdio.h" // BEGIN GLOBAL FUNCTION DECL: putc .visible .func (.param .u32 %value_out) putc (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swbuf_r .extern .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _putc_r .visible .func (.param .u32 %value_out) _putc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r49; mov.u64 %r31,%ar0; mov.u32 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 86 3 setp.eq.u64 %r34,%r31,0; @ %r34 bra $L2; ld.u32 %r35,[%r31+80]; setp.ne.u32 %r36,%r35,0; @ %r36 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; call __sinit,(%out_arg1); } $L2: .loc 2 692 6 ld.u32 %r38,[%r33+12]; add.u32 %r24,%r38,-1; .loc 2 692 5 st.u32 [%r33+12],%r24; setp.ge.s32 %r39,%r24,0; @ %r39 bra $L3; .loc 2 692 20 ld.u32 %r40,[%r33+40]; setp.lt.s32 %r41,%r24,%r40; @ %r41 bra $L4; .loc 2 692 50 mov.u32 %r42,%r32; .loc 2 692 47 cvt.s16.s8 %r43,%r42; setp.eq.u16 %r44,%r43,10; @ %r44 bra $L4; $L3: .loc 2 693 14 ld.u64 %r27,[%r33]; .loc 2 693 18 add.u64 %r45,%r27,1; st.u64 [%r33],%r45; .loc 2 693 21 st.u8 [%r27],%r32; and.b32 %r30,%r32,255; bra $L1; $L4: .loc 2 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r49,[%value_in]; } mov.u32 %r30,%r49; $L1: .loc 1 91 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: putc .visible .func (.param .u32 %value_out) putc (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r28; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r49; mov.u32 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 100 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 102 3 setp.eq.u64 %r34,%r23,0; @ %r34 bra $L13; ld.u32 %r35,[%r23+80]; setp.ne.u32 %r36,%r35,0; @ %r36 bra $L13; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L13: .loc 2 692 6 ld.u32 %r38,[%r33+12]; add.u32 %r25,%r38,-1; .loc 2 692 5 st.u32 [%r33+12],%r25; setp.ge.s32 %r39,%r25,0; @ %r39 bra $L14; .loc 2 692 20 ld.u32 %r40,[%r33+40]; setp.lt.s32 %r41,%r25,%r40; @ %r41 bra $L15; .loc 2 692 50 mov.u32 %r42,%r32; .loc 2 692 47 cvt.s16.s8 %r43,%r42; setp.eq.u16 %r44,%r43,10; @ %r44 bra $L15; $L14: .loc 2 693 14 ld.u64 %r28,[%r33]; .loc 2 693 18 add.u64 %r45,%r28,1; st.u64 [%r33],%r45; .loc 2 693 21 st.u8 [%r28],%r32; and.b32 %r31,%r32,255; bra $L12; $L15: .loc 2 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r49,[%value_in]; } mov.u32 %r31,%r49; $L12: .loc 1 110 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-putc_u.o/ 0 0 0 644 3741 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _putc_unlocked_r .visible .func (.param .u32 %value_out) _putc_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "/home/abuild/rpmbuild/BUILD/gcc-11.3.0+git1637/newlib/libc/include/stdio.h" .file 2 "../../../../../../newlib/libc/stdio/putc_u.c" // BEGIN GLOBAL FUNCTION DECL: putc_unlocked .visible .func (.param .u32 %value_out) putc_unlocked (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __swbuf_r .extern .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _putc_unlocked_r .visible .func (.param .u32 %value_out) _putc_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r44; mov.u64 %r30,%ar0; mov.u32 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 692 6 ld.u32 %r33,[%r32+12]; add.u32 %r23,%r33,-1; .loc 1 692 5 st.u32 [%r32+12],%r23; setp.ge.s32 %r34,%r23,0; @ %r34 bra $L2; .loc 1 692 20 ld.u32 %r35,[%r32+40]; setp.lt.s32 %r36,%r23,%r35; @ %r36 bra $L3; .loc 1 692 50 mov.u32 %r37,%r31; .loc 1 692 47 cvt.s16.s8 %r38,%r37; setp.eq.u16 %r39,%r38,10; @ %r39 bra $L3; $L2: .loc 1 693 14 ld.u64 %r26,[%r32]; .loc 1 693 18 add.u64 %r40,%r26,1; st.u64 [%r32],%r40; .loc 1 693 21 st.u8 [%r26],%r31; and.b32 %r29,%r31,255; bra $L1; $L3: .loc 1 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r44,[%value_in]; } mov.u32 %r29,%r44; $L1: .loc 2 80 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: putc_unlocked .visible .func (.param .u32 %value_out) putc_unlocked (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r24; .reg .u64 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r44; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; .loc 2 89 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 692 6 ld.u32 %r33,[%r32+12]; add.u32 %r24,%r33,-1; .loc 1 692 5 st.u32 [%r32+12],%r24; setp.ge.s32 %r34,%r24,0; @ %r34 bra $L9; .loc 1 692 20 ld.u32 %r35,[%r32+40]; setp.lt.s32 %r36,%r24,%r35; @ %r36 bra $L10; .loc 1 692 50 mov.u32 %r37,%r31; .loc 1 692 47 cvt.s16.s8 %r38,%r37; setp.eq.u16 %r39,%r38,10; @ %r39 bra $L10; $L9: .loc 1 693 14 ld.u64 %r27,[%r32]; .loc 1 693 18 add.u64 %r40,%r27,1; st.u64 [%r32],%r40; .loc 1 693 21 st.u8 [%r27],%r31; and.b32 %r30,%r31,255; bra $L8; $L10: .loc 1 695 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r44,[%value_in]; } mov.u32 %r30,%r44; $L8: .loc 2 90 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-putchar.o/0 0 0 644 2090 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: putchar .visible .func (.param .u32 %value_out) putchar (.param .u32 %in_ar0); .file 1 "../../../../../../../newlib/libc/machine/nvptx/putchar.c" // BEGIN GLOBAL FUNCTION DECL: vprintf .extern .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL VAR DECL: __nvptx_uni .extern .shared .u32 __nvptx_uni[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {37,99,0 }; // BEGIN GLOBAL FUNCTION DEF: putchar .visible .func (.param .u32 %value_out) putchar (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u64 %r33; { .reg .u32 %ustmp0; .reg .u64 %ustmp1; mov.u32 %ustmp0,%tid.y; mul.wide.u32 %ustmp1,%ustmp0,4; mov.u64 %r33,__nvptx_uni; add.u64 %r33,%r33,%ustmp1; ld.shared.u32 %r31,[%r33]; mov.u32 %ustmp0,%laneid; and.b32 %r31,%r31,%ustmp0; setp.eq.u32 %r32,%r31,%ustmp0; } mov.u32 %r25,%ar0; and.b32 %r24,%r25,255; .loc 1 26 13 st.u32 [%frame],%r24; .loc 1 27 13 cvta.const.u64 %r26,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; @ %r32 call (%value_in),vprintf,(%out_arg1,%out_arg2); ld.param.u32 %r28,[%value_in]; } shfl.idx.b32 %r28,%r28,%r31,31; .loc 1 28 6 setp.ge.s32 %r29,%r28,0; .loc 1 29 7 selp.u32 %value,%r24,-1,%r29; .loc 1 31 1 st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /698 0 0 0 644 1991 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _putchar_unlocked_r .visible .func (.param .u32 %value_out) _putchar_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/putchar_u.c" // BEGIN GLOBAL FUNCTION DECL: putchar_unlocked .visible .func (.param .u32 %value_out) putchar_unlocked (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: putc_unlocked .extern .func (.param .u32 %value_out) putc_unlocked (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _putchar_unlocked_r .visible .func (.param .u32 %value_out) _putchar_unlocked_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r28; .reg .u32 %r29; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 67 10 ld.u64 %r28,[%r24+16]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),putc_unlocked,(%out_arg1,%out_arg2); ld.param.u32 %r29,[%value_in]; } .loc 1 68 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: putchar_unlocked .visible .func (.param .u32 %value_out) putchar_unlocked (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; mov.u32 %r25,%ar0; .loc 1 67 28 ld.global.u64 %r28,[_impure_ptr]; .loc 1 67 10 ld.u64 %r29,[%r28+16]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; call (%value_in),putc_unlocked,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 78 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-puts.o/ 0 0 0 644 1965 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: puts .visible .func (.param .u32 %value_out) puts (.param .u64 %in_ar0); .file 1 "../../../../../../../newlib/libc/machine/nvptx/puts.c" // BEGIN GLOBAL FUNCTION DECL: vprintf .extern .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL VAR DECL: __nvptx_uni .extern .shared .u32 __nvptx_uni[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {37,115,10,0 }; // BEGIN GLOBAL FUNCTION DEF: puts .visible .func (.param .u32 %value_out) puts (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .u64 %r30; { .reg .u32 %ustmp0; .reg .u64 %ustmp1; mov.u32 %ustmp0,%tid.y; mul.wide.u32 %ustmp1,%ustmp0,4; mov.u64 %r30,__nvptx_uni; add.u64 %r30,%r30,%ustmp1; ld.shared.u32 %r28,[%r30]; mov.u32 %ustmp0,%laneid; and.b32 %r28,%r28,%ustmp0; setp.eq.u32 %r29,%r28,%ustmp0; } mov.u64 %r23,%ar0; .loc 1 25 13 st.u64 [%frame],%r23; .loc 1 26 10 cvta.const.u64 %r24,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; @ %r29 call (%value_in),vprintf,(%out_arg1,%out_arg2); ld.param.u32 %r26,[%value_in]; } shfl.idx.b32 %r26,%r26,%r28,31; .loc 1 27 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-qsort.o/ 0 0 0 644 26869 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: qsort .visible .func qsort (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/search/qsort.c" // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: qsort .visible .func qsort (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,128; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r59; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r72; .reg .u64 %r74; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r86; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r92; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r122; .reg .u32 %r141; .reg .u64 %r143; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .u64 %r152; .reg .u64 %r153; .reg .u64 %r154; .reg .u32 %r155; .reg .u64 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u32 %r161; .reg .u64 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u32 %r166; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u32 %r179; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u32 %r188; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r195; .reg .u64 %r200; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r210; .reg .u64 %r217; .reg .u64 %r219; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r248; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r255; .reg .u64 %r257; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r265; .reg .u64 %r266; .reg .u64 %r268; .reg .u64 %r269; .reg .u64 %r270; .reg .pred %r271; .reg .u32 %r273; .reg .u32 %r275; .reg .pred %r277; .reg .pred %r278; .reg .pred %r281; .reg .u32 %r282; .reg .u32 %r283; .reg .u64 %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .u32 %r291; .reg .pred %r292; .reg .pred %r293; .reg .u64 %r294; .reg .u64 %r296; .reg .pred %r298; .reg .pred %r299; .reg .u64 %r300; .reg .u64 %r301; .reg .u32 %r304; .reg .pred %r305; .reg .u32 %r308; .reg .pred %r309; .reg .u32 %r312; .reg .pred %r313; .reg .u32 %r316; .reg .pred %r317; .reg .u32 %r320; .reg .pred %r321; .reg .u32 %r324; .reg .pred %r325; .reg .u32 %r328; .reg .pred %r329; .reg .u32 %r332; .reg .pred %r333; .reg .u32 %r336; .reg .pred %r337; .reg .u32 %r340; .reg .pred %r341; .reg .u32 %r344; .reg .pred %r345; .reg .u32 %r348; .reg .pred %r349; .reg .u32 %r352; .reg .pred %r353; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r360; .reg .pred %r361; .reg .u32 %r364; .reg .pred %r365; .reg .u32 %r368; .reg .pred %r369; .reg .u32 %r372; .reg .pred %r373; .reg .u32 %r376; .reg .pred %r377; .reg .u32 %r380; .reg .pred %r381; .reg .pred %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u64 %r388; .reg .pred %r389; .reg .pred %r390; .reg .pred %r391; .reg .pred %r392; .reg .pred %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u64 %r399; .reg .pred %r400; .reg .pred %r401; .reg .u32 %r404; .reg .pred %r405; .reg .pred %r406; .reg .pred %r407; .reg .pred %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u64 %r414; .reg .pred %r415; .reg .pred %r416; .reg .pred %r417; .reg .u32 %r420; .reg .pred %r421; .reg .pred %r423; .reg .u32 %r424; .reg .u32 %r425; .reg .u64 %r427; .reg .pred %r428; .reg .pred %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .u64 %r435; .reg .pred %r436; .reg .pred %r437; .reg .pred %r438; .reg .u32 %r441; .reg .pred %r442; .reg .pred %r443; .reg .u64 %r444; .reg .u64 %r445; .reg .u64 %r446; .reg .pred %r447; .reg .u64 %r449; .reg .pred %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .u64 %r454; .reg .u64 %r455; .reg .pred %r456; .reg .pred %r457; .reg .pred %r458; .reg .u64 %r460; .reg .pred %r461; .reg .u32 %r462; .reg .u32 %r463; .reg .u64 %r465; .reg .u64 %r466; .reg .pred %r467; .reg .pred %r468; .reg .pred %r469; .reg .u64 %r470; .reg .u64 %r471; .reg .u64 %r475; .reg .u64 %r481; .reg .pred %r482; .reg .u64 %r483; .reg .u64 %r484; .reg .pred %r488; .reg .pred %r489; .reg .pred %r491; .reg .pred %r492; .reg .u64 %r494; .reg .u64 %r495; .reg .u64 %r496; .reg .u64 %r497; .reg .u64 %r498; .reg .u64 %r499; .reg .u64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; mov.u64 %r263,%ar0; mov.u64 %r264,%ar1; mov.u64 %r265,%ar2; mov.u64 %r266,%ar3; .loc 1 194 2 or.b64 %r269,%r263,%r265; and.b64 %r270,%r269,7; setp.ne.u64 %r271,%r270,0; @ %r271 bra $L89; set.u32.ne.u64 %r273,%r265,8; neg.s32 %r86,%r273; bra $L2; $L89: mov.u32 %r86,2; $L2: .loc 1 218 2 cvt.u32.u64 %r275,%r265; .loc 1 109 3 cvt.s64.s32 %r143,%r275; shr.u64 %r145,%r143,3; .loc 1 191 9 mov.u64 %r45,0; .loc 1 218 2 setp.ne.u32 %r512,%r86,0; .loc 1 108 4 setp.ne.u32 %r513,%r86,1; .loc 1 250 3 setp.eq.u32 %r514,%r86,0; .loc 1 108 4 setp.eq.u32 %r515,%r86,2; $L3: .loc 1 198 11 add.u64 %r109,%r263,%r265; .loc 1 198 46 mad.lo.u64 %r210,%r264,%r265,%r263; .loc 1 196 5 setp.gt.u64 %r277,%r264,6; @ %r277 bra $L4; .loc 1 198 33 setp.gt.u64 %r278,%r210,%r109; @ %r278 bra $L5; bra $L6; $L13: .loc 1 201 5 @ %r512 bra $L7; ld.u64 %r110,[%r105]; ld.u64 %r26,[%r50]; st.u64 [%r105],%r26; st.u64 [%r50],%r110; bra $L8; $L7: .loc 1 108 4 @ %r513 bra $L90; mov.u64 %r52,%r50; .loc 1 109 3 mov.u64 %r117,%r145; $L10: ld.u64 %r115,[%r157]; ld.u64 %r116,[%r52]; st.u64 [%r157],%r116; st.u64 [%r52],%r115; add.u64 %r117,%r117,-1; add.u64 %r157,%r157,8; add.u64 %r52,%r52,8; setp.gt.s64 %r281,%r117,0; @ %r281 bra $L10; bra $L8; $L90: mov.u64 %r114,%r50; mov.u64 %r28,%r105; add.u64 %r500,%r28,%r143; $L9: .loc 1 111 3 ld.s8 %r112,[%r28]; ld.u8 %r282,[%r114]; st.u8 [%r28],%r282; cvt.u32.u32 %r283,%r112; st.u8 [%r114],%r283; add.u64 %r28,%r28,1; add.u64 %r114,%r114,1; sub.u64 %r285,%r500,%r28; setp.gt.s64 %r286,%r285,0; @ %r286 bra $L9; $L8: .loc 1 199 34 setp.lt.u64 %r287,%r263,%r50; @ %r287 bra $L12; $L14: .loc 1 198 59 add.u64 %r109,%r109,%r265; .loc 1 198 33 setp.lt.u64 %r288,%r109,%r210; @ %r288 bra $L5; bra $L6; $L12: mov.u64 %r105,%r50; mov.u64 %r157,%r50; sub.u64 %r50,%r50,%r265; .loc 1 199 37 { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT0; ld.param.u32 %r291,[%value_in]; } .loc 1 199 34 setp.gt.s32 %r292,%r291,0; @ %r292 bra $L13; bra $L14; $L5: setp.ge.u64 %r293,%r263,%r109; @ %r293 bra $L14; mov.u64 %r50,%r109; bra $L12; $L4: .loc 1 206 23 shr.u64 %r294,%r264,1; .loc 1 206 5 mad.lo.u64 %r84,%r294,%r265,%r263; .loc 1 209 24 add.u64 %r296,%r264,-1; .loc 1 209 6 mad.lo.u64 %r101,%r296,%r265,%r263; .loc 1 207 5 setp.eq.u64 %r298,%r264,7; @ %r298 bra $L15; .loc 1 210 6 setp.le.u64 %r299,%r264,40; @ %r299 bra $L91; .loc 1 211 11 shr.u64 %r300,%r264,3; .loc 1 211 6 mul.lo.u64 %r92,%r300,%r265; .loc 1 212 33 add.u64 %r301,%r92,%r92; .loc 1 212 9 add.u64 %r40,%r263,%r301; add.u64 %r83,%r263,%r92; .loc 1 143 9 { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r263; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r83; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT1; ld.param.u32 %r304,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r305,%r304,0; @ %r305 bra $L17; .loc 1 144 10 { .param .u32 %value_in; $LCT2: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT2; ld.param.u32 %r308,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r309,%r308,0; @ %r309 bra $L18; .loc 1 144 38 { .param .u32 %value_in; $LCT3: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r263; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT3; ld.param.u32 %r312,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r313,%r312,0; selp.u64 %r83,%r40,%r263,%r313; bra $L18; $L17: .loc 1 145 17 { .param .u32 %value_in; $LCT4: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT4; ld.param.u32 %r316,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r317,%r316,0; @ %r317 bra $L18; .loc 1 145 45 { .param .u32 %value_in; $LCT5: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r263; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT5; ld.param.u32 %r320,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r321,%r320,0; selp.u64 %r83,%r263,%r40,%r321; $L18: .loc 1 213 9 add.u64 %r41,%r84,%r92; .loc 1 213 17 neg.s64 %r42,%r92; .loc 1 213 9 sub.u64 %r43,%r84,%r92; .loc 1 143 9 { .param .u32 %value_in; $LCT6: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r84; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT6; ld.param.u32 %r324,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r325,%r324,0; @ %r325 bra $L19; .loc 1 144 10 { .param .u32 %value_in; $LCT7: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT7; ld.param.u32 %r328,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r329,%r328,0; @ %r329 bra $L20; .loc 1 144 38 { .param .u32 %value_in; $LCT8: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT8; ld.param.u32 %r332,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r333,%r332,0; selp.u64 %r84,%r41,%r43,%r333; bra $L20; $L19: .loc 1 145 17 { .param .u32 %value_in; $LCT9: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT9; ld.param.u32 %r336,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r337,%r336,0; @ %r337 bra $L20; .loc 1 145 45 { .param .u32 %value_in; $LCT10: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT10; ld.param.u32 %r340,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r341,%r340,0; selp.u64 %r84,%r43,%r41,%r341; $L20: .loc 1 214 9 add.u64 %r44,%r101,%r42; add.u64 %r46,%r44,%r42; .loc 1 143 9 { .param .u32 %value_in; $LCT11: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT11; ld.param.u32 %r344,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r345,%r344,0; @ %r345 bra $L21; .loc 1 144 10 { .param .u32 %value_in; $LCT12: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT12; ld.param.u32 %r348,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r349,%r348,0; @ %r349 bra $L16; .loc 1 144 38 { .param .u32 %value_in; $LCT13: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT13; ld.param.u32 %r352,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r353,%r352,0; selp.u64 %r44,%r101,%r46,%r353; bra $L16; $L21: .loc 1 145 17 { .param .u32 %value_in; $LCT14: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT14; ld.param.u32 %r356,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r357,%r356,0; @ %r357 bra $L16; .loc 1 145 45 { .param .u32 %value_in; $LCT15: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r101; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT15; ld.param.u32 %r360,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r361,%r360,0; .loc 1 209 6 selp.u64 %r44,%r46,%r101,%r361; bra $L16; $L91: mov.u64 %r44,%r101; mov.u64 %r83,%r263; $L16: .loc 1 143 9 { .param .u32 %value_in; $LCT16: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r84; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT16; ld.param.u32 %r364,[%value_in]; } .loc 1 145 15 setp.ge.s32 %r365,%r364,0; @ %r365 bra $L22; .loc 1 144 10 { .param .u32 %value_in; $LCT17: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT17; ld.param.u32 %r368,[%value_in]; } .loc 1 144 35 setp.lt.s32 %r369,%r368,0; @ %r369 bra $L15; .loc 1 144 38 { .param .u32 %value_in; $LCT18: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT18; ld.param.u32 %r372,[%value_in]; } .loc 1 144 63 setp.lt.s32 %r373,%r372,0; selp.u64 %r84,%r44,%r83,%r373; bra $L15; $L22: .loc 1 145 17 { .param .u32 %value_in; $LCT19: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r84; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT19; ld.param.u32 %r376,[%value_in]; } .loc 1 145 42 setp.gt.s32 %r377,%r376,0; @ %r377 bra $L15; .loc 1 145 45 { .param .u32 %value_in; $LCT20: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r83; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT20; ld.param.u32 %r380,[%value_in]; } .loc 1 145 70 setp.lt.s32 %r381,%r380,0; selp.u64 %r84,%r83,%r44,%r381; $L15: .loc 1 218 2 @ %r512 bra $L23; ld.u64 %r98,[%r263]; ld.u64 %r47,[%r84]; st.u64 [%r263],%r47; st.u64 [%r84],%r98; bra $L24; $L23: .loc 1 108 4 @ %r513 bra $L25; mov.u64 %r251,%r263; mov.u64 %r252,%r84; .loc 1 109 3 mov.u64 %r148,%r145; $L26: ld.u64 %r146,[%r251]; ld.u64 %r147,[%r252]; st.u64 [%r251],%r147; st.u64 [%r252],%r146; add.u64 %r148,%r148,-1; add.u64 %r251,%r251,8; add.u64 %r252,%r252,8; setp.gt.s64 %r384,%r148,0; @ %r384 bra $L26; bra $L24; $L25: mov.u64 %r257,%r84; .loc 1 108 4 mov.u64 %r255,%r263; add.u64 %r495,%r263,%r143; $L27: .loc 1 111 3 ld.s8 %r141,[%r255]; ld.u8 %r385,[%r257]; st.u8 [%r255],%r385; cvt.u32.u32 %r386,%r141; st.u8 [%r257],%r386; add.u64 %r255,%r255,1; add.u64 %r257,%r257,1; sub.u64 %r388,%r495,%r255; setp.gt.s64 %r389,%r388,0; @ %r389 bra $L27; $L24: .loc 1 228 19 setp.lt.u64 %r390,%r101,%r109; @ %r390 bra $L29; mov.u64 %r248,%r109; mov.u64 %r81,%r101; mov.u64 %r122,%r109; .loc 1 195 16 mov.u32 %r188,0; bra $L30; $L29: .loc 1 256 33 setp.gt.u64 %r391,%r210,%r109; @ %r391 bra $L31; bra $L6; $L40: .loc 1 230 7 setp.ne.u32 %r392,%r404,0; @ %r392 bra $L32; .loc 1 232 5 @ %r512 bra $L33; ld.u64 %r102,[%r122]; ld.u64 %r51,[%r248]; st.u64 [%r122],%r51; st.u64 [%r248],%r102; bra $L34; $L33: .loc 1 108 4 @ %r513 bra $L35; mov.u64 %r200,%r122; mov.u64 %r57,%r248; .loc 1 109 3 mov.u64 %r154,%r145; $L36: ld.u64 %r152,[%r200]; ld.u64 %r153,[%r57]; st.u64 [%r200],%r153; st.u64 [%r57],%r152; add.u64 %r154,%r154,-1; add.u64 %r200,%r200,8; add.u64 %r57,%r57,8; setp.gt.s64 %r395,%r154,0; @ %r395 bra $L36; bra $L34; $L35: .loc 1 108 4 mov.u64 %r219,%r248; mov.u64 %r217,%r122; add.u64 %r499,%r122,%r143; $L37: .loc 1 111 3 ld.s8 %r149,[%r217]; ld.u8 %r396,[%r219]; st.u8 [%r217],%r396; cvt.u32.u32 %r397,%r149; st.u8 [%r219],%r397; add.u64 %r217,%r217,1; add.u64 %r219,%r219,1; sub.u64 %r399,%r499,%r217; setp.gt.s64 %r400,%r399,0; @ %r400 bra $L37; $L34: .loc 1 233 8 add.u64 %r122,%r122,%r265; .loc 1 231 14 mov.u32 %r188,1; $L32: add.u64 %r497,%r265,%r248; mov.u64 %r88,%r497; $L58: .loc 1 228 19 mov.u64 %r248,%r497; setp.lt.u64 %r401,%r101,%r248; @ %r401 bra $L39; $L30: mov.u64 %r88,%r248; .loc 1 228 36 { .param .u32 %value_in; $LCT21: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r248; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r263; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT21; ld.param.u32 %r404,[%value_in]; } .loc 1 228 19 setp.le.s32 %r405,%r404,0; @ %r405 bra $L40; .loc 1 238 19 setp.le.u64 %r406,%r248,%r101; @ %r406 bra $L41; bra $L39; $L51: .loc 1 240 7 setp.ne.u32 %r407,%r420,0; @ %r407 bra $L42; .loc 1 242 5 @ %r512 bra $L43; ld.u64 %r104,[%r101]; ld.u64 %r53,[%r81]; st.u64 [%r101],%r53; st.u64 [%r81],%r104; bra $L44; $L43: .loc 1 108 4 @ %r513 bra $L45; mov.u64 %r236,%r101; mov.u64 %r237,%r81; .loc 1 109 3 mov.u64 %r160,%r145; $L46: ld.u64 %r158,[%r236]; ld.u64 %r159,[%r237]; st.u64 [%r236],%r159; st.u64 [%r237],%r158; add.u64 %r160,%r160,-1; add.u64 %r236,%r236,8; add.u64 %r237,%r237,8; setp.gt.s64 %r410,%r160,0; @ %r410 bra $L46; bra $L44; $L45: mov.u64 %r241,%r81; .loc 1 108 4 mov.u64 %r240,%r101; add.u64 %r498,%r101,%r143; $L47: .loc 1 111 3 ld.s8 %r155,[%r240]; ld.u8 %r411,[%r241]; st.u8 [%r240],%r411; cvt.u32.u32 %r412,%r155; st.u8 [%r241],%r412; add.u64 %r240,%r240,1; add.u64 %r241,%r241,1; sub.u64 %r414,%r498,%r240; setp.gt.s64 %r415,%r414,0; @ %r415 bra $L47; $L44: .loc 1 243 8 add.u64 %r81,%r81,%r90; .loc 1 241 14 mov.u32 %r188,1; $L42: .loc 1 245 7 add.u64 %r101,%r101,%r90; .loc 1 238 19 setp.ge.u64 %r416,%r101,%r248; @ %r416 bra $L49; $L39: .loc 1 255 5 setp.eq.u32 %r417,%r188,0; @ ! %r417 bra $L132; bra $L29; $L41: .loc 1 199 37 neg.s64 %r90,%r265; $L49: .loc 1 238 36 { .param .u32 %value_in; $LCT22: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r263; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT22; ld.param.u32 %r420,[%value_in]; } .loc 1 238 19 setp.ge.s32 %r421,%r420,0; @ %r421 bra $L51; bra $L133; $L84: .loc 1 250 3 ld.u64 %r106,[%r248]; ld.u64 %r54,[%r101]; st.u64 [%r248],%r54; st.u64 [%r101],%r106; bra $L53; $L137: .loc 1 108 4 @ %r513 bra $L54; mov.u64 %r226,%r101; mov.u64 %r225,%r248; .loc 1 109 3 mov.u64 %r165,%r145; $L55: ld.u64 %r163,[%r225]; ld.u64 %r164,[%r226]; st.u64 [%r225],%r164; st.u64 [%r226],%r163; add.u64 %r165,%r165,-1; add.u64 %r225,%r225,8; add.u64 %r226,%r226,8; setp.gt.s64 %r423,%r165,0; @ %r423 bra $L55; bra $L53; $L54: mov.u64 %r230,%r101; .loc 1 108 4 mov.u64 %r229,%r248; add.u64 %r494,%r143,%r248; $L56: .loc 1 111 3 ld.s8 %r161,[%r229]; ld.u8 %r424,[%r230]; st.u8 [%r229],%r424; cvt.u32.u32 %r425,%r161; st.u8 [%r230],%r425; add.u64 %r229,%r229,1; add.u64 %r230,%r230,1; sub.u64 %r427,%r494,%r229; setp.gt.s64 %r428,%r427,0; @ %r428 bra $L56; $L53: add.u64 %r497,%r265,%r248; mov.u64 %r88,%r497; .loc 1 253 6 add.u64 %r101,%r101,%r90; .loc 1 251 12 mov.u32 %r188,1; .loc 1 228 9 bra $L58; $L65: .loc 1 259 5 @ %r512 bra $L59; ld.u64 %r108,[%r195]; ld.u64 %r56,[%r59]; st.u64 [%r195],%r56; st.u64 [%r59],%r108; bra $L60; $L59: .loc 1 108 4 @ %r513 bra $L100; mov.u64 %r70,%r59; .loc 1 109 3 mov.u64 %r171,%r145; $L62: ld.u64 %r169,[%r63]; ld.u64 %r170,[%r70]; st.u64 [%r63],%r170; st.u64 [%r70],%r169; add.u64 %r171,%r171,-1; add.u64 %r63,%r63,8; add.u64 %r70,%r70,8; setp.gt.s64 %r431,%r171,0; @ %r431 bra $L62; bra $L60; $L100: mov.u64 %r78,%r59; mov.u64 %r80,%r195; add.u64 %r496,%r80,%r143; $L61: .loc 1 111 3 ld.s8 %r166,[%r80]; ld.u8 %r432,[%r78]; st.u8 [%r80],%r432; cvt.u32.u32 %r433,%r166; st.u8 [%r78],%r433; add.u64 %r80,%r80,1; add.u64 %r78,%r78,1; sub.u64 %r435,%r496,%r80; setp.gt.s64 %r436,%r435,0; @ %r436 bra $L61; $L60: .loc 1 257 34 setp.lt.u64 %r437,%r263,%r59; @ %r437 bra $L64; $L66: .loc 1 256 59 add.u64 %r109,%r109,%r265; .loc 1 256 33 setp.lt.u64 %r438,%r109,%r210; @ %r438 bra $L31; bra $L6; $L64: mov.u64 %r195,%r59; mov.u64 %r63,%r59; sub.u64 %r59,%r59,%r265; .loc 1 257 37 { .param .u32 %value_in; $LCT23: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r195; call (%value_in),%r266,(%out_arg1,%out_arg2),$LCT23; ld.param.u32 %r441,[%value_in]; } .loc 1 257 34 setp.gt.s32 %r442,%r441,0; @ %r442 bra $L65; bra $L66; $L31: setp.ge.u64 %r443,%r263,%r109; @ %r443 bra $L66; mov.u64 %r59,%r109; bra $L64; $L132: .loc 1 268 6 sub.u64 %r64,%r88,%r122; sub.u64 %r444,%r122,%r263; min.s64 %r66,%r444,%r64; .loc 1 270 6 sub.u64 %r33,%r81,%r101; sub.u64 %r445,%r210,%r81; sub.u64 %r446,%r445,%r265; .loc 1 270 4 min.u64 %r34,%r446,%r33; .loc 1 269 2 setp.eq.u64 %r447,%r66,0; @ %r447 bra $L67; cvt.u32.u64 %r67,%r66; sub.u64 %r69,%r88,%r66; .loc 1 108 4 @ %r515 bra $L68; .loc 1 109 3 cvt.s64.s32 %r449,%r67; shr.u64 %r178,%r449,3; mov.u64 %r192,%r263; mov.u64 %r96,%r69; $L69: ld.u64 %r176,[%r192]; ld.u64 %r177,[%r96]; st.u64 [%r192],%r177; st.u64 [%r96],%r176; add.u64 %r178,%r178,-1; add.u64 %r192,%r192,8; add.u64 %r96,%r96,8; setp.gt.s64 %r450,%r178,0; @ %r450 bra $L69; bra $L134; $L68: mov.u64 %r30,%r69; .loc 1 108 4 mov.u64 %r95,%r263; cvt.s64.s32 %r501,%r67; .loc 1 111 3 add.u64 %r454,%r263,%r501; $L71: ld.s8 %r172,[%r95]; ld.u8 %r451,[%r30]; st.u8 [%r95],%r451; cvt.u32.u32 %r452,%r172; st.u8 [%r30],%r452; add.u64 %r95,%r95,1; add.u64 %r30,%r30,1; sub.u64 %r455,%r454,%r95; setp.gt.s64 %r456,%r455,0; @ %r456 bra $L71; bra $L135; $L67: .loc 1 271 2 setp.ne.u64 %r457,%r34,0; @ %r457 bra $L73; $L77: .loc 1 272 4 mov.u64 %r77,%r64; .loc 1 274 5 sub.u64 %r79,%r210,%r33; .loc 1 281 5 setp.le.u64 %r458,%r33,%r77; @ %r458 bra $L74; mov.u64 %r77,%r33; mov.u64 %r33,%r64; mov.u64 %r268,%r263; .loc 1 283 5 mov.u64 %r263,%r79; .loc 1 281 5 mov.u64 %r79,%r268; bra $L74; $L73: .loc 1 271 2 cvt.u32.u64 %r72,%r34; sub.u64 %r74,%r210,%r34; .loc 1 108 4 @ %r515 bra $L75; $L87: .loc 1 109 3 cvt.s64.s32 %r460,%r72; shr.u64 %r185,%r460,3; mov.u64 %r94,%r88; mov.u64 %r191,%r74; $L76: ld.u64 %r183,[%r94]; ld.u64 %r184,[%r191]; st.u64 [%r94],%r184; st.u64 [%r191],%r183; add.u64 %r185,%r185,-1; add.u64 %r94,%r94,8; add.u64 %r191,%r191,8; setp.gt.s64 %r461,%r185,0; @ %r461 bra $L76; bra $L77; $L75: mov.u64 %r206,%r74; .loc 1 108 4 mov.u64 %r205,%r88; cvt.s64.s32 %r502,%r72; .loc 1 111 3 add.u64 %r465,%r205,%r502; $L78: ld.s8 %r179,[%r205]; ld.u8 %r462,[%r206]; st.u8 [%r205],%r462; cvt.u32.u32 %r463,%r179; st.u8 [%r206],%r463; add.u64 %r205,%r205,1; add.u64 %r206,%r206,1; sub.u64 %r466,%r465,%r205; setp.gt.s64 %r467,%r466,0; @ %r467 bra $L78; bra $L77; $L74: .loc 1 300 5 setp.le.u64 %r468,%r33,%r265; @ %r468 bra $L79; .loc 1 301 6 setp.gt.u64 %r469,%r45,7; @ %r469 bra $L80; .loc 1 311 39 shl.b64 %r470,%r45,4; add.u64 %r471,%frame,%r470; st.u64 [%r471],%r263; .loc 1 312 43 div.u64 %r475,%r77,%r265; .loc 1 312 39 st.u64 [%r471+8],%r475; .loc 1 313 19 add.u64 %r45,%r45,1; .loc 1 315 6 div.u64 %r264,%r33,%r265; .loc 1 314 6 mov.u64 %r263,%r79; .loc 1 316 4 bra $L3; $L80: .loc 1 315 6 div.u64 %r481,%r33,%r265; .loc 1 329 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r481; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r265; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r266; call qsort,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 333 5 setp.gt.u64 %r482,%r77,%r265; @ %r482 bra $L82; $L83: .loc 1 340 18 add.u64 %r45,%r45,-1; .loc 1 341 5 shl.b64 %r483,%r45,4; add.u64 %r484,%frame,%r483; ld.u64 %r263,[%r484]; .loc 1 342 5 ld.u64 %r264,[%r484+8]; .loc 1 343 3 bra $L3; $L82: .loc 1 334 5 div.u64 %r264,%r77,%r265; .loc 1 335 3 bra $L3; $L79: .loc 1 333 5 setp.gt.u64 %r488,%r77,%r265; @ %r488 bra $L82; $L6: .loc 1 339 5 setp.ne.u64 %r489,%r45,0; @ %r489 bra $L83; bra $L136; $L133: .loc 1 250 3 @ %r514 bra $L84; bra $L137; $L86: .loc 1 271 2 cvt.u32.u64 %r72,%r34; sub.u64 %r74,%r210,%r34; bra $L75; $L135: setp.ne.u64 %r491,%r34,0; @ ! %r491 bra $L77; bra $L86; $L88: cvt.u32.u64 %r72,%r34; sub.u64 %r74,%r210,%r34; bra $L87; $L134: setp.ne.u64 %r492,%r34,0; @ ! %r492 bra $L77; bra $L88; $L136: .loc 1 345 1 st.shared.u64 [%sspslot],%sspprev; ret; } /717 0 0 0 644 2096 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: at_quick_exit .visible .func (.param .u32 %value_out) at_quick_exit (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/quick_exit.c" // BEGIN GLOBAL FUNCTION DECL: quick_exit .visible .func quick_exit (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _exit .extern .func _exit (.param .u32 %in_ar0); // BEGIN VAR DEF: handlers .global .align 8 .u64 handlers[1]; // BEGIN GLOBAL FUNCTION DEF: at_quick_exit .visible .func (.param .u32 %value_out) at_quick_exit (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r29; .reg .u64 %r30; mov.u64 %r25,%ar0; .loc 1 60 6 mov.u64 %r26,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r27,[%value_in]; } .loc 1 62 5 setp.eq.u64 %r29,%r27,0; @ %r29 bra $L3; .loc 1 64 13 st.u64 [%r27+8],%r25; .loc 1 68 10 ld.global.u64 %r30,[handlers]; st.u64 [%r27],%r30; .loc 1 69 11 st.global.u64 [handlers],%r27; .loc 1 73 9 mov.u32 %r24,0; bra $L1; $L3: .loc 1 63 10 mov.u32 %r24,1; $L1: .loc 1 74 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: quick_exit .visible .func quick_exit (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .reg .u64 %r26; .reg .pred %r27; mov.u32 %r24,%ar0; .loc 1 85 9 ld.global.u64 %r23,[handlers]; .loc 1 85 26 setp.eq.u64 %r25,%r23,0; @ %r25 bra $L5; $L6: .loc 1 86 3 ld.u64 %r26,[%r23+8]; { $LCT0: .callprototype _; call %r26,$LCT0; } .loc 1 85 34 ld.u64 %r23,[%r23]; .loc 1 85 26 setp.ne.u64 %r27,%r23,0; @ %r27 bra $L6; $L5: .loc 1 87 2 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; call _exit,(%out_arg1); trap; // (noreturn) exit; // (noreturn) } } lib_a-raise.o/ 0 0 0 644 164 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _dummy_raise .visible .global .align 4 .u32 _dummy_raise[1]; lib_a-rand.o/ 0 0 0 644 1212 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: srand .visible .func srand (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/rand.c" // BEGIN GLOBAL FUNCTION DECL: rand .visible .func (.param .u32 %value_out) rand; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: srand .visible .func srand (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; mov.u32 %r24,%ar0; .loc 1 67 27 ld.global.u64 %r25,[_impure_ptr]; cvt.u64.u32 %r26,%r24; st.u64 [%r25+232],%r26; .loc 1 68 1 ret; } // BEGIN GLOBAL FUNCTION DEF: rand .visible .func (.param .u32 %value_out) rand { .reg .u32 %value; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r32; .reg .u32 %r33; .loc 1 73 18 ld.global.u64 %r27,[_impure_ptr]; .loc 1 80 30 ld.u64 %r30,[%r27+232]; .loc 1 80 68 mad.lo.u64 %r24,%r30,6364136223846793005,1; .loc 1 79 27 st.u64 [%r27+232],%r24; .loc 1 81 41 shr.u64 %r32,%r24,32; .loc 1 81 48 cvt.u32.u64 %r33,%r32; .loc 1 81 10 and.b32 %value,%r33,2147483647; .loc 1 82 1 st.param.u32 [%value_out],%value; ret; } lib_a-rand48.o/ 0 0 0 644 1921 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __dorand48 .visible .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/rand48.c" // BEGIN GLOBAL FUNCTION DEF: __dorand48 .visible .func __dorand48 (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r28; .reg .u32 %r30; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r68; .reg .u16 %r69; .reg .u16 %r70; .reg .u32 %r71; .reg .u64 %r72; mov.u64 %r54,%ar0; mov.u64 %r55,%ar1; .loc 1 140 39 ld.u16 %r22,[%r54+246]; .loc 1 140 66 ld.u16 %r23,[%r55]; .loc 1 140 43 mul.wide.u32 %r56,%r22,%r23; .loc 1 141 5 ld.u16 %r57,[%r54+252]; .loc 1 140 8 add.u64 %r43,%r56,%r57; .loc 1 143 8 shr.u64 %r44,%r43,16; .loc 1 144 67 ld.u16 %r28,[%r55+2]; .loc 1 145 34 ld.u16 %r30,[%r54+248]; .loc 1 144 44 mul.wide.u32 %r58,%r22,%r28; .loc 1 145 38 mul.wide.u32 %r59,%r23,%r30; .loc 1 144 71 add.u64 %r60,%r58,%r59; .loc 1 144 8 add.u64 %r45,%r60,%r44; .loc 1 147 8 shr.u64 %r46,%r45,16; .loc 1 148 28 ld.u16 %r62,[%r55+4]; cvt.u16.u32 %r63,%r22; mul.wide.u16 %r61,%r62,%r63; .loc 1 148 58 cvt.u16.u32 %r65,%r30; cvt.u16.u32 %r66,%r28; mul.wide.u16 %r64,%r65,%r66; .loc 1 148 88 ld.u16 %r69,[%r54+250]; cvt.u16.u32 %r70,%r23; mul.wide.u16 %r68,%r69,%r70; .loc 1 148 69 vadd.u32.u32.u32.add %r71,%r61,%r64,%r68; cvt.s64.s32 %r72,%r71; .loc 1 148 8 add.u64 %r47,%r72,%r46; .loc 1 142 13 st.u16 [%r55],%r43; .loc 1 146 13 st.u16 [%r55+2],%r45; .loc 1 151 14 st.u16 [%r55+4],%r47; .loc 1 152 1 ret; } lib_a-rand_r.o/ 0 0 0 644 1309 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rand_r .visible .func (.param .u32 %value_out) rand_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/rand_r.c" // BEGIN GLOBAL FUNCTION DEF: rand_r .visible .func (.param .u32 %value_out) rand_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; mov.u64 %r35,%ar0; .loc 1 28 14 ld.u32 %r27,[%r35]; .loc 1 29 12 setp.eq.u64 %r36,%r27,0; @ %r36 bra $L4; .loc 1 31 11 div.s64 %r28,%r27,127773; .loc 1 32 24 mad.lo.u64 %r38,%r28,-127773,%r27; .loc 1 32 45 mul.lo.u64 %r39,%r28,-2836; .loc 1 32 11 mad.lo.u64 %r29,%r38,16807,%r39; .loc 1 33 12 setp.lt.s64 %r40,%r29,0; @ %r40 bra $L3; .loc 1 35 19 cvt.u32.u64 %r31,%r29; .loc 1 36 16 and.b32 %r34,%r31,2147483647; bra $L2; $L3: .loc 1 34 13 add.u64 %r30,%r29,2147483647; .loc 1 35 19 cvt.u32.u64 %r31,%r30; .loc 1 36 16 and.b32 %r34,%r31,2147483647; bra $L2; $L4: mov.u32 %r34,719435623; mov.u32 %r31,%r34; $L2: .loc 1 35 17 st.u32 [%r35],%r31; .loc 1 37 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } lib_a-random.o/ 0 0 0 644 1178 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: srandom .visible .func srandom (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/random.c" // BEGIN GLOBAL FUNCTION DECL: random .visible .func (.param .u64 %value_out) random; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: srandom .visible .func srandom (.param .u32 %in_ar0) { .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; mov.u32 %r24,%ar0; .loc 1 65 27 ld.global.u64 %r25,[_impure_ptr]; cvt.u64.u32 %r26,%r24; st.u64 [%r25+232],%r26; .loc 1 66 1 ret; } // BEGIN GLOBAL FUNCTION DEF: random .visible .func (.param .u64 %value_out) random { .reg .u64 %value; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r32; .loc 1 71 18 ld.global.u64 %r27,[_impure_ptr]; .loc 1 78 30 ld.u64 %r30,[%r27+232]; .loc 1 78 68 mad.lo.u64 %r24,%r30,6364136223846793005,1; .loc 1 77 27 st.u64 [%r27+232],%r24; .loc 1 79 46 shr.u64 %r32,%r24,32; .loc 1 79 10 and.b64 %value,%r32,2147483647; .loc 1 80 1 st.param.u64 [%value_out],%value; ret; } lib_a-readr.o/ 0 0 0 644 1772 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _read_r .visible .func (.param .u64 %value_out) _read_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/reent/readr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: read .extern .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _read_r .visible .func (.param .u64 %value_out) _read_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 48 9 mov.u32 %r29,0; st.global.u32 [errno],%r29; .loc 1 49 24 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),read,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r33,[%value_in]; } .loc 1 49 12 cvt.s64.s32 %r24,%r33; .loc 1 49 6 setp.ne.u32 %r34,%r33,-1; @ %r34 bra $L1; .loc 1 49 61 ld.global.u32 %r23,[errno]; .loc 1 49 52 setp.eq.u32 %r35,%r23,0; @ %r35 bra $L1; .loc 1 50 17 st.u32 [%r25],%r23; $L1: .loc 1 52 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-realloc.o/0 0 0 644 2316 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .visible .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../../newlib/libc/machine/nvptx/realloc.c" // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __nvptx_realloc .visible .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r31; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r53; .reg .u16 %r57; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 21 19 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 23 7 set.u32.ne.u64 %r34,%r28,0; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 23 15 set.u32.ne.u64 %r37,%r31,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; cvt.u16.u8 %r57,%r33; mov.u16 %r40,%r57; cvt.u16.u8 %r57,%r36; mov.u16 %r41,%r57; and.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; .loc 1 23 6 cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L1; .loc 1 26 14 ld.u64 %r46,[%r28+-8]; min.u64 %r45,%r29,%r46; .loc 1 27 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r53,[%value_in]; } .loc 1 28 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __nvptx_free,(%out_arg1); } $L1: .loc 1 32 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /737 0 0 0 644 2818 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: reallocarray .visible .func (.param .u64 %value_out) reallocarray (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/reallocarray.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: reallocarray .visible .func (.param .u64 %value_out) reallocarray (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .pred %r40; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .pred %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r65; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 29 6 mov.u64 %r27,0; shr.u64 %r32,%r30,32; cvt.u32.u64 %r33,%r32; cvt.u32.u64 %r34,%r30; shr.u64 %r35,%r31,32; cvt.u32.u64 %r36,%r35; cvt.u32.u64 %r37,%r31; setp.ne.u32 %r39,%r33,0; @ %r39 bra $L4; setp.ne.u32 %r40,%r36,0; @ %r40 bra $L5; mul.wide.u32 %r38,%r34,%r37; bra $L2; $L5: mov.u32 %r43,%r36; mov.u32 %r44,%r34; bra $L6; $L4: setp.ne.u32 %r45,%r36,0; @ %r45 bra $L8; mov.u32 %r43,%r33; mov.u32 %r44,%r37; $L6: mul.wide.u32 %r46,%r34,%r37; mul.wide.u32 %r48,%r44,%r43; shr.u64 %r49,%r46,32; add.u64 %r50,%r48,%r49; shr.s64 %r51,%r50,32; cvt.u32.u64 %r52,%r51; setp.ne.u32 %r53,%r52,0; @ %r53 bra $L8; shl.b64 %r54,%r50,32; cvt.u32.u64 %r55,%r46; cvt.u64.u32 %r56,%r55; or.b64 %r38,%r54,%r56; bra $L2; $L8: mul.lo.u64 %r38,%r30,%r31; mov.u64 %r27,1; $L2: setp.ge.s64 %r59,%r38,0; @ ! %r59 bra $L12; .loc 1 29 5 setp.eq.u64 %r60,%r27,0; @ %r60 bra $L10; $L12: .loc 1 31 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 31 9 mov.u32 %r62,12; st.u32 [%r61],%r62; .loc 1 32 10 mov.u64 %r28,0; bra $L1; $L10: .loc 1 34 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r65,[%value_in]; } mov.u64 %r28,%r65; $L1: .loc 1 35 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } /759 0 0 0 644 3803 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _reallocf_r .visible .func (.param .u64 %value_out) _reallocf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/reallocf.c" // BEGIN GLOBAL FUNCTION DECL: reallocf .visible .func (.param .u64 %value_out) reallocf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _reallocf_r .visible .func (.param .u64 %value_out) _reallocf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u16 %r48; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 40 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } .loc 1 41 6 set.u32.eq.u64 %r34,%r32,0; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 41 12 set.u32.ne.u64 %r37,%r27,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; cvt.u16.u8 %r48,%r33; mov.u16 %r40,%r48; cvt.u16.u8 %r48,%r36; mov.u16 %r41,%r48; and.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; .loc 1 41 5 cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L1; .loc 1 42 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } $L1: .loc 1 44 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: reallocf .visible .func (.param .u64 %value_out) reallocf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u16 %r48; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 51 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 40 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r32,[%value_in]; } .loc 1 41 6 set.u32.eq.u64 %r34,%r32,0; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 41 12 set.u32.ne.u64 %r37,%r27,0; neg.s32 %r38,%r37; mov.u32 %r36,%r38; cvt.u16.u8 %r48,%r33; mov.u16 %r40,%r48; cvt.u16.u8 %r48,%r36; mov.u16 %r41,%r48; and.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; .loc 1 41 5 cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L6; .loc 1 42 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } $L6: .loc 1 52 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /777 0 0 0 644 1156 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _realloc_r .visible .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../../newlib/libc/machine/nvptx/reallocr.c" // BEGIN GLOBAL FUNCTION DECL: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _realloc_r .visible .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 20 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 21 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-reent.o/ 0 0 0 644 5500 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: cleanup_glue .visible .func cleanup_glue (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/reent/reent.c" // BEGIN GLOBAL FUNCTION DECL: _reclaim_reent .visible .func _reclaim_reent (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DEF: errno .visible .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DEF: cleanup_glue .visible .func cleanup_glue (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 37 11 ld.u64 %r22,[%r27]; .loc 1 37 6 setp.eq.u64 %r28,%r22,0; @ %r28 bra $L2; .loc 1 37 11 ld.u64 %r23,[%r22]; .loc 1 37 6 setp.eq.u64 %r29,%r23,0; @ %r29 bra $L3; .loc 1 37 11 ld.u64 %r24,[%r23]; .loc 1 37 6 setp.eq.u64 %r30,%r24,0; @ %r30 bra $L4; .loc 1 37 11 ld.u64 %r25,[%r24]; .loc 1 37 6 setp.eq.u64 %r31,%r25,0; @ %r31 bra $L5; .loc 1 38 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call cleanup_glue,(%out_arg1,%out_arg2); } $L5: .loc 1 40 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call _free_r,(%out_arg1,%out_arg2); } $L4: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _free_r,(%out_arg1,%out_arg2); } $L3: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _free_r,(%out_arg1,%out_arg2); } $L2: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } .loc 1 41 1 ret; } // BEGIN GLOBAL FUNCTION DEF: _reclaim_reent .visible .func _reclaim_reent (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .pred %r40; .reg .u64 %r41; .reg .pred %r42; .reg .pred %r45; .reg .pred %r46; .reg .pred %r49; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r57; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r63; .reg .pred %r64; .reg .pred %r65; mov.u64 %r37,%ar0; .loc 1 46 6 ld.global.u64 %r38,[_impure_ptr]; setp.ne.u64 %r39,%r38,%r37; @ ! %r39 bra $L18; .loc 1 53 11 ld.u64 %r32,[%r37+120]; .loc 1 53 10 setp.eq.u64 %r40,%r32,0; @ %r40 bra $L21; mov.u64 %r25,0; $L24: .loc 1 60 16 add.u64 %r41,%r32,%r25; ld.u64 %r33,[%r41]; .loc 1 61 15 setp.eq.u64 %r42,%r33,0; @ %r42 bra $L22; $L23: mov.u64 %r23,%r33; .loc 1 64 13 ld.u64 %r33,[%r33]; .loc 1 65 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _free_r,(%out_arg1,%out_arg2); } .loc 1 61 15 setp.ne.u64 %r45,%r33,0; @ %r45 bra $L23; .loc 1 69 18 ld.u64 %r32,[%r37+120]; $L22: .loc 1 56 18 add.u64 %r25,%r25,8; setp.ne.u64 %r46,%r25,512; @ %r46 bra $L24; .loc 1 69 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call _free_r,(%out_arg1,%out_arg2); } $L21: .loc 1 71 11 ld.u64 %r26,[%r37+96]; .loc 1 71 10 setp.eq.u64 %r49,%r26,0; @ %r49 bra $L25; .loc 1 72 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call _free_r,(%out_arg1,%out_arg2); } $L25: .loc 1 100 15 ld.u64 %r34,[%r37+504]; .loc 1 100 10 setp.ne.u64 %r52,%r34,0; @ %r52 bra $L26; $L29: .loc 1 113 14 ld.u64 %r28,[%r37+136]; .loc 1 113 10 setp.ne.u64 %r53,%r28,0; @ %r53 bra $L27; bra $L28; $L26: .loc 1 100 46 add.u64 %r27,%r37,512; .loc 1 100 26 setp.eq.u64 %r54,%r34,%r27; @ %r54 bra $L29; $L30: mov.u64 %r36,%r34; .loc 1 106 10 ld.u64 %r34,[%r34]; .loc 1 107 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; call _free_r,(%out_arg1,%out_arg2); } .loc 1 103 29 setp.ne.u64 %r57,%r27,%r34; @ %r57 bra $L30; bra $L29; $L27: .loc 1 114 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call _free_r,(%out_arg1,%out_arg2); } $L28: .loc 1 121 10 ld.u32 %r60,[%r37+80]; setp.eq.u32 %r61,%r60,0; @ %r61 bra $L18; .loc 1 125 4 ld.u64 %r63,[%r37+88]; { $LCT0: .callprototype _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call %r63,(%out_arg1),$LCT0; } .loc 1 127 20 ld.u64 %r31,[%r37+1312]; .loc 1 127 7 setp.eq.u64 %r64,%r31,0; @ %r64 bra $L18; .loc 1 37 11 ld.u64 %r35,[%r31]; .loc 1 37 6 setp.eq.u64 %r65,%r35,0; @ %r65 bra $L32; .loc 1 38 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call cleanup_glue,(%out_arg1,%out_arg2); } $L32: .loc 1 40 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call _free_r,(%out_arg1,%out_arg2); } $L18: .loc 1 134 1 ret; } lib_a-refill.o/ 0 0 0 644 7792 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: lflush .func (.param .u32 %value_out) lflush (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/refill.c" // BEGIN GLOBAL FUNCTION DECL: __srefill_r .visible .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _global_impure_ptr .extern .const .align 8 .u64 _global_impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: fflush .extern .func (.param .u32 %value_out) fflush (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __smakebuf_r .extern .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fwalk .extern .func (.param .u32 %value_out) _fwalk (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sflush_r .extern .func (.param .u32 %value_out) __sflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: lflush .func (.param .u32 %value_out) lflush (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u64 %r25; .reg .u16 %r26; .reg .u16 %r27; .reg .pred %r28; .reg .u32 %r30; mov.u64 %r25,%ar0; .loc 1 28 6 ld.u16 %r27,[%r25+16]; and.b16 %r26,%r27,9; setp.ne.u16 %r28,%r26,9; @ %r28 bra $L3; .loc 1 29 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),fflush,(%out_arg1); ld.param.u32 %r30,[%value_in]; } mov.u32 %r24,%r30; bra $L1; $L3: .loc 1 30 10 mov.u32 %r24,0; $L1: .loc 1 31 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __srefill_r .visible .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r30; .reg .u32 %r32; .reg .u64 %r37; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u16 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .pred %r70; .reg .u16 %r71; .reg .pred %r73; .reg .u16 %r74; .reg .pred %r76; .reg .u32 %r77; .reg .u16 %r78; .reg .u16 %r80; .reg .pred %r82; .reg .u32 %r85; .reg .pred %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u16 %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u64 %r98; .reg .pred %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .u16 %r105; .reg .u16 %r106; .reg .pred %r107; .reg .u16 %r108; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r112; .reg .u16 %r114; .reg .pred %r116; .reg .u32 %r119; .reg .u32 %r124; .reg .u64 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .pred %r128; .reg .pred %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .u16 %r134; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; .loc 1 44 3 setp.eq.u64 %r55,%r53,0; @ %r55 bra $L5; ld.u32 %r56,[%r53+80]; setp.ne.u32 %r57,%r56,0; @ %r57 bra $L5; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; call __sinit,(%out_arg1); } $L5: .loc 1 46 3 ld.s16 %r23,[%r54+16]; cvt.u16.u32 %r60,%r23; and.b16 %r59,%r60,8192; setp.ne.u16 %r61,%r59,0; @ %r61 bra $L6; or.b16 %r62,%r60,8192; cvt.s32.s16 %r23,%r62; st.u16 [%r54+16],%r62; ld.u32 %r66,[%r54+172]; and.b32 %r65,%r66,-8193; st.u32 [%r54+172],%r65; $L6: .loc 1 48 10 mov.u32 %r67,0; st.u32 [%r54+8],%r67; .loc 1 52 6 cvt.u16.u32 %r69,%r23; and.b16 %r68,%r69,32; setp.eq.u16 %r70,%r68,0; @ %r70 bra $L7; $L12: .loc 1 53 12 mov.u32 %r52,-1; bra $L4; $L7: .loc 1 57 6 and.b16 %r71,%r69,4; setp.ne.u16 %r73,%r71,0; @ %r73 bra $L9; .loc 1 59 10 and.b16 %r74,%r69,16; setp.ne.u16 %r76,%r74,0; @ %r76 bra $L10; .loc 1 61 16 mov.u32 %r77,9; st.u32 [%r53],%r77; .loc 1 62 15 or.b16 %r78,%r69,64; st.u16 [%r54+16],%r78; .loc 1 63 11 mov.u32 %r52,-1; bra $L4; $L10: .loc 1 66 10 and.b16 %r80,%r69,8; setp.eq.u16 %r82,%r80,0; @ %r82 bra $L11; .loc 1 68 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r85,[%value_in]; } .loc 1 68 7 setp.ne.u32 %r86,%r85,0; @ %r86 bra $L12; .loc 1 70 15 ld.u16 %r88,[%r54+16]; and.b16 %r87,%r88,-9; cvt.s32.s16 %r23,%r87; .loc 1 71 11 st.u32 [%r54+12],%r85; .loc 1 72 17 st.u32 [%r54+40],%r85; $L11: .loc 1 74 18 cvt.u16.u32 %r92,%r23; or.b16 %r91,%r92,4; st.u16 [%r54+16],%r91; bra $L13; $L9: .loc 1 84 11 ld.u64 %r30,[%r54+88]; .loc 1 84 10 setp.eq.u64 %r93,%r30,0; @ %r93 bra $L13; .loc 1 86 4 add.u64 %r94,%r54,116; setp.eq.u64 %r95,%r30,%r94; @ %r95 bra $L15; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call _free_r,(%out_arg1,%out_arg2); } $L15: mov.u64 %r98,0; st.u64 [%r54+88],%r98; .loc 1 87 20 ld.u32 %r32,[%r54+112]; .loc 1 87 16 st.u32 [%r54+8],%r32; .loc 1 87 7 setp.eq.u32 %r99,%r32,0; @ %r99 bra $L13; .loc 1 89 15 ld.u64 %r100,[%r54+104]; st.u64 [%r54],%r100; .loc 1 90 15 mov.u32 %r52,0; bra $L4; $L13: .loc 1 95 6 ld.u64 %r101,[%r54+24]; setp.ne.u64 %r102,%r101,0; @ %r102 bra $L16; .loc 1 96 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call __smakebuf_r,(%out_arg1,%out_arg2); } $L16: .loc 1 103 6 ld.u16 %r106,[%r54+16]; and.b16 %r105,%r106,3; setp.ne.u16 %r107,%r105,0; @ ! %r107 bra $L18; .loc 1 107 18 mov.u16 %r108,1; st.u16 [%r54+16],%r108; .loc 1 108 14 ld.const.u64 %r111,[_global_impure_ptr]; mov.u64 %r110,lflush; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),_fwalk,(%out_arg1,%out_arg2); ld.param.u32 %r112,[%value_in]; } .loc 1 109 18 st.u16 [%r54+16],%r106; .loc 1 112 10 and.b16 %r114,%r106,9; setp.ne.u16 %r116,%r114,9; @ %r116 bra $L18; .loc 1 113 2 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),__sflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r119,[%value_in]; } $L18: .loc 1 116 19 ld.u64 %r37,[%r54+24]; .loc 1 116 10 st.u64 [%r54],%r37; .loc 1 117 12 ld.u32 %r124,[%r54+32]; ld.u64 %r125,[%r54+48]; ld.u64 %r127,[%r54+56]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r124; call (%value_in),%r127,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r126,[%value_in]; } .loc 1 117 10 st.u32 [%r54+8],%r126; .loc 1 119 6 setp.gt.s32 %r128,%r126,0; @ %r128 bra $L21; .loc 1 127 13 ld.s16 %r51,[%r54+16]; .loc 1 126 10 setp.ne.u32 %r129,%r126,0; @ %r129 bra $L20; .loc 1 127 13 cvt.u16.u32 %r131,%r51; or.b16 %r130,%r131,32; st.u16 [%r54+16],%r130; .loc 1 133 14 mov.u32 %r52,-1; bra $L4; $L20: .loc 1 130 11 mov.u32 %r132,0; st.u32 [%r54+8],%r132; .loc 1 131 15 cvt.u16.u32 %r134,%r51; or.b16 %r133,%r134,64; st.u16 [%r54+16],%r133; .loc 1 133 14 mov.u32 %r52,-1; bra $L4; $L21: .loc 1 135 10 mov.u32 %r52,0; $L4: .loc 1 136 1 mov.u32 %value,%r52; st.param.u32 [%value_out],%value; ret; } lib_a-remove.o/ 0 0 0 644 1843 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _remove_r .visible .func (.param .u32 %value_out) _remove_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/remove.c" // BEGIN GLOBAL FUNCTION DECL: remove .visible .func (.param .u32 %value_out) remove (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _unlink_r .extern .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _remove_r .visible .func (.param .u32 %value_out) _remove_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r30; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 65 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_unlink_r,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 65 6 set.u32.eq.u32 %value,%r30,-1; .loc 1 69 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: remove .visible .func (.param .u32 %value_out) remove (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r27; .reg .u64 %r30; .reg .u32 %r31; mov.u64 %r27,%ar0; .loc 1 65 7 ld.global.u64 %r30,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_unlink_r,(%out_arg1,%out_arg2); ld.param.u32 %r31,[%value_in]; } .loc 1 65 6 set.u32.eq.u32 %value,%r31,-1; .loc 1 77 1 st.param.u32 [%value_out],%value; ret; } lib_a-rename.o/ 0 0 0 644 1241 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rename .visible .func (.param .u32 %value_out) rename (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/rename.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _rename_r .extern .func (.param .u32 %value_out) _rename_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: rename .visible .func (.param .u32 %value_out) rename (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 60 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_rename_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 61 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-renamer.o/0 0 0 644 1765 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _rename_r .visible .func (.param .u32 %value_out) _rename_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/renamer.c" // BEGIN GLOBAL FUNCTION DECL: _link_r .extern .func (.param .u32 %value_out) _link_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _unlink_r .extern .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _rename_r .visible .func (.param .u32 %value_out) _rename_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r36; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 54 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_link_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r32,[%value_in]; } mov.u32 %r25,%r32; .loc 1 54 6 setp.eq.u32 %r33,%r25,-1; @ %r33 bra $L1; .loc 1 57 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),_unlink_r,(%out_arg1,%out_arg2); ld.param.u32 %r36,[%value_in]; } .loc 1 57 6 set.u32.eq.u32 %r25,%r36,-1; $L1: .loc 1 64 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-rewind.o/ 0 0 0 644 2203 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _rewind_r .visible .func _rewind_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/rewind.c" // BEGIN GLOBAL FUNCTION DECL: rewind .visible .func rewind (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fseek_r .extern .func (.param .u32 %value_out) _fseek_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _rewind_r .visible .func _rewind_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u16 %r31; .reg .u16 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 58 10 mov.u32 %r29,0; mov.u64 %r28,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r30,[%value_in]; } .loc 1 59 3 ld.u16 %r32,[%r25+16]; and.b16 %r31,%r32,-97; st.u16 [%r25+16],%r31; .loc 1 60 1 ret; } // BEGIN GLOBAL FUNCTION DEF: rewind .visible .func rewind (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u16 %r32; .reg .u16 %r33; mov.u64 %r25,%ar0; .loc 1 58 10 ld.global.u64 %r30,[_impure_ptr]; mov.u32 %r29,0; mov.u64 %r28,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),_fseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r31,[%value_in]; } .loc 1 59 3 ld.u16 %r33,[%r25+16]; and.b16 %r32,%r33,-97; st.u16 [%r25+16],%r32; .loc 1 68 1 ret; } lib_a-rget.o/ 0 0 0 644 3214 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __srget_r .visible .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/rget.c" // BEGIN GLOBAL FUNCTION DECL: __srget .visible .func (.param .u32 %value_out) __srget (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __srget_r .visible .func (.param .u32 %value_out) __srget_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u64 %r42; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 40 3 setp.eq.u64 %r32,%r30,0; @ %r32 bra $L2; ld.u32 %r33,[%r30+80]; setp.ne.u32 %r34,%r33,0; @ %r34 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call __sinit,(%out_arg1); } $L2: .loc 1 42 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r38,[%value_in]; } .loc 1 42 6 setp.ne.u32 %r39,%r38,0; @ %r39 bra $L4; .loc 1 44 13 ld.u32 %r41,[%r31+8]; add.u32 %r40,%r41,-1; st.u32 [%r31+8],%r40; .loc 1 45 17 ld.u64 %r26,[%r31]; .loc 1 45 21 add.u64 %r42,%r26,1; st.u64 [%r31],%r42; .loc 1 45 14 ld.u8 %r29,[%r26]; bra $L1; $L4: .loc 1 47 10 mov.u32 %r29,-1; $L1: .loc 1 48 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __srget .visible .func (.param .u32 %value_out) __srget (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u64 %r42; mov.u64 %r31,%ar0; .loc 1 56 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 40 3 setp.eq.u64 %r32,%r22,0; @ %r32 bra $L9; ld.u32 %r33,[%r22+80]; setp.ne.u32 %r34,%r33,0; @ %r34 bra $L9; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call __sinit,(%out_arg1); } $L9: .loc 1 42 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r38,[%value_in]; } .loc 1 42 6 setp.ne.u32 %r39,%r38,0; @ %r39 bra $L11; .loc 1 44 13 ld.u32 %r41,[%r31+8]; add.u32 %r40,%r41,-1; st.u32 [%r31+8],%r40; .loc 1 45 17 ld.u64 %r27,[%r31]; .loc 1 45 21 add.u64 %r42,%r27,1; st.u64 [%r31],%r42; .loc 1 45 14 ld.u8 %r30,[%r27]; bra $L8; $L11: .loc 1 47 10 mov.u32 %r30,-1; $L8: .loc 1 57 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-rindex.o/ 0 0 0 644 1017 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rindex .visible .func (.param .u64 %value_out) rindex (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/rindex.c" // BEGIN GLOBAL FUNCTION DECL: strrchr .extern .func (.param .u64 %value_out) strrchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: rindex .visible .func (.param .u64 %value_out) rindex (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u32 %r24; .reg .u64 %r27; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; .loc 1 37 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; call (%value_in),strrchr,(%out_arg1,%out_arg2); ld.param.u64 %r27,[%value_in]; } .loc 1 38 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } /795 0 0 0 644 1186 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysign .visible .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; mov.f64 %r29,%ar0; mov.f64 %r30,%ar1; .loc 1 68 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r33,%r32; and.b32 %r34,%r33,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; and.b32 %r38,%r37,-2147483648; or.b32 %r39,%r34,%r38; cvt.u64.u32 %r40,%r39; shl.b64 %r41,%r40,32; and.b64 %r42,%r27,4294967295; or.b64 %r43,%r42,%r41; mov.b64 %value,%r43; .loc 1 70 1 st.param.f64 [%value_out],%value; ret; } /815 0 0 0 644 783 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_finite.c" // BEGIN GLOBAL FUNCTION DEF: finite .visible .func (.param .u32 %value_out) finite (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .f64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; mov.f64 %r29,%ar0; .loc 1 31 2 mov.b64 %r31,%r29; shr.u64 %r32,%r31,32; cvt.u32.u64 %r33,%r32; .loc 1 32 32 and.b32 %r34,%r33,2147483647; .loc 1 32 44 add.u32 %r35,%r34,-2146435072; .loc 1 32 56 shr.u32 %value,%r35,31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /833 0 0 0 644 2171 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyd .visible .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .u16 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u32 %r64; .reg .u16 %r66; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r37,%r36; cvt.u32.u64 %r39,%r35; .loc 1 16 26 or.b32 %r40,%r37,%r39; .loc 1 16 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r42,%r39,0; neg.s32 %r24,%r42; .loc 1 17 12 set.u32.eq.u32 %r46,%r37,-2147483648; neg.s32 %r47,%r46; mov.u32 %r45,%r47; .loc 1 17 26 cvt.u16.u8 %r66,%r45; mov.u16 %r49,%r66; cvt.u16.u32 %r50,%r24; and.b16 %r48,%r49,%r50; cvt.u32.u16 %r51,%r48; .loc 1 16 48 cvt.u16.u8 %r52,%r51; setp.ne.u16 %r53,%r52,0; @ %r53 bra $L4; .loc 1 19 31 and.b32 %r31,%r37,2147483647; add.u32 %r54,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r55,%r54,2145386495; @ %r55 bra $L5; .loc 1 22 31 and.b32 %r56,%r37,2146435072; .loc 1 22 11 setp.eq.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r59,%r31,2146435072; neg.s32 %r60,%r59; mov.u32 %r58,%r60; .loc 1 26 53 cvt.u16.u8 %r66,%r58; mov.u16 %r62,%r66; and.b16 %r61,%r62,%r50; cvt.u32.u16 %r64,%r61; .loc 1 18 12 cvt.u32.u8 %r33,%r64; bra $L1; $L3: mov.u32 %r33,2; bra $L1; $L4: mov.u32 %r33,2; bra $L1; $L5: .loc 1 21 12 mov.u32 %r33,4; bra $L1; $L6: .loc 1 25 12 mov.u32 %r33,3; $L1: .loc 1 31 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-s_frexp.o/0 0 0 644 2043 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/s_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexp .visible .func (.param .f64 %value_out) frexp (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r28; .reg .u32 %r33; .reg .u32 %r35; .reg .u64 %r36; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 88 5 and.b32 %r28,%r33,2147483647; .loc 1 89 8 mov.u32 %r43,0; st.u32 [%r39],%r43; .loc 1 90 4 setp.gt.s32 %r44,%r28,2146435071; @ %r44 bra $L2; .loc 1 87 2 cvt.u32.u64 %r46,%r40; .loc 1 90 25 or.b32 %r48,%r46,%r28; .loc 1 90 19 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L2; .loc 1 91 5 and.b32 %r50,%r33,2146435072; setp.ne.u32 %r51,%r50,0; @ %r51 bra $L4; .loc 1 92 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r52,%r38; shr.u64 %r53,%r52,32; cvt.u32.u64 %r33,%r53; .loc 1 94 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r43; $L3: .loc 1 97 14 shr.s32 %r55,%r28,20; .loc 1 97 19 add.u32 %r56,%r55,-1022; .loc 1 97 8 add.u32 %r57,%r56,%r35; st.u32 [%r39],%r57; .loc 1 99 2 mov.b64 %r36,%r38; .loc 1 98 10 and.b32 %r58,%r33,-2146435073; .loc 1 98 22 or.b32 %r59,%r58,1071644672; .loc 1 99 2 cvt.u64.u32 %r60,%r59; shl.b64 %r61,%r60,32; and.b64 %r62,%r36,4294967295; or.b64 %r63,%r62,%r61; mov.b64 %r38,%r63; $L2: .loc 1 101 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-s_isinf.o/0 0 0 644 1248 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinf .visible .func (.param .u32 %value_out) isinf (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 22 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 23 5 and.b32 %r33,%r43,2147483647; .loc 1 24 25 neg.s32 %r46,%r45; .loc 1 24 23 or.b32 %r47,%r46,%r45; .loc 1 24 30 shr.u32 %r48,%r47,31; .loc 1 24 5 or.b32 %r34,%r48,%r33; .loc 1 26 36 add.u32 %r50,%r34,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 26 34 or.b32 %r53,%r50,%r51; .loc 1 26 41 shr.u32 %r54,%r53,31; .loc 1 26 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 27 1 st.param.u32 [%value_out],%value; ret; } /855 0 0 0 644 1261 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isinfd.c" // BEGIN GLOBAL FUNCTION DEF: __isinfd .visible .func (.param .u32 %value_out) __isinfd (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; mov.f64 %r40,%ar0; .loc 1 15 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r43,%r42; cvt.u32.u64 %r45,%r41; .loc 1 16 5 and.b32 %r33,%r43,2147483647; .loc 1 17 25 neg.s32 %r46,%r45; .loc 1 17 23 or.b32 %r47,%r46,%r45; .loc 1 17 30 shr.u32 %r48,%r47,31; .loc 1 17 5 or.b32 %r34,%r48,%r33; .loc 1 19 36 add.u32 %r50,%r34,-2146435072; .loc 1 18 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r34; .loc 1 19 34 or.b32 %r53,%r50,%r51; .loc 1 19 41 shr.u32 %r54,%r53,31; .loc 1 19 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 20 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/0 0 0 644 1060 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnan .visible .func (.param .u32 %value_out) isnan (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 203 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 204 5 and.b32 %r30,%r40,2147483647; .loc 1 205 25 neg.s32 %r43,%r42; .loc 1 205 23 or.b32 %r44,%r43,%r42; .loc 1 205 30 shr.u32 %r45,%r44,31; .loc 1 205 5 or.b32 %r31,%r45,%r30; .loc 1 206 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 207 33 shr.u32 %value,%r47,31; .loc 1 208 1 st.param.u32 [%value_out],%value; ret; } /873 0 0 0 644 1072 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_isnand.c" // BEGIN GLOBAL FUNCTION DEF: __isnand .visible .func (.param .u32 %value_out) __isnand (.param .f64 %in_ar0) { .reg .u32 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r37,%ar0; .loc 1 99 2 mov.b64 %r38,%r37; shr.u64 %r39,%r38,32; cvt.u32.u64 %r40,%r39; cvt.u32.u64 %r42,%r38; .loc 1 100 5 and.b32 %r30,%r40,2147483647; .loc 1 101 25 neg.s32 %r43,%r42; .loc 1 101 23 or.b32 %r44,%r43,%r42; .loc 1 101 30 shr.u32 %r45,%r44,31; .loc 1 101 5 or.b32 %r31,%r45,%r30; .loc 1 102 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r31; .loc 1 103 33 shr.u32 %value,%r47,31; .loc 1 104 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/0 0 0 644 2918 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/s_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finite .extern .func (.param .u32 %value_out) finite (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexp .visible .func (.param .f64 %value_out) ldexp (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f64 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 63 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 63 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 63 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 63 19 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 64 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r50,[%value_in]; } mov.f64 %r32,%r50; .loc 1 65 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),finite,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 65 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 65 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 65 19 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 65 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 65 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 67 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } lib_a-s_modf.o/ 0 0 0 644 3654 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modf .visible .func (.param .f64 %value_out) modf (.param .f64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .f64 %r32; .reg .f64 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .f64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r86; .reg .pred %r87; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u64 %r102; .reg .u64 %r106; .reg .u64 %r107; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; mov.f64 %r54,%ar0; mov.u64 %r55,%ar1; mov.b64 %r56,%r54; shr.u64 %r57,%r56,32; cvt.u32.u64 %r58,%r57; cvt.u32.u64 %r60,%r56; .loc 1 76 11 shr.s32 %r61,%r58,20; .loc 1 76 16 and.b32 %r23,%r61,2047; .loc 1 76 5 add.u32 %r44,%r23,-1023; .loc 1 77 4 setp.gt.s32 %r62,%r44,19; @ %r62 bra $L2; .loc 1 78 8 setp.ge.s32 %r63,%r44,0; @ %r63 bra $L3; .loc 1 79 10 and.b32 %r64,%r58,-2147483648; cvt.u64.u32 %r65,%r64; shl.b64 %r69,%r65,32; st.u64 [%r55],%r69; .loc 1 80 10 mov.f64 %r53,%r54; bra $L1; $L3: .loc 1 82 19 mov.u32 %r70,1048575; shr.s32 %r46,%r70,%r44; .loc 1 83 10 and.b32 %r71,%r58,%r46; .loc 1 83 13 or.b32 %r72,%r71,%r60; .loc 1 83 5 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L5; .loc 1 84 13 st.f64 [%r55],%r54; .loc 1 85 7 and.b32 %r74,%r58,-2147483648; cvt.u64.u32 %r75,%r74; shl.b64 %r79,%r75,32; mov.b64 %r53,%r79; .loc 1 86 14 bra $L1; $L5: .loc 1 88 7 not.b32 %r80,%r46; and.b32 %r81,%r80,%r58; cvt.u64.u32 %r82,%r81; shl.b64 %r86,%r82,32; mov.b64 %r32,%r86; st.f64 [%r55],%r32; .loc 1 89 16 sub.f64 %r53,%r54,%r32; bra $L1; $L2: .loc 1 92 12 setp.le.s32 %r87,%r44,51; @ %r87 bra $L6; .loc 1 93 12 st.f64 [%r55],%r54; .loc 1 94 10 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r54; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r89,[%value_in]; } .loc 1 94 9 setp.ne.u32 %r90,%r89,0; @ %r90 bra $L7; .loc 1 94 54 add.f64 %r53,%r54,%r54; .loc 1 94 51 st.f64 [%r55],%r53; bra $L1; $L7: .loc 1 95 6 and.b32 %r91,%r58,-2147483648; cvt.u64.u32 %r92,%r91; shl.b64 %r96,%r92,32; mov.b64 %r53,%r96; .loc 1 96 13 bra $L1; $L6: .loc 1 98 41 add.u32 %r97,%r23,-1043; .loc 1 98 8 mov.u32 %r98,-1; shr.u32 %r45,%r98,%r97; .loc 1 99 12 and.b32 %r99,%r60,%r45; .loc 1 99 8 setp.ne.u32 %r100,%r99,0; @ %r100 bra $L8; .loc 1 100 9 st.f64 [%r55],%r54; .loc 1 101 3 and.b32 %r101,%r58,-2147483648; cvt.u64.u32 %r102,%r101; shl.b64 %r106,%r102,32; mov.b64 %r53,%r106; .loc 1 102 10 bra $L1; $L8: .loc 1 104 10 cvt.u64.u32 %r107,%r58; not.b32 %r111,%r45; and.b32 %r112,%r111,%r60; cvt.u64.u32 %r113,%r112; shl.b64 %r114,%r107,32; or.b64 %r115,%r114,%r113; mov.b64 %r42,%r115; st.f64 [%r55],%r42; .loc 1 105 12 sub.f64 %r53,%r54,%r42; $L1: .loc 1 108 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 0 0 0 644 500 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_nan.c" // BEGIN GLOBAL FUNCTION DEF: nan .visible .func (.param .f64 %value_out) nan (.param .u64 %in_ar0) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 44 9 mov.f64 %value,0d7ff8000000000000; .loc 1 45 1 st.param.f64 [%value_out],%value; ret; } /891 0 0 0 644 3284 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/s_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbn .visible .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .f64 %ar0; ld.param.f64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f64 %r27; .reg .f64 %r33; .reg .u32 %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .f64 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .f64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; .loc 1 86 2 mov.b64 %r53,%r51; shr.u64 %r54,%r53,32; cvt.u32.u64 %r39,%r54; .loc 1 87 28 shr.s32 %r56,%r39,20; .loc 1 87 11 and.b32 %r41,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r41,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r39,2147483647; .loc 1 86 2 cvt.u32.u64 %r60,%r53; .loc 1 89 20 or.b32 %r62,%r58,%r60; .loc 1 89 16 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L9; .loc 1 90 8 mul.f64 %r51,%r51,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r64,%r52,-50000; @ %r64 bra $L4; .loc 1 93 39 mul.f64 %r50,%r51,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r65,%r41,2047; @ %r65 bra $L5; .loc 1 95 31 add.f64 %r50,%r51,%r51; bra $L1; $L4: .loc 1 91 6 mov.b64 %r66,%r51; shr.u64 %r67,%r66,32; cvt.u32.u64 %r39,%r67; .loc 1 92 26 shr.s32 %r69,%r39,20; and.b32 %r70,%r69,2047; .loc 1 92 8 add.u32 %r41,%r70,-54; $L5: .loc 1 96 11 add.u32 %r42,%r52,%r41; .loc 1 97 12 setp.le.s32 %r71,%r42,2046; @ %r71 bra $L6; .loc 1 97 37 mov.f64 %r72,0d7e37e43c8800759c; copysign.f64 %r27,%r51,%r72; .loc 1 97 36 mul.f64 %r50,%r27,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r42,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r48,%r51; and.b32 %r74,%r39,-2146435073; shl.b32 %r75,%r42,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r48,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r50,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r42,-53; @ %r81 bra $L8; .loc 1 103 23 mov.f64 %r82,0d01a56e1fc2f8f359; copysign.f64 %r33,%r51,%r82; .loc 1 103 22 mul.f64 %r50,%r33,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r49,%r51; .loc 1 105 11 add.u32 %r83,%r42,54; .loc 1 106 2 shl.b32 %r84,%r83,20; and.b32 %r85,%r39,-2146435073; or.b32 %r86,%r84,%r85; cvt.u64.u32 %r87,%r86; shl.b64 %r88,%r87,32; and.b64 %r89,%r49,4294967295; or.b64 %r90,%r89,%r88; mov.b64 %r44,%r90; .loc 1 107 17 mul.f64 %r50,%r44,0d3c90000000000000; bra $L1; $L9: .loc 1 89 49 mov.f64 %r50,%r51; $L1: .loc 1 108 1 mov.f64 %value,%r50; st.param.f64 [%value_out],%value; ret; } /909 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-sbrkr.o/ 0 0 0 644 1306 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sbrk_r .visible .func (.param .u64 %value_out) _sbrk_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/reent/sbrkr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: sbrk .extern .func (.param .u64 %value_out) sbrk (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _sbrk_r .visible .func (.param .u64 %value_out) _sbrk_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 50 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 51 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),sbrk,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 51 6 setp.ne.u64 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 51 62 ld.global.u32 %r22,[errno]; .loc 1 51 53 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 52 17 st.u32 [%r24],%r22; $L1: .loc 1 54 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-scanf.o/ 0 0 0 644 2361 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scanf .visible .func (.param .u32 %value_out) scanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/scanf.c" // BEGIN GLOBAL FUNCTION DECL: _scanf_r .visible .func (.param .u32 %value_out) _scanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfscanf_r .extern .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: scanf .visible .func (.param .u32 %value_out) scanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %args; ld.param.u64 %args,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r26,%ar0; .loc 1 31 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 35 9 ld.u64 %r32,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 38 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _scanf_r .visible .func (.param .u32 %value_out) _scanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 56 9 ld.u64 %r32,[%r25+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_vfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r33,[%value_in]; } .loc 1 59 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-sccl.o/ 0 0 0 644 3419 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sccl .visible .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/sccl.c" // BEGIN GLOBAL FUNCTION DEF: __sccl .visible .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; .reg .u64 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u64 %r51; .reg .u64 %r53; .reg .u64 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u16 %r70; .reg .pred %r71; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u64 %r88; .reg .pred %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r95; .reg .u32 %r97; .reg .u32 %r100; .reg .u16 %r101; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; .loc 1 40 5 ld.u8 %r34,[%r59]; .loc 1 41 6 setp.eq.u32 %r60,%r34,94; @ %r60 bra $L2; .loc 1 40 11 add.u64 %r57,%r59,1; mov.u32 %r45,0; .loc 1 47 7 mov.u32 %r37,%r45; bra $L3; $L2: .loc 1 44 15 add.u64 %r57,%r59,2; .loc 1 44 9 ld.u8 %r34,[%r59+1]; mov.u32 %r45,1; .loc 1 43 9 mov.u32 %r37,%r45; $L3: mov.u64 %r53,%r58; add.u64 %r55,%r58,256; .loc 1 50 12 cvt.u32.u32 %r61,%r45; $L4: st.u8 [%r53],%r61; .loc 1 49 17 add.u64 %r53,%r53,1; setp.ne.u64 %r62,%r53,%r55; @ %r62 bra $L4; .loc 1 51 6 setp.ne.u32 %r63,%r34,0; @ %r63 bra $L5; .loc 1 52 16 add.u64 %r57,%r57,-1; bra $L1; $L5: .loc 1 65 14 set.u32.eq.u32 %r66,%r37,0; neg.s32 %r44,%r66; cvt.u32.u32 %r69,%r44; mov.u32 %r97,0; .loc 1 90 10 mov.u32 %r100,45; bra $L7; $L22: .loc 1 67 9 mov.u32 %r34,%r29; bra $L11; $L16: .loc 1 90 10 mov.u32 %r34,%r100; $L11: mov.u64 %r57,%r51; $L7: .loc 1 65 10 cvt.s64.s32 %r67,%r34; .loc 1 65 14 add.u64 %r68,%r58,%r67; st.u8 [%r68],%r69; $L8: add.u64 %r51,%r57,1; .loc 1 67 11 ld.u8 %r29,[%r57]; .loc 1 68 7 cvt.u16.u32 %r70,%r29; setp.eq.u16 %r71,%r70,45; @ %r71 bra $L9; setp.eq.u16 %r73,%r70,93; @ %r73 bra $L15; setp.eq.u32 %r74,%r29,0; @ ! %r74 bra $L22; bra $L1; $L9: .loc 1 87 8 ld.u8 %r30,[%r57+1]; .loc 1 88 10 set.u32.eq.u32 %r76,%r30,93; neg.s32 %r77,%r76; mov.u32 %r75,%r77; .loc 1 88 22 set.u32.gt.s32 %r79,%r34,%r30; neg.s32 %r80,%r79; mov.u32 %r78,%r80; .loc 1 88 17 cvt.u16.u8 %r101,%r75; mov.u16 %r82,%r101; cvt.u16.u8 %r101,%r78; mov.u16 %r83,%r101; or.b16 %r81,%r82,%r83; cvt.u32.u16 %r84,%r81; .loc 1 88 7 cvt.u16.u8 %r85,%r84; setp.ne.u16 %r86,%r85,0; @ %r86 bra $L16; add.u64 %r57,%r57,2; add.u32 %r95,%r34,1; cvt.s64.s32 %r88,%r95; add.u64 %r42,%r58,%r88; mov.u32 %r35,%r34; $L12: .loc 1 96 17 add.u32 %r35,%r35,1; st.u8 [%r42],%r69; .loc 1 98 13 add.u64 %r42,%r42,1; setp.gt.s32 %r90,%r30,%r35; @ %r90 bra $L12; setp.ge.s32 %r92,%r34,%r30; @ %r92 bra $L13; sub.u32 %r93,%r30,%r34; add.u32 %r91,%r93,-1; bra $L14; $L13: mov.u32 %r91,%r97; $L14: .loc 1 96 17 add.u32 %r34,%r91,%r95; bra $L8; $L15: .loc 1 68 7 mov.u64 %r57,%r51; $L1: .loc 1 126 1 mov.u64 %value,%r57; st.param.u64 [%value_out],%value; ret; } lib_a-seed48.o/ 0 0 0 644 2669 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _seed48_r .visible .func (.param .u64 %value_out) _seed48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/seed48.c" // BEGIN GLOBAL FUNCTION DECL: seed48 .visible .func (.param .u64 %value_out) seed48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN VAR DEF: sseed$0 .global .align 2 .u16 sseed$0[3]; // BEGIN GLOBAL FUNCTION DEF: _seed48_r .visible .func (.param .u64 %value_out) _seed48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r32; .reg .u16 %r34; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; .loc 1 23 12 cvta.global.u64 %r31,sseed$0; ld.u16 %r32,[%r29+240]; st.u16 [%r31],%r32; .loc 1 24 12 ld.u16 %r34,[%r29+242]; st.u16 [%r31+2],%r34; .loc 1 25 12 ld.u16 %r36,[%r29+244]; st.u16 [%r31+4],%r36; .loc 1 26 20 ld.u16 %r37,[%r30]; st.u16 [%r29+240],%r37; .loc 1 27 20 ld.u16 %r38,[%r30+2]; st.u16 [%r29+242],%r38; .loc 1 28 20 ld.u16 %r39,[%r30+4]; st.u16 [%r29+244],%r39; .loc 1 29 20 mov.u16 %r40,-6547; st.u16 [%r29+246],%r40; .loc 1 30 20 mov.u32 %r41,384748; st.u32 [%r29+248],%r41; .loc 1 32 16 mov.u16 %r42,11; st.u16 [%r29+252],%r42; .loc 1 34 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: seed48 .visible .func (.param .u64 %value_out) seed48 (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r32; .reg .u16 %r34; .reg .u16 %r36; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; mov.u64 %r30,%ar0; .loc 1 40 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 23 12 cvta.global.u64 %r31,sseed$0; ld.u16 %r32,[%r22+240]; st.u16 [%r31],%r32; .loc 1 24 12 ld.u16 %r34,[%r22+242]; st.u16 [%r31+2],%r34; .loc 1 25 12 ld.u16 %r36,[%r22+244]; st.u16 [%r31+4],%r36; .loc 1 26 20 ld.u16 %r37,[%r30]; st.u16 [%r22+240],%r37; .loc 1 27 20 ld.u16 %r38,[%r30+2]; st.u16 [%r22+242],%r38; .loc 1 28 20 ld.u16 %r39,[%r30+4]; st.u16 [%r22+244],%r39; .loc 1 29 20 mov.u16 %r40,-6547; st.u16 [%r22+246],%r40; .loc 1 30 20 mov.u32 %r41,384748; st.u32 [%r22+248],%r41; .loc 1 32 16 mov.u16 %r42,11; st.u16 [%r22+252],%r42; .loc 1 41 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-setbuf.o/ 0 0 0 644 1217 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setbuf .visible .func setbuf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/setbuf.c" // BEGIN GLOBAL FUNCTION DECL: setvbuf .extern .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: setbuf .visible .func setbuf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 71 10 set.u32.eq.u64 %r32,%r26,0; neg.s32 %r33,%r32; add.u32 %r34,%r33,%r33; mov.u64 %r30,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r34; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r30; call (%value_in),setvbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 72 1 ret; } /930 0 0 0 644 1358 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setbuffer .visible .func setbuffer (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/setbuffer.c" // BEGIN GLOBAL FUNCTION DECL: setvbuf .extern .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: setbuffer .visible .func setbuffer (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u32 %r28,%ar2; .loc 1 72 10 cvt.s64.s32 %r33,%r28; set.u32.eq.u64 %r35,%r27,0; neg.s32 %r36,%r35; add.u32 %r37,%r36,%r36; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r37; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; call (%value_in),setvbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r38,[%value_in]; } .loc 1 73 1 ret; } /949 0 0 0 644 1148 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setlinebuf .visible .func (.param .u32 %value_out) setlinebuf (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/setlinebuf.c" // BEGIN GLOBAL FUNCTION DECL: setvbuf .extern .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: setlinebuf .visible .func (.param .u32 %value_out) setlinebuf (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; mov.u64 %r23,%ar0; .loc 1 61 11 mov.u64 %r27,0; mov.u32 %r26,1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),setvbuf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r28,[%value_in]; } .loc 1 62 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-setvbuf.o/0 0 0 644 8264 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: setvbuf .visible .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/setvbuf.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __swhatbuf_r .extern .func (.param .u32 %value_out) __swhatbuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __nvptx_malloc .extern .func (.param .u64 %value_out) __nvptx_malloc (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: setvbuf .visible .func (.param .u32 %value_out) setvbuf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r25; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r44; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .pred %r68; .reg .u64 %r71; .reg .u32 %r72; .reg .u16 %r74; .reg .u16 %r75; .reg .pred %r76; .reg .u64 %r79; .reg .u16 %r80; .reg .u16 %r81; .reg .u64 %r88; .reg .u32 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r96; .reg .pred %r98; .reg .pred %r99; .reg .u64 %r101; .reg .pred %r103; .reg .u16 %r104; .reg .u16 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .pred %r111; .reg .u64 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .pred %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u16 %r121; .reg .pred %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .pred %r126; .reg .u16 %r127; .reg .pred %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .pred %r134; mov.u64 %r51,%ar0; mov.u64 %r52,%ar1; mov.u32 %r53,%ar2; mov.u64 %r54,%ar3; .loc 1 97 18 ld.global.u64 %r44,[_impure_ptr]; .loc 1 101 3 setp.eq.u64 %r55,%r44,0; @ %r55 bra $L2; ld.u32 %r56,[%r44+80]; setp.ne.u32 %r57,%r56,0; @ %r57 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __sinit,(%out_arg1); } $L2: .loc 1 108 6 setp.eq.u32 %r134,%r53,2; @ %r134 bra $L3; .loc 1 109 8 setp.gt.u32 %r60,%r53,1; @ %r60 bra $L20; .loc 1 109 47 cvt.u32.u64 %r61,%r54; .loc 1 109 44 setp.lt.s32 %r62,%r61,0; @ %r62 bra $L21; $L3: .loc 1 120 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r65,[%value_in]; } .loc 1 121 7 ld.u64 %r25,[%r51+88]; .loc 1 121 6 setp.eq.u64 %r66,%r25,0; @ %r66 bra $L5; .loc 1 122 5 add.u64 %r67,%r51,116; setp.eq.u64 %r68,%r25,%r67; @ %r68 bra $L6; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call _free_r,(%out_arg1,%out_arg2); } $L6: mov.u64 %r71,0; st.u64 [%r51+88],%r71; $L5: .loc 1 123 25 mov.u32 %r72,0; st.u32 [%r51+40],%r72; .loc 1 123 10 st.u32 [%r51+8],%r72; .loc 1 124 9 ld.s16 %r27,[%r51+16]; .loc 1 124 6 cvt.u16.u32 %r75,%r27; and.b16 %r74,%r75,128; setp.eq.u16 %r76,%r74,0; @ %r76 bra $L7; .loc 1 125 5 ld.u64 %r79,[%r51+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r79; call _free_r,(%out_arg1,%out_arg2); } .loc 1 126 14 ld.s16 %r27,[%r51+16]; $L7: cvt.u16.u32 %r81,%r27; and.b16 %r80,%r81,-3236; cvt.s32.s16 %r29,%r80; st.u16 [%r51+16],%r80; .loc 1 128 6 @ %r134 bra $L22; .loc 1 136 17 add.u64 %r88,%frame,8; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r88; call (%value_in),__swhatbuf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r89,[%value_in]; } .loc 1 136 14 cvt.u16.u32 %r90,%r89; ld.u16 %r92,[%r51+16]; or.b16 %r91,%r92,%r90; st.u16 [%r51+16],%r91; .loc 1 137 6 setp.ne.u64 %r93,%r54,0; @ %r93 bra $L9; .loc 1 140 12 ld.u64 %r54,[%frame]; bra $L10; $L9: .loc 1 144 6 setp.ne.u64 %r94,%r52,0; @ %r94 bra $L11; $L10: .loc 1 146 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r96,[%value_in]; } mov.u64 %r52,%r96; .loc 1 146 10 setp.ne.u64 %r98,%r96,0; @ %r98 bra $L12; .loc 1 153 13 ld.u64 %r33,[%frame]; .loc 1 153 7 setp.ne.u64 %r99,%r33,%r54; @ %r99 bra $L13; .loc 1 170 18 ld.s16 %r29,[%r51+16]; .loc 1 152 8 mov.u32 %r50,-1; bra $L8; $L13: .loc 1 156 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r101,[%value_in]; } mov.u64 %r52,%r101; .loc 1 159 10 setp.ne.u64 %r103,%r101,0; @ %r103 bra $L23; .loc 1 170 18 ld.s16 %r29,[%r51+16]; .loc 1 152 8 mov.u32 %r50,-1; bra $L8; $L22: .loc 1 96 7 mov.u32 %r50,0; $L8: .loc 1 163 22 cvt.u16.u32 %r105,%r29; or.b16 %r104,%r105,2; st.u16 [%r51+16],%r104; .loc 1 164 18 mov.u32 %r106,0; st.u32 [%r51+12],%r106; .loc 1 165 36 add.u64 %r35,%r51,119; .loc 1 165 34 st.u64 [%r51],%r35; .loc 1 165 25 st.u64 [%r51+24],%r35; .loc 1 166 25 mov.u32 %r107,1; st.u32 [%r51+32],%r107; .loc 1 168 18 bra $L1; $L23: mov.u64 %r54,%r33; $L12: .loc 1 170 18 ld.u16 %r109,[%r51+16]; or.b16 %r108,%r109,128; st.u16 [%r51+16],%r108; $L11: .loc 1 177 6 ld.u32 %r110,[%r44+80]; setp.ne.u32 %r111,%r110,0; @ %r111 bra $L14; .loc 1 178 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call __sinit,(%out_arg1); } $L14: .loc 1 188 17 ld.s16 %r48,[%r51+16]; .loc 1 187 6 ld.u64 %r113,[%frame]; setp.eq.u64 %r114,%r113,%r54; @ %r114 bra $L15; .loc 1 188 17 cvt.u16.u32 %r116,%r48; or.b16 %r115,%r116,2048; cvt.s32.s16 %r48,%r115; st.u16 [%r51+16],%r115; $L15: .loc 1 195 6 setp.ne.u32 %r118,%r53,1; @ %r118 bra $L16; .loc 1 196 16 cvt.u16.u32 %r120,%r48; or.b16 %r119,%r120,1; st.u16 [%r51+16],%r119; .loc 1 197 26 st.u64 [%r51],%r52; .loc 1 197 17 st.u64 [%r51+24],%r52; .loc 1 198 17 cvt.u32.u64 %r49,%r54; st.u32 [%r51+32],%r49; .loc 1 200 6 and.b16 %r121,%r120,8; setp.ne.u16 %r123,%r121,0; @ %r123 bra $L17; bra $L18; $L16: .loc 1 197 26 st.u64 [%r51],%r52; .loc 1 197 17 st.u64 [%r51+24],%r52; .loc 1 198 17 cvt.u32.u64 %r49,%r54; st.u32 [%r51+32],%r49; .loc 1 200 6 cvt.u16.u32 %r125,%r48; and.b16 %r124,%r125,8; setp.eq.u16 %r126,%r124,0; @ %r126 bra $L18; .loc 1 206 10 and.b16 %r127,%r125,1; setp.eq.u16 %r129,%r127,0; @ %r129 bra $L19; $L17: .loc 1 208 11 mov.u32 %r130,0; st.u32 [%r51+12],%r130; .loc 1 209 19 neg.s32 %r131,%r49; .loc 1 209 17 st.u32 [%r51+40],%r131; .loc 1 221 10 mov.u32 %r50,%r130; bra $L1; $L19: .loc 1 212 16 st.u32 [%r51+12],%r49; .loc 1 221 10 mov.u32 %r50,0; bra $L1; $L18: .loc 1 217 14 mov.u32 %r132,0; st.u32 [%r51+12],%r132; .loc 1 221 10 mov.u32 %r50,%r132; bra $L1; $L20: .loc 1 110 14 mov.u32 %r50,-1; bra $L1; $L21: mov.u32 %r50,-1; $L1: .loc 1 222 1 mov.u32 %value,%r50; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /969 0 0 0 644 888 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_copysign.c" // BEGIN GLOBAL FUNCTION DEF: copysignf .visible .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .f32 %ar1; ld.param.f32 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .f32 %r28; .reg .f32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; mov.f32 %r28,%ar0; mov.f32 %r29,%ar1; .loc 1 34 2 mov.b32 %r31,%r28; and.b32 %r30,%r31,2147483647; mov.b32 %r33,%r29; and.b32 %r32,%r33,-2147483648; or.b32 %r24,%r30,%r32; .loc 1 35 16 mov.b32 %value,%r24; .loc 1 36 1 st.param.f32 [%value_out],%value; ret; } /990 0 0 0 644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_finite.c" // BEGIN GLOBAL FUNCTION DEF: finitef .visible .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 10 set.u32.le.s32 %r31,%r29,2139095039; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /1009 0 0 0 644 1220 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_fpclassify.c" // BEGIN GLOBAL FUNCTION DEF: __fpclassifyf .visible .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u32 %r27; .reg .f32 %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; mov.f32 %r28,%ar0; .loc 1 16 9 mov.b32 %r29,%r28; and.b32 %r26,%r29,2147483647; .loc 1 16 6 setp.eq.u32 %r30,%r26,0; @ %r30 bra $L3; .loc 1 18 29 add.u32 %r31,%r26,-8388608; .loc 1 18 11 setp.le.u32 %r32,%r31,2130706431; @ %r32 bra $L4; .loc 1 21 29 add.u32 %r33,%r26,-1; .loc 1 21 11 setp.le.u32 %r34,%r33,8388606; @ %r34 bra $L5; .loc 1 24 14 set.u32.eq.u32 %r36,%r26,2139095040; neg.s32 %r27,%r36; bra $L1; $L3: .loc 1 17 12 mov.u32 %r27,2; bra $L1; $L4: .loc 1 20 12 mov.u32 %r27,4; bra $L1; $L5: .loc 1 23 12 mov.u32 %r27,3; $L1: .loc 1 28 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } /1032 0 0 0 644 2127 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/sf_frexp.c" // BEGIN GLOBAL FUNCTION DEF: frexpf .visible .func (.param .f32 %value_out) frexpf (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .f32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r62; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r30,%r38; .loc 1 34 5 and.b32 %r31,%r30,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r31,2139095039; neg.s32 %r43,%r42; mov.u32 %r41,%r43; .loc 1 36 31 set.u32.eq.u32 %r45,%r31,0; neg.s32 %r46,%r45; mov.u32 %r44,%r46; .loc 1 36 29 cvt.u16.u8 %r62,%r41; mov.u16 %r48,%r62; cvt.u16.u8 %r62,%r44; mov.u16 %r49,%r62; or.b16 %r47,%r48,%r49; cvt.u32.u16 %r50,%r47; .loc 1 36 4 cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r30,2139095040; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 38 8 mul.f32 %r55,%r38,0f4c000000; .loc 1 39 6 mov.b32 %r30,%r55; .loc 1 40 9 and.b32 %r31,%r30,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r31,23; .loc 1 43 19 add.u32 %r57,%r56,-126; .loc 1 43 8 add.u32 %r58,%r57,%r36; st.u32 [%r39],%r58; .loc 1 44 10 and.b32 %r59,%r30,-2139095041; .loc 1 44 22 or.b32 %r60,%r59,1056964608; .loc 1 45 2 mov.b32 %r37,%r60; .loc 1 46 9 bra $L1; $L4: .loc 1 36 61 mov.f32 %r37,%r38; $L1: .loc 1 47 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1050 0 0 0 644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isinf.c" // BEGIN GLOBAL FUNCTION DEF: isinff .visible .func (.param .u32 %value_out) isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 19 2 mov.b32 %r23,%r27; .loc 1 20 5 and.b32 %r29,%r23,2147483647; .loc 1 21 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 22 1 st.param.u32 [%value_out],%value; ret; } /1068 0 0 0 644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isinff.c" // BEGIN GLOBAL FUNCTION DEF: __isinff .visible .func (.param .u32 %value_out) __isinff (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 12 2 mov.b32 %r23,%r27; .loc 1 13 5 and.b32 %r29,%r23,2147483647; .loc 1 14 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 15 1 st.param.u32 [%value_out],%value; ret; } /1087 0 0 0 644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isnan.c" // BEGIN GLOBAL FUNCTION DEF: isnanf .visible .func (.param .u32 %value_out) isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 30 2 mov.b32 %r23,%r27; .loc 1 31 5 and.b32 %r29,%r23,2147483647; .loc 1 32 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /1105 0 0 0 644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_isnanf.c" // BEGIN GLOBAL FUNCTION DEF: __isnanf .visible .func (.param .u32 %value_out) __isnanf (.param .f32 %in_ar0) { .reg .u32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .f32 %r27; .reg .u32 %r29; .reg .u32 %r31; mov.f32 %r27,%ar0; .loc 1 22 2 mov.b32 %r23,%r27; .loc 1 23 5 and.b32 %r29,%r23,2147483647; .loc 1 24 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 25 1 st.param.u32 [%value_out],%value; ret; } /1124 0 0 0 644 2914 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/math/sf_ldexp.c" // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: ldexpf .visible .func (.param .f32 %value_out) ldexpf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .pred %r47; .reg .f32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u16 %r68; mov.f32 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 26 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 26 20 set.u32.eq.f32 %r37,%r32,0f00000000; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; mov.u32 %r39,%r41; .loc 1 26 20 cvt.u16.u8 %r68,%r36; mov.u16 %r43,%r68; cvt.u16.u8 %r68,%r39; mov.u16 %r44,%r68; or.b16 %r42,%r43,%r44; cvt.u32.u16 %r45,%r42; cvt.u16.u8 %r46,%r45; setp.ne.u16 %r47,%r46,0; @ %r47 bra $L2; .loc 1 27 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r50,[%value_in]; } mov.f32 %r32,%r50; .loc 1 28 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r32; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 28 20 set.u32.eq.f32 %r54,%r32,0f00000000; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; mov.u32 %r56,%r58; .loc 1 28 20 cvt.u16.u8 %r68,%r53; mov.u16 %r60,%r68; cvt.u16.u8 %r68,%r56; mov.u16 %r61,%r68; or.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L2; .loc 1 28 41 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 28 47 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 30 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } lib_a-sf_modf.o/0 0 0 644 2246 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_modf.c" // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: modff .visible .func (.param .f32 %value_out) modff (.param .f32 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r31; .reg .u32 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; mov.f32 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 27 2 mov.b32 %r33,%r39; .loc 1 28 11 shr.s32 %r41,%r33,23; .loc 1 28 16 and.b32 %r42,%r41,255; .loc 1 28 5 add.u32 %r36,%r42,-127; .loc 1 29 4 setp.gt.s32 %r43,%r36,22; @ %r43 bra $L2; .loc 1 30 8 setp.ge.s32 %r44,%r36,0; @ %r44 bra $L3; .loc 1 31 10 and.b32 %r45,%r33,-2147483648; st.u32 [%r40],%r45; .loc 1 32 10 mov.f32 %r38,%r39; bra $L1; $L3: .loc 1 34 19 mov.u32 %r46,8388607; shr.s32 %r37,%r46,%r36; .loc 1 35 9 and.b32 %r47,%r33,%r37; .loc 1 35 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 36 13 st.f32 [%r40],%r39; .loc 1 37 7 and.b32 %r49,%r33,-2147483648; mov.b32 %r38,%r49; .loc 1 38 14 bra $L1; $L5: .loc 1 40 7 not.b32 %r50,%r37; and.b32 %r51,%r50,%r33; mov.b32 %r31,%r51; st.f32 [%r40],%r31; .loc 1 41 16 sub.f32 %r38,%r39,%r31; bra $L1; $L2: .loc 1 45 12 st.f32 [%r40],%r39; .loc 1 46 10 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 46 9 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L6; .loc 1 46 54 add.f32 %r38,%r39,%r39; .loc 1 46 51 st.f32 [%r40],%r38; bra $L1; $L6: .loc 1 47 6 and.b32 %r55,%r33,-2147483648; mov.b32 %r38,%r55; $L1: .loc 1 50 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 0 0 0 644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/sf_nan.c" // BEGIN GLOBAL FUNCTION DEF: nanf .visible .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .loc 1 17 9 mov.f32 %value,0f7fc00000; .loc 1 18 1 st.param.f32 [%value_out],%value; ret; } /1142 0 0 0 644 2620 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libm/common/sf_scalbn.c" // BEGIN GLOBAL FUNCTION DEF: scalbnf .visible .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1) { .reg .f32 %value; .reg .f32 %ar0; ld.param.f32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .f32 %r26; .reg .f32 %r32; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .pred %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .f32 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .f32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .f32 %r68; mov.f32 %r47,%ar0; mov.u32 %r48,%ar1; .loc 1 46 2 mov.b32 %r44,%r47; .loc 1 47 5 and.b32 %r40,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r49,%r40,0; @ %r49 bra $L10; .loc 1 51 12 setp.le.u32 %r50,%r40,2139095039; @ %r50 bra $L3; .loc 1 52 14 add.f32 %r46,%r47,%r47; bra $L1; $L3: .loc 1 53 12 and.b32 %r51,%r44,2139095040; setp.ne.u32 %r52,%r51,0; @ %r52 bra $L4; .loc 1 54 8 mul.f32 %r47,%r47,0f4c000000; .loc 1 57 16 setp.lt.s32 %r53,%r48,-50000; @ %r53 bra $L5; .loc 1 55 6 mov.b32 %r39,%r47; .loc 1 56 26 shr.s32 %r54,%r39,23; and.b32 %r55,%r54,255; .loc 1 56 8 add.u32 %r38,%r55,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r46,%r47,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r39,%r44; .loc 1 48 15 shr.u32 %r38,%r40,23; $L6: .loc 1 59 11 add.u32 %r41,%r38,%r48; .loc 1 60 12 setp.le.s32 %r56,%r41,254; @ %r56 bra $L7; .loc 1 60 46 mov.f32 %r57,0f7149f2ca; copysign.f32 %r26,%r47,%r57; .loc 1 60 45 mul.f32 %r46,%r26,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r58,%r41,0; @ %r58 bra $L8; .loc 1 62 7 and.b32 %r59,%r39,-2139095041; shl.b32 %r60,%r41,23; or.b32 %r61,%r59,%r60; mov.b32 %r46,%r61; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r62,%r41,-22; @ %r62 bra $L9; .loc 1 66 23 mov.f32 %r63,0f0da24260; copysign.f32 %r32,%r47,%r63; .loc 1 66 22 mul.f32 %r46,%r32,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r64,%r41,25; .loc 1 69 2 shl.b32 %r65,%r64,23; and.b32 %r66,%r39,-2139095041; or.b32 %r67,%r65,%r66; .loc 1 70 17 mov.b32 %r68,%r67; mul.f32 %r46,%r68,0f33000000; bra $L1; $L10: .loc 1 50 13 mov.f32 %r46,%r47; $L1: .loc 1 71 1 mov.f32 %value,%r46; st.param.f32 [%value_out],%value; ret; } lib_a-signal.o/ 0 0 0 644 15439 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _init_signal_r .visible .func (.param .u32 %value_out) _init_signal_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/signal/signal.c" // BEGIN GLOBAL FUNCTION DECL: _signal_r .visible .func (.param .u64 %value_out) _signal_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _raise_r .visible .func (.param .u32 %value_out) _raise_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sigtramp_r .visible .func (.param .u32 %value_out) __sigtramp_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: raise .visible .func (.param .u32 %value_out) raise (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: signal .visible .func (.param .u64 %value_out) signal (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _init_signal .visible .func (.param .u32 %value_out) _init_signal; // BEGIN GLOBAL FUNCTION DECL: __sigtramp .visible .func (.param .u32 %value_out) __sigtramp (.param .u32 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _getpid_r .extern .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _kill_r .extern .func (.param .u32 %value_out) _kill_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _init_signal_r .visible .func (.param .u32 %value_out) _init_signal_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r36; mov.u64 %r28,%ar0; .loc 1 96 6 ld.u64 %r29,[%r28+1304]; setp.ne.u64 %r30,%r29,0; @ %r30 bra $L2; .loc 1 98 41 mov.u64 %r32,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } .loc 1 98 22 st.u64 [%r28+1304],%r33; .loc 1 99 10 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L5; mov.u64 %r24,%r33; add.u64 %r26,%r24,256; $L4: .loc 1 103 20 st.u64 [%r24],%r29; .loc 1 102 21 add.u64 %r24,%r24,8; setp.ne.u64 %r36,%r24,%r26; @ %r36 bra $L4; $L2: .loc 1 106 10 mov.u32 %r27,0; bra $L1; $L5: .loc 1 100 9 mov.u32 %r27,-1; $L1: .loc 1 107 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _signal_r .visible .func (.param .u64 %value_out) _signal_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; mov.u64 %r30,%ar0; mov.u32 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 116 6 setp.le.u32 %r33,%r31,31; @ %r33 bra $L8; .loc 1 118 19 mov.u32 %r34,22; st.u32 [%r30],%r34; .loc 1 119 14 mov.u64 %r29,-1; bra $L7; $L8: .loc 1 122 10 ld.u64 %r24,[%r30+1304]; .loc 1 122 6 setp.ne.u64 %r35,%r24,0; @ %r35 bra $L10; .loc 1 98 41 mov.u64 %r37,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r38,[%value_in]; } mov.u64 %r24,%r38; .loc 1 98 22 st.u64 [%r30+1304],%r24; .loc 1 99 10 setp.eq.u64 %r39,%r24,0; @ %r39 bra $L12; mov.u64 %r27,%r24; add.u64 %r23,%r24,256; .loc 1 103 20 mov.u64 %r40,0; $L11: st.u64 [%r27],%r40; .loc 1 102 21 add.u64 %r27,%r27,8; setp.ne.u64 %r41,%r23,%r27; @ %r41 bra $L11; $L10: .loc 1 125 28 cvt.s64.s32 %r42,%r31; shl.b64 %r43,%r42,3; add.u64 %r26,%r24,%r43; .loc 1 125 12 ld.u64 %r29,[%r26]; .loc 1 126 23 st.u64 [%r26],%r32; .loc 1 128 10 bra $L7; $L12: .loc 1 123 12 mov.u64 %r29,-1; $L7: .loc 1 129 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _raise_r .visible .func (.param .u32 %value_out) _raise_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; mov.u64 %r29,%ar0; mov.u32 %r30,%ar1; .loc 1 137 6 setp.le.u32 %r31,%r30,31; @ %r31 bra $L15; .loc 1 139 19 mov.u32 %r32,22; st.u32 [%r29],%r32; .loc 1 140 14 mov.u32 %r28,-1; bra $L14; $L15: .loc 1 143 10 ld.u64 %r23,[%r29+1304]; .loc 1 143 6 setp.eq.u64 %r33,%r23,0; @ %r33 bra $L17; .loc 1 146 26 cvt.s64.s32 %r34,%r30; shl.b64 %r35,%r34,3; add.u64 %r25,%r23,%r35; .loc 1 146 10 ld.u64 %r27,[%r25]; .loc 1 148 6 setp.ne.u64 %r36,%r27,0; @ %r36 bra $L18; $L17: .loc 1 149 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r38,[%value_in]; } { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; call (%value_in),_kill_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r42,[%value_in]; } mov.u32 %r28,%r42; bra $L14; $L18: .loc 1 150 11 setp.eq.u64 %r43,%r27,1; @ %r43 bra $L20; .loc 1 152 11 setp.ne.u64 %r44,%r27,-1; @ %r44 bra $L19; .loc 1 154 19 mov.u32 %r45,22; st.u32 [%r29],%r45; .loc 1 155 14 mov.u32 %r28,1; bra $L14; $L19: .loc 1 159 27 mov.u64 %r46,0; st.u64 [%r25],%r46; .loc 1 160 7 { $LCT0: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r30; call %r27,(%out_arg1),$LCT0; } .loc 1 161 14 mov.u32 %r28,0; bra $L14; $L20: .loc 1 151 12 mov.u32 %r28,0; $L14: .loc 1 163 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sigtramp_r .visible .func (.param .u32 %value_out) __sigtramp_r (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u64 %r46; mov.u64 %r31,%ar0; mov.u32 %r32,%ar1; .loc 1 171 6 setp.le.u32 %r33,%r32,31; @ %r33 bra $L25; $L28: .loc 1 173 14 mov.u32 %r30,-1; bra $L24; $L25: .loc 1 176 10 ld.u64 %r23,[%r31+1304]; .loc 1 176 6 setp.ne.u64 %r34,%r23,0; @ %r34 bra $L27; .loc 1 98 41 mov.u64 %r36,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r37,[%value_in]; } mov.u64 %r23,%r37; .loc 1 98 22 st.u64 [%r31+1304],%r23; .loc 1 99 10 setp.eq.u64 %r38,%r23,0; @ %r38 bra $L28; mov.u64 %r27,%r23; add.u64 %r28,%r23,256; .loc 1 103 20 mov.u64 %r39,0; $L29: st.u64 [%r27],%r39; .loc 1 102 21 add.u64 %r27,%r27,8; setp.ne.u64 %r40,%r27,%r28; @ %r40 bra $L29; $L27: .loc 1 179 24 cvt.s64.s32 %r41,%r32; shl.b64 %r42,%r41,3; add.u64 %r25,%r23,%r42; .loc 1 179 8 ld.u64 %r26,[%r25]; .loc 1 180 6 setp.eq.u64 %r43,%r26,0; @ %r43 bra $L30; .loc 1 182 11 setp.eq.u64 %r44,%r26,-1; @ %r44 bra $L31; .loc 1 184 11 setp.eq.u64 %r45,%r26,1; @ %r45 bra $L32; .loc 1 188 27 mov.u64 %r46,0; st.u64 [%r25],%r46; .loc 1 189 7 { $LCT1: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r32; call %r26,(%out_arg1),$LCT1; } .loc 1 190 14 mov.u32 %r30,0; bra $L24; $L30: .loc 1 181 12 mov.u32 %r30,1; bra $L24; $L31: .loc 1 183 12 mov.u32 %r30,2; bra $L24; $L32: .loc 1 185 12 mov.u32 %r30,3; $L24: .loc 1 192 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: raise .visible .func (.param .u32 %value_out) raise (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; mov.u32 %r30,%ar0; .loc 1 199 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 137 6 setp.le.u32 %r31,%r30,31; @ %r31 bra $L38; .loc 1 139 19 mov.u32 %r32,22; st.u32 [%r22],%r32; .loc 1 140 14 mov.u32 %r29,-1; bra $L37; $L38: .loc 1 143 10 ld.u64 %r24,[%r22+1304]; .loc 1 143 6 setp.eq.u64 %r33,%r24,0; @ %r33 bra $L40; .loc 1 146 26 cvt.s64.s32 %r34,%r30; shl.b64 %r35,%r34,3; add.u64 %r26,%r24,%r35; .loc 1 146 10 ld.u64 %r27,[%r26]; .loc 1 148 6 setp.ne.u64 %r36,%r27,0; @ %r36 bra $L41; $L40: .loc 1 149 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r38,[%value_in]; } { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; call (%value_in),_kill_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r42,[%value_in]; } mov.u32 %r29,%r42; bra $L37; $L41: .loc 1 150 11 setp.eq.u64 %r43,%r27,1; @ %r43 bra $L43; .loc 1 152 11 setp.ne.u64 %r44,%r27,-1; @ %r44 bra $L42; .loc 1 154 19 mov.u32 %r45,22; st.u32 [%r22],%r45; .loc 1 155 14 mov.u32 %r29,1; bra $L37; $L42: .loc 1 159 27 mov.u64 %r46,0; st.u64 [%r26],%r46; .loc 1 160 7 { $LCT2: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r30; call %r27,(%out_arg1),$LCT2; } .loc 1 161 14 mov.u32 %r29,0; bra $L37; $L43: .loc 1 151 12 mov.u32 %r29,0; $L37: .loc 1 200 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: signal .visible .func (.param .u64 %value_out) signal (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 206 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 116 6 setp.le.u32 %r33,%r31,31; @ %r33 bra $L48; .loc 1 118 19 mov.u32 %r34,22; st.u32 [%r22],%r34; .loc 1 119 14 mov.u64 %r30,-1; bra $L47; $L48: .loc 1 122 10 ld.u64 %r25,[%r22+1304]; .loc 1 122 6 setp.ne.u64 %r35,%r25,0; @ %r35 bra $L50; .loc 1 98 41 mov.u64 %r37,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r38,[%value_in]; } mov.u64 %r25,%r38; .loc 1 98 22 st.u64 [%r22+1304],%r25; .loc 1 99 10 setp.eq.u64 %r39,%r25,0; @ %r39 bra $L52; mov.u64 %r28,%r25; add.u64 %r24,%r25,256; .loc 1 103 20 mov.u64 %r40,0; $L51: st.u64 [%r28],%r40; .loc 1 102 21 add.u64 %r28,%r28,8; setp.ne.u64 %r41,%r24,%r28; @ %r41 bra $L51; $L50: .loc 1 125 28 cvt.s64.s32 %r42,%r31; shl.b64 %r43,%r42,3; add.u64 %r27,%r25,%r43; .loc 1 125 12 ld.u64 %r30,[%r27]; .loc 1 126 23 st.u64 [%r27],%r32; .loc 1 128 10 bra $L47; $L52: .loc 1 123 12 mov.u64 %r30,-1; $L47: .loc 1 207 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _init_signal .visible .func (.param .u32 %value_out) _init_signal { .reg .u32 %value; .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r36; .loc 1 212 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 96 6 ld.u64 %r29,[%r22+1304]; setp.ne.u64 %r30,%r29,0; @ %r30 bra $L55; .loc 1 98 41 mov.u64 %r32,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r32; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } .loc 1 98 22 st.u64 [%r22+1304],%r33; .loc 1 99 10 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L58; mov.u64 %r25,%r33; add.u64 %r27,%r25,256; $L57: .loc 1 103 20 st.u64 [%r25],%r29; .loc 1 102 21 add.u64 %r25,%r25,8; setp.ne.u64 %r36,%r25,%r27; @ %r36 bra $L57; $L55: .loc 1 106 10 mov.u32 %r28,0; bra $L54; $L58: .loc 1 100 9 mov.u32 %r28,-1; $L54: .loc 1 213 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sigtramp .visible .func (.param .u32 %value_out) __sigtramp (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .u64 %r46; mov.u32 %r32,%ar0; .loc 1 218 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 171 6 setp.le.u32 %r33,%r32,31; @ %r33 bra $L61; $L64: .loc 1 173 14 mov.u32 %r31,-1; bra $L60; $L61: .loc 1 176 10 ld.u64 %r24,[%r22+1304]; .loc 1 176 6 setp.ne.u64 %r34,%r24,0; @ %r34 bra $L63; .loc 1 98 41 mov.u64 %r36,256; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r37,[%value_in]; } mov.u64 %r24,%r37; .loc 1 98 22 st.u64 [%r22+1304],%r24; .loc 1 99 10 setp.eq.u64 %r38,%r24,0; @ %r38 bra $L64; mov.u64 %r25,%r24; add.u64 %r29,%r24,256; .loc 1 103 20 mov.u64 %r39,0; $L65: st.u64 [%r25],%r39; .loc 1 102 21 add.u64 %r25,%r25,8; setp.ne.u64 %r40,%r25,%r29; @ %r40 bra $L65; $L63: .loc 1 179 24 cvt.s64.s32 %r41,%r32; shl.b64 %r42,%r41,3; add.u64 %r27,%r24,%r42; .loc 1 179 8 ld.u64 %r28,[%r27]; .loc 1 180 6 setp.eq.u64 %r43,%r28,0; @ %r43 bra $L66; .loc 1 182 11 setp.eq.u64 %r44,%r28,-1; @ %r44 bra $L67; .loc 1 184 11 setp.eq.u64 %r45,%r28,1; @ %r45 bra $L68; .loc 1 188 27 mov.u64 %r46,0; st.u64 [%r27],%r46; .loc 1 189 7 { $LCT3: .callprototype _ ( .param .u32 %in_ar0); .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r32; call %r28,(%out_arg1),$LCT3; } .loc 1 190 14 mov.u32 %r31,0; bra $L60; $L66: .loc 1 181 12 mov.u32 %r31,1; bra $L60; $L67: .loc 1 183 12 mov.u32 %r31,2; bra $L60; $L68: .loc 1 185 12 mov.u32 %r31,3; $L60: .loc 1 219 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-signalr.o/0 0 0 644 2076 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _kill_r .visible .func (.param .u32 %value_out) _kill_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/signalr.c" // BEGIN GLOBAL FUNCTION DECL: _getpid_r .visible .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: kill .extern .func (.param .u32 %value_out) kill (.param .u32 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: getpid .extern .func (.param .u32 %value_out) getpid; // BEGIN GLOBAL FUNCTION DEF: _kill_r .visible .func (.param .u32 %value_out) _kill_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 52 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 53 14 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r26; call (%value_in),kill,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 53 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 53 47 ld.global.u32 %r22,[errno]; .loc 1 53 38 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 54 17 st.u32 [%r24],%r22; $L1: .loc 1 56 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _getpid_r .visible .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r24; .loc 1 83 9 { .param .u32 %value_in; call (%value_in),getpid; ld.param.u32 %r24,[%value_in]; } .loc 1 85 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } lib_a-signgam.o/0 0 0 644 561 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __signgam .visible .func (.param .u64 %value_out) __signgam; .file 1 "../../../../../../newlib/libc/reent/signgam.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: __signgam .visible .func (.param .u64 %value_out) __signgam { .reg .u64 %value; .reg .u64 %r25; .loc 1 13 10 ld.global.u64 %r25,[_impure_ptr]; add.u64 %value,%r25,224; .loc 1 14 1 st.param.u64 [%value_out],%value; ret; } /1161 0 0 0 644 4247 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _siprintf_r .visible .func (.param .u32 %value_out) _siprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/siprintf.c" // BEGIN GLOBAL FUNCTION DECL: siprintf .visible .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _siprintf_r .visible .func (.param .u32 %value_out) _siprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r36; .reg .u32 %r37; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 111 22 st.u64 [%frame],%r26; .loc 1 111 15 st.u64 [%frame+24],%r26; .loc 1 112 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 112 22 st.u32 [%frame+12],%r28; .loc 1 110 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 115 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 117 5 ld.u64 %r22,[%frame]; .loc 1 117 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 119 1 mov.u32 %value,%r36; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: siprintf .visible .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 132 22 st.u64 [%frame],%r26; .loc 1 132 15 st.u64 [%frame+24],%r26; .loc 1 133 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 133 22 st.u32 [%frame+12],%r28; .loc 1 131 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 136 9 ld.global.u64 %r36,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r37,[%value_in]; } .loc 1 138 5 ld.u64 %r23,[%frame]; .loc 1 138 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 140 1 mov.u32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-siscanf.o/0 0 0 644 5159 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: siscanf .visible .func (.param .u32 %value_out) siscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/siscanf.c" // BEGIN GLOBAL FUNCTION DECL: _siscanf_r .visible .func (.param .u32 %value_out) _siscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfiscanf_r .extern .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: siscanf .visible .func (.param .u32 %value_out) siscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u64 %r41; .reg .u32 %r42; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 92 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 93 22 st.u64 [%frame],%r27; .loc 1 93 15 st.u64 [%frame+24],%r27; .loc 1 94 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 94 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 94 15 st.u32 [%frame+32],%r23; .loc 1 95 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 96 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 97 15 st.u64 [%frame+120],%r33; .loc 1 98 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 100 9 ld.global.u64 %r41,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } .loc 1 103 1 mov.u32 %value,%r42; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _siscanf_r .visible .func (.param .u32 %value_out) _siscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r41; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 116 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 117 22 st.u64 [%frame],%r27; .loc 1 117 15 st.u64 [%frame+24],%r27; .loc 1 118 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 118 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 118 15 st.u32 [%frame+32],%r23; .loc 1 119 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 120 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 121 15 st.u64 [%frame+120],%r33; .loc 1 122 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 124 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r41,[%value_in]; } .loc 1 127 1 mov.u32 %value,%r41; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1179 0 0 0 644 7119 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sniprintf_r .visible .func (.param .u32 %value_out) _sniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdio/sniprintf.c" // BEGIN GLOBAL FUNCTION DECL: sniprintf .visible .func (.param .u32 %value_out) sniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _sniprintf_r .visible .func (.param .u32 %value_out) _sniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %args; ld.param.u64 %args,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; mov.u64 %r32,%ar3; .loc 1 39 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L2; .loc 1 41 19 mov.u32 %r34,139; st.u32 [%r29],%r34; .loc 1 42 14 mov.u32 %r28,-1; bra $L1; $L2: .loc 1 44 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 45 22 st.u64 [%frame],%r30; .loc 1 45 15 st.u64 [%frame+24],%r30; .loc 1 46 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L4; .loc 1 46 41 cvt.u32.u64 %r37,%r31; add.u32 %r26,%r37,-1; .loc 1 46 22 st.u32 [%frame+12],%r26; .loc 1 46 15 st.u32 [%frame+32],%r26; .loc 1 47 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 49 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r28,%r44; .loc 1 51 6 setp.lt.s32 %r45,%r28,-1; @ %r45 bra $L5; $L7: .loc 1 54 7 ld.u64 %r24,[%frame]; .loc 1 54 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L1; $L4: .loc 1 46 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 46 15 st.u32 [%frame+32],%r48; .loc 1 47 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 49 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r28,%r56; .loc 1 51 6 setp.lt.s32 %r57,%r28,-1; @ ! %r57 bra $L1; bra $L6; $L5: .loc 1 52 17 mov.u32 %r58,139; st.u32 [%r29],%r58; bra $L7; $L6: mov.u32 %r59,139; st.u32 [%r29],%r59; $L1: .loc 1 56 1 mov.u32 %value,%r28; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: sniprintf .visible .func (.param .u32 %value_out) sniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 68 18 ld.global.u64 %r26,[_impure_ptr]; .loc 1 70 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L9; .loc 1 72 19 mov.u32 %r34,139; st.u32 [%r26],%r34; .loc 1 73 14 mov.u32 %r29,-1; bra $L8; $L9: .loc 1 75 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 76 22 st.u64 [%frame],%r30; .loc 1 76 15 st.u64 [%frame+24],%r30; .loc 1 77 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L11; .loc 1 77 41 cvt.u32.u64 %r37,%r31; add.u32 %r27,%r37,-1; .loc 1 77 22 st.u32 [%frame+12],%r27; .loc 1 77 15 st.u32 [%frame+32],%r27; .loc 1 78 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 80 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r29,%r44; .loc 1 82 6 setp.lt.s32 %r45,%r29,-1; @ %r45 bra $L12; $L14: .loc 1 85 7 ld.u64 %r24,[%frame]; .loc 1 85 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L8; $L11: .loc 1 77 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 77 15 st.u32 [%frame+32],%r48; .loc 1 78 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 80 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r29,%r56; .loc 1 82 6 setp.lt.s32 %r57,%r29,-1; @ ! %r57 bra $L8; bra $L13; $L12: .loc 1 83 17 mov.u32 %r58,139; st.u32 [%r26],%r58; bra $L14; $L13: mov.u32 %r59,139; st.u32 [%r26],%r59; $L8: .loc 1 87 1 mov.u32 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1198 0 0 0 644 7104 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _snprintf_r .visible .func (.param .u32 %value_out) _snprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdio/snprintf.c" // BEGIN GLOBAL FUNCTION DECL: snprintf .visible .func (.param .u32 %value_out) snprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _snprintf_r .visible .func (.param .u32 %value_out) _snprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %args; ld.param.u64 %args,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; mov.u64 %r32,%ar3; .loc 1 38 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L2; .loc 1 40 19 mov.u32 %r34,139; st.u32 [%r29],%r34; .loc 1 41 14 mov.u32 %r28,-1; bra $L1; $L2: .loc 1 43 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 44 22 st.u64 [%frame],%r30; .loc 1 44 15 st.u64 [%frame+24],%r30; .loc 1 45 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L4; .loc 1 45 41 cvt.u32.u64 %r37,%r31; add.u32 %r26,%r37,-1; .loc 1 45 22 st.u32 [%frame+12],%r26; .loc 1 45 15 st.u32 [%frame+32],%r26; .loc 1 46 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 48 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r28,%r44; .loc 1 50 6 setp.lt.s32 %r45,%r28,-1; @ %r45 bra $L5; $L7: .loc 1 53 7 ld.u64 %r24,[%frame]; .loc 1 53 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L1; $L4: .loc 1 45 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 45 15 st.u32 [%frame+32],%r48; .loc 1 46 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 48 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r28,%r56; .loc 1 50 6 setp.lt.s32 %r57,%r28,-1; @ ! %r57 bra $L1; bra $L6; $L5: .loc 1 51 17 mov.u32 %r58,139; st.u32 [%r29],%r58; bra $L7; $L6: mov.u32 %r59,139; st.u32 [%r29],%r59; $L1: .loc 1 55 1 mov.u32 %value,%r28; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: snprintf .visible .func (.param .u32 %value_out) snprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u16 %r50; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 73 18 ld.global.u64 %r26,[_impure_ptr]; .loc 1 75 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L9; .loc 1 77 19 mov.u32 %r34,139; st.u32 [%r26],%r34; .loc 1 78 14 mov.u32 %r29,-1; bra $L8; $L9: .loc 1 80 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 81 22 st.u64 [%frame],%r30; .loc 1 81 15 st.u64 [%frame+24],%r30; .loc 1 82 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L11; .loc 1 82 41 cvt.u32.u64 %r37,%r31; add.u32 %r27,%r37,-1; .loc 1 82 22 st.u32 [%frame+12],%r27; .loc 1 82 15 st.u32 [%frame+32],%r27; .loc 1 83 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 85 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r44,[%value_in]; } mov.u32 %r29,%r44; .loc 1 87 6 setp.lt.s32 %r45,%r29,-1; @ %r45 bra $L12; $L14: .loc 1 90 7 ld.u64 %r24,[%frame]; .loc 1 90 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L8; $L11: .loc 1 82 22 mov.u32 %r48,0; st.u32 [%frame+12],%r48; .loc 1 82 15 st.u32 [%frame+32],%r48; .loc 1 83 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 85 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r56,[%value_in]; } mov.u32 %r29,%r56; .loc 1 87 6 setp.lt.s32 %r57,%r29,-1; @ ! %r57 bra $L8; bra $L13; $L12: .loc 1 88 17 mov.u32 %r58,139; st.u32 [%r26],%r58; bra $L14; $L13: mov.u32 %r59,139; st.u32 [%r26],%r59; $L8: .loc 1 92 1 mov.u32 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-sprintf.o/0 0 0 644 4234 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sprintf_r .visible .func (.param .u32 %value_out) _sprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/sprintf.c" // BEGIN GLOBAL FUNCTION DECL: sprintf .visible .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _sprintf_r .visible .func (.param .u32 %value_out) _sprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r36; .reg .u32 %r37; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 587 22 st.u64 [%frame],%r26; .loc 1 587 15 st.u64 [%frame+24],%r26; .loc 1 588 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 588 22 st.u32 [%frame+12],%r28; .loc 1 586 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 591 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 593 5 ld.u64 %r22,[%frame]; .loc 1 593 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 595 1 mov.u32 %value,%r36; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: sprintf .visible .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 614 22 st.u64 [%frame],%r26; .loc 1 614 15 st.u64 [%frame+24],%r26; .loc 1 615 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 615 22 st.u32 [%frame+12],%r28; .loc 1 613 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 618 9 ld.global.u64 %r36,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r37,[%value_in]; } .loc 1 620 5 ld.u64 %r23,[%frame]; .loc 1 620 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 622 1 mov.u32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-srand48.o/0 0 0 644 1783 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _srand48_r .visible .func _srand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/srand48.c" // BEGIN GLOBAL FUNCTION DECL: srand48 .visible .func srand48 (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DEF: _srand48_r .visible .func _srand48_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r26; .reg .u64 %r27; .reg .u16 %r28; .reg .u64 %r29; .reg .u16 %r30; .reg .u32 %r31; .reg .u16 %r32; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 21 20 mov.u16 %r28,13070; st.u16 [%r26+240],%r28; .loc 1 22 22 st.u16 [%r26+242],%r27; .loc 1 23 60 shr.u64 %r29,%r27,16; .loc 1 23 22 st.u16 [%r26+244],%r29; .loc 1 24 20 mov.u16 %r30,-6547; st.u16 [%r26+246],%r30; .loc 1 25 20 mov.u32 %r31,384748; st.u32 [%r26+248],%r31; .loc 1 27 16 mov.u16 %r32,11; st.u16 [%r26+252],%r32; .loc 1 28 1 ret; } // BEGIN GLOBAL FUNCTION DEF: srand48 .visible .func srand48 (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r27; .reg .u16 %r28; .reg .u64 %r29; .reg .u16 %r30; .reg .u32 %r31; .reg .u16 %r32; mov.u64 %r27,%ar0; .loc 1 34 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 20 mov.u16 %r28,13070; st.u16 [%r22+240],%r28; .loc 1 22 22 st.u16 [%r22+242],%r27; .loc 1 23 60 shr.u64 %r29,%r27,16; .loc 1 23 22 st.u16 [%r22+244],%r29; .loc 1 24 20 mov.u16 %r30,-6547; st.u16 [%r22+246],%r30; .loc 1 25 20 mov.u32 %r31,384748; st.u32 [%r22+248],%r31; .loc 1 27 16 mov.u16 %r32,11; st.u16 [%r22+252],%r32; .loc 1 35 1 ret; } lib_a-sscanf.o/ 0 0 0 644 5156 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: sscanf .visible .func (.param .u32 %value_out) sscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/sscanf.c" // BEGIN GLOBAL FUNCTION DECL: _sscanf_r .visible .func (.param .u32 %value_out) _sscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfscanf_r .extern .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: sscanf .visible .func (.param .u32 %value_out) sscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %args; ld.param.u64 %args,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u64 %r41; .reg .u32 %r42; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 431 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 432 22 st.u64 [%frame],%r27; .loc 1 432 15 st.u64 [%frame+24],%r27; .loc 1 433 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 433 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 433 15 st.u32 [%frame+32],%r23; .loc 1 434 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 435 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 436 15 st.u64 [%frame+120],%r33; .loc 1 437 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 439 9 ld.global.u64 %r41,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } .loc 1 442 1 mov.u32 %value,%r42; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _sscanf_r .visible .func (.param .u32 %value_out) _sscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %args; ld.param.u64 %args,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r41; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 461 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 462 22 st.u64 [%frame],%r27; .loc 1 462 15 st.u64 [%frame+24],%r27; .loc 1 463 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 463 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 463 15 st.u32 [%frame+32],%r23; .loc 1 464 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 465 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 466 15 st.u64 [%frame+120],%r33; .loc 1 467 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 469 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%args; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r41,[%value_in]; } .loc 1 472 1 mov.u32 %value,%r41; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-statr.o/ 0 0 0 644 1513 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _stat_r .visible .func (.param .u32 %value_out) _stat_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/reent/statr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: stat .extern .func (.param .u32 %value_out) stat (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _stat_r .visible .func (.param .u32 %value_out) _stat_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 54 9 mov.u32 %r27,0; st.global.u32 [errno],%r27; .loc 1 55 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; call (%value_in),stat,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 55 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L1; .loc 1 55 50 ld.global.u32 %r22,[errno]; .loc 1 55 41 setp.eq.u32 %r32,%r22,0; @ %r32 bra $L1; .loc 1 56 17 st.u32 [%r24],%r22; $L1: .loc 1 58 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-stdio.o/ 0 0 0 644 7354 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __sread .visible .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/stdio.c" // BEGIN GLOBAL FUNCTION DECL: __seofread .visible .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __swrite .visible .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sseek .visible .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sclose .visible .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _read_r .extern .func (.param .u64 %value_out) _read_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _lseek_r .extern .func (.param .u64 %value_out) _lseek_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _close_r .extern .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __sread .visible .func (.param .u32 %value_out) __sread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; mov.u32 %r34,%ar3; .loc 1 47 9 cvt.s64.s32 %r39,%r34; ld.s16 %r40,[%r32+18]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r39; call (%value_in),_read_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r41,[%value_in]; } .loc 1 56 6 setp.lt.s64 %r42,%r41,0; @ %r42 bra $L2; .loc 1 57 17 ld.u64 %r44,[%r32+144]; add.u64 %r43,%r44,%r41; st.u64 [%r32+144],%r43; bra $L3; $L2: .loc 1 59 16 ld.u16 %r46,[%r32+16]; and.b16 %r45,%r46,-4097; st.u16 [%r32+16],%r45; $L3: .loc 1 60 10 cvt.u32.u64 %value,%r41; .loc 1 61 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __seofread .visible .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .loc 1 70 10 mov.u32 %value,0; .loc 1 71 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __swrite .visible .func (.param .u32 %value_out) __swrite (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u32 %r22; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .pred %r38; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r44; .reg .u16 %r45; .reg .u16 %r46; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; mov.u64 %r34,%ar2; mov.u32 %r35,%ar3; .loc 1 85 9 ld.s16 %r22,[%r33+16]; .loc 1 85 6 cvt.u16.u32 %r37,%r22; and.b16 %r36,%r37,256; setp.eq.u16 %r38,%r36,0; @ %r38 bra $L6; .loc 1 86 5 ld.s16 %r43,[%r33+18]; mov.u32 %r42,2; mov.u64 %r41,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r43; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r41; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r42; call (%value_in),_lseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r44,[%value_in]; } .loc 1 87 14 ld.s16 %r22,[%r33+16]; $L6: cvt.u16.u32 %r46,%r22; and.b16 %r45,%r46,-4097; st.u16 [%r33+16],%r45; .loc 1 94 7 cvt.s64.s32 %r51,%r35; ld.s16 %r52,[%r33+18]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r52; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r34; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r51; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r53,[%value_in]; } .loc 1 101 10 cvt.u32.u64 %value,%r53; .loc 1 102 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sseek .visible .func (.param .u64 %value_out) __sseek (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u32 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u16 %r43; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; mov.u32 %r32,%ar3; .loc 1 113 9 ld.s16 %r37,[%r30+18]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r32; call (%value_in),_lseek_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r38,[%value_in]; } .loc 1 114 6 setp.ne.u64 %r39,%r38,-1; @ %r39 bra $L11; .loc 1 115 16 ld.u16 %r41,[%r30+16]; and.b16 %r40,%r41,-4097; st.u16 [%r30+16],%r40; bra $L10; $L11: .loc 1 118 18 ld.u16 %r43,[%r30+16]; or.b16 %r42,%r43,4096; st.u16 [%r30+16],%r42; .loc 1 119 19 st.u64 [%r30+144],%r38; $L10: .loc 1 122 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sclose .visible .func (.param .u32 %value_out) __sclose (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r29; .reg .u32 %r30; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 130 10 ld.s16 %r29,[%r26+18]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; call (%value_in),_close_r,(%out_arg1,%out_arg2); ld.param.u32 %r30,[%value_in]; } .loc 1 131 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } /1216 0 0 0 644 1732 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcasecmp .visible .func (.param .u32 %value_out) strcasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strcasecmp.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strcasecmp .visible .func (.param .u32 %value_out) strcasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r46; .reg .u16 %r49; .reg .u16 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u64 %r56; .reg .u16 %r59; .reg .u16 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r66; .reg .u16 %r67; mov.u64 %r39,%ar0; mov.u64 %r38,%ar1; cvta.const.u64 %r66,_ctype_+1; $L5: .loc 1 45 22 ld.s8 %r30,[%r39]; cvt.u32.u32 %r44,%r30; cvt.s64.s8 %r43,%r44; add.u64 %r46,%r66,%r43; ld.u8 %r67,[%r46]; mov.u16 %r49,%r67; and.b16 %r51,%r49,3; setp.ne.u16 %r52,%r51,1; @ %r52 bra $L2; add.u32 %r30,%r30,32; $L2: .loc 1 46 22 ld.s8 %r31,[%r38]; cvt.u32.u32 %r54,%r31; cvt.s64.s8 %r53,%r54; add.u64 %r56,%r66,%r53; ld.u8 %r67,[%r56]; mov.u16 %r59,%r67; and.b16 %r61,%r59,3; setp.ne.u16 %r62,%r61,1; @ %r62 bra $L3; add.u32 %r31,%r31,32; $L3: .loc 1 47 15 sub.u32 %r40,%r30,%r31; .loc 1 47 10 setp.ne.u32 %r63,%r30,%r31; @ %r63 bra $L1; .loc 1 47 32 add.u64 %r39,%r39,1; add.u64 %r38,%r38,1; setp.ne.u32 %r64,%r31,0; @ %r64 bra $L5; $L1: .loc 1 51 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-strcat.o/ 0 0 0 644 2240 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcat .visible .func (.param .u64 %value_out) strcat (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strcat.c" // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strcat .visible .func (.param .u64 %value_out) strcat (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r60; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 74 7 and.b64 %r40,%r38,7; .loc 1 74 6 setp.ne.u64 %r41,%r40,0; @ %r41 bra $L6; .loc 1 77 15 ld.u64 %r32,[%r38]; add.u64 %r42,%r32,-72340172838076673; not.b64 %r43,%r32; and.b64 %r44,%r42,%r43; and.b64 %r45,%r44,-9187201950435737472; .loc 1 77 14 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L7; mov.u64 %r30,%r38; bra $L2; $L6: mov.u64 %r30,%r38; $L2: .loc 1 83 10 ld.u8 %r48,[%r30]; cvt.s16.s8 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L4; bra $L5; $L7: .loc 1 77 14 mov.u64 %r30,%r38; $L3: .loc 1 78 12 add.u64 %r30,%r30,8; .loc 1 77 15 ld.u64 %r24,[%r30]; add.u64 %r50,%r24,-72340172838076673; not.b64 %r51,%r24; and.b64 %r52,%r50,%r51; and.b64 %r53,%r52,-9187201950435737472; .loc 1 77 14 setp.eq.u64 %r54,%r53,0; @ %r54 bra $L3; bra $L2; $L4: .loc 1 84 7 add.u64 %r30,%r30,1; .loc 1 83 10 ld.u8 %r56,[%r30]; cvt.s16.s8 %r55,%r56; setp.ne.u16 %r57,%r55,0; @ %r57 bra $L4; $L5: .loc 1 93 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r60,[%value_in]; } .loc 1 97 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-strchr.o/ 0 0 0 644 4926 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strchr .visible .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strchr.c" // BEGIN GLOBAL FUNCTION DEF: strchr .visible .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r46; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r54; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u16 %r94; .reg .pred %r95; .reg .pred %r96; .reg .u16 %r97; .reg .pred %r99; .reg .u64 %r100; .reg .pred %r101; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .pred %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .u16 %r123; .reg .u16 %r124; .reg .pred %r125; .reg .u16 %r127; mov.u64 %r72,%ar0; mov.u32 %r73,%ar1; .loc 1 59 17 mov.u32 %r74,%r73; cvt.u32.u8 %r48,%r74; .loc 1 86 10 and.b64 %r70,%r72,7; .loc 1 66 6 setp.eq.u32 %r75,%r48,0; @ %r75 bra $L2; .loc 1 86 10 setp.ne.u64 %r76,%r70,0; @ ! %r76 bra $L4; .loc 1 90 10 cvt.u16.u32 %r127,%r48; bra $L3; $L2: .loc 1 68 14 setp.eq.u64 %r77,%r70,0; @ %r77 bra $L5; $L7: .loc 1 70 14 ld.u8 %r78,[%r72]; setp.eq.u16 %r79,%r78,0; @ %r79 bra $L15; .loc 1 72 12 add.u64 %r72,%r72,1; .loc 1 68 14 and.b64 %r80,%r72,7; setp.ne.u64 %r81,%r80,0; @ %r81 bra $L7; $L5: .loc 1 76 15 ld.u64 %r42,[%r72]; add.u64 %r82,%r42,-72340172838076673; not.b64 %r83,%r42; and.b64 %r84,%r82,%r83; and.b64 %r85,%r84,-9187201950435737472; .loc 1 76 14 setp.ne.u64 %r86,%r85,0; @ %r86 bra $L8; $L9: .loc 1 77 21 add.u64 %r72,%r72,8; .loc 1 76 15 ld.u64 %r24,[%r72]; add.u64 %r87,%r24,-72340172838076673; not.b64 %r88,%r24; and.b64 %r89,%r87,%r88; and.b64 %r90,%r89,-9187201950435737472; .loc 1 76 14 setp.eq.u64 %r91,%r90,0; @ %r91 bra $L9; $L8: .loc 1 80 14 ld.u8 %r92,[%r72]; setp.eq.u16 %r93,%r92,0; @ %r93 bra $L16; $L10: .loc 1 81 10 add.u64 %r72,%r72,1; .loc 1 80 14 ld.u8 %r94,[%r72]; setp.ne.u16 %r95,%r94,0; @ %r95 bra $L10; mov.u64 %r71,%r72; bra $L1; $L3: .loc 1 88 12 ld.u8 %r30,[%r72]; .loc 1 88 10 setp.eq.u32 %r96,%r30,0; @ %r96 bra $L17; .loc 1 90 10 cvt.u16.u32 %r97,%r30; setp.eq.u16 %r99,%r97,%r127; @ %r99 bra $L18; .loc 1 92 8 add.u64 %r72,%r72,1; .loc 1 86 10 and.b64 %r100,%r72,7; setp.ne.u64 %r101,%r100,0; @ %r101 bra $L3; $L4: .loc 1 95 8 cvt.u64.u8 %r49,%r74; .loc 1 97 18 shl.b64 %r66,%r49,8; .loc 1 97 10 or.b64 %r65,%r49,%r66; .loc 1 97 18 shl.b64 %r64,%r65,16; .loc 1 97 10 or.b64 %r63,%r64,%r65; .loc 1 97 18 shl.b64 %r33,%r63,32; .loc 1 97 10 or.b64 %r50,%r33,%r63; .loc 1 100 11 ld.u64 %r51,[%r72]; .loc 1 100 42 xor.b64 %r54,%r50,%r51; add.u64 %r103,%r54,-72340172838076673; not.b64 %r104,%r54; and.b64 %r105,%r103,%r104; .loc 1 100 11 add.u64 %r106,%r51,-72340172838076673; not.b64 %r107,%r51; and.b64 %r108,%r106,%r107; .loc 1 100 38 or.b64 %r109,%r105,%r108; and.b64 %r110,%r109,-9187201950435737472; setp.ne.u64 %r111,%r110,0; @ %r111 bra $L11; $L12: .loc 1 101 17 add.u64 %r72,%r72,8; .loc 1 100 11 ld.u64 %r34,[%r72]; .loc 1 100 42 xor.b64 %r40,%r34,%r50; .loc 1 100 11 add.u64 %r112,%r34,-72340172838076673; not.b64 %r113,%r34; and.b64 %r114,%r112,%r113; .loc 1 100 42 add.u64 %r115,%r40,-72340172838076673; not.b64 %r116,%r40; and.b64 %r117,%r115,%r116; .loc 1 100 38 or.b64 %r118,%r114,%r117; and.b64 %r119,%r118,-9187201950435737472; setp.eq.u64 %r120,%r119,0; @ %r120 bra $L12; $L11: .loc 1 111 10 ld.u8 %r46,[%r72]; .loc 1 111 13 setp.ne.u32 %r121,%r46,0; @ ! %r121 bra $L32; cvt.u16.u32 %r123,%r48; bra $L13; $L32: .loc 1 89 16 mov.u64 %r71,0; bra $L1; $L14: .loc 1 112 6 add.u64 %r72,%r72,1; .loc 1 111 10 ld.u8 %r46,[%r72]; .loc 1 111 13 setp.eq.u32 %r122,%r46,0; @ %r122 bra $L19; $L13: cvt.u16.u32 %r124,%r46; setp.ne.u16 %r125,%r123,%r124; @ %r125 bra $L14; mov.u64 %r71,%r72; bra $L1; $L15: mov.u64 %r71,%r72; bra $L1; $L16: .loc 1 80 14 mov.u64 %r71,%r72; bra $L1; $L17: .loc 1 89 16 mov.u64 %r71,0; bra $L1; $L18: mov.u64 %r71,%r72; bra $L1; $L19: mov.u64 %r71,0; $L1: .loc 1 116 1 mov.u64 %value,%r71; st.param.u64 [%value_out],%value; ret; } lib_a-strcmp.o/ 0 0 0 644 2236 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcmp .visible .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strcmp.c" // BEGIN GLOBAL FUNCTION DEF: strcmp .visible .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r28; .reg .u32 %r30; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .u16 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u32 %r60; mov.u64 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 71 8 or.b64 %r41,%r39,%r40; and.b64 %r42,%r41,7; .loc 1 71 6 setp.ne.u64 %r43,%r42,0; @ %r43 bra $L2; .loc 1 76 14 ld.u64 %r28,[%r39]; .loc 1 76 18 ld.u64 %r44,[%r40]; setp.eq.u64 %r45,%r28,%r44; @ %r45 bra $L3; $L2: .loc 1 92 10 ld.s8 %r30,[%r39]; .loc 1 92 22 setp.ne.u32 %r46,%r30,0; @ %r46 bra $L4; mov.u32 %r37,%r30; bra $L5; $L3: .loc 1 80 15 add.u64 %r47,%r28,-72340172838076673; not.b64 %r48,%r28; and.b64 %r49,%r47,%r48; and.b64 %r50,%r49,-9187201950435737472; .loc 1 80 14 setp.ne.u64 %r51,%r50,0; @ %r51 bra $L8; .loc 1 83 13 add.u64 %r39,%r39,8; .loc 1 84 13 add.u64 %r40,%r40,8; .loc 1 76 14 ld.u64 %r28,[%r39]; .loc 1 76 18 ld.u64 %r52,[%r40]; setp.eq.u64 %r53,%r28,%r52; @ %r53 bra $L3; bra $L2; $L7: .loc 1 94 9 add.u64 %r39,%r39,1; .loc 1 95 9 add.u64 %r40,%r40,1; .loc 1 92 10 ld.s8 %r30,[%r39]; .loc 1 92 22 setp.eq.u32 %r54,%r30,0; @ %r54 bra $L9; $L4: ld.u8 %r56,[%r40]; cvt.s16.s8 %r55,%r56; cvt.u16.u32 %r57,%r30; setp.eq.u16 %r58,%r55,%r57; @ %r58 bra $L7; .loc 1 97 11 cvt.u32.u32 %r59,%r30; cvt.u32.u8 %r37,%r59; bra $L5; $L9: mov.u32 %r37,%r30; $L5: .loc 1 97 37 ld.u8 %r60,[%r40]; .loc 1 97 34 sub.u32 %r38,%r37,%r60; bra $L1; $L8: .loc 1 81 13 mov.u32 %r38,0; $L1: .loc 1 99 1 mov.u32 %value,%r38; st.param.u32 [%value_out],%value; ret; } lib_a-strcoll.o/0 0 0 644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcoll .visible .func (.param .u32 %value_out) strcoll (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strcoll.c" // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strcoll .visible .func (.param .u32 %value_out) strcoll (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 43 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r27,[%value_in]; } .loc 1 44 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-strcpy.o/ 0 0 0 644 1993 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcpy .visible .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strcpy.c" // BEGIN GLOBAL FUNCTION DEF: strcpy .visible .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; .loc 1 72 8 or.b64 %r48,%r46,%r47; and.b64 %r49,%r48,7; .loc 1 72 6 setp.eq.u64 %r50,%r49,0; @ %r50 bra $L2; .loc 1 66 9 mov.u64 %r33,%r46; bra $L4; $L6: mov.u64 %r33,%r46; $L4: mov.u64 %r31,%r33; mov.u64 %r34,%r47; bra $L3; $L2: .loc 1 79 15 ld.u64 %r24,[%r47]; add.u64 %r51,%r24,-72340172838076673; not.b64 %r52,%r24; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 79 14 setp.ne.u64 %r55,%r54,0; @ %r55 bra $L6; mov.u64 %r42,%r46; $L5: .loc 1 81 40 add.u64 %r47,%r47,8; mov.u64 %r43,%r42; add.u64 %r42,%r42,8; mov.u64 %r33,%r42; .loc 1 81 26 st.u64 [%r43],%r24; .loc 1 79 15 ld.u64 %r24,[%r47]; add.u64 %r56,%r24,-72340172838076673; not.b64 %r57,%r24; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 79 14 setp.eq.u64 %r60,%r59,0; @ %r60 bra $L5; bra $L4; $L3: .loc 1 88 20 ld.s8 %r30,[%r34]; .loc 1 88 18 cvt.u32.u32 %r61,%r30; st.u8 [%r31],%r61; .loc 1 88 10 add.u64 %r31,%r31,1; add.u64 %r34,%r34,1; setp.ne.u32 %r62,%r30,0; @ %r62 bra $L3; .loc 1 92 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-strcspn.o/0 0 0 644 1532 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strcspn .visible .func (.param .u64 %value_out) strcspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strcspn.c" // BEGIN GLOBAL FUNCTION DEF: strcspn .visible .func (.param .u64 %value_out) strcspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u16 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r39; .reg .pred %r40; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 35 10 ld.s8 %r25,[%r30]; setp.ne.u32 %r32,%r25,0; @ %r32 bra $L2; mov.u64 %r29,0; bra $L1; $L8: .loc 1 37 20 mov.u64 %r26,%r31; mov.u32 %r24,%r22; .loc 1 39 7 cvt.u16.u32 %r34,%r25; $L5: cvt.u16.u32 %r33,%r24; setp.ne.u16 %r35,%r33,%r34; @ %r35 bra $L4; .loc 1 47 13 sub.u64 %r29,%r27,%r30; bra $L1; $L4: .loc 1 37 25 add.u64 %r26,%r26,1; .loc 1 37 20 ld.s8 %r24,[%r26]; setp.ne.u32 %r36,%r24,0; @ %r36 bra $L5; bra $L6; $L2: ld.s8 %r22,[%r31]; mov.u64 %r27,%r30; setp.ne.u32 %r40,%r22,0; $L7: @ %r40 bra $L8; $L6: .loc 1 44 9 add.u64 %r27,%r27,1; .loc 1 35 10 ld.s8 %r25,[%r27]; setp.ne.u32 %r39,%r25,0; @ %r39 bra $L7; .loc 1 47 13 sub.u64 %r29,%r27,%r30; $L1: .loc 1 48 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-strdup.o/ 0 0 0 644 1035 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strdup .visible .func (.param .u64 %value_out) strdup (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/strdup.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strdup_r .extern .func (.param .u64 %value_out) _strdup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strdup .visible .func (.param .u64 %value_out) strdup (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r24; .reg .u64 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; .loc 1 10 10 ld.global.u64 %r27,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),_strdup_r,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 11 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } /1236 0 0 0 644 1899 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _strdup_r .visible .func (.param .u64 %value_out) _strdup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strdup_r.c" // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _strdup_r .visible .func (.param .u64 %value_out) _strdup_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 9 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r28,[%value_in]; } .loc 1 9 10 add.u64 %r23,%r28,1; .loc 1 10 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r31,[%value_in]; } .loc 1 11 6 setp.eq.u64 %r32,%r31,0; @ %r32 bra $L1; .loc 1 13 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r23; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r36,[%value_in]; } $L1: .loc 1 16 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /1254 0 0 0 644 26277 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _strerror_r .visible .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/string/strerror.c" // BEGIN GLOBAL FUNCTION DECL: strerror .visible .func (.param .u64 %value_out) strerror (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strerror_l .visible .func (.param .u64 %value_out) strerror_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _user_strerror .extern .func (.param .u64 %value_out) _user_strerror (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN VAR DEF: $LC80 .const .align 1 .u8 $LC80[1] = {0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[16] = {66,97,100,32,102,105,108,101,32,110,117,109,98,101,114,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[12] = {78,111,32,99,104,105,108,100,114,101,110,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[29] = {68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[18] = {78,111,32,109,111,114,101,32,112,114,111,99,101,115,115,101,115,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[17] = {78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[18] = {80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[12] = {66,97,100,32,97,100,100,114,101,115,115,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[24] = {68,101,118,105,99,101,32,111,114,32,114,101,115,111,117,114,99,101,32,98,117,115,121,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[12] = {70,105,108,101,32,101,120,105,115,116,115,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[18] = {67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[15] = {78,111,32,115,117,99,104,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[16] = {78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[13] = {72,111,115,116,32,105,115,32,100,111,119,110,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[31] = {67,111,110,110,101,99,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[15] = {73,115,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[17] = {73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[36] = {78,101,116,119,111,114,107,32,105,110,116,101,114,102,97,99,101,32,105,115,32,110,111,116,32,99,111,110,102,105,103,117,114,101,100,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[30] = {67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,32,98,121,32,110,101,116,119,111,114,107,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[30] = {84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[32] = {70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,118,97,108,117,101,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[23] = {78,111,116,32,97,32,99,104,97,114,97,99,116,101,114,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[15] = {84,101,120,116,32,102,105,108,101,32,98,117,115,121,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[15] = {70,105,108,101,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[20] = {72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[24] = {78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[14] = {78,111,116,32,115,117,112,112,111,114,116,101,100,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[13] = {73,108,108,101,103,97,108,32,115,101,101,107,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[22] = {82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[15] = {84,111,111,32,109,97,110,121,32,108,105,110,107,115,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[47] = {77,97,116,104,101,109,97,116,105,99,115,32,97,114,103,117,109,101,110,116,32,111,117,116,32,111,102,32,100,111,109,97,105,110,32,111,102,32,102,117,110,99,116,105,111,110,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[17] = {82,101,115,117,108,116,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[27] = {78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[19] = {73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[22] = {73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[9] = {68,101,97,100,108,111,99,107,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[23] = {78,101,116,119,111,114,107,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0 }; // BEGIN VAR DEF: $LC47 .const .align 1 .u8 $LC47[8] = {78,111,32,108,111,99,107,0 }; // BEGIN VAR DEF: $LC48 .const .align 1 .u8 $LC48[13] = {78,111,116,32,97,32,115,116,114,101,97,109,0 }; // BEGIN VAR DEF: $LC49 .const .align 1 .u8 $LC49[21] = {83,116,114,101,97,109,32,105,111,99,116,108,32,116,105,109,101,111,117,116,0 }; // BEGIN VAR DEF: $LC50 .const .align 1 .u8 $LC50[20] = {78,111,32,115,116,114,101,97,109,32,114,101,115,111,117,114,99,101,115,0 }; // BEGIN VAR DEF: $LC51 .const .align 1 .u8 $LC51[24] = {86,105,114,116,117,97,108,32,99,105,114,99,117,105,116,32,105,115,32,103,111,110,101,0 }; // BEGIN VAR DEF: $LC52 .const .align 1 .u8 $LC52[15] = {80,114,111,116,111,99,111,108,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC53 .const .align 1 .u8 $LC53[17] = {85,110,107,110,111,119,110,32,112,114,111,116,111,99,111,108,0 }; // BEGIN VAR DEF: $LC54 .const .align 1 .u8 $LC54[19] = {77,117,108,116,105,104,111,112,32,97,116,116,101,109,112,116,101,100,0 }; // BEGIN VAR DEF: $LC55 .const .align 1 .u8 $LC55[12] = {66,97,100,32,109,101,115,115,97,103,101,0 }; // BEGIN VAR DEF: $LC56 .const .align 1 .u8 $LC56[25] = {70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0 }; // BEGIN VAR DEF: $LC57 .const .align 1 .u8 $LC57[20] = {68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0 }; // BEGIN VAR DEF: $LC58 .const .align 1 .u8 $LC58[27] = {70,105,108,101,32,111,114,32,112,97,116,104,32,110,97,109,101,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC59 .const .align 1 .u8 $LC59[24] = {84,111,111,32,109,97,110,121,32,115,121,109,98,111,108,105,99,32,108,105,110,107,115,0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {83,117,99,99,101,115,115,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[10] = {78,111,116,32,111,119,110,101,114,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[26] = {78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[16] = {78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[24] = {73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[10] = {73,47,79,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[26] = {78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[18] = {65,114,103,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[18] = {69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[25] = {83,111,99,107,101,116,32,97,108,114,101,97,100,121,32,99,111,110,110,101,99,116,101,100,0 }; // BEGIN VAR DEF: $LC60 .const .align 1 .u8 $LC60[26] = {78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0 }; // BEGIN VAR DEF: $LC61 .const .align 1 .u8 $LC61[8] = {78,111,32,100,97,116,97,0 }; // BEGIN VAR DEF: $LC62 .const .align 1 .u8 $LC62[48] = {65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,32,102,97,109,105,108,121,0 }; // BEGIN VAR DEF: $LC63 .const .align 1 .u8 $LC63[31] = {80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0 }; // BEGIN VAR DEF: $LC64 .const .align 1 .u8 $LC64[31] = {83,111,99,107,101,116,32,111,112,101,114,97,116,105,111,110,32,111,110,32,110,111,110,45,115,111,99,107,101,116,0 }; // BEGIN VAR DEF: $LC65 .const .align 1 .u8 $LC65[23] = {80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0 }; // BEGIN VAR DEF: $LC66 .const .align 1 .u8 $LC66[19] = {67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0 }; // BEGIN VAR DEF: $LC67 .const .align 1 .u8 $LC67[25] = {67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0 }; // BEGIN VAR DEF: $LC68 .const .align 1 .u8 $LC68[23] = {65,100,100,114,101,115,115,32,97,108,114,101,97,100,121,32,105,110,32,117,115,101,0 }; // BEGIN VAR DEF: $LC69 .const .align 1 .u8 $LC69[22] = {65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0 }; // BEGIN VAR DEF: $LC70 .const .align 1 .u8 $LC70[33] = {83,111,102,116,119,97,114,101,32,99,97,117,115,101,100,32,99,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,0 }; // BEGIN VAR DEF: $LC71 .const .align 1 .u8 $LC71[24] = {83,111,99,107,101,116,32,105,115,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0 }; // BEGIN VAR DEF: $LC72 .const .align 1 .u8 $LC72[28] = {83,111,99,107,101,116,32,105,115,32,97,108,114,101,97,100,121,32,99,111,110,110,101,99,116,101,100,0 }; // BEGIN VAR DEF: $LC73 .const .align 1 .u8 $LC73[19] = {79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0 }; // BEGIN VAR DEF: $LC74 .const .align 1 .u8 $LC74[22] = {83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0 }; // BEGIN VAR DEF: $LC75 .const .align 1 .u8 $LC75[20] = {80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0 }; // BEGIN VAR DEF: $LC76 .const .align 1 .u8 $LC76[34] = {79,112,101,114,97,116,105,111,110,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,111,110,32,115,111,99,107,101,116,0 }; // BEGIN VAR DEF: $LC77 .const .align 1 .u8 $LC77[38] = {86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,101,102,105,110,101,100,32,100,97,116,97,32,116,121,112,101,0 }; // BEGIN VAR DEF: $LC78 .const .align 1 .u8 $LC78[17] = {77,101,115,115,97,103,101,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC79 .const .align 1 .u8 $LC79[21] = {67,111,110,110,101,99,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0 }; // BEGIN GLOBAL FUNCTION DEF: _strerror_r .visible .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r33; .reg .pred %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r114; .reg .pred %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r131; .reg .pred %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r137; .reg .u64 %r141; .reg .pred %r142; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u32 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 396 3 setp.eq.u32 %r27,%r24,62; @ %r27 bra $L35; setp.gt.s32 %r28,%r24,62; @ %r28 bra $L3; setp.eq.u32 %r29,%r24,21; @ %r29 bra $L36; setp.gt.s32 %r30,%r24,21; @ %r30 bra $L4; setp.eq.u32 %r31,%r24,10; @ %r31 bra $L37; setp.gt.s32 %r32,%r24,10; @ %r32 bra $L5; setp.eq.u32 %r33,%r24,5; @ %r33 bra $L38; setp.gt.s32 %r34,%r24,5; @ %r34 bra $L6; setp.eq.u32 %r35,%r24,2; @ %r35 bra $L39; setp.gt.s32 %r36,%r24,2; @ %r36 bra $L7; setp.eq.u32 %r37,%r24,0; @ %r37 bra $L40; setp.eq.u32 %r38,%r24,1; @ %r38 bra $L41; bra $L8; $L7: setp.eq.u32 %r39,%r24,3; @ %r39 bra $L42; setp.eq.u32 %r40,%r24,4; @ %r40 bra $L43; bra $L8; $L6: setp.eq.u32 %r41,%r24,8; @ %r41 bra $L44; setp.gt.s32 %r42,%r24,8; @ %r42 bra $L9; setp.eq.u32 %r43,%r24,6; @ %r43 bra $L45; setp.eq.u32 %r44,%r24,7; @ %r44 bra $L46; bra $L8; $L9: setp.eq.u32 %r45,%r24,9; @ %r45 bra $L47; bra $L8; $L5: setp.eq.u32 %r46,%r24,16; @ %r46 bra $L48; setp.gt.s32 %r47,%r24,16; @ %r47 bra $L10; setp.eq.u32 %r48,%r24,13; @ %r48 bra $L49; setp.gt.s32 %r49,%r24,13; @ %r49 bra $L11; setp.eq.u32 %r50,%r24,11; @ %r50 bra $L50; setp.eq.u32 %r51,%r24,12; @ %r51 bra $L51; bra $L8; $L11: setp.eq.u32 %r52,%r24,14; @ %r52 bra $L52; bra $L8; $L10: setp.eq.u32 %r53,%r24,19; @ %r53 bra $L53; setp.gt.s32 %r54,%r24,19; @ %r54 bra $L12; setp.eq.u32 %r55,%r24,17; @ %r55 bra $L54; setp.eq.u32 %r56,%r24,18; @ %r56 bra $L55; bra $L8; $L12: setp.eq.u32 %r57,%r24,20; @ %r57 bra $L56; bra $L8; $L4: setp.eq.u32 %r58,%r24,31; @ %r58 bra $L57; setp.gt.s32 %r59,%r24,31; @ %r59 bra $L13; setp.eq.u32 %r60,%r24,26; @ %r60 bra $L58; setp.gt.s32 %r61,%r24,26; @ %r61 bra $L14; setp.eq.u32 %r62,%r24,24; @ %r62 bra $L59; setp.gt.s32 %r63,%r24,24; @ %r63 bra $L15; setp.eq.u32 %r64,%r24,22; @ %r64 bra $L60; setp.eq.u32 %r65,%r24,23; @ %r65 bra $L61; bra $L8; $L15: setp.eq.u32 %r66,%r24,25; @ %r66 bra $L62; bra $L8; $L14: setp.eq.u32 %r67,%r24,29; @ %r67 bra $L63; setp.gt.s32 %r68,%r24,29; @ %r68 bra $L16; setp.eq.u32 %r69,%r24,27; @ %r69 bra $L64; setp.eq.u32 %r70,%r24,28; @ %r70 bra $L65; bra $L8; $L16: setp.eq.u32 %r71,%r24,30; @ %r71 bra $L66; bra $L8; $L13: setp.eq.u32 %r72,%r24,36; @ %r72 bra $L67; setp.gt.s32 %r73,%r24,36; @ %r73 bra $L17; setp.eq.u32 %r74,%r24,34; @ %r74 bra $L68; setp.gt.s32 %r75,%r24,34; @ %r75 bra $L18; setp.eq.u32 %r76,%r24,32; @ %r76 bra $L69; setp.eq.u32 %r77,%r24,33; @ %r77 bra $L70; bra $L8; $L18: setp.eq.u32 %r78,%r24,35; @ %r78 bra $L71; bra $L8; $L17: setp.eq.u32 %r79,%r24,60; @ %r79 bra $L72; setp.eq.u32 %r80,%r24,61; @ %r80 bra $L73; setp.eq.u32 %r81,%r24,45; @ %r81 bra $L74; setp.eq.u32 %r82,%r24,46; @ %r82 bra $L75; bra $L8; $L3: setp.eq.u32 %r83,%r24,114; @ %r83 bra $L76; setp.gt.s32 %r84,%r24,114; @ %r84 bra $L19; setp.eq.u32 %r85,%r24,95; @ %r85 bra $L77; setp.gt.s32 %r86,%r24,95; @ %r86 bra $L20; setp.eq.u32 %r87,%r24,77; @ %r87 bra $L78; setp.gt.s32 %r88,%r24,77; @ %r88 bra $L21; setp.eq.u32 %r89,%r24,71; @ %r89 bra $L79; setp.gt.s32 %r90,%r24,71; @ %r90 bra $L22; setp.eq.u32 %r91,%r24,63; @ %r91 bra $L80; setp.eq.u32 %r92,%r24,67; @ %r92 bra $L81; bra $L8; $L22: setp.eq.u32 %r93,%r24,74; @ %r93 bra $L82; bra $L8; $L21: setp.eq.u32 %r94,%r24,91; @ %r94 bra $L83; setp.gt.s32 %r95,%r24,91; @ %r95 bra $L23; setp.eq.u32 %r96,%r24,88; @ %r96 bra $L84; setp.eq.u32 %r97,%r24,90; @ %r97 bra $L85; bra $L8; $L23: setp.eq.u32 %r98,%r24,92; @ %r98 bra $L86; bra $L8; $L20: setp.eq.u32 %r99,%r24,108; @ %r99 bra $L87; setp.gt.s32 %r100,%r24,108; @ %r100 bra $L24; setp.eq.u32 %r101,%r24,106; @ %r101 bra $L88; setp.gt.s32 %r102,%r24,106; @ %r102 bra $L25; setp.eq.u32 %r103,%r24,104; @ %r103 bra $L89; setp.eq.u32 %r104,%r24,105; @ %r104 bra $L90; bra $L8; $L25: setp.eq.u32 %r105,%r24,107; @ %r105 bra $L91; bra $L8; $L24: setp.eq.u32 %r106,%r24,112; @ %r106 bra $L92; setp.gt.s32 %r107,%r24,112; @ %r107 bra $L26; setp.eq.u32 %r108,%r24,109; @ %r108 bra $L93; setp.eq.u32 %r109,%r24,111; @ %r109 bra $L94; bra $L8; $L26: setp.eq.u32 %r110,%r24,113; @ %r110 bra $L95; bra $L8; $L19: setp.eq.u32 %r111,%r24,125; @ %r111 bra $L96; setp.gt.s32 %r112,%r24,125; @ %r112 bra $L27; setp.eq.u32 %r113,%r24,119; @ %r113 bra $L97; setp.gt.s32 %r114,%r24,119; @ %r114 bra $L28; setp.eq.u32 %r115,%r24,117; @ %r115 bra $L98; setp.gt.s32 %r116,%r24,117; @ %r116 bra $L29; setp.eq.u32 %r117,%r24,115; @ %r117 bra $L99; setp.eq.u32 %r118,%r24,116; @ %r118 bra $L100; bra $L8; $L29: setp.eq.u32 %r119,%r24,118; @ %r119 bra $L101; bra $L8; $L28: setp.eq.u32 %r120,%r24,122; @ %r120 bra $L102; setp.gt.s32 %r121,%r24,122; @ %r121 bra $L30; setp.eq.u32 %r122,%r24,120; @ %r122 bra $L103; setp.eq.u32 %r123,%r24,121; @ %r123 bra $L104; bra $L8; $L30: setp.eq.u32 %r124,%r24,123; @ %r124 bra $L105; bra $L8; $L27: setp.eq.u32 %r125,%r24,138; @ %r125 bra $L106; setp.gt.s32 %r126,%r24,138; @ %r126 bra $L31; setp.eq.u32 %r127,%r24,128; @ %r127 bra $L107; setp.gt.s32 %r128,%r24,128; @ %r128 bra $L32; setp.eq.u32 %r129,%r24,126; @ %r129 bra $L108; setp.eq.u32 %r130,%r24,127; @ %r130 bra $L109; bra $L8; $L32: setp.eq.u32 %r131,%r24,134; @ %r131 bra $L110; bra $L8; $L31: setp.eq.u32 %r132,%r24,141; @ %r132 bra $L111; setp.gt.s32 %r133,%r24,141; @ %r133 bra $L33; setp.eq.u32 %r134,%r24,139; @ %r134 bra $L112; setp.eq.u32 %r135,%r24,140; @ %r135 bra $L113; bra $L8; $L33: setp.eq.u32 %r136,%r24,142; @ %r136 bra $L114; $L8: .loc 1 884 10 setp.ne.u64 %r137,%r26,0; .loc 1 885 16 selp.u64 %r26,%r26,%r23,%r137; .loc 1 886 20 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),_user_strerror,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r141,[%value_in]; } mov.u64 %r22,%r141; .loc 1 886 10 setp.ne.u64 %r142,%r22,0; @ %r142 bra $L1; .loc 1 887 15 cvta.const.u64 %r22,$LC80; bra $L1; $L35: .loc 1 650 13 cvta.const.u64 %r22,$LC49; bra $L1; $L36: .loc 1 525 13 cvta.const.u64 %r22,$LC24; bra $L1; $L37: .loc 1 455 13 cvta.const.u64 %r22,$LC11; bra $L1; $L38: .loc 1 424 13 cvta.const.u64 %r22,$LC5; bra $L1; $L39: .loc 1 409 13 cvta.const.u64 %r22,$LC2; bra $L1; $L40: .loc 1 399 13 cvta.const.u64 %r22,$LC0; bra $L1; $L41: .loc 1 396 3 cvta.const.u64 %r22,$LC1; bra $L1; $L42: .loc 1 414 13 cvta.const.u64 %r22,$LC3; bra $L1; $L43: .loc 1 419 13 cvta.const.u64 %r22,$LC4; bra $L1; $L44: .loc 1 440 13 cvta.const.u64 %r22,$LC8; bra $L1; $L45: .loc 1 430 13 cvta.const.u64 %r22,$LC6; bra $L1; $L46: .loc 1 435 13 cvta.const.u64 %r22,$LC7; bra $L1; $L47: .loc 1 450 13 cvta.const.u64 %r22,$LC10; bra $L1; $L48: .loc 1 490 13 cvta.const.u64 %r22,$LC17; bra $L1; $L49: .loc 1 475 13 cvta.const.u64 %r22,$LC15; bra $L1; $L50: .loc 1 465 13 cvta.const.u64 %r22,$LC13; bra $L1; $L51: .loc 1 470 13 cvta.const.u64 %r22,$LC14; bra $L1; $L52: .loc 1 480 13 cvta.const.u64 %r22,$LC16; bra $L1; $L53: .loc 1 505 13 cvta.const.u64 %r22,$LC20; bra $L1; $L54: .loc 1 495 13 cvta.const.u64 %r22,$LC18; bra $L1; $L55: .loc 1 500 13 cvta.const.u64 %r22,$LC19; bra $L1; $L56: .loc 1 510 13 cvta.const.u64 %r22,$LC21; bra $L1; $L57: .loc 1 595 13 cvta.const.u64 %r22,$LC38; bra $L1; $L58: .loc 1 560 13 cvta.const.u64 %r22,$LC31; bra $L1; $L59: .loc 1 550 13 cvta.const.u64 %r22,$LC29; bra $L1; $L60: .loc 1 530 13 cvta.const.u64 %r22,$LC25; bra $L1; $L61: .loc 1 545 13 cvta.const.u64 %r22,$LC28; bra $L1; $L62: .loc 1 555 13 cvta.const.u64 %r22,$LC30; bra $L1; $L63: .loc 1 585 13 cvta.const.u64 %r22,$LC36; bra $L1; $L64: .loc 1 565 13 cvta.const.u64 %r22,$LC32; bra $L1; $L65: .loc 1 575 13 cvta.const.u64 %r22,$LC34; bra $L1; $L66: .loc 1 590 13 cvta.const.u64 %r22,$LC37; bra $L1; $L67: .loc 1 620 13 cvta.const.u64 %r22,$LC43; bra $L1; $L68: .loc 1 610 13 cvta.const.u64 %r22,$LC41; bra $L1; $L69: .loc 1 600 13 cvta.const.u64 %r22,$LC39; bra $L1; $L70: .loc 1 605 13 cvta.const.u64 %r22,$LC40; bra $L1; $L71: .loc 1 615 13 cvta.const.u64 %r22,$LC42; bra $L1; $L72: .loc 1 645 13 cvta.const.u64 %r22,$LC48; bra $L1; $L73: .loc 1 770 13 cvta.const.u64 %r22,$LC61; bra $L1; $L74: .loc 1 630 13 cvta.const.u64 %r22,$LC45; bra $L1; $L75: .loc 1 640 13 cvta.const.u64 %r22,$LC47; bra $L1; $L76: .loc 1 635 13 cvta.const.u64 %r22,$LC46; bra $L1; $L77: .loc 1 865 15 cvta.const.u64 %r22,$LC76; bra $L1; $L78: .loc 1 710 13 cvta.const.u64 %r22,$LC55; bra $L1; $L79: .loc 1 695 13 cvta.const.u64 %r22,$LC52; bra $L1; $L80: .loc 1 655 13 cvta.const.u64 %r22,$LC50; bra $L1; $L81: .loc 1 675 13 cvta.const.u64 %r22,$LC51; bra $L1; $L82: .loc 1 705 13 cvta.const.u64 %r22,$LC54; bra $L1; $L83: .loc 1 755 13 cvta.const.u64 %r22,$LC58; bra $L1; $L84: .loc 1 740 13 cvta.const.u64 %r22,$LC56; bra $L1; $L85: .loc 1 750 13 cvta.const.u64 %r22,$LC57; bra $L1; $L86: .loc 1 760 13 cvta.const.u64 %r22,$LC59; bra $L1; $L87: .loc 1 785 13 cvta.const.u64 %r22,$LC64; bra $L1; $L88: .loc 1 775 13 cvta.const.u64 %r22,$LC62; bra $L1; $L89: .loc 1 805 13 cvta.const.u64 %r22,$LC67; bra $L1; $L90: .loc 1 765 13 cvta.const.u64 %r22,$LC60; bra $L1; $L91: .loc 1 780 13 cvta.const.u64 %r22,$LC63; bra $L1; $L92: .loc 1 810 13 cvta.const.u64 %r22,$LC68; bra $L1; $L93: .loc 1 790 13 cvta.const.u64 %r22,$LC65; bra $L1; $L94: .loc 1 800 13 cvta.const.u64 %r22,$LC66; bra $L1; $L95: .loc 1 820 13 cvta.const.u64 %r22,$LC70; bra $L1; $L96: .loc 1 815 13 cvta.const.u64 %r22,$LC69; bra $L1; $L97: .loc 1 520 13 cvta.const.u64 %r22,$LC23; bra $L1; $L98: .loc 1 515 13 cvta.const.u64 %r22,$LC22; bra $L1; $L99: .loc 1 535 13 cvta.const.u64 %r22,$LC26; bra $L1; $L100: .loc 1 880 15 cvta.const.u64 %r22,$LC79; bra $L1; $L101: .loc 1 570 13 cvta.const.u64 %r22,$LC33; bra $L1; $L102: .loc 1 875 15 cvta.const.u64 %r22,$LC78; bra $L1; $L103: .loc 1 445 13 cvta.const.u64 %r22,$LC9; bra $L1; $L104: .loc 1 460 13 cvta.const.u64 %r22,$LC12; bra $L1; $L105: .loc 1 700 13 cvta.const.u64 %r22,$LC53; bra $L1; $L106: .loc 1 625 13 cvta.const.u64 %r22,$LC44; bra $L1; $L107: .loc 1 830 15 cvta.const.u64 %r22,$LC71; bra $L1; $L108: .loc 1 540 13 cvta.const.u64 %r22,$LC27; bra $L1; $L109: .loc 1 840 15 cvta.const.u64 %r22,$LC72; bra $L1; $L110: .loc 1 580 13 cvta.const.u64 %r22,$LC35; bra $L1; $L111: .loc 1 850 15 cvta.const.u64 %r22,$LC74; bra $L1; $L112: .loc 1 870 13 cvta.const.u64 %r22,$LC77; bra $L1; $L113: .loc 1 845 15 cvta.const.u64 %r22,$LC73; bra $L1; $L114: .loc 1 855 15 cvta.const.u64 %r22,$LC75; $L1: .loc 1 892 1 mov.u64 %value,%r22; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strerror .visible .func (.param .u64 %value_out) strerror (.param .u32 %in_ar0) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r24; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; mov.u32 %r24,%ar0; .loc 1 897 10 ld.global.u64 %r29,[_impure_ptr]; mov.u64 %r28,0; mov.u32 %r27,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 898 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strerror_l .visible .func (.param .u64 %value_out) strerror_l (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; mov.u32 %r24,%ar0; .loc 1 904 10 ld.global.u64 %r30,[_impure_ptr]; mov.u64 %r29,0; mov.u32 %r28,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 905 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /1272 0 0 0 644 2325 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strerror_r .visible .func (.param .u64 %value_out) strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strerror_r.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strerror_r .extern .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strerror_r .visible .func (.param .u64 %value_out) strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .pred %r36; .reg .u64 %r39; mov.u32 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 72 17 ld.global.u64 %r32,[_impure_ptr]; mov.u64 %r31,0; mov.u32 %r30,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } mov.u64 %r24,%r33; .loc 1 74 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r35,[%value_in]; } .loc 1 74 6 setp.ge.u64 %r36,%r35,%r27; @ %r36 bra $L1; .loc 1 76 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r39,[%value_in]; } mov.u64 %r24,%r39; $L1: .loc 1 77 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } /1292 0 0 0 644 69473 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/time/strftime.c" // BEGIN FUNCTION DECL: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strftime .visible .func (.param .u64 %value_out) strftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strftime_l .visible .func (.param .u64 %value_out) strftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _C_time_locale .extern .const .align 8 .u64 _C_time_locale[63]; // BEGIN GLOBAL VAR DECL: _tzname .extern .global .align 8 .u64 _tzname[2]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: strtoul .extern .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: abs .extern .func (.param .u32 %value_out) abs (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sniprintf .extern .func (.param .u32 %value_out) sniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DECL: labs .extern .func (.param .u64 %value_out) labs (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[8] = {89,45,37,109,45,37,100,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[5] = {37,46,50,100,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[4] = {46,42,117,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[5] = {37,46,51,100,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[10] = {37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[5] = {37,108,108,100,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[15] = {37,46,50,100,58,37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[12] = {37,43,48,51,108,100,37,46,50,108,100,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[7] = {37,115,37,46,42,100,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[8] = {37,115,37,48,46,42,100,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {43,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[2] = {45,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[4] = {37,50,100,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[15] = {37,46,50,100,47,37,46,50,100,47,37,46,50,100,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[4] = {37,108,117,0 }; // BEGIN FUNCTION DEF: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r34; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r56; .reg .u32 %r58; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u16 %r87; mov.u32 %r43,%ar0; mov.u32 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 350 14 setp.lt.s32 %r46,%r43,0; selp.u32 %r23,1900,-100,%r46; add.u32 %r24,%r23,%r43; and.b32 %r47,%r43,3; setp.ne.u32 %r48,%r47,0; @ %r48 bra $L3; rem.s32 %r50,%r24,100; setp.ne.u32 %r56,%r50,0; @ %r56 bra $L10; $L3: rem.s32 %r58,%r24,400; set.u32.eq.u32 %r65,%r58,0; neg.s32 %r31,%r65; bra $L4; $L10: mov.u32 %r31,1; $L4: .loc 1 356 11 shl.b32 %r67,%r45,4; add.u32 %r68,%r44,%r44; vadd.u32.u32.u32.add %r34,%r31,%r67,%r68; .loc 1 356 3 setp.gt.s32 %r70,%r34,33; @ %r70 bra $L5; setp.ge.s32 %r71,%r34,0; @ %r71 bra $L6; .loc 1 385 10 mov.u32 %r42,0; bra $L1; $L8: .loc 1 356 3 mov.u64 %r73,11822082166292481; shr.u64 %r72,%r73,%r40; cvt.u32.u64 %r74,%r72; cvt.u16.u8 %r87,%r74; mov.u16 %r76,%r87; and.b16 %r75,%r76,1; cvt.u32.u16 %r77,%r75; .loc 1 370 14 cvt.u32.u8 %r42,%r77; bra $L1; $L6: .loc 1 356 3 mov.u64 %r79,13690420227; shr.u64 %r78,%r79,%r34; cvt.u32.u64 %r80,%r78; cvt.u16.u8 %r87,%r80; mov.u16 %r82,%r87; and.b16 %r81,%r82,1; cvt.u32.u16 %r83,%r81; cvt.u32.u8 %r84,%r83; neg.s32 %r42,%r84; bra $L1; $L5: add.u32 %r40,%r34,-5794; setp.le.u32 %r85,%r40,53; @ %r85 bra $L8; .loc 1 385 10 mov.u32 %r42,0; $L1: .loc 1 387 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,32; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r25; .reg .u64 %r32; .reg .u64 %r35; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r45; .reg .u32 %r47; .reg .u64 %r49; .reg .u64 %r53; .reg .u64 %r55; .reg .u64 %r60; .reg .u64 %r63; .reg .u32 %r65; .reg .u64 %r66; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r79; .reg .u64 %r85; .reg .u64 %r86; .reg .u32 %r89; .reg .u64 %r92; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r111; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r137; .reg .u32 %r140; .reg .u64 %r151; .reg .u64 %r159; .reg .u32 %r163; .reg .u64 %r166; .reg .u64 %r192; .reg .u32 %r195; .reg .u64 %r203; .reg .u32 %r205; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r272; .reg .u32 %r286; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .u32 %r297; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r328; .reg .u64 %r333; .reg .u64 %r344; .reg .u64 %r357; .reg .u64 %r360; .reg .u32 %r361; .reg .u32 %r369; .reg .u32 %r375; .reg .u32 %r376; .reg .u32 %r377; .reg .u64 %r378; .reg .u32 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u32 %r383; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r388; .reg .u32 %r393; .reg .u32 %r394; .reg .u64 %r397; .reg .u64 %r400; .reg .u64 %r408; .reg .u64 %r415; .reg .u64 %r419; .reg .u64 %r423; .reg .u64 %r424; .reg .u64 %r425; .reg .u64 %r426; .reg .u64 %r427; .reg .pred %r429; .reg .u64 %r430; .reg .u32 %r431; .reg .u32 %r432; .reg .u16 %r433; .reg .u32 %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .u32 %r438; .reg .u32 %r439; .reg .u16 %r440; .reg .u16 %r441; .reg .u16 %r442; .reg .u32 %r443; .reg .u16 %r444; .reg .pred %r445; .reg .pred %r446; .reg .u32 %r447; .reg .u16 %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u32 %r453; .reg .u32 %r454; .reg .u16 %r455; .reg .u16 %r456; .reg .u16 %r457; .reg .u32 %r458; .reg .u16 %r459; .reg .pred %r460; .reg .u16 %r462; .reg .u16 %r463; .reg .u32 %r464; .reg .u16 %r465; .reg .pred %r466; .reg .u32 %r469; .reg .u64 %r470; .reg .u16 %r471; .reg .pred %r472; .reg .pred %r474; .reg .u16 %r475; .reg .pred %r476; .reg .pred %r478; .reg .pred %r480; .reg .pred %r482; .reg .pred %r484; .reg .pred %r486; .reg .pred %r488; .reg .pred %r490; .reg .pred %r492; .reg .pred %r494; .reg .pred %r496; .reg .pred %r498; .reg .pred %r500; .reg .pred %r502; .reg .pred %r504; .reg .pred %r506; .reg .pred %r508; .reg .pred %r510; .reg .pred %r512; .reg .pred %r514; .reg .pred %r516; .reg .pred %r518; .reg .pred %r520; .reg .pred %r522; .reg .pred %r524; .reg .pred %r526; .reg .pred %r528; .reg .pred %r530; .reg .pred %r532; .reg .pred %r534; .reg .pred %r536; .reg .pred %r538; .reg .pred %r540; .reg .pred %r542; .reg .pred %r544; .reg .u16 %r546; .reg .u32 %r548; .reg .u16 %r549; .reg .pred %r550; .reg .pred %r552; .reg .pred %r554; .reg .pred %r556; .reg .pred %r558; .reg .pred %r560; .reg .pred %r562; .reg .pred %r564; .reg .pred %r566; .reg .pred %r568; .reg .pred %r570; .reg .pred %r572; .reg .pred %r574; .reg .pred %r576; .reg .pred %r578; .reg .pred %r580; .reg .pred %r582; .reg .pred %r584; .reg .pred %r586; .reg .u64 %r587; .reg .u64 %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u64 %r591; .reg .u64 %r593; .reg .pred %r594; .reg .pred %r595; .reg .pred %r596; .reg .u64 %r597; .reg .u64 %r598; .reg .u64 %r599; .reg .u32 %r600; .reg .pred %r601; .reg .u64 %r602; .reg .u64 %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .u64 %r606; .reg .u64 %r609; .reg .pred %r610; .reg .pred %r611; .reg .pred %r612; .reg .u64 %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u32 %r616; .reg .pred %r617; .reg .u64 %r618; .reg .u64 %r619; .reg .u64 %r620; .reg .u64 %r621; .reg .u64 %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .u64 %r629; .reg .u32 %r630; .reg .pred %r631; .reg .u64 %r632; .reg .u64 %r633; .reg .u64 %r634; .reg .u64 %r635; .reg .u64 %r636; .reg .u64 %r638; .reg .pred %r639; .reg .pred %r640; .reg .pred %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .u32 %r645; .reg .pred %r646; .reg .u64 %r647; .reg .u64 %r649; .reg .u64 %r650; .reg .u64 %r652; .reg .u64 %r653; .reg .u64 %r655; .reg .u64 %r656; .reg .u64 %r658; .reg .u16 %r659; .reg .u32 %r660; .reg .pred %r661; .reg .u64 %r666; .reg .u64 %r667; .reg .u64 %r668; .reg .pred %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u32 %r673; .reg .pred %r675; .reg .u32 %r677; .reg .pred %r678; .reg .u32 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u32 %r683; .reg .u32 %r684; .reg .u32 %r685; .reg .u32 %r686; .reg .u16 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .u16 %r690; .reg .u16 %r691; .reg .u16 %r692; .reg .u32 %r693; .reg .u16 %r694; .reg .pred %r695; .reg .pred %r696; .reg .u64 %r700; .reg .u64 %r701; .reg .u32 %r702; .reg .pred %r704; .reg .u64 %r705; .reg .pred %r706; .reg .pred %r708; .reg .u64 %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .pred %r716; .reg .u64 %r717; .reg .pred %r718; .reg .pred %r719; .reg .u32 %r721; .reg .u32 %r722; .reg .u64 %r725; .reg .u64 %r726; .reg .u64 %r727; .reg .u32 %r728; .reg .u32 %r729; .reg .u32 %r730; .reg .u32 %r731; .reg .pred %r733; .reg .u64 %r734; .reg .pred %r735; .reg .u32 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u32 %r740; .reg .u64 %r742; .reg .u64 %r743; .reg .u32 %r745; .reg .pred %r747; .reg .u64 %r749; .reg .u64 %r751; .reg .u64 %r752; .reg .u64 %r757; .reg .u64 %r758; .reg .u64 %r759; .reg .pred %r760; .reg .u64 %r761; .reg .u32 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .pred %r768; .reg .u32 %r770; .reg .u32 %r771; .reg .pred %r772; .reg .u32 %r773; .reg .pred %r774; .reg .pred %r775; .reg .u32 %r776; .reg .pred %r777; .reg .u64 %r780; .reg .u64 %r781; .reg .u64 %r782; .reg .u32 %r783; .reg .u32 %r785; .reg .u32 %r786; .reg .u32 %r790; .reg .u32 %r791; .reg .pred %r793; .reg .u64 %r794; .reg .pred %r795; .reg .u32 %r796; .reg .u32 %r802; .reg .u32 %r803; .reg .u32 %r804; .reg .pred %r805; .reg .u32 %r807; .reg .u32 %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u32 %r813; .reg .u32 %r814; .reg .pred %r815; .reg .u32 %r816; .reg .pred %r817; .reg .u32 %r818; .reg .u32 %r819; .reg .u32 %r820; .reg .u16 %r821; .reg .u16 %r822; .reg .u16 %r823; .reg .u32 %r824; .reg .u16 %r825; .reg .pred %r826; .reg .pred %r827; .reg .pred %r828; .reg .pred %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .u16 %r834; .reg .u32 %r835; .reg .u32 %r836; .reg .u32 %r837; .reg .u32 %r838; .reg .u32 %r839; .reg .u16 %r840; .reg .u16 %r841; .reg .u16 %r842; .reg .u32 %r843; .reg .u16 %r844; .reg .pred %r845; .reg .u32 %r846; .reg .pred %r847; .reg .u32 %r848; .reg .pred %r849; .reg .u32 %r850; .reg .u64 %r852; .reg .u64 %r853; .reg .u64 %r857; .reg .u64 %r858; .reg .u32 %r859; .reg .pred %r861; .reg .u64 %r862; .reg .pred %r863; .reg .u64 %r867; .reg .u64 %r868; .reg .u32 %r869; .reg .pred %r871; .reg .u64 %r872; .reg .pred %r873; .reg .u16 %r874; .reg .pred %r875; .reg .u64 %r879; .reg .u64 %r880; .reg .u32 %r881; .reg .pred %r883; .reg .u64 %r884; .reg .pred %r885; .reg .u64 %r888; .reg .u64 %r889; .reg .u64 %r890; .reg .u32 %r891; .reg .u32 %r892; .reg .u32 %r893; .reg .pred %r895; .reg .u64 %r896; .reg .pred %r897; .reg .u64 %r900; .reg .u64 %r901; .reg .u64 %r902; .reg .u32 %r903; .reg .u32 %r904; .reg .u32 %r905; .reg .pred %r907; .reg .u64 %r908; .reg .pred %r909; .reg .u64 %r912; .reg .u64 %r913; .reg .u64 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .pred %r918; .reg .u64 %r919; .reg .pred %r920; .reg .pred %r922; .reg .u64 %r923; .reg .u32 %r924; .reg .u64 %r925; .reg .u32 %r927; .reg .u32 %r928; .reg .u32 %r929; .reg .u64 %r930; .reg .u64 %r931; .reg .u64 %r932; .reg .u64 %r933; .reg .u64 %r936; .reg .pred %r937; .reg .pred %r938; .reg .pred %r939; .reg .u64 %r940; .reg .u64 %r941; .reg .u16 %r942; .reg .u32 %r943; .reg .pred %r944; .reg .u32 %r945; .reg .u64 %r946; .reg .u64 %r949; .reg .u16 %r952; .reg .u16 %r954; .reg .pred %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .u64 %r958; .reg .u32 %r959; .reg .pred %r960; .reg .u64 %r963; .reg .u64 %r964; .reg .u64 %r965; .reg .u32 %r966; .reg .u32 %r967; .reg .u32 %r968; .reg .pred %r970; .reg .u64 %r971; .reg .pred %r972; .reg .u32 %r973; .reg .pred %r974; .reg .pred %r975; .reg .u64 %r976; .reg .u32 %r978; .reg .u32 %r979; .reg .u32 %r980; .reg .u64 %r981; .reg .u64 %r983; .reg .u64 %r984; .reg .u64 %r985; .reg .u64 %r986; .reg .u64 %r988; .reg .u64 %r991; .reg .u64 %r992; .reg .u64 %r993; .reg .u64 %r994; .reg .u64 %r995; .reg .u64 %r999; .reg .u64 %r1000; .reg .u64 %r1001; .reg .u64 %r1002; .reg .u32 %r1003; .reg .u32 %r1005; .reg .u64 %r1006; .reg .u64 %r1007; .reg .u32 %r1008; .reg .u32 %r1010; .reg .u64 %r1011; .reg .u64 %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .u64 %r1015; .reg .u64 %r1016; .reg .u64 %r1017; .reg .u64 %r1018; .reg .u64 %r1020; .reg .u64 %r1021; .reg .u64 %r1022; .reg .u64 %r1023; .reg .u64 %r1024; .reg .u64 %r1026; .reg .u64 %r1027; .reg .u64 %r1028; .reg .u64 %r1029; .reg .u64 %r1030; .reg .u64 %r1032; .reg .u64 %r1033; .reg .u64 %r1034; .reg .u64 %r1035; .reg .u64 %r1036; .reg .u64 %r1037; .reg .u32 %r1038; .reg .pred %r1040; .reg .u64 %r1041; .reg .pred %r1042; .reg .u64 %r1045; .reg .u64 %r1046; .reg .u64 %r1047; .reg .u32 %r1048; .reg .u32 %r1049; .reg .pred %r1051; .reg .u64 %r1052; .reg .pred %r1053; .reg .pred %r1055; .reg .u64 %r1056; .reg .u32 %r1057; .reg .u64 %r1060; .reg .u64 %r1061; .reg .u64 %r1062; .reg .u32 %r1063; .reg .u32 %r1064; .reg .u32 %r1065; .reg .u32 %r1066; .reg .pred %r1068; .reg .u64 %r1069; .reg .pred %r1070; .reg .pred %r1072; .reg .pred %r1073; .reg .u32 %r1074; .reg .u32 %r1075; .reg .u16 %r1076; .reg .u16 %r1077; .reg .u64 %r1080; .reg .u64 %r1081; .reg .u64 %r1082; .reg .u32 %r1083; .reg .u32 %r1084; .reg .u32 %r1085; .reg .u32 %r1086; .reg .u32 %r1088; .reg .u32 %r1089; .reg .pred %r1091; .reg .u64 %r1092; .reg .pred %r1093; .reg .u32 %r1097; .reg .pred %r1098; .reg .pred %r1099; .reg .pred %r1100; .reg .u32 %r1101; .reg .u32 %r1102; .reg .pred %r1103; .reg .u32 %r1104; .reg .pred %r1105; .reg .u32 %r1107; .reg .pred %r1113; .reg .u32 %r1115; .reg .u32 %r1122; .reg .u32 %r1124; .reg .pred %r1125; .reg .u64 %r1128; .reg .u64 %r1129; .reg .u64 %r1130; .reg .u32 %r1131; .reg .pred %r1133; .reg .u64 %r1134; .reg .pred %r1135; .reg .pred %r1137; .reg .u64 %r1138; .reg .u16 %r1140; .reg .u16 %r1141; .reg .pred %r1142; .reg .u64 %r1145; .reg .u64 %r1146; .reg .u64 %r1147; .reg .u32 %r1148; .reg .u32 %r1149; .reg .u32 %r1150; .reg .u32 %r1152; .reg .u32 %r1153; .reg .pred %r1155; .reg .u64 %r1156; .reg .pred %r1157; .reg .pred %r1158; .reg .u32 %r1160; .reg .u32 %r1161; .reg .u64 %r1164; .reg .u64 %r1165; .reg .u64 %r1166; .reg .u32 %r1167; .reg .pred %r1169; .reg .u64 %r1170; .reg .pred %r1171; .reg .pred %r1172; .reg .u32 %r1173; .reg .u32 %r1174; .reg .pred %r1175; .reg .u32 %r1176; .reg .u16 %r1177; .reg .u32 %r1178; .reg .u32 %r1179; .reg .u32 %r1180; .reg .u32 %r1181; .reg .u32 %r1182; .reg .u16 %r1183; .reg .u16 %r1184; .reg .u16 %r1185; .reg .u32 %r1186; .reg .u16 %r1187; .reg .pred %r1188; .reg .u32 %r1189; .reg .pred %r1190; .reg .u32 %r1191; .reg .pred %r1192; .reg .u32 %r1193; .reg .u64 %r1195; .reg .u64 %r1196; .reg .u64 %r1200; .reg .u64 %r1201; .reg .u32 %r1202; .reg .pred %r1204; .reg .u64 %r1205; .reg .pred %r1206; .reg .u32 %r1207; .reg .pred %r1208; .reg .pred %r1209; .reg .u64 %r1210; .reg .u32 %r1212; .reg .u32 %r1213; .reg .u32 %r1214; .reg .u64 %r1215; .reg .u64 %r1217; .reg .u64 %r1218; .reg .u64 %r1219; .reg .u64 %r1220; .reg .u64 %r1222; .reg .u64 %r1225; .reg .u64 %r1226; .reg .u64 %r1229; .reg .u64 %r1230; .reg .u64 %r1231; .reg .u64 %r1233; .reg .u64 %r1235; .reg .u32 %r1236; .reg .pred %r1238; .reg .u64 %r1239; .reg .pred %r1240; .reg .u32 %r1241; .reg .pred %r1242; .reg .pred %r1243; .reg .u64 %r1244; .reg .u32 %r1246; .reg .u32 %r1247; .reg .u32 %r1248; .reg .u64 %r1249; .reg .u64 %r1250; .reg .u64 %r1251; .reg .u64 %r1253; .reg .pred %r1254; .reg .pred %r1255; .reg .u64 %r1256; .reg .u64 %r1257; .reg .u64 %r1258; .reg .u32 %r1259; .reg .pred %r1260; .reg .pred %r1261; .reg .pred %r1263; .reg .u64 %r1264; .reg .u32 %r1265; .reg .u16 %r1266; .reg .u32 %r1267; .reg .pred %r1268; .reg .pred %r1269; .reg .u64 %r1270; .reg .u32 %r1271; .reg .u32 %r1273; .reg .pred %r1274; .reg .u32 %r1275; .reg .u32 %r1276; .reg .u32 %r1277; .reg .u32 %r1278; .reg .u32 %r1279; .reg .u16 %r1280; .reg .u32 %r1281; .reg .u32 %r1282; .reg .u16 %r1283; .reg .u16 %r1284; .reg .u16 %r1285; .reg .u32 %r1286; .reg .u16 %r1287; .reg .pred %r1288; .reg .u32 %r1289; .reg .u32 %r1290; .reg .u32 %r1291; .reg .u32 %r1292; .reg .u32 %r1293; .reg .u32 %r1294; .reg .u16 %r1295; .reg .u16 %r1296; .reg .u16 %r1297; .reg .u32 %r1298; .reg .u16 %r1299; .reg .pred %r1300; .reg .u32 %r1301; .reg .u32 %r1302; .reg .u32 %r1303; .reg .u32 %r1304; .reg .u32 %r1305; .reg .u32 %r1306; .reg .u16 %r1307; .reg .u16 %r1308; .reg .u16 %r1309; .reg .u32 %r1310; .reg .u16 %r1311; .reg .pred %r1312; .reg .pred %r1314; .reg .u32 %r1315; .reg .u64 %r1321; .reg .u64 %r1322; .reg .u64 %r1323; .reg .u64 %r1324; .reg .u16 %r1326; mov.u64 %r424,%ar0; mov.u64 %r425,%ar1; mov.u64 %r426,%ar2; mov.u64 %r427,%ar3; .loc 1 688 7 mov.u32 %r118,0; .loc 1 678 10 mov.u64 %r423,0; .loc 1 1397 25 add.u64 %r1321,%r425,-1; .loc 1 1083 38 cvta.const.u64 %r1322,_ctype_+1; .loc 1 1323 3 add.u64 %r1323,%frame,1; .loc 1 932 9 add.u64 %r1324,%frame,2; bra $L12; $L15: .loc 1 695 7 setp.gt.u64 %r429,%r1321,%r423; @ %r429 bra $L13; $L75: .loc 1 698 13 mov.u64 %r423,0; bra $L11; $L13: .loc 1 696 26 add.u64 %r426,%r426,1; .loc 1 696 17 add.u64 %r430,%r424,%r423; cvt.u32.u32 %r431,%r25; st.u8 [%r430],%r431; .loc 1 696 13 add.u64 %r423,%r423,1; $L12: .loc 1 693 14 ld.s8 %r25,[%r426]; .loc 1 693 22 cvt.u16.u32 %r433,%r25; set.u32.ne.u16 %r434,%r433,0; neg.s32 %r435,%r434; mov.u32 %r432,%r435; set.u32.ne.u16 %r438,%r433,37; neg.s32 %r439,%r438; mov.u32 %r436,%r439; cvt.u16.u8 %r1326,%r432; mov.u16 %r441,%r1326; cvt.u16.u8 %r1326,%r436; mov.u16 %r442,%r1326; and.b16 %r440,%r441,%r442; cvt.u32.u16 %r443,%r440; cvt.u16.u8 %r444,%r443; setp.ne.u16 %r445,%r444,0; @ %r445 bra $L15; .loc 1 700 10 setp.eq.u32 %r446,%r25,0; @ %r446 bra $L16; .loc 1 708 11 ld.s8 %r383,[%r426+1]; .loc 1 708 30 cvt.u16.u32 %r448,%r383; set.u32.eq.u16 %r449,%r448,48; neg.s32 %r450,%r449; mov.u32 %r447,%r450; set.u32.eq.u16 %r453,%r448,43; neg.s32 %r454,%r453; mov.u32 %r451,%r454; cvt.u16.u8 %r1326,%r447; mov.u16 %r456,%r1326; cvt.u16.u8 %r1326,%r451; mov.u16 %r457,%r1326; or.b16 %r455,%r456,%r457; cvt.u32.u16 %r458,%r455; .loc 1 708 10 cvt.u16.u8 %r459,%r458; setp.ne.u16 %r460,%r459,0; @ %r460 bra $L17; .loc 1 702 13 add.u64 %r32,%r426,1; .loc 1 703 11 mov.u32 %r79,0; bra $L18; $L17: .loc 1 709 15 add.u64 %r32,%r426,2; .loc 1 708 11 mov.u32 %r79,%r383; .loc 1 712 11 ld.s8 %r383,[%r426+2]; $L18: .loc 1 712 30 cvt.u16.u32 %r463,%r383; add.u16 %r462,%r463,-49; cvt.u32.u16 %r464,%r462; .loc 1 712 10 cvt.u16.u8 %r465,%r464; setp.gt.u16 %r466,%r465,8; @ %r466 bra $L159; .loc 1 715 12 mov.u32 %r469,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r469; call (%value_in),strtoul,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r470,[%value_in]; } mov.u64 %r35,%r470; .loc 1 716 11 ld.u64 %r32,[%frame]; .loc 1 720 11 ld.s8 %r383,[%r32]; bra $L19; $L159: .loc 1 704 13 mov.u64 %r35,0; $L19: .loc 1 720 10 cvt.u16.u32 %r471,%r383; setp.ne.u16 %r472,%r471,69; @ %r472 bra $L20; .loc 1 747 15 ld.s8 %r383,[%r32+1]; .loc 1 722 17 add.u64 %r32,%r32,1; bra $L21; $L20: .loc 1 733 15 setp.ne.u16 %r474,%r471,79; @ %r474 bra $L21; .loc 1 747 15 ld.s8 %r383,[%r32+1]; .loc 1 735 17 add.u64 %r32,%r32,1; $L21: .loc 1 747 7 cvt.u16.u32 %r475,%r383; setp.eq.u16 %r476,%r475,90; @ %r476 bra $L22; setp.gt.s16 %r478,%r475,90; @ %r478 bra $L23; setp.eq.u16 %r480,%r475,77; @ %r480 bra $L24; setp.gt.s16 %r482,%r475,77; @ %r482 bra $L25; setp.eq.u16 %r484,%r475,68; @ %r484 bra $L26; setp.gt.s16 %r486,%r475,68; @ %r486 bra $L27; setp.eq.u16 %r488,%r475,66; @ %r488 bra $L28; setp.gt.s16 %r490,%r475,66; @ %r490 bra $L29; setp.eq.u16 %r492,%r475,37; @ %r492 bra $L30; setp.eq.u16 %r494,%r475,65; @ %r494 bra $L31; mov.u64 %r423,0; bra $L11; $L29: setp.eq.u16 %r496,%r475,67; @ %r496 bra $L32; mov.u64 %r423,0; bra $L11; $L27: setp.eq.u16 %r498,%r475,71; @ %r498 bra $L33; setp.gt.s16 %r500,%r475,71; @ %r500 bra $L34; setp.eq.u16 %r502,%r475,70; @ %r502 bra $L35; mov.u64 %r423,0; bra $L11; $L34: setp.eq.u16 %r504,%r475,72; @ %r504 bra $L36; setp.eq.u16 %r506,%r475,73; @ %r506 bra $L37; mov.u64 %r423,0; bra $L11; $L25: setp.eq.u16 %r508,%r475,85; @ %r508 bra $L38; setp.gt.s16 %r510,%r475,85; @ %r510 bra $L39; setp.eq.u16 %r512,%r475,83; @ %r512 bra $L40; setp.gt.s16 %r514,%r475,83; @ %r514 bra $L41; setp.eq.u16 %r516,%r475,80; @ %r516 bra $L42; setp.eq.u16 %r518,%r475,82; @ %r518 bra $L43; mov.u64 %r423,0; bra $L11; $L41: setp.eq.u16 %r520,%r475,84; @ %r520 bra $L44; mov.u64 %r423,0; bra $L11; $L39: setp.eq.u16 %r522,%r475,88; @ %r522 bra $L45; setp.eq.u16 %r524,%r475,89; @ %r524 bra $L46; setp.eq.u16 %r526,%r475,86; @ %r526 bra $L47; setp.eq.u16 %r528,%r475,87; @ %r528 bra $L48; mov.u64 %r423,0; bra $L11; $L23: setp.eq.u16 %r530,%r475,110; @ %r530 bra $L49; setp.gt.s16 %r532,%r475,110; @ %r532 bra $L50; setp.eq.u16 %r534,%r475,103; @ %r534 bra $L51; setp.gt.s16 %r536,%r475,103; @ %r536 bra $L52; setp.eq.u16 %r538,%r475,99; @ %r538 bra $L53; setp.gt.s16 %r540,%r475,99; @ %r540 bra $L54; setp.eq.u16 %r542,%r475,97; @ %r542 bra $L55; setp.eq.u16 %r544,%r475,98; @ %r544 bra $L56; mov.u64 %r423,0; bra $L11; $L54: add.u16 %r546,%r475,-100; cvt.u32.u16 %r548,%r546; cvt.u16.u8 %r549,%r548; setp.gt.u16 %r550,%r549,1; @ ! %r550 bra $L223; bra $L160; $L52: setp.eq.u16 %r552,%r475,107; @ %r552 bra $L58; setp.gt.s16 %r554,%r475,107; @ %r554 bra $L59; setp.eq.u16 %r556,%r475,104; @ %r556 bra $L56; setp.eq.u16 %r558,%r475,106; @ %r558 bra $L60; mov.u64 %r423,0; bra $L11; $L59: setp.eq.u16 %r560,%r475,108; @ %r560 bra $L61; setp.eq.u16 %r562,%r475,109; @ %r562 bra $L62; mov.u64 %r423,0; bra $L11; $L50: setp.eq.u16 %r564,%r475,117; @ %r564 bra $L63; setp.gt.s16 %r566,%r475,117; @ %r566 bra $L64; setp.eq.u16 %r568,%r475,115; @ %r568 bra $L65; setp.gt.s16 %r570,%r475,115; @ %r570 bra $L66; setp.eq.u16 %r572,%r475,112; @ %r572 bra $L42; setp.eq.u16 %r574,%r475,114; @ %r574 bra $L67; mov.u64 %r423,0; bra $L11; $L66: setp.eq.u16 %r576,%r475,116; @ %r576 bra $L68; mov.u64 %r423,0; bra $L11; $L64: setp.eq.u16 %r578,%r475,121; @ %r578 bra $L69; setp.gt.s16 %r580,%r475,121; @ %r580 bra $L70; setp.eq.u16 %r582,%r475,119; @ %r582 bra $L71; setp.eq.u16 %r584,%r475,120; @ %r584 bra $L72; mov.u64 %r423,0; bra $L11; $L70: setp.eq.u16 %r586,%r475,122; @ %r586 bra $L73; mov.u64 %r423,0; bra $L11; $L55: .loc 1 750 4 cvta.const.u64 %r587,_C_time_locale; ld.s32 %r588,[%r427+24]; add.u64 %r589,%r588,24; shl.b64 %r590,%r589,3; add.u64 %r591,%r587,%r590; ld.u64 %r39,[%r591]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r593,[%value_in]; } .loc 1 751 18 setp.eq.u64 %r594,%r593,0; @ %r594 bra $L74; .loc 1 753 11 setp.ge.u64 %r595,%r423,%r1321; @ %r595 bra $L75; add.u64 %r400,%r423,%r593; mov.u64 %r41,%r423; bra $L76; $L77: setp.ge.u64 %r596,%r41,%r1321; @ %r596 bra $L75; $L76: .loc 1 754 10 add.u64 %r41,%r41,1; .loc 1 754 21 sub.u64 %r597,%r41,%r423; add.u64 %r598,%r39,%r597; .loc 1 754 14 add.u64 %r599,%r424,%r41; ld.u8 %r600,[%r598+-1]; st.u8 [%r599+-1],%r600; .loc 1 751 18 setp.ne.u64 %r601,%r41,%r400; @ %r601 bra $L77; mov.u64 %r423,%r41; bra $L74; $L31: .loc 1 760 4 cvta.const.u64 %r602,_C_time_locale; ld.s32 %r603,[%r427+24]; add.u64 %r604,%r603,30; shl.b64 %r605,%r604,3; add.u64 %r606,%r602,%r605; ld.u64 %r45,[%r606+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r609,[%value_in]; } .loc 1 761 18 setp.eq.u64 %r610,%r609,0; @ %r610 bra $L74; .loc 1 763 11 setp.ge.u64 %r611,%r423,%r1321; @ %r611 bra $L75; add.u64 %r419,%r423,%r609; mov.u64 %r49,%r423; bra $L78; $L79: setp.ge.u64 %r612,%r49,%r1321; @ %r612 bra $L75; $L78: .loc 1 764 10 add.u64 %r49,%r49,1; .loc 1 764 21 sub.u64 %r613,%r49,%r423; add.u64 %r614,%r45,%r613; .loc 1 764 14 add.u64 %r615,%r424,%r49; ld.u8 %r616,[%r614+-1]; st.u8 [%r615+-1],%r616; .loc 1 761 18 setp.ne.u64 %r617,%r49,%r419; @ %r617 bra $L79; mov.u64 %r423,%r49; bra $L74; $L56: .loc 1 771 4 cvta.const.u64 %r618,_C_time_locale; ld.s32 %r619,[%r427+16]; shl.b64 %r620,%r619,3; add.u64 %r621,%r618,%r620; ld.u64 %r53,[%r621]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r623,[%value_in]; } .loc 1 772 18 setp.eq.u64 %r624,%r623,0; @ %r624 bra $L74; .loc 1 774 11 setp.ge.u64 %r625,%r423,%r1321; @ %r625 bra $L75; add.u64 %r397,%r423,%r623; mov.u64 %r55,%r423; bra $L80; $L81: setp.ge.u64 %r626,%r55,%r1321; @ %r626 bra $L75; $L80: .loc 1 775 10 add.u64 %r55,%r55,1; .loc 1 775 21 sub.u64 %r627,%r55,%r423; add.u64 %r628,%r53,%r627; .loc 1 775 14 add.u64 %r629,%r424,%r55; ld.u8 %r630,[%r628+-1]; st.u8 [%r629+-1],%r630; .loc 1 772 18 setp.ne.u64 %r631,%r55,%r397; @ %r631 bra $L81; mov.u64 %r423,%r55; bra $L74; $L28: .loc 1 781 4 cvta.const.u64 %r632,_C_time_locale; ld.s32 %r633,[%r427+16]; add.u64 %r634,%r633,12; shl.b64 %r635,%r634,3; add.u64 %r636,%r632,%r635; ld.u64 %r60,[%r636]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r60; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r638,[%value_in]; } .loc 1 782 18 setp.eq.u64 %r639,%r638,0; @ %r639 bra $L74; .loc 1 784 11 setp.ge.u64 %r640,%r423,%r1321; @ %r640 bra $L75; add.u64 %r415,%r423,%r638; mov.u64 %r63,%r423; bra $L82; $L83: setp.ge.u64 %r641,%r63,%r1321; @ %r641 bra $L75; $L82: .loc 1 785 10 add.u64 %r63,%r63,1; .loc 1 785 21 sub.u64 %r642,%r63,%r423; add.u64 %r643,%r60,%r642; .loc 1 785 14 add.u64 %r644,%r424,%r63; ld.u8 %r645,[%r643+-1]; st.u8 [%r644+-1],%r645; .loc 1 782 18 setp.ne.u64 %r646,%r63,%r415; @ %r646 bra $L83; mov.u64 %r423,%r63; bra $L74; $L53: .loc 1 796 6 cvta.const.u64 %r647,_C_time_locale; ld.u64 %r66,[%r647+320]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r649,[%value_in]; } .loc 1 797 4 bra $L84; $L67: .loc 1 799 4 cvta.const.u64 %r650,_C_time_locale; ld.u64 %r66,[%r650+456]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r652,[%value_in]; } .loc 1 800 4 bra $L84; $L72: .loc 1 807 6 cvta.const.u64 %r653,_C_time_locale; ld.u64 %r66,[%r653+312]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r655,[%value_in]; } .loc 1 808 4 bra $L84; $L45: .loc 1 815 6 cvta.const.u64 %r656,_C_time_locale; ld.u64 %r66,[%r656+304]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r658,[%value_in]; } $L84: .loc 1 817 7 ld.u8 %r660,[%r66]; cvt.s16.s8 %r659,%r660; setp.eq.u16 %r661,%r659,0; @ %r661 bra $L74; .loc 1 820 14 sub.u64 %r666,%r425,%r423; add.u64 %r667,%r424,%r423; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r667; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r666; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r66; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r427; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r668,[%value_in]; } .loc 1 820 12 cvt.u32.u64 %r71,%r668; .loc 1 822 11 setp.le.s32 %r669,%r71,0; @ %r669 bra $L75; .loc 1 823 9 cvt.s64.s32 %r670,%r71; add.u64 %r423,%r423,%r670; bra $L74; $L32: .loc 1 859 18 ld.u32 %r73,[%r427+20]; .loc 1 871 9 max.u64 %r671,%r35,2; .loc 1 859 28 set.u32.lt.s32 %r673,%r73,-1900; cvt.s64.s32 %r672,%r673; .loc 1 871 9 add.u64 %r388,%r671,%r672; .loc 1 862 5 setp.lt.s32 %r675,%r73,0; @ %r675 bra $L85; .loc 1 861 22 div.s32 %r677,%r73,100; .loc 1 862 5 add.u32 %r76,%r677,19; .loc 1 863 6 setp.ne.u32 %r678,%r79,0; @ %r678 bra $L86; .loc 1 857 9 cvta.const.u64 %r85,$LC1; .loc 1 858 9 cvta.const.u64 %r86,$LC0; bra $L87; $L85: .loc 1 862 7 add.u32 %r680,%r73,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r680; call (%value_in),abs,(%out_arg1); ld.param.u32 %r681,[%value_in]; } .loc 1 862 5 div.s32 %r76,%r681,100; .loc 1 863 6 setp.eq.u32 %r682,%r79,0; @ %r682 bra $L161; .loc 1 866 19 set.u32.gt.s32 %r684,%r681,9999; neg.s32 %r685,%r684; mov.u32 %r683,%r685; .loc 1 866 33 cvt.u16.u32 %r687,%r79; set.u32.eq.u16 %r688,%r687,43; neg.s32 %r689,%r688; mov.u32 %r686,%r689; .loc 1 866 26 cvt.u16.u8 %r1326,%r683; mov.u16 %r691,%r1326; cvt.u16.u8 %r1326,%r686; mov.u16 %r692,%r1326; and.b16 %r690,%r691,%r692; cvt.u32.u16 %r693,%r690; .loc 1 866 10 cvt.u16.u8 %r694,%r693; setp.ne.u16 %r695,%r694,0; @ %r695 bra $L162; $L154: .loc 1 858 9 cvta.const.u64 %r86,$LC0; .loc 1 865 11 cvta.const.u64 %r85,$LC2; bra $L88; $L161: .loc 1 858 9 cvta.const.u64 %r86,$LC0; .loc 1 857 9 cvta.const.u64 %r85,$LC1; bra $L88; $L162: .loc 1 867 13 cvta.const.u64 %r86,$LC3; .loc 1 865 11 cvta.const.u64 %r85,$LC2; $L88: .loc 1 871 9 setp.ge.s32 %r696,%r73,-1900; @ %r696 bra $L87; cvta.const.u64 %r86,$LC4; bra $L87; $L177: .loc 1 865 11 cvta.const.u64 %r85,$LC2; .loc 1 867 13 cvta.const.u64 %r86,$LC3; $L87: .loc 1 871 9 sub.u64 %r700,%r425,%r423; add.u64 %r701,%r424,%r423; st.u32 [%stack+16],%r76; st.u64 [%stack+8],%r388; st.u64 [%stack],%r86; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r701; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r700; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r85; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r702,[%value_in]; } .loc 1 874 13 setp.lt.s32 %r704,%r702,0; @ %r704 bra $L75; cvt.s64.s32 %r705,%r702; add.u64 %r423,%r423,%r705; setp.le.u64 %r706,%r425,%r423; @ ! %r706 bra $L74; bra $L75; $L223: .loc 1 903 11 ld.u32 %r89,[%r427+12]; .loc 1 901 10 setp.eq.u16 %r708,%r475,100; @ %r708 bra $L163; cvta.const.u64 %r92,$LC6; bra $L89; $L163: cvta.const.u64 %r92,$LC5; $L89: sub.u64 %r712,%r425,%r423; add.u64 %r713,%r424,%r423; st.u32 [%stack],%r89; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r713; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r712; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r92; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r714,[%value_in]; } .loc 1 904 4 setp.lt.s32 %r716,%r714,0; @ %r716 bra $L75; cvt.s64.s32 %r717,%r714; add.u64 %r423,%r423,%r717; setp.le.u64 %r718,%r425,%r423; @ ! %r718 bra $L74; bra $L75; $L26: .loc 1 911 11 ld.u32 %r95,[%r427+20]; .loc 1 908 10 setp.lt.s32 %r719,%r95,0; @ %r719 bra $L90; rem.s32 %r96,%r95,100; bra $L91; $L90: .loc 1 912 8 add.u32 %r721,%r95,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r721; call (%value_in),abs,(%out_arg1); ld.param.u32 %r722,[%value_in]; } .loc 1 908 10 rem.s32 %r96,%r722,100; $L91: sub.u64 %r726,%r425,%r423; add.u64 %r727,%r424,%r423; st.u32 [%stack+8],%r96; ld.u32 %r728,[%r427+12]; st.u32 [%stack+4],%r728; ld.u32 %r730,[%r427+16]; add.u32 %r729,%r730,1; st.u32 [%stack],%r729; cvta.const.u64 %r725,$LC7; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r727; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r726; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r725; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r731,[%value_in]; } .loc 1 913 11 setp.lt.s32 %r733,%r731,0; @ %r733 bra $L75; cvt.s64.s32 %r734,%r731; add.u64 %r423,%r423,%r734; setp.le.u64 %r735,%r425,%r423; @ ! %r735 bra $L74; bra $L75; $L35: .loc 1 920 13 mov.u32 %r736,37; st.u8 [%frame],%r736; .loc 1 921 9 setp.eq.u32 %r737,%r79,0; @ %r737 bra $L92; .loc 1 922 15 cvt.u32.u32 %r738,%r79; st.u8 [%frame+1],%r738; max.u64 %r106,%r35,6; .loc 1 929 12 add.u64 %r108,%r106,-6; .loc 1 930 9 setp.ne.u64 %r739,%r106,6; @ %r739 bra $L93; $L95: .loc 1 929 12 mov.u64 %r111,%r1324; bra $L94; $L92: .loc 1 924 15 mov.u32 %r740,43; st.u8 [%frame+1],%r740; .loc 1 929 12 mov.u64 %r108,4; $L93: .loc 1 932 9 st.u64 [%stack],%r108; cvta.const.u64 %r743,$LC8; mov.u64 %r742,30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1324; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r742; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r743; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r745,[%value_in]; } .loc 1 933 6 setp.le.s32 %r747,%r745,0; @ %r747 bra $L95; .loc 1 934 9 cvt.s64.s32 %r749,%r745; add.u64 %r111,%r1324,%r749; $L94: .loc 1 936 6 cvta.const.u64 %r751,$LC9; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r751; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r752,[%value_in]; } .loc 1 937 12 sub.u64 %r757,%r425,%r423; add.u64 %r758,%r424,%r423; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r758; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r757; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r427; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r759,[%value_in]; } .loc 1 937 10 cvt.u32.u64 %r115,%r759; .loc 1 939 9 setp.le.s32 %r760,%r115,0; @ %r760 bra $L96; .loc 1 940 14 cvt.s64.s32 %r761,%r115; add.u64 %r423,%r423,%r761; bra $L74; $L96: .loc 1 942 15 mov.u64 %r423,0; bra $L11; $L51: ld.u32 %r369,[%r427+20]; .loc 1 949 19 ld.u32 %r765,[%r427+28]; ld.u32 %r766,[%r427+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r369; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r766; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r765; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r767,[%value_in]; } mov.u32 %r117,%r767; .loc 1 951 3 setp.lt.s32 %r768,%r369,0; @ %r768 bra $L97; rem.s32 %r119,%r369,100; bra $L98; $L97: .loc 1 951 5 add.u32 %r770,%r369,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r770; call (%value_in),abs,(%out_arg1); ld.param.u32 %r771,[%value_in]; } .loc 1 951 3 rem.s32 %r119,%r771,100; $L98: .loc 1 952 9 setp.ge.s32 %r772,%r767,0; @ %r772 bra $L99; .loc 1 952 21 ld.u32 %r773,[%r427+20]; setp.lt.s32 %r774,%r773,-1899; .loc 1 953 10 selp.u32 %r117,1,%r767,%r774; bra $L100; $L99: .loc 1 954 14 setp.eq.u32 %r775,%r767,0; @ %r775 bra $L100; .loc 1 954 26 ld.u32 %r776,[%r427+20]; setp.ge.s32 %r777,%r776,-1900; .loc 1 955 10 selp.u32 %r117,%r767,-1,%r777; $L100: .loc 1 956 12 sub.u64 %r781,%r425,%r423; add.u64 %r782,%r424,%r423; .loc 1 957 15 add.u32 %r783,%r117,%r119; .loc 1 957 25 rem.s32 %r785,%r783,100; .loc 1 957 31 add.u32 %r786,%r785,100; .loc 1 956 12 rem.s32 %r790,%r786,100; st.u32 [%stack],%r790; cvta.const.u64 %r780,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r782; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r781; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r780; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r791,[%value_in]; } .loc 1 958 13 setp.lt.s32 %r793,%r791,0; @ %r793 bra $L75; cvt.s64.s32 %r794,%r791; add.u64 %r423,%r423,%r794; setp.le.u64 %r795,%r425,%r423; @ ! %r795 bra $L74; bra $L75; $L33: .loc 1 966 22 ld.u32 %r132,[%r427+20]; .loc 1 966 32 set.u32.lt.s32 %r796,%r132,-1900; neg.s32 %r133,%r796; .loc 1 966 10 mov.u32 %r134,%r133; .loc 1 967 19 ld.u32 %r802,[%r427+28]; ld.u32 %r803,[%r427+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r132; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r803; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r802; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r804,[%value_in]; } mov.u32 %r135,%r804; .loc 1 970 8 setp.lt.s32 %r805,%r132,0; @ %r805 bra $L101; .loc 1 969 25 div.s32 %r807,%r132,100; .loc 1 970 8 add.u32 %r137,%r807,19; bra $L102; $L101: .loc 1 970 10 add.u32 %r809,%r132,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r809; call (%value_in),abs,(%out_arg1); ld.param.u32 %r810,[%value_in]; } .loc 1 970 8 div.s32 %r137,%r810,100; .loc 1 971 22 ld.u32 %r132,[%r427+20]; .loc 1 972 8 setp.lt.s32 %r811,%r132,0; @ %r811 bra $L103; $L102: rem.s32 %r140,%r132,100; bra $L104; $L103: .loc 1 972 10 add.u32 %r813,%r132,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r813; call (%value_in),abs,(%out_arg1); ld.param.u32 %r814,[%value_in]; } .loc 1 972 8 rem.s32 %r140,%r814,100; $L104: .loc 1 973 9 setp.ge.s32 %r815,%r804,0; @ %r815 bra $L105; .loc 1 973 21 ld.u32 %r816,[%r427+20]; setp.lt.s32 %r817,%r816,-1899; @ %r817 bra $L165; bra $L224; $L105: .loc 1 975 22 set.u32.gt.s32 %r819,%r804,0; neg.s32 %r820,%r819; mov.u32 %r818,%r820; .loc 1 975 26 cvt.u16.u8 %r1326,%r818; mov.u16 %r822,%r1326; cvt.u16.u32 %r823,%r133; and.b16 %r821,%r822,%r823; cvt.u32.u16 %r824,%r821; .loc 1 975 14 cvt.u16.u8 %r825,%r824; setp.ne.u16 %r826,%r825,0; @ %r826 bra $L108; bra $L106; $L165: .loc 1 974 22 mov.u32 %r135,1; .loc 1 974 13 mov.u32 %r134,%r135; $L106: .loc 1 977 11 add.u32 %r47,%r135,%r140; .loc 1 978 9 setp.ne.u32 %r827,%r47,-1; @ %r827 bra $L109; $L153: .loc 1 981 3 add.u32 %r137,%r137,-1; .loc 1 980 8 mov.u32 %r47,99; bra $L110; $L109: .loc 1 983 14 setp.ne.u32 %r828,%r47,100; @ %r828 bra $L110; .loc 1 986 3 add.u32 %r137,%r137,1; .loc 1 985 8 mov.u32 %r47,0; $L110: .loc 1 990 38 mad.lo.u32 %r393,%r137,100,%r47; .loc 1 991 9 setp.eq.u32 %r830,%r134,0; @ %r830 bra $L111; $L157: .loc 1 992 15 mov.u32 %r831,45; st.u8 [%frame],%r831; .loc 1 998 9 setp.eq.u64 %r832,%r35,0; @ %r832 bra $L166; $L113: .loc 1 999 8 add.u64 %r35,%r35,-1; mov.u64 %r378,%r1323; bra $L112; $L111: .loc 1 993 19 cvt.u16.u32 %r834,%r79; set.u32.eq.u16 %r835,%r834,43; neg.s32 %r836,%r835; mov.u32 %r833,%r836; .loc 1 993 40 set.u32.gt.u32 %r838,%r393,9999; neg.s32 %r839,%r838; mov.u32 %r837,%r839; .loc 1 993 30 cvt.u16.u8 %r1326,%r833; mov.u16 %r841,%r1326; cvt.u16.u8 %r1326,%r837; mov.u16 %r842,%r1326; and.b16 %r840,%r841,%r842; cvt.u32.u16 %r843,%r840; .loc 1 993 14 cvt.u16.u8 %r844,%r843; setp.eq.u16 %r845,%r844,0; @ %r845 bra $L167; .loc 1 995 10 mov.u32 %r846,43; st.u8 [%frame],%r846; .loc 1 998 9 setp.ne.u64 %r847,%r35,0; @ %r847 bra $L113; bra $L225; $L166: mov.u64 %r378,%r1323; bra $L112; $L167: .loc 1 988 24 mov.u64 %r378,%frame; $L112: .loc 1 1000 13 mov.u32 %r848,37; st.u8 [%r378],%r848; .loc 1 1001 9 setp.ne.u32 %r849,%r79,0; @ %r849 bra $L115; .loc 1 1000 10 add.u64 %r151,%r378,1; bra $L116; $L115: .loc 1 1002 12 add.u64 %r151,%r378,2; .loc 1 1002 15 mov.u32 %r850,48; st.u8 [%r378+1],%r850; $L116: .loc 1 1003 6 cvta.const.u64 %r852,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r151; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r852; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r853,[%value_in]; } .loc 1 1004 12 sub.u64 %r857,%r425,%r423; add.u64 %r858,%r424,%r423; st.u32 [%stack+8],%r393; st.u64 [%stack],%r35; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r858; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r857; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r859,[%value_in]; } .loc 1 1005 16 setp.lt.s32 %r861,%r859,0; @ %r861 bra $L117; .loc 1 1005 36 cvt.s64.s32 %r862,%r859; add.u64 %r423,%r423,%r862; .loc 1 1005 26 setp.gt.u64 %r863,%r425,%r423; @ %r863 bra $L74; $L117: .loc 1 1006 22 mov.u64 %r423,0; bra $L11; $L156: .loc 1 1022 10 sub.u64 %r867,%r425,%r423; add.u64 %r868,%r424,%r423; st.u32 [%stack],%r361; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r868; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r867; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r159; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r869,[%value_in]; } .loc 1 1025 11 setp.lt.s32 %r871,%r869,0; @ %r871 bra $L75; cvt.s64.s32 %r872,%r869; add.u64 %r423,%r423,%r872; setp.le.u64 %r873,%r425,%r423; @ ! %r873 bra $L74; bra $L75; $L155: .loc 1 1035 11 rem.s32 %r163,%r65,12; .loc 1 1041 14 cvt.u16.u32 %r874,%r383; setp.eq.u16 %r875,%r874,73; @ %r875 bra $L168; cvta.const.u64 %r166,$LC6; bra $L119; $L168: cvta.const.u64 %r166,$LC5; $L119: sub.u64 %r879,%r425,%r423; add.u64 %r880,%r424,%r423; st.u32 [%stack],%r163; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r880; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r879; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r166; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r881,[%value_in]; } .loc 1 1043 6 setp.lt.s32 %r883,%r881,0; @ %r883 bra $L75; cvt.s64.s32 %r884,%r881; add.u64 %r423,%r423,%r884; setp.le.u64 %r885,%r425,%r423; @ ! %r885 bra $L74; bra $L75; $L60: .loc 1 1047 10 sub.u64 %r889,%r425,%r423; add.u64 %r890,%r424,%r423; ld.u32 %r892,[%r427+28]; add.u32 %r891,%r892,1; st.u32 [%stack],%r891; cvta.const.u64 %r888,$LC11; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r890; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r889; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r888; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r893,[%value_in]; } .loc 1 1049 11 setp.lt.s32 %r895,%r893,0; @ %r895 bra $L75; cvt.s64.s32 %r896,%r893; add.u64 %r423,%r423,%r896; setp.le.u64 %r897,%r425,%r423; @ ! %r897 bra $L74; bra $L75; $L62: .loc 1 1057 12 sub.u64 %r901,%r425,%r423; add.u64 %r902,%r424,%r423; ld.u32 %r904,[%r427+16]; add.u32 %r903,%r904,1; st.u32 [%stack],%r903; cvta.const.u64 %r900,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r902; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r901; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r900; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r905,[%value_in]; } .loc 1 1059 11 setp.lt.s32 %r907,%r905,0; @ %r907 bra $L75; cvt.s64.s32 %r908,%r905; add.u64 %r423,%r423,%r908; setp.le.u64 %r909,%r425,%r423; @ ! %r909 bra $L74; bra $L75; $L24: .loc 1 1067 12 sub.u64 %r913,%r425,%r423; add.u64 %r914,%r424,%r423; ld.u32 %r915,[%r427+4]; st.u32 [%stack],%r915; cvta.const.u64 %r912,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r914; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r913; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r912; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r916,[%value_in]; } .loc 1 1069 11 setp.lt.s32 %r918,%r916,0; @ %r918 bra $L75; cvt.s64.s32 %r919,%r916; add.u64 %r423,%r423,%r919; setp.le.u64 %r920,%r425,%r423; @ ! %r920 bra $L74; bra $L75; $L49: .loc 1 1072 7 setp.ge.u64 %r922,%r423,%r1321; @ %r922 bra $L75; .loc 1 1073 17 add.u64 %r923,%r424,%r423; mov.u32 %r924,10; st.u8 [%r923],%r924; .loc 1 1073 13 add.u64 %r423,%r423,1; .loc 1 1076 4 bra $L74; $L42: .loc 1 1079 4 cvta.const.u64 %r925,_C_time_locale; ld.u32 %r927,[%r427+8]; set.u32.gt.s32 %r928,%r927,11; neg.s32 %r929,%r928; cvt.s64.s32 %r930,%r929; add.u64 %r931,%r930,40; shl.b64 %r932,%r931,3; add.u64 %r933,%r925,%r932; ld.u64 %r192,[%r933+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r192; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r936,[%value_in]; } .loc 1 1080 18 setp.eq.u64 %r937,%r936,0; @ %r937 bra $L74; .loc 1 1082 11 setp.ge.u64 %r938,%r423,%r1321; @ %r938 bra $L75; add.u64 %r408,%r423,%r936; mov.u64 %r203,%r423; bra $L120; $L123: setp.le.u64 %r939,%r1321,%r203; @ %r939 bra $L75; $L120: .loc 1 1083 38 sub.u64 %r940,%r203,%r423; add.u64 %r941,%r192,%r940; ld.s8 %r205,[%r941]; .loc 1 1083 14 ld.u8 %r943,[%r32]; cvt.s16.s8 %r942,%r943; setp.ne.u16 %r944,%r942,80; @ %r944 bra $L121; .loc 1 1083 38 cvt.u32.u32 %r945,%r205; cvt.u32.u8 %r195,%r945; cvt.u64.u8 %r946,%r945; add.u64 %r949,%r946,%r1322; ld.u8 %r1326,[%r949]; mov.u16 %r952,%r1326; and.b16 %r954,%r952,3; setp.ne.u16 %r955,%r954,1; @ %r955 bra $L121; add.u32 %r956,%r195,32; .loc 1 1083 14 mov.u32 %r957,%r956; cvt.s32.s8 %r205,%r957; $L121: .loc 1 1083 10 add.u64 %r203,%r203,1; .loc 1 1083 14 add.u64 %r958,%r424,%r203; cvt.u32.u32 %r959,%r205; st.u8 [%r958+-1],%r959; .loc 1 1080 18 setp.ne.u64 %r960,%r203,%r408; @ %r960 bra $L123; mov.u64 %r423,%r203; bra $L74; $L43: .loc 1 1090 17 sub.u64 %r964,%r425,%r423; add.u64 %r965,%r424,%r423; ld.u32 %r966,[%r427+4]; st.u32 [%stack+4],%r966; ld.u32 %r967,[%r427+8]; st.u32 [%stack],%r967; cvta.const.u64 %r963,$LC12; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r965; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r964; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r963; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r968,[%value_in]; } .loc 1 1092 11 setp.lt.s32 %r970,%r968,0; @ %r970 bra $L75; cvt.s64.s32 %r971,%r968; add.u64 %r423,%r423,%r971; setp.le.u64 %r972,%r425,%r423; @ ! %r972 bra $L74; bra $L75; $L65: .loc 1 1124 9 ld.u32 %r973,[%r427+32]; setp.lt.s32 %r974,%r973,0; @ %r974 bra $L169; .loc 1 1126 3 { call __tz_lock; } .loc 1 1127 6 setp.ne.u32 %r975,%r118,0; @ %r975 bra $L125; .loc 1 1129 7 { call _tzset_unlocked; } $L125: .loc 1 1144 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r976,[%value_in]; } .loc 1 1148 42 ld.u32 %r978,[%r427+32]; set.u32.gt.s32 %r979,%r978,0; neg.s32 %r980,%r979; .loc 1 1148 46 cvt.s64.s32 %r981,%r980; shl.b64 %r983,%r981,2; add.u64 %r984,%r983,%r981; shl.b64 %r985,%r984,3; add.u64 %r986,%r976,%r985; .loc 1 1148 10 ld.u64 %r988,[%r986+40]; neg.s64 %r219,%r988; .loc 1 1150 3 { call __tz_unlock; } mov.u32 %r118,1; bra $L124; $L169: .loc 1 1121 11 mov.u64 %r219,0; $L124: .loc 1 1153 28 ld.u32 %r220,[%r427+20]; .loc 1 1152 12 sub.u64 %r992,%r425,%r423; add.u64 %r993,%r424,%r423; .loc 1 1153 12 cvt.s64.s32 %r994,%r220; .loc 1 1153 38 add.u64 %r995,%r994,-69; .loc 1 1153 43 shr.s64 %r999,%r995,63; and.b64 %r1000,%r999,3; add.u64 %r1001,%r1000,%r995; shr.s64 %r1002,%r1001,2; .loc 1 1154 23 add.u32 %r1003,%r220,-1; .loc 1 1154 27 div.s32 %r1005,%r1003,100; cvt.s64.s32 %r1006,%r1005; .loc 1 1154 5 sub.u64 %r1007,%r1002,%r1006; .loc 1 1155 23 add.u32 %r1008,%r220,299; .loc 1 1155 29 div.s32 %r1010,%r1008,400; cvt.s64.s32 %r1011,%r1010; .loc 1 1155 5 add.u64 %r1012,%r1007,%r1011; .loc 1 1156 23 add.u32 %r1013,%r220,-70; .loc 1 1156 28 mul.lo.u32 %r1014,%r1013,365; cvt.s64.s32 %r1015,%r1014; .loc 1 1156 5 add.u64 %r1016,%r1012,%r1015; .loc 1 1156 40 ld.s32 %r1017,[%r427+28]; .loc 1 1156 33 add.u64 %r1018,%r1016,%r1017; .loc 1 1156 50 add.u64 %r1020,%r1018,%r1018; add.u64 %r1021,%r1020,%r1018; shl.b64 %r1022,%r1021,3; .loc 1 1157 17 ld.s32 %r1023,[%r427+8]; .loc 1 1157 10 add.u64 %r1024,%r1022,%r1023; .loc 1 1157 27 shl.b64 %r1026,%r1024,4; sub.u64 %r1027,%r1026,%r1024; shl.b64 %r1028,%r1027,2; .loc 1 1157 38 ld.s32 %r1029,[%r427+4]; .loc 1 1157 31 add.u64 %r1030,%r1028,%r1029; .loc 1 1157 47 shl.b64 %r1032,%r1030,4; sub.u64 %r1033,%r1032,%r1030; shl.b64 %r1034,%r1033,2; .loc 1 1158 15 ld.s32 %r1035,[%r427]; .loc 1 1158 8 add.u64 %r1036,%r1034,%r1035; .loc 1 1152 12 sub.u64 %r1037,%r1036,%r219; st.u64 [%stack],%r1037; cvta.const.u64 %r991,$LC13; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r993; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r992; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r991; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1038,[%value_in]; } .loc 1 1159 6 setp.lt.s32 %r1040,%r1038,0; @ %r1040 bra $L75; cvt.s64.s32 %r1041,%r1038; add.u64 %r423,%r423,%r1041; setp.le.u64 %r1042,%r425,%r423; @ ! %r1042 bra $L74; bra $L75; $L40: .loc 1 1168 12 sub.u64 %r1046,%r425,%r423; add.u64 %r1047,%r424,%r423; ld.u32 %r1048,[%r427]; st.u32 [%stack],%r1048; cvta.const.u64 %r1045,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1047; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1046; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1045; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1049,[%value_in]; } .loc 1 1170 11 setp.lt.s32 %r1051,%r1049,0; @ %r1051 bra $L75; cvt.s64.s32 %r1052,%r1049; add.u64 %r423,%r423,%r1052; setp.le.u64 %r1053,%r425,%r423; @ ! %r1053 bra $L74; bra $L75; $L68: .loc 1 1173 7 setp.ge.u64 %r1055,%r423,%r1321; @ %r1055 bra $L75; .loc 1 1174 17 add.u64 %r1056,%r424,%r423; mov.u32 %r1057,9; st.u8 [%r1056],%r1057; .loc 1 1174 13 add.u64 %r423,%r423,1; .loc 1 1177 4 bra $L74; $L44: .loc 1 1179 17 sub.u64 %r1061,%r425,%r423; add.u64 %r1062,%r424,%r423; ld.u32 %r1063,[%r427]; st.u32 [%stack+8],%r1063; ld.u32 %r1064,[%r427+4]; st.u32 [%stack+4],%r1064; ld.u32 %r1065,[%r427+8]; st.u32 [%stack],%r1065; cvta.const.u64 %r1060,$LC14; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1062; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1061; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1060; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1066,[%value_in]; } .loc 1 1181 11 setp.lt.s32 %r1068,%r1066,0; @ %r1068 bra $L75; cvt.s64.s32 %r1069,%r1066; add.u64 %r423,%r423,%r1069; setp.le.u64 %r1070,%r425,%r423; @ ! %r1070 bra $L74; bra $L75; $L63: .loc 1 1196 14 setp.ge.u64 %r1072,%r423,%r1321; @ %r1072 bra $L75; .loc 1 1198 24 ld.u32 %r272,[%r427+24]; .loc 1 696 13 add.u64 %r385,%r423,1; .loc 1 696 7 add.u64 %r386,%r424,%r423; .loc 1 1198 18 setp.ne.u32 %r1073,%r272,0; @ %r1073 bra $L126; .loc 1 1199 28 mov.u32 %r1074,55; st.u8 [%r386],%r1074; .loc 1 1199 24 mov.u64 %r423,%r385; bra $L74; $L126: .loc 1 1201 38 mov.u32 %r1075,%r272; cvt.u16.u8 %r1326,%r1075; mov.u16 %r1077,%r1326; add.u16 %r1076,%r1077,48; st.u8 [%r386],%r1076; .loc 1 1201 24 mov.u64 %r423,%r385; bra $L74; $L38: .loc 1 1214 12 sub.u64 %r1081,%r425,%r423; add.u64 %r1082,%r424,%r423; .loc 1 1215 21 ld.u32 %r1084,[%r427+28]; add.u32 %r1083,%r1084,7; .loc 1 1215 25 ld.u32 %r1086,[%r427+24]; sub.u32 %r1085,%r1083,%r1086; .loc 1 1214 12 div.s32 %r1088,%r1085,7; st.u32 [%stack],%r1088; cvta.const.u64 %r1080,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1082; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1081; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1080; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1089,[%value_in]; } .loc 1 1217 11 setp.lt.s32 %r1091,%r1089,0; @ %r1091 bra $L75; cvt.s64.s32 %r1092,%r1089; add.u64 %r423,%r423,%r1092; setp.le.u64 %r1093,%r425,%r423; @ ! %r1093 bra $L74; bra $L75; $L47: ld.u32 %r375,[%r427+20]; ld.u32 %r376,[%r427+24]; ld.u32 %r377,[%r427+28]; .loc 1 1221 19 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r375; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r376; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r377; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1097,[%value_in]; } .loc 1 1222 55 setp.eq.u32 %r1098,%r376,0; @ %r1098 bra $L170; add.u32 %r286,%r376,-1; bra $L127; $L170: mov.u32 %r286,6; $L127: .loc 1 1224 9 setp.gt.s32 %r1099,%r1097,0; @ %r1099 bra $L171; .loc 1 1226 14 setp.ne.u32 %r1100,%r1097,0; @ %r1100 bra $L129; .loc 1 1223 33 add.u32 %r1101,%r377,10; .loc 1 1223 38 sub.u32 %r1102,%r1101,%r286; .loc 1 1223 10 div.s32 %r289,%r1102,7; bra $L128; $L129: .loc 1 1230 27 sub.u32 %r290,%r286,%r377; .loc 1 1231 10 setp.lt.s32 %r1103,%r375,0; selp.u32 %r291,1899,-101,%r1103; add.u32 %r292,%r291,%r375; and.b32 %r1104,%r292,3; setp.ne.u32 %r1105,%r1104,0; @ %r1105 bra $L131; rem.s32 %r1107,%r292,100; setp.ne.u32 %r1113,%r1107,0; @ %r1113 bra $L173; $L131: rem.s32 %r1115,%r292,400; set.u32.eq.u32 %r1122,%r1115,0; neg.s32 %r297,%r1122; bra $L132; $L173: mov.u32 %r297,1; $L132: .loc 1 1231 8 sub.u32 %r1124,%r290,%r297; .loc 1 1230 13 setp.le.s32 %r1125,%r1124,4; selp.u32 %r289,53,52,%r1125; bra $L128; $L171: .loc 1 1225 8 mov.u32 %r289,1; $L128: .loc 1 1240 14 sub.u64 %r1129,%r425,%r423; add.u64 %r1130,%r424,%r423; st.u32 [%stack],%r289; cvta.const.u64 %r1128,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1130; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1129; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1128; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1131,[%value_in]; } .loc 1 1241 13 setp.lt.s32 %r1133,%r1131,0; @ %r1133 bra $L75; cvt.s64.s32 %r1134,%r1131; add.u64 %r423,%r423,%r1134; setp.le.u64 %r1135,%r425,%r423; @ ! %r1135 bra $L74; bra $L75; $L71: .loc 1 1255 7 setp.ge.u64 %r1137,%r423,%r1321; @ %r1137 bra $L75; .loc 1 1256 24 add.u64 %r1138,%r424,%r423; .loc 1 1256 34 ld.u8 %r1326,[%r427+24]; mov.u16 %r1141,%r1326; add.u16 %r1140,%r1141,48; st.u8 [%r1138],%r1140; .loc 1 1256 20 add.u64 %r423,%r423,1; .loc 1 1259 4 bra $L74; $L48: .loc 1 1262 23 ld.u32 %r310,[%r427+24]; .loc 1 1262 55 setp.eq.u32 %r1142,%r310,0; @ %r1142 bra $L175; add.u32 %r311,%r310,-1; bra $L133; $L175: mov.u32 %r311,6; $L133: .loc 1 1269 14 sub.u64 %r1146,%r425,%r423; add.u64 %r1147,%r424,%r423; .loc 1 1263 29 ld.u32 %r1149,[%r427+28]; add.u32 %r1148,%r1149,7; .loc 1 1263 33 sub.u32 %r1150,%r1148,%r311; .loc 1 1263 11 div.s32 %r1152,%r1150,7; .loc 1 1269 14 st.u32 [%stack],%r1152; cvta.const.u64 %r1145,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1147; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1146; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1145; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1153,[%value_in]; } .loc 1 1270 13 setp.lt.s32 %r1155,%r1153,0; @ %r1155 bra $L75; cvt.s64.s32 %r1156,%r1153; add.u64 %r423,%r423,%r1156; setp.le.u64 %r1157,%r425,%r423; @ ! %r1157 bra $L74; bra $L75; $L69: .loc 1 1284 21 ld.u32 %r320,[%r427+20]; .loc 1 1285 9 setp.lt.s32 %r1158,%r320,0; @ %r1158 bra $L134; rem.s32 %r321,%r320,100; bra $L135; $L134: .loc 1 1285 11 add.u32 %r1160,%r320,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r1160; call (%value_in),abs,(%out_arg1); ld.param.u32 %r1161,[%value_in]; } .loc 1 1285 9 rem.s32 %r321,%r1161,100; $L135: .loc 1 1291 13 sub.u64 %r1165,%r425,%r423; add.u64 %r1166,%r424,%r423; st.u32 [%stack],%r321; cvta.const.u64 %r1164,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1166; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1165; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1164; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1167,[%value_in]; } .loc 1 1294 15 setp.lt.s32 %r1169,%r1167,0; @ %r1169 bra $L75; cvt.s64.s32 %r1170,%r1167; add.u64 %r423,%r423,%r1170; setp.le.u64 %r1171,%r425,%r423; @ ! %r1171 bra $L74; bra $L75; $L46: .loc 1 1308 24 ld.u32 %r328,[%r427+20]; .loc 1 1312 11 setp.ge.s32 %r1172,%r328,-1900; @ %r1172 bra $L136; .loc 1 1314 12 mov.u32 %r1173,45; st.u8 [%frame],%r1173; .loc 1 1315 10 mov.u32 %r1174,-1900; sub.u32 %r379,%r1174,%r328; .loc 1 1322 11 setp.ne.u64 %r1175,%r35,0; @ %r1175 bra $L137; .loc 1 1314 9 mov.u64 %r381,%r1323; bra $L138; $L136: .loc 1 1310 26 add.u32 %r379,%r328,1900; .loc 1 1317 21 cvt.u16.u32 %r1177,%r79; set.u32.eq.u16 %r1178,%r1177,43; neg.s32 %r1179,%r1178; mov.u32 %r1176,%r1179; .loc 1 1317 40 set.u32.gt.u32 %r1181,%r379,9999; neg.s32 %r1182,%r1181; mov.u32 %r1180,%r1182; .loc 1 1317 32 cvt.u16.u8 %r1326,%r1176; mov.u16 %r1184,%r1326; cvt.u16.u8 %r1326,%r1180; mov.u16 %r1185,%r1326; and.b16 %r1183,%r1184,%r1185; cvt.u32.u16 %r1186,%r1183; .loc 1 1317 16 cvt.u16.u8 %r1187,%r1186; setp.eq.u16 %r1188,%r1187,0; @ %r1188 bra $L176; .loc 1 1319 12 mov.u32 %r1189,43; st.u8 [%frame],%r1189; .loc 1 1322 11 setp.eq.u64 %r1190,%r35,0; @ %r1190 bra $L139; $L137: .loc 1 1323 3 add.u64 %r35,%r35,-1; mov.u64 %r381,%r1323; bra $L138; $L176: .loc 1 1307 26 mov.u64 %r381,%frame; $L138: .loc 1 1324 15 mov.u32 %r1191,37; st.u8 [%r381],%r1191; .loc 1 1325 11 setp.ne.u32 %r1192,%r79,0; @ %r1192 bra $L140; .loc 1 1324 12 add.u64 %r333,%r381,1; bra $L141; $L140: .loc 1 1326 7 add.u64 %r333,%r381,2; .loc 1 1326 10 mov.u32 %r1193,48; st.u8 [%r381+1],%r1193; $L141: .loc 1 1327 8 cvta.const.u64 %r1195,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r333; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1195; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r1196,[%value_in]; } .loc 1 1328 14 sub.u64 %r1200,%r425,%r423; add.u64 %r1201,%r424,%r423; st.u32 [%stack+8],%r379; st.u64 [%stack],%r35; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1200; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1202,[%value_in]; } .loc 1 1330 8 setp.lt.s32 %r1204,%r1202,0; @ %r1204 bra $L142; cvt.s64.s32 %r1205,%r1202; add.u64 %r423,%r423,%r1205; setp.gt.u64 %r1206,%r425,%r423; @ %r1206 bra $L74; $L142: mov.u64 %r423,0; bra $L11; $L73: .loc 1 1334 14 ld.u32 %r1207,[%r427+32]; setp.lt.s32 %r1208,%r1207,0; @ %r1208 bra $L144; .loc 1 1338 8 { call __tz_lock; } .loc 1 1339 11 setp.ne.u32 %r1209,%r118,0; @ %r1209 bra $L145; .loc 1 1341 5 { call _tzset_unlocked; } $L145: .loc 1 1356 28 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r1210,[%value_in]; } .loc 1 1360 47 ld.u32 %r1212,[%r427+32]; set.u32.gt.s32 %r1213,%r1212,0; neg.s32 %r1214,%r1213; .loc 1 1360 51 cvt.s64.s32 %r1215,%r1214; shl.b64 %r1217,%r1215,2; add.u64 %r1218,%r1217,%r1215; shl.b64 %r1219,%r1218,3; add.u64 %r1220,%r1210,%r1219; .loc 1 1360 15 ld.u64 %r1222,[%r1220+40]; neg.s64 %r344,%r1222; .loc 1 1362 8 { call __tz_unlock; } .loc 1 1365 10 div.s64 %r1225,%r344,60; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1225; call (%value_in),labs,(%out_arg1); ld.param.u64 %r1226,[%value_in]; } .loc 1 1363 14 sub.u64 %r1230,%r425,%r423; add.u64 %r1231,%r424,%r423; rem.s64 %r1233,%r1226,60; st.u64 [%stack+8],%r1233; div.s64 %r1235,%r344,3600; st.u64 [%stack],%r1235; cvta.const.u64 %r1229,$LC15; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1231; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1229; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),sniprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1236,[%value_in]; } .loc 1 1366 15 setp.lt.s32 %r1238,%r1236,0; @ %r1238 bra $L75; cvt.s64.s32 %r1239,%r1236; add.u64 %r423,%r423,%r1239; setp.le.u64 %r1240,%r425,%r423; @ %r1240 bra $L75; mov.u32 %r118,1; bra $L74; $L22: .loc 1 1370 7 ld.u32 %r1241,[%r427+32]; setp.lt.s32 %r1242,%r1241,0; @ %r1242 bra $L144; .loc 1 1375 8 { call __tz_lock; } .loc 1 1376 11 setp.ne.u32 %r1243,%r118,0; @ %r1243 bra $L146; .loc 1 1378 5 { call _tzset_unlocked; } $L146: .loc 1 1389 9 cvta.global.u64 %r1244,_tzname; .loc 1 1389 35 ld.u32 %r1246,[%r427+32]; set.u32.gt.s32 %r1247,%r1246,0; neg.s32 %r1248,%r1247; .loc 1 1389 9 cvt.s64.s32 %r1249,%r1248; shl.b64 %r1250,%r1249,3; add.u64 %r1251,%r1244,%r1250; ld.u64 %r357,[%r1251]; .loc 1 1394 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r357; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r1253,[%value_in]; } .loc 1 1395 22 setp.ne.u64 %r1254,%r1253,0; @ %r1254 bra $L147; mov.u64 %r380,%r423; bra $L148; $L150: .loc 1 1397 8 setp.ge.u64 %r1255,%r360,%r1321; @ %r1255 bra $L149; $L151: .loc 1 1398 14 add.u64 %r360,%r360,1; .loc 1 1398 25 sub.u64 %r1256,%r360,%r423; add.u64 %r1257,%r357,%r1256; .loc 1 1398 18 add.u64 %r1258,%r424,%r360; ld.u8 %r1259,[%r1257+-1]; st.u8 [%r1258+-1],%r1259; .loc 1 1395 22 setp.ne.u64 %r1260,%r360,%r380; @ %r1260 bra $L150; bra $L148; $L149: .loc 1 1401 9 { call __tz_unlock; } .loc 1 1402 16 mov.u64 %r423,0; bra $L11; $L147: .loc 1 1397 8 setp.ge.u64 %r1261,%r423,%r1321; @ %r1261 bra $L149; add.u64 %r380,%r423,%r1253; mov.u64 %r360,%r423; bra $L151; $L148: .loc 1 1405 8 { call __tz_unlock; } mov.u64 %r423,%r380; mov.u32 %r118,1; bra $L74; $L30: .loc 1 1409 7 setp.ge.u64 %r1263,%r423,%r1321; @ %r1263 bra $L75; .loc 1 1410 17 add.u64 %r1264,%r424,%r423; mov.u32 %r1265,37; st.u8 [%r1264],%r1265; .loc 1 1410 13 add.u64 %r423,%r423,1; $L74: .loc 1 1417 10 ld.u8 %r1267,[%r32]; cvt.s16.s8 %r1266,%r1267; setp.eq.u16 %r1268,%r1266,0; @ %r1268 bra $L16; $L144: .loc 1 1418 8 add.u64 %r426,%r32,1; .loc 1 693 13 bra $L12; $L16: .loc 1 1422 6 setp.eq.u64 %r1269,%r425,0; @ %r1269 bra $L11; .loc 1 1423 14 add.u64 %r1270,%r424,%r423; mov.u32 %r1271,0; st.u8 [%r1270],%r1271; bra $L11; $L160: .loc 1 747 7 mov.u64 %r423,0; bra $L11; $L225: .loc 1 1000 13 mov.u32 %r1273,37; st.u8 [%frame+1],%r1273; mov.u64 %r378,%r1323; bra $L115; $L224: .loc 1 977 11 add.u32 %r47,%r804,%r140; .loc 1 978 9 setp.eq.u32 %r1274,%r47,-1; @ ! %r1274 bra $L110; bra $L153; $L139: .loc 1 1324 15 mov.u32 %r1275,37; st.u8 [%frame+1],%r1275; .loc 1 1319 9 mov.u64 %r381,%r1323; bra $L140; $L86: .loc 1 866 19 set.u32.gt.s32 %r1277,%r76,99; neg.s32 %r1278,%r1277; mov.u32 %r1276,%r1278; .loc 1 866 33 cvt.u16.u32 %r1280,%r79; set.u32.eq.u16 %r1281,%r1280,43; neg.s32 %r1282,%r1281; mov.u32 %r1279,%r1282; .loc 1 866 26 cvt.u16.u8 %r1326,%r1276; mov.u16 %r1284,%r1326; cvt.u16.u8 %r1326,%r1279; mov.u16 %r1285,%r1326; and.b16 %r1283,%r1284,%r1285; cvt.u32.u16 %r1286,%r1283; .loc 1 866 10 cvt.u16.u8 %r1287,%r1286; setp.ne.u16 %r1288,%r1287,0; @ ! %r1288 bra $L154; bra $L177; $L61: .loc 1 1034 18 ld.u32 %r65,[%r427+8]; .loc 1 1034 33 set.u32.ne.u32 %r1290,%r65,0; neg.s32 %r1291,%r1290; mov.u32 %r1289,%r1291; set.u32.ne.u32 %r1293,%r65,12; neg.s32 %r1294,%r1293; mov.u32 %r1292,%r1294; cvt.u16.u8 %r1326,%r1289; mov.u16 %r1296,%r1326; cvt.u16.u8 %r1326,%r1292; mov.u16 %r1297,%r1326; and.b16 %r1295,%r1296,%r1297; cvt.u32.u16 %r1298,%r1295; .loc 1 1035 11 cvt.u16.u8 %r1299,%r1298; setp.ne.u16 %r1300,%r1299,0; @ %r1300 bra $L155; mov.u32 %r163,12; .loc 1 1041 14 cvta.const.u64 %r166,$LC6; bra $L119; $L37: .loc 1 1034 18 ld.u32 %r65,[%r427+8]; .loc 1 1034 33 set.u32.ne.u32 %r1302,%r65,0; neg.s32 %r1303,%r1302; mov.u32 %r1301,%r1303; set.u32.ne.u32 %r1305,%r65,12; neg.s32 %r1306,%r1305; mov.u32 %r1304,%r1306; cvt.u16.u8 %r1326,%r1301; mov.u16 %r1308,%r1326; cvt.u16.u8 %r1326,%r1304; mov.u16 %r1309,%r1326; and.b16 %r1307,%r1308,%r1309; cvt.u32.u16 %r1310,%r1307; .loc 1 1035 11 cvt.u16.u8 %r1311,%r1310; setp.ne.u16 %r1312,%r1311,0; @ %r1312 bra $L155; mov.u32 %r163,12; .loc 1 1041 14 cvta.const.u64 %r166,$LC5; bra $L119; $L36: .loc 1 1024 11 ld.u32 %r361,[%r427+8]; .loc 1 1022 10 cvta.const.u64 %r159,$LC5; bra $L156; $L58: .loc 1 1024 11 ld.u32 %r361,[%r427+8]; .loc 1 1022 10 cvta.const.u64 %r159,$LC6; bra $L156; $L158: .loc 1 990 38 mad.lo.u32 %r393,%r137,100,%r394; bra $L157; $L108: .loc 1 977 11 add.u32 %r394,%r140,-1; .loc 1 978 9 setp.ne.u32 %r1314,%r140,0; @ %r1314 bra $L158; .loc 1 981 3 add.u32 %r1315,%r137,-1; .loc 1 990 38 mad.lo.u32 %r393,%r1315,100,99; bra $L157; $L11: .loc 1 1426 1 mov.u64 %value,%r423; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strftime .visible .func (.param .u64 %value_out) strftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1445 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 1448 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strftime_l .visible .func (.param .u64 %value_out) strftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1465 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 1467 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strlcat.o/0 0 0 644 2776 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlcat .visible .func (.param .u64 %value_out) strlcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strlcat.c" // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: strlcat .visible .func (.param .u64 %value_out) strlcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .u64 %r49; .reg .pred %r50; .reg .u16 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; .loc 1 55 25 setp.eq.u64 %r41,%r40,0; @ %r41 bra $L11; add.u64 %r31,%r38,%r40; .loc 1 49 24 mov.u64 %r26,%r38; bra $L3; $L5: .loc 1 56 18 add.u64 %r26,%r26,1; .loc 1 55 25 setp.eq.u64 %r42,%r26,%r31; @ %r42 bra $L4; $L3: ld.u8 %r44,[%r26]; cvt.s16.s8 %r43,%r44; setp.ne.u16 %r45,%r43,0; @ %r45 bra $L5; $L4: .loc 1 57 18 sub.u64 %r37,%r26,%r38; .loc 1 58 11 sub.u64 %r27,%r40,%r37; .loc 1 60 12 setp.eq.u64 %r46,%r40,%r37; @ %r46 bra $L2; .loc 1 62 16 ld.s8 %r25,[%r39]; .loc 1 62 19 setp.ne.u32 %r47,%r25,0; @ %r47 bra $L13; bra $L7; $L11: .loc 1 57 14 mov.u64 %r37,%r40; $L2: .loc 1 61 31 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r49,[%value_in]; } .loc 1 61 29 add.u64 %r37,%r37,%r49; bra $L1; $L13: .loc 1 62 19 mov.u64 %r29,%r39; $L6: .loc 1 63 20 setp.ne.u64 %r50,%r27,1; @ %r50 bra $L9; .loc 1 67 18 add.u64 %r32,%r29,1; .loc 1 62 19 ld.u8 %r52,[%r29+1]; cvt.s16.s8 %r51,%r52; setp.ne.u16 %r53,%r51,0; @ %r53 bra $L10; .loc 1 71 26 sub.u64 %r54,%r32,%r39; .loc 1 71 21 add.u64 %r37,%r37,%r54; bra $L7; $L9: .loc 1 64 30 cvt.u32.u32 %r55,%r25; st.u8 [%r26],%r55; .loc 1 65 26 add.u64 %r27,%r27,-1; mov.u64 %r32,%r29; .loc 1 64 27 add.u64 %r26,%r26,1; $L10: .loc 1 67 18 add.u64 %r29,%r32,1; .loc 1 62 16 ld.s8 %r25,[%r32+1]; .loc 1 62 19 setp.ne.u32 %r56,%r25,0; @ %r56 bra $L6; .loc 1 71 26 sub.u64 %r57,%r29,%r39; .loc 1 71 21 add.u64 %r37,%r37,%r57; $L7: .loc 1 69 12 mov.u32 %r58,0; st.u8 [%r26],%r58; $L1: .loc 1 72 1 mov.u64 %value,%r37; st.param.u64 [%value_out],%value; ret; } lib_a-strlcpy.o/0 0 0 644 2027 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlcpy .visible .func (.param .u64 %value_out) strlcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strlcpy.c" // BEGIN GLOBAL FUNCTION DEF: strlcpy .visible .func (.param .u64 %value_out) strlcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; .loc 1 52 12 setp.eq.u64 %r41,%r40,0; @ %r41 bra $L7; .loc 1 52 20 add.u64 %r29,%r40,-1; setp.eq.u64 %r42,%r40,1; @ %r42 bra $L8; mov.u64 %r32,%r38; mov.u64 %r30,%r39; .loc 1 56 30 add.u64 %r53,%r39,%r29; $L5: mov.u64 %r27,%r30; add.u64 %r30,%r30,1; mov.u64 %r26,%r30; mov.u64 %r36,%r32; add.u64 %r32,%r32,1; mov.u64 %r38,%r32; .loc 1 54 37 ld.s8 %r22,[%r27]; .loc 1 54 35 cvt.u32.u32 %r43,%r22; st.u8 [%r36],%r43; .loc 1 54 28 setp.eq.u32 %r44,%r22,0; @ %r44 bra $L4; .loc 1 56 30 setp.ne.u64 %r46,%r30,%r53; @ %r46 bra $L5; bra $L3; $L7: .loc 1 48 30 mov.u64 %r26,%r39; $L2: mov.u64 %r34,%r26; $L6: add.u64 %r34,%r34,1; mov.u64 %r26,%r34; .loc 1 63 24 ld.u8 %r48,[%r34+-1]; cvt.s16.s8 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L6; $L4: .loc 1 67 18 sub.u64 %r51,%r26,%r39; .loc 1 67 24 add.u64 %r50,%r51,-1; bra $L14; $L8: .loc 1 48 30 mov.u64 %r26,%r39; $L3: .loc 1 62 28 mov.u32 %r52,0; st.u8 [%r38],%r52; bra $L2; $L14: .loc 1 68 1 mov.u64 %value,%r50; st.param.u64 [%value_out],%value; ret; } lib_a-strlen.o/ 0 0 0 644 2090 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlen .visible .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/strlen.c" // BEGIN GLOBAL FUNCTION DEF: strlen .visible .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u32 %r65; .reg .pred %r66; mov.u64 %r43,%ar0; .loc 1 60 10 and.b64 %r44,%r43,7; setp.eq.u64 %r45,%r44,0; @ %r45 bra $L10; mov.u64 %r33,%r43; $L5: .loc 1 62 10 ld.u8 %r47,[%r33]; cvt.s16.s8 %r46,%r47; setp.ne.u16 %r48,%r46,0; @ %r48 bra $L3; .loc 1 63 13 sub.u64 %r42,%r33,%r43; bra $L1; $L3: .loc 1 64 10 add.u64 %r33,%r33,1; .loc 1 60 10 and.b64 %r49,%r33,7; setp.ne.u64 %r50,%r49,0; @ %r50 bra $L5; bra $L2; $L10: mov.u64 %r33,%r43; $L2: .loc 1 70 11 ld.u64 %r32,[%r33]; add.u64 %r51,%r32,-72340172838076673; not.b64 %r52,%r32; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 70 10 setp.ne.u64 %r55,%r54,0; @ %r55 bra $L6; $L7: .loc 1 71 17 add.u64 %r33,%r33,8; .loc 1 70 11 ld.u64 %r25,[%r33]; add.u64 %r56,%r25,-72340172838076673; not.b64 %r57,%r25; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 70 10 setp.eq.u64 %r60,%r59,0; @ %r60 bra $L7; $L6: .loc 1 79 10 ld.u8 %r62,[%r33]; cvt.s16.s8 %r61,%r62; setp.eq.u16 %r63,%r61,0; @ %r63 bra $L8; $L9: .loc 1 80 8 add.u64 %r33,%r33,1; .loc 1 79 10 ld.u8 %r65,[%r33]; cvt.s16.s8 %r64,%r65; setp.ne.u16 %r66,%r64,0; @ %r66 bra $L9; $L8: .loc 1 81 14 sub.u64 %r42,%r33,%r43; $L1: .loc 1 82 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } lib_a-strlwr.o/ 0 0 0 644 1454 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strlwr .visible .func (.param .u64 %value_out) strlwr (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/strlwr.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strlwr .visible .func (.param .u64 %value_out) strlwr (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .pred %r31; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r36; .reg .u16 %r39; .reg .u16 %r41; .reg .pred %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u16 %r49; mov.u64 %r30,%ar0; .loc 1 35 11 ld.u8 %r26,[%r30]; .loc 1 35 16 setp.ne.u32 %r31,%r26,0; @ ! %r31 bra $L7; mov.u64 %r28,%r30; cvta.const.u64 %r48,_ctype_+1; $L2: .loc 1 37 14 cvt.u32.u32 %r34,%r26; cvt.u64.u8 %r33,%r34; add.u64 %r36,%r48,%r33; ld.u8 %r49,[%r36]; mov.u16 %r39,%r49; and.b16 %r41,%r39,3; setp.ne.u16 %r42,%r41,1; @ %r42 bra $L3; .loc 1 37 12 cvt.u16.u32 %r44,%r26; add.u16 %r43,%r44,32; cvt.u32.u16 %r45,%r43; cvt.u32.u8 %r26,%r45; $L3: cvt.u32.u32 %r46,%r26; st.u8 [%r28],%r46; .loc 1 35 28 add.u64 %r28,%r28,1; .loc 1 35 11 ld.u8 %r26,[%r28]; .loc 1 35 16 setp.ne.u32 %r47,%r26,0; @ %r47 bra $L2; $L7: .loc 1 40 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /1310 0 0 0 644 2144 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncasecmp .visible .func (.param .u32 %value_out) strncasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strncasecmp.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strncasecmp .visible .func (.param .u32 %value_out) strncasecmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r49; .reg .u16 %r52; .reg .u16 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r59; .reg .u16 %r62; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .pred %r67; .reg .pred %r68; .reg .u64 %r70; .reg .u16 %r71; mov.u64 %r42,%ar0; mov.u64 %r43,%ar1; mov.u64 %r44,%ar2; .loc 1 45 13 setp.eq.u64 %r45,%r44,0; @ %r45 bra $L6; mov.u64 %r40,%r42; mov.u64 %r39,%r43; add.u64 %r37,%r40,%r44; cvta.const.u64 %r70,_ctype_+1; $L5: .loc 1 47 22 ld.s8 %r30,[%r40]; cvt.u32.u32 %r47,%r30; cvt.s64.s8 %r46,%r47; add.u64 %r49,%r70,%r46; ld.u8 %r71,[%r49]; mov.u16 %r52,%r71; and.b16 %r54,%r52,3; setp.ne.u16 %r55,%r54,1; @ %r55 bra $L3; add.u32 %r30,%r30,32; $L3: .loc 1 48 22 ld.s8 %r31,[%r39]; cvt.u32.u32 %r57,%r31; cvt.s64.s8 %r56,%r57; add.u64 %r59,%r70,%r56; ld.u8 %r71,[%r59]; mov.u16 %r62,%r71; and.b16 %r64,%r62,3; setp.ne.u16 %r65,%r64,1; @ %r65 bra $L4; add.u32 %r31,%r31,32; $L4: .loc 1 49 15 sub.u32 %r41,%r30,%r31; .loc 1 49 10 setp.ne.u32 %r66,%r30,%r31; @ %r66 bra $L1; .loc 1 49 32 setp.eq.u32 %r67,%r31,0; @ %r67 bra $L1; .loc 1 45 13 add.u64 %r40,%r40,1; add.u64 %r39,%r39,1; setp.ne.u64 %r68,%r37,%r40; @ %r68 bra $L5; bra $L1; $L6: mov.u32 %r41,0; $L1: .loc 1 53 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } lib_a-strncat.o/0 0 0 644 2644 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncat .visible .func (.param .u64 %value_out) strncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strncat.c" // BEGIN GLOBAL FUNCTION DEF: strncat .visible .func (.param .u64 %value_out) strncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r30; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u16 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .pred %r71; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 81 7 and.b64 %r49,%r46,7; .loc 1 81 6 setp.ne.u64 %r50,%r49,0; @ %r50 bra $L11; .loc 1 84 15 ld.u64 %r30,[%r46]; not.b64 %r51,%r30; add.u64 %r52,%r30,-72340172838076673; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 84 14 setp.eq.u64 %r55,%r54,0; @ %r55 bra $L12; mov.u64 %r35,%r46; bra $L2; $L11: mov.u64 %r35,%r46; $L2: .loc 1 90 10 ld.u8 %r57,[%r35]; cvt.s16.s8 %r56,%r57; setp.ne.u16 %r58,%r56,0; @ %r58 bra $L4; bra $L5; $L12: .loc 1 84 14 mov.u64 %r35,%r46; $L3: .loc 1 85 12 add.u64 %r35,%r35,8; .loc 1 84 15 ld.u64 %r24,[%r35]; add.u64 %r59,%r24,-72340172838076673; not.b64 %r60,%r24; and.b64 %r61,%r59,%r60; and.b64 %r62,%r61,-9187201950435737472; .loc 1 84 14 setp.eq.u64 %r63,%r62,0; @ %r63 bra $L3; bra $L2; $L4: .loc 1 91 7 add.u64 %r35,%r35,1; .loc 1 90 10 ld.u8 %r65,[%r35]; cvt.s16.s8 %r64,%r65; setp.ne.u16 %r66,%r64,0; @ %r66 bra $L4; bra $L5; $L9: .loc 1 101 10 add.u64 %r33,%r33,1; setp.ne.u64 %r67,%r40,%r41; @ %r67 bra $L13; .loc 1 102 6 mov.u32 %r68,0; st.u8 [%r40],%r68; bra $L7; $L5: mov.u64 %r34,%r35; mov.u64 %r33,%r47; add.u64 %r40,%r34,%r48; bra $L6; $L13: mov.u64 %r34,%r41; $L6: .loc 1 99 19 setp.ne.u64 %r69,%r34,%r40; @ ! %r69 bra $L7; add.u64 %r41,%r34,1; .loc 1 99 31 ld.s8 %r31,[%r33]; .loc 1 99 29 cvt.u32.u32 %r70,%r31; st.u8 [%r34],%r70; .loc 1 99 19 setp.ne.u32 %r71,%r31,0; @ %r71 bra $L9; $L7: .loc 1 107 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-strncmp.o/0 0 0 644 4023 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncmp .visible .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strncmp.c" // BEGIN GLOBAL FUNCTION DEF: strncmp .visible .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r28; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r38; .reg .u64 %r41; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .pred %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u16 %r106; mov.u64 %r50,%ar0; mov.u64 %r51,%ar1; mov.u64 %r52,%ar2; .loc 1 76 6 setp.eq.u64 %r53,%r52,0; @ %r53 bra $L9; .loc 1 80 8 or.b64 %r54,%r50,%r51; and.b64 %r55,%r54,7; .loc 1 80 6 setp.ne.u64 %r56,%r55,0; @ %r56 bra $L3; .loc 1 85 33 setp.gt.u64 %r57,%r52,7; @ %r57 bra $L4; bra $L3; $L5: .loc 1 87 13 add.u64 %r52,%r52,-8; .loc 1 91 14 setp.eq.u64 %r58,%r52,0; @ %r58 bra $L10; .loc 1 91 25 add.u64 %r59,%r28,-72340172838076673; not.b64 %r60,%r28; and.b64 %r61,%r59,%r60; and.b64 %r62,%r61,-9187201950435737472; .loc 1 91 22 setp.ne.u64 %r63,%r62,0; @ %r63 bra $L11; .loc 1 94 13 add.u64 %r50,%r50,8; .loc 1 95 13 add.u64 %r51,%r51,8; .loc 1 85 33 setp.le.u64 %r64,%r52,7; @ %r64 bra $L3; $L4: .loc 1 85 36 ld.u64 %r28,[%r50]; .loc 1 85 33 ld.u64 %r65,[%r51]; setp.eq.u64 %r66,%r28,%r65; @ %r66 bra $L5; $L3: .loc 1 103 21 ld.s8 %r30,[%r50]; .loc 1 103 28 ld.s8 %r31,[%r51]; .loc 1 103 18 cvt.u16.u32 %r67,%r30; cvt.u16.u32 %r68,%r31; setp.ne.u16 %r69,%r67,%r68; @ %r69 bra $L6; .loc 1 107 10 set.u32.eq.u64 %r71,%r52,1; neg.s32 %r72,%r71; mov.u32 %r70,%r72; .loc 1 107 18 set.u32.eq.u16 %r75,%r67,0; neg.s32 %r76,%r75; mov.u32 %r73,%r76; cvt.u16.u8 %r106,%r70; mov.u16 %r78,%r106; cvt.u16.u8 %r106,%r73; mov.u16 %r79,%r106; or.b16 %r77,%r78,%r79; cvt.u32.u16 %r80,%r77; cvt.u16.u8 %r81,%r80; setp.ne.u16 %r82,%r81,0; @ %r82 bra $L12; mov.u64 %r38,%r50; bra $L7; $L8: sub.u64 %r83,%r52,%r38; add.u64 %r41,%r83,-1; .loc 1 107 10 add.u64 %r84,%r50,%r41; set.u32.eq.u64 %r86,%r84,0; neg.s32 %r87,%r86; mov.u32 %r85,%r87; .loc 1 107 18 set.u32.eq.u16 %r90,%r98,0; neg.s32 %r91,%r90; mov.u32 %r88,%r91; cvt.u16.u8 %r106,%r85; mov.u16 %r93,%r106; cvt.u16.u8 %r106,%r88; mov.u16 %r94,%r106; or.b16 %r92,%r93,%r94; cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r96,%r95; setp.ne.u16 %r97,%r96,0; @ %r97 bra $L13; $L7: .loc 1 109 9 add.u64 %r38,%r38,1; .loc 1 110 9 add.u64 %r51,%r51,1; .loc 1 103 21 ld.s8 %r30,[%r38]; .loc 1 103 28 ld.s8 %r31,[%r51]; .loc 1 103 18 cvt.u16.u32 %r98,%r30; cvt.u16.u32 %r99,%r31; setp.eq.u16 %r100,%r98,%r99; @ %r100 bra $L8; $L6: .loc 1 112 11 cvt.u32.u32 %r102,%r30; cvt.u32.u8 %r101,%r102; .loc 1 112 37 cvt.u32.u32 %r104,%r31; cvt.u32.u8 %r103,%r104; .loc 1 112 34 sub.u32 %r49,%r101,%r103; bra $L1; $L9: .loc 1 77 12 mov.u32 %r49,0; bra $L1; $L10: mov.u32 %r49,0; bra $L1; $L11: mov.u32 %r49,0; bra $L1; $L12: mov.u32 %r49,0; bra $L1; $L13: mov.u32 %r49,0; $L1: .loc 1 114 1 mov.u32 %value,%r49; st.param.u32 [%value_out],%value; ret; } lib_a-strncpy.o/0 0 0 644 2924 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strncpy .visible .func (.param .u64 %value_out) strncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strncpy.c" // BEGIN GLOBAL FUNCTION DEF: strncpy .visible .func (.param .u64 %value_out) strncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r37; .reg .u64 %r40; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r78; .reg .u16 %r79; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; mov.u64 %r50,%ar2; .loc 1 89 8 or.b64 %r51,%r48,%r49; and.b64 %r52,%r51,7; .loc 1 89 6 set.u32.eq.u64 %r54,%r52,0; neg.s32 %r55,%r54; mov.u32 %r53,%r55; .loc 1 89 29 set.u32.gt.u64 %r57,%r50,7; neg.s32 %r58,%r57; mov.u32 %r56,%r58; cvt.u16.u8 %r79,%r53; mov.u16 %r60,%r79; cvt.u16.u8 %r79,%r56; mov.u16 %r61,%r79; and.b16 %r59,%r60,%r61; cvt.u32.u16 %r62,%r59; cvt.u16.u8 %r63,%r62; setp.eq.u16 %r64,%r63,0; @ %r64 bra $L9; mov.u64 %r46,%r48; bra $L3; $L4: .loc 1 98 10 add.u64 %r50,%r50,-8; .loc 1 99 33 add.u64 %r49,%r49,8; add.u64 %r46,%r46,8; mov.u64 %r37,%r46; .loc 1 99 19 st.u64 [%r44],%r24; .loc 1 96 41 setp.le.u64 %r65,%r50,7; @ %r65 bra $L2; $L3: mov.u64 %r44,%r46; .loc 1 96 45 ld.u64 %r24,[%r49]; add.u64 %r66,%r24,-72340172838076673; not.b64 %r67,%r24; and.b64 %r68,%r66,%r67; and.b64 %r69,%r68,-9187201950435737472; .loc 1 96 41 setp.eq.u64 %r70,%r69,0; @ %r70 bra $L4; mov.u64 %r37,%r46; bra $L2; $L8: .loc 1 108 7 add.u64 %r32,%r32,-1; sub.u64 %r40,%r78,%r32; .loc 1 109 21 ld.s8 %r30,[%r31]; .loc 1 109 19 cvt.u32.u32 %r71,%r30; st.u8 [%r33],%r71; .loc 1 109 10 add.u64 %r33,%r33,1; add.u64 %r31,%r31,1; setp.ne.u32 %r72,%r30,0; @ %r72 bra $L5; .loc 1 113 18 setp.ne.u64 %r73,%r32,0; @ ! %r73 bra $L7; .loc 1 114 12 mov.u32 %r75,0; bra $L6; $L9: .loc 1 83 9 mov.u64 %r37,%r48; $L2: mov.u64 %r31,%r49; mov.u64 %r33,%r37; mov.u64 %r32,%r50; add.u64 %r78,%r33,%r32; $L5: .loc 1 106 16 setp.ne.u64 %r74,%r32,0; @ %r74 bra $L8; bra $L7; $L6: .loc 1 114 12 st.u8 [%r40],%r75; .loc 1 113 18 add.u64 %r40,%r40,1; setp.ne.u64 %r76,%r78,%r40; @ %r76 bra $L6; $L7: .loc 1 118 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } lib_a-strnlen.o/0 0 0 644 1193 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strnlen .visible .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strnlen.c" // BEGIN GLOBAL FUNCTION DEF: strnlen .visible .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .pred %r31; .reg .u16 %r32; .reg .u32 %r33; .reg .pred %r34; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 38 18 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L2; mov.u64 %r27,%r29; bra $L1; $L5: .loc 1 39 8 add.u64 %r25,%r25,1; .loc 1 38 18 setp.ne.u64 %r31,%r24,%r25; @ %r31 bra $L4; .loc 1 41 14 sub.u64 %r27,%r24,%r28; bra $L1; $L2: add.u64 %r24,%r28,%r29; .loc 1 38 18 mov.u64 %r25,%r28; $L4: ld.u8 %r33,[%r25]; cvt.s16.s8 %r32,%r33; setp.ne.u16 %r34,%r32,0; @ %r34 bra $L5; .loc 1 41 14 sub.u64 %r27,%r25,%r28; $L1: .loc 1 42 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-strnstr.o/0 0 0 644 2723 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strnstr .visible .func (.param .u64 %value_out) strnstr (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strnstr.c" // BEGIN GLOBAL FUNCTION DECL: strnlen .extern .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memmem .extern .func (.param .u64 %value_out) memmem (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: strnstr .visible .func (.param .u64 %value_out) strnstr (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 43 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r34,[%value_in]; } .loc 1 45 6 setp.gt.u64 %r35,%r31,%r34; @ %r35 bra $L2; .loc 1 45 43 add.u64 %r36,%r30,%r34; .loc 1 45 33 ld.u8 %r38,[%r36]; cvt.s16.s8 %r37,%r38; setp.eq.u16 %r39,%r37,0; @ %r39 bra $L2; $L4: .loc 1 50 10 mov.u64 %r28,0; bra $L1; $L2: .loc 1 46 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r34; call (%value_in),memmem,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r44,[%value_in]; } mov.u64 %r28,%r44; .loc 1 47 8 setp.eq.u64 %r45,%r28,0; @ %r45 bra $L4; .loc 1 47 37 sub.u64 %r49,%r28,%r29; .loc 1 47 15 mov.u32 %r47,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r49; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r50,[%value_in]; } .loc 1 47 11 setp.ne.u64 %r51,%r50,0; @ %r51 bra $L4; $L1: .loc 1 51 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-strpbrk.o/0 0 0 644 1655 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strpbrk .visible .func (.param .u64 %value_out) strpbrk (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strpbrk.c" // BEGIN GLOBAL FUNCTION DEF: strpbrk .visible .func (.param .u64 %value_out) strpbrk (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u16 %r31; .reg .u16 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u16 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .pred %r40; .reg .pred %r41; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 32 8 ld.s8 %r22,[%r28]; .loc 1 32 6 setp.eq.u32 %r30,%r22,0; @ ! %r30 bra $L13; bra $L8; $L9: .loc 1 37 20 mov.u64 %r25,%r29; mov.u32 %r23,%r26; .loc 1 39 7 cvt.u16.u32 %r31,%r22; $L5: cvt.u16.u32 %r32,%r23; setp.eq.u16 %r33,%r31,%r32; @ %r33 bra $L4; .loc 1 37 25 add.u64 %r25,%r25,1; .loc 1 37 20 ld.s8 %r23,[%r25]; setp.ne.u32 %r34,%r23,0; @ %r34 bra $L5; bra $L6; $L13: ld.s8 %r26,[%r29]; setp.ne.u32 %r41,%r26,0; $L7: @ %r41 bra $L9; mov.u64 %r25,%r29; bra $L6; $L4: .loc 1 47 6 ld.u8 %r37,[%r25]; cvt.s16.s8 %r36,%r37; setp.eq.u16 %r38,%r36,0; selp.u64 %r27,0,%r28,%r38; bra $L1; $L8: .loc 1 48 8 mov.u64 %r27,0; bra $L1; $L6: .loc 1 44 9 add.u64 %r28,%r28,1; .loc 1 35 10 ld.s8 %r22,[%r28]; setp.ne.u32 %r40,%r22,0; @ %r40 bra $L7; bra $L4; $L1: .loc 1 51 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } /1331 0 0 0 644 48046 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: match_string .func (.param .u32 %value_out) match_string (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/time/strptime.c" // BEGIN GLOBAL FUNCTION DECL: strptime_l .visible .func (.param .u64 %value_out) strptime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strptime .visible .func (.param .u64 %value_out) strptime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: _C_time_locale .extern .const .align 8 .u64 _C_time_locale[63]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strncasecmp_l .extern .func (.param .u32 %value_out) strncasecmp_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtol_l .extern .func (.param .u64 %value_out) strtol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: strtoll_l .extern .func (.param .u64 %value_out) strtoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: localtime_r .extern .func (.param .u64 %value_out) localtime_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL VAR DEF: tm_year_base .visible .const .align 4 .u32 tm_year_base[1] = {1900 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[9] = {37,89,45,37,109,45,37,100,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[6] = {37,72,58,37,77,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[9] = {37,109,47,37,100,47,37,121,0 }; // BEGIN VAR DEF: _DAYS_BEFORE_MONTH .const .align 4 .u32 _DAYS_BEFORE_MONTH[12] = {0,31,59,90,120,151,181,212,243,273,304,334 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[9] = {37,72,58,37,77,58,37,83,0 }; // BEGIN FUNCTION DEF: match_string .func (.param .u32 %value_out) match_string (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r30; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .pred %r49; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; .loc 1 80 21 ld.u64 %r30,[%r35]; .loc 1 80 25 setp.eq.u64 %r37,%r30,0; @ %r37 bra $L2; .loc 1 80 12 mov.u32 %r33,0; $L5: .loc 1 81 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r39,[%value_in]; } .loc 1 81 6 cvt.u32.u64 %r40,%r39; .loc 1 83 6 cvt.s64.s32 %r24,%r40; ld.u64 %r42,[%r35]; ld.u64 %r41,[%r34]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r36; call (%value_in),strncasecmp_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r45,[%value_in]; } .loc 1 83 5 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L3; .loc 1 84 11 ld.u64 %r48,[%r34]; add.u64 %r47,%r48,%r24; st.u64 [%r34],%r47; .loc 1 85 13 bra $L1; $L3: .loc 1 80 34 add.u32 %r33,%r33,1; add.u64 %r35,%r35,8; .loc 1 80 21 ld.u64 %r30,[%r35]; .loc 1 80 25 setp.ne.u64 %r49,%r30,0; @ %r49 bra $L5; $L2: .loc 1 88 12 mov.u32 %r33,-1; $L1: .loc 1 89 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strptime_l .visible .func (.param .u64 %value_out) strptime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r27; .reg .u32 %r34; .reg .u64 %r40; .reg .u64 %r51; .reg .u64 %r58; .reg .u64 %r62; .reg .u64 %r66; .reg .u64 %r71; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r81; .reg .u64 %r101; .reg .u64 %r103; .reg .u64 %r110; .reg .u64 %r115; .reg .u64 %r119; .reg .u64 %r123; .reg .u64 %r127; .reg .u64 %r137; .reg .u64 %r141; .reg .u64 %r144; .reg .u64 %r147; .reg .u64 %r151; .reg .u32 %r156; .reg .u32 %r159; .reg .u32 %r161; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r166; .reg .u32 %r170; .reg .u32 %r172; .reg .u32 %r174; .reg .u64 %r177; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .u32 %r186; .reg .u32 %r188; .reg .u64 %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .u32 %r197; .reg .u32 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u32 %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .u64 %r225; .reg .u32 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r235; .reg .u32 %r239; .reg .u32 %r242; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r252; .reg .u32 %r259; .reg .u32 %r262; .reg .u32 %r263; .reg .u32 %r267; .reg .u32 %r268; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r285; .reg .u64 %r288; .reg .u64 %r293; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r297; .reg .pred %r298; .reg .u64 %r299; .reg .u32 %r300; .reg .u64 %r302; .reg .u16 %r305; .reg .u16 %r307; .reg .pred %r308; .reg .u64 %r309; .reg .u64 %r311; .reg .u16 %r314; .reg .u16 %r316; .reg .pred %r317; .reg .u64 %r318; .reg .u64 %r320; .reg .u16 %r323; .reg .u16 %r325; .reg .pred %r326; .reg .u16 %r327; .reg .pred %r328; .reg .pred %r329; .reg .u32 %r330; .reg .u16 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r336; .reg .u32 %r337; .reg .u16 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u32 %r341; .reg .u16 %r342; .reg .pred %r343; .reg .u16 %r344; .reg .pred %r345; .reg .pred %r347; .reg .pred %r349; .reg .pred %r351; .reg .pred %r353; .reg .pred %r355; .reg .pred %r357; .reg .pred %r359; .reg .pred %r360; .reg .pred %r362; .reg .pred %r364; .reg .pred %r366; .reg .pred %r368; .reg .pred %r370; .reg .pred %r372; .reg .pred %r374; .reg .pred %r376; .reg .pred %r378; .reg .pred %r380; .reg .pred %r382; .reg .pred %r384; .reg .pred %r386; .reg .pred %r388; .reg .pred %r390; .reg .pred %r392; .reg .pred %r394; .reg .pred %r396; .reg .pred %r398; .reg .pred %r400; .reg .pred %r402; .reg .pred %r404; .reg .pred %r406; .reg .pred %r408; .reg .pred %r410; .reg .pred %r412; .reg .pred %r414; .reg .pred %r416; .reg .pred %r418; .reg .pred %r420; .reg .pred %r422; .reg .pred %r424; .reg .pred %r426; .reg .pred %r428; .reg .pred %r430; .reg .pred %r432; .reg .pred %r434; .reg .pred %r436; .reg .pred %r438; .reg .pred %r440; .reg .u32 %r446; .reg .pred %r447; .reg .u32 %r453; .reg .pred %r454; .reg .u32 %r460; .reg .pred %r461; .reg .u64 %r463; .reg .u32 %r466; .reg .pred %r467; .reg .u32 %r470; .reg .u64 %r473; .reg .u64 %r474; .reg .u64 %r475; .reg .pred %r476; .reg .u32 %r478; .reg .u64 %r483; .reg .u64 %r484; .reg .u64 %r485; .reg .u64 %r486; .reg .pred %r487; .reg .u64 %r489; .reg .u64 %r492; .reg .u64 %r493; .reg .pred %r494; .reg .u32 %r497; .reg .u64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r503; .reg .u64 %r505; .reg .u64 %r508; .reg .u64 %r509; .reg .pred %r510; .reg .u64 %r511; .reg .pred %r512; .reg .u32 %r515; .reg .u64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .pred %r521; .reg .u32 %r524; .reg .u64 %r527; .reg .u64 %r528; .reg .u64 %r529; .reg .pred %r530; .reg .pred %r531; .reg .u32 %r534; .reg .u64 %r537; .reg .u64 %r538; .reg .u64 %r539; .reg .pred %r540; .reg .u32 %r541; .reg .u32 %r544; .reg .u64 %r547; .reg .u64 %r548; .reg .u64 %r549; .reg .pred %r550; .reg .u32 %r551; .reg .u32 %r554; .reg .u64 %r557; .reg .u64 %r558; .reg .u64 %r559; .reg .pred %r560; .reg .u16 %r561; .reg .u32 %r562; .reg .pred %r563; .reg .u64 %r564; .reg .u32 %r570; .reg .pred %r571; .reg .pred %r572; .reg .pred %r573; .reg .u32 %r574; .reg .u32 %r575; .reg .u64 %r580; .reg .u64 %r581; .reg .u64 %r582; .reg .u64 %r583; .reg .pred %r584; .reg .u64 %r586; .reg .u64 %r589; .reg .u64 %r590; .reg .pred %r591; .reg .u64 %r592; .reg .u64 %r593; .reg .u32 %r594; .reg .u32 %r597; .reg .u64 %r600; .reg .u64 %r601; .reg .u64 %r602; .reg .u64 %r603; .reg .pred %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .pred %r607; .reg .u64 %r608; .reg .pred %r609; .reg .u64 %r612; .reg .pred %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u32 %r618; .reg .u64 %r621; .reg .u64 %r622; .reg .u64 %r623; .reg .pred %r624; .reg .u16 %r625; .reg .u32 %r626; .reg .pred %r627; .reg .u64 %r628; .reg .u64 %r630; .reg .u64 %r633; .reg .u64 %r634; .reg .pred %r635; .reg .u32 %r638; .reg .u64 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .pred %r644; .reg .u32 %r645; .reg .u32 %r648; .reg .u64 %r651; .reg .u64 %r652; .reg .u64 %r653; .reg .pred %r654; .reg .u32 %r657; .reg .u64 %r660; .reg .u64 %r661; .reg .u64 %r662; .reg .pred %r663; .reg .u32 %r664; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .u32 %r669; .reg .pred %r674; .reg .u32 %r676; .reg .pred %r681; .reg .pred %r682; .reg .u32 %r684; .reg .u32 %r686; .reg .u32 %r687; .reg .pred %r688; .reg .u32 %r689; .reg .u32 %r692; .reg .u64 %r695; .reg .u64 %r696; .reg .u64 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u32 %r704; .reg .pred %r709; .reg .u32 %r711; .reg .pred %r716; .reg .pred %r717; .reg .u32 %r718; .reg .pred %r719; .reg .u32 %r720; .reg .u32 %r722; .reg .u32 %r724; .reg .u32 %r725; .reg .u32 %r726; .reg .pred %r727; .reg .u32 %r728; .reg .u32 %r731; .reg .u64 %r734; .reg .u64 %r735; .reg .u64 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u32 %r740; .reg .pred %r741; .reg .u32 %r743; .reg .pred %r748; .reg .u32 %r750; .reg .pred %r755; .reg .pred %r756; .reg .u32 %r757; .reg .u32 %r758; .reg .u32 %r759; .reg .u32 %r761; .reg .u32 %r763; .reg .u32 %r765; .reg .pred %r766; .reg .u32 %r767; .reg .u32 %r769; .reg .u32 %r770; .reg .u64 %r775; .reg .u64 %r776; .reg .u64 %r777; .reg .u64 %r778; .reg .pred %r779; .reg .u64 %r784; .reg .u64 %r785; .reg .u64 %r786; .reg .u64 %r787; .reg .pred %r788; .reg .u32 %r791; .reg .u64 %r794; .reg .u64 %r795; .reg .u64 %r796; .reg .pred %r797; .reg .pred %r798; .reg .u32 %r801; .reg .u64 %r804; .reg .u64 %r805; .reg .u64 %r806; .reg .pred %r807; .reg .u32 %r808; .reg .u16 %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u64 %r812; .reg .u16 %r813; .reg .u32 %r814; .reg .pred %r815; .reg .u16 %r816; .reg .u32 %r817; .reg .u16 %r818; .reg .pred %r819; .reg .u64 %r820; .reg .u16 %r821; .reg .u32 %r822; .reg .u16 %r823; .reg .pred %r824; .reg .u64 %r825; .reg .pred %r826; .reg .u32 %r827; .reg .pred %r828; .reg .u32 %r829; .reg .pred %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u64 %r833; .reg .u64 %r834; .reg .u64 %r835; .reg .u64 %r836; .reg .u32 %r837; .reg .u32 %r838; .reg .u32 %r839; .reg .u32 %r840; .reg .pred %r841; .reg .u32 %r843; .reg .pred %r849; .reg .u32 %r851; .reg .pred %r857; .reg .pred %r858; .reg .u32 %r859; .reg .u32 %r860; .reg .pred %r861; .reg .pred %r862; .reg .u32 %r864; .reg .u32 %r865; .reg .pred %r866; .reg .u32 %r868; .reg .pred %r874; .reg .u32 %r876; .reg .u32 %r883; .reg .u32 %r885; .reg .pred %r886; .reg .pred %r887; .reg .u32 %r888; .reg .pred %r889; .reg .u64 %r890; .reg .u64 %r891; .reg .u64 %r892; .reg .u64 %r893; .reg .u32 %r894; .reg .u32 %r895; .reg .u32 %r896; .reg .u32 %r897; .reg .pred %r898; .reg .u32 %r900; .reg .pred %r906; .reg .u32 %r908; .reg .pred %r914; .reg .pred %r915; .reg .u32 %r916; .reg .pred %r917; .reg .u32 %r918; .reg .pred %r919; .reg .u32 %r920; .reg .pred %r921; .reg .u32 %r923; .reg .pred %r928; .reg .u32 %r930; .reg .pred %r935; .reg .pred %r936; .reg .u32 %r937; .reg .u32 %r938; .reg .u32 %r939; .reg .u64 %r941; .reg .u64 %r944; .reg .u64 %r945; .reg .u64 %r946; .reg .u64 %r947; .reg .u64 %r948; .reg .u64 %r949; .reg .u16 %r951; mov.u64 %r294,%ar0; st.u64 [%frame+16],%r294; mov.u64 %r295,%ar1; mov.u64 %r296,%ar2; mov.u64 %r297,%ar3; .loc 1 164 15 ld.s8 %r186,[%r295]; .loc 1 164 26 setp.eq.u32 %r298,%r186,0; @ %r298 bra $L11; .loc 1 161 9 mov.u32 %r182,0; cvta.const.u64 %r941,_ctype_+1; .loc 1 253 9 add.u64 %r944,%frame,8; .loc 1 292 9 cvta.const.u64 %r945,_C_time_locale+328; add.u64 %r946,%frame,16; .loc 1 184 9 add.u64 %r947,%r945,-136; .loc 1 177 9 add.u64 %r948,%r945,-80; .loc 1 191 9 add.u64 %r949,%r945,-232; $L87: .loc 1 168 6 cvt.u32.u32 %r300,%r186; cvt.u64.u8 %r299,%r300; add.u64 %r302,%r941,%r299; .loc 1 168 5 ld.u8 %r951,[%r302]; mov.u16 %r305,%r951; and.b16 %r307,%r305,8; setp.eq.u16 %r308,%r307,0; @ %r308 bra $L12; .loc 1 169 13 ld.u64 %r194,[%frame+16]; ld.u8 %r309,[%r194]; add.u64 %r311,%r941,%r309; ld.u8 %r951,[%r311]; mov.u16 %r314,%r951; and.b16 %r316,%r314,8; setp.eq.u16 %r317,%r316,0; @ %r317 bra $L109; add.u64 %r288,%r194,1; $L14: .loc 1 170 3 mov.u64 %r27,%r288; st.u64 [%frame+16],%r288; .loc 1 169 13 add.u64 %r288,%r288,1; ld.u8 %r318,[%r27]; add.u64 %r320,%r941,%r318; ld.u8 %r951,[%r320]; mov.u16 %r323,%r951; and.b16 %r325,%r323,8; setp.ne.u16 %r326,%r325,0; @ %r326 bra $L14; mov.u64 %r181,%r295; bra $L13; $L12: .loc 1 171 12 cvt.u16.u32 %r327,%r186; setp.ne.u16 %r328,%r327,37; @ %r328 bra $L15; .loc 1 171 31 ld.s8 %r34,[%r295+1]; .loc 1 171 22 setp.eq.u32 %r329,%r34,0; @ %r329 bra $L15; .loc 1 173 12 cvt.u16.u32 %r331,%r34; set.u32.eq.u16 %r332,%r331,69; neg.s32 %r333,%r332; mov.u32 %r330,%r333; .loc 1 173 24 set.u32.eq.u16 %r336,%r331,79; neg.s32 %r337,%r336; mov.u32 %r334,%r337; .loc 1 173 19 cvt.u16.u8 %r951,%r330; mov.u16 %r339,%r951; cvt.u16.u8 %r951,%r334; mov.u16 %r340,%r951; or.b16 %r338,%r339,%r340; cvt.u32.u16 %r341,%r338; .loc 1 173 9 cvt.u16.u8 %r342,%r341; setp.ne.u16 %r343,%r342,0; @ %r343 bra $L16; .loc 1 172 8 add.u64 %r181,%r295,1; bra $L17; $L16: .loc 1 174 5 add.u64 %r181,%r295,2; ld.s8 %r34,[%r295+2]; $L17: .loc 1 175 6 cvt.u16.u32 %r344,%r34; setp.eq.u16 %r345,%r344,90; @ %r345 bra $L13; setp.gt.s16 %r347,%r344,90; @ %r347 bra $L18; setp.eq.u16 %r349,%r344,77; @ %r349 bra $L19; setp.gt.s16 %r351,%r344,77; @ %r351 bra $L20; setp.eq.u16 %r353,%r344,67; @ %r353 bra $L21; setp.gt.s16 %r355,%r344,67; @ %r355 bra $L22; setp.eq.u16 %r357,%r344,65; @ %r357 bra $L23; setp.gt.s16 %r359,%r344,65; @ %r359 bra $L24; setp.eq.u32 %r360,%r34,0; @ %r360 bra $L25; setp.eq.u16 %r362,%r344,37; @ %r362 bra $L26; bra $L27; $L24: setp.eq.u16 %r364,%r344,66; @ %r364 bra $L28; bra $L27; $L22: setp.eq.u16 %r366,%r344,70; @ %r366 bra $L29; setp.gt.s16 %r368,%r344,70; @ %r368 bra $L30; setp.eq.u16 %r370,%r344,68; @ %r370 bra $L31; bra $L27; $L30: setp.eq.u16 %r372,%r344,72; @ %r372 bra $L32; setp.eq.u16 %r374,%r344,73; @ %r374 bra $L33; bra $L27; $L20: setp.eq.u16 %r376,%r344,86; @ %r376 bra $L34; setp.gt.s16 %r378,%r344,86; @ %r378 bra $L35; setp.eq.u16 %r380,%r344,84; @ %r380 bra $L36; setp.gt.s16 %r382,%r344,84; @ %r382 bra $L37; setp.eq.u16 %r384,%r344,82; @ %r384 bra $L38; setp.eq.u16 %r386,%r344,83; @ %r386 bra $L39; bra $L27; $L37: setp.eq.u16 %r388,%r344,85; @ %r388 bra $L40; bra $L27; $L35: setp.eq.u16 %r390,%r344,88; @ %r390 bra $L41; setp.eq.u16 %r392,%r344,89; @ %r392 bra $L42; setp.eq.u16 %r394,%r344,87; @ %r394 bra $L43; bra $L27; $L18: setp.eq.u16 %r396,%r344,112; @ %r396 bra $L44; setp.gt.s16 %r398,%r344,112; @ %r398 bra $L45; setp.eq.u16 %r400,%r344,106; @ %r400 bra $L46; setp.gt.s16 %r402,%r344,106; @ %r402 bra $L47; setp.eq.u16 %r404,%r344,99; @ %r404 bra $L48; setp.gt.s16 %r406,%r344,99; @ %r406 bra $L49; setp.eq.u16 %r408,%r344,97; @ %r408 bra $L50; setp.eq.u16 %r410,%r344,98; @ %r410 bra $L51; bra $L27; $L49: setp.le.s16 %r412,%r344,101; @ %r412 bra $L52; setp.eq.u16 %r414,%r344,104; @ %r414 bra $L51; bra $L27; $L47: setp.eq.u16 %r416,%r344,109; @ %r416 bra $L53; setp.gt.s16 %r418,%r344,109; @ %r418 bra $L54; setp.eq.u16 %r420,%r344,107; @ %r420 bra $L32; setp.eq.u16 %r422,%r344,108; @ %r422 bra $L33; bra $L27; $L54: setp.eq.u16 %r424,%r344,110; @ %r424 bra $L55; bra $L27; $L45: setp.eq.u16 %r426,%r344,117; @ %r426 bra $L56; setp.gt.s16 %r428,%r344,117; @ %r428 bra $L57; setp.eq.u16 %r430,%r344,115; @ %r430 bra $L58; setp.eq.u16 %r432,%r344,116; @ %r432 bra $L59; setp.eq.u16 %r434,%r344,114; @ %r434 bra $L60; bra $L27; $L57: setp.eq.u16 %r436,%r344,120; @ %r436 bra $L61; setp.eq.u16 %r438,%r344,121; @ %r438 bra $L62; setp.eq.u16 %r440,%r344,119; @ %r440 bra $L63; bra $L27; $L23: .loc 1 177 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r948; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r446,[%value_in]; } .loc 1 178 6 setp.lt.s32 %r447,%r446,0; @ %r447 bra $L68; .loc 1 180 20 st.u32 [%r296+24],%r446; .loc 1 181 7 or.b32 %r182,%r182,8; .loc 1 182 3 bra $L13; $L50: .loc 1 184 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r947; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r453,[%value_in]; } .loc 1 185 6 setp.lt.s32 %r454,%r453,0; @ %r454 bra $L68; .loc 1 187 20 st.u32 [%r296+24],%r453; .loc 1 188 7 or.b32 %r182,%r182,8; .loc 1 189 3 bra $L13; $L28: .loc 1 191 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r949; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r460,[%value_in]; } .loc 1 192 6 setp.lt.s32 %r461,%r460,0; @ %r461 bra $L68; .loc 1 194 19 st.u32 [%r296+16],%r460; .loc 1 195 7 or.b32 %r182,%r182,2; .loc 1 196 3 bra $L13; $L51: .loc 1 199 9 cvta.const.u64 %r463,_C_time_locale; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r463; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r466,[%value_in]; } .loc 1 200 6 setp.lt.s32 %r467,%r466,0; @ %r467 bra $L68; .loc 1 202 19 st.u32 [%r296+16],%r466; .loc 1 203 7 or.b32 %r182,%r182,2; .loc 1 204 3 bra $L13; $L21: .loc 1 206 9 ld.u64 %r473,[%frame+16]; mov.u32 %r470,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r473; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r470; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r474,[%value_in]; } .loc 1 206 7 cvt.u32.u64 %r214,%r474; .loc 1 207 9 ld.u64 %r40,[%frame+8]; .loc 1 207 6 ld.u64 %r475,[%frame+16]; setp.eq.u64 %r476,%r40,%r475; @ %r476 bra $L68; .loc 1 209 34 mad.lo.u32 %r478,%r214,100,-1900; .loc 1 209 20 st.u32 [%r296+20],%r478; .loc 1 210 7 st.u64 [%frame+16],%r40; .loc 1 211 7 or.b32 %r182,%r182,4; .loc 1 212 3 bra $L13; $L48: .loc 1 214 24 cvta.const.u64 %r483,_C_time_locale; .loc 1 214 7 ld.u64 %r484,[%r483+320]; ld.u64 %r485,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r485; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r484; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r486,[%value_in]; } .loc 1 214 5 st.u64 [%frame+8],%r486; .loc 1 215 6 setp.eq.u64 %r487,%r486,0; @ %r487 bra $L68; .loc 1 217 7 st.u64 [%frame+16],%r486; .loc 1 218 7 or.b32 %r182,%r182,15; .loc 1 219 3 bra $L13; $L31: .loc 1 221 7 ld.u64 %r492,[%frame+16]; cvta.const.u64 %r489,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r492; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r489; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r493,[%value_in]; } .loc 1 221 5 st.u64 [%frame+8],%r493; .loc 1 222 6 setp.eq.u64 %r494,%r493,0; @ %r494 bra $L68; .loc 1 224 7 st.u64 [%frame+16],%r493; .loc 1 225 7 or.b32 %r182,%r182,7; .loc 1 226 3 bra $L13; $L52: .loc 1 229 9 ld.u64 %r500,[%frame+16]; mov.u32 %r497,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r500; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r497; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r501,[%value_in]; } .loc 1 229 7 cvt.u32.u64 %r202,%r501; .loc 1 230 9 ld.u64 %r51,[%frame+8]; .loc 1 230 6 ld.u64 %r502,[%frame+16]; setp.eq.u64 %r503,%r51,%r502; @ %r503 bra $L68; .loc 1 232 20 st.u32 [%r296+12],%r202; .loc 1 233 7 st.u64 [%frame+16],%r51; .loc 1 234 7 or.b32 %r182,%r182,1; .loc 1 235 3 bra $L13; $L29: .loc 1 237 7 ld.u64 %r508,[%frame+16]; cvta.const.u64 %r505,$LC1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r508; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r505; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r509,[%value_in]; } .loc 1 237 5 st.u64 [%frame+8],%r509; .loc 1 238 6 setp.eq.u64 %r510,%r509,0; @ %r510 bra $L68; .loc 1 238 17 ld.u64 %r511,[%frame+16]; setp.eq.u64 %r512,%r509,%r511; @ %r512 bra $L68; .loc 1 240 7 st.u64 [%frame+16],%r509; .loc 1 241 7 or.b32 %r182,%r182,7; .loc 1 242 3 bra $L13; $L32: .loc 1 245 9 ld.u64 %r518,[%frame+16]; mov.u32 %r515,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r518; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r515; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r519,[%value_in]; } .loc 1 245 7 cvt.u32.u64 %r213,%r519; .loc 1 246 9 ld.u64 %r58,[%frame+8]; .loc 1 246 6 ld.u64 %r520,[%frame+16]; setp.eq.u64 %r521,%r58,%r520; @ %r521 bra $L68; .loc 1 248 20 st.u32 [%r296+8],%r213; .loc 1 249 7 st.u64 [%frame+16],%r58; .loc 1 250 3 bra $L13; $L33: .loc 1 253 9 ld.u64 %r527,[%frame+16]; mov.u32 %r524,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r527; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r524; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r528,[%value_in]; } .loc 1 253 7 cvt.u32.u64 %r212,%r528; .loc 1 254 9 ld.u64 %r62,[%frame+8]; .loc 1 254 6 ld.u64 %r529,[%frame+16]; setp.eq.u64 %r530,%r62,%r529; @ %r530 bra $L68; .loc 1 256 6 setp.ne.u32 %r531,%r212,12; .loc 1 257 24 selp.u32 %r212,%r212,0,%r531; st.u32 [%r296+8],%r212; .loc 1 260 7 st.u64 [%frame+16],%r62; .loc 1 261 3 bra $L13; $L46: .loc 1 263 9 ld.u64 %r537,[%frame+16]; mov.u32 %r534,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r537; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r534; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r538,[%value_in]; } .loc 1 263 7 cvt.u32.u64 %r201,%r538; .loc 1 264 9 ld.u64 %r66,[%frame+8]; .loc 1 264 6 ld.u64 %r539,[%frame+16]; setp.eq.u64 %r540,%r66,%r539; @ %r540 bra $L68; .loc 1 266 26 add.u32 %r541,%r201,-1; .loc 1 266 20 st.u32 [%r296+28],%r541; .loc 1 267 7 st.u64 [%frame+16],%r66; .loc 1 268 7 or.b32 %r182,%r182,16; .loc 1 269 3 bra $L13; $L53: .loc 1 271 9 ld.u64 %r547,[%frame+16]; mov.u32 %r544,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r547; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r544; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r548,[%value_in]; } .loc 1 271 7 cvt.u32.u64 %r200,%r548; .loc 1 272 9 ld.u64 %r71,[%frame+8]; .loc 1 272 6 ld.u64 %r549,[%frame+16]; setp.eq.u64 %r550,%r71,%r549; @ %r550 bra $L68; .loc 1 274 25 add.u32 %r551,%r200,-1; .loc 1 274 19 st.u32 [%r296+16],%r551; .loc 1 275 7 st.u64 [%frame+16],%r71; .loc 1 276 7 or.b32 %r182,%r182,2; .loc 1 277 3 bra $L13; $L19: .loc 1 279 9 ld.u64 %r557,[%frame+16]; mov.u32 %r554,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r557; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r554; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r558,[%value_in]; } .loc 1 279 7 cvt.u32.u64 %r211,%r558; .loc 1 280 9 ld.u64 %r76,[%frame+8]; .loc 1 280 6 ld.u64 %r559,[%frame+16]; setp.eq.u64 %r560,%r76,%r559; @ %r560 bra $L68; .loc 1 282 19 st.u32 [%r296+4],%r211; .loc 1 283 7 st.u64 [%frame+16],%r76; .loc 1 284 3 bra $L13; $L55: .loc 1 286 7 ld.u64 %r78,[%frame+16]; .loc 1 286 6 ld.u8 %r562,[%r78]; cvt.s16.s8 %r561,%r562; setp.ne.u16 %r563,%r561,10; @ %r563 bra $L68; .loc 1 287 7 add.u64 %r564,%r78,1; st.u64 [%frame+16],%r564; .loc 1 290 3 bra $L13; $L44: .loc 1 292 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r946; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r945; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r297; call (%value_in),match_string,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r570,[%value_in]; } .loc 1 293 6 setp.lt.s32 %r571,%r570,0; @ %r571 bra $L68; .loc 1 295 14 ld.u32 %r81,[%r296+8]; .loc 1 295 6 setp.ne.u32 %r572,%r81,0; @ %r572 bra $L66; .loc 1 296 10 setp.ne.u32 %r573,%r570,1; @ %r573 bra $L13; .loc 1 297 21 mov.u32 %r574,12; st.u32 [%r296+8],%r574; bra $L13; $L66: .loc 1 299 24 add.u32 %r575,%r81,12; st.u32 [%r296+8],%r575; bra $L13; $L60: .loc 1 302 24 cvta.const.u64 %r580,_C_time_locale; .loc 1 302 7 ld.u64 %r581,[%r580+456]; ld.u64 %r582,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r582; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r581; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r583,[%value_in]; } .loc 1 302 5 st.u64 [%frame+8],%r583; .loc 1 303 6 setp.eq.u64 %r584,%r583,0; @ %r584 bra $L68; .loc 1 305 7 st.u64 [%frame+16],%r583; .loc 1 306 3 bra $L13; $L38: .loc 1 308 7 ld.u64 %r589,[%frame+16]; cvta.const.u64 %r586,$LC2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r589; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r586; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r590,[%value_in]; } .loc 1 308 5 st.u64 [%frame+8],%r590; .loc 1 309 6 setp.eq.u64 %r591,%r590,0; @ %r591 bra $L68; .loc 1 311 7 st.u64 [%frame+16],%r590; .loc 1 312 3 bra $L13; $L58: .loc 1 319 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r592,[%value_in]; } .loc 1 319 18 ld.u32 %r197,[%r592]; .loc 1 320 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r593,[%value_in]; } .loc 1 320 13 mov.u32 %r594,0; st.u32 [%r593],%r594; .loc 1 321 13 ld.u64 %r600,[%frame+16]; mov.u32 %r597,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r600; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r597; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r601,[%value_in]; } .loc 1 322 9 st.u64 [%frame],%r601; .loc 1 323 10 ld.u64 %r602,[%frame+8]; ld.u64 %r603,[%frame+16]; setp.ne.u64 %r604,%r602,%r603; @ ! %r604 bra $L68; .loc 1 324 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r605,[%value_in]; } .loc 1 324 4 ld.u32 %r606,[%r605]; setp.ne.u32 %r607,%r606,0; @ %r607 bra $L68; .loc 1 325 4 ld.u64 %r608,[%frame]; setp.ne.u64 %r609,%r608,%r601; @ %r609 bra $L68; .loc 1 326 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r296; call (%value_in),localtime_r,(%out_arg1,%out_arg2); ld.param.u64 %r612,[%value_in]; } .loc 1 326 4 setp.ne.u64 %r613,%r612,%r296; @ %r613 bra $L68; .loc 1 328 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r614,[%value_in]; } .loc 1 328 13 st.u32 [%r614],%r197; .loc 1 329 11 ld.u64 %r615,[%frame+8]; st.u64 [%frame+16],%r615; .loc 1 330 11 mov.u32 %r182,31; bra $L13; $L39: .loc 1 334 9 ld.u64 %r621,[%frame+16]; mov.u32 %r618,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r621; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r618; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r622,[%value_in]; } .loc 1 334 7 cvt.u32.u64 %r210,%r622; .loc 1 335 9 ld.u64 %r101,[%frame+8]; .loc 1 335 6 ld.u64 %r623,[%frame+16]; setp.eq.u64 %r624,%r101,%r623; @ %r624 bra $L68; .loc 1 337 19 st.u32 [%r296],%r210; .loc 1 338 7 st.u64 [%frame+16],%r101; .loc 1 339 3 bra $L13; $L59: .loc 1 341 7 ld.u64 %r103,[%frame+16]; .loc 1 341 6 ld.u8 %r626,[%r103]; cvt.s16.s8 %r625,%r626; setp.ne.u16 %r627,%r625,9; @ %r627 bra $L68; .loc 1 342 7 add.u64 %r628,%r103,1; st.u64 [%frame+16],%r628; .loc 1 345 3 bra $L13; $L36: .loc 1 347 7 ld.u64 %r633,[%frame+16]; cvta.const.u64 %r630,$LC3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r633; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r630; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r634,[%value_in]; } .loc 1 347 5 st.u64 [%frame+8],%r634; .loc 1 348 6 setp.eq.u64 %r635,%r634,0; @ %r635 bra $L68; .loc 1 350 7 st.u64 [%frame+16],%r634; .loc 1 351 3 bra $L13; $L56: .loc 1 353 9 ld.u64 %r641,[%frame+16]; mov.u32 %r638,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r641; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r638; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r642,[%value_in]; } .loc 1 353 7 cvt.u32.u64 %r196,%r642; .loc 1 354 9 ld.u64 %r110,[%frame+8]; .loc 1 354 6 ld.u64 %r643,[%frame+16]; setp.eq.u64 %r644,%r110,%r643; @ %r644 bra $L68; .loc 1 356 26 add.u32 %r645,%r196,-1; .loc 1 356 20 st.u32 [%r296+24],%r645; .loc 1 357 7 st.u64 [%frame+16],%r110; .loc 1 358 7 or.b32 %r182,%r182,8; .loc 1 359 3 bra $L13; $L63: .loc 1 361 9 ld.u64 %r651,[%frame+16]; mov.u32 %r648,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r651; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r648; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r652,[%value_in]; } .loc 1 361 7 cvt.u32.u64 %r195,%r652; .loc 1 362 9 ld.u64 %r115,[%frame+8]; .loc 1 362 6 ld.u64 %r653,[%frame+16]; setp.eq.u64 %r654,%r115,%r653; @ %r654 bra $L68; .loc 1 364 20 st.u32 [%r296+24],%r195; .loc 1 365 7 st.u64 [%frame+16],%r115; .loc 1 366 7 or.b32 %r182,%r182,8; .loc 1 367 3 bra $L13; $L40: .loc 1 369 9 ld.u64 %r660,[%frame+16]; mov.u32 %r657,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r660; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r657; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r661,[%value_in]; } .loc 1 369 7 cvt.u32.u64 %r209,%r661; .loc 1 370 9 ld.u64 %r119,[%frame+8]; .loc 1 370 6 ld.u64 %r662,[%frame+16]; setp.eq.u64 %r663,%r119,%r662; @ %r663 bra $L68; .loc 1 97 19 ld.u32 %r664,[%r296+20]; add.u32 %r231,%r664,1899; setp.le.s32 %r665,%r231,1969; @ %r665 bra $L110; .loc 1 95 9 mov.u32 %r235,4; $L73: .loc 1 98 13 add.u32 %r230,%r235,365; .loc 1 70 23 and.b32 %r666,%r231,3; .loc 1 70 28 setp.ne.u32 %r667,%r666,0; @ %r667 bra $L71; rem.s32 %r669,%r231,100; setp.eq.u32 %r674,%r669,0; @ %r674 bra $L72; .loc 1 98 19 add.u32 %r230,%r235,366; bra $L71; $L72: rem.s32 %r676,%r231,400; .loc 1 70 50 setp.ne.u32 %r681,%r676,0; @ %r681 bra $L71; .loc 1 98 19 add.u32 %r230,%r235,366; $L71: .loc 1 98 6 rem.s32 %r235,%r230,7; .loc 1 97 19 add.u32 %r231,%r231,-1; setp.ne.u32 %r682,%r231,1969; @ %r682 bra $L73; bra $L70; $L110: .loc 1 95 9 mov.u32 %r235,4; $L70: .loc 1 112 29 shl.b32 %r684,%r209,3; .loc 1 112 33 ld.u32 %r687,[%r296+24]; vsub.u32.u32.u32.add %r686,%r684,%r209,%r687; .loc 1 112 52 sub.u32 %r229,%r686,%r235; .loc 1 112 22 st.u32 [%r296+28],%r229; .loc 1 113 8 setp.ge.s32 %r688,%r229,0; @ %r688 bra $L74; .loc 1 114 19 st.u32 [%r296+24],%r235; .loc 1 115 19 mov.u32 %r689,0; st.u32 [%r296+28],%r689; $L74: .loc 1 373 7 st.u64 [%frame+16],%r119; .loc 1 374 7 or.b32 %r182,%r182,16; .loc 1 375 3 bra $L13; $L34: .loc 1 377 9 ld.u64 %r695,[%frame+16]; mov.u32 %r692,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r695; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r692; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r696,[%value_in]; } .loc 1 377 7 cvt.u32.u64 %r208,%r696; .loc 1 378 9 ld.u64 %r123,[%frame+8]; .loc 1 378 6 ld.u64 %r697,[%frame+16]; setp.eq.u64 %r698,%r123,%r697; @ %r698 bra $L68; .loc 1 97 19 ld.u32 %r699,[%r296+20]; add.u32 %r248,%r699,1899; setp.le.s32 %r700,%r248,1969; @ %r700 bra $L111; .loc 1 95 9 mov.u32 %r252,4; $L78: .loc 1 98 13 add.u32 %r247,%r252,365; .loc 1 70 23 and.b32 %r701,%r248,3; .loc 1 70 28 setp.ne.u32 %r702,%r701,0; @ %r702 bra $L76; rem.s32 %r704,%r248,100; setp.eq.u32 %r709,%r704,0; @ %r709 bra $L77; .loc 1 98 19 add.u32 %r247,%r252,366; bra $L76; $L77: rem.s32 %r711,%r248,400; .loc 1 70 50 setp.ne.u32 %r716,%r711,0; @ %r716 bra $L76; .loc 1 98 19 add.u32 %r247,%r252,366; $L76: .loc 1 98 6 rem.s32 %r252,%r247,7; .loc 1 97 19 add.u32 %r248,%r248,-1; setp.ne.u32 %r717,%r248,1969; @ %r717 bra $L78; .loc 1 143 61 add.u32 %r718,%r252,6; .loc 1 143 9 rem.s32 %r239,%r718,7; .loc 1 146 8 setp.gt.s32 %r719,%r239,3; .loc 1 147 9 selp.u32 %r242,0,7,%r719; bra $L75; $L111: .loc 1 143 9 mov.u32 %r239,3; .loc 1 147 9 mov.u32 %r242,7; $L75: .loc 1 149 39 add.u32 %r720,%r208,-1; .loc 1 149 44 shl.b32 %r722,%r720,3; .loc 1 149 31 vsub.u32.u32.u32.add %r724,%r722,%r720,%r242; .loc 1 149 48 ld.u32 %r726,[%r296+24]; add.u32 %r725,%r724,%r726; .loc 1 149 67 sub.u32 %r246,%r725,%r239; .loc 1 149 22 st.u32 [%r296+28],%r246; .loc 1 150 8 setp.ge.s32 %r727,%r246,0; @ %r727 bra $L79; .loc 1 151 19 st.u32 [%r296+24],%r239; .loc 1 152 19 mov.u32 %r728,0; st.u32 [%r296+28],%r728; $L79: .loc 1 381 7 st.u64 [%frame+16],%r123; .loc 1 382 7 or.b32 %r182,%r182,16; .loc 1 383 3 bra $L13; $L43: .loc 1 385 9 ld.u64 %r734,[%frame+16]; mov.u32 %r731,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r734; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r731; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r735,[%value_in]; } .loc 1 385 7 cvt.u32.u64 %r206,%r735; .loc 1 386 9 ld.u64 %r127,[%frame+8]; .loc 1 386 6 ld.u64 %r736,[%frame+16]; setp.eq.u64 %r737,%r127,%r736; @ %r737 bra $L68; .loc 1 97 19 ld.u32 %r738,[%r296+20]; add.u32 %r263,%r738,1899; setp.le.s32 %r739,%r263,1969; @ %r739 bra $L113; .loc 1 95 9 mov.u32 %r267,4; $L83: .loc 1 98 13 add.u32 %r262,%r267,365; .loc 1 70 23 and.b32 %r740,%r263,3; .loc 1 70 28 setp.ne.u32 %r741,%r740,0; @ %r741 bra $L81; rem.s32 %r743,%r263,100; setp.eq.u32 %r748,%r743,0; @ %r748 bra $L82; .loc 1 98 19 add.u32 %r262,%r267,366; bra $L81; $L82: rem.s32 %r750,%r263,400; .loc 1 70 50 setp.ne.u32 %r755,%r750,0; @ %r755 bra $L81; .loc 1 98 19 add.u32 %r262,%r267,366; $L81: .loc 1 98 6 rem.s32 %r267,%r262,7; .loc 1 97 19 add.u32 %r263,%r263,-1; setp.ne.u32 %r756,%r263,1969; @ %r756 bra $L83; .loc 1 127 61 add.u32 %r757,%r267,6; .loc 1 127 9 rem.s32 %r285,%r757,7; bra $L80; $L113: .loc 1 97 19 mov.u32 %r285,3; $L80: .loc 1 129 53 ld.u32 %r759,[%r296+24]; add.u32 %r758,%r759,6; .loc 1 129 58 rem.s32 %r761,%r758,7; .loc 1 129 29 shl.b32 %r763,%r206,3; .loc 1 129 33 vsub.u32.u32.u32.add %r765,%r763,%r206,%r761; .loc 1 129 62 sub.u32 %r259,%r765,%r285; .loc 1 129 22 st.u32 [%r296+28],%r259; .loc 1 130 8 setp.ge.s32 %r766,%r259,0; @ %r766 bra $L84; .loc 1 131 27 add.u32 %r767,%r285,1; .loc 1 131 32 rem.s32 %r769,%r767,7; .loc 1 131 19 st.u32 [%r296+24],%r769; .loc 1 132 19 mov.u32 %r770,0; st.u32 [%r296+28],%r770; $L84: .loc 1 389 7 st.u64 [%frame+16],%r127; .loc 1 390 7 or.b32 %r182,%r182,16; .loc 1 391 3 bra $L13; $L61: .loc 1 393 24 cvta.const.u64 %r775,_C_time_locale; .loc 1 393 7 ld.u64 %r776,[%r775+312]; ld.u64 %r777,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r777; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r776; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r778,[%value_in]; } .loc 1 393 5 st.u64 [%frame+8],%r778; .loc 1 394 6 setp.eq.u64 %r779,%r778,0; @ %r779 bra $L68; .loc 1 396 7 st.u64 [%frame+16],%r778; .loc 1 397 7 or.b32 %r182,%r182,7; .loc 1 398 3 bra $L13; $L41: .loc 1 400 24 cvta.const.u64 %r784,_C_time_locale; .loc 1 400 7 ld.u64 %r785,[%r784+304]; ld.u64 %r786,[%frame+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r786; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r296; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r787,[%value_in]; } .loc 1 400 5 st.u64 [%frame+8],%r787; .loc 1 401 6 setp.eq.u64 %r788,%r787,0; @ %r788 bra $L68; .loc 1 403 7 st.u64 [%frame+16],%r787; .loc 1 404 7 bra $L13; $L62: .loc 1 406 9 ld.u64 %r794,[%frame+16]; mov.u32 %r791,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r794; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r791; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r795,[%value_in]; } .loc 1 406 7 cvt.u32.u64 %r183,%r795; .loc 1 407 9 ld.u64 %r137,[%frame+8]; .loc 1 407 6 ld.u64 %r796,[%frame+16]; setp.eq.u64 %r797,%r137,%r796; @ %r797 bra $L68; .loc 1 409 6 setp.gt.s32 %r798,%r183,69; @ %r798 bra $L85; .loc 1 410 30 add.u32 %r183,%r183,100; $L85: st.u32 [%r296+20],%r183; .loc 1 413 7 st.u64 [%frame+16],%r137; .loc 1 414 7 or.b32 %r182,%r182,4; .loc 1 415 3 bra $L13; $L42: .loc 1 417 9 ld.u64 %r804,[%frame+16]; mov.u32 %r801,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r804; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r944; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r801; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r297; call (%value_in),strtol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r805,[%value_in]; } .loc 1 417 7 cvt.u32.u64 %r205,%r805; .loc 1 418 9 ld.u64 %r141,[%frame+8]; .loc 1 418 6 ld.u64 %r806,[%frame+16]; setp.eq.u64 %r807,%r141,%r806; @ %r807 bra $L68; .loc 1 420 26 add.u32 %r808,%r205,-1900; .loc 1 420 20 st.u32 [%r296+20],%r808; .loc 1 421 7 st.u64 [%frame+16],%r141; .loc 1 422 7 or.b32 %r182,%r182,4; .loc 1 423 3 bra $L13; $L25: .loc 1 428 3 add.u64 %r181,%r181,-1; $L26: .loc 1 431 7 ld.u64 %r144,[%frame+16]; .loc 1 431 6 ld.u8 %r810,[%r144]; cvt.s16.s8 %r809,%r810; setp.ne.u16 %r811,%r809,37; @ %r811 bra $L68; .loc 1 432 7 add.u64 %r812,%r144,1; st.u64 [%frame+16],%r812; .loc 1 435 3 bra $L13; $L27: .loc 1 437 7 ld.u64 %r147,[%frame+16]; .loc 1 437 6 ld.u8 %r814,[%r147]; cvt.s16.s8 %r813,%r814; setp.eq.u16 %r815,%r813,37; @ %r815 bra $L114; .loc 1 287 7 add.u64 %r225,%r147,1; .loc 1 437 19 st.u64 [%frame+16],%r225; ld.u8 %r817,[%r147+1]; cvt.s16.s8 %r816,%r817; cvt.u16.u32 %r818,%r34; setp.ne.u16 %r819,%r816,%r818; @ ! %r819 bra $L86; bra $L68; $L114: mov.u64 %r225,%r147; $L86: .loc 1 438 7 add.u64 %r820,%r225,1; st.u64 [%frame+16],%r820; .loc 1 441 3 bra $L13; $L15: .loc 1 444 10 ld.u64 %r151,[%frame+16]; .loc 1 444 9 ld.u8 %r822,[%r151]; cvt.s16.s8 %r821,%r822; cvt.u16.u32 %r823,%r186; setp.ne.u16 %r824,%r821,%r823; @ %r824 bra $L68; .loc 1 445 3 add.u64 %r825,%r151,1; st.u64 [%frame+16],%r825; mov.u64 %r181,%r295; bra $L13; $L109: .loc 1 169 13 mov.u64 %r181,%r295; $L13: .loc 1 164 35 add.u64 %r295,%r181,1; .loc 1 164 15 ld.s8 %r186,[%r181+1]; .loc 1 164 26 setp.ne.u32 %r826,%r186,0; @ %r826 bra $L87; bra $L178; $L68: .loc 1 179 14 mov.u64 %r293,0; bra $L10; $L178: .loc 1 451 14 and.b32 %r827,%r182,7; .loc 1 451 8 setp.eq.u32 %r828,%r827,7; @ %r828 bra $L90; .loc 1 496 14 and.b32 %r273,%r182,28; .loc 1 466 19 and.b32 %r829,%r182,20; .loc 1 466 13 setp.eq.u32 %r830,%r829,20; @ ! %r830 bra $L92; bra $L91; $L90: .loc 1 454 12 and.b32 %r831,%r182,16; .loc 1 454 5 setp.eq.u32 %r832,%r831,0; @ %r832 bra $L93; .loc 1 496 14 and.b32 %r273,%r182,28; bra $L92; $L93: .loc 1 456 51 ld.u32 %r156,[%r296+16]; .loc 1 456 43 cvta.const.u64 %r833,_DAYS_BEFORE_MONTH; cvt.s64.s32 %r834,%r156; shl.b64 %r835,%r834,2; add.u64 %r836,%r833,%r835; .loc 1 457 3 ld.u32 %r837,[%r836]; ld.u32 %r838,[%r296+12]; add.u32 %r159,%r837,%r838; .loc 1 456 23 st.u32 [%r296+28],%r159; .loc 1 458 11 ld.u32 %r839,[%r296+20]; add.u32 %r161,%r839,1900; .loc 1 70 23 and.b32 %r840,%r839,3; .loc 1 70 28 setp.ne.u32 %r841,%r840,0; @ %r841 bra $L94; rem.s32 %r843,%r161,100; setp.ne.u32 %r849,%r843,0; @ %r849 bra $L95; rem.s32 %r851,%r161,400; .loc 1 70 50 setp.ne.u32 %r857,%r851,0; @ %r857 bra $L94; $L95: .loc 1 459 3 setp.gt.s32 %r858,%r156,1; @ %r858 bra $L96; $L94: .loc 1 461 19 add.u32 %r859,%r159,-1; st.u32 [%r296+28],%r859; $L96: .loc 1 496 14 and.b32 %r860,%r182,28; or.b32 %r273,%r860,16; bra $L92; $L91: .loc 1 469 12 and.b32 %r163,%r182,2; .loc 1 469 5 setp.ne.u32 %r861,%r163,0; @ %r861 bra $L97; .loc 1 471 17 ld.u32 %r164,[%r296+28]; .loc 1 471 9 setp.gt.s32 %r862,%r164,30; @ %r862 bra $L98; .loc 1 472 19 st.u32 [%r296+16],%r163; bra $L97; $L98: .loc 1 474 14 ld.u32 %r864,[%r296+20]; add.u32 %r166,%r864,1900; .loc 1 70 23 and.b32 %r865,%r864,3; .loc 1 70 28 setp.ne.u32 %r866,%r865,0; @ %r866 bra $L99; rem.s32 %r868,%r166,100; setp.ne.u32 %r874,%r868,0; @ %r874 bra $L115; .loc 1 70 50 rem.s32 %r876,%r166,400; set.u32.eq.u32 %r883,%r876,0; neg.s32 %r163,%r883; bra $L99; $L115: .loc 1 70 28 mov.u32 %r163,1; $L99: cvta.const.u64 %r177,_DAYS_BEFORE_MONTH+12; mov.u32 %r275,59; .loc 1 476 10 mov.u32 %r188,2; $L102: .loc 1 477 52 add.u32 %r885,%r163,%r275; .loc 1 477 10 setp.lt.s32 %r886,%r164,%r885; @ %r886 bra $L100; .loc 1 476 23 add.u32 %r188,%r188,1; .loc 1 476 17 setp.eq.u32 %r887,%r188,12; @ %r887 bra $L116; .loc 1 477 48 ld.u32 %r275,[%r177]; add.u64 %r177,%r177,4; bra $L102; $L100: .loc 1 480 23 add.u32 %r274,%r188,-1; bra $L101; $L116: mov.u32 %r274,11; $L101: .loc 1 480 19 st.u32 [%r296+16],%r274; $L97: .loc 1 484 12 and.b32 %r888,%r182,1; .loc 1 484 5 setp.ne.u32 %r889,%r888,0; @ %r889 bra $L92; .loc 1 487 31 ld.u32 %r170,[%r296+16]; .loc 1 487 23 cvta.const.u64 %r890,_DAYS_BEFORE_MONTH; cvt.s64.s32 %r891,%r170; shl.b64 %r892,%r891,2; add.u64 %r893,%r890,%r892; .loc 1 487 3 ld.u32 %r894,[%r296+28]; ld.u32 %r895,[%r893]; sub.u32 %r172,%r894,%r895; .loc 1 486 23 st.u32 [%r296+12],%r172; .loc 1 488 11 ld.u32 %r896,[%r296+20]; add.u32 %r174,%r896,1900; .loc 1 70 23 and.b32 %r897,%r896,3; .loc 1 70 28 setp.ne.u32 %r898,%r897,0; @ %r898 bra $L103; rem.s32 %r900,%r174,100; setp.ne.u32 %r906,%r900,0; @ %r906 bra $L104; rem.s32 %r908,%r174,400; .loc 1 70 50 setp.ne.u32 %r914,%r908,0; @ %r914 bra $L103; $L104: .loc 1 489 3 setp.gt.s32 %r915,%r170,1; @ %r915 bra $L92; $L103: .loc 1 491 19 add.u32 %r916,%r172,1; st.u32 [%r296+12],%r916; $L92: .loc 1 496 8 setp.ne.u32 %r917,%r273,20; @ %r917 bra $L11; .loc 1 97 19 ld.u32 %r918,[%r296+20]; add.u32 %r268,%r918,1899; setp.le.s32 %r919,%r268,1969; @ %r919 bra $L117; .loc 1 95 9 mov.u32 %r272,4; $L108: .loc 1 98 13 add.u32 %r207,%r272,365; .loc 1 70 23 and.b32 %r920,%r268,3; .loc 1 70 28 setp.ne.u32 %r921,%r920,0; @ %r921 bra $L106; rem.s32 %r923,%r268,100; setp.eq.u32 %r928,%r923,0; @ %r928 bra $L107; .loc 1 98 19 add.u32 %r207,%r272,366; bra $L106; $L107: rem.s32 %r930,%r268,400; .loc 1 70 50 setp.ne.u32 %r935,%r930,0; @ %r935 bra $L106; .loc 1 98 19 add.u32 %r207,%r272,366; $L106: .loc 1 98 6 rem.s32 %r272,%r207,7; .loc 1 97 19 add.u32 %r268,%r268,-1; setp.ne.u32 %r936,%r268,1969; @ %r936 bra $L108; bra $L105; $L117: .loc 1 95 9 mov.u32 %r272,4; $L105: .loc 1 499 27 ld.u32 %r938,[%r296+28]; add.u32 %r937,%r272,%r938; .loc 1 499 47 rem.s32 %r939,%r937,7; .loc 1 499 19 st.u32 [%r296+24],%r939; $L11: .loc 1 502 12 ld.u64 %r293,[%frame+16]; $L10: .loc 1 503 1 mov.u64 %value,%r293; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strptime .visible .func (.param .u64 %value_out) strptime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 508 10 cvta.global.u64 %r29,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),strptime_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 509 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strrchr.o/0 0 0 644 1570 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strrchr .visible .func (.param .u64 %value_out) strrchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strrchr.c" // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: strrchr .visible .func (.param .u64 %value_out) strrchr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .pred %r26; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 38 6 setp.ne.u32 %r26,%r25,0; @ %r26 bra $L6; bra $L7; $L4: .loc 1 43 5 add.u64 %r24,%r29,1; mov.u64 %r23,%r29; bra $L2; $L6: .loc 1 36 15 mov.u64 %r23,0; $L2: .loc 1 40 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r29,[%value_in]; } .loc 1 40 14 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L4; bra $L1; $L7: .loc 1 48 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r33,[%value_in]; } mov.u64 %r23,%r33; $L1: .loc 1 52 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strsep.o/ 0 0 0 644 1263 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strsep .visible .func (.param .u64 %value_out) strsep (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strsep.c" // BEGIN GLOBAL FUNCTION DECL: __strtok_r .extern .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: strsep .visible .func (.param .u64 %value_out) strsep (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 17 9 mov.u32 %r29,0; ld.u64 %r26,[%r24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),__strtok_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 18 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /1349 0 0 0 644 9328 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: strsignal .visible .func (.param .u64 %value_out) strsignal (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/string/strsignal.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: siprintf .extern .func (.param .u32 %value_out) siprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {72,97,110,103,117,112,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[10] = {73,110,116,101,114,114,117,112,116,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[5] = {81,117,105,116,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[20] = {73,108,108,101,103,97,108,32,105,110,115,116,114,117,99,116,105,111,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[22] = {84,114,97,99,101,47,98,114,101,97,107,112,111,105,110,116,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[9] = {73,79,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[9] = {69,77,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[25] = {70,108,111,97,116,105,110,103,32,112,111,105,110,116,32,101,120,99,101,112,116,105,111,110,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[7] = {75,105,108,108,101,100,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[10] = {66,117,115,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[19] = {83,101,103,109,101,110,116,97,116,105,111,110,32,102,97,117,108,116,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[16] = {66,97,100,32,115,121,115,116,101,109,32,99,97,108,108,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[12] = {65,108,97,114,109,32,99,108,111,99,107,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[11] = {84,101,114,109,105,110,97,116,101,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[21] = {85,114,103,101,110,116,32,73,47,79,32,99,111,110,100,105,116,105,111,110,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[17] = {83,116,111,112,112,101,100,32,40,115,105,103,110,97,108,41,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[8] = {83,116,111,112,112,101,100,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[10] = {67,111,110,116,105,110,117,101,100,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[13] = {67,104,105,108,100,32,101,120,105,116,101,100,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[18] = {85,110,107,110,111,119,110,32,115,105,103,110,97,108,32,37,100,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[20] = {83,116,111,112,112,101,100,32,40,116,116,121,32,105,110,112,117,116,41,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[13] = {73,47,79,32,112,111,115,115,105,98,108,101,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[15] = {87,105,110,100,111,119,32,99,104,97,110,103,101,100,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[22] = {85,115,101,114,32,100,101,102,105,110,101,100,32,115,105,103,110,97,108,32,49,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[22] = {85,115,101,114,32,100,101,102,105,110,101,100,32,115,105,103,110,97,108,32,50,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[24] = {67,80,85,32,116,105,109,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[25] = {70,105,108,101,32,115,105,122,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[22] = {86,105,114,116,117,97,108,32,116,105,109,101,114,32,101,120,112,105,114,101,100,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[24] = {80,114,111,102,105,108,105,110,103,32,116,105,109,101,114,32,101,120,112,105,114,101,100,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[14] = {82,101,115,111,117,114,99,101,32,108,111,115,116,0 }; // BEGIN GLOBAL FUNCTION DEF: strsignal .visible .func (.param .u64 %value_out) strsignal (.param .u32 %in_ar0) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .reg .pred %r26; .reg .pred %r27; .reg .pred %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r33; .reg .pred %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u32 %r65; mov.u32 %r24,%ar0; .loc 1 73 3 setp.eq.u32 %r25,%r24,16; @ %r25 bra $L11; setp.gt.s32 %r26,%r24,16; @ %r26 bra $L3; setp.eq.u32 %r27,%r24,8; @ %r27 bra $L12; setp.gt.s32 %r28,%r24,8; @ %r28 bra $L4; setp.eq.u32 %r29,%r24,4; @ %r29 bra $L13; setp.gt.s32 %r30,%r24,4; @ %r30 bra $L5; setp.eq.u32 %r31,%r24,2; @ %r31 bra $L14; setp.eq.u32 %r32,%r24,3; @ %r32 bra $L15; setp.eq.u32 %r33,%r24,1; @ %r33 bra $L16; bra $L6; $L5: setp.eq.u32 %r34,%r24,6; @ %r34 bra $L17; setp.eq.u32 %r35,%r24,7; @ %r35 bra $L18; setp.eq.u32 %r36,%r24,5; @ %r36 bra $L19; bra $L6; $L4: setp.eq.u32 %r37,%r24,12; @ %r37 bra $L20; setp.gt.s32 %r38,%r24,12; @ %r38 bra $L7; setp.eq.u32 %r39,%r24,10; @ %r39 bra $L21; setp.eq.u32 %r40,%r24,11; @ %r40 bra $L22; setp.eq.u32 %r41,%r24,9; @ %r41 bra $L23; bra $L6; $L7: setp.eq.u32 %r42,%r24,14; @ %r42 bra $L24; setp.eq.u32 %r43,%r24,15; @ %r43 bra $L25; setp.eq.u32 %r44,%r24,13; @ %r44 bra $L26; bra $L6; $L3: setp.eq.u32 %r45,%r24,25; @ %r45 bra $L27; setp.gt.s32 %r46,%r24,25; @ %r46 bra $L8; setp.eq.u32 %r47,%r24,20; @ %r47 bra $L28; setp.gt.s32 %r48,%r24,20; @ %r48 bra $L9; setp.eq.u32 %r49,%r24,18; @ %r49 bra $L29; setp.eq.u32 %r50,%r24,19; @ %r50 bra $L30; setp.eq.u32 %r51,%r24,17; @ %r51 bra $L31; bra $L6; $L9: setp.eq.u32 %r52,%r24,23; @ %r52 bra $L32; setp.eq.u32 %r53,%r24,24; @ %r53 bra $L33; setp.eq.u32 %r54,%r24,21; @ %r54 bra $L34; bra $L6; $L8: setp.eq.u32 %r55,%r24,29; @ %r55 bra $L35; setp.gt.s32 %r56,%r24,29; @ %r56 bra $L10; setp.eq.u32 %r57,%r24,27; @ %r57 bra $L36; setp.eq.u32 %r58,%r24,28; @ %r58 bra $L37; setp.eq.u32 %r59,%r24,26; @ %r59 bra $L38; bra $L6; $L10: setp.eq.u32 %r60,%r24,30; @ %r60 bra $L39; setp.eq.u32 %r61,%r24,31; @ %r61 bra $L40; $L6: .loc 1 64 10 ld.global.u64 %r62,[_impure_ptr]; add.u64 %r23,%r62,288; .loc 1 244 7 st.u32 [%stack],%r24; cvta.const.u64 %r64,$LC30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r65,[%value_in]; } .loc 1 245 7 bra $L1; $L11: .loc 1 154 14 cvta.const.u64 %r23,$LC15; bra $L1; $L12: .loc 1 114 14 cvta.const.u64 %r23,$LC7; bra $L1; $L13: .loc 1 91 14 cvta.const.u64 %r23,$LC3; bra $L1; $L14: .loc 1 73 3 cvta.const.u64 %r23,$LC1; bra $L1; $L15: .loc 1 86 14 cvta.const.u64 %r23,$LC2; bra $L1; $L16: .loc 1 76 14 cvta.const.u64 %r23,$LC0; bra $L1; $L17: .loc 1 104 14 cvta.const.u64 %r23,$LC5; bra $L1; $L18: .loc 1 109 14 cvta.const.u64 %r23,$LC6; bra $L1; $L19: .loc 1 96 14 cvta.const.u64 %r23,$LC4; bra $L1; $L20: .loc 1 134 14 cvta.const.u64 %r23,$LC11; bra $L1; $L21: .loc 1 124 14 cvta.const.u64 %r23,$LC9; bra $L1; $L22: .loc 1 129 14 cvta.const.u64 %r23,$LC10; bra $L1; $L23: .loc 1 119 14 cvta.const.u64 %r23,$LC8; bra $L1; $L24: .loc 1 144 14 cvta.const.u64 %r23,$LC13; bra $L1; $L25: .loc 1 149 14 cvta.const.u64 %r23,$LC14; bra $L1; $L26: .loc 1 139 14 cvta.const.u64 %r23,$LC12; bra $L1; $L27: .loc 1 225 14 cvta.const.u64 %r23,$LC26; bra $L1; $L28: .loc 1 177 14 cvta.const.u64 %r23,$LC19; bra $L1; $L29: .loc 1 164 14 cvta.const.u64 %r23,$LC17; bra $L1; $L30: .loc 1 169 14 cvta.const.u64 %r23,$LC18; bra $L1; $L31: .loc 1 159 14 cvta.const.u64 %r23,$LC16; bra $L1; $L32: .loc 1 195 14 cvta.const.u64 %r23,$LC21; bra $L1; $L33: .loc 1 220 14 cvta.const.u64 %r23,$LC25; bra $L1; $L34: .loc 1 182 14 cvta.const.u64 %r23,$LC20; bra $L1; $L35: .loc 1 240 14 cvta.const.u64 %r23,$LC29; bra $L1; $L36: .loc 1 235 14 cvta.const.u64 %r23,$LC28; bra $L1; $L37: .loc 1 200 14 cvta.const.u64 %r23,$LC22; bra $L1; $L38: .loc 1 230 14 cvta.const.u64 %r23,$LC27; bra $L1; $L39: .loc 1 205 14 cvta.const.u64 %r23,$LC23; bra $L1; $L40: .loc 1 210 14 cvta.const.u64 %r23,$LC24; $L1: .loc 1 249 1 mov.u64 %value,%r23; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-strspn.o/ 0 0 0 644 1572 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strspn .visible .func (.param .u64 %value_out) strspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strspn.c" // BEGIN GLOBAL FUNCTION DEF: strspn .visible .func (.param .u64 %value_out) strspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .u16 %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r40; .reg .pred %r41; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 39 10 ld.s8 %r25,[%r31]; setp.ne.u32 %r33,%r25,0; @ %r33 bra $L2; mov.u64 %r30,0; bra $L1; $L7: .loc 1 41 20 mov.u64 %r26,%r32; mov.u32 %r24,%r22; .loc 1 43 7 cvt.u16.u32 %r35,%r25; $L5: cvt.u16.u32 %r34,%r24; setp.eq.u16 %r36,%r34,%r35; @ %r36 bra $L4; .loc 1 41 25 add.u64 %r26,%r26,1; .loc 1 41 20 ld.s8 %r24,[%r26]; setp.ne.u32 %r37,%r24,0; @ %r37 bra $L5; .loc 1 51 13 sub.u64 %r30,%r27,%r31; bra $L1; $L2: .loc 1 41 20 ld.s8 %r22,[%r32]; mov.u64 %r27,%r31; setp.ne.u32 %r41,%r22,0; $L6: @ %r41 bra $L7; .loc 1 51 13 sub.u64 %r30,%r27,%r31; bra $L1; $L4: .loc 1 48 9 add.u64 %r27,%r27,1; .loc 1 39 10 ld.s8 %r25,[%r27]; setp.ne.u32 %r40,%r25,0; @ %r40 bra $L6; .loc 1 51 13 sub.u64 %r30,%r27,%r31; $L1: .loc 1 52 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strstr.o/ 0 0 0 644 22972 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: two_way_long_needle .func (.param .u64 %value_out) two_way_long_needle (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/string/str-two-way.h" // BEGIN GLOBAL FUNCTION DECL: strstr .visible .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 2 "../../../../../../newlib/libc/string/strstr.c" // BEGIN GLOBAL FUNCTION DECL: memcmp .extern .func (.param .u32 %value_out) memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strnlen .extern .func (.param .u64 %value_out) strnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN FUNCTION DEF: two_way_long_needle .func (.param .u64 %value_out) two_way_long_needle (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,2048; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r44; .reg .u64 %r53; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r69; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r81; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r110; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .pred %r131; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .pred %r142; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u64 %r162; .reg .pred %r163; .reg .u64 %r165; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .pred %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u32 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .u16 %r179; .reg .u32 %r180; .reg .u16 %r181; .reg .pred %r182; .reg .pred %r183; .reg .pred %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u16 %r188; .reg .u16 %r189; .reg .pred %r190; .reg .pred %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u16 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .u64 %r198; .reg .pred %r199; .reg .u64 %r200; .reg .pred %r201; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r207; .reg .pred %r208; .reg .u64 %r209; .reg .u64 %r210; .reg .u64 %r212; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r216; .reg .pred %r217; .reg .pred %r218; .reg .pred %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u16 %r223; .reg .u16 %r224; .reg .pred %r225; .reg .pred %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u16 %r230; .reg .u16 %r231; .reg .pred %r232; .reg .u64 %r233; .reg .pred %r234; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .pred %r241; .reg .pred %r243; .reg .u64 %r244; .reg .pred %r246; .reg .u64 %r247; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r255; .reg .u16 %r256; mov.u64 %r121,%ar0; mov.u64 %r122,%ar1; mov.u64 %r123,%ar2; mov.u64 %r124,%ar3; .loc 1 115 16 setp.le.u64 %r125,%r124,1; @ %r125 bra $L45; .loc 1 113 5 mov.u64 %r110,0; .loc 1 114 9 mov.u64 %r36,1; .loc 1 114 5 mov.u64 %r65,%r36; .loc 1 112 14 mov.u64 %r37,-1; .loc 1 115 12 mov.u64 %r81,%r36; $L7: .loc 1 117 9 add.u64 %r126,%r123,%r81; .loc 1 118 9 add.u64 %r127,%r123,%r37; add.u64 %r128,%r127,%r65; .loc 1 119 10 ld.u8 %r129,[%r126]; ld.u8 %r130,[%r128]; setp.ge.u16 %r131,%r129,%r130; @ %r131 bra $L3; .loc 1 124 6 sub.u64 %r36,%r81,%r37; mov.u64 %r110,%r81; .loc 1 123 6 mov.u64 %r65,1; bra $L4; $L3: .loc 1 126 15 setp.ne.u16 %r134,%r129,%r130; @ %r134 bra $L5; .loc 1 129 7 setp.eq.u64 %r135,%r36,%r65; @ %r135 bra $L6; .loc 1 130 6 add.u64 %r65,%r65,1; bra $L4; $L6: .loc 1 133 10 add.u64 %r110,%r110,%r36; .loc 1 134 10 mov.u64 %r65,1; bra $L4; $L5: .loc 1 140 18 mov.u64 %r37,%r110; add.u64 %r110,%r110,1; .loc 1 141 10 mov.u64 %r36,1; .loc 1 141 6 mov.u64 %r65,%r36; $L4: .loc 1 115 12 add.u64 %r81,%r65,%r110; .loc 1 115 16 setp.gt.u64 %r136,%r124,%r81; @ %r136 bra $L7; mov.u64 %r53,0; mov.u64 %r73,1; mov.u64 %r103,%r73; mov.u64 %r104,-1; mov.u64 %r91,%r73; .loc 1 176 10 mov.u64 %r255,%r73; $L12: .loc 1 152 9 add.u64 %r137,%r123,%r91; .loc 1 153 9 add.u64 %r138,%r123,%r103; add.u64 %r139,%r138,%r104; .loc 1 154 10 ld.u8 %r140,[%r137]; ld.u8 %r141,[%r139]; setp.le.u16 %r142,%r140,%r141; @ %r142 bra $L8; .loc 1 159 6 sub.u64 %r73,%r91,%r104; mov.u64 %r53,%r91; .loc 1 158 6 mov.u64 %r103,1; bra $L9; $L8: .loc 1 161 15 setp.ne.u16 %r145,%r140,%r141; @ %r145 bra $L10; .loc 1 164 7 setp.eq.u64 %r146,%r73,%r103; @ %r146 bra $L11; .loc 1 165 6 add.u64 %r103,%r103,1; bra $L9; $L11: .loc 1 168 10 add.u64 %r53,%r53,%r73; .loc 1 169 10 mov.u64 %r103,1; bra $L9; $L10: .loc 1 175 22 mov.u64 %r104,%r53; add.u64 %r53,%r53,1; .loc 1 176 10 mov.u64 %r73,%r255; .loc 1 176 6 mov.u64 %r103,1; $L9: .loc 1 150 12 add.u64 %r91,%r53,%r103; .loc 1 150 16 setp.gt.u64 %r147,%r124,%r91; @ %r147 bra $L12; .loc 1 182 22 add.u64 %r119,%r104,1; .loc 1 182 39 add.u64 %r101,%r37,1; .loc 1 182 6 setp.gt.u64 %r148,%r101,%r119; selp.u64 %r36,%r36,%r73,%r148; selp.u64 %r101,%r101,%r119,%r148; bra $L2; $L45: .loc 1 149 9 mov.u64 %r36,1; .loc 1 115 16 mov.u64 %r101,0; $L2: mov.u64 %r61,%frame; add.u64 %r58,%frame,2048; $L13: .loc 1 312 20 st.u64 [%r61],%r124; .loc 1 311 17 add.u64 %r61,%r61,8; setp.ne.u64 %r149,%r58,%r61; @ %r149 bra $L13; add.u64 %r118,%r124,-1; .loc 1 313 17 setp.ne.u64 %r150,%r124,0; @ %r150 bra $L14; $L18: .loc 1 318 32 add.u64 %r154,%r123,%r36; .loc 1 318 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r123; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r154; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r101; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r155,[%value_in]; } .loc 1 318 6 setp.eq.u32 %r156,%r155,0; @ %r156 bra $L46; bra $L62; $L14: add.u64 %r63,%r124,%r123; .loc 1 313 17 mov.u64 %r88,%r123; add.u64 %r251,%r123,%r118; $L17: .loc 1 314 44 ld.u8 %r158,[%r88]; shl.b64 %r159,%r158,3; add.u64 %r160,%frame,%r159; sub.u64 %r162,%r251,%r88; st.u64 [%r160],%r162; .loc 1 313 17 add.u64 %r88,%r88,1; setp.ne.u64 %r163,%r63,%r88; @ %r163 bra $L17; bra $L18; $L46: .loc 1 323 14 mov.u64 %r90,0; .loc 1 325 9 mov.u64 %r106,%r90; .loc 1 353 10 add.u64 %r252,%r101,-1; .loc 1 326 14 or.b64 %r253,%r124,2048; $L15: .loc 1 330 24 add.u64 %r250,%r121,%r106; add.u64 %r165,%r250,%r118; .loc 1 330 10 ld.u8 %r167,[%r165]; shl.b64 %r168,%r167,3; add.u64 %r169,%frame,%r168; ld.u64 %r62,[%r169]; .loc 1 331 7 setp.eq.u64 %r170,%r62,0; @ %r170 bra $L19; .loc 1 333 11 set.u32.ne.u64 %r172,%r90,0; neg.s32 %r173,%r172; mov.u32 %r171,%r173; .loc 1 333 19 set.u32.lt.u64 %r175,%r62,%r36; neg.s32 %r176,%r175; mov.u32 %r174,%r176; cvt.u16.u8 %r256,%r171; mov.u16 %r178,%r256; cvt.u16.u8 %r256,%r174; mov.u16 %r179,%r256; and.b16 %r177,%r178,%r179; cvt.u32.u16 %r180,%r177; cvt.u16.u8 %r181,%r180; setp.eq.u16 %r182,%r181,0; @ %r182 bra $L20; .loc 1 338 11 sub.u64 %r62,%r124,%r36; $L20: .loc 1 341 10 add.u64 %r106,%r106,%r62; .loc 1 340 15 mov.u64 %r90,0; .loc 1 342 8 bra $L21; $L19: .loc 1 346 6 max.u64 %r76,%r101,%r90; .loc 1 347 30 setp.lt.u64 %r183,%r76,%r118; @ %r183 bra $L22; bra $L23; $L24: .loc 1 349 6 add.u64 %r76,%r76,1; .loc 1 347 30 setp.ge.u64 %r184,%r76,%r118; @ %r184 bra $L23; $L22: .loc 1 347 34 add.u64 %r185,%r123,%r76; .loc 1 348 9 add.u64 %r186,%r76,%r106; add.u64 %r187,%r121,%r186; .loc 1 347 30 ld.u8 %r188,[%r185]; ld.u8 %r189,[%r187]; setp.eq.u16 %r190,%r188,%r189; @ %r190 bra $L24; bra $L63; $L27: .loc 1 356 3 add.u64 %r77,%r66,-1; .loc 1 354 30 setp.eq.u64 %r191,%r66,%r90; @ %r191 bra $L47; mov.u64 %r66,%r77; $L43: add.u64 %r100,%r66,1; .loc 1 354 34 add.u64 %r192,%r123,%r66; .loc 1 355 9 add.u64 %r193,%r66,%r106; add.u64 %r194,%r121,%r193; .loc 1 354 30 ld.u8 %r195,[%r192]; ld.u8 %r196,[%r194]; setp.eq.u16 %r197,%r195,%r196; @ %r197 bra $L27; bra $L26; $L47: .loc 1 354 26 mov.u64 %r100,%r90; $L26: .loc 1 357 27 add.u64 %r198,%r90,1; .loc 1 357 11 setp.le.u64 %r199,%r198,%r100; @ %r199 bra $L28; .loc 1 358 10 mov.u64 %r120,%r250; bra $L1; $L28: .loc 1 361 10 add.u64 %r106,%r106,%r36; .loc 1 362 15 sub.u64 %r90,%r124,%r36; $L21: .loc 1 326 14 sub.u64 %r200,%r122,%r124; setp.ge.u64 %r201,%r200,%r106; @ %r201 bra $L15; add.u64 %r205,%r121,%r122; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r205; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r253; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r206,[%value_in]; } add.u64 %r122,%r122,%r206; sub.u64 %r207,%r122,%r124; setp.ge.u64 %r208,%r207,%r106; @ %r208 bra $L15; $L42: .loc 1 409 10 mov.u64 %r120,0; bra $L1; $L62: .loc 1 376 16 sub.u64 %r210,%r124,%r101; max.u64 %r209,%r210,%r101; .loc 1 376 50 add.u64 %r44,%r209,1; .loc 1 377 9 mov.u64 %r34,0; .loc 1 378 14 or.b64 %r254,%r124,2048; $L31: .loc 1 382 24 add.u64 %r249,%r121,%r34; add.u64 %r212,%r249,%r118; .loc 1 382 10 ld.u8 %r214,[%r212]; shl.b64 %r215,%r214,3; add.u64 %r216,%frame,%r215; ld.u64 %r69,[%r216]; .loc 1 383 7 setp.ne.u64 %r217,%r69,0; @ %r217 bra $L32; .loc 1 391 30 setp.lt.u64 %r218,%r101,%r118; @ %r218 bra $L48; bra $L34; $L32: .loc 1 385 10 add.u64 %r34,%r34,%r69; .loc 1 386 8 bra $L35; $L36: .loc 1 393 6 add.u64 %r71,%r71,1; .loc 1 391 30 setp.ge.u64 %r219,%r71,%r118; @ ! %r219 bra $L33; bra $L34; $L48: mov.u64 %r71,%r101; $L33: .loc 1 391 34 add.u64 %r220,%r123,%r71; .loc 1 392 9 add.u64 %r221,%r71,%r34; add.u64 %r222,%r121,%r221; .loc 1 391 30 ld.u8 %r223,[%r220]; ld.u8 %r224,[%r222]; setp.eq.u16 %r225,%r223,%r224; @ %r225 bra $L36; bra $L64; $L39: .loc 1 400 3 add.u64 %r72,%r72,-1; .loc 1 398 29 setp.eq.u64 %r226,%r72,-1; @ %r226 bra $L38; $L44: .loc 1 398 33 add.u64 %r227,%r123,%r72; .loc 1 399 15 add.u64 %r228,%r72,%r34; add.u64 %r229,%r121,%r228; .loc 1 398 29 ld.u8 %r230,[%r227]; ld.u8 %r231,[%r229]; setp.eq.u16 %r232,%r230,%r231; @ %r232 bra $L39; bra $L65; $L35: .loc 1 378 14 sub.u64 %r233,%r122,%r124; setp.le.u64 %r234,%r34,%r233; @ %r234 bra $L31; add.u64 %r238,%r121,%r122; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r238; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r254; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r239,[%value_in]; } add.u64 %r122,%r122,%r239; sub.u64 %r240,%r122,%r124; setp.le.u64 %r241,%r34,%r240; @ %r241 bra $L31; bra $L42; $L23: .loc 1 353 10 mov.u64 %r66,%r252; .loc 1 354 30 setp.gt.u64 %r243,%r101,%r90; @ %r243 bra $L43; mov.u64 %r100,%r101; bra $L26; $L63: sub.u64 %r244,%r106,%r101; add.u64 %r59,%r244,1; .loc 1 366 10 add.u64 %r106,%r59,%r76; .loc 1 367 15 mov.u64 %r90,%r62; bra $L21; $L65: .loc 1 403 10 add.u64 %r34,%r34,%r44; bra $L35; $L38: .loc 1 402 10 mov.u64 %r120,%r249; bra $L1; $L34: .loc 1 397 10 add.u64 %r72,%r101,-1; .loc 1 398 29 setp.ne.u64 %r246,%r101,0; @ %r246 bra $L44; bra $L38; $L64: sub.u64 %r247,%r34,%r101; add.u64 %r105,%r247,1; .loc 1 406 8 add.u64 %r34,%r105,%r71; bra $L35; $L1: .loc 1 410 1 mov.u64 %value,%r120; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strstr .visible .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,64; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r35; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .u32 %r62; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r68; .reg .u32 %r72; .reg .u32 %r75; .reg .u32 %r82; .reg .u32 %r85; .reg .u32 %r99; .reg .u32 %r101; .reg .u32 %r103; .reg .u32 %r105; .reg .u64 %r109; .reg .u32 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .pred %r118; .reg .u64 %r121; .reg .pred %r122; .reg .u32 %r123; .reg .pred %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u16 %r131; .reg .u16 %r132; .reg .u16 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .pred %r136; .reg .pred %r137; .reg .pred %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u16 %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .u32 %r153; .reg .u16 %r154; .reg .pred %r155; .reg .pred %r156; .reg .u16 %r157; .reg .pred %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .pred %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u16 %r171; .reg .u16 %r172; .reg .u16 %r173; .reg .u32 %r174; .reg .u16 %r175; .reg .pred %r176; .reg .pred %r177; .reg .u64 %r179; .reg .u64 %r182; .reg .u64 %r183; .reg .pred %r184; .reg .pred %r185; .reg .u64 %r186; .reg .u64 %r189; .reg .u32 %r190; .reg .u32 %r191; .reg .u64 %r192; .reg .pred %r193; .reg .u32 %r194; .reg .u16 %r196; .reg .u16 %r197; .reg .u32 %r198; .reg .u64 %r199; .reg .u64 %r200; .reg .u32 %r201; .reg .u16 %r202; .reg .u16 %r203; .reg .u32 %r204; .reg .pred %r205; .reg .u64 %r206; .reg .u16 %r208; .reg .u16 %r209; .reg .u32 %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .pred %r213; .reg .u64 %r214; .reg .u16 %r216; .reg .u16 %r217; .reg .u32 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u32 %r224; .reg .pred %r225; .reg .pred %r226; .reg .u16 %r227; .reg .pred %r228; .reg .u64 %r230; .reg .u64 %r231; .reg .pred %r232; .reg .u64 %r237; .reg .u16 %r239; mov.u64 %r115,%ar0; mov.u64 %r116,%ar1; .loc 2 151 9 ld.u8 %r22,[%r116]; .loc 2 151 6 setp.eq.u32 %r117,%r22,0; @ %r117 bra $L86; .loc 2 153 9 ld.u8 %r23,[%r116+1]; .loc 2 153 6 setp.ne.u32 %r118,%r23,0; @ %r118 bra $L68; .loc 2 154 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r22; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r121,[%value_in]; } mov.u64 %r114,%r121; bra $L66; $L68: .loc 2 155 9 ld.u8 %r25,[%r116+2]; .loc 2 155 6 setp.ne.u32 %r122,%r25,0; @ %r122 bra $L69; .loc 2 103 24 shl.b32 %r123,%r22,16; .loc 2 103 31 or.b32 %r62,%r123,%r23; .loc 2 106 10 ld.u8 %r68,[%r115]; .loc 2 106 28 setp.ne.u32 %r124,%r68,0; @ %r124 bra $L87; $L71: .loc 2 108 36 mov.u64 %r114,0; bra $L66; $L87: .loc 2 104 12 mov.u32 %r66,%r25; $L70: .loc 2 107 16 shl.b32 %r64,%r66,16; .loc 2 107 10 or.b32 %r66,%r68,%r64; mov.u64 %r109,%r115; .loc 2 106 41 add.u64 %r115,%r115,1; ld.u8 %r68,[%r115]; .loc 2 106 22 set.u32.ne.u32 %r126,%r62,%r66; neg.s32 %r127,%r126; mov.u32 %r125,%r127; .loc 2 106 33 set.u32.ne.u32 %r129,%r68,0; neg.s32 %r130,%r129; mov.u32 %r128,%r130; .loc 2 106 28 cvt.u16.u8 %r239,%r125; mov.u16 %r132,%r239; cvt.u16.u8 %r239,%r128; mov.u16 %r133,%r239; and.b16 %r131,%r132,%r133; cvt.u32.u16 %r134,%r131; cvt.u16.u8 %r135,%r134; setp.ne.u16 %r136,%r135,0; @ %r136 bra $L70; .loc 2 108 36 setp.ne.u32 %r137,%r62,%r66; @ %r137 bra $L71; add.u64 %r114,%r109,-1; bra $L66; $L69: .loc 2 157 9 ld.u8 %r26,[%r116+3]; .loc 2 157 6 setp.ne.u32 %r138,%r26,0; @ %r138 bra $L72; .loc 2 114 24 shl.b32 %r139,%r22,24; .loc 2 114 40 shl.b32 %r140,%r23,16; .loc 2 114 31 or.b32 %r141,%r139,%r140; .loc 2 114 56 shl.b32 %r142,%r25,8; .loc 2 114 47 or.b32 %r82,%r141,%r142; .loc 2 117 10 ld.u8 %r75,[%r115]; .loc 2 117 28 setp.eq.u32 %r143,%r75,0; @ %r143 bra $L71; .loc 2 115 12 mov.u32 %r72,%r26; $L73: .loc 2 118 16 or.b32 %r85,%r75,%r72; .loc 2 118 10 shl.b32 %r72,%r85,8; mov.u64 %r113,%r115; .loc 2 117 41 add.u64 %r115,%r115,1; ld.u8 %r75,[%r115]; .loc 2 117 22 set.u32.ne.u32 %r145,%r82,%r72; neg.s32 %r146,%r145; mov.u32 %r144,%r146; .loc 2 117 33 set.u32.ne.u32 %r148,%r75,0; neg.s32 %r149,%r148; mov.u32 %r147,%r149; .loc 2 117 28 cvt.u16.u8 %r239,%r144; mov.u16 %r151,%r239; cvt.u16.u8 %r239,%r147; mov.u16 %r152,%r239; and.b16 %r150,%r151,%r152; cvt.u32.u16 %r153,%r150; cvt.u16.u8 %r154,%r153; setp.ne.u16 %r155,%r154,0; @ %r155 bra $L73; .loc 2 119 36 setp.ne.u32 %r156,%r82,%r72; @ %r156 bra $L71; add.u64 %r114,%r113,-2; bra $L66; $L72: .loc 2 159 6 ld.u8 %r157,[%r116+4]; setp.ne.u16 %r158,%r157,0; @ %r158 bra $L74; .loc 2 125 24 shl.b32 %r159,%r22,24; .loc 2 125 40 shl.b32 %r160,%r23,16; .loc 2 125 31 or.b32 %r161,%r159,%r160; .loc 2 125 62 or.b32 %r162,%r161,%r26; .loc 2 125 56 shl.b32 %r163,%r25,8; .loc 2 125 62 or.b32 %r99,%r162,%r163; .loc 2 128 10 ld.u8 %r105,[%r115]; .loc 2 128 26 setp.eq.u32 %r164,%r105,0; @ %r164 bra $L71; .loc 2 126 12 mov.u32 %r103,0; $L75: .loc 2 129 14 shl.b32 %r101,%r103,8; .loc 2 129 8 or.b32 %r103,%r105,%r101; mov.u64 %r35,%r115; .loc 2 128 41 add.u64 %r115,%r115,1; ld.u8 %r105,[%r115]; .loc 2 128 21 set.u32.ne.u32 %r166,%r105,0; neg.s32 %r167,%r166; mov.u32 %r165,%r167; .loc 2 128 32 set.u32.ne.u32 %r169,%r99,%r103; neg.s32 %r170,%r169; mov.u32 %r168,%r170; .loc 2 128 26 cvt.u16.u8 %r239,%r165; mov.u16 %r172,%r239; cvt.u16.u8 %r239,%r168; mov.u16 %r173,%r239; and.b16 %r171,%r172,%r173; cvt.u32.u16 %r174,%r171; cvt.u16.u8 %r175,%r174; setp.ne.u16 %r176,%r175,0; @ %r176 bra $L75; .loc 2 130 36 setp.ne.u32 %r177,%r99,%r103; @ %r177 bra $L71; add.u64 %r114,%r35,-3; bra $L66; $L74: .loc 2 162 19 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r179,[%value_in]; } .loc 2 163 19 or.b64 %r182,%r179,512; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r182; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r183,[%value_in]; } .loc 2 166 6 setp.gt.u64 %r184,%r179,%r183; @ %r184 bra $L71; .loc 2 170 6 setp.gt.u64 %r185,%r179,254; @ %r185 bra $L76; .loc 2 173 46 sub.u64 %r186,%r183,%r179; .loc 2 173 28 add.u64 %r47,%r115,%r186; .loc 2 176 29 cvt.u32.u64 %r190,%r179; add.u32 %r191,%r190,1; .loc 2 176 7 mov.u64 %r189,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r191; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r189; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r192,[%value_in]; } .loc 2 177 21 setp.ne.u64 %r193,%r179,0; @ %r193 bra $L77; $L80: .loc 2 126 12 mov.u64 %r114,%r115; bra $L78; $L77: .loc 2 178 41 cvt.u32.u64 %r194,%r179; cvt.u32.u8 %r111,%r194; mov.u64 %r112,%r116; $L79: .loc 2 178 14 ld.u8 %r239,[%r112]; mov.u16 %r197,%r239; and.b16 %r196,%r197,63; cvt.u32.u16 %r198,%r196; cvt.u64.u8 %r199,%r198; .loc 2 178 32 add.u64 %r200,%frame,%r199; cvt.u32.u32 %r201,%r111; st.u8 [%r200],%r201; .loc 2 177 21 add.u64 %r112,%r112,1; cvt.u16.u32 %r203,%r111; add.u16 %r202,%r203,-1; cvt.u32.u16 %r204,%r202; cvt.u32.u8 %r111,%r204; setp.ne.u32 %r205,%r111,0; @ %r205 bra $L79; bra $L80; $L78: .loc 2 182 6 add.u64 %r53,%r114,-1; .loc 2 185 25 add.u64 %r206,%r53,%r179; .loc 2 185 34 ld.u8 %r239,[%r206]; mov.u16 %r209,%r239; and.b16 %r208,%r209,63; cvt.u32.u16 %r210,%r208; cvt.u64.u8 %r211,%r210; .loc 2 185 22 add.u64 %r212,%frame,%r211; .loc 2 185 11 ld.u8 %r54,[%r212]; .loc 2 186 12 add.u64 %r114,%r53,%r54; .loc 2 186 23 setp.lt.u64 %r213,%r47,%r114; @ %r213 bra $L81; $L83: .loc 2 188 22 add.u64 %r214,%r114,%r179; .loc 2 188 31 ld.u8 %r239,[%r214]; mov.u16 %r217,%r239; and.b16 %r216,%r217,63; cvt.u32.u16 %r218,%r216; cvt.u64.u8 %r219,%r218; .loc 2 188 19 add.u64 %r220,%frame,%r219; .loc 2 188 12 ld.u8 %r56,[%r220]; .loc 2 189 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r116; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r179; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r224,[%value_in]; } .loc 2 189 11 setp.eq.u32 %r225,%r224,0; @ %r225 bra $L66; .loc 2 186 34 add.u64 %r114,%r114,%r56; .loc 2 186 23 setp.ge.u64 %r226,%r47,%r114; @ %r226 bra $L83; $L81: .loc 2 192 11 add.u64 %r45,%r47,%r179; .loc 2 192 7 ld.u8 %r227,[%r45]; setp.ne.u16 %r228,%r227,0; @ %r228 bra $L84; $L85: .loc 2 193 13 mov.u64 %r114,0; bra $L66; $L84: .loc 2 194 11 mov.u64 %r230,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r230; call (%value_in),strnlen,(%out_arg1,%out_arg2); ld.param.u64 %r231,[%value_in]; } .loc 2 194 8 add.u64 %r47,%r47,%r231; .loc 2 196 17 setp.ge.u64 %r232,%r47,%r114; @ %r232 bra $L78; bra $L85; $L76: .loc 2 202 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r183; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r116; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r179; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r237,[%value_in]; } mov.u64 %r114,%r237; bra $L66; $L86: mov.u64 %r114,%r115; $L66: .loc 2 203 1 mov.u64 %value,%r114; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-strtod.o/ 0 0 0 644 67171 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _strtod_l .visible .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtod.c" // BEGIN GLOBAL FUNCTION DECL: _strtod_r .visible .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtod_l .visible .func (.param .f64 %value_out) strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtod .visible .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strtof_l .visible .func (.param .f32 %value_out) strtof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtof .visible .func (.param .f32 %value_out) strtof (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: _C_numeric_locale .extern .const .align 8 .u64 _C_numeric_locale[3]; // BEGIN GLOBAL VAR DECL: __mprec_bigtens .extern .const .align 8 .u64 __mprec_bigtens[]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __gethex .extern .func (.param .u32 %value_out) __gethex (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: __copybits .extern .func __copybits (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _Bfree .extern .func _Bfree (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __match .extern .func (.param .u32 %value_out) __match (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __hexnan .extern .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __s2b .extern .func (.param .u64 %value_out) __s2b (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u32 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _Balloc .extern .func (.param .u64 %value_out) _Balloc (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __d2b .extern .func (.param .u64 %value_out) __d2b (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __i2b .extern .func (.param .u64 %value_out) __i2b (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __pow5mult .extern .func (.param .u64 %value_out) __pow5mult (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __multiply .extern .func (.param .u64 %value_out) __multiply (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __lshift .extern .func (.param .u64 %value_out) __lshift (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mdiff .extern .func (.param .u64 %value_out) __mdiff (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __mcmp .extern .func (.param .u32 %value_out) __mcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ulp .extern .func (.param .f64 %value_out) __ulp (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ratio .extern .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: tinytens .const .align 8 .u64 tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,1254259266780163907 }; // BEGIN VAR DEF: fpi$1 .const .align 4 .u32 fpi$1[5] = {53,4294966222,971,1,0 }; // BEGIN VAR DEF: fpinan$0 .const .align 4 .u32 fpinan$0[5] = {52,4294966222,971,1,0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {110,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {105,110,105,116,121,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[3] = {97,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[1] = {0 }; // BEGIN GLOBAL FUNCTION DEF: _strtod_l .visible .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u32 %r37; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r51; .reg .u32 %r66; .reg .u64 %r71; .reg .f64 %r73; .reg .u32 %r77; .reg .u64 %r78; .reg .f64 %r95; .reg .f64 %r99; .reg .f64 %r121; .reg .u32 %r126; .reg .u64 %r128; .reg .u32 %r132; .reg .f64 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r152; .reg .u32 %r167; .reg .u32 %r169; .reg .u32 %r181; .reg .f64 %r190; .reg .f64 %r193; .reg .u64 %r195; .reg .f64 %r201; .reg .f64 %r203; .reg .f64 %r204; .reg .f64 %r205; .reg .f64 %r209; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r215; .reg .u32 %r216; .reg .u64 %r217; .reg .u32 %r218; .reg .u32 %r219; .reg .u32 %r220; .reg .u64 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .f64 %r230; .reg .u32 %r231; .reg .f64 %r232; .reg .u32 %r233; .reg .u64 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u32 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .f64 %r241; .reg .f64 %r242; .reg .u64 %r246; .reg .u32 %r253; .reg .u32 %r255; .reg .u64 %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u32 %r260; .reg .u32 %r261; .reg .u32 %r262; .reg .u32 %r264; .reg .u32 %r265; .reg .u32 %r266; .reg .u32 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r281; .reg .u32 %r284; .reg .f64 %r288; .reg .u32 %r289; .reg .u32 %r292; .reg .f64 %r305; .reg .u32 %r309; .reg .u32 %r317; .reg .f64 %r322; .reg .u32 %r323; .reg .u64 %r324; .reg .u32 %r326; .reg .u64 %r328; .reg .u64 %r330; .reg .u32 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u32 %r341; .reg .u64 %r345; .reg .u32 %r352; .reg .u32 %r353; .reg .u64 %r354; .reg .u64 %r355; .reg .f64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r366; .reg .u16 %r367; .reg .pred %r368; .reg .pred %r370; .reg .pred %r372; .reg .pred %r374; .reg .pred %r375; .reg .pred %r377; .reg .pred %r379; .reg .pred %r380; .reg .u16 %r381; .reg .pred %r382; .reg .u16 %r384; .reg .u16 %r385; .reg .u32 %r386; .reg .u16 %r387; .reg .pred %r388; .reg .u64 %r391; .reg .u64 %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .pred %r402; .reg .pred %r403; .reg .u32 %r405; .reg .u64 %r409; .reg .pred %r410; .reg .u32 %r411; .reg .pred %r412; .reg .pred %r413; .reg .pred %r414; .reg .pred %r415; .reg .pred %r416; .reg .u64 %r420; .reg .u64 %r421; .reg .u64 %r422; .reg .u32 %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u32 %r430; .reg .u32 %r431; .reg .u64 %r432; .reg .u64 %r433; .reg .u64 %r434; .reg .u32 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .u32 %r441; .reg .u32 %r442; .reg .u64 %r443; .reg .u64 %r444; .reg .u64 %r445; .reg .u16 %r447; .reg .pred %r448; .reg .pred %r449; .reg .u32 %r450; .reg .pred %r452; .reg .pred %r453; .reg .u32 %r455; .reg .u32 %r456; .reg .u32 %r457; .reg .u32 %r460; .reg .u32 %r461; .reg .u32 %r462; .reg .pred %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r468; .reg .pred %r469; .reg .pred %r470; .reg .u32 %r471; .reg .pred %r472; .reg .u32 %r474; .reg .u32 %r475; .reg .pred %r477; .reg .u32 %r479; .reg .u32 %r480; .reg .pred %r482; .reg .pred %r483; .reg .u32 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .pred %r488; .reg .u32 %r490; .reg .u32 %r491; .reg .u32 %r492; .reg .u64 %r493; .reg .u32 %r494; .reg .pred %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u32 %r498; .reg .u32 %r499; .reg .pred %r500; .reg .u64 %r501; .reg .u16 %r502; .reg .pred %r503; .reg .pred %r505; .reg .u64 %r506; .reg .u32 %r507; .reg .pred %r508; .reg .pred %r509; .reg .u64 %r510; .reg .pred %r511; .reg .u32 %r512; .reg .pred %r513; .reg .u64 %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u32 %r518; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .pred %r522; .reg .u64 %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .u32 %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .u64 %r536; .reg .u64 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u64 %r543; .reg .u32 %r545; .reg .pred %r546; .reg .u64 %r547; .reg .u64 %r548; .reg .u64 %r550; .reg .u64 %r551; .reg .u32 %r552; .reg .pred %r553; .reg .u64 %r554; .reg .u16 %r555; .reg .u32 %r556; .reg .pred %r557; .reg .u64 %r559; .reg .u32 %r562; .reg .pred %r563; .reg .u32 %r564; .reg .u32 %r565; .reg .u64 %r566; .reg .u64 %r570; .reg .u64 %r571; .reg .u64 %r573; .reg .f64 %r574; .reg .pred %r575; .reg .pred %r576; .reg .pred %r577; .reg .u64 %r578; .reg .u32 %r579; .reg .u64 %r580; .reg .u64 %r581; .reg .u64 %r582; .reg .f64 %r583; .reg .f64 %r584; .reg .pred %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u64 %r591; .reg .u64 %r592; .reg .f64 %r593; .reg .f64 %r594; .reg .u32 %r595; .reg .u32 %r596; .reg .pred %r597; .reg .u32 %r598; .reg .u64 %r599; .reg .u64 %r600; .reg .u64 %r601; .reg .u64 %r602; .reg .f64 %r603; .reg .f64 %r604; .reg .f64 %r605; .reg .u32 %r607; .reg .u64 %r608; .reg .u64 %r609; .reg .u64 %r610; .reg .f64 %r611; .reg .pred %r612; .reg .u64 %r613; .reg .u32 %r614; .reg .u64 %r615; .reg .u64 %r616; .reg .u64 %r617; .reg .f64 %r618; .reg .f64 %r619; .reg .pred %r621; .reg .pred %r622; .reg .u64 %r623; .reg .u64 %r624; .reg .u64 %r625; .reg .u64 %r626; .reg .f64 %r627; .reg .f64 %r628; .reg .f64 %r629; .reg .pred %r630; .reg .pred %r631; .reg .u32 %r632; .reg .pred %r633; .reg .u32 %r634; .reg .pred %r635; .reg .f64 %r636; .reg .pred %r637; .reg .pred %r638; .reg .u64 %r639; .reg .u32 %r640; .reg .u32 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .u64 %r647; .reg .u64 %r648; .reg .u64 %r649; .reg .f64 %r650; .reg .f64 %r651; .reg .u64 %r653; .reg .u32 %r654; .reg .pred %r655; .reg .pred %r656; .reg .u32 %r657; .reg .u64 %r658; .reg .u64 %r659; .reg .u64 %r660; .reg .pred %r662; .reg .pred %r663; .reg .u64 %r664; .reg .u64 %r665; .reg .u64 %r666; .reg .u64 %r667; .reg .f64 %r668; .reg .f64 %r669; .reg .f64 %r670; .reg .pred %r671; .reg .pred %r672; .reg .u32 %r674; .reg .pred %r675; .reg .f64 %r676; .reg .pred %r677; .reg .pred %r678; .reg .u32 %r681; .reg .u32 %r682; .reg .u32 %r683; .reg .pred %r684; .reg .pred %r685; .reg .pred %r687; .reg .u32 %r690; .reg .u32 %r691; .reg .u32 %r692; .reg .u32 %r693; .reg .u32 %r694; .reg .u64 %r695; .reg .u64 %r696; .reg .u64 %r697; .reg .u32 %r699; .reg .u32 %r701; .reg .u32 %r702; .reg .u32 %r703; .reg .u64 %r704; .reg .u64 %r705; .reg .f64 %r707; .reg .pred %r708; .reg .u32 %r709; .reg .u64 %r715; .reg .pred %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u32 %r721; .reg .u64 %r722; .reg .pred %r723; .reg .u64 %r727; .reg .u64 %r728; .reg .u64 %r729; .reg .u64 %r731; .reg .u64 %r732; .reg .u64 %r738; .reg .pred %r739; .reg .u32 %r741; .reg .u64 %r742; .reg .pred %r743; .reg .pred %r744; .reg .u32 %r746; .reg .u32 %r747; .reg .pred %r748; .reg .u32 %r749; .reg .pred %r750; .reg .u32 %r751; .reg .u32 %r752; .reg .u32 %r753; .reg .u32 %r754; .reg .u32 %r755; .reg .pred %r756; .reg .u64 %r761; .reg .pred %r762; .reg .u64 %r766; .reg .u64 %r767; .reg .pred %r768; .reg .u64 %r771; .reg .pred %r772; .reg .u64 %r777; .reg .u64 %r778; .reg .pred %r779; .reg .u64 %r783; .reg .pred %r784; .reg .pred %r785; .reg .u64 %r789; .reg .pred %r790; .reg .pred %r791; .reg .u64 %r795; .reg .pred %r796; .reg .u64 %r800; .reg .u64 %r801; .reg .pred %r802; .reg .u32 %r803; .reg .u32 %r806; .reg .pred %r807; .reg .pred %r808; .reg .u64 %r809; .reg .u64 %r810; .reg .pred %r811; .reg .u32 %r813; .reg .u32 %r814; .reg .pred %r815; .reg .u32 %r816; .reg .pred %r817; .reg .u32 %r818; .reg .pred %r819; .reg .u32 %r822; .reg .u64 %r823; .reg .u32 %r826; .reg .pred %r827; .reg .pred %r828; .reg .u64 %r830; .reg .u32 %r832; .reg .pred %r833; .reg .pred %r835; .reg .pred %r836; .reg .u32 %r837; .reg .u32 %r838; .reg .u32 %r839; .reg .u32 %r840; .reg .pred %r841; .reg .u64 %r842; .reg .pred %r843; .reg .u32 %r844; .reg .u32 %r845; .reg .u64 %r846; .reg .u64 %r851; .reg .u64 %r852; .reg .pred %r853; .reg .u32 %r855; .reg .pred %r856; .reg .pred %r857; .reg .pred %r858; .reg .u32 %r860; .reg .u32 %r861; .reg .u64 %r862; .reg .u64 %r863; .reg .pred %r867; .reg .u64 %r868; .reg .u32 %r870; .reg .pred %r871; .reg .u32 %r872; .reg .u32 %r874; .reg .pred %r875; .reg .u64 %r876; .reg .f64 %r880; .reg .pred %r881; .reg .u32 %r882; .reg .u32 %r883; .reg .u32 %r884; .reg .pred %r885; .reg .u32 %r886; .reg .u32 %r887; .reg .u64 %r888; .reg .u64 %r892; .reg .f64 %r893; .reg .f64 %r895; .reg .pred %r896; .reg .u32 %r897; .reg .u32 %r898; .reg .u32 %r899; .reg .pred %r900; .reg .u32 %r901; .reg .u32 %r902; .reg .u64 %r903; .reg .u64 %r907; .reg .f64 %r908; .reg .f64 %r911; .reg .pred %r912; .reg .u64 %r914; .reg .pred %r915; .reg .pred %r916; .reg .pred %r917; .reg .u64 %r919; .reg .u32 %r920; .reg .pred %r921; .reg .u32 %r922; .reg .u64 %r923; .reg .u64 %r924; .reg .u64 %r925; .reg .f64 %r928; .reg .u64 %r930; .reg .u32 %r931; .reg .u32 %r932; .reg .pred %r933; .reg .u64 %r934; .reg .pred %r935; .reg .u64 %r936; .reg .u64 %r937; .reg .u64 %r938; .reg .u32 %r943; .reg .u32 %r944; .reg .u32 %r945; .reg .u16 %r946; .reg .u16 %r948; .reg .u32 %r949; .reg .u16 %r950; .reg .pred %r951; .reg .pred %r952; .reg .u64 %r954; .reg .u32 %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .u64 %r958; .reg .u64 %r959; .reg .u64 %r960; .reg .f64 %r963; .reg .u32 %r967; .reg .u32 %r968; .reg .u32 %r969; .reg .u32 %r970; .reg .u16 %r974; .reg .u16 %r975; .reg .u32 %r977; .reg .u16 %r978; .reg .pred %r979; .reg .u64 %r980; .reg .u64 %r982; .reg .pred %r983; .reg .pred %r984; .reg .pred %r985; .reg .pred %r986; .reg .u64 %r989; .reg .pred %r996; .reg .pred %r998; .reg .u32 %r999; .reg .pred %r1010; .reg .u64 %r1011; .reg .pred %r1012; .reg .u32 %r1014; .reg .u32 %r1015; .reg .pred %r1016; .reg .pred %r1017; .reg .u64 %r1019; .reg .pred %r1020; .reg .u32 %r1024; .reg .pred %r1025; .reg .u64 %r1026; .reg .u32 %r1030; .reg .pred %r1031; .reg .u16 %r1032; .reg .u16 %r1033; .reg .u32 %r1034; .reg .u16 %r1035; .reg .pred %r1036; .reg .u32 %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .u64 %r1040; .reg .u64 %r1041; .reg .u32 %r1042; .reg .u64 %r1043; .reg .pred %r1044; .reg .u32 %r1045; .reg .u64 %r1046; .reg .u64 %r1047; .reg .pred %r1048; .reg .pred %r1049; .reg .u32 %r1050; .reg .u32 %r1051; .reg .u32 %r1052; .reg .u16 %r1053; .reg .u32 %r1054; .reg .u32 %r1055; .reg .u32 %r1056; .reg .u16 %r1057; .reg .u32 %r1058; .reg .u32 %r1059; .reg .u16 %r1060; mov.u64 %r359,%ar0; mov.u64 %r360,%ar1; mov.u64 %r361,%ar2; mov.u64 %r362,%ar3; .loc 1 256 11 mov.u64 %r363,0; st.u64 [%frame+8],%r363; .loc 1 266 14 ld.const.u64 %r246,[_C_numeric_locale]; .loc 1 267 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r246; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r366,[%value_in]; } .loc 1 271 11 mov.u64 %r355,%r363; mov.u64 %r44,%r360; $L9: mov.u64 %r333,%r44; .loc 1 272 8 st.u64 [%frame+16],%r333; .loc 1 272 27 ld.s8 %r25,[%r44]; .loc 1 272 20 cvt.u16.u32 %r367,%r25; setp.eq.u16 %r368,%r367,43; @ %r368 bra $L156; setp.gt.s16 %r370,%r367,43; @ %r370 bra $L3; setp.gt.s16 %r372,%r367,13; @ %r372 bra $L4; setp.gt.s16 %r374,%r367,8; @ %r374 bra $L5; setp.eq.u32 %r375,%r25,0; @ %r375 bra $L6; mov.u32 %r226,0; .loc 1 270 13 mov.u32 %r225,%r226; bra $L7; $L4: .loc 1 272 20 setp.eq.u16 %r377,%r367,32; @ %r377 bra $L5; mov.u32 %r226,0; .loc 1 270 13 mov.u32 %r225,%r226; bra $L7; $L3: .loc 1 272 20 setp.ne.u16 %r379,%r367,45; @ %r379 bra $L157; .loc 1 274 9 mov.u32 %r226,1; bra $L2; $L156: .loc 1 272 20 mov.u32 %r226,0; $L2: .loc 1 277 9 add.u64 %r28,%r44,1; .loc 1 277 7 st.u64 [%frame+16],%r28; .loc 1 277 8 ld.s8 %r25,[%r44+1]; .loc 1 277 7 setp.ne.u32 %r380,%r25,0; @ %r380 bra $L158; bra $L6; $L5: add.u64 %r44,%r44,1; .loc 1 272 20 bra $L9; $L157: mov.u32 %r226,0; bra $L8; $L158: mov.u64 %r333,%r28; $L8: .loc 1 293 5 cvt.u16.u32 %r381,%r25; setp.ne.u16 %r382,%r381,48; @ %r382 bra $L159; .loc 1 299 3 ld.u8 %r1060,[%r333+1]; mov.u16 %r385,%r1060; and.b16 %r384,%r385,-33; cvt.u32.u16 %r386,%r384; cvt.s16.s8 %r387,%r386; setp.ne.u16 %r388,%r387,88; @ %r388 bra $L10; .loc 1 316 16 add.u64 %r396,%frame,8; add.u64 %r397,%frame,24; add.u64 %r398,%frame,16; cvta.const.u64 %r391,fpi$1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r398; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r391; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r397; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r396; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r226; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r362; call (%value_in),__gethex,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r399,[%value_in]; } .loc 1 316 62 and.b32 %r34,%r399,7; setp.eq.u32 %r400,%r34,0; @ %r400 bra $L160; setp.ne.u32 %r401,%r34,6; @ %r401 bra $L12; .loc 1 304 8 add.u64 %r195,%r333,1; .loc 1 1260 5 setp.eq.u64 %r402,%r361,0; @ %r402 bra $L161; .loc 1 1261 7 st.u64 [%r361],%r195; mov.f64 %r358,0d0000000000000000; bra $L1; $L12: .loc 1 324 9 ld.u64 %r35,[%frame+8]; .loc 1 324 8 setp.eq.u64 %r403,%r35,0; @ %r403 bra $L14; .loc 1 325 6 mov.u32 %r405,53; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r405; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; call __copybits,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 326 6 ld.u64 %r409,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call _Bfree,(%out_arg1,%out_arg2); } $L14: .loc 1 328 5 ld.u32 %r37,[%frame+24]; .loc 1 211 2 setp.eq.u32 %r410,%r34,3; @ %r410 bra $L15; and.b32 %r411,%r399,4; setp.ne.u32 %r412,%r411,0; @ %r412 bra $L16; setp.eq.u32 %r413,%r34,1; @ %r413 bra $L17; setp.eq.u32 %r414,%r34,2; @ %r414 bra $L18; bra $L19; $L16: setp.eq.u32 %r415,%r34,4; @ %r415 bra $L20; setp.eq.u32 %r416,%r34,5; @ %r416 bra $L17; bra $L19; $L18: .loc 1 219 9 ld.u32 %r420,[%frame+4]; shl.b64 %r421,%r420,32; ld.u32 %r422,[%frame]; or.b64 %r355,%r422,%r421; .loc 1 220 3 bra $L19; $L17: .loc 1 225 20 ld.u32 %r428,[%frame+4]; and.b32 %r427,%r428,-1048577; .loc 1 225 49 add.u32 %r429,%r37,1075; .loc 1 225 55 shl.b32 %r430,%r429,20; .loc 1 225 33 or.b32 %r431,%r427,%r430; .loc 1 225 9 cvt.u64.u32 %r432,%r431; shl.b64 %r433,%r432,32; ld.u32 %r434,[%frame]; or.b64 %r355,%r434,%r433; .loc 1 226 3 bra $L19; $L15: .loc 1 229 9 mov.u64 %r355,9218868437227405312; .loc 1 231 3 bra $L19; $L20: .loc 1 235 9 mov.u64 %r355,9223372036854775807; $L19: .loc 1 237 8 and.b32 %r438,%r399,8; .loc 1 237 5 setp.ne.u32 %r439,%r438,0; @ %r439 bra $L21; .loc 1 1262 17 mov.b64 %r358,%r355; bra $L22; $L21: .loc 1 238 9 shr.u64 %r440,%r355,32; cvt.u32.u64 %r441,%r440; or.b32 %r442,%r441,-2147483648; cvt.u64.u32 %r443,%r442; shl.b64 %r444,%r443,32; and.b64 %r445,%r355,4294967295; or.b64 %r355,%r445,%r444; .loc 1 1262 17 mov.b64 %r358,%r355; bra $L22; $L160: mov.f64 %r358,0d0000000000000000; bra $L22; $L10: add.u64 %r128,%r333,1; $L23: .loc 1 335 10 mov.u64 %r333,%r128; .loc 1 335 14 st.u64 [%frame+16],%r333; add.u64 %r128,%r333,1; .loc 1 335 9 ld.s8 %r25,[%r333]; .loc 1 335 14 cvt.u16.u32 %r447,%r25; setp.eq.u16 %r448,%r447,48; @ %r448 bra $L23; .loc 1 336 6 setp.eq.u32 %r449,%r25,0; @ %r449 bra $L162; .loc 1 334 7 mov.u32 %r225,1; bra $L7; $L159: .loc 1 270 13 mov.u32 %r225,0; $L7: .loc 1 267 6 cvt.u32.u64 %r450,%r366; .loc 1 347 6 cvt.s64.s32 %r334,%r450; .loc 1 341 35 add.u32 %r1042,%r25,-48; setp.gt.u32 %r452,%r1042,9; @ %r452 bra $L24; add.u64 %r221,%r333,1; .loc 1 340 8 mov.u32 %r233,0; .loc 1 340 4 mov.u32 %r231,%r233; .loc 1 341 9 mov.u32 %r253,%r233; $L27: .loc 1 342 6 setp.gt.s32 %r453,%r253,8; @ %r453 bra $L25; .loc 1 343 10 shl.b32 %r455,%r231,2; add.u32 %r456,%r455,%r231; add.u32 %r457,%r456,%r456; .loc 1 343 6 add.u32 %r231,%r1042,%r457; bra $L26; $L25: .loc 1 345 10 shl.b32 %r460,%r233,2; add.u32 %r461,%r460,%r233; add.u32 %r462,%r461,%r461; .loc 1 345 6 add.u32 %r233,%r1042,%r462; $L26: .loc 1 341 50 add.u32 %r253,%r253,1; .loc 1 341 55 mov.u64 %r43,%r221; st.u64 [%frame+16],%r221; .loc 1 341 24 ld.s8 %r25,[%r221]; .loc 1 341 35 add.u64 %r221,%r221,1; add.u32 %r1042,%r25,-48; setp.le.u32 %r465,%r1042,9; @ %r465 bra $L27; bra $L307; $L150: add.u64 %r71,%r345,1; .loc 1 270 18 mov.u32 %r255,%r1024; $L29: .loc 1 353 7 add.u32 %r255,%r255,1; .loc 1 352 22 st.u64 [%frame+16],%r71; ld.s8 %r218,[%r71]; .loc 1 352 12 add.u64 %r71,%r71,1; setp.eq.u32 %r466,%r218,48; @ %r466 bra $L29; $L151: .loc 1 354 16 add.u32 %r467,%r218,-49; .loc 1 354 7 setp.gt.u32 %r468,%r467,8; @ %r468 bra $L163; .loc 1 355 8 ld.u64 %r333,[%frame+16]; .loc 1 365 10 add.u32 %r341,%r218,-48; .loc 1 366 8 add.u32 %r224,%r255,1; mov.u64 %r324,%r333; .loc 1 340 4 mov.u32 %r231,0; .loc 1 340 8 mov.u32 %r233,%r231; .loc 1 366 8 mov.u32 %r253,1; bra $L31; $L32: .loc 1 364 6 add.u32 %r255,%r255,1; .loc 1 365 10 mov.u32 %r341,%r494; .loc 1 362 36 ld.u64 %r324,[%frame+16]; .loc 1 365 7 setp.eq.u32 %r469,%r494,0; @ %r469 bra $L33; .loc 1 372 11 add.u32 %r1037,%r253,1; mov.u32 %r326,%r1037; .loc 1 366 8 add.u32 %r224,%r224,%r255; .loc 1 367 18 setp.eq.u32 %r470,%r255,1; @ %r470 bra $L34; add.u32 %r471,%r253,%r255; add.u32 %r29,%r471,-1; $L37: mov.u32 %r222,%r253; .loc 1 368 12 mov.u32 %r253,%r1037; .loc 1 368 9 setp.gt.u32 %r472,%r222,8; @ %r472 bra $L35; .loc 1 369 9 shl.b32 %r474,%r231,2; add.u32 %r475,%r474,%r231; add.u32 %r231,%r475,%r475; bra $L36; $L35: .loc 1 370 14 setp.gt.s32 %r477,%r1037,16; @ %r477 bra $L36; .loc 1 371 9 shl.b32 %r479,%r233,2; add.u32 %r480,%r479,%r233; add.u32 %r233,%r480,%r480; $L36: .loc 1 367 18 setp.ne.u32 %r482,%r29,%r1037; @ ! %r482 bra $L308; add.u32 %r1037,%r1037,1; bra $L37; $L308: .loc 1 372 11 add.u32 %r326,%r222,2; $L34: .loc 1 372 8 setp.gt.s32 %r483,%r253,8; @ %r483 bra $L38; mov.u32 %r253,%r326; $L31: .loc 1 373 12 shl.b32 %r485,%r231,2; add.u32 %r486,%r485,%r231; add.u32 %r487,%r486,%r486; .loc 1 373 8 add.u32 %r231,%r341,%r487; .loc 1 376 8 mov.u32 %r255,0; bra $L33; $L38: .loc 1 374 13 setp.gt.s32 %r488,%r326,16; @ %r488 bra $L164; .loc 1 375 12 shl.b32 %r490,%r233,2; add.u32 %r491,%r490,%r233; add.u32 %r492,%r491,%r491; .loc 1 375 8 add.u32 %r233,%r494,%r492; mov.u32 %r253,%r326; .loc 1 376 8 mov.u32 %r255,0; bra $L33; $L164: mov.u32 %r253,%r326; mov.u32 %r255,0; $L33: .loc 1 362 36 add.u64 %r493,%r324,1; .loc 1 362 33 st.u64 [%frame+16],%r493; ld.s8 %r218,[%r324+1]; $L153: .loc 1 362 18 add.u32 %r494,%r218,-48; setp.le.u32 %r495,%r494,9; @ %r495 bra $L32; .loc 1 349 9 mov.u32 %r331,1; .loc 1 380 2 bra $L30; $L163: .loc 1 341 14 mov.u32 %r224,%r1024; mov.u32 %r253,%r224; .loc 1 340 8 mov.u32 %r233,0; .loc 1 340 4 mov.u32 %r231,%r233; .loc 1 349 9 mov.u32 %r331,1; $L30: .loc 1 382 20 and.b32 %r496,%r218,-33; .loc 1 382 5 setp.ne.u32 %r497,%r496,69; @ %r497 bra $L165; .loc 1 383 18 or.b32 %r498,%r253,%r255; or.b32 %r499,%r498,%r225; .loc 1 383 6 setp.eq.u32 %r500,%r499,0; @ %r500 bra $L6; bra $L155; $L179: .loc 1 341 50 mov.u32 %r323,%r253; .loc 1 270 18 mov.u32 %r255,0; .loc 1 341 14 mov.u32 %r224,%r255; .loc 1 270 26 mov.u32 %r331,%r255; $L155: .loc 1 386 7 ld.u64 %r360,[%frame+16]; .loc 1 388 15 add.u64 %r501,%r360,1; .loc 1 388 3 st.u64 [%frame+16],%r501; .loc 1 388 14 ld.s8 %r66,[%r360+1]; .loc 1 388 3 cvt.u16.u32 %r502,%r66; setp.eq.u16 %r503,%r502,43; @ %r503 bra $L166; setp.eq.u16 %r505,%r502,45; @ %r505 bra $L167; .loc 1 388 12 mov.u32 %r218,%r66; .loc 1 387 9 mov.u32 %r220,0; bra $L42; $L166: .loc 1 388 3 mov.u32 %r220,0; bra $L41; $L167: .loc 1 390 11 mov.u32 %r220,1; $L41: .loc 1 392 10 add.u64 %r506,%r360,2; .loc 1 392 7 st.u64 [%frame+16],%r506; ld.s8 %r218,[%r360+2]; $L42: .loc 1 394 16 add.u32 %r507,%r218,-48; .loc 1 394 6 setp.gt.u32 %r508,%r507,9; @ %r508 bra $L43; .loc 1 395 12 setp.ne.u32 %r509,%r218,48; @ %r509 bra $L44; ld.u64 %r510,[%frame+16]; add.u64 %r41,%r510,1; $L45: .loc 1 396 7 st.u64 [%frame+16],%r41; .loc 1 396 9 ld.s8 %r218,[%r41]; .loc 1 395 12 add.u64 %r41,%r41,1; setp.eq.u32 %r511,%r218,48; @ %r511 bra $L45; $L44: .loc 1 397 16 add.u32 %r512,%r218,-49; .loc 1 397 7 setp.gt.u32 %r513,%r512,8; @ %r513 bra $L168; .loc 1 398 7 add.u32 %r257,%r218,-48; .loc 1 399 8 ld.u64 %r256,[%frame+16]; .loc 1 400 17 add.u64 %r514,%r256,1; .loc 1 400 29 st.u64 [%frame+16],%r514; .loc 1 400 16 ld.s8 %r218,[%r256+1]; .loc 1 400 29 add.u32 %r515,%r218,-48; setp.gt.u32 %r516,%r515,9; @ %r516 bra $L46; add.u64 %r217,%r256,2; $L47: .loc 1 401 12 shl.b32 %r518,%r257,2; add.u32 %r519,%r518,%r257; add.u32 %r520,%r519,%r519; .loc 1 401 15 add.u32 %r77,%r520,%r218; .loc 1 401 8 add.u32 %r257,%r77,-48; .loc 1 400 17 mov.u64 %r78,%r217; .loc 1 400 29 st.u64 [%frame+16],%r217; .loc 1 400 16 ld.s8 %r218,[%r217]; .loc 1 400 29 add.u64 %r217,%r217,1; add.u32 %r521,%r218,-48; setp.le.u32 %r522,%r521,9; @ %r522 bra $L47; .loc 1 402 11 sub.u64 %r523,%r78,%r256; .loc 1 402 8 setp.gt.s64 %r524,%r523,8; @ %r524 bra $L169; $L46: min.s32 %r219,%r257,19999; bra $L48; $L169: .loc 1 406 8 mov.u32 %r219,19999; $L48: .loc 1 409 8 setp.eq.u32 %r525,%r220,0; @ %r525 bra $L39; .loc 1 410 8 neg.s32 %r219,%r219; bra $L39; $L43: .loc 1 416 6 st.u64 [%frame+16],%r360; .loc 1 381 4 mov.u32 %r219,0; bra $L39; $L165: mov.u32 %r219,0; bra $L39; $L168: .loc 1 413 7 mov.u32 %r219,0; $L39: .loc 1 418 5 setp.ne.u32 %r526,%r253,0; @ %r526 bra $L170; .loc 1 419 11 or.b32 %r527,%r225,%r255; .loc 1 419 6 setp.eq.u32 %r528,%r527,0; @ %r528 bra $L50; .loc 1 1262 17 mov.f64 %r358,0d0000000000000000; bra $L22; $L50: .loc 1 425 7 setp.ne.u32 %r529,%r331,0; @ %r529 bra $L6; .loc 1 426 5 setp.eq.u32 %r530,%r218,105; @ %r530 bra $L51; setp.gt.s32 %r531,%r218,105; @ %r531 bra $L52; setp.eq.u32 %r532,%r218,73; @ %r532 bra $L51; setp.eq.u32 %r533,%r218,78; @ %r533 bra $L53; bra $L6; $L52: setp.eq.u32 %r534,%r218,110; @ %r534 bra $L53; bra $L6; $L51: .loc 1 429 9 add.u64 %r537,%frame,16; cvta.const.u64 %r536,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r537; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r536; call (%value_in),__match,(%out_arg1,%out_arg2); ld.param.u32 %r538,[%value_in]; } .loc 1 429 8 setp.eq.u32 %r539,%r538,0; @ %r539 bra $L6; .loc 1 430 6 ld.u64 %r541,[%frame+16]; add.u64 %r540,%r541,-1; st.u64 [%frame+16],%r540; .loc 1 431 11 cvta.const.u64 %r543,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r537; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r543; call (%value_in),__match,(%out_arg1,%out_arg2); ld.param.u32 %r545,[%value_in]; } .loc 1 431 9 setp.ne.u32 %r546,%r545,0; @ %r546 bra $L54; .loc 1 432 7 ld.u64 %r548,[%frame+16]; add.u64 %r547,%r548,1; st.u64 [%frame+16],%r547; $L54: .loc 1 437 6 mov.f64 %r358,0d7ff0000000000000; bra $L22; $L53: .loc 1 442 9 add.u64 %r551,%frame,16; cvta.const.u64 %r550,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r551; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r550; call (%value_in),__match,(%out_arg1,%out_arg2); ld.param.u32 %r552,[%value_in]; } .loc 1 442 8 setp.eq.u32 %r553,%r552,0; @ %r553 bra $L6; .loc 1 444 10 ld.u64 %r554,[%frame+16]; .loc 1 444 9 ld.u8 %r556,[%r554]; cvt.s16.s8 %r555,%r556; setp.ne.u16 %r557,%r555,40; @ %r557 bra $L56; .loc 1 445 10 cvta.const.u64 %r559,fpinan$0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r551; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r559; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__hexnan,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r562,[%value_in]; } .loc 1 445 7 setp.ne.u32 %r563,%r562,5; @ %r563 bra $L56; .loc 1 447 31 ld.u32 %r565,[%frame+4]; or.b32 %r564,%r565,2146435072; .loc 1 447 18 cvt.u64.u32 %r566,%r564; .loc 1 449 18 ld.u32 %r570,[%frame]; shl.b64 %r571,%r566,32; or.b64 %r355,%r571,%r570; .loc 1 1262 17 mov.b64 %r358,%r355; .loc 1 449 18 bra $L22; $L56: .loc 1 454 18 cvta.const.u64 %r573,$LC3; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r573; call (%value_in),nan,(%out_arg1); ld.param.f64 %r574,[%value_in]; } mov.f64 %r358,%r574; bra $L22; $L6: .loc 1 1260 5 setp.ne.u64 %r575,%r361,0; @ %r575 bra $L57; .loc 1 1262 26 mov.f64 %r358,0d0000000000000000; bra $L1; $L57: .loc 1 1261 7 st.u64 [%r361],%r360; .loc 1 1262 26 mov.f64 %r358,0d0000000000000000; bra $L1; $L170: mov.u32 %r353,%r253; mov.u32 %r253,%r323; $L49: .loc 1 468 9 sub.u32 %r258,%r219,%r224; .loc 1 475 5 setp.ne.u32 %r576,%r253,0; selp.u32 %r253,%r253,%r353,%r576; .loc 1 477 4 min.s32 %r260,%r353,16; .loc 1 478 11 cvt.rn.f64.u32 %r95,%r231; mov.b64 %r355,%r95; .loc 1 479 5 setp.le.s32 %r577,%r353,9; @ %r577 bra $L59; .loc 1 484 18 cvta.const.u64 %r578,__mprec_tens; .loc 1 484 21 add.u32 %r579,%r260,-9; .loc 1 484 18 cvt.s64.s32 %r580,%r579; shl.b64 %r581,%r580,3; add.u64 %r582,%r578,%r581; .loc 1 484 37 cvt.rn.f64.u32 %r583,%r233; ld.f64 %r584,[%r582]; fma.rn.f64 %r99,%r95,%r584,%r583; .loc 1 484 12 mov.b64 %r355,%r99; $L59: .loc 1 487 5 setp.gt.s32 %r585,%r353,15; @ %r585 bra $L60; .loc 1 494 6 setp.ne.u32 %r586,%r258,0; @ %r586 bra $L61; .loc 1 508 16 mov.b64 %r358,%r355; bra $L22; $L61: .loc 1 496 6 setp.le.s32 %r587,%r258,0; @ %r587 bra $L62; .loc 1 497 7 setp.gt.s32 %r588,%r258,22; @ %r588 bra $L63; .loc 1 508 16 cvta.const.u64 %r589,__mprec_tens; cvt.s64.s32 %r590,%r258; shl.b64 %r591,%r590,3; add.u64 %r592,%r589,%r591; ld.f64 %r593,[%r592]; mov.b64 %r594,%r355; mul.f64 %r358,%r593,%r594; .loc 1 509 5 bra $L22; $L63: .loc 1 513 22 mov.u32 %r596,37; sub.u32 %r595,%r596,%r353; .loc 1 513 7 setp.lt.s32 %r597,%r595,%r258; @ %r597 bra $L64; .loc 1 512 6 mov.u32 %r598,15; sub.u32 %r262,%r598,%r353; .loc 1 525 21 cvta.const.u64 %r599,__mprec_tens; cvt.s64.s32 %r600,%r262; shl.b64 %r601,%r600,3; add.u64 %r602,%r599,%r601; .loc 1 525 14 ld.f64 %r604,[%r602]; mov.b64 %r605,%r355; mul.f64 %r603,%r604,%r605; .loc 1 524 7 sub.u32 %r607,%r258,%r262; .loc 1 538 16 cvt.s64.s32 %r608,%r607; shl.b64 %r609,%r608,3; add.u64 %r610,%r599,%r609; ld.f64 %r611,[%r610]; mul.f64 %r358,%r603,%r611; .loc 1 540 5 bra $L22; $L62: .loc 1 544 11 setp.lt.s32 %r612,%r258,-22; @ %r612 bra $L60; .loc 1 552 15 cvta.const.u64 %r613,__mprec_tens; sub.u32 %r614,%r224,%r219; cvt.s64.s32 %r615,%r614; shl.b64 %r616,%r615,3; add.u64 %r617,%r613,%r616; mov.b64 %r618,%r355; ld.f64 %r619,[%r617]; div.rn.f64 %r358,%r618,%r619; .loc 1 553 4 bra $L22; $L60: .loc 1 557 5 vsub.u32.u32.u32.add %r264,%r353,%r260,%r258; .loc 1 581 5 setp.le.s32 %r621,%r264,0; @ %r621 bra $L65; $L149: .loc 1 582 11 and.b32 %r269,%r264,15; .loc 1 582 6 setp.eq.u32 %r622,%r269,0; @ %r622 bra $L66; .loc 1 583 20 cvta.const.u64 %r623,__mprec_tens; cvt.s64.s32 %r624,%r269; shl.b64 %r625,%r624,3; add.u64 %r626,%r623,%r625; .loc 1 583 13 ld.f64 %r628,[%r626]; mov.b64 %r629,%r355; mul.f64 %r627,%r628,%r629; mov.b64 %r355,%r627; $L66: .loc 1 584 10 and.b32 %r270,%r264,-16; .loc 1 584 6 setp.eq.u32 %r630,%r270,0; @ %r630 bra $L67; .loc 1 585 7 setp.le.s32 %r631,%r270,308; @ %r631 bra $L68; $L73: .loc 1 588 17 mov.u32 %r632,34; st.u32 [%r359],%r632; mov.f64 %r358,0d7ff0000000000000; bra $L22; $L68: .loc 1 628 7 shr.s32 %r273,%r270,4; .loc 1 629 18 setp.le.s32 %r633,%r270,16; @ %r633 bra $L171; mov.b64 %r322,%r355; cvta.const.u64 %r1040,__mprec_bigtens; mov.u64 %r24,%r1040; mov.u32 %r292,0; .loc 1 629 10 mov.u32 %r272,%r292; .loc 1 631 15 mov.u32 %r1058,1; $L71: .loc 1 630 12 and.b32 %r634,%r273,1; .loc 1 630 8 setp.eq.u32 %r635,%r634,0; @ %r635 bra $L70; .loc 1 631 15 ld.f64 %r636,[%r24]; mul.f64 %r322,%r322,%r636; mov.u32 %r292,%r1058; $L70: .loc 1 629 24 add.u32 %r272,%r272,1; .loc 1 629 31 shr.s32 %r273,%r273,1; .loc 1 629 18 add.u64 %r24,%r24,8; setp.ne.u32 %r637,%r273,1; @ %r637 bra $L71; setp.eq.u32 %r638,%r292,0; @ %r638 bra $L69; mov.b64 %r355,%r322; bra $L69; $L171: .loc 1 629 10 mov.u32 %r272,0; cvta.const.u64 %r1040,__mprec_bigtens; $L69: .loc 1 633 15 shr.u64 %r639,%r355,32; cvt.u32.u64 %r640,%r639; add.u32 %r641,%r640,-55574528; cvt.u64.u32 %r642,%r641; shl.b64 %r643,%r642,32; and.b64 %r644,%r355,4294967295; or.b64 %r355,%r644,%r643; .loc 1 634 23 cvt.s64.s32 %r647,%r272; shl.b64 %r648,%r647,3; add.u64 %r649,%r1040,%r648; .loc 1 634 13 ld.f64 %r650,[%r649]; mov.b64 %r651,%r355; mul.f64 %r121,%r650,%r651; mov.b64 %r355,%r121; shr.u64 %r653,%r355,32; cvt.u32.u64 %r654,%r653; .loc 1 635 11 and.b32 %r271,%r654,2146435072; .loc 1 635 7 setp.gt.u32 %r655,%r271,2090860544; @ %r655 bra $L73; .loc 1 638 7 setp.le.u32 %r656,%r271,2089811968; @ %r656 bra $L74; .loc 1 643 16 mov.u64 %r355,9218868437227405311; .loc 1 566 8 mov.u32 %r126,0; bra $L75; $L74: .loc 1 647 16 add.u32 %r657,%r654,55574528; cvt.u64.u32 %r658,%r657; shl.b64 %r659,%r658,32; and.b64 %r660,%r355,4294967295; or.b64 %r355,%r660,%r659; .loc 1 566 8 mov.u32 %r126,0; bra $L75; $L65: .loc 1 650 10 setp.eq.u32 %r662,%r264,0; @ %r662 bra $L67; .loc 1 651 6 neg.s32 %r265,%r264; .loc 1 652 11 and.b32 %r266,%r265,15; .loc 1 652 6 setp.eq.u32 %r663,%r266,0; @ %r663 bra $L76; .loc 1 653 20 cvta.const.u64 %r664,__mprec_tens; cvt.s64.s32 %r665,%r266; shl.b64 %r666,%r665,3; add.u64 %r667,%r664,%r666; .loc 1 653 13 mov.b64 %r669,%r355; ld.f64 %r670,[%r667]; div.rn.f64 %r668,%r669,%r670; mov.b64 %r355,%r668; $L76: .loc 1 654 10 shr.s32 %r268,%r265,4; .loc 1 654 6 setp.eq.u32 %r671,%r268,0; @ %r671 bra $L67; .loc 1 655 7 setp.gt.s32 %r672,%r268,31; @ %r672 bra $L77; .loc 1 658 11 and.b32 %r126,%r268,16; .loc 1 658 7 setp.eq.u32 %r1044,%r126,0; @ %r1044 bra $L78; .loc 1 659 11 mov.u32 %r126,106; setp.eq.u32 %r1044,1,0; $L78: mov.b64 %r232,%r355; cvta.const.u64 %r30,tinytens; mov.u32 %r149,0; .loc 1 662 15 mov.u32 %r1059,1; $L80: .loc 1 661 12 and.b32 %r674,%r268,1; .loc 1 661 8 setp.eq.u32 %r675,%r674,0; @ %r675 bra $L79; .loc 1 662 15 ld.f64 %r676,[%r30]; mul.f64 %r232,%r232,%r676; mov.u32 %r149,%r1059; $L79: .loc 1 660 31 shr.s32 %r268,%r268,1; .loc 1 660 18 add.u64 %r30,%r30,8; setp.ne.u32 %r677,%r268,0; @ %r677 bra $L80; setp.eq.u32 %r678,%r149,0; @ %r678 bra $L81; mov.b64 %r355,%r232; $L81: .loc 1 663 7 @ %r1044 bra $L82; .loc 1 663 34 shr.u64 %r1041,%r355,32; cvt.u32.u64 %r681,%r1041; .loc 1 664 7 shr.u32 %r682,%r681,20; and.b32 %r132,%r682,2047; .loc 1 663 30 mov.u32 %r683,107; sub.u32 %r267,%r683,%r132; .loc 1 663 14 setp.le.s32 %r684,%r267,0; @ %r684 bra $L82; .loc 1 666 8 setp.le.s32 %r685,%r267,31; @ %r685 bra $L83; .loc 1 668 17 and.b64 %r355,%r355,-4294967296; .loc 1 670 9 setp.le.s32 %r687,%r267,52; @ %r687 bra $L84; .loc 1 671 18 mov.u64 %r355,247697979505377280; bra $L82; $L84: .loc 1 673 37 mov.u32 %r691,75; sub.u32 %r690,%r691,%r132; .loc 1 673 32 mov.u32 %r693,-1; shl.b32 %r692,%r693,%r690; .loc 1 673 18 and.b32 %r694,%r692,%r681; cvt.u64.u32 %r695,%r694; shl.b64 %r696,%r695,32; and.b64 %r697,%r355,4294967295; or.b64 %r355,%r697,%r696; bra $L82; $L83: .loc 1 677 17 cvt.u32.u64 %r699,%r355; .loc 1 677 31 mov.u32 %r702,-1; shl.b32 %r701,%r702,%r267; .loc 1 677 17 and.b32 %r703,%r699,%r701; cvt.u64.u32 %r704,%r703; and.b64 %r705,%r355,-4294967296; or.b64 %r355,%r705,%r704; $L82: .loc 1 691 8 mov.b64 %r707,%r355; setp.neu.f64 %r708,%r707,0d0000000000000000; @ %r708 bra $L75; $L77: .loc 1 695 18 mov.u32 %r709,34; st.u32 [%r359],%r709; mov.f64 %r358,0d0000000000000000; bra $L22; $L67: .loc 1 566 8 mov.u32 %r126,0; $L75: .loc 1 720 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r333; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r253; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r353; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r231; call (%value_in),__s2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r715,[%value_in]; } .loc 1 721 5 setp.eq.u64 %r716,%r715,0; @ %r716 bra $L73; setp.ge.s32 %r718,%r258,0; @ %r718 bra $L85; .loc 1 741 14 sub.u32 %r717,%r224,%r219; bra $L86; $L85: mov.u32 %r717,0; $L86: max.s32 %r352,%r258,0; .loc 1 269 8 mov.u64 %r237,0; .loc 1 269 13 mov.u64 %r236,%r237; .loc 1 728 3 add.u64 %r1046,%r715,16; .loc 1 729 8 add.u64 %r1047,%frame,24; .loc 1 796 6 setp.le.s32 %r1048,%r717,0; .loc 1 811 6 setp.gt.s32 %r1049,%r258,0; .loc 1 1189 6 set.u32.eq.u32 %r1050,%r126,0; neg.s32 %r1051,%r1050; mov.u32 %r1052,%r1051; .loc 1 1191 6 cvt.u16.u8 %r1060,%r1052; mov.u16 %r1053,%r1060; .loc 1 1126 8 set.u32.ne.u32 %r1054,%r126,0; neg.s32 %r1055,%r1054; mov.u32 %r1056,%r1055; .loc 1 1126 14 cvt.u16.u8 %r1060,%r1056; mov.u16 %r1057,%r1060; $L145: .loc 1 725 8 ld.u32 %r721,[%r715+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r721; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r722,[%value_in]; } mov.u64 %r235,%r722; .loc 1 726 6 setp.eq.u64 %r723,%r235,0; @ %r723 bra $L87; .loc 1 728 3 ld.s32 %r727,[%r715+20]; add.u64 %r728,%r727,2; shl.b64 %r729,%r728,2; add.u64 %r731,%r235,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r731; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1046; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r732,[%value_in]; } .loc 1 729 8 mov.b64 %r148,%r355; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r148; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1047; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call (%value_in),__d2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r738,[%value_in]; } mov.u64 %r330,%r738; .loc 1 729 6 st.u64 [%frame+8],%r330; .loc 1 730 6 setp.eq.u64 %r739,%r330,0; @ %r739 bra $L88; .loc 1 732 8 mov.u32 %r741,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r741; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r742,[%value_in]; } mov.u64 %r236,%r742; .loc 1 733 6 setp.ne.u64 %r743,%r236,0; @ %r743 bra $L89; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L89: .loc 1 744 11 ld.u32 %r150,[%frame+24]; .loc 1 744 6 setp.lt.s32 %r744,%r150,0; @ %r744 bra $L90; .loc 1 745 8 add.u32 %r212,%r150,%r717; mov.u32 %r215,%r352; bra $L91; $L90: .loc 1 747 8 sub.u32 %r215,%r352,%r150; mov.u32 %r212,%r717; $L91: .loc 1 757 9 ld.u32 %r152,[%frame]; vsub.u32.u32.u32.add %r746,%r150,%r126,%r152; .loc 1 757 5 add.u32 %r277,%r746,-1; .loc 1 758 5 mov.u32 %r747,54; sub.u32 %r223,%r747,%r152; .loc 1 759 6 setp.ge.s32 %r748,%r277,-1022; @ %r748 bra $L172; .loc 1 760 6 mov.u32 %r749,-1022; sub.u32 %r278,%r749,%r277; .loc 1 761 6 sub.u32 %r223,%r223,%r278; .loc 1 762 7 setp.gt.s32 %r750,%r278,31; @ %r750 bra $L93; .loc 1 763 9 mov.u32 %r751,1; shl.b32 %r238,%r751,%r278; .loc 1 755 8 mov.u32 %r239,0; bra $L92; $L93: .loc 1 765 21 mov.u32 %r753,-1054; sub.u32 %r752,%r753,%r277; .loc 1 765 10 mov.u32 %r754,1; shl.b32 %r239,%r754,%r752; .loc 1 754 7 mov.u32 %r238,%r754; bra $L92; $L172: .loc 1 755 8 mov.u32 %r239,0; .loc 1 754 7 mov.u32 %r238,1; $L92: .loc 1 783 7 add.u32 %r213,%r212,%r223; .loc 1 786 7 vadd.u32.u32.u32.add %r216,%r126,%r215,%r223; min.s32 %r755,%r212,%r213; min.s32 %r33,%r755,%r216; .loc 1 791 6 setp.le.s32 %r756,%r33,0; @ %r756 bra $L94; .loc 1 792 8 sub.u32 %r213,%r213,%r33; .loc 1 793 8 sub.u32 %r216,%r216,%r33; .loc 1 794 8 sub.u32 %r212,%r212,%r33; $L94: .loc 1 796 6 @ %r1048 bra $L95; .loc 1 797 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r742; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r717; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r761,[%value_in]; } mov.u64 %r236,%r761; .loc 1 798 7 setp.ne.u64 %r762,%r236,0; @ %r762 bra $L96; .loc 1 800 10 ld.u64 %r330,[%frame+8]; bra $L88; $L96: ld.u64 %r766,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r766; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r767,[%value_in]; } .loc 1 801 7 setp.ne.u64 %r768,%r767,0; @ %r768 bra $L97; .loc 1 803 4 ld.u64 %r330,[%frame+8]; bra $L88; $L97: ld.u64 %r771,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r771; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 804 7 st.u64 [%frame+8],%r767; $L95: .loc 1 806 6 setp.gt.s32 %r772,%r213,0; @ %r772 bra $L98; $L101: .loc 1 811 6 @ ! %r1049 bra $L100; bra $L99; $L98: .loc 1 807 9 ld.u64 %r777,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r777; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r213; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r778,[%value_in]; } mov.u64 %r330,%r778; .loc 1 807 7 st.u64 [%frame+8],%r330; .loc 1 808 7 setp.eq.u64 %r779,%r330,0; @ ! %r779 bra $L101; bra $L88; $L99: .loc 1 812 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r722; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r352; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r783,[%value_in]; } mov.u64 %r235,%r783; .loc 1 813 7 setp.ne.u64 %r784,%r235,0; @ %r784 bra $L100; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L100: .loc 1 816 6 setp.le.s32 %r785,%r216,0; @ %r785 bra $L102; .loc 1 817 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r216; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r789,[%value_in]; } mov.u64 %r235,%r789; .loc 1 818 7 setp.ne.u64 %r790,%r235,0; @ %r790 bra $L102; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L102: .loc 1 821 6 setp.le.s32 %r791,%r212,0; @ %r791 bra $L103; .loc 1 822 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r212; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r795,[%value_in]; } mov.u64 %r236,%r795; .loc 1 823 7 setp.ne.u64 %r796,%r236,0; @ %r796 bra $L103; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L103: .loc 1 826 11 ld.u64 %r800,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r800; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r235; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r801,[%value_in]; } mov.u64 %r237,%r801; .loc 1 827 6 setp.ne.u64 %r802,%r237,0; @ %r802 bra $L104; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L104: .loc 1 829 9 ld.u32 %r281,[%r801+16]; .loc 1 830 16 mov.u32 %r803,0; st.u32 [%r801+16],%r803; .loc 1 831 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r801; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r806,[%value_in]; } .loc 1 925 6 setp.ge.s32 %r807,%r806,0; @ %r807 bra $L105; .loc 1 929 7 setp.ne.u32 %r808,%r281,0; @ %r808 bra $L106; .loc 1 929 28 mov.b64 %r810,%r148; and.b64 %r809,%r810,4503599627370495; setp.ne.u64 %r811,%r809,0; @ %r811 bra $L106; .loc 1 932 9 shr.u64 %r1041,%r355,32; cvt.u32.u64 %r813,%r1041; .loc 1 932 20 and.b32 %r814,%r813,2146435072; .loc 1 932 5 setp.le.u32 %r815,%r814,112197632; @ %r815 bra $L106; .loc 1 944 7 ld.u32 %r816,[%r801+24]; setp.ne.u32 %r817,%r816,0; @ %r817 bra $L107; .loc 1 944 22 ld.u32 %r818,[%r801+20]; setp.le.s32 %r819,%r818,1; @ %r819 bra $L106; $L107: .loc 1 951 12 mov.u32 %r822,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r801; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r822; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r823,[%value_in]; } mov.u64 %r237,%r823; .loc 1 952 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r237; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r826,[%value_in]; } .loc 1 952 7 setp.gt.s32 %r827,%r826,0; @ ! %r827 bra $L106; bra $L108; $L105: .loc 1 956 6 setp.ne.u32 %r828,%r806,0; @ %r828 bra $L109; .loc 1 958 7 setp.eq.u32 %r1039,%r281,0; @ %r1039 bra $L110; .loc 1 959 10 shr.u64 %r830,%r355,32; cvt.u32.u64 %r167,%r830; .loc 1 959 21 and.b32 %r832,%r167,1048575; .loc 1 959 8 setp.ne.u32 %r833,%r832,1048575; @ %r833 bra $L111; .loc 1 960 10 cvt.u32.u64 %r169,%r355; .loc 1 963 59 setp.eq.u32 %r835,%r126,0; @ %r835 bra $L173; .loc 1 962 17 and.b32 %r289,%r167,2146435072; .loc 1 962 11 setp.gt.u32 %r836,%r289,111149056; @ %r836 bra $L174; .loc 1 963 43 shr.u32 %r837,%r289,20; .loc 1 963 40 mov.u32 %r839,107; sub.u32 %r838,%r839,%r837; .loc 1 963 59 mov.u32 %r840,-1; shl.b32 %r240,%r840,%r838; bra $L112; $L173: mov.u32 %r240,-1; bra $L112; $L174: mov.u32 %r240,-1; $L112: .loc 1 960 6 setp.ne.u32 %r841,%r169,%r240; @ %r841 bra $L111; .loc 1 967 9 mov.b64 %r842,%r148; setp.ne.u64 %r843,%r842,9218868437227405311; @ %r843 bra $L113; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L113: .loc 1 969 31 and.b32 %r844,%r167,2146435072; .loc 1 970 7 add.u32 %r845,%r844,1048576; .loc 1 969 17 cvt.u64.u32 %r846,%r845; .loc 1 976 17 shl.b64 %r355,%r846,32; .loc 1 1238 12 mov.b64 %r148,%r355; .loc 1 981 6 bra $L106; $L110: .loc 1 984 40 mov.b64 %r852,%r148; and.b64 %r851,%r852,4503599627370495; .loc 1 984 12 setp.ne.u64 %r853,%r851,0; @ %r853 bra $L111; shr.u64 %r1041,%r355,32; $L108: .loc 1 1102 7 cvt.u32.u64 %r855,%r1041; .loc 1 1002 8 setp.eq.u32 %r856,%r126,0; @ ! %r856 bra $L309; and.b32 %r1045,%r855,2146435072; bra $L114; $L309: .loc 1 1003 8 and.b32 %r1045,%r855,2146435072; .loc 1 1004 9 setp.gt.s32 %r857,%r1045,112197632; @ %r857 bra $L114; .loc 1 1005 10 setp.gt.s32 %r858,%r1045,57671680; @ %r858 bra $L115; ld.u64 %r1043,[%frame+8]; bra $L116; $L114: .loc 1 1014 33 add.u32 %r860,%r1045,-1048576; .loc 1 1016 20 or.b32 %r861,%r860,1048575; .loc 1 1016 16 cvt.u64.u32 %r862,%r861; shl.b64 %r863,%r862,32; .loc 1 1018 16 or.b64 %r355,%r863,4294967295; .loc 1 1238 12 mov.b64 %r148,%r355; .loc 1 1023 5 bra $L106; $L111: .loc 1 1028 7 setp.eq.u32 %r867,%r239,0; @ %r867 bra $L117; .loc 1 1029 11 shr.u64 %r868,%r355,32; cvt.u32.u64 %r181,%r868; .loc 1 1029 22 and.b32 %r870,%r181,%r239; .loc 1 1029 8 setp.eq.u32 %r871,%r870,0; @ %r871 bra $L106; bra $L118; $L117: .loc 1 1032 15 cvt.u32.u64 %r872,%r355; .loc 1 1032 26 and.b32 %r874,%r872,%r238; .loc 1 1032 12 setp.eq.u32 %r875,%r874,0; @ %r875 bra $L106; .loc 1 1102 7 shr.u64 %r876,%r355,32; cvt.u32.u64 %r181,%r876; $L118: .loc 1 1039 7 @ %r1039 bra $L119; .loc 1 191 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r148; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r880,[%value_in]; } mov.f64 %r305,%r880; .loc 1 192 12 setp.eq.u32 %r881,%r126,0; @ %r881 bra $L120; .loc 1 192 62 shr.u32 %r882,%r181,20; and.b32 %r883,%r882,2047; .loc 1 192 36 mov.u32 %r884,107; sub.u32 %r309,%r884,%r883; .loc 1 192 20 setp.le.s32 %r885,%r309,0; @ %r885 bra $L120; .loc 1 194 43 shl.b32 %r886,%r309,20; .loc 1 194 27 add.u32 %r887,%r886,1072693248; .loc 1 194 19 cvt.u64.u32 %r888,%r887; .loc 1 196 19 shl.b64 %r892,%r888,32; .loc 1 198 19 mov.b64 %r893,%r892; mul.f64 %r305,%r305,%r893; $L120: .loc 1 1041 14 add.f64 %r148,%r148,%r305; mov.b64 %r355,%r148; bra $L106; $L119: .loc 1 191 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r148; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r895,[%value_in]; } mov.f64 %r203,%r895; .loc 1 192 12 setp.eq.u32 %r896,%r126,0; @ %r896 bra $L121; .loc 1 192 62 shr.u32 %r897,%r181,20; and.b32 %r898,%r897,2047; .loc 1 192 36 mov.u32 %r899,107; sub.u32 %r317,%r899,%r898; .loc 1 192 20 setp.le.s32 %r900,%r317,0; @ %r900 bra $L122; .loc 1 194 43 shl.b32 %r901,%r317,20; .loc 1 194 27 add.u32 %r902,%r901,1072693248; .loc 1 194 19 cvt.u64.u32 %r903,%r902; .loc 1 196 19 shl.b64 %r907,%r903,32; .loc 1 198 19 mov.b64 %r908,%r907; mul.f64 %r203,%r203,%r908; bra $L122; $L109: .loc 1 1063 15 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r801; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call (%value_in),__ratio,(%out_arg1,%out_arg2); ld.param.f64 %r911,[%value_in]; } .loc 1 1063 6 setp.le.f64 %r912,%r911,0d4000000000000000; @ ! %r912 bra $L310; .loc 1 1064 7 setp.ne.u32 %r1038,%r281,0; @ %r1038 bra $L175; mov.b64 %r51,%r148; .loc 1 1066 24 and.b64 %r914,%r51,4503599627370495; .loc 1 1066 12 setp.eq.u64 %r915,%r914,0; @ %r915 bra $L126; .loc 1 1068 8 setp.eq.u64 %r916,%r51,1; @ ! %r916 bra $L311; ld.u64 %r1043,[%frame+8]; bra $L116; $L311: mov.f64 %r241,0dbff0000000000000; .loc 1 1071 10 mov.f64 %r230,0d3ff0000000000000; bra $L125; $L126: .loc 1 1078 8 setp.lt.f64 %r917,%r911,0d3ff0000000000000; @ %r917 bra $L176; .loc 1 1081 11 mul.f64 %r230,%r911,0d3fe0000000000000; .loc 1 1087 31 neg.f64 %r241,%r230; bra $L125; $L176: mov.f64 %r241,0dbfe0000000000000; .loc 1 1079 11 mov.f64 %r230,0d3fe0000000000000; bra $L125; $L310: .loc 1 1086 9 mul.f64 %r230,%r911,0d3fe0000000000000; .loc 1 1087 31 setp.ne.u32 %r1038,%r281,0; @ %r1038 bra $L177; neg.f64 %r241,%r230; bra $L125; $L177: mov.f64 %r241,%r230; bra $L125; $L175: mov.f64 %r241,0d3ff0000000000000; .loc 1 1065 10 mov.f64 %r230,%r241; $L125: .loc 1 1072 17 mov.b64 %r354,%r241; .loc 1 1102 7 shr.u64 %r919,%r355,32; cvt.u32.u64 %r920,%r919; .loc 1 1102 5 and.b32 %r284,%r920,2146435072; .loc 1 1106 6 setp.ne.u32 %r921,%r284,2145386496; @ %r921 bra $L129; .loc 1 1108 15 add.u32 %r922,%r920,-55574528; cvt.u64.u32 %r923,%r922; shl.b64 %r924,%r923,32; and.b64 %r925,%r355,4294967295; or.b64 %r355,%r925,%r924; .loc 1 1109 24 mov.b64 %r190,%r355; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r190; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r928,[%value_in]; } .loc 1 1110 13 fma.rn.f64 %r193,%r928,%r241,%r190; mov.b64 %r355,%r193; shr.u64 %r930,%r355,32; cvt.u32.u64 %r931,%r930; .loc 1 1111 20 and.b32 %r932,%r931,2146435072; .loc 1 1111 7 setp.le.u32 %r933,%r932,2090860543; @ %r933 bra $L130; .loc 1 1113 8 mov.b64 %r934,%r148; setp.ne.u64 %r935,%r934,9218868437227405311; @ %r935 bra $L131; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L88; $L131: .loc 1 1117 16 mov.u64 %r355,9218868437227405311; .loc 1 1119 5 bra $L132; $L130: .loc 1 1122 16 add.u32 %r261,%r931,55574528; cvt.u64.u32 %r936,%r261; shl.b64 %r937,%r936,32; and.b64 %r938,%r355,4294967295; or.b64 %r355,%r938,%r937; bra $L133; $L129: .loc 1 1126 19 set.u32.le.u32 %r944,%r284,111149056; neg.s32 %r945,%r944; mov.u32 %r943,%r945; .loc 1 1126 14 cvt.u16.u8 %r1060,%r943; mov.u16 %r948,%r1060; and.b16 %r946,%r1057,%r948; cvt.u32.u16 %r949,%r946; .loc 1 1126 7 cvt.u16.u8 %r950,%r949; setp.eq.u16 %r951,%r950,0; @ %r951 bra $L134; .loc 1 1127 8 setp.le.f64 %r952,%r230,0d41dfffffffc00000; @ ! %r952 bra $L135; .loc 1 1128 13 cvt.rzi.u32.f64 %r26,%r230; max.u32 %r26,%r26,1; .loc 1 1130 11 cvt.rn.f64.u32 %r230,%r26; .loc 1 1131 33 @ %r1038 bra $L178; neg.f64 %r242,%r230; bra $L137; $L178: mov.f64 %r242,%r230; $L137: .loc 1 1131 18 mov.b64 %r354,%r242; $L135: .loc 1 1133 19 shr.u64 %r954,%r354,32; cvt.u32.u64 %r955,%r954; add.u32 %r956,%r955,112197632; sub.u32 %r957,%r956,%r284; cvt.u64.u32 %r958,%r957; shl.b64 %r959,%r958,32; and.b64 %r960,%r354,4294967295; or.b64 %r354,%r960,%r959; $L134: .loc 1 1135 10 mov.b64 %r201,%r354; .loc 1 1135 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r148; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r963,[%value_in]; } .loc 1 1136 13 fma.rn.f64 %r204,%r201,%r963,%r148; mov.b64 %r355,%r204; shr.u64 %r1041,%r355,32; cvt.u32.u64 %r261,%r1041; $L133: .loc 1 1186 5 and.b32 %r967,%r261,2146435072; .loc 1 1191 6 set.u32.eq.u32 %r969,%r967,%r284; neg.s32 %r970,%r969; mov.u32 %r968,%r970; cvt.u16.u8 %r1060,%r968; mov.u16 %r975,%r1060; and.b16 %r974,%r975,%r1053; cvt.u32.u16 %r977,%r974; cvt.u16.u8 %r978,%r977; setp.eq.u16 %r979,%r978,0; @ %r979 bra $L132; .loc 1 1199 14 cvt.rzi.s64.f64 %r980,%r230; .loc 1 1203 9 cvt.rn.f64.s64 %r205,%r980; sub.f64 %r288,%r230,%r205; .loc 1 1205 7 @ %r1038 bra $L138; .loc 1 1205 28 and.b64 %r982,%r355,4503599627370495; setp.eq.u64 %r983,%r982,0; @ %r983 bra $L139; $L138: .loc 1 1206 8 setp.lt.f64 %r984,%r288,0d3fdfffff94a03595; @ ! %r984 bra $L312; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L312: .loc 1 1206 25 setp.gt.f64 %r985,%r288,0d3fe0000035afe535; @ ! %r985 bra $L132; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L139: .loc 1 1209 12 setp.lt.f64 %r986,%r288,0d3fcfffff94a03595; @ ! %r986 bra $L132; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L132: .loc 1 1214 3 ld.u64 %r989,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r989; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1215 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1216 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1217 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r801; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 725 6 bra $L145; $L106: .loc 1 1233 5 setp.ne.u32 %r996,%r126,0; @ %r996 bra $L115; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L115: .loc 1 1238 12 mul.f64 %r209,%r148,0d3950000000000000; mov.b64 %r355,%r209; .loc 1 1241 6 setp.eq.u64 %r998,%r355,0; @ %r998 bra $L146; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; bra $L142; $L146: .loc 1 1242 16 mov.u32 %r999,34; st.u32 [%r359],%r999; .loc 1 1254 2 ld.u64 %r330,[%frame+8]; $L142: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r330; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1255 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1256 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r236; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1257 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r715; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1258 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r359; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1262 17 mov.b64 %r358,%r355; bra $L22; $L162: mov.f64 %r358,0d0000000000000000; $L22: .loc 1 1260 5 setp.eq.u64 %r1010,%r361,0; @ %r1010 bra $L147; .loc 1 1261 7 ld.u64 %r1011,[%frame+16]; st.u64 [%r361],%r1011; $L147: .loc 1 1262 26 setp.eq.u32 %r1012,%r226,0; @ %r1012 bra $L1; neg.f64 %r358,%r358; bra $L1; $L161: .loc 1 1260 5 mov.f64 %r358,0d0000000000000000; .loc 1 1262 26 bra $L1; $L87: .loc 1 1254 2 ld.u64 %r330,[%frame+8]; $L88: .loc 1 588 17 mov.u32 %r1014,34; st.u32 [%r359],%r1014; .loc 1 610 16 mov.u64 %r355,9218868437227405312; bra $L142; $L116: .loc 1 693 15 mov.u64 %r355,0; .loc 1 695 18 mov.u32 %r1015,34; st.u32 [%r359],%r1015; .loc 1 1254 2 mov.u64 %r330,%r1043; bra $L142; $L122: .loc 1 1048 14 sub.f64 %r148,%r148,%r203; .loc 1 1053 8 setp.eq.f64 %r1016,%r148,0d0000000000000000; @ ! %r1016 bra $L115; ld.u64 %r1043,[%frame+8]; bra $L116; $L121: .loc 1 1048 14 sub.f64 %r73,%r148,%r895; mov.b64 %r355,%r73; .loc 1 1254 2 ld.u64 %r1043,[%frame+8]; mov.u64 %r330,%r1043; .loc 1 1053 8 setp.eq.f64 %r1017,%r73,0d0000000000000000; @ ! %r1017 bra $L142; bra $L116; $L64: .loc 1 557 5 vsub.u32.u32.u32.add %r264,%r353,%r260,%r258; bra $L149; $L152: .loc 1 350 11 ld.u64 %r1019,[%frame+16]; add.u64 %r345,%r1019,%r334; st.u64 [%frame+16],%r345; .loc 1 350 5 ld.s8 %r218,[%r345]; .loc 1 352 12 setp.eq.u32 %r1020,%r218,48; @ %r1020 bra $L150; .loc 1 270 18 mov.u32 %r255,%r1024; bra $L151; $L24: .loc 1 347 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r333; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r246; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r334; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1024,[%value_in]; } mov.u32 %r323,%r1024; .loc 1 347 5 setp.eq.u32 %r1025,%r323,0; @ %r1025 bra $L152; .loc 1 341 22 mov.u32 %r218,%r25; .loc 1 341 9 mov.u32 %r323,0; .loc 1 340 8 mov.u32 %r233,%r323; .loc 1 340 4 mov.u32 %r231,%r323; .loc 1 270 18 mov.u32 %r255,%r323; .loc 1 341 14 mov.u32 %r224,%r323; .loc 1 341 9 mov.u32 %r253,%r323; .loc 1 270 26 mov.u32 %r331,%r323; bra $L30; $L154: .loc 1 350 11 ld.u64 %r1026,[%frame+16]; add.u64 %r328,%r1026,%r334; st.u64 [%frame+16],%r328; .loc 1 350 5 ld.s8 %r218,[%r328]; .loc 1 341 50 mov.u32 %r323,%r253; .loc 1 341 14 mov.u32 %r224,%r255; bra $L153; $L307: .loc 1 347 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r246; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r334; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1030,[%value_in]; } mov.u32 %r255,%r1030; .loc 1 347 5 setp.eq.u32 %r1031,%r1030,0; @ %r1031 bra $L154; .loc 1 382 5 cvt.u16.u32 %r1033,%r25; and.b16 %r1032,%r1033,-33; cvt.u32.u16 %r1034,%r1032; cvt.s16.s8 %r1035,%r1034; setp.eq.u16 %r1036,%r1035,69; @ %r1036 bra $L179; .loc 1 341 50 mov.u32 %r353,%r253; .loc 1 341 14 mov.u32 %r224,0; .loc 1 381 4 mov.u32 %r219,%r224; bra $L49; $L1: .loc 1 1263 1 mov.f64 %value,%r358; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtod_r .visible .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .f64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 1270 10 cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r30,[%value_in]; } .loc 1 1271 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtod_l .visible .func (.param .f64 %value_out) strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .f64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 1278 10 ld.global.u64 %r31,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r32,[%value_in]; } .loc 1 1279 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtod .visible .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; .reg .f64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 1284 10 ld.global.u64 %r30,[_impure_ptr]; cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 1285 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtof_l .visible .func (.param .f32 %value_out) strtof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r37; .reg .f64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .f32 %r46; .reg .u64 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .pred %r50; .reg .f64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 1290 16 ld.global.u64 %r37,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r32; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r38,[%value_in]; } .loc 1 1291 6 setp.num.f64 %r39,%r38,%r38; @ %r39 bra $L317; .loc 1 1292 12 mov.b64 %r40,%r38; shr.u64 %r41,%r40,63; cvt.u32.u64 %r43,%r41; .loc 1 1292 39 setp.eq.u32 %r44,%r43,0; @ %r44 bra $L318; .loc 1 1292 29 cvta.const.u64 %r45,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 1292 39 neg.f32 %r29,%r46; bra $L316; $L318: .loc 1 1292 41 cvta.const.u64 %r47,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r48,[%value_in]; } mov.f32 %r29,%r48; bra $L316; $L317: .loc 1 1293 9 cvt.rn.f32.f64 %r29,%r38; .loc 1 1295 7 abs.f32 %r49,%r29; .loc 1 1295 6 setp.leu.f32 %r50,%r49,0f7f7fffff; @ %r50 bra $L316; .loc 1 1295 26 abs.f64 %r51,%r38; .loc 1 1295 22 setp.leu.f64 %r52,%r51,0d7fefffffffffffff; @ ! %r52 bra $L316; .loc 1 1296 20 ld.global.u64 %r53,[_impure_ptr]; mov.u32 %r54,34; st.u32 [%r53],%r54; $L316: .loc 1 1299 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtof .visible .func (.param .f32 %value_out) strtof (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .f64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .f32 %r45; .reg .u64 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 1305 16 ld.global.u64 %r36,[_impure_ptr]; cvta.global.u64 %r35,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r35; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r37,[%value_in]; } .loc 1 1306 6 setp.num.f64 %r38,%r37,%r37; @ %r38 bra $L323; .loc 1 1307 12 mov.b64 %r39,%r37; shr.u64 %r40,%r39,63; cvt.u32.u64 %r42,%r40; .loc 1 1307 39 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L324; .loc 1 1307 29 cvta.const.u64 %r44,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 1307 39 neg.f32 %r29,%r45; bra $L322; $L324: .loc 1 1307 41 cvta.const.u64 %r46,$LC3; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } mov.f32 %r29,%r47; bra $L322; $L323: .loc 1 1308 9 cvt.rn.f32.f64 %r29,%r37; .loc 1 1310 7 abs.f32 %r48,%r29; .loc 1 1310 6 setp.leu.f32 %r49,%r48,0f7f7fffff; @ %r49 bra $L322; .loc 1 1310 26 abs.f64 %r50,%r37; .loc 1 1310 22 setp.leu.f64 %r51,%r50,0d7fefffffffffffff; @ ! %r51 bra $L322; .loc 1 1311 20 ld.global.u64 %r52,[_impure_ptr]; mov.u32 %r53,34; st.u32 [%r52],%r53; $L322: .loc 1 1314 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } lib_a-strtodg.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1368 0 0 0 644 10919 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoimax_l$constprop$0 .func (.param .u64 %value_out) _strtoimax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtoimax.c" // BEGIN GLOBAL FUNCTION DECL: _strtoimax_r .visible .func (.param .u64 %value_out) _strtoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoimax_l .visible .func (.param .u64 %value_out) strtoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoimax .visible .func (.param .u64 %value_out) strtoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoimax_l$constprop$0 .func (.param .u64 %value_out) _strtoimax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u32 %r44; .reg .u32 %r50; .reg .u64 %r52; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u64 %r73; .reg .u16 %r76; .reg .u16 %r78; .reg .pred %r79; .reg .u16 %r80; .reg .pred %r81; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r89; .reg .u16 %r90; .reg .u32 %r91; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .pred %r96; .reg .u64 %r97; .reg .u64 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u32 %r103; .reg .u16 %r104; .reg .pred %r105; .reg .u16 %r107; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .u16 %r112; .reg .u32 %r114; .reg .u16 %r115; .reg .u32 %r117; .reg .u16 %r118; .reg .pred %r119; .reg .u16 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u16 %r132; .reg .u32 %r133; .reg .u16 %r134; .reg .pred %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u16 %r144; .reg .u32 %r145; .reg .u16 %r146; .reg .pred %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .pred %r150; .reg .u32 %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r157; .reg .pred %r158; .reg .pred %r160; .reg .u64 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u16 %r164; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.u64 %r68,%ar2; mov.u32 %r69,%ar3; mov.u64 %r60,%r67; cvta.const.u64 %r161,_ctype_+1; $L2: mov.u64 %r22,%r60; add.u64 %r33,%r60,1; mov.u64 %r60,%r33; .loc 1 75 5 ld.s8 %r32,[%r22]; .loc 1 76 11 cvt.u32.u32 %r71,%r32; cvt.s64.s8 %r70,%r71; add.u64 %r73,%r161,%r70; ld.u8 %r164,[%r73]; mov.u16 %r76,%r164; and.b16 %r78,%r76,8; setp.ne.u16 %r79,%r78,0; @ %r79 bra $L2; .loc 1 77 5 cvt.u16.u32 %r80,%r32; setp.ne.u16 %r81,%r80,45; @ %r81 bra $L3; .loc 1 79 5 ld.s8 %r32,[%r33]; .loc 1 79 9 add.u64 %r33,%r22,2; .loc 1 78 7 mov.u32 %r37,1; bra $L4; $L3: .loc 1 82 6 setp.ne.u16 %r83,%r80,43; @ %r83 bra $L22; .loc 1 83 6 ld.s8 %r32,[%r60]; .loc 1 83 10 add.u64 %r33,%r22,2; .loc 1 81 7 mov.u32 %r37,0; bra $L4; $L22: mov.u32 %r37,0; $L4: .loc 1 85 12 and.b32 %r84,%r69,-17; .loc 1 85 5 setp.ne.u32 %r85,%r84,0; @ %r85 bra $L5; .loc 1 85 32 cvt.u16.u32 %r86,%r32; setp.ne.u16 %r87,%r86,48; @ %r87 bra $L6; .loc 1 86 29 ld.u8 %r164,[%r33]; mov.u16 %r90,%r164; and.b16 %r89,%r90,-33; cvt.u32.u16 %r91,%r89; .loc 1 86 15 cvt.s16.s8 %r92,%r91; setp.ne.u16 %r93,%r92,88; @ %r93 bra $L7; .loc 1 87 5 ld.s8 %r32,[%r33+1]; .loc 1 88 5 add.u64 %r33,%r33,2; mov.u64 %r59,16; .loc 1 89 8 mov.u32 %r69,16; bra $L8; $L7: .loc 1 91 5 setp.eq.u32 %r94,%r69,0; @ %r94 bra $L23; $L5: .loc 1 94 15 add.u32 %r95,%r69,-2; .loc 1 94 5 setp.gt.u32 %r96,%r95,34; @ %r96 bra $L24; .loc 1 116 18 cvt.s64.s32 %r59,%r69; bra $L8; $L23: .loc 1 91 5 mov.u64 %r59,8; .loc 1 92 23 mov.u32 %r69,8; bra $L8; $L28: .loc 1 91 5 mov.u64 %r59,10; .loc 1 92 23 mov.u32 %r69,10; $L8: .loc 1 115 40 cvt.s64.s32 %r97,%r37; add.u64 %r61,%r97,9223372036854775807; .loc 1 116 18 rem.u64 %r99,%r61,%r59; .loc 1 116 9 cvt.u32.u64 %r40,%r99; .loc 1 117 9 div.u64 %r41,%r61,%r59; mov.u64 %r64,%r33; .loc 1 67 15 mov.u32 %r50,0; .loc 1 64 12 mov.u64 %r52,0; .loc 1 130 8 mov.u32 %r162,-1; .loc 1 132 8 mov.u32 %r163,1; $L15: .loc 1 119 16 cvt.u32.u32 %r100,%r32; cvt.u16.u8 %r102,%r100; add.u16 %r101,%r102,-48; cvt.u32.u16 %r103,%r101; .loc 1 119 6 cvt.u16.u8 %r104,%r103; setp.gt.u16 %r105,%r104,9; @ %r105 bra $L10; .loc 1 120 6 cvt.s32.s8 %r44,%r103; bra $L11; $L10: .loc 1 121 21 add.u16 %r107,%r102,-65; cvt.u32.u16 %r109,%r107; .loc 1 121 11 cvt.u16.u8 %r110,%r109; setp.gt.u16 %r111,%r110,25; @ %r111 bra $L12; .loc 1 122 6 add.u16 %r112,%r102,-55; cvt.u32.u16 %r114,%r112; cvt.s32.s8 %r44,%r114; bra $L11; $L12: .loc 1 123 21 add.u16 %r115,%r102,-97; cvt.u32.u16 %r117,%r115; .loc 1 123 11 cvt.u16.u8 %r118,%r117; setp.gt.u16 %r119,%r118,25; @ %r119 bra $L13; .loc 1 124 6 add.u16 %r120,%r102,-87; cvt.u32.u16 %r122,%r120; cvt.s32.s8 %r44,%r122; $L11: .loc 1 127 6 setp.ge.s32 %r123,%r44,%r69; @ %r123 bra $L13; .loc 1 129 11 shr.u32 %r125,%r50,31; mov.u32 %r126,%r125; .loc 1 129 22 set.u32.lt.u64 %r128,%r41,%r52; neg.s32 %r129,%r128; mov.u32 %r127,%r129; .loc 1 129 15 cvt.u16.u8 %r164,%r126; mov.u16 %r131,%r164; cvt.u16.u8 %r164,%r127; mov.u16 %r132,%r164; or.b16 %r130,%r131,%r132; cvt.u32.u16 %r133,%r130; .loc 1 129 6 cvt.u16.u8 %r134,%r133; setp.ne.u16 %r135,%r134,0; @ %r135 bra $L25; .loc 1 129 31 set.u32.eq.u64 %r137,%r41,%r52; neg.s32 %r138,%r137; mov.u32 %r136,%r138; .loc 1 129 49 set.u32.lt.s32 %r140,%r40,%r44; neg.s32 %r141,%r140; mov.u32 %r139,%r141; cvt.u16.u8 %r164,%r136; mov.u16 %r143,%r164; cvt.u16.u8 %r164,%r139; mov.u16 %r144,%r164; and.b16 %r142,%r143,%r144; cvt.u32.u16 %r145,%r142; cvt.u16.u8 %r146,%r145; setp.ne.u16 %r147,%r146,0; @ %r147 bra $L26; .loc 1 134 8 cvt.u32.u32 %r149,%r44; cvt.s64.s8 %r148,%r149; mad.lo.u64 %r52,%r52,%r59,%r148; .loc 1 132 8 mov.u32 %r50,%r163; bra $L14; $L25: .loc 1 130 8 mov.u32 %r50,%r162; bra $L14; $L26: mov.u32 %r50,%r162; $L14: .loc 1 118 14 ld.s8 %r32,[%r64]; add.u64 %r64,%r64,1; .loc 1 119 6 bra $L15; $L13: .loc 1 137 5 setp.ne.u32 %r150,%r50,-1; @ %r150 bra $L16; .loc 1 139 16 mov.u32 %r151,34; st.u32 [%r66],%r151; .loc 1 145 5 setp.ne.u64 %r152,%r68,0; @ %r152 bra $L17; .loc 1 147 9 mov.u64 %r65,%r61; bra $L1; $L16: .loc 1 140 12 setp.ne.u32 %r153,%r50,0; @ %r153 bra $L19; .loc 1 147 9 mov.u64 %r65,%r52; bra $L9; $L24: mov.u64 %r65,0; $L9: .loc 1 142 16 mov.u32 %r154,22; st.u32 [%r66],%r154; .loc 1 145 5 setp.ne.u64 %r155,%r68,0; @ %r155 bra $L20; bra $L1; $L19: .loc 1 143 12 setp.eq.u32 %r156,%r37,0; @ %r156 bra $L21; .loc 1 144 7 neg.s64 %r61,%r52; .loc 1 145 5 setp.ne.u64 %r157,%r68,0; @ %r157 bra $L17; .loc 1 147 9 mov.u64 %r65,%r61; bra $L1; $L21: .loc 1 145 5 setp.ne.u64 %r158,%r68,0; @ %r158 bra $L27; .loc 1 147 9 mov.u64 %r65,%r52; bra $L1; $L27: .loc 1 145 5 mov.u64 %r61,%r52; $L17: .loc 1 146 13 add.u64 %r67,%r64,-1; .loc 1 147 9 mov.u64 %r65,%r61; $L20: .loc 1 146 11 st.u64 [%r68],%r67; .loc 1 147 9 bra $L1; $L6: .loc 1 91 5 setp.eq.u32 %r160,%r69,0; @ %r160 bra $L28; bra $L5; $L1: .loc 1 148 1 mov.u64 %value,%r65; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoimax_r .visible .func (.param .u64 %value_out) _strtoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 154 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoimax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 155 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoimax_l .visible .func (.param .u64 %value_out) strtoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 163 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoimax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 164 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoimax .visible .func (.param .u64 %value_out) strtoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 169 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoimax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 170 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strtok.o/ 0 0 0 644 1400 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtok .visible .func (.param .u64 %value_out) strtok (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strtok.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __strtok_r .extern .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: strtok .visible .func (.param .u64 %value_out) strtok (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 88 9 ld.global.u64 %r32,[_impure_ptr]; add.u64 %r31,%r32,152; mov.u32 %r30,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r31; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r30; call (%value_in),__strtok_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 89 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /1387 0 0 0 644 3626 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __strtok_r .visible .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/string/strtok_r.c" // BEGIN GLOBAL FUNCTION DECL: strtok_r .visible .func (.param .u64 %value_out) strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: __strtok_r .visible .func (.param .u64 %value_out) __strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .pred %r56; .reg .pred %r58; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; mov.u64 %r43,%ar2; mov.u32 %r44,%ar3; .loc 1 43 5 setp.ne.u64 %r45,%r41,0; @ %r45 bra $L2; .loc 1 43 22 ld.u64 %r41,[%r43]; .loc 1 43 16 setp.eq.u64 %r46,%r41,0; @ %r46 bra $L11; $L2: mov.u64 %r38,%r41; .loc 1 53 7 setp.ne.u32 %r58,%r44,0; $L5: mov.u64 %r40,%r38; add.u64 %r38,%r38,1; .loc 1 50 4 ld.s8 %r28,[%r40]; .loc 1 51 2 mov.u64 %r35,%r42; bra $L4; $L6: .loc 1 52 6 add.u64 %r35,%r35,1; setp.ne.u32 %r47,%r28,%r29; @ %r47 bra $L4; .loc 1 53 7 @ %r58 bra $L5; .loc 1 57 12 st.u64 [%r43],%r38; .loc 1 58 11 mov.u32 %r49,0; st.u8 [%r40],%r49; .loc 1 59 15 bra $L1; $L4: .loc 1 51 34 ld.s8 %r29,[%r35]; .loc 1 51 46 setp.ne.u32 %r50,%r29,0; @ %r50 bra $L6; .loc 1 64 5 setp.ne.u32 %r51,%r28,0; @ %r51 bra $L7; .loc 1 65 10 mov.u64 %r52,0; st.u64 [%r43],%r52; .loc 1 66 10 mov.u64 %r40,%r52; bra $L1; $L7: add.u64 %r33,%r38,1; mov.u64 %r27,%r33; .loc 1 75 5 ld.s8 %r30,[%r38]; mov.u64 %r22,%r42; $L10: .loc 1 78 12 ld.s8 %r31,[%r22]; .loc 1 78 7 setp.ne.u32 %r53,%r30,%r31; @ %r53 bra $L8; .loc 1 79 8 setp.eq.u32 %r54,%r30,0; @ %r54 bra $L12; .loc 1 82 12 mov.u32 %r55,0; st.u8 [%r33+-1],%r55; bra $L9; $L12: .loc 1 80 8 mov.u64 %r27,0; $L9: .loc 1 83 12 st.u64 [%r43],%r27; .loc 1 84 12 bra $L1; $L8: .loc 1 86 15 add.u64 %r22,%r22,1; setp.ne.u32 %r56,%r31,0; @ %r56 bra $L10; mov.u64 %r38,%r33; bra $L7; $L11: .loc 1 44 10 mov.u64 %r40,%r41; $L1: .loc 1 89 1 mov.u64 %value,%r40; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtok_r .visible .func (.param .u64 %value_out) strtok_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r29; .reg .u64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 96 9 mov.u32 %r29,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r29; call (%value_in),__strtok_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r30,[%value_in]; } .loc 1 97 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strtol.o/ 0 0 0 644 12329 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtol_l$part$0 .func (.param .u64 %value_out) _strtol_l$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtol.c" // BEGIN GLOBAL FUNCTION DECL: _strtol_r .visible .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtol_l .visible .func (.param .u64 %value_out) strtol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtol .visible .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN FUNCTION DEF: _strtol_l$part$0 .func (.param .u64 %value_out) _strtol_l$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u64 %r43; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r86; .reg .u16 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u64 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u32 %r121; .reg .u16 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r132; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u16 %r136; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r35,%r66; cvta.const.u64 %r133,_ctype_+1; $L2: mov.u64 %r22,%r35; add.u64 %r36,%r35,1; mov.u64 %r35,%r36; .loc 1 150 7 ld.u8 %r23,[%r22]; .loc 1 151 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r133,%r69; ld.u8 %r136,[%r72]; mov.u16 %r75,%r136; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 150 5 mov.u32 %r31,%r23; .loc 1 152 5 setp.ne.u32 %r79,%r31,45; @ %r79 bra $L3; .loc 1 154 5 ld.u8 %r31,[%r36]; .loc 1 154 9 add.u64 %r36,%r22,2; mov.u64 %r39,-9223372036854775808; .loc 1 153 7 mov.u32 %r40,1; bra $L4; $L3: .loc 1 155 12 setp.ne.u32 %r80,%r31,43; @ %r80 bra $L20; .loc 1 156 5 ld.u8 %r31,[%r35]; .loc 1 156 9 add.u64 %r36,%r22,2; .loc 1 156 5 mov.u64 %r39,9223372036854775807; .loc 1 137 15 mov.u32 %r40,0; bra $L4; $L20: mov.u64 %r39,9223372036854775807; mov.u32 %r40,0; $L4: .loc 1 157 12 and.b32 %r81,%r68,-17; .loc 1 157 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 184 20 cvt.s64.s32 %r62,%r68; bra $L6; $L5: .loc 1 157 32 setp.ne.u32 %r83,%r31,48; @ %r83 bra $L7; .loc 1 158 29 ld.u8 %r136,[%r36]; mov.u16 %r86,%r136; .loc 1 158 15 and.b16 %r88,%r86,223; setp.ne.u16 %r89,%r88,88; @ %r89 bra $L8; .loc 1 159 5 ld.u8 %r31,[%r36+1]; .loc 1 160 5 add.u64 %r36,%r36,2; mov.u64 %r62,16; .loc 1 161 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 163 5 setp.eq.u32 %r90,%r68,0; @ %r90 bra $L21; .loc 1 184 20 cvt.s64.s32 %r62,%r68; bra $L6; $L21: .loc 1 163 5 mov.u64 %r62,8; .loc 1 164 23 mov.u32 %r68,8; bra $L6; $L24: .loc 1 163 5 mov.u64 %r62,10; .loc 1 164 23 mov.u32 %r68,10; $L6: .loc 1 184 18 rem.u64 %r92,%r39,%r62; .loc 1 184 9 cvt.u32.u64 %r42,%r92; .loc 1 185 9 div.u64 %r43,%r39,%r62; mov.u64 %r61,%r36; .loc 1 186 20 mov.u32 %r49,0; .loc 1 186 11 mov.u64 %r51,0; .loc 1 198 8 mov.u32 %r134,-1; .loc 1 200 8 mov.u32 %r135,1; $L14: .loc 1 187 16 add.u32 %r93,%r31,-48; .loc 1 187 6 setp.gt.u32 %r94,%r93,9; @ %r94 bra $L9; .loc 1 188 6 mov.u32 %r46,%r93; bra $L10; $L9: .loc 1 189 21 add.u32 %r95,%r31,-65; .loc 1 189 11 setp.gt.u32 %r96,%r95,25; @ %r96 bra $L11; .loc 1 190 6 add.u32 %r46,%r31,-55; bra $L10; $L11: .loc 1 191 21 add.u32 %r97,%r31,-97; .loc 1 191 11 setp.gt.u32 %r98,%r97,25; @ %r98 bra $L12; .loc 1 192 6 add.u32 %r46,%r31,-87; $L10: .loc 1 195 6 setp.le.s32 %r99,%r68,%r46; @ %r99 bra $L12; .loc 1 197 11 shr.u32 %r101,%r49,31; mov.u32 %r102,%r101; .loc 1 197 22 set.u32.lt.u64 %r104,%r43,%r51; neg.s32 %r105,%r104; mov.u32 %r103,%r105; .loc 1 197 15 cvt.u16.u8 %r136,%r102; mov.u16 %r107,%r136; cvt.u16.u8 %r136,%r103; mov.u16 %r108,%r136; or.b16 %r106,%r107,%r108; cvt.u32.u16 %r109,%r106; .loc 1 197 6 cvt.u16.u8 %r110,%r109; setp.ne.u16 %r111,%r110,0; @ %r111 bra $L22; .loc 1 197 39 set.u32.eq.u64 %r113,%r43,%r51; neg.s32 %r114,%r113; mov.u32 %r112,%r114; .loc 1 197 54 set.u32.lt.s32 %r116,%r42,%r46; neg.s32 %r117,%r116; mov.u32 %r115,%r117; .loc 1 197 49 cvt.u16.u8 %r136,%r112; mov.u16 %r119,%r136; cvt.u16.u8 %r136,%r115; mov.u16 %r120,%r136; and.b16 %r118,%r119,%r120; cvt.u32.u16 %r121,%r118; .loc 1 197 31 cvt.u16.u8 %r122,%r121; setp.ne.u16 %r123,%r122,0; @ %r123 bra $L23; .loc 1 202 8 cvt.s64.s32 %r124,%r46; mad.lo.u64 %r51,%r51,%r62,%r124; .loc 1 200 8 mov.u32 %r49,%r135; bra $L13; $L22: .loc 1 198 8 mov.u32 %r49,%r134; bra $L13; $L23: mov.u32 %r49,%r134; $L13: .loc 1 186 28 ld.u8 %r31,[%r61]; add.u64 %r61,%r61,1; .loc 1 187 6 bra $L14; $L12: .loc 1 205 5 setp.ne.u32 %r125,%r49,-1; @ %r125 bra $L15; .loc 1 207 16 mov.u32 %r126,34; st.u32 [%r65],%r126; .loc 1 210 5 setp.ne.u64 %r127,%r67,0; @ %r127 bra $L16; .loc 1 206 7 mov.u64 %r51,%r39; bra $L28; $L15: .loc 1 208 12 setp.eq.u32 %r128,%r40,0; @ %r128 bra $L18; .loc 1 209 7 neg.s64 %r51,%r51; $L18: .loc 1 210 5 setp.eq.u64 %r129,%r67,0; @ %r129 bra $L28; .loc 1 211 13 setp.eq.u32 %r130,%r49,0; @ %r130 bra $L19; mov.u64 %r39,%r51; $L16: add.u64 %r66,%r61,-1; mov.u64 %r51,%r39; $L19: .loc 1 211 11 st.u64 [%r67],%r66; bra $L28; $L7: .loc 1 163 5 setp.eq.u32 %r132,%r68,0; @ %r132 bra $L24; .loc 1 184 20 cvt.s64.s32 %r62,%r68; bra $L6; $L28: .loc 1 213 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtol_r .visible .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r50; .reg .u16 %r52; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u32 %r31,%ar3; .loc 1 139 28 set.u32.gt.u32 %r33,%r31,36; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 139 23 set.u32.eq.u32 %r36,%r31,1; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 139 28 cvt.u16.u8 %r52,%r32; mov.u16 %r39,%r52; cvt.u16.u8 %r52,%r35; mov.u16 %r40,%r52; or.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L37; .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 140 9 mov.u32 %r45,22; st.u32 [%r44],%r45; .loc 1 141 10 mov.u64 %r27,0; bra $L36; $L37: { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r31; call (%value_in),_strtol_l$part$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r50,[%value_in]; } mov.u64 %r27,%r50; $L36: .loc 1 222 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtol_l .visible .func (.param .u64 %value_out) strtol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u32 %r42; .reg .u16 %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u64 %r51; .reg .u16 %r53; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u32 %r31,%ar2; .loc 1 230 9 ld.global.u64 %r22,[_impure_ptr]; .loc 1 139 28 set.u32.gt.u32 %r34,%r31,36; neg.s32 %r35,%r34; mov.u32 %r33,%r35; .loc 1 139 23 set.u32.eq.u32 %r37,%r31,1; neg.s32 %r38,%r37; mov.u32 %r36,%r38; .loc 1 139 28 cvt.u16.u8 %r53,%r33; mov.u16 %r40,%r53; cvt.u16.u8 %r53,%r36; mov.u16 %r41,%r53; or.b16 %r39,%r40,%r41; cvt.u32.u16 %r42,%r39; cvt.u16.u8 %r43,%r42; setp.eq.u16 %r44,%r43,0; @ %r44 bra $L40; .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r45,[%value_in]; } .loc 1 140 9 mov.u32 %r46,22; st.u32 [%r45],%r46; .loc 1 141 10 mov.u64 %r28,0; bra $L39; $L40: { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r31; call (%value_in),_strtol_l$part$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r51,[%value_in]; } mov.u64 %r28,%r51; $L39: .loc 1 231 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtol .visible .func (.param .u64 %value_out) strtol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r50; .reg .u16 %r52; mov.u64 %r29,%ar0; mov.u64 %r30,%ar1; mov.u32 %r31,%ar2; .loc 1 238 9 ld.global.u64 %r22,[_impure_ptr]; .loc 1 139 28 set.u32.gt.u32 %r33,%r31,36; neg.s32 %r34,%r33; mov.u32 %r32,%r34; .loc 1 139 23 set.u32.eq.u32 %r36,%r31,1; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 139 28 cvt.u16.u8 %r52,%r32; mov.u16 %r39,%r52; cvt.u16.u8 %r52,%r35; mov.u16 %r40,%r52; or.b16 %r38,%r39,%r40; cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L43; .loc 1 140 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r44,[%value_in]; } .loc 1 140 9 mov.u32 %r45,22; st.u32 [%r44],%r45; .loc 1 141 10 mov.u64 %r28,0; bra $L42; $L43: { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r31; call (%value_in),_strtol_l$part$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r50,[%value_in]; } mov.u64 %r28,%r50; $L42: .loc 1 239 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-strtold.o/0 0 0 644 3622 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _strtold_r .visible .func (.param .f64 %value_out) _strtold_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/strtold.c" // BEGIN GLOBAL FUNCTION DECL: strtold_l .visible .func (.param .f64 %value_out) strtold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtold .visible .func (.param .f64 %value_out) strtold (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: _strtod_l .extern .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: _strtold_r .visible .func (.param .f64 %value_out) _strtold_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .f64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 67 10 cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r30,[%value_in]; } .loc 1 74 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtold_l .visible .func (.param .f64 %value_out) strtold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .f64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 81 10 ld.global.u64 %r31,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r32,[%value_in]; } .loc 1 88 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtold .visible .func (.param .f64 %value_out) strtold (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; .reg .f64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 95 10 ld.global.u64 %r30,[_impure_ptr]; cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 102 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } lib_a-strtoll.o/0 0 0 644 9798 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoll_l$constprop$0 .func (.param .u64 %value_out) _strtoll_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtoll.c" // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .visible .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoll_l .visible .func (.param .u64 %value_out) strtoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoll .visible .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoll_l$constprop$0 .func (.param .u64 %value_out) _strtoll_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r86; .reg .u16 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u64 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .pred %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u32 %r121; .reg .u16 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .pred %r132; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u16 %r136; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r34,%r66; cvta.const.u64 %r133,_ctype_+1; $L2: mov.u64 %r22,%r34; add.u64 %r35,%r34,1; mov.u64 %r34,%r35; .loc 1 147 7 ld.u8 %r23,[%r22]; .loc 1 148 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r133,%r69; ld.u8 %r136,[%r72]; mov.u16 %r75,%r136; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 147 5 mov.u32 %r43,%r23; .loc 1 149 5 setp.ne.u32 %r79,%r43,45; @ %r79 bra $L3; .loc 1 151 5 ld.u8 %r43,[%r35]; .loc 1 151 9 add.u64 %r35,%r22,2; mov.u64 %r38,-9223372036854775808; .loc 1 150 7 mov.u32 %r39,1; bra $L4; $L3: .loc 1 152 12 setp.ne.u32 %r80,%r43,43; @ %r80 bra $L20; .loc 1 153 5 ld.u8 %r43,[%r34]; .loc 1 153 9 add.u64 %r35,%r22,2; .loc 1 153 5 mov.u64 %r38,9223372036854775807; .loc 1 139 15 mov.u32 %r39,0; bra $L4; $L20: mov.u64 %r38,9223372036854775807; mov.u32 %r39,0; $L4: .loc 1 154 12 and.b32 %r81,%r68,-17; .loc 1 154 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 181 20 cvt.s64.s32 %r62,%r68; bra $L6; $L5: .loc 1 154 32 setp.ne.u32 %r83,%r43,48; @ %r83 bra $L7; .loc 1 155 29 ld.u8 %r136,[%r35]; mov.u16 %r86,%r136; .loc 1 155 15 and.b16 %r88,%r86,223; setp.ne.u16 %r89,%r88,88; @ %r89 bra $L8; .loc 1 156 5 ld.u8 %r43,[%r35+1]; .loc 1 157 5 add.u64 %r35,%r35,2; mov.u64 %r62,16; .loc 1 158 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 160 5 setp.eq.u32 %r90,%r68,0; @ %r90 bra $L21; .loc 1 181 20 cvt.s64.s32 %r62,%r68; bra $L6; $L21: .loc 1 160 5 mov.u64 %r62,8; .loc 1 161 23 mov.u32 %r68,8; bra $L6; $L24: .loc 1 160 5 mov.u64 %r62,10; .loc 1 161 23 mov.u32 %r68,10; $L6: .loc 1 181 18 rem.u64 %r92,%r38,%r62; .loc 1 181 9 cvt.u32.u64 %r41,%r92; .loc 1 182 9 div.u64 %r42,%r38,%r62; mov.u64 %r61,%r35; .loc 1 183 20 mov.u32 %r49,0; .loc 1 183 11 mov.u64 %r51,0; .loc 1 195 8 mov.u32 %r134,-1; .loc 1 197 8 mov.u32 %r135,1; $L14: .loc 1 184 16 add.u32 %r93,%r43,-48; .loc 1 184 6 setp.gt.u32 %r94,%r93,9; @ %r94 bra $L9; .loc 1 185 6 mov.u32 %r46,%r93; bra $L10; $L9: .loc 1 186 21 add.u32 %r95,%r43,-65; .loc 1 186 11 setp.gt.u32 %r96,%r95,25; @ %r96 bra $L11; .loc 1 187 6 add.u32 %r46,%r43,-55; bra $L10; $L11: .loc 1 188 21 add.u32 %r97,%r43,-97; .loc 1 188 11 setp.gt.u32 %r98,%r97,25; @ %r98 bra $L12; .loc 1 189 6 add.u32 %r46,%r43,-87; $L10: .loc 1 192 6 setp.le.s32 %r99,%r68,%r46; @ %r99 bra $L12; .loc 1 194 24 shr.u32 %r101,%r49,31; mov.u32 %r102,%r101; .loc 1 194 35 set.u32.lt.u64 %r104,%r42,%r51; neg.s32 %r105,%r104; mov.u32 %r103,%r105; .loc 1 194 28 cvt.u16.u8 %r136,%r102; mov.u16 %r107,%r136; cvt.u16.u8 %r136,%r103; mov.u16 %r108,%r136; or.b16 %r106,%r107,%r108; cvt.u32.u16 %r109,%r106; .loc 1 194 19 cvt.u16.u8 %r110,%r109; setp.ne.u16 %r111,%r110,0; @ %r111 bra $L22; .loc 1 194 52 set.u32.eq.u64 %r113,%r42,%r51; neg.s32 %r114,%r113; mov.u32 %r112,%r114; .loc 1 194 67 set.u32.lt.s32 %r116,%r41,%r46; neg.s32 %r117,%r116; mov.u32 %r115,%r117; .loc 1 194 62 cvt.u16.u8 %r136,%r112; mov.u16 %r119,%r136; cvt.u16.u8 %r136,%r115; mov.u16 %r120,%r136; and.b16 %r118,%r119,%r120; cvt.u32.u16 %r121,%r118; .loc 1 194 44 cvt.u16.u8 %r122,%r121; setp.ne.u16 %r123,%r122,0; @ %r123 bra $L23; .loc 1 199 8 cvt.s64.s32 %r124,%r46; mad.lo.u64 %r51,%r51,%r62,%r124; .loc 1 197 8 mov.u32 %r49,%r135; bra $L13; $L22: .loc 1 195 8 mov.u32 %r49,%r134; bra $L13; $L23: mov.u32 %r49,%r134; $L13: .loc 1 183 28 ld.u8 %r43,[%r61]; add.u64 %r61,%r61,1; .loc 1 184 6 bra $L14; $L12: .loc 1 202 5 setp.ne.u32 %r125,%r49,-1; @ %r125 bra $L15; .loc 1 204 16 mov.u32 %r126,34; st.u32 [%r65],%r126; .loc 1 207 5 setp.ne.u64 %r127,%r67,0; @ %r127 bra $L16; .loc 1 203 7 mov.u64 %r51,%r38; bra $L28; $L15: .loc 1 205 12 setp.eq.u32 %r128,%r39,0; @ %r128 bra $L18; .loc 1 206 7 neg.s64 %r51,%r51; $L18: .loc 1 207 5 setp.eq.u64 %r129,%r67,0; @ %r129 bra $L28; .loc 1 208 13 setp.eq.u32 %r130,%r49,0; @ %r130 bra $L19; mov.u64 %r38,%r51; $L16: add.u64 %r66,%r61,-1; mov.u64 %r51,%r38; $L19: .loc 1 208 11 st.u64 [%r67],%r66; .loc 1 209 9 bra $L28; $L7: .loc 1 160 5 setp.eq.u32 %r132,%r68,0; @ %r132 bra $L24; .loc 1 181 20 cvt.s64.s32 %r62,%r68; bra $L6; $L28: .loc 1 210 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoll_r .visible .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 218 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoll_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 219 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoll_l .visible .func (.param .u64 %value_out) strtoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 227 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoll_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 228 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoll .visible .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 235 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoll_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 236 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /1405 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-strtorx.o/0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE lib_a-strtoul.o/0 0 0 644 10212 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoul_l$constprop$0 .func (.param .u64 %value_out) _strtoul_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtoul.c" // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .visible .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoul_l .visible .func (.param .u64 %value_out) strtoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoul .visible .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoul_l$constprop$0 .func (.param .u64 %value_out) _strtoul_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r86; .reg .pred %r87; .reg .u16 %r90; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u16 %r146; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r34,%r66; cvta.const.u64 %r143,_ctype_+1; $L2: mov.u64 %r22,%r34; add.u64 %r35,%r34,1; mov.u64 %r34,%r35; .loc 1 143 7 ld.u8 %r23,[%r22]; .loc 1 144 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r143,%r69; ld.u8 %r146,[%r72]; mov.u16 %r75,%r146; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 143 5 mov.u32 %r39,%r23; .loc 1 145 5 setp.ne.u32 %r79,%r39,45; @ %r79 bra $L3; .loc 1 147 5 ld.u8 %r39,[%r35]; .loc 1 147 9 add.u64 %r35,%r22,2; .loc 1 146 7 mov.u32 %r56,1; bra $L4; $L3: .loc 1 148 12 setp.ne.u32 %r80,%r39,43; @ %r80 bra $L20; .loc 1 149 5 ld.u8 %r39,[%r34]; .loc 1 149 9 add.u64 %r35,%r22,2; .loc 1 137 15 mov.u32 %r56,0; bra $L4; $L20: mov.u32 %r56,0; $L4: .loc 1 150 12 and.b32 %r81,%r68,-17; .loc 1 150 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 158 38 cvt.s64.s32 %r62,%r68; .loc 1 158 9 mov.u64 %r83,-1; div.u64 %r61,%r83,%r62; .loc 1 159 36 rem.u64 %r86,%r83,%r62; .loc 1 159 9 cvt.u32.u64 %r57,%r86; bra $L6; $L5: .loc 1 150 32 setp.ne.u32 %r87,%r39,48; @ %r87 bra $L7; .loc 1 151 29 ld.u8 %r146,[%r35]; mov.u16 %r90,%r146; .loc 1 151 15 and.b16 %r92,%r90,223; setp.ne.u16 %r93,%r92,88; @ %r93 bra $L8; .loc 1 152 5 ld.u8 %r39,[%r35+1]; .loc 1 153 5 add.u64 %r35,%r35,2; mov.u32 %r57,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 154 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 156 5 setp.eq.u32 %r94,%r68,0; @ %r94 bra $L21; .loc 1 158 38 cvt.s64.s32 %r62,%r68; .loc 1 158 9 mov.u64 %r95,-1; div.u64 %r61,%r95,%r62; .loc 1 159 36 rem.u64 %r98,%r95,%r62; .loc 1 159 9 cvt.u32.u64 %r57,%r98; bra $L6; $L21: .loc 1 156 5 mov.u32 %r57,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 157 23 mov.u32 %r68,8; bra $L6; $L25: .loc 1 156 5 mov.u32 %r57,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 157 23 mov.u32 %r68,10; $L6: mov.u64 %r37,%r35; .loc 1 160 20 mov.u32 %r45,0; .loc 1 160 11 mov.u64 %r64,0; .loc 1 172 8 mov.u32 %r144,-1; .loc 1 174 8 mov.u32 %r145,1; $L14: .loc 1 161 16 add.u32 %r99,%r39,-48; .loc 1 161 6 setp.gt.u32 %r100,%r99,9; @ %r100 bra $L9; .loc 1 162 6 mov.u32 %r42,%r99; bra $L10; $L9: .loc 1 163 21 add.u32 %r101,%r39,-65; .loc 1 163 11 setp.gt.u32 %r102,%r101,25; @ %r102 bra $L11; .loc 1 164 6 add.u32 %r42,%r39,-55; bra $L10; $L11: .loc 1 165 21 add.u32 %r103,%r39,-97; .loc 1 165 11 setp.gt.u32 %r104,%r103,25; @ %r104 bra $L12; .loc 1 166 6 add.u32 %r42,%r39,-87; $L10: .loc 1 169 6 setp.le.s32 %r105,%r68,%r42; @ %r105 bra $L12; .loc 1 171 24 shr.u32 %r107,%r45,31; mov.u32 %r108,%r107; .loc 1 171 35 set.u32.gt.u64 %r110,%r64,%r61; neg.s32 %r111,%r110; mov.u32 %r109,%r111; .loc 1 171 28 cvt.u16.u8 %r146,%r108; mov.u16 %r113,%r146; cvt.u16.u8 %r146,%r109; mov.u16 %r114,%r146; or.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; .loc 1 171 19 cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L22; .loc 1 171 52 set.u32.eq.u64 %r119,%r64,%r61; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 171 67 set.u32.gt.s32 %r122,%r42,%r57; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 171 62 cvt.u16.u8 %r146,%r118; mov.u16 %r125,%r146; cvt.u16.u8 %r146,%r121; mov.u16 %r126,%r146; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 171 44 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L23; .loc 1 176 8 cvt.s64.s32 %r130,%r42; mad.lo.u64 %r64,%r64,%r62,%r130; .loc 1 174 8 mov.u32 %r45,%r145; bra $L13; $L22: .loc 1 172 8 mov.u32 %r45,%r144; bra $L13; $L23: mov.u32 %r45,%r144; $L13: .loc 1 160 28 ld.u8 %r39,[%r37]; add.u64 %r37,%r37,1; .loc 1 161 6 bra $L14; $L12: .loc 1 179 5 setp.ne.u32 %r131,%r45,-1; @ %r131 bra $L15; .loc 1 181 16 mov.u32 %r132,34; st.u32 [%r65],%r132; .loc 1 184 5 setp.ne.u64 %r133,%r67,0; @ %r133 bra $L24; .loc 1 180 7 mov.u64 %r64,-1; bra $L1; $L15: .loc 1 182 12 setp.eq.u32 %r134,%r56,0; @ %r134 bra $L18; .loc 1 183 7 neg.s64 %r64,%r64; $L18: .loc 1 184 5 setp.eq.u64 %r135,%r67,0; @ %r135 bra $L1; .loc 1 185 13 setp.eq.u32 %r136,%r45,0; @ %r136 bra $L19; bra $L16; $L24: .loc 1 180 7 mov.u64 %r64,-1; $L16: .loc 1 185 13 add.u64 %r66,%r37,-1; $L19: .loc 1 185 11 st.u64 [%r67],%r66; .loc 1 186 9 bra $L1; $L7: .loc 1 156 5 setp.eq.u32 %r138,%r68,0; @ %r138 bra $L25; .loc 1 158 38 cvt.s64.s32 %r62,%r68; .loc 1 158 9 mov.u64 %r139,-1; div.u64 %r61,%r139,%r62; .loc 1 159 36 rem.u64 %r142,%r139,%r62; .loc 1 159 9 cvt.u32.u64 %r57,%r142; bra $L6; $L1: .loc 1 187 1 mov.u64 %value,%r64; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoul_r .visible .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 195 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoul_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 196 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoul_l .visible .func (.param .u64 %value_out) strtoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 204 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoul_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 205 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoul .visible .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 212 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoul_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 213 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /1424 0 0 0 644 10231 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoull_l$constprop$0 .func (.param .u64 %value_out) _strtoull_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtoull.c" // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .visible .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoull_l .visible .func (.param .u64 %value_out) strtoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoull .visible .func (.param .u64 %value_out) strtoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoull_l$constprop$0 .func (.param .u64 %value_out) _strtoull_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u16 %r75; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u64 %r86; .reg .pred %r87; .reg .u16 %r90; .reg .u16 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u16 %r146; mov.u64 %r65,%ar0; mov.u64 %r66,%ar1; mov.u64 %r67,%ar2; mov.u32 %r68,%ar3; mov.u64 %r34,%r66; cvta.const.u64 %r143,_ctype_+1; $L2: mov.u64 %r22,%r34; add.u64 %r35,%r34,1; mov.u64 %r34,%r35; .loc 1 141 7 ld.u8 %r23,[%r22]; .loc 1 142 11 cvt.u32.u32 %r70,%r23; cvt.u64.u8 %r69,%r70; add.u64 %r72,%r143,%r69; ld.u8 %r146,[%r72]; mov.u16 %r75,%r146; and.b16 %r77,%r75,8; setp.ne.u16 %r78,%r77,0; @ %r78 bra $L2; .loc 1 141 5 mov.u32 %r39,%r23; .loc 1 143 5 setp.ne.u32 %r79,%r39,45; @ %r79 bra $L3; .loc 1 145 5 ld.u8 %r39,[%r35]; .loc 1 145 9 add.u64 %r35,%r22,2; .loc 1 144 7 mov.u32 %r56,1; bra $L4; $L3: .loc 1 146 12 setp.ne.u32 %r80,%r39,43; @ %r80 bra $L20; .loc 1 147 5 ld.u8 %r39,[%r34]; .loc 1 147 9 add.u64 %r35,%r22,2; .loc 1 135 15 mov.u32 %r56,0; bra $L4; $L20: mov.u32 %r56,0; $L4: .loc 1 148 12 and.b32 %r81,%r68,-17; .loc 1 148 5 setp.eq.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 156 48 cvt.s64.s32 %r62,%r68; .loc 1 156 9 mov.u64 %r83,-1; div.u64 %r61,%r83,%r62; .loc 1 157 46 rem.u64 %r86,%r83,%r62; .loc 1 157 9 cvt.u32.u64 %r57,%r86; bra $L6; $L5: .loc 1 148 32 setp.ne.u32 %r87,%r39,48; @ %r87 bra $L7; .loc 1 149 29 ld.u8 %r146,[%r35]; mov.u16 %r90,%r146; .loc 1 149 15 and.b16 %r92,%r90,223; setp.ne.u16 %r93,%r92,88; @ %r93 bra $L8; .loc 1 150 5 ld.u8 %r39,[%r35+1]; .loc 1 151 5 add.u64 %r35,%r35,2; mov.u32 %r57,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 152 8 mov.u32 %r68,16; bra $L6; $L8: .loc 1 154 5 setp.eq.u32 %r94,%r68,0; @ %r94 bra $L21; .loc 1 156 48 cvt.s64.s32 %r62,%r68; .loc 1 156 9 mov.u64 %r95,-1; div.u64 %r61,%r95,%r62; .loc 1 157 46 rem.u64 %r98,%r95,%r62; .loc 1 157 9 cvt.u32.u64 %r57,%r98; bra $L6; $L21: .loc 1 154 5 mov.u32 %r57,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 155 23 mov.u32 %r68,8; bra $L6; $L25: .loc 1 154 5 mov.u32 %r57,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 155 23 mov.u32 %r68,10; $L6: mov.u64 %r37,%r35; .loc 1 158 20 mov.u32 %r45,0; .loc 1 158 11 mov.u64 %r64,0; .loc 1 170 8 mov.u32 %r144,-1; .loc 1 172 8 mov.u32 %r145,1; $L14: .loc 1 159 16 add.u32 %r99,%r39,-48; .loc 1 159 6 setp.gt.u32 %r100,%r99,9; @ %r100 bra $L9; .loc 1 160 6 mov.u32 %r42,%r99; bra $L10; $L9: .loc 1 161 21 add.u32 %r101,%r39,-65; .loc 1 161 11 setp.gt.u32 %r102,%r101,25; @ %r102 bra $L11; .loc 1 162 6 add.u32 %r42,%r39,-55; bra $L10; $L11: .loc 1 163 21 add.u32 %r103,%r39,-97; .loc 1 163 11 setp.gt.u32 %r104,%r103,25; @ %r104 bra $L12; .loc 1 164 6 add.u32 %r42,%r39,-87; $L10: .loc 1 167 6 setp.le.s32 %r105,%r68,%r42; @ %r105 bra $L12; .loc 1 169 24 shr.u32 %r107,%r45,31; mov.u32 %r108,%r107; .loc 1 169 35 set.u32.gt.u64 %r110,%r64,%r61; neg.s32 %r111,%r110; mov.u32 %r109,%r111; .loc 1 169 28 cvt.u16.u8 %r146,%r108; mov.u16 %r113,%r146; cvt.u16.u8 %r146,%r109; mov.u16 %r114,%r146; or.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; .loc 1 169 19 cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L22; .loc 1 169 52 set.u32.eq.u64 %r119,%r64,%r61; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 169 67 set.u32.gt.s32 %r122,%r42,%r57; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 169 62 cvt.u16.u8 %r146,%r118; mov.u16 %r125,%r146; cvt.u16.u8 %r146,%r121; mov.u16 %r126,%r146; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 169 44 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L23; .loc 1 174 8 cvt.s64.s32 %r130,%r42; mad.lo.u64 %r64,%r64,%r62,%r130; .loc 1 172 8 mov.u32 %r45,%r145; bra $L13; $L22: .loc 1 170 8 mov.u32 %r45,%r144; bra $L13; $L23: mov.u32 %r45,%r144; $L13: .loc 1 158 28 ld.u8 %r39,[%r37]; add.u64 %r37,%r37,1; .loc 1 159 6 bra $L14; $L12: .loc 1 177 5 setp.ne.u32 %r131,%r45,-1; @ %r131 bra $L15; .loc 1 179 16 mov.u32 %r132,34; st.u32 [%r65],%r132; .loc 1 182 5 setp.ne.u64 %r133,%r67,0; @ %r133 bra $L24; .loc 1 178 7 mov.u64 %r64,-1; bra $L1; $L15: .loc 1 180 12 setp.eq.u32 %r134,%r56,0; @ %r134 bra $L18; .loc 1 181 7 neg.s64 %r64,%r64; $L18: .loc 1 182 5 setp.eq.u64 %r135,%r67,0; @ %r135 bra $L1; .loc 1 183 13 setp.eq.u32 %r136,%r45,0; @ %r136 bra $L19; bra $L16; $L24: .loc 1 178 7 mov.u64 %r64,-1; $L16: .loc 1 183 13 add.u64 %r66,%r37,-1; $L19: .loc 1 183 11 st.u64 [%r67],%r66; .loc 1 184 9 bra $L1; $L7: .loc 1 154 5 setp.eq.u32 %r138,%r68,0; @ %r138 bra $L25; .loc 1 156 48 cvt.s64.s32 %r62,%r68; .loc 1 156 9 mov.u64 %r139,-1; div.u64 %r61,%r139,%r62; .loc 1 157 46 rem.u64 %r142,%r139,%r62; .loc 1 157 9 cvt.u32.u64 %r57,%r142; bra $L6; $L1: .loc 1 185 1 mov.u64 %value,%r64; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoull_r .visible .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 193 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoull_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 194 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoull_l .visible .func (.param .u64 %value_out) strtoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 202 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoull_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 203 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoull .visible .func (.param .u64 %value_out) strtoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 210 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoull_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 211 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /1442 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /1462 0 0 0 644 10832 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _strtoumax_l$constprop$0 .func (.param .u64 %value_out) _strtoumax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/strtoumax.c" // BEGIN GLOBAL FUNCTION DECL: _strtoumax_r .visible .func (.param .u64 %value_out) _strtoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoumax_l .visible .func (.param .u64 %value_out) strtoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strtoumax .visible .func (.param .u64 %value_out) strtoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN FUNCTION DEF: _strtoumax_l$constprop$0 .func (.param .u64 %value_out) _strtoumax_l$constprop$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r22; .reg .u64 %r29; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u32 %r42; .reg .u32 %r48; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r59; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r70; .reg .u16 %r73; .reg .u16 %r75; .reg .pred %r76; .reg .u16 %r77; .reg .pred %r78; .reg .pred %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u16 %r83; .reg .pred %r84; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .pred %r91; .reg .u32 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u32 %r101; .reg .u16 %r102; .reg .pred %r103; .reg .u16 %r105; .reg .u32 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u32 %r112; .reg .u16 %r113; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u16 %r118; .reg .u32 %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u32 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u32 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u32 %r149; .reg .pred %r150; .reg .pred %r151; .reg .u32 %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r158; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u16 %r162; mov.u64 %r63,%ar0; mov.u64 %r64,%ar1; mov.u64 %r65,%ar2; mov.u32 %r66,%ar3; mov.u64 %r33,%r64; cvta.const.u64 %r159,_ctype_+1; $L2: mov.u64 %r22,%r33; add.u64 %r35,%r33,1; mov.u64 %r33,%r35; .loc 1 73 5 ld.s8 %r34,[%r22]; .loc 1 74 11 cvt.u32.u32 %r68,%r34; cvt.s64.s8 %r67,%r68; add.u64 %r70,%r159,%r67; ld.u8 %r162,[%r70]; mov.u16 %r73,%r162; and.b16 %r75,%r73,8; setp.ne.u16 %r76,%r75,0; @ %r76 bra $L2; .loc 1 75 5 cvt.u16.u32 %r77,%r34; setp.ne.u16 %r78,%r77,45; @ %r78 bra $L3; .loc 1 77 5 ld.s8 %r34,[%r35]; .loc 1 77 9 add.u64 %r35,%r22,2; .loc 1 76 7 mov.u32 %r55,1; bra $L4; $L3: .loc 1 80 6 setp.ne.u16 %r80,%r77,43; @ %r80 bra $L22; .loc 1 81 6 ld.s8 %r34,[%r33]; .loc 1 81 10 add.u64 %r35,%r22,2; .loc 1 79 7 mov.u32 %r55,0; bra $L4; $L22: mov.u32 %r55,0; $L4: .loc 1 83 12 and.b32 %r81,%r66,-17; .loc 1 83 5 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L5; .loc 1 83 32 cvt.u16.u32 %r83,%r34; setp.ne.u16 %r84,%r83,48; @ %r84 bra $L6; .loc 1 84 29 ld.u8 %r162,[%r35]; mov.u16 %r87,%r162; and.b16 %r86,%r87,-33; cvt.u32.u16 %r88,%r86; .loc 1 84 15 cvt.s16.s8 %r89,%r88; setp.ne.u16 %r90,%r89,88; @ %r90 bra $L7; .loc 1 85 5 ld.s8 %r34,[%r35+1]; .loc 1 86 5 add.u64 %r35,%r35,2; mov.u32 %r56,15; mov.u64 %r59,1152921504606846975; mov.u64 %r29,16; .loc 1 87 8 mov.u32 %r66,16; bra $L8; $L7: .loc 1 89 5 setp.eq.u32 %r91,%r66,0; @ %r91 bra $L23; $L5: .loc 1 92 15 add.u32 %r92,%r66,-2; .loc 1 92 5 setp.gt.u32 %r93,%r92,34; @ %r93 bra $L24; .loc 1 95 23 cvt.s64.s32 %r29,%r66; .loc 1 95 9 mov.u64 %r94,-1; div.u64 %r59,%r94,%r29; .loc 1 96 23 rem.u64 %r97,%r94,%r29; .loc 1 96 9 cvt.u32.u64 %r56,%r97; bra $L8; $L23: .loc 1 89 5 mov.u32 %r56,7; mov.u64 %r59,2305843009213693951; mov.u64 %r29,8; .loc 1 90 23 mov.u32 %r66,8; bra $L8; $L28: .loc 1 89 5 mov.u32 %r56,5; mov.u64 %r59,1844674407370955161; mov.u64 %r29,10; .loc 1 90 23 mov.u32 %r66,10; $L8: mov.u64 %r37,%r35; .loc 1 91 12 mov.u32 %r48,0; .loc 1 91 6 mov.u64 %r62,0; .loc 1 109 8 mov.u32 %r160,-1; .loc 1 111 8 mov.u32 %r161,1; $L15: .loc 1 98 16 cvt.u32.u32 %r98,%r34; cvt.u16.u8 %r100,%r98; add.u16 %r99,%r100,-48; cvt.u32.u16 %r101,%r99; .loc 1 98 6 cvt.u16.u8 %r102,%r101; setp.gt.u16 %r103,%r102,9; @ %r103 bra $L10; .loc 1 99 6 cvt.s32.s8 %r42,%r101; bra $L11; $L10: .loc 1 100 21 add.u16 %r105,%r100,-65; cvt.u32.u16 %r107,%r105; .loc 1 100 11 cvt.u16.u8 %r108,%r107; setp.gt.u16 %r109,%r108,25; @ %r109 bra $L12; .loc 1 101 6 add.u16 %r110,%r100,-55; cvt.u32.u16 %r112,%r110; cvt.s32.s8 %r42,%r112; bra $L11; $L12: .loc 1 102 21 add.u16 %r113,%r100,-97; cvt.u32.u16 %r115,%r113; .loc 1 102 11 cvt.u16.u8 %r116,%r115; setp.gt.u16 %r117,%r116,25; @ %r117 bra $L13; .loc 1 103 6 add.u16 %r118,%r100,-87; cvt.u32.u16 %r120,%r118; cvt.s32.s8 %r42,%r120; $L11: .loc 1 106 6 setp.ge.s32 %r121,%r42,%r66; @ %r121 bra $L13; .loc 1 108 11 shr.u32 %r123,%r48,31; mov.u32 %r124,%r123; .loc 1 108 22 set.u32.gt.u64 %r126,%r62,%r59; neg.s32 %r127,%r126; mov.u32 %r125,%r127; .loc 1 108 15 cvt.u16.u8 %r162,%r124; mov.u16 %r129,%r162; cvt.u16.u8 %r162,%r125; mov.u16 %r130,%r162; or.b16 %r128,%r129,%r130; cvt.u32.u16 %r131,%r128; .loc 1 108 6 cvt.u16.u8 %r132,%r131; setp.ne.u16 %r133,%r132,0; @ %r133 bra $L25; .loc 1 108 31 set.u32.eq.u64 %r135,%r62,%r59; neg.s32 %r136,%r135; mov.u32 %r134,%r136; .loc 1 108 49 set.u32.gt.s32 %r138,%r42,%r56; neg.s32 %r139,%r138; mov.u32 %r137,%r139; cvt.u16.u8 %r162,%r134; mov.u16 %r141,%r162; cvt.u16.u8 %r162,%r137; mov.u16 %r142,%r162; and.b16 %r140,%r141,%r142; cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L26; .loc 1 113 8 cvt.u32.u32 %r147,%r42; cvt.s64.s8 %r146,%r147; mad.lo.u64 %r62,%r29,%r62,%r146; .loc 1 111 8 mov.u32 %r48,%r161; bra $L14; $L25: .loc 1 109 8 mov.u32 %r48,%r160; bra $L14; $L26: mov.u32 %r48,%r160; $L14: .loc 1 97 14 ld.s8 %r34,[%r37]; add.u64 %r37,%r37,1; .loc 1 98 6 bra $L15; $L13: .loc 1 116 5 setp.ne.u32 %r148,%r48,-1; @ %r148 bra $L16; .loc 1 118 16 mov.u32 %r149,34; st.u32 [%r63],%r149; .loc 1 124 5 setp.ne.u64 %r150,%r65,0; @ %r150 bra $L27; .loc 1 117 7 mov.u64 %r62,-1; bra $L1; $L16: .loc 1 119 12 setp.ne.u32 %r151,%r48,0; @ %r151 bra $L19; bra $L9; $L24: .loc 1 91 6 mov.u64 %r62,0; $L9: .loc 1 121 16 mov.u32 %r152,22; st.u32 [%r63],%r152; .loc 1 124 5 setp.ne.u64 %r153,%r65,0; @ %r153 bra $L20; bra $L1; $L19: .loc 1 122 12 setp.eq.u32 %r154,%r55,0; @ %r154 bra $L21; .loc 1 123 7 neg.s64 %r62,%r62; .loc 1 124 5 setp.ne.u64 %r155,%r65,0; @ %r155 bra $L17; bra $L1; $L21: setp.eq.u64 %r156,%r65,0; @ ! %r156 bra $L17; bra $L1; $L27: .loc 1 117 7 mov.u64 %r62,-1; $L17: .loc 1 125 13 add.u64 %r64,%r37,-1; $L20: .loc 1 125 11 st.u64 [%r65],%r64; .loc 1 126 9 bra $L1; $L6: .loc 1 89 5 setp.eq.u32 %r158,%r66,0; @ %r158 bra $L28; bra $L5; $L1: .loc 1 127 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _strtoumax_r .visible .func (.param .u64 %value_out) _strtoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 133 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoumax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 134 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoumax_l .visible .func (.param .u64 %value_out) strtoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 142 9 ld.global.u64 %r32,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoumax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r33,[%value_in]; } .loc 1 143 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strtoumax .visible .func (.param .u64 %value_out) strtoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 148 9 ld.global.u64 %r31,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; call (%value_in),_strtoumax_l$constprop$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 149 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strupr.o/ 0 0 0 644 1455 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strupr .visible .func (.param .u64 %value_out) strupr (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/strupr.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: strupr .visible .func (.param .u64 %value_out) strupr (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .pred %r31; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r36; .reg .u16 %r39; .reg .u16 %r41; .reg .pred %r42; .reg .u16 %r43; .reg .u16 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u16 %r49; mov.u64 %r30,%ar0; .loc 1 35 11 ld.u8 %r26,[%r30]; .loc 1 35 16 setp.ne.u32 %r31,%r26,0; @ ! %r31 bra $L7; mov.u64 %r28,%r30; cvta.const.u64 %r48,_ctype_+1; $L2: .loc 1 37 14 cvt.u32.u32 %r34,%r26; cvt.u64.u8 %r33,%r34; add.u64 %r36,%r48,%r33; ld.u8 %r49,[%r36]; mov.u16 %r39,%r49; and.b16 %r41,%r39,3; setp.ne.u16 %r42,%r41,2; @ %r42 bra $L3; .loc 1 37 12 cvt.u16.u32 %r44,%r26; add.u16 %r43,%r44,-32; cvt.u32.u16 %r45,%r43; cvt.u32.u8 %r26,%r45; $L3: cvt.u32.u32 %r46,%r26; st.u8 [%r28],%r46; .loc 1 35 28 add.u64 %r28,%r28,1; .loc 1 35 11 ld.u8 %r26,[%r28]; .loc 1 35 16 setp.ne.u32 %r47,%r26,0; @ %r47 bra $L2; $L7: .loc 1 40 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strxfrm.o/0 0 0 644 1846 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strxfrm .visible .func (.param .u64 %value_out) strxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strxfrm.c" // BEGIN GLOBAL FUNCTION DEF: strxfrm .visible .func (.param .u64 %value_out) strxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .pred %r52; .reg .u64 %r54; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 55 14 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L6; .loc 1 54 7 mov.u64 %r35,0; add.u64 %r54,%r37,1; $L4: add.u64 %r33,%r54,%r35; .loc 1 57 20 add.u64 %r41,%r37,%r35; ld.s8 %r22,[%r41]; .loc 1 57 18 add.u64 %r42,%r36,%r35; cvt.u32.u32 %r43,%r22; st.u8 [%r42],%r43; .loc 1 57 10 setp.eq.u32 %r44,%r22,0; @ %r44 bra $L1; .loc 1 58 9 add.u64 %r35,%r35,1; .loc 1 55 14 setp.ne.u64 %r45,%r38,%r35; @ %r45 bra $L4; bra $L2; $L6: mov.u64 %r33,%r37; $L2: .loc 1 62 10 ld.u8 %r47,[%r33]; cvt.s16.s8 %r46,%r47; setp.eq.u16 %r48,%r46,0; @ %r48 bra $L7; mov.u64 %r29,%r33; $L5: .loc 1 64 7 add.u64 %r29,%r29,1; add.u64 %r49,%r29,%r38; sub.u64 %r35,%r49,%r33; .loc 1 62 10 ld.u8 %r51,[%r29]; cvt.s16.s8 %r50,%r51; setp.ne.u16 %r52,%r50,0; @ %r52 bra $L5; bra $L1; $L7: mov.u64 %r35,%r38; $L1: .loc 1 69 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } /1481 0 0 0 644 46087 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .visible .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .visible .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN GLOBAL FUNCTION DEF: __ssprint_r .visible .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r40; .reg .u64 %r48; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .u32 %r86; .reg .u32 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .u64 %r93; .reg .pred %r94; .reg .u64 %r98; .reg .u64 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u64 %r106; .reg .pred %r107; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r116; .reg .u64 %r121; .reg .pred %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u32 %r129; .reg .u32 %r130; .reg .u64 %r131; mov.u64 %r64,%ar0; mov.u64 %r65,%ar1; mov.u64 %r66,%ar2; .loc 1 274 6 ld.u64 %r40,[%r66]; .loc 1 277 5 ld.u64 %r67,[%r66+16]; setp.ne.u64 %r68,%r67,0; @ %r68 bra $L15; $L14: .loc 1 279 10 mov.u32 %r63,0; bra $L3; $L4: .loc 1 284 6 ld.u64 %r34,[%r40]; .loc 1 285 8 ld.u64 %r35,[%r40+8]; .loc 1 286 7 add.u64 %r40,%r40,16; bra $L2; $L15: .loc 1 272 23 mov.u64 %r34,0; .loc 1 275 6 mov.u64 %r35,%r34; ld.u32 %r129,[%r65+12]; ld.u64 %r131,[%r65]; $L2: .loc 1 288 5 mov.u32 %r52,%r129; .loc 1 292 20 mov.u64 %r59,%r131; .loc 1 283 14 setp.eq.u64 %r69,%r35,0; @ %r69 bra $L4; .loc 1 289 11 cvt.s64.s32 %r60,%r129; .loc 1 289 6 setp.ge.u64 %r70,%r35,%r60; @ %r70 bra $L5; cvt.u32.u64 %r130,%r35; $L12: .loc 1 335 6 mov.u32 %r52,%r130; .loc 1 334 11 cvt.s64.s32 %r58,%r52; .loc 1 336 29 mov.u64 %r59,%r131; mov.u64 %r60,%r58; bra $L6; $L5: .loc 1 289 21 ld.s16 %r23,[%r65+16]; .loc 1 289 16 cvt.u16.u32 %r72,%r23; and.b16 %r71,%r72,1152; setp.ne.u16 %r73,%r71,0; @ %r73 bra $L7; .loc 1 331 6 cvt.u32.u64 %r74,%r35; .loc 1 334 11 cvt.s64.s32 %r58,%r74; bra $L6; $L7: .loc 1 292 34 ld.u64 %r24,[%r65+24]; .loc 1 292 25 sub.u64 %r25,%r131,%r24; .loc 1 292 8 cvt.u32.u64 %r57,%r25; .loc 1 300 32 ld.u32 %r75,[%r65+32]; add.u32 %r77,%r75,%r75; add.u32 %r78,%r77,%r75; .loc 1 300 8 shr.u32 %r79,%r78,31; add.u32 %r80,%r79,%r78; shr.s32 %r54,%r80,1; .loc 1 301 16 cvt.s64.s32 %r28,%r54; .loc 1 301 25 cvt.s64.s32 %r29,%r57; .loc 1 301 31 add.u64 %r82,%r29,1; add.u64 %r83,%r82,%r35; .loc 1 301 7 setp.ge.u64 %r84,%r28,%r83; @ %r84 bra $L8; .loc 1 302 28 add.u32 %r86,%r57,1; .loc 1 302 22 cvt.u32.u64 %r87,%r35; .loc 1 302 28 add.u32 %r54,%r86,%r87; .loc 1 306 28 cvt.s64.s32 %r28,%r54; $L8: .loc 1 303 7 cvt.u16.u32 %r89,%r23; and.b16 %r88,%r89,1024; setp.eq.u16 %r90,%r88,0; @ %r90 bra $L9; .loc 1 306 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r64; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r93,[%value_in]; } mov.u64 %r53,%r93; .loc 1 307 8 setp.eq.u64 %r94,%r53,0; @ %r94 bra $L10; .loc 1 312 5 ld.u64 %r98,[%r65+24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r98; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r99,[%value_in]; } .loc 1 313 16 ld.u16 %r101,[%r65+16]; and.b16 %r100,%r101,-1153; or.b16 %r102,%r100,128; st.u16 [%r65+16],%r102; bra $L11; $L9: .loc 1 317 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r64; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r106,[%value_in]; } mov.u64 %r53,%r106; .loc 1 319 8 setp.ne.u64 %r107,%r106,0; @ %r107 bra $L11; .loc 1 321 6 ld.u64 %r110,[%r65+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r64; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call _free_r,(%out_arg1,%out_arg2); } .loc 1 325 6 bra $L10; $L11: .loc 1 328 18 st.u64 [%r65+24],%r53; .loc 1 329 17 add.u64 %r59,%r53,%r29; .loc 1 329 11 st.u64 [%r65],%r59; .loc 1 330 18 st.u32 [%r65+32],%r54; .loc 1 331 6 cvt.u32.u64 %r52,%r35; mov.u32 %r130,%r52; .loc 1 332 21 sub.u32 %r111,%r54,%r57; .loc 1 332 11 st.u32 [%r65+12],%r111; .loc 1 334 11 cvt.s64.s32 %r58,%r52; .loc 1 334 6 setp.gt.u64 %r112,%r58,%r35; @ ! %r112 bra $L20; mov.u64 %r131,%r59; bra $L12; $L20: mov.u64 %r60,%r58; $L6: .loc 1 336 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r60; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r116,[%value_in]; } .loc 1 337 10 ld.u32 %r129,[%r65+12]; sub.u32 %r129,%r129,%r52; st.u32 [%r65+12],%r129; .loc 1 338 10 ld.u64 %r131,[%r65]; add.u64 %r131,%r131,%r60; st.u64 [%r65],%r131; .loc 1 340 5 add.u64 %r34,%r34,%r58; .loc 1 341 7 sub.u64 %r35,%r35,%r58; .loc 1 342 34 ld.u64 %r121,[%r66+16]; sub.u64 %r48,%r121,%r58; st.u64 [%r66+16],%r48; .loc 1 342 40 setp.ne.u64 %r122,%r48,0; @ %r122 bra $L2; bra $L14; $L10: .loc 1 309 18 mov.u32 %r123,12; st.u32 [%r64],%r123; .loc 1 349 14 ld.u16 %r125,[%r65+16]; or.b16 %r124,%r125,64; st.u16 [%r65+16],%r124; .loc 1 350 18 mov.u64 %r126,0; st.u64 [%r66+16],%r126; .loc 1 352 10 mov.u32 %r63,-1; $L3: .loc 1 278 19 mov.u32 %r127,0; st.u32 [%r66+8],%r127; .loc 1 353 1 mov.u32 %value,%r63; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _svfiprintf_r .visible .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,208; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r48; .reg .u32 %r84; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r100; .reg .u64 %r106; .reg .u64 %r109; .reg .u64 %r111; .reg .u32 %r112; .reg .u64 %r116; .reg .u32 %r117; .reg .u32 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r142; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r154; .reg .u64 %r155; .reg .u64 %r156; .reg .u64 %r158; .reg .u32 %r160; .reg .u64 %r161; .reg .u32 %r162; .reg .u64 %r163; .reg .u64 %r166; .reg .u64 %r170; .reg .u64 %r171; .reg .u64 %r172; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u32 %r198; .reg .u32 %r199; .reg .u32 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .u64 %r207; .reg .u64 %r208; .reg .u32 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r216; .reg .u16 %r225; .reg .u16 %r226; .reg .pred %r227; .reg .u64 %r228; .reg .pred %r229; .reg .u64 %r231; .reg .u64 %r232; .reg .pred %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .u64 %r236; .reg .u32 %r237; .reg .u32 %r238; .reg .u16 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r244; .reg .u32 %r245; .reg .u16 %r246; .reg .u16 %r247; .reg .u16 %r248; .reg .u32 %r249; .reg .u16 %r250; .reg .pred %r251; .reg .u32 %r252; .reg .u16 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u32 %r258; .reg .u32 %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .u16 %r262; .reg .u32 %r263; .reg .u16 %r264; .reg .pred %r265; .reg .u64 %r266; .reg .pred %r267; .reg .u32 %r268; .reg .pred %r269; .reg .u32 %r274; .reg .pred %r275; .reg .pred %r276; .reg .u32 %r277; .reg .pred %r278; .reg .pred %r279; .reg .pred %r280; .reg .pred %r281; .reg .pred %r282; .reg .pred %r283; .reg .pred %r284; .reg .pred %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .pred %r289; .reg .pred %r290; .reg .u32 %r291; .reg .pred %r292; .reg .pred %r293; .reg .pred %r294; .reg .pred %r295; .reg .pred %r296; .reg .pred %r297; .reg .pred %r298; .reg .pred %r299; .reg .pred %r300; .reg .pred %r301; .reg .pred %r302; .reg .pred %r303; .reg .pred %r304; .reg .pred %r305; .reg .pred %r306; .reg .pred %r307; .reg .pred %r308; .reg .pred %r309; .reg .pred %r310; .reg .u32 %r311; .reg .pred %r312; .reg .u32 %r313; .reg .pred %r314; .reg .pred %r315; .reg .pred %r316; .reg .pred %r317; .reg .u32 %r318; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .pred %r323; .reg .u32 %r325; .reg .u32 %r326; .reg .u32 %r327; .reg .pred %r330; .reg .u16 %r331; .reg .pred %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .pred %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .pred %r338; .reg .u32 %r339; .reg .pred %r340; .reg .u32 %r341; .reg .pred %r342; .reg .u16 %r343; .reg .pred %r346; .reg .pred %r347; .reg .u32 %r348; .reg .u64 %r349; .reg .u32 %r350; .reg .pred %r351; .reg .u64 %r352; .reg .u32 %r353; .reg .pred %r354; .reg .u64 %r355; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r358; .reg .pred %r359; .reg .u32 %r360; .reg .pred %r361; .reg .u32 %r362; .reg .pred %r363; .reg .u16 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .pred %r369; .reg .u32 %r371; .reg .u64 %r373; .reg .u64 %r374; .reg .pred %r375; .reg .u64 %r376; .reg .u64 %r378; .reg .u32 %r379; .reg .pred %r380; .reg .u32 %r381; .reg .pred %r382; .reg .u32 %r383; .reg .pred %r384; .reg .u16 %r385; .reg .pred %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .pred %r389; .reg .u32 %r390; .reg .pred %r391; .reg .u32 %r392; .reg .pred %r393; .reg .u16 %r394; .reg .u32 %r395; .reg .pred %r396; .reg .pred %r397; .reg .u32 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .u32 %r401; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r405; .reg .u32 %r406; .reg .u16 %r407; .reg .u16 %r408; .reg .u16 %r409; .reg .u32 %r410; .reg .u16 %r411; .reg .pred %r412; .reg .pred %r413; .reg .pred %r414; .reg .u32 %r415; .reg .u16 %r416; .reg .u16 %r417; .reg .u32 %r418; .reg .u16 %r419; .reg .u16 %r420; .reg .u32 %r421; .reg .pred %r423; .reg .u32 %r424; .reg .u16 %r425; .reg .u32 %r426; .reg .u32 %r427; .reg .u32 %r428; .reg .u16 %r429; .reg .u16 %r430; .reg .u32 %r431; .reg .u16 %r432; .reg .u16 %r433; .reg .u16 %r434; .reg .u32 %r435; .reg .u16 %r436; .reg .pred %r437; .reg .u64 %r440; .reg .u32 %r441; .reg .u64 %r444; .reg .pred %r445; .reg .u32 %r446; .reg .u16 %r447; .reg .u16 %r448; .reg .u64 %r450; .reg .u32 %r451; .reg .u16 %r452; .reg .u16 %r453; .reg .pred %r456; .reg .u64 %r459; .reg .u64 %r460; .reg .u64 %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u64 %r466; .reg .pred %r467; .reg .pred %r468; .reg .u32 %r469; .reg .pred %r470; .reg .u32 %r471; .reg .pred %r472; .reg .u32 %r473; .reg .u16 %r474; .reg .u32 %r475; .reg .pred %r476; .reg .pred %r478; .reg .pred %r479; .reg .pred %r480; .reg .u64 %r482; .reg .pred %r483; .reg .u32 %r488; .reg .pred %r489; .reg .pred %r490; .reg .pred %r492; .reg .u32 %r497; .reg .pred %r498; .reg .u16 %r499; .reg .u32 %r500; .reg .pred %r501; .reg .u64 %r503; .reg .pred %r504; .reg .u32 %r509; .reg .pred %r510; .reg .u64 %r513; .reg .pred %r514; .reg .u32 %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .u64 %r525; .reg .pred %r526; .reg .u32 %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r535; .reg .u32 %r540; .reg .pred %r541; .reg .pred %r542; .reg .pred %r543; .reg .u64 %r545; .reg .pred %r546; .reg .u32 %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r555; .reg .u32 %r560; .reg .pred %r561; .reg .pred %r562; .reg .u32 %r567; .reg .pred %r568; .reg .u32 %r569; .reg .pred %r570; .reg .pred %r571; .reg .pred %r572; .reg .u64 %r574; .reg .pred %r575; .reg .u32 %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r584; .reg .u32 %r589; .reg .pred %r590; .reg .u32 %r591; .reg .pred %r592; .reg .u32 %r597; .reg .pred %r598; .reg .u32 %r599; .reg .pred %r600; .reg .u64 %r604; .reg .u32 %r605; .reg .u16 %r606; .reg .u16 %r607; .reg .pred %r608; .reg .pred %r610; .reg .pred %r611; .reg .u32 %r612; .reg .u32 %r613; .reg .u32 %r614; .reg .u32 %r615; .reg .u32 %r616; .reg .u32 %r617; .reg .u16 %r618; .reg .u16 %r619; .reg .u16 %r620; .reg .u32 %r621; .reg .u16 %r622; .reg .pred %r623; .reg .u64 %r624; .reg .u32 %r625; .reg .pred %r626; .reg .u64 %r628; .reg .u32 %r644; .reg .u64 %r645; .reg .u64 %r646; .reg .u64 %r647; .reg .u16 %r653; mov.u64 %r213,%ar0; mov.u64 %r214,%ar1; mov.u64 %r215,%ar2; mov.u64 %r216,%ar3; .loc 1 869 12 ld.u16 %r226,[%r214+16]; and.b16 %r225,%r226,128; setp.eq.u16 %r227,%r225,0; @ %r227 bra $L22; .loc 1 869 33 ld.u64 %r228,[%r214+24]; setp.ne.u64 %r229,%r228,0; @ %r229 bra $L22; .loc 1 871 28 mov.u64 %r231,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r231; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r232,[%value_in]; } .loc 1 871 26 st.u64 [%r214],%r232; .loc 1 871 17 st.u64 [%r214+24],%r232; .loc 1 872 6 setp.ne.u64 %r233,%r232,0; @ %r233 bra $L23; .loc 1 874 17 mov.u32 %r234,12; st.u32 [%r213],%r234; .loc 1 875 11 mov.u32 %r212,-1; bra $L21; $L23: .loc 1 877 17 mov.u32 %r235,64; st.u32 [%r214+32],%r235; $L22: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r236,0; st.u64 [%frame+184],%r236; .loc 1 885 17 mov.u32 %r237,0; st.u32 [%frame+176],%r237; mov.u64 %r193,%r236; .loc 1 883 21 mov.u64 %r133,%frame; .loc 1 707 8 mov.u64 %r32,%r193; .loc 1 887 6 mov.u32 %r212,%r237; .loc 1 918 4 add.u64 %r645,%frame,168; .loc 1 1687 4 add.u64 %r646,%frame,192; .loc 1 1685 4 add.u64 %r647,%frame,194; $L25: .loc 1 914 24 ld.s8 %r137,[%r215]; .loc 1 914 37 cvt.u16.u32 %r239,%r137; set.u32.ne.u16 %r240,%r239,0; neg.s32 %r241,%r240; mov.u32 %r238,%r241; set.u32.ne.u16 %r244,%r239,37; neg.s32 %r245,%r244; mov.u32 %r242,%r245; cvt.u16.u8 %r653,%r238; mov.u16 %r247,%r653; cvt.u16.u8 %r653,%r242; mov.u16 %r248,%r653; and.b16 %r246,%r247,%r248; cvt.u32.u16 %r249,%r246; cvt.u16.u8 %r250,%r249; setp.eq.u16 %r251,%r250,0; @ %r251 bra $L149; mov.u64 %r146,%r215; $L27: mov.u64 %r171,%r146; .loc 1 915 25 add.u64 %r146,%r146,1; .loc 1 914 24 ld.s8 %r137,[%r146]; .loc 1 914 37 cvt.u16.u32 %r253,%r137; set.u32.ne.u16 %r254,%r253,0; neg.s32 %r255,%r254; mov.u32 %r252,%r255; set.u32.ne.u16 %r258,%r253,37; neg.s32 %r259,%r258; mov.u32 %r256,%r259; cvt.u16.u8 %r653,%r252; mov.u16 %r261,%r653; cvt.u16.u8 %r653,%r256; mov.u16 %r262,%r653; and.b16 %r260,%r261,%r262; cvt.u32.u16 %r263,%r260; cvt.u16.u8 %r264,%r263; setp.ne.u16 %r265,%r264,0; @ %r265 bra $L27; .loc 1 917 16 sub.u64 %r266,%r146,%r215; .loc 1 917 10 cvt.u32.u64 %r138,%r266; .loc 1 917 6 setp.eq.u32 %r267,%r138,0; @ %r267 bra $L26; .loc 1 918 4 st.u64 [%r133],%r215; cvt.s64.s32 %r29,%r138; st.u64 [%r133+8],%r29; add.u64 %r193,%r193,%r29; st.u64 [%frame+184],%r193; ld.u32 %r268,[%frame+176]; add.u32 %r31,%r268,1; st.u32 [%frame+176],%r31; setp.gt.s32 %r269,%r31,7; @ %r269 bra $L28; add.u64 %r133,%r133,16; bra $L29; $L28: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r274,[%value_in]; } setp.ne.u32 %r275,%r274,0; @ %r275 bra $L30; .loc 1 1777 2 ld.u64 %r193,[%frame+184]; .loc 1 918 4 mov.u64 %r133,%frame; $L29: .loc 1 919 8 add.u32 %r212,%r212,%r138; .loc 1 925 21 ld.s8 %r137,[%r171+1]; bra $L26; $L149: .loc 1 914 37 mov.u64 %r146,%r215; $L26: .loc 1 925 20 setp.eq.u32 %r276,%r137,0; @ %r276 bra $L31; .loc 1 929 6 add.u64 %r215,%r146,1; .loc 1 935 8 mov.u32 %r277,0; st.u8 [%frame+194],%r277; .loc 1 947 14 ld.s8 %r200,[%r146+1]; mov.u32 %r147,0; mov.u32 %r149,%r147; .loc 1 934 8 mov.u32 %r128,-1; .loc 1 933 9 mov.u32 %r127,%r147; .loc 1 931 9 mov.u32 %r125,%r147; .loc 1 1060 6 mov.u32 %r644,%r147; $L32: .loc 1 947 18 add.u64 %r215,%r215,1; .loc 1 947 12 mov.u32 %r123,%r200; $L33: .loc 1 948 11 setp.eq.u32 %r278,%r123,88; @ %r278 bra $L34; setp.gt.s32 %r279,%r123,88; @ %r279 bra $L35; setp.eq.u32 %r280,%r123,46; @ %r280 bra $L36; setp.gt.s32 %r281,%r123,46; @ %r281 bra $L37; setp.eq.u32 %r282,%r123,42; @ %r282 bra $L38; setp.gt.s32 %r283,%r123,42; @ %r283 bra $L39; setp.eq.u32 %r284,%r123,32; @ %r284 bra $L40; setp.eq.u32 %r285,%r123,35; @ %r285 bra $L41; bra $L244; $L39: setp.eq.u32 %r286,%r123,43; @ %r286 bra $L43; setp.eq.u32 %r287,%r123,45; @ %r287 bra $L44; bra $L45; $L37: setp.eq.u32 %r288,%r123,68; @ %r288 bra $L46; setp.gt.s32 %r289,%r123,68; @ %r289 bra $L47; setp.eq.u32 %r290,%r123,48; @ %r290 bra $L48; add.u32 %r291,%r123,-49; setp.gt.u32 %r292,%r291,8; @ %r292 bra $L45; mov.u64 %r161,%r215; .loc 1 1077 6 mov.u32 %r127,0; add.u32 %r625,%r123,-48; bra $L49; $L47: .loc 1 948 11 setp.eq.u32 %r293,%r123,79; @ %r293 bra $L50; setp.eq.u32 %r294,%r123,85; @ %r294 bra $L51; bra $L45; $L35: setp.eq.u32 %r295,%r123,111; @ %r295 bra $L52; setp.gt.s32 %r296,%r123,111; @ %r296 bra $L53; setp.eq.u32 %r297,%r123,105; @ %r297 bra $L54; setp.gt.s32 %r298,%r123,105; @ %r298 bra $L55; setp.eq.u32 %r299,%r123,100; @ %r299 bra $L54; setp.eq.u32 %r300,%r123,104; @ %r300 bra $L56; setp.eq.u32 %r301,%r123,99; @ %r301 bra $L57; bra $L45; $L55: setp.eq.u32 %r302,%r123,108; @ %r302 bra $L58; setp.eq.u32 %r303,%r123,110; @ %r303 bra $L59; bra $L45; $L53: setp.eq.u32 %r304,%r123,115; @ %r304 bra $L60; setp.gt.s32 %r305,%r123,115; @ %r305 bra $L61; setp.eq.u32 %r306,%r123,112; @ %r306 bra $L62; setp.eq.u32 %r307,%r123,113; @ %r307 bra $L63; bra $L45; $L61: setp.eq.u32 %r308,%r123,117; @ %r308 bra $L64; setp.eq.u32 %r309,%r123,120; @ %r309 bra $L65; bra $L45; $L54: setp.eq.u32 %r310,%r147,0; @ %r310 bra $L67; cvt.u32.u32 %r311,%r149; st.u8 [%frame+194],%r311; bra $L67; $L65: setp.eq.u32 %r312,%r147,0; @ %r312 bra $L68; cvt.u32.u32 %r313,%r149; st.u8 [%frame+194],%r313; $L68: .loc 1 1538 10 cvta.const.u64 %r32,$LC1; bra $L69; $L40: .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 964 7 setp.ne.u32 %r314,%r149,0; selp.u32 %r147,%r147,1,%r314; selp.u32 %r149,%r149,32,%r314; bra $L32; $L41: .loc 1 968 10 or.b32 %r125,%r125,1; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 969 4 bra $L32; $L38: .loc 1 1007 10 add.u64 %r174,%r216,4; ld.u32 %r127,[%r216]; .loc 1 1011 7 setp.lt.s32 %r315,%r127,0; @ %r315 bra $L71; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1007 10 mov.u64 %r216,%r174; bra $L32; $L71: .loc 1 1013 10 neg.s32 %r127,%r127; .loc 1 1007 10 mov.u64 %r216,%r174; $L44: .loc 1 1016 10 or.b32 %r125,%r125,4; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1017 4 bra $L32; $L43: .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1020 4 mov.u32 %r147,1; .loc 1 1019 9 mov.u32 %r149,%r123; .loc 1 1020 4 bra $L32; $L36: .loc 1 1022 18 add.u64 %r156,%r215,1; .loc 1 1022 12 ld.s8 %r123,[%r215]; .loc 1 1022 7 setp.eq.u32 %r316,%r123,42; @ %r316 bra $L72; .loc 1 1061 11 add.u32 %r625,%r123,-48; setp.le.u32 %r317,%r625,9; @ %r317 bra $L73; .loc 1 1022 18 mov.u64 %r215,%r156; .loc 1 1060 6 mov.u32 %r128,%r644; bra $L33; $L72: ld.u32 %r318,[%r216]; max.s32 %r128,%r318,-1; .loc 1 947 14 ld.s8 %r200,[%r215+1]; .loc 1 1052 10 add.u64 %r216,%r216,4; .loc 1 1022 18 mov.u64 %r215,%r156; .loc 1 1058 5 bra $L32; $L73: mov.u64 %r166,%r156; .loc 1 1060 6 mov.u32 %r128,%r644; $L75: .loc 1 1062 12 shl.b32 %r320,%r128,2; add.u32 %r321,%r320,%r128; add.u32 %r322,%r321,%r321; .loc 1 1062 7 add.u32 %r128,%r322,%r625; mov.u64 %r192,%r166; add.u64 %r166,%r166,1; mov.u64 %r215,%r166; .loc 1 1063 8 ld.s8 %r123,[%r192]; .loc 1 1061 11 add.u32 %r625,%r123,-48; setp.le.u32 %r323,%r625,9; @ %r323 bra $L75; bra $L33; $L48: .loc 1 1073 10 or.b32 %r125,%r125,128; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1074 4 bra $L32; $L49: .loc 1 1079 12 shl.b32 %r325,%r127,2; add.u32 %r326,%r325,%r127; add.u32 %r327,%r326,%r326; .loc 1 1079 7 add.u32 %r127,%r625,%r327; mov.u64 %r144,%r161; add.u64 %r161,%r161,1; mov.u64 %r215,%r161; .loc 1 1080 8 ld.s8 %r123,[%r144]; .loc 1 1081 13 add.u32 %r625,%r123,-48; setp.le.u32 %r330,%r625,9; @ %r330 bra $L49; bra $L33; $L56: .loc 1 1107 11 or.b32 %r125,%r125,64; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1108 4 bra $L32; $L58: .loc 1 1111 8 ld.s8 %r200,[%r215]; .loc 1 1111 7 cvt.u16.u32 %r331,%r200; setp.ne.u16 %r332,%r331,108; @ %r332 bra $L76; .loc 1 1113 11 or.b32 %r125,%r125,32; .loc 1 947 14 ld.s8 %r200,[%r215+1]; .loc 1 1112 8 add.u64 %r215,%r215,1; bra $L32; $L76: .loc 1 1116 11 or.b32 %r125,%r125,16; bra $L32; $L63: .loc 1 1119 10 or.b32 %r125,%r125,32; .loc 1 1022 14 ld.s8 %r200,[%r215]; .loc 1 1120 4 bra $L32; $L57: .loc 1 1178 9 ld.u32 %r333,[%r216]; st.u8 [%frame+128],%r333; .loc 1 1181 9 mov.u32 %r334,0; st.u8 [%frame+194],%r334; .loc 1 1178 11 add.u64 %r216,%r216,4; .loc 1 1182 4 mov.u32 %r132,1; .loc 1 1179 10 mov.u32 %r129,%r132; .loc 1 1162 7 add.u64 %r124,%frame,128; .loc 1 1182 4 bra $L77; $L46: setp.eq.u32 %r335,%r147,0; @ %r335 bra $L78; cvt.u32.u32 %r336,%r149; st.u8 [%frame+194],%r336; $L78: .loc 1 1184 10 or.b32 %r125,%r125,16; $L67: .loc 1 1188 13 and.b32 %r337,%r125,32; setp.eq.u32 %r338,%r337,0; @ %r338 bra $L79; add.u64 %r188,%r216,7; and.b64 %r184,%r188,-8; add.u64 %r216,%r184,8; ld.u64 %r48,[%r184]; mov.u64 %r130,%r48; bra $L80; $L79: and.b32 %r339,%r125,16; setp.eq.u32 %r340,%r339,0; @ %r340 bra $L81; add.u64 %r178,%r216,7; and.b64 %r177,%r178,-8; add.u64 %r216,%r177,8; ld.u64 %r48,[%r177]; mov.u64 %r130,%r48; bra $L80; $L81: .loc 1 1007 10 ld.u32 %r201,[%r216]; add.u64 %r216,%r216,4; .loc 1 1188 13 and.b32 %r341,%r125,64; setp.eq.u32 %r342,%r341,0; @ %r342 bra $L82; cvt.u16.u32 %r343,%r201; cvt.s64.s16 %r130,%r343; .loc 1 1190 8 mov.u64 %r48,%r130; bra $L80; $L82: .loc 1 1188 13 cvt.s64.s32 %r130,%r201; .loc 1 1190 8 mov.u64 %r48,%r130; $L80: .loc 1 1190 7 setp.ge.s64 %r346,%r48,0; @ %r346 bra $L83; .loc 1 1196 12 neg.s64 %r130,%r130; mov.u32 %r135,45; .loc 1 1199 9 mov.u32 %r131,1; bra $L84; $L59: setp.eq.u32 %r347,%r147,0; @ %r347 bra $L85; cvt.u32.u32 %r348,%r149; st.u8 [%frame+194],%r348; $L85: .loc 1 1188 13 add.u64 %r349,%r216,7; and.b64 %r207,%r349,-8; ld.u64 %r208,[%r207]; add.u64 %r216,%r207,8; .loc 1 1387 14 and.b32 %r350,%r125,32; .loc 1 1387 7 setp.eq.u32 %r351,%r350,0; @ %r351 bra $L86; .loc 1 1388 34 cvt.s64.s32 %r352,%r212; st.u64 [%r208],%r352; bra $L25; $L86: .loc 1 1391 14 and.b32 %r353,%r125,16; .loc 1 1391 7 setp.eq.u32 %r354,%r353,0; @ %r354 bra $L88; .loc 1 1392 34 cvt.s64.s32 %r355,%r212; st.u64 [%r208],%r355; bra $L25; $L88: .loc 1 1393 19 and.b32 %r356,%r125,64; .loc 1 1393 12 setp.eq.u32 %r357,%r356,0; @ %r357 bra $L89; .loc 1 1394 35 st.u16 [%r208],%r212; bra $L25; $L89: .loc 1 1400 33 st.u32 [%r208],%r212; bra $L25; $L50: .loc 1 1403 10 or.b32 %r125,%r125,16; $L52: .loc 1 1406 13 and.b32 %r358,%r125,32; setp.eq.u32 %r359,%r358,0; @ %r359 bra $L90; add.u64 %r170,%r216,7; and.b64 %r163,%r170,-8; add.u64 %r216,%r163,8; ld.u64 %r130,[%r163]; .loc 1 1407 9 mov.u32 %r131,0; bra $L91; $L90: .loc 1 1406 13 and.b32 %r360,%r125,16; setp.eq.u32 %r361,%r360,0; @ %r361 bra $L92; add.u64 %r151,%r216,7; and.b64 %r152,%r151,-8; add.u64 %r216,%r152,8; ld.u64 %r130,[%r152]; .loc 1 1407 9 mov.u32 %r131,%r358; bra $L91; $L92: .loc 1 1007 10 ld.u32 %r202,[%r216]; add.u64 %r216,%r216,4; .loc 1 1406 13 and.b32 %r362,%r125,64; setp.eq.u32 %r363,%r362,0; @ %r363 bra $L93; cvt.u16.u32 %r364,%r202; cvt.u64.u16 %r130,%r364; .loc 1 1407 9 mov.u32 %r131,%r360; bra $L91; $L93: .loc 1 1406 13 cvt.u64.u32 %r130,%r202; .loc 1 1407 9 mov.u32 %r131,%r362; bra $L91; $L62: .loc 1 1421 25 add.u64 %r173,%r216,7; and.b64 %r181,%r173,-8; add.u64 %r216,%r181,8; ld.u64 %r130,[%r181]; .loc 1 1424 10 or.b32 %r125,%r125,2; .loc 1 1425 10 mov.u32 %r365,48; st.u8 [%frame+192],%r365; .loc 1 1426 10 mov.u32 %r366,120; st.u8 [%frame+193],%r366; .loc 1 1423 10 cvta.const.u64 %r32,$LC1; .loc 1 1422 9 mov.u32 %r131,2; .loc 1 1427 4 bra $L91; $L60: .loc 1 1432 7 add.u64 %r190,%r216,7; and.b64 %r191,%r190,-8; add.u64 %r216,%r191,8; ld.u64 %r124,[%r191]; .loc 1 1436 9 mov.u32 %r367,0; st.u8 [%frame+194],%r367; .loc 1 1442 7 setp.ne.u64 %r368,%r124,0; @ %r368 bra $L94; .loc 1 1444 39 min.u32 %r129,%r128,6; mov.u32 %r132,%r129; .loc 1 1443 8 cvta.const.u64 %r124,$LC2; bra $L77; $L94: .loc 1 1511 7 setp.eq.u32 %r369,%r128,-1; @ %r369 bra $L95; .loc 1 1517 15 cvt.s64.s32 %r373,%r128; mov.u32 %r371,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r371; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r373; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r374,[%value_in]; } .loc 1 1519 8 setp.eq.u64 %r375,%r374,0; @ %r375 bra $L150; .loc 1 1520 15 sub.u64 %r376,%r374,%r124; .loc 1 1520 11 cvt.u32.u64 %r129,%r376; mov.u32 %r126,%r125; .loc 1 932 9 mov.u32 %r128,%r371; bra $L96; $L95: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r378,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r129,%r378; mov.u32 %r126,%r125; .loc 1 932 9 mov.u32 %r128,0; bra $L96; $L51: .loc 1 1528 10 or.b32 %r125,%r125,16; $L64: .loc 1 1531 13 and.b32 %r379,%r125,32; setp.eq.u32 %r380,%r379,0; @ %r380 bra $L97; add.u64 %r180,%r216,7; and.b64 %r186,%r180,-8; add.u64 %r216,%r186,8; ld.u64 %r130,[%r186]; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L97: .loc 1 1531 13 and.b32 %r381,%r125,16; setp.eq.u32 %r382,%r381,0; @ %r382 bra $L98; add.u64 %r189,%r216,7; and.b64 %r185,%r189,-8; add.u64 %r216,%r185,8; ld.u64 %r130,[%r185]; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L98: .loc 1 1007 10 ld.u32 %r203,[%r216]; add.u64 %r216,%r216,4; .loc 1 1531 13 and.b32 %r383,%r125,64; setp.eq.u32 %r384,%r383,0; @ %r384 bra $L99; cvt.u16.u32 %r385,%r203; cvt.u64.u16 %r130,%r385; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L99: .loc 1 1531 13 cvt.u64.u32 %r130,%r203; .loc 1 1532 9 mov.u32 %r131,1; bra $L91; $L34: setp.eq.u32 %r386,%r147,0; @ %r386 bra $L100; cvt.u32.u32 %r387,%r149; st.u8 [%frame+194],%r387; $L100: .loc 1 1535 10 cvta.const.u64 %r32,$LC0; $L69: .loc 1 1539 17 and.b32 %r388,%r125,32; setp.eq.u32 %r389,%r388,0; @ %r389 bra $L101; add.u64 %r172,%r216,7; and.b64 %r154,%r172,-8; add.u64 %r216,%r154,8; ld.u64 %r130,[%r154]; bra $L102; $L101: and.b32 %r390,%r125,16; setp.eq.u32 %r391,%r390,0; @ %r391 bra $L103; add.u64 %r179,%r216,7; and.b64 %r148,%r179,-8; add.u64 %r216,%r148,8; ld.u64 %r130,[%r148]; bra $L102; $L103: .loc 1 1007 10 ld.u32 %r204,[%r216]; add.u64 %r216,%r216,4; .loc 1 1539 17 and.b32 %r392,%r125,64; setp.eq.u32 %r393,%r392,0; @ %r393 bra $L104; cvt.u16.u32 %r394,%r204; cvt.u64.u16 %r130,%r394; bra $L102; $L104: cvt.u64.u32 %r130,%r204; $L102: .loc 1 1542 14 and.b32 %r395,%r125,1; .loc 1 1542 7 setp.eq.u32 %r396,%r395,0; @ %r396 bra $L151; .loc 1 1542 20 setp.eq.u64 %r397,%r130,0; @ %r397 bra $L152; .loc 1 1543 11 mov.u32 %r398,48; st.u8 [%frame+192],%r398; .loc 1 1544 11 st.u8 [%frame+193],%r123; .loc 1 1545 11 or.b32 %r125,%r125,2; .loc 1 1540 9 mov.u32 %r131,2; bra $L91; $L151: mov.u32 %r131,2; bra $L91; $L152: mov.u32 %r131,2; $L91: .loc 1 1552 1 mov.u32 %r135,0; $L84: .loc 1 1197 10 cvt.u32.u32 %r399,%r135; st.u8 [%frame+194],%r399; .loc 1 1558 14 setp.eq.u32 %r400,%r128,-1; @ %r400 bra $L105; .loc 1 1559 11 and.b32 %r126,%r125,-129; .loc 1 1567 15 set.u32.ne.u64 %r402,%r130,0; neg.s32 %r403,%r402; mov.u32 %r401,%r403; .loc 1 1567 28 set.u32.ne.u32 %r405,%r128,0; neg.s32 %r406,%r405; mov.u32 %r404,%r406; .loc 1 1567 20 cvt.u16.u8 %r653,%r401; mov.u16 %r408,%r653; cvt.u16.u8 %r653,%r404; mov.u16 %r409,%r653; or.b16 %r407,%r408,%r409; cvt.u32.u16 %r410,%r407; .loc 1 1567 7 cvt.u16.u8 %r411,%r410; setp.eq.u16 %r412,%r411,0; @ %r412 bra $L106; .loc 1 1559 11 mov.u32 %r125,%r126; $L105: setp.eq.u32 %r413,%r131,1; @ %r413 bra $L107; setp.eq.u32 %r414,%r131,2; @ %r414 bra $L153; mov.u64 %r124,%r645; $L109: mov.u64 %r158,%r124; .loc 1 1576 13 add.u64 %r124,%r124,-1; .loc 1 1576 15 cvt.u32.u64 %r415,%r130; cvt.u16.u8 %r653,%r415; mov.u16 %r417,%r653; and.b16 %r416,%r417,7; cvt.u32.u16 %r418,%r416; cvt.u16.u8 %r653,%r418; mov.u16 %r420,%r653; add.u16 %r419,%r420,48; cvt.u32.u16 %r421,%r419; cvt.s32.s8 %r84,%r421; .loc 1 1576 13 st.u8 [%r124],%r421; .loc 1 1577 14 shr.u64 %r130,%r130,3; .loc 1 1578 15 setp.ne.u64 %r423,%r130,0; @ %r423 bra $L109; .loc 1 1580 22 cvt.u16.u32 %r425,%r84; set.u32.ne.u16 %r426,%r425,48; neg.s32 %r427,%r426; mov.u32 %r424,%r427; .loc 1 1580 9 mov.u32 %r428,%r125; cvt.u16.u8 %r653,%r428; mov.u16 %r430,%r653; and.b16 %r429,%r430,1; cvt.u32.u16 %r431,%r429; .loc 1 1580 22 cvt.u16.u8 %r653,%r424; mov.u16 %r433,%r653; cvt.u16.u8 %r653,%r431; mov.u16 %r434,%r653; and.b16 %r432,%r433,%r434; cvt.u32.u16 %r435,%r432; cvt.u16.u8 %r436,%r435; setp.ne.u16 %r437,%r436,0; @ %r437 bra $L110; .loc 1 1644 21 sub.u64 %r440,%r645,%r124; .loc 1 1644 9 cvt.u32.u64 %r129,%r440; mov.u32 %r126,%r125; bra $L96; $L110: .loc 1 1581 13 add.u64 %r155,%r158,-2; mov.u32 %r441,48; st.u8 [%r124+-1],%r441; .loc 1 1644 21 sub.u64 %r444,%r645,%r155; .loc 1 1644 9 cvt.u32.u64 %r129,%r444; mov.u32 %r126,%r125; .loc 1 1581 13 mov.u64 %r124,%r155; bra $L96; $L157: .loc 1 1559 11 mov.u32 %r125,%r126; $L107: .loc 1 1586 9 setp.gt.u64 %r445,%r130,9; @ %r445 bra $L154; .loc 1 1587 15 cvt.u32.u64 %r446,%r130; cvt.u16.u8 %r653,%r446; mov.u16 %r448,%r653; add.u16 %r447,%r448,48; st.u8 [%frame+167],%r447; .loc 1 1588 7 mov.u32 %r126,%r125; mov.u32 %r129,1; .loc 1 1587 13 add.u64 %r124,%frame,167; .loc 1 1588 7 bra $L96; $L154: .loc 1 1566 7 mov.u64 %r124,%r645; $L112: .loc 1 1594 14 add.u64 %r124,%r124,-1; .loc 1 1594 16 rem.u64 %r450,%r130,10; cvt.u32.u64 %r451,%r450; cvt.u16.u8 %r653,%r451; mov.u16 %r453,%r653; add.u16 %r452,%r453,48; st.u8 [%r124],%r452; mov.u64 %r145,%r130; .loc 1 1615 15 div.u64 %r130,%r130,10; .loc 1 1616 22 setp.gt.u64 %r456,%r145,9; @ %r456 bra $L112; .loc 1 1644 21 sub.u64 %r459,%r645,%r124; .loc 1 1644 9 cvt.u32.u64 %r129,%r459; mov.u32 %r126,%r125; bra $L96; $L153: mov.u64 %r124,%r645; $L108: .loc 1 1621 13 add.u64 %r124,%r124,-1; .loc 1 1621 28 and.b64 %r460,%r130,15; .loc 1 1621 20 add.u64 %r461,%r32,%r460; .loc 1 1621 13 ld.u8 %r462,[%r461]; st.u8 [%r124],%r462; .loc 1 1622 14 shr.u64 %r130,%r130,4; .loc 1 1623 15 setp.ne.u64 %r463,%r130,0; @ %r463 bra $L108; .loc 1 1644 21 sub.u64 %r466,%r645,%r124; .loc 1 1644 9 cvt.u32.u64 %r129,%r466; mov.u32 %r126,%r125; bra $L96; $L106: .loc 1 1641 32 setp.ne.u32 %r467,%r131,0; @ %r467 bra $L155; .loc 1 1641 55 and.b32 %r129,%r125,1; .loc 1 1641 45 setp.eq.u32 %r468,%r129,0; @ %r468 bra $L156; .loc 1 1642 32 mov.u32 %r469,48; st.u8 [%frame+167],%r469; mov.u32 %r128,%r131; add.u64 %r124,%frame,167; bra $L96; $L155: mov.u32 %r128,0; mov.u32 %r129,%r128; .loc 1 1566 7 add.u64 %r124,%frame,168; bra $L96; $L156: mov.u32 %r128,%r131; add.u64 %r124,%frame,168; bra $L96; $L244: setp.eq.u32 %r470,%r147,0; @ %r470 bra $L113; $L147: cvt.u32.u32 %r471,%r149; st.u8 [%frame+194],%r471; $L113: .loc 1 1648 7 setp.eq.u32 %r472,%r123,0; @ %r472 bra $L31; $L148: .loc 1 1652 8 st.u8 [%frame+128],%r123; .loc 1 1654 9 mov.u32 %r473,0; st.u8 [%frame+194],%r473; .loc 1 1655 4 mov.u32 %r132,1; .loc 1 1653 9 mov.u32 %r129,%r132; .loc 1 1651 7 add.u64 %r124,%frame,128; .loc 1 1655 4 bra $L77; $L150: mov.u32 %r129,%r128; mov.u32 %r126,%r125; .loc 1 932 9 mov.u32 %r128,%r371; $L96: .loc 1 1673 10 max.s32 %r132,%r128,%r129; .loc 1 1674 6 ld.u8 %r475,[%frame+194]; cvt.s16.s8 %r474,%r475; setp.eq.u16 %r476,%r474,0; @ %r476 bra $L114; .loc 1 1675 10 add.u32 %r132,%r132,1; $L114: .loc 1 1676 13 and.b32 %r97,%r126,2; .loc 1 1676 6 setp.eq.u32 %r626,%r97,0; @ %r626 bra $L115; .loc 1 1677 10 add.u32 %r132,%r132,2; $L115: .loc 1 1680 14 and.b32 %r98,%r126,132; .loc 1 1681 4 ld.u32 %r198,[%frame+176]; .loc 1 1680 6 setp.ne.u32 %r478,%r98,0; @ %r478 bra $L116; .loc 1 1681 4 sub.u32 %r142,%r127,%r132; setp.le.s32 %r479,%r142,0; @ %r479 bra $L116; setp.le.s32 %r480,%r142,16; @ ! %r480 bra $L245; cvta.const.u64 %r624,blanks$1; bra $L117; $L245: cvta.const.u64 %r624,blanks$1; $L120: st.u64 [%r133],%r624; mov.u64 %r482,16; st.u64 [%r133+8],%r482; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r483,%r198,7; @ %r483 bra $L118; add.u64 %r133,%r133,16; bra $L119; $L118: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r488,[%value_in]; } setp.ne.u32 %r489,%r488,0; @ %r489 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; mov.u64 %r133,%frame; $L119: add.u32 %r142,%r142,-16; setp.gt.s32 %r490,%r142,16; @ %r490 bra $L120; $L117: st.u64 [%r133],%r624; cvt.s64.s32 %r100,%r142; st.u64 [%r133+8],%r100; add.u64 %r193,%r193,%r100; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r492,%r198,7; @ %r492 bra $L121; add.u64 %r133,%r133,16; bra $L116; $L121: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r497,[%value_in]; } setp.ne.u32 %r498,%r497,0; @ %r498 bra $L30; .loc 1 1685 4 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1681 4 mov.u64 %r133,%frame; $L116: .loc 1 1684 6 ld.u8 %r500,[%frame+194]; cvt.s16.s8 %r499,%r500; setp.eq.u16 %r501,%r499,0; @ %r501 bra $L122; .loc 1 1685 4 add.u32 %r198,%r198,1; st.u64 [%r133],%r647; mov.u64 %r503,1; st.u64 [%r133+8],%r503; add.u64 %r193,%r193,1; st.u64 [%frame+184],%r193; st.u32 [%frame+176],%r198; setp.gt.s32 %r504,%r198,7; @ %r504 bra $L123; add.u64 %r133,%r133,16; bra $L122; $L123: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r509,[%value_in]; } setp.ne.u32 %r510,%r509,0; @ %r510 bra $L30; .loc 1 1687 4 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1685 4 mov.u64 %r133,%frame; $L122: .loc 1 1686 6 @ %r626 bra $L124; .loc 1 1687 4 add.u32 %r198,%r198,1; st.u64 [%r133],%r646; mov.u64 %r513,2; st.u64 [%r133+8],%r513; add.u64 %r193,%r193,2; st.u64 [%frame+184],%r193; st.u32 [%frame+176],%r198; setp.gt.s32 %r514,%r198,7; @ %r514 bra $L125; add.u64 %r133,%r133,16; bra $L124; $L125: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r519,[%value_in]; } setp.ne.u32 %r520,%r519,0; @ %r520 bra $L30; .loc 1 1691 4 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1687 4 mov.u64 %r133,%frame; $L124: .loc 1 1690 6 setp.ne.u32 %r521,%r98,128; @ %r521 bra $L126; .loc 1 1691 4 sub.u32 %r139,%r127,%r132; setp.le.s32 %r522,%r139,0; @ %r522 bra $L126; setp.le.s32 %r523,%r139,16; @ ! %r523 bra $L246; cvta.const.u64 %r628,zeroes$0; bra $L127; $L246: cvta.const.u64 %r628,zeroes$0; $L130: st.u64 [%r133],%r628; mov.u64 %r525,16; st.u64 [%r133+8],%r525; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r526,%r198,7; @ %r526 bra $L128; add.u64 %r133,%r133,16; bra $L129; $L128: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r531,[%value_in]; } setp.ne.u32 %r532,%r531,0; @ %r532 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; mov.u64 %r133,%frame; $L129: add.u32 %r139,%r139,-16; setp.gt.s32 %r533,%r139,16; @ %r533 bra $L130; $L127: st.u64 [%r133],%r628; cvt.s64.s32 %r106,%r139; st.u64 [%r133+8],%r106; add.u64 %r193,%r193,%r106; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r535,%r198,7; @ %r535 bra $L131; add.u64 %r133,%r133,16; bra $L126; $L131: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r540,[%value_in]; } setp.ne.u32 %r541,%r540,0; @ %r541 bra $L30; .loc 1 1694 3 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1691 4 mov.u64 %r133,%frame; $L126: .loc 1 1694 3 sub.u32 %r160,%r128,%r129; setp.le.s32 %r542,%r160,0; @ %r542 bra $L132; setp.le.s32 %r543,%r160,16; @ ! %r543 bra $L247; cvta.const.u64 %r628,zeroes$0; bra $L133; $L247: cvta.const.u64 %r628,zeroes$0; $L136: st.u64 [%r133],%r628; mov.u64 %r545,16; st.u64 [%r133+8],%r545; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r546,%r198,7; @ %r546 bra $L134; add.u64 %r133,%r133,16; bra $L135; $L134: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r551,[%value_in]; } setp.ne.u32 %r552,%r551,0; @ %r552 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; mov.u64 %r133,%frame; $L135: add.u32 %r160,%r160,-16; setp.gt.s32 %r553,%r160,16; @ %r553 bra $L136; $L133: st.u64 [%r133],%r628; cvt.s64.s32 %r109,%r160; st.u64 [%r133+8],%r109; add.u64 %r193,%r193,%r109; st.u64 [%frame+184],%r193; add.u32 %r198,%r198,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r555,%r198,7; @ %r555 bra $L137; add.u64 %r133,%r133,16; bra $L132; $L137: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r560,[%value_in]; } setp.ne.u32 %r561,%r560,0; @ %r561 bra $L30; .loc 1 1760 3 ld.u64 %r193,[%frame+184]; ld.u32 %r198,[%frame+176]; .loc 1 1694 3 mov.u64 %r133,%frame; $L132: .loc 1 1760 3 st.u64 [%r133],%r124; cvt.s64.s32 %r111,%r129; st.u64 [%r133+8],%r111; add.u64 %r193,%r193,%r111; st.u64 [%frame+184],%r193; add.u32 %r112,%r198,1; st.u32 [%frame+176],%r112; setp.gt.s32 %r562,%r112,7; @ %r562 bra $L138; add.u64 %r134,%r133,16; bra $L139; $L138: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r567,[%value_in]; } setp.ne.u32 %r568,%r567,0; @ %r568 bra $L30; .loc 1 1764 4 ld.u64 %r193,[%frame+184]; .loc 1 1760 3 mov.u64 %r134,%frame; $L139: .loc 1 1763 13 and.b32 %r569,%r126,4; .loc 1 1763 6 setp.eq.u32 %r570,%r569,0; @ %r570 bra $L140; .loc 1 1764 4 sub.u32 %r162,%r127,%r132; setp.le.s32 %r571,%r162,0; @ %r571 bra $L140; ld.u32 %r199,[%frame+176]; setp.le.s32 %r572,%r162,16; @ ! %r572 bra $L248; cvta.const.u64 %r624,blanks$1; bra $L141; $L248: cvta.const.u64 %r624,blanks$1; $L144: st.u64 [%r134],%r624; mov.u64 %r574,16; st.u64 [%r134+8],%r574; add.u64 %r193,%r193,16; st.u64 [%frame+184],%r193; add.u32 %r199,%r199,1; st.u32 [%frame+176],%r199; setp.gt.s32 %r575,%r199,7; @ %r575 bra $L142; add.u64 %r134,%r134,16; bra $L143; $L142: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r580,[%value_in]; } setp.ne.u32 %r581,%r580,0; @ %r581 bra $L30; ld.u64 %r193,[%frame+184]; ld.u32 %r199,[%frame+176]; mov.u64 %r134,%frame; $L143: add.u32 %r162,%r162,-16; setp.gt.s32 %r582,%r162,16; @ %r582 bra $L144; $L141: st.u64 [%r134],%r624; cvt.s64.s32 %r116,%r162; st.u64 [%r134+8],%r116; add.u64 %r193,%r193,%r116; st.u64 [%frame+184],%r193; add.u32 %r117,%r199,1; st.u32 [%frame+176],%r117; setp.le.s32 %r584,%r117,7; @ %r584 bra $L140; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r589,[%value_in]; } setp.ne.u32 %r590,%r589,0; @ %r590 bra $L30; .loc 1 1769 3 ld.u64 %r193,[%frame+184]; $L140: .loc 1 1767 33 max.s32 %r591,%r127,%r132; .loc 1 1767 7 add.u32 %r212,%r212,%r591; .loc 1 1769 3 setp.eq.u64 %r592,%r193,0; @ %r592 bra $L145; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r645; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r597,[%value_in]; } setp.ne.u32 %r598,%r597,0; @ %r598 bra $L30; .loc 1 918 4 ld.u64 %r193,[%frame+184]; $L145: .loc 1 1769 3 mov.u32 %r599,0; st.u32 [%frame+176],%r599; mov.u64 %r133,%frame; bra $L25; $L31: .loc 1 1777 2 setp.eq.u64 %r600,%r193,0; @ %r600 bra $L30; add.u64 %r604,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r213; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r214; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r604; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r605,[%value_in]; } $L30: .loc 1 1784 31 ld.u16 %r607,[%r214+16]; and.b16 %r606,%r607,64; setp.eq.u16 %r608,%r606,0; selp.u32 %r212,%r212,-1,%r608; bra $L21; $L77: .loc 1 932 9 mov.u32 %r126,%r125; mov.u32 %r128,0; bra $L114; $L83: .loc 1 1558 14 setp.ne.u32 %r610,%r128,-1; @ %r610 bra $L146; bra $L107; $L45: setp.ne.u32 %r611,%r147,0; @ ! %r611 bra $L148; bra $L147; $L146: .loc 1 1559 11 and.b32 %r126,%r125,-129; .loc 1 1567 28 set.u32.ne.u32 %r613,%r128,0; neg.s32 %r614,%r613; mov.u32 %r612,%r614; .loc 1 1567 15 set.u32.ne.u64 %r616,%r130,0; neg.s32 %r617,%r616; mov.u32 %r615,%r617; .loc 1 1567 20 cvt.u16.u8 %r653,%r612; mov.u16 %r619,%r653; cvt.u16.u8 %r653,%r615; mov.u16 %r620,%r653; or.b16 %r618,%r619,%r620; cvt.u32.u16 %r621,%r618; .loc 1 1567 7 cvt.u16.u8 %r622,%r621; setp.ne.u16 %r623,%r622,0; @ %r623 bra $L157; mov.u32 %r128,0; mov.u32 %r129,%r128; .loc 1 1566 7 add.u64 %r124,%frame,168; bra $L96; $L21: .loc 1 1786 1 mov.u32 %value,%r212; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1501 0 0 0 644 50308 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _sungetc_r .visible .func (.param .u32 %value_out) _sungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .visible .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _sfread_r .visible .func (.param .u64 %value_out) _sfread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: __ssvfiscanf_r .visible .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DECL: __submore .extern .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: _sungetc_r .visible .func (.param .u32 %value_out) _sungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r28; .reg .u64 %r32; .reg .u32 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u32 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r70; .reg .u32 %r71; mov.u64 %r42,%ar0; mov.u32 %r43,%ar1; mov.u64 %r44,%ar2; .loc 1 267 6 setp.ne.u32 %r45,%r43,-1; @ %r45 bra $L2; $L6: .loc 1 268 12 mov.u32 %r41,-1; bra $L1; $L2: .loc 1 271 14 ld.u16 %r47,[%r44+16]; and.b16 %r46,%r47,-33; st.u16 [%r44+16],%r46; .loc 1 272 7 mov.u32 %r48,%r43; and.b32 %r41,%r43,255; .loc 1 281 13 ld.u32 %r39,[%r44+8]; .loc 1 279 6 ld.u64 %r49,[%r44+88]; setp.eq.u64 %r50,%r49,0; @ %r50 bra $L4; .loc 1 281 10 ld.u32 %r51,[%r44+96]; setp.le.s32 %r52,%r51,%r39; @ %r52 bra $L5; $L7: .loc 1 285 12 ld.u64 %r28,[%r44]; .loc 1 285 8 add.u64 %r53,%r28,-1; .loc 1 285 17 st.u64 [%r44],%r53; st.u8 [%r28+-1],%r48; .loc 1 286 13 ld.u32 %r56,[%r44+8]; add.u32 %r55,%r56,1; st.u32 [%r44+8],%r55; .loc 1 287 14 bra $L1; $L5: .loc 1 281 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r59,[%value_in]; } .loc 1 281 35 setp.ne.u32 %r60,%r59,0; @ ! %r60 bra $L7; bra $L6; $L4: .loc 1 296 14 ld.u64 %r32,[%r44+24]; .loc 1 296 34 ld.u64 %r40,[%r44]; .loc 1 296 6 setp.eq.u64 %r61,%r32,0; @ %r61 bra $L8; .loc 1 296 29 setp.ge.u64 %r62,%r32,%r40; @ %r62 bra $L8; .loc 1 296 64 ld.u8 %r63,[%r40+-1]; .loc 1 296 55 setp.ne.u32 %r64,%r63,%r41; @ %r64 bra $L8; .loc 1 298 13 add.u64 %r65,%r40,-1; st.u64 [%r44],%r65; .loc 1 299 13 add.u32 %r66,%r39,1; st.u32 [%r44+8],%r66; .loc 1 300 14 bra $L1; $L8: .loc 1 308 11 st.u32 [%r44+112],%r39; .loc 1 309 11 st.u64 [%r44+104],%r40; .loc 1 310 19 add.u64 %r67,%r44,116; .loc 1 310 17 st.u64 [%r44+88],%r67; .loc 1 311 17 mov.u32 %r68,3; st.u32 [%r44+96],%r68; .loc 1 312 37 st.u8 [%r44+118],%r48; .loc 1 313 12 add.u64 %r70,%r44,118; .loc 1 313 10 st.u64 [%r44],%r70; .loc 1 314 10 mov.u32 %r71,1; st.u32 [%r44+8],%r71; $L1: .loc 1 316 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ssrefill_r .visible .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r24; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u64 %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u16 %r42; .reg .u16 %r43; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 327 7 ld.u64 %r22,[%r31+88]; .loc 1 327 6 setp.eq.u64 %r32,%r22,0; @ %r32 bra $L13; .loc 1 329 7 add.u64 %r33,%r31,116; setp.eq.u64 %r34,%r22,%r33; @ %r34 bra $L14; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _free_r,(%out_arg1,%out_arg2); } $L14: mov.u64 %r37,0; st.u64 [%r31+88],%r37; .loc 1 330 23 ld.u32 %r24,[%r31+112]; .loc 1 330 19 st.u32 [%r31+8],%r24; .loc 1 330 10 setp.eq.u32 %r38,%r24,0; @ %r38 bra $L13; .loc 1 332 18 ld.u64 %r39,[%r31+104]; st.u64 [%r31],%r39; .loc 1 333 11 mov.u32 %r29,0; bra $L12; $L13: .loc 1 338 10 ld.u64 %r40,[%r31+24]; st.u64 [%r31],%r40; .loc 1 339 10 mov.u32 %r41,0; st.u32 [%r31+8],%r41; .loc 1 340 14 ld.u16 %r43,[%r31+16]; or.b16 %r42,%r43,32; st.u16 [%r31+16],%r42; mov.u32 %r29,-1; $L12: .loc 1 342 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _sfread_r .visible .func (.param .u64 %value_out) _sfread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r22; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r40; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .pred %r50; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .pred %r60; .reg .u64 %r63; .reg .pred %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .pred %r72; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r83; mov.u64 %r45,%ar0; mov.u64 %r46,%ar1; mov.u64 %r47,%ar2; mov.u64 %r48,%ar3; mov.u64 %r49,%ar4; .loc 1 356 14 mul.lo.u64 %r44,%r48,%r47; .loc 1 356 6 setp.eq.u64 %r50,%r44,0; @ ! %r50 bra $L40; bra $L22; $L29: .loc 1 362 16 mov.u64 %r22,%r44; .loc 1 329 7 add.u64 %r83,%r49,116; $L27: .loc 1 364 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r54,[%value_in]; } .loc 1 365 14 ld.u64 %r56,[%r49]; add.u64 %r55,%r56,%r28; st.u64 [%r49],%r55; .loc 1 366 14 mov.u32 %r57,0; st.u32 [%r49+8],%r57; .loc 1 367 9 add.u64 %r46,%r46,%r28; mov.u64 %r26,%r22; .loc 1 368 13 sub.u64 %r22,%r22,%r28; .loc 1 327 7 ld.u64 %r38,[%r49+88]; .loc 1 327 6 setp.eq.u64 %r58,%r38,0; @ %r58 bra $L25; .loc 1 329 7 setp.eq.u64 %r60,%r38,%r83; @ %r60 bra $L26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call _free_r,(%out_arg1,%out_arg2); } $L26: mov.u64 %r63,0; st.u64 [%r49+88],%r63; .loc 1 330 23 ld.u32 %r40,[%r49+112]; .loc 1 330 19 st.u32 [%r49+8],%r40; .loc 1 330 10 setp.eq.u32 %r64,%r40,0; @ %r64 bra $L25; .loc 1 332 22 ld.u64 %r36,[%r49+104]; .loc 1 332 18 st.u64 [%r49],%r36; .loc 1 362 21 cvt.s64.s32 %r28,%r40; .loc 1 362 16 setp.lt.u64 %r65,%r28,%r22; @ %r65 bra $L27; bra $L28; $L25: .loc 1 338 10 ld.u64 %r66,[%r49+24]; st.u64 [%r49],%r66; .loc 1 339 10 mov.u32 %r67,0; st.u32 [%r49+8],%r67; .loc 1 340 14 ld.u16 %r69,[%r49+16]; or.b16 %r68,%r69,32; st.u16 [%r49+16],%r68; .loc 1 372 25 add.u64 %r70,%r44,%r28; sub.u64 %r71,%r70,%r26; .loc 1 372 34 div.u64 %r44,%r71,%r47; bra $L22; $L40: .loc 1 362 21 ld.s32 %r28,[%r49+8]; .loc 1 375 41 ld.u64 %r36,[%r49]; .loc 1 362 16 setp.gt.u64 %r72,%r44,%r28; @ %r72 bra $L29; mov.u64 %r22,%r44; $L28: .loc 1 375 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r22; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r76,[%value_in]; } .loc 1 376 10 cvt.u32.u64 %r77,%r22; ld.u32 %r79,[%r49+8]; sub.u32 %r78,%r79,%r77; st.u32 [%r49+8],%r78; .loc 1 377 10 ld.u64 %r81,[%r49]; add.u64 %r80,%r81,%r22; st.u64 [%r49],%r80; .loc 1 378 10 mov.u64 %r44,%r48; $L22: .loc 1 379 1 mov.u64 %value,%r44; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ssvfiscanf_r .visible .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,304; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r34; .reg .u32 %r41; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r75; .reg .u32 %r90; .reg .u32 %r107; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u64 %r154; .reg .u64 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u32 %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u64 %r180; .reg .u64 %r185; .reg .u32 %r187; .reg .u64 %r189; .reg .u64 %r192; .reg .u64 %r197; .reg .u64 %r198; .reg .u32 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u32 %r203; .reg .u32 %r204; .reg .u64 %r208; .reg .u64 %r209; .reg .u64 %r212; .reg .u64 %r213; .reg .u32 %r215; .reg .u64 %r219; .reg .u32 %r221; .reg .u64 %r225; .reg .u32 %r227; .reg .u64 %r233; .reg .u32 %r235; .reg .u32 %r240; .reg .u64 %r241; .reg .u64 %r245; .reg .u32 %r247; .reg .u64 %r251; .reg .u32 %r253; .reg .u64 %r254; .reg .u64 %r258; .reg .u32 %r260; .reg .u64 %r265; .reg .u32 %r267; .reg .u64 %r271; .reg .u32 %r273; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r284; .reg .u64 %r288; .reg .u64 %r290; .reg .u64 %r292; .reg .u64 %r296; .reg .u64 %r301; .reg .u64 %r304; .reg .u32 %r308; .reg .u64 %r309; .reg .u64 %r310; .reg .u64 %r311; .reg .u64 %r312; .reg .u64 %r313; .reg .u32 %r314; .reg .u64 %r316; .reg .u64 %r317; .reg .u32 %r320; .reg .u64 %r321; .reg .u32 %r327; .reg .u64 %r329; .reg .u64 %r330; .reg .u32 %r331; .reg .u64 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u16 %r336; .reg .u16 %r337; .reg .pred %r338; .reg .u16 %r339; .reg .u32 %r341; .reg .u32 %r342; .reg .pred %r343; .reg .pred %r344; .reg .u64 %r345; .reg .u32 %r346; .reg .u64 %r348; .reg .u16 %r351; .reg .u16 %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r358; .reg .u64 %r361; .reg .pred %r362; .reg .u64 %r363; .reg .u32 %r364; .reg .u16 %r365; .reg .u16 %r366; .reg .u64 %r367; .reg .u64 %r369; .reg .u16 %r372; .reg .u16 %r374; .reg .pred %r375; .reg .u32 %r376; .reg .u64 %r377; .reg .pred %r378; .reg .u16 %r379; .reg .pred %r380; .reg .pred %r382; .reg .pred %r384; .reg .pred %r386; .reg .pred %r388; .reg .pred %r390; .reg .pred %r392; .reg .pred %r394; .reg .pred %r396; .reg .pred %r398; .reg .pred %r400; .reg .pred %r402; .reg .pred %r404; .reg .pred %r406; .reg .pred %r408; .reg .pred %r410; .reg .pred %r412; .reg .pred %r414; .reg .pred %r416; .reg .pred %r418; .reg .pred %r420; .reg .pred %r422; .reg .pred %r424; .reg .pred %r426; .reg .pred %r428; .reg .pred %r430; .reg .u32 %r431; .reg .pred %r432; .reg .pred %r433; .reg .pred %r435; .reg .u64 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .u32 %r441; .reg .u16 %r442; .reg .u16 %r443; .reg .u16 %r444; .reg .u16 %r445; .reg .pred %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u64 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .u32 %r453; .reg .u32 %r454; .reg .u32 %r455; .reg .u16 %r456; .reg .u16 %r457; .reg .u16 %r458; .reg .u32 %r459; .reg .u16 %r460; .reg .pred %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u16 %r464; .reg .pred %r465; .reg .u32 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .pred %r469; .reg .u32 %r470; .reg .pred %r471; .reg .u64 %r473; .reg .u64 %r474; .reg .u64 %r475; .reg .u64 %r476; .reg .u32 %r477; .reg .u64 %r480; .reg .u32 %r481; .reg .pred %r482; .reg .u64 %r483; .reg .u32 %r484; .reg .pred %r485; .reg .u32 %r486; .reg .pred %r487; .reg .u64 %r488; .reg .u32 %r489; .reg .pred %r490; .reg .u64 %r491; .reg .u32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .pred %r496; .reg .u64 %r499; .reg .pred %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .u32 %r503; .reg .u16 %r504; .reg .u16 %r505; .reg .u32 %r506; .reg .pred %r507; .reg .u64 %r508; .reg .u64 %r510; .reg .u16 %r513; .reg .u16 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .pred %r518; .reg .pred %r519; .reg .pred %r521; .reg .u64 %r524; .reg .pred %r525; .reg .u64 %r526; .reg .u32 %r527; .reg .u16 %r528; .reg .u16 %r529; .reg .u64 %r530; .reg .u64 %r532; .reg .u16 %r535; .reg .u16 %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .pred %r541; .reg .u32 %r542; .reg .pred %r543; .reg .pred %r545; .reg .u64 %r546; .reg .pred %r547; .reg .pred %r549; .reg .u64 %r552; .reg .pred %r553; .reg .pred %r555; .reg .u64 %r556; .reg .u32 %r557; .reg .u16 %r558; .reg .u16 %r559; .reg .pred %r560; .reg .u32 %r562; .reg .u64 %r563; .reg .u32 %r564; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r570; .reg .pred %r571; .reg .u32 %r572; .reg .pred %r573; .reg .u64 %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .pred %r578; .reg .pred %r579; .reg .u32 %r580; .reg .u64 %r581; .reg .pred %r582; .reg .u32 %r583; .reg .u64 %r584; .reg .pred %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r589; .reg .u64 %r592; .reg .pred %r593; .reg .u64 %r594; .reg .u32 %r595; .reg .u16 %r596; .reg .u16 %r597; .reg .u64 %r599; .reg .u64 %r600; .reg .u16 %r601; .reg .u32 %r602; .reg .pred %r603; .reg .pred %r604; .reg .u32 %r605; .reg .u32 %r606; .reg .u64 %r607; .reg .u32 %r608; .reg .pred %r609; .reg .u32 %r610; .reg .u32 %r611; .reg .u64 %r612; .reg .u32 %r613; .reg .u64 %r614; .reg .pred %r615; .reg .u32 %r616; .reg .pred %r617; .reg .pred %r618; .reg .pred %r620; .reg .u64 %r623; .reg .pred %r624; .reg .u64 %r625; .reg .u32 %r626; .reg .u16 %r627; .reg .u16 %r628; .reg .pred %r629; .reg .u64 %r631; .reg .u64 %r632; .reg .u16 %r633; .reg .u32 %r634; .reg .pred %r635; .reg .u64 %r636; .reg .pred %r637; .reg .u32 %r638; .reg .pred %r639; .reg .u64 %r640; .reg .u64 %r642; .reg .u16 %r644; .reg .u16 %r645; .reg .u32 %r646; .reg .u32 %r647; .reg .pred %r648; .reg .pred %r649; .reg .u32 %r650; .reg .u64 %r651; .reg .pred %r652; .reg .u32 %r653; .reg .u64 %r654; .reg .pred %r655; .reg .pred %r656; .reg .pred %r657; .reg .pred %r659; .reg .u64 %r662; .reg .pred %r663; .reg .u64 %r664; .reg .u32 %r665; .reg .u16 %r666; .reg .u16 %r667; .reg .u64 %r668; .reg .u64 %r670; .reg .u16 %r673; .reg .u16 %r675; .reg .pred %r676; .reg .pred %r677; .reg .u32 %r678; .reg .u32 %r679; .reg .u64 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u32 %r683; .reg .u32 %r684; .reg .u64 %r685; .reg .u32 %r686; .reg .u64 %r687; .reg .pred %r688; .reg .u64 %r689; .reg .u32 %r690; .reg .pred %r691; .reg .pred %r692; .reg .pred %r694; .reg .u64 %r697; .reg .pred %r698; .reg .u64 %r699; .reg .u32 %r700; .reg .u16 %r701; .reg .u16 %r702; .reg .u64 %r703; .reg .u64 %r704; .reg .u64 %r706; .reg .u16 %r709; .reg .u16 %r711; .reg .pred %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .u64 %r715; .reg .pred %r716; .reg .u32 %r717; .reg .u16 %r718; .reg .pred %r719; .reg .pred %r721; .reg .pred %r723; .reg .pred %r725; .reg .u16 %r726; .reg .u32 %r728; .reg .u16 %r730; .reg .u16 %r732; .reg .pred %r733; .reg .u64 %r734; .reg .u64 %r735; .reg .u64 %r736; .reg .u64 %r737; .reg .pred %r739; .reg .pred %r741; .reg .pred %r743; .reg .pred %r745; .reg .pred %r747; .reg .pred %r749; .reg .u32 %r750; .reg .pred %r751; .reg .pred %r752; .reg .u32 %r753; .reg .pred %r754; .reg .pred %r755; .reg .u64 %r756; .reg .u64 %r757; .reg .u64 %r758; .reg .u64 %r759; .reg .pred %r760; .reg .pred %r761; .reg .u32 %r762; .reg .pred %r763; .reg .u32 %r764; .reg .pred %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .pred %r768; .reg .pred %r769; .reg .pred %r771; .reg .u64 %r774; .reg .pred %r775; .reg .u64 %r776; .reg .u32 %r777; .reg .u16 %r778; .reg .u16 %r779; .reg .pred %r780; .reg .u32 %r781; .reg .pred %r782; .reg .pred %r784; .reg .u32 %r788; .reg .u32 %r789; .reg .pred %r791; .reg .u32 %r792; .reg .pred %r793; .reg .u32 %r794; .reg .u64 %r797; .reg .u64 %r800; .reg .u64 %r801; .reg .u32 %r802; .reg .pred %r803; .reg .u32 %r804; .reg .pred %r805; .reg .u64 %r806; .reg .u32 %r807; .reg .pred %r808; .reg .u64 %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u64 %r812; .reg .pred %r813; .reg .u64 %r819; .reg .u64 %r825; .reg .u64 %r826; .reg .u64 %r827; .reg .u64 %r829; .reg .u32 %r830; .reg .pred %r832; .reg .u16 %r833; .reg .u16 %r834; .reg .pred %r835; .reg .u64 %r838; .reg .u32 %r839; .reg .u64 %r848; .reg .u64 %r849; .reg .u16 %r850; mov.u64 %r332,%ar0; mov.u64 %r333,%ar1; mov.u64 %r334,%ar2; mov.u64 %r335,%ar3; .loc 1 591 3 ld.u16 %r337,[%r333+16]; and.b16 %r336,%r337,8192; setp.ne.u16 %r338,%r336,0; @ %r338 bra $L42; or.b16 %r339,%r337,8192; st.u16 [%r333+16],%r339; ld.u32 %r342,[%r333+172]; and.b32 %r341,%r342,-8193; st.u32 [%r333+172],%r341; $L42: .loc 1 602 12 ld.u8 %r28,[%r334]; .loc 1 611 11 add.u64 %r180,%r334,1; .loc 1 613 10 setp.eq.u32 %r343,%r28,0; @ %r343 bra $L169; mov.u64 %r67,0; mov.u32 %r169,0; mov.u32 %r141,%r169; mov.u32 %r331,%r169; cvta.const.u64 %r838,_ctype_+1; .loc 1 329 7 add.u64 %r848,%r333,116; .loc 1 1342 11 add.u64 %r849,%frame,256; bra $L44; $L50: .loc 1 602 12 ld.u8 %r28,[%r180]; .loc 1 611 11 add.u64 %r180,%r180,1; .loc 1 613 10 setp.eq.u32 %r344,%r28,0; @ %r344 bra $L41; $L44: .loc 1 615 26 cvt.u32.u32 %r346,%r28; cvt.u64.u8 %r345,%r346; add.u64 %r348,%r838,%r345; .loc 1 615 23 ld.u8 %r850,[%r348]; mov.u16 %r351,%r850; and.b16 %r353,%r351,8; setp.eq.u16 %r354,%r353,0; @ %r354 bra $L45; .loc 1 649 12 ld.u32 %r41,[%r333+8]; $L51: .loc 1 619 11 setp.gt.s32 %r355,%r41,0; @ %r355 bra $L46; .loc 1 327 7 ld.u64 %r213,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r356,%r213,0; @ %r356 bra $L47; .loc 1 329 7 setp.eq.u64 %r358,%r213,%r848; @ %r358 bra $L48; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r213; call _free_r,(%out_arg1,%out_arg2); } $L48: mov.u64 %r361,0; st.u64 [%r333+88],%r361; .loc 1 330 23 ld.u32 %r215,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r215; .loc 1 330 10 setp.eq.u32 %r362,%r215,0; @ %r362 bra $L47; .loc 1 332 22 ld.u64 %r313,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r313; bra $L49; $L47: .loc 1 338 10 ld.u64 %r363,[%r333+24]; st.u64 [%r333],%r363; .loc 1 339 10 mov.u32 %r364,0; st.u32 [%r333+8],%r364; .loc 1 340 14 ld.u16 %r366,[%r333+16]; or.b16 %r365,%r366,32; st.u16 [%r333+16],%r365; bra $L50; $L46: .loc 1 619 28 ld.u64 %r313,[%r333]; $L49: ld.u8 %r367,[%r313]; add.u64 %r369,%r838,%r367; .loc 1 619 24 ld.u8 %r850,[%r369]; mov.u16 %r372,%r850; and.b16 %r374,%r372,8; setp.eq.u16 %r375,%r374,0; @ %r375 bra $L50; .loc 1 621 13 add.u32 %r141,%r141,1; .loc 1 621 23 ld.u32 %r376,[%r333+8]; add.u32 %r41,%r376,-1; st.u32 [%r333+8],%r41; .loc 1 621 33 add.u64 %r377,%r313,1; st.u64 [%r333],%r377; .loc 1 619 11 bra $L51; $L45: .loc 1 625 10 setp.ne.u32 %r378,%r28,37; @ %r378 bra $L52; .loc 1 640 11 ld.u8 %r314,[%r180]; mov.u64 %r25,%r180; .loc 1 628 13 mov.u32 %r166,0; .loc 1 627 13 mov.u64 %r163,0; bra $L53; $L308: .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 663 10 mov.u32 %r166,16; .loc 1 669 8 mov.u64 %r163,0; $L53: .loc 1 640 15 add.u64 %r180,%r25,1; .loc 1 642 7 cvt.u16.u32 %r379,%r314; setp.eq.u16 %r380,%r379,100; @ %r380 bra $L170; setp.gt.u16 %r382,%r379,100; @ %r382 bra $L55; setp.eq.u16 %r384,%r379,76; @ %r384 bra $L56; setp.gt.u16 %r386,%r379,76; @ %r386 bra $L57; setp.gt.u16 %r388,%r379,57; @ %r388 bra $L58; setp.gt.u16 %r390,%r379,47; @ %r390 bra $L59; setp.eq.u16 %r392,%r379,37; @ %r392 bra $L52; setp.eq.u16 %r394,%r379,42; @ %r394 bra $L60; bra $L41; $L58: setp.eq.u16 %r396,%r379,68; @ %r396 bra $L61; bra $L41; $L57: setp.eq.u16 %r398,%r379,91; @ %r398 bra $L62; setp.gt.u16 %r400,%r379,91; @ %r400 bra $L63; setp.eq.u16 %r402,%r379,79; @ %r402 bra $L64; setp.eq.u16 %r404,%r379,88; @ %r404 bra $L65; bra $L41; $L63: setp.eq.u16 %r406,%r379,99; @ %r406 bra $L66; bra $L41; $L55: setp.eq.u16 %r408,%r379,111; @ %r408 bra $L171; setp.gt.u16 %r410,%r379,111; @ %r410 bra $L67; setp.eq.u16 %r412,%r379,108; @ %r412 bra $L68; setp.gt.u16 %r414,%r379,108; @ %r414 bra $L69; setp.eq.u16 %r416,%r379,104; @ %r416 bra $L70; setp.eq.u16 %r418,%r379,105; @ %r418 bra $L172; bra $L41; $L69: setp.eq.u16 %r420,%r379,110; @ %r420 bra $L71; bra $L41; $L67: setp.eq.u16 %r422,%r379,115; @ %r422 bra $L173; setp.gt.u16 %r424,%r379,115; @ %r424 bra $L72; setp.eq.u16 %r426,%r379,112; @ %r426 bra $L73; bra $L41; $L72: setp.eq.u16 %r428,%r379,117; @ %r428 bra $L174; setp.eq.u16 %r430,%r379,120; @ %r430 bra $L65; bra $L41; $L52: .loc 1 649 11 ld.u32 %r431,[%r333+8]; setp.gt.s32 %r432,%r431,0; @ %r432 bra $L74; .loc 1 327 7 ld.u64 %r219,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r433,%r219,0; @ %r433 bra $L75; .loc 1 329 7 setp.eq.u64 %r435,%r219,%r848; @ %r435 bra $L76; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r219; call _free_r,(%out_arg1,%out_arg2); } $L76: mov.u64 %r438,0; st.u64 [%r333+88],%r438; .loc 1 330 23 ld.u32 %r221,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r221; .loc 1 330 10 setp.eq.u32 %r439,%r221,0; @ %r439 bra $L75; .loc 1 332 22 ld.u64 %r312,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r312; bra $L77; $L75: .loc 1 338 10 ld.u64 %r440,[%r333+24]; st.u64 [%r333],%r440; .loc 1 339 10 mov.u32 %r441,0; st.u32 [%r333+8],%r441; .loc 1 340 14 ld.u16 %r443,[%r333+16]; or.b16 %r442,%r443,32; st.u16 [%r333+16],%r442; bra $L78; $L74: .loc 1 651 15 ld.u64 %r312,[%r333]; $L77: .loc 1 651 11 ld.u8 %r444,[%r312]; ld.u8 %r445,[%r180+-1]; setp.ne.u16 %r446,%r444,%r445; @ %r446 bra $L41; .loc 1 653 14 ld.u32 %r448,[%r333+8]; add.u32 %r447,%r448,-1; st.u32 [%r333+8],%r447; .loc 1 653 24 add.u64 %r449,%r312,1; st.u64 [%r333],%r449; .loc 1 654 13 add.u32 %r141,%r141,1; bra $L50; $L60: .loc 1 660 7 set.u32.ne.u32 %r451,%r166,0; neg.s32 %r452,%r451; mov.u32 %r450,%r452; .loc 1 661 8 set.u32.ne.u64 %r454,%r163,0; neg.s32 %r455,%r454; mov.u32 %r453,%r455; cvt.u16.u8 %r850,%r450; mov.u16 %r457,%r850; cvt.u16.u8 %r850,%r453; mov.u16 %r458,%r850; or.b16 %r456,%r457,%r458; cvt.u32.u16 %r459,%r456; cvt.u16.u8 %r460,%r459; setp.ne.u16 %r461,%r460,0; @ ! %r461 bra $L308; bra $L41; $L68: .loc 1 666 14 and.b32 %r462,%r166,15; .loc 1 666 7 setp.ne.u32 %r463,%r462,0; @ %r463 bra $L41; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 669 7 cvt.u16.u32 %r464,%r314; setp.ne.u16 %r465,%r464,108; @ %r465 bra $L80; .loc 1 672 14 or.b32 %r166,%r166,2; .loc 1 640 11 ld.u8 %r314,[%r25+2]; .loc 1 671 8 add.u64 %r25,%r25,2; bra $L53; $L80: .loc 1 676 12 or.b32 %r166,%r166,1; .loc 1 640 15 mov.u64 %r25,%r180; bra $L53; $L56: .loc 1 679 14 and.b32 %r466,%r166,15; .loc 1 679 7 setp.ne.u32 %r467,%r466,0; @ %r467 bra $L41; .loc 1 681 10 or.b32 %r166,%r166,2; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 682 4 bra $L53; $L70: .loc 1 684 14 and.b32 %r468,%r166,15; .loc 1 684 7 setp.ne.u32 %r469,%r468,0; @ %r469 bra $L41; .loc 1 694 12 or.b32 %r166,%r166,4; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 695 4 bra $L53; $L59: .loc 1 760 14 and.b32 %r470,%r166,143; .loc 1 760 7 setp.ne.u32 %r471,%r470,0; @ %r471 bra $L41; .loc 1 762 18 shl.b64 %r473,%r163,2; add.u64 %r474,%r473,%r163; add.u64 %r475,%r474,%r474; .loc 1 762 23 cvt.u32.u32 %r477,%r314; cvt.u64.u8 %r476,%r477; add.u64 %r301,%r475,%r476; .loc 1 762 10 add.u64 %r163,%r301,-48; .loc 1 669 8 ld.u8 %r314,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r180; .loc 1 763 4 bra $L53; $L61: .loc 1 789 10 or.b32 %r166,%r166,1; .loc 1 793 9 mov.u64 %r67,_strtol_r; .loc 1 794 9 mov.u32 %r169,10; .loc 1 792 6 mov.u32 %r204,3; bra $L54; $L64: .loc 1 804 10 or.b32 %r166,%r166,1; .loc 1 808 9 mov.u64 %r67,_strtoul_r; .loc 1 809 9 mov.u32 %r169,8; .loc 1 807 6 mov.u32 %r204,3; bra $L54; $L65: .loc 1 820 10 or.b32 %r166,%r166,512; .loc 1 822 9 mov.u64 %r67,_strtoul_r; .loc 1 823 9 mov.u32 %r169,16; .loc 1 821 6 mov.u32 %r204,3; .loc 1 824 4 bra $L54; $L62: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r180; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r480,[%value_in]; } mov.u64 %r180,%r480; .loc 1 853 10 or.b32 %r166,%r166,64; .loc 1 854 6 mov.u32 %r204,1; .loc 1 855 4 bra $L54; $L66: .loc 1 864 10 or.b32 %r166,%r166,64; .loc 1 865 6 mov.u32 %r204,0; .loc 1 866 4 bra $L54; $L73: .loc 1 869 10 or.b32 %r166,%r166,544; .loc 1 871 9 mov.u64 %r67,_strtoul_r; .loc 1 872 9 mov.u32 %r169,16; .loc 1 870 6 mov.u32 %r204,3; .loc 1 873 4 bra $L54; $L71: .loc 1 876 14 and.b32 %r481,%r166,16; .loc 1 876 7 setp.ne.u32 %r482,%r481,0; @ %r482 bra $L50; .loc 1 888 11 add.u64 %r483,%r335,7; and.b64 %r329,%r483,-8; add.u64 %r335,%r329,8; ld.u64 %r330,[%r329]; .loc 1 886 14 and.b32 %r484,%r166,4; .loc 1 886 7 setp.eq.u32 %r485,%r484,0; @ %r485 bra $L82; .loc 1 889 12 st.u16 [%r330],%r141; bra $L50; $L82: .loc 1 891 19 and.b32 %r486,%r166,1; .loc 1 891 12 setp.eq.u32 %r487,%r486,0; @ %r487 bra $L83; .loc 1 894 12 cvt.s64.s32 %r488,%r141; st.u64 [%r330],%r488; bra $L50; $L83: .loc 1 897 19 and.b32 %r489,%r166,2; .loc 1 897 12 setp.eq.u32 %r490,%r489,0; @ %r490 bra $L84; .loc 1 900 13 cvt.s64.s32 %r491,%r141; st.u64 [%r330],%r491; bra $L50; $L84: .loc 1 906 12 st.u32 [%r330],%r141; bra $L50; $L170: .loc 1 642 7 mov.u64 %r67,_strtol_r; mov.u32 %r169,10; mov.u32 %r204,3; bra $L54; $L171: .loc 1 808 9 mov.u64 %r67,_strtoul_r; .loc 1 809 9 mov.u32 %r169,8; .loc 1 807 6 mov.u32 %r204,3; bra $L54; $L172: .loc 1 799 9 mov.u64 %r67,_strtol_r; .loc 1 800 9 mov.u32 %r169,0; .loc 1 798 6 mov.u32 %r204,3; bra $L54; $L173: .loc 1 848 6 mov.u32 %r204,2; bra $L54; $L174: .loc 1 814 9 mov.u64 %r67,_strtoul_r; .loc 1 815 9 mov.u32 %r169,10; .loc 1 813 6 mov.u32 %r204,3; $L54: .loc 1 917 10 ld.u32 %r492,[%r333+8]; setp.gt.s32 %r493,%r492,0; @ %r493 bra $L85; .loc 1 327 7 ld.u64 %r225,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r494,%r225,0; @ %r494 bra $L86; .loc 1 329 7 setp.eq.u64 %r496,%r225,%r848; @ %r496 bra $L87; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r225; call _free_r,(%out_arg1,%out_arg2); } $L87: mov.u64 %r499,0; st.u64 [%r333+88],%r499; .loc 1 330 23 ld.u32 %r227,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r227; .loc 1 330 10 setp.eq.u32 %r500,%r227,0; @ %r500 bra $L86; .loc 1 332 18 ld.u64 %r501,[%r333+104]; st.u64 [%r333],%r501; bra $L85; $L86: .loc 1 338 10 ld.u64 %r502,[%r333+24]; st.u64 [%r333],%r502; .loc 1 339 10 mov.u32 %r503,0; st.u32 [%r333+8],%r503; .loc 1 340 14 ld.u16 %r505,[%r333+16]; or.b16 %r504,%r505,32; st.u16 [%r333+16],%r504; bra $L78; $L85: .loc 1 924 18 and.b32 %r506,%r166,64; .loc 1 924 10 setp.ne.u32 %r507,%r506,0; @ %r507 bra $L88; .loc 1 926 11 ld.u64 %r292,[%r333]; ld.u8 %r508,[%r292]; add.u64 %r510,%r838,%r508; ld.u8 %r850,[%r510]; mov.u16 %r513,%r850; and.b16 %r515,%r513,8; setp.eq.u16 %r516,%r515,0; @ %r516 bra $L88; $L93: .loc 1 928 13 add.u32 %r141,%r141,1; .loc 1 929 12 ld.u32 %r517,[%r333+8]; add.u32 %r66,%r517,-1; .loc 1 929 11 st.u32 [%r333+8],%r66; setp.le.s32 %r518,%r66,0; @ %r518 bra $L89; .loc 1 930 9 add.u64 %r292,%r292,1; bra $L90; $L89: .loc 1 327 7 ld.u64 %r233,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r519,%r233,0; @ %r519 bra $L91; .loc 1 329 7 setp.eq.u64 %r521,%r233,%r848; @ %r521 bra $L92; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r233; call _free_r,(%out_arg1,%out_arg2); } $L92: mov.u64 %r524,0; st.u64 [%r333+88],%r524; .loc 1 330 23 ld.u32 %r235,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r235; .loc 1 330 10 setp.eq.u32 %r525,%r235,0; @ %r525 bra $L91; .loc 1 332 22 ld.u64 %r292,[%r333+104]; bra $L90; $L91: .loc 1 338 10 ld.u64 %r526,[%r333+24]; st.u64 [%r333],%r526; .loc 1 339 10 mov.u32 %r527,0; st.u32 [%r333+8],%r527; .loc 1 340 14 ld.u16 %r529,[%r333+16]; or.b16 %r528,%r529,32; st.u16 [%r333+16],%r528; bra $L78; $L90: .loc 1 930 9 st.u64 [%r333],%r292; .loc 1 926 11 ld.u8 %r530,[%r292]; add.u64 %r532,%r838,%r530; ld.u8 %r850,[%r532]; mov.u16 %r535,%r850; and.b16 %r537,%r535,8; setp.ne.u16 %r538,%r537,0; @ %r538 bra $L93; $L88: .loc 1 945 7 setp.eq.u32 %r539,%r204,2; @ %r539 bra $L94; setp.eq.u32 %r540,%r204,3; @ %r540 bra $L95; setp.eq.u32 %r541,%r204,1; @ %r541 bra $L96; max.u64 %r209,%r163,1; .loc 1 1017 14 and.b32 %r542,%r166,16; .loc 1 1017 7 setp.eq.u32 %r543,%r542,0; @ %r543 bra $L97; .loc 1 1022 12 ld.u32 %r240,[%r333+8]; .loc 1 1146 25 ld.u64 %r241,[%r333]; .loc 1 1022 24 cvt.u32.u64 %r839,%r209; .loc 1 1022 8 setp.ge.s32 %r545,%r240,%r839; @ %r545 bra $L175; .loc 1 327 7 ld.u64 %r212,[%r333+88]; .loc 1 1019 15 mov.u64 %r208,0; $L101: .loc 1 1024 13 cvt.s64.s32 %r75,%r240; mov.u64 %r290,%r208; add.u64 %r208,%r208,%r75; mov.u64 %r192,%r209; .loc 1 1025 15 sub.u64 %r209,%r209,%r75; .loc 1 1026 16 add.u64 %r546,%r241,%r75; st.u64 [%r333],%r546; .loc 1 327 6 setp.eq.u64 %r547,%r212,0; @ %r547 bra $L99; .loc 1 329 7 setp.eq.u64 %r549,%r212,%r848; @ %r549 bra $L100; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r212; call _free_r,(%out_arg1,%out_arg2); } $L100: mov.u64 %r552,0; st.u64 [%r333+88],%r552; .loc 1 330 23 ld.u32 %r240,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r240; .loc 1 330 10 setp.eq.u32 %r553,%r240,0; @ %r553 bra $L99; .loc 1 332 22 ld.u64 %r241,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r241; mov.u64 %r212,%r552; .loc 1 1022 24 cvt.u32.u64 %r839,%r209; .loc 1 1022 8 setp.gt.s32 %r555,%r839,%r240; @ %r555 bra $L101; .loc 1 1036 13 add.u64 %r208,%r192,%r290; bra $L98; $L99: .loc 1 338 10 ld.u64 %r556,[%r333+24]; st.u64 [%r333],%r556; .loc 1 339 10 mov.u32 %r557,0; st.u32 [%r333+8],%r557; .loc 1 340 14 ld.u16 %r559,[%r333+16]; or.b16 %r558,%r559,32; st.u16 [%r333+16],%r558; .loc 1 1029 9 setp.eq.u64 %r560,%r208,0; @ ! %r560 bra $L103; bra $L78; $L175: .loc 1 1022 8 mov.u64 %r208,%r209; $L98: .loc 1 1037 16 sub.u32 %r562,%r240,%r839; st.u32 [%r333+8],%r562; .loc 1 1038 16 add.u64 %r563,%r241,%r209; st.u64 [%r333],%r563; $L103: .loc 1 1042 14 cvt.u32.u64 %r564,%r208; add.u32 %r141,%r564,%r141; bra $L50; $L97: .loc 1 1053 5 add.u64 %r282,%r335,7; and.b64 %r288,%r282,-8; add.u64 %r335,%r288,8; .loc 1 1054 12 mov.u64 %r567,1; ld.u64 %r566,[%r288]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r566; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r567; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r209; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r333; call (%value_in),_sfread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r570,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r571,%r570,0; @ %r571 bra $L78; .loc 1 1060 14 cvt.u32.u64 %r572,%r570; add.u32 %r141,%r572,%r141; .loc 1 1061 17 add.u32 %r331,%r331,1; bra $L50; $L96: .loc 1 1067 7 setp.ne.u64 %r573,%r163,0; .loc 1 1068 12 selp.u64 %r163,%r163,-1,%r573; .loc 1 1146 25 ld.u64 %r317,[%r333]; .loc 1 1146 21 ld.u8 %r575,[%r317]; add.u64 %r576,%frame,%r575; ld.s8 %r320,[%r576]; .loc 1 1143 14 and.b32 %r577,%r166,16; .loc 1 1143 7 setp.eq.u32 %r578,%r577,0; @ %r578 bra $L105; .loc 1 1146 15 setp.eq.u32 %r579,%r320,0; @ %r579 bra $L41; .loc 1 1148 16 ld.u32 %r580,[%r333+8]; add.u32 %r90,%r580,-1; st.u32 [%r333+8],%r90; .loc 1 1148 26 add.u64 %r581,%r317,1; st.u64 [%r333],%r581; .loc 1 1149 8 add.u64 %r185,%r163,-1; setp.eq.u64 %r582,%r163,1; @ ! %r582 bra $L107; bra $L106; $L112: .loc 1 1148 6 add.u32 %r204,%r204,1; .loc 1 1148 16 ld.u32 %r583,[%r333+8]; add.u32 %r90,%r583,-1; st.u32 [%r333+8],%r90; .loc 1 1148 26 add.u64 %r584,%r311,1; st.u64 [%r333],%r584; .loc 1 1149 8 add.u64 %r185,%r185,-1; setp.eq.u64 %r585,%r185,0; @ %r585 bra $L106; $L107: .loc 1 1151 8 setp.gt.s32 %r586,%r90,0; @ %r586 bra $L108; .loc 1 327 7 ld.u64 %r245,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r587,%r245,0; @ %r587 bra $L109; .loc 1 329 7 setp.eq.u64 %r589,%r245,%r848; @ %r589 bra $L110; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r245; call _free_r,(%out_arg1,%out_arg2); } $L110: mov.u64 %r592,0; st.u64 [%r333+88],%r592; .loc 1 330 23 ld.u32 %r247,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r247; .loc 1 330 10 setp.eq.u32 %r593,%r247,0; @ %r593 bra $L109; .loc 1 332 22 ld.u64 %r311,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r311; bra $L111; $L109: .loc 1 338 10 ld.u64 %r594,[%r333+24]; st.u64 [%r333],%r594; .loc 1 339 10 mov.u32 %r595,0; st.u32 [%r333+8],%r595; .loc 1 340 14 ld.u16 %r597,[%r333+16]; or.b16 %r596,%r597,32; st.u16 [%r333+16],%r596; bra $L106; $L108: .loc 1 1146 25 ld.u64 %r311,[%r333]; $L111: .loc 1 1146 21 ld.u8 %r599,[%r311]; add.u64 %r600,%frame,%r599; .loc 1 1146 15 ld.u8 %r602,[%r600]; cvt.s16.s8 %r601,%r602; setp.ne.u16 %r603,%r601,0; @ %r603 bra $L112; $L106: .loc 1 1160 14 add.u32 %r141,%r141,%r204; bra $L50; $L105: .loc 1 1172 10 add.u64 %r254,%r335,7; and.b64 %r167,%r254,-8; add.u64 %r335,%r167,8; ld.u64 %r202,[%r167]; .loc 1 1173 15 setp.eq.u32 %r604,%r320,0; @ %r604 bra $L41; .loc 1 1175 11 ld.u32 %r606,[%r333+8]; add.u32 %r605,%r606,-1; st.u32 [%r333+8],%r605; .loc 1 1176 19 add.u64 %r607,%r317,1; st.u64 [%r333],%r607; .loc 1 1176 7 add.u64 %r23,%r202,1; .loc 1 1176 10 ld.u8 %r608,[%r317]; st.u8 [%r202],%r608; .loc 1 1180 8 setp.eq.u64 %r609,%r163,1; @ %r609 bra $L113; mov.u64 %r296,%r23; bra $L114; $L119: .loc 1 1175 11 ld.u32 %r611,[%r333+8]; add.u32 %r610,%r611,-1; st.u32 [%r333+8],%r610; .loc 1 1176 19 add.u64 %r612,%r310,1; st.u64 [%r333],%r612; add.u64 %r296,%r296,1; .loc 1 1176 10 ld.u8 %r613,[%r310]; st.u8 [%r23],%r613; .loc 1 1180 8 add.u64 %r614,%r202,%r163; setp.eq.u64 %r615,%r614,%r296; @ %r615 bra $L176; $L114: mov.u64 %r23,%r296; .loc 1 1182 8 ld.u32 %r616,[%r333+8]; setp.gt.s32 %r617,%r616,0; @ %r617 bra $L115; .loc 1 327 7 ld.u64 %r251,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r618,%r251,0; @ %r618 bra $L116; .loc 1 329 7 setp.eq.u64 %r620,%r251,%r848; @ %r620 bra $L117; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r251; call _free_r,(%out_arg1,%out_arg2); } $L117: mov.u64 %r623,0; st.u64 [%r333+88],%r623; .loc 1 330 23 ld.u32 %r253,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r253; .loc 1 330 10 setp.eq.u32 %r624,%r253,0; @ %r624 bra $L116; .loc 1 332 22 ld.u64 %r310,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r310; bra $L118; $L116: .loc 1 338 10 ld.u64 %r625,[%r333+24]; st.u64 [%r333],%r625; .loc 1 339 10 mov.u32 %r626,0; st.u32 [%r333+8],%r626; .loc 1 340 14 ld.u16 %r628,[%r333+16]; or.b16 %r627,%r628,32; st.u16 [%r333+16],%r627; .loc 1 1184 12 setp.eq.u64 %r629,%r202,%r296; @ ! %r629 bra $L113; bra $L78; $L115: .loc 1 1173 25 ld.u64 %r310,[%r333]; $L118: .loc 1 1173 21 ld.u8 %r631,[%r310]; add.u64 %r632,%frame,%r631; .loc 1 1173 15 ld.u8 %r634,[%r632]; cvt.s16.s8 %r633,%r634; setp.ne.u16 %r635,%r633,0; @ %r635 bra $L119; bra $L113; $L176: .loc 1 1176 7 mov.u64 %r23,%r296; $L113: .loc 1 1189 14 sub.u64 %r636,%r23,%r202; .loc 1 1189 10 cvt.u32.u64 %r203,%r636; .loc 1 1190 11 setp.eq.u32 %r637,%r203,0; @ %r637 bra $L41; .loc 1 1192 11 mov.u32 %r638,0; st.u8 [%r23],%r638; .loc 1 1196 17 add.u32 %r331,%r331,1; .loc 1 1197 14 add.u32 %r141,%r141,%r203; bra $L50; $L94: .loc 1 1203 7 setp.ne.u64 %r639,%r163,0; .loc 1 1204 12 selp.u64 %r163,%r163,-1,%r639; .loc 1 1146 25 ld.u64 %r321,[%r333]; .loc 1 1283 16 ld.u8 %r640,[%r321]; add.u64 %r642,%r838,%r640; ld.u8 %r850,[%r642]; mov.u16 %r645,%r850; and.b16 %r644,%r645,8; cvt.u32.u16 %r646,%r644; cvt.s32.s8 %r327,%r646; .loc 1 1280 14 and.b32 %r647,%r166,16; .loc 1 1280 7 setp.eq.u32 %r648,%r647,0; @ %r648 bra $L121; .loc 1 1283 15 setp.ne.u32 %r649,%r327,0; @ %r649 bra $L50; .loc 1 1285 16 ld.u32 %r650,[%r333+8]; add.u32 %r107,%r650,-1; st.u32 [%r333+8],%r107; .loc 1 1285 26 add.u64 %r651,%r321,1; st.u64 [%r333],%r651; .loc 1 1286 8 add.u64 %r201,%r163,-1; setp.ne.u64 %r652,%r163,1; @ %r652 bra $L177; .loc 1 1291 14 add.u32 %r141,%r141,1; bra $L50; $L128: .loc 1 1285 6 add.u32 %r200,%r200,1; .loc 1 1285 16 ld.u32 %r653,[%r333+8]; add.u32 %r107,%r653,-1; st.u32 [%r333+8],%r107; .loc 1 1285 26 add.u64 %r654,%r309,1; st.u64 [%r333],%r654; .loc 1 1286 8 add.u64 %r201,%r201,-1; setp.ne.u64 %r655,%r201,0; @ %r655 bra $L123; .loc 1 1291 14 add.u32 %r141,%r141,%r200; bra $L50; $L177: .loc 1 1285 6 mov.u32 %r200,1; $L123: .loc 1 1288 8 setp.gt.s32 %r656,%r107,0; @ %r656 bra $L124; .loc 1 327 7 ld.u64 %r258,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r657,%r258,0; @ %r657 bra $L125; .loc 1 329 7 setp.eq.u64 %r659,%r258,%r848; @ %r659 bra $L126; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r258; call _free_r,(%out_arg1,%out_arg2); } $L126: mov.u64 %r662,0; st.u64 [%r333+88],%r662; .loc 1 330 23 ld.u32 %r260,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r260; .loc 1 330 10 setp.eq.u32 %r663,%r260,0; @ %r663 bra $L125; .loc 1 332 22 ld.u64 %r309,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r309; bra $L127; $L125: .loc 1 338 10 ld.u64 %r664,[%r333+24]; st.u64 [%r333],%r664; .loc 1 339 10 mov.u32 %r665,0; st.u32 [%r333+8],%r665; .loc 1 340 14 ld.u16 %r667,[%r333+16]; or.b16 %r666,%r667,32; st.u16 [%r333+16],%r666; .loc 1 1291 14 add.u32 %r141,%r141,%r200; bra $L50; $L124: .loc 1 1283 16 ld.u64 %r309,[%r333]; $L127: ld.u8 %r668,[%r309]; add.u64 %r670,%r838,%r668; .loc 1 1283 15 ld.u8 %r850,[%r670]; mov.u16 %r673,%r850; and.b16 %r675,%r673,8; setp.eq.u16 %r676,%r675,0; @ %r676 bra $L128; .loc 1 1291 14 add.u32 %r141,%r141,%r200; bra $L50; $L121: .loc 1 1303 6 add.u64 %r34,%r335,7; and.b64 %r283,%r34,-8; add.u64 %r335,%r283,8; ld.u64 %r198,[%r283]; .loc 1 1305 15 setp.ne.u32 %r677,%r327,0; @ %r677 bra $L178; .loc 1 1307 11 ld.u32 %r679,[%r333+8]; add.u32 %r678,%r679,-1; st.u32 [%r333+8],%r678; .loc 1 1308 19 add.u64 %r680,%r321,1; st.u64 [%r333],%r680; .loc 1 1308 7 add.u64 %r164,%r198,1; .loc 1 1308 10 ld.u8 %r681,[%r321]; st.u8 [%r198],%r681; .loc 1 1312 8 setp.eq.u64 %r682,%r163,1; @ ! %r682 bra $L309; bra $L179; $L136: .loc 1 1307 11 ld.u32 %r684,[%r333+8]; add.u32 %r683,%r684,-1; st.u32 [%r333+8],%r683; .loc 1 1308 19 add.u64 %r685,%r304,1; st.u64 [%r333],%r685; add.u64 %r284,%r284,1; .loc 1 1308 10 ld.u8 %r686,[%r304]; st.u8 [%r164],%r686; .loc 1 1312 8 add.u64 %r687,%r198,%r163; setp.ne.u64 %r688,%r687,%r284; @ %r688 bra $L131; .loc 1 1321 19 sub.u64 %r689,%r284,%r198; .loc 1 1321 14 cvt.u32.u64 %r308,%r689; mov.u64 %r164,%r284; bra $L129; $L309: mov.u64 %r284,%r164; $L131: mov.u64 %r164,%r284; .loc 1 1314 8 ld.u32 %r690,[%r333+8]; setp.gt.s32 %r691,%r690,0; @ %r691 bra $L132; .loc 1 327 7 ld.u64 %r265,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r692,%r265,0; @ %r692 bra $L133; .loc 1 329 7 setp.eq.u64 %r694,%r265,%r848; @ %r694 bra $L134; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r265; call _free_r,(%out_arg1,%out_arg2); } $L134: mov.u64 %r697,0; st.u64 [%r333+88],%r697; .loc 1 330 23 ld.u32 %r267,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r267; .loc 1 330 10 setp.eq.u32 %r698,%r267,0; @ %r698 bra $L133; .loc 1 332 22 ld.u64 %r304,[%r333+104]; .loc 1 332 18 st.u64 [%r333],%r304; bra $L135; $L133: .loc 1 338 10 ld.u64 %r699,[%r333+24]; st.u64 [%r333],%r699; .loc 1 339 10 mov.u32 %r700,0; st.u32 [%r333+8],%r700; .loc 1 340 14 ld.u16 %r702,[%r333+16]; or.b16 %r701,%r702,32; st.u16 [%r333+16],%r701; .loc 1 1321 19 sub.u64 %r703,%r284,%r198; .loc 1 1321 14 cvt.u32.u64 %r308,%r703; bra $L129; $L132: .loc 1 1305 16 ld.u64 %r304,[%r333]; $L135: ld.u8 %r704,[%r304]; add.u64 %r706,%r838,%r704; .loc 1 1305 15 ld.u8 %r850,[%r706]; mov.u16 %r709,%r850; and.b16 %r711,%r709,8; setp.eq.u16 %r712,%r711,0; @ %r712 bra $L136; .loc 1 1321 19 sub.u64 %r713,%r284,%r198; .loc 1 1321 14 cvt.u32.u64 %r308,%r713; bra $L129; $L178: .loc 1 1303 6 mov.u64 %r164,%r198; .loc 1 1305 15 mov.u32 %r308,%r647; bra $L129; $L179: .loc 1 1312 8 mov.u32 %r308,1; $L129: .loc 1 1317 11 mov.u32 %r714,0; st.u8 [%r164],%r714; .loc 1 1321 14 add.u32 %r141,%r141,%r308; .loc 1 1322 17 add.u32 %r331,%r331,1; bra $L50; $L95: .loc 1 1335 14 add.u64 %r715,%r163,-1; .loc 1 1335 7 setp.le.u64 %r716,%r715,38; @ %r716 bra $L180; .loc 1 1338 27 cvt.u32.u64 %r717,%r163; .loc 1 1338 19 add.u32 %r170,%r717,-39; .loc 1 1339 14 mov.u64 %r163,39; bra $L137; $L180: .loc 1 1329 13 mov.u32 %r170,0; $L137: .loc 1 1341 10 or.b32 %r168,%r166,3456; .loc 1 1330 8 mov.u32 %r171,0; .loc 1 1342 11 mov.u64 %r165,%r849; $L157: .loc 1 1344 15 ld.u64 %r130,[%r333]; .loc 1 1344 12 ld.u8 %r131,[%r130]; cvt.u16.u32 %r718,%r131; setp.gt.u16 %r719,%r718,57; @ %r719 bra $L138; setp.gt.u16 %r721,%r718,55; @ %r721 bra $L139; setp.eq.u16 %r723,%r718,48; @ %r723 bra $L140; setp.gt.u16 %r725,%r718,48; @ %r725 bra $L141; add.u16 %r726,%r718,-43; cvt.u32.u16 %r728,%r726; cvt.u16.u8 %r850,%r728; mov.u16 %r730,%r850; and.b16 %r732,%r730,253; setp.eq.u16 %r733,%r732,0; @ ! %r733 bra $L143; bra $L142; $L141: .loc 1 1390 19 cvta.const.u64 %r734,basefix$0; cvt.s64.s32 %r735,%r169; add.u64 %r736,%r735,%r735; add.u64 %r737,%r734,%r736; ld.s16 %r169,[%r737]; .loc 1 1391 11 and.b32 %r168,%r168,-2945; .loc 1 1392 5 bra $L144; $L138: setp.gt.u16 %r739,%r718,102; @ %r739 bra $L145; setp.gt.u16 %r741,%r718,96; @ %r741 bra $L146; setp.gt.u16 %r743,%r718,70; @ %r743 bra $L147; setp.gt.u16 %r745,%r718,64; @ ! %r745 bra $L143; bra $L146; $L147: setp.eq.u16 %r747,%r718,88; @ %r747 bra $L148; bra $L143; $L145: setp.eq.u16 %r749,%r718,120; @ %r749 bra $L148; bra $L143; $L140: .loc 1 1361 18 and.b32 %r750,%r168,2048; .loc 1 1361 8 setp.eq.u32 %r751,%r750,0; @ %r751 bra $L144; .loc 1 1363 8 setp.ne.u32 %r752,%r169,0; @ %r752 bra $L149; .loc 1 1366 15 or.b32 %r168,%r168,512; .loc 1 1365 14 mov.u32 %r169,8; $L149: .loc 1 1368 15 and.b32 %r753,%r168,1024; .loc 1 1368 8 setp.eq.u32 %r754,%r753,0; @ %r754 bra $L150; .loc 1 1370 15 and.b32 %r168,%r168,-1409; .loc 1 1371 9 bra $L144; $L150: .loc 1 1373 11 and.b32 %r168,%r168,-897; .loc 1 1374 8 setp.eq.u32 %r755,%r170,0; @ %r755 bra $L151; .loc 1 1376 19 add.u32 %r170,%r170,-1; .loc 1 1377 14 add.u64 %r163,%r163,1; $L151: .loc 1 1379 5 add.u32 %r171,%r171,1; .loc 1 1380 5 bra $L152; $L139: .loc 1 1397 19 cvta.const.u64 %r756,basefix$0; cvt.s64.s32 %r757,%r169; add.u64 %r758,%r757,%r757; add.u64 %r759,%r756,%r758; ld.s16 %r169,[%r759]; .loc 1 1398 8 setp.le.s32 %r760,%r169,8; @ %r760 bra $L143; .loc 1 1400 11 and.b32 %r168,%r168,-2945; .loc 1 1401 5 bra $L144; $L146: .loc 1 1417 8 setp.le.s32 %r761,%r169,10; @ %r761 bra $L143; .loc 1 1419 11 and.b32 %r168,%r168,-2945; .loc 1 1420 5 bra $L144; $L142: .loc 1 1425 15 and.b32 %r762,%r168,128; .loc 1 1425 8 setp.eq.u32 %r763,%r762,0; @ %r763 bra $L143; .loc 1 1427 15 and.b32 %r168,%r168,-129; .loc 1 1428 9 bra $L144; $L148: .loc 1 1435 16 and.b32 %r764,%r168,1536; .loc 1 1435 8 setp.ne.u32 %r765,%r764,512; @ %r765 bra $L143; .loc 1 1438 15 and.b32 %r187,%r168,-513; .loc 1 1442 15 or.b32 %r168,%r187,1280; .loc 1 1437 14 mov.u32 %r169,16; $L144: .loc 1 1457 13 cvt.u32.u32 %r766,%r131; st.u8 [%r165],%r766; .loc 1 1457 10 add.u64 %r165,%r165,1; $L152: .loc 1 1459 12 ld.u32 %r767,[%r333+8]; add.u32 %r140,%r767,-1; .loc 1 1459 11 st.u32 [%r333+8],%r140; setp.le.s32 %r768,%r140,0; @ %r768 bra $L153; .loc 1 1460 9 add.u64 %r142,%r130,1; bra $L154; $L153: .loc 1 327 7 ld.u64 %r271,[%r333+88]; .loc 1 327 6 setp.eq.u64 %r769,%r271,0; @ %r769 bra $L155; .loc 1 329 7 setp.eq.u64 %r771,%r271,%r848; @ %r771 bra $L156; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r271; call _free_r,(%out_arg1,%out_arg2); } $L156: mov.u64 %r774,0; st.u64 [%r333+88],%r774; .loc 1 330 23 ld.u32 %r273,[%r333+112]; .loc 1 330 19 st.u32 [%r333+8],%r273; .loc 1 330 10 setp.eq.u32 %r775,%r273,0; @ %r775 bra $L155; .loc 1 332 22 ld.u64 %r142,[%r333+104]; bra $L154; $L155: .loc 1 338 10 ld.u64 %r776,[%r333+24]; st.u64 [%r333],%r776; .loc 1 339 10 mov.u32 %r777,0; st.u32 [%r333+8],%r777; .loc 1 340 14 ld.u16 %r779,[%r333+16]; or.b16 %r778,%r779,32; st.u16 [%r333+16],%r778; bra $L143; $L154: .loc 1 1460 9 st.u64 [%r333],%r142; .loc 1 1342 30 add.u64 %r163,%r163,-1; .loc 1 1342 18 setp.ne.u64 %r780,%r163,0; @ %r780 bra $L157; $L143: .loc 1 1473 14 and.b32 %r781,%r168,256; .loc 1 1473 7 setp.eq.u32 %r782,%r781,0; @ %r782 bra $L158; .loc 1 1475 11 setp.le.u64 %r784,%r165,%r849; @ %r784 bra $L159; .loc 1 1476 3 add.u64 %r189,%r165,-1; ld.s8 %r788,[%r165+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r788; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r333; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r789,[%value_in]; } mov.u64 %r165,%r189; $L159: .loc 1 1477 11 setp.eq.u64 %r791,%r165,%r849; @ %r791 bra $L41; $L158: .loc 1 1480 15 and.b32 %r792,%r168,16; .loc 1 1480 7 setp.ne.u32 %r793,%r792,0; @ %r793 bra $L160; .loc 1 1484 11 mov.u32 %r794,0; st.u8 [%r165],%r794; .loc 1 1485 15 mov.u64 %r797,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r849; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r797; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r169; call (%value_in),%r67,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r800,[%value_in]; } .loc 1 888 11 add.u64 %r801,%r335,7; and.b64 %r316,%r801,-8; add.u64 %r335,%r316,8; .loc 1 1486 18 and.b32 %r802,%r168,32; .loc 1 1486 11 setp.eq.u32 %r803,%r802,0; @ %r803 bra $L161; .loc 1 1488 12 ld.u64 %r197,[%r316]; .loc 1 1498 11 st.u64 [%r197],%r800; bra $L162; $L161: .loc 1 1507 23 and.b32 %r804,%r168,4; .loc 1 1507 16 setp.eq.u32 %r805,%r804,0; @ %r805 bra $L163; .loc 1 1510 9 ld.u64 %r806,[%r316]; st.u16 [%r806],%r800; bra $L162; $L163: .loc 1 1512 23 and.b32 %r807,%r168,1; .loc 1 1512 16 setp.eq.u32 %r808,%r807,0; @ %r808 bra $L164; .loc 1 1515 9 ld.u64 %r809,[%r316]; st.u64 [%r809],%r800; bra $L162; $L164: .loc 1 1518 23 and.b32 %r810,%r168,2; .loc 1 1518 16 setp.eq.u32 %r811,%r810,0; @ %r811 bra $L165; .loc 1 1521 8 mov.u64 %r812,_strtoul_r; setp.ne.u64 %r813,%r67,%r812; @ %r813 bra $L166; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r849; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r797; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r169; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r819,[%value_in]; } .loc 1 1526 10 mov.u64 %r154,%r819; bra $L167; $L166: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r332; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r849; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r797; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r169; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r825,[%value_in]; } mov.u64 %r154,%r825; $L167: .loc 1 1526 10 ld.u64 %r826,[%r316]; st.u64 [%r826],%r154; bra $L162; $L165: .loc 1 1532 9 ld.u64 %r827,[%r316]; st.u32 [%r827],%r800; $L162: .loc 1 1534 17 add.u32 %r331,%r331,1; $L160: .loc 1 1536 15 sub.u64 %r829,%r165,%r849; .loc 1 1536 21 cvt.u32.u64 %r830,%r829; .loc 1 1536 10 vadd.u32.u32.u32.add %r141,%r141,%r171,%r830; .loc 1 1537 4 bra $L50; $L78: .loc 1 1905 63 setp.eq.u32 %r832,%r331,0; @ %r832 bra $L181; .loc 1 1905 25 ld.u16 %r834,[%r333+16]; and.b16 %r833,%r834,64; setp.ne.u16 %r835,%r833,0; .loc 1 1905 63 selp.u32 %r331,-1,%r331,%r835; bra $L41; $L169: .loc 1 613 10 mov.u32 %r331,%r28; bra $L41; $L181: .loc 1 1905 63 mov.u32 %r331,-1; $L43: $L168: $L41: .loc 1 1914 1 mov.u32 %value,%r331; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1520 0 0 0 644 44468 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _svfiwprintf_r .visible .func (.param .u32 %value_out) _svfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .extern .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN GLOBAL FUNCTION DEF: _svfiwprintf_r .visible .func (.param .u32 %value_out) _svfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,336; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r33; .reg .u32 %r36; .reg .u64 %r53; .reg .u32 %r74; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r117; .reg .u32 %r118; .reg .u64 %r120; .reg .u64 %r121; .reg .u32 %r125; .reg .u64 %r128; .reg .u64 %r131; .reg .u64 %r132; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u64 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u64 %r163; .reg .u32 %r166; .reg .u32 %r167; .reg .u32 %r169; .reg .u32 %r170; .reg .u64 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r190; .reg .u32 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r196; .reg .u32 %r198; .reg .u32 %r201; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r208; .reg .u64 %r209; .reg .u64 %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r228; .reg .u64 %r237; .reg .u32 %r238; .reg .u64 %r239; .reg .u32 %r240; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u64 %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r258; .reg .u64 %r259; .reg .u64 %r260; .reg .u64 %r261; .reg .u64 %r262; .reg .u16 %r263; .reg .u16 %r264; .reg .pred %r265; .reg .u64 %r266; .reg .pred %r267; .reg .u64 %r269; .reg .u64 %r270; .reg .pred %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u64 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .u16 %r283; .reg .u16 %r284; .reg .u16 %r285; .reg .u32 %r286; .reg .u16 %r287; .reg .pred %r288; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .u32 %r293; .reg .u32 %r294; .reg .u16 %r295; .reg .u16 %r296; .reg .u16 %r297; .reg .u32 %r298; .reg .u16 %r299; .reg .pred %r300; .reg .u64 %r301; .reg .u64 %r303; .reg .pred %r304; .reg .u64 %r305; .reg .u64 %r306; .reg .u64 %r307; .reg .u32 %r308; .reg .pred %r309; .reg .u32 %r314; .reg .pred %r315; .reg .u16 %r316; .reg .u16 %r317; .reg .pred %r318; .reg .u32 %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .pred %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .pred %r331; .reg .pred %r332; .reg .u32 %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .pred %r338; .reg .pred %r339; .reg .pred %r340; .reg .pred %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .pred %r351; .reg .pred %r352; .reg .u32 %r353; .reg .pred %r354; .reg .u32 %r355; .reg .u32 %r357; .reg .u32 %r358; .reg .u32 %r359; .reg .u32 %r360; .reg .u32 %r361; .reg .pred %r362; .reg .u32 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .u32 %r368; .reg .pred %r369; .reg .pred %r370; .reg .pred %r371; .reg .u32 %r372; .reg .pred %r373; .reg .u32 %r375; .reg .pred %r376; .reg .u16 %r377; .reg .u16 %r378; .reg .u32 %r379; .reg .pred %r381; .reg .u32 %r382; .reg .pred %r383; .reg .u32 %r384; .reg .pred %r385; .reg .u32 %r386; .reg .pred %r387; .reg .u16 %r388; .reg .pred %r391; .reg .pred %r392; .reg .u64 %r393; .reg .u32 %r394; .reg .pred %r395; .reg .u64 %r396; .reg .u64 %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .pred %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .u32 %r406; .reg .pred %r407; .reg .u32 %r408; .reg .pred %r409; .reg .u32 %r410; .reg .pred %r411; .reg .u16 %r412; .reg .u32 %r413; .reg .u32 %r414; .reg .u32 %r415; .reg .pred %r416; .reg .pred %r417; .reg .pred %r418; .reg .u32 %r420; .reg .u64 %r422; .reg .pred %r423; .reg .u64 %r425; .reg .pred %r426; .reg .u64 %r429; .reg .u64 %r430; .reg .u64 %r431; .reg .pred %r432; .reg .u16 %r433; .reg .u16 %r434; .reg .u64 %r436; .reg .u32 %r437; .reg .pred %r438; .reg .u32 %r439; .reg .u64 %r443; .reg .u64 %r445; .reg .u32 %r446; .reg .pred %r447; .reg .u32 %r449; .reg .u64 %r451; .reg .u64 %r452; .reg .pred %r453; .reg .u64 %r454; .reg .u64 %r456; .reg .u32 %r457; .reg .u64 %r459; .reg .u32 %r460; .reg .pred %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u32 %r464; .reg .pred %r465; .reg .u16 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .pred %r469; .reg .u32 %r470; .reg .pred %r471; .reg .u32 %r472; .reg .pred %r473; .reg .u16 %r474; .reg .u32 %r475; .reg .pred %r476; .reg .pred %r477; .reg .u32 %r478; .reg .pred %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u16 %r490; .reg .pred %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .u32 %r495; .reg .pred %r496; .reg .u32 %r497; .reg .u32 %r498; .reg .u32 %r499; .reg .u32 %r500; .reg .u16 %r501; .reg .u16 %r502; .reg .u32 %r503; .reg .u16 %r504; .reg .u16 %r505; .reg .u16 %r506; .reg .u32 %r507; .reg .u16 %r508; .reg .pred %r509; .reg .u64 %r511; .reg .u64 %r513; .reg .u32 %r514; .reg .u64 %r516; .reg .u64 %r518; .reg .pred %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .u64 %r523; .reg .u32 %r524; .reg .u32 %r525; .reg .pred %r528; .reg .u64 %r530; .reg .u64 %r532; .reg .u64 %r533; .reg .u64 %r534; .reg .u64 %r535; .reg .u32 %r536; .reg .pred %r537; .reg .u64 %r539; .reg .u64 %r541; .reg .pred %r542; .reg .pred %r543; .reg .u32 %r544; .reg .pred %r545; .reg .pred %r546; .reg .u32 %r547; .reg .u32 %r548; .reg .pred %r549; .reg .pred %r551; .reg .pred %r552; .reg .pred %r553; .reg .u64 %r555; .reg .pred %r556; .reg .u32 %r561; .reg .pred %r562; .reg .pred %r563; .reg .u64 %r565; .reg .pred %r566; .reg .u32 %r571; .reg .pred %r572; .reg .u32 %r573; .reg .pred %r574; .reg .u64 %r576; .reg .pred %r577; .reg .u32 %r582; .reg .pred %r583; .reg .u64 %r586; .reg .pred %r587; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .pred %r595; .reg .pred %r596; .reg .u64 %r598; .reg .pred %r599; .reg .u32 %r604; .reg .pred %r605; .reg .pred %r606; .reg .u64 %r608; .reg .pred %r609; .reg .u32 %r614; .reg .pred %r615; .reg .pred %r616; .reg .pred %r617; .reg .u64 %r619; .reg .pred %r620; .reg .u32 %r625; .reg .pred %r626; .reg .pred %r627; .reg .u64 %r629; .reg .pred %r630; .reg .u32 %r635; .reg .pred %r636; .reg .u64 %r637; .reg .pred %r638; .reg .u32 %r643; .reg .pred %r644; .reg .u32 %r645; .reg .pred %r646; .reg .pred %r647; .reg .pred %r648; .reg .u64 %r650; .reg .pred %r651; .reg .u32 %r656; .reg .pred %r657; .reg .pred %r658; .reg .u64 %r660; .reg .pred %r661; .reg .u32 %r666; .reg .pred %r667; .reg .u32 %r668; .reg .pred %r669; .reg .u32 %r670; .reg .pred %r671; .reg .u32 %r676; .reg .pred %r677; .reg .u64 %r680; .reg .pred %r681; .reg .u64 %r685; .reg .u32 %r686; .reg .pred %r687; .reg .u16 %r688; .reg .u16 %r689; .reg .u16 %r690; .reg .u16 %r691; .reg .pred %r692; .reg .u16 %r693; .reg .u16 %r694; .reg .u16 %r697; .reg .u16 %r698; .reg .pred %r699; .reg .pred %r701; .reg .pred %r702; .reg .u32 %r703; .reg .u32 %r704; .reg .u32 %r705; .reg .u32 %r706; .reg .u32 %r707; .reg .u32 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u16 %r711; .reg .u32 %r712; .reg .u16 %r713; .reg .pred %r714; .reg .u64 %r715; .reg .pred %r716; .reg .u64 %r717; .reg .pred %r718; .reg .u64 %r719; .reg .u64 %r736; .reg .u64 %r737; .reg .u64 %r738; .reg .u16 %r744; mov.u64 %r259,%ar0; mov.u64 %r260,%ar1; mov.u64 %r261,%ar2; mov.u64 %r262,%ar3; .loc 1 612 12 ld.u16 %r264,[%r260+16]; and.b16 %r263,%r264,128; setp.eq.u16 %r265,%r263,0; @ %r265 bra $L2; .loc 1 612 33 ld.u64 %r266,[%r260+24]; setp.ne.u64 %r267,%r266,0; @ %r267 bra $L2; .loc 1 614 28 mov.u64 %r269,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r269; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r270,[%value_in]; } .loc 1 614 26 st.u64 [%r260],%r270; .loc 1 614 17 st.u64 [%r260+24],%r270; .loc 1 615 6 setp.ne.u64 %r271,%r270,0; @ %r271 bra $L3; .loc 1 617 17 mov.u32 %r272,12; st.u32 [%r259],%r272; .loc 1 618 11 mov.u32 %r258,-1; bra $L1; $L3: .loc 1 620 17 mov.u32 %r273,64; st.u32 [%r260+32],%r273; $L2: .loc 1 626 14 add.u64 %r717,%frame,160; st.u64 [%frame+288],%r717; .loc 1 627 16 mov.u64 %r275,0; st.u64 [%frame+304],%r275; .loc 1 628 17 mov.u32 %r276,0; st.u32 [%frame+296],%r276; .loc 1 626 21 mov.u64 %r160,%r717; .loc 1 435 11 mov.u64 %r33,%r275; .loc 1 630 6 mov.u32 %r258,%r276; .loc 1 647 4 add.u64 %r736,%frame,288; .loc 1 1438 4 add.u64 %r737,%frame,312; .loc 1 1436 4 add.u64 %r738,%frame,320; $L5: .loc 1 644 24 ld.u32 %r169,[%r261]; .loc 1 644 38 set.u32.ne.u32 %r278,%r169,0; neg.s32 %r279,%r278; mov.u32 %r277,%r279; set.u32.ne.u32 %r281,%r169,37; neg.s32 %r282,%r281; mov.u32 %r280,%r282; cvt.u16.u8 %r744,%r277; mov.u16 %r284,%r744; cvt.u16.u8 %r744,%r280; mov.u16 %r285,%r744; and.b16 %r283,%r284,%r285; cvt.u32.u16 %r286,%r283; cvt.u16.u8 %r287,%r286; setp.eq.u16 %r288,%r287,0; @ %r288 bra $L143; mov.u64 %r171,%r261; $L7: mov.u64 %r30,%r171; .loc 1 645 21 add.u64 %r171,%r171,4; .loc 1 644 24 ld.u32 %r169,[%r171]; .loc 1 644 38 set.u32.ne.u32 %r290,%r169,0; neg.s32 %r291,%r290; mov.u32 %r289,%r291; set.u32.ne.u32 %r293,%r169,37; neg.s32 %r294,%r293; mov.u32 %r292,%r294; cvt.u16.u8 %r744,%r289; mov.u16 %r296,%r744; cvt.u16.u8 %r744,%r292; mov.u16 %r297,%r744; and.b16 %r295,%r296,%r297; cvt.u32.u16 %r298,%r295; cvt.u16.u8 %r299,%r298; setp.ne.u16 %r300,%r299,0; @ %r300 bra $L7; .loc 1 646 16 sub.u64 %r301,%r171,%r261; shr.s64 %r303,%r301,2; .loc 1 646 10 cvt.u32.u64 %r170,%r303; .loc 1 646 6 setp.eq.u32 %r304,%r170,0; @ %r304 bra $L6; .loc 1 647 4 st.u64 [%r160],%r261; cvt.s64.s32 %r305,%r170; shl.b64 %r31,%r305,2; st.u64 [%r160+8],%r31; ld.u64 %r307,[%frame+304]; add.u64 %r306,%r307,%r31; st.u64 [%frame+304],%r306; ld.u32 %r308,[%frame+296]; add.u32 %r36,%r308,1; st.u32 [%frame+296],%r36; setp.le.s32 %r309,%r36,7; @ %r309 bra $L8; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r314,[%value_in]; } setp.eq.u32 %r315,%r314,0; @ %r315 bra $L144; ld.u16 %r317,[%r260+16]; and.b16 %r316,%r317,64; cvt.s32.s16 %r246,%r316; bra $L10; $L8: add.u64 %r160,%r160,16; bra $L9; $L144: mov.u64 %r160,%r717; $L9: .loc 1 648 8 add.u32 %r258,%r258,%r170; .loc 1 650 21 ld.u32 %r169,[%r30+4]; bra $L6; $L143: .loc 1 644 38 mov.u64 %r171,%r261; $L6: .loc 1 650 20 setp.eq.u32 %r318,%r169,0; @ %r318 bra $L11; .loc 1 653 6 add.u64 %r261,%r171,4; .loc 1 659 8 mov.u32 %r319,0; st.u32 [%frame+320],%r319; .loc 1 671 14 ld.u32 %r247,[%r171+4]; mov.u32 %r172,%r319; mov.u32 %r173,%r319; .loc 1 658 8 mov.u32 %r154,-1; .loc 1 657 9 mov.u32 %r153,%r319; .loc 1 655 9 mov.u32 %r103,%r319; $L12: .loc 1 671 18 add.u64 %r261,%r261,4; .loc 1 671 12 mov.u32 %r151,%r247; $L13: .loc 1 672 11 setp.eq.u32 %r320,%r151,100; @ %r320 bra $L14; setp.gt.u32 %r321,%r151,100; @ %r321 bra $L15; setp.eq.u32 %r322,%r151,46; @ %r322 bra $L16; setp.gt.u32 %r323,%r151,46; @ %r323 bra $L17; setp.eq.u32 %r324,%r151,42; @ %r324 bra $L18; setp.gt.u32 %r325,%r151,42; @ %r325 bra $L19; setp.eq.u32 %r326,%r151,32; @ %r326 bra $L20; setp.eq.u32 %r327,%r151,35; @ %r327 bra $L21; bra $L239; $L19: setp.eq.u32 %r328,%r151,43; @ %r328 bra $L23; setp.eq.u32 %r329,%r151,45; @ %r329 bra $L24; bra $L25; $L17: setp.eq.u32 %r330,%r151,88; @ %r330 bra $L26; setp.gt.u32 %r331,%r151,88; @ %r331 bra $L27; setp.eq.u32 %r332,%r151,48; @ %r332 bra $L28; add.u32 %r333,%r151,-49; setp.gt.u32 %r334,%r333,8; @ %r334 bra $L25; mov.u64 %r180,%r261; .loc 1 817 6 mov.u32 %r153,0; bra $L29; $L27: .loc 1 672 11 setp.eq.u32 %r335,%r151,99; @ %r335 bra $L30; bra $L25; $L15: setp.eq.u32 %r336,%r151,112; @ %r336 bra $L31; setp.gt.u32 %r337,%r151,112; @ %r337 bra $L32; setp.eq.u32 %r338,%r151,108; @ %r338 bra $L33; setp.gt.u32 %r339,%r151,108; @ %r339 bra $L34; setp.eq.u32 %r340,%r151,104; @ %r340 bra $L35; setp.eq.u32 %r341,%r151,105; @ %r341 bra $L14; bra $L25; $L34: setp.eq.u32 %r342,%r151,110; @ %r342 bra $L36; setp.eq.u32 %r343,%r151,111; @ %r343 bra $L37; bra $L25; $L32: setp.eq.u32 %r344,%r151,117; @ %r344 bra $L38; setp.gt.u32 %r345,%r151,117; @ %r345 bra $L39; setp.eq.u32 %r346,%r151,113; @ %r346 bra $L40; setp.eq.u32 %r347,%r151,115; @ %r347 bra $L41; bra $L25; $L39: setp.ne.u32 %r348,%r151,120; @ %r348 bra $L25; setp.eq.u32 %r349,%r172,0; @ %r349 bra $L42; st.u32 [%frame+320],%r173; $L42: .loc 1 1291 10 cvta.const.u64 %r33,$LC1; bra $L43; $L20: .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 704 7 setp.ne.u32 %r350,%r173,0; selp.u32 %r172,%r172,1,%r350; selp.u32 %r173,%r173,32,%r350; bra $L12; $L21: .loc 1 708 10 or.b32 %r103,%r103,1; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 709 4 bra $L12; $L18: .loc 1 747 10 add.u64 %r217,%r262,4; ld.u32 %r153,[%r262]; .loc 1 751 7 setp.lt.s32 %r351,%r153,0; @ %r351 bra $L45; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 747 10 mov.u64 %r262,%r217; bra $L12; $L45: .loc 1 753 10 neg.s32 %r153,%r153; .loc 1 747 10 mov.u64 %r262,%r217; $L24: .loc 1 756 10 or.b32 %r103,%r103,4; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 757 4 bra $L12; $L23: .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 760 4 mov.u32 %r172,1; .loc 1 759 9 mov.u32 %r173,%r151; .loc 1 760 4 bra $L12; $L16: .loc 1 762 18 add.u64 %r192,%r261,4; .loc 1 762 12 ld.u32 %r151,[%r261]; .loc 1 762 7 setp.eq.u32 %r352,%r151,42; @ %r352 bra $L46; .loc 1 801 11 add.u32 %r353,%r151,-48; setp.le.u32 %r354,%r353,9; @ %r354 bra $L47; .loc 1 762 18 mov.u64 %r261,%r192; .loc 1 801 11 mov.u32 %r154,%r319; bra $L13; $L46: ld.u32 %r355,[%r262]; max.s32 %r154,%r355,-1; .loc 1 671 14 ld.u32 %r247,[%r261+4]; .loc 1 792 10 add.u64 %r262,%r262,4; .loc 1 762 18 mov.u64 %r261,%r192; .loc 1 798 5 bra $L12; $L47: mov.u64 %r184,%r192; .loc 1 800 6 mov.u32 %r191,%r319; $L49: .loc 1 802 12 shl.b32 %r357,%r191,2; add.u32 %r358,%r357,%r191; add.u32 %r359,%r358,%r358; .loc 1 802 16 add.u32 %r360,%r359,-48; add.u32 %r191,%r360,%r151; mov.u64 %r179,%r184; add.u64 %r261,%r184,4; mov.u64 %r184,%r261; .loc 1 803 8 ld.u32 %r151,[%r179]; .loc 1 801 11 add.u32 %r361,%r151,-48; setp.le.u32 %r362,%r361,9; @ %r362 bra $L49; .loc 1 805 9 max.s32 %r154,%r191,-1; .loc 1 806 4 bra $L13; $L28: .loc 1 813 10 or.b32 %r103,%r103,128; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 814 4 bra $L12; $L29: .loc 1 819 12 shl.b32 %r364,%r153,2; add.u32 %r365,%r364,%r153; add.u32 %r366,%r365,%r365; .loc 1 819 16 add.u32 %r367,%r366,-48; add.u32 %r153,%r367,%r151; mov.u64 %r120,%r180; add.u64 %r180,%r180,4; mov.u64 %r261,%r180; .loc 1 820 8 ld.u32 %r151,[%r120]; .loc 1 821 13 add.u32 %r368,%r151,-48; setp.le.u32 %r369,%r368,9; @ %r369 bra $L29; bra $L13; $L35: .loc 1 847 11 or.b32 %r103,%r103,64; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 848 4 bra $L12; $L33: .loc 1 851 8 ld.u32 %r247,[%r261]; .loc 1 851 7 setp.ne.u32 %r370,%r247,108; @ %r370 bra $L51; .loc 1 853 11 or.b32 %r103,%r103,32; .loc 1 671 14 ld.u32 %r247,[%r261+4]; .loc 1 852 8 add.u64 %r261,%r261,4; bra $L12; $L51: .loc 1 856 11 or.b32 %r103,%r103,16; bra $L12; $L40: .loc 1 859 10 or.b32 %r103,%r103,32; .loc 1 762 14 ld.u32 %r247,[%r261]; .loc 1 860 4 bra $L12; $L30: setp.eq.u32 %r371,%r172,0; @ %r371 bra $L52; st.u32 [%frame+320],%r173; $L52: .loc 1 747 10 ld.u32 %r167,[%r262]; add.u64 %r262,%r262,4; .loc 1 903 30 and.b32 %r372,%r103,16; .loc 1 903 19 setp.ne.u32 %r373,%r372,0; @ %r373 bra $L53; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r167; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r375,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r376,%r375,-1; @ %r376 bra $L54; .loc 1 906 20 ld.u16 %r378,[%r260+16]; or.b16 %r377,%r378,64; st.u16 [%r260+16],%r377; .loc 1 1536 31 mov.u32 %r258,%r375; bra $L1; $L54: .loc 1 909 13 mov.u32 %r167,%r375; $L53: .loc 1 909 11 st.u32 [%frame],%r167; .loc 1 915 10 mov.u32 %r379,0; st.u32 [%frame+4],%r379; .loc 1 917 9 st.u32 [%frame+320],%r379; .loc 1 918 4 mov.u32 %r158,1; .loc 1 916 9 mov.u32 %r159,%r158; .loc 1 902 7 mov.u64 %r143,%frame; .loc 1 918 4 bra $L55; $L14: setp.eq.u32 %r381,%r172,0; @ %r381 bra $L56; st.u32 [%frame+320],%r173; $L56: .loc 1 921 13 and.b32 %r382,%r103,32; setp.eq.u32 %r383,%r382,0; @ %r383 bra $L57; add.u64 %r218,%r262,7; and.b64 %r219,%r218,-8; add.u64 %r262,%r219,8; ld.u64 %r53,[%r219]; mov.u64 %r156,%r53; bra $L58; $L57: and.b32 %r384,%r103,16; setp.eq.u32 %r385,%r384,0; @ %r385 bra $L59; add.u64 %r208,%r262,7; and.b64 %r223,%r208,-8; add.u64 %r262,%r223,8; ld.u64 %r53,[%r223]; mov.u64 %r156,%r53; bra $L58; $L59: .loc 1 747 10 ld.u32 %r249,[%r262]; add.u64 %r262,%r262,4; .loc 1 921 13 and.b32 %r386,%r103,64; setp.eq.u32 %r387,%r386,0; @ %r387 bra $L60; cvt.u16.u32 %r388,%r249; cvt.s64.s16 %r156,%r388; .loc 1 923 8 mov.u64 %r53,%r156; bra $L58; $L60: .loc 1 921 13 cvt.s64.s32 %r156,%r249; .loc 1 923 8 mov.u64 %r53,%r156; $L58: .loc 1 923 7 setp.ge.s64 %r391,%r53,0; @ %r391 bra $L61; .loc 1 929 12 neg.s64 %r156,%r156; mov.u32 %r166,45; .loc 1 932 9 mov.u32 %r157,1; bra $L62; $L36: setp.eq.u32 %r392,%r172,0; @ %r392 bra $L63; st.u32 [%frame+320],%r173; $L63: .loc 1 921 13 add.u64 %r393,%r262,7; and.b64 %r252,%r393,-8; add.u64 %r262,%r252,8; .loc 1 1132 14 and.b32 %r394,%r103,32; .loc 1 1132 7 setp.eq.u32 %r395,%r394,0; @ %r395 bra $L64; .loc 1 1133 34 ld.u64 %r396,[%r252]; cvt.s64.s32 %r397,%r258; st.u64 [%r396],%r397; bra $L5; $L64: .loc 1 1136 14 and.b32 %r398,%r103,16; .loc 1 1136 7 setp.eq.u32 %r399,%r398,0; @ %r399 bra $L66; .loc 1 1137 34 ld.u64 %r400,[%r252]; cvt.s64.s32 %r401,%r258; st.u64 [%r400],%r401; bra $L5; $L66: .loc 1 1138 19 and.b32 %r402,%r103,64; .loc 1 1138 12 setp.eq.u32 %r403,%r402,0; @ %r403 bra $L67; .loc 1 1139 35 ld.u64 %r404,[%r252]; st.u16 [%r404],%r258; bra $L5; $L67: .loc 1 1145 33 ld.u64 %r405,[%r252]; st.u32 [%r405],%r258; bra $L5; $L37: .loc 1 1148 13 and.b32 %r406,%r103,32; setp.eq.u32 %r407,%r406,0; @ %r407 bra $L68; add.u64 %r210,%r262,7; and.b64 %r209,%r210,-8; add.u64 %r262,%r209,8; ld.u64 %r156,[%r209]; .loc 1 1149 9 mov.u32 %r157,0; bra $L69; $L68: .loc 1 1148 13 and.b32 %r408,%r103,16; setp.eq.u32 %r409,%r408,0; @ %r409 bra $L70; add.u64 %r211,%r262,7; and.b64 %r183,%r211,-8; add.u64 %r262,%r183,8; ld.u64 %r156,[%r183]; .loc 1 1149 9 mov.u32 %r157,0; bra $L69; $L70: .loc 1 747 10 ld.u32 %r253,[%r262]; add.u64 %r262,%r262,4; .loc 1 1148 13 and.b32 %r410,%r103,64; setp.eq.u32 %r411,%r410,0; @ %r411 bra $L71; cvt.u16.u32 %r412,%r253; cvt.u64.u16 %r156,%r412; .loc 1 1149 9 mov.u32 %r157,0; bra $L69; $L71: .loc 1 1148 13 cvt.u64.u32 %r156,%r253; .loc 1 1149 9 mov.u32 %r157,%r410; bra $L69; $L31: .loc 1 1163 25 add.u64 %r212,%r262,7; and.b64 %r182,%r212,-8; add.u64 %r262,%r182,8; .loc 1 1163 11 ld.u64 %r156,[%r182]; .loc 1 1166 10 or.b32 %r103,%r103,2; .loc 1 1167 10 mov.u32 %r413,48; st.u32 [%frame+312],%r413; .loc 1 1168 10 mov.u32 %r414,120; st.u32 [%frame+316],%r414; .loc 1 1165 10 cvta.const.u64 %r33,$LC1; .loc 1 1164 9 mov.u32 %r157,2; .loc 1 1169 4 bra $L69; $L41: .loc 1 1174 7 add.u64 %r213,%r262,7; and.b64 %r206,%r213,-8; add.u64 %r262,%r206,8; ld.u64 %r143,[%r206]; .loc 1 1178 9 mov.u32 %r415,0; st.u32 [%frame+320],%r415; .loc 1 1184 7 setp.ne.u64 %r416,%r143,0; @ %r416 bra $L72; .loc 1 1186 39 min.u32 %r159,%r154,6; mov.u32 %r158,%r159; .loc 1 1185 8 cvta.const.u64 %r143,$LC2; bra $L55; $L72: .loc 1 1242 30 and.b32 %r74,%r103,16; .loc 1 1242 19 setp.ne.u32 %r417,%r74,0; @ %r417 bra $L73; .loc 1 1246 8 setp.eq.u32 %r418,%r154,-1; @ %r418 bra $L74; .loc 1 1247 16 cvt.s64.s32 %r163,%r154; mov.u32 %r420,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r420; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r163; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r422,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r423,%r422,0; @ %r423 bra $L75; .loc 1 1248 21 sub.u64 %r163,%r422,%r143; bra $L75; $L74: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r425,[%value_in]; } mov.u64 %r163,%r425; $L75: .loc 1 1251 8 setp.le.u64 %r426,%r163,39; @ %r426 bra $L76; .loc 1 1252 64 add.u64 %r429,%r163,1; .loc 1 1252 39 shl.b64 %r430,%r429,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r430; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r431,[%value_in]; } mov.u64 %r176,%r431; .loc 1 1252 12 setp.ne.u64 %r432,%r431,0; @ %r432 bra $L145; .loc 1 1254 18 ld.u16 %r434,[%r260+16]; or.b16 %r433,%r434,64; st.u16 [%r260+16],%r433; .loc 1 1536 31 mov.u32 %r258,-1; bra $L1; $L76: .loc 1 1260 25 setp.eq.u64 %r718,%r163,0; @ %r718 bra $L146; mov.u64 %r162,0; .loc 1 1259 9 mov.u64 %r176,%frame; bra $L77; $L145: mov.u64 %r162,%r176; setp.eq.u64 %r718,%r163,0; $L77: mov.u64 %r193,%r176; mov.u64 %r196,0; $L79: .loc 1 1261 20 add.u64 %r436,%r143,%r196; ld.s8 %r437,[%r436]; st.u32 [%r193],%r437; .loc 1 1260 25 add.u64 %r196,%r196,1; add.u64 %r193,%r193,4; setp.gt.u64 %r438,%r163,%r196; @ %r438 bra $L79; .loc 1 1260 35 @ %r718 bra $L80; cvt.u32.u64 %r439,%r163; bra $L81; $L80: mov.u32 %r439,1; $L81: mov.u32 %r159,%r439; .loc 1 1260 25 selp.u64 %r443,1,%r163,%r718; .loc 1 1262 7 shl.b64 %r445,%r443,2; add.u64 %r228,%r176,%r445; mov.u32 %r158,%r159; mov.u64 %r143,%r176; bra $L78; $L146: .loc 1 1260 25 mov.u32 %r158,%r74; .loc 1 1260 15 mov.u32 %r159,%r74; .loc 1 1260 25 mov.u64 %r228,%frame; mov.u64 %r162,%r163; .loc 1 1259 9 mov.u64 %r143,%frame; $L78: .loc 1 1262 14 mov.u32 %r446,0; st.u32 [%r228],%r446; .loc 1 656 9 mov.u32 %r154,%r74; .loc 1 1242 42 mov.u32 %r152,%r103; bra $L84; $L73: .loc 1 1265 12 setp.eq.u32 %r447,%r154,-1; @ %r447 bra $L85; .loc 1 1271 18 cvt.s64.s32 %r451,%r154; mov.u32 %r449,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r449; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r451; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r452,[%value_in]; } mov.u64 %r162,%r452; .loc 1 1273 8 setp.eq.u64 %r453,%r162,0; @ %r453 bra $L147; .loc 1 1274 15 sub.u64 %r454,%r162,%r143; shr.s64 %r456,%r454,2; .loc 1 1274 11 cvt.u32.u64 %r457,%r456; min.s32 %r159,%r457,%r154; .loc 1 1424 10 max.s32 %r158,%r159,0; mov.u32 %r152,%r103; mov.u64 %r162,0; .loc 1 656 9 mov.u32 %r154,%r449; bra $L84; $L85: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r143; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r459,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r159,%r459; .loc 1 1424 10 max.s32 %r158,%r159,0; mov.u32 %r152,%r103; mov.u64 %r162,0; .loc 1 656 9 mov.u32 %r154,0; bra $L84; $L38: .loc 1 1284 13 and.b32 %r460,%r103,32; setp.eq.u32 %r461,%r460,0; @ %r461 bra $L86; add.u64 %r205,%r262,7; and.b64 %r224,%r205,-8; add.u64 %r262,%r224,8; ld.u64 %r156,[%r224]; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L86: .loc 1 1284 13 and.b32 %r462,%r103,16; setp.eq.u32 %r463,%r462,0; @ %r463 bra $L87; add.u64 %r215,%r262,7; and.b64 %r214,%r215,-8; add.u64 %r262,%r214,8; ld.u64 %r156,[%r214]; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L87: .loc 1 747 10 ld.u32 %r254,[%r262]; add.u64 %r262,%r262,4; .loc 1 1284 13 and.b32 %r464,%r103,64; setp.eq.u32 %r465,%r464,0; @ %r465 bra $L88; cvt.u16.u32 %r466,%r254; cvt.u64.u16 %r156,%r466; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L88: .loc 1 1284 13 cvt.u64.u32 %r156,%r254; .loc 1 1285 9 mov.u32 %r157,1; bra $L69; $L26: setp.eq.u32 %r467,%r172,0; @ %r467 bra $L89; st.u32 [%frame+320],%r173; $L89: .loc 1 1288 10 cvta.const.u64 %r33,$LC0; $L43: .loc 1 1292 17 and.b32 %r468,%r103,32; setp.eq.u32 %r469,%r468,0; @ %r469 bra $L90; add.u64 %r220,%r262,7; and.b64 %r175,%r220,-8; add.u64 %r262,%r175,8; ld.u64 %r156,[%r175]; bra $L91; $L90: and.b32 %r470,%r103,16; setp.eq.u32 %r471,%r470,0; @ %r471 bra $L92; add.u64 %r222,%r262,7; and.b64 %r221,%r222,-8; add.u64 %r262,%r221,8; ld.u64 %r156,[%r221]; bra $L91; $L92: .loc 1 747 10 ld.u32 %r248,[%r262]; add.u64 %r262,%r262,4; .loc 1 1292 17 and.b32 %r472,%r103,64; setp.eq.u32 %r473,%r472,0; @ %r473 bra $L93; cvt.u16.u32 %r474,%r248; cvt.u64.u16 %r156,%r474; bra $L91; $L93: cvt.u64.u32 %r156,%r248; $L91: .loc 1 1295 14 and.b32 %r475,%r103,1; .loc 1 1295 7 setp.eq.u32 %r476,%r475,0; @ %r476 bra $L148; .loc 1 1295 20 setp.eq.u64 %r477,%r156,0; @ %r477 bra $L149; .loc 1 1296 11 mov.u32 %r478,48; st.u32 [%frame+312],%r478; .loc 1 1297 11 st.u32 [%frame+316],%r151; .loc 1 1298 11 or.b32 %r103,%r103,2; .loc 1 1293 9 mov.u32 %r157,2; bra $L69; $L148: mov.u32 %r157,2; bra $L69; $L149: mov.u32 %r157,2; $L69: .loc 1 1305 1 mov.u32 %r166,0; $L62: .loc 1 930 10 st.u32 [%frame+320],%r166; .loc 1 1311 14 setp.eq.u32 %r479,%r154,-1; @ %r479 bra $L94; .loc 1 1312 11 and.b32 %r152,%r103,-129; .loc 1 1320 15 set.u32.ne.u64 %r481,%r156,0; neg.s32 %r482,%r481; mov.u32 %r480,%r482; .loc 1 1320 28 set.u32.ne.u32 %r484,%r154,0; neg.s32 %r485,%r484; mov.u32 %r483,%r485; .loc 1 1320 20 cvt.u16.u8 %r744,%r480; mov.u16 %r487,%r744; cvt.u16.u8 %r744,%r483; mov.u16 %r488,%r744; or.b16 %r486,%r487,%r488; cvt.u32.u16 %r489,%r486; .loc 1 1320 7 cvt.u16.u8 %r490,%r489; setp.eq.u16 %r491,%r490,0; @ %r491 bra $L95; .loc 1 1312 11 mov.u32 %r103,%r152; $L94: setp.eq.u32 %r492,%r157,1; @ %r492 bra $L96; setp.eq.u32 %r493,%r157,2; @ %r493 bra $L150; mov.u64 %r143,%r717; $L98: mov.u64 %r135,%r143; .loc 1 1329 13 add.u64 %r143,%r143,-4; .loc 1 1329 15 cvt.u32.u64 %r494,%r156; and.b32 %r495,%r494,7; add.u32 %r102,%r495,48; .loc 1 1329 13 st.u32 [%r143],%r102; .loc 1 1330 14 shr.u64 %r156,%r156,3; .loc 1 1331 15 setp.ne.u64 %r496,%r156,0; @ %r496 bra $L98; .loc 1 1333 22 set.u32.ne.u32 %r498,%r102,48; neg.s32 %r499,%r498; mov.u32 %r497,%r499; .loc 1 1333 9 mov.u32 %r500,%r103; cvt.u16.u8 %r744,%r500; mov.u16 %r502,%r744; and.b16 %r501,%r502,1; cvt.u32.u16 %r503,%r501; .loc 1 1333 22 cvt.u16.u8 %r744,%r497; mov.u16 %r505,%r744; cvt.u16.u8 %r744,%r503; mov.u16 %r506,%r744; and.b16 %r504,%r505,%r506; cvt.u32.u16 %r507,%r504; cvt.u16.u8 %r508,%r507; setp.ne.u16 %r509,%r508,0; @ %r509 bra $L99; .loc 1 1395 21 sub.u64 %r511,%r717,%r143; shr.s64 %r513,%r511,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r513; mov.u32 %r152,%r103; bra $L100; $L99: .loc 1 1334 13 add.u64 %r190,%r135,-8; mov.u32 %r514,48; st.u32 [%r143+-4],%r514; .loc 1 1395 21 sub.u64 %r516,%r717,%r190; shr.s64 %r518,%r516,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r518; mov.u32 %r152,%r103; .loc 1 1334 13 mov.u64 %r143,%r190; bra $L100; $L154: .loc 1 1312 11 mov.u32 %r103,%r152; $L96: .loc 1 1339 9 setp.gt.u64 %r519,%r156,9; @ %r519 bra $L151; .loc 1 1340 15 cvt.u32.u64 %r520,%r156; add.u32 %r521,%r520,48; .loc 1 1340 13 st.u32 [%frame+156],%r521; .loc 1 1341 7 mov.u32 %r152,%r103; mov.u32 %r159,1; .loc 1 1340 13 add.u64 %r143,%frame,156; .loc 1 1341 7 bra $L100; $L151: .loc 1 1319 7 mov.u64 %r143,%r717; $L101: .loc 1 1347 14 add.u64 %r143,%r143,-4; .loc 1 1347 16 rem.u64 %r523,%r156,10; cvt.u32.u64 %r524,%r523; add.u32 %r525,%r524,48; .loc 1 1347 14 st.u32 [%r143],%r525; mov.u64 %r131,%r156; .loc 1 1366 15 div.u64 %r156,%r156,10; .loc 1 1367 22 setp.gt.u64 %r528,%r131,9; @ %r528 bra $L101; .loc 1 1395 21 sub.u64 %r530,%r717,%r143; shr.s64 %r532,%r530,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r532; mov.u32 %r152,%r103; bra $L100; $L150: mov.u64 %r143,%r717; $L97: .loc 1 1372 13 add.u64 %r143,%r143,-4; .loc 1 1372 28 and.b64 %r533,%r156,15; .loc 1 1372 20 shl.b64 %r534,%r533,2; add.u64 %r535,%r33,%r534; .loc 1 1372 13 ld.u32 %r536,[%r535]; st.u32 [%r143],%r536; .loc 1 1373 14 shr.u64 %r156,%r156,4; .loc 1 1374 15 setp.ne.u64 %r537,%r156,0; @ %r537 bra $L97; .loc 1 1395 21 sub.u64 %r539,%r717,%r143; shr.s64 %r541,%r539,2; .loc 1 1395 9 cvt.u32.u64 %r159,%r541; mov.u32 %r152,%r103; bra $L100; $L95: .loc 1 1392 32 setp.ne.u32 %r542,%r157,0; @ %r542 bra $L152; .loc 1 1392 55 and.b32 %r159,%r103,1; .loc 1 1392 45 setp.eq.u32 %r543,%r159,0; @ %r543 bra $L153; .loc 1 1393 32 mov.u32 %r544,48; st.u32 [%frame+156],%r544; mov.u32 %r154,%r157; add.u64 %r143,%frame,156; bra $L100; $L152: mov.u32 %r154,0; mov.u32 %r159,%r154; .loc 1 1319 7 mov.u64 %r143,%r717; bra $L100; $L153: mov.u32 %r154,%r157; mov.u64 %r143,%r717; $L100: .loc 1 1424 10 max.s32 %r158,%r154,%r159; mov.u64 %r162,0; bra $L84; $L239: setp.eq.u32 %r545,%r172,0; @ %r545 bra $L102; $L141: st.u32 [%frame+320],%r173; $L102: .loc 1 1399 7 setp.eq.u32 %r546,%r151,0; @ %r546 bra $L11; $L142: .loc 1 1403 8 st.u32 [%frame],%r151; .loc 1 1405 9 mov.u32 %r547,0; st.u32 [%frame+320],%r547; .loc 1 1406 4 mov.u32 %r158,1; .loc 1 1404 9 mov.u32 %r159,%r158; .loc 1 1402 7 mov.u64 %r143,%frame; .loc 1 1406 4 bra $L55; $L147: mov.u32 %r158,%r154; mov.u32 %r159,%r154; mov.u32 %r152,%r103; .loc 1 656 9 mov.u32 %r154,%r449; $L84: .loc 1 1425 6 ld.u32 %r548,[%frame+320]; setp.eq.u32 %r549,%r548,0; @ %r549 bra $L103; .loc 1 1426 10 add.u32 %r158,%r158,1; $L103: .loc 1 1427 13 and.b32 %r117,%r152,2; .loc 1 1427 6 setp.eq.u32 %r716,%r117,0; @ %r716 bra $L104; .loc 1 1428 10 add.u32 %r158,%r158,2; $L104: .loc 1 1431 14 and.b32 %r118,%r152,132; .loc 1 1432 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1431 6 setp.ne.u32 %r551,%r118,0; @ %r551 bra $L105; .loc 1 1432 4 sub.u32 %r198,%r153,%r158; setp.le.s32 %r552,%r198,0; @ %r552 bra $L105; setp.le.s32 %r553,%r198,16; @ ! %r553 bra $L240; cvta.const.u64 %r715,blanks$1; bra $L106; $L240: cvta.const.u64 %r715,blanks$1; $L110: st.u64 [%r160],%r715; mov.u64 %r555,64; st.u64 [%r160+8],%r555; add.u64 %r237,%r237,64; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r556,%r238,7; @ %r556 bra $L107; add.u64 %r160,%r160,16; bra $L108; $L107: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r561,[%value_in]; } setp.ne.u32 %r562,%r561,0; @ %r562 bra $L109; ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; mov.u64 %r160,%r717; $L108: add.u32 %r198,%r198,-16; setp.gt.s32 %r563,%r198,16; @ %r563 bra $L110; $L106: st.u64 [%r160],%r715; cvt.s64.s32 %r565,%r198; shl.b64 %r121,%r565,2; st.u64 [%r160+8],%r121; add.u64 %r237,%r237,%r121; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r566,%r238,7; @ %r566 bra $L111; add.u64 %r160,%r160,16; bra $L105; $L111: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r571,[%value_in]; } setp.ne.u32 %r572,%r571,0; @ %r572 bra $L109; .loc 1 1436 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1432 4 mov.u64 %r160,%r717; $L105: .loc 1 1435 6 ld.u32 %r573,[%frame+320]; setp.eq.u32 %r574,%r573,0; @ %r574 bra $L112; .loc 1 1436 4 add.u32 %r238,%r238,1; st.u64 [%r160],%r738; mov.u64 %r576,4; st.u64 [%r160+8],%r576; add.u64 %r237,%r237,4; st.u64 [%frame+304],%r237; st.u32 [%frame+296],%r238; setp.gt.s32 %r577,%r238,7; @ %r577 bra $L113; add.u64 %r160,%r160,16; bra $L112; $L113: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r582,[%value_in]; } setp.ne.u32 %r583,%r582,0; @ %r583 bra $L109; .loc 1 1438 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1436 4 mov.u64 %r160,%r717; $L112: .loc 1 1437 6 @ %r716 bra $L114; .loc 1 1438 4 add.u32 %r238,%r238,1; st.u64 [%r160],%r737; mov.u64 %r586,8; st.u64 [%r160+8],%r586; add.u64 %r237,%r237,8; st.u64 [%frame+304],%r237; st.u32 [%frame+296],%r238; setp.gt.s32 %r587,%r238,7; @ %r587 bra $L115; add.u64 %r160,%r160,16; bra $L114; $L115: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r592,[%value_in]; } setp.ne.u32 %r593,%r592,0; @ %r593 bra $L109; .loc 1 1442 4 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1438 4 mov.u64 %r160,%r717; $L114: .loc 1 1441 6 setp.ne.u32 %r594,%r118,128; @ %r594 bra $L116; .loc 1 1442 4 sub.u32 %r201,%r153,%r158; setp.le.s32 %r595,%r201,0; @ %r595 bra $L116; setp.le.s32 %r596,%r201,16; @ ! %r596 bra $L241; cvta.const.u64 %r719,zeroes$0; bra $L117; $L241: cvta.const.u64 %r719,zeroes$0; $L120: st.u64 [%r160],%r719; mov.u64 %r598,64; st.u64 [%r160+8],%r598; add.u64 %r237,%r237,64; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r599,%r238,7; @ %r599 bra $L118; add.u64 %r160,%r160,16; bra $L119; $L118: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r604,[%value_in]; } setp.ne.u32 %r605,%r604,0; @ %r605 bra $L109; ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; mov.u64 %r160,%r717; $L119: add.u32 %r201,%r201,-16; setp.gt.s32 %r606,%r201,16; @ %r606 bra $L120; $L117: st.u64 [%r160],%r719; cvt.s64.s32 %r608,%r201; shl.b64 %r128,%r608,2; st.u64 [%r160+8],%r128; add.u64 %r237,%r237,%r128; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r609,%r238,7; @ %r609 bra $L121; add.u64 %r160,%r160,16; bra $L116; $L121: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r614,[%value_in]; } setp.ne.u32 %r615,%r614,0; @ %r615 bra $L109; .loc 1 1445 3 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1442 4 mov.u64 %r160,%r717; $L116: .loc 1 1445 3 sub.u32 %r125,%r154,%r159; setp.le.s32 %r616,%r125,0; @ %r616 bra $L122; setp.le.s32 %r617,%r125,16; @ ! %r617 bra $L242; cvta.const.u64 %r719,zeroes$0; bra $L123; $L242: cvta.const.u64 %r719,zeroes$0; $L126: st.u64 [%r160],%r719; mov.u64 %r619,64; st.u64 [%r160+8],%r619; add.u64 %r237,%r237,64; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r620,%r238,7; @ %r620 bra $L124; add.u64 %r160,%r160,16; bra $L125; $L124: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r625,[%value_in]; } setp.ne.u32 %r626,%r625,0; @ %r626 bra $L109; ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; mov.u64 %r160,%r717; $L125: add.u32 %r125,%r125,-16; setp.gt.s32 %r627,%r125,16; @ %r627 bra $L126; $L123: st.u64 [%r160],%r719; cvt.s64.s32 %r629,%r125; shl.b64 %r132,%r629,2; st.u64 [%r160+8],%r132; add.u64 %r237,%r237,%r132; st.u64 [%frame+304],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+296],%r238; setp.gt.s32 %r630,%r238,7; @ %r630 bra $L127; add.u64 %r160,%r160,16; bra $L122; $L127: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r635,[%value_in]; } setp.ne.u32 %r636,%r635,0; @ %r636 bra $L109; .loc 1 1512 3 ld.u64 %r237,[%frame+304]; ld.u32 %r238,[%frame+296]; .loc 1 1445 3 mov.u64 %r160,%r717; $L122: .loc 1 1512 3 st.u64 [%r160],%r143; cvt.s64.s32 %r637,%r159; shl.b64 %r136,%r637,2; st.u64 [%r160+8],%r136; add.u64 %r239,%r136,%r237; st.u64 [%frame+304],%r239; add.u32 %r137,%r238,1; st.u32 [%frame+296],%r137; setp.gt.s32 %r638,%r137,7; @ %r638 bra $L128; add.u64 %r161,%r160,16; bra $L129; $L128: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r643,[%value_in]; } setp.ne.u32 %r644,%r643,0; @ %r644 bra $L109; .loc 1 1516 4 ld.u64 %r239,[%frame+304]; .loc 1 1512 3 mov.u64 %r161,%r717; $L129: .loc 1 1515 13 and.b32 %r645,%r152,4; .loc 1 1515 6 setp.eq.u32 %r646,%r645,0; @ %r646 bra $L130; .loc 1 1516 4 sub.u32 %r145,%r153,%r158; setp.le.s32 %r647,%r145,0; @ %r647 bra $L130; ld.u32 %r240,[%frame+296]; setp.le.s32 %r648,%r145,16; @ ! %r648 bra $L243; cvta.const.u64 %r715,blanks$1; bra $L131; $L243: cvta.const.u64 %r715,blanks$1; $L134: st.u64 [%r161],%r715; mov.u64 %r650,64; st.u64 [%r161+8],%r650; add.u64 %r239,%r239,64; st.u64 [%frame+304],%r239; add.u32 %r240,%r240,1; st.u32 [%frame+296],%r240; setp.gt.s32 %r651,%r240,7; @ %r651 bra $L132; add.u64 %r161,%r161,16; bra $L133; $L132: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r656,[%value_in]; } setp.ne.u32 %r657,%r656,0; @ %r657 bra $L109; ld.u64 %r239,[%frame+304]; ld.u32 %r240,[%frame+296]; mov.u64 %r161,%r717; $L133: add.u32 %r145,%r145,-16; setp.gt.s32 %r658,%r145,16; @ %r658 bra $L134; $L131: st.u64 [%r161],%r715; cvt.s64.s32 %r660,%r145; shl.b64 %r142,%r660,2; st.u64 [%r161+8],%r142; add.u64 %r239,%r239,%r142; st.u64 [%frame+304],%r239; add.u32 %r144,%r240,1; st.u32 [%frame+296],%r144; setp.le.s32 %r661,%r144,7; @ %r661 bra $L130; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r666,[%value_in]; } setp.ne.u32 %r667,%r666,0; @ %r667 bra $L109; .loc 1 1521 3 ld.u64 %r239,[%frame+304]; $L130: .loc 1 1519 33 max.s32 %r668,%r153,%r158; .loc 1 1519 7 add.u32 %r258,%r258,%r668; .loc 1 1521 3 setp.ne.u64 %r669,%r239,0; @ %r669 bra $L135; $L137: mov.u32 %r670,0; st.u32 [%frame+296],%r670; .loc 1 1523 20 setp.ne.u64 %r671,%r162,0; @ %r671 bra $L136; .loc 1 1521 3 mov.u64 %r160,%r717; bra $L5; $L135: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r676,[%value_in]; } setp.ne.u32 %r677,%r676,0; @ ! %r677 bra $L137; bra $L109; $L136: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r162; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r160,%r717; bra $L5; $L11: .loc 1 1529 2 ld.u64 %r680,[%frame+304]; setp.eq.u64 %r681,%r680,0; @ %r681 bra $L138; add.u64 %r685,%frame,288; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r260; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r685; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r686,[%value_in]; } setp.eq.u32 %r687,%r686,0; @ %r687 bra $L138; ld.u16 %r689,[%r260+16]; and.b16 %r688,%r689,64; cvt.s32.s16 %r246,%r688; bra $L10; $L138: ld.u16 %r691,[%r260+16]; and.b16 %r690,%r691,64; cvt.s32.s16 %r246,%r690; bra $L10; $L109: .loc 1 1531 5 setp.ne.u64 %r692,%r162,0; @ %r692 bra $L139; ld.u16 %r694,[%r260+16]; and.b16 %r693,%r694,64; cvt.s32.s16 %r246,%r693; bra $L10; $L139: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r259; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r162; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r698,[%r260+16]; and.b16 %r697,%r698,64; cvt.s32.s16 %r246,%r697; $L10: .loc 1 1536 31 setp.eq.u32 %r699,%r246,0; selp.u32 %r258,%r258,-1,%r699; bra $L1; $L55: .loc 1 656 9 mov.u32 %r152,%r103; mov.u64 %r162,0; mov.u32 %r154,0; bra $L103; $L61: .loc 1 1311 14 setp.ne.u32 %r701,%r154,-1; @ %r701 bra $L140; bra $L96; $L25: setp.ne.u32 %r702,%r172,0; @ ! %r702 bra $L142; bra $L141; $L140: .loc 1 1312 11 and.b32 %r152,%r103,-129; .loc 1 1320 28 set.u32.ne.u32 %r704,%r154,0; neg.s32 %r705,%r704; mov.u32 %r703,%r705; .loc 1 1320 15 set.u32.ne.u64 %r707,%r156,0; neg.s32 %r708,%r707; mov.u32 %r706,%r708; .loc 1 1320 20 cvt.u16.u8 %r744,%r703; mov.u16 %r710,%r744; cvt.u16.u8 %r744,%r706; mov.u16 %r711,%r744; or.b16 %r709,%r710,%r711; cvt.u32.u16 %r712,%r709; .loc 1 1320 7 cvt.u16.u8 %r713,%r712; setp.ne.u16 %r714,%r713,0; @ %r714 bra $L154; mov.u32 %r154,0; mov.u32 %r159,%r154; .loc 1 1319 7 mov.u64 %r143,%r717; bra $L100; $L1: .loc 1 1538 1 mov.u32 %value,%r258; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1541 0 0 0 644 50290 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: __ssvfiwscanf_r .visible .func (.param .u32 %value_out) __ssvfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __submore .extern .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .extern .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN FUNCTION DEF: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r34; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u32 %r72; mov.u64 %r46,%ar0; mov.u32 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 269 6 setp.ne.u32 %r49,%r47,-1; @ ! %r49 bra $L1; .loc 1 273 14 ld.u16 %r51,[%r48+16]; and.b16 %r50,%r51,-33; st.u16 [%r48+16],%r50; .loc 1 282 13 ld.u32 %r44,[%r48+8]; .loc 1 280 6 ld.u64 %r52,[%r48+88]; setp.eq.u64 %r53,%r52,0; @ %r53 bra $L4; .loc 1 282 10 ld.u32 %r54,[%r48+96]; setp.le.s32 %r55,%r54,%r44; @ %r55 bra $L5; $L7: .loc 1 286 14 ld.u64 %r27,[%r48]; add.u64 %r56,%r27,-4; st.u64 [%r48],%r56; .loc 1 287 15 st.u8 [%r27+-4],%r47; .loc 1 288 14 ld.u32 %r58,[%r48+8]; add.u32 %r57,%r58,4; st.u32 [%r48+8],%r57; .loc 1 289 14 bra $L1; $L5: .loc 1 282 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r48; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r61,[%value_in]; } .loc 1 282 35 setp.ne.u32 %r62,%r61,0; @ ! %r62 bra $L7; bra $L1; $L4: .loc 1 298 14 ld.u64 %r34,[%r48+24]; .loc 1 298 34 ld.u64 %r45,[%r48]; .loc 1 298 6 setp.eq.u64 %r63,%r34,0; @ %r63 bra $L8; .loc 1 298 29 setp.ge.u64 %r64,%r34,%r45; @ %r64 bra $L8; .loc 1 299 7 ld.u32 %r65,[%r45+-4]; setp.ne.u32 %r66,%r47,%r65; @ %r66 bra $L8; .loc 1 301 14 add.u64 %r67,%r45,-4; st.u64 [%r48],%r67; .loc 1 302 14 add.u32 %r68,%r44,4; st.u32 [%r48+8],%r68; .loc 1 303 14 bra $L1; $L8: .loc 1 311 11 st.u32 [%r48+112],%r44; .loc 1 312 11 st.u64 [%r48+104],%r45; .loc 1 313 19 add.u64 %r69,%r48,116; .loc 1 313 17 st.u64 [%r48+88],%r69; .loc 1 314 17 mov.u32 %r70,3; st.u32 [%r48+96],%r70; .loc 1 315 12 add.u64 %r71,%r48,115; .loc 1 315 10 st.u64 [%r48],%r71; .loc 1 316 23 st.u32 [%r48+115],%r47; .loc 1 317 10 mov.u32 %r72,2; st.u32 [%r48+8],%r72; $L1: .loc 1 319 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __ssvfiwscanf_r .visible .func (.param .u32 %value_out) __ssvfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r26; .reg .u32 %r28; .reg .u32 %r35; .reg .u32 %r46; .reg .u32 %r48; .reg .u64 %r50; .reg .u32 %r55; .reg .u64 %r56; .reg .u32 %r71; .reg .u32 %r74; .reg .u32 %r86; .reg .u64 %r95; .reg .u32 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u64 %r114; .reg .u64 %r116; .reg .u64 %r119; .reg .u64 %r121; .reg .u64 %r125; .reg .u32 %r126; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r140; .reg .u32 %r141; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u64 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r156; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u64 %r166; .reg .u32 %r167; .reg .u32 %r173; .reg .u64 %r175; .reg .u32 %r176; .reg .u32 %r182; .reg .u64 %r184; .reg .u32 %r185; .reg .u32 %r191; .reg .u64 %r193; .reg .u32 %r194; .reg .u32 %r200; .reg .u64 %r202; .reg .u32 %r203; .reg .u32 %r209; .reg .u64 %r211; .reg .u32 %r212; .reg .u32 %r218; .reg .u64 %r220; .reg .u32 %r221; .reg .u32 %r227; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r236; .reg .u32 %r237; .reg .u64 %r239; .reg .u32 %r240; .reg .u64 %r246; .reg .u64 %r248; .reg .u32 %r249; .reg .u32 %r255; .reg .u64 %r257; .reg .u32 %r258; .reg .u64 %r264; .reg .u64 %r266; .reg .u32 %r267; .reg .u32 %r272; .reg .u64 %r278; .reg .u64 %r279; .reg .u64 %r281; .reg .u32 %r283; .reg .u32 %r285; .reg .u64 %r286; .reg .u64 %r287; .reg .u32 %r288; .reg .u64 %r290; .reg .u64 %r291; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r298; .reg .u64 %r299; .reg .u64 %r300; .reg .u64 %r301; .reg .u64 %r302; .reg .u64 %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r307; .reg .u64 %r309; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r314; .reg .u64 %r315; .reg .u64 %r316; .reg .u64 %r317; .reg .u64 %r318; .reg .u16 %r319; .reg .u16 %r320; .reg .pred %r321; .reg .u16 %r322; .reg .u32 %r324; .reg .u32 %r325; .reg .pred %r326; .reg .pred %r327; .reg .u32 %r329; .reg .pred %r330; .reg .pred %r331; .reg .u32 %r334; .reg .pred %r335; .reg .u64 %r336; .reg .u32 %r337; .reg .pred %r339; .reg .u32 %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .u32 %r351; .reg .pred %r352; .reg .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r357; .reg .pred %r358; .reg .pred %r359; .reg .pred %r360; .reg .pred %r361; .reg .pred %r362; .reg .pred %r363; .reg .pred %r364; .reg .pred %r365; .reg .pred %r366; .reg .pred %r367; .reg .pred %r368; .reg .u32 %r371; .reg .pred %r372; .reg .u64 %r373; .reg .u32 %r374; .reg .pred %r376; .reg .pred %r377; .reg .u32 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u16 %r387; .reg .u16 %r388; .reg .u16 %r389; .reg .u32 %r390; .reg .u16 %r391; .reg .pred %r392; .reg .u32 %r393; .reg .pred %r394; .reg .pred %r395; .reg .u32 %r396; .reg .pred %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u64 %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .pred %r405; .reg .pred %r406; .reg .u32 %r407; .reg .u32 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u16 %r413; .reg .u16 %r414; .reg .u16 %r415; .reg .u32 %r416; .reg .u16 %r417; .reg .pred %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r421; .reg .u32 %r422; .reg .u32 %r423; .reg .u32 %r424; .reg .u16 %r425; .reg .u16 %r426; .reg .u16 %r427; .reg .u32 %r428; .reg .u16 %r429; .reg .pred %r430; .reg .pred %r431; .reg .pred %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u64 %r435; .reg .u32 %r436; .reg .pred %r437; .reg .u32 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .u32 %r441; .reg .pred %r442; .reg .u64 %r443; .reg .pred %r444; .reg .u32 %r447; .reg .pred %r448; .reg .u64 %r449; .reg .u32 %r450; .reg .pred %r452; .reg .u32 %r454; .reg .pred %r455; .reg .pred %r458; .reg .pred %r459; .reg .u32 %r462; .reg .pred %r463; .reg .pred %r464; .reg .u64 %r465; .reg .u32 %r466; .reg .pred %r469; .reg .u32 %r473; .reg .u64 %r474; .reg .u64 %r476; .reg .u64 %r482; .reg .pred %r483; .reg .pred %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r488; .reg .pred %r489; .reg .u32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r495; .reg .u32 %r496; .reg .pred %r499; .reg .u64 %r501; .reg .u32 %r503; .reg .pred %r504; .reg .pred %r505; .reg .u32 %r508; .reg .pred %r509; .reg .u64 %r510; .reg .u32 %r511; .reg .pred %r513; .reg .pred %r514; .reg .u64 %r519; .reg .pred %r520; .reg .u64 %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .u32 %r531; .reg .pred %r532; .reg .u64 %r533; .reg .u32 %r534; .reg .pred %r536; .reg .pred %r537; .reg .u64 %r542; .reg .pred %r543; .reg .u64 %r547; .reg .pred %r548; .reg .u64 %r549; .reg .u64 %r551; .reg .pred %r552; .reg .u32 %r553; .reg .u32 %r556; .reg .u64 %r557; .reg .u64 %r559; .reg .u64 %r565; .reg .pred %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .pred %r571; .reg .u32 %r574; .reg .pred %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .pred %r579; .reg .pred %r580; .reg .u64 %r585; .reg .pred %r586; .reg .u64 %r590; .reg .pred %r591; .reg .u32 %r593; .reg .pred %r594; .reg .u32 %r595; .reg .pred %r596; .reg .u32 %r599; .reg .pred %r600; .reg .u32 %r603; .reg .pred %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .pred %r608; .reg .pred %r609; .reg .u32 %r611; .reg .pred %r612; .reg .u32 %r613; .reg .pred %r614; .reg .u32 %r617; .reg .pred %r618; .reg .u32 %r621; .reg .pred %r622; .reg .u64 %r623; .reg .u32 %r624; .reg .pred %r626; .reg .pred %r627; .reg .u32 %r629; .reg .pred %r630; .reg .u32 %r631; .reg .u32 %r634; .reg .u64 %r635; .reg .u64 %r637; .reg .u64 %r642; .reg .pred %r643; .reg .pred %r644; .reg .u32 %r645; .reg .pred %r646; .reg .pred %r648; .reg .u32 %r651; .reg .pred %r652; .reg .u64 %r653; .reg .u32 %r654; .reg .pred %r656; .reg .pred %r657; .reg .u32 %r659; .reg .pred %r660; .reg .u32 %r662; .reg .u64 %r663; .reg .pred %r664; .reg .u64 %r665; .reg .pred %r666; .reg .u32 %r669; .reg .pred %r670; .reg .u64 %r671; .reg .pred %r673; .reg .pred %r674; .reg .pred %r675; .reg .pred %r676; .reg .u32 %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u64 %r680; .reg .u64 %r681; .reg .u64 %r682; .reg .u64 %r683; .reg .pred %r684; .reg .pred %r685; .reg .pred %r686; .reg .pred %r687; .reg .pred %r688; .reg .pred %r689; .reg .pred %r690; .reg .u32 %r691; .reg .pred %r692; .reg .u64 %r693; .reg .u64 %r694; .reg .u64 %r695; .reg .u64 %r696; .reg .pred %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u32 %r703; .reg .pred %r704; .reg .u64 %r705; .reg .pred %r706; .reg .pred %r707; .reg .pred %r711; .reg .u32 %r712; .reg .pred %r713; .reg .pred %r714; .reg .u32 %r718; .reg .u32 %r719; .reg .pred %r720; .reg .u32 %r724; .reg .pred %r725; .reg .u64 %r729; .reg .u64 %r731; .reg .u64 %r732; .reg .u32 %r733; .reg .pred %r734; .reg .u32 %r735; .reg .pred %r736; .reg .u64 %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u64 %r740; .reg .u32 %r741; .reg .pred %r742; .reg .u64 %r743; .reg .pred %r744; .reg .u64 %r749; .reg .u64 %r754; .reg .u64 %r755; .reg .u64 %r756; .reg .u64 %r757; .reg .u64 %r759; .reg .u32 %r760; .reg .pred %r761; .reg .u16 %r762; .reg .u16 %r763; .reg .pred %r764; .reg .pred %r790; .reg .u32 %r791; .reg .pred %r792; .reg .pred %r793; .reg .pred %r795; .reg .pred %r796; .reg .pred %r797; .reg .pred %r798; .reg .u64 %r799; .reg .u16 %r800; mov.u64 %r315,%ar0; mov.u64 %r316,%ar1; mov.u64 %r317,%ar2; mov.u64 %r318,%ar3; .loc 1 553 3 ld.u16 %r320,[%r316+16]; and.b16 %r319,%r320,8192; setp.ne.u16 %r321,%r319,0; @ %r321 bra $L13; or.b16 %r322,%r320,8192; st.u16 [%r316+16],%r322; ld.u32 %r325,[%r316+172]; or.b32 %r324,%r325,8192; st.u32 [%r316+172],%r324; $L13: .loc 1 560 15 add.u64 %r121,%r317,4; .loc 1 560 9 ld.u32 %r103,[%r317]; .loc 1 561 10 setp.eq.u32 %r326,%r103,0; @ %r326 bra $L163; mov.u64 %r50,0; mov.u32 %r310,0; mov.u32 %r48,%r310; mov.u32 %r314,%r310; mov.u64 %r106,%r50; .loc 1 1115 8 add.u64 %r799,%frame,160; bra $L15; $L164: mov.u64 %r110,%r121; bra $L18; $L165: mov.u64 %r110,%r121; bra $L18; $L172: .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L173: mov.u64 %r110,%r121; bra $L18; $L175: mov.u64 %r110,%r121; bra $L18; $L178: mov.u32 %r48,%r272; mov.u64 %r110,%r121; bra $L18; $L179: mov.u32 %r48,%r272; mov.u64 %r110,%r121; bra $L18; $L181: mov.u64 %r110,%r121; $L18: .loc 1 560 15 add.u64 %r121,%r110,4; .loc 1 560 9 ld.u32 %r103,[%r110]; .loc 1 561 10 setp.eq.u32 %r327,%r103,0; @ %r327 bra $L12; $L15: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r103; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r329,[%value_in]; } mov.u32 %r28,%r329; .loc 1 563 10 setp.eq.u32 %r330,%r28,0; @ %r330 bra $L16; $L19: .loc 1 329 9 ld.u32 %r164,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r331,%r164,0; @ %r331 bra $L17; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r334,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r335,%r334,0; @ %r335 bra $L164; .loc 1 333 10 ld.u32 %r164,[%r316+8]; $L17: .loc 1 331 23 ld.u64 %r166,[%r316]; .loc 1 331 6 ld.u32 %r167,[%r166]; .loc 1 332 10 add.u64 %r336,%r166,4; st.u64 [%r316],%r336; .loc 1 333 10 add.u32 %r337,%r164,-4; st.u32 [%r316+8],%r337; .loc 1 565 14 mov.u32 %r163,%r167; .loc 1 565 46 setp.eq.u32 %r339,%r163,-1; @ %r339 bra $L165; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r163; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r341,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r342,%r341,0; @ %r342 bra $L19; bra $L298; $L16: .loc 1 571 10 setp.ne.u32 %r343,%r103,37; @ %r343 bra $L21; .loc 1 586 11 ld.u32 %r285,[%r121]; .loc 1 574 13 mov.u32 %r108,%r28; .loc 1 586 11 mov.u64 %r26,%r121; .loc 1 573 13 mov.u64 %r104,0; bra $L22; $L300: .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 606 10 mov.u32 %r108,16; .loc 1 612 8 mov.u64 %r104,0; $L22: .loc 1 586 15 add.u64 %r121,%r26,4; .loc 1 588 7 setp.eq.u32 %r344,%r285,104; @ %r344 bra $L23; setp.gt.s32 %r345,%r285,104; @ %r345 bra $L24; setp.eq.u32 %r346,%r285,76; @ %r346 bra $L25; setp.gt.s32 %r347,%r285,76; @ %r347 bra $L26; setp.eq.u32 %r348,%r285,42; @ %r348 bra $L27; setp.gt.s32 %r349,%r285,42; @ %r349 bra $L28; setp.eq.u32 %r350,%r285,37; @ %r350 bra $L21; bra $L12; $L28: add.u32 %r351,%r285,-48; setp.gt.u32 %r352,%r351,9; @ ! %r352 bra $L299; bra $L12; $L26: setp.eq.u32 %r353,%r285,99; @ %r353 bra $L30; setp.gt.s32 %r354,%r285,99; @ %r354 bra $L31; setp.eq.u32 %r355,%r285,88; @ %r355 bra $L32; setp.eq.u32 %r356,%r285,91; @ %r356 bra $L33; bra $L12; $L31: setp.eq.u32 %r357,%r285,100; @ %r357 bra $L166; bra $L12; $L24: setp.eq.u32 %r358,%r285,111; @ %r358 bra $L167; setp.gt.s32 %r359,%r285,111; @ %r359 bra $L36; setp.eq.u32 %r360,%r285,108; @ %r360 bra $L37; setp.eq.u32 %r361,%r285,110; @ %r361 bra $L38; setp.eq.u32 %r362,%r285,105; @ %r362 bra $L168; bra $L12; $L36: setp.eq.u32 %r363,%r285,115; @ %r363 bra $L169; setp.gt.s32 %r364,%r285,115; @ %r364 bra $L39; setp.eq.u32 %r365,%r285,112; @ %r365 bra $L40; bra $L12; $L39: setp.eq.u32 %r366,%r285,117; @ %r366 bra $L170; setp.eq.u32 %r367,%r285,120; @ %r367 bra $L32; bra $L12; $L21: .loc 1 329 9 ld.u32 %r173,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r368,%r173,0; @ %r368 bra $L41; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r371,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r372,%r371,0; @ %r372 bra $L44; .loc 1 333 10 ld.u32 %r173,[%r316+8]; $L41: .loc 1 331 23 ld.u64 %r175,[%r316]; .loc 1 331 6 ld.u32 %r176,[%r175]; .loc 1 332 10 add.u64 %r373,%r175,4; st.u64 [%r316],%r373; .loc 1 333 10 add.u32 %r374,%r173,-4; st.u32 [%r316+8],%r374; .loc 1 592 12 mov.u32 %r162,%r176; .loc 1 592 7 setp.eq.u32 %r376,%r162,-1; @ %r376 bra $L44; .loc 1 594 7 setp.eq.u32 %r377,%r103,%r162; @ %r377 bra $L43; .loc 1 596 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r162; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 597 8 bra $L44; $L43: .loc 1 599 9 add.u32 %r48,%r48,1; .loc 1 600 4 mov.u64 %r110,%r121; bra $L18; $L27: .loc 1 604 8 set.u32.ne.u64 %r382,%r104,0; neg.s32 %r383,%r382; mov.u32 %r381,%r383; .loc 1 603 7 set.u32.ne.u32 %r385,%r108,0; neg.s32 %r386,%r385; mov.u32 %r384,%r386; .loc 1 604 8 cvt.u16.u8 %r800,%r381; mov.u16 %r388,%r800; cvt.u16.u8 %r800,%r384; mov.u16 %r389,%r800; or.b16 %r387,%r388,%r389; cvt.u32.u16 %r390,%r387; cvt.u16.u8 %r391,%r390; setp.ne.u16 %r392,%r391,0; @ ! %r392 bra $L300; bra $L12; $L37: .loc 1 609 14 and.b32 %r393,%r108,15; .loc 1 609 7 setp.ne.u32 %r394,%r393,0; @ %r394 bra $L12; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 612 7 setp.ne.u32 %r395,%r285,108; @ %r395 bra $L46; .loc 1 615 14 or.b32 %r108,%r108,2; .loc 1 789 8 ld.u32 %r285,[%r26+8]; .loc 1 614 8 add.u64 %r26,%r26,8; bra $L22; $L46: .loc 1 619 12 or.b32 %r108,%r108,1; .loc 1 586 15 mov.u64 %r26,%r121; bra $L22; $L25: .loc 1 622 14 and.b32 %r396,%r108,15; .loc 1 622 7 setp.ne.u32 %r397,%r396,0; @ %r397 bra $L12; .loc 1 624 10 or.b32 %r108,%r108,2; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 625 4 bra $L22; $L23: .loc 1 637 12 or.b32 %r108,%r108,4; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 638 4 bra $L22; $L299: .loc 1 703 14 and.b32 %r398,%r108,143; .loc 1 703 7 setp.ne.u32 %r399,%r398,0; @ %r399 bra $L12; .loc 1 705 18 shl.b64 %r401,%r104,2; add.u64 %r402,%r401,%r104; add.u64 %r403,%r402,%r402; add.u64 %r116,%r403,-48; .loc 1 705 23 cvt.u64.u32 %r404,%r285; .loc 1 705 10 add.u64 %r104,%r404,%r116; .loc 1 612 8 ld.u32 %r285,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r121; .loc 1 706 4 bra $L22; $L32: .loc 1 749 10 or.b32 %r108,%r108,512; .loc 1 751 9 mov.u64 %r50,_wcstoul_r; .loc 1 752 9 mov.u32 %r28,16; .loc 1 753 4 bra $L35; $L33: .loc 1 781 8 ld.u32 %r35,[%r26+4]; .loc 1 781 7 setp.ne.u32 %r405,%r35,94; @ %r405 bra $L48; .loc 1 784 8 add.u64 %r121,%r26,8; .loc 1 789 8 ld.u32 %r35,[%r26+8]; .loc 1 783 17 mov.u32 %r28,1; $L48: .loc 1 789 7 setp.ne.u32 %r406,%r35,93; @ %r406 bra $L171; .loc 1 790 9 add.u64 %r125,%r121,4; .loc 1 791 11 ld.u32 %r35,[%r121+4]; bra $L49; $L171: mov.u64 %r125,%r121; $L49: .loc 1 791 24 set.u32.ne.u32 %r408,%r35,93; neg.s32 %r409,%r408; mov.u32 %r407,%r409; set.u32.ne.u32 %r411,%r35,0; neg.s32 %r412,%r411; mov.u32 %r410,%r412; cvt.u16.u8 %r800,%r407; mov.u16 %r414,%r800; cvt.u16.u8 %r800,%r410; mov.u16 %r415,%r800; and.b16 %r413,%r414,%r415; cvt.u32.u16 %r416,%r413; cvt.u16.u8 %r417,%r416; setp.eq.u16 %r418,%r417,0; @ %r418 bra $L50; $L51: .loc 1 792 9 add.u64 %r125,%r125,4; .loc 1 791 11 ld.u32 %r126,[%r125]; .loc 1 791 24 set.u32.ne.u32 %r420,%r126,0; neg.s32 %r421,%r420; mov.u32 %r419,%r421; set.u32.ne.u32 %r423,%r126,93; neg.s32 %r424,%r423; mov.u32 %r422,%r424; cvt.u16.u8 %r800,%r419; mov.u16 %r426,%r800; cvt.u16.u8 %r800,%r422; mov.u16 %r427,%r800; and.b16 %r425,%r426,%r427; cvt.u32.u16 %r428,%r425; cvt.u16.u8 %r429,%r428; setp.ne.u16 %r430,%r429,0; @ %r430 bra $L51; $L50: .loc 1 794 7 add.u64 %r110,%r125,4; .loc 1 965 7 setp.eq.u64 %r431,%r104,0; .loc 1 966 12 selp.u64 %r104,-1,%r104,%r431; .loc 1 991 27 sub.u64 %r501,%r125,%r121; shr.s64 %r281,%r501,2; .loc 1 968 27 and.b32 %r503,%r108,17; .loc 1 968 7 setp.eq.u32 %r504,%r503,17; @ ! %r504 bra $L301; bra $L176; $L30: max.u64 %r105,%r104,1; and.b32 %r156,%r108,1; and.b32 %r311,%r108,16; .loc 1 879 14 setp.ne.u32 %r432,%r156,0; @ %r432 bra $L54; bra $L302; $L40: .loc 1 811 10 or.b32 %r108,%r108,544; .loc 1 813 9 mov.u64 %r50,_wcstoul_r; .loc 1 814 9 mov.u32 %r28,16; .loc 1 815 4 bra $L35; $L38: .loc 1 818 14 and.b32 %r433,%r108,16; .loc 1 818 7 setp.ne.u32 %r434,%r433,0; @ %r434 bra $L172; .loc 1 830 11 add.u64 %r435,%r318,7; and.b64 %r279,%r435,-8; ld.u64 %r296,[%r279]; add.u64 %r318,%r279,8; .loc 1 828 14 and.b32 %r436,%r108,4; .loc 1 828 7 setp.eq.u32 %r437,%r436,0; @ %r437 bra $L56; .loc 1 831 12 st.u16 [%r296],%r48; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L56: .loc 1 833 19 and.b32 %r438,%r108,1; .loc 1 833 12 setp.eq.u32 %r439,%r438,0; @ %r439 bra $L57; .loc 1 836 12 cvt.s64.s32 %r440,%r48; st.u64 [%r296],%r440; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L57: .loc 1 839 19 and.b32 %r441,%r108,2; .loc 1 839 12 setp.eq.u32 %r442,%r441,0; @ %r442 bra $L58; .loc 1 842 13 cvt.s64.s32 %r443,%r48; st.u64 [%r296],%r443; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L58: .loc 1 848 12 st.u32 [%r296],%r48; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L166: .loc 1 725 9 mov.u64 %r50,_wcstol_r; .loc 1 726 9 mov.u32 %r310,10; .loc 1 724 6 mov.u32 %r236,3; bra $L59; $L169: .loc 1 588 7 mov.u32 %r236,2; bra $L59; $L61: .loc 1 863 11 add.u32 %r48,%r48,1; $L59: .loc 1 329 9 ld.u32 %r182,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r444,%r182,0; @ %r444 bra $L60; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r447,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r448,%r447,0; @ %r448 bra $L44; .loc 1 333 10 ld.u32 %r182,[%r316+8]; $L60: .loc 1 331 23 ld.u64 %r184,[%r316]; .loc 1 331 6 ld.u32 %r185,[%r184]; .loc 1 332 10 add.u64 %r449,%r184,4; st.u64 [%r316],%r449; .loc 1 333 10 add.u32 %r450,%r182,-4; st.u32 [%r316+8],%r450; .loc 1 862 15 mov.u32 %r130,%r185; .loc 1 862 47 setp.eq.u32 %r452,%r130,-1; @ %r452 bra $L44; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r130; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r454,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r455,%r454,0; @ %r455 bra $L61; bra $L303; $L54: .loc 1 887 11 setp.ne.u32 %r795,%r311,0; @ %r795 bra $L63; .loc 1 894 5 add.u64 %r301,%r318,7; and.b64 %r300,%r301,-8; add.u64 %r318,%r300,8; ld.u64 %r106,[%r300]; $L63: .loc 1 904 11 mov.u64 %r290,0; bra $L64; $L69: .loc 1 898 8 @ %r795 bra $L65; .loc 1 904 14 st.u32 [%r106],%r194; .loc 1 904 11 add.u64 %r106,%r106,4; $L65: add.u32 %r283,%r288,1; .loc 1 896 28 add.u64 %r290,%r290,1; setp.eq.u64 %r458,%r105,%r290; @ %r458 bra $L66; $L64: cvt.u32.u64 %r288,%r290; mov.u32 %r283,%r288; .loc 1 329 9 ld.u32 %r191,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r459,%r191,0; @ %r459 bra $L67; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r462,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r463,%r462,0; @ %r463 bra $L68; $L70: .loc 1 908 11 setp.eq.u32 %r464,%r288,0; @ ! %r464 bra $L66; bra $L44; $L68: .loc 1 333 10 ld.u32 %r191,[%r316+8]; $L67: .loc 1 331 23 ld.u64 %r193,[%r316]; .loc 1 331 6 ld.u32 %r194,[%r193]; .loc 1 332 10 add.u64 %r465,%r193,4; st.u64 [%r316],%r465; .loc 1 333 10 add.u32 %r466,%r191,-4; st.u32 [%r316+8],%r466; .loc 1 896 28 setp.ne.u32 %r469,%r194,-1; @ %r469 bra $L69; bra $L70; $L66: .loc 1 910 14 add.u32 %r48,%r48,%r283; .loc 1 914 11 @ %r795 bra $L173; .loc 1 915 12 add.u32 %r314,%r314,1; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L302: .loc 1 925 11 setp.ne.u32 %r795,%r311,0; @ %r795 bra $L174; .loc 1 932 7 add.u64 %r305,%r318,7; and.b64 %r304,%r305,-8; add.u64 %r318,%r304,8; ld.u64 %r111,[%r304]; bra $L71; $L174: .loc 1 926 7 add.u64 %r111,%frame,168; $L71: .loc 1 934 8 mov.u64 %r474,8; mov.u32 %r473,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r799; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r473; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r474; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r476,[%value_in]; } bra $L72; $L79: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r111; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r203; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r799; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r482,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r483,%r482,-1; @ %r483 bra $L44; .loc 1 941 8 setp.ne.u64 %r484,%r482,0; @ %r484 bra $L73; .loc 1 941 20 ld.u32 %r485,[%frame+160]; setp.eq.u32 %r486,%r485,-4; @ %r486 bra $L74; $L73: .loc 1 942 12 add.u64 %r105,%r105,-1; $L74: .loc 1 943 8 @ %r795 bra $L75; .loc 1 948 13 add.u64 %r111,%r111,%r482; $L75: .loc 1 950 6 add.u32 %r156,%r156,1; .loc 1 935 26 setp.eq.u64 %r488,%r105,0; @ %r488 bra $L76; $L72: .loc 1 329 9 ld.u32 %r200,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r489,%r200,0; @ %r489 bra $L77; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r492,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r493,%r492,0; @ %r493 bra $L78; $L80: .loc 1 952 11 setp.eq.u32 %r494,%r156,0; @ ! %r494 bra $L76; bra $L44; $L78: .loc 1 333 10 ld.u32 %r200,[%r316+8]; $L77: .loc 1 331 23 ld.u64 %r202,[%r316]; .loc 1 331 6 ld.u32 %r203,[%r202]; .loc 1 332 10 add.u64 %r495,%r202,4; st.u64 [%r316],%r495; .loc 1 333 10 add.u32 %r496,%r200,-4; st.u32 [%r316+8],%r496; .loc 1 935 26 setp.ne.u32 %r499,%r203,-1; @ %r499 bra $L79; bra $L80; $L76: .loc 1 954 14 add.u32 %r48,%r48,%r156; .loc 1 958 11 @ %r795 bra $L175; .loc 1 959 12 add.u32 %r314,%r314,1; .loc 1 586 15 mov.u64 %r110,%r121; bra $L18; $L87: add.u64 %r287,%r287,1; bra $L81; $L176: mov.u64 %r287,0; .loc 1 972 24 setp.eq.u32 %r796,%r28,0; $L81: cvt.u32.u64 %r107,%r287; .loc 1 329 9 ld.u32 %r209,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r505,%r209,0; @ %r505 bra $L83; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r508,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r509,%r508,0; @ %r509 bra $L156; .loc 1 333 10 ld.u32 %r209,[%r316+8]; $L83: .loc 1 331 23 ld.u64 %r211,[%r316]; .loc 1 331 6 ld.u32 %r212,[%r211]; .loc 1 332 10 add.u64 %r510,%r211,4; st.u64 [%r316],%r510; .loc 1 333 10 add.u32 %r511,%r209,-4; st.u32 [%r316+8],%r511; .loc 1 971 19 mov.u32 %r151,%r212; .loc 1 972 24 setp.eq.u32 %r513,%r151,-1; @ %r513 bra $L156; .loc 1 972 8 setp.eq.u64 %r514,%r104,%r287; @ %r514 bra $L85; .loc 1 972 24 @ %r796 bra $L86; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r212; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r519,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r520,%r519,0; @ %r520 bra $L87; bra $L85; $L86: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r212; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r524,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r525,%r524,0; @ %r525 bra $L87; bra $L85; $L156: .loc 1 976 11 setp.eq.u32 %r526,%r107,0; @ ! %r526 bra $L88; bra $L12; $L301: and.b32 %r107,%r108,1; .loc 1 979 12 setp.eq.u32 %r527,%r107,0; @ %r527 bra $L89; .loc 1 989 10 add.u64 %r56,%r318,7; and.b64 %r119,%r56,-8; add.u64 %r318,%r119,8; ld.u64 %r148,[%r119]; mov.u64 %r286,%r148; .loc 1 991 24 setp.eq.u32 %r797,%r28,0; .loc 1 990 14 bra $L90; $L95: .loc 1 993 10 st.u32 [%r286],%r221; add.u64 %r104,%r104,-1; add.u64 %r286,%r286,4; $L90: mov.u64 %r106,%r286; .loc 1 329 9 ld.u32 %r218,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r528,%r218,0; @ %r528 bra $L91; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r531,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r532,%r531,0; @ %r532 bra $L157; .loc 1 333 10 ld.u32 %r218,[%r316+8]; $L91: .loc 1 331 23 ld.u64 %r220,[%r316]; .loc 1 331 6 ld.u32 %r221,[%r220]; .loc 1 332 10 add.u64 %r533,%r220,4; st.u64 [%r316],%r533; .loc 1 333 10 add.u32 %r534,%r218,-4; st.u32 [%r316+8],%r534; .loc 1 990 19 mov.u32 %r149,%r221; .loc 1 991 24 setp.eq.u32 %r536,%r149,-1; @ %r536 bra $L157; .loc 1 991 8 setp.eq.u64 %r537,%r104,0; @ %r537 bra $L93; .loc 1 991 24 @ %r797 bra $L94; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r221; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r542,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r543,%r542,0; @ %r543 bra $L95; bra $L93; $L94: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r221; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r547,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r548,%r547,0; @ %r548 bra $L95; bra $L93; $L157: .loc 1 1000 14 sub.u64 %r549,%r286,%r148; shr.s64 %r551,%r549,2; .loc 1 1000 10 cvt.u32.u64 %r107,%r551; .loc 1 1001 11 setp.eq.u32 %r552,%r107,0; @ %r552 bra $L12; .loc 1 1003 11 mov.u32 %r553,0; st.u32 [%r286],%r553; .loc 1 1007 17 add.u32 %r314,%r314,1; bra $L88; $L89: and.b32 %r74,%r108,16; .loc 1 1017 11 setp.ne.u32 %r793,%r74,0; @ %r793 bra $L177; .loc 1 1024 7 add.u64 %r307,%r318,7; and.b64 %r309,%r307,-8; add.u64 %r318,%r309,8; ld.u64 %r112,[%r309]; bra $L96; $L177: .loc 1 1018 7 add.u64 %r112,%frame,168; $L96: .loc 1 1026 8 mov.u64 %r557,8; mov.u32 %r556,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r799; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r556; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r557; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r559,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r798,%r28,0; .loc 1 1027 14 bra $L97; $L105: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r112; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r230; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r799; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r565,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r566,%r565,-1; @ %r566 bra $L44; .loc 1 1034 8 setp.ne.u64 %r567,%r565,0; @ %r567 bra $L98; .loc 1 1034 20 ld.u32 %r568,[%frame+160]; setp.eq.u32 %r569,%r568,-4; @ %r569 bra $L99; $L98: .loc 1 1035 12 add.u64 %r104,%r104,-1; $L99: .loc 1 1036 8 @ %r793 bra $L100; .loc 1 1038 13 add.u64 %r112,%r112,%r565; $L100: .loc 1 1043 6 add.u32 %r107,%r107,1; $L97: .loc 1 329 9 ld.u32 %r227,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r571,%r227,0; @ %r571 bra $L101; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r574,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r575,%r574,0; @ %r575 bra $L158; .loc 1 333 10 ld.u32 %r227,[%r316+8]; $L101: .loc 1 331 23 ld.u64 %r229,[%r316]; .loc 1 331 6 ld.u32 %r230,[%r229]; .loc 1 332 10 add.u64 %r576,%r229,4; st.u64 [%r316],%r576; .loc 1 333 10 add.u32 %r577,%r227,-4; st.u32 [%r316+8],%r577; .loc 1 1027 19 mov.u32 %r146,%r230; .loc 1 1028 22 setp.eq.u32 %r579,%r146,-1; @ %r579 bra $L158; .loc 1 1028 8 setp.eq.u64 %r580,%r104,0; @ %r580 bra $L103; .loc 1 1028 22 @ %r798 bra $L104; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r585,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r586,%r585,0; @ %r586 bra $L105; bra $L103; $L104: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r281; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r590,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r591,%r590,0; @ %r591 bra $L105; bra $L103; $L158: .loc 1 1047 11 @ %r793 bra $L88; .loc 1 1049 10 mov.u32 %r593,0; st.u8 [%r112],%r593; .loc 1 1053 14 add.u32 %r314,%r314,1; $L88: .loc 1 1056 10 add.u32 %r48,%r48,%r107; .loc 1 1057 4 bra $L18; $L161: .loc 1 1061 7 setp.ne.u64 %r594,%r104,0; .loc 1 1062 19 selp.u64 %r104,%r104,-1,%r594; .loc 1 1063 27 and.b32 %r595,%r108,17; .loc 1 1063 7 setp.ne.u32 %r596,%r595,17; @ %r596 bra $L107; mov.u64 %r278,%r104; cvt.u32.u64 %r791,%r278; $L110: cvt.u32.u64 %r599,%r278; vsub.u32.u32.u32.add %r272,%r48,%r599,%r791; .loc 1 329 9 ld.u32 %r237,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r600,%r237,0; @ %r600 bra $L108; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r603,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r604,%r603,0; @ %r604 bra $L178; .loc 1 333 10 ld.u32 %r237,[%r316+8]; $L108: .loc 1 331 23 ld.u64 %r239,[%r316]; .loc 1 331 6 ld.u32 %r240,[%r239]; .loc 1 332 10 add.u64 %r605,%r239,4; st.u64 [%r316],%r605; .loc 1 333 10 add.u32 %r606,%r237,-4; st.u32 [%r316+8],%r606; .loc 1 1065 19 mov.u32 %r145,%r240; .loc 1 1066 24 setp.eq.u32 %r608,%r145,-1; @ %r608 bra $L179; .loc 1 1066 8 setp.eq.u64 %r609,%r278,0; @ %r609 bra $L109; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r145; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r611,[%value_in]; } .loc 1 1066 24 add.u64 %r278,%r278,-1; setp.eq.u32 %r612,%r611,0; @ %r612 bra $L110; bra $L109; $L107: .loc 1 1071 19 and.b32 %r613,%r108,1; .loc 1 1071 12 setp.eq.u32 %r614,%r613,0; @ %r614 bra $L111; .loc 1 1081 10 add.u64 %r299,%r318,7; and.b64 %r298,%r299,-8; add.u64 %r318,%r298,8; ld.u64 %r246,[%r298]; .loc 1 1082 14 mov.u64 %r264,%r104; cvt.u32.u64 %r791,%r264; bra $L112; $L116: .loc 1 1085 10 st.u32 [%r246],%r249; add.u64 %r246,%r246,4; $L112: cvt.u32.u64 %r617,%r264; vsub.u32.u32.u32.add %r150,%r48,%r617,%r791; mov.u64 %r106,%r246; .loc 1 329 9 ld.u32 %r55,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r618,%r55,0; @ %r618 bra $L113; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r621,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r622,%r621,0; @ %r622 bra $L159; .loc 1 333 10 ld.u32 %r55,[%r316+8]; $L113: .loc 1 331 23 ld.u64 %r248,[%r316]; .loc 1 331 6 ld.u32 %r249,[%r248]; .loc 1 332 10 add.u64 %r623,%r248,4; st.u64 [%r316],%r623; .loc 1 333 10 add.u32 %r624,%r55,-4; st.u32 [%r316+8],%r624; .loc 1 1082 19 mov.u32 %r144,%r249; .loc 1 1083 24 setp.eq.u32 %r626,%r144,-1; @ %r626 bra $L159; .loc 1 1083 8 setp.eq.u64 %r627,%r264,0; @ %r627 bra $L115; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r144; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r629,[%value_in]; } .loc 1 1083 24 add.u64 %r264,%r264,-1; setp.eq.u32 %r630,%r629,0; @ %r630 bra $L116; bra $L115; $L159: .loc 1 1093 11 mov.u32 %r631,0; st.u32 [%r246],%r631; .loc 1 1097 17 add.u32 %r314,%r314,1; mov.u32 %r48,%r150; mov.u64 %r110,%r121; bra $L18; $L111: .loc 1 1107 18 and.b32 %r71,%r108,16; .loc 1 1107 11 setp.ne.u32 %r792,%r71,0; @ %r792 bra $L180; .loc 1 1114 7 add.u64 %r303,%r318,7; and.b64 %r302,%r303,-8; add.u64 %r318,%r302,8; ld.u64 %r113,[%r302]; bra $L117; $L180: .loc 1 1108 7 add.u64 %r113,%frame,168; $L117: .loc 1 1115 8 mov.u64 %r635,8; mov.u32 %r634,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r799; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r634; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r635; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r637,[%value_in]; } .loc 1 1116 14 bra $L118; $L125: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r258; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r799; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r642,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r643,%r642,-1; @ %r643 bra $L44; .loc 1 1123 8 setp.ne.u64 %r644,%r642,0; @ %r644 bra $L119; .loc 1 1123 20 ld.u32 %r645,[%frame+160]; setp.eq.u32 %r646,%r645,-4; @ %r646 bra $L120; $L119: .loc 1 1124 12 add.u64 %r104,%r104,-1; $L120: .loc 1 1125 8 @ %r792 bra $L121; .loc 1 1127 13 add.u64 %r113,%r113,%r642; $L121: .loc 1 1132 10 add.u32 %r48,%r48,1; $L118: .loc 1 329 9 ld.u32 %r255,[%r316+8]; .loc 1 329 6 setp.gt.s32 %r648,%r255,0; @ %r648 bra $L122; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r651,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r652,%r651,0; @ %r652 bra $L160; .loc 1 333 10 ld.u32 %r255,[%r316+8]; $L122: .loc 1 331 23 ld.u64 %r257,[%r316]; .loc 1 331 6 ld.u32 %r258,[%r257]; .loc 1 332 10 add.u64 %r653,%r257,4; st.u64 [%r316],%r653; .loc 1 333 10 add.u32 %r654,%r255,-4; st.u32 [%r316+8],%r654; .loc 1 1116 19 mov.u32 %r141,%r258; .loc 1 1117 22 setp.eq.u32 %r656,%r141,-1; @ %r656 bra $L160; .loc 1 1117 8 setp.eq.u64 %r657,%r104,0; @ %r657 bra $L124; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r141; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r659,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r660,%r659,0; @ %r660 bra $L125; bra $L124; $L160: .loc 1 1136 11 @ %r792 bra $L181; .loc 1 1138 10 mov.u32 %r662,0; st.u8 [%r113],%r662; .loc 1 1142 14 add.u32 %r314,%r314,1; mov.u64 %r110,%r121; bra $L18; $L305: .loc 1 1150 19 add.u64 %r663,%r104,-1; .loc 1 1150 7 setp.le.u64 %r664,%r663,38; .loc 1 1151 12 selp.u64 %r104,%r104,39,%r664; .loc 1 1152 10 or.b32 %r109,%r108,1408; .loc 1 329 9 ld.u32 %r46,[%r316+8]; mov.u64 %r294,%frame; shl.b64 %r665,%r104,2; add.u64 %r291,%r665,%frame; $L144: mov.u64 %r106,%r294; .loc 1 329 6 setp.gt.s32 %r666,%r46,0; @ %r666 bra $L127; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r669,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r670,%r669,0; @ %r670 bra $L128; .loc 1 333 10 ld.u32 %r46,[%r316+8]; $L127: .loc 1 331 23 ld.u64 %r266,[%r316]; .loc 1 331 6 ld.u32 %r267,[%r266]; .loc 1 332 10 add.u64 %r671,%r266,4; st.u64 [%r316],%r671; .loc 1 333 10 add.u32 %r46,%r46,-4; st.u32 [%r316+8],%r46; .loc 1 1155 10 mov.u32 %r131,%r267; setp.gt.u32 %r673,%r131,57; @ %r673 bra $L129; setp.gt.u32 %r674,%r131,55; @ %r674 bra $L130; setp.eq.u32 %r675,%r131,48; @ %r675 bra $L131; setp.gt.u32 %r676,%r131,48; @ %r676 bra $L132; add.u32 %r677,%r131,-43; and.b32 %r678,%r677,-3; setp.eq.u32 %r679,%r678,0; @ ! %r679 bra $L134; bra $L133; $L132: .loc 1 1191 19 cvta.const.u64 %r680,basefix$0; cvt.s64.s32 %r681,%r310; add.u64 %r682,%r681,%r681; add.u64 %r683,%r680,%r682; ld.s16 %r310,[%r683]; .loc 1 1192 11 and.b32 %r109,%r109,-897; .loc 1 1193 5 bra $L135; $L129: setp.gt.u32 %r684,%r131,102; @ %r684 bra $L136; setp.gt.u32 %r685,%r131,96; @ %r685 bra $L137; setp.gt.u32 %r686,%r131,70; @ %r686 bra $L138; setp.gt.u32 %r687,%r131,64; @ ! %r687 bra $L134; bra $L137; $L138: setp.eq.u32 %r688,%r131,88; @ %r688 bra $L139; bra $L134; $L136: setp.eq.u32 %r689,%r131,120; @ %r689 bra $L139; bra $L304; $L131: .loc 1 1172 8 setp.ne.u32 %r690,%r310,0; @ %r690 bra $L141; .loc 1 1175 15 or.b32 %r109,%r109,512; .loc 1 1174 14 mov.u32 %r310,8; $L141: .loc 1 1177 15 and.b32 %r691,%r109,1024; .loc 1 1177 8 setp.eq.u32 %r692,%r691,0; @ %r692 bra $L142; .loc 1 1178 13 and.b32 %r109,%r109,-1409; bra $L135; $L142: .loc 1 1180 13 and.b32 %r109,%r109,-897; bra $L135; $L130: .loc 1 1198 19 cvta.const.u64 %r693,basefix$0; cvt.s64.s32 %r694,%r310; add.u64 %r695,%r694,%r694; add.u64 %r696,%r693,%r695; ld.s16 %r310,[%r696]; .loc 1 1199 8 setp.le.s32 %r697,%r310,8; @ %r697 bra $L134; .loc 1 1201 11 and.b32 %r109,%r109,-897; .loc 1 1202 5 bra $L135; $L137: .loc 1 1218 8 setp.le.s32 %r698,%r310,10; @ %r698 bra $L134; .loc 1 1220 11 and.b32 %r109,%r109,-897; .loc 1 1221 5 bra $L135; $L133: .loc 1 1226 15 and.b32 %r699,%r109,128; .loc 1 1226 8 setp.eq.u32 %r700,%r699,0; @ %r700 bra $L134; .loc 1 1228 15 and.b32 %r132,%r109,-129; .loc 1 1229 15 or.b32 %r109,%r132,65536; .loc 1 1230 9 bra $L135; $L139: .loc 1 1237 16 and.b32 %r701,%r109,512; .loc 1 1237 8 setp.eq.u32 %r702,%r701,0; @ %r702 bra $L134; .loc 1 1237 52 and.b32 %r703,%r109,65536; .loc 1 1237 41 setp.ne.u32 %r704,%r703,0; selp.u64 %r114,8,4,%r704; add.u64 %r705,%frame,%r114; .loc 1 1237 25 setp.ne.u64 %r706,%r294,%r705; @ %r706 bra $L134; .loc 1 1240 15 and.b32 %r109,%r109,-513; .loc 1 1239 14 mov.u32 %r310,16; .loc 1 1241 9 bra $L135; $L304: .loc 1 1250 11 setp.eq.u32 %r707,%r131,-1; @ %r707 bra $L128; $L134: .loc 1 1251 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r131; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L128; $L135: add.u64 %r294,%r294,4; .loc 1 1257 13 st.u32 [%r106],%r267; .loc 1 1153 18 setp.ne.u64 %r711,%r291,%r294; @ %r711 bra $L144; .loc 1 1257 10 mov.u64 %r106,%r291; $L128: .loc 1 1267 14 and.b32 %r712,%r109,256; .loc 1 1267 7 setp.eq.u32 %r713,%r712,0; @ %r713 bra $L145; .loc 1 1269 11 setp.ge.u64 %r714,%frame,%r106; @ %r714 bra $L12; .loc 1 1270 3 ld.u32 %r718,[%r106+-4]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r718; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L12; $L145: .loc 1 1273 9 ld.u32 %r86,[%r106+-4]; .loc 1 1274 23 and.b32 %r719,%r86,-33; .loc 1 1274 7 setp.ne.u32 %r720,%r719,88; @ %r720 bra $L146; .loc 1 1276 8 add.u64 %r106,%r106,-4; .loc 1 1277 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r86; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } $L146: .loc 1 1279 15 and.b32 %r724,%r109,16; .loc 1 1279 7 setp.ne.u32 %r725,%r724,0; @ %r725 bra $L147; .loc 1 1283 11 st.u32 [%r106],%r724; .loc 1 1284 15 mov.u64 %r729,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r310; call (%value_in),%r50,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r731,[%value_in]; } .loc 1 830 11 add.u64 %r732,%r318,7; and.b64 %r295,%r732,-8; add.u64 %r318,%r295,8; .loc 1 1285 18 and.b32 %r733,%r109,32; .loc 1 1285 11 setp.eq.u32 %r734,%r733,0; @ %r734 bra $L148; .loc 1 1287 12 ld.u64 %r140,[%r295]; .loc 1 1297 11 st.u64 [%r140],%r731; bra $L149; $L148: .loc 1 1306 23 and.b32 %r735,%r109,4; .loc 1 1306 16 setp.eq.u32 %r736,%r735,0; @ %r736 bra $L150; .loc 1 1309 9 ld.u64 %r737,[%r295]; st.u16 [%r737],%r731; bra $L149; $L150: .loc 1 1311 23 and.b32 %r738,%r109,1; .loc 1 1311 16 setp.eq.u32 %r739,%r738,0; @ %r739 bra $L151; .loc 1 1314 9 ld.u64 %r740,[%r295]; st.u64 [%r740],%r731; bra $L149; $L151: .loc 1 1317 23 and.b32 %r741,%r109,2; .loc 1 1317 16 setp.eq.u32 %r742,%r741,0; @ %r742 bra $L152; .loc 1 1320 8 mov.u64 %r743,_wcstoul_r; setp.ne.u64 %r744,%r50,%r743; @ %r744 bra $L153; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r310; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r749,[%value_in]; } .loc 1 1325 10 mov.u64 %r95,%r749; bra $L154; $L153: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r729; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r310; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r754,[%value_in]; } mov.u64 %r95,%r754; $L154: .loc 1 1325 10 ld.u64 %r755,[%r295]; st.u64 [%r755],%r95; bra $L149; $L152: .loc 1 1331 9 ld.u64 %r756,[%r295]; st.u32 [%r756],%r731; $L149: .loc 1 1333 17 add.u32 %r314,%r314,1; $L147: .loc 1 1335 15 sub.u64 %r757,%r106,%frame; shr.s64 %r759,%r757,2; .loc 1 1335 10 cvt.u32.u64 %r760,%r759; add.u32 %r48,%r760,%r48; .loc 1 1336 4 mov.u64 %r110,%r121; bra $L18; $L44: .loc 1 1656 63 setp.eq.u32 %r761,%r314,0; @ %r761 bra $L183; .loc 1 1656 25 ld.u16 %r763,[%r316+16]; and.b16 %r762,%r763,64; setp.ne.u16 %r764,%r762,0; .loc 1 1656 63 selp.u32 %r314,-1,%r314,%r764; bra $L12; $L163: .loc 1 561 10 mov.u32 %r314,%r103; bra $L12; $L183: .loc 1 1656 63 mov.u32 %r314,-1; bra $L12; $L14: $L155: $L298: .loc 1 568 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r163; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r110,%r121; bra $L18; $L85: .loc 1 975 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r151; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L156; $L93: .loc 1 999 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r149; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L157; $L103: .loc 1 1046 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r146; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L158; $L109: .loc 1 1069 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r145; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u32 %r48,%r272; mov.u64 %r110,%r121; bra $L18; $L115: .loc 1 1092 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r144; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L159; $L124: .loc 1 1135 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r141; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L160; $L303: .loc 1 866 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r130; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r316; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 872 7 setp.eq.u32 %r790,%r236,2; @ ! %r790 bra $L305; bra $L161; $L167: .loc 1 588 7 mov.u64 %r50,_wcstoul_r; mov.u32 %r28,8; bra $L35; $L168: .loc 1 731 9 mov.u64 %r50,_wcstol_r; bra $L35; $L170: .loc 1 743 9 mov.u64 %r50,_wcstoul_r; .loc 1 744 9 mov.u32 %r28,10; $L35: .loc 1 588 7 mov.u32 %r310,%r28; mov.u32 %r236,3; bra $L59; $L12: .loc 1 1665 1 mov.u32 %value,%r314; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1561 0 0 0 644 80079 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .visible .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .extern .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[2] = {48,0 }; // BEGIN GLOBAL FUNCTION DEF: _svfprintf_r .visible .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,224; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u32 %r25; .reg .f64 %r28; .reg .u64 %r33; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r53; .reg .u32 %r61; .reg .u32 %r62; .reg .u64 %r73; .reg .u32 %r114; .reg .u32 %r126; .reg .u32 %r127; .reg .u64 %r129; .reg .u32 %r131; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r139; .reg .u64 %r143; .reg .u32 %r145; .reg .u64 %r149; .reg .u32 %r150; .reg .u64 %r153; .reg .u32 %r155; .reg .u32 %r158; .reg .u32 %r161; .reg .u32 %r164; .reg .u64 %r168; .reg .u64 %r169; .reg .u32 %r170; .reg .u32 %r172; .reg .u32 %r174; .reg .u32 %r178; .reg .u64 %r181; .reg .u64 %r183; .reg .u32 %r184; .reg .u64 %r186; .reg .u32 %r188; .reg .u64 %r193; .reg .u32 %r194; .reg .u32 %r197; .reg .u32 %r200; .reg .u32 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u32 %r206; .reg .u64 %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r216; .reg .u32 %r217; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r227; .reg .u32 %r228; .reg .u64 %r232; .reg .u32 %r233; .reg .u64 %r239; .reg .u64 %r240; .reg .u32 %r241; .reg .u64 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u64 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r255; .reg .u64 %r257; .reg .u32 %r258; .reg .u64 %r260; .reg .u32 %r265; .reg .u32 %r266; .reg .u32 %r269; .reg .u32 %r270; .reg .u32 %r271; .reg .u64 %r272; .reg .u64 %r273; .reg .u32 %r274; .reg .u64 %r275; .reg .u32 %r276; .reg .u64 %r281; .reg .u64 %r282; .reg .u32 %r289; .reg .u32 %r290; .reg .u32 %r292; .reg .u64 %r293; .reg .u32 %r294; .reg .u32 %r300; .reg .f64 %r301; .reg .u64 %r304; .reg .u64 %r306; .reg .u64 %r311; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r330; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r335; .reg .u64 %r337; .reg .u64 %r338; .reg .u64 %r342; .reg .u64 %r343; .reg .u64 %r348; .reg .u64 %r350; .reg .u64 %r354; .reg .u64 %r356; .reg .u64 %r357; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u32 %r367; .reg .u32 %r369; .reg .u32 %r375; .reg .u32 %r376; .reg .u64 %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .u32 %r380; .reg .u32 %r382; .reg .u64 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r389; .reg .u32 %r391; .reg .u32 %r392; .reg .u64 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u32 %r398; .reg .u64 %r401; .reg .u64 %r402; .reg .u32 %r407; .reg .u32 %r408; .reg .u64 %r409; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r412; .reg .u64 %r423; .reg .u64 %r425; .reg .u16 %r426; .reg .u16 %r427; .reg .pred %r428; .reg .u64 %r429; .reg .pred %r430; .reg .u64 %r432; .reg .u64 %r433; .reg .pred %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .u64 %r437; .reg .u32 %r438; .reg .u32 %r439; .reg .u16 %r440; .reg .u32 %r441; .reg .u32 %r442; .reg .u32 %r443; .reg .u32 %r445; .reg .u32 %r446; .reg .u16 %r447; .reg .u16 %r448; .reg .u16 %r449; .reg .u32 %r450; .reg .u16 %r451; .reg .pred %r452; .reg .u32 %r453; .reg .u16 %r454; .reg .u32 %r455; .reg .u32 %r456; .reg .u32 %r457; .reg .u32 %r459; .reg .u32 %r460; .reg .u16 %r461; .reg .u16 %r462; .reg .u16 %r463; .reg .u32 %r464; .reg .u16 %r465; .reg .pred %r466; .reg .u64 %r467; .reg .pred %r468; .reg .u64 %r469; .reg .u64 %r470; .reg .u32 %r471; .reg .pred %r472; .reg .u32 %r477; .reg .pred %r478; .reg .pred %r479; .reg .u32 %r480; .reg .pred %r481; .reg .pred %r482; .reg .pred %r483; .reg .pred %r484; .reg .pred %r485; .reg .pred %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .pred %r490; .reg .pred %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .pred %r495; .reg .pred %r496; .reg .pred %r497; .reg .u32 %r498; .reg .pred %r499; .reg .pred %r500; .reg .pred %r501; .reg .pred %r502; .reg .pred %r503; .reg .pred %r504; .reg .pred %r505; .reg .pred %r506; .reg .pred %r507; .reg .pred %r508; .reg .pred %r509; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .pred %r517; .reg .pred %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u32 %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .u32 %r526; .reg .u32 %r528; .reg .u32 %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u32 %r533; .reg .u32 %r534; .reg .u32 %r535; .reg .pred %r538; .reg .u16 %r539; .reg .pred %r540; .reg .u32 %r541; .reg .u32 %r542; .reg .pred %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u16 %r551; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r556; .reg .u64 %r557; .reg .f64 %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .u32 %r564; .reg .pred %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u32 %r569; .reg .pred %r570; .reg .u32 %r571; .reg .pred %r572; .reg .pred %r573; .reg .u32 %r574; .reg .u32 %r575; .reg .u32 %r576; .reg .u32 %r577; .reg .u32 %r578; .reg .u32 %r579; .reg .u16 %r580; .reg .u16 %r581; .reg .u16 %r582; .reg .u32 %r583; .reg .u16 %r584; .reg .pred %r585; .reg .u64 %r586; .reg .u64 %r587; .reg .u32 %r588; .reg .pred %r589; .reg .pred %r590; .reg .pred %r591; .reg .u32 %r594; .reg .u64 %r602; .reg .u32 %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .pred %r606; .reg .pred %r607; .reg .u64 %r608; .reg .u32 %r609; .reg .pred %r610; .reg .u64 %r611; .reg .u32 %r613; .reg .u32 %r614; .reg .u32 %r615; .reg .u32 %r616; .reg .u32 %r617; .reg .u32 %r618; .reg .u16 %r619; .reg .u16 %r620; .reg .u16 %r621; .reg .u32 %r622; .reg .u16 %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .u32 %r627; .reg .u32 %r628; .reg .pred %r629; .reg .u32 %r631; .reg .u32 %r632; .reg .u16 %r633; .reg .u16 %r634; .reg .pred %r637; .reg .u32 %r638; .reg .u16 %r639; .reg .u16 %r640; .reg .u32 %r641; .reg .pred %r645; .reg .u32 %r647; .reg .pred %r650; .reg .u64 %r656; .reg .u64 %r657; .reg .u64 %r659; .reg .u32 %r660; .reg .u32 %r661; .reg .u16 %r662; .reg .u16 %r663; .reg .pred %r664; .reg .pred %r665; .reg .u32 %r667; .reg .pred %r668; .reg .pred %r669; .reg .pred %r670; .reg .pred %r673; .reg .u32 %r676; .reg .pred %r677; .reg .pred %r681; .reg .u32 %r683; .reg .pred %r684; .reg .u32 %r685; .reg .pred %r686; .reg .u32 %r687; .reg .u64 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .u64 %r691; .reg .u32 %r692; .reg .pred %r693; .reg .u64 %r694; .reg .u32 %r695; .reg .pred %r696; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u16 %r703; .reg .u32 %r704; .reg .u32 %r705; .reg .u32 %r706; .reg .pred %r707; .reg .pred %r708; .reg .u32 %r710; .reg .u64 %r712; .reg .u64 %r713; .reg .pred %r714; .reg .u64 %r715; .reg .u64 %r717; .reg .u32 %r718; .reg .pred %r719; .reg .u32 %r720; .reg .pred %r721; .reg .u32 %r722; .reg .pred %r723; .reg .u16 %r724; .reg .pred %r725; .reg .u32 %r726; .reg .u32 %r727; .reg .pred %r728; .reg .u32 %r729; .reg .pred %r730; .reg .u32 %r731; .reg .pred %r732; .reg .u16 %r733; .reg .u32 %r734; .reg .pred %r735; .reg .pred %r736; .reg .u32 %r737; .reg .u32 %r738; .reg .pred %r739; .reg .u32 %r740; .reg .u32 %r741; .reg .u32 %r742; .reg .u32 %r743; .reg .u32 %r744; .reg .u32 %r745; .reg .u16 %r746; .reg .u16 %r747; .reg .u16 %r748; .reg .u32 %r749; .reg .u16 %r750; .reg .pred %r751; .reg .pred %r752; .reg .pred %r753; .reg .u32 %r754; .reg .u16 %r755; .reg .u16 %r756; .reg .u32 %r757; .reg .u16 %r758; .reg .u16 %r759; .reg .u32 %r760; .reg .pred %r762; .reg .u32 %r763; .reg .u16 %r764; .reg .u32 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .u16 %r768; .reg .u16 %r769; .reg .u32 %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .u16 %r773; .reg .u32 %r774; .reg .u16 %r775; .reg .pred %r776; .reg .u64 %r779; .reg .u32 %r780; .reg .u64 %r783; .reg .pred %r784; .reg .u32 %r785; .reg .u16 %r786; .reg .u16 %r787; .reg .u64 %r789; .reg .u32 %r790; .reg .u16 %r791; .reg .u16 %r792; .reg .pred %r795; .reg .u64 %r798; .reg .u64 %r799; .reg .u64 %r800; .reg .u32 %r801; .reg .pred %r802; .reg .u64 %r805; .reg .pred %r806; .reg .pred %r807; .reg .u32 %r808; .reg .pred %r809; .reg .u32 %r810; .reg .pred %r811; .reg .u32 %r812; .reg .pred %r813; .reg .pred %r815; .reg .pred %r816; .reg .pred %r817; .reg .u64 %r819; .reg .pred %r820; .reg .u32 %r825; .reg .pred %r826; .reg .pred %r827; .reg .pred %r829; .reg .u32 %r834; .reg .pred %r835; .reg .u16 %r836; .reg .u32 %r837; .reg .pred %r838; .reg .u64 %r840; .reg .u32 %r841; .reg .pred %r842; .reg .u32 %r847; .reg .pred %r848; .reg .u64 %r851; .reg .u32 %r852; .reg .pred %r853; .reg .u32 %r858; .reg .pred %r859; .reg .pred %r860; .reg .pred %r861; .reg .pred %r862; .reg .u64 %r864; .reg .pred %r865; .reg .u32 %r870; .reg .pred %r871; .reg .pred %r872; .reg .pred %r874; .reg .u32 %r879; .reg .pred %r880; .reg .pred %r881; .reg .pred %r882; .reg .u64 %r884; .reg .pred %r885; .reg .u32 %r890; .reg .pred %r891; .reg .pred %r892; .reg .pred %r894; .reg .u32 %r899; .reg .pred %r900; .reg .u32 %r901; .reg .pred %r902; .reg .u32 %r903; .reg .pred %r904; .reg .u32 %r909; .reg .pred %r910; .reg .pred %r911; .reg .pred %r912; .reg .u64 %r913; .reg .u64 %r914; .reg .u32 %r915; .reg .pred %r916; .reg .u32 %r921; .reg .pred %r922; .reg .u32 %r923; .reg .pred %r924; .reg .u32 %r925; .reg .pred %r926; .reg .u32 %r927; .reg .pred %r928; .reg .u32 %r933; .reg .pred %r934; .reg .pred %r935; .reg .pred %r936; .reg .u64 %r938; .reg .pred %r939; .reg .u32 %r944; .reg .pred %r945; .reg .pred %r946; .reg .pred %r948; .reg .u32 %r953; .reg .pred %r954; .reg .pred %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .u32 %r958; .reg .pred %r959; .reg .u32 %r964; .reg .pred %r965; .reg .u32 %r966; .reg .pred %r967; .reg .u32 %r968; .reg .pred %r969; .reg .u32 %r970; .reg .pred %r971; .reg .u32 %r976; .reg .pred %r977; .reg .pred %r978; .reg .pred %r979; .reg .u64 %r981; .reg .pred %r982; .reg .u32 %r987; .reg .pred %r988; .reg .pred %r989; .reg .pred %r991; .reg .u32 %r996; .reg .pred %r997; .reg .pred %r998; .reg .u32 %r1003; .reg .pred %r1004; .reg .pred %r1005; .reg .u32 %r1006; .reg .pred %r1007; .reg .u32 %r1012; .reg .pred %r1013; .reg .u32 %r1014; .reg .pred %r1015; .reg .pred %r1016; .reg .u64 %r1018; .reg .pred %r1019; .reg .u32 %r1024; .reg .pred %r1025; .reg .pred %r1026; .reg .pred %r1028; .reg .u32 %r1033; .reg .pred %r1034; .reg .pred %r1035; .reg .u32 %r1036; .reg .pred %r1037; .reg .u32 %r1038; .reg .pred %r1039; .reg .u32 %r1044; .reg .pred %r1045; .reg .u32 %r1046; .reg .pred %r1047; .reg .u64 %r1048; .reg .u64 %r1049; .reg .u32 %r1050; .reg .pred %r1051; .reg .u32 %r1056; .reg .pred %r1057; .reg .u32 %r1058; .reg .u32 %r1059; .reg .pred %r1060; .reg .pred %r1061; .reg .u64 %r1063; .reg .pred %r1064; .reg .u32 %r1069; .reg .pred %r1070; .reg .pred %r1071; .reg .pred %r1073; .reg .u32 %r1078; .reg .pred %r1079; .reg .u32 %r1080; .reg .pred %r1081; .reg .u32 %r1082; .reg .pred %r1083; .reg .u64 %r1084; .reg .pred %r1085; .reg .u32 %r1090; .reg .pred %r1091; .reg .pred %r1092; .reg .u32 %r1097; .reg .pred %r1098; .reg .pred %r1099; .reg .u64 %r1100; .reg .pred %r1101; .reg .u32 %r1106; .reg .pred %r1107; .reg .pred %r1108; .reg .pred %r1109; .reg .u64 %r1111; .reg .pred %r1112; .reg .u32 %r1117; .reg .pred %r1118; .reg .pred %r1119; .reg .pred %r1121; .reg .u32 %r1126; .reg .pred %r1127; .reg .u64 %r1128; .reg .pred %r1129; .reg .u32 %r1134; .reg .pred %r1135; .reg .pred %r1137; .reg .u32 %r1142; .reg .pred %r1143; .reg .u32 %r1144; .reg .pred %r1145; .reg .pred %r1146; .reg .pred %r1147; .reg .u64 %r1149; .reg .pred %r1150; .reg .u32 %r1155; .reg .pred %r1156; .reg .pred %r1157; .reg .pred %r1159; .reg .u32 %r1164; .reg .pred %r1165; .reg .u32 %r1166; .reg .pred %r1167; .reg .u32 %r1168; .reg .u32 %r1173; .reg .pred %r1174; .reg .u64 %r1175; .reg .pred %r1176; .reg .u64 %r1180; .reg .u32 %r1181; .reg .u16 %r1182; .reg .u16 %r1183; .reg .pred %r1184; .reg .u32 %r1186; .reg .pred %r1187; .reg .pred %r1188; .reg .u32 %r1191; .reg .u64 %r1199; .reg .u32 %r1200; .reg .u16 %r1201; .reg .u32 %r1202; .reg .u32 %r1203; .reg .u32 %r1204; .reg .u32 %r1205; .reg .u32 %r1206; .reg .u32 %r1207; .reg .u16 %r1208; .reg .u16 %r1209; .reg .u16 %r1210; .reg .u32 %r1211; .reg .u16 %r1212; .reg .pred %r1213; .reg .u64 %r1214; .reg .u32 %r1217; .reg .u64 %r1225; .reg .u32 %r1227; .reg .pred %r1228; .reg .u64 %r1229; .reg .u32 %r1230; .reg .pred %r1231; .reg .u32 %r1234; .reg .u32 %r1235; .reg .u64 %r1242; .reg .u64 %r1243; .reg .u64 %r1244; .reg .u32 %r1245; .reg .pred %r1246; .reg .u32 %r1247; .reg .u32 %r1248; .reg .u32 %r1249; .reg .u32 %r1250; .reg .u32 %r1251; .reg .u32 %r1252; .reg .u16 %r1253; .reg .u16 %r1254; .reg .u16 %r1255; .reg .u32 %r1256; .reg .u16 %r1257; .reg .pred %r1258; .reg .pred %r1259; .reg .u32 %r1261; .reg .u32 %r1264; .reg .u64 %r1265; .reg .pred %r1266; .reg .u64 %r1267; .reg .u32 %r1290; .reg .u64 %r1291; .reg .u64 %r1292; .reg .u64 %r1293; .reg .u64 %r1294; .reg .u32 %r1295; .reg .u64 %r1296; .reg .u64 %r1297; .reg .u64 %r1298; .reg .u32 %r1299; .reg .u64 %r1300; .reg .u64 %r1301; .reg .u64 %r1302; .reg .u16 %r1309; mov.u64 %r409,%ar0; mov.u64 %r410,%ar1; mov.u64 %r411,%ar2; mov.u64 %r412,%ar3; .loc 1 685 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r423,[%value_in]; } .loc 1 685 8 ld.u64 %r260,[%r423]; .loc 1 686 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r260; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r425,[%value_in]; } .loc 1 869 12 ld.u16 %r427,[%r410+16]; and.b16 %r426,%r427,128; setp.eq.u16 %r428,%r426,0; @ %r428 bra $L2; .loc 1 869 33 ld.u64 %r429,[%r410+24]; setp.ne.u64 %r430,%r429,0; @ %r430 bra $L2; .loc 1 871 28 mov.u64 %r432,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r432; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r433,[%value_in]; } .loc 1 871 26 st.u64 [%r410],%r433; .loc 1 871 17 st.u64 [%r410+24],%r433; .loc 1 872 6 setp.ne.u64 %r434,%r433,0; @ %r434 bra $L3; .loc 1 874 17 mov.u32 %r435,12; st.u32 [%r409],%r435; .loc 1 875 11 mov.u32 %r408,-1; bra $L1; $L3: .loc 1 877 17 mov.u32 %r436,64; st.u32 [%r410+32],%r436; $L2: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r437,0; st.u64 [%frame+184],%r437; .loc 1 885 17 mov.u32 %r438,0; st.u32 [%frame+176],%r438; .loc 1 696 6 mov.u32 %r62,%r438; .loc 1 688 42 mov.f64 %r28,0d0000000000000000; .loc 1 883 21 mov.u64 %r253,%frame; .loc 1 707 8 mov.u64 %r252,%r437; .loc 1 691 6 mov.u32 %r247,%r62; .loc 1 887 6 mov.u32 %r408,%r62; .loc 1 918 4 add.u64 %r1291,%frame,168; .loc 1 1756 5 add.u64 %r1292,%frame,200; .loc 1 1687 4 add.u64 %r1293,%frame,216; .loc 1 1685 4 add.u64 %r1294,%frame,218; .loc 1 1328 11 cvt.u32.u64 %r1295,%r425; .loc 1 1910 4 add.u64 %r1296,%frame,199; add.u64 %r1297,%frame,202; .loc 1 1916 36 add.u64 %r1298,%frame,201; .loc 1 1340 21 add.u32 %r1299,%r1295,1; .loc 1 1873 11 add.u64 %r1300,%frame,192; add.u64 %r1301,%frame,208; add.u64 %r1302,%frame,212; $L5: .loc 1 914 24 ld.s8 %r265,[%r411]; .loc 1 914 37 cvt.u16.u32 %r440,%r265; set.u32.ne.u16 %r441,%r440,37; neg.s32 %r442,%r441; mov.u32 %r439,%r442; set.u32.ne.u16 %r445,%r440,0; neg.s32 %r446,%r445; mov.u32 %r443,%r446; cvt.u16.u8 %r1309,%r439; mov.u16 %r448,%r1309; cvt.u16.u8 %r1309,%r443; mov.u16 %r449,%r1309; and.b16 %r447,%r448,%r449; cvt.u32.u16 %r450,%r447; cvt.u16.u8 %r451,%r450; setp.eq.u16 %r452,%r451,0; @ %r452 bra $L245; mov.u64 %r240,%r411; $L7: mov.u64 %r343,%r240; .loc 1 915 25 add.u64 %r240,%r240,1; .loc 1 914 24 ld.s8 %r265,[%r240]; .loc 1 914 37 cvt.u16.u32 %r454,%r265; set.u32.ne.u16 %r455,%r454,0; neg.s32 %r456,%r455; mov.u32 %r453,%r456; set.u32.ne.u16 %r459,%r454,37; neg.s32 %r460,%r459; mov.u32 %r457,%r460; cvt.u16.u8 %r1309,%r453; mov.u16 %r462,%r1309; cvt.u16.u8 %r1309,%r457; mov.u16 %r463,%r1309; and.b16 %r461,%r462,%r463; cvt.u32.u16 %r464,%r461; cvt.u16.u8 %r465,%r464; setp.ne.u16 %r466,%r465,0; @ %r466 bra $L7; .loc 1 917 16 sub.u64 %r467,%r240,%r411; .loc 1 917 10 cvt.u32.u64 %r266,%r467; .loc 1 917 6 setp.eq.u32 %r468,%r266,0; @ %r468 bra $L6; .loc 1 918 4 st.u64 [%r253],%r411; cvt.s64.s32 %r33,%r266; st.u64 [%r253+8],%r33; ld.u64 %r470,[%frame+184]; add.u64 %r469,%r470,%r33; st.u64 [%frame+184],%r469; ld.u32 %r471,[%frame+176]; add.u32 %r37,%r471,1; st.u32 [%frame+176],%r37; setp.gt.s32 %r472,%r37,7; @ %r472 bra $L8; add.u64 %r253,%r253,16; bra $L9; $L8: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r477,[%value_in]; } setp.ne.u32 %r478,%r477,0; @ %r478 bra $L10; mov.u64 %r253,%frame; $L9: .loc 1 919 8 add.u32 %r408,%r408,%r266; .loc 1 925 21 ld.s8 %r265,[%r343+1]; bra $L6; $L245: .loc 1 914 37 mov.u64 %r240,%r411; $L6: .loc 1 925 20 setp.eq.u32 %r479,%r265,0; @ %r479 bra $L11; .loc 1 929 6 add.u64 %r411,%r240,1; .loc 1 935 8 mov.u32 %r480,0; st.u8 [%frame+218],%r480; .loc 1 947 14 ld.s8 %r387,[%r240+1]; mov.u32 %r320,0; mov.u32 %r321,%r320; .loc 1 934 8 mov.u32 %r246,-1; .loc 1 933 9 mov.u32 %r245,%r320; .loc 1 931 9 mov.u32 %r243,%r320; .loc 1 1060 6 mov.u32 %r1290,%r320; $L12: .loc 1 947 18 add.u64 %r411,%r411,1; .loc 1 947 12 mov.u32 %r241,%r387; $L13: .loc 1 948 11 setp.eq.u32 %r481,%r241,85; @ %r481 bra $L14; setp.gt.s32 %r482,%r241,85; @ %r482 bra $L15; setp.eq.u32 %r483,%r241,46; @ %r483 bra $L16; setp.gt.s32 %r484,%r241,46; @ %r484 bra $L17; setp.eq.u32 %r485,%r241,42; @ %r485 bra $L18; setp.gt.s32 %r486,%r241,42; @ %r486 bra $L19; setp.eq.u32 %r487,%r241,32; @ %r487 bra $L20; setp.eq.u32 %r488,%r241,35; @ %r488 bra $L21; bra $L368; $L19: setp.eq.u32 %r489,%r241,43; @ %r489 bra $L23; setp.eq.u32 %r490,%r241,45; @ %r490 bra $L24; bra $L25; $L17: setp.eq.u32 %r491,%r241,68; @ %r491 bra $L26; setp.gt.s32 %r492,%r241,68; @ %r492 bra $L27; setp.eq.u32 %r493,%r241,48; @ %r493 bra $L28; add.u32 %r494,%r241,-49; setp.gt.u32 %r495,%r494,8; @ %r495 bra $L25; mov.u64 %r333,%r411; .loc 1 1077 6 mov.u32 %r245,0; add.u32 %r1261,%r241,-48; bra $L29; $L27: .loc 1 948 11 setp.eq.u32 %r496,%r241,76; @ %r496 bra $L30; setp.gt.s32 %r497,%r241,76; @ %r497 bra $L31; and.b32 %r498,%r241,-3; setp.eq.u32 %r499,%r498,69; @ ! %r499 bra $L25; bra $L32; $L31: setp.eq.u32 %r500,%r241,79; @ %r500 bra $L33; bra $L25; $L15: setp.eq.u32 %r501,%r241,110; @ %r501 bra $L34; setp.gt.s32 %r502,%r241,110; @ %r502 bra $L35; setp.gt.s32 %r503,%r241,103; @ %r503 bra $L36; setp.gt.s32 %r504,%r241,100; @ %r504 bra $L32; setp.eq.u32 %r505,%r241,99; @ %r505 bra $L37; setp.eq.u32 %r506,%r241,100; @ %r506 bra $L38; setp.eq.u32 %r507,%r241,88; @ %r507 bra $L39; bra $L25; $L36: setp.eq.u32 %r508,%r241,105; @ %r508 bra $L38; setp.eq.u32 %r509,%r241,108; @ %r509 bra $L40; setp.eq.u32 %r510,%r241,104; @ %r510 bra $L41; bra $L25; $L35: setp.eq.u32 %r511,%r241,115; @ %r511 bra $L42; setp.gt.s32 %r512,%r241,115; @ %r512 bra $L43; setp.eq.u32 %r513,%r241,112; @ %r513 bra $L44; setp.eq.u32 %r514,%r241,113; @ %r514 bra $L45; setp.eq.u32 %r515,%r241,111; @ %r515 bra $L46; bra $L25; $L43: setp.eq.u32 %r516,%r241,117; @ %r516 bra $L47; setp.eq.u32 %r517,%r241,120; @ %r517 bra $L48; bra $L25; $L38: setp.eq.u32 %r518,%r320,0; @ %r518 bra $L50; cvt.u32.u32 %r519,%r321; st.u8 [%frame+218],%r519; bra $L50; $L48: setp.eq.u32 %r520,%r320,0; @ %r520 bra $L51; cvt.u32.u32 %r521,%r321; st.u8 [%frame+218],%r521; $L51: .loc 1 1538 10 cvta.const.u64 %r252,$LC5; bra $L52; $L20: .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 964 7 setp.ne.u32 %r522,%r321,0; selp.u32 %r320,%r320,1,%r522; selp.u32 %r321,%r321,32,%r522; bra $L12; $L21: .loc 1 968 10 or.b32 %r243,%r243,1; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 969 4 bra $L12; $L18: .loc 1 1007 10 add.u64 %r169,%r412,4; ld.u32 %r245,[%r412]; .loc 1 1011 7 setp.lt.s32 %r523,%r245,0; @ %r523 bra $L54; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1007 10 mov.u64 %r412,%r169; bra $L12; $L54: .loc 1 1013 10 neg.s32 %r245,%r245; .loc 1 1007 10 mov.u64 %r412,%r169; $L24: .loc 1 1016 10 or.b32 %r243,%r243,4; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1017 4 bra $L12; $L23: .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1020 4 mov.u32 %r320,1; .loc 1 1019 9 mov.u32 %r321,%r241; .loc 1 1020 4 bra $L12; $L16: .loc 1 1022 18 add.u64 %r282,%r411,1; .loc 1 1022 12 ld.s8 %r241,[%r411]; .loc 1 1022 7 setp.eq.u32 %r524,%r241,42; @ %r524 bra $L55; .loc 1 1061 11 add.u32 %r1261,%r241,-48; setp.le.u32 %r525,%r1261,9; @ %r525 bra $L56; .loc 1 1022 18 mov.u64 %r411,%r282; .loc 1 1060 6 mov.u32 %r246,%r1290; bra $L13; $L55: ld.u32 %r526,[%r412]; max.s32 %r246,%r526,-1; .loc 1 947 14 ld.s8 %r387,[%r411+1]; .loc 1 1052 10 add.u64 %r412,%r412,4; .loc 1 1022 18 mov.u64 %r411,%r282; .loc 1 1058 5 bra $L12; $L56: mov.u64 %r338,%r282; .loc 1 1060 6 mov.u32 %r246,%r1290; $L58: .loc 1 1062 12 shl.b32 %r528,%r246,2; add.u32 %r529,%r528,%r246; add.u32 %r530,%r529,%r529; .loc 1 1062 7 add.u32 %r246,%r530,%r1261; mov.u64 %r272,%r338; add.u64 %r338,%r338,1; mov.u64 %r411,%r338; .loc 1 1063 8 ld.s8 %r241,[%r272]; .loc 1 1061 11 add.u32 %r1261,%r241,-48; setp.le.u32 %r531,%r1261,9; @ %r531 bra $L58; bra $L13; $L28: .loc 1 1073 10 or.b32 %r243,%r243,128; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1074 4 bra $L12; $L29: .loc 1 1079 12 shl.b32 %r533,%r245,2; add.u32 %r534,%r533,%r245; add.u32 %r535,%r534,%r534; .loc 1 1079 7 add.u32 %r245,%r1261,%r535; mov.u64 %r257,%r333; add.u64 %r333,%r333,1; mov.u64 %r411,%r333; .loc 1 1080 8 ld.s8 %r241,[%r257]; .loc 1 1081 13 add.u32 %r1261,%r241,-48; setp.le.u32 %r538,%r1261,9; @ %r538 bra $L29; bra $L13; $L30: .loc 1 1097 10 or.b32 %r243,%r243,8; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1098 4 bra $L12; $L41: .loc 1 1107 11 or.b32 %r243,%r243,64; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1108 4 bra $L12; $L40: .loc 1 1111 8 ld.s8 %r387,[%r411]; .loc 1 1111 7 cvt.u16.u32 %r539,%r387; setp.ne.u16 %r540,%r539,108; @ %r540 bra $L59; .loc 1 1113 11 or.b32 %r243,%r243,32; .loc 1 947 14 ld.s8 %r387,[%r411+1]; .loc 1 1112 8 add.u64 %r411,%r411,1; bra $L12; $L59: .loc 1 1116 11 or.b32 %r243,%r243,16; bra $L12; $L45: .loc 1 1119 10 or.b32 %r243,%r243,32; .loc 1 1022 14 ld.s8 %r387,[%r411]; .loc 1 1120 4 bra $L12; $L37: .loc 1 1178 9 ld.u32 %r541,[%r412]; st.u8 [%frame+128],%r541; .loc 1 1181 9 mov.u32 %r542,0; st.u8 [%frame+218],%r542; .loc 1 1178 11 add.u64 %r412,%r412,4; .loc 1 1182 4 mov.u32 %r161,1; .loc 1 1179 10 mov.u32 %r251,%r161; .loc 1 1162 7 add.u64 %r242,%frame,128; .loc 1 1182 4 bra $L60; $L26: setp.eq.u32 %r543,%r320,0; @ %r543 bra $L61; cvt.u32.u32 %r544,%r321; st.u8 [%frame+218],%r544; $L61: .loc 1 1184 10 or.b32 %r243,%r243,16; $L50: .loc 1 1188 13 and.b32 %r545,%r243,32; setp.eq.u32 %r546,%r545,0; @ %r546 bra $L62; add.u64 %r324,%r412,7; and.b64 %r39,%r324,-8; add.u64 %r412,%r39,8; ld.u64 %r53,[%r39]; mov.u64 %r249,%r53; bra $L63; $L62: and.b32 %r547,%r243,16; setp.eq.u32 %r548,%r547,0; @ %r548 bra $L64; add.u64 %r293,%r412,7; and.b64 %r326,%r293,-8; add.u64 %r412,%r326,8; ld.u64 %r53,[%r326]; mov.u64 %r249,%r53; bra $L63; $L64: .loc 1 1007 10 ld.u32 %r389,[%r412]; add.u64 %r412,%r412,4; .loc 1 1188 13 and.b32 %r549,%r243,64; setp.eq.u32 %r550,%r549,0; @ %r550 bra $L65; cvt.u16.u32 %r551,%r389; cvt.s64.s16 %r249,%r551; .loc 1 1190 8 mov.u64 %r53,%r249; bra $L63; $L65: .loc 1 1188 13 cvt.s64.s32 %r249,%r389; .loc 1 1190 8 mov.u64 %r53,%r249; $L63: .loc 1 1190 7 setp.ge.s64 %r554,%r53,0; @ %r554 bra $L66; .loc 1 1196 12 neg.s64 %r249,%r249; mov.u32 %r258,45; .loc 1 1199 9 mov.u32 %r250,1; bra $L67; $L32: setp.eq.u32 %r555,%r320,0; @ %r555 bra $L68; cvt.u32.u32 %r556,%r321; st.u8 [%frame+218],%r556; $L68: .loc 1 1188 13 add.u64 %r557,%r412,7; and.b64 %r395,%r557,-8; add.u64 %r412,%r395,8; .loc 1 1214 25 ld.f64 %r28,[%r395]; .loc 1 1225 8 abs.f64 %r560,%r28; setp.leu.f64 %r561,%r560,0d7fefffffffffffff; @ %r561 bra $L71; .loc 1 1226 8 setp.lt.f64 %r562,%r28,0d0000000000000000; @ %r562 bra $L72; .loc 1 964 8 ld.s8 %r375,[%frame+218]; bra $L73; $L71: .loc 1 1236 7 setp.nan.f64 %r563,%r28,%r28; @ ! %r563 bra $L369; bra $L74; $L72: .loc 1 1227 11 mov.u32 %r564,45; st.u8 [%frame+218],%r564; mov.u32 %r375,45; $L73: .loc 1 1228 8 setp.le.s32 %r565,%r241,71; @ %r565 bra $L246; .loc 1 1231 9 cvta.const.u64 %r242,$LC1; bra $L76; $L246: .loc 1 1229 9 cvta.const.u64 %r242,$LC0; $L76: .loc 1 1233 11 and.b32 %r244,%r243,-129; .loc 1 1234 5 mov.u32 %r161,3; .loc 1 1232 10 mov.u32 %r251,%r161; .loc 1 932 9 mov.u32 %r246,0; .loc 1 937 8 mov.u32 %r248,%r246; .loc 1 1234 5 bra $L77; $L74: .loc 1 1237 9 mov.b64 %r566,%r28; shr.u64 %r567,%r566,63; cvt.u32.u64 %r569,%r567; .loc 1 1237 8 setp.ne.u32 %r570,%r569,0; @ %r570 bra $L78; .loc 1 964 8 ld.s8 %r375,[%frame+218]; bra $L79; $L78: .loc 1 1238 11 mov.u32 %r571,45; st.u8 [%frame+218],%r571; mov.u32 %r375,45; $L79: .loc 1 1239 8 setp.le.s32 %r572,%r241,71; @ %r572 bra $L247; .loc 1 1242 9 cvta.const.u64 %r242,$LC3; bra $L80; $L247: .loc 1 1240 9 cvta.const.u64 %r242,$LC2; $L80: .loc 1 1244 11 and.b32 %r244,%r243,-129; .loc 1 1245 5 mov.u32 %r161,3; .loc 1 1243 10 mov.u32 %r251,%r161; .loc 1 932 9 mov.u32 %r246,0; .loc 1 937 8 mov.u32 %r248,%r246; .loc 1 1245 5 bra $L77; $L369: .loc 1 1304 32 and.b32 %r392,%r241,-33; .loc 1 1302 7 setp.eq.u32 %r573,%r246,-1; @ %r573 bra $L248; .loc 1 1304 40 set.u32.eq.u32 %r575,%r246,0; neg.s32 %r576,%r575; mov.u32 %r574,%r576; .loc 1 1304 32 set.u32.eq.u32 %r578,%r392,71; neg.s32 %r579,%r578; mov.u32 %r577,%r579; .loc 1 1304 40 cvt.u16.u8 %r1309,%r574; mov.u16 %r581,%r1309; cvt.u16.u8 %r1309,%r577; mov.u16 %r582,%r1309; and.b16 %r580,%r581,%r582; cvt.u32.u16 %r583,%r580; cvt.u16.u8 %r584,%r583; setp.ne.u16 %r585,%r584,0; @ %r585 bra $L82; bra $L81; $L248: .loc 1 1303 10 mov.u32 %r246,6; $L81: .loc 1 1308 10 or.b32 %r244,%r243,256; .loc 1 1807 6 mov.b64 %r586,%r28; shr.u64 %r587,%r586,32; cvt.u32.u64 %r588,%r587; .loc 1 1807 5 setp.ge.s32 %r589,%r588,0; @ %r589 bra $L249; bra $L243; $L262: .loc 1 1305 10 mov.u32 %r246,1; $L243: .loc 1 1808 9 neg.f64 %r301,%r28; .loc 1 1809 9 mov.u32 %r322,45; bra $L83; $L249: mov.f64 %r301,%r28; .loc 1 1811 9 mov.u32 %r322,0; $L83: .loc 1 1860 5 setp.eq.u32 %r590,%r392,70; @ %r590 bra $L84; .loc 1 1867 6 setp.ne.u32 %r591,%r392,69; @ %r591 bra $L85; .loc 1 1868 11 add.u32 %r300,%r246,1; .loc 1 1873 11 mov.u32 %r594,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r301; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r594; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r602,[%value_in]; } mov.u64 %r242,%r602; setp.eq.u32 %r1266,1,1; bra $L86; $L381: .loc 1 1880 10 ld.u32 %r367,[%frame+212]; bra $L87; $L235: .loc 1 1879 23 mov.u32 %r603,1; sub.u32 %r367,%r603,%r246; .loc 1 1879 12 st.u32 [%frame+212],%r367; $L87: .loc 1 1880 10 cvt.s64.s32 %r604,%r367; .loc 1 1880 7 add.u64 %r605,%r604,%r273; add.u64 %r304,%r1199,%r605; setp.eq.u32 %r1266,1,1; $L237: .loc 1 1882 6 setp.eq.f64 %r606,%r301,0d0000000000000000; @ %r606 bra $L250; .loc 1 1884 14 ld.u64 %r219,[%frame+192]; setp.ge.u64 %r607,%r219,%r304; @ %r607 bra $L88; .loc 1 1885 11 mov.u32 %r609,48; $L89: .loc 1 1885 8 add.u64 %r608,%r219,1; st.u64 [%frame+192],%r608; .loc 1 1885 11 st.u8 [%r219],%r609; .loc 1 1884 14 ld.u64 %r219,[%frame+192]; setp.gt.u64 %r610,%r304,%r219; @ %r610 bra $L89; bra $L88; $L382: .loc 1 1887 16 ld.u64 %r611,[%frame+192]; sub.u64 %r306,%r611,%r242; .loc 1 1887 10 cvt.u32.u64 %r1264,%r306; mov.u32 %r62,%r1264; .loc 1 1314 14 ld.u32 %r248,[%frame+212]; bra $L90; $L250: mov.u64 %r219,%r304; $L88: .loc 1 1887 16 sub.u64 %r306,%r219,%r242; .loc 1 1887 10 cvt.u32.u64 %r62,%r306; mov.u32 %r1264,%r62; .loc 1 1314 14 ld.u32 %r248,[%frame+212]; .loc 1 1313 7 @ %r1266 bra $L91; $L90: .loc 1 1314 8 set.u32.lt.s32 %r614,%r248,-3; neg.s32 %r615,%r614; mov.u32 %r613,%r615; .loc 1 1314 20 set.u32.lt.s32 %r617,%r246,%r248; neg.s32 %r618,%r617; mov.u32 %r616,%r618; cvt.u16.u8 %r1309,%r613; mov.u16 %r620,%r1309; cvt.u16.u8 %r1309,%r616; mov.u16 %r621,%r1309; or.b16 %r619,%r620,%r621; cvt.u32.u16 %r622,%r619; cvt.u16.u8 %r623,%r622; setp.eq.u16 %r624,%r623,0; @ %r624 bra $L92; .loc 1 1315 9 add.u32 %r241,%r241,-2; bra $L93; $L91: .loc 1 1323 7 setp.eq.u32 %r625,%r241,102; @ %r625 bra $L94; $L93: .loc 1 1324 5 add.u32 %r61,%r248,-1; st.u32 [%frame+212],%r61; .loc 1 1903 7 st.u8 [%frame+200],%r241; .loc 1 1904 5 setp.ge.s32 %r626,%r61,0; @ %r626 bra $L251; .loc 1 1905 7 mov.u32 %r627,1; sub.u32 %r61,%r627,%r248; .loc 1 1906 8 mov.u32 %r270,45; bra $L95; $L251: .loc 1 1909 8 mov.u32 %r270,43; $L95: cvt.u32.u32 %r628,%r270; st.u8 [%frame+201],%r628; .loc 1 1911 5 setp.le.s32 %r629,%r61,9; @ %r629 bra $L96; .loc 1 1910 4 mov.u64 %r311,%r1296; $L97: mov.u64 %r350,%r311; .loc 1 1913 9 add.u64 %r311,%r350,-1; .loc 1 1913 11 rem.s32 %r631,%r61,10; mov.u32 %r632,%r631; cvt.u16.u8 %r1309,%r632; mov.u16 %r634,%r1309; add.u16 %r633,%r634,48; st.u8 [%r350+-1],%r633; mov.u32 %r289,%r61; .loc 1 1914 17 div.s32 %r61,%r61,10; .loc 1 1914 24 setp.gt.s32 %r637,%r289,99; @ %r637 bra $L97; .loc 1 1915 8 add.u64 %r224,%r350,-2; .loc 1 1915 10 mov.u32 %r638,%r61; cvt.u16.u8 %r1309,%r638; mov.u16 %r640,%r1309; add.u16 %r639,%r640,48; cvt.u32.u16 %r641,%r639; cvt.s32.s8 %r369,%r641; .loc 1 1915 8 st.u8 [%r311+-1],%r641; .loc 1 1916 12 setp.ge.u64 %r645,%r224,%r1296; @ %r645 bra $L252; mov.u64 %r342,%r1297; $L100: .loc 1 1916 43 add.u64 %r224,%r224,1; .loc 1 1916 39 cvt.u32.u32 %r647,%r369; st.u8 [%r342],%r647; .loc 1 1916 12 add.u64 %r342,%r342,1; setp.ne.u64 %r650,%r224,%r1296; @ %r650 bra $L99; .loc 1 1916 36 sub.u64 %r656,%r1298,%r350; add.u64 %r657,%r1297,%r656; .loc 1 1923 12 sub.u64 %r659,%r657,%r1292; cvt.u32.u64 %r247,%r659; bra $L98; $L99: .loc 1 1916 41 ld.s8 %r369,[%r224]; bra $L100; $L96: .loc 1 1920 9 mov.u32 %r660,48; st.u8 [%frame+202],%r660; .loc 1 1921 10 mov.u32 %r661,%r61; cvt.u16.u8 %r1309,%r661; mov.u16 %r663,%r1309; add.u16 %r662,%r663,48; st.u8 [%frame+203],%r662; .loc 1 1921 8 mov.u32 %r247,4; bra $L98; $L252: .loc 1 1916 12 mov.u32 %r247,2; $L98: .loc 1 1326 10 add.u32 %r251,%r247,%r1264; .loc 1 1327 8 setp.gt.s32 %r664,%r1264,1; @ %r664 bra $L101; and.b32 %r248,%r243,1; .loc 1 1327 18 setp.ne.u32 %r665,%r248,0; @ %r665 bra $L101; .loc 1 1673 10 max.s32 %r161,%r251,0; bra $L102; $L101: .loc 1 1328 11 add.u32 %r251,%r1295,%r251; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 937 8 mov.u32 %r248,0; bra $L102; $L94: and.b32 %r667,%r243,1; or.b32 %r391,%r667,%r246; .loc 1 1334 9 setp.gt.s32 %r668,%r248,0; @ %r668 bra $L103; bra $L370; $L92: .loc 1 1342 15 setp.le.s32 %r669,%r1264,%r248; @ %r669 bra $L105; bra $L371; $L103: .loc 1 1336 16 setp.eq.u32 %r670,%r391,0; @ %r670 bra $L253; .loc 1 1337 13 vadd.u32.u32.u32.add %r251,%r246,%r248,%r1295; .loc 1 1673 10 max.s32 %r161,%r251,0; bra $L102; $L370: .loc 1 1339 20 setp.eq.u32 %r673,%r391,0; @ %r673 bra $L254; .loc 1 1340 21 add.u32 %r251,%r1299,%r246; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1339 12 bra $L102; $L105: .loc 1 1344 9 and.b32 %r676,%r243,1; setp.ne.u32 %r677,%r676,0; @ %r677 bra $L108; .loc 1 1673 10 max.s32 %r161,%r248,0; mov.u32 %r251,%r248; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L108: .loc 1 1345 12 add.u32 %r251,%r1295,%r248; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L371: .loc 1 1347 18 add.u32 %r251,%r1295,%r1264; .loc 1 1348 9 setp.le.s32 %r681,%r248,0; @ %r681 bra $L109; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L109: .loc 1 1349 17 mov.u32 %r683,1; .loc 1 1349 12 vsub.u32.u32.u32.add %r251,%r683,%r248,%r251; .loc 1 1673 10 max.s32 %r161,%r251,0; .loc 1 1317 9 mov.u32 %r241,103; bra $L102; $L253: mov.u32 %r161,%r248; .loc 1 1314 14 mov.u32 %r251,%r248; bra $L102; $L254: mov.u32 %r161,1; .loc 1 1339 12 mov.u32 %r251,%r161; $L102: .loc 1 1372 7 setp.eq.u32 %r684,%r322,0; @ %r684 bra $L110; .loc 1 1373 10 mov.u32 %r685,45; st.u8 [%frame+218],%r685; .loc 1 932 9 mov.u32 %r246,0; bra $L111; $L34: setp.eq.u32 %r686,%r320,0; @ %r686 bra $L112; cvt.u32.u32 %r687,%r321; st.u8 [%frame+218],%r687; $L112: .loc 1 1188 13 add.u64 %r688,%r412,7; and.b64 %r401,%r688,-8; ld.u64 %r402,[%r401]; add.u64 %r412,%r401,8; .loc 1 1387 14 and.b32 %r689,%r243,32; .loc 1 1387 7 setp.eq.u32 %r690,%r689,0; @ %r690 bra $L113; .loc 1 1388 34 cvt.s64.s32 %r691,%r408; st.u64 [%r402],%r691; bra $L5; $L113: .loc 1 1391 14 and.b32 %r692,%r243,16; .loc 1 1391 7 setp.eq.u32 %r693,%r692,0; @ %r693 bra $L115; .loc 1 1392 34 cvt.s64.s32 %r694,%r408; st.u64 [%r402],%r694; bra $L5; $L115: .loc 1 1393 19 and.b32 %r695,%r243,64; .loc 1 1393 12 setp.eq.u32 %r696,%r695,0; @ %r696 bra $L116; .loc 1 1394 35 st.u16 [%r402],%r408; bra $L5; $L116: .loc 1 1400 33 st.u32 [%r402],%r408; bra $L5; $L33: .loc 1 1403 10 or.b32 %r243,%r243,16; $L46: .loc 1 1406 13 and.b32 %r697,%r243,32; setp.eq.u32 %r698,%r697,0; @ %r698 bra $L117; add.u64 %r275,%r412,7; and.b64 %r335,%r275,-8; add.u64 %r412,%r335,8; ld.u64 %r249,[%r335]; .loc 1 1407 9 mov.u32 %r250,0; bra $L118; $L117: .loc 1 1406 13 and.b32 %r699,%r243,16; setp.eq.u32 %r700,%r699,0; @ %r700 bra $L119; add.u64 %r328,%r412,7; and.b64 %r327,%r328,-8; add.u64 %r412,%r327,8; ld.u64 %r249,[%r327]; .loc 1 1407 9 mov.u32 %r250,%r697; bra $L118; $L119: .loc 1 1007 10 ld.u32 %r396,[%r412]; add.u64 %r412,%r412,4; .loc 1 1406 13 and.b32 %r701,%r243,64; setp.eq.u32 %r702,%r701,0; @ %r702 bra $L120; cvt.u16.u32 %r703,%r396; cvt.u64.u16 %r249,%r703; .loc 1 1407 9 mov.u32 %r250,%r699; bra $L118; $L120: .loc 1 1406 13 cvt.u64.u32 %r249,%r396; .loc 1 1407 9 mov.u32 %r250,%r701; bra $L118; $L44: .loc 1 1421 25 add.u64 %r360,%r412,7; and.b64 %r356,%r360,-8; add.u64 %r412,%r356,8; ld.u64 %r249,[%r356]; .loc 1 1424 10 or.b32 %r243,%r243,2; .loc 1 1425 10 mov.u32 %r704,48; st.u8 [%frame+216],%r704; .loc 1 1426 10 mov.u32 %r705,120; st.u8 [%frame+217],%r705; .loc 1 1423 10 cvta.const.u64 %r252,$LC5; .loc 1 1422 9 mov.u32 %r250,2; .loc 1 1426 15 mov.u32 %r241,120; .loc 1 1427 4 bra $L118; $L42: .loc 1 1432 7 add.u64 %r358,%r412,7; and.b64 %r359,%r358,-8; add.u64 %r412,%r359,8; ld.u64 %r242,[%r359]; .loc 1 1436 9 mov.u32 %r706,0; st.u8 [%frame+218],%r706; .loc 1 1442 7 setp.ne.u64 %r707,%r242,0; @ %r707 bra $L121; .loc 1 1444 39 min.u32 %r251,%r246,6; mov.u32 %r161,%r251; .loc 1 1443 8 cvta.const.u64 %r242,$LC6; bra $L60; $L121: .loc 1 1511 7 setp.eq.u32 %r708,%r246,-1; @ %r708 bra $L122; .loc 1 1517 15 cvt.s64.s32 %r712,%r246; mov.u32 %r710,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r242; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r710; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r712; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r713,[%value_in]; } .loc 1 1519 8 setp.ne.u64 %r714,%r713,0; @ %r714 bra $L123; .loc 1 1674 7 ld.s8 %r375,[%frame+218]; mov.u32 %r161,%r246; mov.u32 %r251,%r246; mov.u32 %r244,%r243; .loc 1 932 9 mov.u32 %r246,%r710; .loc 1 937 8 mov.u32 %r248,%r246; bra $L77; $L123: .loc 1 1520 15 sub.u64 %r715,%r713,%r242; .loc 1 1520 11 cvt.u32.u64 %r251,%r715; .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 1673 10 max.s32 %r161,%r251,0; mov.u32 %r244,%r243; .loc 1 932 9 mov.u32 %r246,%r710; .loc 1 937 8 mov.u32 %r248,%r246; bra $L77; $L122: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r242; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r717,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r251,%r717; .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 1673 10 max.s32 %r161,%r251,0; mov.u32 %r244,%r243; .loc 1 932 9 mov.u32 %r246,0; .loc 1 937 8 mov.u32 %r248,%r246; bra $L77; $L14: .loc 1 1528 10 or.b32 %r243,%r243,16; $L47: .loc 1 1531 13 and.b32 %r718,%r243,32; setp.eq.u32 %r719,%r718,0; @ %r719 bra $L124; add.u64 %r348,%r412,7; and.b64 %r73,%r348,-8; add.u64 %r412,%r73,8; ld.u64 %r249,[%r73]; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L124: .loc 1 1531 13 and.b32 %r720,%r243,16; setp.eq.u32 %r721,%r720,0; @ %r721 bra $L125; add.u64 %r330,%r412,7; and.b64 %r331,%r330,-8; add.u64 %r412,%r331,8; ld.u64 %r249,[%r331]; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L125: .loc 1 1007 10 ld.u32 %r397,[%r412]; add.u64 %r412,%r412,4; .loc 1 1531 13 and.b32 %r722,%r243,64; setp.eq.u32 %r723,%r722,0; @ %r723 bra $L126; cvt.u16.u32 %r724,%r397; cvt.u64.u16 %r249,%r724; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L126: .loc 1 1531 13 cvt.u64.u32 %r249,%r397; .loc 1 1532 9 mov.u32 %r250,1; bra $L118; $L39: setp.eq.u32 %r725,%r320,0; @ %r725 bra $L127; cvt.u32.u32 %r726,%r321; st.u8 [%frame+218],%r726; $L127: .loc 1 1535 10 cvta.const.u64 %r252,$LC4; $L52: .loc 1 1539 17 and.b32 %r727,%r243,32; setp.eq.u32 %r728,%r727,0; @ %r728 bra $L128; add.u64 %r354,%r412,7; and.b64 %r337,%r354,-8; add.u64 %r412,%r337,8; ld.u64 %r249,[%r337]; bra $L129; $L128: and.b32 %r729,%r243,16; setp.eq.u32 %r730,%r729,0; @ %r730 bra $L130; add.u64 %r357,%r412,7; and.b64 %r211,%r357,-8; add.u64 %r412,%r211,8; ld.u64 %r249,[%r211]; bra $L129; $L130: .loc 1 1007 10 ld.u32 %r398,[%r412]; add.u64 %r412,%r412,4; .loc 1 1539 17 and.b32 %r731,%r243,64; setp.eq.u32 %r732,%r731,0; @ %r732 bra $L131; cvt.u16.u32 %r733,%r398; cvt.u64.u16 %r249,%r733; bra $L129; $L131: cvt.u64.u32 %r249,%r398; $L129: .loc 1 1542 14 and.b32 %r734,%r243,1; .loc 1 1542 7 setp.eq.u32 %r735,%r734,0; @ %r735 bra $L255; .loc 1 1542 20 setp.eq.u64 %r736,%r249,0; @ %r736 bra $L256; .loc 1 1543 11 mov.u32 %r737,48; st.u8 [%frame+216],%r737; .loc 1 1544 11 st.u8 [%frame+217],%r241; .loc 1 1545 11 or.b32 %r243,%r243,2; .loc 1 1540 9 mov.u32 %r250,2; bra $L118; $L255: mov.u32 %r250,2; bra $L118; $L256: mov.u32 %r250,2; $L118: .loc 1 1552 1 mov.u32 %r258,0; $L67: .loc 1 1197 10 cvt.u32.u32 %r738,%r258; st.u8 [%frame+218],%r738; .loc 1 1558 14 setp.eq.u32 %r739,%r246,-1; @ %r739 bra $L132; .loc 1 1559 11 and.b32 %r244,%r243,-129; .loc 1 1567 15 set.u32.ne.u64 %r741,%r249,0; neg.s32 %r742,%r741; mov.u32 %r740,%r742; .loc 1 1567 28 set.u32.ne.u32 %r744,%r246,0; neg.s32 %r745,%r744; mov.u32 %r743,%r745; .loc 1 1567 20 cvt.u16.u8 %r1309,%r740; mov.u16 %r747,%r1309; cvt.u16.u8 %r1309,%r743; mov.u16 %r748,%r1309; or.b16 %r746,%r747,%r748; cvt.u32.u16 %r749,%r746; .loc 1 1567 7 cvt.u16.u8 %r750,%r749; setp.eq.u16 %r751,%r750,0; @ %r751 bra $L133; .loc 1 1559 11 mov.u32 %r243,%r244; $L132: setp.eq.u32 %r752,%r250,1; @ %r752 bra $L134; setp.eq.u32 %r753,%r250,2; @ %r753 bra $L257; mov.u64 %r242,%r1291; $L136: mov.u64 %r325,%r242; .loc 1 1576 13 add.u64 %r242,%r242,-1; .loc 1 1576 15 cvt.u32.u64 %r754,%r249; cvt.u16.u8 %r1309,%r754; mov.u16 %r756,%r1309; and.b16 %r755,%r756,7; cvt.u32.u16 %r757,%r755; cvt.u16.u8 %r1309,%r757; mov.u16 %r759,%r1309; add.u16 %r758,%r759,48; cvt.u32.u16 %r760,%r758; cvt.s32.s8 %r114,%r760; .loc 1 1576 13 st.u8 [%r242],%r760; .loc 1 1577 14 shr.u64 %r249,%r249,3; .loc 1 1578 15 setp.ne.u64 %r762,%r249,0; @ %r762 bra $L136; .loc 1 1580 22 cvt.u16.u32 %r764,%r114; set.u32.ne.u16 %r765,%r764,48; neg.s32 %r766,%r765; mov.u32 %r763,%r766; .loc 1 1580 9 mov.u32 %r767,%r243; cvt.u16.u8 %r1309,%r767; mov.u16 %r769,%r1309; and.b16 %r768,%r769,1; cvt.u32.u16 %r770,%r768; .loc 1 1580 22 cvt.u16.u8 %r1309,%r763; mov.u16 %r772,%r1309; cvt.u16.u8 %r1309,%r770; mov.u16 %r773,%r1309; and.b16 %r771,%r772,%r773; cvt.u32.u16 %r774,%r771; cvt.u16.u8 %r775,%r774; setp.ne.u16 %r776,%r775,0; @ %r776 bra $L137; .loc 1 1644 21 sub.u64 %r779,%r1291,%r242; .loc 1 1644 9 cvt.u32.u64 %r251,%r779; mov.u32 %r244,%r243; bra $L138; $L137: .loc 1 1581 13 add.u64 %r281,%r325,-2; mov.u32 %r780,48; st.u8 [%r242+-1],%r780; .loc 1 1644 21 sub.u64 %r783,%r1291,%r281; .loc 1 1644 9 cvt.u32.u64 %r251,%r783; mov.u32 %r244,%r243; .loc 1 1581 13 mov.u64 %r242,%r281; bra $L138; $L263: .loc 1 1559 11 mov.u32 %r243,%r244; $L134: .loc 1 1586 9 setp.gt.u64 %r784,%r249,9; @ %r784 bra $L258; .loc 1 1587 15 cvt.u32.u64 %r785,%r249; cvt.u16.u8 %r1309,%r785; mov.u16 %r787,%r1309; add.u16 %r786,%r787,48; st.u8 [%frame+167],%r786; .loc 1 1588 7 mov.u32 %r244,%r243; mov.u32 %r251,1; .loc 1 1587 13 add.u64 %r242,%frame,167; .loc 1 1588 7 bra $L138; $L258: .loc 1 1566 7 mov.u64 %r242,%r1291; $L139: .loc 1 1594 14 add.u64 %r242,%r242,-1; .loc 1 1594 16 rem.u64 %r789,%r249,10; cvt.u32.u64 %r790,%r789; cvt.u16.u8 %r1309,%r790; mov.u16 %r792,%r1309; add.u16 %r791,%r792,48; st.u8 [%r242],%r791; mov.u64 %r239,%r249; .loc 1 1615 15 div.u64 %r249,%r249,10; .loc 1 1616 22 setp.gt.u64 %r795,%r239,9; @ %r795 bra $L139; .loc 1 1644 21 sub.u64 %r798,%r1291,%r242; .loc 1 1644 9 cvt.u32.u64 %r251,%r798; mov.u32 %r244,%r243; bra $L138; $L257: mov.u64 %r242,%r1291; $L135: .loc 1 1621 13 add.u64 %r242,%r242,-1; .loc 1 1621 28 and.b64 %r799,%r249,15; .loc 1 1621 20 add.u64 %r800,%r252,%r799; .loc 1 1621 13 ld.u8 %r801,[%r800]; st.u8 [%r242],%r801; .loc 1 1622 14 shr.u64 %r249,%r249,4; .loc 1 1623 15 setp.ne.u64 %r802,%r249,0; @ %r802 bra $L135; .loc 1 1644 21 sub.u64 %r805,%r1291,%r242; .loc 1 1644 9 cvt.u32.u64 %r251,%r805; mov.u32 %r244,%r243; bra $L138; $L133: .loc 1 1641 32 setp.ne.u32 %r806,%r250,0; @ %r806 bra $L259; .loc 1 1641 55 and.b32 %r251,%r243,1; .loc 1 1641 45 setp.eq.u32 %r807,%r251,0; @ %r807 bra $L260; .loc 1 1642 32 mov.u32 %r808,48; st.u8 [%frame+167],%r808; mov.u32 %r246,%r250; add.u64 %r242,%frame,167; bra $L138; $L259: mov.u32 %r246,0; mov.u32 %r251,%r246; .loc 1 1566 7 add.u64 %r242,%frame,168; bra $L138; $L260: mov.u32 %r246,%r250; add.u64 %r242,%frame,168; $L138: .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 1673 10 max.s32 %r161,%r246,%r251; .loc 1 937 8 mov.u32 %r248,0; bra $L77; $L368: setp.eq.u32 %r809,%r320,0; @ %r809 bra $L140; $L239: cvt.u32.u32 %r810,%r321; st.u8 [%frame+218],%r810; $L140: .loc 1 1648 7 setp.eq.u32 %r811,%r241,0; @ %r811 bra $L11; $L240: .loc 1 1652 8 st.u8 [%frame+128],%r241; .loc 1 1654 9 mov.u32 %r812,0; st.u8 [%frame+218],%r812; .loc 1 1655 4 mov.u32 %r161,1; .loc 1 1653 9 mov.u32 %r251,%r161; .loc 1 1651 7 add.u64 %r242,%frame,128; .loc 1 1655 4 bra $L60; $L110: .loc 1 1674 7 ld.s8 %r375,[%frame+218]; .loc 1 932 9 mov.u32 %r246,%r322; $L77: .loc 1 1674 6 setp.eq.u32 %r813,%r375,0; @ %r813 bra $L141; $L111: .loc 1 1675 10 add.u32 %r161,%r161,1; $L141: .loc 1 1676 13 and.b32 %r126,%r244,2; .loc 1 1676 6 setp.eq.u32 %r1259,%r126,0; @ %r1259 bra $L142; .loc 1 1677 10 add.u32 %r161,%r161,2; $L142: .loc 1 1680 14 and.b32 %r127,%r244,132; .loc 1 1681 4 ld.u64 %r377,[%frame+184]; .loc 1 1680 6 setp.ne.u32 %r815,%r127,0; @ %r815 bra $L143; .loc 1 1681 4 sub.u32 %r136,%r245,%r161; setp.le.s32 %r816,%r136,0; @ %r816 bra $L143; ld.u32 %r376,[%frame+176]; setp.le.s32 %r817,%r136,16; @ ! %r817 bra $L372; cvta.const.u64 %r1265,blanks$1; bra $L144; $L372: cvta.const.u64 %r1265,blanks$1; $L147: st.u64 [%r253],%r1265; mov.u64 %r819,16; st.u64 [%r253+8],%r819; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r376,%r376,1; st.u32 [%frame+176],%r376; setp.gt.s32 %r820,%r376,7; @ %r820 bra $L145; add.u64 %r253,%r253,16; bra $L146; $L145: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r825,[%value_in]; } setp.ne.u32 %r826,%r825,0; @ %r826 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r376,[%frame+176]; mov.u64 %r253,%frame; $L146: add.u32 %r136,%r136,-16; setp.gt.s32 %r827,%r136,16; @ %r827 bra $L147; $L144: st.u64 [%r253],%r1265; cvt.s64.s32 %r129,%r136; st.u64 [%r253+8],%r129; add.u64 %r377,%r377,%r129; st.u64 [%frame+184],%r377; add.u32 %r131,%r376,1; st.u32 [%frame+176],%r131; setp.gt.s32 %r829,%r131,7; @ %r829 bra $L148; add.u64 %r253,%r253,16; bra $L143; $L148: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r834,[%value_in]; } setp.ne.u32 %r835,%r834,0; @ %r835 bra $L10; .loc 1 1685 4 ld.u64 %r377,[%frame+184]; .loc 1 1681 4 mov.u64 %r253,%frame; $L143: .loc 1 1684 6 ld.u8 %r837,[%frame+218]; cvt.s16.s8 %r836,%r837; setp.eq.u16 %r838,%r836,0; @ %r838 bra $L149; .loc 1 1685 4 st.u64 [%r253],%r1294; mov.u64 %r840,1; st.u64 [%r253+8],%r840; add.u64 %r377,%r377,1; st.u64 [%frame+184],%r377; ld.u32 %r841,[%frame+176]; add.u32 %r135,%r841,1; st.u32 [%frame+176],%r135; setp.gt.s32 %r842,%r135,7; @ %r842 bra $L150; add.u64 %r253,%r253,16; bra $L149; $L150: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r847,[%value_in]; } setp.ne.u32 %r848,%r847,0; @ %r848 bra $L10; .loc 1 1687 4 ld.u64 %r377,[%frame+184]; .loc 1 1685 4 mov.u64 %r253,%frame; $L149: .loc 1 1686 6 @ %r1259 bra $L151; .loc 1 1687 4 st.u64 [%r253],%r1293; mov.u64 %r851,2; st.u64 [%r253+8],%r851; add.u64 %r377,%r377,2; st.u64 [%frame+184],%r377; ld.u32 %r852,[%frame+176]; add.u32 %r139,%r852,1; st.u32 [%frame+176],%r139; setp.gt.s32 %r853,%r139,7; @ %r853 bra $L152; add.u64 %r253,%r253,16; bra $L151; $L152: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r858,[%value_in]; } setp.ne.u32 %r859,%r858,0; @ %r859 bra $L10; .loc 1 1691 4 ld.u64 %r377,[%frame+184]; .loc 1 1687 4 mov.u64 %r253,%frame; $L151: .loc 1 1690 6 setp.ne.u32 %r860,%r127,128; @ %r860 bra $L153; .loc 1 1691 4 sub.u32 %r178,%r245,%r161; setp.le.s32 %r861,%r178,0; @ %r861 bra $L153; ld.u32 %r378,[%frame+176]; setp.le.s32 %r862,%r178,16; @ ! %r862 bra $L373; cvta.const.u64 %r1267,zeroes$0; bra $L154; $L373: cvta.const.u64 %r1267,zeroes$0; $L157: st.u64 [%r253],%r1267; mov.u64 %r864,16; st.u64 [%r253+8],%r864; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r378,%r378,1; st.u32 [%frame+176],%r378; setp.gt.s32 %r865,%r378,7; @ %r865 bra $L155; add.u64 %r253,%r253,16; bra $L156; $L155: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r870,[%value_in]; } setp.ne.u32 %r871,%r870,0; @ %r871 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r378,[%frame+176]; mov.u64 %r253,%frame; $L156: add.u32 %r178,%r178,-16; setp.gt.s32 %r872,%r178,16; @ %r872 bra $L157; $L154: st.u64 [%r253],%r1267; cvt.s64.s32 %r143,%r178; st.u64 [%r253+8],%r143; add.u64 %r377,%r377,%r143; st.u64 [%frame+184],%r377; add.u32 %r145,%r378,1; st.u32 [%frame+176],%r145; setp.gt.s32 %r874,%r145,7; @ %r874 bra $L158; add.u64 %r253,%r253,16; bra $L153; $L158: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r879,[%value_in]; } setp.ne.u32 %r880,%r879,0; @ %r880 bra $L10; .loc 1 1694 3 ld.u64 %r377,[%frame+184]; .loc 1 1691 4 mov.u64 %r253,%frame; $L153: .loc 1 1694 3 sub.u32 %r274,%r246,%r251; setp.le.s32 %r881,%r274,0; @ %r881 bra $L159; ld.u32 %r379,[%frame+176]; setp.le.s32 %r882,%r274,16; @ ! %r882 bra $L374; cvta.const.u64 %r1267,zeroes$0; bra $L160; $L374: cvta.const.u64 %r1267,zeroes$0; $L163: st.u64 [%r253],%r1267; mov.u64 %r884,16; st.u64 [%r253+8],%r884; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r379,%r379,1; st.u32 [%frame+176],%r379; setp.gt.s32 %r885,%r379,7; @ %r885 bra $L161; add.u64 %r253,%r253,16; bra $L162; $L161: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r890,[%value_in]; } setp.ne.u32 %r891,%r890,0; @ %r891 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r253,%frame; $L162: add.u32 %r274,%r274,-16; setp.gt.s32 %r892,%r274,16; @ %r892 bra $L163; $L160: st.u64 [%r253],%r1267; cvt.s64.s32 %r149,%r274; st.u64 [%r253+8],%r149; add.u64 %r377,%r377,%r149; st.u64 [%frame+184],%r377; add.u32 %r150,%r379,1; st.u32 [%frame+176],%r150; setp.gt.s32 %r894,%r150,7; @ %r894 bra $L164; add.u64 %r253,%r253,16; bra $L159; $L164: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r899,[%value_in]; } setp.ne.u32 %r900,%r899,0; @ %r900 bra $L10; .loc 1 1699 4 ld.u64 %r377,[%frame+184]; .loc 1 1694 3 mov.u64 %r253,%frame; $L159: .loc 1 1698 14 and.b32 %r901,%r244,256; .loc 1 1698 6 setp.ne.u32 %r902,%r901,0; @ %r902 bra $L165; .loc 1 1699 4 st.u64 [%r253],%r242; cvt.s64.s32 %r153,%r251; st.u64 [%r253+8],%r153; add.u64 %r377,%r377,%r153; st.u64 [%frame+184],%r377; ld.u32 %r903,[%frame+176]; add.u32 %r155,%r903,1; st.u32 [%frame+176],%r155; setp.gt.s32 %r904,%r155,7; @ %r904 bra $L166; add.u64 %r253,%r253,16; bra $L167; $L166: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r909,[%value_in]; } setp.ne.u32 %r910,%r909,0; @ %r910 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1699 4 mov.u64 %r253,%frame; bra $L167; $L165: .loc 1 1701 7 setp.le.s32 %r911,%r241,101; @ %r911 bra $L168; .loc 1 1702 8 setp.neu.f64 %r912,%r28,0d0000000000000000; @ %r912 bra $L169; .loc 1 1704 6 cvta.const.u64 %r913,$LC7; st.u64 [%r253],%r913; mov.u64 %r914,1; st.u64 [%r253+8],%r914; add.u64 %r377,%r377,1; st.u64 [%frame+184],%r377; ld.u32 %r915,[%frame+176]; add.u32 %r158,%r915,1; st.u32 [%frame+176],%r158; setp.gt.s32 %r916,%r158,7; @ %r916 bra $L170; add.u64 %r253,%r253,16; bra $L171; $L170: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r921,[%value_in]; } setp.ne.u32 %r922,%r921,0; @ %r922 bra $L10; .loc 1 1706 7 ld.u64 %r377,[%frame+184]; .loc 1 1704 6 mov.u64 %r253,%frame; $L171: .loc 1 1705 9 ld.u32 %r923,[%frame+212]; setp.lt.s32 %r924,%r923,%r62; @ %r924 bra $L172; .loc 1 1705 31 and.b32 %r925,%r244,1; .loc 1 1705 22 setp.eq.u32 %r926,%r925,0; @ %r926 bra $L167; $L172: .loc 1 1706 7 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r377,%r377,%r425; st.u64 [%frame+184],%r377; ld.u32 %r927,[%frame+176]; add.u32 %r164,%r927,1; st.u32 [%frame+176],%r164; setp.gt.s32 %r928,%r164,7; @ %r928 bra $L173; add.u64 %r253,%r253,16; bra $L174; $L173: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r933,[%value_in]; } setp.ne.u32 %r934,%r933,0; @ %r934 bra $L10; .loc 1 1707 7 ld.u64 %r377,[%frame+184]; .loc 1 1706 7 mov.u64 %r253,%frame; $L174: .loc 1 1707 7 add.u32 %r271,%r62,-1; setp.le.s32 %r935,%r271,0; @ %r935 bra $L167; ld.u32 %r385,[%frame+176]; setp.le.s32 %r936,%r271,16; @ ! %r936 bra $L375; cvta.const.u64 %r1267,zeroes$0; bra $L175; $L375: cvta.const.u64 %r1267,zeroes$0; $L178: st.u64 [%r253],%r1267; mov.u64 %r938,16; st.u64 [%r253+8],%r938; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r939,%r385,7; @ %r939 bra $L176; add.u64 %r253,%r253,16; bra $L177; $L176: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r944,[%value_in]; } setp.ne.u32 %r945,%r944,0; @ %r945 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r253,%frame; $L177: add.u32 %r271,%r271,-16; setp.gt.s32 %r946,%r271,16; @ %r946 bra $L178; $L175: st.u64 [%r253],%r1267; cvt.s64.s32 %r168,%r271; st.u64 [%r253+8],%r168; add.u64 %r377,%r377,%r168; st.u64 [%frame+184],%r377; add.u32 %r170,%r385,1; st.u32 [%frame+176],%r170; setp.gt.s32 %r948,%r170,7; @ %r948 bra $L179; add.u64 %r253,%r253,16; bra $L167; $L179: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r953,[%value_in]; } setp.ne.u32 %r954,%r953,0; @ %r954 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1707 7 mov.u64 %r253,%frame; bra $L167; $L169: .loc 1 1709 21 ld.u32 %r172,[%frame+212]; .loc 1 1709 15 setp.gt.s32 %r955,%r172,0; @ %r955 bra $L180; .loc 1 1710 6 cvta.const.u64 %r956,$LC7; st.u64 [%r253],%r956; mov.u64 %r957,1; st.u64 [%r253+8],%r957; add.u64 %r377,%r377,1; st.u64 [%frame+184],%r377; ld.u32 %r958,[%frame+176]; add.u32 %r174,%r958,1; st.u32 [%frame+176],%r174; setp.gt.s32 %r959,%r174,7; @ %r959 bra $L181; add.u64 %r253,%r253,16; bra $L182; $L181: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r964,[%value_in]; } setp.ne.u32 %r965,%r964,0; @ %r965 bra $L10; .loc 1 1705 15 ld.u32 %r172,[%frame+212]; .loc 1 1706 7 ld.u64 %r377,[%frame+184]; .loc 1 1710 6 mov.u64 %r253,%frame; $L182: .loc 1 1711 15 or.b32 %r966,%r62,%r172; setp.ne.u32 %r967,%r966,0; @ %r967 bra $L183; .loc 1 1711 32 and.b32 %r968,%r244,1; .loc 1 1711 23 setp.ne.u32 %r969,%r968,0; @ %r969 bra $L184; bra $L167; $L183: .loc 1 1712 7 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r383,%r425,%r377; st.u64 [%frame+184],%r383; ld.u32 %r970,[%frame+176]; add.u32 %r384,%r970,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r971,%r384,7; @ %r971 bra $L185; add.u64 %r203,%r253,16; bra $L186; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r976,[%value_in]; } setp.ne.u32 %r977,%r976,0; @ %r977 bra $L10; .loc 1 1713 7 ld.u32 %r172,[%frame+212]; ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; .loc 1 1712 7 mov.u64 %r203,%frame; $L186: .loc 1 1713 7 setp.ge.s32 %r978,%r172,0; @ %r978 bra $L187; neg.s32 %r269,%r172; setp.ge.s32 %r979,%r172,-16; @ ! %r979 bra $L376; cvta.const.u64 %r1267,zeroes$0; bra $L188; $L376: cvta.const.u64 %r1267,zeroes$0; $L191: st.u64 [%r203],%r1267; mov.u64 %r981,16; st.u64 [%r203+8],%r981; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r982,%r384,7; @ %r982 bra $L189; add.u64 %r203,%r203,16; bra $L190; $L189: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r987,[%value_in]; } setp.ne.u32 %r988,%r987,0; @ %r988 bra $L10; ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; mov.u64 %r203,%frame; $L190: add.u32 %r269,%r269,-16; setp.gt.s32 %r989,%r269,16; @ %r989 bra $L191; $L188: st.u64 [%r203],%r1267; cvt.s64.s32 %r181,%r269; st.u64 [%r203+8],%r181; add.u64 %r383,%r383,%r181; st.u64 [%frame+184],%r383; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r991,%r384,7; @ %r991 bra $L192; add.u64 %r203,%r203,16; bra $L187; $L192: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r996,[%value_in]; } setp.ne.u32 %r997,%r996,0; @ %r997 bra $L10; .loc 1 1714 7 ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; .loc 1 1713 7 mov.u64 %r203,%frame; $L187: .loc 1 1714 7 st.u64 [%r203],%r242; cvt.s64.s32 %r183,%r62; st.u64 [%r203+8],%r183; add.u64 %r377,%r183,%r383; st.u64 [%frame+184],%r377; add.u32 %r184,%r384,1; st.u32 [%frame+176],%r184; setp.gt.s32 %r998,%r184,7; @ %r998 bra $L193; add.u64 %r253,%r203,16; bra $L167; $L193: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1003,[%value_in]; } setp.ne.u32 %r1004,%r1003,0; @ %r1004 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1714 7 mov.u64 %r253,%frame; bra $L167; $L180: min.s32 %r25,%r62,%r248; .loc 1 1718 6 setp.le.s32 %r1005,%r25,0; @ %r1005 bra $L194; st.u64 [%r253],%r242; cvt.s64.s32 %r186,%r25; st.u64 [%r253+8],%r186; add.u64 %r377,%r377,%r186; st.u64 [%frame+184],%r377; ld.u32 %r1006,[%frame+176]; add.u32 %r188,%r1006,1; st.u32 [%frame+176],%r188; setp.gt.s32 %r1007,%r188,7; @ %r1007 bra $L195; add.u64 %r253,%r253,16; bra $L194; $L195: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1012,[%value_in]; } setp.ne.u32 %r1013,%r1012,0; @ %r1013 bra $L10; ld.u64 %r377,[%frame+184]; mov.u64 %r253,%frame; $L194: max.s32 %r1014,%r25,0; sub.u32 %r294,%r248,%r1014; setp.le.s32 %r1015,%r294,0; @ %r1015 bra $L196; ld.u32 %r380,[%frame+176]; setp.le.s32 %r1016,%r294,16; @ ! %r1016 bra $L377; cvta.const.u64 %r1267,zeroes$0; bra $L197; $L377: cvta.const.u64 %r1267,zeroes$0; $L200: st.u64 [%r253],%r1267; mov.u64 %r1018,16; st.u64 [%r253+8],%r1018; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r380,%r380,1; st.u32 [%frame+176],%r380; setp.gt.s32 %r1019,%r380,7; @ %r1019 bra $L198; add.u64 %r253,%r253,16; bra $L199; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1024,[%value_in]; } setp.ne.u32 %r1025,%r1024,0; @ %r1025 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r380,[%frame+176]; mov.u64 %r253,%frame; $L199: add.u32 %r294,%r294,-16; setp.gt.s32 %r1026,%r294,16; @ %r1026 bra $L200; $L197: st.u64 [%r253],%r1267; cvt.s64.s32 %r193,%r294; st.u64 [%r253+8],%r193; add.u64 %r377,%r377,%r193; st.u64 [%frame+184],%r377; add.u32 %r194,%r380,1; st.u32 [%frame+176],%r194; setp.gt.s32 %r1028,%r194,7; @ %r1028 bra $L201; add.u64 %r253,%r253,16; bra $L196; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1033,[%value_in]; } setp.ne.u32 %r1034,%r1033,0; @ %r1034 bra $L10; .loc 1 1740 10 ld.u64 %r377,[%frame+184]; .loc 1 1718 6 mov.u64 %r253,%frame; $L196: .loc 1 1739 15 ld.u32 %r197,[%frame+212]; .loc 1 1739 9 setp.lt.s32 %r1035,%r197,%r62; @ %r1035 bra $L202; .loc 1 1739 31 and.b32 %r1036,%r244,1; .loc 1 1739 22 setp.eq.u32 %r1037,%r1036,0; @ %r1037 bra $L203; $L202: .loc 1 1740 10 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r377,%r377,%r425; st.u64 [%frame+184],%r377; ld.u32 %r1038,[%frame+176]; add.u32 %r200,%r1038,1; st.u32 [%frame+176],%r200; setp.gt.s32 %r1039,%r200,7; @ %r1039 bra $L204; add.u64 %r253,%r253,16; bra $L205; $L204: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1044,[%value_in]; } setp.ne.u32 %r1045,%r1044,0; @ %r1045 bra $L10; .loc 1 1741 6 ld.u32 %r197,[%frame+212]; ld.u64 %r377,[%frame+184]; .loc 1 1740 10 mov.u64 %r253,%frame; $L205: .loc 1 1741 6 sub.u32 %r202,%r62,%r197; sub.u32 %r1046,%r62,%r248; min.s32 %r24,%r1046,%r202; setp.le.s32 %r1047,%r24,0; @ %r1047 bra $L206; .loc 1 1720 9 cvt.s64.s32 %r1048,%r248; add.u64 %r1049,%r242,%r1048; .loc 1 1741 6 st.u64 [%r253],%r1049; cvt.s64.s32 %r204,%r24; st.u64 [%r253+8],%r204; add.u64 %r377,%r377,%r204; st.u64 [%frame+184],%r377; ld.u32 %r1050,[%frame+176]; add.u32 %r206,%r1050,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r1051,%r206,7; @ %r1051 bra $L207; add.u64 %r253,%r253,16; bra $L206; $L207: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1056,[%value_in]; } setp.ne.u32 %r1057,%r1056,0; @ %r1057 bra $L10; ld.u32 %r1058,[%frame+212]; sub.u32 %r202,%r62,%r1058; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1741 6 mov.u64 %r253,%frame; $L206: max.s32 %r1059,%r24,0; sub.u32 %r276,%r202,%r1059; setp.le.s32 %r1060,%r276,0; @ %r1060 bra $L167; ld.u32 %r382,[%frame+176]; setp.le.s32 %r1061,%r276,16; @ ! %r1061 bra $L378; cvta.const.u64 %r1267,zeroes$0; bra $L208; $L378: cvta.const.u64 %r1267,zeroes$0; $L211: st.u64 [%r253],%r1267; mov.u64 %r1063,16; st.u64 [%r253+8],%r1063; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r1064,%r382,7; @ %r1064 bra $L209; add.u64 %r253,%r253,16; bra $L210; $L209: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1069,[%value_in]; } setp.ne.u32 %r1070,%r1069,0; @ %r1070 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r253,%frame; $L210: add.u32 %r276,%r276,-16; setp.gt.s32 %r1071,%r276,16; @ %r1071 bra $L211; $L208: st.u64 [%r253],%r1267; cvt.s64.s32 %r210,%r276; st.u64 [%r253+8],%r210; add.u64 %r377,%r377,%r210; st.u64 [%frame+184],%r377; add.u32 %r212,%r382,1; st.u32 [%frame+176],%r212; setp.gt.s32 %r1073,%r212,7; @ %r1073 bra $L212; add.u64 %r253,%r253,16; bra $L167; $L212: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1078,[%value_in]; } setp.ne.u32 %r1079,%r1078,0; @ %r1079 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1741 6 mov.u64 %r253,%frame; bra $L167; $L168: .loc 1 1704 6 add.u64 %r216,%r377,1; .loc 1 1699 4 ld.u32 %r1080,[%frame+176]; add.u32 %r217,%r1080,1; add.u64 %r255,%r253,16; .loc 1 1745 8 setp.gt.s32 %r1081,%r62,1; @ %r1081 bra $L213; .loc 1 1745 27 and.b32 %r1082,%r244,1; .loc 1 1745 18 setp.eq.u32 %r1083,%r1082,0; @ %r1083 bra $L214; $L213: .loc 1 1746 6 st.u64 [%r253],%r242; mov.u64 %r1084,1; st.u64 [%r253+8],%r1084; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r217; setp.le.s32 %r1085,%r217,7; @ %r1085 bra $L215; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1090,[%value_in]; } setp.ne.u32 %r1091,%r1090,0; @ %r1091 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1746 6 mov.u64 %r255,%frame; $L215: .loc 1 1748 6 st.u64 [%r255],%r260; st.u64 [%r255+8],%r425; add.u64 %r216,%r216,%r425; st.u64 [%frame+184],%r216; add.u32 %r217,%r217,1; st.u32 [%frame+176],%r217; setp.gt.s32 %r1092,%r217,7; @ %r1092 bra $L216; add.u64 %r255,%r255,16; bra $L217; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1097,[%value_in]; } setp.ne.u32 %r1098,%r1097,0; @ %r1098 bra $L10; .loc 1 1750 7 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1748 6 mov.u64 %r255,%frame; $L217: .loc 1 1707 7 add.u32 %r292,%r62,-1; .loc 1 1749 9 setp.eq.f64 %r1099,%r28,0d0000000000000000; @ %r1099 bra $L218; .loc 1 1750 7 add.u32 %r217,%r217,1; .loc 1 1747 8 add.u64 %r1100,%r242,1; .loc 1 1750 7 st.u64 [%r255],%r1100; cvt.s64.s32 %r220,%r292; st.u64 [%r255+8],%r220; add.u64 %r216,%r216,%r220; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r217; setp.gt.s32 %r1101,%r217,7; @ %r1101 bra $L219; add.u64 %r255,%r255,16; bra $L220; $L219: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1106,[%value_in]; } setp.ne.u32 %r1107,%r1106,0; @ %r1107 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1750 7 mov.u64 %r255,%frame; bra $L220; $L218: .loc 1 1753 7 setp.le.s32 %r1108,%r292,0; @ %r1108 bra $L220; setp.le.s32 %r1109,%r292,16; @ ! %r1109 bra $L379; cvta.const.u64 %r1267,zeroes$0; bra $L221; $L379: cvta.const.u64 %r1267,zeroes$0; $L224: st.u64 [%r255],%r1267; mov.u64 %r1111,16; st.u64 [%r255+8],%r1111; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; add.u32 %r217,%r217,1; st.u32 [%frame+176],%r217; setp.gt.s32 %r1112,%r217,7; @ %r1112 bra $L222; add.u64 %r255,%r255,16; bra $L223; $L222: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1117,[%value_in]; } setp.ne.u32 %r1118,%r1117,0; @ %r1118 bra $L10; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; mov.u64 %r255,%frame; $L223: add.u32 %r292,%r292,-16; setp.gt.s32 %r1119,%r292,16; @ %r1119 bra $L224; $L221: st.u64 [%r255],%r1267; cvt.s64.s32 %r223,%r292; st.u64 [%r255+8],%r223; add.u64 %r216,%r216,%r223; st.u64 [%frame+184],%r216; add.u32 %r217,%r217,1; st.u32 [%frame+176],%r217; setp.gt.s32 %r1121,%r217,7; @ %r1121 bra $L225; add.u64 %r255,%r255,16; bra $L220; $L225: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1126,[%value_in]; } setp.ne.u32 %r1127,%r1126,0; @ %r1127 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1753 7 mov.u64 %r255,%frame; bra $L220; $L214: .loc 1 1755 6 st.u64 [%r253],%r242; mov.u64 %r1128,1; st.u64 [%r253+8],%r1128; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r217; setp.le.s32 %r1129,%r217,7; @ %r1129 bra $L220; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1134,[%value_in]; } setp.ne.u32 %r1135,%r1134,0; @ %r1135 bra $L10; .loc 1 1756 5 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; .loc 1 1755 6 mov.u64 %r255,%frame; $L220: .loc 1 1756 5 st.u64 [%r255],%r1292; cvt.s64.s32 %r227,%r247; st.u64 [%r255+8],%r227; add.u64 %r377,%r227,%r216; st.u64 [%frame+184],%r377; add.u32 %r228,%r217,1; st.u32 [%frame+176],%r228; setp.gt.s32 %r1137,%r228,7; @ %r1137 bra $L226; add.u64 %r253,%r255,16; bra $L167; $L226: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1142,[%value_in]; } setp.ne.u32 %r1143,%r1142,0; @ %r1143 bra $L10; .loc 1 1764 4 ld.u64 %r377,[%frame+184]; .loc 1 1756 5 mov.u64 %r253,%frame; $L167: .loc 1 1763 13 and.b32 %r1144,%r244,4; .loc 1 1763 6 setp.eq.u32 %r1145,%r1144,0; @ %r1145 bra $L227; .loc 1 1764 4 sub.u32 %r290,%r245,%r161; setp.le.s32 %r1146,%r290,0; @ %r1146 bra $L227; ld.u32 %r386,[%frame+176]; setp.le.s32 %r1147,%r290,16; @ ! %r1147 bra $L380; cvta.const.u64 %r1265,blanks$1; bra $L228; $L380: cvta.const.u64 %r1265,blanks$1; $L231: st.u64 [%r253],%r1265; mov.u64 %r1149,16; st.u64 [%r253+8],%r1149; add.u64 %r377,%r377,16; st.u64 [%frame+184],%r377; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r1150,%r386,7; @ %r1150 bra $L229; add.u64 %r253,%r253,16; bra $L230; $L229: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1155,[%value_in]; } setp.ne.u32 %r1156,%r1155,0; @ %r1156 bra $L10; ld.u64 %r377,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r253,%frame; $L230: add.u32 %r290,%r290,-16; setp.gt.s32 %r1157,%r290,16; @ %r1157 bra $L231; $L228: st.u64 [%r253],%r1265; cvt.s64.s32 %r232,%r290; st.u64 [%r253+8],%r232; add.u64 %r377,%r377,%r232; st.u64 [%frame+184],%r377; add.u32 %r233,%r386,1; st.u32 [%frame+176],%r233; setp.le.s32 %r1159,%r233,7; @ %r1159 bra $L227; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1164,[%value_in]; } setp.ne.u32 %r1165,%r1164,0; @ %r1165 bra $L10; .loc 1 1769 3 ld.u64 %r377,[%frame+184]; $L227: .loc 1 1767 33 max.s32 %r1166,%r245,%r161; .loc 1 1767 7 add.u32 %r408,%r408,%r1166; .loc 1 1769 3 setp.ne.u64 %r1167,%r377,0; @ %r1167 bra $L232; $L233: mov.u32 %r1168,0; st.u32 [%frame+176],%r1168; mov.u64 %r253,%frame; bra $L5; $L232: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1291; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1173,[%value_in]; } setp.ne.u32 %r1174,%r1173,0; @ ! %r1174 bra $L233; bra $L10; $L11: .loc 1 1777 2 ld.u64 %r1175,[%frame+184]; setp.eq.u64 %r1176,%r1175,0; @ %r1176 bra $L10; add.u64 %r1180,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1180; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1181,[%value_in]; } $L10: .loc 1 1784 31 ld.u16 %r1183,[%r410+16]; and.b16 %r1182,%r1183,64; setp.eq.u16 %r1184,%r1182,0; selp.u32 %r408,%r408,-1,%r1184; bra $L1; $L184: .loc 1 1712 7 st.u64 [%r253],%r260; st.u64 [%r253+8],%r425; add.u64 %r383,%r425,%r377; st.u64 [%frame+184],%r383; ld.u32 %r1186,[%frame+176]; add.u32 %r384,%r1186,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r1187,%r384,7; @ %r1187 bra $L185; add.u64 %r203,%r253,16; bra $L187; $L60: .loc 1 932 9 mov.u32 %r244,%r243; mov.u32 %r246,0; mov.u32 %r248,%r246; bra $L141; $L66: .loc 1 1558 14 setp.ne.u32 %r1188,%r246,-1; @ %r1188 bra $L234; bra $L134; $L84: .loc 1 1873 11 mov.u32 %r1191,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r301; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1191; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r246; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1199,[%value_in]; } mov.u64 %r242,%r1199; .loc 1 1876 15 cvt.s64.s32 %r273,%r246; .loc 1 1878 7 ld.u8 %r1202,[%r1199]; cvt.s16.s8 %r1201,%r1202; set.u32.eq.u16 %r1203,%r1201,48; neg.s32 %r1204,%r1203; mov.u32 %r1200,%r1204; .loc 1 1878 23 set.u32.neu.f64 %r1206,%r301,0d0000000000000000; neg.s32 %r1207,%r1206; mov.u32 %r1205,%r1207; cvt.u16.u8 %r1309,%r1200; mov.u16 %r1209,%r1309; cvt.u16.u8 %r1309,%r1205; mov.u16 %r1210,%r1309; and.b16 %r1208,%r1209,%r1210; cvt.u32.u16 %r1211,%r1208; cvt.u16.u8 %r1212,%r1211; setp.ne.u16 %r1213,%r1212,0; @ ! %r1213 bra $L381; bra $L235; $L261: .loc 1 1875 5 mov.u32 %r300,%r246; $L86: .loc 1 1876 15 cvt.s64.s32 %r1214,%r300; .loc 1 1876 6 add.u64 %r304,%r242,%r1214; bra $L237; $L85: .loc 1 1873 11 mov.u32 %r1217,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r301; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1217; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r246; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1225,[%value_in]; } mov.u64 %r242,%r1225; .loc 1 1875 5 setp.ne.u32 %r1266,%r392,71; @ %r1266 bra $L261; mov.u32 %r407,%r246; bra $L238; $L203: .loc 1 1741 6 sub.u32 %r202,%r62,%r197; sub.u32 %r1227,%r62,%r248; min.s32 %r24,%r1227,%r202; bra $L206; $L25: setp.ne.u32 %r1228,%r320,0; @ ! %r1228 bra $L240; bra $L239; $L241: .loc 1 1876 15 cvt.s64.s32 %r1229,%r407; .loc 1 1876 6 add.u64 %r304,%r242,%r1229; setp.ne.u32 %r1266,%r392,71; bra $L237; $L238: .loc 1 1875 31 and.b32 %r1230,%r243,1; setp.ne.u32 %r1231,%r1230,0; @ ! %r1231 bra $L382; bra $L241; $L383: .loc 1 1873 11 mov.u32 %r1235,1; mov.u32 %r1234,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r409; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1234; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1235; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1302; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1301; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1300; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1242,[%value_in]; } mov.u64 %r242,%r1242; mov.f64 %r301,%r28; .loc 1 1811 9 mov.u32 %r322,0; .loc 1 1305 10 mov.u32 %r246,%r1235; mov.u32 %r407,%r246; bra $L238; $L82: .loc 1 1308 10 or.b32 %r244,%r243,256; .loc 1 1807 6 mov.b64 %r1243,%r28; shr.u64 %r1244,%r1243,32; cvt.u32.u64 %r1245,%r1244; .loc 1 1807 5 setp.lt.s32 %r1246,%r1245,0; @ ! %r1246 bra $L383; bra $L262; $L234: .loc 1 1559 11 and.b32 %r244,%r243,-129; .loc 1 1567 28 set.u32.ne.u32 %r1248,%r246,0; neg.s32 %r1249,%r1248; mov.u32 %r1247,%r1249; .loc 1 1567 15 set.u32.ne.u64 %r1251,%r249,0; neg.s32 %r1252,%r1251; mov.u32 %r1250,%r1252; .loc 1 1567 20 cvt.u16.u8 %r1309,%r1247; mov.u16 %r1254,%r1309; cvt.u16.u8 %r1309,%r1250; mov.u16 %r1255,%r1309; or.b16 %r1253,%r1254,%r1255; cvt.u32.u16 %r1256,%r1253; .loc 1 1567 7 cvt.u16.u8 %r1257,%r1256; setp.ne.u16 %r1258,%r1257,0; @ %r1258 bra $L263; mov.u32 %r246,0; mov.u32 %r251,%r246; .loc 1 1566 7 add.u64 %r242,%frame,168; bra $L138; $L1: .loc 1 1786 1 mov.u32 %value,%r408; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1580 0 0 0 644 55174 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __ssvfscanf_r .visible .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .extern .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _sfread_r .extern .func (.param .u64 %value_out) _sfread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _sungetc_r .extern .func (.param .u32 %value_out) _sungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sprintf .extern .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtod_r .extern .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __ssvfscanf_r .visible .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,608; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r27; .reg .u64 %r33; .reg .u32 %r40; .reg .u64 %r45; .reg .u32 %r68; .reg .u64 %r69; .reg .u64 %r78; .reg .u32 %r94; .reg .u64 %r98; .reg .u64 %r109; .reg .u32 %r116; .reg .u64 %r119; .reg .u64 %r133; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r153; .reg .u64 %r167; .reg .u64 %r177; .reg .u32 %r178; .reg .u32 %r201; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u64 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u64 %r255; .reg .u32 %r256; .reg .u32 %r257; .reg .u32 %r258; .reg .u64 %r268; .reg .u64 %r276; .reg .u64 %r281; .reg .u64 %r283; .reg .u32 %r287; .reg .u64 %r289; .reg .u64 %r299; .reg .u64 %r300; .reg .u32 %r301; .reg .u64 %r302; .reg .u32 %r303; .reg .u64 %r305; .reg .u32 %r306; .reg .u32 %r307; .reg .u64 %r308; .reg .u32 %r311; .reg .u32 %r315; .reg .u64 %r316; .reg .u32 %r319; .reg .u64 %r320; .reg .u64 %r324; .reg .u64 %r327; .reg .u64 %r329; .reg .u64 %r334; .reg .u64 %r336; .reg .u64 %r337; .reg .u32 %r338; .reg .u64 %r339; .reg .u32 %r340; .reg .u32 %r346; .reg .u64 %r356; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r361; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u32 %r377; .reg .u64 %r378; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u16 %r382; .reg .u16 %r383; .reg .pred %r384; .reg .u16 %r385; .reg .u32 %r387; .reg .u32 %r388; .reg .pred %r389; .reg .pred %r390; .reg .u64 %r391; .reg .u32 %r392; .reg .u64 %r394; .reg .u16 %r396; .reg .u16 %r397; .reg .u32 %r398; .reg .pred %r399; .reg .pred %r400; .reg .u64 %r401; .reg .u64 %r403; .reg .u16 %r406; .reg .u16 %r408; .reg .pred %r409; .reg .u32 %r412; .reg .pred %r413; .reg .u32 %r414; .reg .u64 %r415; .reg .pred %r416; .reg .u16 %r417; .reg .pred %r418; .reg .pred %r420; .reg .pred %r422; .reg .pred %r424; .reg .pred %r426; .reg .pred %r428; .reg .pred %r430; .reg .pred %r432; .reg .pred %r434; .reg .pred %r436; .reg .pred %r438; .reg .pred %r440; .reg .pred %r442; .reg .pred %r444; .reg .pred %r446; .reg .pred %r448; .reg .pred %r450; .reg .pred %r452; .reg .pred %r454; .reg .pred %r456; .reg .pred %r458; .reg .pred %r460; .reg .pred %r462; .reg .pred %r464; .reg .pred %r466; .reg .pred %r468; .reg .pred %r470; .reg .pred %r472; .reg .pred %r474; .reg .u32 %r475; .reg .pred %r476; .reg .u16 %r477; .reg .u16 %r478; .reg .pred %r479; .reg .u32 %r482; .reg .pred %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u64 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u32 %r492; .reg .u16 %r493; .reg .u16 %r494; .reg .u16 %r495; .reg .u32 %r496; .reg .u16 %r497; .reg .pred %r498; .reg .u32 %r499; .reg .pred %r500; .reg .u16 %r501; .reg .pred %r502; .reg .u32 %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r507; .reg .pred %r508; .reg .u64 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u64 %r513; .reg .u32 %r514; .reg .u64 %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u64 %r521; .reg .u32 %r522; .reg .pred %r523; .reg .u32 %r524; .reg .pred %r525; .reg .u64 %r526; .reg .u32 %r527; .reg .pred %r528; .reg .u64 %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u32 %r536; .reg .pred %r537; .reg .u64 %r538; .reg .u64 %r540; .reg .u16 %r543; .reg .u16 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .pred %r548; .reg .u32 %r551; .reg .pred %r552; .reg .u64 %r553; .reg .u64 %r555; .reg .u16 %r558; .reg .u16 %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .u32 %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .u64 %r570; .reg .u32 %r573; .reg .pred %r574; .reg .pred %r575; .reg .u32 %r577; .reg .u64 %r578; .reg .u32 %r579; .reg .u64 %r581; .reg .u64 %r582; .reg .u64 %r585; .reg .pred %r586; .reg .u32 %r587; .reg .pred %r588; .reg .u64 %r590; .reg .u64 %r592; .reg .u32 %r593; .reg .pred %r594; .reg .pred %r595; .reg .u32 %r596; .reg .u64 %r597; .reg .pred %r598; .reg .u32 %r599; .reg .u64 %r600; .reg .pred %r601; .reg .pred %r602; .reg .u64 %r604; .reg .u64 %r606; .reg .u16 %r607; .reg .u32 %r608; .reg .pred %r609; .reg .u32 %r612; .reg .pred %r613; .reg .pred %r614; .reg .u32 %r615; .reg .u32 %r616; .reg .u64 %r617; .reg .u32 %r618; .reg .pred %r619; .reg .u32 %r620; .reg .u32 %r621; .reg .u64 %r622; .reg .u32 %r623; .reg .u64 %r624; .reg .pred %r625; .reg .u32 %r626; .reg .pred %r627; .reg .u32 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u64 %r634; .reg .u64 %r636; .reg .u16 %r637; .reg .u32 %r638; .reg .pred %r639; .reg .u64 %r640; .reg .pred %r641; .reg .u32 %r642; .reg .pred %r643; .reg .u64 %r644; .reg .u64 %r646; .reg .u16 %r648; .reg .u16 %r649; .reg .u32 %r650; .reg .u32 %r651; .reg .pred %r652; .reg .pred %r653; .reg .u32 %r654; .reg .u64 %r655; .reg .pred %r656; .reg .u32 %r657; .reg .u64 %r658; .reg .pred %r659; .reg .pred %r660; .reg .u32 %r663; .reg .pred %r664; .reg .u64 %r665; .reg .u64 %r667; .reg .u16 %r670; .reg .u16 %r672; .reg .pred %r673; .reg .pred %r674; .reg .u32 %r675; .reg .u32 %r676; .reg .u64 %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u32 %r680; .reg .u32 %r681; .reg .u64 %r682; .reg .u32 %r683; .reg .u64 %r684; .reg .pred %r685; .reg .u64 %r686; .reg .u32 %r687; .reg .pred %r688; .reg .u32 %r691; .reg .pred %r692; .reg .u64 %r693; .reg .u64 %r694; .reg .u64 %r696; .reg .u16 %r699; .reg .u16 %r701; .reg .pred %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .u64 %r705; .reg .pred %r706; .reg .u32 %r707; .reg .u16 %r708; .reg .pred %r709; .reg .pred %r711; .reg .pred %r713; .reg .pred %r715; .reg .u16 %r716; .reg .u32 %r718; .reg .u16 %r720; .reg .u16 %r722; .reg .pred %r723; .reg .u64 %r724; .reg .u64 %r725; .reg .u64 %r726; .reg .u64 %r727; .reg .pred %r729; .reg .pred %r731; .reg .pred %r733; .reg .pred %r735; .reg .pred %r737; .reg .pred %r739; .reg .u32 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .pred %r745; .reg .u64 %r746; .reg .u64 %r747; .reg .u64 %r748; .reg .u64 %r749; .reg .pred %r750; .reg .pred %r751; .reg .u32 %r752; .reg .pred %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u32 %r756; .reg .u32 %r757; .reg .pred %r758; .reg .u64 %r759; .reg .u32 %r762; .reg .pred %r763; .reg .pred %r764; .reg .u32 %r765; .reg .pred %r766; .reg .pred %r767; .reg .u32 %r771; .reg .u32 %r772; .reg .pred %r773; .reg .u32 %r774; .reg .pred %r775; .reg .u32 %r776; .reg .u64 %r779; .reg .u64 %r781; .reg .u64 %r782; .reg .u32 %r783; .reg .pred %r784; .reg .u32 %r785; .reg .pred %r786; .reg .u64 %r787; .reg .u32 %r788; .reg .pred %r789; .reg .u64 %r790; .reg .u32 %r791; .reg .pred %r792; .reg .u64 %r793; .reg .pred %r794; .reg .u64 %r799; .reg .u64 %r804; .reg .u64 %r805; .reg .u64 %r806; .reg .u64 %r807; .reg .u32 %r808; .reg .u64 %r811; .reg .u64 %r812; .reg .pred %r813; .reg .u32 %r814; .reg .u16 %r815; .reg .pred %r816; .reg .pred %r818; .reg .pred %r820; .reg .pred %r822; .reg .pred %r824; .reg .u16 %r825; .reg .u32 %r827; .reg .u16 %r829; .reg .u16 %r831; .reg .pred %r832; .reg .pred %r834; .reg .pred %r836; .reg .pred %r838; .reg .pred %r840; .reg .pred %r842; .reg .pred %r844; .reg .pred %r846; .reg .pred %r848; .reg .pred %r850; .reg .pred %r852; .reg .pred %r854; .reg .pred %r856; .reg .pred %r858; .reg .pred %r860; .reg .pred %r862; .reg .pred %r864; .reg .pred %r866; .reg .u32 %r867; .reg .pred %r868; .reg .pred %r869; .reg .u32 %r870; .reg .pred %r871; .reg .u32 %r872; .reg .pred %r873; .reg .u32 %r874; .reg .u16 %r875; .reg .u32 %r876; .reg .u32 %r877; .reg .u32 %r878; .reg .u32 %r879; .reg .u32 %r880; .reg .u16 %r881; .reg .u16 %r882; .reg .u16 %r883; .reg .u32 %r884; .reg .u16 %r885; .reg .pred %r886; .reg .u32 %r887; .reg .pred %r888; .reg .pred %r890; .reg .u32 %r891; .reg .u16 %r892; .reg .u32 %r893; .reg .u32 %r894; .reg .u32 %r895; .reg .u32 %r897; .reg .u32 %r898; .reg .u16 %r899; .reg .u16 %r900; .reg .u16 %r901; .reg .u32 %r902; .reg .u16 %r903; .reg .pred %r904; .reg .u16 %r906; .reg .u32 %r908; .reg .u16 %r910; .reg .pred %r911; .reg .u32 %r912; .reg .u16 %r913; .reg .u32 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .u32 %r917; .reg .u32 %r918; .reg .u16 %r919; .reg .u16 %r920; .reg .u16 %r921; .reg .u32 %r922; .reg .u16 %r923; .reg .pred %r924; .reg .u32 %r925; .reg .pred %r926; .reg .u32 %r927; .reg .u16 %r928; .reg .u16 %r929; .reg .u32 %r930; .reg .u16 %r932; .reg .u16 %r934; .reg .pred %r935; .reg .u16 %r936; .reg .u32 %r938; .reg .u16 %r939; .reg .pred %r940; .reg .u16 %r941; .reg .pred %r942; .reg .u16 %r943; .reg .pred %r944; .reg .u32 %r945; .reg .pred %r946; .reg .u32 %r947; .reg .pred %r948; .reg .pred %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u16 %r952; .reg .u16 %r953; .reg .pred %r954; .reg .u32 %r955; .reg .pred %r956; .reg .u32 %r957; .reg .u32 %r958; .reg .pred %r959; .reg .u64 %r960; .reg .u32 %r963; .reg .pred %r964; .reg .pred %r965; .reg .pred %r966; .reg .u32 %r967; .reg .pred %r968; .reg .pred %r969; .reg .u32 %r973; .reg .u32 %r974; .reg .pred %r975; .reg .u32 %r976; .reg .pred %r977; .reg .u16 %r978; .reg .pred %r979; .reg .u32 %r980; .reg .pred %r982; .reg .pred %r983; .reg .u32 %r987; .reg .u32 %r988; .reg .u32 %r990; .reg .u32 %r992; .reg .u16 %r993; .reg .u16 %r994; .reg .u16 %r995; .reg .u32 %r996; .reg .u16 %r998; .reg .u16 %r999; .reg .u16 %r1000; .reg .u32 %r1001; .reg .u16 %r1002; .reg .pred %r1003; .reg .u32 %r1007; .reg .u32 %r1008; .reg .pred %r1009; .reg .u32 %r1010; .reg .pred %r1011; .reg .u32 %r1012; .reg .pred %r1013; .reg .pred %r1014; .reg .u32 %r1018; .reg .u32 %r1019; .reg .pred %r1020; .reg .u16 %r1021; .reg .u16 %r1022; .reg .u32 %r1023; .reg .u16 %r1024; .reg .pred %r1025; .reg .u32 %r1029; .reg .u32 %r1033; .reg .u32 %r1034; .reg .pred %r1035; .reg .u32 %r1036; .reg .u32 %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .pred %r1040; .reg .u64 %r1043; .reg .u32 %r1044; .reg .u64 %r1045; .reg .u64 %r1046; .reg .pred %r1048; .reg .u64 %r1050; .reg .u32 %r1051; .reg .u64 %r1055; .reg .f64 %r1056; .reg .u64 %r1057; .reg .u32 %r1058; .reg .pred %r1059; .reg .u64 %r1060; .reg .u32 %r1061; .reg .pred %r1062; .reg .pred %r1063; .reg .u64 %r1064; .reg .f32 %r1065; .reg .f32 %r1066; .reg .pred %r1067; .reg .u16 %r1068; .reg .u16 %r1069; .reg .pred %r1070; .reg .u32 %r1072; .reg .pred %r1073; .reg .u32 %r1074; .reg .u32 %r1075; .reg .u64 %r1076; .reg .u64 %r1078; .reg .u64 %r1079; .reg .u16 %r1080; mov.u64 %r378,%ar0; mov.u64 %r379,%ar1; mov.u64 %r380,%ar2; mov.u64 %r381,%ar3; .loc 1 591 3 ld.u16 %r383,[%r379+16]; and.b16 %r382,%r383,8192; setp.ne.u16 %r384,%r382,0; @ %r384 bra $L2; or.b16 %r385,%r383,8192; st.u16 [%r379+16],%r385; ld.u32 %r388,[%r379+172]; and.b32 %r387,%r388,-8193; st.u32 [%r379+172],%r387; $L2: .loc 1 602 12 ld.u8 %r27,[%r380]; .loc 1 611 11 add.u64 %r268,%r380,1; .loc 1 613 10 setp.eq.u32 %r389,%r27,0; @ %r389 bra $L162; mov.u64 %r69,0; mov.u32 %r248,0; mov.u32 %r208,%r248; mov.u32 %r377,%r248; cvta.const.u64 %r1076,_ctype_+1; .loc 1 1859 8 add.u64 %r1078,%frame,329; .loc 1 1146 21 add.u64 %r1079,%frame,350; bra $L4; $L7: .loc 1 602 12 ld.u8 %r27,[%r268]; .loc 1 611 11 add.u64 %r268,%r268,1; .loc 1 613 10 setp.eq.u32 %r390,%r27,0; @ %r390 bra $L1; $L4: .loc 1 615 26 cvt.u32.u32 %r392,%r27; cvt.u64.u8 %r391,%r392; add.u64 %r394,%r1076,%r391; ld.u8 %r1080,[%r394]; mov.u16 %r397,%r1080; and.b16 %r396,%r397,8; cvt.u32.u16 %r398,%r396; cvt.s32.s8 %r258,%r398; .loc 1 615 23 setp.eq.u32 %r399,%r258,0; @ %r399 bra $L5; .loc 1 649 12 ld.u32 %r40,[%r379+8]; $L10: .loc 1 619 11 setp.le.s32 %r400,%r40,0; @ %r400 bra $L6; $L9: .loc 1 619 28 ld.u64 %r33,[%r379]; ld.u8 %r401,[%r33]; add.u64 %r403,%r1076,%r401; .loc 1 619 24 ld.u8 %r1080,[%r403]; mov.u16 %r406,%r1080; and.b16 %r408,%r406,8; setp.eq.u16 %r409,%r408,0; @ ! %r409 bra $L341; bra $L7; $L6: .loc 1 619 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r412,[%value_in]; } setp.ne.u32 %r413,%r412,0; @ ! %r413 bra $L9; bra $L7; $L341: .loc 1 621 13 add.u32 %r208,%r208,1; .loc 1 621 23 ld.u32 %r414,[%r379+8]; add.u32 %r40,%r414,-1; st.u32 [%r379+8],%r40; .loc 1 621 33 add.u64 %r415,%r33,1; st.u64 [%r379],%r415; .loc 1 619 11 bra $L10; $L5: .loc 1 625 10 setp.ne.u32 %r416,%r27,37; @ %r416 bra $L11; .loc 1 640 11 ld.u8 %r338,[%r268]; mov.u64 %r24,%r268; .loc 1 628 13 mov.u32 %r245,%r258; .loc 1 627 13 mov.u64 %r237,0; bra $L12; $L343: .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 663 10 mov.u32 %r245,16; .loc 1 669 8 mov.u64 %r237,0; $L12: .loc 1 640 15 add.u64 %r268,%r24,1; .loc 1 642 7 cvt.u16.u32 %r417,%r338; setp.eq.u16 %r418,%r417,100; @ %r418 bra $L163; setp.gt.u16 %r420,%r417,100; @ %r420 bra $L14; setp.eq.u16 %r422,%r417,71; @ %r422 bra $L164; setp.gt.u16 %r424,%r417,71; @ %r424 bra $L15; setp.gt.u16 %r426,%r417,57; @ %r426 bra $L16; setp.gt.u16 %r428,%r417,47; @ %r428 bra $L17; setp.eq.u16 %r430,%r417,37; @ %r430 bra $L11; setp.eq.u16 %r432,%r417,42; @ %r432 bra $L18; bra $L1; $L16: setp.eq.u16 %r434,%r417,68; @ %r434 bra $L19; setp.eq.u16 %r436,%r417,69; @ %r436 bra $L165; bra $L1; $L15: setp.eq.u16 %r438,%r417,88; @ %r438 bra $L20; setp.gt.u16 %r440,%r417,88; @ %r440 bra $L21; setp.eq.u16 %r442,%r417,76; @ %r442 bra $L22; setp.eq.u16 %r444,%r417,79; @ %r444 bra $L23; bra $L1; $L21: setp.eq.u16 %r446,%r417,91; @ %r446 bra $L24; setp.eq.u16 %r448,%r417,99; @ %r448 bra $L25; bra $L1; $L14: setp.eq.u16 %r450,%r417,111; @ %r450 bra $L166; setp.gt.u16 %r452,%r417,111; @ %r452 bra $L26; setp.eq.u16 %r454,%r417,105; @ %r454 bra $L167; setp.gt.u16 %r456,%r417,105; @ %r456 bra $L27; setp.le.u16 %r458,%r417,103; @ %r458 bra $L168; setp.eq.u16 %r460,%r417,104; @ %r460 bra $L28; bra $L1; $L27: setp.eq.u16 %r462,%r417,108; @ %r462 bra $L29; setp.eq.u16 %r464,%r417,110; @ %r464 bra $L30; bra $L1; $L26: setp.eq.u16 %r466,%r417,115; @ %r466 bra $L169; setp.gt.u16 %r468,%r417,115; @ %r468 bra $L31; setp.eq.u16 %r470,%r417,112; @ %r470 bra $L32; bra $L1; $L31: setp.eq.u16 %r472,%r417,117; @ %r472 bra $L170; setp.eq.u16 %r474,%r417,120; @ %r474 bra $L20; bra $L1; $L11: .loc 1 649 11 ld.u32 %r475,[%r379+8]; setp.le.s32 %r476,%r475,0; @ %r476 bra $L33; $L36: .loc 1 651 15 ld.u64 %r45,[%r379]; .loc 1 651 11 ld.u8 %r477,[%r45]; ld.u8 %r478,[%r268+-1]; setp.ne.u16 %r479,%r477,%r478; @ %r479 bra $L1; bra $L342; $L33: .loc 1 649 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r482,[%value_in]; } setp.ne.u32 %r483,%r482,0; @ ! %r483 bra $L36; bra $L35; $L342: .loc 1 653 14 ld.u32 %r485,[%r379+8]; add.u32 %r484,%r485,-1; st.u32 [%r379+8],%r484; .loc 1 653 24 add.u64 %r486,%r45,1; st.u64 [%r379],%r486; .loc 1 654 13 add.u32 %r208,%r208,1; bra $L7; $L18: .loc 1 660 7 set.u32.ne.u32 %r488,%r245,0; neg.s32 %r489,%r488; mov.u32 %r487,%r489; .loc 1 661 8 set.u32.ne.u64 %r491,%r237,0; neg.s32 %r492,%r491; mov.u32 %r490,%r492; cvt.u16.u8 %r1080,%r487; mov.u16 %r494,%r1080; cvt.u16.u8 %r1080,%r490; mov.u16 %r495,%r1080; or.b16 %r493,%r494,%r495; cvt.u32.u16 %r496,%r493; cvt.u16.u8 %r497,%r496; setp.ne.u16 %r498,%r497,0; @ ! %r498 bra $L343; bra $L1; $L29: .loc 1 666 14 and.b32 %r499,%r245,15; .loc 1 666 7 setp.ne.u32 %r500,%r499,0; @ %r500 bra $L1; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 669 7 cvt.u16.u32 %r501,%r338; setp.ne.u16 %r502,%r501,108; @ %r502 bra $L38; .loc 1 672 14 or.b32 %r245,%r245,2; .loc 1 640 11 ld.u8 %r338,[%r24+2]; .loc 1 671 8 add.u64 %r24,%r24,2; bra $L12; $L38: .loc 1 676 12 or.b32 %r245,%r245,1; .loc 1 640 15 mov.u64 %r24,%r268; bra $L12; $L22: .loc 1 679 14 and.b32 %r503,%r245,15; .loc 1 679 7 setp.ne.u32 %r504,%r503,0; @ %r504 bra $L1; .loc 1 681 10 or.b32 %r245,%r245,2; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 682 4 bra $L12; $L28: .loc 1 684 14 and.b32 %r505,%r245,15; .loc 1 684 7 setp.ne.u32 %r506,%r505,0; @ %r506 bra $L1; .loc 1 694 12 or.b32 %r245,%r245,4; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 695 4 bra $L12; $L17: .loc 1 760 14 and.b32 %r507,%r245,143; .loc 1 760 7 setp.ne.u32 %r508,%r507,0; @ %r508 bra $L1; .loc 1 762 18 shl.b64 %r510,%r237,2; add.u64 %r511,%r510,%r237; add.u64 %r512,%r511,%r511; .loc 1 762 23 cvt.u32.u32 %r514,%r338; cvt.u64.u8 %r513,%r514; add.u64 %r369,%r512,%r513; .loc 1 762 10 add.u64 %r237,%r369,-48; .loc 1 669 8 ld.u8 %r338,[%r24+1]; .loc 1 640 15 mov.u64 %r24,%r268; .loc 1 763 4 bra $L12; $L19: .loc 1 789 10 or.b32 %r245,%r245,1; .loc 1 793 9 mov.u64 %r69,_strtol_r; .loc 1 794 9 mov.u32 %r248,10; .loc 1 792 6 mov.u32 %r307,3; bra $L13; $L23: .loc 1 804 10 or.b32 %r245,%r245,1; .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r248,8; .loc 1 807 6 mov.u32 %r307,3; bra $L13; $L20: .loc 1 820 10 or.b32 %r245,%r245,512; .loc 1 822 9 mov.u64 %r69,_strtoul_r; .loc 1 823 9 mov.u32 %r248,16; .loc 1 821 6 mov.u32 %r307,3; .loc 1 824 4 bra $L13; $L24: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1079; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r268; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r518,[%value_in]; } mov.u64 %r268,%r518; .loc 1 853 10 or.b32 %r245,%r245,64; .loc 1 854 6 mov.u32 %r307,1; .loc 1 855 4 bra $L13; $L25: .loc 1 864 10 or.b32 %r245,%r245,64; .loc 1 865 6 mov.u32 %r307,0; .loc 1 866 4 bra $L13; $L32: .loc 1 869 10 or.b32 %r245,%r245,544; .loc 1 871 9 mov.u64 %r69,_strtoul_r; .loc 1 872 9 mov.u32 %r248,16; .loc 1 870 6 mov.u32 %r307,3; .loc 1 873 4 bra $L13; $L30: .loc 1 876 14 and.b32 %r519,%r245,16; .loc 1 876 7 setp.ne.u32 %r520,%r519,0; @ %r520 bra $L7; .loc 1 888 11 add.u64 %r521,%r381,7; and.b64 %r337,%r521,-8; ld.u64 %r336,[%r337]; add.u64 %r381,%r337,8; .loc 1 886 14 and.b32 %r522,%r245,4; .loc 1 886 7 setp.eq.u32 %r523,%r522,0; @ %r523 bra $L40; .loc 1 889 12 st.u16 [%r336],%r208; bra $L7; $L40: .loc 1 891 19 and.b32 %r524,%r245,1; .loc 1 891 12 setp.eq.u32 %r525,%r524,0; @ %r525 bra $L41; .loc 1 894 12 cvt.s64.s32 %r526,%r208; st.u64 [%r336],%r526; bra $L7; $L41: .loc 1 897 19 and.b32 %r527,%r245,2; .loc 1 897 12 setp.eq.u32 %r528,%r527,0; @ %r528 bra $L42; .loc 1 900 13 cvt.s64.s32 %r529,%r208; st.u64 [%r336],%r529; bra $L7; $L42: .loc 1 906 12 st.u32 [%r336],%r208; bra $L7; $L163: .loc 1 642 7 mov.u64 %r69,_strtol_r; mov.u32 %r248,10; mov.u32 %r307,3; bra $L13; $L164: .loc 1 837 6 mov.u32 %r307,4; bra $L13; $L165: mov.u32 %r307,4; bra $L13; $L166: .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r248,8; .loc 1 807 6 mov.u32 %r307,3; bra $L13; $L167: .loc 1 799 9 mov.u64 %r69,_strtol_r; .loc 1 800 9 mov.u32 %r248,0; .loc 1 798 6 mov.u32 %r307,3; bra $L13; $L168: .loc 1 837 6 mov.u32 %r307,4; bra $L13; $L169: .loc 1 848 6 mov.u32 %r307,2; bra $L13; $L170: .loc 1 814 9 mov.u64 %r69,_strtoul_r; .loc 1 815 9 mov.u32 %r248,10; .loc 1 813 6 mov.u32 %r307,3; $L13: .loc 1 917 10 ld.u32 %r530,[%r379+8]; setp.le.s32 %r531,%r530,0; @ %r531 bra $L43; $L46: .loc 1 924 18 and.b32 %r532,%r245,64; .loc 1 924 10 setp.eq.u32 %r533,%r532,0; @ ! %r533 bra $L45; bra $L44; $L43: .loc 1 917 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r536,[%value_in]; } setp.ne.u32 %r537,%r536,0; @ ! %r537 bra $L46; bra $L35; $L44: .loc 1 926 11 ld.u64 %r327,[%r379]; ld.u8 %r538,[%r327]; add.u64 %r540,%r1076,%r538; ld.u8 %r1080,[%r540]; mov.u16 %r543,%r1080; and.b16 %r545,%r543,8; setp.eq.u16 %r546,%r545,0; @ %r546 bra $L45; $L49: .loc 1 928 13 add.u32 %r208,%r208,1; .loc 1 929 12 ld.u32 %r547,[%r379+8]; add.u32 %r68,%r547,-1; .loc 1 929 11 st.u32 [%r379+8],%r68; setp.le.s32 %r548,%r68,0; @ %r548 bra $L47; .loc 1 930 9 add.u64 %r327,%r327,1; st.u64 [%r379],%r327; bra $L48; $L47: .loc 1 932 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r551,[%value_in]; } .loc 1 932 11 setp.ne.u32 %r552,%r551,0; @ %r552 bra $L35; .loc 1 926 11 ld.u64 %r327,[%r379]; $L48: ld.u8 %r553,[%r327]; add.u64 %r555,%r1076,%r553; ld.u8 %r1080,[%r555]; mov.u16 %r558,%r1080; and.b16 %r560,%r558,8; setp.ne.u16 %r561,%r560,0; @ %r561 bra $L49; $L45: .loc 1 945 7 setp.eq.u32 %r562,%r307,3; @ %r562 bra $L50; setp.eq.u32 %r563,%r307,4; @ %r563 bra $L51; setp.eq.u32 %r564,%r307,1; @ %r564 bra $L52; setp.eq.u32 %r565,%r307,2; @ %r565 bra $L53; max.u64 %r238,%r237,1; .loc 1 1017 14 and.b32 %r566,%r245,16; .loc 1 1017 7 setp.eq.u32 %r567,%r566,0; @ %r567 bra $L54; .loc 1 1019 15 mov.u64 %r249,0; $L56: .loc 1 1022 12 ld.u32 %r311,[%r379+8]; .loc 1 1026 16 ld.u64 %r329,[%r379]; .loc 1 1022 24 cvt.u32.u64 %r568,%r238; .loc 1 1022 8 setp.le.s32 %r569,%r568,%r311; @ %r569 bra $L55; .loc 1 1024 13 cvt.s64.s32 %r78,%r311; add.u64 %r249,%r249,%r78; .loc 1 1025 15 sub.u64 %r238,%r238,%r78; .loc 1 1026 16 add.u64 %r570,%r329,%r78; st.u64 [%r379],%r570; .loc 1 1027 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r573,[%value_in]; } .loc 1 1027 12 setp.eq.u32 %r574,%r573,0; @ %r574 bra $L56; .loc 1 1029 9 setp.eq.u64 %r575,%r249,0; @ ! %r575 bra $L57; bra $L35; $L55: .loc 1 1036 13 add.u64 %r249,%r249,%r238; .loc 1 1037 16 sub.u32 %r577,%r311,%r568; st.u32 [%r379+8],%r577; .loc 1 1038 16 add.u64 %r578,%r329,%r238; st.u64 [%r379],%r578; $L57: .loc 1 1042 14 cvt.u32.u64 %r579,%r249; add.u32 %r208,%r579,%r208; bra $L7; $L54: .loc 1 1053 5 add.u64 %r356,%r381,7; and.b64 %r358,%r356,-8; add.u64 %r381,%r358,8; .loc 1 1054 12 mov.u64 %r582,1; ld.u64 %r581,[%r358]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r581; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r582; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r238; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r379; call (%value_in),_sfread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r585,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r586,%r585,0; @ %r586 bra $L35; .loc 1 1060 14 cvt.u32.u64 %r587,%r585; add.u32 %r208,%r587,%r208; .loc 1 1061 17 add.u32 %r377,%r377,1; bra $L7; $L52: .loc 1 1067 7 setp.ne.u64 %r588,%r237,0; .loc 1 1068 12 selp.u64 %r237,%r237,-1,%r588; .loc 1 1146 25 ld.u64 %r316,[%r379]; .loc 1 1146 21 ld.u8 %r590,[%r316]; add.u64 %r592,%r1079,%r590; ld.s8 %r319,[%r592]; .loc 1 1143 14 and.b32 %r593,%r245,16; .loc 1 1143 7 setp.eq.u32 %r594,%r593,0; @ %r594 bra $L59; .loc 1 1146 15 setp.eq.u32 %r595,%r319,0; @ %r595 bra $L1; .loc 1 1148 16 ld.u32 %r596,[%r379+8]; add.u32 %r94,%r596,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r597,%r316,1; st.u64 [%r379],%r597; .loc 1 1149 8 add.u64 %r308,%r237,-1; setp.eq.u64 %r598,%r237,1; @ ! %r598 bra $L61; bra $L60; $L63: .loc 1 1148 6 add.u32 %r307,%r307,1; .loc 1 1148 16 ld.u32 %r599,[%r379+8]; add.u32 %r94,%r599,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r600,%r98,1; st.u64 [%r379],%r600; .loc 1 1149 8 add.u64 %r308,%r308,-1; setp.eq.u64 %r601,%r308,0; @ %r601 bra $L60; $L61: .loc 1 1151 8 setp.le.s32 %r602,%r94,0; @ %r602 bra $L62; $L64: .loc 1 1146 25 ld.u64 %r98,[%r379]; .loc 1 1146 21 ld.u8 %r604,[%r98]; add.u64 %r606,%r1079,%r604; .loc 1 1146 15 ld.u8 %r608,[%r606]; cvt.s16.s8 %r607,%r608; setp.ne.u16 %r609,%r607,0; @ %r609 bra $L63; bra $L60; $L62: .loc 1 1151 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r612,[%value_in]; } setp.eq.u32 %r613,%r612,0; @ %r613 bra $L64; $L60: .loc 1 1160 14 add.u32 %r208,%r208,%r307; bra $L7; $L59: .loc 1 1172 10 add.u64 %r371,%r381,7; and.b64 %r370,%r371,-8; add.u64 %r381,%r370,8; ld.u64 %r305,[%r370]; .loc 1 1173 15 setp.eq.u32 %r614,%r319,0; @ %r614 bra $L1; .loc 1 1175 11 ld.u32 %r616,[%r379+8]; add.u32 %r615,%r616,-1; st.u32 [%r379+8],%r615; .loc 1 1176 19 add.u64 %r617,%r316,1; st.u64 [%r379],%r617; .loc 1 1176 7 add.u64 %r240,%r305,1; .loc 1 1176 10 ld.u8 %r618,[%r316]; st.u8 [%r305],%r618; .loc 1 1180 8 setp.eq.u64 %r619,%r237,1; @ %r619 bra $L65; mov.u64 %r334,%r240; bra $L66; $L68: .loc 1 1175 11 ld.u32 %r621,[%r379+8]; add.u32 %r620,%r621,-1; st.u32 [%r379+8],%r620; .loc 1 1176 19 add.u64 %r622,%r109,1; st.u64 [%r379],%r622; add.u64 %r334,%r334,1; .loc 1 1176 10 ld.u8 %r623,[%r109]; st.u8 [%r240],%r623; .loc 1 1180 8 add.u64 %r624,%r305,%r237; setp.eq.u64 %r625,%r624,%r334; @ %r625 bra $L171; $L66: mov.u64 %r240,%r334; .loc 1 1182 8 ld.u32 %r626,[%r379+8]; setp.gt.s32 %r627,%r626,0; @ %r627 bra $L67; .loc 1 1182 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r630,[%value_in]; } setp.eq.u32 %r631,%r630,0; @ %r631 bra $L67; .loc 1 1184 12 setp.eq.u64 %r632,%r305,%r240; @ ! %r632 bra $L65; bra $L35; $L67: .loc 1 1173 25 ld.u64 %r109,[%r379]; .loc 1 1173 21 ld.u8 %r634,[%r109]; add.u64 %r636,%r1079,%r634; .loc 1 1173 15 ld.u8 %r638,[%r636]; cvt.s16.s8 %r637,%r638; setp.ne.u16 %r639,%r637,0; @ %r639 bra $L68; bra $L65; $L171: .loc 1 1176 7 mov.u64 %r240,%r334; $L65: .loc 1 1189 14 sub.u64 %r640,%r240,%r305; .loc 1 1189 10 cvt.u32.u64 %r306,%r640; .loc 1 1190 11 setp.eq.u32 %r641,%r306,0; @ %r641 bra $L1; .loc 1 1192 11 mov.u32 %r642,0; st.u8 [%r240],%r642; .loc 1 1196 17 add.u32 %r377,%r377,1; .loc 1 1197 14 add.u32 %r208,%r208,%r306; bra $L7; $L53: .loc 1 1203 7 setp.ne.u64 %r643,%r237,0; .loc 1 1204 12 selp.u64 %r237,%r237,-1,%r643; .loc 1 1146 25 ld.u64 %r361,[%r379]; .loc 1 1283 16 ld.u8 %r644,[%r361]; add.u64 %r646,%r1076,%r644; ld.u8 %r1080,[%r646]; mov.u16 %r649,%r1080; and.b16 %r648,%r649,8; cvt.u32.u16 %r650,%r648; cvt.s32.s8 %r315,%r650; .loc 1 1280 14 and.b32 %r651,%r245,16; .loc 1 1280 7 setp.eq.u32 %r652,%r651,0; @ %r652 bra $L70; .loc 1 1283 15 setp.ne.u32 %r653,%r315,0; @ %r653 bra $L7; .loc 1 1285 16 ld.u32 %r654,[%r379+8]; add.u32 %r116,%r654,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r655,%r361,1; st.u64 [%r379],%r655; .loc 1 1286 8 add.u64 %r302,%r237,-1; setp.ne.u64 %r656,%r237,1; @ %r656 bra $L172; .loc 1 1291 14 add.u32 %r208,%r208,1; bra $L7; $L74: .loc 1 1285 6 add.u32 %r301,%r301,1; .loc 1 1285 16 ld.u32 %r657,[%r379+8]; add.u32 %r116,%r657,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r658,%r119,1; st.u64 [%r379],%r658; .loc 1 1286 8 add.u64 %r302,%r302,-1; setp.ne.u64 %r659,%r302,0; @ %r659 bra $L72; .loc 1 1291 14 add.u32 %r208,%r208,%r301; bra $L7; $L172: .loc 1 1285 6 mov.u32 %r301,1; $L72: .loc 1 1288 8 setp.gt.s32 %r660,%r116,0; @ %r660 bra $L73; .loc 1 1288 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r663,[%value_in]; } setp.eq.u32 %r664,%r663,0; @ %r664 bra $L73; .loc 1 1291 14 add.u32 %r208,%r208,%r301; bra $L7; $L73: .loc 1 1283 16 ld.u64 %r119,[%r379]; ld.u8 %r665,[%r119]; add.u64 %r667,%r1076,%r665; .loc 1 1283 15 ld.u8 %r1080,[%r667]; mov.u16 %r670,%r1080; and.b16 %r672,%r670,8; setp.eq.u16 %r673,%r672,0; @ %r673 bra $L74; .loc 1 1291 14 add.u32 %r208,%r208,%r301; bra $L7; $L70: .loc 1 1303 6 add.u64 %r239,%r381,7; and.b64 %r372,%r239,-8; add.u64 %r381,%r372,8; ld.u64 %r300,[%r372]; .loc 1 1305 15 setp.ne.u32 %r674,%r315,0; @ %r674 bra $L173; .loc 1 1307 11 ld.u32 %r676,[%r379+8]; add.u32 %r675,%r676,-1; st.u32 [%r379+8],%r675; .loc 1 1308 19 add.u64 %r677,%r361,1; st.u64 [%r379],%r677; .loc 1 1308 7 add.u64 %r241,%r300,1; .loc 1 1308 10 ld.u8 %r678,[%r361]; st.u8 [%r300],%r678; .loc 1 1312 8 setp.eq.u64 %r679,%r237,1; @ ! %r679 bra $L344; bra $L174; $L79: .loc 1 1307 11 ld.u32 %r681,[%r379+8]; add.u32 %r680,%r681,-1; st.u32 [%r379+8],%r680; .loc 1 1308 19 add.u64 %r682,%r133,1; st.u64 [%r379],%r682; add.u64 %r324,%r324,1; .loc 1 1308 10 ld.u8 %r683,[%r133]; st.u8 [%r241],%r683; .loc 1 1312 8 add.u64 %r684,%r300,%r237; setp.ne.u64 %r685,%r684,%r324; @ %r685 bra $L77; .loc 1 1321 19 sub.u64 %r686,%r324,%r300; .loc 1 1321 14 cvt.u32.u64 %r340,%r686; mov.u64 %r241,%r324; bra $L75; $L344: mov.u64 %r324,%r241; $L77: mov.u64 %r241,%r324; .loc 1 1314 8 ld.u32 %r687,[%r379+8]; setp.gt.s32 %r688,%r687,0; @ %r688 bra $L78; .loc 1 1314 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r691,[%value_in]; } setp.eq.u32 %r692,%r691,0; @ %r692 bra $L78; .loc 1 1321 19 sub.u64 %r693,%r241,%r300; .loc 1 1321 14 cvt.u32.u64 %r340,%r693; bra $L75; $L78: .loc 1 1305 16 ld.u64 %r133,[%r379]; ld.u8 %r694,[%r133]; add.u64 %r696,%r1076,%r694; .loc 1 1305 15 ld.u8 %r1080,[%r696]; mov.u16 %r699,%r1080; and.b16 %r701,%r699,8; setp.eq.u16 %r702,%r701,0; @ %r702 bra $L79; .loc 1 1321 19 sub.u64 %r703,%r324,%r300; .loc 1 1321 14 cvt.u32.u64 %r340,%r703; bra $L75; $L173: .loc 1 1303 6 mov.u64 %r241,%r300; .loc 1 1305 15 mov.u32 %r340,%r651; bra $L75; $L174: .loc 1 1312 8 mov.u32 %r340,1; $L75: .loc 1 1317 11 mov.u32 %r704,0; st.u8 [%r241],%r704; .loc 1 1321 14 add.u32 %r208,%r208,%r340; .loc 1 1322 17 add.u32 %r377,%r377,1; bra $L7; $L50: .loc 1 1335 14 add.u64 %r705,%r237,-1; .loc 1 1335 7 setp.le.u64 %r706,%r705,348; @ %r706 bra $L175; .loc 1 1338 27 cvt.u32.u64 %r707,%r237; .loc 1 1338 19 add.u32 %r250,%r707,-349; .loc 1 1339 14 mov.u64 %r237,349; bra $L80; $L175: .loc 1 1329 13 mov.u32 %r250,0; $L80: .loc 1 1341 10 or.b32 %r246,%r245,3456; .loc 1 1330 8 mov.u32 %r251,0; .loc 1 1342 11 mov.u64 %r242,%frame; $L98: .loc 1 1344 15 ld.u64 %r143,[%r379]; .loc 1 1344 12 ld.u8 %r144,[%r143]; cvt.u16.u32 %r708,%r144; setp.gt.u16 %r709,%r708,57; @ %r709 bra $L81; setp.gt.u16 %r711,%r708,55; @ %r711 bra $L82; setp.eq.u16 %r713,%r708,48; @ %r713 bra $L83; setp.gt.u16 %r715,%r708,48; @ %r715 bra $L84; add.u16 %r716,%r708,-43; cvt.u32.u16 %r718,%r716; cvt.u16.u8 %r1080,%r718; mov.u16 %r720,%r1080; and.b16 %r722,%r720,253; setp.eq.u16 %r723,%r722,0; @ ! %r723 bra $L86; bra $L85; $L84: .loc 1 1390 19 cvta.const.u64 %r724,basefix$0; cvt.s64.s32 %r725,%r248; add.u64 %r726,%r725,%r725; add.u64 %r727,%r724,%r726; ld.s16 %r248,[%r727]; .loc 1 1391 11 and.b32 %r246,%r246,-2945; .loc 1 1392 5 bra $L87; $L81: setp.gt.u16 %r729,%r708,102; @ %r729 bra $L88; setp.gt.u16 %r731,%r708,96; @ %r731 bra $L89; setp.gt.u16 %r733,%r708,70; @ %r733 bra $L90; setp.gt.u16 %r735,%r708,64; @ ! %r735 bra $L86; bra $L89; $L90: setp.eq.u16 %r737,%r708,88; @ %r737 bra $L91; bra $L86; $L88: setp.eq.u16 %r739,%r708,120; @ %r739 bra $L91; bra $L86; $L83: .loc 1 1361 18 and.b32 %r740,%r246,2048; .loc 1 1361 8 setp.eq.u32 %r741,%r740,0; @ %r741 bra $L87; .loc 1 1363 8 setp.ne.u32 %r742,%r248,0; @ %r742 bra $L92; .loc 1 1366 15 or.b32 %r246,%r246,512; .loc 1 1365 14 mov.u32 %r248,8; $L92: .loc 1 1368 15 and.b32 %r743,%r246,1024; .loc 1 1368 8 setp.eq.u32 %r744,%r743,0; @ %r744 bra $L93; .loc 1 1370 15 and.b32 %r246,%r246,-1409; .loc 1 1371 9 bra $L87; $L93: .loc 1 1373 11 and.b32 %r246,%r246,-897; .loc 1 1374 8 setp.eq.u32 %r745,%r250,0; @ %r745 bra $L94; .loc 1 1376 19 add.u32 %r250,%r250,-1; .loc 1 1377 14 add.u64 %r237,%r237,1; $L94: .loc 1 1379 5 add.u32 %r251,%r251,1; .loc 1 1380 5 bra $L95; $L82: .loc 1 1397 19 cvta.const.u64 %r746,basefix$0; cvt.s64.s32 %r747,%r248; add.u64 %r748,%r747,%r747; add.u64 %r749,%r746,%r748; ld.s16 %r248,[%r749]; .loc 1 1398 8 setp.le.s32 %r750,%r248,8; @ %r750 bra $L86; .loc 1 1400 11 and.b32 %r246,%r246,-2945; .loc 1 1401 5 bra $L87; $L89: .loc 1 1417 8 setp.le.s32 %r751,%r248,10; @ %r751 bra $L86; .loc 1 1419 11 and.b32 %r246,%r246,-2945; .loc 1 1420 5 bra $L87; $L85: .loc 1 1425 15 and.b32 %r752,%r246,128; .loc 1 1425 8 setp.eq.u32 %r753,%r752,0; @ %r753 bra $L86; .loc 1 1427 15 and.b32 %r246,%r246,-129; .loc 1 1428 9 bra $L87; $L91: .loc 1 1435 16 and.b32 %r754,%r246,1536; .loc 1 1435 8 setp.ne.u32 %r755,%r754,512; @ %r755 bra $L86; .loc 1 1438 15 and.b32 %r287,%r246,-513; .loc 1 1442 15 or.b32 %r246,%r287,1280; .loc 1 1437 14 mov.u32 %r248,16; $L87: .loc 1 1457 13 cvt.u32.u32 %r756,%r144; st.u8 [%r242],%r756; .loc 1 1457 10 add.u64 %r242,%r242,1; $L95: .loc 1 1459 12 ld.u32 %r757,[%r379+8]; add.u32 %r153,%r757,-1; .loc 1 1459 11 st.u32 [%r379+8],%r153; setp.le.s32 %r758,%r153,0; @ %r758 bra $L96; .loc 1 1460 9 add.u64 %r759,%r143,1; st.u64 [%r379],%r759; bra $L97; $L96: .loc 1 1462 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r762,[%value_in]; } .loc 1 1462 11 setp.ne.u32 %r763,%r762,0; @ %r763 bra $L86; $L97: .loc 1 1342 30 add.u64 %r237,%r237,-1; .loc 1 1342 18 setp.ne.u64 %r764,%r237,0; @ %r764 bra $L98; $L86: .loc 1 1473 14 and.b32 %r765,%r246,256; .loc 1 1473 7 setp.eq.u32 %r766,%r765,0; @ %r766 bra $L99; .loc 1 1475 11 setp.ge.u64 %r767,%frame,%r242; @ %r767 bra $L100; .loc 1 1476 3 add.u64 %r289,%r242,-1; ld.s8 %r771,[%r242+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r771; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r772,[%value_in]; } mov.u64 %r242,%r289; $L100: .loc 1 1477 11 setp.eq.u64 %r773,%frame,%r242; @ %r773 bra $L1; $L99: .loc 1 1480 15 and.b32 %r774,%r246,16; .loc 1 1480 7 setp.ne.u32 %r775,%r774,0; @ %r775 bra $L101; .loc 1 1484 11 mov.u32 %r776,0; st.u8 [%r242],%r776; .loc 1 1485 15 mov.u64 %r779,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r248; call (%value_in),%r69,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r781,[%value_in]; } .loc 1 888 11 add.u64 %r782,%r381,7; and.b64 %r359,%r782,-8; add.u64 %r381,%r359,8; .loc 1 1486 18 and.b32 %r783,%r246,32; .loc 1 1486 11 setp.eq.u32 %r784,%r783,0; @ %r784 bra $L102; .loc 1 1488 12 ld.u64 %r299,[%r359]; .loc 1 1498 11 st.u64 [%r299],%r781; bra $L103; $L102: .loc 1 1507 23 and.b32 %r785,%r246,4; .loc 1 1507 16 setp.eq.u32 %r786,%r785,0; @ %r786 bra $L104; .loc 1 1510 9 ld.u64 %r787,[%r359]; st.u16 [%r787],%r781; bra $L103; $L104: .loc 1 1512 23 and.b32 %r788,%r246,1; .loc 1 1512 16 setp.eq.u32 %r789,%r788,0; @ %r789 bra $L105; .loc 1 1515 9 ld.u64 %r790,[%r359]; st.u64 [%r790],%r781; bra $L103; $L105: .loc 1 1518 23 and.b32 %r791,%r246,2; .loc 1 1518 16 setp.eq.u32 %r792,%r791,0; @ %r792 bra $L106; .loc 1 1521 8 mov.u64 %r793,_strtoul_r; setp.ne.u64 %r794,%r69,%r793; @ %r794 bra $L107; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r248; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r799,[%value_in]; } .loc 1 1526 10 mov.u64 %r167,%r799; bra $L108; $L107: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r248; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r804,[%value_in]; } mov.u64 %r167,%r804; $L108: .loc 1 1526 10 ld.u64 %r805,[%r359]; st.u64 [%r805],%r167; bra $L103; $L106: .loc 1 1532 9 ld.u64 %r806,[%r359]; st.u32 [%r806],%r781; $L103: .loc 1 1534 17 add.u32 %r377,%r377,1; $L101: .loc 1 1536 15 sub.u64 %r807,%r242,%frame; .loc 1 1536 21 cvt.u32.u64 %r808,%r807; .loc 1 1536 10 vadd.u32.u32.u32.add %r208,%r208,%r251,%r808; .loc 1 1537 4 bra $L7; $L51: .loc 1 1553 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r811,[%value_in]; } .loc 1 1553 16 ld.u64 %r276,[%r811]; .loc 1 1561 14 add.u64 %r812,%r237,-1; .loc 1 1561 7 setp.le.u64 %r813,%r812,348; @ %r813 bra $L176; .loc 1 1564 27 cvt.u32.u64 %r814,%r237; .loc 1 1564 19 add.u32 %r256,%r814,-349; .loc 1 1565 14 mov.u64 %r237,349; bra $L109; $L176: .loc 1 1550 13 mov.u32 %r256,0; $L109: .loc 1 1567 10 or.b32 %r247,%r245,1920; .loc 1 1551 9 mov.u32 %r257,%r258; .loc 1 1549 10 mov.u64 %r255,0; .loc 1 1569 15 mov.u64 %r254,%r255; .loc 1 1568 11 mov.u64 %r253,%r255; .loc 1 1547 9 mov.u64 %r252,%r255; .loc 1 1570 11 mov.u64 %r243,%frame; $L140: .loc 1 1572 15 ld.u64 %r177,[%r379]; .loc 1 1572 12 ld.u8 %r178,[%r177]; cvt.u16.u32 %r815,%r178; setp.eq.u16 %r816,%r815,78; @ %r816 bra $L110; setp.gt.u16 %r818,%r815,78; @ %r818 bra $L111; setp.gt.u16 %r820,%r815,57; @ %r820 bra $L112; setp.gt.u16 %r822,%r815,48; @ %r822 bra $L113; setp.eq.u16 %r824,%r815,48; @ %r824 bra $L114; add.u16 %r825,%r815,-43; cvt.u32.u16 %r827,%r825; cvt.u16.u8 %r1080,%r827; mov.u16 %r829,%r1080; and.b16 %r831,%r829,253; setp.eq.u16 %r832,%r831,0; @ ! %r832 bra $L116; bra $L115; $L112: setp.eq.u16 %r834,%r815,70; @ %r834 bra $L117; setp.gt.u16 %r836,%r815,70; @ %r836 bra $L118; setp.eq.u16 %r838,%r815,65; @ %r838 bra $L119; setp.eq.u16 %r840,%r815,69; @ %r840 bra $L120; bra $L116; $L118: setp.eq.u16 %r842,%r815,73; @ %r842 bra $L121; bra $L116; $L111: setp.eq.u16 %r844,%r815,102; @ %r844 bra $L117; setp.gt.u16 %r846,%r815,102; @ %r846 bra $L122; setp.eq.u16 %r848,%r815,97; @ %r848 bra $L119; setp.gt.u16 %r850,%r815,97; @ %r850 bra $L123; setp.eq.u16 %r852,%r815,84; @ %r852 bra $L124; setp.eq.u16 %r854,%r815,89; @ %r854 bra $L125; bra $L116; $L123: setp.eq.u16 %r856,%r815,101; @ %r856 bra $L120; bra $L116; $L122: setp.eq.u16 %r858,%r815,116; @ %r858 bra $L124; setp.gt.u16 %r860,%r815,116; @ %r860 bra $L126; setp.eq.u16 %r862,%r815,105; @ %r862 bra $L121; setp.eq.u16 %r864,%r815,110; @ %r864 bra $L110; bra $L116; $L126: setp.eq.u16 %r866,%r815,121; @ %r866 bra $L125; bra $L116; $L114: .loc 1 1580 15 and.b32 %r867,%r247,256; .loc 1 1580 8 setp.eq.u32 %r868,%r867,0; @ %r868 bra $L113; .loc 1 1582 15 and.b32 %r247,%r247,-129; .loc 1 1583 15 add.u64 %r253,%r253,1; .loc 1 1584 12 setp.ne.u32 %r869,%r256,0; @ %r869 bra $L127; .loc 1 1755 13 add.u64 %r237,%r237,-1; bra $L128; $L127: .loc 1 1586 16 add.u32 %r256,%r256,-1; bra $L128; $L113: .loc 1 1601 18 add.u32 %r870,%r257,%r258; .loc 1 1601 8 setp.ne.u32 %r871,%r870,0; @ %r871 bra $L129; .loc 1 1603 15 and.b32 %r247,%r247,-385; .loc 1 1604 9 bra $L130; $L115: .loc 1 1610 15 and.b32 %r872,%r247,128; .loc 1 1610 8 setp.eq.u32 %r873,%r872,0; @ %r873 bra $L129; .loc 1 1612 15 and.b32 %r247,%r247,-129; .loc 1 1613 9 bra $L130; $L110: .loc 1 1618 18 cvt.u16.u32 %r875,%r257; set.u32.eq.u16 %r876,%r875,0; neg.s32 %r877,%r876; mov.u32 %r874,%r877; .loc 1 1618 33 set.u32.eq.u64 %r879,%r253,0; neg.s32 %r880,%r879; mov.u32 %r878,%r880; .loc 1 1618 23 cvt.u16.u8 %r1080,%r874; mov.u16 %r882,%r1080; cvt.u16.u8 %r1080,%r878; mov.u16 %r883,%r1080; and.b16 %r881,%r882,%r883; cvt.u32.u16 %r884,%r881; .loc 1 1618 8 cvt.u16.u8 %r885,%r884; setp.eq.u16 %r886,%r885,0; @ %r886 bra $L131; .loc 1 1619 19 and.b32 %r887,%r247,1792; .loc 1 1619 9 setp.ne.u32 %r888,%r887,1792; @ %r888 bra $L132; .loc 1 1622 15 and.b32 %r247,%r247,-1921; .loc 1 1623 18 mov.u32 %r257,1; .loc 1 1624 9 mov.u64 %r253,0; bra $L130; $L131: .loc 1 1626 8 setp.eq.u16 %r890,%r875,2; @ %r890 bra $L177; $L132: .loc 1 1631 18 cvt.u16.u32 %r892,%r258; set.u32.eq.u16 %r893,%r892,1; neg.s32 %r894,%r893; mov.u32 %r891,%r894; .loc 1 1631 35 set.u32.eq.u16 %r897,%r892,4; neg.s32 %r898,%r897; mov.u32 %r895,%r898; .loc 1 1631 23 cvt.u16.u8 %r1080,%r891; mov.u16 %r900,%r1080; cvt.u16.u8 %r1080,%r895; mov.u16 %r901,%r1080; or.b16 %r899,%r900,%r901; cvt.u32.u16 %r902,%r899; .loc 1 1631 8 cvt.u16.u8 %r903,%r902; setp.eq.u16 %r904,%r903,0; @ %r904 bra $L129; .loc 1 1633 17 add.u16 %r906,%r892,1; cvt.u32.u16 %r908,%r906; cvt.s32.s8 %r258,%r908; .loc 1 1634 9 bra $L130; $L119: .loc 1 1639 8 cvt.u16.u32 %r910,%r257; setp.eq.u16 %r911,%r910,1; @ %r911 bra $L178; bra $L129; $L121: .loc 1 1647 18 cvt.u16.u32 %r913,%r258; set.u32.eq.u16 %r914,%r913,0; neg.s32 %r915,%r914; mov.u32 %r912,%r915; .loc 1 1647 33 set.u32.eq.u64 %r917,%r253,0; neg.s32 %r918,%r917; mov.u32 %r916,%r918; .loc 1 1647 23 cvt.u16.u8 %r1080,%r912; mov.u16 %r920,%r1080; cvt.u16.u8 %r1080,%r916; mov.u16 %r921,%r1080; and.b16 %r919,%r920,%r921; cvt.u32.u16 %r922,%r919; .loc 1 1647 8 cvt.u16.u8 %r923,%r922; setp.eq.u16 %r924,%r923,0; @ %r924 bra $L133; .loc 1 1648 19 and.b32 %r925,%r247,1792; .loc 1 1648 9 setp.ne.u32 %r926,%r925,1792; @ %r926 bra $L134; .loc 1 1651 15 and.b32 %r247,%r247,-1921; .loc 1 1652 18 mov.u32 %r258,1; .loc 1 1653 9 mov.u64 %r253,0; bra $L130; $L133: .loc 1 1655 18 cvt.u32.u32 %r927,%r258; cvt.u16.u8 %r929,%r927; add.u16 %r928,%r929,-3; cvt.u32.u16 %r930,%r928; cvt.u16.u8 %r1080,%r930; mov.u16 %r932,%r1080; .loc 1 1655 8 and.b16 %r934,%r932,253; setp.ne.u16 %r935,%r934,0; @ %r935 bra $L129; .loc 1 1657 17 add.u16 %r936,%r929,1; cvt.u32.u16 %r938,%r936; cvt.s32.s8 %r258,%r938; .loc 1 1658 9 bra $L130; $L117: .loc 1 1663 8 cvt.u16.u32 %r939,%r258; setp.eq.u16 %r940,%r939,2; @ %r940 bra $L179; bra $L129; $L124: .loc 1 1671 8 cvt.u16.u32 %r941,%r258; setp.eq.u16 %r942,%r941,6; @ %r942 bra $L180; bra $L129; $L125: .loc 1 1679 8 cvt.u16.u32 %r943,%r258; setp.eq.u16 %r944,%r943,7; @ %r944 bra $L181; bra $L129; $L120: .loc 1 1688 16 and.b32 %r945,%r247,1280; .loc 1 1688 8 setp.eq.u32 %r946,%r945,1024; @ %r946 bra $L135; .loc 1 1689 20 and.b32 %r947,%r247,1024; .loc 1 1689 9 setp.eq.u32 %r948,%r947,0; @ %r948 bra $L129; .loc 1 1689 29 setp.eq.u64 %r949,%r253,0; @ %r949 bra $L136; $L135: .loc 1 1691 22 and.b32 %r950,%r247,512; .loc 1 1691 12 setp.ne.u32 %r951,%r950,0; @ %r951 bra $L137; .loc 1 1693 17 sub.u64 %r254,%r253,%r252; mov.u64 %r255,%r243; $L137: .loc 1 1698 11 and.b32 %r201,%r247,-1921; .loc 1 1696 15 or.b32 %r247,%r201,384; .loc 1 1699 16 mov.u64 %r253,0; .loc 1 1700 9 bra $L130; $L116: .loc 1 1705 8 ld.u8 %r952,[%r276]; cvt.u16.u32 %r953,%r178; setp.ne.u16 %r954,%r952,%r953; @ %r954 bra $L129; .loc 1 1706 19 and.b32 %r955,%r247,512; .loc 1 1706 9 setp.eq.u32 %r956,%r955,0; @ %r956 bra $L129; .loc 1 1708 15 and.b32 %r247,%r247,-641; .loc 1 1710 9 mov.u64 %r252,%r253; bra $L130; $L177: .loc 1 1628 18 mov.u32 %r257,3; bra $L130; $L178: .loc 1 1641 18 mov.u32 %r257,2; bra $L130; $L179: .loc 1 1665 18 mov.u32 %r258,3; bra $L130; $L180: .loc 1 1673 18 mov.u32 %r258,7; bra $L130; $L181: .loc 1 1681 18 mov.u32 %r258,8; $L130: .loc 1 1753 13 cvt.u32.u32 %r957,%r178; st.u8 [%r243],%r957; .loc 1 1755 13 add.u64 %r237,%r237,-1; .loc 1 1753 10 add.u64 %r243,%r243,1; $L128: .loc 1 1756 8 add.u32 %r208,%r208,1; .loc 1 1757 12 ld.u32 %r958,[%r379+8]; add.u32 %r207,%r958,-1; .loc 1 1757 11 st.u32 [%r379+8],%r207; setp.le.s32 %r959,%r207,0; @ %r959 bra $L138; .loc 1 1758 9 add.u64 %r960,%r177,1; st.u64 [%r379],%r960; bra $L139; $L138: .loc 1 1760 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r963,[%value_in]; } .loc 1 1760 11 setp.ne.u32 %r964,%r963,0; @ %r964 bra $L129; $L139: .loc 1 1570 18 setp.ne.u64 %r965,%r237,0; @ %r965 bra $L140; $L129: .loc 1 1763 7 setp.eq.u64 %r966,%r253,0; @ %r966 bra $L136; .loc 1 1764 12 and.b32 %r247,%r247,-257; $L136: .loc 1 1773 17 add.u32 %r967,%r257,-1; .loc 1 1773 7 setp.gt.u32 %r968,%r967,1; @ %r968 bra $L141; $L161: .loc 1 1778 17 setp.ge.u64 %r969,%frame,%r243; @ %r969 bra $L1; $L142: .loc 1 1780 5 add.u64 %r243,%r243,-1; ld.s8 %r973,[%r243]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r973; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r974,[%value_in]; } .loc 1 1778 17 setp.ne.u64 %r975,%frame,%r243; @ %r975 bra $L142; bra $L1; $L141: .loc 1 1788 17 add.u32 %r976,%r258,-1; .loc 1 1788 7 setp.gt.u32 %r977,%r976,6; @ %r977 bra $L143; .loc 1 1790 11 cvt.u16.u32 %r978,%r258; setp.le.s16 %r979,%r978,2; @ %r979 bra $L144; .loc 1 1791 18 cvt.u32.u32 %r980,%r258; cvt.u32.u8 %r303,%r980; .loc 1 1791 21 setp.ne.u16 %r982,%r978,3; @ %r982 bra $L182; bra $L143; $L144: .loc 1 1798 14 setp.lt.u64 %r983,%frame,%r243; @ %r983 bra $L146; bra $L1; $L182: .loc 1 1791 21 mov.u64 %r281,%r243; cvt.u32.u64 %r1075,%r281; cvt.u32.u64 %r1074,%r281; cvt.u16.u32 %r995,%r303; cvt.u16.u8 %r1080,%r1074; mov.u16 %r1000,%r1080; $L145: .loc 1 1793 7 add.u64 %r281,%r281,-1; ld.s8 %r987,[%r281]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r987; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r988,[%value_in]; } cvt.u32.u64 %r990,%r281; vsub.u32.u32.u32.add %r346,%r990,%r1075,%r208; .loc 1 1791 21 cvt.u32.u64 %r992,%r281; cvt.u16.u8 %r1080,%r992; mov.u16 %r994,%r1080; add.u16 %r993,%r994,%r995; cvt.u32.u16 %r996,%r993; cvt.u16.u8 %r1080,%r996; mov.u16 %r999,%r1080; sub.u16 %r998,%r999,%r1000; cvt.u32.u16 %r1001,%r998; cvt.s16.s8 %r1002,%r1001; setp.gt.s16 %r1003,%r1002,3; @ %r1003 bra $L145; .loc 1 1794 7 mov.u32 %r208,%r346; mov.u64 %r243,%r281; bra $L143; $L146: .loc 1 1800 9 add.u64 %r243,%r243,-1; ld.s8 %r1007,[%r243]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1007; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1008,[%value_in]; } .loc 1 1798 14 setp.ne.u64 %r1009,%frame,%r243; @ %r1009 bra $L146; bra $L1; $L143: .loc 1 1811 14 and.b32 %r1010,%r247,256; .loc 1 1811 7 setp.eq.u32 %r1011,%r1010,0; @ %r1011 bra $L147; .loc 1 1813 18 and.b32 %r1012,%r247,1024; .loc 1 1813 11 setp.eq.u32 %r1013,%r1012,0; @ %r1013 bra $L148; .loc 1 1816 14 setp.ge.u64 %r1014,%frame,%r243; @ %r1014 bra $L1; $L149: .loc 1 1818 9 add.u64 %r243,%r243,-1; ld.s8 %r1018,[%r243]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1018; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1019,[%value_in]; } .loc 1 1816 14 setp.ne.u64 %r1020,%frame,%r243; @ %r1020 bra $L149; bra $L1; $L148: .loc 1 1824 12 ld.s8 %r236,[%r243+-1]; .loc 1 1826 26 cvt.u16.u32 %r1022,%r236; and.b16 %r1021,%r1022,-33; cvt.u32.u16 %r1023,%r1021; .loc 1 1826 11 cvt.s16.s8 %r1024,%r1023; setp.ne.u16 %r1025,%r1024,69; @ %r1025 bra $L150; .loc 1 1824 10 add.u64 %r243,%r243,-1; .loc 1 1825 8 add.u32 %r208,%r208,-1; bra $L151; $L150: .loc 1 1828 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r236; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1029,[%value_in]; } .loc 1 1829 7 ld.s8 %r236,[%r243+-2]; .loc 1 1830 5 add.u32 %r208,%r208,-2; .loc 1 1829 7 add.u64 %r243,%r243,-2; $L151: .loc 1 1832 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r236; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_sungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1033,[%value_in]; } $L147: .loc 1 1834 15 and.b32 %r1034,%r247,16; .loc 1 1834 7 setp.ne.u32 %r1035,%r1034,0; @ %r1035 bra $L7; .loc 1 1845 11 mov.u32 %r1036,0; st.u8 [%r243],%r1036; .loc 1 1846 19 and.b32 %r1037,%r247,1536; .loc 1 1846 11 setp.ne.u32 %r1038,%r1037,1024; @ %r1038 bra $L152; .loc 1 1854 11 setp.eq.u64 %r1039,%r252,%r253; @ %r1039 bra $L153; .loc 1 1849 13 sub.u64 %r283,%r252,%r253; bra $L154; $L152: .loc 1 1852 16 setp.eq.u64 %r1040,%r254,0; @ %r1040 bra $L153; .loc 1 1853 55 add.u64 %r1045,%r255,1; .loc 1 1853 27 mov.u32 %r1044,10; mov.u64 %r1043,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1045; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1043; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1044; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r1046,[%value_in]; } .loc 1 1853 25 sub.u64 %r283,%r1046,%r254; mov.u64 %r243,%r255; $L154: .loc 1 1859 8 setp.lt.u64 %r1048,%r243,%r1078; @ %r1048 bra $L155; .loc 1 1860 17 add.u64 %r243,%frame,328; $L155: .loc 1 1861 18 st.u64 [%stack],%r283; cvta.const.u64 %r1050,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r243; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1050; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1051,[%value_in]; } $L153: .loc 1 1873 16 mov.u64 %r1055,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1055; call (%value_in),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r1056,[%value_in]; } .loc 1 888 11 add.u64 %r1057,%r381,7; and.b64 %r320,%r1057,-8; add.u64 %r381,%r320,8; .loc 1 1875 18 and.b32 %r1058,%r247,1; .loc 1 1875 11 setp.eq.u32 %r1059,%r1058,0; @ %r1059 bra $L156; .loc 1 1878 9 ld.u64 %r1060,[%r320]; st.f64 [%r1060],%r1056; bra $L157; $L156: .loc 1 1877 8 ld.u64 %r339,[%r320]; .loc 1 1880 23 and.b32 %r1061,%r247,2; .loc 1 1880 16 setp.eq.u32 %r1062,%r1061,0; @ %r1062 bra $L158; .loc 1 1883 10 st.f64 [%r339],%r1056; bra $L157; $L158: .loc 1 1888 8 setp.num.f64 %r1063,%r1056,%r1056; @ %r1063 bra $L159; .loc 1 1889 14 cvta.const.u64 %r1064,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1064; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r1065,[%value_in]; } .loc 1 1889 12 st.f32 [%r339],%r1065; bra $L157; $L159: .loc 1 1891 12 cvt.rn.f32.f64 %r1066,%r1056; st.f32 [%r339],%r1066; $L157: .loc 1 1893 17 add.u32 %r377,%r377,1; bra $L7; $L35: .loc 1 1905 63 setp.eq.u32 %r1067,%r377,0; @ %r1067 bra $L183; .loc 1 1905 25 ld.u16 %r1069,[%r379+16]; and.b16 %r1068,%r1069,64; setp.ne.u16 %r1070,%r1068,0; .loc 1 1905 63 selp.u32 %r377,-1,%r377,%r1070; bra $L1; $L162: .loc 1 613 10 mov.u32 %r377,%r27; bra $L1; $L183: .loc 1 1905 63 mov.u32 %r377,-1; bra $L1; $L3: $L160: $L134: .loc 1 1773 17 add.u32 %r1072,%r257,-1; .loc 1 1773 7 setp.le.u32 %r1073,%r1072,1; @ %r1073 bra $L161; mov.u64 %r253,0; bra $L143; $L1: .loc 1 1914 1 mov.u32 %value,%r377; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1598 0 0 0 644 91341 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9); .file 1 "../../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: _svfwprintf_r .visible .func (.param .u32 %value_out) _svfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __ssprint_r .extern .func (.param .u32 %value_out) __ssprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 4 .u32 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 4 .u32 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 4 .u32 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 4 .u32 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 4 .u32 $LC7[2] = {48,0 }; // BEGIN FUNCTION DEF: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u32 %ar6; ld.param.u32 %ar6,[%in_ar6]; .reg .u64 %ar7; ld.param.u64 %ar7,[%in_ar7]; .reg .u64 %ar8; ld.param.u64 %ar8,[%in_ar8]; .reg .u32 %ar9; ld.param.u32 %ar9,[%in_ar9]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r25; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r47; .reg .u64 %r50; .reg .u32 %r54; .reg .u64 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r74; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .u32 %r110; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .u32 %r120; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u16 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u16 %r144; mov.u64 %r56,%ar0; mov.f64 %r57,%ar1; mov.u32 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r61,%ar5; mov.u32 %r62,%ar6; mov.u64 %r63,%ar7; mov.u64 %r64,%ar8; mov.u32 %r65,%ar9; .loc 1 1562 6 mov.b64 %r66,%r57; shr.u64 %r67,%r66,32; cvt.u32.u64 %r68,%r67; .loc 1 1562 5 setp.ge.s32 %r69,%r68,0; @ %r69 bra $L18; .loc 1 1563 9 neg.f64 %r57,%r57; .loc 1 1564 9 mov.u32 %r39,45; bra $L2; $L18: .loc 1 1566 9 mov.u32 %r39,0; $L2: st.u32 [%r60],%r39; .loc 1 1616 23 and.b32 %r25,%r62,-33; .loc 1 1616 5 setp.eq.u32 %r70,%r25,70; @ %r70 bra $L3; .loc 1 1623 6 setp.ne.u32 %r71,%r25,69; @ %r71 bra $L4; .loc 1 1624 11 add.u32 %r58,%r58,1; .loc 1 1635 13 add.u64 %r79,%frame,8; mov.u32 %r74,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r74; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r79; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r80,[%value_in]; } mov.u64 %r50,%r80; bra $L5; $L23: .loc 1 1642 10 ld.u32 %r54,[%r61]; bra $L6; $L15: .loc 1 1641 23 mov.u32 %r81,1; sub.u32 %r54,%r81,%r58; .loc 1 1641 12 st.u32 [%r61],%r54; $L6: .loc 1 1642 10 cvt.s64.s32 %r82,%r54; .loc 1 1642 7 add.u64 %r83,%r82,%r47; add.u64 %r35,%r126,%r83; $L13: .loc 1 1644 6 setp.neu.f64 %r84,%r57,0d0000000000000000; @ %r84 bra $L7; .loc 1 1645 8 st.u64 [%frame],%r35; mov.u64 %r29,%r35; bra $L8; $L7: .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.le.u64 %r85,%r35,%r29; @ %r85 bra $L8; .loc 1 1647 11 mov.u32 %r87,48; $L9: .loc 1 1647 8 add.u64 %r86,%r29,1; st.u64 [%frame],%r86; .loc 1 1647 11 st.u8 [%r29],%r87; .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.lt.u64 %r88,%r29,%r35; @ %r88 bra $L9; $L8: .loc 1 1650 18 sub.u64 %r89,%r29,%r50; .loc 1 1650 12 cvt.u32.u64 %r31,%r89; st.u32 [%r63],%r31; .loc 1 1655 28 set.u32.gt.s32 %r91,%r65,0; neg.s32 %r92,%r91; mov.u32 %r90,%r92; set.u32.gt.s32 %r94,%r31,0; neg.s32 %r95,%r94; mov.u32 %r93,%r95; cvt.u16.u8 %r144,%r90; mov.u16 %r97,%r144; cvt.u16.u8 %r144,%r93; mov.u16 %r98,%r144; and.b16 %r96,%r97,%r98; cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r100,%r99; setp.ne.u16 %r101,%r100,0; @ ! %r101 bra $L21; mov.u64 %r36,%r50; mov.u64 %r37,%r64; .loc 1 1655 11 mov.u32 %r40,0; $L11: .loc 1 1656 15 ld.s8 %r103,[%r36]; st.u32 [%r37],%r103; .loc 1 1655 40 add.u32 %r40,%r40,1; .loc 1 1655 28 add.u64 %r36,%r36,1; add.u64 %r37,%r37,4; ld.u32 %r105,[%r63]; min.s32 %r104,%r65,%r105; setp.gt.s32 %r106,%r104,%r40; @ %r106 bra $L11; bra $L21; $L5: .loc 1 1638 15 cvt.s64.s32 %r107,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r107; bra $L13; $L4: .loc 1 1635 13 add.u64 %r115,%frame,8; mov.u32 %r110,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r110; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r115; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r116,[%value_in]; } mov.u64 %r50,%r116; .loc 1 1637 7 setp.ne.u32 %r117,%r25,71; @ ! %r117 bra $L22; bra $L5; $L3: .loc 1 1635 13 add.u64 %r125,%frame,8; mov.u32 %r120,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r120; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r125; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r126,[%value_in]; } mov.u64 %r50,%r126; .loc 1 1638 15 cvt.s64.s32 %r47,%r58; .loc 1 1640 7 ld.u8 %r129,[%r126]; cvt.s16.s8 %r128,%r129; set.u32.eq.u16 %r130,%r128,48; neg.s32 %r131,%r130; mov.u32 %r127,%r131; .loc 1 1640 24 set.u32.neu.f64 %r133,%r57,0d0000000000000000; neg.s32 %r134,%r133; mov.u32 %r132,%r134; cvt.u16.u8 %r144,%r127; mov.u16 %r136,%r144; cvt.u16.u8 %r144,%r132; mov.u16 %r137,%r144; and.b16 %r135,%r136,%r137; cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ ! %r140 bra $L23; bra $L15; $L17: .loc 1 1638 15 cvt.s64.s32 %r141,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r141; bra $L13; $L22: .loc 1 1637 44 and.b32 %r142,%r59,1; .loc 1 1637 35 setp.ne.u32 %r143,%r142,0; @ %r143 bra $L17; .loc 1 1650 18 ld.u64 %r29,[%frame]; bra $L8; $L21: .loc 1 1660 1 mov.u64 %value,%r64; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _svfwprintf_r .visible .func (.param .u32 %value_out) _svfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,400; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r59; .reg .u32 %r67; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r123; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r147; .reg .u32 %r150; .reg .u64 %r153; .reg .u64 %r154; .reg .u32 %r155; .reg .u64 %r158; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u64 %r164; .reg .u64 %r165; .reg .u32 %r167; .reg .u32 %r170; .reg .u32 %r173; .reg .u32 %r176; .reg .u64 %r179; .reg .u32 %r180; .reg .u32 %r182; .reg .u32 %r184; .reg .u64 %r190; .reg .u64 %r192; .reg .f64 %r193; .reg .u32 %r194; .reg .u32 %r195; .reg .u64 %r200; .reg .u32 %r202; .reg .u32 %r206; .reg .u64 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u64 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u32 %r218; .reg .u32 %r223; .reg .u64 %r224; .reg .u32 %r226; .reg .u64 %r230; .reg .u64 %r231; .reg .u32 %r232; .reg .u64 %r237; .reg .u32 %r238; .reg .u64 %r240; .reg .u64 %r243; .reg .u64 %r246; .reg .u32 %r248; .reg .u64 %r253; .reg .u32 %r254; .reg .u64 %r255; .reg .u32 %r262; .reg .u64 %r264; .reg .u32 %r265; .reg .u32 %r266; .reg .u32 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u64 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u64 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u64 %r277; .reg .u64 %r278; .reg .u64 %r279; .reg .u32 %r280; .reg .u32 %r282; .reg .u32 %r283; .reg .u32 %r289; .reg .u32 %r290; .reg .u64 %r294; .reg .u32 %r297; .reg .u32 %r298; .reg .u64 %r299; .reg .u32 %r301; .reg .u64 %r302; .reg .u32 %r303; .reg .u64 %r304; .reg .u32 %r305; .reg .u64 %r306; .reg .u64 %r309; .reg .u64 %r314; .reg .u64 %r317; .reg .u32 %r322; .reg .u32 %r323; .reg .u32 %r324; .reg .u64 %r325; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r330; .reg .u64 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r338; .reg .u64 %r339; .reg .u64 %r340; .reg .u64 %r341; .reg .u64 %r342; .reg .u64 %r344; .reg .u64 %r347; .reg .u64 %r352; .reg .u64 %r353; .reg .u64 %r354; .reg .u64 %r355; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r364; .reg .u64 %r369; .reg .u64 %r372; .reg .u32 %r381; .reg .u32 %r384; .reg .u32 %r385; .reg .u64 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r392; .reg .u64 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r409; .reg .u64 %r412; .reg .u32 %r413; .reg .u32 %r414; .reg .u64 %r417; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r423; .reg .u64 %r424; .reg .u64 %r425; .reg .u64 %r426; .reg .u64 %r427; .reg .u32 %r429; .reg .u64 %r431; .reg .u64 %r432; .reg .u32 %r433; .reg .u16 %r434; .reg .u16 %r435; .reg .pred %r436; .reg .u64 %r437; .reg .pred %r438; .reg .u64 %r440; .reg .u64 %r441; .reg .pred %r442; .reg .u32 %r443; .reg .u32 %r444; .reg .u64 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u32 %r452; .reg .u32 %r453; .reg .u16 %r454; .reg .u16 %r455; .reg .u16 %r456; .reg .u32 %r457; .reg .u16 %r458; .reg .pred %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .u32 %r462; .reg .u32 %r463; .reg .u32 %r464; .reg .u32 %r465; .reg .u16 %r466; .reg .u16 %r467; .reg .u16 %r468; .reg .u32 %r469; .reg .u16 %r470; .reg .pred %r471; .reg .u64 %r472; .reg .u64 %r474; .reg .pred %r475; .reg .u64 %r476; .reg .u64 %r477; .reg .u64 %r478; .reg .u32 %r479; .reg .pred %r480; .reg .u32 %r485; .reg .pred %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .pred %r489; .reg .u32 %r490; .reg .pred %r491; .reg .pred %r492; .reg .pred %r493; .reg .pred %r494; .reg .pred %r495; .reg .pred %r496; .reg .pred %r497; .reg .pred %r498; .reg .pred %r499; .reg .pred %r500; .reg .pred %r501; .reg .pred %r502; .reg .pred %r503; .reg .pred %r504; .reg .pred %r505; .reg .pred %r506; .reg .pred %r507; .reg .pred %r508; .reg .pred %r509; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r515; .reg .u32 %r516; .reg .pred %r517; .reg .pred %r518; .reg .pred %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u32 %r532; .reg .u32 %r534; .reg .u32 %r535; .reg .u32 %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u32 %r541; .reg .u32 %r542; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u32 %r552; .reg .pred %r553; .reg .u16 %r554; .reg .u16 %r555; .reg .u32 %r556; .reg .pred %r558; .reg .u32 %r559; .reg .pred %r560; .reg .u32 %r561; .reg .pred %r562; .reg .u32 %r563; .reg .pred %r564; .reg .u16 %r565; .reg .pred %r568; .reg .pred %r569; .reg .u64 %r570; .reg .f64 %r573; .reg .pred %r574; .reg .pred %r575; .reg .pred %r576; .reg .u32 %r577; .reg .pred %r578; .reg .u64 %r579; .reg .u64 %r580; .reg .u32 %r582; .reg .pred %r583; .reg .u32 %r584; .reg .pred %r585; .reg .pred %r586; .reg .u32 %r587; .reg .u32 %r588; .reg .u32 %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .u32 %r592; .reg .u32 %r593; .reg .u16 %r594; .reg .u16 %r595; .reg .u16 %r596; .reg .u32 %r597; .reg .u16 %r598; .reg .pred %r599; .reg .u32 %r609; .reg .u64 %r613; .reg .pred %r614; .reg .pred %r615; .reg .u64 %r618; .reg .u64 %r619; .reg .u64 %r620; .reg .pred %r621; .reg .u16 %r622; .reg .u16 %r623; .reg .u32 %r634; .reg .u64 %r638; .reg .u32 %r639; .reg .pred %r640; .reg .u32 %r641; .reg .u32 %r642; .reg .u32 %r643; .reg .u32 %r644; .reg .u32 %r645; .reg .u32 %r646; .reg .u16 %r647; .reg .u16 %r648; .reg .u16 %r649; .reg .u32 %r650; .reg .u16 %r651; .reg .pred %r652; .reg .pred %r653; .reg .pred %r654; .reg .u32 %r655; .reg .pred %r656; .reg .u32 %r658; .reg .u32 %r659; .reg .pred %r662; .reg .pred %r665; .reg .pred %r669; .reg .u64 %r675; .reg .u64 %r677; .reg .u64 %r678; .reg .u64 %r679; .reg .u64 %r681; .reg .u64 %r683; .reg .u32 %r684; .reg .u32 %r685; .reg .pred %r686; .reg .pred %r687; .reg .u32 %r688; .reg .pred %r689; .reg .pred %r690; .reg .pred %r691; .reg .u32 %r692; .reg .pred %r693; .reg .u32 %r694; .reg .pred %r695; .reg .pred %r696; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .pred %r700; .reg .u64 %r701; .reg .u32 %r702; .reg .pred %r703; .reg .u64 %r704; .reg .u64 %r705; .reg .u32 %r706; .reg .pred %r707; .reg .u64 %r708; .reg .u64 %r709; .reg .u32 %r710; .reg .pred %r711; .reg .u64 %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .pred %r715; .reg .u32 %r716; .reg .pred %r717; .reg .u32 %r718; .reg .pred %r719; .reg .u16 %r720; .reg .u32 %r721; .reg .u32 %r722; .reg .u32 %r723; .reg .pred %r724; .reg .pred %r725; .reg .pred %r726; .reg .u64 %r730; .reg .pred %r731; .reg .u64 %r733; .reg .pred %r734; .reg .u64 %r737; .reg .u64 %r738; .reg .u64 %r739; .reg .pred %r740; .reg .u16 %r741; .reg .u16 %r742; .reg .u64 %r744; .reg .u32 %r745; .reg .pred %r746; .reg .u32 %r747; .reg .u64 %r751; .reg .u64 %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u64 %r759; .reg .u64 %r760; .reg .pred %r761; .reg .u64 %r762; .reg .u64 %r764; .reg .u32 %r765; .reg .u64 %r767; .reg .u32 %r768; .reg .pred %r769; .reg .u32 %r770; .reg .pred %r771; .reg .u32 %r772; .reg .pred %r773; .reg .u16 %r774; .reg .pred %r775; .reg .u32 %r776; .reg .pred %r777; .reg .u32 %r778; .reg .pred %r779; .reg .u32 %r780; .reg .pred %r781; .reg .u16 %r782; .reg .u32 %r783; .reg .pred %r784; .reg .pred %r785; .reg .u32 %r786; .reg .pred %r787; .reg .u32 %r788; .reg .u32 %r789; .reg .u32 %r790; .reg .u32 %r791; .reg .u32 %r792; .reg .u32 %r793; .reg .u16 %r794; .reg .u16 %r795; .reg .u16 %r796; .reg .u32 %r797; .reg .u16 %r798; .reg .pred %r799; .reg .pred %r800; .reg .pred %r801; .reg .u32 %r802; .reg .u32 %r803; .reg .pred %r804; .reg .u32 %r805; .reg .u32 %r806; .reg .u32 %r807; .reg .u32 %r808; .reg .u16 %r809; .reg .u16 %r810; .reg .u32 %r811; .reg .u16 %r812; .reg .u16 %r813; .reg .u16 %r814; .reg .u32 %r815; .reg .u16 %r816; .reg .pred %r817; .reg .u64 %r819; .reg .u64 %r821; .reg .u32 %r822; .reg .u64 %r824; .reg .u64 %r826; .reg .pred %r827; .reg .u32 %r828; .reg .u32 %r829; .reg .u64 %r831; .reg .u32 %r832; .reg .u32 %r833; .reg .pred %r836; .reg .u64 %r838; .reg .u64 %r840; .reg .u64 %r841; .reg .u64 %r842; .reg .u64 %r843; .reg .u32 %r844; .reg .pred %r845; .reg .u64 %r847; .reg .u64 %r849; .reg .pred %r850; .reg .pred %r851; .reg .u32 %r852; .reg .pred %r853; .reg .pred %r854; .reg .u32 %r855; .reg .pred %r856; .reg .pred %r858; .reg .pred %r859; .reg .pred %r860; .reg .u64 %r862; .reg .pred %r863; .reg .u32 %r868; .reg .pred %r869; .reg .pred %r870; .reg .u64 %r872; .reg .pred %r873; .reg .u32 %r878; .reg .pred %r879; .reg .u32 %r880; .reg .pred %r881; .reg .u64 %r883; .reg .u32 %r884; .reg .pred %r885; .reg .u32 %r890; .reg .pred %r891; .reg .u64 %r894; .reg .u32 %r895; .reg .pred %r896; .reg .u32 %r901; .reg .pred %r902; .reg .pred %r903; .reg .pred %r904; .reg .pred %r905; .reg .u64 %r907; .reg .pred %r908; .reg .u32 %r913; .reg .pred %r914; .reg .pred %r915; .reg .u64 %r917; .reg .pred %r918; .reg .u32 %r923; .reg .pred %r924; .reg .pred %r925; .reg .pred %r926; .reg .u64 %r928; .reg .pred %r929; .reg .u32 %r934; .reg .pred %r935; .reg .pred %r936; .reg .u64 %r938; .reg .pred %r939; .reg .u32 %r944; .reg .pred %r945; .reg .u32 %r946; .reg .pred %r947; .reg .u64 %r948; .reg .u32 %r949; .reg .pred %r950; .reg .u32 %r955; .reg .pred %r956; .reg .pred %r957; .reg .pred %r958; .reg .u64 %r959; .reg .u64 %r960; .reg .u32 %r961; .reg .pred %r962; .reg .u32 %r967; .reg .pred %r968; .reg .u32 %r969; .reg .pred %r970; .reg .u32 %r971; .reg .pred %r972; .reg .u64 %r974; .reg .u32 %r975; .reg .pred %r976; .reg .u32 %r981; .reg .pred %r982; .reg .pred %r983; .reg .pred %r984; .reg .u64 %r986; .reg .pred %r987; .reg .u32 %r992; .reg .pred %r993; .reg .pred %r994; .reg .u64 %r996; .reg .pred %r997; .reg .u32 %r1002; .reg .pred %r1003; .reg .pred %r1004; .reg .u64 %r1005; .reg .u64 %r1006; .reg .u32 %r1007; .reg .pred %r1008; .reg .u32 %r1013; .reg .pred %r1014; .reg .pred %r1015; .reg .u32 %r1016; .reg .u32 %r1017; .reg .pred %r1018; .reg .u64 %r1020; .reg .u32 %r1021; .reg .pred %r1022; .reg .u32 %r1027; .reg .pred %r1028; .reg .pred %r1029; .reg .pred %r1030; .reg .u64 %r1032; .reg .pred %r1033; .reg .u32 %r1038; .reg .pred %r1039; .reg .pred %r1040; .reg .u64 %r1042; .reg .pred %r1043; .reg .u32 %r1048; .reg .pred %r1049; .reg .u64 %r1050; .reg .pred %r1051; .reg .u32 %r1056; .reg .pred %r1057; .reg .u32 %r1062; .reg .pred %r1063; .reg .u64 %r1064; .reg .u32 %r1065; .reg .pred %r1066; .reg .u32 %r1071; .reg .pred %r1072; .reg .u32 %r1073; .reg .pred %r1074; .reg .pred %r1075; .reg .u64 %r1077; .reg .pred %r1078; .reg .u32 %r1083; .reg .pred %r1084; .reg .pred %r1085; .reg .u64 %r1087; .reg .pred %r1088; .reg .u32 %r1093; .reg .pred %r1094; .reg .u64 %r1095; .reg .pred %r1096; .reg .u32 %r1097; .reg .pred %r1098; .reg .u64 %r1100; .reg .u32 %r1101; .reg .pred %r1102; .reg .u32 %r1107; .reg .pred %r1108; .reg .u64 %r1109; .reg .u64 %r1110; .reg .u64 %r1111; .reg .u64 %r1113; .reg .u32 %r1114; .reg .pred %r1115; .reg .u64 %r1116; .reg .u64 %r1117; .reg .u32 %r1118; .reg .pred %r1119; .reg .u32 %r1124; .reg .pred %r1125; .reg .u32 %r1126; .reg .u32 %r1127; .reg .u32 %r1128; .reg .pred %r1129; .reg .pred %r1130; .reg .u64 %r1132; .reg .pred %r1133; .reg .u32 %r1138; .reg .pred %r1139; .reg .pred %r1140; .reg .u64 %r1142; .reg .pred %r1143; .reg .u32 %r1148; .reg .pred %r1149; .reg .u32 %r1150; .reg .u32 %r1151; .reg .pred %r1152; .reg .u32 %r1153; .reg .pred %r1154; .reg .u64 %r1155; .reg .pred %r1156; .reg .u32 %r1161; .reg .pred %r1162; .reg .u64 %r1164; .reg .pred %r1165; .reg .u32 %r1170; .reg .pred %r1171; .reg .u32 %r1172; .reg .pred %r1173; .reg .u64 %r1174; .reg .u64 %r1175; .reg .pred %r1176; .reg .u32 %r1181; .reg .pred %r1182; .reg .pred %r1183; .reg .pred %r1184; .reg .u64 %r1186; .reg .pred %r1187; .reg .u32 %r1192; .reg .pred %r1193; .reg .pred %r1194; .reg .u64 %r1196; .reg .pred %r1197; .reg .u32 %r1202; .reg .pred %r1203; .reg .u64 %r1204; .reg .pred %r1205; .reg .u32 %r1210; .reg .pred %r1211; .reg .u64 %r1213; .reg .pred %r1214; .reg .u32 %r1219; .reg .pred %r1220; .reg .u32 %r1221; .reg .pred %r1222; .reg .pred %r1223; .reg .pred %r1224; .reg .u64 %r1226; .reg .pred %r1227; .reg .u32 %r1232; .reg .pred %r1233; .reg .pred %r1234; .reg .u64 %r1236; .reg .pred %r1237; .reg .u32 %r1242; .reg .pred %r1243; .reg .u32 %r1244; .reg .pred %r1245; .reg .u32 %r1246; .reg .pred %r1247; .reg .u32 %r1252; .reg .pred %r1253; .reg .u64 %r1256; .reg .pred %r1257; .reg .u64 %r1261; .reg .u32 %r1262; .reg .pred %r1263; .reg .u16 %r1264; .reg .u16 %r1265; .reg .u16 %r1266; .reg .u16 %r1267; .reg .pred %r1268; .reg .u16 %r1269; .reg .u16 %r1270; .reg .u16 %r1273; .reg .u16 %r1274; .reg .pred %r1275; .reg .u64 %r1278; .reg .u32 %r1279; .reg .pred %r1280; .reg .u32 %r1283; .reg .u32 %r1290; .reg .u64 %r1294; .reg .pred %r1295; .reg .pred %r1296; .reg .pred %r1297; .reg .pred %r1298; .reg .u32 %r1299; .reg .u32 %r1300; .reg .u32 %r1301; .reg .u32 %r1302; .reg .u32 %r1303; .reg .u32 %r1304; .reg .u16 %r1305; .reg .u16 %r1306; .reg .u16 %r1307; .reg .u32 %r1308; .reg .u16 %r1309; .reg .pred %r1310; .reg .u64 %r1311; .reg .u64 %r1312; .reg .pred %r1313; .reg .u64 %r1314; .reg .pred %r1315; .reg .u32 %r1321; .reg .u32 %r1322; .reg .u64 %r1346; .reg .u64 %r1347; .reg .u64 %r1348; .reg .u64 %r1349; .reg .u64 %r1350; .reg .u64 %r1351; .reg .u64 %r1352; .reg .u64 %r1353; .reg .u64 %r1354; .reg .u64 %r1355; .reg .u16 %r1362; mov.u64 %r424,%ar0; mov.u64 %r425,%ar1; mov.u64 %r426,%ar2; mov.u64 %r427,%ar3; .loc 1 424 6 mov.u32 %r429,0; st.u32 [%frame+376],%r429; .loc 1 476 29 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r431,[%value_in]; } .loc 1 476 28 ld.u64 %r432,[%r431]; .loc 1 476 18 ld.s8 %r433,[%r432]; st.u32 [%frame+388],%r433; .loc 1 612 12 ld.u16 %r435,[%r425+16]; and.b16 %r434,%r435,128; setp.eq.u16 %r436,%r434,0; @ %r436 bra $L25; .loc 1 612 33 ld.u64 %r437,[%r425+24]; setp.ne.u64 %r438,%r437,0; @ %r438 bra $L25; .loc 1 614 28 mov.u64 %r440,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r441,[%value_in]; } .loc 1 614 26 st.u64 [%r425],%r441; .loc 1 614 17 st.u64 [%r425+24],%r441; .loc 1 615 6 setp.ne.u64 %r442,%r441,0; @ %r442 bra $L26; .loc 1 617 17 mov.u32 %r443,12; st.u32 [%r424],%r443; .loc 1 618 11 mov.u32 %r423,-1; bra $L24; $L26: .loc 1 620 17 mov.u32 %r444,64; st.u32 [%r425+32],%r444; $L25: .loc 1 626 14 add.u64 %r1312,%frame,160; st.u64 [%frame+344],%r1312; .loc 1 627 16 mov.u64 %r446,0; st.u64 [%frame+360],%r446; .loc 1 628 17 mov.u32 %r447,0; st.u32 [%frame+352],%r447; .loc 1 416 42 mov.f64 %r193,0d0000000000000000; .loc 1 626 21 mov.u64 %r274,%r1312; .loc 1 435 11 mov.u64 %r273,%r446; .loc 1 419 6 mov.u32 %r42,%r447; .loc 1 630 6 mov.u32 %r423,%r42; .loc 1 647 4 add.u64 %r1346,%frame,344; .loc 1 1508 5 add.u64 %r1347,%frame,316; .loc 1 1500 6 add.u64 %r1348,%frame,388; .loc 1 1438 4 add.u64 %r1349,%frame,368; .loc 1 1436 4 add.u64 %r1350,%frame,392; add.u64 %r1351,%frame,324; .loc 1 1687 36 add.u64 %r1352,%frame,323; .loc 1 1042 9 add.u64 %r1353,%frame,376; add.u64 %r1354,%frame,380; add.u64 %r1355,%frame,384; $L28: .loc 1 644 24 ld.u32 %r289,[%r426]; .loc 1 644 38 set.u32.ne.u32 %r449,%r289,0; neg.s32 %r450,%r449; mov.u32 %r448,%r450; set.u32.ne.u32 %r452,%r289,37; neg.s32 %r453,%r452; mov.u32 %r451,%r453; cvt.u16.u8 %r1362,%r448; mov.u16 %r455,%r1362; cvt.u16.u8 %r1362,%r451; mov.u16 %r456,%r1362; and.b16 %r454,%r455,%r456; cvt.u32.u16 %r457,%r454; cvt.u16.u8 %r458,%r457; setp.eq.u16 %r459,%r458,0; @ %r459 bra $L271; mov.u64 %r255,%r426; $L30: mov.u64 %r36,%r255; .loc 1 645 21 add.u64 %r255,%r255,4; .loc 1 644 24 ld.u32 %r289,[%r255]; .loc 1 644 38 set.u32.ne.u32 %r461,%r289,0; neg.s32 %r462,%r461; mov.u32 %r460,%r462; set.u32.ne.u32 %r464,%r289,37; neg.s32 %r465,%r464; mov.u32 %r463,%r465; cvt.u16.u8 %r1362,%r460; mov.u16 %r467,%r1362; cvt.u16.u8 %r1362,%r463; mov.u16 %r468,%r1362; and.b16 %r466,%r467,%r468; cvt.u32.u16 %r469,%r466; cvt.u16.u8 %r470,%r469; setp.ne.u16 %r471,%r470,0; @ %r471 bra $L30; .loc 1 646 16 sub.u64 %r472,%r255,%r426; shr.s64 %r474,%r472,2; .loc 1 646 10 cvt.u32.u64 %r290,%r474; .loc 1 646 6 setp.eq.u32 %r475,%r290,0; @ %r475 bra $L29; .loc 1 647 4 st.u64 [%r274],%r426; cvt.s64.s32 %r476,%r290; shl.b64 %r37,%r476,2; st.u64 [%r274+8],%r37; ld.u64 %r478,[%frame+360]; add.u64 %r477,%r478,%r37; st.u64 [%frame+360],%r477; ld.u32 %r479,[%frame+352]; add.u32 %r41,%r479,1; st.u32 [%frame+352],%r41; setp.le.s32 %r480,%r41,7; @ %r480 bra $L31; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r485,[%value_in]; } setp.eq.u32 %r486,%r485,0; @ %r486 bra $L272; ld.u16 %r488,[%r425+16]; and.b16 %r487,%r488,64; cvt.s32.s16 %r403,%r487; bra $L33; $L31: add.u64 %r274,%r274,16; bra $L32; $L272: mov.u64 %r274,%r1312; $L32: .loc 1 648 8 add.u32 %r423,%r423,%r290; .loc 1 650 21 ld.u32 %r289,[%r36+4]; bra $L29; $L271: .loc 1 644 38 mov.u64 %r255,%r426; $L29: .loc 1 650 20 setp.eq.u32 %r489,%r289,0; @ %r489 bra $L34; .loc 1 653 6 add.u64 %r426,%r255,4; .loc 1 659 8 mov.u32 %r490,0; st.u32 [%frame+392],%r490; .loc 1 671 14 ld.u32 %r404,[%r255+4]; mov.u32 %r322,%r490; mov.u32 %r323,%r490; .loc 1 658 8 mov.u32 %r268,-1; .loc 1 657 9 mov.u32 %r267,%r490; .loc 1 655 9 mov.u32 %r265,%r490; $L35: .loc 1 671 18 add.u64 %r426,%r426,4; .loc 1 671 12 mov.u32 %r262,%r404; $L36: .loc 1 672 11 setp.eq.u32 %r491,%r262,99; @ %r491 bra $L37; setp.gt.u32 %r492,%r262,99; @ %r492 bra $L38; setp.eq.u32 %r493,%r262,46; @ %r493 bra $L39; setp.gt.u32 %r494,%r262,46; @ %r494 bra $L40; setp.eq.u32 %r495,%r262,42; @ %r495 bra $L41; setp.gt.u32 %r496,%r262,42; @ %r496 bra $L42; setp.eq.u32 %r497,%r262,32; @ %r497 bra $L43; setp.eq.u32 %r498,%r262,35; @ %r498 bra $L44; bra $L404; $L42: setp.eq.u32 %r499,%r262,43; @ %r499 bra $L46; setp.eq.u32 %r500,%r262,45; @ %r500 bra $L47; bra $L48; $L40: setp.eq.u32 %r501,%r262,71; @ %r501 bra $L49; setp.gt.u32 %r502,%r262,71; @ %r502 bra $L50; setp.gt.u32 %r503,%r262,57; @ %r503 bra $L51; setp.gt.u32 %r504,%r262,48; @ %r504 bra $L52; setp.eq.u32 %r505,%r262,48; @ %r505 bra $L53; mov.u32 %r262,47; bra $L48; $L51: setp.eq.u32 %r506,%r262,69; @ %r506 bra $L49; bra $L48; $L50: setp.eq.u32 %r507,%r262,76; @ %r507 bra $L54; setp.eq.u32 %r508,%r262,88; @ %r508 bra $L55; bra $L48; $L38: setp.eq.u32 %r509,%r262,111; @ %r509 bra $L56; setp.gt.u32 %r510,%r262,111; @ %r510 bra $L57; setp.eq.u32 %r511,%r262,105; @ %r511 bra $L58; setp.gt.u32 %r512,%r262,105; @ %r512 bra $L59; setp.eq.u32 %r513,%r262,104; @ %r513 bra $L60; @ %r511 bra $L48; setp.eq.u32 %r515,%r262,100; @ %r515 bra $L58; add.u32 %r516,%r262,-101; setp.gt.u32 %r517,%r516,2; @ %r517 bra $L273; bra $L49; $L59: setp.eq.u32 %r518,%r262,108; @ %r518 bra $L61; setp.eq.u32 %r519,%r262,110; @ %r519 bra $L62; bra $L48; $L57: setp.eq.u32 %r520,%r262,115; @ %r520 bra $L63; setp.gt.u32 %r521,%r262,115; @ %r521 bra $L64; setp.eq.u32 %r522,%r262,112; @ %r522 bra $L65; setp.eq.u32 %r523,%r262,113; @ %r523 bra $L66; bra $L48; $L64: setp.eq.u32 %r524,%r262,117; @ %r524 bra $L67; setp.ne.u32 %r525,%r262,120; @ %r525 bra $L48; setp.eq.u32 %r526,%r322,0; @ %r526 bra $L68; st.u32 [%frame+392],%r323; $L68: .loc 1 1291 10 cvta.const.u64 %r273,$LC5; bra $L69; $L43: .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 704 7 setp.ne.u32 %r527,%r323,0; selp.u32 %r322,%r322,1,%r527; selp.u32 %r323,%r323,32,%r527; bra $L35; $L44: .loc 1 708 10 or.b32 %r265,%r265,1; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 709 4 bra $L35; $L41: .loc 1 747 10 add.u64 %r330,%r427,4; ld.u32 %r267,[%r427]; .loc 1 751 7 setp.lt.s32 %r528,%r267,0; @ %r528 bra $L71; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 747 10 mov.u64 %r427,%r330; bra $L35; $L71: .loc 1 753 10 neg.s32 %r267,%r267; .loc 1 747 10 mov.u64 %r427,%r330; $L47: .loc 1 756 10 or.b32 %r265,%r265,4; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 757 4 bra $L35; $L46: .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 760 4 mov.u32 %r322,1; .loc 1 759 9 mov.u32 %r323,%r262; .loc 1 760 4 bra $L35; $L39: .loc 1 762 18 add.u64 %r306,%r426,4; .loc 1 762 12 ld.u32 %r262,[%r426]; .loc 1 762 7 setp.eq.u32 %r529,%r262,42; @ %r529 bra $L72; .loc 1 801 11 add.u32 %r530,%r262,-48; setp.le.u32 %r531,%r530,9; @ %r531 bra $L73; .loc 1 762 18 mov.u64 %r426,%r306; .loc 1 801 11 mov.u32 %r268,%r490; bra $L36; $L72: ld.u32 %r532,[%r427]; max.s32 %r268,%r532,-1; .loc 1 671 14 ld.u32 %r404,[%r426+4]; .loc 1 792 10 add.u64 %r427,%r427,4; .loc 1 762 18 mov.u64 %r426,%r306; .loc 1 798 5 bra $L35; $L73: mov.u64 %r333,%r306; .loc 1 800 6 mov.u32 %r209,%r490; $L75: .loc 1 802 12 shl.b32 %r534,%r209,2; add.u32 %r535,%r534,%r209; add.u32 %r536,%r535,%r535; .loc 1 802 16 add.u32 %r537,%r536,-48; add.u32 %r209,%r537,%r262; mov.u64 %r304,%r333; add.u64 %r426,%r333,4; mov.u64 %r333,%r426; .loc 1 803 8 ld.u32 %r262,[%r304]; .loc 1 801 11 add.u32 %r538,%r262,-48; setp.le.u32 %r539,%r538,9; @ %r539 bra $L75; .loc 1 805 9 max.s32 %r268,%r209,-1; .loc 1 806 4 bra $L36; $L53: .loc 1 813 10 or.b32 %r265,%r265,128; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 814 4 bra $L35; $L52: mov.u64 %r327,%r426; .loc 1 817 6 mov.u32 %r267,0; $L77: .loc 1 819 12 shl.b32 %r541,%r267,2; add.u32 %r542,%r541,%r267; add.u32 %r543,%r542,%r542; .loc 1 819 16 add.u32 %r544,%r543,-48; add.u32 %r267,%r544,%r262; mov.u64 %r140,%r327; add.u64 %r327,%r327,4; mov.u64 %r426,%r327; .loc 1 820 8 ld.u32 %r262,[%r140]; .loc 1 821 13 add.u32 %r545,%r262,-48; setp.le.u32 %r546,%r545,9; @ %r546 bra $L77; bra $L36; $L54: .loc 1 837 10 or.b32 %r265,%r265,8; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 838 4 bra $L35; $L60: .loc 1 847 11 or.b32 %r265,%r265,64; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 848 4 bra $L35; $L61: .loc 1 851 8 ld.u32 %r404,[%r426]; .loc 1 851 7 setp.ne.u32 %r547,%r404,108; @ %r547 bra $L78; .loc 1 853 11 or.b32 %r265,%r265,32; .loc 1 671 14 ld.u32 %r404,[%r426+4]; .loc 1 852 8 add.u64 %r426,%r426,4; bra $L35; $L78: .loc 1 856 11 or.b32 %r265,%r265,16; bra $L35; $L66: .loc 1 859 10 or.b32 %r265,%r265,32; .loc 1 762 14 ld.u32 %r404,[%r426]; .loc 1 860 4 bra $L35; $L37: setp.eq.u32 %r548,%r322,0; @ %r548 bra $L79; st.u32 [%frame+392],%r323; $L79: .loc 1 747 10 ld.u32 %r282,[%r427]; add.u64 %r427,%r427,4; .loc 1 903 30 and.b32 %r549,%r265,16; .loc 1 903 19 setp.ne.u32 %r550,%r549,0; @ %r550 bra $L80; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r282; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r552,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r553,%r552,-1; @ %r553 bra $L81; .loc 1 906 20 ld.u16 %r555,[%r425+16]; or.b16 %r554,%r555,64; st.u16 [%r425+16],%r554; .loc 1 1536 31 mov.u32 %r423,%r552; bra $L24; $L81: .loc 1 909 13 mov.u32 %r282,%r552; $L80: .loc 1 909 11 st.u32 [%frame],%r282; .loc 1 915 10 mov.u32 %r556,0; st.u32 [%frame+4],%r556; .loc 1 917 9 st.u32 [%frame+392],%r556; .loc 1 918 4 mov.u32 %r324,1; .loc 1 916 9 mov.u32 %r272,%r324; .loc 1 902 7 mov.u64 %r264,%frame; .loc 1 918 4 bra $L82; $L58: setp.eq.u32 %r558,%r322,0; @ %r558 bra $L83; st.u32 [%frame+392],%r323; $L83: .loc 1 921 13 and.b32 %r559,%r265,32; setp.eq.u32 %r560,%r559,0; @ %r560 bra $L84; add.u64 %r325,%r427,7; and.b64 %r363,%r325,-8; add.u64 %r427,%r363,8; ld.u64 %r59,[%r363]; mov.u64 %r270,%r59; bra $L85; $L84: and.b32 %r561,%r265,16; setp.eq.u32 %r562,%r561,0; @ %r562 bra $L86; add.u64 %r347,%r427,7; and.b64 %r335,%r347,-8; add.u64 %r427,%r335,8; ld.u64 %r59,[%r335]; mov.u64 %r270,%r59; bra $L85; $L86: .loc 1 747 10 ld.u32 %r414,[%r427]; add.u64 %r427,%r427,4; .loc 1 921 13 and.b32 %r563,%r265,64; setp.eq.u32 %r564,%r563,0; @ %r564 bra $L87; cvt.u16.u32 %r565,%r414; cvt.s64.s16 %r270,%r565; .loc 1 923 8 mov.u64 %r59,%r270; bra $L85; $L87: .loc 1 921 13 cvt.s64.s32 %r270,%r414; .loc 1 923 8 mov.u64 %r59,%r270; $L85: .loc 1 923 7 setp.ge.s64 %r568,%r59,0; @ %r568 bra $L88; .loc 1 929 12 neg.s64 %r270,%r270; mov.u32 %r194,45; .loc 1 932 9 mov.u32 %r271,1; bra $L89; $L49: setp.eq.u32 %r569,%r322,0; @ %r569 bra $L90; st.u32 [%frame+392],%r323; $L90: .loc 1 921 13 add.u64 %r570,%r427,7; and.b64 %r412,%r570,-8; add.u64 %r427,%r412,8; .loc 1 947 25 ld.f64 %r193,[%r412]; .loc 1 958 8 abs.f64 %r573,%r193; setp.leu.f64 %r574,%r573,0d7fefffffffffffff; @ %r574 bra $L93; .loc 1 959 8 setp.lt.f64 %r575,%r193,0d0000000000000000; @ %r575 bra $L94; .loc 1 704 8 ld.u32 %r384,[%frame+392]; bra $L95; $L93: .loc 1 969 7 setp.nan.f64 %r576,%r193,%r193; @ ! %r576 bra $L405; bra $L96; $L94: .loc 1 960 11 mov.u32 %r577,45; st.u32 [%frame+392],%r577; mov.u32 %r384,%r577; $L95: .loc 1 961 8 setp.le.u32 %r578,%r262,71; @ %r578 bra $L274; .loc 1 964 9 cvta.const.u64 %r264,$LC1; bra $L98; $L274: .loc 1 962 9 cvta.const.u64 %r264,$LC0; $L98: .loc 1 966 11 and.b32 %r266,%r265,-129; .loc 1 967 5 mov.u32 %r324,3; mov.u64 %r278,0; .loc 1 965 10 mov.u32 %r272,%r324; .loc 1 656 9 mov.u32 %r268,0; .loc 1 661 8 mov.u32 %r269,%r268; .loc 1 967 5 bra $L99; $L96: .loc 1 970 9 mov.b64 %r579,%r193; shr.u64 %r580,%r579,63; cvt.u32.u64 %r582,%r580; .loc 1 970 8 setp.ne.u32 %r583,%r582,0; @ %r583 bra $L100; .loc 1 704 8 ld.u32 %r384,[%frame+392]; bra $L101; $L100: .loc 1 971 11 mov.u32 %r584,45; st.u32 [%frame+392],%r584; mov.u32 %r384,%r584; $L101: .loc 1 972 8 setp.le.u32 %r585,%r262,71; @ %r585 bra $L275; .loc 1 975 9 cvta.const.u64 %r264,$LC3; bra $L102; $L275: .loc 1 973 9 cvta.const.u64 %r264,$LC2; $L102: .loc 1 977 11 and.b32 %r266,%r265,-129; .loc 1 978 5 mov.u32 %r324,3; mov.u64 %r278,0; .loc 1 976 10 mov.u32 %r272,%r324; .loc 1 656 9 mov.u32 %r268,0; .loc 1 661 8 mov.u32 %r269,%r268; .loc 1 978 5 bra $L99; $L405: .loc 1 1040 10 or.b32 %r266,%r265,256; .loc 1 1034 7 setp.eq.u32 %r586,%r268,-1; @ %r586 bra $L276; .loc 1 1036 33 and.b32 %r587,%r262,-33; set.u32.eq.u32 %r589,%r587,71; neg.s32 %r590,%r589; mov.u32 %r588,%r590; .loc 1 1036 42 set.u32.eq.u32 %r592,%r268,0; neg.s32 %r593,%r592; mov.u32 %r591,%r593; cvt.u16.u8 %r1362,%r588; mov.u16 %r595,%r1362; cvt.u16.u8 %r1362,%r591; mov.u16 %r596,%r1362; and.b16 %r594,%r595,%r596; cvt.u32.u16 %r597,%r594; cvt.u16.u8 %r598,%r597; setp.ne.u16 %r599,%r598,0; @ %r599 bra $L104; bra $L103; $L276: .loc 1 1035 10 mov.u32 %r268,6; $L103: .loc 1 1042 9 mov.u32 %r609,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r193; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r268; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r266; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1355; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1354; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r262; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1353; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r609; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r613,[%value_in]; } mov.u64 %r264,%r613; .loc 1 1049 7 setp.ne.u64 %r614,%frame,%r264; @ %r614 bra $L277; .loc 1 1049 26 ld.u32 %r1321,[%frame+376]; .loc 1 1049 18 setp.le.s32 %r615,%r1321,40; @ %r615 bra $L278; bra $L270; $L292: .loc 1 1037 10 mov.u32 %r268,%r1283; $L270: .loc 1 1051 20 cvt.s64.s32 %r618,%r1321; shl.b64 %r619,%r618,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r619; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r620,[%value_in]; } mov.u64 %r278,%r620; .loc 1 1050 8 setp.ne.u64 %r621,%r620,0; @ %r621 bra $L106; .loc 1 1054 20 ld.u16 %r623,[%r425+16]; or.b16 %r622,%r623,64; st.u16 [%r425+16],%r622; .loc 1 1536 31 mov.u32 %r423,-1; bra $L24; $L106: .loc 1 1057 10 ld.u32 %r634,[%frame+376]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r193; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r268; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r266; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1355; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1354; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r262; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1353; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%r278; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r634; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r638,[%value_in]; } mov.u64 %r264,%r638; bra $L105; $L277: mov.u64 %r278,0; bra $L105; $L278: mov.u64 %r278,0; $L105: .loc 1 1082 15 ld.u32 %r1322,[%frame+380]; mov.u32 %r269,%r1322; .loc 1 1061 25 and.b32 %r639,%r262,-33; .loc 1 1061 7 setp.ne.u32 %r640,%r639,71; @ %r640 bra $L107; ld.u32 %r1321,[%frame+376]; $L266: .loc 1 1062 14 mov.u32 %r269,%r1322; .loc 1 1062 20 set.u32.gt.s32 %r642,%r1322,%r268; neg.s32 %r643,%r642; mov.u32 %r641,%r643; .loc 1 1062 8 set.u32.lt.s32 %r645,%r1322,-3; neg.s32 %r646,%r645; mov.u32 %r644,%r646; .loc 1 1062 20 cvt.u16.u8 %r1362,%r641; mov.u16 %r648,%r1362; cvt.u16.u8 %r1362,%r644; mov.u16 %r649,%r1362; or.b16 %r647,%r648,%r649; cvt.u32.u16 %r650,%r647; cvt.u16.u8 %r651,%r650; setp.eq.u16 %r652,%r651,0; @ %r652 bra $L108; .loc 1 1063 9 add.u32 %r262,%r262,-2; bra $L109; $L107: .loc 1 1071 7 setp.eq.u32 %r653,%r262,102; @ %r653 bra $L110; ld.u32 %r1321,[%frame+376]; $L109: .loc 1 1072 5 add.u32 %r74,%r1322,-1; st.u32 [%frame+380],%r74; .loc 1 1674 7 st.u32 [%frame+316],%r262; .loc 1 1675 5 setp.ge.s32 %r654,%r74,0; @ %r654 bra $L279; .loc 1 1676 7 mov.u32 %r655,1; sub.u32 %r74,%r655,%r1322; .loc 1 1677 8 mov.u32 %r298,45; bra $L111; $L279: .loc 1 1680 8 mov.u32 %r298,43; $L111: st.u32 [%frame+320],%r298; .loc 1 1682 5 setp.le.s32 %r656,%r74,9; @ %r656 bra $L112; .loc 1 1681 4 mov.u64 %r317,%r1347; $L113: mov.u64 %r164,%r317; .loc 1 1684 9 add.u64 %r317,%r164,-4; .loc 1 1684 11 rem.s32 %r658,%r74,10; add.u32 %r659,%r658,48; .loc 1 1684 9 st.u32 [%r317],%r659; mov.u32 %r67,%r74; .loc 1 1685 17 div.s32 %r74,%r74,10; .loc 1 1685 24 setp.gt.s32 %r662,%r67,99; @ %r662 bra $L113; .loc 1 1686 8 add.u64 %r314,%r164,-8; .loc 1 1686 10 add.u32 %r381,%r74,48; .loc 1 1686 8 st.u32 [%r317+-4],%r381; .loc 1 1687 12 setp.ge.u64 %r665,%r314,%r1347; @ %r665 bra $L280; mov.u64 %r344,%r1351; $L116: .loc 1 1687 43 add.u64 %r314,%r314,4; .loc 1 1687 39 st.u32 [%r344],%r381; .loc 1 1687 12 add.u64 %r344,%r344,4; setp.lt.u64 %r669,%r314,%r1347; @ %r669 bra $L115; .loc 1 1687 36 sub.u64 %r675,%r1352,%r164; and.b64 %r677,%r675,-4; add.u64 %r678,%r677,4; add.u64 %r679,%r1351,%r678; .loc 1 1694 12 sub.u64 %r681,%r679,%r1347; shr.s64 %r683,%r681,2; cvt.u32.u64 %r42,%r683; bra $L114; $L115: .loc 1 1687 41 ld.u32 %r381,[%r314]; bra $L116; $L112: .loc 1 1691 9 mov.u32 %r684,48; st.u32 [%frame+324],%r684; .loc 1 1692 10 add.u32 %r685,%r74,48; .loc 1 1692 8 st.u32 [%frame+328],%r685; mov.u32 %r42,4; bra $L114; $L280: .loc 1 1687 12 mov.u32 %r42,2; $L114: .loc 1 1074 10 add.u32 %r272,%r1321,%r42; .loc 1 1075 8 setp.gt.s32 %r686,%r1321,1; @ %r686 bra $L117; and.b32 %r269,%r265,1; .loc 1 1075 18 setp.ne.u32 %r687,%r269,0; @ %r687 bra $L117; .loc 1 1424 10 max.s32 %r324,%r272,0; bra $L118; $L117: .loc 1 1076 6 add.u32 %r272,%r272,1; .loc 1 1424 10 max.s32 %r324,%r272,0; .loc 1 661 8 mov.u32 %r269,0; bra $L118; $L110: and.b32 %r688,%r265,1; or.b32 %r409,%r688,%r268; .loc 1 1082 9 setp.gt.s32 %r689,%r269,0; @ %r689 bra $L119; bra $L406; $L108: .loc 1 1090 15 setp.ge.s32 %r690,%r269,%r1321; @ %r690 bra $L121; bra $L407; $L119: .loc 1 1084 16 setp.eq.u32 %r691,%r409,0; @ %r691 bra $L281; .loc 1 1085 21 add.u32 %r692,%r268,1; .loc 1 1085 13 add.u32 %r272,%r692,%r269; mov.u32 %r324,%r272; bra $L118; $L406: .loc 1 1087 20 setp.eq.u32 %r693,%r409,0; @ %r693 bra $L282; .loc 1 1089 10 add.u32 %r272,%r268,2; mov.u32 %r324,%r272; bra $L118; $L121: .loc 1 1092 9 and.b32 %r694,%r265,1; setp.ne.u32 %r695,%r694,0; @ %r695 bra $L124; .loc 1 1424 10 max.s32 %r324,%r269,0; mov.u32 %r272,%r269; .loc 1 1065 9 mov.u32 %r262,103; bra $L118; $L124: .loc 1 1093 7 add.u32 %r272,%r269,1; .loc 1 1424 10 max.s32 %r324,%r272,0; .loc 1 1065 9 mov.u32 %r262,103; bra $L118; $L407: .loc 1 1096 9 setp.gt.s32 %r696,%r269,0; @ %r696 bra $L283; mov.u32 %r697,2; sub.u32 %r280,%r697,%r269; bra $L125; $L283: mov.u32 %r280,1; $L125: .loc 1 1095 11 add.u32 %r272,%r280,%r1321; .loc 1 1424 10 max.s32 %r324,%r272,0; .loc 1 1065 9 mov.u32 %r262,103; bra $L118; $L281: mov.u32 %r324,%r269; mov.u32 %r272,%r269; bra $L118; $L282: mov.u32 %r324,1; .loc 1 1089 10 mov.u32 %r272,%r324; $L118: .loc 1 1117 8 ld.u32 %r268,[%frame+384]; .loc 1 1117 7 setp.eq.u32 %r698,%r268,0; @ %r698 bra $L126; .loc 1 1118 10 mov.u32 %r699,45; st.u32 [%frame+392],%r699; .loc 1 656 9 mov.u32 %r268,0; bra $L127; $L62: setp.eq.u32 %r700,%r322,0; @ %r700 bra $L128; st.u32 [%frame+392],%r323; $L128: .loc 1 921 13 add.u64 %r701,%r427,7; and.b64 %r417,%r701,-8; add.u64 %r427,%r417,8; .loc 1 1132 14 and.b32 %r702,%r265,32; .loc 1 1132 7 setp.eq.u32 %r703,%r702,0; @ %r703 bra $L129; .loc 1 1133 34 ld.u64 %r704,[%r417]; cvt.s64.s32 %r705,%r423; st.u64 [%r704],%r705; bra $L28; $L129: .loc 1 1136 14 and.b32 %r706,%r265,16; .loc 1 1136 7 setp.eq.u32 %r707,%r706,0; @ %r707 bra $L131; .loc 1 1137 34 ld.u64 %r708,[%r417]; cvt.s64.s32 %r709,%r423; st.u64 [%r708],%r709; bra $L28; $L131: .loc 1 1138 19 and.b32 %r710,%r265,64; .loc 1 1138 12 setp.eq.u32 %r711,%r710,0; @ %r711 bra $L132; .loc 1 1139 35 ld.u64 %r712,[%r417]; st.u16 [%r712],%r423; bra $L28; $L132: .loc 1 1145 33 ld.u64 %r713,[%r417]; st.u32 [%r713],%r423; bra $L28; $L56: .loc 1 1148 13 and.b32 %r714,%r265,32; setp.eq.u32 %r715,%r714,0; @ %r715 bra $L133; add.u64 %r338,%r427,7; and.b64 %r340,%r338,-8; add.u64 %r427,%r340,8; ld.u64 %r270,[%r340]; .loc 1 1149 9 mov.u32 %r271,0; bra $L134; $L133: .loc 1 1148 13 and.b32 %r716,%r265,16; setp.eq.u32 %r717,%r716,0; @ %r717 bra $L135; add.u64 %r352,%r427,7; and.b64 %r302,%r352,-8; add.u64 %r427,%r302,8; ld.u64 %r270,[%r302]; .loc 1 1149 9 mov.u32 %r271,%r714; bra $L134; $L135: .loc 1 747 10 ld.u32 %r418,[%r427]; add.u64 %r427,%r427,4; .loc 1 1148 13 and.b32 %r718,%r265,64; setp.eq.u32 %r719,%r718,0; @ %r719 bra $L136; cvt.u16.u32 %r720,%r418; cvt.u64.u16 %r270,%r720; .loc 1 1149 9 mov.u32 %r271,%r716; bra $L134; $L136: .loc 1 1148 13 cvt.u64.u32 %r270,%r418; .loc 1 1149 9 mov.u32 %r271,%r718; bra $L134; $L65: .loc 1 1163 25 add.u64 %r364,%r427,7; and.b64 %r353,%r364,-8; add.u64 %r427,%r353,8; .loc 1 1163 11 ld.u64 %r270,[%r353]; .loc 1 1166 10 or.b32 %r265,%r265,2; .loc 1 1167 10 mov.u32 %r721,48; st.u32 [%frame+368],%r721; .loc 1 1168 10 mov.u32 %r722,120; st.u32 [%frame+372],%r722; .loc 1 1165 10 cvta.const.u64 %r273,$LC5; .loc 1 1164 9 mov.u32 %r271,2; .loc 1 1168 15 mov.u32 %r262,%r722; .loc 1 1169 4 bra $L134; $L63: .loc 1 1174 7 add.u64 %r341,%r427,7; and.b64 %r309,%r341,-8; add.u64 %r427,%r309,8; ld.u64 %r264,[%r309]; .loc 1 1178 9 mov.u32 %r723,0; st.u32 [%frame+392],%r723; .loc 1 1184 7 setp.ne.u64 %r724,%r264,0; @ %r724 bra $L137; .loc 1 1186 39 min.u32 %r272,%r268,6; mov.u32 %r324,%r272; .loc 1 1185 8 cvta.const.u64 %r264,$LC6; bra $L82; $L137: .loc 1 1242 30 and.b32 %r269,%r265,16; .loc 1 1242 19 setp.ne.u32 %r725,%r269,0; @ %r725 bra $L138; .loc 1 1246 8 setp.eq.u32 %r726,%r268,-1; @ %r726 bra $L139; .loc 1 1247 16 cvt.s64.s32 %r279,%r268; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r269; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r279; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r730,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r731,%r730,0; @ %r731 bra $L140; .loc 1 1248 21 sub.u64 %r279,%r730,%r264; bra $L140; $L139: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r733,[%value_in]; } mov.u64 %r279,%r733; $L140: .loc 1 1251 8 setp.le.u64 %r734,%r279,39; @ %r734 bra $L141; .loc 1 1252 64 add.u64 %r737,%r279,1; .loc 1 1252 39 shl.b64 %r738,%r737,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r738; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r739,[%value_in]; } mov.u64 %r294,%r739; .loc 1 1252 12 setp.ne.u64 %r740,%r739,0; @ %r740 bra $L284; .loc 1 1254 18 ld.u16 %r742,[%r425+16]; or.b16 %r741,%r742,64; st.u16 [%r425+16],%r741; .loc 1 1536 31 mov.u32 %r423,-1; bra $L24; $L141: .loc 1 1260 25 setp.eq.u64 %r1315,%r279,0; @ %r1315 bra $L285; mov.u64 %r278,0; .loc 1 1259 9 mov.u64 %r294,%frame; bra $L142; $L284: mov.u64 %r278,%r294; setp.eq.u64 %r1315,%r279,0; $L142: mov.u64 %r339,%r294; mov.u64 %r342,0; $L144: .loc 1 1261 20 add.u64 %r744,%r264,%r342; ld.s8 %r745,[%r744]; st.u32 [%r339],%r745; .loc 1 1260 25 add.u64 %r342,%r342,1; add.u64 %r339,%r339,4; setp.gt.u64 %r746,%r279,%r342; @ %r746 bra $L144; .loc 1 1260 35 @ %r1315 bra $L145; cvt.u32.u64 %r747,%r279; bra $L146; $L145: mov.u32 %r747,1; $L146: mov.u32 %r272,%r747; .loc 1 1260 25 selp.u64 %r751,1,%r279,%r1315; .loc 1 1262 7 shl.b64 %r753,%r751,2; add.u64 %r372,%r294,%r753; mov.u32 %r324,%r272; mov.u64 %r264,%r294; bra $L143; $L285: .loc 1 1260 25 mov.u32 %r324,%r269; .loc 1 1260 15 mov.u32 %r272,%r269; .loc 1 1260 25 mov.u64 %r372,%frame; mov.u64 %r278,%r279; .loc 1 1259 9 mov.u64 %r264,%frame; $L143: .loc 1 1262 14 mov.u32 %r754,0; st.u32 [%r372],%r754; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 656 9 mov.u32 %r268,%r269; .loc 1 1242 42 mov.u32 %r266,%r265; bra $L99; $L138: .loc 1 1265 12 setp.eq.u32 %r755,%r268,-1; @ %r755 bra $L149; .loc 1 1271 18 cvt.s64.s32 %r759,%r268; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r723; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r759; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r760,[%value_in]; } mov.u64 %r278,%r760; .loc 1 1273 8 setp.ne.u64 %r761,%r278,0; @ %r761 bra $L150; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; mov.u32 %r324,%r268; mov.u32 %r272,%r268; mov.u32 %r266,%r265; .loc 1 656 9 mov.u32 %r268,%r723; .loc 1 661 8 mov.u32 %r269,%r268; bra $L99; $L150: .loc 1 1274 15 sub.u64 %r762,%r278,%r264; shr.s64 %r764,%r762,2; .loc 1 1274 11 cvt.u32.u64 %r765,%r764; min.s32 %r272,%r765,%r268; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 1424 10 max.s32 %r324,%r272,0; mov.u32 %r266,%r265; mov.u64 %r278,0; .loc 1 656 9 mov.u32 %r268,%r723; .loc 1 661 8 mov.u32 %r269,%r268; bra $L99; $L149: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r264; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r767,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r272,%r767; .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 1424 10 max.s32 %r324,%r272,0; mov.u32 %r266,%r265; mov.u64 %r278,0; .loc 1 656 9 mov.u32 %r268,%r723; .loc 1 661 8 mov.u32 %r269,%r268; bra $L99; $L67: .loc 1 1284 13 and.b32 %r768,%r265,32; setp.eq.u32 %r769,%r768,0; @ %r769 bra $L151; add.u64 %r354,%r427,7; and.b64 %r328,%r354,-8; add.u64 %r427,%r328,8; ld.u64 %r270,[%r328]; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L151: .loc 1 1284 13 and.b32 %r770,%r265,16; setp.eq.u32 %r771,%r770,0; @ %r771 bra $L152; add.u64 %r369,%r427,7; and.b64 %r355,%r369,-8; add.u64 %r427,%r355,8; ld.u64 %r270,[%r355]; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L152: .loc 1 747 10 ld.u32 %r419,[%r427]; add.u64 %r427,%r427,4; .loc 1 1284 13 and.b32 %r772,%r265,64; setp.eq.u32 %r773,%r772,0; @ %r773 bra $L153; cvt.u16.u32 %r774,%r419; cvt.u64.u16 %r270,%r774; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L153: .loc 1 1284 13 cvt.u64.u32 %r270,%r419; .loc 1 1285 9 mov.u32 %r271,1; bra $L134; $L55: setp.eq.u32 %r775,%r322,0; @ %r775 bra $L154; st.u32 [%frame+392],%r323; $L154: .loc 1 1288 10 cvta.const.u64 %r273,$LC4; $L69: .loc 1 1292 17 and.b32 %r776,%r265,32; setp.eq.u32 %r777,%r776,0; @ %r777 bra $L155; add.u64 %r231,%r427,7; and.b64 %r332,%r231,-8; add.u64 %r427,%r332,8; ld.u64 %r270,[%r332]; bra $L156; $L155: and.b32 %r778,%r265,16; setp.eq.u32 %r779,%r778,0; @ %r779 bra $L157; add.u64 %r362,%r427,7; and.b64 %r334,%r362,-8; add.u64 %r427,%r334,8; ld.u64 %r270,[%r334]; bra $L156; $L157: .loc 1 747 10 ld.u32 %r413,[%r427]; add.u64 %r427,%r427,4; .loc 1 1292 17 and.b32 %r780,%r265,64; setp.eq.u32 %r781,%r780,0; @ %r781 bra $L158; cvt.u16.u32 %r782,%r413; cvt.u64.u16 %r270,%r782; bra $L156; $L158: cvt.u64.u32 %r270,%r413; $L156: .loc 1 1295 14 and.b32 %r783,%r265,1; .loc 1 1295 7 setp.eq.u32 %r784,%r783,0; @ %r784 bra $L286; .loc 1 1295 20 setp.eq.u64 %r785,%r270,0; @ %r785 bra $L287; .loc 1 1296 11 mov.u32 %r786,48; st.u32 [%frame+368],%r786; .loc 1 1297 11 st.u32 [%frame+372],%r262; .loc 1 1298 11 or.b32 %r265,%r265,2; .loc 1 1293 9 mov.u32 %r271,2; bra $L134; $L286: mov.u32 %r271,2; bra $L134; $L287: mov.u32 %r271,2; $L134: .loc 1 1305 1 mov.u32 %r194,0; $L89: .loc 1 930 10 st.u32 [%frame+392],%r194; .loc 1 1311 14 setp.eq.u32 %r787,%r268,-1; @ %r787 bra $L159; .loc 1 1312 11 and.b32 %r266,%r265,-129; .loc 1 1320 15 set.u32.ne.u64 %r789,%r270,0; neg.s32 %r790,%r789; mov.u32 %r788,%r790; .loc 1 1320 28 set.u32.ne.u32 %r792,%r268,0; neg.s32 %r793,%r792; mov.u32 %r791,%r793; .loc 1 1320 20 cvt.u16.u8 %r1362,%r788; mov.u16 %r795,%r1362; cvt.u16.u8 %r1362,%r791; mov.u16 %r796,%r1362; or.b16 %r794,%r795,%r796; cvt.u32.u16 %r797,%r794; .loc 1 1320 7 cvt.u16.u8 %r798,%r797; setp.eq.u16 %r799,%r798,0; @ %r799 bra $L160; .loc 1 1312 11 mov.u32 %r265,%r266; $L159: setp.eq.u32 %r800,%r271,1; @ %r800 bra $L161; setp.eq.u32 %r801,%r271,2; @ %r801 bra $L288; mov.u64 %r264,%r1312; $L163: mov.u64 %r158,%r264; .loc 1 1329 13 add.u64 %r264,%r264,-4; .loc 1 1329 15 cvt.u32.u64 %r802,%r270; and.b32 %r803,%r802,7; add.u32 %r123,%r803,48; .loc 1 1329 13 st.u32 [%r264],%r123; .loc 1 1330 14 shr.u64 %r270,%r270,3; .loc 1 1331 15 setp.ne.u64 %r804,%r270,0; @ %r804 bra $L163; .loc 1 1333 22 set.u32.ne.u32 %r806,%r123,48; neg.s32 %r807,%r806; mov.u32 %r805,%r807; .loc 1 1333 9 mov.u32 %r808,%r265; cvt.u16.u8 %r1362,%r808; mov.u16 %r810,%r1362; and.b16 %r809,%r810,1; cvt.u32.u16 %r811,%r809; .loc 1 1333 22 cvt.u16.u8 %r1362,%r805; mov.u16 %r813,%r1362; cvt.u16.u8 %r1362,%r811; mov.u16 %r814,%r1362; and.b16 %r812,%r813,%r814; cvt.u32.u16 %r815,%r812; cvt.u16.u8 %r816,%r815; setp.ne.u16 %r817,%r816,0; @ %r817 bra $L164; .loc 1 1395 21 sub.u64 %r819,%r1312,%r264; shr.s64 %r821,%r819,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r821; mov.u32 %r266,%r265; bra $L165; $L164: .loc 1 1334 13 add.u64 %r299,%r158,-8; mov.u32 %r822,48; st.u32 [%r264+-4],%r822; .loc 1 1395 21 sub.u64 %r824,%r1312,%r299; shr.s64 %r826,%r824,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r826; mov.u32 %r266,%r265; .loc 1 1334 13 mov.u64 %r264,%r299; bra $L165; $L293: .loc 1 1312 11 mov.u32 %r265,%r266; $L161: .loc 1 1339 9 setp.gt.u64 %r827,%r270,9; @ %r827 bra $L289; .loc 1 1340 15 cvt.u32.u64 %r828,%r270; add.u32 %r829,%r828,48; .loc 1 1340 13 st.u32 [%frame+156],%r829; .loc 1 1341 7 mov.u32 %r266,%r265; mov.u32 %r272,1; .loc 1 1340 13 add.u64 %r264,%frame,156; .loc 1 1341 7 bra $L165; $L289: .loc 1 1319 7 mov.u64 %r264,%r1312; $L166: .loc 1 1347 14 add.u64 %r264,%r264,-4; .loc 1 1347 16 rem.u64 %r831,%r270,10; cvt.u32.u64 %r832,%r831; add.u32 %r833,%r832,48; .loc 1 1347 14 st.u32 [%r264],%r833; mov.u64 %r153,%r270; .loc 1 1366 15 div.u64 %r270,%r270,10; .loc 1 1367 22 setp.gt.u64 %r836,%r153,9; @ %r836 bra $L166; .loc 1 1395 21 sub.u64 %r838,%r1312,%r264; shr.s64 %r840,%r838,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r840; mov.u32 %r266,%r265; bra $L165; $L288: mov.u64 %r264,%r1312; $L162: .loc 1 1372 13 add.u64 %r264,%r264,-4; .loc 1 1372 28 and.b64 %r841,%r270,15; .loc 1 1372 20 shl.b64 %r842,%r841,2; add.u64 %r843,%r273,%r842; .loc 1 1372 13 ld.u32 %r844,[%r843]; st.u32 [%r264],%r844; .loc 1 1373 14 shr.u64 %r270,%r270,4; .loc 1 1374 15 setp.ne.u64 %r845,%r270,0; @ %r845 bra $L162; .loc 1 1395 21 sub.u64 %r847,%r1312,%r264; shr.s64 %r849,%r847,2; .loc 1 1395 9 cvt.u32.u64 %r272,%r849; mov.u32 %r266,%r265; bra $L165; $L160: .loc 1 1392 32 setp.ne.u32 %r850,%r271,0; @ %r850 bra $L290; .loc 1 1392 55 and.b32 %r272,%r265,1; .loc 1 1392 45 setp.eq.u32 %r851,%r272,0; @ %r851 bra $L291; .loc 1 1393 32 mov.u32 %r852,48; st.u32 [%frame+156],%r852; mov.u32 %r268,%r271; add.u64 %r264,%frame,156; bra $L165; $L290: mov.u32 %r268,0; mov.u32 %r272,%r268; .loc 1 1319 7 mov.u64 %r264,%r1312; bra $L165; $L291: mov.u32 %r268,%r271; mov.u64 %r264,%r1312; $L165: .loc 1 1425 7 ld.u32 %r384,[%frame+392]; .loc 1 1424 10 max.s32 %r324,%r268,%r272; mov.u64 %r278,0; .loc 1 661 8 mov.u32 %r269,0; bra $L99; $L404: setp.eq.u32 %r853,%r322,0; @ %r853 bra $L167; $L268: st.u32 [%frame+392],%r323; $L167: .loc 1 1399 7 setp.eq.u32 %r854,%r262,0; @ %r854 bra $L34; $L269: .loc 1 1403 8 st.u32 [%frame],%r262; .loc 1 1405 9 mov.u32 %r855,0; st.u32 [%frame+392],%r855; .loc 1 1406 4 mov.u32 %r324,1; .loc 1 1404 9 mov.u32 %r272,%r324; .loc 1 1402 7 mov.u64 %r264,%frame; .loc 1 1406 4 bra $L82; $L126: .loc 1 1425 7 ld.u32 %r384,[%frame+392]; $L99: .loc 1 1425 6 setp.eq.u32 %r856,%r384,0; @ %r856 bra $L168; $L127: .loc 1 1426 10 add.u32 %r324,%r324,1; $L168: .loc 1 1427 13 and.b32 %r136,%r266,2; .loc 1 1427 6 setp.eq.u32 %r1313,%r136,0; @ %r1313 bra $L169; .loc 1 1428 10 add.u32 %r324,%r324,2; $L169: .loc 1 1431 14 and.b32 %r137,%r266,132; .loc 1 1432 4 ld.u64 %r386,[%frame+360]; .loc 1 1431 6 setp.ne.u32 %r858,%r137,0; @ %r858 bra $L170; .loc 1 1432 4 sub.u32 %r305,%r267,%r324; setp.le.s32 %r859,%r305,0; @ %r859 bra $L170; ld.u32 %r385,[%frame+352]; setp.le.s32 %r860,%r305,16; @ ! %r860 bra $L408; cvta.const.u64 %r1314,blanks$1; bra $L171; $L408: cvta.const.u64 %r1314,blanks$1; $L175: st.u64 [%r274],%r1314; mov.u64 %r862,64; st.u64 [%r274+8],%r862; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r385,%r385,1; st.u32 [%frame+352],%r385; setp.gt.s32 %r863,%r385,7; @ %r863 bra $L172; add.u64 %r274,%r274,16; bra $L173; $L172: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r868,[%value_in]; } setp.ne.u32 %r869,%r868,0; @ %r869 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r385,[%frame+352]; mov.u64 %r274,%r1312; $L173: add.u32 %r305,%r305,-16; setp.gt.s32 %r870,%r305,16; @ %r870 bra $L175; $L171: st.u64 [%r274],%r1314; cvt.s64.s32 %r872,%r305; shl.b64 %r141,%r872,2; st.u64 [%r274+8],%r141; add.u64 %r386,%r386,%r141; st.u64 [%frame+360],%r386; add.u32 %r142,%r385,1; st.u32 [%frame+352],%r142; setp.gt.s32 %r873,%r142,7; @ %r873 bra $L176; add.u64 %r274,%r274,16; bra $L170; $L176: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r878,[%value_in]; } setp.ne.u32 %r879,%r878,0; @ %r879 bra $L174; .loc 1 1436 4 ld.u64 %r386,[%frame+360]; .loc 1 1432 4 mov.u64 %r274,%r1312; $L170: .loc 1 1435 6 ld.u32 %r880,[%frame+392]; setp.eq.u32 %r881,%r880,0; @ %r881 bra $L177; .loc 1 1436 4 st.u64 [%r274],%r1350; mov.u64 %r883,4; st.u64 [%r274+8],%r883; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r884,[%frame+352]; add.u32 %r147,%r884,1; st.u32 [%frame+352],%r147; setp.gt.s32 %r885,%r147,7; @ %r885 bra $L178; add.u64 %r274,%r274,16; bra $L177; $L178: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r890,[%value_in]; } setp.ne.u32 %r891,%r890,0; @ %r891 bra $L174; .loc 1 1438 4 ld.u64 %r386,[%frame+360]; .loc 1 1436 4 mov.u64 %r274,%r1312; $L177: .loc 1 1437 6 @ %r1313 bra $L179; .loc 1 1438 4 st.u64 [%r274],%r1349; mov.u64 %r894,8; st.u64 [%r274+8],%r894; add.u64 %r386,%r386,8; st.u64 [%frame+360],%r386; ld.u32 %r895,[%frame+352]; add.u32 %r150,%r895,1; st.u32 [%frame+352],%r150; setp.gt.s32 %r896,%r150,7; @ %r896 bra $L180; add.u64 %r274,%r274,16; bra $L179; $L180: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r901,[%value_in]; } setp.ne.u32 %r902,%r901,0; @ %r902 bra $L174; .loc 1 1442 4 ld.u64 %r386,[%frame+360]; .loc 1 1438 4 mov.u64 %r274,%r1312; $L179: .loc 1 1441 6 setp.ne.u32 %r903,%r137,128; @ %r903 bra $L181; .loc 1 1442 4 sub.u32 %r143,%r267,%r324; setp.le.s32 %r904,%r143,0; @ %r904 bra $L181; ld.u32 %r387,[%frame+352]; setp.le.s32 %r905,%r143,16; @ ! %r905 bra $L409; cvta.const.u64 %r1311,zeroes$0; bra $L182; $L409: cvta.const.u64 %r1311,zeroes$0; $L185: st.u64 [%r274],%r1311; mov.u64 %r907,64; st.u64 [%r274+8],%r907; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r387,%r387,1; st.u32 [%frame+352],%r387; setp.gt.s32 %r908,%r387,7; @ %r908 bra $L183; add.u64 %r274,%r274,16; bra $L184; $L183: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r913,[%value_in]; } setp.ne.u32 %r914,%r913,0; @ %r914 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r387,[%frame+352]; mov.u64 %r274,%r1312; $L184: add.u32 %r143,%r143,-16; setp.gt.s32 %r915,%r143,16; @ %r915 bra $L185; $L182: st.u64 [%r274],%r1311; cvt.s64.s32 %r917,%r143; shl.b64 %r154,%r917,2; st.u64 [%r274+8],%r154; add.u64 %r386,%r386,%r154; st.u64 [%frame+360],%r386; add.u32 %r155,%r387,1; st.u32 [%frame+352],%r155; setp.gt.s32 %r918,%r155,7; @ %r918 bra $L186; add.u64 %r274,%r274,16; bra $L181; $L186: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r923,[%value_in]; } setp.ne.u32 %r924,%r923,0; @ %r924 bra $L174; .loc 1 1445 3 ld.u64 %r386,[%frame+360]; .loc 1 1442 4 mov.u64 %r274,%r1312; $L181: .loc 1 1445 3 sub.u32 %r160,%r268,%r272; setp.le.s32 %r925,%r160,0; @ %r925 bra $L187; ld.u32 %r388,[%frame+352]; setp.le.s32 %r926,%r160,16; @ ! %r926 bra $L410; cvta.const.u64 %r1311,zeroes$0; bra $L188; $L410: cvta.const.u64 %r1311,zeroes$0; $L191: st.u64 [%r274],%r1311; mov.u64 %r928,64; st.u64 [%r274+8],%r928; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r388,%r388,1; st.u32 [%frame+352],%r388; setp.gt.s32 %r929,%r388,7; @ %r929 bra $L189; add.u64 %r274,%r274,16; bra $L190; $L189: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r934,[%value_in]; } setp.ne.u32 %r935,%r934,0; @ %r935 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r388,[%frame+352]; mov.u64 %r274,%r1312; $L190: add.u32 %r160,%r160,-16; setp.gt.s32 %r936,%r160,16; @ %r936 bra $L191; $L188: st.u64 [%r274],%r1311; cvt.s64.s32 %r938,%r160; shl.b64 %r159,%r938,2; st.u64 [%r274+8],%r159; add.u64 %r386,%r386,%r159; st.u64 [%frame+360],%r386; add.u32 %r161,%r388,1; st.u32 [%frame+352],%r161; setp.gt.s32 %r939,%r161,7; @ %r939 bra $L192; add.u64 %r274,%r274,16; bra $L187; $L192: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r944,[%value_in]; } setp.ne.u32 %r945,%r944,0; @ %r945 bra $L174; .loc 1 1450 4 ld.u64 %r386,[%frame+360]; .loc 1 1445 3 mov.u64 %r274,%r1312; $L187: .loc 1 1449 14 and.b32 %r946,%r266,256; .loc 1 1449 6 setp.ne.u32 %r947,%r946,0; @ %r947 bra $L193; .loc 1 1450 4 st.u64 [%r274],%r264; cvt.s64.s32 %r948,%r272; shl.b64 %r165,%r948,2; st.u64 [%r274+8],%r165; add.u64 %r386,%r386,%r165; st.u64 [%frame+360],%r386; ld.u32 %r949,[%frame+352]; add.u32 %r167,%r949,1; st.u32 [%frame+352],%r167; setp.gt.s32 %r950,%r167,7; @ %r950 bra $L194; add.u64 %r274,%r274,16; bra $L195; $L194: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r955,[%value_in]; } setp.ne.u32 %r956,%r955,0; @ %r956 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1450 4 mov.u64 %r274,%r1312; bra $L195; $L193: .loc 1 1452 7 setp.le.u32 %r957,%r262,101; @ %r957 bra $L196; .loc 1 1453 8 setp.neu.f64 %r958,%r193,0d0000000000000000; @ %r958 bra $L197; .loc 1 1455 6 cvta.const.u64 %r959,$LC7; st.u64 [%r274],%r959; mov.u64 %r960,4; st.u64 [%r274+8],%r960; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r961,[%frame+352]; add.u32 %r170,%r961,1; st.u32 [%frame+352],%r170; setp.gt.s32 %r962,%r170,7; @ %r962 bra $L198; add.u64 %r274,%r274,16; bra $L199; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r967,[%value_in]; } setp.ne.u32 %r968,%r967,0; @ %r968 bra $L174; .loc 1 1457 7 ld.u64 %r386,[%frame+360]; .loc 1 1455 6 mov.u64 %r274,%r1312; $L199: .loc 1 1456 15 ld.u32 %r173,[%frame+376]; .loc 1 1456 9 ld.u32 %r969,[%frame+380]; setp.lt.s32 %r970,%r969,%r173; @ %r970 bra $L200; .loc 1 1456 31 and.b32 %r971,%r266,1; .loc 1 1456 22 setp.eq.u32 %r972,%r971,0; @ %r972 bra $L195; $L200: .loc 1 1457 7 st.u64 [%r274],%r1348; mov.u64 %r974,4; st.u64 [%r274+8],%r974; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r975,[%frame+352]; add.u32 %r176,%r975,1; st.u32 [%frame+352],%r176; setp.gt.s32 %r976,%r176,7; @ %r976 bra $L201; add.u64 %r274,%r274,16; bra $L202; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r981,[%value_in]; } setp.ne.u32 %r982,%r981,0; @ %r982 bra $L174; .loc 1 1458 7 ld.u32 %r173,[%frame+376]; ld.u64 %r386,[%frame+360]; .loc 1 1457 7 mov.u64 %r274,%r1312; $L202: .loc 1 1458 7 add.u32 %r297,%r173,-1; setp.le.s32 %r983,%r297,0; @ %r983 bra $L195; ld.u32 %r396,[%frame+352]; setp.le.s32 %r984,%r297,16; @ ! %r984 bra $L411; cvta.const.u64 %r1311,zeroes$0; bra $L203; $L411: cvta.const.u64 %r1311,zeroes$0; $L206: st.u64 [%r274],%r1311; mov.u64 %r986,64; st.u64 [%r274+8],%r986; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r396,%r396,1; st.u32 [%frame+352],%r396; setp.gt.s32 %r987,%r396,7; @ %r987 bra $L204; add.u64 %r274,%r274,16; bra $L205; $L204: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r992,[%value_in]; } setp.ne.u32 %r993,%r992,0; @ %r993 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r396,[%frame+352]; mov.u64 %r274,%r1312; $L205: add.u32 %r297,%r297,-16; setp.gt.s32 %r994,%r297,16; @ %r994 bra $L206; $L203: st.u64 [%r274],%r1311; cvt.s64.s32 %r996,%r297; shl.b64 %r179,%r996,2; st.u64 [%r274+8],%r179; add.u64 %r386,%r386,%r179; st.u64 [%frame+360],%r386; add.u32 %r180,%r396,1; st.u32 [%frame+352],%r180; setp.gt.s32 %r997,%r180,7; @ %r997 bra $L207; add.u64 %r274,%r274,16; bra $L195; $L207: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1002,[%value_in]; } setp.ne.u32 %r1003,%r1002,0; @ %r1003 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1458 7 mov.u64 %r274,%r1312; bra $L195; $L197: .loc 1 1460 21 ld.u32 %r182,[%frame+380]; .loc 1 1460 15 setp.gt.s32 %r1004,%r182,0; @ %r1004 bra $L208; .loc 1 1461 6 cvta.const.u64 %r1005,$LC7; st.u64 [%r274],%r1005; mov.u64 %r1006,4; st.u64 [%r274+8],%r1006; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r1007,[%frame+352]; add.u32 %r184,%r1007,1; st.u32 [%frame+352],%r184; setp.gt.s32 %r1008,%r184,7; @ %r1008 bra $L209; add.u64 %r274,%r274,16; bra $L210; $L209: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1013,[%value_in]; } setp.ne.u32 %r1014,%r1013,0; @ %r1014 bra $L174; .loc 1 1456 15 ld.u32 %r182,[%frame+380]; .loc 1 1457 7 ld.u64 %r386,[%frame+360]; .loc 1 1461 6 mov.u64 %r274,%r1312; $L210: .loc 1 1462 9 setp.ne.u32 %r1015,%r182,0; @ %r1015 bra $L211; .loc 1 1462 15 ld.u32 %r395,[%frame+376]; .loc 1 1462 32 and.b32 %r1016,%r266,1; .loc 1 1462 23 or.b32 %r1017,%r1016,%r395; setp.ne.u32 %r1018,%r1017,0; @ %r1018 bra $L212; bra $L195; $L211: .loc 1 1463 7 st.u64 [%r274],%r1348; mov.u64 %r1020,4; st.u64 [%r274+8],%r1020; add.u64 %r393,%r386,4; st.u64 [%frame+360],%r393; ld.u32 %r1021,[%frame+352]; add.u32 %r394,%r1021,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1022,%r394,7; @ %r1022 bra $L213; add.u64 %r275,%r274,16; bra $L214; $L213: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1027,[%value_in]; } setp.ne.u32 %r1028,%r1027,0; @ %r1028 bra $L174; .loc 1 1464 7 ld.u32 %r182,[%frame+380]; ld.u64 %r393,[%frame+360]; ld.u32 %r394,[%frame+352]; .loc 1 1463 7 mov.u64 %r275,%r1312; $L214: .loc 1 1464 7 setp.lt.s32 %r1029,%r182,0; @ %r1029 bra $L215; .loc 1 1465 7 ld.u32 %r395,[%frame+376]; bra $L216; $L215: .loc 1 1464 7 neg.s32 %r301,%r182; setp.ge.s32 %r1030,%r182,-16; @ ! %r1030 bra $L412; cvta.const.u64 %r1311,zeroes$0; bra $L217; $L412: cvta.const.u64 %r1311,zeroes$0; $L220: st.u64 [%r275],%r1311; mov.u64 %r1032,64; st.u64 [%r275+8],%r1032; add.u64 %r393,%r393,64; st.u64 [%frame+360],%r393; add.u32 %r394,%r394,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1033,%r394,7; @ %r1033 bra $L218; add.u64 %r275,%r275,16; bra $L219; $L218: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1038,[%value_in]; } setp.ne.u32 %r1039,%r1038,0; @ %r1039 bra $L174; ld.u64 %r393,[%frame+360]; ld.u32 %r394,[%frame+352]; mov.u64 %r275,%r1312; $L219: add.u32 %r301,%r301,-16; setp.gt.s32 %r1040,%r301,16; @ %r1040 bra $L220; $L217: st.u64 [%r275],%r1311; cvt.s64.s32 %r1042,%r301; shl.b64 %r190,%r1042,2; st.u64 [%r275+8],%r190; add.u64 %r393,%r393,%r190; st.u64 [%frame+360],%r393; add.u32 %r394,%r394,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1043,%r394,7; @ %r1043 bra $L221; add.u64 %r275,%r275,16; .loc 1 1465 7 ld.u32 %r395,[%frame+376]; bra $L216; $L221: .loc 1 1464 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1048,[%value_in]; } setp.ne.u32 %r1049,%r1048,0; @ %r1049 bra $L174; .loc 1 1465 7 ld.u32 %r395,[%frame+376]; ld.u64 %r393,[%frame+360]; ld.u32 %r394,[%frame+352]; .loc 1 1464 7 mov.u64 %r275,%r1312; $L216: .loc 1 1465 7 st.u64 [%r275],%r264; cvt.s64.s32 %r1050,%r395; shl.b64 %r192,%r1050,2; st.u64 [%r275+8],%r192; add.u64 %r386,%r192,%r393; st.u64 [%frame+360],%r386; add.u32 %r195,%r394,1; st.u32 [%frame+352],%r195; setp.gt.s32 %r1051,%r195,7; @ %r1051 bra $L222; add.u64 %r274,%r275,16; bra $L195; $L222: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1056,[%value_in]; } setp.ne.u32 %r1057,%r1056,0; @ %r1057 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1465 7 mov.u64 %r274,%r1312; bra $L195; $L208: .loc 1 1469 6 ld.u32 %r1062,[%frame+376]; min.s32 %r28,%r1062,%r269; setp.le.s32 %r1063,%r28,0; @ %r1063 bra $L223; st.u64 [%r274],%r264; cvt.s64.s32 %r1064,%r28; shl.b64 %r200,%r1064,2; st.u64 [%r274+8],%r200; add.u64 %r386,%r386,%r200; st.u64 [%frame+360],%r386; ld.u32 %r1065,[%frame+352]; add.u32 %r202,%r1065,1; st.u32 [%frame+352],%r202; setp.gt.s32 %r1066,%r202,7; @ %r1066 bra $L224; add.u64 %r274,%r274,16; bra $L223; $L224: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1071,[%value_in]; } setp.ne.u32 %r1072,%r1071,0; @ %r1072 bra $L174; ld.u64 %r386,[%frame+360]; mov.u64 %r274,%r1312; $L223: max.s32 %r1073,%r28,0; sub.u32 %r206,%r269,%r1073; setp.le.s32 %r1074,%r206,0; @ %r1074 bra $L225; ld.u32 %r389,[%frame+352]; setp.le.s32 %r1075,%r206,16; @ ! %r1075 bra $L413; cvta.const.u64 %r1311,zeroes$0; bra $L226; $L413: cvta.const.u64 %r1311,zeroes$0; $L229: st.u64 [%r274],%r1311; mov.u64 %r1077,64; st.u64 [%r274+8],%r1077; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r389,%r389,1; st.u32 [%frame+352],%r389; setp.gt.s32 %r1078,%r389,7; @ %r1078 bra $L227; add.u64 %r274,%r274,16; bra $L228; $L227: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1083,[%value_in]; } setp.ne.u32 %r1084,%r1083,0; @ %r1084 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r389,[%frame+352]; mov.u64 %r274,%r1312; $L228: add.u32 %r206,%r206,-16; setp.gt.s32 %r1085,%r206,16; @ %r1085 bra $L229; $L226: st.u64 [%r274],%r1311; cvt.s64.s32 %r1087,%r206; shl.b64 %r208,%r1087,2; st.u64 [%r274+8],%r208; add.u64 %r386,%r386,%r208; st.u64 [%frame+360],%r386; add.u32 %r210,%r389,1; st.u32 [%frame+352],%r210; setp.gt.s32 %r1088,%r210,7; @ %r1088 bra $L230; add.u64 %r274,%r274,16; bra $L225; $L230: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1093,[%value_in]; } setp.ne.u32 %r1094,%r1093,0; @ %r1094 bra $L174; .loc 1 1491 10 ld.u64 %r386,[%frame+360]; .loc 1 1469 6 mov.u64 %r274,%r1312; $L225: .loc 1 1471 9 cvt.s64.s32 %r1095,%r269; shl.b64 %r213,%r1095,2; .loc 1 1490 15 ld.u32 %r214,[%frame+380]; ld.u32 %r215,[%frame+376]; .loc 1 1490 9 setp.lt.s32 %r1096,%r214,%r215; @ %r1096 bra $L231; .loc 1 1490 31 and.b32 %r1097,%r266,1; .loc 1 1490 22 setp.eq.u32 %r1098,%r1097,0; @ %r1098 bra $L232; $L231: .loc 1 1491 10 st.u64 [%r274],%r1348; mov.u64 %r1100,4; st.u64 [%r274+8],%r1100; add.u64 %r386,%r386,4; st.u64 [%frame+360],%r386; ld.u32 %r1101,[%frame+352]; add.u32 %r218,%r1101,1; st.u32 [%frame+352],%r218; setp.gt.s32 %r1102,%r218,7; @ %r1102 bra $L233; add.u64 %r274,%r274,16; bra $L232; $L233: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1107,[%value_in]; } setp.ne.u32 %r1108,%r1107,0; @ %r1108 bra $L174; .loc 1 1492 6 ld.u32 %r215,[%frame+376]; ld.u32 %r214,[%frame+380]; ld.u64 %r386,[%frame+360]; .loc 1 1491 10 mov.u64 %r274,%r1312; $L232: .loc 1 1492 6 sub.u32 %r223,%r215,%r214; cvt.s64.s32 %r1109,%r215; shl.b64 %r1110,%r1109,2; sub.u64 %r1111,%r1110,%r213; shr.s64 %r1113,%r1111,2; cvt.u32.u64 %r1114,%r1113; min.s32 %r27,%r1114,%r223; setp.le.s32 %r1115,%r27,0; @ %r1115 bra $L234; .loc 1 1471 9 add.u64 %r1116,%r264,%r213; .loc 1 1492 6 st.u64 [%r274],%r1116; cvt.s64.s32 %r1117,%r27; shl.b64 %r224,%r1117,2; st.u64 [%r274+8],%r224; add.u64 %r386,%r386,%r224; st.u64 [%frame+360],%r386; ld.u32 %r1118,[%frame+352]; add.u32 %r226,%r1118,1; st.u32 [%frame+352],%r226; setp.gt.s32 %r1119,%r226,7; @ %r1119 bra $L235; add.u64 %r274,%r274,16; bra $L234; $L235: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1124,[%value_in]; } setp.ne.u32 %r1125,%r1124,0; @ %r1125 bra $L174; ld.u32 %r1126,[%frame+376]; ld.u32 %r1127,[%frame+380]; sub.u32 %r223,%r1126,%r1127; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1492 6 mov.u64 %r274,%r1312; $L234: max.s32 %r1128,%r27,0; sub.u32 %r283,%r223,%r1128; setp.le.s32 %r1129,%r283,0; @ %r1129 bra $L195; ld.u32 %r392,[%frame+352]; setp.le.s32 %r1130,%r283,16; @ ! %r1130 bra $L414; cvta.const.u64 %r1311,zeroes$0; bra $L236; $L414: cvta.const.u64 %r1311,zeroes$0; $L239: st.u64 [%r274],%r1311; mov.u64 %r1132,64; st.u64 [%r274+8],%r1132; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r392,%r392,1; st.u32 [%frame+352],%r392; setp.gt.s32 %r1133,%r392,7; @ %r1133 bra $L237; add.u64 %r274,%r274,16; bra $L238; $L237: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1138,[%value_in]; } setp.ne.u32 %r1139,%r1138,0; @ %r1139 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r392,[%frame+352]; mov.u64 %r274,%r1312; $L238: add.u32 %r283,%r283,-16; setp.gt.s32 %r1140,%r283,16; @ %r1140 bra $L239; $L236: st.u64 [%r274],%r1311; cvt.s64.s32 %r1142,%r283; shl.b64 %r230,%r1142,2; st.u64 [%r274+8],%r230; add.u64 %r386,%r386,%r230; st.u64 [%frame+360],%r386; add.u32 %r232,%r392,1; st.u32 [%frame+352],%r232; setp.gt.s32 %r1143,%r232,7; @ %r1143 bra $L240; add.u64 %r274,%r274,16; bra $L195; $L240: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1148,[%value_in]; } setp.ne.u32 %r1149,%r1148,0; @ %r1149 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1492 6 mov.u64 %r274,%r1312; bra $L195; $L196: .loc 1 1455 6 add.u64 %r237,%r386,4; .loc 1 1450 4 ld.u32 %r1150,[%frame+352]; add.u32 %r238,%r1150,1; add.u64 %r277,%r274,16; .loc 1 1497 8 ld.u32 %r1151,[%frame+376]; setp.gt.s32 %r1152,%r1151,1; @ %r1152 bra $L241; .loc 1 1497 27 and.b32 %r1153,%r266,1; .loc 1 1497 18 setp.eq.u32 %r1154,%r1153,0; @ %r1154 bra $L242; $L241: .loc 1 1498 6 st.u64 [%r274],%r264; mov.u64 %r1155,4; st.u64 [%r274+8],%r1155; st.u64 [%frame+360],%r237; st.u32 [%frame+352],%r238; setp.le.s32 %r1156,%r238,7; @ %r1156 bra $L243; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1161,[%value_in]; } setp.ne.u32 %r1162,%r1161,0; @ %r1162 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1498 6 mov.u64 %r277,%r1312; $L243: .loc 1 1500 6 st.u64 [%r277],%r1348; mov.u64 %r1164,4; st.u64 [%r277+8],%r1164; add.u64 %r237,%r237,4; st.u64 [%frame+360],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+352],%r238; setp.gt.s32 %r1165,%r238,7; @ %r1165 bra $L244; add.u64 %r277,%r277,16; bra $L245; $L244: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1170,[%value_in]; } setp.ne.u32 %r1171,%r1170,0; @ %r1171 bra $L174; .loc 1 1502 7 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1500 6 mov.u64 %r277,%r1312; $L245: .loc 1 1502 7 ld.u32 %r1172,[%frame+376]; add.u32 %r303,%r1172,-1; .loc 1 1501 9 setp.eq.f64 %r1173,%r193,0d0000000000000000; @ %r1173 bra $L246; .loc 1 1502 7 add.u32 %r238,%r238,1; .loc 1 1499 8 add.u64 %r1174,%r264,4; .loc 1 1502 7 st.u64 [%r277],%r1174; cvt.s64.s32 %r1175,%r303; shl.b64 %r240,%r1175,2; st.u64 [%r277+8],%r240; add.u64 %r237,%r237,%r240; st.u64 [%frame+360],%r237; st.u32 [%frame+352],%r238; setp.gt.s32 %r1176,%r238,7; @ %r1176 bra $L247; add.u64 %r277,%r277,16; bra $L248; $L247: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1181,[%value_in]; } setp.ne.u32 %r1182,%r1181,0; @ %r1182 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1502 7 mov.u64 %r277,%r1312; bra $L248; $L246: .loc 1 1505 7 setp.le.s32 %r1183,%r303,0; @ %r1183 bra $L248; setp.le.s32 %r1184,%r303,16; @ ! %r1184 bra $L415; cvta.const.u64 %r1311,zeroes$0; bra $L249; $L415: cvta.const.u64 %r1311,zeroes$0; $L252: st.u64 [%r277],%r1311; mov.u64 %r1186,64; st.u64 [%r277+8],%r1186; add.u64 %r237,%r237,64; st.u64 [%frame+360],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+352],%r238; setp.gt.s32 %r1187,%r238,7; @ %r1187 bra $L250; add.u64 %r277,%r277,16; bra $L251; $L250: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1192,[%value_in]; } setp.ne.u32 %r1193,%r1192,0; @ %r1193 bra $L174; ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; mov.u64 %r277,%r1312; $L251: add.u32 %r303,%r303,-16; setp.gt.s32 %r1194,%r303,16; @ %r1194 bra $L252; $L249: st.u64 [%r277],%r1311; cvt.s64.s32 %r1196,%r303; shl.b64 %r243,%r1196,2; st.u64 [%r277+8],%r243; add.u64 %r237,%r237,%r243; st.u64 [%frame+360],%r237; add.u32 %r238,%r238,1; st.u32 [%frame+352],%r238; setp.gt.s32 %r1197,%r238,7; @ %r1197 bra $L253; add.u64 %r277,%r277,16; bra $L248; $L253: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1202,[%value_in]; } setp.ne.u32 %r1203,%r1202,0; @ %r1203 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1505 7 mov.u64 %r277,%r1312; bra $L248; $L242: .loc 1 1507 6 st.u64 [%r274],%r264; mov.u64 %r1204,4; st.u64 [%r274+8],%r1204; st.u64 [%frame+360],%r237; st.u32 [%frame+352],%r238; setp.le.s32 %r1205,%r238,7; @ %r1205 bra $L248; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1210,[%value_in]; } setp.ne.u32 %r1211,%r1210,0; @ %r1211 bra $L174; .loc 1 1508 5 ld.u64 %r237,[%frame+360]; ld.u32 %r238,[%frame+352]; .loc 1 1507 6 mov.u64 %r277,%r1312; $L248: .loc 1 1508 5 st.u64 [%r277],%r1347; cvt.s64.s32 %r1213,%r42; shl.b64 %r246,%r1213,2; st.u64 [%r277+8],%r246; add.u64 %r386,%r246,%r237; st.u64 [%frame+360],%r386; add.u32 %r248,%r238,1; st.u32 [%frame+352],%r248; setp.gt.s32 %r1214,%r248,7; @ %r1214 bra $L254; add.u64 %r274,%r277,16; bra $L195; $L254: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1219,[%value_in]; } setp.ne.u32 %r1220,%r1219,0; @ %r1220 bra $L174; .loc 1 1516 4 ld.u64 %r386,[%frame+360]; .loc 1 1508 5 mov.u64 %r274,%r1312; $L195: .loc 1 1515 13 and.b32 %r1221,%r266,4; .loc 1 1515 6 setp.eq.u32 %r1222,%r1221,0; @ %r1222 bra $L255; .loc 1 1516 4 sub.u32 %r72,%r267,%r324; setp.le.s32 %r1223,%r72,0; @ %r1223 bra $L255; ld.u32 %r397,[%frame+352]; setp.le.s32 %r1224,%r72,16; @ ! %r1224 bra $L416; cvta.const.u64 %r1314,blanks$1; bra $L256; $L416: cvta.const.u64 %r1314,blanks$1; $L259: st.u64 [%r274],%r1314; mov.u64 %r1226,64; st.u64 [%r274+8],%r1226; add.u64 %r386,%r386,64; st.u64 [%frame+360],%r386; add.u32 %r397,%r397,1; st.u32 [%frame+352],%r397; setp.gt.s32 %r1227,%r397,7; @ %r1227 bra $L257; add.u64 %r274,%r274,16; bra $L258; $L257: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1232,[%value_in]; } setp.ne.u32 %r1233,%r1232,0; @ %r1233 bra $L174; ld.u64 %r386,[%frame+360]; ld.u32 %r397,[%frame+352]; mov.u64 %r274,%r1312; $L258: add.u32 %r72,%r72,-16; setp.gt.s32 %r1234,%r72,16; @ %r1234 bra $L259; $L256: st.u64 [%r274],%r1314; cvt.s64.s32 %r1236,%r72; shl.b64 %r253,%r1236,2; st.u64 [%r274+8],%r253; add.u64 %r386,%r386,%r253; st.u64 [%frame+360],%r386; add.u32 %r254,%r397,1; st.u32 [%frame+352],%r254; setp.le.s32 %r1237,%r254,7; @ %r1237 bra $L255; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1242,[%value_in]; } setp.ne.u32 %r1243,%r1242,0; @ %r1243 bra $L174; .loc 1 1521 3 ld.u64 %r386,[%frame+360]; $L255: .loc 1 1519 33 max.s32 %r1244,%r267,%r324; .loc 1 1519 7 add.u32 %r423,%r423,%r1244; .loc 1 1521 3 setp.ne.u64 %r1245,%r386,0; @ %r1245 bra $L260; $L262: mov.u32 %r1246,0; st.u32 [%frame+352],%r1246; .loc 1 1523 20 setp.ne.u64 %r1247,%r278,0; @ %r1247 bra $L261; .loc 1 1521 3 mov.u64 %r274,%r1312; bra $L28; $L260: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1346; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1252,[%value_in]; } setp.ne.u32 %r1253,%r1252,0; @ ! %r1253 bra $L262; bra $L174; $L261: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r278; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r274,%r1312; bra $L28; $L34: .loc 1 1529 2 ld.u64 %r1256,[%frame+360]; setp.eq.u64 %r1257,%r1256,0; @ %r1257 bra $L263; add.u64 %r1261,%frame,344; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1261; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1262,[%value_in]; } setp.eq.u32 %r1263,%r1262,0; @ %r1263 bra $L263; ld.u16 %r1265,[%r425+16]; and.b16 %r1264,%r1265,64; cvt.s32.s16 %r403,%r1264; bra $L33; $L263: ld.u16 %r1267,[%r425+16]; and.b16 %r1266,%r1267,64; cvt.s32.s16 %r403,%r1266; bra $L33; $L174: .loc 1 1531 5 setp.ne.u64 %r1268,%r278,0; @ %r1268 bra $L264; ld.u16 %r1270,[%r425+16]; and.b16 %r1269,%r1270,64; cvt.s32.s16 %r403,%r1269; bra $L33; $L264: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r278; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r1274,[%r425+16]; and.b16 %r1273,%r1274,64; cvt.s32.s16 %r403,%r1273; $L33: .loc 1 1536 31 setp.eq.u32 %r1275,%r403,0; selp.u32 %r423,%r423,-1,%r1275; bra $L24; $L212: .loc 1 1463 7 st.u64 [%r274],%r1348; mov.u64 %r1278,4; st.u64 [%r274+8],%r1278; add.u64 %r393,%r386,4; st.u64 [%frame+360],%r393; ld.u32 %r1279,[%frame+352]; add.u32 %r394,%r1279,1; st.u32 [%frame+352],%r394; setp.gt.s32 %r1280,%r394,7; @ %r1280 bra $L213; add.u64 %r275,%r274,16; bra $L216; $L82: .loc 1 656 9 mov.u32 %r266,%r265; mov.u64 %r278,0; mov.u32 %r268,0; mov.u32 %r269,%r268; bra $L168; $L104: .loc 1 1042 9 mov.u32 %r1290,40; mov.u32 %r1283,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r424; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r193; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1283; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r266; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1355; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1354; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r262; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1353; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r1290; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r1294,[%value_in]; } mov.u64 %r264,%r1294; .loc 1 1049 7 setp.eq.u64 %r1295,%frame,%r264; @ %r1295 bra $L265; mov.u64 %r278,0; .loc 1 1037 10 mov.u32 %r268,%r1283; ld.u32 %r1321,[%frame+376]; ld.u32 %r1322,[%frame+380]; bra $L266; $L88: .loc 1 1311 14 setp.ne.u32 %r1296,%r268,-1; @ %r1296 bra $L267; bra $L161; $L273: .loc 1 672 11 mov.u32 %r262,104; $L48: setp.ne.u32 %r1297,%r322,0; @ ! %r1297 bra $L269; bra $L268; $L265: .loc 1 1049 26 ld.u32 %r1321,[%frame+376]; .loc 1 1049 18 setp.gt.s32 %r1298,%r1321,40; @ %r1298 bra $L292; mov.u64 %r278,0; .loc 1 1037 10 mov.u32 %r268,%r1283; ld.u32 %r1322,[%frame+380]; bra $L266; $L267: .loc 1 1312 11 and.b32 %r266,%r265,-129; .loc 1 1320 15 set.u32.ne.u64 %r1300,%r270,0; neg.s32 %r1301,%r1300; mov.u32 %r1299,%r1301; .loc 1 1320 28 set.u32.ne.u32 %r1303,%r268,0; neg.s32 %r1304,%r1303; mov.u32 %r1302,%r1304; .loc 1 1320 20 cvt.u16.u8 %r1362,%r1299; mov.u16 %r1306,%r1362; cvt.u16.u8 %r1362,%r1302; mov.u16 %r1307,%r1362; or.b16 %r1305,%r1306,%r1307; cvt.u32.u16 %r1308,%r1305; .loc 1 1320 7 cvt.u16.u8 %r1309,%r1308; setp.ne.u16 %r1310,%r1309,0; @ %r1310 bra $L293; mov.u32 %r268,0; mov.u32 %r272,%r268; .loc 1 1319 7 mov.u64 %r264,%r1312; bra $L165; $L24: .loc 1 1538 1 mov.u32 %value,%r423; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1618 0 0 0 644 69871 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: __ssvfwscanf_r .visible .func (.param .u32 %value_out) __ssvfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __submore .extern .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ssrefill_r .extern .func (.param .u32 %value_out) __ssrefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: swprintf .extern .func (.param .u32 %value_out) swprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstod_r .extern .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN FUNCTION DEF: _sungetwc_r$isra$0 .func _sungetwc_r$isra$0 (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r27; .reg .u64 %r34; .reg .u32 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u32 %r72; mov.u64 %r46,%ar0; mov.u32 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 269 6 setp.ne.u32 %r49,%r47,-1; @ ! %r49 bra $L1; .loc 1 273 14 ld.u16 %r51,[%r48+16]; and.b16 %r50,%r51,-33; st.u16 [%r48+16],%r50; .loc 1 282 13 ld.u32 %r44,[%r48+8]; .loc 1 280 6 ld.u64 %r52,[%r48+88]; setp.eq.u64 %r53,%r52,0; @ %r53 bra $L4; .loc 1 282 10 ld.u32 %r54,[%r48+96]; setp.le.s32 %r55,%r54,%r44; @ %r55 bra $L5; $L7: .loc 1 286 14 ld.u64 %r27,[%r48]; add.u64 %r56,%r27,-4; st.u64 [%r48],%r56; .loc 1 287 15 st.u8 [%r27+-4],%r47; .loc 1 288 14 ld.u32 %r58,[%r48+8]; add.u32 %r57,%r58,4; st.u32 [%r48+8],%r57; .loc 1 289 14 bra $L1; $L5: .loc 1 282 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r46; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r48; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r61,[%value_in]; } .loc 1 282 35 setp.ne.u32 %r62,%r61,0; @ ! %r62 bra $L7; bra $L1; $L4: .loc 1 298 14 ld.u64 %r34,[%r48+24]; .loc 1 298 34 ld.u64 %r45,[%r48]; .loc 1 298 6 setp.eq.u64 %r63,%r34,0; @ %r63 bra $L8; .loc 1 298 29 setp.ge.u64 %r64,%r34,%r45; @ %r64 bra $L8; .loc 1 299 7 ld.u32 %r65,[%r45+-4]; setp.ne.u32 %r66,%r47,%r65; @ %r66 bra $L8; .loc 1 301 14 add.u64 %r67,%r45,-4; st.u64 [%r48],%r67; .loc 1 302 14 add.u32 %r68,%r44,4; st.u32 [%r48+8],%r68; .loc 1 303 14 bra $L1; $L8: .loc 1 311 11 st.u32 [%r48+112],%r44; .loc 1 312 11 st.u64 [%r48+104],%r45; .loc 1 313 19 add.u64 %r69,%r48,116; .loc 1 313 17 st.u64 [%r48+88],%r69; .loc 1 314 17 mov.u32 %r70,3; st.u32 [%r48+96],%r70; .loc 1 315 12 add.u64 %r71,%r48,115; .loc 1 315 10 st.u64 [%r48],%r71; .loc 1 316 23 st.u32 [%r48+115],%r47; .loc 1 317 10 mov.u32 %r72,2; st.u32 [%r48+8],%r72; $L1: .loc 1 319 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __ssvfwscanf_r .visible .func (.param .u32 %value_out) __ssvfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1424; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u32 %r34; .reg .u32 %r40; .reg .u32 %r52; .reg .u64 %r54; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r88; .reg .u64 %r97; .reg .u32 %r129; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u32 %r179; .reg .u64 %r180; .reg .u32 %r183; .reg .u64 %r185; .reg .u32 %r187; .reg .u32 %r189; .reg .u64 %r191; .reg .u32 %r192; .reg .u32 %r193; .reg .u64 %r194; .reg .u32 %r196; .reg .u64 %r199; .reg .u64 %r202; .reg .u32 %r204; .reg .u32 %r205; .reg .u32 %r206; .reg .u64 %r218; .reg .u32 %r220; .reg .u32 %r223; .reg .u32 %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u32 %r236; .reg .u32 %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .u64 %r243; .reg .u32 %r244; .reg .u32 %r250; .reg .u64 %r252; .reg .u32 %r253; .reg .u32 %r259; .reg .u64 %r261; .reg .u32 %r262; .reg .u32 %r268; .reg .u64 %r270; .reg .u32 %r271; .reg .u32 %r277; .reg .u64 %r279; .reg .u32 %r280; .reg .u32 %r286; .reg .u64 %r288; .reg .u32 %r289; .reg .u32 %r295; .reg .u64 %r297; .reg .u32 %r298; .reg .u32 %r304; .reg .u64 %r306; .reg .u32 %r307; .reg .u32 %r313; .reg .u64 %r315; .reg .u32 %r316; .reg .u32 %r322; .reg .u64 %r324; .reg .u32 %r325; .reg .u32 %r332; .reg .u64 %r334; .reg .u32 %r335; .reg .u64 %r342; .reg .u32 %r343; .reg .u32 %r347; .reg .u64 %r350; .reg .u32 %r351; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u32 %r363; .reg .u64 %r364; .reg .u64 %r365; .reg .u32 %r366; .reg .u64 %r368; .reg .u32 %r371; .reg .u64 %r374; .reg .u64 %r377; .reg .u64 %r382; .reg .u32 %r383; .reg .u64 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r388; .reg .u32 %r389; .reg .u64 %r390; .reg .u64 %r391; .reg .u64 %r392; .reg .u64 %r393; .reg .u64 %r394; .reg .u64 %r395; .reg .u64 %r399; .reg .u64 %r400; .reg .u32 %r401; .reg .u32 %r402; .reg .u32 %r407; .reg .u64 %r408; .reg .u64 %r409; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r413; .reg .u64 %r414; .reg .u16 %r415; .reg .u16 %r416; .reg .pred %r417; .reg .u16 %r418; .reg .u32 %r420; .reg .u32 %r421; .reg .pred %r422; .reg .pred %r423; .reg .u32 %r425; .reg .pred %r426; .reg .pred %r427; .reg .u32 %r430; .reg .pred %r431; .reg .u64 %r432; .reg .u32 %r433; .reg .pred %r435; .reg .u32 %r437; .reg .pred %r438; .reg .pred %r439; .reg .pred %r440; .reg .pred %r441; .reg .pred %r442; .reg .pred %r443; .reg .pred %r444; .reg .pred %r445; .reg .pred %r446; .reg .pred %r447; .reg .pred %r448; .reg .u32 %r449; .reg .pred %r450; .reg .pred %r451; .reg .pred %r452; .reg .pred %r453; .reg .pred %r454; .reg .pred %r455; .reg .pred %r456; .reg .pred %r457; .reg .pred %r458; .reg .pred %r459; .reg .pred %r460; .reg .pred %r461; .reg .pred %r462; .reg .pred %r463; .reg .pred %r464; .reg .pred %r465; .reg .pred %r466; .reg .u32 %r469; .reg .pred %r470; .reg .u64 %r471; .reg .u32 %r472; .reg .pred %r474; .reg .pred %r475; .reg .u32 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u16 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u32 %r488; .reg .u16 %r489; .reg .pred %r490; .reg .u32 %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .pred %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u64 %r499; .reg .u64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r503; .reg .pred %r504; .reg .u32 %r505; .reg .u32 %r506; .reg .u32 %r507; .reg .u32 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u16 %r511; .reg .u16 %r512; .reg .u16 %r513; .reg .u32 %r514; .reg .u16 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .u32 %r518; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r521; .reg .u32 %r522; .reg .u16 %r523; .reg .u16 %r524; .reg .u16 %r525; .reg .u32 %r526; .reg .u16 %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u64 %r533; .reg .u32 %r534; .reg .pred %r535; .reg .u32 %r536; .reg .pred %r537; .reg .u64 %r538; .reg .u32 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .pred %r542; .reg .u32 %r545; .reg .pred %r546; .reg .u64 %r547; .reg .u32 %r548; .reg .pred %r550; .reg .u32 %r552; .reg .pred %r553; .reg .pred %r556; .reg .pred %r557; .reg .u32 %r560; .reg .pred %r561; .reg .pred %r562; .reg .u64 %r563; .reg .u32 %r564; .reg .pred %r567; .reg .u32 %r571; .reg .u64 %r572; .reg .u64 %r574; .reg .u64 %r580; .reg .pred %r581; .reg .pred %r582; .reg .u32 %r583; .reg .pred %r584; .reg .pred %r586; .reg .pred %r587; .reg .u32 %r590; .reg .pred %r591; .reg .pred %r592; .reg .u64 %r593; .reg .u32 %r594; .reg .pred %r597; .reg .u64 %r599; .reg .u32 %r601; .reg .pred %r602; .reg .pred %r603; .reg .u32 %r606; .reg .pred %r607; .reg .u64 %r608; .reg .u32 %r609; .reg .pred %r611; .reg .pred %r612; .reg .u64 %r617; .reg .pred %r618; .reg .u64 %r622; .reg .pred %r623; .reg .pred %r624; .reg .pred %r625; .reg .pred %r626; .reg .u32 %r629; .reg .pred %r630; .reg .u64 %r631; .reg .u32 %r632; .reg .pred %r634; .reg .pred %r635; .reg .u64 %r640; .reg .pred %r641; .reg .u64 %r645; .reg .pred %r646; .reg .u64 %r647; .reg .u64 %r649; .reg .pred %r650; .reg .u32 %r651; .reg .u32 %r654; .reg .u64 %r655; .reg .u64 %r657; .reg .u64 %r663; .reg .pred %r664; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .pred %r669; .reg .u32 %r672; .reg .pred %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .pred %r677; .reg .pred %r678; .reg .u64 %r683; .reg .pred %r684; .reg .u64 %r688; .reg .pred %r689; .reg .u32 %r691; .reg .pred %r692; .reg .u32 %r693; .reg .pred %r694; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r701; .reg .pred %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r706; .reg .pred %r707; .reg .u32 %r709; .reg .pred %r710; .reg .u32 %r711; .reg .pred %r712; .reg .u32 %r715; .reg .pred %r716; .reg .u32 %r719; .reg .pred %r720; .reg .u64 %r721; .reg .u32 %r722; .reg .pred %r724; .reg .pred %r725; .reg .u32 %r727; .reg .pred %r728; .reg .u32 %r729; .reg .u32 %r732; .reg .u64 %r733; .reg .u64 %r735; .reg .u64 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .pred %r746; .reg .u32 %r749; .reg .pred %r750; .reg .u64 %r751; .reg .u32 %r752; .reg .pred %r754; .reg .pred %r755; .reg .u32 %r757; .reg .pred %r758; .reg .u32 %r760; .reg .u64 %r761; .reg .pred %r762; .reg .u64 %r763; .reg .pred %r764; .reg .u32 %r767; .reg .pred %r768; .reg .u64 %r769; .reg .pred %r771; .reg .pred %r772; .reg .pred %r773; .reg .pred %r774; .reg .u32 %r775; .reg .u32 %r776; .reg .pred %r777; .reg .u64 %r778; .reg .u64 %r779; .reg .u64 %r780; .reg .u64 %r781; .reg .pred %r782; .reg .pred %r783; .reg .pred %r784; .reg .pred %r785; .reg .pred %r786; .reg .pred %r787; .reg .pred %r788; .reg .u32 %r789; .reg .pred %r790; .reg .u64 %r791; .reg .u64 %r792; .reg .u64 %r793; .reg .u64 %r794; .reg .pred %r795; .reg .pred %r796; .reg .u32 %r797; .reg .pred %r798; .reg .u32 %r799; .reg .pred %r800; .reg .u32 %r801; .reg .pred %r802; .reg .u64 %r803; .reg .pred %r804; .reg .pred %r805; .reg .pred %r809; .reg .u32 %r810; .reg .pred %r811; .reg .pred %r812; .reg .u32 %r816; .reg .u32 %r817; .reg .pred %r818; .reg .u32 %r822; .reg .pred %r823; .reg .u64 %r827; .reg .u64 %r829; .reg .u64 %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r834; .reg .u64 %r835; .reg .u32 %r836; .reg .pred %r837; .reg .u64 %r838; .reg .u32 %r839; .reg .pred %r840; .reg .u64 %r841; .reg .pred %r842; .reg .u64 %r847; .reg .u64 %r852; .reg .u64 %r853; .reg .u64 %r854; .reg .u64 %r855; .reg .u64 %r857; .reg .u32 %r858; .reg .u64 %r859; .reg .pred %r860; .reg .u32 %r861; .reg .pred %r862; .reg .u32 %r865; .reg .pred %r866; .reg .u64 %r867; .reg .pred %r869; .reg .pred %r870; .reg .pred %r871; .reg .pred %r872; .reg .pred %r873; .reg .pred %r874; .reg .pred %r875; .reg .pred %r876; .reg .pred %r877; .reg .pred %r878; .reg .pred %r879; .reg .pred %r880; .reg .pred %r881; .reg .pred %r882; .reg .pred %r883; .reg .pred %r884; .reg .pred %r885; .reg .pred %r886; .reg .pred %r887; .reg .pred %r888; .reg .pred %r889; .reg .pred %r890; .reg .u32 %r891; .reg .pred %r892; .reg .pred %r893; .reg .u32 %r894; .reg .pred %r895; .reg .u32 %r896; .reg .pred %r897; .reg .u32 %r898; .reg .u16 %r899; .reg .u32 %r900; .reg .u32 %r901; .reg .u32 %r902; .reg .u32 %r903; .reg .u32 %r904; .reg .u16 %r905; .reg .u16 %r906; .reg .u16 %r907; .reg .u32 %r908; .reg .u16 %r909; .reg .pred %r910; .reg .u32 %r911; .reg .pred %r912; .reg .pred %r914; .reg .u32 %r915; .reg .u16 %r916; .reg .u32 %r917; .reg .u32 %r918; .reg .u32 %r919; .reg .u32 %r921; .reg .u32 %r922; .reg .u16 %r923; .reg .u16 %r924; .reg .u16 %r925; .reg .u32 %r926; .reg .u16 %r927; .reg .pred %r928; .reg .u16 %r930; .reg .u32 %r932; .reg .u16 %r934; .reg .pred %r935; .reg .u32 %r936; .reg .u16 %r937; .reg .u32 %r938; .reg .u32 %r939; .reg .u32 %r940; .reg .u32 %r941; .reg .u32 %r942; .reg .u16 %r943; .reg .u16 %r944; .reg .u16 %r945; .reg .u32 %r946; .reg .u16 %r947; .reg .pred %r948; .reg .u32 %r949; .reg .pred %r950; .reg .u32 %r951; .reg .u16 %r952; .reg .u16 %r953; .reg .u32 %r954; .reg .u16 %r956; .reg .u16 %r958; .reg .pred %r959; .reg .u16 %r960; .reg .u32 %r962; .reg .u16 %r963; .reg .pred %r964; .reg .u16 %r965; .reg .pred %r966; .reg .u16 %r967; .reg .pred %r968; .reg .u32 %r969; .reg .pred %r970; .reg .u32 %r971; .reg .pred %r972; .reg .u32 %r974; .reg .pred %r975; .reg .pred %r976; .reg .u32 %r977; .reg .pred %r978; .reg .pred %r979; .reg .pred %r983; .reg .u32 %r985; .reg .pred %r986; .reg .pred %r987; .reg .u32 %r989; .reg .pred %r991; .reg .u32 %r992; .reg .pred %r993; .reg .u16 %r994; .reg .pred %r995; .reg .u32 %r996; .reg .pred %r998; .reg .pred %r999; .reg .u32 %r1001; .reg .u32 %r1003; .reg .u16 %r1004; .reg .u16 %r1005; .reg .u16 %r1006; .reg .u32 %r1007; .reg .u16 %r1009; .reg .u16 %r1010; .reg .u16 %r1011; .reg .u32 %r1012; .reg .u16 %r1013; .reg .pred %r1014; .reg .u32 %r1016; .reg .pred %r1018; .reg .u32 %r1019; .reg .pred %r1020; .reg .u32 %r1021; .reg .pred %r1022; .reg .pred %r1023; .reg .u32 %r1025; .reg .pred %r1027; .reg .u32 %r1028; .reg .pred %r1029; .reg .u32 %r1036; .reg .pred %r1037; .reg .u32 %r1039; .reg .pred %r1040; .reg .pred %r1041; .reg .pred %r1042; .reg .u64 %r1045; .reg .u32 %r1046; .reg .u64 %r1047; .reg .u64 %r1048; .reg .pred %r1050; .reg .u64 %r1052; .reg .u64 %r1053; .reg .u32 %r1054; .reg .u64 %r1058; .reg .f64 %r1059; .reg .u64 %r1060; .reg .u32 %r1061; .reg .pred %r1062; .reg .u64 %r1063; .reg .u32 %r1064; .reg .pred %r1065; .reg .pred %r1066; .reg .u64 %r1067; .reg .f32 %r1068; .reg .f32 %r1069; .reg .pred %r1070; .reg .u16 %r1071; .reg .u16 %r1072; .reg .pred %r1073; .reg .pred %r1099; .reg .pred %r1100; .reg .pred %r1101; .reg .pred %r1102; .reg .u32 %r1103; .reg .u32 %r1104; .reg .pred %r1106; .reg .pred %r1107; .reg .pred %r1108; .reg .pred %r1109; .reg .pred %r1110; .reg .u64 %r1111; .reg .u64 %r1112; .reg .u64 %r1113; .reg .u16 %r1114; mov.u64 %r408,%ar0; mov.u64 %r409,%ar1; mov.u64 %r410,%ar2; mov.u64 %r411,%ar3; .loc 1 547 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r413,[%value_in]; } .loc 1 547 22 ld.u64 %r414,[%r413]; .loc 1 547 10 ld.s8 %r183,[%r414]; .loc 1 553 3 ld.u16 %r416,[%r409+16]; and.b16 %r415,%r416,8192; setp.ne.u16 %r417,%r415,0; @ %r417 bra $L13; or.b16 %r418,%r416,8192; st.u16 [%r409+16],%r418; ld.u32 %r421,[%r409+172]; or.b32 %r420,%r421,8192; st.u32 [%r409+172],%r420; $L13: .loc 1 560 15 add.u64 %r185,%r410,4; .loc 1 560 9 ld.u32 %r156,[%r410]; .loc 1 561 10 setp.eq.u32 %r422,%r156,0; @ %r422 bra $L215; mov.u64 %r54,0; mov.u32 %r402,0; mov.u32 %r52,%r402; mov.u32 %r407,%r402; mov.u64 %r30,%r54; .loc 1 1611 8 add.u64 %r1111,%frame,1316; .loc 1 1613 17 add.u64 %r1112,%frame,1312; .loc 1 1115 8 add.u64 %r1113,%frame,1400; bra $L15; $L216: mov.u64 %r164,%r185; bra $L18; $L217: mov.u64 %r164,%r185; bra $L18; $L225: .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L226: mov.u64 %r164,%r185; bra $L18; $L228: mov.u64 %r164,%r185; bra $L18; $L231: mov.u32 %r52,%r232; mov.u64 %r164,%r185; bra $L18; $L232: mov.u32 %r52,%r232; mov.u64 %r164,%r185; bra $L18; $L234: mov.u64 %r164,%r185; bra $L18; $L247: mov.u64 %r164,%r185; $L18: .loc 1 560 15 add.u64 %r185,%r164,4; .loc 1 560 9 ld.u32 %r156,[%r164]; .loc 1 561 10 setp.eq.u32 %r423,%r156,0; @ %r423 bra $L12; $L15: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r156; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r425,[%value_in]; } mov.u32 %r32,%r425; .loc 1 563 10 setp.eq.u32 %r426,%r32,0; @ %r426 bra $L16; $L19: .loc 1 329 9 ld.u32 %r241,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r427,%r241,0; @ %r427 bra $L17; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r430,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r431,%r430,0; @ %r431 bra $L216; .loc 1 333 10 ld.u32 %r241,[%r409+8]; $L17: .loc 1 331 23 ld.u64 %r243,[%r409]; .loc 1 331 6 ld.u32 %r244,[%r243]; .loc 1 332 10 add.u64 %r432,%r243,4; st.u64 [%r409],%r432; .loc 1 333 10 add.u32 %r433,%r241,-4; st.u32 [%r409+8],%r433; .loc 1 565 14 mov.u32 %r240,%r244; .loc 1 565 46 setp.eq.u32 %r435,%r240,-1; @ %r435 bra $L217; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r240; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r437,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r438,%r437,0; @ %r438 bra $L19; bra $L439; $L16: .loc 1 571 10 setp.ne.u32 %r439,%r156,37; @ %r439 bra $L21; .loc 1 586 11 ld.u32 %r363,[%r185]; .loc 1 574 13 mov.u32 %r34,%r32; .loc 1 586 11 mov.u64 %r29,%r185; .loc 1 573 13 mov.u64 %r158,0; bra $L22; $L440: .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 606 10 mov.u32 %r34,16; .loc 1 612 8 mov.u64 %r158,0; $L22: .loc 1 586 15 add.u64 %r185,%r29,4; .loc 1 588 7 setp.eq.u32 %r440,%r363,104; @ %r440 bra $L23; setp.gt.s32 %r441,%r363,104; @ %r441 bra $L24; setp.eq.u32 %r442,%r363,76; @ %r442 bra $L25; setp.gt.s32 %r443,%r363,76; @ %r443 bra $L26; setp.eq.u32 %r444,%r363,42; @ %r444 bra $L27; setp.gt.s32 %r445,%r363,42; @ %r445 bra $L28; setp.eq.u32 %r446,%r363,37; @ %r446 bra $L21; bra $L12; $L28: setp.gt.s32 %r447,%r363,57; @ %r447 bra $L29; setp.gt.s32 %r448,%r363,47; @ %r448 bra $L30; bra $L12; $L29: and.b32 %r449,%r363,-3; setp.eq.u32 %r450,%r449,69; @ ! %r450 bra $L12; bra $L218; $L26: setp.eq.u32 %r451,%r363,99; @ %r451 bra $L32; setp.gt.s32 %r452,%r363,99; @ %r452 bra $L33; setp.eq.u32 %r453,%r363,88; @ %r453 bra $L34; setp.eq.u32 %r454,%r363,91; @ %r454 bra $L35; bra $L12; $L33: setp.ne.u32 %r455,%r363,100; @ %r455 bra $L219; .loc 1 725 9 mov.u64 %r54,_wcstol_r; .loc 1 726 9 mov.u32 %r402,10; .loc 1 724 6 mov.u32 %r401,3; bra $L60; $L24: .loc 1 588 7 setp.eq.u32 %r456,%r363,111; @ %r456 bra $L220; setp.gt.s32 %r457,%r363,111; @ %r457 bra $L37; setp.eq.u32 %r458,%r363,108; @ %r458 bra $L38; setp.eq.u32 %r459,%r363,110; @ %r459 bra $L39; setp.eq.u32 %r460,%r363,105; @ %r460 bra $L221; bra $L12; $L37: setp.eq.u32 %r461,%r363,115; @ %r461 bra $L222; setp.gt.s32 %r462,%r363,115; @ %r462 bra $L40; setp.eq.u32 %r463,%r363,112; @ %r463 bra $L41; bra $L12; $L40: setp.eq.u32 %r464,%r363,117; @ %r464 bra $L223; setp.eq.u32 %r465,%r363,120; @ %r465 bra $L34; bra $L12; $L21: .loc 1 329 9 ld.u32 %r250,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r466,%r250,0; @ %r466 bra $L42; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r469,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r470,%r469,0; @ %r470 bra $L45; .loc 1 333 10 ld.u32 %r250,[%r409+8]; $L42: .loc 1 331 23 ld.u64 %r252,[%r409]; .loc 1 331 6 ld.u32 %r253,[%r252]; .loc 1 332 10 add.u64 %r471,%r252,4; st.u64 [%r409],%r471; .loc 1 333 10 add.u32 %r472,%r250,-4; st.u32 [%r409+8],%r472; .loc 1 592 12 mov.u32 %r239,%r253; .loc 1 592 7 setp.eq.u32 %r474,%r239,-1; @ %r474 bra $L45; .loc 1 594 7 setp.eq.u32 %r475,%r156,%r239; @ %r475 bra $L44; .loc 1 596 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r239; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 597 8 bra $L45; $L44: .loc 1 599 9 add.u32 %r52,%r52,1; .loc 1 600 4 mov.u64 %r164,%r185; bra $L18; $L27: .loc 1 603 7 set.u32.ne.u32 %r480,%r34,0; neg.s32 %r481,%r480; mov.u32 %r479,%r481; .loc 1 604 8 set.u32.ne.u64 %r483,%r158,0; neg.s32 %r484,%r483; mov.u32 %r482,%r484; cvt.u16.u8 %r1114,%r479; mov.u16 %r486,%r1114; cvt.u16.u8 %r1114,%r482; mov.u16 %r487,%r1114; or.b16 %r485,%r486,%r487; cvt.u32.u16 %r488,%r485; cvt.u16.u8 %r489,%r488; setp.ne.u16 %r490,%r489,0; @ ! %r490 bra $L440; bra $L12; $L38: .loc 1 609 14 and.b32 %r491,%r34,15; .loc 1 609 7 setp.ne.u32 %r492,%r491,0; @ %r492 bra $L12; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 612 7 setp.ne.u32 %r493,%r363,108; @ %r493 bra $L47; .loc 1 615 14 or.b32 %r34,%r34,2; .loc 1 789 8 ld.u32 %r363,[%r29+8]; .loc 1 614 8 add.u64 %r29,%r29,8; bra $L22; $L47: .loc 1 619 12 or.b32 %r34,%r34,1; .loc 1 586 15 mov.u64 %r29,%r185; bra $L22; $L25: .loc 1 622 14 and.b32 %r494,%r34,15; .loc 1 622 7 setp.ne.u32 %r495,%r494,0; @ %r495 bra $L12; .loc 1 624 10 or.b32 %r34,%r34,2; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 625 4 bra $L22; $L23: .loc 1 637 12 or.b32 %r34,%r34,4; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 638 4 bra $L22; $L30: .loc 1 703 14 and.b32 %r496,%r34,143; .loc 1 703 7 setp.ne.u32 %r497,%r496,0; @ %r497 bra $L12; .loc 1 705 18 shl.b64 %r499,%r158,2; add.u64 %r500,%r499,%r158; add.u64 %r501,%r500,%r500; add.u64 %r180,%r501,-48; .loc 1 705 23 cvt.s64.s32 %r502,%r363; .loc 1 705 10 add.u64 %r158,%r502,%r180; .loc 1 612 8 ld.u32 %r363,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r185; .loc 1 706 4 bra $L22; $L34: .loc 1 749 10 or.b32 %r34,%r34,512; .loc 1 751 9 mov.u64 %r54,_wcstoul_r; .loc 1 752 9 mov.u32 %r32,16; .loc 1 753 4 bra $L36; $L35: .loc 1 781 8 ld.u32 %r40,[%r29+4]; .loc 1 781 7 setp.ne.u32 %r503,%r40,94; @ %r503 bra $L49; .loc 1 784 8 add.u64 %r185,%r29,8; .loc 1 789 8 ld.u32 %r40,[%r29+8]; .loc 1 783 17 mov.u32 %r32,1; $L49: .loc 1 789 7 setp.ne.u32 %r504,%r40,93; @ %r504 bra $L224; .loc 1 790 9 add.u64 %r191,%r185,4; .loc 1 791 11 ld.u32 %r40,[%r185+4]; bra $L50; $L224: mov.u64 %r191,%r185; $L50: .loc 1 791 24 set.u32.ne.u32 %r506,%r40,0; neg.s32 %r507,%r506; mov.u32 %r505,%r507; set.u32.ne.u32 %r509,%r40,93; neg.s32 %r510,%r509; mov.u32 %r508,%r510; cvt.u16.u8 %r1114,%r505; mov.u16 %r512,%r1114; cvt.u16.u8 %r1114,%r508; mov.u16 %r513,%r1114; and.b16 %r511,%r512,%r513; cvt.u32.u16 %r514,%r511; cvt.u16.u8 %r515,%r514; setp.eq.u16 %r516,%r515,0; @ %r516 bra $L51; $L52: .loc 1 792 9 add.u64 %r191,%r191,4; .loc 1 791 11 ld.u32 %r189,[%r191]; .loc 1 791 24 set.u32.ne.u32 %r518,%r189,0; neg.s32 %r519,%r518; mov.u32 %r517,%r519; set.u32.ne.u32 %r521,%r189,93; neg.s32 %r522,%r521; mov.u32 %r520,%r522; cvt.u16.u8 %r1114,%r517; mov.u16 %r524,%r1114; cvt.u16.u8 %r1114,%r520; mov.u16 %r525,%r1114; and.b16 %r523,%r524,%r525; cvt.u32.u16 %r526,%r523; cvt.u16.u8 %r527,%r526; setp.ne.u16 %r528,%r527,0; @ %r528 bra $L52; $L51: .loc 1 794 7 add.u64 %r164,%r191,4; .loc 1 965 7 setp.eq.u64 %r529,%r158,0; .loc 1 966 12 selp.u64 %r158,-1,%r158,%r529; .loc 1 991 27 sub.u64 %r599,%r191,%r185; shr.s64 %r359,%r599,2; .loc 1 968 27 and.b32 %r601,%r34,17; .loc 1 968 7 setp.eq.u32 %r602,%r601,17; @ ! %r602 bra $L441; bra $L229; $L32: max.u64 %r159,%r158,1; and.b32 %r236,%r34,1; and.b32 %r389,%r34,16; .loc 1 879 14 setp.ne.u32 %r530,%r236,0; @ %r530 bra $L55; bra $L442; $L41: .loc 1 811 10 or.b32 %r34,%r34,544; .loc 1 813 9 mov.u64 %r54,_wcstoul_r; .loc 1 814 9 mov.u32 %r32,16; .loc 1 815 4 bra $L36; $L39: .loc 1 818 14 and.b32 %r531,%r34,16; .loc 1 818 7 setp.ne.u32 %r532,%r531,0; @ %r532 bra $L225; .loc 1 830 11 add.u64 %r533,%r411,7; and.b64 %r361,%r533,-8; ld.u64 %r362,[%r361]; add.u64 %r411,%r361,8; .loc 1 828 14 and.b32 %r534,%r34,4; .loc 1 828 7 setp.eq.u32 %r535,%r534,0; @ %r535 bra $L57; .loc 1 831 12 st.u16 [%r362],%r52; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L57: .loc 1 833 19 and.b32 %r536,%r34,1; .loc 1 833 12 setp.eq.u32 %r537,%r536,0; @ %r537 bra $L58; .loc 1 836 12 cvt.s64.s32 %r538,%r52; st.u64 [%r362],%r538; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L58: .loc 1 839 19 and.b32 %r539,%r34,2; .loc 1 839 12 setp.eq.u32 %r540,%r539,0; @ %r540 bra $L59; .loc 1 842 13 cvt.s64.s32 %r541,%r52; st.u64 [%r362],%r541; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L59: .loc 1 848 12 st.u32 [%r362],%r52; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L218: .loc 1 588 7 mov.u32 %r401,4; bra $L60; $L219: mov.u32 %r401,4; bra $L60; $L222: .loc 1 777 6 mov.u32 %r401,2; bra $L60; $L62: .loc 1 863 11 add.u32 %r52,%r52,1; $L60: .loc 1 329 9 ld.u32 %r259,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r542,%r259,0; @ %r542 bra $L61; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r545,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r546,%r545,0; @ %r546 bra $L45; .loc 1 333 10 ld.u32 %r259,[%r409+8]; $L61: .loc 1 331 23 ld.u64 %r261,[%r409]; .loc 1 331 6 ld.u32 %r262,[%r261]; .loc 1 332 10 add.u64 %r547,%r261,4; st.u64 [%r409],%r547; .loc 1 333 10 add.u32 %r548,%r259,-4; st.u32 [%r409+8],%r548; .loc 1 862 15 mov.u32 %r192,%r262; .loc 1 862 47 setp.eq.u32 %r550,%r192,-1; @ %r550 bra $L45; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r192; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r552,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r553,%r552,0; @ %r553 bra $L62; bra $L443; $L55: .loc 1 887 11 setp.ne.u32 %r1102,%r389,0; @ %r1102 bra $L64; .loc 1 894 5 add.u64 %r384,%r411,7; and.b64 %r385,%r384,-8; add.u64 %r411,%r385,8; ld.u64 %r30,[%r385]; $L64: .loc 1 904 11 mov.u64 %r368,0; bra $L65; $L70: .loc 1 898 8 @ %r1102 bra $L66; .loc 1 904 14 st.u32 [%r30],%r271; .loc 1 904 11 add.u64 %r30,%r30,4; $L66: add.u32 %r179,%r366,1; .loc 1 896 28 add.u64 %r368,%r368,1; setp.eq.u64 %r556,%r159,%r368; @ %r556 bra $L67; $L65: cvt.u32.u64 %r366,%r368; mov.u32 %r179,%r366; .loc 1 329 9 ld.u32 %r268,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r557,%r268,0; @ %r557 bra $L68; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r560,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r561,%r560,0; @ %r561 bra $L69; $L71: .loc 1 908 11 setp.eq.u32 %r562,%r366,0; @ ! %r562 bra $L67; bra $L45; $L69: .loc 1 333 10 ld.u32 %r268,[%r409+8]; $L68: .loc 1 331 23 ld.u64 %r270,[%r409]; .loc 1 331 6 ld.u32 %r271,[%r270]; .loc 1 332 10 add.u64 %r563,%r270,4; st.u64 [%r409],%r563; .loc 1 333 10 add.u32 %r564,%r268,-4; st.u32 [%r409+8],%r564; .loc 1 896 28 setp.ne.u32 %r567,%r271,-1; @ %r567 bra $L70; bra $L71; $L67: .loc 1 910 14 add.u32 %r52,%r52,%r179; .loc 1 914 11 @ %r1102 bra $L226; .loc 1 915 12 add.u32 %r407,%r407,1; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L442: .loc 1 925 11 setp.ne.u32 %r1102,%r389,0; @ %r1102 bra $L227; .loc 1 932 7 add.u64 %r386,%r411,7; and.b64 %r399,%r386,-8; add.u64 %r411,%r399,8; ld.u64 %r165,[%r399]; bra $L72; $L227: .loc 1 926 7 add.u64 %r165,%frame,1408; $L72: .loc 1 934 8 mov.u64 %r572,8; mov.u32 %r571,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r571; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r574,[%value_in]; } bra $L73; $L80: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r165; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r280; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r1113; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r580,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r581,%r580,-1; @ %r581 bra $L45; .loc 1 941 8 setp.ne.u64 %r582,%r580,0; @ %r582 bra $L74; .loc 1 941 20 ld.u32 %r583,[%frame+1400]; setp.eq.u32 %r584,%r583,-4; @ %r584 bra $L75; $L74: .loc 1 942 12 add.u64 %r159,%r159,-1; $L75: .loc 1 943 8 @ %r1102 bra $L76; .loc 1 948 13 add.u64 %r165,%r165,%r580; $L76: .loc 1 950 6 add.u32 %r236,%r236,1; .loc 1 935 26 setp.eq.u64 %r586,%r159,0; @ %r586 bra $L77; $L73: .loc 1 329 9 ld.u32 %r277,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r587,%r277,0; @ %r587 bra $L78; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r590,[%value_in]; } .loc 1 329 19 setp.eq.u32 %r591,%r590,0; @ %r591 bra $L79; $L81: .loc 1 952 11 setp.eq.u32 %r592,%r236,0; @ ! %r592 bra $L77; bra $L45; $L79: .loc 1 333 10 ld.u32 %r277,[%r409+8]; $L78: .loc 1 331 23 ld.u64 %r279,[%r409]; .loc 1 331 6 ld.u32 %r280,[%r279]; .loc 1 332 10 add.u64 %r593,%r279,4; st.u64 [%r409],%r593; .loc 1 333 10 add.u32 %r594,%r277,-4; st.u32 [%r409+8],%r594; .loc 1 935 26 setp.ne.u32 %r597,%r280,-1; @ %r597 bra $L80; bra $L81; $L77: .loc 1 954 14 add.u32 %r52,%r52,%r236; .loc 1 958 11 @ %r1102 bra $L228; .loc 1 959 12 add.u32 %r407,%r407,1; .loc 1 586 15 mov.u64 %r164,%r185; bra $L18; $L88: add.u64 %r365,%r365,1; bra $L82; $L229: mov.u64 %r365,0; .loc 1 972 24 setp.eq.u32 %r1108,%r32,0; $L82: cvt.u32.u64 %r161,%r365; .loc 1 329 9 ld.u32 %r286,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r603,%r286,0; @ %r603 bra $L84; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r606,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r607,%r606,0; @ %r607 bra $L207; .loc 1 333 10 ld.u32 %r286,[%r409+8]; $L84: .loc 1 331 23 ld.u64 %r288,[%r409]; .loc 1 331 6 ld.u32 %r289,[%r288]; .loc 1 332 10 add.u64 %r608,%r288,4; st.u64 [%r409],%r608; .loc 1 333 10 add.u32 %r609,%r286,-4; st.u32 [%r409+8],%r609; .loc 1 971 19 mov.u32 %r231,%r289; .loc 1 972 24 setp.eq.u32 %r611,%r231,-1; @ %r611 bra $L207; .loc 1 972 8 setp.eq.u64 %r612,%r158,%r365; @ %r612 bra $L86; .loc 1 972 24 @ %r1108 bra $L87; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r617,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r618,%r617,0; @ %r618 bra $L88; bra $L86; $L87: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r289; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r622,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r623,%r622,0; @ %r623 bra $L88; bra $L86; $L207: .loc 1 976 11 setp.eq.u32 %r624,%r161,0; @ ! %r624 bra $L89; bra $L12; $L441: and.b32 %r161,%r34,1; .loc 1 979 12 setp.eq.u32 %r625,%r161,0; @ %r625 bra $L90; .loc 1 989 10 add.u64 %r388,%r411,7; and.b64 %r387,%r388,-8; add.u64 %r411,%r387,8; ld.u64 %r229,[%r387]; mov.u64 %r364,%r229; .loc 1 991 24 setp.eq.u32 %r1109,%r32,0; .loc 1 990 14 bra $L91; $L96: .loc 1 993 10 st.u32 [%r364],%r298; add.u64 %r158,%r158,-1; add.u64 %r364,%r364,4; $L91: mov.u64 %r30,%r364; .loc 1 329 9 ld.u32 %r295,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r626,%r295,0; @ %r626 bra $L92; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r629,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r630,%r629,0; @ %r630 bra $L208; .loc 1 333 10 ld.u32 %r295,[%r409+8]; $L92: .loc 1 331 23 ld.u64 %r297,[%r409]; .loc 1 331 6 ld.u32 %r298,[%r297]; .loc 1 332 10 add.u64 %r631,%r297,4; st.u64 [%r409],%r631; .loc 1 333 10 add.u32 %r632,%r295,-4; st.u32 [%r409+8],%r632; .loc 1 990 19 mov.u32 %r230,%r298; .loc 1 991 24 setp.eq.u32 %r634,%r230,-1; @ %r634 bra $L208; .loc 1 991 8 setp.eq.u64 %r635,%r158,0; @ %r635 bra $L94; .loc 1 991 24 @ %r1109 bra $L95; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r298; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r640,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r641,%r640,0; @ %r641 bra $L96; bra $L94; $L95: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r298; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r645,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r646,%r645,0; @ %r646 bra $L96; bra $L94; $L208: .loc 1 1000 14 sub.u64 %r647,%r364,%r229; shr.s64 %r649,%r647,2; .loc 1 1000 10 cvt.u32.u64 %r161,%r649; .loc 1 1001 11 setp.eq.u32 %r650,%r161,0; @ %r650 bra $L12; .loc 1 1003 11 mov.u32 %r651,0; st.u32 [%r364],%r651; .loc 1 1007 17 add.u32 %r407,%r407,1; bra $L89; $L90: and.b32 %r76,%r34,16; .loc 1 1017 11 setp.ne.u32 %r1107,%r76,0; @ %r1107 bra $L230; .loc 1 1024 7 add.u64 %r391,%r411,7; and.b64 %r390,%r391,-8; add.u64 %r411,%r390,8; ld.u64 %r166,[%r390]; bra $L97; $L230: .loc 1 1018 7 add.u64 %r166,%frame,1408; $L97: .loc 1 1026 8 mov.u64 %r655,8; mov.u32 %r654,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r654; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r655; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r657,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r1110,%r32,0; .loc 1 1027 14 bra $L98; $L106: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r166; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r307; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r1113; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r663,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r664,%r663,-1; @ %r664 bra $L45; .loc 1 1034 8 setp.ne.u64 %r665,%r663,0; @ %r665 bra $L99; .loc 1 1034 20 ld.u32 %r666,[%frame+1400]; setp.eq.u32 %r667,%r666,-4; @ %r667 bra $L100; $L99: .loc 1 1035 12 add.u64 %r158,%r158,-1; $L100: .loc 1 1036 8 @ %r1107 bra $L101; .loc 1 1038 13 add.u64 %r166,%r166,%r663; $L101: .loc 1 1043 6 add.u32 %r161,%r161,1; $L98: .loc 1 329 9 ld.u32 %r304,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r669,%r304,0; @ %r669 bra $L102; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r672,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r673,%r672,0; @ %r673 bra $L209; .loc 1 333 10 ld.u32 %r304,[%r409+8]; $L102: .loc 1 331 23 ld.u64 %r306,[%r409]; .loc 1 331 6 ld.u32 %r307,[%r306]; .loc 1 332 10 add.u64 %r674,%r306,4; st.u64 [%r409],%r674; .loc 1 333 10 add.u32 %r675,%r304,-4; st.u32 [%r409+8],%r675; .loc 1 1027 19 mov.u32 %r226,%r307; .loc 1 1028 22 setp.eq.u32 %r677,%r226,-1; @ %r677 bra $L209; .loc 1 1028 8 setp.eq.u64 %r678,%r158,0; @ %r678 bra $L104; .loc 1 1028 22 @ %r1110 bra $L105; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r307; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r683,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r684,%r683,0; @ %r684 bra $L106; bra $L104; $L105: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r185; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r307; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r359; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r688,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r689,%r688,0; @ %r689 bra $L106; bra $L104; $L209: .loc 1 1047 11 @ %r1107 bra $L89; .loc 1 1049 10 mov.u32 %r691,0; st.u8 [%r166],%r691; .loc 1 1053 14 add.u32 %r407,%r407,1; $L89: .loc 1 1056 10 add.u32 %r52,%r52,%r161; .loc 1 1057 4 bra $L18; $L212: .loc 1 1061 7 setp.ne.u64 %r692,%r158,0; .loc 1 1062 19 selp.u64 %r158,%r158,-1,%r692; .loc 1 1063 27 and.b32 %r693,%r34,17; .loc 1 1063 7 setp.ne.u32 %r694,%r693,17; @ %r694 bra $L108; mov.u64 %r360,%r158; cvt.u32.u64 %r1104,%r360; $L111: cvt.u32.u64 %r697,%r360; vsub.u32.u32.u32.add %r232,%r52,%r697,%r1104; .loc 1 329 9 ld.u32 %r313,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r698,%r313,0; @ %r698 bra $L109; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r701,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r702,%r701,0; @ %r702 bra $L231; .loc 1 333 10 ld.u32 %r313,[%r409+8]; $L109: .loc 1 331 23 ld.u64 %r315,[%r409]; .loc 1 331 6 ld.u32 %r316,[%r315]; .loc 1 332 10 add.u64 %r703,%r315,4; st.u64 [%r409],%r703; .loc 1 333 10 add.u32 %r704,%r313,-4; st.u32 [%r409+8],%r704; .loc 1 1065 19 mov.u32 %r224,%r316; .loc 1 1066 24 setp.eq.u32 %r706,%r224,-1; @ %r706 bra $L232; .loc 1 1066 8 setp.eq.u64 %r707,%r360,0; @ %r707 bra $L110; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r224; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r709,[%value_in]; } .loc 1 1066 24 add.u64 %r360,%r360,-1; setp.eq.u32 %r710,%r709,0; @ %r710 bra $L111; bra $L110; $L108: .loc 1 1071 19 and.b32 %r711,%r34,1; .loc 1 1071 12 setp.eq.u32 %r712,%r711,0; @ %r712 bra $L112; .loc 1 1081 10 add.u64 %r393,%r411,7; and.b64 %r392,%r393,-8; add.u64 %r411,%r392,8; ld.u64 %r225,[%r392]; .loc 1 1082 14 mov.u64 %r228,%r158; cvt.u32.u64 %r1104,%r228; bra $L113; $L117: .loc 1 1085 10 st.u32 [%r225],%r325; add.u64 %r225,%r225,4; $L113: cvt.u32.u64 %r715,%r228; vsub.u32.u32.u32.add %r205,%r52,%r715,%r1104; mov.u64 %r30,%r225; .loc 1 329 9 ld.u32 %r322,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r716,%r322,0; @ %r716 bra $L114; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r719,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r720,%r719,0; @ %r720 bra $L210; .loc 1 333 10 ld.u32 %r322,[%r409+8]; $L114: .loc 1 331 23 ld.u64 %r324,[%r409]; .loc 1 331 6 ld.u32 %r325,[%r324]; .loc 1 332 10 add.u64 %r721,%r324,4; st.u64 [%r409],%r721; .loc 1 333 10 add.u32 %r722,%r322,-4; st.u32 [%r409+8],%r722; .loc 1 1082 19 mov.u32 %r223,%r325; .loc 1 1083 24 setp.eq.u32 %r724,%r223,-1; @ %r724 bra $L210; .loc 1 1083 8 setp.eq.u64 %r725,%r228,0; @ %r725 bra $L116; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r223; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r727,[%value_in]; } .loc 1 1083 24 add.u64 %r228,%r228,-1; setp.eq.u32 %r728,%r727,0; @ %r728 bra $L117; bra $L116; $L210: .loc 1 1093 11 mov.u32 %r729,0; st.u32 [%r225],%r729; .loc 1 1097 17 add.u32 %r407,%r407,1; mov.u32 %r52,%r205; mov.u64 %r164,%r185; bra $L18; $L112: .loc 1 1107 18 and.b32 %r73,%r34,16; .loc 1 1107 11 setp.ne.u32 %r1106,%r73,0; @ %r1106 bra $L233; .loc 1 1114 7 add.u64 %r395,%r411,7; and.b64 %r394,%r395,-8; add.u64 %r411,%r394,8; ld.u64 %r167,[%r394]; bra $L118; $L233: .loc 1 1108 7 add.u64 %r167,%frame,1408; $L118: .loc 1 1115 8 mov.u64 %r733,8; mov.u32 %r732,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1113; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r732; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r733; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r735,[%value_in]; } .loc 1 1116 14 bra $L119; $L126: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r167; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r335; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1113; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r740,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r741,%r740,-1; @ %r741 bra $L45; .loc 1 1123 8 setp.ne.u64 %r742,%r740,0; @ %r742 bra $L120; .loc 1 1123 20 ld.u32 %r743,[%frame+1400]; setp.eq.u32 %r744,%r743,-4; @ %r744 bra $L121; $L120: .loc 1 1124 12 add.u64 %r158,%r158,-1; $L121: .loc 1 1125 8 @ %r1106 bra $L122; .loc 1 1127 13 add.u64 %r167,%r167,%r740; $L122: .loc 1 1132 10 add.u32 %r52,%r52,1; $L119: .loc 1 329 9 ld.u32 %r332,[%r409+8]; .loc 1 329 6 setp.gt.s32 %r746,%r332,0; @ %r746 bra $L123; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r749,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r750,%r749,0; @ %r750 bra $L211; .loc 1 333 10 ld.u32 %r332,[%r409+8]; $L123: .loc 1 331 23 ld.u64 %r334,[%r409]; .loc 1 331 6 ld.u32 %r335,[%r334]; .loc 1 332 10 add.u64 %r751,%r334,4; st.u64 [%r409],%r751; .loc 1 333 10 add.u32 %r752,%r332,-4; st.u32 [%r409+8],%r752; .loc 1 1116 19 mov.u32 %r220,%r335; .loc 1 1117 22 setp.eq.u32 %r754,%r220,-1; @ %r754 bra $L211; .loc 1 1117 8 setp.eq.u64 %r755,%r158,0; @ %r755 bra $L125; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r220; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r757,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r758,%r757,0; @ %r758 bra $L126; bra $L125; $L211: .loc 1 1136 11 @ %r1106 bra $L234; .loc 1 1138 10 mov.u32 %r760,0; st.u8 [%r167],%r760; .loc 1 1142 14 add.u32 %r407,%r407,1; mov.u64 %r164,%r185; bra $L18; $L213: .loc 1 1150 19 add.u64 %r761,%r158,-1; .loc 1 1150 7 setp.le.u64 %r762,%r761,348; .loc 1 1151 12 selp.u64 %r158,%r158,349,%r762; .loc 1 1152 10 or.b32 %r162,%r34,1408; .loc 1 329 9 ld.u32 %r347,[%r409+8]; mov.u64 %r202,%frame; shl.b64 %r763,%r158,2; add.u64 %r194,%r763,%frame; $L145: mov.u64 %r30,%r202; .loc 1 329 6 setp.gt.s32 %r764,%r347,0; @ %r764 bra $L128; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r767,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r768,%r767,0; @ %r768 bra $L129; .loc 1 333 10 ld.u32 %r347,[%r409+8]; $L128: .loc 1 331 23 ld.u64 %r342,[%r409]; .loc 1 331 6 ld.u32 %r343,[%r342]; .loc 1 332 10 add.u64 %r769,%r342,4; st.u64 [%r409],%r769; .loc 1 333 10 add.u32 %r347,%r347,-4; st.u32 [%r409+8],%r347; .loc 1 1155 10 mov.u32 %r204,%r343; setp.gt.u32 %r771,%r204,57; @ %r771 bra $L130; setp.gt.u32 %r772,%r204,55; @ %r772 bra $L131; setp.eq.u32 %r773,%r204,48; @ %r773 bra $L132; setp.gt.u32 %r774,%r204,48; @ %r774 bra $L133; add.u32 %r775,%r204,-43; and.b32 %r776,%r775,-3; setp.eq.u32 %r777,%r776,0; @ ! %r777 bra $L135; bra $L134; $L133: .loc 1 1191 19 cvta.const.u64 %r778,basefix$0; cvt.s64.s32 %r779,%r402; add.u64 %r780,%r779,%r779; add.u64 %r781,%r778,%r780; ld.s16 %r402,[%r781]; .loc 1 1192 11 and.b32 %r162,%r162,-897; .loc 1 1193 5 bra $L136; $L130: setp.gt.u32 %r782,%r204,102; @ %r782 bra $L137; setp.gt.u32 %r783,%r204,96; @ %r783 bra $L138; setp.gt.u32 %r784,%r204,70; @ %r784 bra $L139; setp.gt.u32 %r785,%r204,64; @ ! %r785 bra $L135; bra $L138; $L139: setp.eq.u32 %r786,%r204,88; @ %r786 bra $L140; bra $L135; $L137: setp.eq.u32 %r787,%r204,120; @ %r787 bra $L140; bra $L444; $L132: .loc 1 1172 8 setp.ne.u32 %r788,%r402,0; @ %r788 bra $L142; .loc 1 1175 15 or.b32 %r162,%r162,512; .loc 1 1174 14 mov.u32 %r402,8; $L142: .loc 1 1177 15 and.b32 %r789,%r162,1024; .loc 1 1177 8 setp.eq.u32 %r790,%r789,0; @ %r790 bra $L143; .loc 1 1178 13 and.b32 %r162,%r162,-1409; bra $L136; $L143: .loc 1 1180 13 and.b32 %r162,%r162,-897; bra $L136; $L131: .loc 1 1198 19 cvta.const.u64 %r791,basefix$0; cvt.s64.s32 %r792,%r402; add.u64 %r793,%r792,%r792; add.u64 %r794,%r791,%r793; ld.s16 %r402,[%r794]; .loc 1 1199 8 setp.le.s32 %r795,%r402,8; @ %r795 bra $L135; .loc 1 1201 11 and.b32 %r162,%r162,-897; .loc 1 1202 5 bra $L136; $L138: .loc 1 1218 8 setp.le.s32 %r796,%r402,10; @ %r796 bra $L135; .loc 1 1220 11 and.b32 %r162,%r162,-897; .loc 1 1221 5 bra $L136; $L134: .loc 1 1226 15 and.b32 %r797,%r162,128; .loc 1 1226 8 setp.eq.u32 %r798,%r797,0; @ %r798 bra $L135; .loc 1 1228 15 and.b32 %r206,%r162,-129; .loc 1 1229 15 or.b32 %r162,%r206,65536; .loc 1 1230 9 bra $L136; $L140: .loc 1 1237 16 and.b32 %r799,%r162,512; .loc 1 1237 8 setp.eq.u32 %r800,%r799,0; @ %r800 bra $L135; .loc 1 1237 52 and.b32 %r801,%r162,65536; .loc 1 1237 41 setp.ne.u32 %r802,%r801,0; selp.u64 %r176,8,4,%r802; add.u64 %r803,%frame,%r176; .loc 1 1237 25 setp.ne.u64 %r804,%r202,%r803; @ %r804 bra $L135; .loc 1 1240 15 and.b32 %r162,%r162,-513; .loc 1 1239 14 mov.u32 %r402,16; .loc 1 1241 9 bra $L136; $L444: .loc 1 1250 11 setp.eq.u32 %r805,%r204,-1; @ %r805 bra $L129; $L135: .loc 1 1251 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r204; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L129; $L136: add.u64 %r202,%r202,4; .loc 1 1257 13 st.u32 [%r30],%r343; .loc 1 1153 18 setp.ne.u64 %r809,%r194,%r202; @ %r809 bra $L145; .loc 1 1257 10 mov.u64 %r30,%r194; $L129: .loc 1 1267 14 and.b32 %r810,%r162,256; .loc 1 1267 7 setp.eq.u32 %r811,%r810,0; @ %r811 bra $L146; .loc 1 1269 11 setp.ge.u64 %r812,%frame,%r30; @ %r812 bra $L12; .loc 1 1270 3 ld.u32 %r816,[%r30+-4]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r816; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L12; $L146: .loc 1 1273 9 ld.u32 %r88,[%r30+-4]; .loc 1 1274 23 and.b32 %r817,%r88,-33; .loc 1 1274 7 setp.ne.u32 %r818,%r817,88; @ %r818 bra $L147; .loc 1 1276 8 add.u64 %r30,%r30,-4; .loc 1 1277 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r88; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } $L147: .loc 1 1279 15 and.b32 %r822,%r162,16; .loc 1 1279 7 setp.ne.u32 %r823,%r822,0; @ %r823 bra $L148; .loc 1 1283 11 st.u32 [%r30],%r822; .loc 1 1284 15 mov.u64 %r827,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r827; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r402; call (%value_in),%r54,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r829,[%value_in]; } .loc 1 830 11 add.u64 %r830,%r411,7; and.b64 %r374,%r830,-8; add.u64 %r411,%r374,8; .loc 1 1285 18 and.b32 %r831,%r162,32; .loc 1 1285 11 setp.eq.u32 %r832,%r831,0; @ %r832 bra $L149; .loc 1 1287 12 ld.u64 %r218,[%r374]; .loc 1 1297 11 st.u64 [%r218],%r829; bra $L150; $L149: .loc 1 1306 23 and.b32 %r833,%r162,4; .loc 1 1306 16 setp.eq.u32 %r834,%r833,0; @ %r834 bra $L151; .loc 1 1309 9 ld.u64 %r835,[%r374]; st.u16 [%r835],%r829; bra $L150; $L151: .loc 1 1311 23 and.b32 %r836,%r162,1; .loc 1 1311 16 setp.eq.u32 %r837,%r836,0; @ %r837 bra $L152; .loc 1 1314 9 ld.u64 %r838,[%r374]; st.u64 [%r838],%r829; bra $L150; $L152: .loc 1 1317 23 and.b32 %r839,%r162,2; .loc 1 1317 16 setp.eq.u32 %r840,%r839,0; @ %r840 bra $L153; .loc 1 1320 8 mov.u64 %r841,_wcstoul_r; setp.ne.u64 %r842,%r54,%r841; @ %r842 bra $L154; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r827; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r402; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r847,[%value_in]; } .loc 1 1325 10 mov.u64 %r97,%r847; bra $L155; $L154: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r827; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r402; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r852,[%value_in]; } mov.u64 %r97,%r852; $L155: .loc 1 1325 10 ld.u64 %r853,[%r374]; st.u64 [%r853],%r97; bra $L150; $L153: .loc 1 1331 9 ld.u64 %r854,[%r374]; st.u32 [%r854],%r829; $L150: .loc 1 1333 17 add.u32 %r407,%r407,1; $L148: .loc 1 1335 15 sub.u64 %r855,%r30,%frame; shr.s64 %r857,%r855,2; .loc 1 1335 10 cvt.u32.u64 %r858,%r857; add.u32 %r52,%r858,%r52; .loc 1 1336 4 mov.u64 %r164,%r185; bra $L18; $L451: .loc 1 1356 14 add.u64 %r859,%r158,-1; .loc 1 1356 7 setp.le.u64 %r860,%r859,348; @ %r860 bra $L236; .loc 1 1359 27 cvt.u32.u64 %r861,%r158; .loc 1 1359 19 add.u32 %r173,%r861,-349; .loc 1 1360 14 mov.u64 %r158,349; bra $L156; $L236: .loc 1 1349 13 mov.u32 %r173,%r552; $L156: .loc 1 1362 10 or.b32 %r163,%r34,1920; .loc 1 329 9 ld.u32 %r383,[%r409+8]; add.u32 %r371,%r52,1; .loc 1 1351 9 mov.u32 %r175,0; .loc 1 1350 9 mov.u32 %r174,%r175; .loc 1 1348 13 mov.u64 %r171,0; .loc 1 1364 15 mov.u64 %r170,%r171; .loc 1 1363 11 mov.u64 %r169,%r171; .loc 1 1346 9 mov.u64 %r168,%r171; .loc 1 1365 11 mov.u64 %r400,%frame; $L185: add.u32 %r52,%r371,-1; .loc 1 329 6 setp.gt.s32 %r862,%r383,0; @ %r862 bra $L157; .loc 1 329 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; call (%value_in),__ssrefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r865,[%value_in]; } .loc 1 329 19 setp.ne.u32 %r866,%r865,0; @ %r866 bra $L237; .loc 1 333 10 ld.u32 %r383,[%r409+8]; $L157: .loc 1 331 23 ld.u64 %r350,[%r409]; .loc 1 331 6 ld.u32 %r351,[%r350]; .loc 1 332 10 add.u64 %r867,%r350,4; st.u64 [%r409],%r867; .loc 1 333 10 add.u32 %r383,%r383,-4; st.u32 [%r409+8],%r383; .loc 1 1367 10 mov.u32 %r193,%r351; setp.eq.u32 %r869,%r193,84; @ %r869 bra $L159; setp.gt.u32 %r870,%r193,84; @ %r870 bra $L160; setp.gt.u32 %r871,%r193,57; @ %r871 bra $L161; setp.gt.u32 %r872,%r193,48; @ %r872 bra $L162; setp.eq.u32 %r873,%r193,45; @ %r873 bra $L163; setp.eq.u32 %r874,%r193,48; @ %r874 bra $L164; setp.eq.u32 %r875,%r193,43; @ %r875 bra $L163; bra $L158; $L161: setp.eq.u32 %r876,%r193,70; @ %r876 bra $L165; setp.gt.u32 %r877,%r193,70; @ %r877 bra $L166; setp.eq.u32 %r878,%r193,65; @ %r878 bra $L167; setp.eq.u32 %r879,%r193,69; @ %r879 bra $L168; bra $L158; $L166: setp.eq.u32 %r880,%r193,78; @ %r880 bra $L169; bra $L158; $L160: setp.eq.u32 %r881,%r193,105; @ %r881 bra $L170; setp.gt.u32 %r882,%r193,105; @ %r882 bra $L171; setp.eq.u32 %r883,%r193,101; @ %r883 bra $L168; setp.gt.u32 %r884,%r193,101; @ %r884 bra $L172; setp.eq.u32 %r885,%r193,89; @ %r885 bra $L173; setp.eq.u32 %r886,%r193,97; @ %r886 bra $L167; bra $L158; $L172: setp.eq.u32 %r887,%r193,102; @ %r887 bra $L165; bra $L158; $L171: setp.eq.u32 %r888,%r193,116; @ %r888 bra $L159; setp.eq.u32 %r889,%r193,121; @ %r889 bra $L173; setp.eq.u32 %r890,%r193,110; @ %r890 bra $L169; bra $L158; $L164: .loc 1 1375 15 and.b32 %r891,%r163,256; .loc 1 1375 8 setp.eq.u32 %r892,%r891,0; @ %r892 bra $L162; .loc 1 1377 15 and.b32 %r163,%r163,-129; .loc 1 1378 15 add.u64 %r169,%r169,1; .loc 1 1379 12 setp.eq.u32 %r893,%r173,0; @ %r893 bra $L238; .loc 1 1381 16 add.u32 %r173,%r173,-1; bra $L175; $L162: .loc 1 1396 18 add.u32 %r894,%r174,%r175; .loc 1 1396 8 setp.ne.u32 %r895,%r894,0; @ ! %r895 bra $L445; setp.eq.u64 %r1101,%r169,0; bra $L176; $L445: .loc 1 1398 15 and.b32 %r163,%r163,-385; .loc 1 1399 9 bra $L177; $L163: .loc 1 1405 15 and.b32 %r896,%r163,128; .loc 1 1405 8 setp.eq.u32 %r897,%r896,0; @ ! %r897 bra $L446; setp.eq.u64 %r1101,%r169,0; bra $L176; $L446: .loc 1 1407 15 and.b32 %r163,%r163,-129; .loc 1 1408 9 bra $L177; $L169: .loc 1 1413 18 cvt.u16.u32 %r899,%r174; set.u32.eq.u16 %r900,%r899,0; neg.s32 %r901,%r900; mov.u32 %r898,%r901; .loc 1 1413 33 set.u32.eq.u64 %r903,%r169,0; neg.s32 %r904,%r903; mov.u32 %r902,%r904; .loc 1 1413 23 cvt.u16.u8 %r1114,%r898; mov.u16 %r906,%r1114; cvt.u16.u8 %r1114,%r902; mov.u16 %r907,%r1114; and.b16 %r905,%r906,%r907; cvt.u32.u16 %r908,%r905; .loc 1 1413 8 cvt.u16.u8 %r909,%r908; setp.eq.u16 %r910,%r909,0; @ %r910 bra $L178; .loc 1 1414 19 and.b32 %r911,%r163,1792; .loc 1 1414 9 setp.ne.u32 %r912,%r911,1792; @ %r912 bra $L179; .loc 1 1417 15 and.b32 %r163,%r163,-1921; .loc 1 1418 18 mov.u32 %r174,1; .loc 1 1419 9 mov.u64 %r169,0; bra $L177; $L178: .loc 1 1421 8 setp.eq.u16 %r914,%r899,2; @ %r914 bra $L239; $L179: .loc 1 1426 18 cvt.u16.u32 %r916,%r175; set.u32.eq.u16 %r917,%r916,1; neg.s32 %r918,%r917; mov.u32 %r915,%r918; .loc 1 1426 35 set.u32.eq.u16 %r921,%r916,4; neg.s32 %r922,%r921; mov.u32 %r919,%r922; .loc 1 1426 23 cvt.u16.u8 %r1114,%r915; mov.u16 %r924,%r1114; cvt.u16.u8 %r1114,%r919; mov.u16 %r925,%r1114; or.b16 %r923,%r924,%r925; cvt.u32.u16 %r926,%r923; .loc 1 1426 8 cvt.u16.u8 %r927,%r926; setp.eq.u16 %r928,%r927,0; @ ! %r928 bra $L447; setp.eq.u64 %r1101,%r169,0; bra $L176; $L447: .loc 1 1428 17 add.u16 %r930,%r916,1; cvt.u32.u16 %r932,%r930; cvt.s32.s8 %r175,%r932; .loc 1 1429 9 bra $L177; $L167: .loc 1 1434 8 cvt.u16.u32 %r934,%r174; setp.eq.u16 %r935,%r934,1; @ %r935 bra $L240; setp.eq.u64 %r1101,%r169,0; bra $L176; $L170: .loc 1 1441 18 cvt.u16.u32 %r937,%r175; set.u32.eq.u16 %r938,%r937,0; neg.s32 %r939,%r938; mov.u32 %r936,%r939; .loc 1 1441 33 set.u32.eq.u64 %r941,%r169,0; neg.s32 %r942,%r941; mov.u32 %r940,%r942; .loc 1 1441 23 cvt.u16.u8 %r1114,%r936; mov.u16 %r944,%r1114; cvt.u16.u8 %r1114,%r940; mov.u16 %r945,%r1114; and.b16 %r943,%r944,%r945; cvt.u32.u16 %r946,%r943; .loc 1 1441 8 cvt.u16.u8 %r947,%r946; setp.eq.u16 %r948,%r947,0; @ %r948 bra $L180; .loc 1 1442 19 and.b32 %r949,%r163,1792; .loc 1 1442 9 setp.ne.u32 %r950,%r949,1792; @ %r950 bra $L241; .loc 1 1445 15 and.b32 %r163,%r163,-1921; .loc 1 1446 18 mov.u32 %r175,1; .loc 1 1447 9 mov.u64 %r169,0; bra $L177; $L180: .loc 1 1449 18 cvt.u32.u32 %r951,%r175; cvt.u16.u8 %r953,%r951; add.u16 %r952,%r953,-3; cvt.u32.u16 %r954,%r952; cvt.u16.u8 %r1114,%r954; mov.u16 %r956,%r1114; .loc 1 1449 8 and.b16 %r958,%r956,253; setp.ne.u16 %r959,%r958,0; @ ! %r959 bra $L448; setp.eq.u64 %r1101,%r169,0; bra $L176; $L448: .loc 1 1451 17 add.u16 %r960,%r953,1; cvt.u32.u16 %r962,%r960; cvt.s32.s8 %r175,%r962; .loc 1 1452 9 bra $L177; $L165: .loc 1 1457 8 cvt.u16.u32 %r963,%r175; setp.eq.u16 %r964,%r963,2; @ %r964 bra $L242; setp.eq.u64 %r1101,%r169,0; bra $L176; $L159: .loc 1 1465 8 cvt.u16.u32 %r965,%r175; setp.eq.u16 %r966,%r965,6; @ %r966 bra $L243; setp.eq.u64 %r1101,%r169,0; bra $L176; $L173: .loc 1 1473 8 cvt.u16.u32 %r967,%r175; setp.eq.u16 %r968,%r967,7; @ %r968 bra $L244; setp.eq.u64 %r1101,%r169,0; bra $L176; $L168: .loc 1 1482 16 and.b32 %r969,%r163,1280; .loc 1 1482 8 setp.eq.u32 %r970,%r969,1024; @ %r970 bra $L181; .loc 1 1483 20 and.b32 %r971,%r163,1024; .loc 1 1483 9 setp.eq.u32 %r972,%r971,0; @ ! %r972 bra $L449; setp.eq.u64 %r1101,%r169,0; bra $L176; $L449: .loc 1 1483 29 setp.eq.u64 %r1101,%r169,0; @ %r1101 bra $L176; $L181: .loc 1 1485 22 and.b32 %r974,%r163,512; .loc 1 1485 12 setp.ne.u32 %r975,%r974,0; @ %r975 bra $L182; .loc 1 1487 17 sub.u64 %r170,%r169,%r168; mov.u64 %r171,%r400; $L182: .loc 1 1492 11 and.b32 %r129,%r163,-1921; .loc 1 1490 15 or.b32 %r163,%r129,384; .loc 1 1493 16 mov.u64 %r169,0; .loc 1 1494 9 bra $L177; $L237: mov.u32 %r351,-1; .loc 1 1367 10 mov.u32 %r193,%r351; $L158: .loc 1 1498 8 setp.ne.u32 %r976,%r183,%r351; @ %r976 bra $L183; .loc 1 1498 40 and.b32 %r977,%r163,512; .loc 1 1498 30 setp.eq.u32 %r978,%r977,0; @ %r978 bra $L183; .loc 1 1500 15 and.b32 %r163,%r163,-641; .loc 1 1502 9 mov.u64 %r168,%r169; bra $L177; $L183: .loc 1 1506 11 setp.eq.u32 %r979,%r193,-1; @ %r979 bra $L245; setp.eq.u64 %r1101,%r169,0; bra $L176; $L241: mov.u32 %r175,0; mov.u64 %r169,0; setp.eq.u32 %r1101,1,1; $L176: .loc 1 1507 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r193; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r30,%r400; bra $L184; $L239: .loc 1 1423 18 mov.u32 %r174,3; bra $L177; $L240: .loc 1 1436 18 mov.u32 %r174,2; bra $L177; $L242: .loc 1 1459 18 mov.u32 %r175,3; bra $L177; $L243: .loc 1 1467 18 mov.u32 %r175,7; bra $L177; $L244: .loc 1 1475 18 mov.u32 %r175,8; $L177: .loc 1 1510 10 add.u64 %r30,%r400,4; .loc 1 1510 13 st.u32 [%r400],%r351; bra $L174; $L238: mov.u64 %r30,%r400; $L174: .loc 1 1512 13 add.u64 %r158,%r158,-1; .loc 1 1513 8 mov.u32 %r52,%r371; .loc 1 1365 18 setp.eq.u64 %r983,%r158,0; @ ! %r983 bra $L450; setp.eq.u64 %r1101,%r169,0; bra $L184; $L450: .loc 1 329 9 ld.u32 %r383,[%r409+8]; mov.u64 %r400,%r30; $L175: add.u32 %r371,%r371,1; bra $L185; $L245: mov.u64 %r30,%r400; setp.eq.u64 %r1101,%r169,0; $L184: .loc 1 1515 7 @ %r1101 bra $L186; .loc 1 1516 12 and.b32 %r163,%r163,-257; $L186: .loc 1 1525 17 add.u32 %r985,%r174,-1; .loc 1 1525 7 setp.gt.u32 %r986,%r985,1; @ %r986 bra $L187; .loc 1 1530 17 setp.ge.u64 %r987,%frame,%r30; @ %r987 bra $L12; $L188: .loc 1 1532 5 add.u64 %r30,%r30,-4; ld.u32 %r989,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r989; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1530 17 setp.lt.u64 %r991,%frame,%r30; @ %r991 bra $L188; bra $L12; $L187: .loc 1 1540 17 add.u32 %r992,%r175,-1; .loc 1 1540 7 setp.gt.u32 %r993,%r992,6; @ %r993 bra $L189; .loc 1 1542 11 cvt.u16.u32 %r994,%r175; setp.le.s16 %r995,%r994,2; @ %r995 bra $L190; .loc 1 1543 18 cvt.u32.u32 %r996,%r175; cvt.u32.u8 %r187,%r996; .loc 1 1543 21 setp.ne.u16 %r998,%r994,3; @ %r998 bra $L246; bra $L189; $L190: .loc 1 1550 14 setp.lt.u64 %r999,%frame,%r30; @ %r999 bra $L192; bra $L12; $L246: .loc 1 1543 21 mov.u32 %r196,%r52; mov.u32 %r1103,%r196; cvt.u16.u32 %r1006,%r187; cvt.u16.u8 %r1114,%r1103; mov.u16 %r1011,%r1114; $L191: .loc 1 1545 7 add.u64 %r30,%r30,-4; ld.u32 %r1001,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1001; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1546 7 add.u32 %r196,%r196,-1; .loc 1 1543 21 mov.u32 %r1003,%r196; cvt.u16.u8 %r1114,%r1003; mov.u16 %r1005,%r1114; add.u16 %r1004,%r1005,%r1006; cvt.u32.u16 %r1007,%r1004; cvt.u16.u8 %r1114,%r1007; mov.u16 %r1010,%r1114; sub.u16 %r1009,%r1010,%r1011; cvt.u32.u16 %r1012,%r1009; cvt.s16.s8 %r1013,%r1012; setp.gt.s16 %r1014,%r1013,3; @ %r1014 bra $L191; .loc 1 1546 7 mov.u32 %r52,%r196; bra $L189; $L192: .loc 1 1552 9 add.u64 %r30,%r30,-4; ld.u32 %r1016,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1016; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1550 14 setp.lt.u64 %r1018,%frame,%r30; @ %r1018 bra $L192; bra $L12; $L189: .loc 1 1563 14 and.b32 %r1019,%r163,256; .loc 1 1563 7 setp.eq.u32 %r1020,%r1019,0; @ %r1020 bra $L193; .loc 1 1565 18 and.b32 %r1021,%r163,1024; .loc 1 1565 11 setp.eq.u32 %r1022,%r1021,0; @ %r1022 bra $L194; .loc 1 1568 14 setp.ge.u64 %r1023,%frame,%r30; @ %r1023 bra $L12; $L195: .loc 1 1570 9 add.u64 %r30,%r30,-4; ld.u32 %r1025,[%r30]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1025; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1568 14 setp.lt.u64 %r1027,%frame,%r30; @ %r1027 bra $L195; bra $L12; $L194: .loc 1 1576 12 ld.u32 %r157,[%r30+-4]; .loc 1 1578 27 and.b32 %r1028,%r157,-33; .loc 1 1578 11 setp.ne.u32 %r1029,%r1028,69; @ %r1029 bra $L196; .loc 1 1576 10 add.u64 %r30,%r30,-4; .loc 1 1577 8 add.u32 %r52,%r52,-1; bra $L197; $L196: .loc 1 1580 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r157; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 1581 7 ld.u32 %r157,[%r30+-8]; .loc 1 1582 5 add.u32 %r52,%r52,-2; .loc 1 1581 7 add.u64 %r30,%r30,-8; $L197: .loc 1 1584 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r157; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } $L193: .loc 1 1586 15 and.b32 %r1036,%r163,16; .loc 1 1586 7 setp.ne.u32 %r1037,%r1036,0; @ %r1037 bra $L247; .loc 1 1597 11 st.u32 [%r30],%r1036; .loc 1 1598 19 and.b32 %r1039,%r163,1536; .loc 1 1598 11 setp.ne.u32 %r1040,%r1039,1024; @ %r1040 bra $L198; .loc 1 1606 11 setp.eq.u64 %r1041,%r168,%r169; @ %r1041 bra $L199; .loc 1 1601 13 sub.u64 %r199,%r168,%r169; mov.u64 %r171,%r30; bra $L200; $L198: .loc 1 1604 16 setp.eq.u64 %r1042,%r170,0; @ %r1042 bra $L199; .loc 1 1605 55 add.u64 %r1047,%r171,4; .loc 1 1605 27 mov.u32 %r1046,10; mov.u64 %r1045,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1047; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1045; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1046; call (%value_in),_wcstol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r1048,[%value_in]; } .loc 1 1605 25 sub.u64 %r199,%r1048,%r170; $L200: .loc 1 1611 8 setp.lt.u64 %r1050,%r171,%r1111; .loc 1 1613 17 selp.u64 %r171,%r171,%r1112,%r1050; .loc 1 1615 18 st.u64 [%stack],%r199; cvta.const.u64 %r1053,$LC0; mov.u64 %r1052,21; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r171; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1052; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1053; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1054,[%value_in]; } $L199: .loc 1 1624 16 mov.u64 %r1058,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1058; call (%value_in),_wcstod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r1059,[%value_in]; } .loc 1 830 11 add.u64 %r1060,%r411,7; and.b64 %r377,%r1060,-8; add.u64 %r411,%r377,8; .loc 1 1626 18 and.b32 %r1061,%r163,1; .loc 1 1626 11 setp.eq.u32 %r1062,%r1061,0; @ %r1062 bra $L202; .loc 1 1629 9 ld.u64 %r1063,[%r377]; st.f64 [%r1063],%r1059; bra $L203; $L202: .loc 1 1628 8 ld.u64 %r382,[%r377]; .loc 1 1631 23 and.b32 %r1064,%r163,2; .loc 1 1631 16 setp.eq.u32 %r1065,%r1064,0; @ %r1065 bra $L204; .loc 1 1634 10 st.f64 [%r382],%r1059; bra $L203; $L204: .loc 1 1639 8 setp.num.f64 %r1066,%r1059,%r1059; @ %r1066 bra $L205; .loc 1 1640 14 cvta.const.u64 %r1067,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1067; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r1068,[%value_in]; } .loc 1 1640 12 st.f32 [%r382],%r1068; bra $L203; $L205: .loc 1 1642 12 cvt.rn.f32.f64 %r1069,%r1059; st.f32 [%r382],%r1069; $L203: .loc 1 1644 17 add.u32 %r407,%r407,1; mov.u64 %r164,%r185; bra $L18; $L45: .loc 1 1656 63 setp.eq.u32 %r1070,%r407,0; @ %r1070 bra $L248; .loc 1 1656 25 ld.u16 %r1072,[%r409+16]; and.b16 %r1071,%r1072,64; setp.ne.u16 %r1073,%r1071,0; .loc 1 1656 63 selp.u32 %r407,-1,%r407,%r1073; bra $L12; $L215: .loc 1 561 10 mov.u32 %r407,%r156; bra $L12; $L248: .loc 1 1656 63 mov.u32 %r407,-1; bra $L12; $L14: $L206: $L439: .loc 1 568 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r240; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r164,%r185; bra $L18; $L86: .loc 1 975 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r231; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L207; $L94: .loc 1 999 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r230; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L208; $L104: .loc 1 1046 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r226; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L209; $L110: .loc 1 1069 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r224; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } mov.u32 %r52,%r232; mov.u64 %r164,%r185; bra $L18; $L116: .loc 1 1092 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r223; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L210; $L125: .loc 1 1135 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r220; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } bra $L211; $L443: .loc 1 866 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r192; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r409; call _sungetwc_r$isra$0,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 872 7 setp.eq.u32 %r1099,%r401,2; @ %r1099 bra $L212; setp.eq.u32 %r1100,%r401,3; @ ! %r1100 bra $L451; bra $L213; $L220: .loc 1 588 7 mov.u64 %r54,_wcstoul_r; mov.u32 %r32,8; bra $L36; $L221: .loc 1 731 9 mov.u64 %r54,_wcstol_r; bra $L36; $L223: .loc 1 743 9 mov.u64 %r54,_wcstoul_r; .loc 1 744 9 mov.u32 %r32,10; $L36: .loc 1 777 6 mov.u32 %r402,%r32; mov.u32 %r401,3; bra $L60; $L12: .loc 1 1665 1 mov.u32 %value,%r407; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-swab.o/ 0 0 0 644 1668 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: swab .visible .func swab (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/swab.c" // BEGIN GLOBAL FUNCTION DEF: swab .visible .func swab (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r57; mov.u64 %r40,%ar0; mov.u64 %r41,%ar1; mov.u64 %r42,%ar2; .loc 1 28 21 setp.le.s64 %r43,%r42,1; @ %r43 bra $L5; mov.u64 %r34,0; .loc 1 28 12 mov.u64 %r30,1; $L3: .loc 1 30 12 add.u64 %r44,%r40,%r30; .loc 1 31 12 add.u64 %r45,%r40,%r34; ld.s8 %r29,[%r45]; .loc 1 32 17 add.u64 %r46,%r41,%r34; ld.u8 %r47,[%r44]; st.u8 [%r46],%r47; .loc 1 33 17 add.u64 %r48,%r41,%r30; cvt.u32.u32 %r49,%r29; st.u8 [%r48],%r49; .loc 1 28 35 add.u64 %r30,%r30,2; .loc 1 28 21 add.u64 %r34,%r34,2; setp.gt.s64 %r50,%r42,%r30; @ %r50 bra $L3; .loc 1 28 35 add.u64 %r51,%r42,-2; and.b64 %r53,%r51,-2; add.u64 %r32,%r53,3; bra $L2; $L5: .loc 1 28 12 mov.u64 %r32,1; $L2: .loc 1 35 6 setp.ne.u64 %r54,%r42,%r32; @ %r54 bra $L1; .loc 1 36 15 add.u64 %r55,%r41,%r42; add.u64 %r56,%r55,-1; mov.u32 %r57,0; st.u8 [%r56],%r57; $L1: .loc 1 37 1 ret; } lib_a-time.o/ 0 0 0 644 1920 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: time .visible .func (.param .u64 %value_out) time (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/time.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _gettimeofday_r .extern .func (.param .u32 %value_out) _gettimeofday_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: time .visible .func (.param .u64 %value_out) time (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r25,%ar0; .loc 1 40 7 ld.global.u64 %r29,[_impure_ptr]; mov.u64 %r28,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),_gettimeofday_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 40 6 setp.lt.s32 %r31,%r30,0; @ %r31 bra $L4; .loc 1 44 13 ld.u64 %r24,[%frame]; bra $L2; $L4: mov.u64 %r24,-1; $L2: .loc 1 43 6 setp.eq.u64 %r32,%r25,0; @ %r32 bra $L1; .loc 1 44 8 st.u64 [%r25],%r24; $L1: .loc 1 46 1 mov.u64 %value,%r24; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-timesr.o/ 0 0 0 644 897 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _times_r .visible .func (.param .u64 %value_out) _times_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/reent/timesr.c" // BEGIN GLOBAL FUNCTION DECL: times .extern .func (.param .u64 %value_out) times (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _times_r .visible .func (.param .u64 %value_out) _times_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r26; mov.u64 %r24,%ar1; .loc 1 52 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),times,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 54 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } /1637 0 0 0 644 1586 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: timingsafe_bcmp .visible .func (.param .u32 %value_out) timingsafe_bcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/timingsafe_bcmp.c" // BEGIN GLOBAL FUNCTION DEF: timingsafe_bcmp .visible .func (.param .u32 %value_out) timingsafe_bcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r25; .reg .u32 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .u16 %r50; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; .loc 1 26 11 setp.eq.u64 %r37,%r36,0; @ %r37 bra $L4; mov.u64 %r31,%r34; mov.u64 %r30,%r35; add.u64 %r25,%r31,%r36; .loc 1 24 6 mov.u32 %r28,0; $L3: .loc 1 27 16 ld.u8 %r50,[%r31]; mov.u16 %r41,%r50; ld.u8 %r50,[%r30]; mov.u16 %r42,%r50; xor.b16 %r40,%r41,%r42; cvt.u32.u16 %r43,%r40; cvt.u32.u8 %r44,%r43; .loc 1 27 7 or.b32 %r28,%r28,%r44; .loc 1 26 11 add.u64 %r31,%r31,1; add.u64 %r30,%r30,1; setp.ne.u64 %r45,%r25,%r31; @ %r45 bra $L3; .loc 1 28 14 set.u32.ne.u32 %r47,%r28,0; neg.s32 %r33,%r47; bra $L1; $L4: .loc 1 26 11 mov.u32 %r33,0; $L1: .loc 1 29 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } /1662 0 0 0 644 1844 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: timingsafe_memcmp .visible .func (.param .u32 %value_out) timingsafe_memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/timingsafe_memcmp.c" // BEGIN GLOBAL FUNCTION DEF: timingsafe_memcmp .visible .func (.param .u32 %value_out) timingsafe_memcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r25; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r34; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .pred %r51; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; mov.u64 %r43,%ar2; .loc 1 28 23 setp.eq.u64 %r44,%r43,0; @ %r44 bra $L4; mov.u64 %r39,%r41; mov.u64 %r38,%r42; add.u64 %r35,%r39,%r43; .loc 1 26 22 mov.u32 %r34,0; .loc 1 26 13 mov.u32 %r40,%r34; $L3: .loc 1 30 29 ld.u8 %r23,[%r39]; .loc 1 30 37 ld.u8 %r25,[%r38]; .loc 1 30 33 sub.u32 %r45,%r23,%r25; .loc 1 30 21 shr.s32 %r31,%r45,8; .loc 1 33 33 sub.u32 %r46,%r25,%r23; .loc 1 33 21 shr.s32 %r32,%r46,8; .loc 1 39 30 not.b32 %r47,%r34; .loc 1 36 21 sub.u32 %r48,%r31,%r32; .loc 1 39 28 and.b32 %r49,%r47,%r48; .loc 1 39 21 or.b32 %r40,%r40,%r49; .loc 1 42 28 or.b32 %r50,%r31,%r32; .loc 1 42 22 or.b32 %r34,%r34,%r50; .loc 1 28 23 add.u64 %r39,%r39,1; add.u64 %r38,%r38,1; setp.ne.u64 %r51,%r35,%r39; @ %r51 bra $L3; bra $L1; $L4: .loc 1 26 13 mov.u32 %r40,0; $L1: .loc 1 46 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } lib_a-tmpfile.o/0 0 0 644 4479 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _tmpfile_r .visible .func (.param .u64 %value_out) _tmpfile_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdio/tmpfile.c" // BEGIN GLOBAL FUNCTION DECL: tmpfile .visible .func (.param .u64 %value_out) tmpfile; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _tmpnam_r .extern .func (.param .u64 %value_out) _tmpnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _close_r .extern .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _remove_r .extern .func (.param .u32 %value_out) _remove_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fdopen_r .extern .func (.param .u64 %value_out) _fdopen_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {119,98,43,0 }; // BEGIN GLOBAL FUNCTION DEF: _tmpfile_r .visible .func (.param .u64 %value_out) _tmpfile_r (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1024; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .pred %r31; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r42; .reg .u32 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; mov.u64 %r27,%ar0; $L5: .loc 1 63 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),_tmpnam_r,(%out_arg1,%out_arg2); ld.param.u64 %r30,[%value_in]; } .loc 1 63 10 setp.ne.u64 %r31,%r30,0; @ %r31 bra $L2; $L6: .loc 1 64 9 mov.u64 %r26,0; bra $L1; $L2: .loc 1 65 12 mov.u32 %r35,384; mov.u32 %r34,2562; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r34; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r35; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 68 17 setp.ge.s32 %r37,%r36,0; @ %r37 bra $L4; ld.u32 %r38,[%r27]; setp.eq.u32 %r39,%r38,17; @ %r39 bra $L5; bra $L6; $L7: .loc 1 74 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r36; call (%value_in),_close_r,(%out_arg1,%out_arg2); ld.param.u32 %r42,[%value_in]; } $L8: .loc 1 75 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call (%value_in),_remove_r,(%out_arg1,%out_arg2); ld.param.u32 %r45,[%value_in]; } .loc 1 76 15 st.u32 [%r27],%r25; .loc 1 77 10 bra $L1; $L4: .loc 1 71 8 cvta.const.u64 %r49,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r49; call (%value_in),_fdopen_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r50,[%value_in]; } mov.u64 %r26,%r50; .loc 1 72 5 ld.u32 %r25,[%r27]; .loc 1 73 6 setp.eq.u64 %r51,%r26,0; @ ! %r51 bra $L8; bra $L7; $L1: .loc 1 78 1 mov.u64 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: tmpfile .visible .func (.param .u64 %value_out) tmpfile { .reg .u64 %value; .reg .u64 %r25; .reg .u64 %r26; .loc 1 85 10 ld.global.u64 %r25,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),_tmpfile_r,(%out_arg1); ld.param.u64 %r26,[%value_in]; } .loc 1 86 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-tmpnam.o/ 0 0 0 644 11977 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN FUNCTION DECL: worker .func (.param .u32 %value_out) worker (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5); .file 1 "../../../../../../newlib/libc/stdio/tmpnam.c" // BEGIN GLOBAL FUNCTION DECL: _tmpnam_r .visible .func (.param .u64 %value_out) _tmpnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _tempnam_r .visible .func (.param .u64 %value_out) _tempnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: tempnam .visible .func (.param .u64 %value_out) tempnam (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: tmpnam .visible .func (.param .u64 %value_out) tmpnam (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _sprintf_r .extern .func (.param .u32 %value_out) _sprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _open_r .extern .func (.param .u32 %value_out) _open_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _close_r .extern .func (.param .u32 %value_out) _close_r (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _getpid_r .extern .func (.param .u32 %value_out) _getpid_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: getenv .extern .func (.param .u64 %value_out) getenv (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[11] = {37,115,47,37,115,37,120,46,37,120,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[5] = {47,116,109,112,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[1] = {0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[7] = {84,77,80,68,73,82,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {116,0 }; // BEGIN FUNCTION DEF: worker .func (.param .u32 %value_out) worker (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u64 %in_ar5) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,32; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .u64 %r33; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .u32 %r53; .reg .u64 %r55; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; mov.u32 %r32,%ar4; mov.u64 %r33,%ar5; cvta.const.u64 %r55,$LC0; $L4: .loc 1 102 7 ld.u32 %r37,[%r33]; st.u32 [%stack+20],%r37; st.u32 [%stack+16],%r32; st.u64 [%stack+8],%r31; st.u64 [%stack],%r30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r55; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),_sprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r38,[%value_in]; } .loc 1 103 15 ld.u32 %r41,[%r33]; add.u32 %r40,%r41,1; st.u32 [%r33],%r40; .loc 1 104 11 mov.u32 %r45,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r45; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r45; call (%value_in),_open_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r46,[%value_in]; } .loc 1 105 10 setp.ne.u32 %r47,%r46,-1; @ %r47 bra $L2; .loc 1 107 7 ld.u32 %r48,[%r28]; setp.ne.u32 %r49,%r48,88; @ %r49 bra $L5; .loc 1 109 18 mov.u32 %r50,0; st.u8 [%r29],%r50; .loc 1 110 15 mov.u32 %r27,%r45; bra $L1; $L2: .loc 1 114 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r46; call (%value_in),_close_r,(%out_arg1,%out_arg2); ld.param.u32 %r53,[%value_in]; } .loc 1 100 5 bra $L4; $L5: .loc 1 116 10 mov.u32 %r27,1; $L1: .loc 1 117 1 mov.u32 %value,%r27; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _tmpnam_r .visible .func (.param .u64 %value_out) _tmpnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r43; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 126 6 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L7; .loc 1 130 14 add.u64 %r29,%r28,36; $L7: .loc 1 136 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 138 7 add.u64 %r39,%r28,32; cvta.const.u64 %r36,$LC1; cvta.const.u64 %r35,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r36; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r32; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r39; call (%value_in),worker,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r40,[%value_in]; } .loc 1 138 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L9; .loc 1 140 14 ld.u32 %r43,[%r28+32]; add.u32 %r42,%r43,1; st.u32 [%r28+32],%r42; .loc 1 141 14 mov.u64 %r27,%r29; bra $L6; $L9: .loc 1 144 10 mov.u64 %r27,0; $L6: .loc 1 145 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _tempnam_r .visible .func (.param .u64 %value_out) _tempnam_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .u64 %r46; .reg .u64 %r48; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; mov.u64 %r39,%ar2; .loc 1 154 36 setp.ne.u64 %r40,%r39,0; @ %r40 bra $L11; cvta.const.u64 %r39,$LC3; $L11: .loc 1 155 6 setp.ne.u64 %r41,%r38,0; @ %r41 bra $L12; .loc 1 155 29 cvta.const.u64 %r42,$LC4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r42; call (%value_in),getenv,(%out_arg1); ld.param.u64 %r43,[%value_in]; } mov.u64 %r38,%r43; .loc 1 155 19 setp.ne.u64 %r44,%r38,0; @ %r44 bra $L12; .loc 1 156 9 cvta.const.u64 %r38,$LC2; $L12: .loc 1 159 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r46,[%value_in]; } .loc 1 159 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r48,[%value_in]; } .loc 1 159 25 cvt.u32.u64 %r51,%r46; cvt.u32.u64 %r52,%r48; add.u32 %r53,%r51,%r52; .loc 1 159 68 add.u32 %r54,%r53,19; .loc 1 161 14 cvt.s64.s32 %r55,%r54; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r56,[%value_in]; } mov.u64 %r36,%r56; .loc 1 162 6 setp.eq.u64 %r57,%r36,0; @ %r57 bra $L13; .loc 1 165 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 164 13 add.u64 %r66,%r37,32; .loc 1 165 23 cvt.u32.u64 %r67,%r37; .loc 1 164 13 xor.b32 %r68,%r67,%r59; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r36; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r38; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r39; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r68; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r66; call (%value_in),worker,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r69,[%value_in]; } .loc 1 164 10 setp.ne.u32 %r70,%r69,0; @ %r70 bra $L10; $L13: .loc 1 166 9 mov.u64 %r36,0; $L10: .loc 1 169 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: tempnam .visible .func (.param .u64 %value_out) tempnam (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 177 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_tempnam_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 178 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: tmpnam .visible .func (.param .u64 %value_out) tmpnam (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u32 %r43; mov.u64 %r29,%ar0; .loc 1 183 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 126 6 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L20; .loc 1 130 14 add.u64 %r29,%r22,36; $L20: .loc 1 136 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call (%value_in),_getpid_r,(%out_arg1); ld.param.u32 %r32,[%value_in]; } .loc 1 138 7 add.u64 %r39,%r22,32; cvta.const.u64 %r36,$LC1; cvta.const.u64 %r35,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r29; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r35; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r36; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r32; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r39; call (%value_in),worker,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r40,[%value_in]; } .loc 1 138 6 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L22; .loc 1 140 14 ld.u32 %r43,[%r22+32]; add.u32 %r42,%r43,1; st.u32 [%r22+32],%r42; .loc 1 141 14 mov.u64 %r28,%r29; bra $L19; $L22: .loc 1 144 10 mov.u64 %r28,0; $L19: .loc 1 184 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-tolower.o/0 0 0 644 943 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: tolower .visible .func (.param .u32 %value_out) tolower (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/tolower.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: tolower .visible .func (.param .u32 %value_out) tolower (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r34; .reg .u16 %r36; .reg .pred %r37; .reg .u16 %r39; mov.u32 %r28,%ar0; .loc 1 80 10 cvt.s64.s32 %r29,%r28; cvta.const.u64 %r30,_ctype_+1; add.u64 %r31,%r29,%r30; .loc 1 80 39 ld.u8 %r39,[%r31]; mov.u16 %r34,%r39; and.b16 %r36,%r34,3; setp.ne.u16 %r37,%r36,1; @ %r37 bra $L2; add.u32 %r28,%r28,32; $L2: .loc 1 82 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-toupper.o/0 0 0 644 944 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: toupper .visible .func (.param .u32 %value_out) toupper (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/ctype/toupper.c" // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL FUNCTION DEF: toupper .visible .func (.param .u32 %value_out) toupper (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u16 %r34; .reg .u16 %r36; .reg .pred %r37; .reg .u16 %r39; mov.u32 %r28,%ar0; .loc 1 80 10 cvt.s64.s32 %r29,%r28; cvta.const.u64 %r30,_ctype_+1; add.u64 %r31,%r29,%r30; .loc 1 80 38 ld.u8 %r39,[%r31]; mov.u16 %r34,%r39; and.b16 %r36,%r34,3; setp.ne.u16 %r37,%r36,2; @ %r37 bra $L2; add.u32 %r28,%r28,-32; $L2: .loc 1 82 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } /1689 0 0 0 644 5315 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .visible .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/time/tzcalc_limits.c" // BEGIN GLOBAL VAR DECL: __month_lengths .extern .const .align 4 .u32 __month_lengths[24]; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DEF: __tzcalc_limits .visible .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r58; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r78; .reg .u64 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r94; .reg .u32 %r96; .reg .u32 %r100; .reg .u64 %r101; .reg .u32 %r102; .reg .u64 %r103; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u16 %r108; .reg .pred %r109; .reg .pred %r114; .reg .pred %r116; .reg .pred %r121; .reg .u32 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .u32 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r137; .reg .pred %r139; .reg .pred %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .pred %r147; .reg .u64 %r149; .reg .u64 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r154; .reg .pred %r155; .reg .u64 %r156; .reg .pred %r157; .reg .u64 %r158; .reg .pred %r159; mov.u32 %r84,%ar0; .loc 1 18 29 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r85,[%value_in]; } .loc 1 20 6 setp.le.s32 %r86,%r84,1969; @ %r86 bra $L16; .loc 1 23 16 st.u32 [%r85+4],%r84; .loc 1 25 9 add.u32 %r87,%r84,-1970; .loc 1 28 16 add.u32 %r89,%r84,-1969; .loc 1 28 42 shr.s32 %r90,%r89,2; .loc 1 27 27 mad.lo.u32 %r91,%r87,365,%r90; .loc 1 29 16 add.u32 %r92,%r84,-1901; .loc 1 29 45 div.s32 %r94,%r92,-100; .loc 1 30 16 add.u32 %r96,%r84,-1601; .loc 1 30 50 div.s32 %r100,%r96,400; .loc 1 27 13 vadd.u32.u32.u32.add %r61,%r91,%r94,%r100; .loc 1 46 22 rem.s32 %r38,%r84,100; rem.s32 %r39,%r84,400; add.u64 %r72,%r85,8; add.u64 %r68,%r85,88; set.u32.eq.u32 %r102,%r39,0; cvt.s64.s32 %r101,%r102; neg.s64 %r103,%r101; add.u64 %r105,%r103,%r103; add.u64 %r106,%r105,%r103; shl.b64 %r107,%r106,4; and.b32 %r154,%r84,3; setp.ne.u32 %r155,%r154,0; .loc 1 48 21 cvta.const.u64 %r156,__month_lengths; .loc 1 46 22 setp.ne.u32 %r157,%r38,0; selp.u64 %r158,48,%r107,%r157; .loc 1 38 7 setp.ne.u32 %r159,%r39,0; .loc 1 69 46 mov.u32 %r142,86400; $L15: .loc 1 34 26 ld.s8 %r31,[%r72]; .loc 1 37 38 ld.u32 %r82,[%r72+12]; .loc 1 34 10 cvt.u16.u32 %r108,%r31; setp.ne.u16 %r109,%r108,74; @ %r109 bra $L3; .loc 1 37 21 add.u32 %r32,%r61,%r82; .loc 1 38 20 @ %r155 bra $L4; .loc 1 38 7 @ %r157 bra $L5; $L4: @ %r159 bra $L6; $L5: .loc 1 38 20 setp.le.s32 %r114,%r82,59; @ %r114 bra $L6; .loc 1 37 9 add.u32 %r32,%r32,1; $L6: .loc 1 40 4 add.u32 %r55,%r32,-1; bra $L7; $L3: .loc 1 42 15 setp.ne.u16 %r116,%r108,68; @ %r116 bra $L8; .loc 1 43 7 add.u32 %r55,%r61,%r82; bra $L7; $L8: .loc 1 46 22 selp.u64 %r78,%r107,%r158,%r155; .loc 1 48 21 add.u64 %r81,%r78,%r156; .loc 1 52 35 ld.u32 %r67,[%r72+4]; .loc 1 52 18 setp.le.s32 %r121,%r67,1; @ %r121 bra $L19; mov.u64 %r58,%r81; add.u32 %r122,%r67,-1; cvt.u64.u32 %r123,%r122; shl.b64 %r124,%r123,2; add.u64 %r73,%r124,%r81; .loc 1 50 9 mov.u32 %r64,%r61; $L11: .loc 1 53 11 ld.u32 %r125,[%r58]; add.u32 %r64,%r64,%r125; .loc 1 52 18 add.u64 %r58,%r58,4; setp.ne.u64 %r126,%r73,%r58; @ %r126 bra $L11; .loc 1 62 22 cvt.s64.s32 %r127,%r67; shl.b64 %r128,%r127,2; add.u64 %r129,%r128,-4; add.u64 %r81,%r81,%r129; bra $L10; $L19: .loc 1 50 9 mov.u32 %r64,%r61; $L10: .loc 1 55 25 add.u32 %r130,%r64,4; .loc 1 55 11 rem.s32 %r132,%r130,7; .loc 1 57 14 sub.u32 %r56,%r82,%r132; .loc 1 58 7 setp.ge.s32 %r133,%r56,0; @ %r133 bra $L12; .loc 1 59 16 add.u32 %r56,%r56,7; $L12: .loc 1 60 31 ld.u32 %r135,[%r72+8]; add.u32 %r134,%r135,-1; .loc 1 60 36 shl.b32 %r137,%r134,3; .loc 1 60 10 vsub.u32.u32.u32.add %r63,%r137,%r134,%r56; .loc 1 62 22 ld.u32 %r66,[%r81]; .loc 1 62 17 setp.lt.s32 %r139,%r63,%r66; @ %r139 bra $L13; $L14: .loc 1 63 12 add.u32 %r63,%r63,-7; .loc 1 62 17 setp.ge.s32 %r140,%r63,%r66; @ %r140 bra $L14; $L13: .loc 1 65 9 add.u32 %r55,%r64,%r63; $L7: .loc 1 69 46 mul.wide.s32 %r141,%r55,%r142; .loc 1 70 22 ld.s32 %r143,[%r72+16]; .loc 1 69 59 add.u64 %r144,%r141,%r143; .loc 1 70 25 ld.u64 %r146,[%r72+32]; add.u64 %r145,%r144,%r146; .loc 1 69 30 st.u64 [%r72+24],%r145; .loc 1 32 17 add.u64 %r72,%r72,40; setp.ne.u64 %r147,%r68,%r72; @ %r147 bra $L15; .loc 1 73 43 ld.u64 %r149,[%r85+32]; ld.u64 %r150,[%r85+72]; set.u32.lt.s64 %r151,%r149,%r150; neg.s32 %r152,%r151; .loc 1 73 17 st.u32 [%r85],%r152; .loc 1 75 10 mov.u32 %r83,1; bra $L1; $L16: .loc 1 21 12 mov.u32 %r83,0; $L1: .loc 1 76 1 mov.u32 %value,%r83; st.param.u32 [%value_out],%value; ret; } lib_a-tzlock.o/ 0 0 0 644 448 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __tz_lock .visible .func __tz_lock; .file 1 "../../../../../../newlib/libc/time/tzlock.c" // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .visible .func __tz_unlock; // BEGIN GLOBAL FUNCTION DEF: __tz_lock .visible .func __tz_lock { .loc 1 44 1 ret; } // BEGIN GLOBAL FUNCTION DEF: __tz_unlock .visible .func __tz_unlock { $LFB3: ret; $LFE3: } lib_a-tzset.o/ 0 0 0 644 1147 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .visible .func _tzset_unlocked; .file 1 "../../../../../../newlib/libc/time/tzset.c" // BEGIN GLOBAL FUNCTION DECL: tzset .visible .func tzset; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked_r .extern .func _tzset_unlocked_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DEF: _tzset_unlocked .visible .func _tzset_unlocked { .reg .u64 %r24; .loc 1 67 3 ld.global.u64 %r24,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call _tzset_unlocked_r,(%out_arg1); } .loc 1 68 1 ret; } // BEGIN GLOBAL FUNCTION DEF: tzset .visible .func tzset { .reg .u64 %r24; .loc 1 73 3 { call __tz_lock; } .loc 1 74 3 ld.global.u64 %r24,[_impure_ptr]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call _tzset_unlocked_r,(%out_arg1); } .loc 1 75 3 { call __tz_unlock; } .loc 1 76 1 ret; } lib_a-tzset_r.o/0 0 0 644 17569 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked_r .visible .func _tzset_unlocked_r (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/time/tzset_r.c" // BEGIN GLOBAL FUNCTION DECL: _tzset_r .visible .func _tzset_r (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: _tzname .extern .global .align 8 .u64 _tzname[2]; // BEGIN GLOBAL VAR DECL: _daylight .extern .global .align 4 .u32 _daylight[1]; // BEGIN GLOBAL VAR DECL: _timezone .extern .global .align 8 .u64 _timezone[1]; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: _getenv_r .extern .func (.param .u64 %value_out) _getenv_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: siscanf .extern .func (.param .u32 %value_out) siscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strtoul .extern .func (.param .u64 %value_out) strtoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __tzcalc_limits .extern .func (.param .u32 %value_out) __tzcalc_limits (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[19] = {47,37,104,117,37,110,58,37,104,117,37,110,58,37,104,117,37,110,0 }; // BEGIN VAR DEF: __tzname_std .global .align 1 .u8 __tzname_std[11]; // BEGIN VAR DEF: __tzname_dst .global .align 1 .u8 __tzname_dst[11]; // BEGIN VAR DEF: prev_tzenv .global .align 8 .u64 prev_tzenv[1]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {84,90,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {71,77,84,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[15] = {37,49,48,91,94,48,45,57,44,43,45,93,37,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[18] = {37,104,117,37,110,58,37,104,117,37,110,58,37,104,117,37,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[19] = {77,37,104,117,37,110,46,37,104,117,37,110,46,37,104,117,37,110,0 }; // BEGIN GLOBAL FUNCTION DEF: _tzset_unlocked_r .visible .func _tzset_unlocked_r (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,48; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r23; .reg .u32 %r33; .reg .u32 %r53; .reg .u64 %r65; .reg .u32 %r68; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r86; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r100; .reg .u64 %r103; .reg .u32 %r118; .reg .u32 %r122; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r128; .reg .u64 %r129; .reg .pred %r130; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r138; .reg .pred %r140; .reg .u32 %r143; .reg .pred %r144; .reg .u64 %r147; .reg .u64 %r150; .reg .u64 %r151; .reg .pred %r152; .reg .u64 %r155; .reg .u16 %r156; .reg .u32 %r157; .reg .pred %r158; .reg .u32 %r163; .reg .pred %r165; .reg .u64 %r166; .reg .u16 %r167; .reg .pred %r168; .reg .pred %r170; .reg .u16 %r171; .reg .u32 %r181; .reg .pred %r183; .reg .u64 %r185; .reg .u64 %r187; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r194; .reg .u64 %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r200; .reg .u64 %r204; .reg .u32 %r205; .reg .pred %r207; .reg .u64 %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r215; .reg .u16 %r216; .reg .pred %r217; .reg .pred %r219; .reg .u16 %r220; .reg .u32 %r223; .reg .u32 %r232; .reg .pred %r234; .reg .u64 %r235; .reg .u64 %r237; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r248; .reg .u64 %r249; .reg .u16 %r250; .reg .pred %r251; .reg .u16 %r252; .reg .pred %r253; .reg .u64 %r255; .reg .u32 %r262; .reg .pred %r264; .reg .u16 %r265; .reg .u16 %r266; .reg .pred %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .pred %r270; .reg .u16 %r271; .reg .pred %r272; .reg .u32 %r273; .reg .u64 %r274; .reg .pred %r276; .reg .u32 %r279; .reg .u64 %r280; .reg .u16 %r281; .reg .pred %r283; .reg .pred %r284; .reg .u32 %r285; .reg .u32 %r286; .reg .u64 %r287; .reg .u32 %r288; .reg .u32 %r289; .reg .u64 %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .u32 %r294; .reg .u16 %r295; .reg .u32 %r296; .reg .pred %r297; .reg .u64 %r299; .reg .u32 %r306; .reg .u32 %r308; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r317; .reg .u64 %r318; .reg .pred %r319; .reg .u32 %r321; .reg .u32 %r322; .reg .u64 %r324; .reg .u32 %r325; .reg .u32 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .u64 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r336; mov.u64 %r125,%ar0; .loc 1 23 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r126,[%value_in]; } .loc 1 25 16 cvta.const.u64 %r128,$LC0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r125; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r128; call (%value_in),_getenv_r,(%out_arg1,%out_arg2); ld.param.u64 %r129,[%value_in]; } mov.u64 %r90,%r129; .loc 1 25 6 setp.ne.u64 %r130,%r129,0; @ %r130 bra $L2; .loc 1 27 12 st.global.u64 [_timezone],%r129; .loc 1 28 12 mov.u32 %r132,0; st.global.u32 [_daylight],%r132; .loc 1 29 13 cvta.global.u64 %r133,_tzname; cvta.const.u64 %r134,$LC1; st.u64 [%r133],%r134; .loc 1 30 13 st.u64 [%r133+8],%r134; .loc 1 31 2 ld.global.u64 %r138,[prev_tzenv]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r138; call __nvptx_free,(%out_arg1); } .loc 1 32 13 st.global.u64 [prev_tzenv],%r129; .loc 1 33 2 bra $L1; $L2: .loc 1 36 18 ld.global.u64 %r23,[prev_tzenv]; .loc 1 36 6 setp.eq.u64 %r140,%r23,0; @ %r140 bra $L4; .loc 1 36 29 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r129; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r143,[%value_in]; } .loc 1 36 26 setp.eq.u32 %r144,%r143,0; @ %r144 bra $L1; .loc 1 39 3 ld.global.u64 %r23,[prev_tzenv]; $L4: { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __nvptx_free,(%out_arg1); } .loc 1 40 38 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r129; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r147,[%value_in]; } .loc 1 40 16 add.u64 %r150,%r147,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r125; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r150; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r151,[%value_in]; } .loc 1 40 14 st.global.u64 [prev_tzenv],%r151; .loc 1 41 6 setp.eq.u64 %r152,%r151,0; @ %r152 bra $L6; .loc 1 42 5 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r151; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r129; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r155,[%value_in]; } $L6: .loc 1 45 6 ld.u8 %r157,[%r129]; cvt.s16.s8 %r156,%r157; setp.ne.u16 %r158,%r156,58; @ %r158 bra $L7; .loc 1 46 5 add.u64 %r90,%r129,1; $L7: .loc 1 48 7 add.u64 %r329,%frame,8; st.u64 [%stack+8],%r329; cvta.global.u64 %r333,__tzname_std; st.u64 [%stack],%r333; cvta.const.u64 %r327,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r90; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r327; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r163,[%value_in]; } .loc 1 48 6 setp.le.s32 %r165,%r163,0; @ %r165 bra $L1; .loc 1 51 9 ld.s32 %r166,[%frame+8]; add.u64 %r91,%r90,%r166; .loc 1 54 7 ld.s8 %r33,[%r91]; .loc 1 54 6 cvt.u16.u32 %r167,%r33; setp.ne.u16 %r168,%r167,45; @ %r168 bra $L8; .loc 1 57 7 add.u64 %r91,%r91,1; .loc 1 56 12 mov.u32 %r95,-1; bra $L9; $L8: .loc 1 59 11 setp.ne.u16 %r170,%r167,43; @ %r170 bra $L25; .loc 1 60 5 add.u64 %r91,%r91,1; .loc 1 53 8 mov.u32 %r95,1; bra $L9; $L25: mov.u32 %r95,1; $L9: .loc 1 62 6 mov.u16 %r171,0; st.u16 [%frame+20],%r171; .loc 1 63 6 st.u16 [%frame+18],%r171; .loc 1 65 7 st.u64 [%stack+40],%r329; add.u64 %r330,%frame,18; st.u64 [%stack+32],%r330; st.u64 [%stack+24],%r329; add.u64 %r331,%frame,20; st.u64 [%stack+16],%r331; st.u64 [%stack+8],%r329; add.u64 %r332,%frame,22; st.u64 [%stack],%r332; cvta.const.u64 %r328,$LC3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r91; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r328; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r181,[%value_in]; } .loc 1 65 6 setp.le.s32 %r183,%r181,0; @ %r183 bra $L1; .loc 1 68 52 ld.u16 %r185,[%frame+20]; shl.b64 %r187,%r185,4; sub.u64 %r188,%r187,%r185; shl.b64 %r189,%r188,2; .loc 1 68 39 ld.u16 %r190,[%frame+18]; add.u64 %r191,%r189,%r190; .loc 1 68 71 ld.u16 %r194,[%frame+22]; .loc 1 68 57 mad.lo.u64 %r195,%r194,3600,%r191; .loc 1 68 33 cvt.s64.s32 %r196,%r95; mul.lo.u64 %r197,%r195,%r196; .loc 1 68 26 st.u64 [%r126+40],%r197; .loc 1 69 14 cvta.global.u64 %r198,_tzname; st.u64 [%r198],%r333; .loc 1 70 9 ld.s32 %r200,[%frame+8]; add.u64 %r100,%r91,%r200; .loc 1 72 7 st.u64 [%stack+8],%r329; cvta.global.u64 %r204,__tzname_dst; st.u64 [%stack],%r204; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r100; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r327; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r205,[%value_in]; } .loc 1 72 6 setp.gt.s32 %r207,%r205,0; @ %r207 bra $L10; .loc 1 74 18 ld.u64 %r210,[%r198]; st.u64 [%r198+8],%r210; .loc 1 75 17 ld.u64 %r211,[%r126+40]; st.global.u64 [_timezone],%r211; .loc 1 76 17 mov.u32 %r212,0; st.global.u32 [_daylight],%r212; .loc 1 77 7 bra $L1; $L10: .loc 1 80 16 st.u64 [%r198+8],%r204; .loc 1 82 9 ld.s32 %r215,[%frame+8]; add.u64 %r92,%r100,%r215; .loc 1 86 7 ld.s8 %r53,[%r92]; .loc 1 86 6 cvt.u16.u32 %r216,%r53; setp.ne.u16 %r217,%r216,45; @ %r217 bra $L11; .loc 1 89 7 add.u64 %r92,%r92,1; .loc 1 88 12 mov.u32 %r96,-1; bra $L12; $L11: .loc 1 91 11 setp.ne.u16 %r219,%r216,43; @ %r219 bra $L26; .loc 1 92 5 add.u64 %r92,%r92,1; .loc 1 85 8 mov.u32 %r96,1; bra $L12; $L26: mov.u32 %r96,1; $L12: .loc 1 94 6 mov.u16 %r220,0; st.u16 [%frame+22],%r220; .loc 1 95 6 st.u16 [%frame+20],%r220; .loc 1 96 6 st.u16 [%frame+18],%r220; .loc 1 98 6 mov.u32 %r223,0; st.u32 [%frame+8],%r223; .loc 1 99 7 st.u64 [%stack+40],%r329; st.u64 [%stack+32],%r330; st.u64 [%stack+24],%r329; st.u64 [%stack+16],%r331; st.u64 [%stack+8],%r329; st.u64 [%stack],%r332; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r328; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r232,[%value_in]; } .loc 1 99 6 setp.gt.s32 %r234,%r232,0; @ %r234 bra $L13; .loc 1 100 53 ld.u64 %r235,[%r126+40]; add.u64 %r65,%r235,-3600; bra $L14; $L13: .loc 1 102 54 ld.u16 %r237,[%frame+20]; shl.b64 %r239,%r237,4; sub.u64 %r240,%r239,%r237; shl.b64 %r241,%r240,2; .loc 1 102 41 ld.u16 %r242,[%frame+18]; add.u64 %r243,%r241,%r242; .loc 1 102 73 ld.u16 %r246,[%frame+22]; .loc 1 102 59 mad.lo.u64 %r247,%r246,3600,%r243; .loc 1 102 35 cvt.s64.s32 %r248,%r96; mul.lo.u64 %r65,%r247,%r248; $L14: st.u64 [%r126+80],%r65; .loc 1 104 9 ld.s32 %r249,[%frame+8]; add.u64 %r93,%r92,%r249; add.u64 %r103,%r126,8; .loc 1 106 10 mov.u32 %r118,0; .loc 1 113 8 add.u64 %r334,%frame,12; add.u64 %r335,%frame,14; add.u64 %r336,%frame,16; bra $L23; $L29: mov.u32 %r118,1; $L23: .loc 1 108 11 ld.s8 %r68,[%r93]; .loc 1 108 10 cvt.u16.u32 %r250,%r68; setp.ne.u16 %r251,%r250,44; @ %r251 bra $L15; .loc 1 111 11 ld.s8 %r68,[%r93+1]; .loc 1 109 9 add.u64 %r93,%r93,1; $L15: .loc 1 111 10 cvt.u16.u32 %r252,%r68; setp.ne.u16 %r253,%r252,77; @ %r253 bra $L16; .loc 1 113 8 st.u64 [%stack+40],%r329; st.u64 [%stack+32],%r334; st.u64 [%stack+24],%r329; st.u64 [%stack+16],%r335; st.u64 [%stack+8],%r329; st.u64 [%stack],%r336; cvta.const.u64 %r255,$LC4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r93; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r255; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r262,[%value_in]; } .loc 1 113 7 setp.ne.u32 %r264,%r262,3; @ %r264 bra $L1; .loc 1 114 10 ld.u16 %r71,[%frame+16]; .loc 1 114 14 cvt.u16.u32 %r266,%r71; add.u16 %r265,%r266,-1; setp.gt.u16 %r267,%r265,11; @ %r267 bra $L1; .loc 1 114 29 ld.u16 %r72,[%frame+14]; .loc 1 114 33 cvt.u16.u32 %r269,%r72; add.u16 %r268,%r269,-1; setp.gt.u16 %r270,%r268,4; @ %r270 bra $L1; .loc 1 114 47 ld.u16 %r73,[%frame+12]; .loc 1 114 42 cvt.u16.u32 %r271,%r73; setp.gt.u16 %r272,%r271,6; @ %r272 bra $L1; .loc 1 117 23 mov.u32 %r273,77; st.u8 [%r103],%r273; .loc 1 118 22 st.u32 [%r103+4],%r71; .loc 1 119 22 st.u32 [%r103+8],%r72; .loc 1 120 22 st.u32 [%r103+12],%r73; .loc 1 122 10 ld.s32 %r274,[%frame+8]; add.u64 %r93,%r93,%r274; bra $L17; $L16: .loc 1 127 7 setp.ne.u16 %r276,%r252,74; @ %r276 bra $L27; .loc 1 130 8 add.u64 %r93,%r93,1; .loc 1 129 11 mov.u32 %r97,74; bra $L18; $L27: .loc 1 133 9 mov.u32 %r97,68; $L18: .loc 1 135 8 mov.u32 %r279,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r93; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r279; call (%value_in),strtoul,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r280,[%value_in]; } .loc 1 135 6 cvt.u16.u64 %r281,%r280; cvt.u32.u16 %r80,%r281; st.u16 [%frame+12],%r281; .loc 1 140 12 ld.u64 %r81,[%frame]; .loc 1 140 7 setp.ne.u64 %r283,%r81,%r93; @ %r283 bra $L19; .loc 1 142 11 setp.ne.u32 %r284,%r118,0; @ %r284 bra $L20; .loc 1 144 24 mov.u32 %r285,77; st.u8 [%r126+8],%r285; .loc 1 145 23 mov.u32 %r286,3; st.u32 [%r126+12],%r286; .loc 1 146 23 mov.u64 %r287,2; st.u64 [%r126+16],%r287; bra $L21; $L20: .loc 1 151 24 mov.u32 %r288,77; st.u8 [%r126+48],%r288; .loc 1 152 23 mov.u32 %r289,11; st.u32 [%r126+52],%r289; .loc 1 153 23 mov.u64 %r290,1; st.u64 [%r126+56],%r290; bra $L21; $L19: .loc 1 159 27 st.u8 [%r103],%r97; .loc 1 160 26 st.u32 [%r103+12],%r80; $L21: .loc 1 140 12 mov.u64 %r93,%r81; $L17: .loc 1 167 10 mov.u16 %r291,2; st.u16 [%frame+22],%r291; .loc 1 168 10 mov.u16 %r292,0; st.u16 [%frame+20],%r292; .loc 1 169 10 st.u16 [%frame+18],%r292; .loc 1 170 9 mov.u32 %r294,0; st.u32 [%frame+8],%r294; .loc 1 172 10 ld.u8 %r296,[%r93]; cvt.s16.s8 %r295,%r296; setp.ne.u16 %r297,%r295,47; @ %r297 bra $L28; .loc 1 173 2 st.u64 [%stack+40],%r329; st.u64 [%stack+32],%r330; st.u64 [%stack+24],%r329; st.u64 [%stack+16],%r331; st.u64 [%stack+8],%r329; st.u64 [%stack],%r332; cvta.const.u64 %r299,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r93; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r299; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siscanf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r306,[%value_in]; } .loc 1 175 48 ld.u16 %r308,[%frame+20]; shl.b32 %r310,%r308,4; sub.u32 %r311,%r310,%r308; shl.b32 %r312,%r311,2; ld.u16 %r315,[%frame+22]; mad.lo.u32 %r316,%r315,3600,%r312; ld.u16 %r317,[%frame+18]; add.u32 %r122,%r316,%r317; .loc 1 177 13 ld.s32 %r318,[%frame+8]; add.u64 %r93,%r93,%r318; bra $L22; $L28: mov.u32 %r122,7200; $L22: .loc 1 175 25 st.u32 [%r103+16],%r122; .loc 1 106 17 add.u64 %r103,%r103,40; setp.ne.u32 %r319,%r118,1; @ %r319 bra $L29; .loc 1 180 3 ld.u32 %r321,[%r126+4]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r321; call (%value_in),__tzcalc_limits,(%out_arg1); ld.param.u32 %r322,[%value_in]; } .loc 1 181 30 ld.u64 %r86,[%r126+40]; .loc 1 181 13 st.global.u64 [_timezone],%r86; .loc 1 182 38 ld.u64 %r324,[%r126+80]; set.u32.ne.u64 %r325,%r324,%r86; neg.s32 %r326,%r325; .loc 1 182 13 st.global.u32 [_daylight],%r326; $L1: .loc 1 183 1 st.shared.u64 [%sspslot],%sspprev; ret; } // BEGIN GLOBAL FUNCTION DEF: _tzset_r .visible .func _tzset_r (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; mov.u64 %r22,%ar0; .loc 1 188 3 { call __tz_lock; } .loc 1 189 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; call _tzset_unlocked_r,(%out_arg1); } .loc 1 190 3 { call __tz_unlock; } .loc 1 191 1 ret; } lib_a-tzvars.o/ 0 0 0 644 415 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: _timezone .visible .global .align 8 .u64 _timezone[1]; // BEGIN GLOBAL VAR DEF: _daylight .visible .global .align 4 .u32 _daylight[1]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {71,77,84,0 }; // BEGIN GLOBAL VAR DEF: _tzname .visible .global .align 8 .u64 _tzname[2] = {generic($LC0),generic($LC0) }; /1712 0 0 0 644 705 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _user_strerror .visible .func (.param .u64 %value_out) _user_strerror (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/u_strerr.c" // BEGIN GLOBAL FUNCTION DEF: _user_strerror .visible .func (.param .u64 %value_out) _user_strerror (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .loc 1 13 10 mov.u64 %value,0; .loc 1 14 1 st.param.u64 [%value_out],%value; ret; } lib_a-unctrl.o/ 0 0 0 644 22904 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN VAR DEF: $LC120 .const .align 1 .u8 $LC120[2] = {120,0 }; // BEGIN VAR DEF: $LC121 .const .align 1 .u8 $LC121[2] = {121,0 }; // BEGIN VAR DEF: $LC122 .const .align 1 .u8 $LC122[2] = {122,0 }; // BEGIN VAR DEF: $LC123 .const .align 1 .u8 $LC123[2] = {123,0 }; // BEGIN VAR DEF: $LC124 .const .align 1 .u8 $LC124[2] = {124,0 }; // BEGIN VAR DEF: $LC125 .const .align 1 .u8 $LC125[2] = {125,0 }; // BEGIN VAR DEF: $LC126 .const .align 1 .u8 $LC126[2] = {126,0 }; // BEGIN VAR DEF: $LC127 .const .align 1 .u8 $LC127[3] = {94,63,0 }; // BEGIN VAR DEF: $LC128 .const .align 1 .u8 $LC128[5] = {48,120,56,48,0 }; // BEGIN VAR DEF: $LC129 .const .align 1 .u8 $LC129[5] = {48,120,56,49,0 }; // BEGIN VAR DEF: $LC80 .const .align 1 .u8 $LC80[2] = {80,0 }; // BEGIN VAR DEF: $LC81 .const .align 1 .u8 $LC81[2] = {81,0 }; // BEGIN VAR DEF: $LC82 .const .align 1 .u8 $LC82[2] = {82,0 }; // BEGIN VAR DEF: $LC83 .const .align 1 .u8 $LC83[2] = {83,0 }; // BEGIN VAR DEF: $LC84 .const .align 1 .u8 $LC84[2] = {84,0 }; // BEGIN VAR DEF: $LC85 .const .align 1 .u8 $LC85[2] = {85,0 }; // BEGIN VAR DEF: $LC86 .const .align 1 .u8 $LC86[2] = {86,0 }; // BEGIN VAR DEF: $LC87 .const .align 1 .u8 $LC87[2] = {87,0 }; // BEGIN VAR DEF: $LC88 .const .align 1 .u8 $LC88[2] = {88,0 }; // BEGIN VAR DEF: $LC89 .const .align 1 .u8 $LC89[2] = {89,0 }; // BEGIN VAR DEF: $LC240 .const .align 1 .u8 $LC240[5] = {48,120,102,48,0 }; // BEGIN VAR DEF: $LC241 .const .align 1 .u8 $LC241[5] = {48,120,102,49,0 }; // BEGIN VAR DEF: $LC242 .const .align 1 .u8 $LC242[5] = {48,120,102,50,0 }; // BEGIN VAR DEF: $LC243 .const .align 1 .u8 $LC243[5] = {48,120,102,51,0 }; // BEGIN VAR DEF: $LC244 .const .align 1 .u8 $LC244[5] = {48,120,102,52,0 }; // BEGIN VAR DEF: $LC245 .const .align 1 .u8 $LC245[5] = {48,120,102,53,0 }; // BEGIN VAR DEF: $LC246 .const .align 1 .u8 $LC246[5] = {48,120,102,54,0 }; // BEGIN VAR DEF: $LC247 .const .align 1 .u8 $LC247[5] = {48,120,102,55,0 }; // BEGIN VAR DEF: $LC248 .const .align 1 .u8 $LC248[5] = {48,120,102,56,0 }; // BEGIN VAR DEF: $LC249 .const .align 1 .u8 $LC249[5] = {48,120,102,57,0 }; // BEGIN VAR DEF: $LC170 .const .align 1 .u8 $LC170[5] = {48,120,97,97,0 }; // BEGIN VAR DEF: $LC171 .const .align 1 .u8 $LC171[5] = {48,120,97,98,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[3] = {94,74,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[3] = {94,75,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[3] = {94,76,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[3] = {94,77,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[3] = {94,78,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[3] = {94,79,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[3] = {94,80,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[3] = {94,81,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[3] = {94,82,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[3] = {94,83,0 }; // BEGIN VAR DEF: $LC133 .const .align 1 .u8 $LC133[5] = {48,120,56,53,0 }; // BEGIN VAR DEF: $LC134 .const .align 1 .u8 $LC134[5] = {48,120,56,54,0 }; // BEGIN VAR DEF: $LC135 .const .align 1 .u8 $LC135[5] = {48,120,56,55,0 }; // BEGIN VAR DEF: $LC136 .const .align 1 .u8 $LC136[5] = {48,120,56,56,0 }; // BEGIN VAR DEF: $LC137 .const .align 1 .u8 $LC137[5] = {48,120,56,57,0 }; // BEGIN VAR DEF: $LC138 .const .align 1 .u8 $LC138[5] = {48,120,56,97,0 }; // BEGIN VAR DEF: $LC139 .const .align 1 .u8 $LC139[5] = {48,120,56,98,0 }; // BEGIN VAR DEF: $LC90 .const .align 1 .u8 $LC90[2] = {90,0 }; // BEGIN VAR DEF: $LC91 .const .align 1 .u8 $LC91[2] = {91,0 }; // BEGIN VAR DEF: $LC92 .const .align 1 .u8 $LC92[2] = {92,0 }; // BEGIN VAR DEF: $LC93 .const .align 1 .u8 $LC93[2] = {93,0 }; // BEGIN VAR DEF: $LC94 .const .align 1 .u8 $LC94[2] = {94,0 }; // BEGIN VAR DEF: $LC95 .const .align 1 .u8 $LC95[2] = {95,0 }; // BEGIN VAR DEF: $LC96 .const .align 1 .u8 $LC96[2] = {96,0 }; // BEGIN VAR DEF: $LC97 .const .align 1 .u8 $LC97[2] = {97,0 }; // BEGIN VAR DEF: $LC98 .const .align 1 .u8 $LC98[2] = {98,0 }; // BEGIN VAR DEF: $LC99 .const .align 1 .u8 $LC99[2] = {99,0 }; // BEGIN VAR DEF: $LC250 .const .align 1 .u8 $LC250[5] = {48,120,102,97,0 }; // BEGIN VAR DEF: $LC251 .const .align 1 .u8 $LC251[5] = {48,120,102,98,0 }; // BEGIN VAR DEF: $LC252 .const .align 1 .u8 $LC252[5] = {48,120,102,99,0 }; // BEGIN VAR DEF: $LC253 .const .align 1 .u8 $LC253[5] = {48,120,102,100,0 }; // BEGIN VAR DEF: $LC254 .const .align 1 .u8 $LC254[5] = {48,120,102,101,0 }; // BEGIN VAR DEF: $LC255 .const .align 1 .u8 $LC255[5] = {48,120,102,102,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[3] = {94,84,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[3] = {94,85,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[3] = {94,86,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[3] = {94,87,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[3] = {94,88,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[3] = {94,89,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[3] = {94,90,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[3] = {94,91,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[3] = {94,92,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[3] = {94,93,0 }; // BEGIN VAR DEF: $LC143 .const .align 1 .u8 $LC143[5] = {48,120,56,102,0 }; // BEGIN VAR DEF: $LC144 .const .align 1 .u8 $LC144[5] = {48,120,57,48,0 }; // BEGIN VAR DEF: $LC145 .const .align 1 .u8 $LC145[5] = {48,120,57,49,0 }; // BEGIN VAR DEF: $LC146 .const .align 1 .u8 $LC146[5] = {48,120,57,50,0 }; // BEGIN VAR DEF: $LC147 .const .align 1 .u8 $LC147[5] = {48,120,57,51,0 }; // BEGIN VAR DEF: $LC148 .const .align 1 .u8 $LC148[5] = {48,120,57,52,0 }; // BEGIN VAR DEF: $LC149 .const .align 1 .u8 $LC149[5] = {48,120,57,53,0 }; // BEGIN VAR DEF: $LC130 .const .align 1 .u8 $LC130[5] = {48,120,56,50,0 }; // BEGIN VAR DEF: $LC131 .const .align 1 .u8 $LC131[5] = {48,120,56,51,0 }; // BEGIN VAR DEF: $LC132 .const .align 1 .u8 $LC132[5] = {48,120,56,52,0 }; // BEGIN VAR DEF: $LC182 .const .align 1 .u8 $LC182[5] = {48,120,98,54,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[3] = {94,126,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[3] = {94,95,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[2] = {32,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[2] = {33,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[2] = {34,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[2] = {35,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[2] = {36,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[2] = {37,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[2] = {38,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[2] = {39,0 }; // BEGIN VAR DEF: $LC153 .const .align 1 .u8 $LC153[5] = {48,120,57,57,0 }; // BEGIN VAR DEF: $LC154 .const .align 1 .u8 $LC154[5] = {48,120,57,97,0 }; // BEGIN VAR DEF: $LC155 .const .align 1 .u8 $LC155[5] = {48,120,57,98,0 }; // BEGIN VAR DEF: $LC156 .const .align 1 .u8 $LC156[5] = {48,120,57,99,0 }; // BEGIN VAR DEF: $LC157 .const .align 1 .u8 $LC157[5] = {48,120,57,100,0 }; // BEGIN VAR DEF: $LC158 .const .align 1 .u8 $LC158[5] = {48,120,57,101,0 }; // BEGIN VAR DEF: $LC159 .const .align 1 .u8 $LC159[5] = {48,120,57,102,0 }; // BEGIN VAR DEF: $LC178 .const .align 1 .u8 $LC178[5] = {48,120,98,50,0 }; // BEGIN VAR DEF: $LC179 .const .align 1 .u8 $LC179[5] = {48,120,98,51,0 }; // BEGIN VAR DEF: $LC210 .const .align 1 .u8 $LC210[5] = {48,120,100,50,0 }; // BEGIN VAR DEF: $LC180 .const .align 1 .u8 $LC180[5] = {48,120,98,52,0 }; // BEGIN VAR DEF: $LC181 .const .align 1 .u8 $LC181[5] = {48,120,98,53,0 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: __unctrllen .visible .const .align 1 .u8 __unctrllen[256] = {2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[2] = {40,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[2] = {41,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[2] = {42,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[2] = {43,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[2] = {44,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[2] = {45,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[2] = {46,0 }; // BEGIN VAR DEF: $LC47 .const .align 1 .u8 $LC47[2] = {47,0 }; // BEGIN VAR DEF: $LC48 .const .align 1 .u8 $LC48[2] = {48,0 }; // BEGIN VAR DEF: $LC49 .const .align 1 .u8 $LC49[2] = {49,0 }; // BEGIN VAR DEF: $LC163 .const .align 1 .u8 $LC163[5] = {48,120,97,51,0 }; // BEGIN VAR DEF: $LC164 .const .align 1 .u8 $LC164[5] = {48,120,97,52,0 }; // BEGIN VAR DEF: $LC165 .const .align 1 .u8 $LC165[5] = {48,120,97,53,0 }; // BEGIN VAR DEF: $LC166 .const .align 1 .u8 $LC166[5] = {48,120,97,54,0 }; // BEGIN VAR DEF: $LC167 .const .align 1 .u8 $LC167[5] = {48,120,97,55,0 }; // BEGIN VAR DEF: $LC168 .const .align 1 .u8 $LC168[5] = {48,120,97,56,0 }; // BEGIN VAR DEF: $LC169 .const .align 1 .u8 $LC169[5] = {48,120,97,57,0 }; // BEGIN VAR DEF: $LC200 .const .align 1 .u8 $LC200[5] = {48,120,99,56,0 }; // BEGIN VAR DEF: $LC201 .const .align 1 .u8 $LC201[5] = {48,120,99,57,0 }; // BEGIN VAR DEF: $LC202 .const .align 1 .u8 $LC202[5] = {48,120,99,97,0 }; // BEGIN VAR DEF: $LC203 .const .align 1 .u8 $LC203[5] = {48,120,99,98,0 }; // BEGIN VAR DEF: $LC204 .const .align 1 .u8 $LC204[5] = {48,120,99,99,0 }; // BEGIN VAR DEF: $LC205 .const .align 1 .u8 $LC205[5] = {48,120,99,100,0 }; // BEGIN VAR DEF: $LC206 .const .align 1 .u8 $LC206[5] = {48,120,99,101,0 }; // BEGIN VAR DEF: $LC207 .const .align 1 .u8 $LC207[5] = {48,120,99,102,0 }; // BEGIN VAR DEF: $LC208 .const .align 1 .u8 $LC208[5] = {48,120,100,48,0 }; // BEGIN VAR DEF: $LC209 .const .align 1 .u8 $LC209[5] = {48,120,100,49,0 }; // BEGIN VAR DEF: $LC140 .const .align 1 .u8 $LC140[5] = {48,120,56,99,0 }; // BEGIN VAR DEF: $LC141 .const .align 1 .u8 $LC141[5] = {48,120,56,100,0 }; // BEGIN VAR DEF: $LC142 .const .align 1 .u8 $LC142[5] = {48,120,56,101,0 }; // BEGIN VAR DEF: $LC176 .const .align 1 .u8 $LC176[5] = {48,120,98,48,0 }; // BEGIN VAR DEF: $LC50 .const .align 1 .u8 $LC50[2] = {50,0 }; // BEGIN VAR DEF: $LC51 .const .align 1 .u8 $LC51[2] = {51,0 }; // BEGIN VAR DEF: $LC52 .const .align 1 .u8 $LC52[2] = {52,0 }; // BEGIN VAR DEF: $LC53 .const .align 1 .u8 $LC53[2] = {53,0 }; // BEGIN VAR DEF: $LC54 .const .align 1 .u8 $LC54[2] = {54,0 }; // BEGIN VAR DEF: $LC55 .const .align 1 .u8 $LC55[2] = {55,0 }; // BEGIN VAR DEF: $LC56 .const .align 1 .u8 $LC56[2] = {56,0 }; // BEGIN VAR DEF: $LC57 .const .align 1 .u8 $LC57[2] = {57,0 }; // BEGIN VAR DEF: $LC58 .const .align 1 .u8 $LC58[2] = {58,0 }; // BEGIN VAR DEF: $LC59 .const .align 1 .u8 $LC59[2] = {59,0 }; // BEGIN VAR DEF: $LC173 .const .align 1 .u8 $LC173[5] = {48,120,97,100,0 }; // BEGIN VAR DEF: $LC174 .const .align 1 .u8 $LC174[5] = {48,120,97,101,0 }; // BEGIN VAR DEF: $LC175 .const .align 1 .u8 $LC175[5] = {48,120,97,102,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {94,64,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {94,65,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[3] = {94,66,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[3] = {94,67,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[3] = {94,68,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[3] = {94,69,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[3] = {94,70,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[3] = {94,71,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[3] = {94,72,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[3] = {94,73,0 }; // BEGIN VAR DEF: $LC211 .const .align 1 .u8 $LC211[5] = {48,120,100,51,0 }; // BEGIN VAR DEF: $LC212 .const .align 1 .u8 $LC212[5] = {48,120,100,52,0 }; // BEGIN VAR DEF: $LC213 .const .align 1 .u8 $LC213[5] = {48,120,100,53,0 }; // BEGIN VAR DEF: $LC214 .const .align 1 .u8 $LC214[5] = {48,120,100,54,0 }; // BEGIN VAR DEF: $LC215 .const .align 1 .u8 $LC215[5] = {48,120,100,55,0 }; // BEGIN VAR DEF: $LC216 .const .align 1 .u8 $LC216[5] = {48,120,100,56,0 }; // BEGIN VAR DEF: $LC217 .const .align 1 .u8 $LC217[5] = {48,120,100,57,0 }; // BEGIN VAR DEF: $LC218 .const .align 1 .u8 $LC218[5] = {48,120,100,97,0 }; // BEGIN VAR DEF: $LC219 .const .align 1 .u8 $LC219[5] = {48,120,100,98,0 }; // BEGIN VAR DEF: $LC160 .const .align 1 .u8 $LC160[5] = {48,120,97,48,0 }; // BEGIN VAR DEF: $LC161 .const .align 1 .u8 $LC161[5] = {48,120,97,49,0 }; // BEGIN VAR DEF: $LC162 .const .align 1 .u8 $LC162[5] = {48,120,97,50,0 }; // BEGIN VAR DEF: $LC100 .const .align 1 .u8 $LC100[2] = {100,0 }; // BEGIN VAR DEF: $LC101 .const .align 1 .u8 $LC101[2] = {101,0 }; // BEGIN VAR DEF: $LC102 .const .align 1 .u8 $LC102[2] = {102,0 }; // BEGIN VAR DEF: $LC103 .const .align 1 .u8 $LC103[2] = {103,0 }; // BEGIN VAR DEF: $LC104 .const .align 1 .u8 $LC104[2] = {104,0 }; // BEGIN VAR DEF: $LC105 .const .align 1 .u8 $LC105[2] = {105,0 }; // BEGIN VAR DEF: $LC106 .const .align 1 .u8 $LC106[2] = {106,0 }; // BEGIN VAR DEF: $LC107 .const .align 1 .u8 $LC107[2] = {107,0 }; // BEGIN VAR DEF: $LC108 .const .align 1 .u8 $LC108[2] = {108,0 }; // BEGIN VAR DEF: $LC109 .const .align 1 .u8 $LC109[2] = {109,0 }; // BEGIN VAR DEF: $LC60 .const .align 1 .u8 $LC60[2] = {60,0 }; // BEGIN VAR DEF: $LC61 .const .align 1 .u8 $LC61[2] = {61,0 }; // BEGIN VAR DEF: $LC62 .const .align 1 .u8 $LC62[2] = {62,0 }; // BEGIN VAR DEF: $LC63 .const .align 1 .u8 $LC63[2] = {63,0 }; // BEGIN VAR DEF: $LC64 .const .align 1 .u8 $LC64[2] = {64,0 }; // BEGIN VAR DEF: $LC65 .const .align 1 .u8 $LC65[2] = {65,0 }; // BEGIN VAR DEF: $LC66 .const .align 1 .u8 $LC66[2] = {66,0 }; // BEGIN VAR DEF: $LC67 .const .align 1 .u8 $LC67[2] = {67,0 }; // BEGIN VAR DEF: $LC68 .const .align 1 .u8 $LC68[2] = {68,0 }; // BEGIN VAR DEF: $LC69 .const .align 1 .u8 $LC69[2] = {69,0 }; // BEGIN VAR DEF: $LC183 .const .align 1 .u8 $LC183[5] = {48,120,98,55,0 }; // BEGIN VAR DEF: $LC184 .const .align 1 .u8 $LC184[5] = {48,120,98,56,0 }; // BEGIN VAR DEF: $LC185 .const .align 1 .u8 $LC185[5] = {48,120,98,57,0 }; // BEGIN VAR DEF: $LC186 .const .align 1 .u8 $LC186[5] = {48,120,98,97,0 }; // BEGIN VAR DEF: $LC187 .const .align 1 .u8 $LC187[5] = {48,120,98,98,0 }; // BEGIN VAR DEF: $LC188 .const .align 1 .u8 $LC188[5] = {48,120,98,99,0 }; // BEGIN VAR DEF: $LC189 .const .align 1 .u8 $LC189[5] = {48,120,98,100,0 }; // BEGIN VAR DEF: $LC220 .const .align 1 .u8 $LC220[5] = {48,120,100,99,0 }; // BEGIN VAR DEF: $LC221 .const .align 1 .u8 $LC221[5] = {48,120,100,100,0 }; // BEGIN VAR DEF: $LC222 .const .align 1 .u8 $LC222[5] = {48,120,100,101,0 }; // BEGIN VAR DEF: $LC223 .const .align 1 .u8 $LC223[5] = {48,120,100,102,0 }; // BEGIN VAR DEF: $LC224 .const .align 1 .u8 $LC224[5] = {48,120,101,48,0 }; // BEGIN VAR DEF: $LC225 .const .align 1 .u8 $LC225[5] = {48,120,101,49,0 }; // BEGIN VAR DEF: $LC226 .const .align 1 .u8 $LC226[5] = {48,120,101,50,0 }; // BEGIN VAR DEF: $LC227 .const .align 1 .u8 $LC227[5] = {48,120,101,51,0 }; // BEGIN VAR DEF: $LC228 .const .align 1 .u8 $LC228[5] = {48,120,101,52,0 }; // BEGIN VAR DEF: $LC229 .const .align 1 .u8 $LC229[5] = {48,120,101,53,0 }; // BEGIN VAR DEF: $LC172 .const .align 1 .u8 $LC172[5] = {48,120,97,99,0 }; // BEGIN VAR DEF: $LC150 .const .align 1 .u8 $LC150[5] = {48,120,57,54,0 }; // BEGIN VAR DEF: $LC151 .const .align 1 .u8 $LC151[5] = {48,120,57,55,0 }; // BEGIN VAR DEF: $LC152 .const .align 1 .u8 $LC152[5] = {48,120,57,56,0 }; // BEGIN VAR DEF: $LC110 .const .align 1 .u8 $LC110[2] = {110,0 }; // BEGIN VAR DEF: $LC111 .const .align 1 .u8 $LC111[2] = {111,0 }; // BEGIN VAR DEF: $LC112 .const .align 1 .u8 $LC112[2] = {112,0 }; // BEGIN VAR DEF: $LC113 .const .align 1 .u8 $LC113[2] = {113,0 }; // BEGIN VAR DEF: $LC114 .const .align 1 .u8 $LC114[2] = {114,0 }; // BEGIN VAR DEF: $LC115 .const .align 1 .u8 $LC115[2] = {115,0 }; // BEGIN VAR DEF: $LC116 .const .align 1 .u8 $LC116[2] = {116,0 }; // BEGIN VAR DEF: $LC117 .const .align 1 .u8 $LC117[2] = {117,0 }; // BEGIN VAR DEF: $LC118 .const .align 1 .u8 $LC118[2] = {118,0 }; // BEGIN VAR DEF: $LC119 .const .align 1 .u8 $LC119[2] = {119,0 }; // BEGIN VAR DEF: $LC177 .const .align 1 .u8 $LC177[5] = {48,120,98,49,0 }; // BEGIN VAR DEF: $LC190 .const .align 1 .u8 $LC190[5] = {48,120,98,101,0 }; // BEGIN VAR DEF: $LC192 .const .align 1 .u8 $LC192[5] = {48,120,99,48,0 }; // BEGIN VAR DEF: $LC191 .const .align 1 .u8 $LC191[5] = {48,120,98,102,0 }; // BEGIN VAR DEF: $LC70 .const .align 1 .u8 $LC70[2] = {70,0 }; // BEGIN VAR DEF: $LC71 .const .align 1 .u8 $LC71[2] = {71,0 }; // BEGIN VAR DEF: $LC72 .const .align 1 .u8 $LC72[2] = {72,0 }; // BEGIN VAR DEF: $LC73 .const .align 1 .u8 $LC73[2] = {73,0 }; // BEGIN VAR DEF: $LC74 .const .align 1 .u8 $LC74[2] = {74,0 }; // BEGIN VAR DEF: $LC75 .const .align 1 .u8 $LC75[2] = {75,0 }; // BEGIN VAR DEF: $LC76 .const .align 1 .u8 $LC76[2] = {76,0 }; // BEGIN VAR DEF: $LC77 .const .align 1 .u8 $LC77[2] = {77,0 }; // BEGIN VAR DEF: $LC78 .const .align 1 .u8 $LC78[2] = {78,0 }; // BEGIN VAR DEF: $LC79 .const .align 1 .u8 $LC79[2] = {79,0 }; // BEGIN VAR DEF: $LC193 .const .align 1 .u8 $LC193[5] = {48,120,99,49,0 }; // BEGIN VAR DEF: $LC194 .const .align 1 .u8 $LC194[5] = {48,120,99,50,0 }; // BEGIN VAR DEF: $LC195 .const .align 1 .u8 $LC195[5] = {48,120,99,51,0 }; // BEGIN VAR DEF: $LC196 .const .align 1 .u8 $LC196[5] = {48,120,99,52,0 }; // BEGIN VAR DEF: $LC197 .const .align 1 .u8 $LC197[5] = {48,120,99,53,0 }; // BEGIN VAR DEF: $LC198 .const .align 1 .u8 $LC198[5] = {48,120,99,54,0 }; // BEGIN VAR DEF: $LC199 .const .align 1 .u8 $LC199[5] = {48,120,99,55,0 }; // BEGIN VAR DEF: $LC230 .const .align 1 .u8 $LC230[5] = {48,120,101,54,0 }; // BEGIN VAR DEF: $LC231 .const .align 1 .u8 $LC231[5] = {48,120,101,55,0 }; // BEGIN VAR DEF: $LC232 .const .align 1 .u8 $LC232[5] = {48,120,101,56,0 }; // BEGIN VAR DEF: $LC233 .const .align 1 .u8 $LC233[5] = {48,120,101,57,0 }; // BEGIN VAR DEF: $LC234 .const .align 1 .u8 $LC234[5] = {48,120,101,97,0 }; // BEGIN VAR DEF: $LC235 .const .align 1 .u8 $LC235[5] = {48,120,101,98,0 }; // BEGIN VAR DEF: $LC236 .const .align 1 .u8 $LC236[5] = {48,120,101,99,0 }; // BEGIN VAR DEF: $LC237 .const .align 1 .u8 $LC237[5] = {48,120,101,100,0 }; // BEGIN VAR DEF: $LC238 .const .align 1 .u8 $LC238[5] = {48,120,101,101,0 }; // BEGIN VAR DEF: $LC239 .const .align 1 .u8 $LC239[5] = {48,120,101,102,0 }; // BEGIN GLOBAL VAR DEF: __unctrl .visible .const .align 8 .u64 __unctrl[256] = {generic($LC0),generic($LC1),generic($LC2),generic($LC3),generic($LC4),generic($LC5),generic($LC6),generic($LC7),generic($LC8),generic($LC9),generic($LC10),generic($LC11),generic($LC12),generic($LC13),generic($LC14),generic($LC15),generic($LC16),generic($LC17),generic($LC18),generic($LC19),generic($LC20),generic($LC21),generic($LC22),generic($LC23),generic($LC24),generic($LC25),generic($LC26),generic($LC27),generic($LC28),generic($LC29),generic($LC30),generic($LC31),generic($LC32),generic($LC33),generic($LC34),generic($LC35),generic($LC36),generic($LC37),generic($LC38),generic($LC39),generic($LC40),generic($LC41),generic($LC42),generic($LC43),generic($LC44),generic($LC45),generic($LC46),generic($LC47),generic($LC48),generic($LC49),generic($LC50),generic($LC51),generic($LC52),generic($LC53),generic($LC54),generic($LC55),generic($LC56),generic($LC57),generic($LC58),generic($LC59),generic($LC60),generic($LC61),generic($LC62),generic($LC63),generic($LC64),generic($LC65),generic($LC66),generic($LC67),generic($LC68),generic($LC69),generic($LC70),generic($LC71),generic($LC72),generic($LC73),generic($LC74),generic($LC75),generic($LC76),generic($LC77),generic($LC78),generic($LC79),generic($LC80),generic($LC81),generic($LC82),generic($LC83),generic($LC84),generic($LC85),generic($LC86),generic($LC87),generic($LC88),generic($LC89),generic($LC90),generic($LC91),generic($LC92),generic($LC93),generic($LC94),generic($LC95),generic($LC96),generic($LC97),generic($LC98),generic($LC99),generic($LC100),generic($LC101),generic($LC102),generic($LC103),generic($LC104),generic($LC105),generic($LC106),generic($LC107),generic($LC108),generic($LC109),generic($LC110),generic($LC111),generic($LC112),generic($LC113),generic($LC114),generic($LC115),generic($LC116),generic($LC117),generic($LC118),generic($LC119),generic($LC120),generic($LC121),generic($LC122),generic($LC123),generic($LC124),generic($LC125),generic($LC126),generic($LC127),generic($LC128),generic($LC129),generic($LC130),generic($LC131),generic($LC132),generic($LC133),generic($LC134),generic($LC135),generic($LC136),generic($LC137),generic($LC138),generic($LC139),generic($LC140),generic($LC141),generic($LC142),generic($LC143),generic($LC144),generic($LC145),generic($LC146),generic($LC147),generic($LC148),generic($LC149),generic($LC150),generic($LC151),generic($LC152),generic($LC153),generic($LC154),generic($LC155),generic($LC156),generic($LC157),generic($LC158),generic($LC159),generic($LC160),generic($LC161),generic($LC162),generic($LC163),generic($LC164),generic($LC165),generic($LC166),generic($LC167),generic($LC168),generic($LC169),generic($LC170),generic($LC171),generic($LC172),generic($LC173),generic($LC174),generic($LC175),generic($LC176),generic($LC177),generic($LC178),generic($LC179),generic($LC180),generic($LC181),generic($LC182),generic($LC183),generic($LC184),generic($LC185),generic($LC186),generic($LC187),generic($LC188),generic($LC189),generic($LC190),generic($LC191),generic($LC192),generic($LC193),generic($LC194),generic($LC195),generic($LC196),generic($LC197),generic($LC198),generic($LC199),generic($LC200),generic($LC201),generic($LC202),generic($LC203),generic($LC204),generic($LC205),generic($LC206),generic($LC207),generic($LC208),generic($LC209),generic($LC210),generic($LC211),generic($LC212),generic($LC213),generic($LC214),generic($LC215),generic($LC216),generic($LC217),generic($LC218),generic($LC219),generic($LC220),generic($LC221),generic($LC222),generic($LC223),generic($LC224),generic($LC225),generic($LC226),generic($LC227),generic($LC228),generic($LC229),generic($LC230),generic($LC231),generic($LC232),generic($LC233),generic($LC234),generic($LC235),generic($LC236),generic($LC237),generic($LC238),generic($LC239),generic($LC240),generic($LC241),generic($LC242),generic($LC243),generic($LC244),generic($LC245),generic($LC246),generic($LC247),generic($LC248),generic($LC249),generic($LC250),generic($LC251),generic($LC252),generic($LC253),generic($LC254),generic($LC255) }; lib_a-ungetc.o/ 0 0 0 644 8913 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __submore .visible .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/ungetc.c" // BEGIN GLOBAL FUNCTION DECL: _ungetc_r .visible .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: ungetc .visible .func (.param .u32 %value_out) ungetc (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _realloc_r .extern .func (.param .u64 %value_out) _realloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __submore .visible .func (.param .u32 %value_out) __submore (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .u64 %r59; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; .loc 1 86 14 ld.u64 %r22,[%r37+88]; .loc 1 86 21 add.u64 %r38,%r37,116; .loc 1 86 6 setp.ne.u64 %r39,%r22,%r38; @ %r39 bra $L2; .loc 1 91 34 mov.u64 %r41,1024; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r42,[%value_in]; } .loc 1 91 10 setp.ne.u64 %r43,%r42,0; @ %r43 bra $L3; $L5: .loc 1 92 9 mov.u32 %r35,-1; bra $L1; $L3: .loc 1 93 21 st.u64 [%r37+88],%r42; .loc 1 94 21 mov.u32 %r44,1024; st.u32 [%r37+96],%r44; .loc 1 97 7 ld.u8 %r45,[%r37+118]; st.u8 [%r42+1023],%r45; ld.u8 %r46,[%r37+117]; st.u8 [%r42+1022],%r46; ld.u8 %r47,[%r37+116]; st.u8 [%r42+1021],%r47; .loc 1 95 9 add.u64 %r48,%r42,1021; .loc 1 98 14 st.u64 [%r37],%r48; .loc 1 99 14 mov.u32 %r35,0; bra $L1; $L2: .loc 1 101 5 ld.u32 %r28,[%r37+96]; .loc 1 102 71 add.u32 %r49,%r28,%r28; .loc 1 102 25 cvt.s64.s32 %r53,%r49; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r53; call (%value_in),_realloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r54,[%value_in]; } .loc 1 103 6 setp.eq.u64 %r55,%r54,0; @ %r55 bra $L5; .loc 1 105 10 cvt.s64.s32 %r26,%r28; .loc 1 105 30 add.u64 %r27,%r54,%r26; .loc 1 105 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r59,[%value_in]; } .loc 1 106 10 st.u64 [%r37],%r27; .loc 1 107 17 st.u64 [%r37+88],%r54; .loc 1 108 17 st.u32 [%r37+96],%r49; .loc 1 109 10 mov.u32 %r35,0; $L1: .loc 1 110 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _ungetc_r .visible .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u32 %r26; .reg .u64 %r34; .reg .u64 %r38; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .pred %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r60; .reg .u16 %r61; .reg .pred %r62; .reg .u16 %r63; .reg .u32 %r65; .reg .u32 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .u16 %r70; .reg .pred %r72; .reg .u16 %r73; .reg .pred %r75; .reg .u16 %r76; .reg .pred %r78; .reg .u32 %r81; .reg .pred %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .u16 %r87; .reg .u16 %r88; .reg .u32 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r100; .reg .pred %r101; .reg .pred %r102; .reg .pred %r103; .reg .u32 %r104; .reg .pred %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u32 %r109; .reg .u64 %r111; .reg .u32 %r112; mov.u64 %r52,%ar0; mov.u32 %r53,%ar1; mov.u64 %r54,%ar2; .loc 1 117 6 setp.ne.u32 %r55,%r53,-1; @ %r55 bra $L10; $L15: .loc 1 118 12 mov.u32 %r51,-1; bra $L9; $L10: .loc 1 124 3 setp.eq.u64 %r56,%r52,0; @ %r56 bra $L12; ld.u32 %r57,[%r52+80]; setp.ne.u32 %r58,%r57,0; @ %r58 bra $L12; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; call __sinit,(%out_arg1); } $L12: .loc 1 128 3 ld.s16 %r24,[%r54+16]; cvt.u16.u32 %r61,%r24; and.b16 %r60,%r61,8192; setp.ne.u16 %r62,%r60,0; @ %r62 bra $L13; or.b16 %r63,%r61,8192; cvt.s32.s16 %r24,%r63; ld.u32 %r66,[%r54+172]; and.b32 %r65,%r66,-8193; st.u32 [%r54+172],%r65; $L13: .loc 1 131 14 cvt.u16.u32 %r68,%r24; and.b16 %r67,%r68,-33; cvt.s32.s16 %r26,%r67; st.u16 [%r54+16],%r67; .loc 1 133 6 and.b16 %r70,%r68,4; setp.ne.u16 %r72,%r70,0; @ %r72 bra $L14; .loc 1 139 10 and.b16 %r73,%r68,16; setp.eq.u16 %r75,%r73,0; @ %r75 bra $L15; .loc 1 144 10 and.b16 %r76,%r68,8; setp.eq.u16 %r78,%r76,0; @ %r78 bra $L16; .loc 1 146 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r81,[%value_in]; } .loc 1 146 7 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L15; .loc 1 151 15 ld.u16 %r84,[%r54+16]; and.b16 %r83,%r84,-9; cvt.s32.s16 %r26,%r83; .loc 1 152 11 st.u32 [%r54+12],%r81; .loc 1 153 17 st.u32 [%r54+40],%r81; $L16: .loc 1 155 18 cvt.u16.u32 %r88,%r26; or.b16 %r87,%r88,4; st.u16 [%r54+16],%r87; $L14: .loc 1 157 7 mov.u32 %r89,%r53; and.b32 %r51,%r53,255; .loc 1 166 13 ld.u32 %r50,[%r54+8]; .loc 1 164 6 ld.u64 %r90,[%r54+88]; setp.eq.u64 %r91,%r90,0; @ %r91 bra $L17; .loc 1 166 10 ld.u32 %r92,[%r54+96]; setp.le.s32 %r93,%r92,%r50; @ %r93 bra $L18; $L19: .loc 1 171 12 ld.u64 %r34,[%r54]; .loc 1 171 8 add.u64 %r94,%r34,-1; .loc 1 171 17 st.u64 [%r54],%r94; st.u8 [%r34+-1],%r89; .loc 1 172 13 ld.u32 %r97,[%r54+8]; add.u32 %r96,%r97,1; st.u32 [%r54+8],%r96; .loc 1 174 14 bra $L9; $L18: .loc 1 166 38 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r52; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; call (%value_in),__submore,(%out_arg1,%out_arg2); ld.param.u32 %r100,[%value_in]; } .loc 1 166 35 setp.ne.u32 %r101,%r100,0; @ ! %r101 bra $L19; bra $L15; $L17: .loc 1 183 14 ld.u64 %r38,[%r54+24]; .loc 1 183 34 ld.u64 %r49,[%r54]; .loc 1 183 6 setp.eq.u64 %r102,%r38,0; @ %r102 bra $L20; .loc 1 183 29 setp.ge.u64 %r103,%r38,%r49; @ %r103 bra $L20; .loc 1 183 64 ld.u8 %r104,[%r49+-1]; .loc 1 183 55 setp.ne.u32 %r105,%r104,%r51; @ %r105 bra $L20; .loc 1 185 13 add.u64 %r106,%r49,-1; st.u64 [%r54],%r106; .loc 1 186 13 add.u32 %r107,%r50,1; st.u32 [%r54+8],%r107; .loc 1 188 14 bra $L9; $L20: .loc 1 196 11 st.u32 [%r54+112],%r50; .loc 1 197 11 st.u64 [%r54+104],%r49; .loc 1 198 19 add.u64 %r108,%r54,116; .loc 1 198 17 st.u64 [%r54+88],%r108; .loc 1 199 17 mov.u32 %r109,3; st.u32 [%r54+96],%r109; .loc 1 200 37 st.u8 [%r54+118],%r89; .loc 1 201 12 add.u64 %r111,%r54,118; .loc 1 201 10 st.u64 [%r54],%r111; .loc 1 202 10 mov.u32 %r112,1; st.u32 [%r54+8],%r112; $L9: .loc 1 205 1 mov.u32 %value,%r51; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: ungetc .visible .func (.param .u32 %value_out) ungetc (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 212 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 213 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-unlinkr.o/0 0 0 644 1322 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _unlink_r .visible .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/reent/unlinkr.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: unlink .extern .func (.param .u32 %value_out) unlink (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: _unlink_r .visible .func (.param .u32 %value_out) _unlink_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u32 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 46 9 mov.u32 %r26,0; st.global.u32 [errno],%r26; .loc 1 47 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),unlink,(%out_arg1); ld.param.u32 %r28,[%value_in]; } .loc 1 47 6 setp.ne.u32 %r29,%r28,-1; @ %r29 bra $L1; .loc 1 47 45 ld.global.u32 %r22,[errno]; .loc 1 47 36 setp.eq.u32 %r30,%r22,0; @ %r30 bra $L1; .loc 1 48 17 st.u32 [%r24],%r22; $L1: .loc 1 50 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-utoa.o/ 0 0 0 644 4504 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __utoa .visible .func (.param .u64 %value_out) __utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/utoa.c" // BEGIN GLOBAL FUNCTION DECL: utoa .visible .func (.param .u64 %value_out) utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[37] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,0 }; // BEGIN GLOBAL FUNCTION DEF: __utoa .visible .func (.param .u64 %value_out) __utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,48; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r33; .reg .u32 %r34; .reg .u64 %r35; .reg .u32 %r38; .reg .u64 %r44; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; mov.u32 %r47,%ar0; mov.u64 %r48,%ar1; mov.u32 %r49,%ar2; .loc 1 35 14 cvta.const.u64 %r51,$LC0; mov.u64 %r52,37; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r52; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r56,[%value_in]; } .loc 1 41 18 add.u32 %r58,%r49,-2; .loc 1 41 6 setp.le.u32 %r59,%r58,34; @ %r59 bra $L2; .loc 1 43 14 mov.u32 %r60,0; st.u8 [%r48],%r60; .loc 1 44 14 mov.u64 %r46,0; bra $L1; $L2: mov.u64 %r35,%r48; .loc 1 41 6 mov.u64 %r44,%r48; .loc 1 48 5 mov.u32 %r29,0; $L4: mov.u32 %r38,%r29; .loc 1 52 12 add.u32 %r29,%r38,1; .loc 1 51 17 rem.u32 %r62,%r47,%r49; .loc 1 52 24 cvt.u64.u32 %r63,%r62; add.u64 %r64,%frame,%r63; .loc 1 52 16 ld.u8 %r65,[%r64]; st.u8 [%r44],%r65; mov.u32 %r31,%r47; .loc 1 53 13 div.u32 %r47,%r47,%r49; .loc 1 54 20 add.u64 %r44,%r44,1; setp.le.u32 %r66,%r49,%r31; @ %r66 bra $L4; .loc 1 55 6 cvt.s64.s32 %r67,%r29; .loc 1 55 10 add.u64 %r68,%r48,%r67; mov.u32 %r69,0; st.u8 [%r68],%r69; .loc 1 58 22 setp.eq.u32 %r70,%r38,0; @ %r70 bra $L5; cvt.s64.s32 %r71,%r38; add.u64 %r30,%r48,%r71; mov.u32 %r34,%r38; $L6: .loc 1 60 9 ld.s8 %r33,[%r35]; .loc 1 61 14 ld.u8 %r72,[%r30]; st.u8 [%r35],%r72; .loc 1 62 14 cvt.u32.u32 %r73,%r33; st.u8 [%r30],%r73; .loc 1 58 33 add.u32 %r34,%r34,-1; .loc 1 58 22 add.u64 %r35,%r35,1; add.u64 %r30,%r30,-1; sub.u32 %r74,%r38,%r34; setp.gt.s32 %r75,%r34,%r74; @ %r75 bra $L6; $L5: .loc 1 44 14 mov.u64 %r46,%r48; $L1: .loc 1 66 1 mov.u64 %value,%r46; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: utoa .visible .func (.param .u64 %value_out) utoa (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r29; mov.u32 %r23,%ar0; mov.u64 %r24,%ar1; mov.u32 %r25,%ar2; .loc 1 73 10 { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r25; call (%value_in),__utoa,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r29,[%value_in]; } .loc 1 74 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } /1730 0 0 0 644 4532 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _vdiprintf_r .visible .func (.param .u32 %value_out) _vdiprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vdiprintf.c" // BEGIN GLOBAL FUNCTION DECL: vdiprintf .visible .func (.param .u32 %value_out) vdiprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vasniprintf_r .extern .func (.param .u64 %value_out) _vasniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _vdiprintf_r .visible .func (.param .u32 %value_out) _vdiprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,528; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; mov.u64 %r27,%ar0; mov.u32 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; .loc 1 23 10 mov.u64 %r31,512; st.u64 [%frame+512],%r31; .loc 1 26 7 add.u64 %r37,%frame,512; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r30; call (%value_in),_vasniprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r38,[%value_in]; } .loc 1 27 6 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L4; .loc 1 29 7 ld.u64 %r44,[%frame+512]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r38; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r44; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r45,[%value_in]; } mov.u64 %r24,%r45; .loc 1 29 5 st.u64 [%frame+512],%r24; .loc 1 30 6 setp.eq.u64 %r46,%frame,%r38; @ %r46 bra $L3; .loc 1 31 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call _free_r,(%out_arg1,%out_arg2); } .loc 1 32 10 ld.u64 %r24,[%frame+512]; $L3: cvt.u32.u64 %r26,%r24; bra $L1; $L4: .loc 1 28 12 mov.u32 %r26,-1; $L1: .loc 1 33 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vdiprintf .visible .func (.param .u32 %value_out) vdiprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 42 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vdiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 43 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1749 0 0 0 644 4519 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _vdprintf_r .visible .func (.param .u32 %value_out) _vdprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vdprintf.c" // BEGIN GLOBAL FUNCTION DECL: vdprintf .visible .func (.param .u32 %value_out) vdprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vasnprintf_r .extern .func (.param .u64 %value_out) _vasnprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _write_r .extern .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _vdprintf_r .visible .func (.param .u32 %value_out) _vdprintf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,528; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; mov.u64 %r27,%ar0; mov.u32 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; .loc 1 23 10 mov.u64 %r31,512; st.u64 [%frame+512],%r31; .loc 1 26 7 add.u64 %r37,%frame,512; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r37; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r30; call (%value_in),_vasnprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r38,[%value_in]; } .loc 1 27 6 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L4; .loc 1 29 7 ld.u64 %r44,[%frame+512]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r38; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r44; call (%value_in),_write_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r45,[%value_in]; } mov.u64 %r24,%r45; .loc 1 29 5 st.u64 [%frame+512],%r24; .loc 1 30 6 setp.eq.u64 %r46,%frame,%r38; @ %r46 bra $L3; .loc 1 31 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; call _free_r,(%out_arg1,%out_arg2); } .loc 1 32 10 ld.u64 %r24,[%frame+512]; $L3: cvt.u32.u64 %r26,%r24; bra $L1; $L4: .loc 1 28 12 mov.u32 %r26,-1; $L1: .loc 1 33 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vdprintf .visible .func (.param .u32 %value_out) vdprintf (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 48 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vdprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 49 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1767 0 0 0 644 54069 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: __sprint_r$part$0 .func (.param .u32 %value_out) __sprint_r$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: __sprint_r .visible .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .visible .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: vfiprintf .visible .func (.param .u32 %value_out) vfiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _fputwc_r .extern .func (.param .u32 %value_out) _fputwc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sfvwrite_r .extern .func (.param .u32 %value_out) __sfvwrite_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN FUNCTION DEF: __sprint_r$part$0 .func (.param .u32 %value_out) __sprint_r$part$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r27; .reg .u32 %r28; .reg .u64 %r29; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .pred %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r67; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u64 %r75; mov.u64 %r43,%ar0; mov.u64 %r44,%ar1; mov.u64 %r45,%ar2; .loc 1 410 18 ld.u32 %r47,[%r44+172]; and.b32 %r46,%r47,8192; .loc 1 410 5 setp.eq.u32 %r48,%r46,0; @ %r48 bra $L2; .loc 1 415 7 ld.u64 %r24,[%r45]; .loc 1 416 25 ld.u64 %r75,[%r45+16]; setp.ne.u64 %r50,%r75,0; @ %r50 bra $L3; $L7: .loc 1 403 15 mov.u32 %r42,0; bra $L4; $L3: .loc 1 418 6 ld.u64 %r25,[%r24]; .loc 1 419 23 ld.u64 %r51,[%r24+8]; shr.u64 %r27,%r51,2; .loc 1 419 8 cvt.u32.u64 %r28,%r27; .loc 1 420 18 setp.le.s32 %r52,%r28,0; @ %r52 bra $L5; mov.u64 %r41,%r25; add.u32 %r54,%r28,-1; cvt.u64.u32 %r55,%r54; shl.b64 %r56,%r55,2; add.u64 %r57,%r41,4; add.u64 %r29,%r56,%r57; $L6: .loc 1 421 9 ld.u32 %r59,[%r41]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r59; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r44; call (%value_in),_fputwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r61,[%value_in]; } .loc 1 421 8 setp.eq.u32 %r62,%r61,-1; @ %r62 bra $L8; .loc 1 420 18 add.u64 %r41,%r41,4; setp.ne.u64 %r63,%r29,%r41; @ %r63 bra $L6; ld.u64 %r75,[%r45+16]; $L5: .loc 1 417 30 cvt.s64.s32 %r64,%r28; shl.b64 %r65,%r64,2; .loc 1 417 23 sub.u64 %r75,%r75,%r65; st.u64 [%r45+16],%r75; .loc 1 417 53 add.u64 %r24,%r24,16; .loc 1 416 25 setp.ne.u64 %r67,%r75,0; @ %r67 bra $L3; bra $L7; $L2: .loc 1 429 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r45; call (%value_in),__sfvwrite_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r71,[%value_in]; } mov.u32 %r42,%r71; bra $L4; $L8: .loc 1 422 10 mov.u32 %r42,%r61; $L4: .loc 1 431 17 mov.u64 %r72,0; st.u64 [%r45+16],%r72; .loc 1 432 18 mov.u32 %r73,0; st.u32 [%r45+8],%r73; .loc 1 434 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __sprint_r .visible .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .u32 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 405 5 ld.u64 %r27,[%r26+16]; setp.ne.u64 %r28,%r27,0; @ %r28 bra $L13; .loc 1 406 19 mov.u32 %r29,0; st.u32 [%r26+8],%r29; .loc 1 407 10 mov.u32 %r23,%r29; bra $L12; $L13: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r33,[%value_in]; } mov.u32 %r23,%r33; $L12: .loc 1 434 1 mov.u32 %value,%r23; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfiprintf_r .visible .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,208; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r34; .reg .u64 %r36; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r53; .reg .u32 %r89; .reg .u32 %r102; .reg .u32 %r103; .reg .u64 %r105; .reg .u64 %r107; .reg .u32 %r108; .reg .u64 %r109; .reg .u32 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r115; .reg .u64 %r116; .reg .u32 %r120; .reg .u64 %r121; .reg .u32 %r122; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u64 %r131; .reg .u64 %r132; .reg .u32 %r133; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u64 %r143; .reg .u64 %r144; .reg .u32 %r146; .reg .u64 %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u32 %r152; .reg .u32 %r154; .reg .u32 %r155; .reg .u64 %r168; .reg .u64 %r175; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r185; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r193; .reg .u64 %r194; .reg .u64 %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r207; .reg .u32 %r212; .reg .u32 %r213; .reg .u32 %r215; .reg .u64 %r216; .reg .u32 %r217; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r234; .reg .u32 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .pred %r248; .reg .u32 %r249; .reg .pred %r250; .reg .u16 %r252; .reg .u16 %r253; .reg .pred %r254; .reg .u16 %r255; .reg .u32 %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .pred %r261; .reg .u64 %r262; .reg .pred %r263; .reg .u32 %r266; .reg .pred %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .pred %r270; .reg .u16 %r271; .reg .pred %r272; .reg .u32 %r277; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u16 %r281; .reg .u32 %r282; .reg .u32 %r283; .reg .u32 %r284; .reg .u32 %r286; .reg .u32 %r287; .reg .u16 %r288; .reg .u16 %r289; .reg .u16 %r290; .reg .u32 %r291; .reg .u16 %r292; .reg .pred %r293; .reg .u32 %r294; .reg .u16 %r295; .reg .u32 %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r300; .reg .u32 %r301; .reg .u16 %r302; .reg .u16 %r303; .reg .u16 %r304; .reg .u32 %r305; .reg .u16 %r306; .reg .pred %r307; .reg .u64 %r308; .reg .pred %r309; .reg .u64 %r310; .reg .u32 %r311; .reg .pred %r312; .reg .pred %r313; .reg .u32 %r314; .reg .u32 %r319; .reg .pred %r320; .reg .pred %r321; .reg .u32 %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .pred %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .pred %r331; .reg .pred %r332; .reg .pred %r333; .reg .pred %r334; .reg .pred %r335; .reg .u32 %r336; .reg .pred %r337; .reg .pred %r338; .reg .pred %r339; .reg .pred %r340; .reg .pred %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .pred %r351; .reg .pred %r352; .reg .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r358; .reg .pred %r359; .reg .pred %r360; .reg .pred %r361; .reg .pred %r362; .reg .u32 %r363; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .u32 %r370; .reg .u32 %r371; .reg .u32 %r372; .reg .pred %r375; .reg .u16 %r376; .reg .pred %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .pred %r380; .reg .u32 %r381; .reg .u32 %r382; .reg .pred %r383; .reg .u32 %r384; .reg .pred %r385; .reg .u32 %r386; .reg .pred %r387; .reg .u16 %r388; .reg .pred %r391; .reg .pred %r392; .reg .u32 %r393; .reg .u64 %r394; .reg .u32 %r395; .reg .pred %r396; .reg .u64 %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u32 %r401; .reg .pred %r402; .reg .u32 %r403; .reg .pred %r404; .reg .u32 %r405; .reg .pred %r406; .reg .u32 %r407; .reg .pred %r408; .reg .u16 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .pred %r413; .reg .pred %r414; .reg .u32 %r416; .reg .u64 %r418; .reg .u64 %r419; .reg .pred %r420; .reg .u64 %r421; .reg .u64 %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .pred %r427; .reg .u32 %r428; .reg .pred %r429; .reg .u16 %r430; .reg .pred %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u32 %r435; .reg .pred %r436; .reg .u32 %r437; .reg .pred %r438; .reg .u16 %r439; .reg .u32 %r440; .reg .pred %r441; .reg .pred %r442; .reg .u32 %r443; .reg .u32 %r444; .reg .pred %r445; .reg .u32 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .u32 %r451; .reg .u16 %r452; .reg .u16 %r453; .reg .u16 %r454; .reg .u32 %r455; .reg .u16 %r456; .reg .pred %r457; .reg .pred %r458; .reg .pred %r459; .reg .u32 %r460; .reg .u16 %r461; .reg .u16 %r462; .reg .u32 %r463; .reg .u16 %r464; .reg .u16 %r465; .reg .u32 %r466; .reg .pred %r468; .reg .u32 %r469; .reg .u16 %r470; .reg .u32 %r471; .reg .u32 %r472; .reg .u32 %r473; .reg .u16 %r474; .reg .u16 %r475; .reg .u32 %r476; .reg .u16 %r477; .reg .u16 %r478; .reg .u16 %r479; .reg .u32 %r480; .reg .u16 %r481; .reg .pred %r482; .reg .u64 %r485; .reg .u32 %r486; .reg .u64 %r489; .reg .pred %r490; .reg .u32 %r491; .reg .u16 %r492; .reg .u16 %r493; .reg .u64 %r495; .reg .u32 %r496; .reg .u16 %r497; .reg .u16 %r498; .reg .pred %r501; .reg .u64 %r504; .reg .u64 %r505; .reg .u64 %r506; .reg .u32 %r507; .reg .pred %r508; .reg .u64 %r511; .reg .pred %r512; .reg .pred %r513; .reg .u32 %r514; .reg .pred %r515; .reg .u32 %r516; .reg .pred %r517; .reg .u32 %r518; .reg .u16 %r519; .reg .u32 %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .u64 %r527; .reg .pred %r528; .reg .pred %r529; .reg .u32 %r535; .reg .pred %r536; .reg .pred %r537; .reg .pred %r539; .reg .pred %r540; .reg .u16 %r542; .reg .u32 %r543; .reg .pred %r544; .reg .u32 %r549; .reg .pred %r550; .reg .u16 %r551; .reg .u32 %r552; .reg .pred %r553; .reg .u64 %r555; .reg .pred %r556; .reg .pred %r557; .reg .pred %r559; .reg .u32 %r564; .reg .pred %r565; .reg .pred %r566; .reg .u64 %r568; .reg .pred %r569; .reg .pred %r570; .reg .u32 %r576; .reg .pred %r577; .reg .pred %r578; .reg .pred %r579; .reg .pred %r580; .reg .u64 %r582; .reg .pred %r583; .reg .pred %r584; .reg .u32 %r590; .reg .pred %r591; .reg .pred %r592; .reg .pred %r594; .reg .pred %r595; .reg .u32 %r601; .reg .pred %r602; .reg .pred %r603; .reg .pred %r604; .reg .u64 %r606; .reg .pred %r607; .reg .pred %r608; .reg .u32 %r614; .reg .pred %r615; .reg .pred %r616; .reg .pred %r618; .reg .pred %r619; .reg .u32 %r620; .reg .u32 %r625; .reg .pred %r626; .reg .u32 %r627; .reg .pred %r628; .reg .pred %r629; .reg .u32 %r630; .reg .u32 %r631; .reg .pred %r632; .reg .u32 %r637; .reg .pred %r638; .reg .u32 %r639; .reg .pred %r640; .reg .pred %r641; .reg .pred %r642; .reg .u64 %r644; .reg .pred %r645; .reg .pred %r646; .reg .u32 %r652; .reg .pred %r653; .reg .pred %r654; .reg .pred %r656; .reg .pred %r657; .reg .u32 %r658; .reg .u32 %r663; .reg .pred %r664; .reg .u32 %r665; .reg .pred %r666; .reg .u32 %r671; .reg .pred %r672; .reg .u32 %r673; .reg .u64 %r674; .reg .pred %r675; .reg .u64 %r679; .reg .u32 %r680; .reg .u16 %r681; .reg .u16 %r682; .reg .pred %r683; .reg .u32 %r685; .reg .pred %r686; .reg .u32 %r687; .reg .pred %r688; .reg .u64 %r690; .reg .u64 %r694; .reg .pred %r697; .reg .u32 %r698; .reg .u32 %r699; .reg .u32 %r700; .reg .u32 %r701; .reg .u32 %r702; .reg .u32 %r703; .reg .u16 %r704; .reg .u16 %r705; .reg .u16 %r706; .reg .u32 %r707; .reg .u16 %r708; .reg .pred %r709; .reg .u64 %r711; .reg .pred %r714; .reg .u32 %r715; .reg .u64 %r717; .reg .u64 %r718; .reg .u32 %r719; .reg .u32 %r735; .reg .u64 %r736; .reg .u64 %r737; .reg .u64 %r738; .reg .u16 %r744; mov.u64 %r236,%ar0; mov.u64 %r237,%ar1; mov.u64 %r238,%ar2; mov.u64 %r239,%ar3; .loc 1 848 2 setp.eq.u64 %r248,%r236,0; @ %r248 bra $L16; ld.u32 %r249,[%r236+80]; setp.ne.u32 %r250,%r249,0; @ %r250 bra $L16; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; call __sinit,(%out_arg1); } $L16: .loc 1 851 2 ld.s16 %r24,[%r237+16]; cvt.u16.u32 %r253,%r24; and.b16 %r252,%r253,8192; setp.ne.u16 %r254,%r252,0; @ %r254 bra $L17; .loc 1 849 2 ld.u32 %r23,[%r237+172]; .loc 1 851 2 or.b16 %r255,%r253,8192; cvt.s32.s16 %r24,%r255; st.u16 [%r237+16],%r255; and.b32 %r258,%r23,-8193; st.u32 [%r237+172],%r258; $L17: .loc 1 854 5 cvt.u16.u32 %r260,%r24; and.b16 %r259,%r260,8; setp.eq.u16 %r261,%r259,0; @ %r261 bra $L18; .loc 1 854 6 ld.u64 %r262,[%r237+24]; setp.ne.u64 %r263,%r262,0; @ %r263 bra $L19; $L18: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r266,[%value_in]; } setp.eq.u32 %r267,%r266,0; @ %r267 bra $L20; $L164: .loc 1 856 10 mov.u32 %r235,-1; bra $L15; $L20: .loc 1 861 9 ld.s16 %r24,[%r237+16]; $L19: .loc 1 861 5 cvt.u16.u32 %r269,%r24; and.b16 %r268,%r269,26; setp.ne.u16 %r270,%r268,10; @ %r270 bra $L22; .loc 1 861 60 ld.u16 %r271,[%r237+18]; setp.lt.s16 %r272,%r271,0; @ %r272 bra $L22; .loc 1 864 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r238; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r239; call (%value_in),__sbprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r277,[%value_in]; } mov.u32 %r235,%r277; bra $L15; $L22: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r278,0; st.u64 [%frame+184],%r278; .loc 1 885 17 mov.u32 %r279,0; st.u32 [%frame+176],%r279; .loc 1 883 21 mov.u64 %r131,%frame; .loc 1 707 8 mov.u64 %r25,%r278; .loc 1 887 6 mov.u32 %r235,%r279; add.u64 %r736,%frame,168; .loc 1 1687 4 add.u64 %r737,%frame,192; .loc 1 1685 4 add.u64 %r738,%frame,194; $L23: .loc 1 914 24 ld.s8 %r138,[%r238]; .loc 1 914 37 cvt.u16.u32 %r281,%r138; set.u32.ne.u16 %r282,%r281,0; neg.s32 %r283,%r282; mov.u32 %r280,%r283; set.u32.ne.u16 %r286,%r281,37; neg.s32 %r287,%r286; mov.u32 %r284,%r287; cvt.u16.u8 %r744,%r280; mov.u16 %r289,%r744; cvt.u16.u8 %r744,%r284; mov.u16 %r290,%r744; and.b16 %r288,%r289,%r290; cvt.u32.u16 %r291,%r288; cvt.u16.u8 %r292,%r291; setp.eq.u16 %r293,%r292,0; @ %r293 bra $L175; mov.u64 %r107,%r238; $L25: mov.u64 %r144,%r107; .loc 1 915 25 add.u64 %r107,%r107,1; .loc 1 914 24 ld.s8 %r138,[%r107]; .loc 1 914 37 cvt.u16.u32 %r295,%r138; set.u32.ne.u16 %r296,%r295,0; neg.s32 %r297,%r296; mov.u32 %r294,%r297; set.u32.ne.u16 %r300,%r295,37; neg.s32 %r301,%r300; mov.u32 %r298,%r301; cvt.u16.u8 %r744,%r294; mov.u16 %r303,%r744; cvt.u16.u8 %r744,%r298; mov.u16 %r304,%r744; and.b16 %r302,%r303,%r304; cvt.u32.u16 %r305,%r302; cvt.u16.u8 %r306,%r305; setp.ne.u16 %r307,%r306,0; @ %r307 bra $L25; .loc 1 917 16 sub.u64 %r308,%r107,%r238; .loc 1 917 10 cvt.u32.u64 %r139,%r308; .loc 1 917 6 setp.eq.u32 %r309,%r139,0; @ %r309 bra $L24; .loc 1 918 4 st.u64 [%r131],%r238; cvt.s64.s32 %r34,%r139; st.u64 [%r131+8],%r34; ld.u64 %r310,[%frame+184]; add.u64 %r36,%r34,%r310; st.u64 [%frame+184],%r36; ld.u32 %r311,[%frame+176]; add.u32 %r38,%r311,1; st.u32 [%frame+176],%r38; setp.gt.s32 %r312,%r38,7; @ %r312 bra $L26; add.u64 %r131,%r131,16; bra $L27; $L26: .loc 1 405 5 setp.ne.u64 %r313,%r36,0; @ %r313 bra $L28; .loc 1 406 19 mov.u32 %r314,0; st.u32 [%frame+176],%r314; .loc 1 918 4 mov.u64 %r131,%frame; bra $L27; $L28: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r319,[%value_in]; } setp.ne.u32 %r320,%r319,0; @ %r320 bra $L29; mov.u64 %r131,%frame; $L27: .loc 1 919 8 add.u32 %r235,%r235,%r139; .loc 1 925 21 ld.s8 %r138,[%r144+1]; bra $L24; $L175: .loc 1 914 37 mov.u64 %r107,%r238; $L24: .loc 1 925 20 setp.eq.u32 %r321,%r138,0; @ %r321 bra $L30; .loc 1 929 6 add.u64 %r238,%r107,1; .loc 1 935 8 mov.u32 %r322,0; st.u8 [%frame+194],%r322; .loc 1 947 14 ld.s8 %r222,[%r107+1]; mov.u32 %r152,0; mov.u32 %r154,%r152; .loc 1 934 8 mov.u32 %r126,-1; .loc 1 933 9 mov.u32 %r125,%r152; .loc 1 931 9 mov.u32 %r122,%r152; .loc 1 1060 6 mov.u32 %r735,%r152; $L31: .loc 1 947 18 add.u64 %r238,%r238,1; .loc 1 947 12 mov.u32 %r120,%r222; $L32: .loc 1 948 11 setp.eq.u32 %r323,%r120,88; @ %r323 bra $L33; setp.gt.s32 %r324,%r120,88; @ %r324 bra $L34; setp.eq.u32 %r325,%r120,46; @ %r325 bra $L35; setp.gt.s32 %r326,%r120,46; @ %r326 bra $L36; setp.eq.u32 %r327,%r120,42; @ %r327 bra $L37; setp.gt.s32 %r328,%r120,42; @ %r328 bra $L38; setp.eq.u32 %r329,%r120,32; @ %r329 bra $L39; setp.eq.u32 %r330,%r120,35; @ %r330 bra $L40; bra $L270; $L38: setp.eq.u32 %r331,%r120,43; @ %r331 bra $L42; setp.eq.u32 %r332,%r120,45; @ %r332 bra $L43; bra $L44; $L36: setp.eq.u32 %r333,%r120,68; @ %r333 bra $L45; setp.gt.s32 %r334,%r120,68; @ %r334 bra $L46; setp.eq.u32 %r335,%r120,48; @ %r335 bra $L47; add.u32 %r336,%r120,-49; setp.gt.u32 %r337,%r336,8; @ %r337 bra $L44; mov.u64 %r178,%r238; .loc 1 1077 6 mov.u32 %r125,0; add.u32 %r715,%r120,-48; bra $L48; $L46: .loc 1 948 11 setp.eq.u32 %r338,%r120,79; @ %r338 bra $L49; setp.eq.u32 %r339,%r120,85; @ %r339 bra $L50; bra $L44; $L34: setp.eq.u32 %r340,%r120,111; @ %r340 bra $L51; setp.gt.s32 %r341,%r120,111; @ %r341 bra $L52; setp.eq.u32 %r342,%r120,105; @ %r342 bra $L53; setp.gt.s32 %r343,%r120,105; @ %r343 bra $L54; setp.eq.u32 %r344,%r120,100; @ %r344 bra $L53; setp.eq.u32 %r345,%r120,104; @ %r345 bra $L55; setp.eq.u32 %r346,%r120,99; @ %r346 bra $L56; bra $L44; $L54: setp.eq.u32 %r347,%r120,108; @ %r347 bra $L57; setp.eq.u32 %r348,%r120,110; @ %r348 bra $L58; bra $L44; $L52: setp.eq.u32 %r349,%r120,115; @ %r349 bra $L59; setp.gt.s32 %r350,%r120,115; @ %r350 bra $L60; setp.eq.u32 %r351,%r120,112; @ %r351 bra $L61; setp.eq.u32 %r352,%r120,113; @ %r352 bra $L62; bra $L44; $L60: setp.eq.u32 %r353,%r120,117; @ %r353 bra $L63; setp.eq.u32 %r354,%r120,120; @ %r354 bra $L64; bra $L44; $L53: setp.eq.u32 %r355,%r152,0; @ %r355 bra $L66; cvt.u32.u32 %r356,%r154; st.u8 [%frame+194],%r356; bra $L66; $L64: setp.eq.u32 %r357,%r152,0; @ %r357 bra $L67; cvt.u32.u32 %r358,%r154; st.u8 [%frame+194],%r358; $L67: .loc 1 1538 10 cvta.const.u64 %r25,$LC1; bra $L68; $L39: .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 964 7 setp.ne.u32 %r359,%r154,0; selp.u32 %r152,%r152,1,%r359; selp.u32 %r154,%r154,32,%r359; bra $L31; $L40: .loc 1 968 10 or.b32 %r122,%r122,1; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 969 4 bra $L31; $L37: .loc 1 1007 10 add.u64 %r185,%r239,4; ld.u32 %r125,[%r239]; .loc 1 1011 7 setp.lt.s32 %r360,%r125,0; @ %r360 bra $L70; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1007 10 mov.u64 %r239,%r185; bra $L31; $L70: .loc 1 1013 10 neg.s32 %r125,%r125; .loc 1 1007 10 mov.u64 %r239,%r185; $L43: .loc 1 1016 10 or.b32 %r122,%r122,4; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1017 4 bra $L31; $L42: .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1020 4 mov.u32 %r152,1; .loc 1 1019 9 mov.u32 %r154,%r120; .loc 1 1020 4 bra $L31; $L35: .loc 1 1022 18 add.u64 %r151,%r238,1; .loc 1 1022 12 ld.s8 %r120,[%r238]; .loc 1 1022 7 setp.eq.u32 %r361,%r120,42; @ %r361 bra $L71; .loc 1 1061 11 add.u32 %r715,%r120,-48; setp.le.u32 %r362,%r715,9; @ %r362 bra $L72; .loc 1 1022 18 mov.u64 %r238,%r151; .loc 1 1060 6 mov.u32 %r126,%r735; bra $L32; $L71: ld.u32 %r363,[%r239]; max.s32 %r126,%r363,-1; .loc 1 947 14 ld.s8 %r222,[%r238+1]; .loc 1 1052 10 add.u64 %r239,%r239,4; .loc 1 1022 18 mov.u64 %r238,%r151; .loc 1 1058 5 bra $L31; $L72: mov.u64 %r181,%r151; .loc 1 1060 6 mov.u32 %r126,%r735; $L74: .loc 1 1062 12 shl.b32 %r365,%r126,2; add.u32 %r366,%r365,%r126; add.u32 %r367,%r366,%r366; .loc 1 1062 7 add.u32 %r126,%r367,%r715; mov.u64 %r234,%r181; add.u64 %r181,%r181,1; mov.u64 %r238,%r181; .loc 1 1063 8 ld.s8 %r120,[%r234]; .loc 1 1061 11 add.u32 %r715,%r120,-48; setp.le.u32 %r368,%r715,9; @ %r368 bra $L74; bra $L32; $L47: .loc 1 1073 10 or.b32 %r122,%r122,128; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1074 4 bra $L31; $L48: .loc 1 1079 12 shl.b32 %r370,%r125,2; add.u32 %r371,%r370,%r125; add.u32 %r372,%r371,%r371; .loc 1 1079 7 add.u32 %r125,%r715,%r372; mov.u64 %r207,%r178; add.u64 %r178,%r178,1; mov.u64 %r238,%r178; .loc 1 1080 8 ld.s8 %r120,[%r207]; .loc 1 1081 13 add.u32 %r715,%r120,-48; setp.le.u32 %r375,%r715,9; @ %r375 bra $L48; bra $L32; $L55: .loc 1 1107 11 or.b32 %r122,%r122,64; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1108 4 bra $L31; $L57: .loc 1 1111 8 ld.s8 %r222,[%r238]; .loc 1 1111 7 cvt.u16.u32 %r376,%r222; setp.ne.u16 %r377,%r376,108; @ %r377 bra $L75; .loc 1 1113 11 or.b32 %r122,%r122,32; .loc 1 947 14 ld.s8 %r222,[%r238+1]; .loc 1 1112 8 add.u64 %r238,%r238,1; bra $L31; $L75: .loc 1 1116 11 or.b32 %r122,%r122,16; bra $L31; $L62: .loc 1 1119 10 or.b32 %r122,%r122,32; .loc 1 1022 14 ld.s8 %r222,[%r238]; .loc 1 1120 4 bra $L31; $L56: .loc 1 1178 9 ld.u32 %r378,[%r239]; st.u8 [%frame+128],%r378; .loc 1 1181 9 mov.u32 %r379,0; st.u8 [%frame+194],%r379; .loc 1 1178 11 add.u64 %r239,%r239,4; .loc 1 1182 4 mov.u32 %r129,1; .loc 1 1179 10 mov.u32 %r130,%r129; .loc 1 1162 7 add.u64 %r121,%frame,128; .loc 1 1182 4 bra $L76; $L45: setp.eq.u32 %r380,%r152,0; @ %r380 bra $L77; cvt.u32.u32 %r381,%r154; st.u8 [%frame+194],%r381; $L77: .loc 1 1184 10 or.b32 %r122,%r122,16; $L66: .loc 1 1188 13 and.b32 %r382,%r122,32; setp.eq.u32 %r383,%r382,0; @ %r383 bra $L78; add.u64 %r197,%r239,7; and.b64 %r196,%r197,-8; add.u64 %r239,%r196,8; ld.u64 %r53,[%r196]; mov.u64 %r127,%r53; bra $L79; $L78: and.b32 %r384,%r122,16; setp.eq.u32 %r385,%r384,0; @ %r385 bra $L80; add.u64 %r189,%r239,7; and.b64 %r188,%r189,-8; add.u64 %r239,%r188,8; ld.u64 %r53,[%r188]; mov.u64 %r127,%r53; bra $L79; $L80: .loc 1 1007 10 ld.u32 %r223,[%r239]; add.u64 %r239,%r239,4; .loc 1 1188 13 and.b32 %r386,%r122,64; setp.eq.u32 %r387,%r386,0; @ %r387 bra $L81; cvt.u16.u32 %r388,%r223; cvt.s64.s16 %r127,%r388; .loc 1 1190 8 mov.u64 %r53,%r127; bra $L79; $L81: .loc 1 1188 13 cvt.s64.s32 %r127,%r223; .loc 1 1190 8 mov.u64 %r53,%r127; $L79: .loc 1 1190 7 setp.ge.s64 %r391,%r53,0; @ %r391 bra $L82; .loc 1 1196 12 neg.s64 %r127,%r127; mov.u32 %r133,45; .loc 1 1199 9 mov.u32 %r128,1; bra $L83; $L58: setp.eq.u32 %r392,%r152,0; @ %r392 bra $L84; cvt.u32.u32 %r393,%r154; st.u8 [%frame+194],%r393; $L84: .loc 1 1188 13 add.u64 %r394,%r239,7; and.b64 %r229,%r394,-8; ld.u64 %r230,[%r229]; add.u64 %r239,%r229,8; .loc 1 1387 14 and.b32 %r395,%r122,32; .loc 1 1387 7 setp.eq.u32 %r396,%r395,0; @ %r396 bra $L85; .loc 1 1388 34 cvt.s64.s32 %r397,%r235; st.u64 [%r230],%r397; bra $L23; $L85: .loc 1 1391 14 and.b32 %r398,%r122,16; .loc 1 1391 7 setp.eq.u32 %r399,%r398,0; @ %r399 bra $L87; .loc 1 1392 34 cvt.s64.s32 %r400,%r235; st.u64 [%r230],%r400; bra $L23; $L87: .loc 1 1393 19 and.b32 %r401,%r122,64; .loc 1 1393 12 setp.eq.u32 %r402,%r401,0; @ %r402 bra $L88; .loc 1 1394 35 st.u16 [%r230],%r235; bra $L23; $L88: .loc 1 1400 33 st.u32 [%r230],%r235; bra $L23; $L49: .loc 1 1403 10 or.b32 %r122,%r122,16; $L51: .loc 1 1406 13 and.b32 %r403,%r122,32; setp.eq.u32 %r404,%r403,0; @ %r404 bra $L89; add.u64 %r168,%r239,7; and.b64 %r135,%r168,-8; add.u64 %r239,%r135,8; ld.u64 %r127,[%r135]; .loc 1 1407 9 mov.u32 %r128,0; bra $L90; $L89: .loc 1 1406 13 and.b32 %r405,%r122,16; setp.eq.u32 %r406,%r405,0; @ %r406 bra $L91; add.u64 %r179,%r239,7; and.b64 %r39,%r179,-8; add.u64 %r239,%r39,8; ld.u64 %r127,[%r39]; .loc 1 1407 9 mov.u32 %r128,%r403; bra $L90; $L91: .loc 1 1007 10 ld.u32 %r224,[%r239]; add.u64 %r239,%r239,4; .loc 1 1406 13 and.b32 %r407,%r122,64; setp.eq.u32 %r408,%r407,0; @ %r408 bra $L92; cvt.u16.u32 %r409,%r224; cvt.u64.u16 %r127,%r409; .loc 1 1407 9 mov.u32 %r128,%r405; bra $L90; $L92: .loc 1 1406 13 cvt.u64.u32 %r127,%r224; .loc 1 1407 9 mov.u32 %r128,%r407; bra $L90; $L61: .loc 1 1421 25 add.u64 %r182,%r239,7; and.b64 %r195,%r182,-8; add.u64 %r239,%r195,8; ld.u64 %r127,[%r195]; .loc 1 1424 10 or.b32 %r122,%r122,2; .loc 1 1425 10 mov.u32 %r410,48; st.u8 [%frame+192],%r410; .loc 1 1426 10 mov.u32 %r411,120; st.u8 [%frame+193],%r411; .loc 1 1423 10 cvta.const.u64 %r25,$LC1; .loc 1 1422 9 mov.u32 %r128,2; .loc 1 1427 4 bra $L90; $L59: .loc 1 1432 7 add.u64 %r204,%r239,7; and.b64 %r205,%r204,-8; add.u64 %r239,%r205,8; ld.u64 %r121,[%r205]; .loc 1 1436 9 mov.u32 %r412,0; st.u8 [%frame+194],%r412; .loc 1 1442 7 setp.ne.u64 %r413,%r121,0; @ %r413 bra $L93; .loc 1 1444 39 min.u32 %r130,%r126,6; mov.u32 %r129,%r130; .loc 1 1443 8 cvta.const.u64 %r121,$LC2; bra $L76; $L93: .loc 1 1511 7 setp.eq.u32 %r414,%r126,-1; @ %r414 bra $L94; .loc 1 1517 15 cvt.s64.s32 %r418,%r126; mov.u32 %r416,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r418; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r419,[%value_in]; } .loc 1 1519 8 setp.eq.u64 %r420,%r419,0; @ %r420 bra $L176; .loc 1 1520 15 sub.u64 %r421,%r419,%r121; .loc 1 1520 11 cvt.u32.u64 %r130,%r421; mov.u32 %r124,%r122; .loc 1 932 9 mov.u32 %r126,%r416; bra $L95; $L94: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r121; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r423,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r130,%r423; mov.u32 %r124,%r122; .loc 1 932 9 mov.u32 %r126,0; bra $L95; $L50: .loc 1 1528 10 or.b32 %r122,%r122,16; $L63: .loc 1 1531 13 and.b32 %r424,%r122,32; setp.eq.u32 %r425,%r424,0; @ %r425 bra $L96; add.u64 %r194,%r239,7; and.b64 %r203,%r194,-8; add.u64 %r239,%r203,8; ld.u64 %r127,[%r203]; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L96: .loc 1 1531 13 and.b32 %r426,%r122,16; setp.eq.u32 %r427,%r426,0; @ %r427 bra $L97; add.u64 %r198,%r239,7; and.b64 %r199,%r198,-8; add.u64 %r239,%r199,8; ld.u64 %r127,[%r199]; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L97: .loc 1 1007 10 ld.u32 %r225,[%r239]; add.u64 %r239,%r239,4; .loc 1 1531 13 and.b32 %r428,%r122,64; setp.eq.u32 %r429,%r428,0; @ %r429 bra $L98; cvt.u16.u32 %r430,%r225; cvt.u64.u16 %r127,%r430; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L98: .loc 1 1531 13 cvt.u64.u32 %r127,%r225; .loc 1 1532 9 mov.u32 %r128,1; bra $L90; $L33: setp.eq.u32 %r431,%r152,0; @ %r431 bra $L99; cvt.u32.u32 %r432,%r154; st.u8 [%frame+194],%r432; $L99: .loc 1 1535 10 cvta.const.u64 %r25,$LC0; $L68: .loc 1 1539 17 and.b32 %r433,%r122,32; setp.eq.u32 %r434,%r433,0; @ %r434 bra $L100; add.u64 %r136,%r239,7; and.b64 %r177,%r136,-8; add.u64 %r239,%r177,8; ld.u64 %r127,[%r177]; bra $L101; $L100: and.b32 %r435,%r122,16; setp.eq.u32 %r436,%r435,0; @ %r436 bra $L102; add.u64 %r193,%r239,7; and.b64 %r148,%r193,-8; add.u64 %r239,%r148,8; ld.u64 %r127,[%r148]; bra $L101; $L102: .loc 1 1007 10 ld.u32 %r226,[%r239]; add.u64 %r239,%r239,4; .loc 1 1539 17 and.b32 %r437,%r122,64; setp.eq.u32 %r438,%r437,0; @ %r438 bra $L103; cvt.u16.u32 %r439,%r226; cvt.u64.u16 %r127,%r439; bra $L101; $L103: cvt.u64.u32 %r127,%r226; $L101: .loc 1 1542 14 and.b32 %r440,%r122,1; .loc 1 1542 7 setp.eq.u32 %r441,%r440,0; @ %r441 bra $L177; .loc 1 1542 20 setp.eq.u64 %r442,%r127,0; @ %r442 bra $L178; .loc 1 1543 11 mov.u32 %r443,48; st.u8 [%frame+192],%r443; .loc 1 1544 11 st.u8 [%frame+193],%r120; .loc 1 1545 11 or.b32 %r122,%r122,2; .loc 1 1540 9 mov.u32 %r128,2; bra $L90; $L177: mov.u32 %r128,2; bra $L90; $L178: mov.u32 %r128,2; $L90: .loc 1 1552 1 mov.u32 %r133,0; $L83: .loc 1 1197 10 cvt.u32.u32 %r444,%r133; st.u8 [%frame+194],%r444; .loc 1 1558 14 setp.eq.u32 %r445,%r126,-1; @ %r445 bra $L104; .loc 1 1559 11 and.b32 %r124,%r122,-129; .loc 1 1567 15 set.u32.ne.u64 %r447,%r127,0; neg.s32 %r448,%r447; mov.u32 %r446,%r448; .loc 1 1567 28 set.u32.ne.u32 %r450,%r126,0; neg.s32 %r451,%r450; mov.u32 %r449,%r451; .loc 1 1567 20 cvt.u16.u8 %r744,%r446; mov.u16 %r453,%r744; cvt.u16.u8 %r744,%r449; mov.u16 %r454,%r744; or.b16 %r452,%r453,%r454; cvt.u32.u16 %r455,%r452; .loc 1 1567 7 cvt.u16.u8 %r456,%r455; setp.eq.u16 %r457,%r456,0; @ %r457 bra $L105; .loc 1 1559 11 mov.u32 %r122,%r124; $L104: setp.eq.u32 %r458,%r128,1; @ %r458 bra $L106; setp.eq.u32 %r459,%r128,2; @ %r459 bra $L179; mov.u64 %r121,%r736; $L108: mov.u64 %r143,%r121; .loc 1 1576 13 add.u64 %r121,%r121,-1; .loc 1 1576 15 cvt.u32.u64 %r460,%r127; cvt.u16.u8 %r744,%r460; mov.u16 %r462,%r744; and.b16 %r461,%r462,7; cvt.u32.u16 %r463,%r461; cvt.u16.u8 %r744,%r463; mov.u16 %r465,%r744; add.u16 %r464,%r465,48; cvt.u32.u16 %r466,%r464; cvt.s32.s8 %r89,%r466; .loc 1 1576 13 st.u8 [%r121],%r466; .loc 1 1577 14 shr.u64 %r127,%r127,3; .loc 1 1578 15 setp.ne.u64 %r468,%r127,0; @ %r468 bra $L108; .loc 1 1580 22 cvt.u16.u32 %r470,%r89; set.u32.ne.u16 %r471,%r470,48; neg.s32 %r472,%r471; mov.u32 %r469,%r472; .loc 1 1580 9 mov.u32 %r473,%r122; cvt.u16.u8 %r744,%r473; mov.u16 %r475,%r744; and.b16 %r474,%r475,1; cvt.u32.u16 %r476,%r474; .loc 1 1580 22 cvt.u16.u8 %r744,%r469; mov.u16 %r478,%r744; cvt.u16.u8 %r744,%r476; mov.u16 %r479,%r744; and.b16 %r477,%r478,%r479; cvt.u32.u16 %r480,%r477; cvt.u16.u8 %r481,%r480; setp.ne.u16 %r482,%r481,0; @ %r482 bra $L109; .loc 1 1644 21 sub.u64 %r485,%r736,%r121; .loc 1 1644 9 cvt.u32.u64 %r130,%r485; mov.u32 %r124,%r122; bra $L95; $L109: .loc 1 1581 13 add.u64 %r150,%r143,-2; mov.u32 %r486,48; st.u8 [%r121+-1],%r486; .loc 1 1644 21 sub.u64 %r489,%r736,%r150; .loc 1 1644 9 cvt.u32.u64 %r130,%r489; mov.u32 %r124,%r122; .loc 1 1581 13 mov.u64 %r121,%r150; bra $L95; $L186: .loc 1 1559 11 mov.u32 %r122,%r124; $L106: .loc 1 1586 9 setp.gt.u64 %r490,%r127,9; @ %r490 bra $L180; .loc 1 1587 15 cvt.u32.u64 %r491,%r127; cvt.u16.u8 %r744,%r491; mov.u16 %r493,%r744; add.u16 %r492,%r493,48; st.u8 [%frame+167],%r492; .loc 1 1588 7 mov.u32 %r124,%r122; mov.u32 %r130,1; .loc 1 1587 13 add.u64 %r121,%frame,167; .loc 1 1588 7 bra $L95; $L180: .loc 1 1566 7 mov.u64 %r121,%r736; $L111: .loc 1 1594 14 add.u64 %r121,%r121,-1; .loc 1 1594 16 rem.u64 %r495,%r127,10; cvt.u32.u64 %r496,%r495; cvt.u16.u8 %r744,%r496; mov.u16 %r498,%r744; add.u16 %r497,%r498,48; st.u8 [%r121],%r497; mov.u64 %r175,%r127; .loc 1 1615 15 div.u64 %r127,%r127,10; .loc 1 1616 22 setp.gt.u64 %r501,%r175,9; @ %r501 bra $L111; .loc 1 1644 21 sub.u64 %r504,%r736,%r121; .loc 1 1644 9 cvt.u32.u64 %r130,%r504; mov.u32 %r124,%r122; bra $L95; $L179: mov.u64 %r121,%r736; $L107: .loc 1 1621 13 add.u64 %r121,%r121,-1; .loc 1 1621 28 and.b64 %r505,%r127,15; .loc 1 1621 20 add.u64 %r506,%r25,%r505; .loc 1 1621 13 ld.u8 %r507,[%r506]; st.u8 [%r121],%r507; .loc 1 1622 14 shr.u64 %r127,%r127,4; .loc 1 1623 15 setp.ne.u64 %r508,%r127,0; @ %r508 bra $L107; .loc 1 1644 21 sub.u64 %r511,%r736,%r121; .loc 1 1644 9 cvt.u32.u64 %r130,%r511; mov.u32 %r124,%r122; bra $L95; $L105: .loc 1 1641 32 setp.ne.u32 %r512,%r128,0; @ %r512 bra $L181; .loc 1 1641 55 and.b32 %r130,%r122,1; .loc 1 1641 45 setp.eq.u32 %r513,%r130,0; @ %r513 bra $L182; .loc 1 1642 32 mov.u32 %r514,48; st.u8 [%frame+167],%r514; mov.u32 %r126,%r128; add.u64 %r121,%frame,167; bra $L95; $L181: mov.u32 %r126,0; mov.u32 %r130,%r126; .loc 1 1566 7 add.u64 %r121,%frame,168; bra $L95; $L182: mov.u32 %r126,%r128; add.u64 %r121,%frame,168; bra $L95; $L270: setp.eq.u32 %r515,%r152,0; @ %r515 bra $L112; $L170: cvt.u32.u32 %r516,%r154; st.u8 [%frame+194],%r516; $L112: .loc 1 1648 7 setp.eq.u32 %r517,%r120,0; @ %r517 bra $L30; $L171: .loc 1 1652 8 st.u8 [%frame+128],%r120; .loc 1 1654 9 mov.u32 %r518,0; st.u8 [%frame+194],%r518; .loc 1 1655 4 mov.u32 %r129,1; .loc 1 1653 9 mov.u32 %r130,%r129; .loc 1 1651 7 add.u64 %r121,%frame,128; .loc 1 1655 4 bra $L76; $L176: mov.u32 %r130,%r126; mov.u32 %r124,%r122; .loc 1 932 9 mov.u32 %r126,%r416; $L95: .loc 1 1673 10 max.s32 %r129,%r126,%r130; .loc 1 1674 6 ld.u8 %r520,[%frame+194]; cvt.s16.s8 %r519,%r520; setp.eq.u16 %r521,%r519,0; @ %r521 bra $L113; .loc 1 1675 10 add.u32 %r129,%r129,1; $L113: .loc 1 1676 13 and.b32 %r102,%r124,2; .loc 1 1676 6 setp.eq.u32 %r522,%r102,0; @ %r522 bra $L114; .loc 1 1677 10 add.u32 %r129,%r129,2; $L114: .loc 1 1680 14 and.b32 %r103,%r124,132; .loc 1 1681 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r719,%r217,1; mov.u32 %r213,%r719; .loc 1 1680 6 setp.ne.u32 %r523,%r103,0; @ %r523 bra $L115; .loc 1 1681 4 sub.u32 %r155,%r125,%r129; setp.le.s32 %r524,%r155,0; @ %r524 bra $L115; setp.le.s32 %r525,%r155,16; @ %r525 bra $L183; cvta.const.u64 %r717,blanks$1; $L120: st.u64 [%r131],%r717; mov.u64 %r527,16; st.u64 [%r131+8],%r527; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r719; setp.gt.s32 %r528,%r719,7; @ %r528 bra $L117; add.u64 %r131,%r131,16; add.u32 %r212,%r217,2; mov.u32 %r217,%r719; bra $L118; $L117: .loc 1 405 5 setp.ne.u64 %r529,%r216,0; @ %r529 bra $L119; .loc 1 406 19 mov.u32 %r217,%r103; mov.u32 %r212,1; .loc 1 1681 4 mov.u64 %r131,%frame; bra $L118; $L119: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r535,[%value_in]; } setp.ne.u32 %r536,%r535,0; @ %r536 bra $L29; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r212,%r217,1; mov.u64 %r131,%frame; $L118: add.u32 %r155,%r155,-16; setp.gt.s32 %r537,%r155,16; @ ! %r537 bra $L116; add.u32 %r719,%r217,1; bra $L120; $L183: mov.u32 %r212,%r719; cvta.const.u64 %r717,blanks$1; $L116: st.u64 [%r131],%r717; cvt.s64.s32 %r105,%r155; st.u64 [%r131+8],%r105; add.u64 %r216,%r216,%r105; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r212; setp.gt.s32 %r539,%r212,7; @ %r539 bra $L121; add.u64 %r131,%r131,16; .loc 1 1685 4 add.u32 %r213,%r212,1; mov.u32 %r217,%r212; bra $L115; $L121: .loc 1 405 5 setp.ne.u64 %r540,%r216,0; @ %r540 bra $L122; .loc 1 1684 6 ld.u8 %r543,[%frame+194]; cvt.s16.s8 %r542,%r543; setp.ne.u16 %r544,%r542,0; @ ! %r544 bra $L271; bra $L123; $L122: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r549,[%value_in]; } .loc 1 1681 4 setp.ne.u32 %r550,%r549,0; @ %r550 bra $L29; .loc 1 1685 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1681 4 mov.u64 %r131,%frame; $L115: .loc 1 1684 6 ld.u8 %r552,[%frame+194]; cvt.s16.s8 %r551,%r552; setp.eq.u16 %r553,%r551,0; @ %r553 bra $L125; .loc 1 1685 4 st.u64 [%r131],%r738; mov.u64 %r555,1; st.u64 [%r131+8],%r555; add.u64 %r216,%r216,1; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r213; setp.gt.s32 %r556,%r213,7; @ %r556 bra $L126; $L169: add.u64 %r131,%r131,16; .loc 1 1687 4 mov.u32 %r217,%r213; add.u32 %r213,%r213,1; bra $L125; $L126: .loc 1 405 5 setp.ne.u64 %r557,%r216,0; @ %r557 bra $L127; .loc 1 1686 6 setp.ne.u32 %r559,%r102,0; @ %r559 bra $L128; mov.u32 %r217,%r102; mov.u32 %r213,1; .loc 1 1685 4 mov.u64 %r131,%frame; bra $L129; $L127: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r564,[%value_in]; } setp.ne.u32 %r565,%r564,0; @ %r565 bra $L29; .loc 1 1687 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1685 4 mov.u64 %r131,%frame; $L125: .loc 1 1686 6 setp.ne.u32 %r566,%r102,0; @ ! %r566 bra $L129; .loc 1 1687 4 st.u64 [%r131],%r737; mov.u64 %r568,2; st.u64 [%r131+8],%r568; add.u64 %r216,%r216,2; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r213; setp.gt.s32 %r569,%r213,7; @ %r569 bra $L131; $L172: mov.u32 %r217,%r213; $L168: add.u64 %r131,%r131,16; .loc 1 1691 4 add.u32 %r213,%r217,1; bra $L129; $L131: .loc 1 405 5 setp.ne.u64 %r570,%r216,0; @ %r570 bra $L132; .loc 1 406 19 mov.u32 %r213,1; mov.u32 %r217,0; .loc 1 1687 4 mov.u64 %r131,%frame; bra $L129; $L132: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r576,[%value_in]; } setp.ne.u32 %r577,%r576,0; @ %r577 bra $L29; .loc 1 1691 4 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1687 4 mov.u64 %r131,%frame; $L129: .loc 1 1690 6 setp.ne.u32 %r578,%r103,128; @ %r578 bra $L133; .loc 1 1691 4 sub.u32 %r146,%r125,%r129; setp.le.s32 %r579,%r146,0; @ %r579 bra $L133; setp.le.s32 %r580,%r146,16; @ %r580 bra $L184; cvta.const.u64 %r718,zeroes$0; $L138: st.u64 [%r131],%r718; mov.u64 %r582,16; st.u64 [%r131+8],%r582; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; add.u32 %r108,%r217,1; st.u32 [%frame+176],%r108; setp.gt.s32 %r583,%r108,7; @ %r583 bra $L135; add.u64 %r131,%r131,16; add.u32 %r215,%r217,2; mov.u32 %r217,%r108; bra $L136; $L135: .loc 1 405 5 setp.ne.u64 %r584,%r216,0; @ %r584 bra $L137; .loc 1 406 19 mov.u32 %r215,1; mov.u32 %r217,0; .loc 1 1691 4 mov.u64 %r131,%frame; bra $L136; $L137: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r590,[%value_in]; } setp.ne.u32 %r591,%r590,0; @ %r591 bra $L29; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r215,%r217,1; mov.u64 %r131,%frame; $L136: add.u32 %r146,%r146,-16; setp.gt.s32 %r592,%r146,16; @ %r592 bra $L138; bra $L134; $L184: mov.u32 %r215,%r213; cvta.const.u64 %r718,zeroes$0; $L134: st.u64 [%r131],%r718; cvt.s64.s32 %r109,%r146; st.u64 [%r131+8],%r109; add.u64 %r216,%r216,%r109; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r215; setp.gt.s32 %r594,%r215,7; @ %r594 bra $L139; add.u64 %r131,%r131,16; .loc 1 1694 3 add.u32 %r213,%r215,1; mov.u32 %r217,%r215; bra $L133; $L139: .loc 1 405 5 setp.ne.u64 %r595,%r216,0; @ %r595 bra $L140; .loc 1 406 19 mov.u32 %r213,1; mov.u32 %r217,0; .loc 1 1691 4 mov.u64 %r131,%frame; bra $L133; $L140: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r601,[%value_in]; } setp.ne.u32 %r602,%r601,0; @ %r602 bra $L29; .loc 1 1694 3 ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; .loc 1 1691 4 mov.u64 %r131,%frame; $L133: .loc 1 1694 3 sub.u32 %r140,%r126,%r130; setp.le.s32 %r603,%r140,0; @ %r603 bra $L141; setp.le.s32 %r604,%r140,16; @ ! %r604 bra $L272; cvta.const.u64 %r718,zeroes$0; bra $L142; $L272: cvta.const.u64 %r718,zeroes$0; $L146: st.u64 [%r131],%r718; mov.u64 %r606,16; st.u64 [%r131+8],%r606; add.u64 %r216,%r216,16; st.u64 [%frame+184],%r216; add.u32 %r110,%r217,1; st.u32 [%frame+176],%r110; setp.gt.s32 %r607,%r110,7; @ %r607 bra $L143; add.u64 %r131,%r131,16; add.u32 %r213,%r217,2; mov.u32 %r217,%r110; bra $L144; $L143: .loc 1 405 5 setp.ne.u64 %r608,%r216,0; @ %r608 bra $L145; .loc 1 406 19 mov.u32 %r213,1; mov.u32 %r217,0; .loc 1 1694 3 mov.u64 %r131,%frame; bra $L144; $L145: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r614,[%value_in]; } setp.ne.u32 %r615,%r614,0; @ %r615 bra $L29; ld.u64 %r216,[%frame+184]; ld.u32 %r217,[%frame+176]; add.u32 %r213,%r217,1; mov.u64 %r131,%frame; $L144: add.u32 %r140,%r140,-16; setp.gt.s32 %r616,%r140,16; @ %r616 bra $L146; $L142: st.u64 [%r131],%r718; cvt.s64.s32 %r111,%r140; st.u64 [%r131+8],%r111; add.u64 %r216,%r216,%r111; st.u64 [%frame+184],%r216; st.u32 [%frame+176],%r213; setp.gt.s32 %r618,%r213,7; @ %r618 bra $L147; add.u64 %r131,%r131,16; .loc 1 1760 3 add.u32 %r213,%r213,1; bra $L141; $L147: .loc 1 405 5 setp.ne.u64 %r619,%r216,0; @ %r619 bra $L148; .loc 1 1760 3 st.u64 [%frame],%r121; cvt.s64.s32 %r219,%r130; st.u64 [%frame+8],%r219; st.u64 [%frame+184],%r219; mov.u32 %r620,1; st.u32 [%frame+176],%r620; .loc 1 1694 3 mov.u64 %r131,%frame; bra $L149; $L148: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r625,[%value_in]; } setp.ne.u32 %r626,%r625,0; @ %r626 bra $L29; .loc 1 1760 3 ld.u64 %r216,[%frame+184]; ld.u32 %r627,[%frame+176]; add.u32 %r213,%r627,1; .loc 1 1694 3 mov.u64 %r131,%frame; $L141: .loc 1 1760 3 st.u64 [%r131],%r121; cvt.s64.s32 %r112,%r130; st.u64 [%r131+8],%r112; add.u64 %r219,%r112,%r216; st.u64 [%frame+184],%r219; st.u32 [%frame+176],%r213; setp.gt.s32 %r628,%r213,7; @ %r628 bra $L150; $L149: add.u64 %r132,%r131,16; bra $L151; $L150: .loc 1 405 5 setp.ne.u64 %r629,%r219,0; @ %r629 bra $L152; .loc 1 406 19 mov.u32 %r630,0; st.u32 [%frame+176],%r630; .loc 1 1763 13 and.b32 %r631,%r124,4; .loc 1 1763 6 setp.ne.u32 %r632,%r631,0; @ %r632 bra $L153; bra $L273; $L152: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r637,[%value_in]; } .loc 1 1760 3 setp.ne.u32 %r638,%r637,0; @ %r638 bra $L29; .loc 1 1764 4 ld.u64 %r219,[%frame+184]; .loc 1 1760 3 mov.u64 %r132,%frame; $L151: .loc 1 1763 13 and.b32 %r639,%r124,4; .loc 1 1763 6 setp.eq.u32 %r640,%r639,0; @ %r640 bra $L155; .loc 1 1764 4 sub.u32 %r137,%r125,%r129; setp.le.s32 %r641,%r137,0; @ %r641 bra $L155; bra $L166; $L185: .loc 1 1760 3 mov.u64 %r132,%frame; $L166: .loc 1 1764 4 ld.u32 %r220,[%frame+176]; setp.le.s32 %r642,%r137,16; @ %r642 bra $L156; cvta.const.u64 %r717,blanks$1; $L160: st.u64 [%r132],%r717; mov.u64 %r644,16; st.u64 [%r132+8],%r644; add.u64 %r219,%r219,16; st.u64 [%frame+184],%r219; add.u32 %r115,%r220,1; st.u32 [%frame+176],%r115; setp.gt.s32 %r645,%r115,7; @ %r645 bra $L157; add.u64 %r132,%r132,16; add.u32 %r221,%r220,2; mov.u32 %r220,%r115; bra $L158; $L157: .loc 1 405 5 setp.ne.u64 %r646,%r219,0; @ %r646 bra $L159; .loc 1 406 19 mov.u32 %r221,1; mov.u32 %r220,0; .loc 1 1764 4 mov.u64 %r132,%frame; bra $L158; $L159: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r652,[%value_in]; } setp.ne.u32 %r653,%r652,0; @ %r653 bra $L29; ld.u64 %r219,[%frame+184]; ld.u32 %r220,[%frame+176]; add.u32 %r221,%r220,1; mov.u64 %r132,%frame; $L158: add.u32 %r137,%r137,-16; setp.gt.s32 %r654,%r137,16; @ %r654 bra $L160; bra $L161; $L156: add.u32 %r221,%r220,1; cvta.const.u64 %r717,blanks$1; $L161: st.u64 [%r132],%r717; cvt.s64.s32 %r116,%r137; st.u64 [%r132+8],%r116; add.u64 %r219,%r219,%r116; st.u64 [%frame+184],%r219; st.u32 [%frame+176],%r221; setp.le.s32 %r656,%r221,7; @ %r656 bra $L155; .loc 1 405 5 setp.ne.u64 %r657,%r219,0; @ %r657 bra $L162; .loc 1 1767 33 max.s32 %r658,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r658; bra $L163; $L162: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r663,[%value_in]; } .loc 1 1764 4 setp.ne.u32 %r664,%r663,0; @ %r664 bra $L29; .loc 1 1769 3 ld.u64 %r219,[%frame+184]; $L155: .loc 1 1767 33 max.s32 %r665,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r665; .loc 1 1769 3 setp.eq.u64 %r666,%r219,0; @ %r666 bra $L163; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r736; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r671,[%value_in]; } setp.ne.u32 %r672,%r671,0; @ %r672 bra $L29; $L163: mov.u32 %r673,0; st.u32 [%frame+176],%r673; mov.u64 %r131,%frame; bra $L23; $L30: .loc 1 1777 2 ld.u64 %r674,[%frame+184]; setp.eq.u64 %r675,%r674,0; @ %r675 bra $L29; add.u64 %r679,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r236; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r237; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r679; call (%value_in),__sprint_r$part$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r680,[%value_in]; } $L29: .loc 1 1784 31 ld.u16 %r682,[%r237+16]; and.b16 %r681,%r682,64; setp.ne.u16 %r683,%r681,0; @ ! %r683 bra $L15; bra $L164; $L273: .loc 1 1767 33 max.s32 %r685,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r685; bra $L163; $L76: .loc 1 932 9 mov.u32 %r124,%r122; mov.u32 %r126,0; bra $L113; $L82: .loc 1 1558 14 setp.ne.u32 %r686,%r126,-1; @ %r686 bra $L165; bra $L106; $L274: .loc 1 1767 33 max.s32 %r687,%r125,%r129; .loc 1 1767 7 add.u32 %r235,%r235,%r687; bra $L163; $L153: .loc 1 1764 4 sub.u32 %r137,%r125,%r129; setp.gt.s32 %r688,%r137,0; @ ! %r688 bra $L274; bra $L185; $L128: .loc 1 1687 4 st.u64 [%frame],%r737; mov.u64 %r690,2; st.u64 [%frame+8],%r690; mov.u32 %r217,1; .loc 1 1685 4 mov.u64 %r131,%frame; .loc 1 1687 4 mov.u64 %r216,%r690; bra $L168; $L123: .loc 1 1685 4 st.u64 [%frame],%r738; mov.u64 %r694,1; st.u64 [%frame+8],%r694; mov.u32 %r213,1; .loc 1 1681 4 mov.u64 %r131,%frame; .loc 1 1685 4 mov.u64 %r216,%r694; bra $L169; $L44: setp.ne.u32 %r697,%r152,0; @ ! %r697 bra $L171; bra $L170; $L165: .loc 1 1559 11 and.b32 %r124,%r122,-129; .loc 1 1567 28 set.u32.ne.u32 %r699,%r126,0; neg.s32 %r700,%r699; mov.u32 %r698,%r700; .loc 1 1567 15 set.u32.ne.u64 %r702,%r127,0; neg.s32 %r703,%r702; mov.u32 %r701,%r703; .loc 1 1567 20 cvt.u16.u8 %r744,%r698; mov.u16 %r705,%r744; cvt.u16.u8 %r744,%r701; mov.u16 %r706,%r744; or.b16 %r704,%r705,%r706; cvt.u32.u16 %r707,%r704; .loc 1 1567 7 cvt.u16.u8 %r708,%r707; setp.ne.u16 %r709,%r708,0; @ %r709 bra $L186; mov.u32 %r126,0; mov.u32 %r130,%r126; .loc 1 1566 7 add.u64 %r121,%frame,168; bra $L95; $L173: .loc 1 1687 4 st.u64 [%frame],%r737; mov.u64 %r711,2; st.u64 [%frame+8],%r711; mov.u32 %r213,1; .loc 1 1681 4 mov.u64 %r131,%frame; .loc 1 1687 4 mov.u64 %r216,%r711; bra $L172; $L271: .loc 1 1686 6 setp.ne.u32 %r714,%r102,0; @ %r714 bra $L173; mov.u32 %r217,%r102; mov.u32 %r213,1; .loc 1 1681 4 mov.u64 %r131,%frame; bra $L133; $L15: .loc 1 1786 1 mov.u32 %value,%r235; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiprintf .visible .func (.param .u32 %value_out) vfiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 647 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 649 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1200; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u16 %r63; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; mov.u64 %r37,%ar3; .loc 1 461 14 ld.u16 %r39,[%r35+16]; and.b16 %r38,%r39,-3; st.u16 [%frame+1040],%r38; .loc 1 462 15 ld.u32 %r40,[%r35+172]; st.u32 [%frame+1196],%r40; .loc 1 463 13 ld.u16 %r41,[%r35+18]; st.u16 [%frame+1042],%r41; .loc 1 464 15 ld.u64 %r42,[%r35+48]; st.u64 [%frame+1072],%r42; .loc 1 465 14 ld.u64 %r43,[%r35+64]; st.u64 [%frame+1088],%r43; .loc 1 468 27 st.u64 [%frame+1024],%frame; .loc 1 468 17 st.u64 [%frame+1048],%frame; .loc 1 469 27 mov.u32 %r44,1024; st.u32 [%frame+1036],%r44; .loc 1 469 17 st.u32 [%frame+1056],%r44; .loc 1 470 16 mov.u32 %r46,0; st.u32 [%frame+1064],%r46; .loc 1 476 8 add.u64 %r51,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r37; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r52,[%value_in]; } mov.u32 %r33,%r52; .loc 1 477 5 setp.lt.s32 %r53,%r33,0; @ %r53 bra $L277; .loc 1 477 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r57,[%value_in]; } .loc 1 477 15 setp.eq.u32 %r58,%r57,0; .loc 1 478 7 selp.u32 %r33,%r33,-1,%r58; $L277: .loc 1 479 5 ld.u16 %r60,[%frame+1040]; and.b16 %r59,%r60,64; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L276; .loc 1 480 14 ld.u16 %r63,[%r35+16]; or.b16 %r62,%r63,64; st.u16 [%r35+16],%r62; $L276: .loc 1 486 1 mov.u32 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1786 0 0 0 644 39478 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .visible .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfiscanf .visible .func (.param .u32 %value_out) vfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfiscanf .visible .func (.param .u32 %value_out) __svfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfiscanf_r .visible .func (.param .u32 %value_out) _vfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fread_r .extern .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _ungetc_r .extern .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfiscanf_r .visible .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,304; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r27; .reg .u64 %r34; .reg .u32 %r41; .reg .u64 %r46; .reg .u32 %r69; .reg .u64 %r70; .reg .u64 %r79; .reg .u32 %r95; .reg .u64 %r98; .reg .u64 %r110; .reg .u32 %r117; .reg .u64 %r119; .reg .u64 %r121; .reg .u64 %r129; .reg .u64 %r135; .reg .u64 %r145; .reg .u32 %r146; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r171; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .u32 %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u32 %r187; .reg .u64 %r197; .reg .u32 %r201; .reg .u64 %r203; .reg .u32 %r204; .reg .u64 %r206; .reg .u64 %r215; .reg .u64 %r216; .reg .u32 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u32 %r220; .reg .u32 %r223; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r248; .reg .u64 %r252; .reg .u64 %r253; .reg .u32 %r259; .reg .u32 %r260; .reg .u64 %r262; .reg .u64 %r263; .reg .u64 %r264; .reg .u32 %r267; .reg .u64 %r268; .reg .u32 %r274; .reg .u64 %r276; .reg .u64 %r277; .reg .u32 %r278; .reg .u64 %r279; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .u16 %r283; .reg .u16 %r284; .reg .pred %r285; .reg .u16 %r286; .reg .u32 %r288; .reg .pred %r289; .reg .pred %r290; .reg .u64 %r291; .reg .u32 %r292; .reg .u64 %r294; .reg .u16 %r297; .reg .u16 %r299; .reg .pred %r300; .reg .pred %r301; .reg .u64 %r302; .reg .u64 %r304; .reg .u16 %r307; .reg .u16 %r309; .reg .pred %r310; .reg .u32 %r313; .reg .pred %r314; .reg .u32 %r315; .reg .u64 %r316; .reg .pred %r317; .reg .u16 %r318; .reg .pred %r319; .reg .pred %r321; .reg .pred %r323; .reg .pred %r325; .reg .pred %r327; .reg .pred %r329; .reg .pred %r331; .reg .pred %r333; .reg .pred %r335; .reg .pred %r337; .reg .pred %r339; .reg .pred %r341; .reg .pred %r343; .reg .pred %r345; .reg .pred %r347; .reg .pred %r349; .reg .pred %r351; .reg .pred %r353; .reg .pred %r355; .reg .pred %r357; .reg .pred %r359; .reg .pred %r361; .reg .pred %r363; .reg .pred %r365; .reg .pred %r367; .reg .pred %r369; .reg .u32 %r370; .reg .pred %r371; .reg .u16 %r372; .reg .u16 %r373; .reg .pred %r374; .reg .u32 %r377; .reg .pred %r378; .reg .u32 %r379; .reg .u32 %r380; .reg .u64 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u16 %r388; .reg .u16 %r389; .reg .u16 %r390; .reg .u32 %r391; .reg .u16 %r392; .reg .pred %r393; .reg .u32 %r394; .reg .pred %r395; .reg .u16 %r396; .reg .pred %r397; .reg .u32 %r398; .reg .pred %r399; .reg .u32 %r400; .reg .pred %r401; .reg .u32 %r402; .reg .pred %r403; .reg .u64 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r408; .reg .u32 %r409; .reg .u64 %r412; .reg .u32 %r413; .reg .pred %r414; .reg .u64 %r415; .reg .u32 %r416; .reg .pred %r417; .reg .u32 %r418; .reg .pred %r419; .reg .u64 %r420; .reg .u32 %r421; .reg .pred %r422; .reg .u64 %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .pred %r427; .reg .u32 %r430; .reg .pred %r431; .reg .u64 %r432; .reg .u64 %r434; .reg .u16 %r437; .reg .u16 %r439; .reg .pred %r440; .reg .u32 %r441; .reg .pred %r442; .reg .u32 %r445; .reg .pred %r446; .reg .u64 %r447; .reg .u64 %r449; .reg .u16 %r452; .reg .u16 %r454; .reg .pred %r455; .reg .pred %r456; .reg .pred %r457; .reg .pred %r458; .reg .u32 %r459; .reg .pred %r460; .reg .u32 %r461; .reg .pred %r462; .reg .u64 %r463; .reg .u32 %r466; .reg .pred %r467; .reg .pred %r468; .reg .u32 %r470; .reg .u64 %r471; .reg .u32 %r472; .reg .u64 %r474; .reg .u64 %r475; .reg .u64 %r478; .reg .pred %r479; .reg .u32 %r480; .reg .pred %r481; .reg .u64 %r483; .reg .u64 %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .u32 %r488; .reg .u64 %r489; .reg .pred %r490; .reg .u32 %r491; .reg .u64 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r496; .reg .u64 %r497; .reg .u16 %r498; .reg .u32 %r499; .reg .pred %r500; .reg .u32 %r503; .reg .pred %r504; .reg .pred %r505; .reg .u32 %r506; .reg .u32 %r507; .reg .u64 %r508; .reg .u32 %r509; .reg .pred %r510; .reg .u32 %r511; .reg .u32 %r512; .reg .u64 %r513; .reg .u32 %r514; .reg .u64 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .pred %r518; .reg .u32 %r521; .reg .pred %r522; .reg .pred %r523; .reg .u64 %r525; .reg .u64 %r526; .reg .u16 %r527; .reg .u32 %r528; .reg .pred %r529; .reg .u64 %r530; .reg .pred %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u64 %r534; .reg .u64 %r536; .reg .u16 %r538; .reg .u16 %r539; .reg .u32 %r540; .reg .u32 %r541; .reg .pred %r542; .reg .pred %r543; .reg .u32 %r544; .reg .u64 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .u64 %r548; .reg .pred %r549; .reg .pred %r550; .reg .u32 %r553; .reg .pred %r554; .reg .u64 %r555; .reg .u64 %r557; .reg .u16 %r560; .reg .u16 %r562; .reg .pred %r563; .reg .pred %r564; .reg .u32 %r565; .reg .u32 %r566; .reg .u64 %r567; .reg .u32 %r568; .reg .pred %r569; .reg .u32 %r570; .reg .u32 %r571; .reg .u64 %r572; .reg .u32 %r573; .reg .u64 %r574; .reg .pred %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .pred %r578; .reg .u32 %r581; .reg .pred %r582; .reg .u64 %r583; .reg .u64 %r584; .reg .u64 %r586; .reg .u16 %r589; .reg .u16 %r591; .reg .pred %r592; .reg .u64 %r593; .reg .u32 %r594; .reg .u64 %r595; .reg .pred %r596; .reg .u32 %r597; .reg .u16 %r598; .reg .pred %r599; .reg .pred %r601; .reg .pred %r603; .reg .pred %r605; .reg .u16 %r606; .reg .u32 %r608; .reg .u16 %r610; .reg .u16 %r612; .reg .pred %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u64 %r616; .reg .u64 %r617; .reg .pred %r619; .reg .pred %r621; .reg .pred %r623; .reg .pred %r625; .reg .pred %r627; .reg .pred %r629; .reg .u32 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u32 %r633; .reg .pred %r634; .reg .pred %r635; .reg .u64 %r636; .reg .u64 %r637; .reg .u64 %r638; .reg .u64 %r639; .reg .pred %r640; .reg .pred %r641; .reg .u32 %r642; .reg .pred %r643; .reg .u32 %r644; .reg .pred %r645; .reg .u32 %r646; .reg .u32 %r647; .reg .pred %r648; .reg .u64 %r649; .reg .u32 %r652; .reg .pred %r653; .reg .pred %r654; .reg .u32 %r655; .reg .pred %r656; .reg .pred %r658; .reg .u32 %r662; .reg .u32 %r663; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .u32 %r668; .reg .u64 %r671; .reg .u64 %r674; .reg .u64 %r675; .reg .u32 %r676; .reg .pred %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u64 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .u64 %r683; .reg .u32 %r684; .reg .pred %r685; .reg .u64 %r686; .reg .pred %r687; .reg .u64 %r693; .reg .u64 %r699; .reg .u64 %r700; .reg .u64 %r701; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r706; .reg .u16 %r707; .reg .u16 %r708; .reg .pred %r709; .reg .u64 %r712; .reg .u64 %r713; .reg .u16 %r714; mov.u64 %r279,%ar0; mov.u64 %r280,%ar1; mov.u64 %r281,%ar2; mov.u64 %r282,%ar3; .loc 1 591 3 ld.u16 %r284,[%r280+16]; and.b16 %r283,%r284,8192; setp.ne.u16 %r285,%r283,0; @ %r285 bra $L2; .loc 1 589 3 ld.u32 %r22,[%r280+172]; .loc 1 591 3 or.b16 %r286,%r284,8192; st.u16 [%r280+16],%r286; and.b32 %r288,%r22,-8193; st.u32 [%r280+172],%r288; $L2: .loc 1 602 12 ld.u8 %r27,[%r281]; .loc 1 611 11 add.u64 %r197,%r281,1; .loc 1 613 10 setp.eq.u32 %r289,%r27,0; @ %r289 bra $L109; mov.u64 %r70,0; mov.u32 %r184,0; mov.u32 %r157,%r184; mov.u32 %r278,%r184; cvta.const.u64 %r712,_ctype_+1; .loc 1 1342 11 add.u64 %r713,%frame,256; bra $L4; $L7: .loc 1 602 12 ld.u8 %r27,[%r197]; .loc 1 611 11 add.u64 %r197,%r197,1; .loc 1 613 10 setp.eq.u32 %r290,%r27,0; @ %r290 bra $L1; $L4: .loc 1 615 26 cvt.u32.u32 %r292,%r27; cvt.u64.u8 %r291,%r292; add.u64 %r294,%r712,%r291; .loc 1 615 23 ld.u8 %r714,[%r294]; mov.u16 %r297,%r714; and.b16 %r299,%r297,8; setp.eq.u16 %r300,%r299,0; @ %r300 bra $L5; .loc 1 649 12 ld.u32 %r41,[%r280+8]; $L10: .loc 1 619 11 setp.le.s32 %r301,%r41,0; @ %r301 bra $L6; $L9: .loc 1 619 28 ld.u64 %r34,[%r280]; ld.u8 %r302,[%r34]; add.u64 %r304,%r712,%r302; .loc 1 619 24 ld.u8 %r714,[%r304]; mov.u16 %r307,%r714; and.b16 %r309,%r307,8; setp.eq.u16 %r310,%r309,0; @ ! %r310 bra $L200; bra $L7; $L6: .loc 1 619 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r313,[%value_in]; } setp.ne.u32 %r314,%r313,0; @ ! %r314 bra $L9; bra $L7; $L200: .loc 1 621 13 add.u32 %r157,%r157,1; .loc 1 621 23 ld.u32 %r315,[%r280+8]; add.u32 %r41,%r315,-1; st.u32 [%r280+8],%r41; .loc 1 621 33 add.u64 %r316,%r34,1; st.u64 [%r280],%r316; .loc 1 619 11 bra $L10; $L5: .loc 1 625 10 setp.ne.u32 %r317,%r27,37; @ %r317 bra $L11; .loc 1 640 11 ld.u8 %r260,[%r197]; mov.u64 %r25,%r197; .loc 1 628 13 mov.u32 %r182,0; .loc 1 627 13 mov.u64 %r129,0; bra $L12; $L202: .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 663 10 mov.u32 %r182,16; .loc 1 669 8 mov.u64 %r129,0; $L12: .loc 1 640 15 add.u64 %r197,%r25,1; .loc 1 642 7 cvt.u16.u32 %r318,%r260; setp.eq.u16 %r319,%r318,100; @ %r319 bra $L110; setp.gt.u16 %r321,%r318,100; @ %r321 bra $L14; setp.eq.u16 %r323,%r318,76; @ %r323 bra $L15; setp.gt.u16 %r325,%r318,76; @ %r325 bra $L16; setp.gt.u16 %r327,%r318,57; @ %r327 bra $L17; setp.gt.u16 %r329,%r318,47; @ %r329 bra $L18; setp.eq.u16 %r331,%r318,37; @ %r331 bra $L11; setp.eq.u16 %r333,%r318,42; @ %r333 bra $L19; bra $L1; $L17: setp.eq.u16 %r335,%r318,68; @ %r335 bra $L20; bra $L1; $L16: setp.eq.u16 %r337,%r318,91; @ %r337 bra $L21; setp.gt.u16 %r339,%r318,91; @ %r339 bra $L22; setp.eq.u16 %r341,%r318,79; @ %r341 bra $L23; setp.eq.u16 %r343,%r318,88; @ %r343 bra $L24; bra $L1; $L22: setp.eq.u16 %r345,%r318,99; @ %r345 bra $L25; bra $L1; $L14: setp.eq.u16 %r347,%r318,111; @ %r347 bra $L111; setp.gt.u16 %r349,%r318,111; @ %r349 bra $L26; setp.eq.u16 %r351,%r318,108; @ %r351 bra $L27; setp.gt.u16 %r353,%r318,108; @ %r353 bra $L28; setp.eq.u16 %r355,%r318,104; @ %r355 bra $L29; setp.eq.u16 %r357,%r318,105; @ %r357 bra $L112; bra $L1; $L28: setp.eq.u16 %r359,%r318,110; @ %r359 bra $L30; bra $L1; $L26: setp.eq.u16 %r361,%r318,115; @ %r361 bra $L113; setp.gt.u16 %r363,%r318,115; @ %r363 bra $L31; setp.eq.u16 %r365,%r318,112; @ %r365 bra $L32; bra $L1; $L31: setp.eq.u16 %r367,%r318,117; @ %r367 bra $L114; setp.eq.u16 %r369,%r318,120; @ %r369 bra $L24; bra $L1; $L11: .loc 1 649 11 ld.u32 %r370,[%r280+8]; setp.le.s32 %r371,%r370,0; @ %r371 bra $L33; $L36: .loc 1 651 15 ld.u64 %r46,[%r280]; .loc 1 651 11 ld.u8 %r372,[%r46]; ld.u8 %r373,[%r197+-1]; setp.ne.u16 %r374,%r372,%r373; @ %r374 bra $L1; bra $L201; $L33: .loc 1 649 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r377,[%value_in]; } setp.ne.u32 %r378,%r377,0; @ ! %r378 bra $L36; bra $L35; $L201: .loc 1 653 14 ld.u32 %r380,[%r280+8]; add.u32 %r379,%r380,-1; st.u32 [%r280+8],%r379; .loc 1 653 24 add.u64 %r381,%r46,1; st.u64 [%r280],%r381; .loc 1 654 13 add.u32 %r157,%r157,1; bra $L7; $L19: .loc 1 660 7 set.u32.ne.u32 %r383,%r182,0; neg.s32 %r384,%r383; mov.u32 %r382,%r384; .loc 1 661 8 set.u32.ne.u64 %r386,%r129,0; neg.s32 %r387,%r386; mov.u32 %r385,%r387; cvt.u16.u8 %r714,%r382; mov.u16 %r389,%r714; cvt.u16.u8 %r714,%r385; mov.u16 %r390,%r714; or.b16 %r388,%r389,%r390; cvt.u32.u16 %r391,%r388; cvt.u16.u8 %r392,%r391; setp.ne.u16 %r393,%r392,0; @ ! %r393 bra $L202; bra $L1; $L27: .loc 1 666 14 and.b32 %r394,%r182,15; .loc 1 666 7 setp.ne.u32 %r395,%r394,0; @ %r395 bra $L1; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 669 7 cvt.u16.u32 %r396,%r260; setp.ne.u16 %r397,%r396,108; @ %r397 bra $L38; .loc 1 672 14 or.b32 %r182,%r182,2; .loc 1 640 11 ld.u8 %r260,[%r25+2]; .loc 1 671 8 add.u64 %r25,%r25,2; bra $L12; $L38: .loc 1 676 12 or.b32 %r182,%r182,1; .loc 1 640 15 mov.u64 %r25,%r197; bra $L12; $L15: .loc 1 679 14 and.b32 %r398,%r182,15; .loc 1 679 7 setp.ne.u32 %r399,%r398,0; @ %r399 bra $L1; .loc 1 681 10 or.b32 %r182,%r182,2; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 682 4 bra $L12; $L29: .loc 1 684 14 and.b32 %r400,%r182,15; .loc 1 684 7 setp.ne.u32 %r401,%r400,0; @ %r401 bra $L1; .loc 1 694 12 or.b32 %r182,%r182,4; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 695 4 bra $L12; $L18: .loc 1 760 14 and.b32 %r402,%r182,143; .loc 1 760 7 setp.ne.u32 %r403,%r402,0; @ %r403 bra $L1; .loc 1 762 18 shl.b64 %r405,%r129,2; add.u64 %r406,%r405,%r129; add.u64 %r407,%r406,%r406; .loc 1 762 23 cvt.u32.u32 %r409,%r260; cvt.u64.u8 %r408,%r409; add.u64 %r253,%r407,%r408; .loc 1 762 10 add.u64 %r129,%r253,-48; .loc 1 669 8 ld.u8 %r260,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r197; .loc 1 763 4 bra $L12; $L20: .loc 1 789 10 or.b32 %r182,%r182,1; .loc 1 793 9 mov.u64 %r70,_strtol_r; .loc 1 794 9 mov.u32 %r184,10; .loc 1 792 6 mov.u32 %r201,3; bra $L13; $L23: .loc 1 804 10 or.b32 %r182,%r182,1; .loc 1 808 9 mov.u64 %r70,_strtoul_r; .loc 1 809 9 mov.u32 %r184,8; .loc 1 807 6 mov.u32 %r201,3; bra $L13; $L24: .loc 1 820 10 or.b32 %r182,%r182,512; .loc 1 822 9 mov.u64 %r70,_strtoul_r; .loc 1 823 9 mov.u32 %r184,16; .loc 1 821 6 mov.u32 %r201,3; .loc 1 824 4 bra $L13; $L21: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r197; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r412,[%value_in]; } mov.u64 %r197,%r412; .loc 1 853 10 or.b32 %r182,%r182,64; .loc 1 854 6 mov.u32 %r201,1; .loc 1 855 4 bra $L13; $L25: .loc 1 864 10 or.b32 %r182,%r182,64; .loc 1 865 6 mov.u32 %r201,0; .loc 1 866 4 bra $L13; $L32: .loc 1 869 10 or.b32 %r182,%r182,544; .loc 1 871 9 mov.u64 %r70,_strtoul_r; .loc 1 872 9 mov.u32 %r184,16; .loc 1 870 6 mov.u32 %r201,3; .loc 1 873 4 bra $L13; $L30: .loc 1 876 14 and.b32 %r413,%r182,16; .loc 1 876 7 setp.ne.u32 %r414,%r413,0; @ %r414 bra $L7; .loc 1 888 11 add.u64 %r415,%r282,7; and.b64 %r276,%r415,-8; add.u64 %r282,%r276,8; ld.u64 %r277,[%r276]; .loc 1 886 14 and.b32 %r416,%r182,4; .loc 1 886 7 setp.eq.u32 %r417,%r416,0; @ %r417 bra $L40; .loc 1 889 12 st.u16 [%r277],%r157; bra $L7; $L40: .loc 1 891 19 and.b32 %r418,%r182,1; .loc 1 891 12 setp.eq.u32 %r419,%r418,0; @ %r419 bra $L41; .loc 1 894 12 cvt.s64.s32 %r420,%r157; st.u64 [%r277],%r420; bra $L7; $L41: .loc 1 897 19 and.b32 %r421,%r182,2; .loc 1 897 12 setp.eq.u32 %r422,%r421,0; @ %r422 bra $L42; .loc 1 900 13 cvt.s64.s32 %r423,%r157; st.u64 [%r277],%r423; bra $L7; $L42: .loc 1 906 12 st.u32 [%r277],%r157; bra $L7; $L110: .loc 1 642 7 mov.u64 %r70,_strtol_r; mov.u32 %r184,10; mov.u32 %r201,3; bra $L13; $L111: .loc 1 808 9 mov.u64 %r70,_strtoul_r; .loc 1 809 9 mov.u32 %r184,8; .loc 1 807 6 mov.u32 %r201,3; bra $L13; $L112: .loc 1 799 9 mov.u64 %r70,_strtol_r; .loc 1 800 9 mov.u32 %r184,0; .loc 1 798 6 mov.u32 %r201,3; bra $L13; $L113: .loc 1 848 6 mov.u32 %r201,2; bra $L13; $L114: .loc 1 814 9 mov.u64 %r70,_strtoul_r; .loc 1 815 9 mov.u32 %r184,10; .loc 1 813 6 mov.u32 %r201,3; $L13: .loc 1 917 10 ld.u32 %r424,[%r280+8]; setp.le.s32 %r425,%r424,0; @ %r425 bra $L43; $L46: .loc 1 924 18 and.b32 %r426,%r182,64; .loc 1 924 10 setp.eq.u32 %r427,%r426,0; @ ! %r427 bra $L45; bra $L44; $L43: .loc 1 917 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r430,[%value_in]; } setp.ne.u32 %r431,%r430,0; @ ! %r431 bra $L46; bra $L35; $L44: .loc 1 926 11 ld.u64 %r239,[%r280]; ld.u8 %r432,[%r239]; add.u64 %r434,%r712,%r432; ld.u8 %r714,[%r434]; mov.u16 %r437,%r714; and.b16 %r439,%r437,8; setp.eq.u16 %r440,%r439,0; @ %r440 bra $L45; $L49: .loc 1 928 13 add.u32 %r157,%r157,1; .loc 1 929 12 ld.u32 %r441,[%r280+8]; add.u32 %r69,%r441,-1; .loc 1 929 11 st.u32 [%r280+8],%r69; setp.le.s32 %r442,%r69,0; @ %r442 bra $L47; .loc 1 930 9 add.u64 %r239,%r239,1; st.u64 [%r280],%r239; bra $L48; $L47: .loc 1 932 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r445,[%value_in]; } .loc 1 932 11 setp.ne.u32 %r446,%r445,0; @ %r446 bra $L35; .loc 1 926 11 ld.u64 %r239,[%r280]; $L48: ld.u8 %r447,[%r239]; add.u64 %r449,%r712,%r447; ld.u8 %r714,[%r449]; mov.u16 %r452,%r714; and.b16 %r454,%r452,8; setp.ne.u16 %r455,%r454,0; @ %r455 bra $L49; $L45: .loc 1 945 7 setp.eq.u32 %r456,%r201,2; @ %r456 bra $L50; setp.eq.u32 %r457,%r201,3; @ %r457 bra $L51; setp.eq.u32 %r458,%r201,1; @ %r458 bra $L52; max.u64 %r179,%r129,1; .loc 1 1017 14 and.b32 %r459,%r182,16; .loc 1 1017 7 setp.eq.u32 %r460,%r459,0; @ %r460 bra $L53; .loc 1 1019 15 mov.u64 %r185,0; $L55: .loc 1 1022 12 ld.u32 %r223,[%r280+8]; .loc 1 1026 16 ld.u64 %r263,[%r280]; .loc 1 1022 24 cvt.u32.u64 %r461,%r179; .loc 1 1022 8 setp.le.s32 %r462,%r461,%r223; @ %r462 bra $L54; .loc 1 1024 13 cvt.s64.s32 %r79,%r223; add.u64 %r185,%r185,%r79; .loc 1 1025 15 sub.u64 %r179,%r179,%r79; .loc 1 1026 16 add.u64 %r463,%r263,%r79; st.u64 [%r280],%r463; .loc 1 1027 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r466,[%value_in]; } .loc 1 1027 12 setp.eq.u32 %r467,%r466,0; @ %r467 bra $L55; .loc 1 1029 9 setp.eq.u64 %r468,%r185,0; @ ! %r468 bra $L56; bra $L35; $L54: .loc 1 1036 13 add.u64 %r185,%r185,%r179; .loc 1 1037 16 sub.u32 %r470,%r223,%r461; st.u32 [%r280+8],%r470; .loc 1 1038 16 add.u64 %r471,%r263,%r179; st.u64 [%r280],%r471; $L56: .loc 1 1042 14 cvt.u32.u64 %r472,%r185; add.u32 %r157,%r472,%r157; bra $L7; $L53: .loc 1 1053 5 add.u64 %r236,%r282,7; and.b64 %r231,%r236,-8; add.u64 %r282,%r231,8; .loc 1 1054 12 mov.u64 %r475,1; ld.u64 %r474,[%r231]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r475; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r179; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r280; call (%value_in),_fread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r478,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r479,%r478,0; @ %r479 bra $L35; .loc 1 1060 14 cvt.u32.u64 %r480,%r478; add.u32 %r157,%r480,%r157; .loc 1 1061 17 add.u32 %r278,%r278,1; bra $L7; $L52: .loc 1 1067 7 setp.ne.u64 %r481,%r129,0; .loc 1 1068 12 selp.u64 %r129,%r129,-1,%r481; .loc 1 1146 25 ld.u64 %r264,[%r280]; .loc 1 1146 21 ld.u8 %r483,[%r264]; add.u64 %r484,%frame,%r483; ld.s8 %r267,[%r484]; .loc 1 1143 14 and.b32 %r485,%r182,16; .loc 1 1143 7 setp.eq.u32 %r486,%r485,0; @ %r486 bra $L58; .loc 1 1146 15 setp.eq.u32 %r487,%r267,0; @ %r487 bra $L1; .loc 1 1148 16 ld.u32 %r488,[%r280+8]; add.u32 %r95,%r488,-1; st.u32 [%r280+8],%r95; .loc 1 1148 26 add.u64 %r489,%r264,1; st.u64 [%r280],%r489; .loc 1 1149 8 add.u64 %r203,%r129,-1; setp.eq.u64 %r490,%r129,1; @ ! %r490 bra $L60; bra $L59; $L62: .loc 1 1148 6 add.u32 %r201,%r201,1; .loc 1 1148 16 ld.u32 %r491,[%r280+8]; add.u32 %r95,%r491,-1; st.u32 [%r280+8],%r95; .loc 1 1148 26 add.u64 %r492,%r98,1; st.u64 [%r280],%r492; .loc 1 1149 8 add.u64 %r203,%r203,-1; setp.eq.u64 %r493,%r203,0; @ %r493 bra $L59; $L60: .loc 1 1151 8 setp.le.s32 %r494,%r95,0; @ %r494 bra $L61; $L63: .loc 1 1146 25 ld.u64 %r98,[%r280]; .loc 1 1146 21 ld.u8 %r496,[%r98]; add.u64 %r497,%frame,%r496; .loc 1 1146 15 ld.u8 %r499,[%r497]; cvt.s16.s8 %r498,%r499; setp.ne.u16 %r500,%r498,0; @ %r500 bra $L62; bra $L59; $L61: .loc 1 1151 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r503,[%value_in]; } setp.eq.u32 %r504,%r503,0; @ %r504 bra $L63; $L59: .loc 1 1160 14 add.u32 %r157,%r157,%r201; bra $L7; $L58: .loc 1 1172 10 add.u64 %r233,%r282,7; and.b64 %r232,%r233,-8; add.u64 %r282,%r232,8; ld.u64 %r219,[%r232]; .loc 1 1173 15 setp.eq.u32 %r505,%r267,0; @ %r505 bra $L1; .loc 1 1175 11 ld.u32 %r507,[%r280+8]; add.u32 %r506,%r507,-1; st.u32 [%r280+8],%r506; .loc 1 1176 19 add.u64 %r508,%r264,1; st.u64 [%r280],%r508; .loc 1 1176 7 add.u64 %r180,%r219,1; .loc 1 1176 10 ld.u8 %r509,[%r264]; st.u8 [%r219],%r509; .loc 1 1180 8 setp.eq.u64 %r510,%r129,1; @ %r510 bra $L64; mov.u64 %r252,%r180; bra $L65; $L67: .loc 1 1175 11 ld.u32 %r512,[%r280+8]; add.u32 %r511,%r512,-1; st.u32 [%r280+8],%r511; .loc 1 1176 19 add.u64 %r513,%r110,1; st.u64 [%r280],%r513; add.u64 %r252,%r252,1; .loc 1 1176 10 ld.u8 %r514,[%r110]; st.u8 [%r180],%r514; .loc 1 1180 8 add.u64 %r515,%r219,%r129; setp.eq.u64 %r516,%r515,%r252; @ %r516 bra $L115; $L65: mov.u64 %r180,%r252; .loc 1 1182 8 ld.u32 %r517,[%r280+8]; setp.gt.s32 %r518,%r517,0; @ %r518 bra $L66; .loc 1 1182 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r521,[%value_in]; } setp.eq.u32 %r522,%r521,0; @ %r522 bra $L66; .loc 1 1184 12 setp.eq.u64 %r523,%r219,%r180; @ ! %r523 bra $L64; bra $L35; $L66: .loc 1 1173 25 ld.u64 %r110,[%r280]; .loc 1 1173 21 ld.u8 %r525,[%r110]; add.u64 %r526,%frame,%r525; .loc 1 1173 15 ld.u8 %r528,[%r526]; cvt.s16.s8 %r527,%r528; setp.ne.u16 %r529,%r527,0; @ %r529 bra $L67; bra $L64; $L115: .loc 1 1176 7 mov.u64 %r180,%r252; $L64: .loc 1 1189 14 sub.u64 %r530,%r180,%r219; .loc 1 1189 10 cvt.u32.u64 %r220,%r530; .loc 1 1190 11 setp.eq.u32 %r531,%r220,0; @ %r531 bra $L1; .loc 1 1192 11 mov.u32 %r532,0; st.u8 [%r180],%r532; .loc 1 1196 17 add.u32 %r278,%r278,1; .loc 1 1197 14 add.u32 %r157,%r157,%r220; bra $L7; $L50: .loc 1 1203 7 setp.ne.u64 %r533,%r129,0; .loc 1 1204 12 selp.u64 %r129,%r129,-1,%r533; .loc 1 1146 25 ld.u64 %r268,[%r280]; .loc 1 1283 16 ld.u8 %r534,[%r268]; add.u64 %r536,%r712,%r534; ld.u8 %r714,[%r536]; mov.u16 %r539,%r714; and.b16 %r538,%r539,8; cvt.u32.u16 %r540,%r538; cvt.s32.s8 %r274,%r540; .loc 1 1280 14 and.b32 %r541,%r182,16; .loc 1 1280 7 setp.eq.u32 %r542,%r541,0; @ %r542 bra $L69; .loc 1 1283 15 setp.ne.u32 %r543,%r274,0; @ %r543 bra $L7; .loc 1 1285 16 ld.u32 %r544,[%r280+8]; add.u32 %r117,%r544,-1; st.u32 [%r280+8],%r117; .loc 1 1285 26 add.u64 %r545,%r268,1; st.u64 [%r280],%r545; .loc 1 1286 8 add.u64 %r218,%r129,-1; setp.ne.u64 %r546,%r129,1; @ %r546 bra $L116; .loc 1 1291 14 add.u32 %r157,%r157,1; bra $L7; $L73: .loc 1 1285 6 add.u32 %r217,%r217,1; .loc 1 1285 16 ld.u32 %r547,[%r280+8]; add.u32 %r117,%r547,-1; st.u32 [%r280+8],%r117; .loc 1 1285 26 add.u64 %r548,%r121,1; st.u64 [%r280],%r548; .loc 1 1286 8 add.u64 %r218,%r218,-1; setp.ne.u64 %r549,%r218,0; @ %r549 bra $L71; .loc 1 1291 14 add.u32 %r157,%r157,%r217; bra $L7; $L116: .loc 1 1285 6 mov.u32 %r217,1; $L71: .loc 1 1288 8 setp.gt.s32 %r550,%r117,0; @ %r550 bra $L72; .loc 1 1288 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r553,[%value_in]; } setp.eq.u32 %r554,%r553,0; @ %r554 bra $L72; .loc 1 1291 14 add.u32 %r157,%r157,%r217; bra $L7; $L72: .loc 1 1283 16 ld.u64 %r121,[%r280]; ld.u8 %r555,[%r121]; add.u64 %r557,%r712,%r555; .loc 1 1283 15 ld.u8 %r714,[%r557]; mov.u16 %r560,%r714; and.b16 %r562,%r560,8; setp.eq.u16 %r563,%r562,0; @ %r563 bra $L73; .loc 1 1291 14 add.u32 %r157,%r157,%r217; bra $L7; $L69: .loc 1 1303 6 add.u64 %r238,%r282,7; and.b64 %r237,%r238,-8; add.u64 %r282,%r237,8; ld.u64 %r216,[%r237]; .loc 1 1305 15 setp.ne.u32 %r564,%r274,0; @ %r564 bra $L117; .loc 1 1307 11 ld.u32 %r566,[%r280+8]; add.u32 %r565,%r566,-1; st.u32 [%r280+8],%r565; .loc 1 1308 19 add.u64 %r567,%r268,1; st.u64 [%r280],%r567; .loc 1 1308 7 add.u64 %r119,%r216,1; .loc 1 1308 10 ld.u8 %r568,[%r268]; st.u8 [%r216],%r568; .loc 1 1312 8 setp.eq.u64 %r569,%r129,1; @ ! %r569 bra $L203; bra $L118; $L78: .loc 1 1307 11 ld.u32 %r571,[%r280+8]; add.u32 %r570,%r571,-1; st.u32 [%r280+8],%r570; .loc 1 1308 19 add.u64 %r572,%r135,1; st.u64 [%r280],%r572; add.u64 %r248,%r248,1; .loc 1 1308 10 ld.u8 %r573,[%r135]; st.u8 [%r119],%r573; .loc 1 1312 8 add.u64 %r574,%r216,%r129; setp.ne.u64 %r575,%r574,%r248; @ %r575 bra $L76; .loc 1 1321 19 sub.u64 %r576,%r248,%r216; .loc 1 1321 14 cvt.u32.u64 %r259,%r576; mov.u64 %r119,%r248; bra $L74; $L203: mov.u64 %r248,%r119; $L76: mov.u64 %r119,%r248; .loc 1 1314 8 ld.u32 %r577,[%r280+8]; setp.gt.s32 %r578,%r577,0; @ %r578 bra $L77; .loc 1 1314 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r581,[%value_in]; } setp.eq.u32 %r582,%r581,0; @ %r582 bra $L77; .loc 1 1321 19 sub.u64 %r583,%r119,%r216; .loc 1 1321 14 cvt.u32.u64 %r259,%r583; bra $L74; $L77: .loc 1 1305 16 ld.u64 %r135,[%r280]; ld.u8 %r584,[%r135]; add.u64 %r586,%r712,%r584; .loc 1 1305 15 ld.u8 %r714,[%r586]; mov.u16 %r589,%r714; and.b16 %r591,%r589,8; setp.eq.u16 %r592,%r591,0; @ %r592 bra $L78; .loc 1 1321 19 sub.u64 %r593,%r248,%r216; .loc 1 1321 14 cvt.u32.u64 %r259,%r593; bra $L74; $L117: .loc 1 1303 6 mov.u64 %r119,%r216; .loc 1 1305 15 mov.u32 %r259,%r541; bra $L74; $L118: .loc 1 1312 8 mov.u32 %r259,1; $L74: .loc 1 1317 11 mov.u32 %r594,0; st.u8 [%r119],%r594; .loc 1 1321 14 add.u32 %r157,%r157,%r259; .loc 1 1322 17 add.u32 %r278,%r278,1; bra $L7; $L51: .loc 1 1335 14 add.u64 %r595,%r129,-1; .loc 1 1335 7 setp.le.u64 %r596,%r595,38; @ %r596 bra $L119; .loc 1 1338 27 cvt.u32.u64 %r597,%r129; .loc 1 1338 19 add.u32 %r186,%r597,-39; .loc 1 1339 14 mov.u64 %r129,39; bra $L79; $L119: .loc 1 1329 13 mov.u32 %r186,0; $L79: .loc 1 1341 10 or.b32 %r183,%r182,3456; .loc 1 1330 8 mov.u32 %r187,0; .loc 1 1342 11 mov.u64 %r181,%r713; $L97: .loc 1 1344 15 ld.u64 %r145,[%r280]; .loc 1 1344 12 ld.u8 %r146,[%r145]; cvt.u16.u32 %r598,%r146; setp.gt.u16 %r599,%r598,57; @ %r599 bra $L80; setp.gt.u16 %r601,%r598,55; @ %r601 bra $L81; setp.eq.u16 %r603,%r598,48; @ %r603 bra $L82; setp.gt.u16 %r605,%r598,48; @ %r605 bra $L83; add.u16 %r606,%r598,-43; cvt.u32.u16 %r608,%r606; cvt.u16.u8 %r714,%r608; mov.u16 %r610,%r714; and.b16 %r612,%r610,253; setp.eq.u16 %r613,%r612,0; @ ! %r613 bra $L85; bra $L84; $L83: .loc 1 1390 19 cvta.const.u64 %r614,basefix$0; cvt.s64.s32 %r615,%r184; add.u64 %r616,%r615,%r615; add.u64 %r617,%r614,%r616; ld.s16 %r184,[%r617]; .loc 1 1391 11 and.b32 %r183,%r183,-2945; .loc 1 1392 5 bra $L86; $L80: setp.gt.u16 %r619,%r598,102; @ %r619 bra $L87; setp.gt.u16 %r621,%r598,96; @ %r621 bra $L88; setp.gt.u16 %r623,%r598,70; @ %r623 bra $L89; setp.gt.u16 %r625,%r598,64; @ ! %r625 bra $L85; bra $L88; $L89: setp.eq.u16 %r627,%r598,88; @ %r627 bra $L90; bra $L85; $L87: setp.eq.u16 %r629,%r598,120; @ %r629 bra $L90; bra $L85; $L82: .loc 1 1361 18 and.b32 %r630,%r183,2048; .loc 1 1361 8 setp.eq.u32 %r631,%r630,0; @ %r631 bra $L86; .loc 1 1363 8 setp.ne.u32 %r632,%r184,0; @ %r632 bra $L91; .loc 1 1366 15 or.b32 %r183,%r183,512; .loc 1 1365 14 mov.u32 %r184,8; $L91: .loc 1 1368 15 and.b32 %r633,%r183,1024; .loc 1 1368 8 setp.eq.u32 %r634,%r633,0; @ %r634 bra $L92; .loc 1 1370 15 and.b32 %r183,%r183,-1409; .loc 1 1371 9 bra $L86; $L92: .loc 1 1373 11 and.b32 %r183,%r183,-897; .loc 1 1374 8 setp.eq.u32 %r635,%r186,0; @ %r635 bra $L93; .loc 1 1376 19 add.u32 %r186,%r186,-1; .loc 1 1377 14 add.u64 %r129,%r129,1; $L93: .loc 1 1379 5 add.u32 %r187,%r187,1; .loc 1 1380 5 bra $L94; $L81: .loc 1 1397 19 cvta.const.u64 %r636,basefix$0; cvt.s64.s32 %r637,%r184; add.u64 %r638,%r637,%r637; add.u64 %r639,%r636,%r638; ld.s16 %r184,[%r639]; .loc 1 1398 8 setp.le.s32 %r640,%r184,8; @ %r640 bra $L85; .loc 1 1400 11 and.b32 %r183,%r183,-2945; .loc 1 1401 5 bra $L86; $L88: .loc 1 1417 8 setp.le.s32 %r641,%r184,10; @ %r641 bra $L85; .loc 1 1419 11 and.b32 %r183,%r183,-2945; .loc 1 1420 5 bra $L86; $L84: .loc 1 1425 15 and.b32 %r642,%r183,128; .loc 1 1425 8 setp.eq.u32 %r643,%r642,0; @ %r643 bra $L85; .loc 1 1427 15 and.b32 %r183,%r183,-129; .loc 1 1428 9 bra $L86; $L90: .loc 1 1435 16 and.b32 %r644,%r183,1536; .loc 1 1435 8 setp.ne.u32 %r645,%r644,512; @ %r645 bra $L85; .loc 1 1438 15 and.b32 %r204,%r183,-513; .loc 1 1442 15 or.b32 %r183,%r204,1280; .loc 1 1437 14 mov.u32 %r184,16; $L86: .loc 1 1457 13 cvt.u32.u32 %r646,%r146; st.u8 [%r181],%r646; .loc 1 1457 10 add.u64 %r181,%r181,1; $L94: .loc 1 1459 12 ld.u32 %r647,[%r280+8]; add.u32 %r156,%r647,-1; .loc 1 1459 11 st.u32 [%r280+8],%r156; setp.le.s32 %r648,%r156,0; @ %r648 bra $L95; .loc 1 1460 9 add.u64 %r649,%r145,1; st.u64 [%r280],%r649; bra $L96; $L95: .loc 1 1462 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r280; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r652,[%value_in]; } .loc 1 1462 11 setp.ne.u32 %r653,%r652,0; @ %r653 bra $L85; $L96: .loc 1 1342 30 add.u64 %r129,%r129,-1; .loc 1 1342 18 setp.ne.u64 %r654,%r129,0; @ %r654 bra $L97; $L85: .loc 1 1473 14 and.b32 %r655,%r183,256; .loc 1 1473 7 setp.eq.u32 %r656,%r655,0; @ %r656 bra $L98; .loc 1 1475 11 setp.le.u64 %r658,%r181,%r713; @ %r658 bra $L99; .loc 1 1476 3 add.u64 %r206,%r181,-1; ld.s8 %r662,[%r181+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r662; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r280; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r663,[%value_in]; } mov.u64 %r181,%r206; $L99: .loc 1 1477 11 setp.eq.u64 %r665,%r181,%r713; @ %r665 bra $L1; $L98: .loc 1 1480 15 and.b32 %r666,%r183,16; .loc 1 1480 7 setp.ne.u32 %r667,%r666,0; @ %r667 bra $L100; .loc 1 1484 11 mov.u32 %r668,0; st.u8 [%r181],%r668; .loc 1 1485 15 mov.u64 %r671,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r671; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r184; call (%value_in),%r70,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r674,[%value_in]; } .loc 1 888 11 add.u64 %r675,%r282,7; and.b64 %r262,%r675,-8; add.u64 %r282,%r262,8; .loc 1 1486 18 and.b32 %r676,%r183,32; .loc 1 1486 11 setp.eq.u32 %r677,%r676,0; @ %r677 bra $L101; .loc 1 1488 12 ld.u64 %r215,[%r262]; .loc 1 1498 11 st.u64 [%r215],%r674; bra $L102; $L101: .loc 1 1507 23 and.b32 %r678,%r183,4; .loc 1 1507 16 setp.eq.u32 %r679,%r678,0; @ %r679 bra $L103; .loc 1 1510 9 ld.u64 %r680,[%r262]; st.u16 [%r680],%r674; bra $L102; $L103: .loc 1 1512 23 and.b32 %r681,%r183,1; .loc 1 1512 16 setp.eq.u32 %r682,%r681,0; @ %r682 bra $L104; .loc 1 1515 9 ld.u64 %r683,[%r262]; st.u64 [%r683],%r674; bra $L102; $L104: .loc 1 1518 23 and.b32 %r684,%r183,2; .loc 1 1518 16 setp.eq.u32 %r685,%r684,0; @ %r685 bra $L105; .loc 1 1521 8 mov.u64 %r686,_strtoul_r; setp.ne.u64 %r687,%r70,%r686; @ %r687 bra $L106; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r671; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r184; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r693,[%value_in]; } .loc 1 1526 10 mov.u64 %r171,%r693; bra $L107; $L106: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r279; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r671; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r184; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r699,[%value_in]; } mov.u64 %r171,%r699; $L107: .loc 1 1526 10 ld.u64 %r700,[%r262]; st.u64 [%r700],%r171; bra $L102; $L105: .loc 1 1532 9 ld.u64 %r701,[%r262]; st.u32 [%r701],%r674; $L102: .loc 1 1534 17 add.u32 %r278,%r278,1; $L100: .loc 1 1536 15 sub.u64 %r703,%r181,%r713; .loc 1 1536 21 cvt.u32.u64 %r704,%r703; .loc 1 1536 10 vadd.u32.u32.u32.add %r157,%r157,%r187,%r704; .loc 1 1537 4 bra $L7; $L35: .loc 1 1905 63 setp.eq.u32 %r706,%r278,0; @ %r706 bra $L120; .loc 1 1905 25 ld.u16 %r708,[%r280+16]; and.b16 %r707,%r708,64; setp.ne.u16 %r709,%r707,0; .loc 1 1905 63 selp.u32 %r278,-1,%r278,%r709; bra $L1; $L109: .loc 1 613 10 mov.u32 %r278,%r27; bra $L1; $L120: .loc 1 1905 63 mov.u32 %r278,-1; $L3: $L108: $L1: .loc 1 1914 1 mov.u32 %value,%r278; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiscanf .visible .func (.param .u32 %value_out) vfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 231 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 233 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L205; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L205; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L205: .loc 1 234 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 235 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfiscanf .visible .func (.param .u32 %value_out) __svfiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 242 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 243 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfiscanf_r .visible .func (.param .u32 %value_out) _vfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 253 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L211; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L211; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L211: .loc 1 254 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 255 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1804 0 0 0 644 48656 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _vfiwprintf_r .visible .func (.param .u32 %value_out) _vfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: vfiwprintf .visible .func (.param .u32 %value_out) vfiwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sprint_r .extern .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN GLOBAL FUNCTION DEF: _vfiwprintf_r .visible .func (.param .u32 %value_out) _vfiwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1248; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u32 %r41; .reg .u64 %r59; .reg .u32 %r80; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r123; .reg .u32 %r124; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r146; .reg .u64 %r148; .reg .u32 %r149; .reg .u32 %r155; .reg .u64 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u64 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r163; .reg .u64 %r164; .reg .u64 %r165; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r170; .reg .u32 %r171; .reg .u64 %r175; .reg .u32 %r177; .reg .u32 %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u64 %r184; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r189; .reg .u64 %r190; .reg .u64 %r194; .reg .u64 %r195; .reg .u32 %r197; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r200; .reg .u32 %r204; .reg .u32 %r207; .reg .u64 %r209; .reg .u64 %r210; .reg .u64 %r221; .reg .u64 %r222; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u64 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r243; .reg .u64 %r252; .reg .u32 %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u32 %r261; .reg .u32 %r262; .reg .u32 %r263; .reg .u32 %r264; .reg .u64 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u32 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u64 %r276; .reg .u64 %r277; .reg .pred %r278; .reg .u32 %r279; .reg .pred %r280; .reg .u16 %r282; .reg .u16 %r283; .reg .pred %r284; .reg .u16 %r285; .reg .u32 %r288; .reg .u16 %r289; .reg .u16 %r290; .reg .pred %r291; .reg .u64 %r292; .reg .pred %r293; .reg .u32 %r296; .reg .pred %r297; .reg .u16 %r298; .reg .u16 %r299; .reg .pred %r300; .reg .u16 %r301; .reg .pred %r302; .reg .u16 %r303; .reg .u32 %r305; .reg .u64 %r307; .reg .u64 %r308; .reg .u32 %r309; .reg .u32 %r311; .reg .u64 %r316; .reg .u32 %r317; .reg .pred %r318; .reg .u32 %r322; .reg .pred %r323; .reg .u16 %r324; .reg .u16 %r325; .reg .pred %r326; .reg .u16 %r327; .reg .u16 %r328; .reg .u64 %r330; .reg .u32 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r335; .reg .u32 %r336; .reg .u32 %r337; .reg .u16 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u32 %r341; .reg .u16 %r342; .reg .pred %r343; .reg .u32 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .u16 %r350; .reg .u16 %r351; .reg .u16 %r352; .reg .u32 %r353; .reg .u16 %r354; .reg .pred %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .pred %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u32 %r363; .reg .pred %r364; .reg .u32 %r369; .reg .pred %r370; .reg .u16 %r371; .reg .u16 %r372; .reg .pred %r373; .reg .u32 %r374; .reg .pred %r375; .reg .pred %r376; .reg .pred %r377; .reg .pred %r378; .reg .pred %r379; .reg .pred %r380; .reg .pred %r381; .reg .pred %r382; .reg .pred %r383; .reg .pred %r384; .reg .pred %r385; .reg .pred %r386; .reg .pred %r387; .reg .u32 %r388; .reg .pred %r389; .reg .pred %r390; .reg .pred %r391; .reg .pred %r392; .reg .pred %r393; .reg .pred %r394; .reg .pred %r395; .reg .pred %r396; .reg .pred %r397; .reg .pred %r398; .reg .pred %r399; .reg .pred %r400; .reg .pred %r401; .reg .pred %r402; .reg .pred %r403; .reg .pred %r404; .reg .pred %r405; .reg .pred %r406; .reg .pred %r407; .reg .u32 %r408; .reg .pred %r409; .reg .u32 %r410; .reg .u32 %r412; .reg .u32 %r413; .reg .u32 %r414; .reg .u32 %r415; .reg .u32 %r416; .reg .pred %r417; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r421; .reg .u32 %r422; .reg .u32 %r423; .reg .pred %r424; .reg .pred %r425; .reg .pred %r426; .reg .u32 %r427; .reg .pred %r428; .reg .u32 %r430; .reg .pred %r431; .reg .u16 %r432; .reg .u16 %r433; .reg .u32 %r434; .reg .pred %r436; .reg .u32 %r437; .reg .pred %r438; .reg .u32 %r439; .reg .pred %r440; .reg .u32 %r441; .reg .pred %r442; .reg .u16 %r443; .reg .pred %r446; .reg .pred %r447; .reg .u64 %r448; .reg .u32 %r449; .reg .pred %r450; .reg .u64 %r451; .reg .u64 %r452; .reg .u32 %r453; .reg .pred %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u32 %r457; .reg .pred %r458; .reg .u64 %r459; .reg .u64 %r460; .reg .u32 %r461; .reg .pred %r462; .reg .u32 %r463; .reg .pred %r464; .reg .u32 %r465; .reg .pred %r466; .reg .u16 %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .u32 %r470; .reg .pred %r471; .reg .pred %r472; .reg .pred %r473; .reg .u32 %r475; .reg .u64 %r477; .reg .pred %r478; .reg .u64 %r480; .reg .pred %r481; .reg .u64 %r484; .reg .u64 %r485; .reg .u64 %r486; .reg .pred %r487; .reg .u16 %r488; .reg .u16 %r489; .reg .u64 %r491; .reg .u32 %r492; .reg .pred %r493; .reg .u32 %r494; .reg .u64 %r498; .reg .u64 %r500; .reg .u32 %r501; .reg .pred %r502; .reg .u32 %r504; .reg .u64 %r506; .reg .u64 %r507; .reg .pred %r508; .reg .u64 %r509; .reg .u64 %r511; .reg .u32 %r512; .reg .u64 %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .pred %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u16 %r521; .reg .pred %r522; .reg .u32 %r523; .reg .pred %r524; .reg .u32 %r525; .reg .pred %r526; .reg .u32 %r527; .reg .pred %r528; .reg .u16 %r529; .reg .u32 %r530; .reg .pred %r531; .reg .pred %r532; .reg .u32 %r533; .reg .pred %r534; .reg .u32 %r535; .reg .u32 %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .u32 %r539; .reg .u32 %r540; .reg .u16 %r541; .reg .u16 %r542; .reg .u16 %r543; .reg .u32 %r544; .reg .u16 %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .u32 %r549; .reg .u32 %r550; .reg .pred %r551; .reg .u32 %r552; .reg .u32 %r553; .reg .u32 %r554; .reg .u32 %r555; .reg .u16 %r556; .reg .u16 %r557; .reg .u32 %r558; .reg .u16 %r559; .reg .u16 %r560; .reg .u16 %r561; .reg .u32 %r562; .reg .u16 %r563; .reg .pred %r564; .reg .u64 %r566; .reg .u64 %r568; .reg .u32 %r569; .reg .u64 %r571; .reg .u64 %r573; .reg .pred %r574; .reg .u32 %r575; .reg .u32 %r576; .reg .u64 %r578; .reg .u32 %r579; .reg .u32 %r580; .reg .pred %r583; .reg .u64 %r585; .reg .u64 %r587; .reg .u64 %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u32 %r591; .reg .pred %r592; .reg .u64 %r594; .reg .u64 %r596; .reg .pred %r597; .reg .pred %r598; .reg .u32 %r599; .reg .pred %r600; .reg .pred %r601; .reg .u32 %r602; .reg .u32 %r603; .reg .pred %r604; .reg .pred %r606; .reg .pred %r607; .reg .pred %r608; .reg .u64 %r610; .reg .pred %r611; .reg .u32 %r616; .reg .pred %r617; .reg .pred %r618; .reg .u64 %r620; .reg .pred %r621; .reg .u32 %r626; .reg .pred %r627; .reg .u32 %r628; .reg .pred %r629; .reg .u64 %r631; .reg .pred %r632; .reg .u32 %r637; .reg .pred %r638; .reg .u64 %r641; .reg .pred %r642; .reg .u32 %r647; .reg .pred %r648; .reg .pred %r649; .reg .pred %r650; .reg .pred %r651; .reg .u64 %r653; .reg .pred %r654; .reg .u32 %r659; .reg .pred %r660; .reg .pred %r661; .reg .u64 %r663; .reg .pred %r664; .reg .u32 %r669; .reg .pred %r670; .reg .pred %r671; .reg .pred %r672; .reg .u64 %r674; .reg .pred %r675; .reg .u32 %r680; .reg .pred %r681; .reg .pred %r682; .reg .u64 %r684; .reg .pred %r685; .reg .u32 %r690; .reg .pred %r691; .reg .u64 %r692; .reg .pred %r693; .reg .u32 %r698; .reg .pred %r699; .reg .u32 %r700; .reg .pred %r701; .reg .pred %r702; .reg .pred %r703; .reg .u64 %r705; .reg .pred %r706; .reg .u32 %r711; .reg .pred %r712; .reg .pred %r713; .reg .u64 %r715; .reg .pred %r716; .reg .u32 %r721; .reg .pred %r722; .reg .u32 %r723; .reg .pred %r724; .reg .u32 %r725; .reg .pred %r726; .reg .u32 %r731; .reg .pred %r732; .reg .u64 %r735; .reg .pred %r736; .reg .u64 %r740; .reg .u32 %r741; .reg .pred %r742; .reg .u16 %r743; .reg .u16 %r744; .reg .u16 %r745; .reg .u16 %r746; .reg .pred %r747; .reg .u16 %r748; .reg .u16 %r749; .reg .u16 %r752; .reg .u16 %r753; .reg .pred %r754; .reg .pred %r756; .reg .pred %r757; .reg .u32 %r758; .reg .u32 %r759; .reg .u32 %r760; .reg .u32 %r761; .reg .u32 %r762; .reg .u32 %r763; .reg .u16 %r764; .reg .u16 %r765; .reg .u16 %r766; .reg .u32 %r767; .reg .u16 %r768; .reg .pred %r769; .reg .u64 %r770; .reg .u64 %r771; .reg .pred %r772; .reg .u64 %r774; .reg .pred %r775; .reg .u64 %r792; .reg .u64 %r793; .reg .u64 %r794; .reg .u64 %r795; .reg .u16 %r801; mov.u64 %r274,%ar0; mov.u64 %r275,%ar1; mov.u64 %r276,%ar2; mov.u64 %r277,%ar3; .loc 1 591 2 setp.eq.u64 %r278,%r274,0; @ %r278 bra $L2; ld.u32 %r279,[%r274+80]; setp.ne.u32 %r280,%r279,0; @ %r280 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; call __sinit,(%out_arg1); } $L2: .loc 1 594 2 ld.s16 %r24,[%r275+16]; cvt.u16.u32 %r283,%r24; and.b16 %r282,%r283,8192; setp.ne.u16 %r284,%r282,0; @ %r284 bra $L3; .loc 1 592 2 ld.u32 %r23,[%r275+172]; .loc 1 594 2 or.b16 %r285,%r283,8192; cvt.s32.s16 %r24,%r285; st.u16 [%r275+16],%r285; or.b32 %r288,%r23,8192; st.u32 [%r275+172],%r288; $L3: .loc 1 597 5 cvt.u16.u32 %r290,%r24; and.b16 %r289,%r290,8; setp.eq.u16 %r291,%r289,0; @ %r291 bra $L4; .loc 1 597 6 ld.u64 %r292,[%r275+24]; setp.ne.u64 %r293,%r292,0; @ %r293 bra $L5; $L4: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r296,[%value_in]; } setp.eq.u32 %r297,%r296,0; @ %r297 bra $L6; $L61: .loc 1 599 10 mov.u32 %r273,-1; bra $L1; $L6: .loc 1 604 9 ld.s16 %r24,[%r275+16]; $L5: .loc 1 604 5 cvt.u16.u32 %r299,%r24; and.b16 %r298,%r299,26; setp.ne.u16 %r300,%r298,10; @ %r300 bra $L8; .loc 1 604 60 ld.u16 %r301,[%r275+18]; setp.lt.s16 %r302,%r301,0; @ %r302 bra $L8; .loc 1 187 14 and.b16 %r303,%r299,-3; st.u16 [%frame+1040],%r303; .loc 1 188 15 ld.u32 %r305,[%r275+172]; st.u32 [%frame+1196],%r305; .loc 1 189 13 st.u16 [%frame+1042],%r301; .loc 1 190 15 ld.u64 %r307,[%r275+48]; st.u64 [%frame+1072],%r307; .loc 1 191 14 ld.u64 %r308,[%r275+64]; st.u64 [%frame+1088],%r308; .loc 1 194 27 st.u64 [%frame+1024],%frame; .loc 1 194 17 st.u64 [%frame+1048],%frame; .loc 1 195 27 mov.u32 %r309,1024; st.u32 [%frame+1036],%r309; .loc 1 195 17 st.u32 [%frame+1056],%r309; .loc 1 196 16 mov.u32 %r311,0; st.u32 [%frame+1064],%r311; .loc 1 202 8 add.u64 %r316,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r276; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r277; call (%value_in),_vfiwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r317,[%value_in]; } mov.u32 %r273,%r317; .loc 1 203 5 setp.lt.s32 %r318,%r273,0; @ %r318 bra $L9; .loc 1 203 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r316; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r322,[%value_in]; } .loc 1 203 15 setp.eq.u32 %r323,%r322,0; .loc 1 204 7 selp.u32 %r273,%r273,-1,%r323; $L9: .loc 1 205 5 ld.u16 %r325,[%frame+1040]; and.b16 %r324,%r325,64; setp.eq.u16 %r326,%r324,0; @ %r326 bra $L1; .loc 1 206 14 ld.u16 %r328,[%r275+16]; or.b16 %r327,%r328,64; st.u16 [%r275+16],%r327; .loc 1 607 11 bra $L1; $L8: .loc 1 626 14 add.u64 %r770,%frame,1024; st.u64 [%frame+1200],%r770; .loc 1 627 16 mov.u64 %r330,0; st.u64 [%frame+1216],%r330; .loc 1 628 17 mov.u32 %r331,0; st.u32 [%frame+1208],%r331; .loc 1 626 21 mov.u64 %r164,%r770; .loc 1 435 11 mov.u64 %r38,%r330; .loc 1 630 6 mov.u32 %r273,%r331; .loc 1 647 4 add.u64 %r792,%frame,1200; .loc 1 1438 4 add.u64 %r793,%frame,1224; .loc 1 1436 4 add.u64 %r794,%frame,1232; .loc 1 1319 7 add.u64 %r795,%frame,160; $L11: .loc 1 644 24 ld.u32 %r177,[%r276]; .loc 1 644 38 set.u32.ne.u32 %r333,%r177,0; neg.s32 %r334,%r333; mov.u32 %r332,%r334; set.u32.ne.u32 %r336,%r177,37; neg.s32 %r337,%r336; mov.u32 %r335,%r337; cvt.u16.u8 %r801,%r332; mov.u16 %r339,%r801; cvt.u16.u8 %r801,%r335; mov.u16 %r340,%r801; and.b16 %r338,%r339,%r340; cvt.u32.u16 %r341,%r338; cvt.u16.u8 %r342,%r341; setp.eq.u16 %r343,%r342,0; @ %r343 bra $L150; mov.u64 %r195,%r276; $L13: mov.u64 %r35,%r195; .loc 1 645 21 add.u64 %r195,%r195,4; .loc 1 644 24 ld.u32 %r177,[%r195]; .loc 1 644 38 set.u32.ne.u32 %r345,%r177,0; neg.s32 %r346,%r345; mov.u32 %r344,%r346; set.u32.ne.u32 %r348,%r177,37; neg.s32 %r349,%r348; mov.u32 %r347,%r349; cvt.u16.u8 %r801,%r344; mov.u16 %r351,%r801; cvt.u16.u8 %r801,%r347; mov.u16 %r352,%r801; and.b16 %r350,%r351,%r352; cvt.u32.u16 %r353,%r350; cvt.u16.u8 %r354,%r353; setp.ne.u16 %r355,%r354,0; @ %r355 bra $L13; .loc 1 646 16 sub.u64 %r356,%r195,%r276; shr.s64 %r358,%r356,2; .loc 1 646 10 cvt.u32.u64 %r178,%r358; .loc 1 646 6 setp.eq.u32 %r359,%r178,0; @ %r359 bra $L12; .loc 1 647 4 st.u64 [%r164],%r276; cvt.s64.s32 %r360,%r178; shl.b64 %r36,%r360,2; st.u64 [%r164+8],%r36; ld.u64 %r362,[%frame+1216]; add.u64 %r361,%r362,%r36; st.u64 [%frame+1216],%r361; ld.u32 %r363,[%frame+1208]; add.u32 %r41,%r363,1; st.u32 [%frame+1208],%r41; setp.le.s32 %r364,%r41,7; @ %r364 bra $L14; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r369,[%value_in]; } setp.eq.u32 %r370,%r369,0; @ %r370 bra $L151; ld.u16 %r372,[%r275+16]; and.b16 %r371,%r372,64; cvt.s32.s16 %r261,%r371; bra $L16; $L14: add.u64 %r164,%r164,16; bra $L15; $L151: mov.u64 %r164,%r770; $L15: .loc 1 648 8 add.u32 %r273,%r273,%r178; .loc 1 650 21 ld.u32 %r177,[%r35+4]; bra $L12; $L150: .loc 1 644 38 mov.u64 %r195,%r276; $L12: .loc 1 650 20 setp.eq.u32 %r373,%r177,0; @ %r373 bra $L17; .loc 1 653 6 add.u64 %r276,%r195,4; .loc 1 659 8 mov.u32 %r374,0; st.u32 [%frame+1232],%r374; .loc 1 671 14 ld.u32 %r262,[%r195+4]; mov.u32 %r179,%r374; mov.u32 %r180,%r374; .loc 1 658 8 mov.u32 %r158,-1; .loc 1 657 9 mov.u32 %r157,%r374; .loc 1 655 9 mov.u32 %r109,%r374; $L18: .loc 1 671 18 add.u64 %r276,%r276,4; .loc 1 671 12 mov.u32 %r155,%r262; $L19: .loc 1 672 11 setp.eq.u32 %r375,%r155,100; @ %r375 bra $L20; setp.gt.u32 %r376,%r155,100; @ %r376 bra $L21; setp.eq.u32 %r377,%r155,46; @ %r377 bra $L22; setp.gt.u32 %r378,%r155,46; @ %r378 bra $L23; setp.eq.u32 %r379,%r155,42; @ %r379 bra $L24; setp.gt.u32 %r380,%r155,42; @ %r380 bra $L25; setp.eq.u32 %r381,%r155,32; @ %r381 bra $L26; setp.eq.u32 %r382,%r155,35; @ %r382 bra $L27; bra $L252; $L25: setp.eq.u32 %r383,%r155,43; @ %r383 bra $L29; setp.eq.u32 %r384,%r155,45; @ %r384 bra $L30; bra $L31; $L23: setp.eq.u32 %r385,%r155,88; @ %r385 bra $L32; setp.gt.u32 %r386,%r155,88; @ %r386 bra $L33; setp.eq.u32 %r387,%r155,48; @ %r387 bra $L34; add.u32 %r388,%r155,-49; setp.gt.u32 %r389,%r388,8; @ %r389 bra $L31; mov.u64 %r186,%r276; .loc 1 817 6 mov.u32 %r157,0; bra $L35; $L33: .loc 1 672 11 setp.eq.u32 %r390,%r155,99; @ %r390 bra $L36; bra $L31; $L21: setp.eq.u32 %r391,%r155,112; @ %r391 bra $L37; setp.gt.u32 %r392,%r155,112; @ %r392 bra $L38; setp.eq.u32 %r393,%r155,108; @ %r393 bra $L39; setp.gt.u32 %r394,%r155,108; @ %r394 bra $L40; setp.eq.u32 %r395,%r155,104; @ %r395 bra $L41; setp.eq.u32 %r396,%r155,105; @ %r396 bra $L20; bra $L31; $L40: setp.eq.u32 %r397,%r155,110; @ %r397 bra $L42; setp.eq.u32 %r398,%r155,111; @ %r398 bra $L43; bra $L31; $L38: setp.eq.u32 %r399,%r155,117; @ %r399 bra $L44; setp.gt.u32 %r400,%r155,117; @ %r400 bra $L45; setp.eq.u32 %r401,%r155,113; @ %r401 bra $L46; setp.eq.u32 %r402,%r155,115; @ %r402 bra $L47; bra $L31; $L45: setp.ne.u32 %r403,%r155,120; @ %r403 bra $L31; setp.eq.u32 %r404,%r179,0; @ %r404 bra $L48; st.u32 [%frame+1232],%r180; $L48: .loc 1 1291 10 cvta.const.u64 %r38,$LC1; bra $L49; $L26: .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 704 7 setp.ne.u32 %r405,%r180,0; selp.u32 %r179,%r179,1,%r405; selp.u32 %r180,%r180,32,%r405; bra $L18; $L27: .loc 1 708 10 or.b32 %r109,%r109,1; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 709 4 bra $L18; $L24: .loc 1 747 10 add.u64 %r231,%r277,4; ld.u32 %r157,[%r277]; .loc 1 751 7 setp.lt.s32 %r406,%r157,0; @ %r406 bra $L51; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 747 10 mov.u64 %r277,%r231; bra $L18; $L51: .loc 1 753 10 neg.s32 %r157,%r157; .loc 1 747 10 mov.u64 %r277,%r231; $L30: .loc 1 756 10 or.b32 %r109,%r109,4; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 757 4 bra $L18; $L29: .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 760 4 mov.u32 %r179,1; .loc 1 759 9 mov.u32 %r180,%r155; .loc 1 760 4 bra $L18; $L22: .loc 1 762 18 add.u64 %r200,%r276,4; .loc 1 762 12 ld.u32 %r155,[%r276]; .loc 1 762 7 setp.eq.u32 %r407,%r155,42; @ %r407 bra $L52; .loc 1 801 11 add.u32 %r408,%r155,-48; setp.le.u32 %r409,%r408,9; @ %r409 bra $L53; .loc 1 762 18 mov.u64 %r276,%r200; .loc 1 801 11 mov.u32 %r158,%r374; bra $L19; $L52: ld.u32 %r410,[%r277]; max.s32 %r158,%r410,-1; .loc 1 671 14 ld.u32 %r262,[%r276+4]; .loc 1 792 10 add.u64 %r277,%r277,4; .loc 1 762 18 mov.u64 %r276,%r200; .loc 1 798 5 bra $L18; $L53: mov.u64 %r189,%r200; .loc 1 800 6 mov.u32 %r146,%r374; $L55: .loc 1 802 12 shl.b32 %r412,%r146,2; add.u32 %r413,%r412,%r146; add.u32 %r414,%r413,%r413; .loc 1 802 16 add.u32 %r415,%r414,-48; add.u32 %r146,%r415,%r155; mov.u64 %r187,%r189; add.u64 %r276,%r189,4; mov.u64 %r189,%r276; .loc 1 803 8 ld.u32 %r155,[%r187]; .loc 1 801 11 add.u32 %r416,%r155,-48; setp.le.u32 %r417,%r416,9; @ %r417 bra $L55; .loc 1 805 9 max.s32 %r158,%r146,-1; .loc 1 806 4 bra $L19; $L34: .loc 1 813 10 or.b32 %r109,%r109,128; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 814 4 bra $L18; $L35: .loc 1 819 12 shl.b32 %r419,%r157,2; add.u32 %r420,%r419,%r157; add.u32 %r421,%r420,%r420; .loc 1 819 16 add.u32 %r422,%r421,-48; add.u32 %r157,%r422,%r155; mov.u64 %r126,%r186; add.u64 %r186,%r186,4; mov.u64 %r276,%r186; .loc 1 820 8 ld.u32 %r155,[%r126]; .loc 1 821 13 add.u32 %r423,%r155,-48; setp.le.u32 %r424,%r423,9; @ %r424 bra $L35; bra $L19; $L41: .loc 1 847 11 or.b32 %r109,%r109,64; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 848 4 bra $L18; $L39: .loc 1 851 8 ld.u32 %r262,[%r276]; .loc 1 851 7 setp.ne.u32 %r425,%r262,108; @ %r425 bra $L57; .loc 1 853 11 or.b32 %r109,%r109,32; .loc 1 671 14 ld.u32 %r262,[%r276+4]; .loc 1 852 8 add.u64 %r276,%r276,4; bra $L18; $L57: .loc 1 856 11 or.b32 %r109,%r109,16; bra $L18; $L46: .loc 1 859 10 or.b32 %r109,%r109,32; .loc 1 762 14 ld.u32 %r262,[%r276]; .loc 1 860 4 bra $L18; $L36: setp.eq.u32 %r426,%r179,0; @ %r426 bra $L58; st.u32 [%frame+1232],%r180; $L58: .loc 1 747 10 ld.u32 %r171,[%r277]; add.u64 %r277,%r277,4; .loc 1 903 30 and.b32 %r427,%r109,16; .loc 1 903 19 setp.ne.u32 %r428,%r427,0; @ %r428 bra $L59; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r171; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r430,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r431,%r430,-1; @ %r431 bra $L60; .loc 1 906 20 ld.u16 %r433,[%r275+16]; or.b16 %r432,%r433,64; st.u16 [%r275+16],%r432; bra $L61; $L60: .loc 1 909 13 mov.u32 %r171,%r430; $L59: .loc 1 909 11 st.u32 [%frame],%r171; .loc 1 915 10 mov.u32 %r434,0; st.u32 [%frame+4],%r434; .loc 1 917 9 st.u32 [%frame+1232],%r434; .loc 1 918 4 mov.u32 %r161,1; .loc 1 916 9 mov.u32 %r163,%r161; .loc 1 902 7 mov.u64 %r156,%frame; .loc 1 918 4 bra $L62; $L20: setp.eq.u32 %r436,%r179,0; @ %r436 bra $L63; st.u32 [%frame+1232],%r180; $L63: .loc 1 921 13 and.b32 %r437,%r109,32; setp.eq.u32 %r438,%r437,0; @ %r438 bra $L64; add.u64 %r232,%r277,7; and.b64 %r233,%r232,-8; add.u64 %r277,%r233,8; ld.u64 %r59,[%r233]; mov.u64 %r159,%r59; bra $L65; $L64: and.b32 %r439,%r109,16; setp.eq.u32 %r440,%r439,0; @ %r440 bra $L66; add.u64 %r222,%r277,7; and.b64 %r235,%r222,-8; add.u64 %r277,%r235,8; ld.u64 %r59,[%r235]; mov.u64 %r159,%r59; bra $L65; $L66: .loc 1 747 10 ld.u32 %r264,[%r277]; add.u64 %r277,%r277,4; .loc 1 921 13 and.b32 %r441,%r109,64; setp.eq.u32 %r442,%r441,0; @ %r442 bra $L67; cvt.u16.u32 %r443,%r264; cvt.s64.s16 %r159,%r443; .loc 1 923 8 mov.u64 %r59,%r159; bra $L65; $L67: .loc 1 921 13 cvt.s64.s32 %r159,%r264; .loc 1 923 8 mov.u64 %r59,%r159; $L65: .loc 1 923 7 setp.ge.s64 %r446,%r59,0; @ %r446 bra $L68; .loc 1 929 12 neg.s64 %r159,%r159; mov.u32 %r170,45; .loc 1 932 9 mov.u32 %r160,1; bra $L69; $L42: setp.eq.u32 %r447,%r179,0; @ %r447 bra $L70; st.u32 [%frame+1232],%r180; $L70: .loc 1 921 13 add.u64 %r448,%r277,7; and.b64 %r267,%r448,-8; add.u64 %r277,%r267,8; .loc 1 1132 14 and.b32 %r449,%r109,32; .loc 1 1132 7 setp.eq.u32 %r450,%r449,0; @ %r450 bra $L71; .loc 1 1133 34 ld.u64 %r451,[%r267]; cvt.s64.s32 %r452,%r273; st.u64 [%r451],%r452; bra $L11; $L71: .loc 1 1136 14 and.b32 %r453,%r109,16; .loc 1 1136 7 setp.eq.u32 %r454,%r453,0; @ %r454 bra $L73; .loc 1 1137 34 ld.u64 %r455,[%r267]; cvt.s64.s32 %r456,%r273; st.u64 [%r455],%r456; bra $L11; $L73: .loc 1 1138 19 and.b32 %r457,%r109,64; .loc 1 1138 12 setp.eq.u32 %r458,%r457,0; @ %r458 bra $L74; .loc 1 1139 35 ld.u64 %r459,[%r267]; st.u16 [%r459],%r273; bra $L11; $L74: .loc 1 1145 33 ld.u64 %r460,[%r267]; st.u32 [%r460],%r273; bra $L11; $L43: .loc 1 1148 13 and.b32 %r461,%r109,32; setp.eq.u32 %r462,%r461,0; @ %r462 bra $L75; add.u64 %r225,%r277,7; and.b64 %r224,%r225,-8; add.u64 %r277,%r224,8; ld.u64 %r159,[%r224]; .loc 1 1149 9 mov.u32 %r160,0; bra $L76; $L75: .loc 1 1148 13 and.b32 %r463,%r109,16; setp.eq.u32 %r464,%r463,0; @ %r464 bra $L77; add.u64 %r226,%r277,7; and.b64 %r190,%r226,-8; add.u64 %r277,%r190,8; ld.u64 %r159,[%r190]; .loc 1 1149 9 mov.u32 %r160,0; bra $L76; $L77: .loc 1 747 10 ld.u32 %r268,[%r277]; add.u64 %r277,%r277,4; .loc 1 1148 13 and.b32 %r465,%r109,64; setp.eq.u32 %r466,%r465,0; @ %r466 bra $L78; cvt.u16.u32 %r467,%r268; cvt.u64.u16 %r159,%r467; .loc 1 1149 9 mov.u32 %r160,0; bra $L76; $L78: .loc 1 1148 13 cvt.u64.u32 %r159,%r268; .loc 1 1149 9 mov.u32 %r160,%r465; bra $L76; $L37: .loc 1 1163 25 add.u64 %r227,%r277,7; and.b64 %r210,%r227,-8; add.u64 %r277,%r210,8; .loc 1 1163 11 ld.u64 %r159,[%r210]; .loc 1 1166 10 or.b32 %r109,%r109,2; .loc 1 1167 10 mov.u32 %r468,48; st.u32 [%frame+1224],%r468; .loc 1 1168 10 mov.u32 %r469,120; st.u32 [%frame+1228],%r469; .loc 1 1165 10 cvta.const.u64 %r38,$LC1; .loc 1 1164 9 mov.u32 %r160,2; .loc 1 1169 4 bra $L76; $L47: .loc 1 1174 7 add.u64 %r228,%r277,7; and.b64 %r209,%r228,-8; add.u64 %r277,%r209,8; ld.u64 %r156,[%r209]; .loc 1 1178 9 mov.u32 %r470,0; st.u32 [%frame+1232],%r470; .loc 1 1184 7 setp.ne.u64 %r471,%r156,0; @ %r471 bra $L79; .loc 1 1186 39 min.u32 %r163,%r158,6; mov.u32 %r161,%r163; .loc 1 1185 8 cvta.const.u64 %r156,$LC2; bra $L62; $L79: .loc 1 1242 30 and.b32 %r80,%r109,16; .loc 1 1242 19 setp.ne.u32 %r472,%r80,0; @ %r472 bra $L80; .loc 1 1246 8 setp.eq.u32 %r473,%r158,-1; @ %r473 bra $L81; .loc 1 1247 16 cvt.s64.s32 %r168,%r158; mov.u32 %r475,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r475; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r168; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r477,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r478,%r477,0; @ %r478 bra $L82; .loc 1 1248 21 sub.u64 %r168,%r477,%r156; bra $L82; $L81: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r480,[%value_in]; } mov.u64 %r168,%r480; $L82: .loc 1 1251 8 setp.le.u64 %r481,%r168,39; @ %r481 bra $L83; .loc 1 1252 64 add.u64 %r484,%r168,1; .loc 1 1252 39 shl.b64 %r485,%r484,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r485; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r486,[%value_in]; } mov.u64 %r184,%r486; .loc 1 1252 12 setp.ne.u64 %r487,%r486,0; @ %r487 bra $L152; .loc 1 1254 18 ld.u16 %r489,[%r275+16]; or.b16 %r488,%r489,64; st.u16 [%r275+16],%r488; bra $L61; $L83: .loc 1 1260 25 setp.eq.u64 %r775,%r168,0; @ %r775 bra $L153; mov.u64 %r167,0; .loc 1 1259 9 mov.u64 %r184,%frame; bra $L84; $L152: mov.u64 %r167,%r184; setp.eq.u64 %r775,%r168,0; $L84: mov.u64 %r194,%r184; mov.u64 %r198,0; $L86: .loc 1 1261 20 add.u64 %r491,%r156,%r198; ld.s8 %r492,[%r491]; st.u32 [%r194],%r492; .loc 1 1260 25 add.u64 %r198,%r198,1; add.u64 %r194,%r194,4; setp.gt.u64 %r493,%r168,%r198; @ %r493 bra $L86; .loc 1 1260 35 @ %r775 bra $L87; cvt.u32.u64 %r494,%r168; bra $L88; $L87: mov.u32 %r494,1; $L88: mov.u32 %r163,%r494; .loc 1 1260 25 selp.u64 %r498,1,%r168,%r775; .loc 1 1262 7 shl.b64 %r500,%r498,2; add.u64 %r243,%r184,%r500; mov.u32 %r161,%r163; mov.u64 %r156,%r184; bra $L85; $L153: .loc 1 1260 25 mov.u32 %r161,%r80; .loc 1 1260 15 mov.u32 %r163,%r80; .loc 1 1260 25 mov.u64 %r243,%frame; mov.u64 %r167,%r168; .loc 1 1259 9 mov.u64 %r156,%frame; $L85: .loc 1 1262 14 mov.u32 %r501,0; st.u32 [%r243],%r501; .loc 1 656 9 mov.u32 %r158,%r80; .loc 1 1242 42 mov.u32 %r134,%r109; bra $L91; $L80: .loc 1 1265 12 setp.eq.u32 %r502,%r158,-1; @ %r502 bra $L92; .loc 1 1271 18 cvt.s64.s32 %r506,%r158; mov.u32 %r504,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r504; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r506; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r507,[%value_in]; } mov.u64 %r167,%r507; .loc 1 1273 8 setp.eq.u64 %r508,%r167,0; @ %r508 bra $L154; .loc 1 1274 15 sub.u64 %r509,%r167,%r156; shr.s64 %r511,%r509,2; .loc 1 1274 11 cvt.u32.u64 %r512,%r511; min.s32 %r163,%r512,%r158; .loc 1 1424 10 max.s32 %r161,%r163,0; mov.u32 %r134,%r109; mov.u64 %r167,0; .loc 1 656 9 mov.u32 %r158,%r504; bra $L91; $L92: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r156; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r514,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r163,%r514; .loc 1 1424 10 max.s32 %r161,%r163,0; mov.u32 %r134,%r109; mov.u64 %r167,0; .loc 1 656 9 mov.u32 %r158,0; bra $L91; $L44: .loc 1 1284 13 and.b32 %r515,%r109,32; setp.eq.u32 %r516,%r515,0; @ %r516 bra $L93; add.u64 %r175,%r277,7; and.b64 %r239,%r175,-8; add.u64 %r277,%r239,8; ld.u64 %r159,[%r239]; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L93: .loc 1 1284 13 and.b32 %r517,%r109,16; setp.eq.u32 %r518,%r517,0; @ %r518 bra $L94; add.u64 %r230,%r277,7; and.b64 %r229,%r230,-8; add.u64 %r277,%r229,8; ld.u64 %r159,[%r229]; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L94: .loc 1 747 10 ld.u32 %r269,[%r277]; add.u64 %r277,%r277,4; .loc 1 1284 13 and.b32 %r519,%r109,64; setp.eq.u32 %r520,%r519,0; @ %r520 bra $L95; cvt.u16.u32 %r521,%r269; cvt.u64.u16 %r159,%r521; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L95: .loc 1 1284 13 cvt.u64.u32 %r159,%r269; .loc 1 1285 9 mov.u32 %r160,1; bra $L76; $L32: setp.eq.u32 %r522,%r179,0; @ %r522 bra $L96; st.u32 [%frame+1232],%r180; $L96: .loc 1 1288 10 cvta.const.u64 %r38,$LC0; $L49: .loc 1 1292 17 and.b32 %r523,%r109,32; setp.eq.u32 %r524,%r523,0; @ %r524 bra $L97; add.u64 %r236,%r277,7; and.b64 %r221,%r236,-8; add.u64 %r277,%r221,8; ld.u64 %r159,[%r221]; bra $L98; $L97: and.b32 %r525,%r109,16; setp.eq.u32 %r526,%r525,0; @ %r526 bra $L99; add.u64 %r238,%r277,7; and.b64 %r237,%r238,-8; add.u64 %r277,%r237,8; ld.u64 %r159,[%r237]; bra $L98; $L99: .loc 1 747 10 ld.u32 %r263,[%r277]; add.u64 %r277,%r277,4; .loc 1 1292 17 and.b32 %r527,%r109,64; setp.eq.u32 %r528,%r527,0; @ %r528 bra $L100; cvt.u16.u32 %r529,%r263; cvt.u64.u16 %r159,%r529; bra $L98; $L100: cvt.u64.u32 %r159,%r263; $L98: .loc 1 1295 14 and.b32 %r530,%r109,1; .loc 1 1295 7 setp.eq.u32 %r531,%r530,0; @ %r531 bra $L155; .loc 1 1295 20 setp.eq.u64 %r532,%r159,0; @ %r532 bra $L156; .loc 1 1296 11 mov.u32 %r533,48; st.u32 [%frame+1224],%r533; .loc 1 1297 11 st.u32 [%frame+1228],%r155; .loc 1 1298 11 or.b32 %r109,%r109,2; .loc 1 1293 9 mov.u32 %r160,2; bra $L76; $L155: mov.u32 %r160,2; bra $L76; $L156: mov.u32 %r160,2; $L76: .loc 1 1305 1 mov.u32 %r170,0; $L69: .loc 1 930 10 st.u32 [%frame+1232],%r170; .loc 1 1311 14 setp.eq.u32 %r534,%r158,-1; @ %r534 bra $L101; .loc 1 1312 11 and.b32 %r134,%r109,-129; .loc 1 1320 15 set.u32.ne.u64 %r536,%r159,0; neg.s32 %r537,%r536; mov.u32 %r535,%r537; .loc 1 1320 28 set.u32.ne.u32 %r539,%r158,0; neg.s32 %r540,%r539; mov.u32 %r538,%r540; .loc 1 1320 20 cvt.u16.u8 %r801,%r535; mov.u16 %r542,%r801; cvt.u16.u8 %r801,%r538; mov.u16 %r543,%r801; or.b16 %r541,%r542,%r543; cvt.u32.u16 %r544,%r541; .loc 1 1320 7 cvt.u16.u8 %r545,%r544; setp.eq.u16 %r546,%r545,0; @ %r546 bra $L102; .loc 1 1312 11 mov.u32 %r109,%r134; $L101: setp.eq.u32 %r547,%r160,1; @ %r547 bra $L103; setp.eq.u32 %r548,%r160,2; @ %r548 bra $L157; mov.u64 %r156,%r795; $L105: mov.u64 %r140,%r156; .loc 1 1329 13 add.u64 %r156,%r156,-4; .loc 1 1329 15 cvt.u32.u64 %r549,%r159; and.b32 %r550,%r549,7; add.u32 %r108,%r550,48; .loc 1 1329 13 st.u32 [%r156],%r108; .loc 1 1330 14 shr.u64 %r159,%r159,3; .loc 1 1331 15 setp.ne.u64 %r551,%r159,0; @ %r551 bra $L105; .loc 1 1333 22 set.u32.ne.u32 %r553,%r108,48; neg.s32 %r554,%r553; mov.u32 %r552,%r554; .loc 1 1333 9 mov.u32 %r555,%r109; cvt.u16.u8 %r801,%r555; mov.u16 %r557,%r801; and.b16 %r556,%r557,1; cvt.u32.u16 %r558,%r556; .loc 1 1333 22 cvt.u16.u8 %r801,%r552; mov.u16 %r560,%r801; cvt.u16.u8 %r801,%r558; mov.u16 %r561,%r801; and.b16 %r559,%r560,%r561; cvt.u32.u16 %r562,%r559; cvt.u16.u8 %r563,%r562; setp.ne.u16 %r564,%r563,0; @ %r564 bra $L106; .loc 1 1395 21 sub.u64 %r566,%r795,%r156; shr.s64 %r568,%r566,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r568; mov.u32 %r134,%r109; bra $L107; $L106: .loc 1 1334 13 add.u64 %r199,%r140,-8; mov.u32 %r569,48; st.u32 [%r156+-4],%r569; .loc 1 1395 21 sub.u64 %r571,%r795,%r199; shr.s64 %r573,%r571,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r573; mov.u32 %r134,%r109; .loc 1 1334 13 mov.u64 %r156,%r199; bra $L107; $L161: .loc 1 1312 11 mov.u32 %r109,%r134; $L103: .loc 1 1339 9 setp.gt.u64 %r574,%r159,9; @ %r574 bra $L158; .loc 1 1340 15 cvt.u32.u64 %r575,%r159; add.u32 %r576,%r575,48; .loc 1 1340 13 st.u32 [%frame+156],%r576; .loc 1 1341 7 mov.u32 %r134,%r109; mov.u32 %r163,1; .loc 1 1340 13 add.u64 %r156,%frame,156; .loc 1 1341 7 bra $L107; $L158: .loc 1 1319 7 mov.u64 %r156,%r795; $L108: .loc 1 1347 14 add.u64 %r156,%r156,-4; .loc 1 1347 16 rem.u64 %r578,%r159,10; cvt.u32.u64 %r579,%r578; add.u32 %r580,%r579,48; .loc 1 1347 14 st.u32 [%r156],%r580; mov.u64 %r137,%r159; .loc 1 1366 15 div.u64 %r159,%r159,10; .loc 1 1367 22 setp.gt.u64 %r583,%r137,9; @ %r583 bra $L108; .loc 1 1395 21 sub.u64 %r585,%r795,%r156; shr.s64 %r587,%r585,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r587; mov.u32 %r134,%r109; bra $L107; $L157: mov.u64 %r156,%r795; $L104: .loc 1 1372 13 add.u64 %r156,%r156,-4; .loc 1 1372 28 and.b64 %r588,%r159,15; .loc 1 1372 20 shl.b64 %r589,%r588,2; add.u64 %r590,%r38,%r589; .loc 1 1372 13 ld.u32 %r591,[%r590]; st.u32 [%r156],%r591; .loc 1 1373 14 shr.u64 %r159,%r159,4; .loc 1 1374 15 setp.ne.u64 %r592,%r159,0; @ %r592 bra $L104; .loc 1 1395 21 sub.u64 %r594,%r795,%r156; shr.s64 %r596,%r594,2; .loc 1 1395 9 cvt.u32.u64 %r163,%r596; mov.u32 %r134,%r109; bra $L107; $L102: .loc 1 1392 32 setp.ne.u32 %r597,%r160,0; @ %r597 bra $L159; .loc 1 1392 55 and.b32 %r163,%r109,1; .loc 1 1392 45 setp.eq.u32 %r598,%r163,0; @ %r598 bra $L160; .loc 1 1393 32 mov.u32 %r599,48; st.u32 [%frame+156],%r599; mov.u32 %r158,%r160; add.u64 %r156,%frame,156; bra $L107; $L159: mov.u32 %r158,0; mov.u32 %r163,%r158; .loc 1 1319 7 add.u64 %r156,%frame,160; bra $L107; $L160: mov.u32 %r158,%r160; add.u64 %r156,%frame,160; $L107: .loc 1 1424 10 max.s32 %r161,%r158,%r163; mov.u64 %r167,0; bra $L91; $L252: setp.eq.u32 %r600,%r179,0; @ %r600 bra $L109; $L148: st.u32 [%frame+1232],%r180; $L109: .loc 1 1399 7 setp.eq.u32 %r601,%r155,0; @ %r601 bra $L17; $L149: .loc 1 1403 8 st.u32 [%frame],%r155; .loc 1 1405 9 mov.u32 %r602,0; st.u32 [%frame+1232],%r602; .loc 1 1406 4 mov.u32 %r161,1; .loc 1 1404 9 mov.u32 %r163,%r161; .loc 1 1402 7 mov.u64 %r156,%frame; .loc 1 1406 4 bra $L62; $L154: mov.u32 %r161,%r158; mov.u32 %r163,%r158; mov.u32 %r134,%r109; .loc 1 656 9 mov.u32 %r158,%r504; $L91: .loc 1 1425 6 ld.u32 %r603,[%frame+1232]; setp.eq.u32 %r604,%r603,0; @ %r604 bra $L110; .loc 1 1426 10 add.u32 %r161,%r161,1; $L110: .loc 1 1427 13 and.b32 %r123,%r134,2; .loc 1 1427 6 setp.eq.u32 %r772,%r123,0; @ %r772 bra $L111; .loc 1 1428 10 add.u32 %r161,%r161,2; $L111: .loc 1 1431 14 and.b32 %r124,%r134,132; .loc 1 1432 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1431 6 setp.ne.u32 %r606,%r124,0; @ %r606 bra $L112; .loc 1 1432 4 sub.u32 %r204,%r157,%r161; setp.le.s32 %r607,%r204,0; @ %r607 bra $L112; setp.le.s32 %r608,%r204,16; @ ! %r608 bra $L253; cvta.const.u64 %r771,blanks$1; bra $L113; $L253: cvta.const.u64 %r771,blanks$1; $L117: st.u64 [%r164],%r771; mov.u64 %r610,64; st.u64 [%r164+8],%r610; add.u64 %r252,%r252,64; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r611,%r253,7; @ %r611 bra $L114; add.u64 %r164,%r164,16; bra $L115; $L114: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r616,[%value_in]; } setp.ne.u32 %r617,%r616,0; @ %r617 bra $L116; ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; mov.u64 %r164,%r770; $L115: add.u32 %r204,%r204,-16; setp.gt.s32 %r618,%r204,16; @ %r618 bra $L117; $L113: st.u64 [%r164],%r771; cvt.s64.s32 %r620,%r204; shl.b64 %r127,%r620,2; st.u64 [%r164+8],%r127; add.u64 %r252,%r252,%r127; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r621,%r253,7; @ %r621 bra $L118; add.u64 %r164,%r164,16; bra $L112; $L118: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r626,[%value_in]; } setp.ne.u32 %r627,%r626,0; @ %r627 bra $L116; .loc 1 1436 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1432 4 mov.u64 %r164,%r770; $L112: .loc 1 1435 6 ld.u32 %r628,[%frame+1232]; setp.eq.u32 %r629,%r628,0; @ %r629 bra $L119; .loc 1 1436 4 add.u32 %r253,%r253,1; st.u64 [%r164],%r794; mov.u64 %r631,4; st.u64 [%r164+8],%r631; add.u64 %r252,%r252,4; st.u64 [%frame+1216],%r252; st.u32 [%frame+1208],%r253; setp.gt.s32 %r632,%r253,7; @ %r632 bra $L120; add.u64 %r164,%r164,16; bra $L119; $L120: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r637,[%value_in]; } setp.ne.u32 %r638,%r637,0; @ %r638 bra $L116; .loc 1 1438 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1436 4 mov.u64 %r164,%r770; $L119: .loc 1 1437 6 @ %r772 bra $L121; .loc 1 1438 4 add.u32 %r253,%r253,1; st.u64 [%r164],%r793; mov.u64 %r641,8; st.u64 [%r164+8],%r641; add.u64 %r252,%r252,8; st.u64 [%frame+1216],%r252; st.u32 [%frame+1208],%r253; setp.gt.s32 %r642,%r253,7; @ %r642 bra $L122; add.u64 %r164,%r164,16; bra $L121; $L122: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r647,[%value_in]; } setp.ne.u32 %r648,%r647,0; @ %r648 bra $L116; .loc 1 1442 4 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1438 4 mov.u64 %r164,%r770; $L121: .loc 1 1441 6 setp.ne.u32 %r649,%r124,128; @ %r649 bra $L123; .loc 1 1442 4 sub.u32 %r142,%r157,%r161; setp.le.s32 %r650,%r142,0; @ %r650 bra $L123; setp.le.s32 %r651,%r142,16; @ ! %r651 bra $L254; cvta.const.u64 %r774,zeroes$0; bra $L124; $L254: cvta.const.u64 %r774,zeroes$0; $L127: st.u64 [%r164],%r774; mov.u64 %r653,64; st.u64 [%r164+8],%r653; add.u64 %r252,%r252,64; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r654,%r253,7; @ %r654 bra $L125; add.u64 %r164,%r164,16; bra $L126; $L125: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r659,[%value_in]; } setp.ne.u32 %r660,%r659,0; @ %r660 bra $L116; ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; mov.u64 %r164,%r770; $L126: add.u32 %r142,%r142,-16; setp.gt.s32 %r661,%r142,16; @ %r661 bra $L127; $L124: st.u64 [%r164],%r774; cvt.s64.s32 %r663,%r142; shl.b64 %r133,%r663,2; st.u64 [%r164+8],%r133; add.u64 %r252,%r252,%r133; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r664,%r253,7; @ %r664 bra $L128; add.u64 %r164,%r164,16; bra $L123; $L128: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r669,[%value_in]; } setp.ne.u32 %r670,%r669,0; @ %r670 bra $L116; .loc 1 1445 3 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1442 4 mov.u64 %r164,%r770; $L123: .loc 1 1445 3 sub.u32 %r207,%r158,%r163; setp.le.s32 %r671,%r207,0; @ %r671 bra $L129; setp.le.s32 %r672,%r207,16; @ ! %r672 bra $L255; cvta.const.u64 %r774,zeroes$0; bra $L130; $L255: cvta.const.u64 %r774,zeroes$0; $L133: st.u64 [%r164],%r774; mov.u64 %r674,64; st.u64 [%r164+8],%r674; add.u64 %r252,%r252,64; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r675,%r253,7; @ %r675 bra $L131; add.u64 %r164,%r164,16; bra $L132; $L131: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r680,[%value_in]; } setp.ne.u32 %r681,%r680,0; @ %r681 bra $L116; ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; mov.u64 %r164,%r770; $L132: add.u32 %r207,%r207,-16; setp.gt.s32 %r682,%r207,16; @ %r682 bra $L133; $L130: st.u64 [%r164],%r774; cvt.s64.s32 %r684,%r207; shl.b64 %r138,%r684,2; st.u64 [%r164+8],%r138; add.u64 %r252,%r252,%r138; st.u64 [%frame+1216],%r252; add.u32 %r253,%r253,1; st.u32 [%frame+1208],%r253; setp.gt.s32 %r685,%r253,7; @ %r685 bra $L134; add.u64 %r164,%r164,16; bra $L129; $L134: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r690,[%value_in]; } setp.ne.u32 %r691,%r690,0; @ %r691 bra $L116; .loc 1 1512 3 ld.u64 %r252,[%frame+1216]; ld.u32 %r253,[%frame+1208]; .loc 1 1445 3 mov.u64 %r164,%r770; $L129: .loc 1 1512 3 st.u64 [%r164],%r156; cvt.s64.s32 %r692,%r163; shl.b64 %r141,%r692,2; st.u64 [%r164+8],%r141; add.u64 %r254,%r141,%r252; st.u64 [%frame+1216],%r254; add.u32 %r143,%r253,1; st.u32 [%frame+1208],%r143; setp.gt.s32 %r693,%r143,7; @ %r693 bra $L135; add.u64 %r165,%r164,16; bra $L136; $L135: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r698,[%value_in]; } setp.ne.u32 %r699,%r698,0; @ %r699 bra $L116; .loc 1 1516 4 ld.u64 %r254,[%frame+1216]; .loc 1 1512 3 mov.u64 %r165,%r770; $L136: .loc 1 1515 13 and.b32 %r700,%r134,4; .loc 1 1515 6 setp.eq.u32 %r701,%r700,0; @ %r701 bra $L137; .loc 1 1516 4 sub.u32 %r197,%r157,%r161; setp.le.s32 %r702,%r197,0; @ %r702 bra $L137; ld.u32 %r255,[%frame+1208]; setp.le.s32 %r703,%r197,16; @ ! %r703 bra $L256; cvta.const.u64 %r771,blanks$1; bra $L138; $L256: cvta.const.u64 %r771,blanks$1; $L141: st.u64 [%r165],%r771; mov.u64 %r705,64; st.u64 [%r165+8],%r705; add.u64 %r254,%r254,64; st.u64 [%frame+1216],%r254; add.u32 %r255,%r255,1; st.u32 [%frame+1208],%r255; setp.gt.s32 %r706,%r255,7; @ %r706 bra $L139; add.u64 %r165,%r165,16; bra $L140; $L139: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r711,[%value_in]; } setp.ne.u32 %r712,%r711,0; @ %r712 bra $L116; ld.u64 %r254,[%frame+1216]; ld.u32 %r255,[%frame+1208]; mov.u64 %r165,%r770; $L140: add.u32 %r197,%r197,-16; setp.gt.s32 %r713,%r197,16; @ %r713 bra $L141; $L138: st.u64 [%r165],%r771; cvt.s64.s32 %r715,%r197; shl.b64 %r148,%r715,2; st.u64 [%r165+8],%r148; add.u64 %r254,%r254,%r148; st.u64 [%frame+1216],%r254; add.u32 %r149,%r255,1; st.u32 [%frame+1208],%r149; setp.le.s32 %r716,%r149,7; @ %r716 bra $L137; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r721,[%value_in]; } setp.ne.u32 %r722,%r721,0; @ %r722 bra $L116; .loc 1 1521 3 ld.u64 %r254,[%frame+1216]; $L137: .loc 1 1519 33 max.s32 %r723,%r157,%r161; .loc 1 1519 7 add.u32 %r273,%r273,%r723; .loc 1 1521 3 setp.ne.u64 %r724,%r254,0; @ %r724 bra $L142; $L144: mov.u32 %r725,0; st.u32 [%frame+1208],%r725; .loc 1 1523 20 setp.ne.u64 %r726,%r167,0; @ %r726 bra $L143; .loc 1 1521 3 mov.u64 %r164,%r770; bra $L11; $L142: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r731,[%value_in]; } setp.ne.u32 %r732,%r731,0; @ ! %r732 bra $L144; bra $L116; $L143: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r167; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r164,%r770; bra $L11; $L17: .loc 1 1529 2 ld.u64 %r735,[%frame+1216]; setp.eq.u64 %r736,%r735,0; @ %r736 bra $L145; add.u64 %r740,%frame,1200; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r740; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r741,[%value_in]; } setp.eq.u32 %r742,%r741,0; @ %r742 bra $L145; ld.u16 %r744,[%r275+16]; and.b16 %r743,%r744,64; cvt.s32.s16 %r261,%r743; bra $L16; $L145: ld.u16 %r746,[%r275+16]; and.b16 %r745,%r746,64; cvt.s32.s16 %r261,%r745; bra $L16; $L116: .loc 1 1531 5 setp.ne.u64 %r747,%r167,0; @ %r747 bra $L146; ld.u16 %r749,[%r275+16]; and.b16 %r748,%r749,64; cvt.s32.s16 %r261,%r748; bra $L16; $L146: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r167; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r753,[%r275+16]; and.b16 %r752,%r753,64; cvt.s32.s16 %r261,%r752; $L16: .loc 1 1536 31 setp.ne.u32 %r754,%r261,0; @ ! %r754 bra $L1; bra $L61; $L62: .loc 1 656 9 mov.u32 %r134,%r109; mov.u64 %r167,0; mov.u32 %r158,0; bra $L110; $L68: .loc 1 1311 14 setp.ne.u32 %r756,%r158,-1; @ %r756 bra $L147; bra $L103; $L31: setp.ne.u32 %r757,%r179,0; @ ! %r757 bra $L149; bra $L148; $L147: .loc 1 1312 11 and.b32 %r134,%r109,-129; .loc 1 1320 28 set.u32.ne.u32 %r759,%r158,0; neg.s32 %r760,%r759; mov.u32 %r758,%r760; .loc 1 1320 15 set.u32.ne.u64 %r762,%r159,0; neg.s32 %r763,%r762; mov.u32 %r761,%r763; .loc 1 1320 20 cvt.u16.u8 %r801,%r758; mov.u16 %r765,%r801; cvt.u16.u8 %r801,%r761; mov.u16 %r766,%r801; or.b16 %r764,%r765,%r766; cvt.u32.u16 %r767,%r764; .loc 1 1320 7 cvt.u16.u8 %r768,%r767; setp.ne.u16 %r769,%r768,0; @ %r769 bra $L161; mov.u32 %r158,0; mov.u32 %r163,%r158; .loc 1 1319 7 add.u64 %r156,%frame,160; bra $L107; $L1: .loc 1 1538 1 mov.u32 %value,%r273; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiwprintf .visible .func (.param .u32 %value_out) vfiwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 373 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 375 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1824 0 0 0 644 45651 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __svfiwscanf_r .visible .func (.param .u32 %value_out) __svfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfiwscanf .visible .func (.param .u32 %value_out) vfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfiwscanf .visible .func (.param .u32 %value_out) __svfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfiwscanf_r .visible .func (.param .u32 %value_out) _vfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fgetwc_r .extern .func (.param .u32 %value_out) _fgetwc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _ungetwc_r .extern .func (.param .u32 %value_out) _ungetwc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfiwscanf_r .visible .func (.param .u32 %value_out) __svfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u64 %r26; .reg .u32 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r37; .reg .u32 %r53; .reg .u64 %r65; .reg .u32 %r72; .reg .u32 %r75; .reg .u32 %r90; .reg .u64 %r93; .reg .u64 %r100; .reg .u32 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r130; .reg .u32 %r137; .reg .u64 %r139; .reg .u64 %r141; .reg .u64 %r143; .reg .u64 %r145; .reg .u32 %r146; .reg .u64 %r149; .reg .u64 %r156; .reg .u64 %r167; .reg .u64 %r170; .reg .u32 %r173; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r183; .reg .u32 %r184; .reg .u64 %r186; .reg .u32 %r192; .reg .u32 %r195; .reg .u32 %r196; .reg .u64 %r197; .reg .u64 %r201; .reg .u64 %r203; .reg .u32 %r204; .reg .u64 %r205; .reg .u64 %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u64 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u16 %r220; .reg .u16 %r221; .reg .pred %r222; .reg .u16 %r223; .reg .u32 %r225; .reg .pred %r226; .reg .pred %r227; .reg .u32 %r229; .reg .pred %r230; .reg .u32 %r233; .reg .pred %r234; .reg .u32 %r236; .reg .pred %r237; .reg .pred %r238; .reg .pred %r239; .reg .pred %r240; .reg .pred %r241; .reg .pred %r242; .reg .pred %r243; .reg .pred %r244; .reg .pred %r245; .reg .u32 %r246; .reg .pred %r247; .reg .pred %r248; .reg .pred %r249; .reg .pred %r250; .reg .pred %r251; .reg .pred %r252; .reg .pred %r253; .reg .pred %r254; .reg .pred %r255; .reg .pred %r256; .reg .pred %r257; .reg .pred %r258; .reg .pred %r259; .reg .pred %r260; .reg .pred %r261; .reg .pred %r262; .reg .u32 %r265; .reg .pred %r266; .reg .pred %r267; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u32 %r277; .reg .u16 %r278; .reg .u16 %r279; .reg .u16 %r280; .reg .u32 %r281; .reg .u16 %r282; .reg .pred %r283; .reg .u32 %r284; .reg .pred %r285; .reg .pred %r286; .reg .u32 %r287; .reg .pred %r288; .reg .u32 %r289; .reg .pred %r290; .reg .u64 %r292; .reg .u64 %r293; .reg .u64 %r294; .reg .u64 %r295; .reg .pred %r296; .reg .pred %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .u32 %r302; .reg .u32 %r303; .reg .u16 %r304; .reg .u16 %r305; .reg .u16 %r306; .reg .u32 %r307; .reg .u16 %r308; .reg .pred %r309; .reg .u32 %r310; .reg .u32 %r311; .reg .u32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .u16 %r316; .reg .u16 %r317; .reg .u16 %r318; .reg .u32 %r319; .reg .u16 %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .u32 %r324; .reg .pred %r325; .reg .u64 %r326; .reg .u32 %r327; .reg .pred %r328; .reg .u32 %r329; .reg .pred %r330; .reg .u64 %r331; .reg .u32 %r332; .reg .pred %r333; .reg .u64 %r334; .reg .u32 %r337; .reg .pred %r338; .reg .u32 %r340; .reg .pred %r341; .reg .pred %r344; .reg .u32 %r347; .reg .pred %r348; .reg .pred %r349; .reg .u32 %r353; .reg .u64 %r354; .reg .u64 %r356; .reg .u64 %r362; .reg .pred %r363; .reg .pred %r364; .reg .u32 %r365; .reg .pred %r366; .reg .pred %r368; .reg .u32 %r371; .reg .pred %r372; .reg .pred %r373; .reg .u64 %r375; .reg .u32 %r377; .reg .pred %r378; .reg .u32 %r381; .reg .pred %r382; .reg .pred %r383; .reg .u64 %r388; .reg .pred %r389; .reg .u64 %r393; .reg .pred %r394; .reg .pred %r395; .reg .pred %r396; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .u64 %r406; .reg .pred %r407; .reg .u64 %r411; .reg .pred %r412; .reg .u64 %r413; .reg .u64 %r415; .reg .pred %r416; .reg .u32 %r417; .reg .u32 %r420; .reg .u64 %r421; .reg .u64 %r423; .reg .u64 %r429; .reg .pred %r430; .reg .pred %r431; .reg .u32 %r432; .reg .pred %r433; .reg .u32 %r437; .reg .pred %r438; .reg .pred %r439; .reg .u64 %r444; .reg .pred %r445; .reg .u64 %r449; .reg .pred %r450; .reg .u32 %r452; .reg .pred %r453; .reg .u32 %r454; .reg .pred %r455; .reg .u32 %r458; .reg .u32 %r461; .reg .pred %r462; .reg .pred %r463; .reg .u32 %r465; .reg .pred %r466; .reg .u32 %r467; .reg .pred %r468; .reg .u32 %r471; .reg .u32 %r474; .reg .pred %r475; .reg .pred %r476; .reg .u32 %r478; .reg .pred %r479; .reg .u32 %r480; .reg .u32 %r483; .reg .u64 %r484; .reg .u64 %r486; .reg .u64 %r491; .reg .pred %r492; .reg .pred %r493; .reg .u32 %r494; .reg .pred %r495; .reg .u32 %r499; .reg .pred %r500; .reg .pred %r501; .reg .u32 %r503; .reg .pred %r504; .reg .u32 %r506; .reg .u64 %r507; .reg .pred %r508; .reg .u64 %r509; .reg .u32 %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .u32 %r517; .reg .u32 %r518; .reg .pred %r519; .reg .u64 %r520; .reg .u64 %r521; .reg .u64 %r522; .reg .u64 %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u64 %r533; .reg .u64 %r534; .reg .u64 %r535; .reg .u64 %r536; .reg .pred %r537; .reg .pred %r538; .reg .u32 %r539; .reg .pred %r540; .reg .u32 %r541; .reg .pred %r542; .reg .u32 %r543; .reg .pred %r544; .reg .u64 %r545; .reg .pred %r546; .reg .pred %r547; .reg .u32 %r551; .reg .pred %r552; .reg .u32 %r553; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r559; .reg .u32 %r560; .reg .u32 %r561; .reg .pred %r562; .reg .u32 %r566; .reg .u32 %r567; .reg .pred %r568; .reg .u64 %r572; .reg .u64 %r574; .reg .u64 %r575; .reg .u32 %r576; .reg .pred %r577; .reg .u32 %r578; .reg .pred %r579; .reg .u64 %r580; .reg .u32 %r581; .reg .pred %r582; .reg .u64 %r583; .reg .u32 %r584; .reg .pred %r585; .reg .u64 %r586; .reg .pred %r587; .reg .u64 %r592; .reg .u64 %r597; .reg .u64 %r598; .reg .u64 %r599; .reg .u64 %r600; .reg .u64 %r602; .reg .u32 %r603; .reg .pred %r604; .reg .u16 %r605; .reg .u16 %r606; .reg .pred %r607; .reg .u32 %r612; .reg .u32 %r616; .reg .u32 %r620; .reg .u32 %r624; .reg .u32 %r628; .reg .u32 %r632; .reg .u32 %r636; .reg .u32 %r640; .reg .pred %r641; .reg .u32 %r642; .reg .pred %r643; .reg .pred %r644; .reg .pred %r645; .reg .pred %r647; .reg .pred %r648; .reg .pred %r649; .reg .u64 %r650; .reg .u16 %r651; mov.u64 %r216,%ar0; mov.u64 %r217,%ar1; mov.u64 %r218,%ar2; mov.u64 %r219,%ar3; .loc 1 553 3 ld.u16 %r221,[%r217+16]; and.b16 %r220,%r221,8192; setp.ne.u16 %r222,%r220,0; @ %r222 bra $L2; .loc 1 551 3 ld.u32 %r22,[%r217+172]; .loc 1 553 3 or.b16 %r223,%r221,8192; st.u16 [%r217+16],%r223; or.b32 %r225,%r22,8192; st.u32 [%r217+172],%r225; $L2: .loc 1 560 15 add.u64 %r130,%r218,4; .loc 1 560 9 ld.u32 %r108,[%r218]; .loc 1 561 10 setp.eq.u32 %r226,%r108,0; @ %r226 bra $L131; mov.u64 %r65,0; mov.u32 %r214,0; mov.u32 %r53,%r214; mov.u32 %r215,%r214; mov.u64 %r141,%r65; .loc 1 1115 8 add.u64 %r650,%frame,160; bra $L4; $L132: mov.u64 %r118,%r130; bra $L6; $L139: .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L140: mov.u64 %r118,%r130; bra $L6; $L142: mov.u64 %r118,%r130; bra $L6; $L145: mov.u32 %r53,%r195; mov.u64 %r118,%r130; bra $L6; $L147: mov.u64 %r118,%r130; $L6: .loc 1 560 15 add.u64 %r130,%r118,4; .loc 1 560 9 ld.u32 %r108,[%r118]; .loc 1 561 10 setp.eq.u32 %r227,%r108,0; @ %r227 bra $L1; $L4: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r108; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r229,[%value_in]; } mov.u32 %r28,%r229; .loc 1 563 10 setp.eq.u32 %r230,%r28,0; @ %r230 bra $L5; $L7: .loc 1 565 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r233,[%value_in]; } .loc 1 565 46 setp.eq.u32 %r234,%r233,-1; @ %r234 bra $L132; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r233; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r236,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r237,%r236,0; @ %r237 bra $L7; bra $L264; $L5: .loc 1 571 10 setp.ne.u32 %r238,%r108,37; @ %r238 bra $L9; .loc 1 586 11 ld.u32 %r109,[%r130]; .loc 1 574 13 mov.u32 %r115,%r28; .loc 1 586 11 mov.u64 %r26,%r130; .loc 1 573 13 mov.u64 %r30,0; bra $L10; $L266: .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 606 10 mov.u32 %r115,16; .loc 1 612 8 mov.u64 %r30,0; $L10: .loc 1 586 15 add.u64 %r130,%r26,4; .loc 1 588 7 setp.eq.u32 %r239,%r109,104; @ %r239 bra $L11; setp.gt.s32 %r240,%r109,104; @ %r240 bra $L12; setp.eq.u32 %r241,%r109,76; @ %r241 bra $L13; setp.gt.s32 %r242,%r109,76; @ %r242 bra $L14; setp.eq.u32 %r243,%r109,42; @ %r243 bra $L15; setp.gt.s32 %r244,%r109,42; @ %r244 bra $L16; setp.eq.u32 %r245,%r109,37; @ %r245 bra $L9; bra $L1; $L16: add.u32 %r246,%r109,-48; setp.gt.u32 %r247,%r246,9; @ ! %r247 bra $L265; bra $L1; $L14: setp.eq.u32 %r248,%r109,99; @ %r248 bra $L18; setp.gt.s32 %r249,%r109,99; @ %r249 bra $L19; setp.eq.u32 %r250,%r109,88; @ %r250 bra $L20; setp.eq.u32 %r251,%r109,91; @ %r251 bra $L21; bra $L1; $L19: setp.eq.u32 %r252,%r109,100; @ %r252 bra $L133; bra $L1; $L12: setp.eq.u32 %r253,%r109,111; @ %r253 bra $L134; setp.gt.s32 %r254,%r109,111; @ %r254 bra $L24; setp.eq.u32 %r255,%r109,108; @ %r255 bra $L25; setp.eq.u32 %r256,%r109,110; @ %r256 bra $L26; setp.eq.u32 %r257,%r109,105; @ %r257 bra $L135; bra $L1; $L24: setp.eq.u32 %r258,%r109,115; @ %r258 bra $L136; setp.gt.s32 %r259,%r109,115; @ %r259 bra $L27; setp.eq.u32 %r260,%r109,112; @ %r260 bra $L28; bra $L1; $L27: setp.eq.u32 %r261,%r109,117; @ %r261 bra $L137; setp.eq.u32 %r262,%r109,120; @ %r262 bra $L20; bra $L1; $L9: .loc 1 592 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r265,[%value_in]; } .loc 1 592 7 setp.eq.u32 %r266,%r265,-1; @ %r266 bra $L31; .loc 1 594 7 setp.eq.u32 %r267,%r108,%r265; @ %r267 bra $L30; .loc 1 596 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r265; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r271,[%value_in]; } .loc 1 597 8 bra $L31; $L30: .loc 1 599 9 add.u32 %r53,%r53,1; .loc 1 600 4 mov.u64 %r118,%r130; bra $L6; $L15: .loc 1 604 8 set.u32.ne.u64 %r273,%r30,0; neg.s32 %r274,%r273; mov.u32 %r272,%r274; .loc 1 603 7 set.u32.ne.u32 %r276,%r115,0; neg.s32 %r277,%r276; mov.u32 %r275,%r277; .loc 1 604 8 cvt.u16.u8 %r651,%r272; mov.u16 %r279,%r651; cvt.u16.u8 %r651,%r275; mov.u16 %r280,%r651; or.b16 %r278,%r279,%r280; cvt.u32.u16 %r281,%r278; cvt.u16.u8 %r282,%r281; setp.ne.u16 %r283,%r282,0; @ ! %r283 bra $L266; bra $L1; $L25: .loc 1 609 14 and.b32 %r284,%r115,15; .loc 1 609 7 setp.ne.u32 %r285,%r284,0; @ %r285 bra $L1; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 612 7 setp.ne.u32 %r286,%r109,108; @ %r286 bra $L33; .loc 1 615 14 or.b32 %r115,%r115,2; .loc 1 789 8 ld.u32 %r109,[%r26+8]; .loc 1 614 8 add.u64 %r26,%r26,8; bra $L10; $L33: .loc 1 619 12 or.b32 %r115,%r115,1; .loc 1 586 15 mov.u64 %r26,%r130; bra $L10; $L13: .loc 1 622 14 and.b32 %r287,%r115,15; .loc 1 622 7 setp.ne.u32 %r288,%r287,0; @ %r288 bra $L1; .loc 1 624 10 or.b32 %r115,%r115,2; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 625 4 bra $L10; $L11: .loc 1 637 12 or.b32 %r115,%r115,4; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 638 4 bra $L10; $L265: .loc 1 703 14 and.b32 %r289,%r115,143; .loc 1 703 7 setp.ne.u32 %r290,%r289,0; @ %r290 bra $L1; .loc 1 705 18 shl.b64 %r292,%r30,2; add.u64 %r293,%r292,%r30; add.u64 %r294,%r293,%r293; add.u64 %r126,%r294,-48; .loc 1 705 23 cvt.u64.u32 %r295,%r109; .loc 1 705 10 add.u64 %r30,%r295,%r126; .loc 1 612 8 ld.u32 %r109,[%r26+4]; .loc 1 586 15 mov.u64 %r26,%r130; .loc 1 706 4 bra $L10; $L20: .loc 1 749 10 or.b32 %r115,%r115,512; .loc 1 751 9 mov.u64 %r65,_wcstoul_r; .loc 1 752 9 mov.u32 %r28,16; .loc 1 753 4 bra $L23; $L21: .loc 1 781 8 ld.u32 %r37,[%r26+4]; .loc 1 781 7 setp.ne.u32 %r296,%r37,94; @ %r296 bra $L35; .loc 1 784 8 add.u64 %r130,%r26,8; .loc 1 789 8 ld.u32 %r37,[%r26+8]; .loc 1 783 17 mov.u32 %r28,1; $L35: .loc 1 789 7 setp.ne.u32 %r297,%r37,93; @ %r297 bra $L138; .loc 1 790 9 add.u64 %r139,%r130,4; .loc 1 791 11 ld.u32 %r37,[%r130+4]; bra $L36; $L138: mov.u64 %r139,%r130; $L36: .loc 1 791 24 set.u32.ne.u32 %r299,%r37,93; neg.s32 %r300,%r299; mov.u32 %r298,%r300; set.u32.ne.u32 %r302,%r37,0; neg.s32 %r303,%r302; mov.u32 %r301,%r303; cvt.u16.u8 %r651,%r298; mov.u16 %r305,%r651; cvt.u16.u8 %r651,%r301; mov.u16 %r306,%r651; and.b16 %r304,%r305,%r306; cvt.u32.u16 %r307,%r304; cvt.u16.u8 %r308,%r307; setp.eq.u16 %r309,%r308,0; @ %r309 bra $L37; $L38: .loc 1 792 9 add.u64 %r139,%r139,4; .loc 1 791 11 ld.u32 %r137,[%r139]; .loc 1 791 24 set.u32.ne.u32 %r311,%r137,0; neg.s32 %r312,%r311; mov.u32 %r310,%r312; set.u32.ne.u32 %r314,%r137,93; neg.s32 %r315,%r314; mov.u32 %r313,%r315; cvt.u16.u8 %r651,%r310; mov.u16 %r317,%r651; cvt.u16.u8 %r651,%r313; mov.u16 %r318,%r651; and.b16 %r316,%r317,%r318; cvt.u32.u16 %r319,%r316; cvt.u16.u8 %r320,%r319; setp.ne.u16 %r321,%r320,0; @ %r321 bra $L38; $L37: .loc 1 794 7 add.u64 %r118,%r139,4; .loc 1 965 7 setp.eq.u64 %r322,%r30,0; .loc 1 966 12 selp.u64 %r30,-1,%r30,%r322; .loc 1 991 27 sub.u64 %r375,%r139,%r130; shr.s64 %r120,%r375,2; .loc 1 968 27 and.b32 %r377,%r115,17; .loc 1 968 7 setp.eq.u32 %r378,%r377,17; @ ! %r378 bra $L267; bra $L143; $L18: max.u64 %r110,%r30,1; and.b32 %r173,%r115,1; and.b32 %r204,%r115,16; .loc 1 879 14 setp.ne.u32 %r323,%r173,0; @ %r323 bra $L41; bra $L268; $L28: .loc 1 811 10 or.b32 %r115,%r115,544; .loc 1 813 9 mov.u64 %r65,_wcstoul_r; .loc 1 814 9 mov.u32 %r28,16; .loc 1 815 4 bra $L23; $L26: .loc 1 818 14 and.b32 %r324,%r115,16; .loc 1 818 7 setp.ne.u32 %r325,%r324,0; @ %r325 bra $L139; .loc 1 830 11 add.u64 %r326,%r219,7; and.b64 %r149,%r326,-8; ld.u64 %r197,[%r149]; add.u64 %r219,%r149,8; .loc 1 828 14 and.b32 %r327,%r115,4; .loc 1 828 7 setp.eq.u32 %r328,%r327,0; @ %r328 bra $L43; .loc 1 831 12 st.u16 [%r197],%r53; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L43: .loc 1 833 19 and.b32 %r329,%r115,1; .loc 1 833 12 setp.eq.u32 %r330,%r329,0; @ %r330 bra $L44; .loc 1 836 12 cvt.s64.s32 %r331,%r53; st.u64 [%r197],%r331; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L44: .loc 1 839 19 and.b32 %r332,%r115,2; .loc 1 839 12 setp.eq.u32 %r333,%r332,0; @ %r333 bra $L45; .loc 1 842 13 cvt.s64.s32 %r334,%r53; st.u64 [%r197],%r334; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L45: .loc 1 848 12 st.u32 [%r197],%r53; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L133: .loc 1 725 9 mov.u64 %r65,_wcstol_r; .loc 1 726 9 mov.u32 %r214,10; .loc 1 724 6 mov.u32 %r192,3; bra $L46; $L136: .loc 1 588 7 mov.u32 %r192,2; bra $L46; $L47: .loc 1 863 11 add.u32 %r53,%r53,1; $L46: .loc 1 862 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r337,[%value_in]; } .loc 1 862 47 setp.eq.u32 %r338,%r337,-1; @ %r338 bra $L31; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r337; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r340,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r341,%r340,0; @ %r341 bra $L47; bra $L269; $L41: .loc 1 887 11 setp.ne.u32 %r643,%r204,0; @ %r643 bra $L49; .loc 1 894 5 add.u64 %r145,%r219,7; and.b64 %r143,%r145,-8; add.u64 %r219,%r143,8; ld.u64 %r141,[%r143]; $L49: .loc 1 904 11 mov.u64 %r170,0; bra $L50; $L53: .loc 1 898 8 @ %r643 bra $L51; .loc 1 904 14 st.u32 [%r141],%r347; .loc 1 904 11 add.u64 %r141,%r141,4; $L51: add.u32 %r196,%r196,1; .loc 1 896 28 add.u64 %r170,%r170,1; setp.eq.u64 %r344,%r110,%r170; @ %r344 bra $L52; $L50: cvt.u32.u64 %r196,%r170; .loc 1 896 37 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r347,[%value_in]; } .loc 1 896 28 setp.ne.u32 %r348,%r347,-1; @ %r348 bra $L53; .loc 1 908 11 setp.eq.u32 %r349,%r196,0; @ %r349 bra $L31; $L52: .loc 1 910 14 add.u32 %r53,%r53,%r196; .loc 1 914 11 @ %r643 bra $L140; .loc 1 915 12 add.u32 %r215,%r215,1; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L268: .loc 1 925 11 setp.ne.u32 %r643,%r204,0; @ %r643 bra $L141; .loc 1 932 7 add.u64 %r180,%r219,7; and.b64 %r179,%r180,-8; add.u64 %r219,%r179,8; ld.u64 %r122,[%r179]; bra $L54; $L141: .loc 1 926 7 add.u64 %r122,%frame,168; $L54: .loc 1 934 8 mov.u64 %r354,8; mov.u32 %r353,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r650; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r353; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r354; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r356,[%value_in]; } bra $L55; $L60: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r122; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r371; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r650; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r362,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r363,%r362,-1; @ %r363 bra $L31; .loc 1 941 8 setp.ne.u64 %r364,%r362,0; @ %r364 bra $L56; .loc 1 941 20 ld.u32 %r365,[%frame+160]; setp.eq.u32 %r366,%r365,-4; @ %r366 bra $L57; $L56: .loc 1 942 12 add.u64 %r110,%r110,-1; $L57: .loc 1 943 8 @ %r643 bra $L58; .loc 1 948 13 add.u64 %r122,%r122,%r362; $L58: .loc 1 950 6 add.u32 %r173,%r173,1; .loc 1 935 26 setp.eq.u64 %r368,%r110,0; @ %r368 bra $L59; $L55: .loc 1 935 35 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r371,[%value_in]; } .loc 1 935 26 setp.ne.u32 %r372,%r371,-1; @ %r372 bra $L60; .loc 1 952 11 setp.eq.u32 %r373,%r173,0; @ %r373 bra $L31; $L59: .loc 1 954 14 add.u32 %r53,%r53,%r173; .loc 1 958 11 @ %r643 bra $L142; .loc 1 959 12 add.u32 %r215,%r215,1; .loc 1 586 15 mov.u64 %r118,%r130; bra $L6; $L66: add.u64 %r205,%r205,1; bra $L61; $L143: mov.u64 %r205,0; .loc 1 972 24 setp.eq.u32 %r647,%r28,0; $L61: cvt.u32.u64 %r114,%r205; .loc 1 971 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r381,[%value_in]; } .loc 1 972 24 setp.eq.u32 %r382,%r381,-1; @ %r382 bra $L63; .loc 1 972 8 setp.eq.u64 %r383,%r30,%r205; @ %r383 bra $L64; .loc 1 972 24 @ %r647 bra $L65; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r381; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r388,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r389,%r388,0; @ %r389 bra $L66; bra $L64; $L65: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r381; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r393,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r394,%r393,0; @ %r394 bra $L66; bra $L64; $L63: .loc 1 976 11 setp.eq.u32 %r395,%r114,0; @ ! %r395 bra $L67; bra $L1; $L267: and.b32 %r114,%r115,1; .loc 1 979 12 setp.eq.u32 %r396,%r114,0; @ %r396 bra $L68; .loc 1 989 10 add.u64 %r213,%r219,7; and.b64 %r181,%r213,-8; add.u64 %r219,%r181,8; ld.u64 %r167,[%r181]; mov.u64 %r201,%r167; .loc 1 991 24 setp.eq.u32 %r648,%r28,0; .loc 1 990 14 bra $L69; $L73: .loc 1 993 10 st.u32 [%r201],%r399; add.u64 %r30,%r30,-1; add.u64 %r201,%r201,4; $L69: mov.u64 %r141,%r201; .loc 1 990 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r399,[%value_in]; } .loc 1 991 24 setp.eq.u32 %r400,%r399,-1; @ %r400 bra $L70; .loc 1 991 8 setp.eq.u64 %r401,%r30,0; @ %r401 bra $L71; .loc 1 991 24 @ %r648 bra $L72; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r406,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r407,%r406,0; @ %r407 bra $L73; bra $L71; $L72: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r411,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r412,%r411,0; @ %r412 bra $L73; bra $L71; $L70: .loc 1 1000 14 sub.u64 %r413,%r201,%r167; shr.s64 %r415,%r413,2; .loc 1 1000 10 cvt.u32.u64 %r114,%r415; .loc 1 1001 11 setp.eq.u32 %r416,%r114,0; @ %r416 bra $L1; .loc 1 1003 11 mov.u32 %r417,0; st.u32 [%r201],%r417; .loc 1 1007 17 add.u32 %r215,%r215,1; bra $L67; $L68: and.b32 %r75,%r115,16; .loc 1 1017 11 setp.ne.u32 %r645,%r75,0; @ %r645 bra $L144; .loc 1 1024 7 add.u64 %r113,%r219,7; and.b64 %r111,%r113,-8; add.u64 %r219,%r111,8; ld.u64 %r123,[%r111]; bra $L74; $L144: .loc 1 1018 7 add.u64 %r123,%frame,168; $L74: .loc 1 1026 8 mov.u64 %r421,8; mov.u32 %r420,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r650; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r420; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r421; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r423,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r649,%r28,0; .loc 1 1027 14 bra $L75; $L82: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r437; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r650; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r429,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r430,%r429,-1; @ %r430 bra $L31; .loc 1 1034 8 setp.ne.u64 %r431,%r429,0; @ %r431 bra $L76; .loc 1 1034 20 ld.u32 %r432,[%frame+160]; setp.eq.u32 %r433,%r432,-4; @ %r433 bra $L77; $L76: .loc 1 1035 12 add.u64 %r30,%r30,-1; $L77: .loc 1 1036 8 @ %r645 bra $L78; .loc 1 1038 13 add.u64 %r123,%r123,%r429; $L78: .loc 1 1043 6 add.u32 %r114,%r114,1; $L75: .loc 1 1027 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r437,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r438,%r437,-1; @ %r438 bra $L79; .loc 1 1028 8 setp.eq.u64 %r439,%r30,0; @ %r439 bra $L80; .loc 1 1028 22 @ %r649 bra $L81; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r437; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r444,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r445,%r444,0; @ %r445 bra $L82; bra $L80; $L81: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r437; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r120; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r449,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r450,%r449,0; @ %r450 bra $L82; bra $L80; $L79: .loc 1 1047 11 @ %r645 bra $L67; .loc 1 1049 10 mov.u32 %r452,0; st.u8 [%r123],%r452; .loc 1 1053 14 add.u32 %r215,%r215,1; $L67: .loc 1 1056 10 add.u32 %r53,%r53,%r114; .loc 1 1057 4 bra $L6; $L129: .loc 1 1061 7 setp.ne.u64 %r453,%r30,0; .loc 1 1062 19 selp.u64 %r30,%r30,-1,%r453; .loc 1 1063 27 and.b32 %r454,%r115,17; .loc 1 1063 7 setp.ne.u32 %r455,%r454,17; @ %r455 bra $L84; mov.u64 %r203,%r30; cvt.u32.u64 %r642,%r203; $L86: cvt.u32.u64 %r458,%r203; vsub.u32.u32.u32.add %r195,%r53,%r458,%r642; .loc 1 1065 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r461,[%value_in]; } .loc 1 1066 24 setp.eq.u32 %r462,%r461,-1; @ %r462 bra $L145; .loc 1 1066 8 setp.eq.u64 %r463,%r203,0; @ %r463 bra $L85; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r461; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r465,[%value_in]; } .loc 1 1066 24 add.u64 %r203,%r203,-1; setp.eq.u32 %r466,%r465,0; @ %r466 bra $L86; bra $L85; $L84: .loc 1 1071 19 and.b32 %r467,%r115,1; .loc 1 1071 12 setp.eq.u32 %r468,%r467,0; @ %r468 bra $L87; .loc 1 1081 10 add.u64 %r212,%r219,7; and.b64 %r211,%r212,-8; add.u64 %r219,%r211,8; ld.u64 %r186,[%r211]; .loc 1 1082 14 mov.u64 %r183,%r30; cvt.u32.u64 %r642,%r183; bra $L88; $L91: .loc 1 1085 10 st.u32 [%r186],%r474; add.u64 %r186,%r186,4; $L88: cvt.u32.u64 %r471,%r183; vsub.u32.u32.u32.add %r184,%r53,%r471,%r642; mov.u64 %r141,%r186; .loc 1 1082 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r474,[%value_in]; } .loc 1 1083 24 setp.eq.u32 %r475,%r474,-1; @ %r475 bra $L89; .loc 1 1083 8 setp.eq.u64 %r476,%r183,0; @ %r476 bra $L90; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r474; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r478,[%value_in]; } .loc 1 1083 24 add.u64 %r183,%r183,-1; setp.eq.u32 %r479,%r478,0; @ %r479 bra $L91; bra $L90; $L89: .loc 1 1093 11 mov.u32 %r480,0; st.u32 [%r186],%r480; .loc 1 1097 17 add.u32 %r215,%r215,1; mov.u32 %r53,%r184; mov.u64 %r118,%r130; bra $L6; $L87: .loc 1 1107 18 and.b32 %r72,%r115,16; .loc 1 1107 11 setp.ne.u32 %r644,%r72,0; @ %r644 bra $L146; .loc 1 1114 7 add.u64 %r117,%r219,7; and.b64 %r112,%r117,-8; add.u64 %r219,%r112,8; ld.u64 %r124,[%r112]; bra $L92; $L146: .loc 1 1108 7 add.u64 %r124,%frame,168; $L92: .loc 1 1115 8 mov.u64 %r484,8; mov.u32 %r483,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r650; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r483; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r484; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r486,[%value_in]; } .loc 1 1116 14 bra $L93; $L99: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r124; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r499; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r650; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r491,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r492,%r491,-1; @ %r492 bra $L31; .loc 1 1123 8 setp.ne.u64 %r493,%r491,0; @ %r493 bra $L94; .loc 1 1123 20 ld.u32 %r494,[%frame+160]; setp.eq.u32 %r495,%r494,-4; @ %r495 bra $L95; $L94: .loc 1 1124 12 add.u64 %r30,%r30,-1; $L95: .loc 1 1125 8 @ %r644 bra $L96; .loc 1 1127 13 add.u64 %r124,%r124,%r491; $L96: .loc 1 1132 10 add.u32 %r53,%r53,1; $L93: .loc 1 1116 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r499,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r500,%r499,-1; @ %r500 bra $L97; .loc 1 1117 8 setp.eq.u64 %r501,%r30,0; @ %r501 bra $L98; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r499; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r503,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r504,%r503,0; @ %r504 bra $L99; bra $L98; $L97: .loc 1 1136 11 @ %r644 bra $L147; .loc 1 1138 10 mov.u32 %r506,0; st.u8 [%r124],%r506; .loc 1 1142 14 add.u32 %r215,%r215,1; mov.u64 %r118,%r130; bra $L6; $L271: .loc 1 1150 19 add.u64 %r507,%r30,-1; .loc 1 1150 7 setp.le.u64 %r508,%r507,38; .loc 1 1151 12 selp.u64 %r30,%r30,39,%r508; .loc 1 1152 10 or.b32 %r116,%r115,1408; mov.u64 %r31,%frame; shl.b64 %r509,%r30,2; add.u64 %r119,%r509,%frame; $L117: mov.u64 %r141,%r31; .loc 1 1155 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r217; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r512,[%value_in]; } setp.gt.u32 %r513,%r512,57; @ %r513 bra $L101; setp.gt.u32 %r514,%r512,55; @ %r514 bra $L102; setp.eq.u32 %r515,%r512,48; @ %r515 bra $L103; setp.gt.u32 %r516,%r512,48; @ %r516 bra $L104; add.u32 %r517,%r512,-43; and.b32 %r518,%r517,-3; setp.eq.u32 %r519,%r518,0; @ ! %r519 bra $L106; bra $L105; $L104: .loc 1 1191 19 cvta.const.u64 %r520,basefix$0; cvt.s64.s32 %r521,%r214; add.u64 %r522,%r521,%r521; add.u64 %r523,%r520,%r522; ld.s16 %r214,[%r523]; .loc 1 1192 11 and.b32 %r116,%r116,-897; .loc 1 1193 5 bra $L107; $L101: setp.gt.u32 %r524,%r512,102; @ %r524 bra $L108; setp.gt.u32 %r525,%r512,96; @ %r525 bra $L109; setp.gt.u32 %r526,%r512,70; @ %r526 bra $L110; setp.gt.u32 %r527,%r512,64; @ ! %r527 bra $L106; bra $L109; $L110: setp.eq.u32 %r528,%r512,88; @ %r528 bra $L111; bra $L106; $L108: setp.eq.u32 %r529,%r512,120; @ %r529 bra $L111; bra $L270; $L103: .loc 1 1172 8 setp.ne.u32 %r530,%r214,0; @ %r530 bra $L113; .loc 1 1175 15 or.b32 %r116,%r116,512; .loc 1 1174 14 mov.u32 %r214,8; $L113: .loc 1 1177 15 and.b32 %r531,%r116,1024; .loc 1 1177 8 setp.eq.u32 %r532,%r531,0; @ %r532 bra $L114; .loc 1 1178 13 and.b32 %r116,%r116,-1409; bra $L107; $L114: .loc 1 1180 13 and.b32 %r116,%r116,-897; bra $L107; $L102: .loc 1 1198 19 cvta.const.u64 %r533,basefix$0; cvt.s64.s32 %r534,%r214; add.u64 %r535,%r534,%r534; add.u64 %r536,%r533,%r535; ld.s16 %r214,[%r536]; .loc 1 1199 8 setp.le.s32 %r537,%r214,8; @ %r537 bra $L106; .loc 1 1201 11 and.b32 %r116,%r116,-897; .loc 1 1202 5 bra $L107; $L109: .loc 1 1218 8 setp.le.s32 %r538,%r214,10; @ %r538 bra $L106; .loc 1 1220 11 and.b32 %r116,%r116,-897; .loc 1 1221 5 bra $L107; $L105: .loc 1 1226 15 and.b32 %r539,%r116,128; .loc 1 1226 8 setp.eq.u32 %r540,%r539,0; @ %r540 bra $L106; .loc 1 1228 15 and.b32 %r146,%r116,-129; .loc 1 1229 15 or.b32 %r116,%r146,65536; .loc 1 1230 9 bra $L107; $L111: .loc 1 1237 16 and.b32 %r541,%r116,512; .loc 1 1237 8 setp.eq.u32 %r542,%r541,0; @ %r542 bra $L106; .loc 1 1237 52 and.b32 %r543,%r116,65536; .loc 1 1237 41 setp.ne.u32 %r544,%r543,0; selp.u64 %r125,8,4,%r544; add.u64 %r545,%frame,%r125; .loc 1 1237 25 setp.ne.u64 %r546,%r31,%r545; @ %r546 bra $L106; .loc 1 1240 15 and.b32 %r116,%r116,-513; .loc 1 1239 14 mov.u32 %r214,16; .loc 1 1241 9 bra $L107; $L270: .loc 1 1250 11 setp.eq.u32 %r547,%r512,-1; @ %r547 bra $L116; $L106: .loc 1 1251 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r512; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r551,[%value_in]; } bra $L116; $L107: add.u64 %r31,%r31,4; .loc 1 1257 13 st.u32 [%r141],%r512; .loc 1 1153 18 setp.ne.u64 %r552,%r31,%r119; @ %r552 bra $L117; .loc 1 1257 10 mov.u64 %r141,%r31; $L116: .loc 1 1267 14 and.b32 %r553,%r116,256; .loc 1 1267 7 setp.eq.u32 %r554,%r553,0; @ %r554 bra $L118; .loc 1 1269 11 setp.ge.u64 %r555,%frame,%r31; @ %r555 bra $L1; .loc 1 1270 3 ld.u32 %r559,[%r31+-4]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r559; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r560,[%value_in]; } bra $L1; $L118: .loc 1 1273 9 ld.u32 %r90,[%r31+-4]; .loc 1 1274 23 and.b32 %r561,%r90,-33; .loc 1 1274 7 setp.ne.u32 %r562,%r561,88; @ %r562 bra $L119; .loc 1 1276 8 add.u64 %r141,%r31,-4; .loc 1 1277 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r90; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r566,[%value_in]; } $L119: .loc 1 1279 15 and.b32 %r567,%r116,16; .loc 1 1279 7 setp.ne.u32 %r568,%r567,0; @ %r568 bra $L120; .loc 1 1283 11 st.u32 [%r141],%r567; .loc 1 1284 15 mov.u64 %r572,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r214; call (%value_in),%r65,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r574,[%value_in]; } .loc 1 830 11 add.u64 %r575,%r219,7; and.b64 %r93,%r575,-8; add.u64 %r219,%r93,8; .loc 1 1285 18 and.b32 %r576,%r116,32; .loc 1 1285 11 setp.eq.u32 %r577,%r576,0; @ %r577 bra $L121; .loc 1 1287 12 ld.u64 %r156,[%r93]; .loc 1 1297 11 st.u64 [%r156],%r574; bra $L122; $L121: .loc 1 1306 23 and.b32 %r578,%r116,4; .loc 1 1306 16 setp.eq.u32 %r579,%r578,0; @ %r579 bra $L123; .loc 1 1309 9 ld.u64 %r580,[%r93]; st.u16 [%r580],%r574; bra $L122; $L123: .loc 1 1311 23 and.b32 %r581,%r116,1; .loc 1 1311 16 setp.eq.u32 %r582,%r581,0; @ %r582 bra $L124; .loc 1 1314 9 ld.u64 %r583,[%r93]; st.u64 [%r583],%r574; bra $L122; $L124: .loc 1 1317 23 and.b32 %r584,%r116,2; .loc 1 1317 16 setp.eq.u32 %r585,%r584,0; @ %r585 bra $L125; .loc 1 1320 8 mov.u64 %r586,_wcstoul_r; setp.ne.u64 %r587,%r65,%r586; @ %r587 bra $L126; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r214; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r592,[%value_in]; } .loc 1 1325 10 mov.u64 %r100,%r592; bra $L127; $L126: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r572; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r214; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r597,[%value_in]; } mov.u64 %r100,%r597; $L127: .loc 1 1325 10 ld.u64 %r598,[%r93]; st.u64 [%r598],%r100; bra $L122; $L125: .loc 1 1331 9 ld.u64 %r599,[%r93]; st.u32 [%r599],%r574; $L122: .loc 1 1333 17 add.u32 %r215,%r215,1; $L120: .loc 1 1335 15 sub.u64 %r600,%r141,%frame; shr.s64 %r602,%r600,2; .loc 1 1335 10 cvt.u32.u64 %r603,%r602; add.u32 %r53,%r603,%r53; .loc 1 1336 4 mov.u64 %r118,%r130; bra $L6; $L31: .loc 1 1656 63 setp.eq.u32 %r604,%r215,0; @ %r604 bra $L149; .loc 1 1656 25 ld.u16 %r606,[%r217+16]; and.b16 %r605,%r606,64; setp.ne.u16 %r607,%r605,0; .loc 1 1656 63 selp.u32 %r215,-1,%r215,%r607; bra $L1; $L131: .loc 1 561 10 mov.u32 %r215,%r108; bra $L1; $L149: .loc 1 1656 63 mov.u32 %r215,-1; bra $L1; $L3: $L128: $L264: .loc 1 568 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r233; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r612,[%value_in]; } mov.u64 %r118,%r130; bra $L6; $L64: .loc 1 975 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r381; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r616,[%value_in]; } bra $L63; $L71: .loc 1 999 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r620,[%value_in]; } bra $L70; $L80: .loc 1 1046 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r437; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r624,[%value_in]; } bra $L79; $L85: .loc 1 1069 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r461; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r628,[%value_in]; } mov.u32 %r53,%r195; mov.u64 %r118,%r130; bra $L6; $L90: .loc 1 1092 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r632,[%value_in]; } bra $L89; $L98: .loc 1 1135 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r499; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r636,[%value_in]; } bra $L97; $L269: .loc 1 866 4 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r216; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r337; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r217; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r640,[%value_in]; } .loc 1 872 7 setp.eq.u32 %r641,%r192,2; @ %r641 bra $L129; bra $L271; $L134: .loc 1 588 7 mov.u64 %r65,_wcstoul_r; mov.u32 %r28,8; bra $L23; $L135: .loc 1 731 9 mov.u64 %r65,_wcstol_r; bra $L23; $L137: .loc 1 743 9 mov.u64 %r65,_wcstoul_r; .loc 1 744 9 mov.u32 %r28,10; $L23: .loc 1 588 7 mov.u32 %r214,%r28; mov.u32 %r192,3; bra $L46; $L1: .loc 1 1665 1 mov.u32 %value,%r215; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfiwscanf .visible .func (.param .u32 %value_out) vfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 233 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 235 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L273; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L273; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L273: .loc 1 236 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 237 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfiwscanf .visible .func (.param .u32 %value_out) __svfiwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 244 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 245 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfiwscanf_r .visible .func (.param .u32 %value_out) _vfiwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 255 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L279; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L279; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L279: .loc 1 256 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfiwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 257 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1843 0 0 0 644 85635 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: _vfprintf_r .visible .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfprintf.c" // BEGIN GLOBAL FUNCTION DECL: vfprintf .visible .func (.param .u32 %value_out) vfprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sprint_r .extern .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: zeroes$0 .const .align 1 .u8 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 1 .u8 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[2] = {48,0 }; // BEGIN GLOBAL FUNCTION DEF: _vfprintf_r .visible .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,224; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .f64 %r28; .reg .u64 %r38; .reg .u32 %r42; .reg .u64 %r57; .reg .u32 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r118; .reg .u64 %r119; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r134; .reg .u32 %r136; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r144; .reg .u64 %r148; .reg .u32 %r150; .reg .u64 %r154; .reg .u32 %r155; .reg .u64 %r158; .reg .u32 %r160; .reg .u32 %r163; .reg .u32 %r166; .reg .u32 %r169; .reg .u64 %r172; .reg .u32 %r173; .reg .u64 %r174; .reg .u32 %r176; .reg .u32 %r178; .reg .u32 %r182; .reg .u64 %r185; .reg .u64 %r187; .reg .u32 %r188; .reg .u64 %r190; .reg .u32 %r192; .reg .u64 %r197; .reg .u32 %r198; .reg .u32 %r201; .reg .u32 %r204; .reg .u32 %r206; .reg .u64 %r207; .reg .u64 %r208; .reg .u32 %r210; .reg .u64 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u64 %r220; .reg .u32 %r221; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r231; .reg .u32 %r232; .reg .u64 %r236; .reg .u32 %r237; .reg .u64 %r244; .reg .u32 %r245; .reg .u64 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u32 %r252; .reg .u64 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .u64 %r256; .reg .u64 %r257; .reg .u64 %r258; .reg .u32 %r260; .reg .u64 %r262; .reg .u32 %r266; .reg .u32 %r267; .reg .u32 %r271; .reg .u32 %r272; .reg .u32 %r274; .reg .u64 %r275; .reg .u32 %r277; .reg .u32 %r278; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r284; .reg .u64 %r286; .reg .u32 %r293; .reg .u32 %r295; .reg .u32 %r296; .reg .u64 %r297; .reg .u32 %r298; .reg .u64 %r303; .reg .u32 %r307; .reg .f64 %r308; .reg .u32 %r310; .reg .u32 %r311; .reg .u64 %r314; .reg .u64 %r316; .reg .u64 %r321; .reg .u64 %r325; .reg .u32 %r330; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u64 %r337; .reg .u64 %r338; .reg .u64 %r340; .reg .u64 %r342; .reg .u64 %r344; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r354; .reg .u64 %r355; .reg .u64 %r357; .reg .u64 %r360; .reg .u64 %r362; .reg .u64 %r366; .reg .u64 %r367; .reg .u64 %r368; .reg .u64 %r369; .reg .u32 %r373; .reg .u32 %r375; .reg .u32 %r381; .reg .u32 %r382; .reg .u64 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r388; .reg .u64 %r389; .reg .u32 %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r395; .reg .u32 %r397; .reg .u32 %r398; .reg .u64 %r401; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u64 %r407; .reg .u64 %r408; .reg .u32 %r413; .reg .u32 %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .u64 %r429; .reg .u64 %r431; .reg .pred %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u16 %r436; .reg .u16 %r437; .reg .pred %r438; .reg .u16 %r439; .reg .u32 %r442; .reg .u16 %r443; .reg .u16 %r444; .reg .pred %r445; .reg .u64 %r446; .reg .pred %r447; .reg .u32 %r450; .reg .pred %r451; .reg .u16 %r452; .reg .u16 %r453; .reg .pred %r454; .reg .u16 %r455; .reg .pred %r456; .reg .u32 %r461; .reg .u64 %r462; .reg .u32 %r463; .reg .u32 %r464; .reg .u16 %r465; .reg .u32 %r466; .reg .u32 %r467; .reg .u32 %r468; .reg .u32 %r470; .reg .u32 %r471; .reg .u16 %r472; .reg .u16 %r473; .reg .u16 %r474; .reg .u32 %r475; .reg .u16 %r476; .reg .pred %r477; .reg .u32 %r478; .reg .u16 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r484; .reg .u32 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u16 %r490; .reg .pred %r491; .reg .u64 %r492; .reg .pred %r493; .reg .u64 %r494; .reg .u64 %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u32 %r502; .reg .pred %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .pred %r507; .reg .pred %r508; .reg .pred %r509; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .pred %r517; .reg .pred %r518; .reg .u32 %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .u32 %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r529; .reg .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .pred %r535; .reg .pred %r536; .reg .pred %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .pred %r541; .reg .pred %r542; .reg .pred %r543; .reg .u32 %r544; .reg .pred %r545; .reg .u32 %r546; .reg .pred %r547; .reg .pred %r548; .reg .pred %r549; .reg .pred %r550; .reg .u32 %r551; .reg .u32 %r553; .reg .u32 %r554; .reg .u32 %r555; .reg .pred %r556; .reg .u32 %r558; .reg .u32 %r559; .reg .u32 %r560; .reg .pred %r563; .reg .u16 %r564; .reg .pred %r565; .reg .u32 %r566; .reg .u32 %r567; .reg .pred %r568; .reg .u32 %r569; .reg .u32 %r570; .reg .pred %r571; .reg .u32 %r572; .reg .pred %r573; .reg .u32 %r574; .reg .pred %r575; .reg .u16 %r576; .reg .pred %r579; .reg .pred %r580; .reg .u32 %r581; .reg .u64 %r582; .reg .f64 %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r588; .reg .u32 %r589; .reg .pred %r590; .reg .u64 %r591; .reg .u64 %r592; .reg .u32 %r594; .reg .pred %r595; .reg .u32 %r596; .reg .pred %r597; .reg .pred %r598; .reg .u32 %r599; .reg .u32 %r600; .reg .u32 %r601; .reg .u32 %r602; .reg .u32 %r603; .reg .u32 %r604; .reg .u16 %r605; .reg .u16 %r606; .reg .u16 %r607; .reg .u32 %r608; .reg .u16 %r609; .reg .pred %r610; .reg .u64 %r611; .reg .u64 %r612; .reg .u32 %r613; .reg .pred %r614; .reg .pred %r615; .reg .pred %r616; .reg .u32 %r619; .reg .u64 %r627; .reg .u32 %r628; .reg .u64 %r629; .reg .u64 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u64 %r633; .reg .u32 %r634; .reg .pred %r635; .reg .u64 %r636; .reg .u32 %r638; .reg .u32 %r639; .reg .u32 %r640; .reg .u32 %r641; .reg .u32 %r642; .reg .u32 %r643; .reg .u16 %r644; .reg .u16 %r645; .reg .u16 %r646; .reg .u32 %r647; .reg .u16 %r648; .reg .pred %r649; .reg .pred %r650; .reg .pred %r651; .reg .u32 %r652; .reg .u32 %r653; .reg .pred %r654; .reg .u32 %r656; .reg .u32 %r657; .reg .u16 %r658; .reg .u16 %r659; .reg .pred %r662; .reg .u32 %r663; .reg .u16 %r664; .reg .u16 %r665; .reg .u32 %r666; .reg .pred %r670; .reg .u32 %r672; .reg .pred %r675; .reg .u64 %r681; .reg .u64 %r682; .reg .u64 %r684; .reg .u32 %r685; .reg .u32 %r686; .reg .u16 %r687; .reg .u16 %r688; .reg .pred %r689; .reg .pred %r690; .reg .u32 %r692; .reg .pred %r693; .reg .pred %r694; .reg .pred %r695; .reg .pred %r698; .reg .u32 %r701; .reg .pred %r702; .reg .pred %r706; .reg .u32 %r708; .reg .pred %r709; .reg .u32 %r710; .reg .pred %r711; .reg .u32 %r712; .reg .u64 %r713; .reg .u32 %r714; .reg .pred %r715; .reg .u64 %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u64 %r719; .reg .u32 %r720; .reg .pred %r721; .reg .u32 %r722; .reg .pred %r723; .reg .u32 %r724; .reg .pred %r725; .reg .u32 %r726; .reg .pred %r727; .reg .u16 %r728; .reg .u32 %r729; .reg .u32 %r730; .reg .u32 %r731; .reg .pred %r732; .reg .pred %r733; .reg .u32 %r735; .reg .u64 %r737; .reg .u64 %r738; .reg .pred %r739; .reg .u64 %r740; .reg .u64 %r742; .reg .u32 %r743; .reg .pred %r744; .reg .u32 %r745; .reg .pred %r746; .reg .u32 %r747; .reg .pred %r748; .reg .u16 %r749; .reg .pred %r750; .reg .u32 %r751; .reg .u32 %r752; .reg .pred %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u32 %r756; .reg .pred %r757; .reg .u16 %r758; .reg .u32 %r759; .reg .pred %r760; .reg .pred %r761; .reg .u32 %r762; .reg .u32 %r763; .reg .pred %r764; .reg .u32 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .u32 %r768; .reg .u32 %r769; .reg .u32 %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .u16 %r773; .reg .u32 %r774; .reg .u16 %r775; .reg .pred %r776; .reg .pred %r777; .reg .pred %r778; .reg .u32 %r779; .reg .u16 %r780; .reg .u16 %r781; .reg .u32 %r782; .reg .u16 %r783; .reg .u16 %r784; .reg .u32 %r785; .reg .pred %r787; .reg .u32 %r788; .reg .u16 %r789; .reg .u32 %r790; .reg .u32 %r791; .reg .u32 %r792; .reg .u16 %r793; .reg .u16 %r794; .reg .u32 %r795; .reg .u16 %r796; .reg .u16 %r797; .reg .u16 %r798; .reg .u32 %r799; .reg .u16 %r800; .reg .pred %r801; .reg .u64 %r804; .reg .u32 %r805; .reg .u64 %r808; .reg .pred %r809; .reg .u32 %r810; .reg .u16 %r811; .reg .u16 %r812; .reg .u64 %r814; .reg .u32 %r815; .reg .u16 %r816; .reg .u16 %r817; .reg .pred %r820; .reg .u64 %r823; .reg .u64 %r824; .reg .u64 %r825; .reg .u32 %r826; .reg .pred %r827; .reg .u64 %r830; .reg .pred %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r834; .reg .u32 %r835; .reg .pred %r836; .reg .u32 %r837; .reg .pred %r838; .reg .pred %r840; .reg .pred %r841; .reg .pred %r842; .reg .u64 %r844; .reg .pred %r845; .reg .u32 %r850; .reg .pred %r851; .reg .pred %r852; .reg .pred %r854; .reg .u32 %r859; .reg .pred %r860; .reg .u16 %r861; .reg .u32 %r862; .reg .pred %r863; .reg .u64 %r865; .reg .u32 %r866; .reg .pred %r867; .reg .u32 %r872; .reg .pred %r873; .reg .u64 %r876; .reg .u32 %r877; .reg .pred %r878; .reg .u32 %r883; .reg .pred %r884; .reg .pred %r885; .reg .pred %r886; .reg .pred %r887; .reg .u64 %r889; .reg .pred %r890; .reg .u32 %r895; .reg .pred %r896; .reg .pred %r897; .reg .pred %r899; .reg .u32 %r904; .reg .pred %r905; .reg .pred %r906; .reg .pred %r907; .reg .u64 %r909; .reg .pred %r910; .reg .u32 %r915; .reg .pred %r916; .reg .pred %r917; .reg .pred %r919; .reg .u32 %r924; .reg .pred %r925; .reg .u32 %r926; .reg .pred %r927; .reg .u32 %r928; .reg .pred %r929; .reg .u32 %r934; .reg .pred %r935; .reg .pred %r936; .reg .pred %r937; .reg .u64 %r938; .reg .u64 %r939; .reg .u32 %r940; .reg .pred %r941; .reg .u32 %r946; .reg .pred %r947; .reg .u32 %r948; .reg .pred %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u32 %r952; .reg .pred %r953; .reg .u32 %r958; .reg .pred %r959; .reg .pred %r960; .reg .pred %r961; .reg .u64 %r963; .reg .pred %r964; .reg .u32 %r969; .reg .pred %r970; .reg .pred %r971; .reg .pred %r973; .reg .u32 %r978; .reg .pred %r979; .reg .pred %r980; .reg .u64 %r981; .reg .u64 %r982; .reg .u32 %r983; .reg .pred %r984; .reg .u32 %r989; .reg .pred %r990; .reg .u32 %r991; .reg .pred %r992; .reg .u32 %r993; .reg .pred %r994; .reg .u32 %r995; .reg .pred %r996; .reg .u32 %r1001; .reg .pred %r1002; .reg .pred %r1003; .reg .pred %r1004; .reg .u64 %r1006; .reg .pred %r1007; .reg .u32 %r1012; .reg .pred %r1013; .reg .pred %r1014; .reg .pred %r1016; .reg .u32 %r1021; .reg .pred %r1022; .reg .pred %r1023; .reg .u32 %r1028; .reg .pred %r1029; .reg .pred %r1030; .reg .u32 %r1031; .reg .pred %r1032; .reg .u32 %r1037; .reg .pred %r1038; .reg .u32 %r1039; .reg .pred %r1040; .reg .pred %r1041; .reg .u64 %r1043; .reg .pred %r1044; .reg .u32 %r1049; .reg .pred %r1050; .reg .pred %r1051; .reg .pred %r1053; .reg .u32 %r1058; .reg .pred %r1059; .reg .pred %r1060; .reg .u32 %r1061; .reg .pred %r1062; .reg .u32 %r1063; .reg .pred %r1064; .reg .u32 %r1069; .reg .pred %r1070; .reg .u32 %r1071; .reg .pred %r1072; .reg .u64 %r1073; .reg .u64 %r1074; .reg .u32 %r1075; .reg .pred %r1076; .reg .u32 %r1081; .reg .pred %r1082; .reg .u32 %r1083; .reg .u32 %r1084; .reg .pred %r1085; .reg .pred %r1086; .reg .u64 %r1088; .reg .pred %r1089; .reg .u32 %r1094; .reg .pred %r1095; .reg .pred %r1096; .reg .pred %r1098; .reg .u32 %r1103; .reg .pred %r1104; .reg .u32 %r1105; .reg .pred %r1106; .reg .u32 %r1107; .reg .pred %r1108; .reg .u64 %r1109; .reg .pred %r1110; .reg .u32 %r1115; .reg .pred %r1116; .reg .pred %r1117; .reg .u32 %r1122; .reg .pred %r1123; .reg .pred %r1124; .reg .u64 %r1125; .reg .pred %r1126; .reg .u32 %r1131; .reg .pred %r1132; .reg .pred %r1133; .reg .pred %r1134; .reg .u64 %r1136; .reg .pred %r1137; .reg .u32 %r1142; .reg .pred %r1143; .reg .pred %r1144; .reg .pred %r1146; .reg .u32 %r1151; .reg .pred %r1152; .reg .u64 %r1153; .reg .pred %r1154; .reg .u32 %r1159; .reg .pred %r1160; .reg .pred %r1162; .reg .u32 %r1167; .reg .pred %r1168; .reg .u32 %r1169; .reg .pred %r1170; .reg .pred %r1171; .reg .pred %r1172; .reg .u64 %r1174; .reg .pred %r1175; .reg .u32 %r1180; .reg .pred %r1181; .reg .pred %r1182; .reg .pred %r1184; .reg .u32 %r1189; .reg .pred %r1190; .reg .u32 %r1191; .reg .pred %r1192; .reg .u32 %r1193; .reg .u32 %r1198; .reg .pred %r1199; .reg .u64 %r1200; .reg .pred %r1201; .reg .u64 %r1205; .reg .u32 %r1206; .reg .u16 %r1207; .reg .u16 %r1208; .reg .pred %r1209; .reg .u32 %r1211; .reg .pred %r1212; .reg .pred %r1213; .reg .u64 %r1214; .reg .u32 %r1217; .reg .u64 %r1225; .reg .u32 %r1229; .reg .u64 %r1237; .reg .u32 %r1238; .reg .u16 %r1239; .reg .u32 %r1240; .reg .u32 %r1241; .reg .u32 %r1242; .reg .u32 %r1243; .reg .u32 %r1244; .reg .u32 %r1245; .reg .u16 %r1246; .reg .u16 %r1247; .reg .u16 %r1248; .reg .u32 %r1249; .reg .u16 %r1250; .reg .pred %r1251; .reg .u32 %r1252; .reg .pred %r1253; .reg .u64 %r1254; .reg .u32 %r1255; .reg .pred %r1256; .reg .u32 %r1259; .reg .u32 %r1260; .reg .u64 %r1267; .reg .u64 %r1268; .reg .u64 %r1269; .reg .u32 %r1270; .reg .pred %r1271; .reg .u32 %r1272; .reg .u32 %r1273; .reg .u32 %r1274; .reg .u32 %r1275; .reg .u32 %r1276; .reg .u32 %r1277; .reg .u16 %r1278; .reg .u16 %r1279; .reg .u16 %r1280; .reg .u32 %r1281; .reg .u16 %r1282; .reg .pred %r1283; .reg .u32 %r1284; .reg .pred %r1285; .reg .pred %r1286; .reg .u64 %r1288; .reg .u32 %r1289; .reg .u64 %r1291; .reg .u32 %r1315; .reg .u64 %r1316; .reg .u64 %r1317; .reg .u64 %r1318; .reg .u64 %r1319; .reg .u32 %r1320; .reg .u64 %r1321; .reg .u64 %r1322; .reg .u64 %r1323; .reg .u32 %r1324; .reg .u64 %r1325; .reg .u64 %r1326; .reg .u64 %r1327; .reg .u16 %r1334; mov.u64 %r415,%ar0; mov.u64 %r416,%ar1; mov.u64 %r417,%ar2; mov.u64 %r418,%ar3; .loc 1 685 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r429,[%value_in]; } .loc 1 685 8 ld.u64 %r262,[%r429]; .loc 1 686 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r431,[%value_in]; } .loc 1 848 2 setp.eq.u64 %r432,%r415,0; @ %r432 bra $L2; ld.u32 %r433,[%r415+80]; setp.ne.u32 %r434,%r433,0; @ %r434 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; call __sinit,(%out_arg1); } $L2: .loc 1 851 2 ld.s16 %r26,[%r416+16]; cvt.u16.u32 %r437,%r26; and.b16 %r436,%r437,8192; setp.ne.u16 %r438,%r436,0; @ %r438 bra $L3; .loc 1 849 2 ld.u32 %r24,[%r416+172]; .loc 1 851 2 or.b16 %r439,%r437,8192; cvt.s32.s16 %r26,%r439; st.u16 [%r416+16],%r439; and.b32 %r442,%r24,-8193; st.u32 [%r416+172],%r442; $L3: .loc 1 854 5 cvt.u16.u32 %r444,%r26; and.b16 %r443,%r444,8; setp.eq.u16 %r445,%r443,0; @ %r445 bra $L4; .loc 1 854 6 ld.u64 %r446,[%r416+24]; setp.ne.u64 %r447,%r446,0; @ %r447 bra $L5; $L4: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r450,[%value_in]; } setp.eq.u32 %r451,%r450,0; @ %r451 bra $L6; $L238: .loc 1 856 10 mov.u32 %r414,-1; bra $L1; $L6: .loc 1 861 9 ld.s16 %r26,[%r416+16]; $L5: .loc 1 861 5 cvt.u16.u32 %r453,%r26; and.b16 %r452,%r453,26; setp.ne.u16 %r454,%r452,10; @ %r454 bra $L8; .loc 1 861 60 ld.u16 %r455,[%r416+18]; setp.lt.s16 %r456,%r455,0; @ %r456 bra $L8; .loc 1 864 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r417; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r418; call (%value_in),__sbprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r461,[%value_in]; } mov.u32 %r414,%r461; bra $L1; $L8: .loc 1 883 14 st.u64 [%frame+168],%frame; .loc 1 884 16 mov.u64 %r462,0; st.u64 [%frame+184],%r462; .loc 1 885 17 mov.u32 %r463,0; st.u32 [%frame+176],%r463; .loc 1 696 6 mov.u32 %r66,%r463; .loc 1 688 42 mov.f64 %r28,0d0000000000000000; .loc 1 883 21 mov.u64 %r257,%frame; .loc 1 707 8 mov.u64 %r256,%r462; .loc 1 691 6 mov.u32 %r251,%r66; .loc 1 887 6 mov.u32 %r414,%r66; .loc 1 918 4 add.u64 %r1316,%frame,168; .loc 1 1756 5 add.u64 %r1317,%frame,200; .loc 1 1687 4 add.u64 %r1318,%frame,216; .loc 1 1685 4 add.u64 %r1319,%frame,218; .loc 1 1328 11 cvt.u32.u64 %r1320,%r431; .loc 1 1910 4 add.u64 %r1321,%frame,199; add.u64 %r1322,%frame,202; .loc 1 1916 36 add.u64 %r1323,%frame,201; .loc 1 1340 21 add.u32 %r1324,%r1320,1; .loc 1 1873 11 add.u64 %r1325,%frame,192; add.u64 %r1326,%frame,208; add.u64 %r1327,%frame,212; $L9: .loc 1 914 24 ld.s8 %r266,[%r417]; .loc 1 914 37 cvt.u16.u32 %r465,%r266; set.u32.ne.u16 %r466,%r465,37; neg.s32 %r467,%r466; mov.u32 %r464,%r467; set.u32.ne.u16 %r470,%r465,0; neg.s32 %r471,%r470; mov.u32 %r468,%r471; cvt.u16.u8 %r1334,%r464; mov.u16 %r473,%r1334; cvt.u16.u8 %r1334,%r468; mov.u16 %r474,%r1334; and.b16 %r472,%r473,%r474; cvt.u32.u16 %r475,%r472; cvt.u16.u8 %r476,%r475; setp.eq.u16 %r477,%r476,0; @ %r477 bra $L250; mov.u64 %r119,%r417; $L11: mov.u64 %r354,%r119; .loc 1 915 25 add.u64 %r119,%r119,1; .loc 1 914 24 ld.s8 %r266,[%r119]; .loc 1 914 37 cvt.u16.u32 %r479,%r266; set.u32.ne.u16 %r480,%r479,0; neg.s32 %r481,%r480; mov.u32 %r478,%r481; set.u32.ne.u16 %r484,%r479,37; neg.s32 %r485,%r484; mov.u32 %r482,%r485; cvt.u16.u8 %r1334,%r478; mov.u16 %r487,%r1334; cvt.u16.u8 %r1334,%r482; mov.u16 %r488,%r1334; and.b16 %r486,%r487,%r488; cvt.u32.u16 %r489,%r486; cvt.u16.u8 %r490,%r489; setp.ne.u16 %r491,%r490,0; @ %r491 bra $L11; .loc 1 917 16 sub.u64 %r492,%r119,%r417; .loc 1 917 10 cvt.u32.u64 %r267,%r492; .loc 1 917 6 setp.eq.u32 %r493,%r267,0; @ %r493 bra $L10; .loc 1 918 4 st.u64 [%r257],%r417; cvt.s64.s32 %r38,%r267; st.u64 [%r257+8],%r38; ld.u64 %r495,[%frame+184]; add.u64 %r494,%r495,%r38; st.u64 [%frame+184],%r494; ld.u32 %r496,[%frame+176]; add.u32 %r42,%r496,1; st.u32 [%frame+176],%r42; setp.gt.s32 %r497,%r42,7; @ %r497 bra $L12; add.u64 %r257,%r257,16; bra $L13; $L12: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r502,[%value_in]; } setp.ne.u32 %r503,%r502,0; @ %r503 bra $L14; mov.u64 %r257,%frame; $L13: .loc 1 919 8 add.u32 %r414,%r414,%r267; .loc 1 925 21 ld.s8 %r266,[%r354+1]; bra $L10; $L250: .loc 1 914 37 mov.u64 %r119,%r417; $L10: .loc 1 925 20 setp.eq.u32 %r504,%r266,0; @ %r504 bra $L15; .loc 1 929 6 add.u64 %r417,%r119,1; .loc 1 935 8 mov.u32 %r505,0; st.u8 [%frame+218],%r505; .loc 1 947 14 ld.s8 %r393,[%r119+1]; mov.u32 %r310,0; mov.u32 %r311,%r310; .loc 1 934 8 mov.u32 %r250,-1; .loc 1 933 9 mov.u32 %r249,%r310; .loc 1 931 9 mov.u32 %r247,%r310; .loc 1 1060 6 mov.u32 %r1315,%r310; $L16: .loc 1 947 18 add.u64 %r417,%r417,1; .loc 1 947 12 mov.u32 %r245,%r393; $L17: .loc 1 948 11 setp.eq.u32 %r506,%r245,85; @ %r506 bra $L18; setp.gt.s32 %r507,%r245,85; @ %r507 bra $L19; setp.eq.u32 %r508,%r245,46; @ %r508 bra $L20; setp.gt.s32 %r509,%r245,46; @ %r509 bra $L21; setp.eq.u32 %r510,%r245,42; @ %r510 bra $L22; setp.gt.s32 %r511,%r245,42; @ %r511 bra $L23; setp.eq.u32 %r512,%r245,32; @ %r512 bra $L24; setp.eq.u32 %r513,%r245,35; @ %r513 bra $L25; bra $L374; $L23: setp.eq.u32 %r514,%r245,43; @ %r514 bra $L27; setp.eq.u32 %r515,%r245,45; @ %r515 bra $L28; bra $L29; $L21: setp.eq.u32 %r516,%r245,68; @ %r516 bra $L30; setp.gt.s32 %r517,%r245,68; @ %r517 bra $L31; setp.eq.u32 %r518,%r245,48; @ %r518 bra $L32; add.u32 %r519,%r245,-49; setp.gt.u32 %r520,%r519,8; @ %r520 bra $L29; mov.u64 %r335,%r417; .loc 1 1077 6 mov.u32 %r249,0; add.u32 %r1289,%r245,-48; bra $L33; $L31: .loc 1 948 11 setp.eq.u32 %r521,%r245,76; @ %r521 bra $L34; setp.gt.s32 %r522,%r245,76; @ %r522 bra $L35; and.b32 %r523,%r245,-3; setp.eq.u32 %r524,%r523,69; @ ! %r524 bra $L29; bra $L36; $L35: setp.eq.u32 %r525,%r245,79; @ %r525 bra $L37; bra $L29; $L19: setp.eq.u32 %r526,%r245,110; @ %r526 bra $L38; setp.gt.s32 %r527,%r245,110; @ %r527 bra $L39; setp.gt.s32 %r528,%r245,103; @ %r528 bra $L40; setp.gt.s32 %r529,%r245,100; @ %r529 bra $L36; setp.eq.u32 %r530,%r245,99; @ %r530 bra $L41; setp.eq.u32 %r531,%r245,100; @ %r531 bra $L42; setp.eq.u32 %r532,%r245,88; @ %r532 bra $L43; bra $L29; $L40: setp.eq.u32 %r533,%r245,105; @ %r533 bra $L42; setp.eq.u32 %r534,%r245,108; @ %r534 bra $L44; setp.eq.u32 %r535,%r245,104; @ %r535 bra $L45; bra $L29; $L39: setp.eq.u32 %r536,%r245,115; @ %r536 bra $L46; setp.gt.s32 %r537,%r245,115; @ %r537 bra $L47; setp.eq.u32 %r538,%r245,112; @ %r538 bra $L48; setp.eq.u32 %r539,%r245,113; @ %r539 bra $L49; setp.eq.u32 %r540,%r245,111; @ %r540 bra $L50; bra $L29; $L47: setp.eq.u32 %r541,%r245,117; @ %r541 bra $L51; setp.eq.u32 %r542,%r245,120; @ %r542 bra $L52; bra $L29; $L42: setp.eq.u32 %r543,%r310,0; @ %r543 bra $L54; cvt.u32.u32 %r544,%r311; st.u8 [%frame+218],%r544; bra $L54; $L52: setp.eq.u32 %r545,%r310,0; @ %r545 bra $L55; cvt.u32.u32 %r546,%r311; st.u8 [%frame+218],%r546; $L55: .loc 1 1538 10 cvta.const.u64 %r256,$LC5; bra $L56; $L24: .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 964 7 setp.ne.u32 %r547,%r311,0; selp.u32 %r310,%r310,1,%r547; selp.u32 %r311,%r311,32,%r547; bra $L16; $L25: .loc 1 968 10 or.b32 %r247,%r247,1; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 969 4 bra $L16; $L22: .loc 1 1007 10 add.u64 %r331,%r418,4; ld.u32 %r249,[%r418]; .loc 1 1011 7 setp.lt.s32 %r548,%r249,0; @ %r548 bra $L58; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1007 10 mov.u64 %r418,%r331; bra $L16; $L58: .loc 1 1013 10 neg.s32 %r249,%r249; .loc 1 1007 10 mov.u64 %r418,%r331; $L28: .loc 1 1016 10 or.b32 %r247,%r247,4; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1017 4 bra $L16; $L27: .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1020 4 mov.u32 %r310,1; .loc 1 1019 9 mov.u32 %r311,%r245; .loc 1 1020 4 bra $L16; $L20: .loc 1 1022 18 add.u64 %r286,%r417,1; .loc 1 1022 12 ld.s8 %r245,[%r417]; .loc 1 1022 7 setp.eq.u32 %r549,%r245,42; @ %r549 bra $L59; .loc 1 1061 11 add.u32 %r1289,%r245,-48; setp.le.u32 %r550,%r1289,9; @ %r550 bra $L60; .loc 1 1022 18 mov.u64 %r417,%r286; .loc 1 1060 6 mov.u32 %r250,%r1315; bra $L17; $L59: ld.u32 %r551,[%r418]; max.s32 %r250,%r551,-1; .loc 1 947 14 ld.s8 %r393,[%r417+1]; .loc 1 1052 10 add.u64 %r418,%r418,4; .loc 1 1022 18 mov.u64 %r417,%r286; .loc 1 1058 5 bra $L16; $L60: mov.u64 %r342,%r286; .loc 1 1060 6 mov.u32 %r250,%r1315; $L62: .loc 1 1062 12 shl.b32 %r553,%r250,2; add.u32 %r554,%r553,%r250; add.u32 %r555,%r554,%r554; .loc 1 1062 7 add.u32 %r250,%r555,%r1289; mov.u64 %r282,%r342; add.u64 %r342,%r342,1; mov.u64 %r417,%r342; .loc 1 1063 8 ld.s8 %r245,[%r282]; .loc 1 1061 11 add.u32 %r1289,%r245,-48; setp.le.u32 %r556,%r1289,9; @ %r556 bra $L62; bra $L17; $L32: .loc 1 1073 10 or.b32 %r247,%r247,128; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1074 4 bra $L16; $L33: .loc 1 1079 12 shl.b32 %r558,%r249,2; add.u32 %r559,%r558,%r249; add.u32 %r560,%r559,%r559; .loc 1 1079 7 add.u32 %r249,%r1289,%r560; mov.u64 %r275,%r335; add.u64 %r335,%r335,1; mov.u64 %r417,%r335; .loc 1 1080 8 ld.s8 %r245,[%r275]; .loc 1 1081 13 add.u32 %r1289,%r245,-48; setp.le.u32 %r563,%r1289,9; @ %r563 bra $L33; bra $L17; $L34: .loc 1 1097 10 or.b32 %r247,%r247,8; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1098 4 bra $L16; $L45: .loc 1 1107 11 or.b32 %r247,%r247,64; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1108 4 bra $L16; $L44: .loc 1 1111 8 ld.s8 %r393,[%r417]; .loc 1 1111 7 cvt.u16.u32 %r564,%r393; setp.ne.u16 %r565,%r564,108; @ %r565 bra $L63; .loc 1 1113 11 or.b32 %r247,%r247,32; .loc 1 947 14 ld.s8 %r393,[%r417+1]; .loc 1 1112 8 add.u64 %r417,%r417,1; bra $L16; $L63: .loc 1 1116 11 or.b32 %r247,%r247,16; bra $L16; $L49: .loc 1 1119 10 or.b32 %r247,%r247,32; .loc 1 1022 14 ld.s8 %r393,[%r417]; .loc 1 1120 4 bra $L16; $L41: .loc 1 1178 9 ld.u32 %r566,[%r418]; st.u8 [%frame+128],%r566; .loc 1 1181 9 mov.u32 %r567,0; st.u8 [%frame+218],%r567; .loc 1 1178 11 add.u64 %r418,%r418,4; .loc 1 1182 4 mov.u32 %r166,1; .loc 1 1179 10 mov.u32 %r255,%r166; .loc 1 1162 7 add.u64 %r246,%frame,128; .loc 1 1182 4 bra $L64; $L30: setp.eq.u32 %r568,%r310,0; @ %r568 bra $L65; cvt.u32.u32 %r569,%r311; st.u8 [%frame+218],%r569; $L65: .loc 1 1184 10 or.b32 %r247,%r247,16; $L54: .loc 1 1188 13 and.b32 %r570,%r247,32; setp.eq.u32 %r571,%r570,0; @ %r571 bra $L66; add.u64 %r333,%r418,7; and.b64 %r297,%r333,-8; add.u64 %r418,%r297,8; ld.u64 %r57,[%r297]; mov.u64 %r253,%r57; bra $L67; $L66: and.b32 %r572,%r247,16; setp.eq.u32 %r573,%r572,0; @ %r573 bra $L68; add.u64 %r283,%r418,7; and.b64 %r334,%r283,-8; add.u64 %r418,%r334,8; ld.u64 %r57,[%r334]; mov.u64 %r253,%r57; bra $L67; $L68: .loc 1 1007 10 ld.u32 %r395,[%r418]; add.u64 %r418,%r418,4; .loc 1 1188 13 and.b32 %r574,%r247,64; setp.eq.u32 %r575,%r574,0; @ %r575 bra $L69; cvt.u16.u32 %r576,%r395; cvt.s64.s16 %r253,%r576; .loc 1 1190 8 mov.u64 %r57,%r253; bra $L67; $L69: .loc 1 1188 13 cvt.s64.s32 %r253,%r395; .loc 1 1190 8 mov.u64 %r57,%r253; $L67: .loc 1 1190 7 setp.ge.s64 %r579,%r57,0; @ %r579 bra $L70; .loc 1 1196 12 neg.s64 %r253,%r253; mov.u32 %r260,45; .loc 1 1199 9 mov.u32 %r254,1; bra $L71; $L36: setp.eq.u32 %r580,%r310,0; @ %r580 bra $L72; cvt.u32.u32 %r581,%r311; st.u8 [%frame+218],%r581; $L72: .loc 1 1188 13 add.u64 %r582,%r418,7; and.b64 %r401,%r582,-8; add.u64 %r418,%r401,8; .loc 1 1214 25 ld.f64 %r28,[%r401]; .loc 1 1225 8 abs.f64 %r585,%r28; setp.leu.f64 %r586,%r585,0d7fefffffffffffff; @ %r586 bra $L75; .loc 1 1226 8 setp.lt.f64 %r587,%r28,0d0000000000000000; @ %r587 bra $L76; .loc 1 964 8 ld.s8 %r381,[%frame+218]; bra $L77; $L75: .loc 1 1236 7 setp.nan.f64 %r588,%r28,%r28; @ ! %r588 bra $L375; bra $L78; $L76: .loc 1 1227 11 mov.u32 %r589,45; st.u8 [%frame+218],%r589; mov.u32 %r381,45; $L77: .loc 1 1228 8 setp.le.s32 %r590,%r245,71; @ %r590 bra $L251; .loc 1 1231 9 cvta.const.u64 %r246,$LC1; bra $L80; $L251: .loc 1 1229 9 cvta.const.u64 %r246,$LC0; $L80: .loc 1 1233 11 and.b32 %r248,%r247,-129; .loc 1 1234 5 mov.u32 %r166,3; .loc 1 1232 10 mov.u32 %r255,%r166; .loc 1 932 9 mov.u32 %r250,0; .loc 1 937 8 mov.u32 %r252,%r250; .loc 1 1234 5 bra $L81; $L78: .loc 1 1237 9 mov.b64 %r591,%r28; shr.u64 %r592,%r591,63; cvt.u32.u64 %r594,%r592; .loc 1 1237 8 setp.ne.u32 %r595,%r594,0; @ %r595 bra $L82; .loc 1 964 8 ld.s8 %r381,[%frame+218]; bra $L83; $L82: .loc 1 1238 11 mov.u32 %r596,45; st.u8 [%frame+218],%r596; mov.u32 %r381,45; $L83: .loc 1 1239 8 setp.le.s32 %r597,%r245,71; @ %r597 bra $L252; .loc 1 1242 9 cvta.const.u64 %r246,$LC3; bra $L84; $L252: .loc 1 1240 9 cvta.const.u64 %r246,$LC2; $L84: .loc 1 1244 11 and.b32 %r248,%r247,-129; .loc 1 1245 5 mov.u32 %r166,3; .loc 1 1243 10 mov.u32 %r255,%r166; .loc 1 932 9 mov.u32 %r250,0; .loc 1 937 8 mov.u32 %r252,%r250; .loc 1 1245 5 bra $L81; $L375: .loc 1 1304 32 and.b32 %r398,%r245,-33; .loc 1 1302 7 setp.eq.u32 %r598,%r250,-1; @ %r598 bra $L253; .loc 1 1304 40 set.u32.eq.u32 %r600,%r250,0; neg.s32 %r601,%r600; mov.u32 %r599,%r601; .loc 1 1304 32 set.u32.eq.u32 %r603,%r398,71; neg.s32 %r604,%r603; mov.u32 %r602,%r604; .loc 1 1304 40 cvt.u16.u8 %r1334,%r599; mov.u16 %r606,%r1334; cvt.u16.u8 %r1334,%r602; mov.u16 %r607,%r1334; and.b16 %r605,%r606,%r607; cvt.u32.u16 %r608,%r605; cvt.u16.u8 %r609,%r608; setp.ne.u16 %r610,%r609,0; @ %r610 bra $L86; bra $L85; $L253: .loc 1 1303 10 mov.u32 %r250,6; $L85: .loc 1 1308 10 or.b32 %r248,%r247,256; .loc 1 1807 6 mov.b64 %r611,%r28; shr.u64 %r612,%r611,32; cvt.u32.u64 %r613,%r612; .loc 1 1807 5 setp.ge.s32 %r614,%r613,0; @ %r614 bra $L254; bra $L248; $L267: .loc 1 1305 10 mov.u32 %r250,1; $L248: .loc 1 1808 9 neg.f64 %r308,%r28; .loc 1 1809 9 mov.u32 %r330,45; bra $L87; $L254: mov.f64 %r308,%r28; .loc 1 1811 9 mov.u32 %r330,0; $L87: .loc 1 1860 5 setp.eq.u32 %r615,%r398,70; @ %r615 bra $L88; .loc 1 1867 6 setp.ne.u32 %r616,%r398,69; @ %r616 bra $L89; .loc 1 1868 11 add.u32 %r307,%r250,1; .loc 1 1873 11 mov.u32 %r619,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r308; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r619; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r307; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r627,[%value_in]; } mov.u64 %r246,%r627; setp.eq.u32 %r1285,1,1; bra $L90; $L387: .loc 1 1880 10 ld.u32 %r373,[%frame+212]; bra $L91; $L242: .loc 1 1879 23 mov.u32 %r628,1; sub.u32 %r373,%r628,%r250; .loc 1 1879 12 st.u32 [%frame+212],%r373; $L91: .loc 1 1880 10 cvt.s64.s32 %r629,%r373; .loc 1 1880 7 add.u64 %r630,%r629,%r174; add.u64 %r314,%r1237,%r630; setp.eq.u32 %r1285,1,1; $L240: .loc 1 1882 6 setp.eq.f64 %r631,%r308,0d0000000000000000; @ %r631 bra $L255; .loc 1 1884 14 ld.u64 %r223,[%frame+192]; setp.ge.u64 %r632,%r223,%r314; @ %r632 bra $L92; .loc 1 1885 11 mov.u32 %r634,48; $L93: .loc 1 1885 8 add.u64 %r633,%r223,1; st.u64 [%frame+192],%r633; .loc 1 1885 11 st.u8 [%r223],%r634; .loc 1 1884 14 ld.u64 %r223,[%frame+192]; setp.gt.u64 %r635,%r314,%r223; @ %r635 bra $L93; bra $L92; $L388: .loc 1 1887 16 ld.u64 %r636,[%frame+192]; sub.u64 %r316,%r636,%r246; .loc 1 1887 10 cvt.u32.u64 %r1284,%r316; mov.u32 %r66,%r1284; .loc 1 1314 14 ld.u32 %r252,[%frame+212]; bra $L94; $L255: mov.u64 %r223,%r314; $L92: .loc 1 1887 16 sub.u64 %r316,%r223,%r246; .loc 1 1887 10 cvt.u32.u64 %r66,%r316; mov.u32 %r1284,%r66; .loc 1 1314 14 ld.u32 %r252,[%frame+212]; .loc 1 1313 7 @ %r1285 bra $L95; $L94: .loc 1 1314 8 set.u32.lt.s32 %r639,%r252,-3; neg.s32 %r640,%r639; mov.u32 %r638,%r640; .loc 1 1314 20 set.u32.lt.s32 %r642,%r250,%r252; neg.s32 %r643,%r642; mov.u32 %r641,%r643; cvt.u16.u8 %r1334,%r638; mov.u16 %r645,%r1334; cvt.u16.u8 %r1334,%r641; mov.u16 %r646,%r1334; or.b16 %r644,%r645,%r646; cvt.u32.u16 %r647,%r644; cvt.u16.u8 %r648,%r647; setp.eq.u16 %r649,%r648,0; @ %r649 bra $L96; .loc 1 1315 9 add.u32 %r245,%r245,-2; bra $L97; $L95: .loc 1 1323 7 setp.eq.u32 %r650,%r245,102; @ %r650 bra $L98; $L97: .loc 1 1324 5 add.u32 %r65,%r252,-1; st.u32 [%frame+212],%r65; .loc 1 1903 7 st.u8 [%frame+200],%r245; .loc 1 1904 5 setp.ge.s32 %r651,%r65,0; @ %r651 bra $L256; .loc 1 1905 7 mov.u32 %r652,1; sub.u32 %r65,%r652,%r252; .loc 1 1906 8 mov.u32 %r272,45; bra $L99; $L256: .loc 1 1909 8 mov.u32 %r272,43; $L99: cvt.u32.u32 %r653,%r272; st.u8 [%frame+201],%r653; .loc 1 1911 5 setp.le.s32 %r654,%r65,9; @ %r654 bra $L100; .loc 1 1910 4 mov.u64 %r321,%r1321; $L101: mov.u64 %r355,%r321; .loc 1 1913 9 add.u64 %r321,%r355,-1; .loc 1 1913 11 rem.s32 %r656,%r65,10; mov.u32 %r657,%r656; cvt.u16.u8 %r1334,%r657; mov.u16 %r659,%r1334; add.u16 %r658,%r659,48; st.u8 [%r355+-1],%r658; mov.u32 %r293,%r65; .loc 1 1914 17 div.s32 %r65,%r65,10; .loc 1 1914 24 setp.gt.s32 %r662,%r293,99; @ %r662 bra $L101; .loc 1 1915 8 add.u64 %r228,%r355,-2; .loc 1 1915 10 mov.u32 %r663,%r65; cvt.u16.u8 %r1334,%r663; mov.u16 %r665,%r1334; add.u16 %r664,%r665,48; cvt.u32.u16 %r666,%r664; cvt.s32.s8 %r375,%r666; .loc 1 1915 8 st.u8 [%r321+-1],%r666; .loc 1 1916 12 setp.ge.u64 %r670,%r228,%r1321; @ %r670 bra $L257; mov.u64 %r348,%r1322; $L104: .loc 1 1916 43 add.u64 %r228,%r228,1; .loc 1 1916 39 cvt.u32.u32 %r672,%r375; st.u8 [%r348],%r672; .loc 1 1916 12 add.u64 %r348,%r348,1; setp.ne.u64 %r675,%r228,%r1321; @ %r675 bra $L103; .loc 1 1916 36 sub.u64 %r681,%r1323,%r355; add.u64 %r682,%r1322,%r681; .loc 1 1923 12 sub.u64 %r684,%r682,%r1317; cvt.u32.u64 %r251,%r684; bra $L102; $L103: .loc 1 1916 41 ld.s8 %r375,[%r228]; bra $L104; $L100: .loc 1 1920 9 mov.u32 %r685,48; st.u8 [%frame+202],%r685; .loc 1 1921 10 mov.u32 %r686,%r65; cvt.u16.u8 %r1334,%r686; mov.u16 %r688,%r1334; add.u16 %r687,%r688,48; st.u8 [%frame+203],%r687; .loc 1 1921 8 mov.u32 %r251,4; bra $L102; $L257: .loc 1 1916 12 mov.u32 %r251,2; $L102: .loc 1 1326 10 add.u32 %r255,%r251,%r1284; .loc 1 1327 8 setp.gt.s32 %r689,%r1284,1; @ %r689 bra $L105; and.b32 %r252,%r247,1; .loc 1 1327 18 setp.ne.u32 %r690,%r252,0; @ %r690 bra $L105; .loc 1 1673 10 max.s32 %r166,%r255,0; bra $L106; $L105: .loc 1 1328 11 add.u32 %r255,%r1320,%r255; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 937 8 mov.u32 %r252,0; bra $L106; $L98: and.b32 %r692,%r247,1; or.b32 %r397,%r692,%r250; .loc 1 1334 9 setp.gt.s32 %r693,%r252,0; @ %r693 bra $L107; bra $L376; $L96: .loc 1 1342 15 setp.le.s32 %r694,%r1284,%r252; @ %r694 bra $L109; bra $L377; $L107: .loc 1 1336 16 setp.eq.u32 %r695,%r397,0; @ %r695 bra $L258; .loc 1 1337 13 vadd.u32.u32.u32.add %r255,%r250,%r252,%r1320; .loc 1 1673 10 max.s32 %r166,%r255,0; bra $L106; $L376: .loc 1 1339 20 setp.eq.u32 %r698,%r397,0; @ %r698 bra $L259; .loc 1 1340 21 add.u32 %r255,%r1324,%r250; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1339 12 bra $L106; $L109: .loc 1 1344 9 and.b32 %r701,%r247,1; setp.ne.u32 %r702,%r701,0; @ %r702 bra $L112; .loc 1 1673 10 max.s32 %r166,%r252,0; mov.u32 %r255,%r252; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L112: .loc 1 1345 12 add.u32 %r255,%r1320,%r252; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L377: .loc 1 1347 18 add.u32 %r255,%r1320,%r1284; .loc 1 1348 9 setp.le.s32 %r706,%r252,0; @ %r706 bra $L113; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L113: .loc 1 1349 17 mov.u32 %r708,1; .loc 1 1349 12 vsub.u32.u32.u32.add %r255,%r708,%r252,%r255; .loc 1 1673 10 max.s32 %r166,%r255,0; .loc 1 1317 9 mov.u32 %r245,103; bra $L106; $L258: mov.u32 %r166,%r252; .loc 1 1314 14 mov.u32 %r255,%r252; bra $L106; $L259: mov.u32 %r166,1; .loc 1 1339 12 mov.u32 %r255,%r166; $L106: .loc 1 1372 7 setp.eq.u32 %r709,%r330,0; @ %r709 bra $L114; .loc 1 1373 10 mov.u32 %r710,45; st.u8 [%frame+218],%r710; .loc 1 932 9 mov.u32 %r250,0; bra $L115; $L38: setp.eq.u32 %r711,%r310,0; @ %r711 bra $L116; cvt.u32.u32 %r712,%r311; st.u8 [%frame+218],%r712; $L116: .loc 1 1188 13 add.u64 %r713,%r418,7; and.b64 %r407,%r713,-8; ld.u64 %r408,[%r407]; add.u64 %r418,%r407,8; .loc 1 1387 14 and.b32 %r714,%r247,32; .loc 1 1387 7 setp.eq.u32 %r715,%r714,0; @ %r715 bra $L117; .loc 1 1388 34 cvt.s64.s32 %r716,%r414; st.u64 [%r408],%r716; bra $L9; $L117: .loc 1 1391 14 and.b32 %r717,%r247,16; .loc 1 1391 7 setp.eq.u32 %r718,%r717,0; @ %r718 bra $L119; .loc 1 1392 34 cvt.s64.s32 %r719,%r414; st.u64 [%r408],%r719; bra $L9; $L119: .loc 1 1393 19 and.b32 %r720,%r247,64; .loc 1 1393 12 setp.eq.u32 %r721,%r720,0; @ %r721 bra $L120; .loc 1 1394 35 st.u16 [%r408],%r414; bra $L9; $L120: .loc 1 1400 33 st.u32 [%r408],%r414; bra $L9; $L37: .loc 1 1403 10 or.b32 %r247,%r247,16; $L50: .loc 1 1406 13 and.b32 %r722,%r247,32; setp.eq.u32 %r723,%r722,0; @ %r723 bra $L121; add.u64 %r67,%r418,7; and.b64 %r347,%r67,-8; add.u64 %r418,%r347,8; ld.u64 %r253,[%r347]; .loc 1 1407 9 mov.u32 %r254,0; bra $L122; $L121: .loc 1 1406 13 and.b32 %r724,%r247,16; setp.eq.u32 %r725,%r724,0; @ %r725 bra $L123; add.u64 %r338,%r418,7; and.b64 %r337,%r338,-8; add.u64 %r418,%r337,8; ld.u64 %r253,[%r337]; .loc 1 1407 9 mov.u32 %r254,%r722; bra $L122; $L123: .loc 1 1007 10 ld.u32 %r402,[%r418]; add.u64 %r418,%r418,4; .loc 1 1406 13 and.b32 %r726,%r247,64; setp.eq.u32 %r727,%r726,0; @ %r727 bra $L124; cvt.u16.u32 %r728,%r402; cvt.u64.u16 %r253,%r728; .loc 1 1407 9 mov.u32 %r254,%r724; bra $L122; $L124: .loc 1 1406 13 cvt.u64.u32 %r253,%r402; .loc 1 1407 9 mov.u32 %r254,%r726; bra $L122; $L48: .loc 1 1421 25 add.u64 %r369,%r418,7; and.b64 %r362,%r369,-8; add.u64 %r418,%r362,8; ld.u64 %r253,[%r362]; .loc 1 1424 10 or.b32 %r247,%r247,2; .loc 1 1425 10 mov.u32 %r729,48; st.u8 [%frame+216],%r729; .loc 1 1426 10 mov.u32 %r730,120; st.u8 [%frame+217],%r730; .loc 1 1423 10 cvta.const.u64 %r256,$LC5; .loc 1 1422 9 mov.u32 %r254,2; .loc 1 1426 15 mov.u32 %r245,120; .loc 1 1427 4 bra $L122; $L46: .loc 1 1432 7 add.u64 %r367,%r418,7; and.b64 %r368,%r367,-8; add.u64 %r418,%r368,8; ld.u64 %r246,[%r368]; .loc 1 1436 9 mov.u32 %r731,0; st.u8 [%frame+218],%r731; .loc 1 1442 7 setp.ne.u64 %r732,%r246,0; @ %r732 bra $L125; .loc 1 1444 39 min.u32 %r255,%r250,6; mov.u32 %r166,%r255; .loc 1 1443 8 cvta.const.u64 %r246,$LC6; bra $L64; $L125: .loc 1 1511 7 setp.eq.u32 %r733,%r250,-1; @ %r733 bra $L126; .loc 1 1517 15 cvt.s64.s32 %r737,%r250; mov.u32 %r735,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r246; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r735; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r737; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r738,[%value_in]; } .loc 1 1519 8 setp.ne.u64 %r739,%r738,0; @ %r739 bra $L127; .loc 1 1674 7 ld.s8 %r381,[%frame+218]; mov.u32 %r166,%r250; mov.u32 %r255,%r250; mov.u32 %r248,%r247; .loc 1 932 9 mov.u32 %r250,%r735; .loc 1 937 8 mov.u32 %r252,%r250; bra $L81; $L127: .loc 1 1520 15 sub.u64 %r740,%r738,%r246; .loc 1 1520 11 cvt.u32.u64 %r255,%r740; .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 1673 10 max.s32 %r166,%r255,0; mov.u32 %r248,%r247; .loc 1 932 9 mov.u32 %r250,%r735; .loc 1 937 8 mov.u32 %r252,%r250; bra $L81; $L126: .loc 1 1524 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r246; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r742,[%value_in]; } .loc 1 1524 10 cvt.u32.u64 %r255,%r742; .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 1673 10 max.s32 %r166,%r255,0; mov.u32 %r248,%r247; .loc 1 932 9 mov.u32 %r250,0; .loc 1 937 8 mov.u32 %r252,%r250; bra $L81; $L18: .loc 1 1528 10 or.b32 %r247,%r247,16; $L51: .loc 1 1531 13 and.b32 %r743,%r247,32; setp.eq.u32 %r744,%r743,0; @ %r744 bra $L128; add.u64 %r357,%r418,7; and.b64 %r216,%r357,-8; add.u64 %r418,%r216,8; ld.u64 %r253,[%r216]; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L128: .loc 1 1531 13 and.b32 %r745,%r247,16; setp.eq.u32 %r746,%r745,0; @ %r746 bra $L129; add.u64 %r340,%r418,7; and.b64 %r344,%r340,-8; add.u64 %r418,%r344,8; ld.u64 %r253,[%r344]; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L129: .loc 1 1007 10 ld.u32 %r403,[%r418]; add.u64 %r418,%r418,4; .loc 1 1531 13 and.b32 %r747,%r247,64; setp.eq.u32 %r748,%r747,0; @ %r748 bra $L130; cvt.u16.u32 %r749,%r403; cvt.u64.u16 %r253,%r749; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L130: .loc 1 1531 13 cvt.u64.u32 %r253,%r403; .loc 1 1532 9 mov.u32 %r254,1; bra $L122; $L43: setp.eq.u32 %r750,%r310,0; @ %r750 bra $L131; cvt.u32.u32 %r751,%r311; st.u8 [%frame+218],%r751; $L131: .loc 1 1535 10 cvta.const.u64 %r256,$LC4; $L56: .loc 1 1539 17 and.b32 %r752,%r247,32; setp.eq.u32 %r753,%r752,0; @ %r753 bra $L132; add.u64 %r360,%r418,7; and.b64 %r349,%r360,-8; add.u64 %r418,%r349,8; ld.u64 %r253,[%r349]; bra $L133; $L132: and.b32 %r754,%r247,16; setp.eq.u32 %r755,%r754,0; @ %r755 bra $L134; add.u64 %r366,%r418,7; and.b64 %r303,%r366,-8; add.u64 %r418,%r303,8; ld.u64 %r253,[%r303]; bra $L133; $L134: .loc 1 1007 10 ld.u32 %r404,[%r418]; add.u64 %r418,%r418,4; .loc 1 1539 17 and.b32 %r756,%r247,64; setp.eq.u32 %r757,%r756,0; @ %r757 bra $L135; cvt.u16.u32 %r758,%r404; cvt.u64.u16 %r253,%r758; bra $L133; $L135: cvt.u64.u32 %r253,%r404; $L133: .loc 1 1542 14 and.b32 %r759,%r247,1; .loc 1 1542 7 setp.eq.u32 %r760,%r759,0; @ %r760 bra $L260; .loc 1 1542 20 setp.eq.u64 %r761,%r253,0; @ %r761 bra $L261; .loc 1 1543 11 mov.u32 %r762,48; st.u8 [%frame+216],%r762; .loc 1 1544 11 st.u8 [%frame+217],%r245; .loc 1 1545 11 or.b32 %r247,%r247,2; .loc 1 1540 9 mov.u32 %r254,2; bra $L122; $L260: mov.u32 %r254,2; bra $L122; $L261: mov.u32 %r254,2; $L122: .loc 1 1552 1 mov.u32 %r260,0; $L71: .loc 1 1197 10 cvt.u32.u32 %r763,%r260; st.u8 [%frame+218],%r763; .loc 1 1558 14 setp.eq.u32 %r764,%r250,-1; @ %r764 bra $L136; .loc 1 1559 11 and.b32 %r248,%r247,-129; .loc 1 1567 15 set.u32.ne.u64 %r766,%r253,0; neg.s32 %r767,%r766; mov.u32 %r765,%r767; .loc 1 1567 28 set.u32.ne.u32 %r769,%r250,0; neg.s32 %r770,%r769; mov.u32 %r768,%r770; .loc 1 1567 20 cvt.u16.u8 %r1334,%r765; mov.u16 %r772,%r1334; cvt.u16.u8 %r1334,%r768; mov.u16 %r773,%r1334; or.b16 %r771,%r772,%r773; cvt.u32.u16 %r774,%r771; .loc 1 1567 7 cvt.u16.u8 %r775,%r774; setp.eq.u16 %r776,%r775,0; @ %r776 bra $L137; .loc 1 1559 11 mov.u32 %r247,%r248; $L136: setp.eq.u32 %r777,%r254,1; @ %r777 bra $L138; setp.eq.u32 %r778,%r254,2; @ %r778 bra $L262; mov.u64 %r246,%r1316; $L140: mov.u64 %r325,%r246; .loc 1 1576 13 add.u64 %r246,%r246,-1; .loc 1 1576 15 cvt.u32.u64 %r779,%r253; cvt.u16.u8 %r1334,%r779; mov.u16 %r781,%r1334; and.b16 %r780,%r781,7; cvt.u32.u16 %r782,%r780; cvt.u16.u8 %r1334,%r782; mov.u16 %r784,%r1334; add.u16 %r783,%r784,48; cvt.u32.u16 %r785,%r783; cvt.s32.s8 %r118,%r785; .loc 1 1576 13 st.u8 [%r246],%r785; .loc 1 1577 14 shr.u64 %r253,%r253,3; .loc 1 1578 15 setp.ne.u64 %r787,%r253,0; @ %r787 bra $L140; .loc 1 1580 22 cvt.u16.u32 %r789,%r118; set.u32.ne.u16 %r790,%r789,48; neg.s32 %r791,%r790; mov.u32 %r788,%r791; .loc 1 1580 9 mov.u32 %r792,%r247; cvt.u16.u8 %r1334,%r792; mov.u16 %r794,%r1334; and.b16 %r793,%r794,1; cvt.u32.u16 %r795,%r793; .loc 1 1580 22 cvt.u16.u8 %r1334,%r788; mov.u16 %r797,%r1334; cvt.u16.u8 %r1334,%r795; mov.u16 %r798,%r1334; and.b16 %r796,%r797,%r798; cvt.u32.u16 %r799,%r796; cvt.u16.u8 %r800,%r799; setp.ne.u16 %r801,%r800,0; @ %r801 bra $L141; .loc 1 1644 21 sub.u64 %r804,%r1316,%r246; .loc 1 1644 9 cvt.u32.u64 %r255,%r804; mov.u32 %r248,%r247; bra $L142; $L141: .loc 1 1581 13 add.u64 %r284,%r325,-2; mov.u32 %r805,48; st.u8 [%r246+-1],%r805; .loc 1 1644 21 sub.u64 %r808,%r1316,%r284; .loc 1 1644 9 cvt.u32.u64 %r255,%r808; mov.u32 %r248,%r247; .loc 1 1581 13 mov.u64 %r246,%r284; bra $L142; $L268: .loc 1 1559 11 mov.u32 %r247,%r248; $L138: .loc 1 1586 9 setp.gt.u64 %r809,%r253,9; @ %r809 bra $L263; .loc 1 1587 15 cvt.u32.u64 %r810,%r253; cvt.u16.u8 %r1334,%r810; mov.u16 %r812,%r1334; add.u16 %r811,%r812,48; st.u8 [%frame+167],%r811; .loc 1 1588 7 mov.u32 %r248,%r247; mov.u32 %r255,1; .loc 1 1587 13 add.u64 %r246,%frame,167; .loc 1 1588 7 bra $L142; $L263: .loc 1 1566 7 mov.u64 %r246,%r1316; $L143: .loc 1 1594 14 add.u64 %r246,%r246,-1; .loc 1 1594 16 rem.u64 %r814,%r253,10; cvt.u32.u64 %r815,%r814; cvt.u16.u8 %r1334,%r815; mov.u16 %r817,%r1334; add.u16 %r816,%r817,48; st.u8 [%r246],%r816; mov.u64 %r244,%r253; .loc 1 1615 15 div.u64 %r253,%r253,10; .loc 1 1616 22 setp.gt.u64 %r820,%r244,9; @ %r820 bra $L143; .loc 1 1644 21 sub.u64 %r823,%r1316,%r246; .loc 1 1644 9 cvt.u32.u64 %r255,%r823; mov.u32 %r248,%r247; bra $L142; $L262: mov.u64 %r246,%r1316; $L139: .loc 1 1621 13 add.u64 %r246,%r246,-1; .loc 1 1621 28 and.b64 %r824,%r253,15; .loc 1 1621 20 add.u64 %r825,%r256,%r824; .loc 1 1621 13 ld.u8 %r826,[%r825]; st.u8 [%r246],%r826; .loc 1 1622 14 shr.u64 %r253,%r253,4; .loc 1 1623 15 setp.ne.u64 %r827,%r253,0; @ %r827 bra $L139; .loc 1 1644 21 sub.u64 %r830,%r1316,%r246; .loc 1 1644 9 cvt.u32.u64 %r255,%r830; mov.u32 %r248,%r247; bra $L142; $L137: .loc 1 1641 32 setp.ne.u32 %r831,%r254,0; @ %r831 bra $L264; .loc 1 1641 55 and.b32 %r255,%r247,1; .loc 1 1641 45 setp.eq.u32 %r832,%r255,0; @ %r832 bra $L265; .loc 1 1642 32 mov.u32 %r833,48; st.u8 [%frame+167],%r833; mov.u32 %r250,%r254; add.u64 %r246,%frame,167; bra $L142; $L264: mov.u32 %r250,0; mov.u32 %r255,%r250; .loc 1 1566 7 add.u64 %r246,%frame,168; bra $L142; $L265: mov.u32 %r250,%r254; add.u64 %r246,%frame,168; $L142: .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 1673 10 max.s32 %r166,%r250,%r255; .loc 1 937 8 mov.u32 %r252,0; bra $L81; $L374: setp.eq.u32 %r834,%r310,0; @ %r834 bra $L144; $L244: cvt.u32.u32 %r835,%r311; st.u8 [%frame+218],%r835; $L144: .loc 1 1648 7 setp.eq.u32 %r836,%r245,0; @ %r836 bra $L15; $L245: .loc 1 1652 8 st.u8 [%frame+128],%r245; .loc 1 1654 9 mov.u32 %r837,0; st.u8 [%frame+218],%r837; .loc 1 1655 4 mov.u32 %r166,1; .loc 1 1653 9 mov.u32 %r255,%r166; .loc 1 1651 7 add.u64 %r246,%frame,128; .loc 1 1655 4 bra $L64; $L114: .loc 1 1674 7 ld.s8 %r381,[%frame+218]; .loc 1 932 9 mov.u32 %r250,%r330; $L81: .loc 1 1674 6 setp.eq.u32 %r838,%r381,0; @ %r838 bra $L145; $L115: .loc 1 1675 10 add.u32 %r166,%r166,1; $L145: .loc 1 1676 13 and.b32 %r131,%r248,2; .loc 1 1676 6 setp.eq.u32 %r1286,%r131,0; @ %r1286 bra $L146; .loc 1 1677 10 add.u32 %r166,%r166,2; $L146: .loc 1 1680 14 and.b32 %r132,%r248,132; .loc 1 1681 4 ld.u64 %r383,[%frame+184]; .loc 1 1680 6 setp.ne.u32 %r840,%r132,0; @ %r840 bra $L147; .loc 1 1681 4 sub.u32 %r141,%r249,%r166; setp.le.s32 %r841,%r141,0; @ %r841 bra $L147; ld.u32 %r382,[%frame+176]; setp.le.s32 %r842,%r141,16; @ ! %r842 bra $L378; cvta.const.u64 %r1291,blanks$1; bra $L148; $L378: cvta.const.u64 %r1291,blanks$1; $L151: st.u64 [%r257],%r1291; mov.u64 %r844,16; st.u64 [%r257+8],%r844; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r845,%r382,7; @ %r845 bra $L149; add.u64 %r257,%r257,16; bra $L150; $L149: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r850,[%value_in]; } setp.ne.u32 %r851,%r850,0; @ %r851 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r257,%frame; $L150: add.u32 %r141,%r141,-16; setp.gt.s32 %r852,%r141,16; @ %r852 bra $L151; $L148: st.u64 [%r257],%r1291; cvt.s64.s32 %r134,%r141; st.u64 [%r257+8],%r134; add.u64 %r383,%r383,%r134; st.u64 [%frame+184],%r383; add.u32 %r136,%r382,1; st.u32 [%frame+176],%r136; setp.gt.s32 %r854,%r136,7; @ %r854 bra $L152; add.u64 %r257,%r257,16; bra $L147; $L152: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r859,[%value_in]; } setp.ne.u32 %r860,%r859,0; @ %r860 bra $L14; .loc 1 1685 4 ld.u64 %r383,[%frame+184]; .loc 1 1681 4 mov.u64 %r257,%frame; $L147: .loc 1 1684 6 ld.u8 %r862,[%frame+218]; cvt.s16.s8 %r861,%r862; setp.eq.u16 %r863,%r861,0; @ %r863 bra $L153; .loc 1 1685 4 st.u64 [%r257],%r1319; mov.u64 %r865,1; st.u64 [%r257+8],%r865; add.u64 %r383,%r383,1; st.u64 [%frame+184],%r383; ld.u32 %r866,[%frame+176]; add.u32 %r140,%r866,1; st.u32 [%frame+176],%r140; setp.gt.s32 %r867,%r140,7; @ %r867 bra $L154; add.u64 %r257,%r257,16; bra $L153; $L154: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r872,[%value_in]; } setp.ne.u32 %r873,%r872,0; @ %r873 bra $L14; .loc 1 1687 4 ld.u64 %r383,[%frame+184]; .loc 1 1685 4 mov.u64 %r257,%frame; $L153: .loc 1 1686 6 @ %r1286 bra $L155; .loc 1 1687 4 st.u64 [%r257],%r1318; mov.u64 %r876,2; st.u64 [%r257+8],%r876; add.u64 %r383,%r383,2; st.u64 [%frame+184],%r383; ld.u32 %r877,[%frame+176]; add.u32 %r144,%r877,1; st.u32 [%frame+176],%r144; setp.gt.s32 %r878,%r144,7; @ %r878 bra $L156; add.u64 %r257,%r257,16; bra $L155; $L156: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r883,[%value_in]; } setp.ne.u32 %r884,%r883,0; @ %r884 bra $L14; .loc 1 1691 4 ld.u64 %r383,[%frame+184]; .loc 1 1687 4 mov.u64 %r257,%frame; $L155: .loc 1 1690 6 setp.ne.u32 %r885,%r132,128; @ %r885 bra $L157; .loc 1 1691 4 sub.u32 %r182,%r249,%r166; setp.le.s32 %r886,%r182,0; @ %r886 bra $L157; ld.u32 %r384,[%frame+176]; setp.le.s32 %r887,%r182,16; @ ! %r887 bra $L379; cvta.const.u64 %r1288,zeroes$0; bra $L158; $L379: cvta.const.u64 %r1288,zeroes$0; $L161: st.u64 [%r257],%r1288; mov.u64 %r889,16; st.u64 [%r257+8],%r889; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r890,%r384,7; @ %r890 bra $L159; add.u64 %r257,%r257,16; bra $L160; $L159: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r895,[%value_in]; } setp.ne.u32 %r896,%r895,0; @ %r896 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r384,[%frame+176]; mov.u64 %r257,%frame; $L160: add.u32 %r182,%r182,-16; setp.gt.s32 %r897,%r182,16; @ %r897 bra $L161; $L158: st.u64 [%r257],%r1288; cvt.s64.s32 %r148,%r182; st.u64 [%r257+8],%r148; add.u64 %r383,%r383,%r148; st.u64 [%frame+184],%r383; add.u32 %r150,%r384,1; st.u32 [%frame+176],%r150; setp.gt.s32 %r899,%r150,7; @ %r899 bra $L162; add.u64 %r257,%r257,16; bra $L157; $L162: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r904,[%value_in]; } setp.ne.u32 %r905,%r904,0; @ %r905 bra $L14; .loc 1 1694 3 ld.u64 %r383,[%frame+184]; .loc 1 1691 4 mov.u64 %r257,%frame; $L157: .loc 1 1694 3 sub.u32 %r277,%r250,%r255; setp.le.s32 %r906,%r277,0; @ %r906 bra $L163; ld.u32 %r385,[%frame+176]; setp.le.s32 %r907,%r277,16; @ ! %r907 bra $L380; cvta.const.u64 %r1288,zeroes$0; bra $L164; $L380: cvta.const.u64 %r1288,zeroes$0; $L167: st.u64 [%r257],%r1288; mov.u64 %r909,16; st.u64 [%r257+8],%r909; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r910,%r385,7; @ %r910 bra $L165; add.u64 %r257,%r257,16; bra $L166; $L165: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r915,[%value_in]; } setp.ne.u32 %r916,%r915,0; @ %r916 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r257,%frame; $L166: add.u32 %r277,%r277,-16; setp.gt.s32 %r917,%r277,16; @ %r917 bra $L167; $L164: st.u64 [%r257],%r1288; cvt.s64.s32 %r154,%r277; st.u64 [%r257+8],%r154; add.u64 %r383,%r383,%r154; st.u64 [%frame+184],%r383; add.u32 %r155,%r385,1; st.u32 [%frame+176],%r155; setp.gt.s32 %r919,%r155,7; @ %r919 bra $L168; add.u64 %r257,%r257,16; bra $L163; $L168: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r924,[%value_in]; } setp.ne.u32 %r925,%r924,0; @ %r925 bra $L14; .loc 1 1699 4 ld.u64 %r383,[%frame+184]; .loc 1 1694 3 mov.u64 %r257,%frame; $L163: .loc 1 1698 14 and.b32 %r926,%r248,256; .loc 1 1698 6 setp.ne.u32 %r927,%r926,0; @ %r927 bra $L169; .loc 1 1699 4 st.u64 [%r257],%r246; cvt.s64.s32 %r158,%r255; st.u64 [%r257+8],%r158; add.u64 %r383,%r383,%r158; st.u64 [%frame+184],%r383; ld.u32 %r928,[%frame+176]; add.u32 %r160,%r928,1; st.u32 [%frame+176],%r160; setp.gt.s32 %r929,%r160,7; @ %r929 bra $L170; add.u64 %r257,%r257,16; bra $L171; $L170: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r934,[%value_in]; } setp.ne.u32 %r935,%r934,0; @ %r935 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1699 4 mov.u64 %r257,%frame; bra $L171; $L169: .loc 1 1701 7 setp.le.s32 %r936,%r245,101; @ %r936 bra $L172; .loc 1 1702 8 setp.neu.f64 %r937,%r28,0d0000000000000000; @ %r937 bra $L173; .loc 1 1704 6 cvta.const.u64 %r938,$LC7; st.u64 [%r257],%r938; mov.u64 %r939,1; st.u64 [%r257+8],%r939; add.u64 %r383,%r383,1; st.u64 [%frame+184],%r383; ld.u32 %r940,[%frame+176]; add.u32 %r163,%r940,1; st.u32 [%frame+176],%r163; setp.gt.s32 %r941,%r163,7; @ %r941 bra $L174; add.u64 %r257,%r257,16; bra $L175; $L174: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r946,[%value_in]; } setp.ne.u32 %r947,%r946,0; @ %r947 bra $L14; .loc 1 1706 7 ld.u64 %r383,[%frame+184]; .loc 1 1704 6 mov.u64 %r257,%frame; $L175: .loc 1 1705 9 ld.u32 %r948,[%frame+212]; setp.lt.s32 %r949,%r948,%r66; @ %r949 bra $L176; .loc 1 1705 31 and.b32 %r950,%r248,1; .loc 1 1705 22 setp.eq.u32 %r951,%r950,0; @ %r951 bra $L171; $L176: .loc 1 1706 7 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r383,%r383,%r431; st.u64 [%frame+184],%r383; ld.u32 %r952,[%frame+176]; add.u32 %r169,%r952,1; st.u32 [%frame+176],%r169; setp.gt.s32 %r953,%r169,7; @ %r953 bra $L177; add.u64 %r257,%r257,16; bra $L178; $L177: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r958,[%value_in]; } setp.ne.u32 %r959,%r958,0; @ %r959 bra $L14; .loc 1 1707 7 ld.u64 %r383,[%frame+184]; .loc 1 1706 7 mov.u64 %r257,%frame; $L178: .loc 1 1707 7 add.u32 %r274,%r66,-1; setp.le.s32 %r960,%r274,0; @ %r960 bra $L171; ld.u32 %r391,[%frame+176]; setp.le.s32 %r961,%r274,16; @ ! %r961 bra $L381; cvta.const.u64 %r1288,zeroes$0; bra $L179; $L381: cvta.const.u64 %r1288,zeroes$0; $L182: st.u64 [%r257],%r1288; mov.u64 %r963,16; st.u64 [%r257+8],%r963; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r391,%r391,1; st.u32 [%frame+176],%r391; setp.gt.s32 %r964,%r391,7; @ %r964 bra $L180; add.u64 %r257,%r257,16; bra $L181; $L180: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r969,[%value_in]; } setp.ne.u32 %r970,%r969,0; @ %r970 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r391,[%frame+176]; mov.u64 %r257,%frame; $L181: add.u32 %r274,%r274,-16; setp.gt.s32 %r971,%r274,16; @ %r971 bra $L182; $L179: st.u64 [%r257],%r1288; cvt.s64.s32 %r172,%r274; st.u64 [%r257+8],%r172; add.u64 %r383,%r383,%r172; st.u64 [%frame+184],%r383; add.u32 %r173,%r391,1; st.u32 [%frame+176],%r173; setp.gt.s32 %r973,%r173,7; @ %r973 bra $L183; add.u64 %r257,%r257,16; bra $L171; $L183: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r978,[%value_in]; } setp.ne.u32 %r979,%r978,0; @ %r979 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1707 7 mov.u64 %r257,%frame; bra $L171; $L173: .loc 1 1709 21 ld.u32 %r176,[%frame+212]; .loc 1 1709 15 setp.gt.s32 %r980,%r176,0; @ %r980 bra $L184; .loc 1 1710 6 cvta.const.u64 %r981,$LC7; st.u64 [%r257],%r981; mov.u64 %r982,1; st.u64 [%r257+8],%r982; add.u64 %r383,%r383,1; st.u64 [%frame+184],%r383; ld.u32 %r983,[%frame+176]; add.u32 %r178,%r983,1; st.u32 [%frame+176],%r178; setp.gt.s32 %r984,%r178,7; @ %r984 bra $L185; add.u64 %r257,%r257,16; bra $L186; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r989,[%value_in]; } setp.ne.u32 %r990,%r989,0; @ %r990 bra $L14; .loc 1 1705 15 ld.u32 %r176,[%frame+212]; .loc 1 1706 7 ld.u64 %r383,[%frame+184]; .loc 1 1710 6 mov.u64 %r257,%frame; $L186: .loc 1 1711 15 or.b32 %r991,%r66,%r176; setp.ne.u32 %r992,%r991,0; @ %r992 bra $L187; .loc 1 1711 32 and.b32 %r993,%r248,1; .loc 1 1711 23 setp.ne.u32 %r994,%r993,0; @ %r994 bra $L188; bra $L171; $L187: .loc 1 1712 7 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r389,%r431,%r383; st.u64 [%frame+184],%r389; ld.u32 %r995,[%frame+176]; add.u32 %r390,%r995,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r996,%r390,7; @ %r996 bra $L189; add.u64 %r207,%r257,16; bra $L190; $L189: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1001,[%value_in]; } setp.ne.u32 %r1002,%r1001,0; @ %r1002 bra $L14; .loc 1 1713 7 ld.u32 %r176,[%frame+212]; ld.u64 %r389,[%frame+184]; ld.u32 %r390,[%frame+176]; .loc 1 1712 7 mov.u64 %r207,%frame; $L190: .loc 1 1713 7 setp.ge.s32 %r1003,%r176,0; @ %r1003 bra $L191; neg.s32 %r271,%r176; setp.ge.s32 %r1004,%r176,-16; @ ! %r1004 bra $L382; cvta.const.u64 %r1288,zeroes$0; bra $L192; $L382: cvta.const.u64 %r1288,zeroes$0; $L195: st.u64 [%r207],%r1288; mov.u64 %r1006,16; st.u64 [%r207+8],%r1006; add.u64 %r389,%r389,16; st.u64 [%frame+184],%r389; add.u32 %r390,%r390,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r1007,%r390,7; @ %r1007 bra $L193; add.u64 %r207,%r207,16; bra $L194; $L193: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1012,[%value_in]; } setp.ne.u32 %r1013,%r1012,0; @ %r1013 bra $L14; ld.u64 %r389,[%frame+184]; ld.u32 %r390,[%frame+176]; mov.u64 %r207,%frame; $L194: add.u32 %r271,%r271,-16; setp.gt.s32 %r1014,%r271,16; @ %r1014 bra $L195; $L192: st.u64 [%r207],%r1288; cvt.s64.s32 %r185,%r271; st.u64 [%r207+8],%r185; add.u64 %r389,%r389,%r185; st.u64 [%frame+184],%r389; add.u32 %r390,%r390,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r1016,%r390,7; @ %r1016 bra $L196; add.u64 %r207,%r207,16; bra $L191; $L196: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1021,[%value_in]; } setp.ne.u32 %r1022,%r1021,0; @ %r1022 bra $L14; .loc 1 1714 7 ld.u64 %r389,[%frame+184]; ld.u32 %r390,[%frame+176]; .loc 1 1713 7 mov.u64 %r207,%frame; $L191: .loc 1 1714 7 st.u64 [%r207],%r246; cvt.s64.s32 %r187,%r66; st.u64 [%r207+8],%r187; add.u64 %r383,%r187,%r389; st.u64 [%frame+184],%r383; add.u32 %r188,%r390,1; st.u32 [%frame+176],%r188; setp.gt.s32 %r1023,%r188,7; @ %r1023 bra $L197; add.u64 %r257,%r207,16; bra $L171; $L197: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1028,[%value_in]; } setp.ne.u32 %r1029,%r1028,0; @ %r1029 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1714 7 mov.u64 %r257,%frame; bra $L171; $L184: min.s32 %r27,%r66,%r252; .loc 1 1718 6 setp.le.s32 %r1030,%r27,0; @ %r1030 bra $L198; st.u64 [%r257],%r246; cvt.s64.s32 %r190,%r27; st.u64 [%r257+8],%r190; add.u64 %r383,%r383,%r190; st.u64 [%frame+184],%r383; ld.u32 %r1031,[%frame+176]; add.u32 %r192,%r1031,1; st.u32 [%frame+176],%r192; setp.gt.s32 %r1032,%r192,7; @ %r1032 bra $L199; add.u64 %r257,%r257,16; bra $L198; $L199: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1037,[%value_in]; } setp.ne.u32 %r1038,%r1037,0; @ %r1038 bra $L14; ld.u64 %r383,[%frame+184]; mov.u64 %r257,%frame; $L198: max.s32 %r1039,%r27,0; sub.u32 %r298,%r252,%r1039; setp.le.s32 %r1040,%r298,0; @ %r1040 bra $L200; ld.u32 %r386,[%frame+176]; setp.le.s32 %r1041,%r298,16; @ ! %r1041 bra $L383; cvta.const.u64 %r1288,zeroes$0; bra $L201; $L383: cvta.const.u64 %r1288,zeroes$0; $L204: st.u64 [%r257],%r1288; mov.u64 %r1043,16; st.u64 [%r257+8],%r1043; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r1044,%r386,7; @ %r1044 bra $L202; add.u64 %r257,%r257,16; bra $L203; $L202: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1049,[%value_in]; } setp.ne.u32 %r1050,%r1049,0; @ %r1050 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r257,%frame; $L203: add.u32 %r298,%r298,-16; setp.gt.s32 %r1051,%r298,16; @ %r1051 bra $L204; $L201: st.u64 [%r257],%r1288; cvt.s64.s32 %r197,%r298; st.u64 [%r257+8],%r197; add.u64 %r383,%r383,%r197; st.u64 [%frame+184],%r383; add.u32 %r198,%r386,1; st.u32 [%frame+176],%r198; setp.gt.s32 %r1053,%r198,7; @ %r1053 bra $L205; add.u64 %r257,%r257,16; bra $L200; $L205: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1058,[%value_in]; } setp.ne.u32 %r1059,%r1058,0; @ %r1059 bra $L14; .loc 1 1740 10 ld.u64 %r383,[%frame+184]; .loc 1 1718 6 mov.u64 %r257,%frame; $L200: .loc 1 1739 15 ld.u32 %r201,[%frame+212]; .loc 1 1739 9 setp.lt.s32 %r1060,%r201,%r66; @ %r1060 bra $L206; .loc 1 1739 31 and.b32 %r1061,%r248,1; .loc 1 1739 22 setp.eq.u32 %r1062,%r1061,0; @ %r1062 bra $L207; $L206: .loc 1 1740 10 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r383,%r383,%r431; st.u64 [%frame+184],%r383; ld.u32 %r1063,[%frame+176]; add.u32 %r204,%r1063,1; st.u32 [%frame+176],%r204; setp.gt.s32 %r1064,%r204,7; @ %r1064 bra $L208; add.u64 %r257,%r257,16; bra $L209; $L208: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1069,[%value_in]; } setp.ne.u32 %r1070,%r1069,0; @ %r1070 bra $L14; .loc 1 1741 6 ld.u32 %r201,[%frame+212]; ld.u64 %r383,[%frame+184]; .loc 1 1740 10 mov.u64 %r257,%frame; $L209: .loc 1 1741 6 sub.u32 %r206,%r66,%r201; sub.u32 %r1071,%r66,%r252; min.s32 %r25,%r1071,%r206; setp.le.s32 %r1072,%r25,0; @ %r1072 bra $L210; .loc 1 1720 9 cvt.s64.s32 %r1073,%r252; add.u64 %r1074,%r246,%r1073; .loc 1 1741 6 st.u64 [%r257],%r1074; cvt.s64.s32 %r208,%r25; st.u64 [%r257+8],%r208; add.u64 %r383,%r383,%r208; st.u64 [%frame+184],%r383; ld.u32 %r1075,[%frame+176]; add.u32 %r210,%r1075,1; st.u32 [%frame+176],%r210; setp.gt.s32 %r1076,%r210,7; @ %r1076 bra $L211; add.u64 %r257,%r257,16; bra $L210; $L211: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1081,[%value_in]; } setp.ne.u32 %r1082,%r1081,0; @ %r1082 bra $L14; ld.u32 %r1083,[%frame+212]; sub.u32 %r206,%r66,%r1083; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1741 6 mov.u64 %r257,%frame; $L210: max.s32 %r1084,%r25,0; sub.u32 %r278,%r206,%r1084; setp.le.s32 %r1085,%r278,0; @ %r1085 bra $L171; ld.u32 %r388,[%frame+176]; setp.le.s32 %r1086,%r278,16; @ ! %r1086 bra $L384; cvta.const.u64 %r1288,zeroes$0; bra $L212; $L384: cvta.const.u64 %r1288,zeroes$0; $L215: st.u64 [%r257],%r1288; mov.u64 %r1088,16; st.u64 [%r257+8],%r1088; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r388,%r388,1; st.u32 [%frame+176],%r388; setp.gt.s32 %r1089,%r388,7; @ %r1089 bra $L213; add.u64 %r257,%r257,16; bra $L214; $L213: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1094,[%value_in]; } setp.ne.u32 %r1095,%r1094,0; @ %r1095 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r388,[%frame+176]; mov.u64 %r257,%frame; $L214: add.u32 %r278,%r278,-16; setp.gt.s32 %r1096,%r278,16; @ %r1096 bra $L215; $L212: st.u64 [%r257],%r1288; cvt.s64.s32 %r214,%r278; st.u64 [%r257+8],%r214; add.u64 %r383,%r383,%r214; st.u64 [%frame+184],%r383; add.u32 %r215,%r388,1; st.u32 [%frame+176],%r215; setp.gt.s32 %r1098,%r215,7; @ %r1098 bra $L216; add.u64 %r257,%r257,16; bra $L171; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1103,[%value_in]; } setp.ne.u32 %r1104,%r1103,0; @ %r1104 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1741 6 mov.u64 %r257,%frame; bra $L171; $L172: .loc 1 1704 6 add.u64 %r220,%r383,1; .loc 1 1699 4 ld.u32 %r1105,[%frame+176]; add.u32 %r221,%r1105,1; add.u64 %r258,%r257,16; .loc 1 1745 8 setp.gt.s32 %r1106,%r66,1; @ %r1106 bra $L217; .loc 1 1745 27 and.b32 %r1107,%r248,1; .loc 1 1745 18 setp.eq.u32 %r1108,%r1107,0; @ %r1108 bra $L218; $L217: .loc 1 1746 6 st.u64 [%r257],%r246; mov.u64 %r1109,1; st.u64 [%r257+8],%r1109; st.u64 [%frame+184],%r220; st.u32 [%frame+176],%r221; setp.le.s32 %r1110,%r221,7; @ %r1110 bra $L219; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1115,[%value_in]; } setp.ne.u32 %r1116,%r1115,0; @ %r1116 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1746 6 mov.u64 %r258,%frame; $L219: .loc 1 1748 6 st.u64 [%r258],%r262; st.u64 [%r258+8],%r431; add.u64 %r220,%r220,%r431; st.u64 [%frame+184],%r220; add.u32 %r221,%r221,1; st.u32 [%frame+176],%r221; setp.gt.s32 %r1117,%r221,7; @ %r1117 bra $L220; add.u64 %r258,%r258,16; bra $L221; $L220: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1122,[%value_in]; } setp.ne.u32 %r1123,%r1122,0; @ %r1123 bra $L14; .loc 1 1750 7 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1748 6 mov.u64 %r258,%frame; $L221: .loc 1 1707 7 add.u32 %r296,%r66,-1; .loc 1 1749 9 setp.eq.f64 %r1124,%r28,0d0000000000000000; @ %r1124 bra $L222; .loc 1 1750 7 add.u32 %r221,%r221,1; .loc 1 1747 8 add.u64 %r1125,%r246,1; .loc 1 1750 7 st.u64 [%r258],%r1125; cvt.s64.s32 %r224,%r296; st.u64 [%r258+8],%r224; add.u64 %r220,%r220,%r224; st.u64 [%frame+184],%r220; st.u32 [%frame+176],%r221; setp.gt.s32 %r1126,%r221,7; @ %r1126 bra $L223; add.u64 %r258,%r258,16; bra $L224; $L223: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1131,[%value_in]; } setp.ne.u32 %r1132,%r1131,0; @ %r1132 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1750 7 mov.u64 %r258,%frame; bra $L224; $L222: .loc 1 1753 7 setp.le.s32 %r1133,%r296,0; @ %r1133 bra $L224; setp.le.s32 %r1134,%r296,16; @ ! %r1134 bra $L385; cvta.const.u64 %r1288,zeroes$0; bra $L225; $L385: cvta.const.u64 %r1288,zeroes$0; $L228: st.u64 [%r258],%r1288; mov.u64 %r1136,16; st.u64 [%r258+8],%r1136; add.u64 %r220,%r220,16; st.u64 [%frame+184],%r220; add.u32 %r221,%r221,1; st.u32 [%frame+176],%r221; setp.gt.s32 %r1137,%r221,7; @ %r1137 bra $L226; add.u64 %r258,%r258,16; bra $L227; $L226: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1142,[%value_in]; } setp.ne.u32 %r1143,%r1142,0; @ %r1143 bra $L14; ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; mov.u64 %r258,%frame; $L227: add.u32 %r296,%r296,-16; setp.gt.s32 %r1144,%r296,16; @ %r1144 bra $L228; $L225: st.u64 [%r258],%r1288; cvt.s64.s32 %r227,%r296; st.u64 [%r258+8],%r227; add.u64 %r220,%r220,%r227; st.u64 [%frame+184],%r220; add.u32 %r221,%r221,1; st.u32 [%frame+176],%r221; setp.gt.s32 %r1146,%r221,7; @ %r1146 bra $L229; add.u64 %r258,%r258,16; bra $L224; $L229: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1151,[%value_in]; } setp.ne.u32 %r1152,%r1151,0; @ %r1152 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1753 7 mov.u64 %r258,%frame; bra $L224; $L218: .loc 1 1755 6 st.u64 [%r257],%r246; mov.u64 %r1153,1; st.u64 [%r257+8],%r1153; st.u64 [%frame+184],%r220; st.u32 [%frame+176],%r221; setp.le.s32 %r1154,%r221,7; @ %r1154 bra $L224; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1159,[%value_in]; } setp.ne.u32 %r1160,%r1159,0; @ %r1160 bra $L14; .loc 1 1756 5 ld.u64 %r220,[%frame+184]; ld.u32 %r221,[%frame+176]; .loc 1 1755 6 mov.u64 %r258,%frame; $L224: .loc 1 1756 5 st.u64 [%r258],%r1317; cvt.s64.s32 %r231,%r251; st.u64 [%r258+8],%r231; add.u64 %r383,%r231,%r220; st.u64 [%frame+184],%r383; add.u32 %r232,%r221,1; st.u32 [%frame+176],%r232; setp.gt.s32 %r1162,%r232,7; @ %r1162 bra $L230; add.u64 %r257,%r258,16; bra $L171; $L230: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1167,[%value_in]; } setp.ne.u32 %r1168,%r1167,0; @ %r1168 bra $L14; .loc 1 1764 4 ld.u64 %r383,[%frame+184]; .loc 1 1756 5 mov.u64 %r257,%frame; $L171: .loc 1 1763 13 and.b32 %r1169,%r248,4; .loc 1 1763 6 setp.eq.u32 %r1170,%r1169,0; @ %r1170 bra $L231; .loc 1 1764 4 sub.u32 %r295,%r249,%r166; setp.le.s32 %r1171,%r295,0; @ %r1171 bra $L231; ld.u32 %r392,[%frame+176]; setp.le.s32 %r1172,%r295,16; @ ! %r1172 bra $L386; cvta.const.u64 %r1291,blanks$1; bra $L232; $L386: cvta.const.u64 %r1291,blanks$1; $L235: st.u64 [%r257],%r1291; mov.u64 %r1174,16; st.u64 [%r257+8],%r1174; add.u64 %r383,%r383,16; st.u64 [%frame+184],%r383; add.u32 %r392,%r392,1; st.u32 [%frame+176],%r392; setp.gt.s32 %r1175,%r392,7; @ %r1175 bra $L233; add.u64 %r257,%r257,16; bra $L234; $L233: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1180,[%value_in]; } setp.ne.u32 %r1181,%r1180,0; @ %r1181 bra $L14; ld.u64 %r383,[%frame+184]; ld.u32 %r392,[%frame+176]; mov.u64 %r257,%frame; $L234: add.u32 %r295,%r295,-16; setp.gt.s32 %r1182,%r295,16; @ %r1182 bra $L235; $L232: st.u64 [%r257],%r1291; cvt.s64.s32 %r236,%r295; st.u64 [%r257+8],%r236; add.u64 %r383,%r383,%r236; st.u64 [%frame+184],%r383; add.u32 %r237,%r392,1; st.u32 [%frame+176],%r237; setp.le.s32 %r1184,%r237,7; @ %r1184 bra $L231; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1189,[%value_in]; } setp.ne.u32 %r1190,%r1189,0; @ %r1190 bra $L14; .loc 1 1769 3 ld.u64 %r383,[%frame+184]; $L231: .loc 1 1767 33 max.s32 %r1191,%r249,%r166; .loc 1 1767 7 add.u32 %r414,%r414,%r1191; .loc 1 1769 3 setp.ne.u64 %r1192,%r383,0; @ %r1192 bra $L236; $L237: mov.u32 %r1193,0; st.u32 [%frame+176],%r1193; mov.u64 %r257,%frame; bra $L9; $L236: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1198,[%value_in]; } setp.ne.u32 %r1199,%r1198,0; @ ! %r1199 bra $L237; bra $L14; $L15: .loc 1 1777 2 ld.u64 %r1200,[%frame+184]; setp.eq.u64 %r1201,%r1200,0; @ %r1201 bra $L14; add.u64 %r1205,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r416; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1205; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1206,[%value_in]; } $L14: .loc 1 1784 31 ld.u16 %r1208,[%r416+16]; and.b16 %r1207,%r1208,64; setp.ne.u16 %r1209,%r1207,0; @ ! %r1209 bra $L1; bra $L238; $L188: .loc 1 1712 7 st.u64 [%r257],%r262; st.u64 [%r257+8],%r431; add.u64 %r389,%r431,%r383; st.u64 [%frame+184],%r389; ld.u32 %r1211,[%frame+176]; add.u32 %r390,%r1211,1; st.u32 [%frame+176],%r390; setp.gt.s32 %r1212,%r390,7; @ %r1212 bra $L189; add.u64 %r207,%r257,16; bra $L191; $L64: .loc 1 932 9 mov.u32 %r248,%r247; mov.u32 %r250,0; mov.u32 %r252,%r250; bra $L145; $L70: .loc 1 1558 14 setp.ne.u32 %r1213,%r250,-1; @ %r1213 bra $L239; bra $L138; $L266: .loc 1 1875 5 mov.u32 %r307,%r250; $L90: .loc 1 1876 15 cvt.s64.s32 %r1214,%r307; .loc 1 1876 6 add.u64 %r314,%r246,%r1214; bra $L240; $L89: .loc 1 1873 11 mov.u32 %r1217,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r308; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1217; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r250; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1225,[%value_in]; } mov.u64 %r246,%r1225; .loc 1 1875 5 setp.ne.u32 %r1285,%r398,71; @ %r1285 bra $L266; mov.u32 %r413,%r250; bra $L241; $L88: .loc 1 1873 11 mov.u32 %r1229,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r308; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1229; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r250; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1237,[%value_in]; } mov.u64 %r246,%r1237; .loc 1 1876 15 cvt.s64.s32 %r174,%r250; .loc 1 1878 7 ld.u8 %r1240,[%r1237]; cvt.s16.s8 %r1239,%r1240; set.u32.eq.u16 %r1241,%r1239,48; neg.s32 %r1242,%r1241; mov.u32 %r1238,%r1242; .loc 1 1878 23 set.u32.neu.f64 %r1244,%r308,0d0000000000000000; neg.s32 %r1245,%r1244; mov.u32 %r1243,%r1245; cvt.u16.u8 %r1334,%r1238; mov.u16 %r1247,%r1334; cvt.u16.u8 %r1334,%r1243; mov.u16 %r1248,%r1334; and.b16 %r1246,%r1247,%r1248; cvt.u32.u16 %r1249,%r1246; cvt.u16.u8 %r1250,%r1249; setp.ne.u16 %r1251,%r1250,0; @ ! %r1251 bra $L387; bra $L242; $L207: .loc 1 1741 6 sub.u32 %r206,%r66,%r201; sub.u32 %r1252,%r66,%r252; min.s32 %r25,%r1252,%r206; bra $L210; $L29: setp.ne.u32 %r1253,%r310,0; @ ! %r1253 bra $L245; bra $L244; $L246: .loc 1 1876 15 cvt.s64.s32 %r1254,%r413; .loc 1 1876 6 add.u64 %r314,%r246,%r1254; setp.ne.u32 %r1285,%r398,71; bra $L240; $L241: .loc 1 1875 31 and.b32 %r1255,%r247,1; setp.ne.u32 %r1256,%r1255,0; @ %r1256 bra $L246; bra $L388; $L389: .loc 1 1873 11 mov.u32 %r1260,1; mov.u32 %r1259,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r415; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1259; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1260; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1327; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1326; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1325; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1267,[%value_in]; } mov.u64 %r246,%r1267; mov.f64 %r308,%r28; .loc 1 1811 9 mov.u32 %r330,0; .loc 1 1305 10 mov.u32 %r250,%r1260; mov.u32 %r413,%r250; bra $L241; $L86: .loc 1 1308 10 or.b32 %r248,%r247,256; .loc 1 1807 6 mov.b64 %r1268,%r28; shr.u64 %r1269,%r1268,32; cvt.u32.u64 %r1270,%r1269; .loc 1 1807 5 setp.lt.s32 %r1271,%r1270,0; @ ! %r1271 bra $L389; bra $L267; $L239: .loc 1 1559 11 and.b32 %r248,%r247,-129; .loc 1 1567 28 set.u32.ne.u32 %r1273,%r250,0; neg.s32 %r1274,%r1273; mov.u32 %r1272,%r1274; .loc 1 1567 15 set.u32.ne.u64 %r1276,%r253,0; neg.s32 %r1277,%r1276; mov.u32 %r1275,%r1277; .loc 1 1567 20 cvt.u16.u8 %r1334,%r1272; mov.u16 %r1279,%r1334; cvt.u16.u8 %r1334,%r1275; mov.u16 %r1280,%r1334; or.b16 %r1278,%r1279,%r1280; cvt.u32.u16 %r1281,%r1278; .loc 1 1567 7 cvt.u16.u8 %r1282,%r1281; setp.ne.u16 %r1283,%r1282,0; @ %r1283 bra $L268; mov.u32 %r250,0; mov.u32 %r255,%r250; .loc 1 1566 7 add.u64 %r246,%frame,168; bra $L142; $L1: .loc 1 1786 1 mov.u32 %value,%r414; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfprintf .visible .func (.param .u32 %value_out) vfprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 647 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 649 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __sbprintf .func (.param .u32 %value_out) __sbprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1200; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r57; .reg .pred %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u16 %r63; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; mov.u64 %r37,%ar3; .loc 1 461 14 ld.u16 %r39,[%r35+16]; and.b16 %r38,%r39,-3; st.u16 [%frame+1040],%r38; .loc 1 462 15 ld.u32 %r40,[%r35+172]; st.u32 [%frame+1196],%r40; .loc 1 463 13 ld.u16 %r41,[%r35+18]; st.u16 [%frame+1042],%r41; .loc 1 464 15 ld.u64 %r42,[%r35+48]; st.u64 [%frame+1072],%r42; .loc 1 465 14 ld.u64 %r43,[%r35+64]; st.u64 [%frame+1088],%r43; .loc 1 468 27 st.u64 [%frame+1024],%frame; .loc 1 468 17 st.u64 [%frame+1048],%frame; .loc 1 469 27 mov.u32 %r44,1024; st.u32 [%frame+1036],%r44; .loc 1 469 17 st.u32 [%frame+1056],%r44; .loc 1 470 16 mov.u32 %r46,0; st.u32 [%frame+1064],%r46; .loc 1 476 8 add.u64 %r51,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r36; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r37; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r52,[%value_in]; } mov.u32 %r33,%r52; .loc 1 477 5 setp.lt.s32 %r53,%r33,0; @ %r53 bra $L392; .loc 1 477 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r57,[%value_in]; } .loc 1 477 15 setp.eq.u32 %r58,%r57,0; .loc 1 478 7 selp.u32 %r33,%r33,-1,%r58; $L392: .loc 1 479 5 ld.u16 %r60,[%frame+1040]; and.b16 %r59,%r60,64; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L391; .loc 1 480 14 ld.u16 %r63,[%r35+16]; or.b16 %r62,%r63,64; st.u16 [%r35+16],%r62; $L391: .loc 1 486 1 mov.u32 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-vfscanf.o/0 0 0 644 59161 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __svfscanf_r .visible .func (.param .u32 %value_out) __svfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfscanf .visible .func (.param .u32 %value_out) vfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfscanf .visible .func (.param .u32 %value_out) __svfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfscanf_r .visible .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _ctype_ .extern .const .align 1 .u8 _ctype_[]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __srefill_r .extern .func (.param .u32 %value_out) __srefill_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtol_r .extern .func (.param .u64 %value_out) _strtol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoul_r .extern .func (.param .u64 %value_out) _strtoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __sccl .extern .func (.param .u64 %value_out) __sccl (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fread_r .extern .func (.param .u64 %value_out) _fread_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL FUNCTION DECL: _ungetc_r .extern .func (.param .u32 %value_out) _ungetc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtoull_r .extern .func (.param .u64 %value_out) _strtoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _strtoll_r .extern .func (.param .u64 %value_out) _strtoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: sprintf .extern .func (.param .u32 %value_out) sprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _strtod_r .extern .func (.param .f64 %value_out) _strtod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfscanf_r .visible .func (.param .u32 %value_out) __svfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,608; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r22; .reg .u64 %r25; .reg .u32 %r27; .reg .u64 %r33; .reg .u32 %r40; .reg .u64 %r45; .reg .u32 %r68; .reg .u64 %r69; .reg .u64 %r78; .reg .u32 %r94; .reg .u64 %r97; .reg .u64 %r109; .reg .u32 %r116; .reg .u64 %r119; .reg .u64 %r132; .reg .u64 %r142; .reg .u32 %r143; .reg .u32 %r152; .reg .u64 %r166; .reg .u64 %r176; .reg .u32 %r177; .reg .u32 %r200; .reg .u32 %r206; .reg .u32 %r207; .reg .u32 %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u32 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u64 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u32 %r257; .reg .u64 %r267; .reg .u64 %r274; .reg .u64 %r279; .reg .u64 %r281; .reg .u32 %r285; .reg .u64 %r287; .reg .u64 %r297; .reg .u64 %r298; .reg .u32 %r300; .reg .u32 %r301; .reg .u64 %r302; .reg .u64 %r304; .reg .u32 %r305; .reg .u32 %r306; .reg .u64 %r307; .reg .u32 %r310; .reg .u32 %r315; .reg .u64 %r316; .reg .u64 %r321; .reg .u64 %r324; .reg .u64 %r326; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u32 %r335; .reg .u64 %r336; .reg .u32 %r337; .reg .u32 %r343; .reg .u64 %r353; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .u32 %r359; .reg .u64 %r360; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u32 %r377; .reg .u64 %r378; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u16 %r382; .reg .u16 %r383; .reg .pred %r384; .reg .u16 %r385; .reg .u32 %r387; .reg .pred %r388; .reg .pred %r389; .reg .u64 %r390; .reg .u32 %r391; .reg .u64 %r393; .reg .u16 %r395; .reg .u16 %r396; .reg .u32 %r397; .reg .pred %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u64 %r402; .reg .u16 %r405; .reg .u16 %r407; .reg .pred %r408; .reg .u32 %r411; .reg .pred %r412; .reg .u32 %r413; .reg .u64 %r414; .reg .pred %r415; .reg .u16 %r416; .reg .pred %r417; .reg .pred %r419; .reg .pred %r421; .reg .pred %r423; .reg .pred %r425; .reg .pred %r427; .reg .pred %r429; .reg .pred %r431; .reg .pred %r433; .reg .pred %r435; .reg .pred %r437; .reg .pred %r439; .reg .pred %r441; .reg .pred %r443; .reg .pred %r445; .reg .pred %r447; .reg .pred %r449; .reg .pred %r451; .reg .pred %r453; .reg .pred %r455; .reg .pred %r457; .reg .pred %r459; .reg .pred %r461; .reg .pred %r463; .reg .pred %r465; .reg .pred %r467; .reg .pred %r469; .reg .pred %r471; .reg .pred %r473; .reg .u32 %r474; .reg .pred %r475; .reg .u16 %r476; .reg .u16 %r477; .reg .pred %r478; .reg .u32 %r481; .reg .pred %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u64 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .u32 %r488; .reg .u32 %r489; .reg .u32 %r490; .reg .u32 %r491; .reg .u16 %r492; .reg .u16 %r493; .reg .u16 %r494; .reg .u32 %r495; .reg .u16 %r496; .reg .pred %r497; .reg .u32 %r498; .reg .pred %r499; .reg .u16 %r500; .reg .pred %r501; .reg .u32 %r502; .reg .pred %r503; .reg .u32 %r504; .reg .pred %r505; .reg .u32 %r506; .reg .pred %r507; .reg .u64 %r509; .reg .u64 %r510; .reg .u64 %r511; .reg .u64 %r512; .reg .u32 %r513; .reg .u64 %r517; .reg .u32 %r518; .reg .pred %r519; .reg .u64 %r520; .reg .u32 %r521; .reg .pred %r522; .reg .u32 %r523; .reg .pred %r524; .reg .u64 %r525; .reg .u32 %r526; .reg .pred %r527; .reg .u64 %r528; .reg .u32 %r529; .reg .pred %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u32 %r535; .reg .pred %r536; .reg .u64 %r537; .reg .u64 %r539; .reg .u16 %r542; .reg .u16 %r544; .reg .pred %r545; .reg .u32 %r546; .reg .pred %r547; .reg .u32 %r550; .reg .pred %r551; .reg .u64 %r552; .reg .u64 %r554; .reg .u16 %r557; .reg .u16 %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .u32 %r565; .reg .pred %r566; .reg .u32 %r567; .reg .pred %r568; .reg .u64 %r569; .reg .u32 %r572; .reg .pred %r573; .reg .pred %r574; .reg .u32 %r576; .reg .u64 %r577; .reg .u32 %r578; .reg .u64 %r580; .reg .u64 %r581; .reg .u64 %r584; .reg .pred %r585; .reg .u32 %r586; .reg .pred %r587; .reg .u64 %r589; .reg .u64 %r591; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .u32 %r595; .reg .u64 %r596; .reg .pred %r597; .reg .u32 %r598; .reg .u64 %r599; .reg .pred %r600; .reg .pred %r601; .reg .u64 %r603; .reg .u64 %r605; .reg .u16 %r606; .reg .u32 %r607; .reg .pred %r608; .reg .u32 %r611; .reg .pred %r612; .reg .pred %r613; .reg .u32 %r614; .reg .u32 %r615; .reg .u64 %r616; .reg .u32 %r617; .reg .pred %r618; .reg .u32 %r619; .reg .u32 %r620; .reg .u64 %r621; .reg .u32 %r622; .reg .u64 %r623; .reg .pred %r624; .reg .u32 %r625; .reg .pred %r626; .reg .u32 %r629; .reg .pred %r630; .reg .pred %r631; .reg .u64 %r633; .reg .u64 %r635; .reg .u16 %r636; .reg .u32 %r637; .reg .pred %r638; .reg .u64 %r639; .reg .pred %r640; .reg .u32 %r641; .reg .pred %r642; .reg .u64 %r643; .reg .u64 %r645; .reg .u16 %r647; .reg .u16 %r648; .reg .u32 %r649; .reg .u32 %r650; .reg .pred %r651; .reg .pred %r652; .reg .u32 %r653; .reg .u64 %r654; .reg .pred %r655; .reg .u32 %r656; .reg .u64 %r657; .reg .pred %r658; .reg .pred %r659; .reg .u32 %r662; .reg .pred %r663; .reg .u64 %r664; .reg .u64 %r666; .reg .u16 %r669; .reg .u16 %r671; .reg .pred %r672; .reg .pred %r673; .reg .u32 %r674; .reg .u32 %r675; .reg .u64 %r676; .reg .u32 %r677; .reg .pred %r678; .reg .u32 %r679; .reg .u32 %r680; .reg .u64 %r681; .reg .u32 %r682; .reg .u64 %r683; .reg .pred %r684; .reg .u64 %r685; .reg .u32 %r686; .reg .pred %r687; .reg .u32 %r690; .reg .pred %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .u64 %r695; .reg .u16 %r698; .reg .u16 %r700; .reg .pred %r701; .reg .u64 %r702; .reg .u32 %r703; .reg .u64 %r704; .reg .pred %r705; .reg .u32 %r706; .reg .u16 %r707; .reg .pred %r708; .reg .pred %r710; .reg .pred %r712; .reg .pred %r714; .reg .u16 %r715; .reg .u32 %r717; .reg .u16 %r719; .reg .u16 %r721; .reg .pred %r722; .reg .u64 %r723; .reg .u64 %r724; .reg .u64 %r725; .reg .u64 %r726; .reg .pred %r728; .reg .pred %r730; .reg .pred %r732; .reg .pred %r734; .reg .pred %r736; .reg .pred %r738; .reg .u32 %r739; .reg .pred %r740; .reg .pred %r741; .reg .u32 %r742; .reg .pred %r743; .reg .pred %r744; .reg .u64 %r745; .reg .u64 %r746; .reg .u64 %r747; .reg .u64 %r748; .reg .pred %r749; .reg .pred %r750; .reg .u32 %r751; .reg .pred %r752; .reg .u32 %r753; .reg .pred %r754; .reg .u32 %r755; .reg .u32 %r756; .reg .pred %r757; .reg .u64 %r758; .reg .u32 %r761; .reg .pred %r762; .reg .pred %r763; .reg .u32 %r764; .reg .pred %r765; .reg .pred %r766; .reg .u32 %r770; .reg .u32 %r771; .reg .pred %r772; .reg .u32 %r773; .reg .pred %r774; .reg .u32 %r775; .reg .u64 %r778; .reg .u64 %r780; .reg .u64 %r781; .reg .u32 %r782; .reg .pred %r783; .reg .u32 %r784; .reg .pred %r785; .reg .u64 %r786; .reg .u32 %r787; .reg .pred %r788; .reg .u64 %r789; .reg .u32 %r790; .reg .pred %r791; .reg .u64 %r792; .reg .pred %r793; .reg .u64 %r798; .reg .u64 %r803; .reg .u64 %r804; .reg .u64 %r805; .reg .u64 %r806; .reg .u32 %r807; .reg .u64 %r810; .reg .u64 %r811; .reg .pred %r812; .reg .u32 %r813; .reg .u16 %r814; .reg .pred %r815; .reg .pred %r817; .reg .pred %r819; .reg .pred %r821; .reg .pred %r823; .reg .u16 %r824; .reg .u32 %r826; .reg .u16 %r828; .reg .u16 %r830; .reg .pred %r831; .reg .pred %r833; .reg .pred %r835; .reg .pred %r837; .reg .pred %r839; .reg .pred %r841; .reg .pred %r843; .reg .pred %r845; .reg .pred %r847; .reg .pred %r849; .reg .pred %r851; .reg .pred %r853; .reg .pred %r855; .reg .pred %r857; .reg .pred %r859; .reg .pred %r861; .reg .pred %r863; .reg .pred %r865; .reg .u32 %r866; .reg .pred %r867; .reg .pred %r868; .reg .u32 %r869; .reg .pred %r870; .reg .u32 %r871; .reg .pred %r872; .reg .u32 %r873; .reg .u16 %r874; .reg .u32 %r875; .reg .u32 %r876; .reg .u32 %r877; .reg .u32 %r878; .reg .u32 %r879; .reg .u16 %r880; .reg .u16 %r881; .reg .u16 %r882; .reg .u32 %r883; .reg .u16 %r884; .reg .pred %r885; .reg .u32 %r886; .reg .pred %r887; .reg .pred %r889; .reg .u32 %r890; .reg .u16 %r891; .reg .u32 %r892; .reg .u32 %r893; .reg .u32 %r894; .reg .u32 %r896; .reg .u32 %r897; .reg .u16 %r898; .reg .u16 %r899; .reg .u16 %r900; .reg .u32 %r901; .reg .u16 %r902; .reg .pred %r903; .reg .u16 %r905; .reg .u32 %r907; .reg .u16 %r909; .reg .pred %r910; .reg .u32 %r911; .reg .u16 %r912; .reg .u32 %r913; .reg .u32 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .u32 %r917; .reg .u16 %r918; .reg .u16 %r919; .reg .u16 %r920; .reg .u32 %r921; .reg .u16 %r922; .reg .pred %r923; .reg .u32 %r924; .reg .pred %r925; .reg .u32 %r926; .reg .u16 %r927; .reg .u16 %r928; .reg .u32 %r929; .reg .u16 %r931; .reg .u16 %r933; .reg .pred %r934; .reg .u16 %r935; .reg .u32 %r937; .reg .u16 %r938; .reg .pred %r939; .reg .u16 %r940; .reg .pred %r941; .reg .u16 %r942; .reg .pred %r943; .reg .u32 %r944; .reg .pred %r945; .reg .u32 %r946; .reg .pred %r947; .reg .pred %r948; .reg .u32 %r949; .reg .pred %r950; .reg .u16 %r951; .reg .u16 %r952; .reg .pred %r953; .reg .u32 %r954; .reg .pred %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .pred %r958; .reg .u64 %r959; .reg .u32 %r962; .reg .pred %r963; .reg .pred %r964; .reg .pred %r965; .reg .u32 %r966; .reg .pred %r967; .reg .pred %r968; .reg .u32 %r972; .reg .u32 %r973; .reg .pred %r974; .reg .u32 %r975; .reg .pred %r976; .reg .u16 %r977; .reg .pred %r978; .reg .u32 %r979; .reg .pred %r981; .reg .pred %r982; .reg .u32 %r986; .reg .u32 %r987; .reg .u32 %r989; .reg .u32 %r991; .reg .u16 %r992; .reg .u16 %r993; .reg .u16 %r994; .reg .u32 %r995; .reg .u16 %r997; .reg .u16 %r998; .reg .u16 %r999; .reg .u32 %r1000; .reg .u16 %r1001; .reg .pred %r1002; .reg .u32 %r1006; .reg .u32 %r1007; .reg .pred %r1008; .reg .u32 %r1009; .reg .pred %r1010; .reg .u32 %r1011; .reg .pred %r1012; .reg .pred %r1013; .reg .u32 %r1017; .reg .u32 %r1018; .reg .pred %r1019; .reg .u16 %r1020; .reg .u16 %r1021; .reg .u32 %r1022; .reg .u16 %r1023; .reg .pred %r1024; .reg .u32 %r1028; .reg .u32 %r1032; .reg .u32 %r1033; .reg .pred %r1034; .reg .u32 %r1035; .reg .u32 %r1036; .reg .pred %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .u64 %r1042; .reg .u32 %r1043; .reg .u64 %r1044; .reg .u64 %r1045; .reg .pred %r1047; .reg .u64 %r1049; .reg .u32 %r1050; .reg .u64 %r1054; .reg .f64 %r1055; .reg .u64 %r1056; .reg .u32 %r1057; .reg .pred %r1058; .reg .u64 %r1059; .reg .u32 %r1060; .reg .pred %r1061; .reg .pred %r1062; .reg .u64 %r1063; .reg .f32 %r1064; .reg .f32 %r1065; .reg .pred %r1066; .reg .u16 %r1067; .reg .u16 %r1068; .reg .pred %r1069; .reg .u32 %r1071; .reg .pred %r1072; .reg .u32 %r1073; .reg .u32 %r1074; .reg .u64 %r1075; .reg .u64 %r1077; .reg .u64 %r1078; .reg .u16 %r1079; mov.u64 %r378,%ar0; mov.u64 %r379,%ar1; mov.u64 %r380,%ar2; mov.u64 %r381,%ar3; .loc 1 591 3 ld.u16 %r383,[%r379+16]; and.b16 %r382,%r383,8192; setp.ne.u16 %r384,%r382,0; @ %r384 bra $L2; .loc 1 589 3 ld.u32 %r22,[%r379+172]; .loc 1 591 3 or.b16 %r385,%r383,8192; st.u16 [%r379+16],%r385; and.b32 %r387,%r22,-8193; st.u32 [%r379+172],%r387; $L2: .loc 1 602 12 ld.u8 %r27,[%r380]; .loc 1 611 11 add.u64 %r267,%r380,1; .loc 1 613 10 setp.eq.u32 %r388,%r27,0; @ %r388 bra $L162; mov.u64 %r69,0; mov.u32 %r247,0; mov.u32 %r207,%r247; mov.u32 %r377,%r247; cvta.const.u64 %r1075,_ctype_+1; .loc 1 1859 8 add.u64 %r1077,%frame,329; .loc 1 1146 21 add.u64 %r1078,%frame,350; bra $L4; $L7: .loc 1 602 12 ld.u8 %r27,[%r267]; .loc 1 611 11 add.u64 %r267,%r267,1; .loc 1 613 10 setp.eq.u32 %r389,%r27,0; @ %r389 bra $L1; $L4: .loc 1 615 26 cvt.u32.u32 %r391,%r27; cvt.u64.u8 %r390,%r391; add.u64 %r393,%r1075,%r390; ld.u8 %r1079,[%r393]; mov.u16 %r396,%r1079; and.b16 %r395,%r396,8; cvt.u32.u16 %r397,%r395; cvt.s32.s8 %r257,%r397; .loc 1 615 23 setp.eq.u32 %r398,%r257,0; @ %r398 bra $L5; .loc 1 649 12 ld.u32 %r40,[%r379+8]; $L10: .loc 1 619 11 setp.le.s32 %r399,%r40,0; @ %r399 bra $L6; $L9: .loc 1 619 28 ld.u64 %r33,[%r379]; ld.u8 %r400,[%r33]; add.u64 %r402,%r1075,%r400; .loc 1 619 24 ld.u8 %r1079,[%r402]; mov.u16 %r405,%r1079; and.b16 %r407,%r405,8; setp.eq.u16 %r408,%r407,0; @ ! %r408 bra $L341; bra $L7; $L6: .loc 1 619 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r411,[%value_in]; } setp.ne.u32 %r412,%r411,0; @ ! %r412 bra $L9; bra $L7; $L341: .loc 1 621 13 add.u32 %r207,%r207,1; .loc 1 621 23 ld.u32 %r413,[%r379+8]; add.u32 %r40,%r413,-1; st.u32 [%r379+8],%r40; .loc 1 621 33 add.u64 %r414,%r33,1; st.u64 [%r379],%r414; .loc 1 619 11 bra $L10; $L5: .loc 1 625 10 setp.ne.u32 %r415,%r27,37; @ %r415 bra $L11; .loc 1 640 11 ld.u8 %r335,[%r267]; mov.u64 %r25,%r267; .loc 1 628 13 mov.u32 %r244,%r257; .loc 1 627 13 mov.u64 %r236,0; bra $L12; $L343: .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 663 10 mov.u32 %r244,16; .loc 1 669 8 mov.u64 %r236,0; $L12: .loc 1 640 15 add.u64 %r267,%r25,1; .loc 1 642 7 cvt.u16.u32 %r416,%r335; setp.eq.u16 %r417,%r416,100; @ %r417 bra $L163; setp.gt.u16 %r419,%r416,100; @ %r419 bra $L14; setp.eq.u16 %r421,%r416,71; @ %r421 bra $L164; setp.gt.u16 %r423,%r416,71; @ %r423 bra $L15; setp.gt.u16 %r425,%r416,57; @ %r425 bra $L16; setp.gt.u16 %r427,%r416,47; @ %r427 bra $L17; setp.eq.u16 %r429,%r416,37; @ %r429 bra $L11; setp.eq.u16 %r431,%r416,42; @ %r431 bra $L18; bra $L1; $L16: setp.eq.u16 %r433,%r416,68; @ %r433 bra $L19; setp.eq.u16 %r435,%r416,69; @ %r435 bra $L165; bra $L1; $L15: setp.eq.u16 %r437,%r416,88; @ %r437 bra $L20; setp.gt.u16 %r439,%r416,88; @ %r439 bra $L21; setp.eq.u16 %r441,%r416,76; @ %r441 bra $L22; setp.eq.u16 %r443,%r416,79; @ %r443 bra $L23; bra $L1; $L21: setp.eq.u16 %r445,%r416,91; @ %r445 bra $L24; setp.eq.u16 %r447,%r416,99; @ %r447 bra $L25; bra $L1; $L14: setp.eq.u16 %r449,%r416,111; @ %r449 bra $L166; setp.gt.u16 %r451,%r416,111; @ %r451 bra $L26; setp.eq.u16 %r453,%r416,105; @ %r453 bra $L167; setp.gt.u16 %r455,%r416,105; @ %r455 bra $L27; setp.le.u16 %r457,%r416,103; @ %r457 bra $L168; setp.eq.u16 %r459,%r416,104; @ %r459 bra $L28; bra $L1; $L27: setp.eq.u16 %r461,%r416,108; @ %r461 bra $L29; setp.eq.u16 %r463,%r416,110; @ %r463 bra $L30; bra $L1; $L26: setp.eq.u16 %r465,%r416,115; @ %r465 bra $L169; setp.gt.u16 %r467,%r416,115; @ %r467 bra $L31; setp.eq.u16 %r469,%r416,112; @ %r469 bra $L32; bra $L1; $L31: setp.eq.u16 %r471,%r416,117; @ %r471 bra $L170; setp.eq.u16 %r473,%r416,120; @ %r473 bra $L20; bra $L1; $L11: .loc 1 649 11 ld.u32 %r474,[%r379+8]; setp.le.s32 %r475,%r474,0; @ %r475 bra $L33; $L36: .loc 1 651 15 ld.u64 %r45,[%r379]; .loc 1 651 11 ld.u8 %r476,[%r45]; ld.u8 %r477,[%r267+-1]; setp.ne.u16 %r478,%r476,%r477; @ %r478 bra $L1; bra $L342; $L33: .loc 1 649 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r481,[%value_in]; } setp.ne.u32 %r482,%r481,0; @ ! %r482 bra $L36; bra $L35; $L342: .loc 1 653 14 ld.u32 %r484,[%r379+8]; add.u32 %r483,%r484,-1; st.u32 [%r379+8],%r483; .loc 1 653 24 add.u64 %r485,%r45,1; st.u64 [%r379],%r485; .loc 1 654 13 add.u32 %r207,%r207,1; bra $L7; $L18: .loc 1 660 7 set.u32.ne.u32 %r487,%r244,0; neg.s32 %r488,%r487; mov.u32 %r486,%r488; .loc 1 661 8 set.u32.ne.u64 %r490,%r236,0; neg.s32 %r491,%r490; mov.u32 %r489,%r491; cvt.u16.u8 %r1079,%r486; mov.u16 %r493,%r1079; cvt.u16.u8 %r1079,%r489; mov.u16 %r494,%r1079; or.b16 %r492,%r493,%r494; cvt.u32.u16 %r495,%r492; cvt.u16.u8 %r496,%r495; setp.ne.u16 %r497,%r496,0; @ ! %r497 bra $L343; bra $L1; $L29: .loc 1 666 14 and.b32 %r498,%r244,15; .loc 1 666 7 setp.ne.u32 %r499,%r498,0; @ %r499 bra $L1; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 669 7 cvt.u16.u32 %r500,%r335; setp.ne.u16 %r501,%r500,108; @ %r501 bra $L38; .loc 1 672 14 or.b32 %r244,%r244,2; .loc 1 640 11 ld.u8 %r335,[%r25+2]; .loc 1 671 8 add.u64 %r25,%r25,2; bra $L12; $L38: .loc 1 676 12 or.b32 %r244,%r244,1; .loc 1 640 15 mov.u64 %r25,%r267; bra $L12; $L22: .loc 1 679 14 and.b32 %r502,%r244,15; .loc 1 679 7 setp.ne.u32 %r503,%r502,0; @ %r503 bra $L1; .loc 1 681 10 or.b32 %r244,%r244,2; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 682 4 bra $L12; $L28: .loc 1 684 14 and.b32 %r504,%r244,15; .loc 1 684 7 setp.ne.u32 %r505,%r504,0; @ %r505 bra $L1; .loc 1 694 12 or.b32 %r244,%r244,4; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 695 4 bra $L12; $L17: .loc 1 760 14 and.b32 %r506,%r244,143; .loc 1 760 7 setp.ne.u32 %r507,%r506,0; @ %r507 bra $L1; .loc 1 762 18 shl.b64 %r509,%r236,2; add.u64 %r510,%r509,%r236; add.u64 %r511,%r510,%r510; .loc 1 762 23 cvt.u32.u32 %r513,%r335; cvt.u64.u8 %r512,%r513; add.u64 %r369,%r511,%r512; .loc 1 762 10 add.u64 %r236,%r369,-48; .loc 1 669 8 ld.u8 %r335,[%r25+1]; .loc 1 640 15 mov.u64 %r25,%r267; .loc 1 763 4 bra $L12; $L19: .loc 1 789 10 or.b32 %r244,%r244,1; .loc 1 793 9 mov.u64 %r69,_strtol_r; .loc 1 794 9 mov.u32 %r247,10; .loc 1 792 6 mov.u32 %r306,3; bra $L13; $L23: .loc 1 804 10 or.b32 %r244,%r244,1; .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r247,8; .loc 1 807 6 mov.u32 %r306,3; bra $L13; $L20: .loc 1 820 10 or.b32 %r244,%r244,512; .loc 1 822 9 mov.u64 %r69,_strtoul_r; .loc 1 823 9 mov.u32 %r247,16; .loc 1 821 6 mov.u32 %r306,3; .loc 1 824 4 bra $L13; $L24: .loc 1 852 21 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1078; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r267; call (%value_in),__sccl,(%out_arg1,%out_arg2); ld.param.u64 %r517,[%value_in]; } mov.u64 %r267,%r517; .loc 1 853 10 or.b32 %r244,%r244,64; .loc 1 854 6 mov.u32 %r306,1; .loc 1 855 4 bra $L13; $L25: .loc 1 864 10 or.b32 %r244,%r244,64; .loc 1 865 6 mov.u32 %r306,0; .loc 1 866 4 bra $L13; $L32: .loc 1 869 10 or.b32 %r244,%r244,544; .loc 1 871 9 mov.u64 %r69,_strtoul_r; .loc 1 872 9 mov.u32 %r247,16; .loc 1 870 6 mov.u32 %r306,3; .loc 1 873 4 bra $L13; $L30: .loc 1 876 14 and.b32 %r518,%r244,16; .loc 1 876 7 setp.ne.u32 %r519,%r518,0; @ %r519 bra $L7; .loc 1 888 11 add.u64 %r520,%r381,7; and.b64 %r334,%r520,-8; ld.u64 %r333,[%r334]; add.u64 %r381,%r334,8; .loc 1 886 14 and.b32 %r521,%r244,4; .loc 1 886 7 setp.eq.u32 %r522,%r521,0; @ %r522 bra $L40; .loc 1 889 12 st.u16 [%r333],%r207; bra $L7; $L40: .loc 1 891 19 and.b32 %r523,%r244,1; .loc 1 891 12 setp.eq.u32 %r524,%r523,0; @ %r524 bra $L41; .loc 1 894 12 cvt.s64.s32 %r525,%r207; st.u64 [%r333],%r525; bra $L7; $L41: .loc 1 897 19 and.b32 %r526,%r244,2; .loc 1 897 12 setp.eq.u32 %r527,%r526,0; @ %r527 bra $L42; .loc 1 900 13 cvt.s64.s32 %r528,%r207; st.u64 [%r333],%r528; bra $L7; $L42: .loc 1 906 12 st.u32 [%r333],%r207; bra $L7; $L163: .loc 1 642 7 mov.u64 %r69,_strtol_r; mov.u32 %r247,10; mov.u32 %r306,3; bra $L13; $L164: .loc 1 837 6 mov.u32 %r306,4; bra $L13; $L165: mov.u32 %r306,4; bra $L13; $L166: .loc 1 808 9 mov.u64 %r69,_strtoul_r; .loc 1 809 9 mov.u32 %r247,8; .loc 1 807 6 mov.u32 %r306,3; bra $L13; $L167: .loc 1 799 9 mov.u64 %r69,_strtol_r; .loc 1 800 9 mov.u32 %r247,0; .loc 1 798 6 mov.u32 %r306,3; bra $L13; $L168: .loc 1 837 6 mov.u32 %r306,4; bra $L13; $L169: .loc 1 848 6 mov.u32 %r306,2; bra $L13; $L170: .loc 1 814 9 mov.u64 %r69,_strtoul_r; .loc 1 815 9 mov.u32 %r247,10; .loc 1 813 6 mov.u32 %r306,3; $L13: .loc 1 917 10 ld.u32 %r529,[%r379+8]; setp.le.s32 %r530,%r529,0; @ %r530 bra $L43; $L46: .loc 1 924 18 and.b32 %r531,%r244,64; .loc 1 924 10 setp.eq.u32 %r532,%r531,0; @ ! %r532 bra $L45; bra $L44; $L43: .loc 1 917 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r535,[%value_in]; } setp.ne.u32 %r536,%r535,0; @ ! %r536 bra $L46; bra $L35; $L44: .loc 1 926 11 ld.u64 %r324,[%r379]; ld.u8 %r537,[%r324]; add.u64 %r539,%r1075,%r537; ld.u8 %r1079,[%r539]; mov.u16 %r542,%r1079; and.b16 %r544,%r542,8; setp.eq.u16 %r545,%r544,0; @ %r545 bra $L45; $L49: .loc 1 928 13 add.u32 %r207,%r207,1; .loc 1 929 12 ld.u32 %r546,[%r379+8]; add.u32 %r68,%r546,-1; .loc 1 929 11 st.u32 [%r379+8],%r68; setp.le.s32 %r547,%r68,0; @ %r547 bra $L47; .loc 1 930 9 add.u64 %r324,%r324,1; st.u64 [%r379],%r324; bra $L48; $L47: .loc 1 932 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r550,[%value_in]; } .loc 1 932 11 setp.ne.u32 %r551,%r550,0; @ %r551 bra $L35; .loc 1 926 11 ld.u64 %r324,[%r379]; $L48: ld.u8 %r552,[%r324]; add.u64 %r554,%r1075,%r552; ld.u8 %r1079,[%r554]; mov.u16 %r557,%r1079; and.b16 %r559,%r557,8; setp.ne.u16 %r560,%r559,0; @ %r560 bra $L49; $L45: .loc 1 945 7 setp.eq.u32 %r561,%r306,3; @ %r561 bra $L50; setp.eq.u32 %r562,%r306,4; @ %r562 bra $L51; setp.eq.u32 %r563,%r306,1; @ %r563 bra $L52; setp.eq.u32 %r564,%r306,2; @ %r564 bra $L53; max.u64 %r237,%r236,1; .loc 1 1017 14 and.b32 %r565,%r244,16; .loc 1 1017 7 setp.eq.u32 %r566,%r565,0; @ %r566 bra $L54; .loc 1 1019 15 mov.u64 %r248,0; $L56: .loc 1 1022 12 ld.u32 %r310,[%r379+8]; .loc 1 1026 16 ld.u64 %r326,[%r379]; .loc 1 1022 24 cvt.u32.u64 %r567,%r237; .loc 1 1022 8 setp.le.s32 %r568,%r567,%r310; @ %r568 bra $L55; .loc 1 1024 13 cvt.s64.s32 %r78,%r310; add.u64 %r248,%r248,%r78; .loc 1 1025 15 sub.u64 %r237,%r237,%r78; .loc 1 1026 16 add.u64 %r569,%r326,%r78; st.u64 [%r379],%r569; .loc 1 1027 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r572,[%value_in]; } .loc 1 1027 12 setp.eq.u32 %r573,%r572,0; @ %r573 bra $L56; .loc 1 1029 9 setp.eq.u64 %r574,%r248,0; @ ! %r574 bra $L57; bra $L35; $L55: .loc 1 1036 13 add.u64 %r248,%r248,%r237; .loc 1 1037 16 sub.u32 %r576,%r310,%r567; st.u32 [%r379+8],%r576; .loc 1 1038 16 add.u64 %r577,%r326,%r237; st.u64 [%r379],%r577; $L57: .loc 1 1042 14 cvt.u32.u64 %r578,%r248; add.u32 %r207,%r578,%r207; bra $L7; $L54: .loc 1 1053 5 add.u64 %r353,%r381,7; and.b64 %r355,%r353,-8; add.u64 %r381,%r355,8; .loc 1 1054 12 mov.u64 %r581,1; ld.u64 %r580,[%r355]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r580; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r581; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r237; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r379; call (%value_in),_fread_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r584,[%value_in]; } .loc 1 1055 11 setp.eq.u64 %r585,%r584,0; @ %r585 bra $L35; .loc 1 1060 14 cvt.u32.u64 %r586,%r584; add.u32 %r207,%r586,%r207; .loc 1 1061 17 add.u32 %r377,%r377,1; bra $L7; $L52: .loc 1 1067 7 setp.ne.u64 %r587,%r236,0; .loc 1 1068 12 selp.u64 %r236,%r236,-1,%r587; .loc 1 1146 25 ld.u64 %r360,[%r379]; .loc 1 1146 21 ld.u8 %r589,[%r360]; add.u64 %r591,%r1078,%r589; ld.s8 %r315,[%r591]; .loc 1 1143 14 and.b32 %r592,%r244,16; .loc 1 1143 7 setp.eq.u32 %r593,%r592,0; @ %r593 bra $L59; .loc 1 1146 15 setp.eq.u32 %r594,%r315,0; @ %r594 bra $L1; .loc 1 1148 16 ld.u32 %r595,[%r379+8]; add.u32 %r94,%r595,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r596,%r360,1; st.u64 [%r379],%r596; .loc 1 1149 8 add.u64 %r307,%r236,-1; setp.eq.u64 %r597,%r236,1; @ ! %r597 bra $L61; bra $L60; $L63: .loc 1 1148 6 add.u32 %r306,%r306,1; .loc 1 1148 16 ld.u32 %r598,[%r379+8]; add.u32 %r94,%r598,-1; st.u32 [%r379+8],%r94; .loc 1 1148 26 add.u64 %r599,%r97,1; st.u64 [%r379],%r599; .loc 1 1149 8 add.u64 %r307,%r307,-1; setp.eq.u64 %r600,%r307,0; @ %r600 bra $L60; $L61: .loc 1 1151 8 setp.le.s32 %r601,%r94,0; @ %r601 bra $L62; $L64: .loc 1 1146 25 ld.u64 %r97,[%r379]; .loc 1 1146 21 ld.u8 %r603,[%r97]; add.u64 %r605,%r1078,%r603; .loc 1 1146 15 ld.u8 %r607,[%r605]; cvt.s16.s8 %r606,%r607; setp.ne.u16 %r608,%r606,0; @ %r608 bra $L63; bra $L60; $L62: .loc 1 1151 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r611,[%value_in]; } setp.eq.u32 %r612,%r611,0; @ %r612 bra $L64; $L60: .loc 1 1160 14 add.u32 %r207,%r207,%r306; bra $L7; $L59: .loc 1 1172 10 add.u64 %r371,%r381,7; and.b64 %r370,%r371,-8; add.u64 %r381,%r370,8; ld.u64 %r304,[%r370]; .loc 1 1173 15 setp.eq.u32 %r613,%r315,0; @ %r613 bra $L1; .loc 1 1175 11 ld.u32 %r615,[%r379+8]; add.u32 %r614,%r615,-1; st.u32 [%r379+8],%r614; .loc 1 1176 19 add.u64 %r616,%r360,1; st.u64 [%r379],%r616; .loc 1 1176 7 add.u64 %r239,%r304,1; .loc 1 1176 10 ld.u8 %r617,[%r360]; st.u8 [%r304],%r617; .loc 1 1180 8 setp.eq.u64 %r618,%r236,1; @ %r618 bra $L65; mov.u64 %r331,%r239; bra $L66; $L68: .loc 1 1175 11 ld.u32 %r620,[%r379+8]; add.u32 %r619,%r620,-1; st.u32 [%r379+8],%r619; .loc 1 1176 19 add.u64 %r621,%r109,1; st.u64 [%r379],%r621; add.u64 %r331,%r331,1; .loc 1 1176 10 ld.u8 %r622,[%r109]; st.u8 [%r239],%r622; .loc 1 1180 8 add.u64 %r623,%r304,%r236; setp.eq.u64 %r624,%r623,%r331; @ %r624 bra $L171; $L66: mov.u64 %r239,%r331; .loc 1 1182 8 ld.u32 %r625,[%r379+8]; setp.gt.s32 %r626,%r625,0; @ %r626 bra $L67; .loc 1 1182 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r629,[%value_in]; } setp.eq.u32 %r630,%r629,0; @ %r630 bra $L67; .loc 1 1184 12 setp.eq.u64 %r631,%r304,%r239; @ ! %r631 bra $L65; bra $L35; $L67: .loc 1 1173 25 ld.u64 %r109,[%r379]; .loc 1 1173 21 ld.u8 %r633,[%r109]; add.u64 %r635,%r1078,%r633; .loc 1 1173 15 ld.u8 %r637,[%r635]; cvt.s16.s8 %r636,%r637; setp.ne.u16 %r638,%r636,0; @ %r638 bra $L68; bra $L65; $L171: .loc 1 1176 7 mov.u64 %r239,%r331; $L65: .loc 1 1189 14 sub.u64 %r639,%r239,%r304; .loc 1 1189 10 cvt.u32.u64 %r305,%r639; .loc 1 1190 11 setp.eq.u32 %r640,%r305,0; @ %r640 bra $L1; .loc 1 1192 11 mov.u32 %r641,0; st.u8 [%r239],%r641; .loc 1 1196 17 add.u32 %r377,%r377,1; .loc 1 1197 14 add.u32 %r207,%r207,%r305; bra $L7; $L53: .loc 1 1203 7 setp.ne.u64 %r642,%r236,0; .loc 1 1204 12 selp.u64 %r236,%r236,-1,%r642; .loc 1 1146 25 ld.u64 %r358,[%r379]; .loc 1 1283 16 ld.u8 %r643,[%r358]; add.u64 %r645,%r1075,%r643; ld.u8 %r1079,[%r645]; mov.u16 %r648,%r1079; and.b16 %r647,%r648,8; cvt.u32.u16 %r649,%r647; cvt.s32.s8 %r359,%r649; .loc 1 1280 14 and.b32 %r650,%r244,16; .loc 1 1280 7 setp.eq.u32 %r651,%r650,0; @ %r651 bra $L70; .loc 1 1283 15 setp.ne.u32 %r652,%r359,0; @ %r652 bra $L7; .loc 1 1285 16 ld.u32 %r653,[%r379+8]; add.u32 %r116,%r653,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r654,%r358,1; st.u64 [%r379],%r654; .loc 1 1286 8 add.u64 %r302,%r236,-1; setp.ne.u64 %r655,%r236,1; @ %r655 bra $L172; .loc 1 1291 14 add.u32 %r207,%r207,1; bra $L7; $L74: .loc 1 1285 6 add.u32 %r301,%r301,1; .loc 1 1285 16 ld.u32 %r656,[%r379+8]; add.u32 %r116,%r656,-1; st.u32 [%r379+8],%r116; .loc 1 1285 26 add.u64 %r657,%r119,1; st.u64 [%r379],%r657; .loc 1 1286 8 add.u64 %r302,%r302,-1; setp.ne.u64 %r658,%r302,0; @ %r658 bra $L72; .loc 1 1291 14 add.u32 %r207,%r207,%r301; bra $L7; $L172: .loc 1 1285 6 mov.u32 %r301,1; $L72: .loc 1 1288 8 setp.gt.s32 %r659,%r116,0; @ %r659 bra $L73; .loc 1 1288 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r662,[%value_in]; } setp.eq.u32 %r663,%r662,0; @ %r663 bra $L73; .loc 1 1291 14 add.u32 %r207,%r207,%r301; bra $L7; $L73: .loc 1 1283 16 ld.u64 %r119,[%r379]; ld.u8 %r664,[%r119]; add.u64 %r666,%r1075,%r664; .loc 1 1283 15 ld.u8 %r1079,[%r666]; mov.u16 %r669,%r1079; and.b16 %r671,%r669,8; setp.eq.u16 %r672,%r671,0; @ %r672 bra $L74; .loc 1 1291 14 add.u32 %r207,%r207,%r301; bra $L7; $L70: .loc 1 1303 6 add.u64 %r238,%r381,7; and.b64 %r372,%r238,-8; add.u64 %r381,%r372,8; ld.u64 %r298,[%r372]; .loc 1 1305 15 setp.ne.u32 %r673,%r359,0; @ %r673 bra $L173; .loc 1 1307 11 ld.u32 %r675,[%r379+8]; add.u32 %r674,%r675,-1; st.u32 [%r379+8],%r674; .loc 1 1308 19 add.u64 %r676,%r358,1; st.u64 [%r379],%r676; .loc 1 1308 7 add.u64 %r240,%r298,1; .loc 1 1308 10 ld.u8 %r677,[%r358]; st.u8 [%r298],%r677; .loc 1 1312 8 setp.eq.u64 %r678,%r236,1; @ ! %r678 bra $L344; bra $L174; $L79: .loc 1 1307 11 ld.u32 %r680,[%r379+8]; add.u32 %r679,%r680,-1; st.u32 [%r379+8],%r679; .loc 1 1308 19 add.u64 %r681,%r132,1; st.u64 [%r379],%r681; add.u64 %r321,%r321,1; .loc 1 1308 10 ld.u8 %r682,[%r132]; st.u8 [%r240],%r682; .loc 1 1312 8 add.u64 %r683,%r298,%r236; setp.ne.u64 %r684,%r683,%r321; @ %r684 bra $L77; .loc 1 1321 19 sub.u64 %r685,%r321,%r298; .loc 1 1321 14 cvt.u32.u64 %r337,%r685; mov.u64 %r240,%r321; bra $L75; $L344: mov.u64 %r321,%r240; $L77: mov.u64 %r240,%r321; .loc 1 1314 8 ld.u32 %r686,[%r379+8]; setp.gt.s32 %r687,%r686,0; @ %r687 bra $L78; .loc 1 1314 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r690,[%value_in]; } setp.eq.u32 %r691,%r690,0; @ %r691 bra $L78; .loc 1 1321 19 sub.u64 %r692,%r240,%r298; .loc 1 1321 14 cvt.u32.u64 %r337,%r692; bra $L75; $L78: .loc 1 1305 16 ld.u64 %r132,[%r379]; ld.u8 %r693,[%r132]; add.u64 %r695,%r1075,%r693; .loc 1 1305 15 ld.u8 %r1079,[%r695]; mov.u16 %r698,%r1079; and.b16 %r700,%r698,8; setp.eq.u16 %r701,%r700,0; @ %r701 bra $L79; .loc 1 1321 19 sub.u64 %r702,%r321,%r298; .loc 1 1321 14 cvt.u32.u64 %r337,%r702; bra $L75; $L173: .loc 1 1303 6 mov.u64 %r240,%r298; .loc 1 1305 15 mov.u32 %r337,%r650; bra $L75; $L174: .loc 1 1312 8 mov.u32 %r337,1; $L75: .loc 1 1317 11 mov.u32 %r703,0; st.u8 [%r240],%r703; .loc 1 1321 14 add.u32 %r207,%r207,%r337; .loc 1 1322 17 add.u32 %r377,%r377,1; bra $L7; $L50: .loc 1 1335 14 add.u64 %r704,%r236,-1; .loc 1 1335 7 setp.le.u64 %r705,%r704,348; @ %r705 bra $L175; .loc 1 1338 27 cvt.u32.u64 %r706,%r236; .loc 1 1338 19 add.u32 %r249,%r706,-349; .loc 1 1339 14 mov.u64 %r236,349; bra $L80; $L175: .loc 1 1329 13 mov.u32 %r249,0; $L80: .loc 1 1341 10 or.b32 %r245,%r244,3456; .loc 1 1330 8 mov.u32 %r250,0; .loc 1 1342 11 mov.u64 %r241,%frame; $L98: .loc 1 1344 15 ld.u64 %r142,[%r379]; .loc 1 1344 12 ld.u8 %r143,[%r142]; cvt.u16.u32 %r707,%r143; setp.gt.u16 %r708,%r707,57; @ %r708 bra $L81; setp.gt.u16 %r710,%r707,55; @ %r710 bra $L82; setp.eq.u16 %r712,%r707,48; @ %r712 bra $L83; setp.gt.u16 %r714,%r707,48; @ %r714 bra $L84; add.u16 %r715,%r707,-43; cvt.u32.u16 %r717,%r715; cvt.u16.u8 %r1079,%r717; mov.u16 %r719,%r1079; and.b16 %r721,%r719,253; setp.eq.u16 %r722,%r721,0; @ ! %r722 bra $L86; bra $L85; $L84: .loc 1 1390 19 cvta.const.u64 %r723,basefix$0; cvt.s64.s32 %r724,%r247; add.u64 %r725,%r724,%r724; add.u64 %r726,%r723,%r725; ld.s16 %r247,[%r726]; .loc 1 1391 11 and.b32 %r245,%r245,-2945; .loc 1 1392 5 bra $L87; $L81: setp.gt.u16 %r728,%r707,102; @ %r728 bra $L88; setp.gt.u16 %r730,%r707,96; @ %r730 bra $L89; setp.gt.u16 %r732,%r707,70; @ %r732 bra $L90; setp.gt.u16 %r734,%r707,64; @ ! %r734 bra $L86; bra $L89; $L90: setp.eq.u16 %r736,%r707,88; @ %r736 bra $L91; bra $L86; $L88: setp.eq.u16 %r738,%r707,120; @ %r738 bra $L91; bra $L86; $L83: .loc 1 1361 18 and.b32 %r739,%r245,2048; .loc 1 1361 8 setp.eq.u32 %r740,%r739,0; @ %r740 bra $L87; .loc 1 1363 8 setp.ne.u32 %r741,%r247,0; @ %r741 bra $L92; .loc 1 1366 15 or.b32 %r245,%r245,512; .loc 1 1365 14 mov.u32 %r247,8; $L92: .loc 1 1368 15 and.b32 %r742,%r245,1024; .loc 1 1368 8 setp.eq.u32 %r743,%r742,0; @ %r743 bra $L93; .loc 1 1370 15 and.b32 %r245,%r245,-1409; .loc 1 1371 9 bra $L87; $L93: .loc 1 1373 11 and.b32 %r245,%r245,-897; .loc 1 1374 8 setp.eq.u32 %r744,%r249,0; @ %r744 bra $L94; .loc 1 1376 19 add.u32 %r249,%r249,-1; .loc 1 1377 14 add.u64 %r236,%r236,1; $L94: .loc 1 1379 5 add.u32 %r250,%r250,1; .loc 1 1380 5 bra $L95; $L82: .loc 1 1397 19 cvta.const.u64 %r745,basefix$0; cvt.s64.s32 %r746,%r247; add.u64 %r747,%r746,%r746; add.u64 %r748,%r745,%r747; ld.s16 %r247,[%r748]; .loc 1 1398 8 setp.le.s32 %r749,%r247,8; @ %r749 bra $L86; .loc 1 1400 11 and.b32 %r245,%r245,-2945; .loc 1 1401 5 bra $L87; $L89: .loc 1 1417 8 setp.le.s32 %r750,%r247,10; @ %r750 bra $L86; .loc 1 1419 11 and.b32 %r245,%r245,-2945; .loc 1 1420 5 bra $L87; $L85: .loc 1 1425 15 and.b32 %r751,%r245,128; .loc 1 1425 8 setp.eq.u32 %r752,%r751,0; @ %r752 bra $L86; .loc 1 1427 15 and.b32 %r245,%r245,-129; .loc 1 1428 9 bra $L87; $L91: .loc 1 1435 16 and.b32 %r753,%r245,1536; .loc 1 1435 8 setp.ne.u32 %r754,%r753,512; @ %r754 bra $L86; .loc 1 1438 15 and.b32 %r285,%r245,-513; .loc 1 1442 15 or.b32 %r245,%r285,1280; .loc 1 1437 14 mov.u32 %r247,16; $L87: .loc 1 1457 13 cvt.u32.u32 %r755,%r143; st.u8 [%r241],%r755; .loc 1 1457 10 add.u64 %r241,%r241,1; $L95: .loc 1 1459 12 ld.u32 %r756,[%r379+8]; add.u32 %r152,%r756,-1; .loc 1 1459 11 st.u32 [%r379+8],%r152; setp.le.s32 %r757,%r152,0; @ %r757 bra $L96; .loc 1 1460 9 add.u64 %r758,%r142,1; st.u64 [%r379],%r758; bra $L97; $L96: .loc 1 1462 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r761,[%value_in]; } .loc 1 1462 11 setp.ne.u32 %r762,%r761,0; @ %r762 bra $L86; $L97: .loc 1 1342 30 add.u64 %r236,%r236,-1; .loc 1 1342 18 setp.ne.u64 %r763,%r236,0; @ %r763 bra $L98; $L86: .loc 1 1473 14 and.b32 %r764,%r245,256; .loc 1 1473 7 setp.eq.u32 %r765,%r764,0; @ %r765 bra $L99; .loc 1 1475 11 setp.ge.u64 %r766,%frame,%r241; @ %r766 bra $L100; .loc 1 1476 3 add.u64 %r287,%r241,-1; ld.s8 %r770,[%r241+-1]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r770; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r771,[%value_in]; } mov.u64 %r241,%r287; $L100: .loc 1 1477 11 setp.eq.u64 %r772,%frame,%r241; @ %r772 bra $L1; $L99: .loc 1 1480 15 and.b32 %r773,%r245,16; .loc 1 1480 7 setp.ne.u32 %r774,%r773,0; @ %r774 bra $L101; .loc 1 1484 11 mov.u32 %r775,0; st.u8 [%r241],%r775; .loc 1 1485 15 mov.u64 %r778,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r778; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r247; call (%value_in),%r69,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r780,[%value_in]; } .loc 1 888 11 add.u64 %r781,%r381,7; and.b64 %r356,%r781,-8; add.u64 %r381,%r356,8; .loc 1 1486 18 and.b32 %r782,%r245,32; .loc 1 1486 11 setp.eq.u32 %r783,%r782,0; @ %r783 bra $L102; .loc 1 1488 12 ld.u64 %r297,[%r356]; .loc 1 1498 11 st.u64 [%r297],%r780; bra $L103; $L102: .loc 1 1507 23 and.b32 %r784,%r245,4; .loc 1 1507 16 setp.eq.u32 %r785,%r784,0; @ %r785 bra $L104; .loc 1 1510 9 ld.u64 %r786,[%r356]; st.u16 [%r786],%r780; bra $L103; $L104: .loc 1 1512 23 and.b32 %r787,%r245,1; .loc 1 1512 16 setp.eq.u32 %r788,%r787,0; @ %r788 bra $L105; .loc 1 1515 9 ld.u64 %r789,[%r356]; st.u64 [%r789],%r780; bra $L103; $L105: .loc 1 1518 23 and.b32 %r790,%r245,2; .loc 1 1518 16 setp.eq.u32 %r791,%r790,0; @ %r791 bra $L106; .loc 1 1521 8 mov.u64 %r792,_strtoul_r; setp.ne.u64 %r793,%r69,%r792; @ %r793 bra $L107; .loc 1 1522 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r778; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r247; call (%value_in),_strtoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r798,[%value_in]; } .loc 1 1526 10 mov.u64 %r166,%r798; bra $L108; $L107: .loc 1 1524 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r778; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r247; call (%value_in),_strtoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r803,[%value_in]; } mov.u64 %r166,%r803; $L108: .loc 1 1526 10 ld.u64 %r804,[%r356]; st.u64 [%r804],%r166; bra $L103; $L106: .loc 1 1532 9 ld.u64 %r805,[%r356]; st.u32 [%r805],%r780; $L103: .loc 1 1534 17 add.u32 %r377,%r377,1; $L101: .loc 1 1536 15 sub.u64 %r806,%r241,%frame; .loc 1 1536 21 cvt.u32.u64 %r807,%r806; .loc 1 1536 10 vadd.u32.u32.u32.add %r207,%r207,%r250,%r807; .loc 1 1537 4 bra $L7; $L51: .loc 1 1553 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r810,[%value_in]; } .loc 1 1553 16 ld.u64 %r274,[%r810]; .loc 1 1561 14 add.u64 %r811,%r236,-1; .loc 1 1561 7 setp.le.u64 %r812,%r811,348; @ %r812 bra $L176; .loc 1 1564 27 cvt.u32.u64 %r813,%r236; .loc 1 1564 19 add.u32 %r255,%r813,-349; .loc 1 1565 14 mov.u64 %r236,349; bra $L109; $L176: .loc 1 1550 13 mov.u32 %r255,0; $L109: .loc 1 1567 10 or.b32 %r246,%r244,1920; .loc 1 1551 9 mov.u32 %r256,%r257; .loc 1 1549 10 mov.u64 %r254,0; .loc 1 1569 15 mov.u64 %r253,%r254; .loc 1 1568 11 mov.u64 %r252,%r254; .loc 1 1547 9 mov.u64 %r251,%r254; .loc 1 1570 11 mov.u64 %r242,%frame; $L140: .loc 1 1572 15 ld.u64 %r176,[%r379]; .loc 1 1572 12 ld.u8 %r177,[%r176]; cvt.u16.u32 %r814,%r177; setp.eq.u16 %r815,%r814,78; @ %r815 bra $L110; setp.gt.u16 %r817,%r814,78; @ %r817 bra $L111; setp.gt.u16 %r819,%r814,57; @ %r819 bra $L112; setp.gt.u16 %r821,%r814,48; @ %r821 bra $L113; setp.eq.u16 %r823,%r814,48; @ %r823 bra $L114; add.u16 %r824,%r814,-43; cvt.u32.u16 %r826,%r824; cvt.u16.u8 %r1079,%r826; mov.u16 %r828,%r1079; and.b16 %r830,%r828,253; setp.eq.u16 %r831,%r830,0; @ ! %r831 bra $L116; bra $L115; $L112: setp.eq.u16 %r833,%r814,70; @ %r833 bra $L117; setp.gt.u16 %r835,%r814,70; @ %r835 bra $L118; setp.eq.u16 %r837,%r814,65; @ %r837 bra $L119; setp.eq.u16 %r839,%r814,69; @ %r839 bra $L120; bra $L116; $L118: setp.eq.u16 %r841,%r814,73; @ %r841 bra $L121; bra $L116; $L111: setp.eq.u16 %r843,%r814,102; @ %r843 bra $L117; setp.gt.u16 %r845,%r814,102; @ %r845 bra $L122; setp.eq.u16 %r847,%r814,97; @ %r847 bra $L119; setp.gt.u16 %r849,%r814,97; @ %r849 bra $L123; setp.eq.u16 %r851,%r814,84; @ %r851 bra $L124; setp.eq.u16 %r853,%r814,89; @ %r853 bra $L125; bra $L116; $L123: setp.eq.u16 %r855,%r814,101; @ %r855 bra $L120; bra $L116; $L122: setp.eq.u16 %r857,%r814,116; @ %r857 bra $L124; setp.gt.u16 %r859,%r814,116; @ %r859 bra $L126; setp.eq.u16 %r861,%r814,105; @ %r861 bra $L121; setp.eq.u16 %r863,%r814,110; @ %r863 bra $L110; bra $L116; $L126: setp.eq.u16 %r865,%r814,121; @ %r865 bra $L125; bra $L116; $L114: .loc 1 1580 15 and.b32 %r866,%r246,256; .loc 1 1580 8 setp.eq.u32 %r867,%r866,0; @ %r867 bra $L113; .loc 1 1582 15 and.b32 %r246,%r246,-129; .loc 1 1583 15 add.u64 %r252,%r252,1; .loc 1 1584 12 setp.ne.u32 %r868,%r255,0; @ %r868 bra $L127; .loc 1 1755 13 add.u64 %r236,%r236,-1; bra $L128; $L127: .loc 1 1586 16 add.u32 %r255,%r255,-1; bra $L128; $L113: .loc 1 1601 18 add.u32 %r869,%r256,%r257; .loc 1 1601 8 setp.ne.u32 %r870,%r869,0; @ %r870 bra $L129; .loc 1 1603 15 and.b32 %r246,%r246,-385; .loc 1 1604 9 bra $L130; $L115: .loc 1 1610 15 and.b32 %r871,%r246,128; .loc 1 1610 8 setp.eq.u32 %r872,%r871,0; @ %r872 bra $L129; .loc 1 1612 15 and.b32 %r246,%r246,-129; .loc 1 1613 9 bra $L130; $L110: .loc 1 1618 18 cvt.u16.u32 %r874,%r256; set.u32.eq.u16 %r875,%r874,0; neg.s32 %r876,%r875; mov.u32 %r873,%r876; .loc 1 1618 33 set.u32.eq.u64 %r878,%r252,0; neg.s32 %r879,%r878; mov.u32 %r877,%r879; .loc 1 1618 23 cvt.u16.u8 %r1079,%r873; mov.u16 %r881,%r1079; cvt.u16.u8 %r1079,%r877; mov.u16 %r882,%r1079; and.b16 %r880,%r881,%r882; cvt.u32.u16 %r883,%r880; .loc 1 1618 8 cvt.u16.u8 %r884,%r883; setp.eq.u16 %r885,%r884,0; @ %r885 bra $L131; .loc 1 1619 19 and.b32 %r886,%r246,1792; .loc 1 1619 9 setp.ne.u32 %r887,%r886,1792; @ %r887 bra $L132; .loc 1 1622 15 and.b32 %r246,%r246,-1921; .loc 1 1623 18 mov.u32 %r256,1; .loc 1 1624 9 mov.u64 %r252,0; bra $L130; $L131: .loc 1 1626 8 setp.eq.u16 %r889,%r874,2; @ %r889 bra $L177; $L132: .loc 1 1631 18 cvt.u16.u32 %r891,%r257; set.u32.eq.u16 %r892,%r891,1; neg.s32 %r893,%r892; mov.u32 %r890,%r893; .loc 1 1631 35 set.u32.eq.u16 %r896,%r891,4; neg.s32 %r897,%r896; mov.u32 %r894,%r897; .loc 1 1631 23 cvt.u16.u8 %r1079,%r890; mov.u16 %r899,%r1079; cvt.u16.u8 %r1079,%r894; mov.u16 %r900,%r1079; or.b16 %r898,%r899,%r900; cvt.u32.u16 %r901,%r898; .loc 1 1631 8 cvt.u16.u8 %r902,%r901; setp.eq.u16 %r903,%r902,0; @ %r903 bra $L129; .loc 1 1633 17 add.u16 %r905,%r891,1; cvt.u32.u16 %r907,%r905; cvt.s32.s8 %r257,%r907; .loc 1 1634 9 bra $L130; $L119: .loc 1 1639 8 cvt.u16.u32 %r909,%r256; setp.eq.u16 %r910,%r909,1; @ %r910 bra $L178; bra $L129; $L121: .loc 1 1647 18 cvt.u16.u32 %r912,%r257; set.u32.eq.u16 %r913,%r912,0; neg.s32 %r914,%r913; mov.u32 %r911,%r914; .loc 1 1647 33 set.u32.eq.u64 %r916,%r252,0; neg.s32 %r917,%r916; mov.u32 %r915,%r917; .loc 1 1647 23 cvt.u16.u8 %r1079,%r911; mov.u16 %r919,%r1079; cvt.u16.u8 %r1079,%r915; mov.u16 %r920,%r1079; and.b16 %r918,%r919,%r920; cvt.u32.u16 %r921,%r918; .loc 1 1647 8 cvt.u16.u8 %r922,%r921; setp.eq.u16 %r923,%r922,0; @ %r923 bra $L133; .loc 1 1648 19 and.b32 %r924,%r246,1792; .loc 1 1648 9 setp.ne.u32 %r925,%r924,1792; @ %r925 bra $L134; .loc 1 1651 15 and.b32 %r246,%r246,-1921; .loc 1 1652 18 mov.u32 %r257,1; .loc 1 1653 9 mov.u64 %r252,0; bra $L130; $L133: .loc 1 1655 18 cvt.u32.u32 %r926,%r257; cvt.u16.u8 %r928,%r926; add.u16 %r927,%r928,-3; cvt.u32.u16 %r929,%r927; cvt.u16.u8 %r1079,%r929; mov.u16 %r931,%r1079; .loc 1 1655 8 and.b16 %r933,%r931,253; setp.ne.u16 %r934,%r933,0; @ %r934 bra $L129; .loc 1 1657 17 add.u16 %r935,%r928,1; cvt.u32.u16 %r937,%r935; cvt.s32.s8 %r257,%r937; .loc 1 1658 9 bra $L130; $L117: .loc 1 1663 8 cvt.u16.u32 %r938,%r257; setp.eq.u16 %r939,%r938,2; @ %r939 bra $L179; bra $L129; $L124: .loc 1 1671 8 cvt.u16.u32 %r940,%r257; setp.eq.u16 %r941,%r940,6; @ %r941 bra $L180; bra $L129; $L125: .loc 1 1679 8 cvt.u16.u32 %r942,%r257; setp.eq.u16 %r943,%r942,7; @ %r943 bra $L181; bra $L129; $L120: .loc 1 1688 16 and.b32 %r944,%r246,1280; .loc 1 1688 8 setp.eq.u32 %r945,%r944,1024; @ %r945 bra $L135; .loc 1 1689 20 and.b32 %r946,%r246,1024; .loc 1 1689 9 setp.eq.u32 %r947,%r946,0; @ %r947 bra $L129; .loc 1 1689 29 setp.eq.u64 %r948,%r252,0; @ %r948 bra $L136; $L135: .loc 1 1691 22 and.b32 %r949,%r246,512; .loc 1 1691 12 setp.ne.u32 %r950,%r949,0; @ %r950 bra $L137; .loc 1 1693 17 sub.u64 %r253,%r252,%r251; mov.u64 %r254,%r242; $L137: .loc 1 1698 11 and.b32 %r200,%r246,-1921; .loc 1 1696 15 or.b32 %r246,%r200,384; .loc 1 1699 16 mov.u64 %r252,0; .loc 1 1700 9 bra $L130; $L116: .loc 1 1705 8 ld.u8 %r951,[%r274]; cvt.u16.u32 %r952,%r177; setp.ne.u16 %r953,%r951,%r952; @ %r953 bra $L129; .loc 1 1706 19 and.b32 %r954,%r246,512; .loc 1 1706 9 setp.eq.u32 %r955,%r954,0; @ %r955 bra $L129; .loc 1 1708 15 and.b32 %r246,%r246,-641; .loc 1 1710 9 mov.u64 %r251,%r252; bra $L130; $L177: .loc 1 1628 18 mov.u32 %r256,3; bra $L130; $L178: .loc 1 1641 18 mov.u32 %r256,2; bra $L130; $L179: .loc 1 1665 18 mov.u32 %r257,3; bra $L130; $L180: .loc 1 1673 18 mov.u32 %r257,7; bra $L130; $L181: .loc 1 1681 18 mov.u32 %r257,8; $L130: .loc 1 1753 13 cvt.u32.u32 %r956,%r177; st.u8 [%r242],%r956; .loc 1 1755 13 add.u64 %r236,%r236,-1; .loc 1 1753 10 add.u64 %r242,%r242,1; $L128: .loc 1 1756 8 add.u32 %r207,%r207,1; .loc 1 1757 12 ld.u32 %r957,[%r379+8]; add.u32 %r206,%r957,-1; .loc 1 1757 11 st.u32 [%r379+8],%r206; setp.le.s32 %r958,%r206,0; @ %r958 bra $L138; .loc 1 1758 9 add.u64 %r959,%r176,1; st.u64 [%r379],%r959; bra $L139; $L138: .loc 1 1760 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r379; call (%value_in),__srefill_r,(%out_arg1,%out_arg2); ld.param.u32 %r962,[%value_in]; } .loc 1 1760 11 setp.ne.u32 %r963,%r962,0; @ %r963 bra $L129; $L139: .loc 1 1570 18 setp.ne.u64 %r964,%r236,0; @ %r964 bra $L140; $L129: .loc 1 1763 7 setp.eq.u64 %r965,%r252,0; @ %r965 bra $L136; .loc 1 1764 12 and.b32 %r246,%r246,-257; $L136: .loc 1 1773 17 add.u32 %r966,%r256,-1; .loc 1 1773 7 setp.gt.u32 %r967,%r966,1; @ %r967 bra $L141; $L161: .loc 1 1778 17 setp.ge.u64 %r968,%frame,%r242; @ %r968 bra $L1; $L142: .loc 1 1780 5 add.u64 %r242,%r242,-1; ld.s8 %r972,[%r242]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r972; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r973,[%value_in]; } .loc 1 1778 17 setp.ne.u64 %r974,%frame,%r242; @ %r974 bra $L142; bra $L1; $L141: .loc 1 1788 17 add.u32 %r975,%r257,-1; .loc 1 1788 7 setp.gt.u32 %r976,%r975,6; @ %r976 bra $L143; .loc 1 1790 11 cvt.u16.u32 %r977,%r257; setp.le.s16 %r978,%r977,2; @ %r978 bra $L144; .loc 1 1791 18 cvt.u32.u32 %r979,%r257; cvt.u32.u8 %r300,%r979; .loc 1 1791 21 setp.ne.u16 %r981,%r977,3; @ %r981 bra $L182; bra $L143; $L144: .loc 1 1798 14 setp.lt.u64 %r982,%frame,%r242; @ %r982 bra $L146; bra $L1; $L182: .loc 1 1791 21 mov.u64 %r279,%r242; cvt.u32.u64 %r1074,%r279; cvt.u32.u64 %r1073,%r279; cvt.u16.u32 %r994,%r300; cvt.u16.u8 %r1079,%r1073; mov.u16 %r999,%r1079; $L145: .loc 1 1793 7 add.u64 %r279,%r279,-1; ld.s8 %r986,[%r279]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r986; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r987,[%value_in]; } cvt.u32.u64 %r989,%r279; vsub.u32.u32.u32.add %r343,%r989,%r1074,%r207; .loc 1 1791 21 cvt.u32.u64 %r991,%r279; cvt.u16.u8 %r1079,%r991; mov.u16 %r993,%r1079; add.u16 %r992,%r993,%r994; cvt.u32.u16 %r995,%r992; cvt.u16.u8 %r1079,%r995; mov.u16 %r998,%r1079; sub.u16 %r997,%r998,%r999; cvt.u32.u16 %r1000,%r997; cvt.s16.s8 %r1001,%r1000; setp.gt.s16 %r1002,%r1001,3; @ %r1002 bra $L145; .loc 1 1794 7 mov.u32 %r207,%r343; mov.u64 %r242,%r279; bra $L143; $L146: .loc 1 1800 9 add.u64 %r242,%r242,-1; ld.s8 %r1006,[%r242]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1006; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1007,[%value_in]; } .loc 1 1798 14 setp.ne.u64 %r1008,%frame,%r242; @ %r1008 bra $L146; bra $L1; $L143: .loc 1 1811 14 and.b32 %r1009,%r246,256; .loc 1 1811 7 setp.eq.u32 %r1010,%r1009,0; @ %r1010 bra $L147; .loc 1 1813 18 and.b32 %r1011,%r246,1024; .loc 1 1813 11 setp.eq.u32 %r1012,%r1011,0; @ %r1012 bra $L148; .loc 1 1816 14 setp.ge.u64 %r1013,%frame,%r242; @ %r1013 bra $L1; $L149: .loc 1 1818 9 add.u64 %r242,%r242,-1; ld.s8 %r1017,[%r242]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r1017; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1018,[%value_in]; } .loc 1 1816 14 setp.ne.u64 %r1019,%frame,%r242; @ %r1019 bra $L149; bra $L1; $L148: .loc 1 1824 12 ld.s8 %r235,[%r242+-1]; .loc 1 1826 26 cvt.u16.u32 %r1021,%r235; and.b16 %r1020,%r1021,-33; cvt.u32.u16 %r1022,%r1020; .loc 1 1826 11 cvt.s16.s8 %r1023,%r1022; setp.ne.u16 %r1024,%r1023,69; @ %r1024 bra $L150; .loc 1 1824 10 add.u64 %r242,%r242,-1; .loc 1 1825 8 add.u32 %r207,%r207,-1; bra $L151; $L150: .loc 1 1828 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r235; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1028,[%value_in]; } .loc 1 1829 7 ld.s8 %r235,[%r242+-2]; .loc 1 1830 5 add.u32 %r207,%r207,-2; .loc 1 1829 7 add.u64 %r242,%r242,-2; $L151: .loc 1 1832 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r235; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),_ungetc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1032,[%value_in]; } $L147: .loc 1 1834 15 and.b32 %r1033,%r246,16; .loc 1 1834 7 setp.ne.u32 %r1034,%r1033,0; @ %r1034 bra $L7; .loc 1 1845 11 mov.u32 %r1035,0; st.u8 [%r242],%r1035; .loc 1 1846 19 and.b32 %r1036,%r246,1536; .loc 1 1846 11 setp.ne.u32 %r1037,%r1036,1024; @ %r1037 bra $L152; .loc 1 1854 11 setp.eq.u64 %r1038,%r251,%r252; @ %r1038 bra $L153; .loc 1 1849 13 sub.u64 %r281,%r251,%r252; bra $L154; $L152: .loc 1 1852 16 setp.eq.u64 %r1039,%r253,0; @ %r1039 bra $L153; .loc 1 1853 55 add.u64 %r1044,%r254,1; .loc 1 1853 27 mov.u32 %r1043,10; mov.u64 %r1042,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1044; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1042; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1043; call (%value_in),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r1045,[%value_in]; } .loc 1 1853 25 sub.u64 %r281,%r1045,%r253; mov.u64 %r242,%r254; $L154: .loc 1 1859 8 setp.lt.u64 %r1047,%r242,%r1077; @ %r1047 bra $L155; .loc 1 1860 17 add.u64 %r242,%frame,328; $L155: .loc 1 1861 18 st.u64 [%stack],%r281; cvta.const.u64 %r1049,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r242; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1049; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1050,[%value_in]; } $L153: .loc 1 1873 16 mov.u64 %r1054,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r378; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1054; call (%value_in),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r1055,[%value_in]; } .loc 1 888 11 add.u64 %r1056,%r381,7; and.b64 %r316,%r1056,-8; add.u64 %r381,%r316,8; .loc 1 1875 18 and.b32 %r1057,%r246,1; .loc 1 1875 11 setp.eq.u32 %r1058,%r1057,0; @ %r1058 bra $L156; .loc 1 1878 9 ld.u64 %r1059,[%r316]; st.f64 [%r1059],%r1055; bra $L157; $L156: .loc 1 1877 8 ld.u64 %r336,[%r316]; .loc 1 1880 23 and.b32 %r1060,%r246,2; .loc 1 1880 16 setp.eq.u32 %r1061,%r1060,0; @ %r1061 bra $L158; .loc 1 1883 10 st.f64 [%r336],%r1055; bra $L157; $L158: .loc 1 1888 8 setp.num.f64 %r1062,%r1055,%r1055; @ %r1062 bra $L159; .loc 1 1889 14 cvta.const.u64 %r1063,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1063; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r1064,[%value_in]; } .loc 1 1889 12 st.f32 [%r336],%r1064; bra $L157; $L159: .loc 1 1891 12 cvt.rn.f32.f64 %r1065,%r1055; st.f32 [%r336],%r1065; $L157: .loc 1 1893 17 add.u32 %r377,%r377,1; bra $L7; $L35: .loc 1 1905 63 setp.eq.u32 %r1066,%r377,0; @ %r1066 bra $L183; .loc 1 1905 25 ld.u16 %r1068,[%r379+16]; and.b16 %r1067,%r1068,64; setp.ne.u16 %r1069,%r1067,0; .loc 1 1905 63 selp.u32 %r377,-1,%r377,%r1069; bra $L1; $L162: .loc 1 613 10 mov.u32 %r377,%r27; bra $L1; $L183: .loc 1 1905 63 mov.u32 %r377,-1; bra $L1; $L3: $L160: $L134: .loc 1 1773 17 add.u32 %r1071,%r256,-1; .loc 1 1773 7 setp.le.u32 %r1072,%r1071,1; @ %r1072 bra $L161; mov.u64 %r252,0; bra $L143; $L1: .loc 1 1914 1 mov.u32 %value,%r377; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfscanf .visible .func (.param .u32 %value_out) vfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 231 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 233 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L346; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L346; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L346: .loc 1 234 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 235 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfscanf .visible .func (.param .u32 %value_out) __svfscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 242 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 243 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfscanf_r .visible .func (.param .u32 %value_out) _vfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 253 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L352; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L352; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L352: .loc 1 254 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 255 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1861 0 0 0 644 95723 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9); .file 1 "../../../../../../newlib/libc/stdio/vfwprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vfwprintf_r .visible .func (.param .u32 %value_out) _vfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: vfwprintf .visible .func (.param .u32 %value_out) vfwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _dtoa_r .extern .func (.param .u64 %value_out) _dtoa_r (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __sprint_r .extern .func (.param .u32 %value_out) __sprint_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: btowc .extern .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: zeroes$0 .const .align 4 .u32 zeroes$0[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$1 .const .align 4 .u32 blanks$1[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[4] = {73,78,70,0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[4] = {105,110,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[4] = {78,65,78,0 }; // BEGIN VAR DEF: $LC3 .const .align 4 .u32 $LC3[4] = {110,97,110,0 }; // BEGIN VAR DEF: $LC4 .const .align 4 .u32 $LC4[17] = {48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,0 }; // BEGIN VAR DEF: $LC5 .const .align 4 .u32 $LC5[17] = {48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 4 .u32 $LC6[7] = {40,110,117,108,108,41,0 }; // BEGIN VAR DEF: $LC7 .const .align 4 .u32 $LC7[2] = {48,0 }; // BEGIN FUNCTION DEF: wcvt .func (.param .u64 %value_out) wcvt (.param .u64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u32 %in_ar6, .param .u64 %in_ar7, .param .u64 %in_ar8, .param .u32 %in_ar9) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .f64 %ar1; ld.param.f64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %ar5; ld.param.u64 %ar5,[%in_ar5]; .reg .u32 %ar6; ld.param.u32 %ar6,[%in_ar6]; .reg .u64 %ar7; ld.param.u64 %ar7,[%in_ar7]; .reg .u64 %ar8; ld.param.u64 %ar8,[%in_ar8]; .reg .u32 %ar9; ld.param.u32 %ar9,[%in_ar9]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r25; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r47; .reg .u64 %r50; .reg .u32 %r54; .reg .u64 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r74; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .u32 %r110; .reg .u64 %r115; .reg .u64 %r116; .reg .pred %r117; .reg .u32 %r120; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u16 %r135; .reg .u16 %r136; .reg .u16 %r137; .reg .u32 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u16 %r144; mov.u64 %r56,%ar0; mov.f64 %r57,%ar1; mov.u32 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r61,%ar5; mov.u32 %r62,%ar6; mov.u64 %r63,%ar7; mov.u64 %r64,%ar8; mov.u32 %r65,%ar9; .loc 1 1562 6 mov.b64 %r66,%r57; shr.u64 %r67,%r66,32; cvt.u32.u64 %r68,%r67; .loc 1 1562 5 setp.ge.s32 %r69,%r68,0; @ %r69 bra $L18; .loc 1 1563 9 neg.f64 %r57,%r57; .loc 1 1564 9 mov.u32 %r39,45; bra $L2; $L18: .loc 1 1566 9 mov.u32 %r39,0; $L2: st.u32 [%r60],%r39; .loc 1 1616 23 and.b32 %r25,%r62,-33; .loc 1 1616 5 setp.eq.u32 %r70,%r25,70; @ %r70 bra $L3; .loc 1 1623 6 setp.ne.u32 %r71,%r25,69; @ %r71 bra $L4; .loc 1 1624 11 add.u32 %r58,%r58,1; .loc 1 1635 13 add.u64 %r79,%frame,8; mov.u32 %r74,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r74; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r79; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r80,[%value_in]; } mov.u64 %r50,%r80; bra $L5; $L23: .loc 1 1642 10 ld.u32 %r54,[%r61]; bra $L6; $L15: .loc 1 1641 23 mov.u32 %r81,1; sub.u32 %r54,%r81,%r58; .loc 1 1641 12 st.u32 [%r61],%r54; $L6: .loc 1 1642 10 cvt.s64.s32 %r82,%r54; .loc 1 1642 7 add.u64 %r83,%r82,%r47; add.u64 %r35,%r126,%r83; $L13: .loc 1 1644 6 setp.neu.f64 %r84,%r57,0d0000000000000000; @ %r84 bra $L7; .loc 1 1645 8 st.u64 [%frame],%r35; mov.u64 %r29,%r35; bra $L8; $L7: .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.le.u64 %r85,%r35,%r29; @ %r85 bra $L8; .loc 1 1647 11 mov.u32 %r87,48; $L9: .loc 1 1647 8 add.u64 %r86,%r29,1; st.u64 [%frame],%r86; .loc 1 1647 11 st.u8 [%r29],%r87; .loc 1 1646 14 ld.u64 %r29,[%frame]; setp.lt.u64 %r88,%r29,%r35; @ %r88 bra $L9; $L8: .loc 1 1650 18 sub.u64 %r89,%r29,%r50; .loc 1 1650 12 cvt.u32.u64 %r31,%r89; st.u32 [%r63],%r31; .loc 1 1655 28 set.u32.gt.s32 %r91,%r65,0; neg.s32 %r92,%r91; mov.u32 %r90,%r92; set.u32.gt.s32 %r94,%r31,0; neg.s32 %r95,%r94; mov.u32 %r93,%r95; cvt.u16.u8 %r144,%r90; mov.u16 %r97,%r144; cvt.u16.u8 %r144,%r93; mov.u16 %r98,%r144; and.b16 %r96,%r97,%r98; cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r100,%r99; setp.ne.u16 %r101,%r100,0; @ ! %r101 bra $L21; mov.u64 %r36,%r50; mov.u64 %r37,%r64; .loc 1 1655 11 mov.u32 %r40,0; $L11: .loc 1 1656 15 ld.s8 %r103,[%r36]; st.u32 [%r37],%r103; .loc 1 1655 40 add.u32 %r40,%r40,1; .loc 1 1655 28 add.u64 %r36,%r36,1; add.u64 %r37,%r37,4; ld.u32 %r105,[%r63]; min.s32 %r104,%r65,%r105; setp.gt.s32 %r106,%r104,%r40; @ %r106 bra $L11; bra $L21; $L5: .loc 1 1638 15 cvt.s64.s32 %r107,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r107; bra $L13; $L4: .loc 1 1635 13 add.u64 %r115,%frame,8; mov.u32 %r110,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r110; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r115; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r116,[%value_in]; } mov.u64 %r50,%r116; .loc 1 1637 7 setp.ne.u32 %r117,%r25,71; @ ! %r117 bra $L22; bra $L5; $L3: .loc 1 1635 13 add.u64 %r125,%frame,8; mov.u32 %r120,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r57; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r120; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r58; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r61; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r125; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%frame; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r126,[%value_in]; } mov.u64 %r50,%r126; .loc 1 1638 15 cvt.s64.s32 %r47,%r58; .loc 1 1640 7 ld.u8 %r129,[%r126]; cvt.s16.s8 %r128,%r129; set.u32.eq.u16 %r130,%r128,48; neg.s32 %r131,%r130; mov.u32 %r127,%r131; .loc 1 1640 24 set.u32.neu.f64 %r133,%r57,0d0000000000000000; neg.s32 %r134,%r133; mov.u32 %r132,%r134; cvt.u16.u8 %r144,%r127; mov.u16 %r136,%r144; cvt.u16.u8 %r144,%r132; mov.u16 %r137,%r144; and.b16 %r135,%r136,%r137; cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ ! %r140 bra $L23; bra $L15; $L17: .loc 1 1638 15 cvt.s64.s32 %r141,%r58; .loc 1 1638 6 add.u64 %r35,%r50,%r141; bra $L13; $L22: .loc 1 1637 44 and.b32 %r142,%r59,1; .loc 1 1637 35 setp.ne.u32 %r143,%r142,0; @ %r143 bra $L17; .loc 1 1650 18 ld.u64 %r29,[%frame]; bra $L8; $L21: .loc 1 1660 1 mov.u64 %value,%r64; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfwprintf_r .visible .func (.param .u32 %value_out) _vfwprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1312; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r45; .reg .u32 %r46; .reg .u64 %r63; .reg .u32 %r71; .reg .u32 %r76; .reg .u32 %r125; .reg .f64 %r137; .reg .u32 %r139; .reg .u32 %r140; .reg .u64 %r142; .reg .u64 %r143; .reg .u32 %r144; .reg .u32 %r148; .reg .u32 %r152; .reg .u64 %r153; .reg .u64 %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .u64 %r162; .reg .u64 %r163; .reg .u32 %r164; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r170; .reg .u32 %r173; .reg .u64 %r174; .reg .u32 %r177; .reg .u32 %r180; .reg .u64 %r183; .reg .u32 %r184; .reg .u32 %r186; .reg .u32 %r188; .reg .u64 %r194; .reg .u64 %r196; .reg .u32 %r197; .reg .u64 %r202; .reg .u32 %r204; .reg .u32 %r207; .reg .u64 %r209; .reg .u32 %r210; .reg .u64 %r212; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r217; .reg .u32 %r222; .reg .u64 %r224; .reg .u32 %r226; .reg .u64 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u64 %r233; .reg .u64 %r238; .reg .u32 %r239; .reg .u64 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u64 %r245; .reg .u64 %r248; .reg .u32 %r249; .reg .u64 %r252; .reg .u32 %r253; .reg .u64 %r257; .reg .u32 %r258; .reg .u64 %r259; .reg .u32 %r265; .reg .u64 %r267; .reg .u32 %r268; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r272; .reg .u64 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u64 %r277; .reg .u64 %r278; .reg .u64 %r279; .reg .u64 %r280; .reg .u32 %r281; .reg .u32 %r283; .reg .u32 %r290; .reg .u32 %r291; .reg .u32 %r294; .reg .u64 %r297; .reg .u32 %r300; .reg .u32 %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .u64 %r306; .reg .u64 %r307; .reg .u32 %r308; .reg .u32 %r309; .reg .u64 %r310; .reg .u64 %r312; .reg .u64 %r314; .reg .u32 %r320; .reg .u64 %r324; .reg .u64 %r335; .reg .u32 %r339; .reg .u32 %r340; .reg .u64 %r341; .reg .u64 %r343; .reg .u64 %r344; .reg .u64 %r345; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .u32 %r353; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u64 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u64 %r382; .reg .u64 %r384; .reg .u64 %r387; .reg .u32 %r396; .reg .u32 %r399; .reg .u32 %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r407; .reg .u64 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .u32 %r412; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r424; .reg .u64 %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u64 %r432; .reg .u32 %r433; .reg .u32 %r434; .reg .u32 %r438; .reg .u64 %r439; .reg .u64 %r440; .reg .u64 %r441; .reg .u64 %r442; .reg .u32 %r444; .reg .u64 %r446; .reg .u64 %r447; .reg .u32 %r448; .reg .pred %r449; .reg .u32 %r450; .reg .pred %r451; .reg .u16 %r453; .reg .u16 %r454; .reg .pred %r455; .reg .u16 %r456; .reg .u32 %r459; .reg .u16 %r460; .reg .u16 %r461; .reg .pred %r462; .reg .u64 %r463; .reg .pred %r464; .reg .u32 %r467; .reg .pred %r468; .reg .u16 %r469; .reg .u16 %r470; .reg .pred %r471; .reg .u16 %r472; .reg .pred %r473; .reg .u16 %r474; .reg .u32 %r476; .reg .u64 %r478; .reg .u64 %r479; .reg .u32 %r480; .reg .u32 %r482; .reg .u64 %r487; .reg .u32 %r488; .reg .pred %r489; .reg .u32 %r493; .reg .pred %r494; .reg .u16 %r495; .reg .u16 %r496; .reg .pred %r497; .reg .u16 %r498; .reg .u16 %r499; .reg .u64 %r501; .reg .u32 %r502; .reg .u32 %r503; .reg .u32 %r504; .reg .u32 %r505; .reg .u32 %r506; .reg .u32 %r507; .reg .u32 %r508; .reg .u16 %r509; .reg .u16 %r510; .reg .u16 %r511; .reg .u32 %r512; .reg .u16 %r513; .reg .pred %r514; .reg .u32 %r515; .reg .u32 %r516; .reg .u32 %r517; .reg .u32 %r518; .reg .u32 %r519; .reg .u32 %r520; .reg .u16 %r521; .reg .u16 %r522; .reg .u16 %r523; .reg .u32 %r524; .reg .u16 %r525; .reg .pred %r526; .reg .u64 %r527; .reg .u64 %r529; .reg .pred %r530; .reg .u64 %r531; .reg .u64 %r532; .reg .u64 %r533; .reg .u32 %r534; .reg .pred %r535; .reg .u32 %r540; .reg .pred %r541; .reg .u16 %r542; .reg .u16 %r543; .reg .pred %r544; .reg .u32 %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .pred %r549; .reg .pred %r550; .reg .pred %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .pred %r556; .reg .pred %r557; .reg .pred %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .pred %r566; .reg .pred %r567; .reg .pred %r568; .reg .pred %r570; .reg .u32 %r571; .reg .pred %r572; .reg .pred %r573; .reg .pred %r574; .reg .pred %r575; .reg .pred %r576; .reg .pred %r577; .reg .pred %r578; .reg .pred %r579; .reg .pred %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r583; .reg .pred %r584; .reg .u32 %r585; .reg .pred %r586; .reg .u32 %r587; .reg .u32 %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .u32 %r592; .reg .u32 %r593; .reg .pred %r594; .reg .u32 %r596; .reg .u32 %r597; .reg .u32 %r598; .reg .u32 %r599; .reg .u32 %r600; .reg .pred %r601; .reg .pred %r602; .reg .pred %r603; .reg .u32 %r604; .reg .pred %r605; .reg .u32 %r607; .reg .pred %r608; .reg .u16 %r609; .reg .u16 %r610; .reg .u32 %r611; .reg .pred %r613; .reg .u32 %r614; .reg .pred %r615; .reg .u32 %r616; .reg .pred %r617; .reg .u32 %r618; .reg .pred %r619; .reg .u16 %r620; .reg .pred %r623; .reg .pred %r624; .reg .u64 %r625; .reg .f64 %r628; .reg .pred %r629; .reg .pred %r630; .reg .pred %r631; .reg .u32 %r632; .reg .pred %r633; .reg .u64 %r634; .reg .u64 %r635; .reg .u32 %r637; .reg .pred %r638; .reg .u32 %r639; .reg .pred %r640; .reg .pred %r641; .reg .u32 %r642; .reg .u32 %r643; .reg .u32 %r644; .reg .u32 %r645; .reg .u32 %r646; .reg .u32 %r647; .reg .u32 %r648; .reg .u16 %r649; .reg .u16 %r650; .reg .u16 %r651; .reg .u32 %r652; .reg .u16 %r653; .reg .pred %r654; .reg .u32 %r664; .reg .u64 %r668; .reg .pred %r669; .reg .pred %r670; .reg .u64 %r673; .reg .u64 %r674; .reg .u64 %r675; .reg .pred %r676; .reg .u16 %r677; .reg .u16 %r678; .reg .u32 %r689; .reg .u64 %r693; .reg .u32 %r694; .reg .pred %r695; .reg .u32 %r696; .reg .u32 %r697; .reg .u32 %r698; .reg .u32 %r699; .reg .u32 %r700; .reg .u32 %r701; .reg .u16 %r702; .reg .u16 %r703; .reg .u16 %r704; .reg .u32 %r705; .reg .u16 %r706; .reg .pred %r707; .reg .pred %r708; .reg .pred %r709; .reg .u32 %r710; .reg .pred %r711; .reg .u32 %r713; .reg .u32 %r714; .reg .pred %r717; .reg .pred %r720; .reg .pred %r724; .reg .u64 %r730; .reg .u64 %r732; .reg .u64 %r733; .reg .u64 %r734; .reg .u64 %r736; .reg .u64 %r738; .reg .u32 %r739; .reg .u32 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .pred %r745; .reg .pred %r746; .reg .u32 %r747; .reg .pred %r748; .reg .u32 %r749; .reg .pred %r750; .reg .pred %r751; .reg .u32 %r752; .reg .pred %r753; .reg .u32 %r754; .reg .pred %r755; .reg .u64 %r756; .reg .u32 %r757; .reg .pred %r758; .reg .u64 %r759; .reg .u64 %r760; .reg .u32 %r761; .reg .pred %r762; .reg .u64 %r763; .reg .u64 %r764; .reg .u32 %r765; .reg .pred %r766; .reg .u64 %r767; .reg .u64 %r768; .reg .u32 %r769; .reg .pred %r770; .reg .u32 %r771; .reg .pred %r772; .reg .u32 %r773; .reg .pred %r774; .reg .u16 %r775; .reg .u32 %r776; .reg .u32 %r777; .reg .u32 %r778; .reg .pred %r779; .reg .pred %r780; .reg .pred %r781; .reg .u64 %r785; .reg .pred %r786; .reg .u64 %r788; .reg .pred %r789; .reg .u64 %r792; .reg .u64 %r793; .reg .u64 %r794; .reg .pred %r795; .reg .u16 %r796; .reg .u16 %r797; .reg .u64 %r799; .reg .u32 %r800; .reg .pred %r801; .reg .u32 %r802; .reg .u64 %r806; .reg .u64 %r808; .reg .u32 %r809; .reg .pred %r810; .reg .u64 %r814; .reg .u64 %r815; .reg .pred %r816; .reg .u64 %r817; .reg .u64 %r819; .reg .u32 %r820; .reg .u64 %r822; .reg .u32 %r823; .reg .pred %r824; .reg .u32 %r825; .reg .pred %r826; .reg .u32 %r827; .reg .pred %r828; .reg .u16 %r829; .reg .pred %r830; .reg .u32 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r834; .reg .u32 %r835; .reg .pred %r836; .reg .u16 %r837; .reg .u32 %r838; .reg .pred %r839; .reg .pred %r840; .reg .u32 %r841; .reg .pred %r842; .reg .u32 %r843; .reg .u32 %r844; .reg .u32 %r845; .reg .u32 %r846; .reg .u32 %r847; .reg .u32 %r848; .reg .u16 %r849; .reg .u16 %r850; .reg .u16 %r851; .reg .u32 %r852; .reg .u16 %r853; .reg .pred %r854; .reg .pred %r855; .reg .pred %r856; .reg .u32 %r857; .reg .u32 %r858; .reg .pred %r859; .reg .u32 %r860; .reg .u32 %r861; .reg .u32 %r862; .reg .u32 %r863; .reg .u16 %r864; .reg .u16 %r865; .reg .u32 %r866; .reg .u16 %r867; .reg .u16 %r868; .reg .u16 %r869; .reg .u32 %r870; .reg .u16 %r871; .reg .pred %r872; .reg .u64 %r874; .reg .u64 %r876; .reg .u32 %r877; .reg .u64 %r879; .reg .u64 %r881; .reg .pred %r882; .reg .u32 %r883; .reg .u32 %r884; .reg .u64 %r886; .reg .u32 %r887; .reg .u32 %r888; .reg .pred %r891; .reg .u64 %r893; .reg .u64 %r895; .reg .u64 %r896; .reg .u64 %r897; .reg .u64 %r898; .reg .u32 %r899; .reg .pred %r900; .reg .u64 %r902; .reg .u64 %r904; .reg .pred %r905; .reg .pred %r906; .reg .u32 %r907; .reg .pred %r908; .reg .pred %r909; .reg .u32 %r910; .reg .pred %r911; .reg .pred %r913; .reg .pred %r914; .reg .pred %r915; .reg .u64 %r917; .reg .pred %r918; .reg .u32 %r923; .reg .pred %r924; .reg .pred %r925; .reg .u64 %r927; .reg .pred %r928; .reg .u32 %r933; .reg .pred %r934; .reg .u32 %r935; .reg .pred %r936; .reg .u64 %r938; .reg .u32 %r939; .reg .pred %r940; .reg .u32 %r945; .reg .pred %r946; .reg .u64 %r949; .reg .u32 %r950; .reg .pred %r951; .reg .u32 %r956; .reg .pred %r957; .reg .pred %r958; .reg .pred %r959; .reg .pred %r960; .reg .u64 %r962; .reg .pred %r963; .reg .u32 %r968; .reg .pred %r969; .reg .pred %r970; .reg .u64 %r972; .reg .pred %r973; .reg .u32 %r978; .reg .pred %r979; .reg .pred %r980; .reg .pred %r981; .reg .u64 %r983; .reg .pred %r984; .reg .u32 %r989; .reg .pred %r990; .reg .pred %r991; .reg .u64 %r993; .reg .pred %r994; .reg .u32 %r999; .reg .pred %r1000; .reg .u32 %r1001; .reg .pred %r1002; .reg .u64 %r1003; .reg .u32 %r1004; .reg .pred %r1005; .reg .u32 %r1010; .reg .pred %r1011; .reg .pred %r1012; .reg .pred %r1013; .reg .u64 %r1014; .reg .u64 %r1015; .reg .u32 %r1016; .reg .pred %r1017; .reg .u32 %r1022; .reg .pred %r1023; .reg .u32 %r1024; .reg .pred %r1025; .reg .u32 %r1026; .reg .pred %r1027; .reg .u64 %r1029; .reg .u32 %r1030; .reg .pred %r1031; .reg .u32 %r1036; .reg .pred %r1037; .reg .pred %r1038; .reg .pred %r1039; .reg .u64 %r1041; .reg .pred %r1042; .reg .u32 %r1047; .reg .pred %r1048; .reg .pred %r1049; .reg .u64 %r1051; .reg .pred %r1052; .reg .u32 %r1057; .reg .pred %r1058; .reg .pred %r1059; .reg .u64 %r1060; .reg .u64 %r1061; .reg .u32 %r1062; .reg .pred %r1063; .reg .u32 %r1068; .reg .pred %r1069; .reg .pred %r1070; .reg .u32 %r1071; .reg .u32 %r1072; .reg .pred %r1073; .reg .u64 %r1075; .reg .u32 %r1076; .reg .pred %r1077; .reg .u32 %r1082; .reg .pred %r1083; .reg .pred %r1084; .reg .pred %r1085; .reg .u64 %r1087; .reg .pred %r1088; .reg .u32 %r1093; .reg .pred %r1094; .reg .pred %r1095; .reg .u64 %r1097; .reg .pred %r1098; .reg .u32 %r1103; .reg .pred %r1104; .reg .u64 %r1105; .reg .pred %r1106; .reg .u32 %r1111; .reg .pred %r1112; .reg .u32 %r1117; .reg .pred %r1118; .reg .u64 %r1119; .reg .u32 %r1120; .reg .pred %r1121; .reg .u32 %r1126; .reg .pred %r1127; .reg .u32 %r1128; .reg .pred %r1129; .reg .pred %r1130; .reg .u64 %r1132; .reg .pred %r1133; .reg .u32 %r1138; .reg .pred %r1139; .reg .pred %r1140; .reg .u64 %r1142; .reg .pred %r1143; .reg .u32 %r1148; .reg .pred %r1149; .reg .u64 %r1150; .reg .pred %r1151; .reg .u32 %r1152; .reg .pred %r1153; .reg .u64 %r1155; .reg .u32 %r1156; .reg .pred %r1157; .reg .u32 %r1162; .reg .pred %r1163; .reg .u64 %r1164; .reg .u64 %r1165; .reg .u64 %r1166; .reg .u64 %r1168; .reg .u32 %r1169; .reg .pred %r1170; .reg .u64 %r1171; .reg .u64 %r1172; .reg .u32 %r1173; .reg .pred %r1174; .reg .u32 %r1179; .reg .pred %r1180; .reg .u32 %r1181; .reg .u32 %r1182; .reg .u32 %r1183; .reg .pred %r1184; .reg .pred %r1185; .reg .u64 %r1187; .reg .pred %r1188; .reg .u32 %r1193; .reg .pred %r1194; .reg .pred %r1195; .reg .u64 %r1197; .reg .pred %r1198; .reg .u32 %r1203; .reg .pred %r1204; .reg .u32 %r1205; .reg .u32 %r1206; .reg .pred %r1207; .reg .u32 %r1208; .reg .pred %r1209; .reg .u64 %r1210; .reg .pred %r1211; .reg .u32 %r1216; .reg .pred %r1217; .reg .u64 %r1219; .reg .pred %r1220; .reg .u32 %r1225; .reg .pred %r1226; .reg .u32 %r1227; .reg .pred %r1228; .reg .u64 %r1229; .reg .u64 %r1230; .reg .pred %r1231; .reg .u32 %r1236; .reg .pred %r1237; .reg .pred %r1238; .reg .pred %r1239; .reg .u64 %r1241; .reg .pred %r1242; .reg .u32 %r1247; .reg .pred %r1248; .reg .pred %r1249; .reg .u64 %r1251; .reg .pred %r1252; .reg .u32 %r1257; .reg .pred %r1258; .reg .u64 %r1259; .reg .pred %r1260; .reg .u32 %r1265; .reg .pred %r1266; .reg .u64 %r1268; .reg .pred %r1269; .reg .u32 %r1274; .reg .pred %r1275; .reg .u32 %r1276; .reg .pred %r1277; .reg .pred %r1278; .reg .pred %r1279; .reg .u64 %r1281; .reg .pred %r1282; .reg .u32 %r1287; .reg .pred %r1288; .reg .pred %r1289; .reg .u64 %r1291; .reg .pred %r1292; .reg .u32 %r1297; .reg .pred %r1298; .reg .u32 %r1299; .reg .pred %r1300; .reg .u32 %r1301; .reg .pred %r1302; .reg .u32 %r1307; .reg .pred %r1308; .reg .u64 %r1311; .reg .pred %r1312; .reg .u64 %r1316; .reg .u32 %r1317; .reg .pred %r1318; .reg .u16 %r1319; .reg .u16 %r1320; .reg .u16 %r1321; .reg .u16 %r1322; .reg .pred %r1323; .reg .u16 %r1324; .reg .u16 %r1325; .reg .u16 %r1328; .reg .u16 %r1329; .reg .pred %r1330; .reg .u64 %r1333; .reg .u32 %r1334; .reg .pred %r1335; .reg .u32 %r1338; .reg .u32 %r1345; .reg .u64 %r1349; .reg .pred %r1350; .reg .pred %r1351; .reg .pred %r1352; .reg .pred %r1353; .reg .u32 %r1354; .reg .u32 %r1355; .reg .u32 %r1356; .reg .u32 %r1357; .reg .u32 %r1358; .reg .u32 %r1359; .reg .u16 %r1360; .reg .u16 %r1361; .reg .u16 %r1362; .reg .u32 %r1363; .reg .u16 %r1364; .reg .pred %r1365; .reg .u64 %r1366; .reg .u64 %r1367; .reg .pred %r1369; .reg .pred %r1370; .reg .u32 %r1376; .reg .u32 %r1377; .reg .u64 %r1378; .reg .u64 %r1402; .reg .u64 %r1403; .reg .u64 %r1404; .reg .u64 %r1405; .reg .u64 %r1406; .reg .u64 %r1407; .reg .u64 %r1408; .reg .u64 %r1409; .reg .u64 %r1410; .reg .u64 %r1411; .reg .u64 %r1412; .reg .u16 %r1419; mov.u64 %r439,%ar0; mov.u64 %r440,%ar1; mov.u64 %r441,%ar2; mov.u64 %r442,%ar3; .loc 1 424 6 mov.u32 %r444,0; st.u32 [%frame+1288],%r444; .loc 1 476 29 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r446,[%value_in]; } .loc 1 476 28 ld.u64 %r447,[%r446]; .loc 1 476 18 ld.s8 %r448,[%r447]; st.u32 [%frame+1300],%r448; .loc 1 591 2 setp.eq.u64 %r449,%r439,0; @ %r449 bra $L25; ld.u32 %r450,[%r439+80]; setp.ne.u32 %r451,%r450,0; @ %r451 bra $L25; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; call __sinit,(%out_arg1); } $L25: .loc 1 594 2 ld.s16 %r29,[%r440+16]; cvt.u16.u32 %r454,%r29; and.b16 %r453,%r454,8192; setp.ne.u16 %r455,%r453,0; @ %r455 bra $L26; .loc 1 592 2 ld.u32 %r27,[%r440+172]; .loc 1 594 2 or.b16 %r456,%r454,8192; cvt.s32.s16 %r29,%r456; st.u16 [%r440+16],%r456; or.b32 %r459,%r27,8192; st.u32 [%r440+172],%r459; $L26: .loc 1 597 5 cvt.u16.u32 %r461,%r29; and.b16 %r460,%r461,8; setp.eq.u16 %r462,%r460,0; @ %r462 bra $L27; .loc 1 597 6 ld.u64 %r463,[%r440+24]; setp.ne.u64 %r464,%r463,0; @ %r464 bra $L28; $L27: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r467,[%value_in]; } setp.eq.u32 %r468,%r467,0; @ %r468 bra $L29; $L88: .loc 1 599 10 mov.u32 %r438,-1; bra $L24; $L29: .loc 1 604 9 ld.s16 %r29,[%r440+16]; $L28: .loc 1 604 5 cvt.u16.u32 %r470,%r29; and.b16 %r469,%r470,26; setp.ne.u16 %r471,%r469,10; @ %r471 bra $L31; .loc 1 604 60 ld.u16 %r472,[%r440+18]; setp.lt.s16 %r473,%r472,0; @ %r473 bra $L31; .loc 1 187 14 and.b16 %r474,%r470,-3; st.u16 [%frame+1040],%r474; .loc 1 188 15 ld.u32 %r476,[%r440+172]; st.u32 [%frame+1196],%r476; .loc 1 189 13 st.u16 [%frame+1042],%r472; .loc 1 190 15 ld.u64 %r478,[%r440+48]; st.u64 [%frame+1072],%r478; .loc 1 191 14 ld.u64 %r479,[%r440+64]; st.u64 [%frame+1088],%r479; .loc 1 194 27 st.u64 [%frame+1024],%frame; .loc 1 194 17 st.u64 [%frame+1048],%frame; .loc 1 195 27 mov.u32 %r480,1024; st.u32 [%frame+1036],%r480; .loc 1 195 17 st.u32 [%frame+1056],%r480; .loc 1 196 16 mov.u32 %r482,0; st.u32 [%frame+1064],%r482; .loc 1 202 8 add.u64 %r487,%frame,1024; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r487; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r441; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r442; call (%value_in),_vfwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r488,[%value_in]; } mov.u32 %r438,%r488; .loc 1 203 5 setp.lt.s32 %r489,%r438,0; @ %r489 bra $L32; .loc 1 203 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r487; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r493,[%value_in]; } .loc 1 203 15 setp.eq.u32 %r494,%r493,0; .loc 1 204 7 selp.u32 %r438,%r438,-1,%r494; $L32: .loc 1 205 5 ld.u16 %r496,[%frame+1040]; and.b16 %r495,%r496,64; setp.eq.u16 %r497,%r495,0; @ %r497 bra $L24; .loc 1 206 14 ld.u16 %r499,[%r440+16]; or.b16 %r498,%r499,64; st.u16 [%r440+16],%r498; .loc 1 607 11 bra $L24; $L31: .loc 1 626 14 add.u64 %r1367,%frame,1024; st.u64 [%frame+1256],%r1367; .loc 1 627 16 mov.u64 %r501,0; st.u64 [%frame+1272],%r501; .loc 1 628 17 mov.u32 %r502,0; st.u32 [%frame+1264],%r502; .loc 1 416 42 mov.f64 %r137,0d0000000000000000; .loc 1 626 21 mov.u64 %r277,%r1367; .loc 1 435 11 mov.u64 %r174,%r501; .loc 1 419 6 mov.u32 %r46,%r502; .loc 1 630 6 mov.u32 %r438,%r46; .loc 1 647 4 add.u64 %r1402,%frame,1256; .loc 1 1508 5 add.u64 %r1403,%frame,1228; .loc 1 1500 6 add.u64 %r1404,%frame,1300; .loc 1 1438 4 add.u64 %r1405,%frame,1280; .loc 1 1436 4 add.u64 %r1406,%frame,1304; .loc 1 1319 7 add.u64 %r1407,%frame,160; add.u64 %r1408,%frame,1236; .loc 1 1687 36 add.u64 %r1409,%frame,1235; .loc 1 1042 9 add.u64 %r1410,%frame,1288; add.u64 %r1411,%frame,1292; add.u64 %r1412,%frame,1296; $L34: .loc 1 644 24 ld.u32 %r290,[%r441]; .loc 1 644 38 set.u32.ne.u32 %r504,%r290,0; neg.s32 %r505,%r504; mov.u32 %r503,%r505; set.u32.ne.u32 %r507,%r290,37; neg.s32 %r508,%r507; mov.u32 %r506,%r508; cvt.u16.u8 %r1419,%r503; mov.u16 %r510,%r1419; cvt.u16.u8 %r1419,%r506; mov.u16 %r511,%r1419; and.b16 %r509,%r510,%r511; cvt.u32.u16 %r512,%r509; cvt.u16.u8 %r513,%r512; setp.eq.u16 %r514,%r513,0; @ %r514 bra $L278; mov.u64 %r259,%r441; $L36: mov.u64 %r40,%r259; .loc 1 645 21 add.u64 %r259,%r259,4; .loc 1 644 24 ld.u32 %r290,[%r259]; .loc 1 644 38 set.u32.ne.u32 %r516,%r290,0; neg.s32 %r517,%r516; mov.u32 %r515,%r517; set.u32.ne.u32 %r519,%r290,37; neg.s32 %r520,%r519; mov.u32 %r518,%r520; cvt.u16.u8 %r1419,%r515; mov.u16 %r522,%r1419; cvt.u16.u8 %r1419,%r518; mov.u16 %r523,%r1419; and.b16 %r521,%r522,%r523; cvt.u32.u16 %r524,%r521; cvt.u16.u8 %r525,%r524; setp.ne.u16 %r526,%r525,0; @ %r526 bra $L36; .loc 1 646 16 sub.u64 %r527,%r259,%r441; shr.s64 %r529,%r527,2; .loc 1 646 10 cvt.u32.u64 %r291,%r529; .loc 1 646 6 setp.eq.u32 %r530,%r291,0; @ %r530 bra $L35; .loc 1 647 4 st.u64 [%r277],%r441; cvt.s64.s32 %r531,%r291; shl.b64 %r41,%r531,2; st.u64 [%r277+8],%r41; ld.u64 %r533,[%frame+1272]; add.u64 %r532,%r533,%r41; st.u64 [%frame+1272],%r532; ld.u32 %r534,[%frame+1264]; add.u32 %r45,%r534,1; st.u32 [%frame+1264],%r45; setp.le.s32 %r535,%r45,7; @ %r535 bra $L37; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r540,[%value_in]; } setp.eq.u32 %r541,%r540,0; @ %r541 bra $L279; ld.u16 %r543,[%r440+16]; and.b16 %r542,%r543,64; cvt.s32.s16 %r418,%r542; bra $L39; $L37: add.u64 %r277,%r277,16; bra $L38; $L279: mov.u64 %r277,%r1367; $L38: .loc 1 648 8 add.u32 %r438,%r438,%r291; .loc 1 650 21 ld.u32 %r290,[%r40+4]; bra $L35; $L278: .loc 1 644 38 mov.u64 %r259,%r441; $L35: .loc 1 650 20 setp.eq.u32 %r544,%r290,0; @ %r544 bra $L40; .loc 1 653 6 add.u64 %r441,%r259,4; .loc 1 659 8 mov.u32 %r545,0; st.u32 [%frame+1304],%r545; .loc 1 671 14 ld.u32 %r419,[%r259+4]; mov.u32 %r339,%r545; mov.u32 %r340,%r545; .loc 1 658 8 mov.u32 %r272,-1; .loc 1 657 9 mov.u32 %r271,%r545; .loc 1 655 9 mov.u32 %r268,%r545; $L41: .loc 1 671 18 add.u64 %r441,%r441,4; .loc 1 671 12 mov.u32 %r265,%r419; $L42: .loc 1 672 11 setp.eq.u32 %r546,%r265,99; @ %r546 bra $L43; setp.gt.u32 %r547,%r265,99; @ %r547 bra $L44; setp.eq.u32 %r548,%r265,46; @ %r548 bra $L45; setp.gt.u32 %r549,%r265,46; @ %r549 bra $L46; setp.eq.u32 %r550,%r265,42; @ %r550 bra $L47; setp.gt.u32 %r551,%r265,42; @ %r551 bra $L48; setp.eq.u32 %r552,%r265,32; @ %r552 bra $L49; setp.eq.u32 %r553,%r265,35; @ %r553 bra $L50; bra $L417; $L48: setp.eq.u32 %r554,%r265,43; @ %r554 bra $L52; setp.eq.u32 %r555,%r265,45; @ %r555 bra $L53; bra $L54; $L46: setp.eq.u32 %r556,%r265,71; @ %r556 bra $L55; setp.gt.u32 %r557,%r265,71; @ %r557 bra $L56; setp.gt.u32 %r558,%r265,57; @ %r558 bra $L57; setp.gt.u32 %r559,%r265,48; @ %r559 bra $L58; setp.eq.u32 %r560,%r265,48; @ %r560 bra $L59; mov.u32 %r265,47; bra $L54; $L57: setp.eq.u32 %r561,%r265,69; @ %r561 bra $L55; bra $L54; $L56: setp.eq.u32 %r562,%r265,76; @ %r562 bra $L60; setp.eq.u32 %r563,%r265,88; @ %r563 bra $L61; bra $L54; $L44: setp.eq.u32 %r564,%r265,111; @ %r564 bra $L62; setp.gt.u32 %r565,%r265,111; @ %r565 bra $L63; setp.eq.u32 %r566,%r265,105; @ %r566 bra $L64; setp.gt.u32 %r567,%r265,105; @ %r567 bra $L65; setp.eq.u32 %r568,%r265,104; @ %r568 bra $L66; @ %r566 bra $L54; setp.eq.u32 %r570,%r265,100; @ %r570 bra $L64; add.u32 %r571,%r265,-101; setp.gt.u32 %r572,%r571,2; @ %r572 bra $L280; bra $L55; $L65: setp.eq.u32 %r573,%r265,108; @ %r573 bra $L67; setp.eq.u32 %r574,%r265,110; @ %r574 bra $L68; bra $L54; $L63: setp.eq.u32 %r575,%r265,115; @ %r575 bra $L69; setp.gt.u32 %r576,%r265,115; @ %r576 bra $L70; setp.eq.u32 %r577,%r265,112; @ %r577 bra $L71; setp.eq.u32 %r578,%r265,113; @ %r578 bra $L72; bra $L54; $L70: setp.eq.u32 %r579,%r265,117; @ %r579 bra $L73; setp.ne.u32 %r580,%r265,120; @ %r580 bra $L54; setp.eq.u32 %r581,%r339,0; @ %r581 bra $L74; st.u32 [%frame+1304],%r340; $L74: .loc 1 1291 10 cvta.const.u64 %r174,$LC5; bra $L75; $L49: .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 704 7 setp.ne.u32 %r582,%r340,0; selp.u32 %r339,%r339,1,%r582; selp.u32 %r340,%r340,32,%r582; bra $L41; $L50: .loc 1 708 10 or.b32 %r268,%r268,1; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 709 4 bra $L41; $L47: .loc 1 747 10 add.u64 %r341,%r442,4; ld.u32 %r271,[%r442]; .loc 1 751 7 setp.lt.s32 %r583,%r271,0; @ %r583 bra $L77; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 747 10 mov.u64 %r442,%r341; bra $L41; $L77: .loc 1 753 10 neg.s32 %r271,%r271; .loc 1 747 10 mov.u64 %r442,%r341; $L53: .loc 1 756 10 or.b32 %r268,%r268,4; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 757 4 bra $L41; $L52: .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 760 4 mov.u32 %r339,1; .loc 1 759 9 mov.u32 %r340,%r265; .loc 1 760 4 bra $L41; $L45: .loc 1 762 18 add.u64 %r312,%r441,4; .loc 1 762 12 ld.u32 %r265,[%r441]; .loc 1 762 7 setp.eq.u32 %r584,%r265,42; @ %r584 bra $L78; .loc 1 801 11 add.u32 %r585,%r265,-48; setp.le.u32 %r586,%r585,9; @ %r586 bra $L79; .loc 1 762 18 mov.u64 %r441,%r312; .loc 1 801 11 mov.u32 %r272,%r545; bra $L42; $L78: ld.u32 %r587,[%r442]; max.s32 %r272,%r587,-1; .loc 1 671 14 ld.u32 %r419,[%r441+4]; .loc 1 792 10 add.u64 %r442,%r442,4; .loc 1 762 18 mov.u64 %r441,%r312; .loc 1 798 5 bra $L41; $L79: mov.u64 %r348,%r312; .loc 1 800 6 mov.u32 %r303,%r545; $L81: .loc 1 802 12 shl.b32 %r589,%r303,2; add.u32 %r590,%r589,%r303; add.u32 %r591,%r590,%r590; .loc 1 802 16 add.u32 %r592,%r591,-48; add.u32 %r303,%r592,%r265; mov.u64 %r245,%r348; add.u64 %r441,%r348,4; mov.u64 %r348,%r441; .loc 1 803 8 ld.u32 %r265,[%r245]; .loc 1 801 11 add.u32 %r593,%r265,-48; setp.le.u32 %r594,%r593,9; @ %r594 bra $L81; .loc 1 805 9 max.s32 %r272,%r303,-1; .loc 1 806 4 bra $L42; $L59: .loc 1 813 10 or.b32 %r268,%r268,128; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 814 4 bra $L41; $L58: mov.u64 %r344,%r441; .loc 1 817 6 mov.u32 %r271,0; $L83: .loc 1 819 12 shl.b32 %r596,%r271,2; add.u32 %r597,%r596,%r271; add.u32 %r598,%r597,%r597; .loc 1 819 16 add.u32 %r599,%r598,-48; add.u32 %r271,%r599,%r265; mov.u64 %r142,%r344; add.u64 %r344,%r344,4; mov.u64 %r441,%r344; .loc 1 820 8 ld.u32 %r265,[%r142]; .loc 1 821 13 add.u32 %r600,%r265,-48; setp.le.u32 %r601,%r600,9; @ %r601 bra $L83; bra $L42; $L60: .loc 1 837 10 or.b32 %r268,%r268,8; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 838 4 bra $L41; $L66: .loc 1 847 11 or.b32 %r268,%r268,64; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 848 4 bra $L41; $L67: .loc 1 851 8 ld.u32 %r419,[%r441]; .loc 1 851 7 setp.ne.u32 %r602,%r419,108; @ %r602 bra $L84; .loc 1 853 11 or.b32 %r268,%r268,32; .loc 1 671 14 ld.u32 %r419,[%r441+4]; .loc 1 852 8 add.u64 %r441,%r441,4; bra $L41; $L84: .loc 1 856 11 or.b32 %r268,%r268,16; bra $L41; $L72: .loc 1 859 10 or.b32 %r268,%r268,32; .loc 1 762 14 ld.u32 %r419,[%r441]; .loc 1 860 4 bra $L41; $L43: setp.eq.u32 %r603,%r339,0; @ %r603 bra $L85; st.u32 [%frame+1304],%r340; $L85: .loc 1 747 10 ld.u32 %r283,[%r442]; add.u64 %r442,%r442,4; .loc 1 903 30 and.b32 %r604,%r268,16; .loc 1 903 19 setp.ne.u32 %r605,%r604,0; @ %r605 bra $L86; .loc 1 904 17 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r283; call (%value_in),btowc,(%out_arg1); ld.param.u32 %r607,[%value_in]; } .loc 1 905 8 setp.ne.u32 %r608,%r607,-1; @ %r608 bra $L87; .loc 1 906 20 ld.u16 %r610,[%r440+16]; or.b16 %r609,%r610,64; st.u16 [%r440+16],%r609; bra $L88; $L87: .loc 1 909 13 mov.u32 %r283,%r607; $L86: .loc 1 909 11 st.u32 [%frame],%r283; .loc 1 915 10 mov.u32 %r611,0; st.u32 [%frame+4],%r611; .loc 1 917 9 st.u32 [%frame+1304],%r611; .loc 1 918 4 mov.u32 %r353,1; .loc 1 916 9 mov.u32 %r276,%r353; .loc 1 902 7 mov.u64 %r267,%frame; .loc 1 918 4 bra $L89; $L64: setp.eq.u32 %r613,%r339,0; @ %r613 bra $L90; st.u32 [%frame+1304],%r340; $L90: .loc 1 921 13 and.b32 %r614,%r268,32; setp.eq.u32 %r615,%r614,0; @ %r615 bra $L91; add.u64 %r314,%r442,7; and.b64 %r380,%r314,-8; add.u64 %r442,%r380,8; ld.u64 %r63,[%r380]; mov.u64 %r274,%r63; bra $L92; $L91: and.b32 %r616,%r268,16; setp.eq.u32 %r617,%r616,0; @ %r617 bra $L93; add.u64 %r358,%r442,7; and.b64 %r347,%r358,-8; add.u64 %r442,%r347,8; ld.u64 %r63,[%r347]; mov.u64 %r274,%r63; bra $L92; $L93: .loc 1 747 10 ld.u32 %r429,[%r442]; add.u64 %r442,%r442,4; .loc 1 921 13 and.b32 %r618,%r268,64; setp.eq.u32 %r619,%r618,0; @ %r619 bra $L94; cvt.u16.u32 %r620,%r429; cvt.s64.s16 %r274,%r620; .loc 1 923 8 mov.u64 %r63,%r274; bra $L92; $L94: .loc 1 921 13 cvt.s64.s32 %r274,%r429; .loc 1 923 8 mov.u64 %r63,%r274; $L92: .loc 1 923 7 setp.ge.s64 %r623,%r63,0; @ %r623 bra $L95; .loc 1 929 12 neg.s64 %r274,%r274; mov.u32 %r243,45; .loc 1 932 9 mov.u32 %r275,1; bra $L96; $L55: setp.eq.u32 %r624,%r339,0; @ %r624 bra $L97; st.u32 [%frame+1304],%r340; $L97: .loc 1 921 13 add.u64 %r625,%r442,7; and.b64 %r427,%r625,-8; add.u64 %r442,%r427,8; .loc 1 947 25 ld.f64 %r137,[%r427]; .loc 1 958 8 abs.f64 %r628,%r137; setp.leu.f64 %r629,%r628,0d7fefffffffffffff; @ %r629 bra $L100; .loc 1 959 8 setp.lt.f64 %r630,%r137,0d0000000000000000; @ %r630 bra $L101; .loc 1 704 8 ld.u32 %r399,[%frame+1304]; bra $L102; $L100: .loc 1 969 7 setp.nan.f64 %r631,%r137,%r137; @ ! %r631 bra $L418; bra $L103; $L101: .loc 1 960 11 mov.u32 %r632,45; st.u32 [%frame+1304],%r632; mov.u32 %r399,%r632; $L102: .loc 1 961 8 setp.le.u32 %r633,%r265,71; @ %r633 bra $L281; .loc 1 964 9 cvta.const.u64 %r267,$LC1; bra $L105; $L281: .loc 1 962 9 cvta.const.u64 %r267,$LC0; $L105: .loc 1 966 11 and.b32 %r270,%r268,-129; .loc 1 967 5 mov.u32 %r353,3; mov.u64 %r279,0; .loc 1 965 10 mov.u32 %r276,%r353; .loc 1 656 9 mov.u32 %r272,0; .loc 1 661 8 mov.u32 %r231,%r272; .loc 1 967 5 bra $L106; $L103: .loc 1 970 9 mov.b64 %r634,%r137; shr.u64 %r635,%r634,63; cvt.u32.u64 %r637,%r635; .loc 1 970 8 setp.ne.u32 %r638,%r637,0; @ %r638 bra $L107; .loc 1 704 8 ld.u32 %r399,[%frame+1304]; bra $L108; $L107: .loc 1 971 11 mov.u32 %r639,45; st.u32 [%frame+1304],%r639; mov.u32 %r399,%r639; $L108: .loc 1 972 8 setp.le.u32 %r640,%r265,71; @ %r640 bra $L282; .loc 1 975 9 cvta.const.u64 %r267,$LC3; bra $L109; $L282: .loc 1 973 9 cvta.const.u64 %r267,$LC2; $L109: .loc 1 977 11 and.b32 %r270,%r268,-129; .loc 1 978 5 mov.u32 %r353,3; mov.u64 %r279,0; .loc 1 976 10 mov.u32 %r276,%r353; .loc 1 656 9 mov.u32 %r272,0; .loc 1 661 8 mov.u32 %r231,%r272; .loc 1 978 5 bra $L106; $L418: .loc 1 1040 10 or.b32 %r270,%r268,256; .loc 1 1034 7 setp.eq.u32 %r641,%r272,-1; @ %r641 bra $L283; .loc 1 1036 33 and.b32 %r642,%r265,-33; set.u32.eq.u32 %r644,%r642,71; neg.s32 %r645,%r644; mov.u32 %r643,%r645; .loc 1 1036 42 set.u32.eq.u32 %r647,%r272,0; neg.s32 %r648,%r647; mov.u32 %r646,%r648; cvt.u16.u8 %r1419,%r643; mov.u16 %r650,%r1419; cvt.u16.u8 %r1419,%r646; mov.u16 %r651,%r1419; and.b16 %r649,%r650,%r651; cvt.u32.u16 %r652,%r649; cvt.u16.u8 %r653,%r652; setp.ne.u16 %r654,%r653,0; @ %r654 bra $L111; bra $L110; $L283: .loc 1 1035 10 mov.u32 %r272,6; $L110: .loc 1 1042 9 mov.u32 %r664,40; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r137; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r272; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r270; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1412; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1411; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r265; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1410; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r664; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r668,[%value_in]; } mov.u64 %r267,%r668; .loc 1 1049 7 setp.ne.u64 %r669,%frame,%r267; @ %r669 bra $L284; .loc 1 1049 26 ld.u32 %r1376,[%frame+1288]; .loc 1 1049 18 setp.le.s32 %r670,%r1376,40; @ %r670 bra $L285; bra $L277; $L299: .loc 1 1037 10 mov.u32 %r272,%r1338; $L277: .loc 1 1051 20 cvt.s64.s32 %r673,%r1376; shl.b64 %r674,%r673,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r674; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r675,[%value_in]; } mov.u64 %r279,%r675; .loc 1 1050 8 setp.ne.u64 %r676,%r675,0; @ %r676 bra $L113; .loc 1 1054 20 ld.u16 %r678,[%r440+16]; or.b16 %r677,%r678,64; st.u16 [%r440+16],%r677; bra $L88; $L113: .loc 1 1057 10 ld.u32 %r689,[%frame+1288]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r137; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r272; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r270; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1412; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1411; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r265; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1410; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%r279; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r689; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r693,[%value_in]; } mov.u64 %r267,%r693; bra $L112; $L284: mov.u64 %r279,0; bra $L112; $L285: mov.u64 %r279,0; $L112: .loc 1 1082 15 ld.u32 %r1377,[%frame+1292]; mov.u32 %r231,%r1377; .loc 1 1061 25 and.b32 %r694,%r265,-33; .loc 1 1061 7 setp.ne.u32 %r695,%r694,71; @ %r695 bra $L114; ld.u32 %r1376,[%frame+1288]; $L273: .loc 1 1062 14 mov.u32 %r231,%r1377; .loc 1 1062 20 set.u32.gt.s32 %r697,%r1377,%r272; neg.s32 %r698,%r697; mov.u32 %r696,%r698; .loc 1 1062 8 set.u32.lt.s32 %r700,%r1377,-3; neg.s32 %r701,%r700; mov.u32 %r699,%r701; .loc 1 1062 20 cvt.u16.u8 %r1419,%r696; mov.u16 %r703,%r1419; cvt.u16.u8 %r1419,%r699; mov.u16 %r704,%r1419; or.b16 %r702,%r703,%r704; cvt.u32.u16 %r705,%r702; cvt.u16.u8 %r706,%r705; setp.eq.u16 %r707,%r706,0; @ %r707 bra $L115; .loc 1 1063 9 add.u32 %r265,%r265,-2; bra $L116; $L114: .loc 1 1071 7 setp.eq.u32 %r708,%r265,102; @ %r708 bra $L117; ld.u32 %r1376,[%frame+1288]; $L116: .loc 1 1072 5 add.u32 %r76,%r1377,-1; st.u32 [%frame+1292],%r76; .loc 1 1674 7 st.u32 [%frame+1228],%r265; .loc 1 1675 5 setp.ge.s32 %r709,%r76,0; @ %r709 bra $L286; .loc 1 1676 7 mov.u32 %r710,1; sub.u32 %r76,%r710,%r1377; .loc 1 1677 8 mov.u32 %r305,45; bra $L118; $L286: .loc 1 1680 8 mov.u32 %r305,43; $L118: st.u32 [%frame+1232],%r305; .loc 1 1682 5 setp.le.s32 %r711,%r76,9; @ %r711 bra $L119; .loc 1 1681 4 mov.u64 %r335,%r1403; $L120: mov.u64 %r167,%r335; .loc 1 1684 9 add.u64 %r335,%r167,-4; .loc 1 1684 11 rem.s32 %r713,%r76,10; add.u32 %r714,%r713,48; .loc 1 1684 9 st.u32 [%r335],%r714; mov.u32 %r71,%r76; .loc 1 1685 17 div.s32 %r76,%r76,10; .loc 1 1685 24 setp.gt.s32 %r717,%r71,99; @ %r717 bra $L120; .loc 1 1686 8 add.u64 %r306,%r167,-8; .loc 1 1686 10 add.u32 %r396,%r76,48; .loc 1 1686 8 st.u32 [%r335+-4],%r396; .loc 1 1687 12 setp.ge.u64 %r720,%r306,%r1403; @ %r720 bra $L287; mov.u64 %r359,%r1408; $L123: .loc 1 1687 43 add.u64 %r306,%r306,4; .loc 1 1687 39 st.u32 [%r359],%r396; .loc 1 1687 12 add.u64 %r359,%r359,4; setp.lt.u64 %r724,%r306,%r1403; @ %r724 bra $L122; .loc 1 1687 36 sub.u64 %r730,%r1409,%r167; and.b64 %r732,%r730,-4; add.u64 %r733,%r732,4; add.u64 %r734,%r1408,%r733; .loc 1 1694 12 sub.u64 %r736,%r734,%r1403; shr.s64 %r738,%r736,2; cvt.u32.u64 %r46,%r738; bra $L121; $L122: .loc 1 1687 41 ld.u32 %r396,[%r306]; bra $L123; $L119: .loc 1 1691 9 mov.u32 %r739,48; st.u32 [%frame+1236],%r739; .loc 1 1692 10 add.u32 %r740,%r76,48; .loc 1 1692 8 st.u32 [%frame+1240],%r740; mov.u32 %r46,4; bra $L121; $L287: .loc 1 1687 12 mov.u32 %r46,2; $L121: .loc 1 1074 10 add.u32 %r276,%r1376,%r46; .loc 1 1075 8 setp.gt.s32 %r741,%r1376,1; @ %r741 bra $L124; and.b32 %r231,%r268,1; .loc 1 1075 18 setp.ne.u32 %r742,%r231,0; @ %r742 bra $L124; .loc 1 1424 10 max.s32 %r353,%r276,0; bra $L125; $L124: .loc 1 1076 6 add.u32 %r276,%r276,1; .loc 1 1424 10 max.s32 %r353,%r276,0; .loc 1 661 8 mov.u32 %r231,0; bra $L125; $L117: and.b32 %r743,%r268,1; or.b32 %r424,%r743,%r272; .loc 1 1082 9 setp.gt.s32 %r744,%r231,0; @ %r744 bra $L126; bra $L419; $L115: .loc 1 1090 15 setp.ge.s32 %r745,%r231,%r1376; @ %r745 bra $L128; bra $L420; $L126: .loc 1 1084 16 setp.eq.u32 %r746,%r424,0; @ %r746 bra $L288; .loc 1 1085 21 add.u32 %r747,%r272,1; .loc 1 1085 13 add.u32 %r276,%r747,%r231; mov.u32 %r353,%r276; bra $L125; $L419: .loc 1 1087 20 setp.eq.u32 %r748,%r424,0; @ %r748 bra $L289; .loc 1 1089 10 add.u32 %r276,%r272,2; mov.u32 %r353,%r276; bra $L125; $L128: .loc 1 1092 9 and.b32 %r749,%r268,1; setp.ne.u32 %r750,%r749,0; @ %r750 bra $L131; .loc 1 1424 10 max.s32 %r353,%r231,0; mov.u32 %r276,%r231; .loc 1 1065 9 mov.u32 %r265,103; bra $L125; $L131: .loc 1 1093 7 add.u32 %r276,%r231,1; .loc 1 1424 10 max.s32 %r353,%r276,0; .loc 1 1065 9 mov.u32 %r265,103; bra $L125; $L420: .loc 1 1096 9 setp.gt.s32 %r751,%r231,0; @ %r751 bra $L290; mov.u32 %r752,2; sub.u32 %r281,%r752,%r231; bra $L132; $L290: mov.u32 %r281,1; $L132: .loc 1 1095 11 add.u32 %r276,%r281,%r1376; .loc 1 1424 10 max.s32 %r353,%r276,0; .loc 1 1065 9 mov.u32 %r265,103; bra $L125; $L288: mov.u32 %r353,%r231; mov.u32 %r276,%r231; bra $L125; $L289: mov.u32 %r353,1; .loc 1 1089 10 mov.u32 %r276,%r353; $L125: .loc 1 1117 8 ld.u32 %r272,[%frame+1296]; .loc 1 1117 7 setp.eq.u32 %r753,%r272,0; @ %r753 bra $L133; .loc 1 1118 10 mov.u32 %r754,45; st.u32 [%frame+1304],%r754; .loc 1 656 9 mov.u32 %r272,0; bra $L134; $L68: setp.eq.u32 %r755,%r339,0; @ %r755 bra $L135; st.u32 [%frame+1304],%r340; $L135: .loc 1 921 13 add.u64 %r756,%r442,7; and.b64 %r432,%r756,-8; add.u64 %r442,%r432,8; .loc 1 1132 14 and.b32 %r757,%r268,32; .loc 1 1132 7 setp.eq.u32 %r758,%r757,0; @ %r758 bra $L136; .loc 1 1133 34 ld.u64 %r759,[%r432]; cvt.s64.s32 %r760,%r438; st.u64 [%r759],%r760; bra $L34; $L136: .loc 1 1136 14 and.b32 %r761,%r268,16; .loc 1 1136 7 setp.eq.u32 %r762,%r761,0; @ %r762 bra $L138; .loc 1 1137 34 ld.u64 %r763,[%r432]; cvt.s64.s32 %r764,%r438; st.u64 [%r763],%r764; bra $L34; $L138: .loc 1 1138 19 and.b32 %r765,%r268,64; .loc 1 1138 12 setp.eq.u32 %r766,%r765,0; @ %r766 bra $L139; .loc 1 1139 35 ld.u64 %r767,[%r432]; st.u16 [%r767],%r438; bra $L34; $L139: .loc 1 1145 33 ld.u64 %r768,[%r432]; st.u32 [%r768],%r438; bra $L34; $L62: .loc 1 1148 13 and.b32 %r769,%r268,32; setp.eq.u32 %r770,%r769,0; @ %r770 bra $L140; add.u64 %r349,%r442,7; and.b64 %r350,%r349,-8; add.u64 %r442,%r350,8; ld.u64 %r274,[%r350]; .loc 1 1149 9 mov.u32 %r275,0; bra $L141; $L140: .loc 1 1148 13 and.b32 %r771,%r268,16; setp.eq.u32 %r772,%r771,0; @ %r772 bra $L142; add.u64 %r360,%r442,7; and.b64 %r310,%r360,-8; add.u64 %r442,%r310,8; ld.u64 %r274,[%r310]; .loc 1 1149 9 mov.u32 %r275,%r769; bra $L141; $L142: .loc 1 747 10 ld.u32 %r433,[%r442]; add.u64 %r442,%r442,4; .loc 1 1148 13 and.b32 %r773,%r268,64; setp.eq.u32 %r774,%r773,0; @ %r774 bra $L143; cvt.u16.u32 %r775,%r433; cvt.u64.u16 %r274,%r775; .loc 1 1149 9 mov.u32 %r275,%r771; bra $L141; $L143: .loc 1 1148 13 cvt.u64.u32 %r274,%r433; .loc 1 1149 9 mov.u32 %r275,%r773; bra $L141; $L71: .loc 1 1163 25 add.u64 %r381,%r442,7; and.b64 %r361,%r381,-8; add.u64 %r442,%r361,8; .loc 1 1163 11 ld.u64 %r274,[%r361]; .loc 1 1166 10 or.b32 %r268,%r268,2; .loc 1 1167 10 mov.u32 %r776,48; st.u32 [%frame+1280],%r776; .loc 1 1168 10 mov.u32 %r777,120; st.u32 [%frame+1284],%r777; .loc 1 1165 10 cvta.const.u64 %r174,$LC5; .loc 1 1164 9 mov.u32 %r275,2; .loc 1 1168 15 mov.u32 %r265,%r777; .loc 1 1169 4 bra $L141; $L69: .loc 1 1174 7 add.u64 %r351,%r442,7; and.b64 %r382,%r351,-8; add.u64 %r442,%r382,8; ld.u64 %r267,[%r382]; .loc 1 1178 9 mov.u32 %r778,0; st.u32 [%frame+1304],%r778; .loc 1 1184 7 setp.ne.u64 %r779,%r267,0; @ %r779 bra $L144; .loc 1 1186 39 min.u32 %r276,%r272,6; mov.u32 %r353,%r276; .loc 1 1185 8 cvta.const.u64 %r267,$LC6; bra $L89; $L144: .loc 1 1242 30 and.b32 %r231,%r268,16; .loc 1 1242 19 setp.ne.u32 %r780,%r231,0; @ %r780 bra $L145; .loc 1 1246 8 setp.eq.u32 %r781,%r272,-1; @ %r781 bra $L146; .loc 1 1247 16 cvt.s64.s32 %r280,%r272; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r231; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r280; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r785,[%value_in]; } .loc 1 1248 27 setp.eq.u64 %r786,%r785,0; @ %r786 bra $L147; .loc 1 1248 21 sub.u64 %r280,%r785,%r267; bra $L147; $L146: .loc 1 1250 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r788,[%value_in]; } mov.u64 %r280,%r788; $L147: .loc 1 1251 8 setp.le.u64 %r789,%r280,39; @ %r789 bra $L148; .loc 1 1252 64 add.u64 %r792,%r280,1; .loc 1 1252 39 shl.b64 %r793,%r792,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r793; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r794,[%value_in]; } mov.u64 %r297,%r794; .loc 1 1252 12 setp.ne.u64 %r795,%r794,0; @ %r795 bra $L291; .loc 1 1254 18 ld.u16 %r797,[%r440+16]; or.b16 %r796,%r797,64; st.u16 [%r440+16],%r796; bra $L88; $L148: .loc 1 1260 25 setp.eq.u64 %r1370,%r280,0; @ %r1370 bra $L292; mov.u64 %r279,0; .loc 1 1259 9 mov.u64 %r297,%frame; bra $L149; $L291: mov.u64 %r279,%r297; setp.eq.u64 %r1370,%r280,0; $L149: mov.u64 %r355,%r297; mov.u64 %r356,0; $L151: .loc 1 1261 20 add.u64 %r799,%r267,%r356; ld.s8 %r800,[%r799]; st.u32 [%r355],%r800; .loc 1 1260 25 add.u64 %r356,%r356,1; add.u64 %r355,%r355,4; setp.gt.u64 %r801,%r280,%r356; @ %r801 bra $L151; .loc 1 1260 35 @ %r1370 bra $L152; cvt.u32.u64 %r802,%r280; bra $L153; $L152: mov.u32 %r802,1; $L153: mov.u32 %r276,%r802; .loc 1 1260 25 selp.u64 %r806,1,%r280,%r1370; .loc 1 1262 7 shl.b64 %r808,%r806,2; add.u64 %r387,%r297,%r808; mov.u32 %r353,%r276; mov.u64 %r267,%r297; bra $L150; $L292: .loc 1 1260 25 mov.u32 %r353,%r231; .loc 1 1260 15 mov.u32 %r276,%r231; .loc 1 1260 25 mov.u64 %r387,%frame; mov.u64 %r279,%r280; .loc 1 1259 9 mov.u64 %r267,%frame; $L150: .loc 1 1262 14 mov.u32 %r809,0; st.u32 [%r387],%r809; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 656 9 mov.u32 %r272,%r231; .loc 1 1242 42 mov.u32 %r270,%r268; bra $L106; $L145: .loc 1 1265 12 setp.eq.u32 %r810,%r272,-1; @ %r810 bra $L156; .loc 1 1271 18 cvt.s64.s32 %r814,%r272; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r778; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r814; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r815,[%value_in]; } mov.u64 %r279,%r815; .loc 1 1273 8 setp.ne.u64 %r816,%r279,0; @ %r816 bra $L157; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; mov.u32 %r353,%r272; mov.u32 %r276,%r272; mov.u32 %r270,%r268; .loc 1 656 9 mov.u32 %r272,%r778; .loc 1 661 8 mov.u32 %r231,%r272; bra $L106; $L157: .loc 1 1274 15 sub.u64 %r817,%r279,%r267; shr.s64 %r819,%r817,2; .loc 1 1274 11 cvt.u32.u64 %r820,%r819; min.s32 %r276,%r820,%r272; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 1424 10 max.s32 %r353,%r276,0; mov.u32 %r270,%r268; mov.u64 %r279,0; .loc 1 656 9 mov.u32 %r272,%r778; .loc 1 661 8 mov.u32 %r231,%r272; bra $L106; $L156: .loc 1 1280 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r267; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r822,[%value_in]; } .loc 1 1280 10 cvt.u32.u64 %r276,%r822; .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 1424 10 max.s32 %r353,%r276,0; mov.u32 %r270,%r268; mov.u64 %r279,0; .loc 1 656 9 mov.u32 %r272,%r778; .loc 1 661 8 mov.u32 %r231,%r272; bra $L106; $L73: .loc 1 1284 13 and.b32 %r823,%r268,32; setp.eq.u32 %r824,%r823,0; @ %r824 bra $L158; add.u64 %r362,%r442,7; and.b64 %r324,%r362,-8; add.u64 %r442,%r324,8; ld.u64 %r274,[%r324]; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L158: .loc 1 1284 13 and.b32 %r825,%r268,16; setp.eq.u32 %r826,%r825,0; @ %r826 bra $L159; add.u64 %r384,%r442,7; and.b64 %r363,%r384,-8; add.u64 %r442,%r363,8; ld.u64 %r274,[%r363]; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L159: .loc 1 747 10 ld.u32 %r434,[%r442]; add.u64 %r442,%r442,4; .loc 1 1284 13 and.b32 %r827,%r268,64; setp.eq.u32 %r828,%r827,0; @ %r828 bra $L160; cvt.u16.u32 %r829,%r434; cvt.u64.u16 %r274,%r829; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L160: .loc 1 1284 13 cvt.u64.u32 %r274,%r434; .loc 1 1285 9 mov.u32 %r275,1; bra $L141; $L61: setp.eq.u32 %r830,%r339,0; @ %r830 bra $L161; st.u32 [%frame+1304],%r340; $L161: .loc 1 1288 10 cvta.const.u64 %r174,$LC4; $L75: .loc 1 1292 17 and.b32 %r831,%r268,32; setp.eq.u32 %r832,%r831,0; @ %r832 bra $L162; add.u64 %r233,%r442,7; and.b64 %r343,%r233,-8; add.u64 %r442,%r343,8; ld.u64 %r274,[%r343]; bra $L163; $L162: and.b32 %r833,%r268,16; setp.eq.u32 %r834,%r833,0; @ %r834 bra $L164; add.u64 %r379,%r442,7; and.b64 %r345,%r379,-8; add.u64 %r442,%r345,8; ld.u64 %r274,[%r345]; bra $L163; $L164: .loc 1 747 10 ld.u32 %r428,[%r442]; add.u64 %r442,%r442,4; .loc 1 1292 17 and.b32 %r835,%r268,64; setp.eq.u32 %r836,%r835,0; @ %r836 bra $L165; cvt.u16.u32 %r837,%r428; cvt.u64.u16 %r274,%r837; bra $L163; $L165: cvt.u64.u32 %r274,%r428; $L163: .loc 1 1295 14 and.b32 %r838,%r268,1; .loc 1 1295 7 setp.eq.u32 %r839,%r838,0; @ %r839 bra $L293; .loc 1 1295 20 setp.eq.u64 %r840,%r274,0; @ %r840 bra $L294; .loc 1 1296 11 mov.u32 %r841,48; st.u32 [%frame+1280],%r841; .loc 1 1297 11 st.u32 [%frame+1284],%r265; .loc 1 1298 11 or.b32 %r268,%r268,2; .loc 1 1293 9 mov.u32 %r275,2; bra $L141; $L293: mov.u32 %r275,2; bra $L141; $L294: mov.u32 %r275,2; $L141: .loc 1 1305 1 mov.u32 %r243,0; $L96: .loc 1 930 10 st.u32 [%frame+1304],%r243; .loc 1 1311 14 setp.eq.u32 %r842,%r272,-1; @ %r842 bra $L166; .loc 1 1312 11 and.b32 %r270,%r268,-129; .loc 1 1320 15 set.u32.ne.u64 %r844,%r274,0; neg.s32 %r845,%r844; mov.u32 %r843,%r845; .loc 1 1320 28 set.u32.ne.u32 %r847,%r272,0; neg.s32 %r848,%r847; mov.u32 %r846,%r848; .loc 1 1320 20 cvt.u16.u8 %r1419,%r843; mov.u16 %r850,%r1419; cvt.u16.u8 %r1419,%r846; mov.u16 %r851,%r1419; or.b16 %r849,%r850,%r851; cvt.u32.u16 %r852,%r849; .loc 1 1320 7 cvt.u16.u8 %r853,%r852; setp.eq.u16 %r854,%r853,0; @ %r854 bra $L167; .loc 1 1312 11 mov.u32 %r268,%r270; $L166: setp.eq.u32 %r855,%r275,1; @ %r855 bra $L168; setp.eq.u32 %r856,%r275,2; @ %r856 bra $L295; mov.u64 %r267,%r1407; $L170: mov.u64 %r162,%r267; .loc 1 1329 13 add.u64 %r267,%r267,-4; .loc 1 1329 15 cvt.u32.u64 %r857,%r274; and.b32 %r858,%r857,7; add.u32 %r125,%r858,48; .loc 1 1329 13 st.u32 [%r267],%r125; .loc 1 1330 14 shr.u64 %r274,%r274,3; .loc 1 1331 15 setp.ne.u64 %r859,%r274,0; @ %r859 bra $L170; .loc 1 1333 22 set.u32.ne.u32 %r861,%r125,48; neg.s32 %r862,%r861; mov.u32 %r860,%r862; .loc 1 1333 9 mov.u32 %r863,%r268; cvt.u16.u8 %r1419,%r863; mov.u16 %r865,%r1419; and.b16 %r864,%r865,1; cvt.u32.u16 %r866,%r864; .loc 1 1333 22 cvt.u16.u8 %r1419,%r860; mov.u16 %r868,%r1419; cvt.u16.u8 %r1419,%r866; mov.u16 %r869,%r1419; and.b16 %r867,%r868,%r869; cvt.u32.u16 %r870,%r867; cvt.u16.u8 %r871,%r870; setp.ne.u16 %r872,%r871,0; @ %r872 bra $L171; .loc 1 1395 21 sub.u64 %r874,%r1407,%r267; shr.s64 %r876,%r874,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r876; mov.u32 %r270,%r268; bra $L172; $L171: .loc 1 1334 13 add.u64 %r307,%r162,-8; mov.u32 %r877,48; st.u32 [%r267+-4],%r877; .loc 1 1395 21 sub.u64 %r879,%r1407,%r307; shr.s64 %r881,%r879,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r881; mov.u32 %r270,%r268; .loc 1 1334 13 mov.u64 %r267,%r307; bra $L172; $L300: .loc 1 1312 11 mov.u32 %r268,%r270; $L168: .loc 1 1339 9 setp.gt.u64 %r882,%r274,9; @ %r882 bra $L296; .loc 1 1340 15 cvt.u32.u64 %r883,%r274; add.u32 %r884,%r883,48; .loc 1 1340 13 st.u32 [%frame+156],%r884; .loc 1 1341 7 mov.u32 %r270,%r268; mov.u32 %r276,1; .loc 1 1340 13 add.u64 %r267,%frame,156; .loc 1 1341 7 bra $L172; $L296: .loc 1 1319 7 mov.u64 %r267,%r1407; $L173: .loc 1 1347 14 add.u64 %r267,%r267,-4; .loc 1 1347 16 rem.u64 %r886,%r274,10; cvt.u32.u64 %r887,%r886; add.u32 %r888,%r887,48; .loc 1 1347 14 st.u32 [%r267],%r888; mov.u64 %r157,%r274; .loc 1 1366 15 div.u64 %r274,%r274,10; .loc 1 1367 22 setp.gt.u64 %r891,%r157,9; @ %r891 bra $L173; .loc 1 1395 21 sub.u64 %r893,%r1407,%r267; shr.s64 %r895,%r893,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r895; mov.u32 %r270,%r268; bra $L172; $L295: mov.u64 %r267,%r1407; $L169: .loc 1 1372 13 add.u64 %r267,%r267,-4; .loc 1 1372 28 and.b64 %r896,%r274,15; .loc 1 1372 20 shl.b64 %r897,%r896,2; add.u64 %r898,%r174,%r897; .loc 1 1372 13 ld.u32 %r899,[%r898]; st.u32 [%r267],%r899; .loc 1 1373 14 shr.u64 %r274,%r274,4; .loc 1 1374 15 setp.ne.u64 %r900,%r274,0; @ %r900 bra $L169; .loc 1 1395 21 sub.u64 %r902,%r1407,%r267; shr.s64 %r904,%r902,2; .loc 1 1395 9 cvt.u32.u64 %r276,%r904; mov.u32 %r270,%r268; bra $L172; $L167: .loc 1 1392 32 setp.ne.u32 %r905,%r275,0; @ %r905 bra $L297; .loc 1 1392 55 and.b32 %r276,%r268,1; .loc 1 1392 45 setp.eq.u32 %r906,%r276,0; @ %r906 bra $L298; .loc 1 1393 32 mov.u32 %r907,48; st.u32 [%frame+156],%r907; mov.u32 %r272,%r275; add.u64 %r267,%frame,156; bra $L172; $L297: mov.u32 %r272,0; mov.u32 %r276,%r272; .loc 1 1319 7 add.u64 %r267,%frame,160; bra $L172; $L298: mov.u32 %r272,%r275; add.u64 %r267,%frame,160; $L172: .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; .loc 1 1424 10 max.s32 %r353,%r272,%r276; mov.u64 %r279,0; .loc 1 661 8 mov.u32 %r231,0; bra $L106; $L417: setp.eq.u32 %r908,%r339,0; @ %r908 bra $L174; $L275: st.u32 [%frame+1304],%r340; $L174: .loc 1 1399 7 setp.eq.u32 %r909,%r265,0; @ %r909 bra $L40; $L276: .loc 1 1403 8 st.u32 [%frame],%r265; .loc 1 1405 9 mov.u32 %r910,0; st.u32 [%frame+1304],%r910; .loc 1 1406 4 mov.u32 %r353,1; .loc 1 1404 9 mov.u32 %r276,%r353; .loc 1 1402 7 mov.u64 %r267,%frame; .loc 1 1406 4 bra $L89; $L133: .loc 1 1425 7 ld.u32 %r399,[%frame+1304]; $L106: .loc 1 1425 6 setp.eq.u32 %r911,%r399,0; @ %r911 bra $L175; $L134: .loc 1 1426 10 add.u32 %r353,%r353,1; $L175: .loc 1 1427 13 and.b32 %r139,%r270,2; .loc 1 1427 6 setp.eq.u32 %r1369,%r139,0; @ %r1369 bra $L176; .loc 1 1428 10 add.u32 %r353,%r353,2; $L176: .loc 1 1431 14 and.b32 %r140,%r270,132; .loc 1 1432 4 ld.u64 %r401,[%frame+1272]; .loc 1 1431 6 setp.ne.u32 %r913,%r140,0; @ %r913 bra $L177; .loc 1 1432 4 sub.u32 %r249,%r271,%r353; setp.le.s32 %r914,%r249,0; @ %r914 bra $L177; ld.u32 %r400,[%frame+1264]; setp.le.s32 %r915,%r249,16; @ ! %r915 bra $L421; cvta.const.u64 %r1366,blanks$1; bra $L178; $L421: cvta.const.u64 %r1366,blanks$1; $L182: st.u64 [%r277],%r1366; mov.u64 %r917,64; st.u64 [%r277+8],%r917; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r400,%r400,1; st.u32 [%frame+1264],%r400; setp.gt.s32 %r918,%r400,7; @ %r918 bra $L179; add.u64 %r277,%r277,16; bra $L180; $L179: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r923,[%value_in]; } setp.ne.u32 %r924,%r923,0; @ %r924 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r400,[%frame+1264]; mov.u64 %r277,%r1367; $L180: add.u32 %r249,%r249,-16; setp.gt.s32 %r925,%r249,16; @ %r925 bra $L182; $L178: st.u64 [%r277],%r1366; cvt.s64.s32 %r927,%r249; shl.b64 %r143,%r927,2; st.u64 [%r277+8],%r143; add.u64 %r401,%r401,%r143; st.u64 [%frame+1272],%r401; add.u32 %r144,%r400,1; st.u32 [%frame+1264],%r144; setp.gt.s32 %r928,%r144,7; @ %r928 bra $L183; add.u64 %r277,%r277,16; bra $L177; $L183: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r933,[%value_in]; } setp.ne.u32 %r934,%r933,0; @ %r934 bra $L181; .loc 1 1436 4 ld.u64 %r401,[%frame+1272]; .loc 1 1432 4 mov.u64 %r277,%r1367; $L177: .loc 1 1435 6 ld.u32 %r935,[%frame+1304]; setp.eq.u32 %r936,%r935,0; @ %r936 bra $L184; .loc 1 1436 4 st.u64 [%r277],%r1406; mov.u64 %r938,4; st.u64 [%r277+8],%r938; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r939,[%frame+1264]; add.u32 %r148,%r939,1; st.u32 [%frame+1264],%r148; setp.gt.s32 %r940,%r148,7; @ %r940 bra $L185; add.u64 %r277,%r277,16; bra $L184; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r945,[%value_in]; } setp.ne.u32 %r946,%r945,0; @ %r946 bra $L181; .loc 1 1438 4 ld.u64 %r401,[%frame+1272]; .loc 1 1436 4 mov.u64 %r277,%r1367; $L184: .loc 1 1437 6 @ %r1369 bra $L186; .loc 1 1438 4 st.u64 [%r277],%r1405; mov.u64 %r949,8; st.u64 [%r277+8],%r949; add.u64 %r401,%r401,8; st.u64 [%frame+1272],%r401; ld.u32 %r950,[%frame+1264]; add.u32 %r152,%r950,1; st.u32 [%frame+1264],%r152; setp.gt.s32 %r951,%r152,7; @ %r951 bra $L187; add.u64 %r277,%r277,16; bra $L186; $L187: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r956,[%value_in]; } setp.ne.u32 %r957,%r956,0; @ %r957 bra $L181; .loc 1 1442 4 ld.u64 %r401,[%frame+1272]; .loc 1 1438 4 mov.u64 %r277,%r1367; $L186: .loc 1 1441 6 setp.ne.u32 %r958,%r140,128; @ %r958 bra $L188; .loc 1 1442 4 sub.u32 %r294,%r271,%r353; setp.le.s32 %r959,%r294,0; @ %r959 bra $L188; ld.u32 %r402,[%frame+1264]; setp.le.s32 %r960,%r294,16; @ ! %r960 bra $L422; cvta.const.u64 %r1378,zeroes$0; bra $L189; $L422: cvta.const.u64 %r1378,zeroes$0; $L192: st.u64 [%r277],%r1378; mov.u64 %r962,64; st.u64 [%r277+8],%r962; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r402,%r402,1; st.u32 [%frame+1264],%r402; setp.gt.s32 %r963,%r402,7; @ %r963 bra $L190; add.u64 %r277,%r277,16; bra $L191; $L190: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r968,[%value_in]; } setp.ne.u32 %r969,%r968,0; @ %r969 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r402,[%frame+1264]; mov.u64 %r277,%r1367; $L191: add.u32 %r294,%r294,-16; setp.gt.s32 %r970,%r294,16; @ %r970 bra $L192; $L189: st.u64 [%r277],%r1378; cvt.s64.s32 %r972,%r294; shl.b64 %r158,%r972,2; st.u64 [%r277+8],%r158; add.u64 %r401,%r401,%r158; st.u64 [%frame+1272],%r401; add.u32 %r159,%r402,1; st.u32 [%frame+1264],%r159; setp.gt.s32 %r973,%r159,7; @ %r973 bra $L193; add.u64 %r277,%r277,16; bra $L188; $L193: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r978,[%value_in]; } setp.ne.u32 %r979,%r978,0; @ %r979 bra $L181; .loc 1 1445 3 ld.u64 %r401,[%frame+1272]; .loc 1 1442 4 mov.u64 %r277,%r1367; $L188: .loc 1 1445 3 sub.u32 %r300,%r272,%r276; setp.le.s32 %r980,%r300,0; @ %r980 bra $L194; ld.u32 %r403,[%frame+1264]; setp.le.s32 %r981,%r300,16; @ ! %r981 bra $L423; cvta.const.u64 %r1378,zeroes$0; bra $L195; $L423: cvta.const.u64 %r1378,zeroes$0; $L198: st.u64 [%r277],%r1378; mov.u64 %r983,64; st.u64 [%r277+8],%r983; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r403,%r403,1; st.u32 [%frame+1264],%r403; setp.gt.s32 %r984,%r403,7; @ %r984 bra $L196; add.u64 %r277,%r277,16; bra $L197; $L196: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r989,[%value_in]; } setp.ne.u32 %r990,%r989,0; @ %r990 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r403,[%frame+1264]; mov.u64 %r277,%r1367; $L197: add.u32 %r300,%r300,-16; setp.gt.s32 %r991,%r300,16; @ %r991 bra $L198; $L195: st.u64 [%r277],%r1378; cvt.s64.s32 %r993,%r300; shl.b64 %r163,%r993,2; st.u64 [%r277+8],%r163; add.u64 %r401,%r401,%r163; st.u64 [%frame+1272],%r401; add.u32 %r164,%r403,1; st.u32 [%frame+1264],%r164; setp.gt.s32 %r994,%r164,7; @ %r994 bra $L199; add.u64 %r277,%r277,16; bra $L194; $L199: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r999,[%value_in]; } setp.ne.u32 %r1000,%r999,0; @ %r1000 bra $L181; .loc 1 1450 4 ld.u64 %r401,[%frame+1272]; .loc 1 1445 3 mov.u64 %r277,%r1367; $L194: .loc 1 1449 14 and.b32 %r1001,%r270,256; .loc 1 1449 6 setp.ne.u32 %r1002,%r1001,0; @ %r1002 bra $L200; .loc 1 1450 4 st.u64 [%r277],%r267; cvt.s64.s32 %r1003,%r276; shl.b64 %r168,%r1003,2; st.u64 [%r277+8],%r168; add.u64 %r401,%r401,%r168; st.u64 [%frame+1272],%r401; ld.u32 %r1004,[%frame+1264]; add.u32 %r170,%r1004,1; st.u32 [%frame+1264],%r170; setp.gt.s32 %r1005,%r170,7; @ %r1005 bra $L201; add.u64 %r277,%r277,16; bra $L202; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1010,[%value_in]; } setp.ne.u32 %r1011,%r1010,0; @ %r1011 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1450 4 mov.u64 %r277,%r1367; bra $L202; $L200: .loc 1 1452 7 setp.le.u32 %r1012,%r265,101; @ %r1012 bra $L203; .loc 1 1453 8 setp.neu.f64 %r1013,%r137,0d0000000000000000; @ %r1013 bra $L204; .loc 1 1455 6 cvta.const.u64 %r1014,$LC7; st.u64 [%r277],%r1014; mov.u64 %r1015,4; st.u64 [%r277+8],%r1015; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1016,[%frame+1264]; add.u32 %r173,%r1016,1; st.u32 [%frame+1264],%r173; setp.gt.s32 %r1017,%r173,7; @ %r1017 bra $L205; add.u64 %r277,%r277,16; bra $L206; $L205: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1022,[%value_in]; } setp.ne.u32 %r1023,%r1022,0; @ %r1023 bra $L181; .loc 1 1457 7 ld.u64 %r401,[%frame+1272]; .loc 1 1455 6 mov.u64 %r277,%r1367; $L206: .loc 1 1456 15 ld.u32 %r177,[%frame+1288]; .loc 1 1456 9 ld.u32 %r1024,[%frame+1292]; setp.lt.s32 %r1025,%r1024,%r177; @ %r1025 bra $L207; .loc 1 1456 31 and.b32 %r1026,%r270,1; .loc 1 1456 22 setp.eq.u32 %r1027,%r1026,0; @ %r1027 bra $L202; $L207: .loc 1 1457 7 st.u64 [%r277],%r1404; mov.u64 %r1029,4; st.u64 [%r277+8],%r1029; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1030,[%frame+1264]; add.u32 %r180,%r1030,1; st.u32 [%frame+1264],%r180; setp.gt.s32 %r1031,%r180,7; @ %r1031 bra $L208; add.u64 %r277,%r277,16; bra $L209; $L208: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1036,[%value_in]; } setp.ne.u32 %r1037,%r1036,0; @ %r1037 bra $L181; .loc 1 1458 7 ld.u32 %r177,[%frame+1288]; ld.u64 %r401,[%frame+1272]; .loc 1 1457 7 mov.u64 %r277,%r1367; $L209: .loc 1 1458 7 add.u32 %r207,%r177,-1; setp.le.s32 %r1038,%r207,0; @ %r1038 bra $L202; ld.u32 %r411,[%frame+1264]; setp.le.s32 %r1039,%r207,16; @ ! %r1039 bra $L424; cvta.const.u64 %r1378,zeroes$0; bra $L210; $L424: cvta.const.u64 %r1378,zeroes$0; $L213: st.u64 [%r277],%r1378; mov.u64 %r1041,64; st.u64 [%r277+8],%r1041; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r411,%r411,1; st.u32 [%frame+1264],%r411; setp.gt.s32 %r1042,%r411,7; @ %r1042 bra $L211; add.u64 %r277,%r277,16; bra $L212; $L211: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1047,[%value_in]; } setp.ne.u32 %r1048,%r1047,0; @ %r1048 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r411,[%frame+1264]; mov.u64 %r277,%r1367; $L212: add.u32 %r207,%r207,-16; setp.gt.s32 %r1049,%r207,16; @ %r1049 bra $L213; $L210: st.u64 [%r277],%r1378; cvt.s64.s32 %r1051,%r207; shl.b64 %r183,%r1051,2; st.u64 [%r277+8],%r183; add.u64 %r401,%r401,%r183; st.u64 [%frame+1272],%r401; add.u32 %r184,%r411,1; st.u32 [%frame+1264],%r184; setp.gt.s32 %r1052,%r184,7; @ %r1052 bra $L214; add.u64 %r277,%r277,16; bra $L202; $L214: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1057,[%value_in]; } setp.ne.u32 %r1058,%r1057,0; @ %r1058 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1458 7 mov.u64 %r277,%r1367; bra $L202; $L204: .loc 1 1460 21 ld.u32 %r186,[%frame+1292]; .loc 1 1460 15 setp.gt.s32 %r1059,%r186,0; @ %r1059 bra $L215; .loc 1 1461 6 cvta.const.u64 %r1060,$LC7; st.u64 [%r277],%r1060; mov.u64 %r1061,4; st.u64 [%r277+8],%r1061; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1062,[%frame+1264]; add.u32 %r188,%r1062,1; st.u32 [%frame+1264],%r188; setp.gt.s32 %r1063,%r188,7; @ %r1063 bra $L216; add.u64 %r277,%r277,16; bra $L217; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1068,[%value_in]; } setp.ne.u32 %r1069,%r1068,0; @ %r1069 bra $L181; .loc 1 1456 15 ld.u32 %r186,[%frame+1292]; .loc 1 1457 7 ld.u64 %r401,[%frame+1272]; .loc 1 1461 6 mov.u64 %r277,%r1367; $L217: .loc 1 1462 9 setp.ne.u32 %r1070,%r186,0; @ %r1070 bra $L218; .loc 1 1462 15 ld.u32 %r410,[%frame+1288]; .loc 1 1462 32 and.b32 %r1071,%r270,1; .loc 1 1462 23 or.b32 %r1072,%r1071,%r410; setp.ne.u32 %r1073,%r1072,0; @ %r1073 bra $L219; bra $L202; $L218: .loc 1 1463 7 st.u64 [%r277],%r1404; mov.u64 %r1075,4; st.u64 [%r277+8],%r1075; add.u64 %r408,%r401,4; st.u64 [%frame+1272],%r408; ld.u32 %r1076,[%frame+1264]; add.u32 %r409,%r1076,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1077,%r409,7; @ %r1077 bra $L220; add.u64 %r153,%r277,16; bra $L221; $L220: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1082,[%value_in]; } setp.ne.u32 %r1083,%r1082,0; @ %r1083 bra $L181; .loc 1 1464 7 ld.u32 %r186,[%frame+1292]; ld.u64 %r408,[%frame+1272]; ld.u32 %r409,[%frame+1264]; .loc 1 1463 7 mov.u64 %r153,%r1367; $L221: .loc 1 1464 7 setp.lt.s32 %r1084,%r186,0; @ %r1084 bra $L222; .loc 1 1465 7 ld.u32 %r410,[%frame+1288]; bra $L223; $L222: .loc 1 1464 7 neg.s32 %r242,%r186; setp.ge.s32 %r1085,%r186,-16; @ ! %r1085 bra $L425; cvta.const.u64 %r1378,zeroes$0; bra $L224; $L425: cvta.const.u64 %r1378,zeroes$0; $L227: st.u64 [%r153],%r1378; mov.u64 %r1087,64; st.u64 [%r153+8],%r1087; add.u64 %r408,%r408,64; st.u64 [%frame+1272],%r408; add.u32 %r409,%r409,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1088,%r409,7; @ %r1088 bra $L225; add.u64 %r153,%r153,16; bra $L226; $L225: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1093,[%value_in]; } setp.ne.u32 %r1094,%r1093,0; @ %r1094 bra $L181; ld.u64 %r408,[%frame+1272]; ld.u32 %r409,[%frame+1264]; mov.u64 %r153,%r1367; $L226: add.u32 %r242,%r242,-16; setp.gt.s32 %r1095,%r242,16; @ %r1095 bra $L227; $L224: st.u64 [%r153],%r1378; cvt.s64.s32 %r1097,%r242; shl.b64 %r194,%r1097,2; st.u64 [%r153+8],%r194; add.u64 %r408,%r408,%r194; st.u64 [%frame+1272],%r408; add.u32 %r409,%r409,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1098,%r409,7; @ %r1098 bra $L228; add.u64 %r153,%r153,16; .loc 1 1465 7 ld.u32 %r410,[%frame+1288]; bra $L223; $L228: .loc 1 1464 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1103,[%value_in]; } setp.ne.u32 %r1104,%r1103,0; @ %r1104 bra $L181; .loc 1 1465 7 ld.u32 %r410,[%frame+1288]; ld.u64 %r408,[%frame+1272]; ld.u32 %r409,[%frame+1264]; .loc 1 1464 7 mov.u64 %r153,%r1367; $L223: .loc 1 1465 7 st.u64 [%r153],%r267; cvt.s64.s32 %r1105,%r410; shl.b64 %r196,%r1105,2; st.u64 [%r153+8],%r196; add.u64 %r401,%r196,%r408; st.u64 [%frame+1272],%r401; add.u32 %r197,%r409,1; st.u32 [%frame+1264],%r197; setp.gt.s32 %r1106,%r197,7; @ %r1106 bra $L229; add.u64 %r277,%r153,16; bra $L202; $L229: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1111,[%value_in]; } setp.ne.u32 %r1112,%r1111,0; @ %r1112 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1465 7 mov.u64 %r277,%r1367; bra $L202; $L215: .loc 1 1469 6 ld.u32 %r1117,[%frame+1288]; min.s32 %r30,%r1117,%r231; setp.le.s32 %r1118,%r30,0; @ %r1118 bra $L230; st.u64 [%r277],%r267; cvt.s64.s32 %r1119,%r30; shl.b64 %r202,%r1119,2; st.u64 [%r277+8],%r202; add.u64 %r401,%r401,%r202; st.u64 [%frame+1272],%r401; ld.u32 %r1120,[%frame+1264]; add.u32 %r204,%r1120,1; st.u32 [%frame+1264],%r204; setp.gt.s32 %r1121,%r204,7; @ %r1121 bra $L231; add.u64 %r277,%r277,16; bra $L230; $L231: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1126,[%value_in]; } setp.ne.u32 %r1127,%r1126,0; @ %r1127 bra $L181; ld.u64 %r401,[%frame+1272]; mov.u64 %r277,%r1367; $L230: max.s32 %r1128,%r30,0; sub.u32 %r304,%r231,%r1128; setp.le.s32 %r1129,%r304,0; @ %r1129 bra $L232; ld.u32 %r404,[%frame+1264]; setp.le.s32 %r1130,%r304,16; @ ! %r1130 bra $L426; cvta.const.u64 %r1378,zeroes$0; bra $L233; $L426: cvta.const.u64 %r1378,zeroes$0; $L236: st.u64 [%r277],%r1378; mov.u64 %r1132,64; st.u64 [%r277+8],%r1132; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r404,%r404,1; st.u32 [%frame+1264],%r404; setp.gt.s32 %r1133,%r404,7; @ %r1133 bra $L234; add.u64 %r277,%r277,16; bra $L235; $L234: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1138,[%value_in]; } setp.ne.u32 %r1139,%r1138,0; @ %r1139 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r404,[%frame+1264]; mov.u64 %r277,%r1367; $L235: add.u32 %r304,%r304,-16; setp.gt.s32 %r1140,%r304,16; @ %r1140 bra $L236; $L233: st.u64 [%r277],%r1378; cvt.s64.s32 %r1142,%r304; shl.b64 %r209,%r1142,2; st.u64 [%r277+8],%r209; add.u64 %r401,%r401,%r209; st.u64 [%frame+1272],%r401; add.u32 %r210,%r404,1; st.u32 [%frame+1264],%r210; setp.gt.s32 %r1143,%r210,7; @ %r1143 bra $L237; add.u64 %r277,%r277,16; bra $L232; $L237: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1148,[%value_in]; } setp.ne.u32 %r1149,%r1148,0; @ %r1149 bra $L181; .loc 1 1491 10 ld.u64 %r401,[%frame+1272]; .loc 1 1469 6 mov.u64 %r277,%r1367; $L232: .loc 1 1471 9 cvt.s64.s32 %r1150,%r231; shl.b64 %r212,%r1150,2; .loc 1 1490 15 ld.u32 %r213,[%frame+1292]; ld.u32 %r214,[%frame+1288]; .loc 1 1490 9 setp.lt.s32 %r1151,%r213,%r214; @ %r1151 bra $L238; .loc 1 1490 31 and.b32 %r1152,%r270,1; .loc 1 1490 22 setp.eq.u32 %r1153,%r1152,0; @ %r1153 bra $L239; $L238: .loc 1 1491 10 st.u64 [%r277],%r1404; mov.u64 %r1155,4; st.u64 [%r277+8],%r1155; add.u64 %r401,%r401,4; st.u64 [%frame+1272],%r401; ld.u32 %r1156,[%frame+1264]; add.u32 %r217,%r1156,1; st.u32 [%frame+1264],%r217; setp.gt.s32 %r1157,%r217,7; @ %r1157 bra $L240; add.u64 %r277,%r277,16; bra $L239; $L240: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1162,[%value_in]; } setp.ne.u32 %r1163,%r1162,0; @ %r1163 bra $L181; .loc 1 1492 6 ld.u32 %r214,[%frame+1288]; ld.u32 %r213,[%frame+1292]; ld.u64 %r401,[%frame+1272]; .loc 1 1491 10 mov.u64 %r277,%r1367; $L239: .loc 1 1492 6 sub.u32 %r222,%r214,%r213; cvt.s64.s32 %r1164,%r214; shl.b64 %r1165,%r1164,2; sub.u64 %r1166,%r1165,%r212; shr.s64 %r1168,%r1166,2; cvt.u32.u64 %r1169,%r1168; min.s32 %r28,%r1169,%r222; setp.le.s32 %r1170,%r28,0; @ %r1170 bra $L241; .loc 1 1471 9 add.u64 %r1171,%r267,%r212; .loc 1 1492 6 st.u64 [%r277],%r1171; cvt.s64.s32 %r1172,%r28; shl.b64 %r224,%r1172,2; st.u64 [%r277+8],%r224; add.u64 %r401,%r401,%r224; st.u64 [%frame+1272],%r401; ld.u32 %r1173,[%frame+1264]; add.u32 %r226,%r1173,1; st.u32 [%frame+1264],%r226; setp.gt.s32 %r1174,%r226,7; @ %r1174 bra $L242; add.u64 %r277,%r277,16; bra $L241; $L242: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1179,[%value_in]; } setp.ne.u32 %r1180,%r1179,0; @ %r1180 bra $L181; ld.u32 %r1181,[%frame+1288]; ld.u32 %r1182,[%frame+1292]; sub.u32 %r222,%r1181,%r1182; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1492 6 mov.u64 %r277,%r1367; $L241: max.s32 %r1183,%r28,0; sub.u32 %r308,%r222,%r1183; setp.le.s32 %r1184,%r308,0; @ %r1184 bra $L202; ld.u32 %r407,[%frame+1264]; setp.le.s32 %r1185,%r308,16; @ ! %r1185 bra $L427; cvta.const.u64 %r1378,zeroes$0; bra $L243; $L427: cvta.const.u64 %r1378,zeroes$0; $L246: st.u64 [%r277],%r1378; mov.u64 %r1187,64; st.u64 [%r277+8],%r1187; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r407,%r407,1; st.u32 [%frame+1264],%r407; setp.gt.s32 %r1188,%r407,7; @ %r1188 bra $L244; add.u64 %r277,%r277,16; bra $L245; $L244: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1193,[%value_in]; } setp.ne.u32 %r1194,%r1193,0; @ %r1194 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r407,[%frame+1264]; mov.u64 %r277,%r1367; $L245: add.u32 %r308,%r308,-16; setp.gt.s32 %r1195,%r308,16; @ %r1195 bra $L246; $L243: st.u64 [%r277],%r1378; cvt.s64.s32 %r1197,%r308; shl.b64 %r230,%r1197,2; st.u64 [%r277+8],%r230; add.u64 %r401,%r401,%r230; st.u64 [%frame+1272],%r401; add.u32 %r232,%r407,1; st.u32 [%frame+1264],%r232; setp.gt.s32 %r1198,%r232,7; @ %r1198 bra $L247; add.u64 %r277,%r277,16; bra $L202; $L247: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1203,[%value_in]; } setp.ne.u32 %r1204,%r1203,0; @ %r1204 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1492 6 mov.u64 %r277,%r1367; bra $L202; $L203: .loc 1 1455 6 add.u64 %r238,%r401,4; .loc 1 1450 4 ld.u32 %r1205,[%frame+1264]; add.u32 %r239,%r1205,1; add.u64 %r278,%r277,16; .loc 1 1497 8 ld.u32 %r1206,[%frame+1288]; setp.gt.s32 %r1207,%r1206,1; @ %r1207 bra $L248; .loc 1 1497 27 and.b32 %r1208,%r270,1; .loc 1 1497 18 setp.eq.u32 %r1209,%r1208,0; @ %r1209 bra $L249; $L248: .loc 1 1498 6 st.u64 [%r277],%r267; mov.u64 %r1210,4; st.u64 [%r277+8],%r1210; st.u64 [%frame+1272],%r238; st.u32 [%frame+1264],%r239; setp.le.s32 %r1211,%r239,7; @ %r1211 bra $L250; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1216,[%value_in]; } setp.ne.u32 %r1217,%r1216,0; @ %r1217 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1498 6 mov.u64 %r278,%r1367; $L250: .loc 1 1500 6 st.u64 [%r278],%r1404; mov.u64 %r1219,4; st.u64 [%r278+8],%r1219; add.u64 %r238,%r238,4; st.u64 [%frame+1272],%r238; add.u32 %r239,%r239,1; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1220,%r239,7; @ %r1220 bra $L251; add.u64 %r278,%r278,16; bra $L252; $L251: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1225,[%value_in]; } setp.ne.u32 %r1226,%r1225,0; @ %r1226 bra $L181; .loc 1 1502 7 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1500 6 mov.u64 %r278,%r1367; $L252: .loc 1 1502 7 ld.u32 %r1227,[%frame+1288]; add.u32 %r309,%r1227,-1; .loc 1 1501 9 setp.eq.f64 %r1228,%r137,0d0000000000000000; @ %r1228 bra $L253; .loc 1 1502 7 add.u32 %r239,%r239,1; .loc 1 1499 8 add.u64 %r1229,%r267,4; .loc 1 1502 7 st.u64 [%r278],%r1229; cvt.s64.s32 %r1230,%r309; shl.b64 %r241,%r1230,2; st.u64 [%r278+8],%r241; add.u64 %r238,%r238,%r241; st.u64 [%frame+1272],%r238; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1231,%r239,7; @ %r1231 bra $L254; add.u64 %r278,%r278,16; bra $L255; $L254: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1236,[%value_in]; } setp.ne.u32 %r1237,%r1236,0; @ %r1237 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1502 7 mov.u64 %r278,%r1367; bra $L255; $L253: .loc 1 1505 7 setp.le.s32 %r1238,%r309,0; @ %r1238 bra $L255; setp.le.s32 %r1239,%r309,16; @ ! %r1239 bra $L428; cvta.const.u64 %r1378,zeroes$0; bra $L256; $L428: cvta.const.u64 %r1378,zeroes$0; $L259: st.u64 [%r278],%r1378; mov.u64 %r1241,64; st.u64 [%r278+8],%r1241; add.u64 %r238,%r238,64; st.u64 [%frame+1272],%r238; add.u32 %r239,%r239,1; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1242,%r239,7; @ %r1242 bra $L257; add.u64 %r278,%r278,16; bra $L258; $L257: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1247,[%value_in]; } setp.ne.u32 %r1248,%r1247,0; @ %r1248 bra $L181; ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; mov.u64 %r278,%r1367; $L258: add.u32 %r309,%r309,-16; setp.gt.s32 %r1249,%r309,16; @ %r1249 bra $L259; $L256: st.u64 [%r278],%r1378; cvt.s64.s32 %r1251,%r309; shl.b64 %r248,%r1251,2; st.u64 [%r278+8],%r248; add.u64 %r238,%r238,%r248; st.u64 [%frame+1272],%r238; add.u32 %r239,%r239,1; st.u32 [%frame+1264],%r239; setp.gt.s32 %r1252,%r239,7; @ %r1252 bra $L260; add.u64 %r278,%r278,16; bra $L255; $L260: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1257,[%value_in]; } setp.ne.u32 %r1258,%r1257,0; @ %r1258 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1505 7 mov.u64 %r278,%r1367; bra $L255; $L249: .loc 1 1507 6 st.u64 [%r277],%r267; mov.u64 %r1259,4; st.u64 [%r277+8],%r1259; st.u64 [%frame+1272],%r238; st.u32 [%frame+1264],%r239; setp.le.s32 %r1260,%r239,7; @ %r1260 bra $L255; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1265,[%value_in]; } setp.ne.u32 %r1266,%r1265,0; @ %r1266 bra $L181; .loc 1 1508 5 ld.u64 %r238,[%frame+1272]; ld.u32 %r239,[%frame+1264]; .loc 1 1507 6 mov.u64 %r278,%r1367; $L255: .loc 1 1508 5 st.u64 [%r278],%r1403; cvt.s64.s32 %r1268,%r46; shl.b64 %r252,%r1268,2; st.u64 [%r278+8],%r252; add.u64 %r401,%r252,%r238; st.u64 [%frame+1272],%r401; add.u32 %r253,%r239,1; st.u32 [%frame+1264],%r253; setp.gt.s32 %r1269,%r253,7; @ %r1269 bra $L261; add.u64 %r277,%r278,16; bra $L202; $L261: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1274,[%value_in]; } setp.ne.u32 %r1275,%r1274,0; @ %r1275 bra $L181; .loc 1 1516 4 ld.u64 %r401,[%frame+1272]; .loc 1 1508 5 mov.u64 %r277,%r1367; $L202: .loc 1 1515 13 and.b32 %r1276,%r270,4; .loc 1 1515 6 setp.eq.u32 %r1277,%r1276,0; @ %r1277 bra $L262; .loc 1 1516 4 sub.u32 %r320,%r271,%r353; setp.le.s32 %r1278,%r320,0; @ %r1278 bra $L262; ld.u32 %r412,[%frame+1264]; setp.le.s32 %r1279,%r320,16; @ ! %r1279 bra $L429; cvta.const.u64 %r1366,blanks$1; bra $L263; $L429: cvta.const.u64 %r1366,blanks$1; $L266: st.u64 [%r277],%r1366; mov.u64 %r1281,64; st.u64 [%r277+8],%r1281; add.u64 %r401,%r401,64; st.u64 [%frame+1272],%r401; add.u32 %r412,%r412,1; st.u32 [%frame+1264],%r412; setp.gt.s32 %r1282,%r412,7; @ %r1282 bra $L264; add.u64 %r277,%r277,16; bra $L265; $L264: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1287,[%value_in]; } setp.ne.u32 %r1288,%r1287,0; @ %r1288 bra $L181; ld.u64 %r401,[%frame+1272]; ld.u32 %r412,[%frame+1264]; mov.u64 %r277,%r1367; $L265: add.u32 %r320,%r320,-16; setp.gt.s32 %r1289,%r320,16; @ %r1289 bra $L266; $L263: st.u64 [%r277],%r1366; cvt.s64.s32 %r1291,%r320; shl.b64 %r257,%r1291,2; st.u64 [%r277+8],%r257; add.u64 %r401,%r401,%r257; st.u64 [%frame+1272],%r401; add.u32 %r258,%r412,1; st.u32 [%frame+1264],%r258; setp.le.s32 %r1292,%r258,7; @ %r1292 bra $L262; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1297,[%value_in]; } setp.ne.u32 %r1298,%r1297,0; @ %r1298 bra $L181; .loc 1 1521 3 ld.u64 %r401,[%frame+1272]; $L262: .loc 1 1519 33 max.s32 %r1299,%r271,%r353; .loc 1 1519 7 add.u32 %r438,%r438,%r1299; .loc 1 1521 3 setp.ne.u64 %r1300,%r401,0; @ %r1300 bra $L267; $L269: mov.u32 %r1301,0; st.u32 [%frame+1264],%r1301; .loc 1 1523 20 setp.ne.u64 %r1302,%r279,0; @ %r1302 bra $L268; .loc 1 1521 3 mov.u64 %r277,%r1367; bra $L34; $L267: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1402; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1307,[%value_in]; } setp.ne.u32 %r1308,%r1307,0; @ ! %r1308 bra $L269; bra $L181; $L268: .loc 1 1524 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r279; call _free_r,(%out_arg1,%out_arg2); } .loc 1 1521 3 mov.u64 %r277,%r1367; bra $L34; $L40: .loc 1 1529 2 ld.u64 %r1311,[%frame+1272]; setp.eq.u64 %r1312,%r1311,0; @ %r1312 bra $L270; add.u64 %r1316,%frame,1256; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r440; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1316; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1317,[%value_in]; } setp.eq.u32 %r1318,%r1317,0; @ %r1318 bra $L270; ld.u16 %r1320,[%r440+16]; and.b16 %r1319,%r1320,64; cvt.s32.s16 %r418,%r1319; bra $L39; $L270: ld.u16 %r1322,[%r440+16]; and.b16 %r1321,%r1322,64; cvt.s32.s16 %r418,%r1321; bra $L39; $L181: .loc 1 1531 5 setp.ne.u64 %r1323,%r279,0; @ %r1323 bra $L271; ld.u16 %r1325,[%r440+16]; and.b16 %r1324,%r1325,64; cvt.s32.s16 %r418,%r1324; bra $L39; $L271: .loc 1 1532 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r279; call _free_r,(%out_arg1,%out_arg2); } ld.u16 %r1329,[%r440+16]; and.b16 %r1328,%r1329,64; cvt.s32.s16 %r418,%r1328; $L39: .loc 1 1536 31 setp.ne.u32 %r1330,%r418,0; @ ! %r1330 bra $L24; bra $L88; $L219: .loc 1 1463 7 st.u64 [%r277],%r1404; mov.u64 %r1333,4; st.u64 [%r277+8],%r1333; add.u64 %r408,%r401,4; st.u64 [%frame+1272],%r408; ld.u32 %r1334,[%frame+1264]; add.u32 %r409,%r1334,1; st.u32 [%frame+1264],%r409; setp.gt.s32 %r1335,%r409,7; @ %r1335 bra $L220; add.u64 %r153,%r277,16; bra $L223; $L89: .loc 1 656 9 mov.u32 %r270,%r268; mov.u64 %r279,0; mov.u32 %r272,0; mov.u32 %r231,%r272; bra $L175; $L111: .loc 1 1042 9 mov.u32 %r1345,40; mov.u32 %r1338,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r439; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r137; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1338; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r270; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1412; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1411; .param .u32 %out_arg7; st.param.u32 [%out_arg7],%r265; .param .u64 %out_arg8; st.param.u64 [%out_arg8],%r1410; .param .u64 %out_arg9; st.param.u64 [%out_arg9],%frame; .param .u32 %out_arg10; st.param.u32 [%out_arg10],%r1345; call (%value_in),wcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7,%out_arg8,%out_arg9,%out_arg10); ld.param.u64 %r1349,[%value_in]; } mov.u64 %r267,%r1349; .loc 1 1049 7 setp.eq.u64 %r1350,%frame,%r267; @ %r1350 bra $L272; mov.u64 %r279,0; .loc 1 1037 10 mov.u32 %r272,%r1338; ld.u32 %r1376,[%frame+1288]; ld.u32 %r1377,[%frame+1292]; bra $L273; $L95: .loc 1 1311 14 setp.ne.u32 %r1351,%r272,-1; @ %r1351 bra $L274; bra $L168; $L280: .loc 1 672 11 mov.u32 %r265,104; $L54: setp.ne.u32 %r1352,%r339,0; @ ! %r1352 bra $L276; bra $L275; $L272: .loc 1 1049 26 ld.u32 %r1376,[%frame+1288]; .loc 1 1049 18 setp.gt.s32 %r1353,%r1376,40; @ %r1353 bra $L299; mov.u64 %r279,0; .loc 1 1037 10 mov.u32 %r272,%r1338; ld.u32 %r1377,[%frame+1292]; bra $L273; $L274: .loc 1 1312 11 and.b32 %r270,%r268,-129; .loc 1 1320 15 set.u32.ne.u64 %r1355,%r274,0; neg.s32 %r1356,%r1355; mov.u32 %r1354,%r1356; .loc 1 1320 28 set.u32.ne.u32 %r1358,%r272,0; neg.s32 %r1359,%r1358; mov.u32 %r1357,%r1359; .loc 1 1320 20 cvt.u16.u8 %r1419,%r1354; mov.u16 %r1361,%r1419; cvt.u16.u8 %r1419,%r1357; mov.u16 %r1362,%r1419; or.b16 %r1360,%r1361,%r1362; cvt.u32.u16 %r1363,%r1360; .loc 1 1320 7 cvt.u16.u8 %r1364,%r1363; setp.ne.u16 %r1365,%r1364,0; @ %r1365 bra $L300; mov.u32 %r272,0; mov.u32 %r276,%r272; .loc 1 1319 7 add.u64 %r267,%frame,160; bra $L172; $L24: .loc 1 1538 1 mov.u32 %value,%r438; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfwprintf .visible .func (.param .u32 %value_out) vfwprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 373 12 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfwprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 375 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1880 0 0 0 644 64735 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __svfwscanf_r .visible .func (.param .u32 %value_out) __svfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vfwscanf.c" // BEGIN GLOBAL FUNCTION DECL: vfwscanf .visible .func (.param .u32 %value_out) vfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __svfwscanf .visible .func (.param .u32 %value_out) __svfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _vfwscanf_r .visible .func (.param .u32 %value_out) _vfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .extern .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswspace .extern .func (.param .u32 %value_out) iswspace (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _fgetwc_r .extern .func (.param .u32 %value_out) _fgetwc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .extern .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _ungetwc_r .extern .func (.param .u32 %value_out) _ungetwc_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .extern .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: memset .extern .func (.param .u64 %value_out) memset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcrtomb_r .extern .func (.param .u64 %value_out) _wcrtomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wmemchr .extern .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcrtomb .extern .func (.param .u64 %value_out) wcrtomb (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .extern .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .extern .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: swprintf .extern .func (.param .u32 %value_out) swprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: _wcstod_r .extern .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[5] = {101,37,108,100,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[1] = {0 }; // BEGIN VAR DEF: basefix$0 .const .align 2 .u16 basefix$0[17] = {10,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 }; // BEGIN GLOBAL FUNCTION DEF: __svfwscanf_r .visible .func (.param .u32 %value_out) __svfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1424; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r29; .reg .u32 %r32; .reg .u64 %r34; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r54; .reg .u64 %r56; .reg .u32 %r59; .reg .u64 %r71; .reg .u32 %r79; .reg .u32 %r82; .reg .u32 %r96; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r138; .reg .u32 %r166; .reg .u32 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u64 %r172; .reg .u32 %r174; .reg .u32 %r175; .reg .u32 %r176; .reg .u32 %r177; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r191; .reg .u32 %r194; .reg .u32 %r195; .reg .u32 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r201; .reg .u32 %r202; .reg .u64 %r203; .reg .u64 %r210; .reg .u64 %r211; .reg .u32 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u32 %r218; .reg .u64 %r221; .reg .u32 %r227; .reg .u64 %r230; .reg .u32 %r231; .reg .u32 %r237; .reg .u64 %r245; .reg .u64 %r254; .reg .u32 %r260; .reg .u64 %r268; .reg .u32 %r270; .reg .u32 %r274; .reg .u64 %r280; .reg .u32 %r284; .reg .u64 %r286; .reg .u64 %r288; .reg .u32 %r290; .reg .u64 %r291; .reg .u64 %r292; .reg .u64 %r293; .reg .u64 %r294; .reg .u64 %r295; .reg .u64 %r296; .reg .u64 %r298; .reg .u64 %r299; .reg .u32 %r300; .reg .u64 %r301; .reg .u32 %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r306; .reg .u64 %r307; .reg .u64 %r309; .reg .u64 %r310; .reg .u16 %r311; .reg .u16 %r312; .reg .pred %r313; .reg .u16 %r314; .reg .u32 %r316; .reg .pred %r317; .reg .pred %r318; .reg .u32 %r320; .reg .pred %r321; .reg .u32 %r324; .reg .pred %r325; .reg .u32 %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .pred %r331; .reg .pred %r332; .reg .pred %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .pred %r338; .reg .u32 %r339; .reg .pred %r340; .reg .pred %r341; .reg .pred %r342; .reg .pred %r343; .reg .pred %r344; .reg .pred %r345; .reg .pred %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .pred %r350; .reg .pred %r351; .reg .pred %r352; .reg .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .u32 %r358; .reg .pred %r359; .reg .pred %r360; .reg .u32 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .u32 %r368; .reg .u32 %r369; .reg .u32 %r370; .reg .u16 %r371; .reg .u16 %r372; .reg .u16 %r373; .reg .u32 %r374; .reg .u16 %r375; .reg .pred %r376; .reg .u32 %r377; .reg .pred %r378; .reg .pred %r379; .reg .u32 %r380; .reg .pred %r381; .reg .u32 %r382; .reg .pred %r383; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r388; .reg .pred %r389; .reg .pred %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u16 %r397; .reg .u16 %r398; .reg .u16 %r399; .reg .u32 %r400; .reg .u16 %r401; .reg .pred %r402; .reg .u32 %r403; .reg .u32 %r404; .reg .u32 %r405; .reg .u32 %r406; .reg .u32 %r407; .reg .u32 %r408; .reg .u16 %r409; .reg .u16 %r410; .reg .u16 %r411; .reg .u32 %r412; .reg .u16 %r413; .reg .pred %r414; .reg .pred %r415; .reg .pred %r416; .reg .u32 %r417; .reg .pred %r418; .reg .u64 %r419; .reg .u32 %r420; .reg .pred %r421; .reg .u32 %r422; .reg .pred %r423; .reg .u64 %r424; .reg .u32 %r425; .reg .pred %r426; .reg .u64 %r427; .reg .u32 %r430; .reg .pred %r431; .reg .u32 %r433; .reg .pred %r434; .reg .pred %r437; .reg .u32 %r440; .reg .pred %r441; .reg .pred %r442; .reg .u32 %r446; .reg .u64 %r447; .reg .u64 %r449; .reg .u64 %r455; .reg .pred %r456; .reg .pred %r457; .reg .u32 %r458; .reg .pred %r459; .reg .pred %r461; .reg .u32 %r464; .reg .pred %r465; .reg .pred %r466; .reg .u64 %r468; .reg .u32 %r470; .reg .pred %r471; .reg .u32 %r474; .reg .pred %r475; .reg .pred %r476; .reg .u64 %r481; .reg .pred %r482; .reg .u64 %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .u32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r499; .reg .pred %r500; .reg .u64 %r504; .reg .pred %r505; .reg .u64 %r506; .reg .u64 %r508; .reg .pred %r509; .reg .u32 %r510; .reg .u32 %r513; .reg .u64 %r514; .reg .u64 %r516; .reg .u64 %r522; .reg .pred %r523; .reg .pred %r524; .reg .u32 %r525; .reg .pred %r526; .reg .u32 %r530; .reg .pred %r531; .reg .pred %r532; .reg .u64 %r537; .reg .pred %r538; .reg .u64 %r542; .reg .pred %r543; .reg .u32 %r545; .reg .pred %r546; .reg .u32 %r547; .reg .pred %r548; .reg .u32 %r551; .reg .u32 %r554; .reg .pred %r555; .reg .pred %r556; .reg .u32 %r558; .reg .pred %r559; .reg .u32 %r560; .reg .pred %r561; .reg .u32 %r564; .reg .u32 %r567; .reg .pred %r568; .reg .pred %r569; .reg .u32 %r571; .reg .pred %r572; .reg .u32 %r573; .reg .u32 %r576; .reg .u64 %r577; .reg .u64 %r579; .reg .u64 %r584; .reg .pred %r585; .reg .pred %r586; .reg .u32 %r587; .reg .pred %r588; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .u32 %r596; .reg .pred %r597; .reg .u32 %r599; .reg .u64 %r600; .reg .pred %r601; .reg .u64 %r602; .reg .u32 %r605; .reg .pred %r606; .reg .pred %r607; .reg .pred %r608; .reg .pred %r609; .reg .u32 %r610; .reg .u32 %r611; .reg .pred %r612; .reg .u64 %r613; .reg .u64 %r614; .reg .u64 %r615; .reg .u64 %r616; .reg .pred %r617; .reg .pred %r618; .reg .pred %r619; .reg .pred %r620; .reg .pred %r621; .reg .pred %r622; .reg .pred %r623; .reg .u32 %r624; .reg .pred %r625; .reg .u64 %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .u64 %r629; .reg .pred %r630; .reg .pred %r631; .reg .u32 %r632; .reg .pred %r633; .reg .u32 %r634; .reg .pred %r635; .reg .u32 %r636; .reg .pred %r637; .reg .u64 %r638; .reg .pred %r639; .reg .pred %r640; .reg .u32 %r644; .reg .pred %r645; .reg .u32 %r646; .reg .pred %r647; .reg .pred %r648; .reg .u32 %r652; .reg .u32 %r653; .reg .u32 %r654; .reg .pred %r655; .reg .u32 %r659; .reg .u32 %r660; .reg .pred %r661; .reg .u64 %r665; .reg .u64 %r667; .reg .u64 %r668; .reg .u32 %r669; .reg .pred %r670; .reg .u32 %r671; .reg .pred %r672; .reg .u64 %r673; .reg .u32 %r674; .reg .pred %r675; .reg .u64 %r676; .reg .u32 %r677; .reg .pred %r678; .reg .u64 %r679; .reg .pred %r680; .reg .u64 %r685; .reg .u64 %r690; .reg .u64 %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .u64 %r695; .reg .u32 %r696; .reg .u64 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .u32 %r702; .reg .pred %r703; .reg .pred %r704; .reg .pred %r705; .reg .pred %r706; .reg .pred %r707; .reg .u32 %r708; .reg .u32 %r709; .reg .pred %r710; .reg .pred %r711; .reg .pred %r712; .reg .pred %r713; .reg .pred %r714; .reg .pred %r715; .reg .pred %r716; .reg .pred %r717; .reg .pred %r718; .reg .pred %r719; .reg .pred %r720; .reg .pred %r721; .reg .pred %r722; .reg .pred %r723; .reg .pred %r724; .reg .pred %r725; .reg .u32 %r726; .reg .pred %r727; .reg .pred %r728; .reg .u32 %r729; .reg .pred %r730; .reg .u32 %r731; .reg .pred %r732; .reg .u32 %r733; .reg .u16 %r734; .reg .u32 %r735; .reg .u32 %r736; .reg .u32 %r737; .reg .u32 %r738; .reg .u32 %r739; .reg .u16 %r740; .reg .u16 %r741; .reg .u16 %r742; .reg .u32 %r743; .reg .u16 %r744; .reg .pred %r745; .reg .u32 %r746; .reg .pred %r747; .reg .pred %r749; .reg .u32 %r750; .reg .u16 %r751; .reg .u32 %r752; .reg .u32 %r753; .reg .u32 %r754; .reg .u32 %r756; .reg .u32 %r757; .reg .u16 %r758; .reg .u16 %r759; .reg .u16 %r760; .reg .u32 %r761; .reg .u16 %r762; .reg .pred %r763; .reg .u16 %r765; .reg .u32 %r767; .reg .u16 %r769; .reg .pred %r770; .reg .u32 %r771; .reg .u16 %r772; .reg .u32 %r773; .reg .u32 %r774; .reg .u32 %r775; .reg .u32 %r776; .reg .u32 %r777; .reg .u16 %r778; .reg .u16 %r779; .reg .u16 %r780; .reg .u32 %r781; .reg .u16 %r782; .reg .pred %r783; .reg .u32 %r784; .reg .pred %r785; .reg .u32 %r786; .reg .u16 %r787; .reg .u16 %r788; .reg .u32 %r789; .reg .u16 %r791; .reg .u16 %r793; .reg .pred %r794; .reg .u16 %r795; .reg .u32 %r797; .reg .u16 %r798; .reg .pred %r799; .reg .u16 %r800; .reg .pred %r801; .reg .u16 %r802; .reg .pred %r803; .reg .u32 %r804; .reg .pred %r805; .reg .u32 %r806; .reg .pred %r807; .reg .u32 %r809; .reg .pred %r810; .reg .pred %r811; .reg .u32 %r812; .reg .pred %r813; .reg .pred %r814; .reg .u32 %r818; .reg .pred %r819; .reg .u32 %r821; .reg .pred %r822; .reg .pred %r823; .reg .u32 %r825; .reg .u32 %r827; .reg .pred %r828; .reg .u32 %r829; .reg .pred %r830; .reg .u16 %r831; .reg .pred %r832; .reg .u32 %r833; .reg .pred %r835; .reg .pred %r836; .reg .u32 %r838; .reg .u32 %r840; .reg .u32 %r841; .reg .u16 %r842; .reg .u16 %r843; .reg .u16 %r844; .reg .u32 %r845; .reg .u16 %r847; .reg .u16 %r848; .reg .u16 %r849; .reg .u32 %r850; .reg .u16 %r851; .reg .pred %r852; .reg .u32 %r854; .reg .u32 %r856; .reg .pred %r857; .reg .u32 %r858; .reg .pred %r859; .reg .u32 %r860; .reg .pred %r861; .reg .pred %r862; .reg .u32 %r864; .reg .u32 %r866; .reg .pred %r867; .reg .u32 %r868; .reg .pred %r869; .reg .u32 %r873; .reg .u32 %r877; .reg .u32 %r878; .reg .pred %r879; .reg .u32 %r881; .reg .pred %r882; .reg .pred %r883; .reg .pred %r884; .reg .u64 %r887; .reg .u32 %r888; .reg .u64 %r889; .reg .u64 %r890; .reg .pred %r892; .reg .u64 %r894; .reg .u64 %r895; .reg .u32 %r896; .reg .u64 %r900; .reg .f64 %r901; .reg .u64 %r902; .reg .u32 %r903; .reg .pred %r904; .reg .u64 %r905; .reg .u32 %r906; .reg .pred %r907; .reg .pred %r908; .reg .u64 %r909; .reg .f32 %r910; .reg .f32 %r911; .reg .pred %r912; .reg .u16 %r913; .reg .u16 %r914; .reg .pred %r915; .reg .u32 %r920; .reg .u32 %r924; .reg .u32 %r928; .reg .u32 %r932; .reg .u32 %r936; .reg .u32 %r940; .reg .u32 %r944; .reg .u32 %r948; .reg .pred %r949; .reg .pred %r950; .reg .pred %r951; .reg .pred %r952; .reg .pred %r953; .reg .pred %r955; .reg .u32 %r956; .reg .u32 %r957; .reg .pred %r958; .reg .pred %r959; .reg .pred %r960; .reg .u64 %r961; .reg .u64 %r962; .reg .u64 %r963; .reg .u16 %r964; mov.u64 %r304,%ar0; mov.u64 %r305,%ar1; mov.u64 %r306,%ar2; mov.u64 %r307,%ar3; .loc 1 547 23 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r309,[%value_in]; } .loc 1 547 22 ld.u64 %r310,[%r309]; ld.s8 %r24,[%r310]; .loc 1 553 3 ld.u16 %r312,[%r305+16]; and.b16 %r311,%r312,8192; setp.ne.u16 %r313,%r311,0; @ %r313 bra $L2; .loc 1 551 3 ld.u32 %r25,[%r305+172]; .loc 1 553 3 or.b16 %r314,%r312,8192; st.u16 [%r305+16],%r314; or.b32 %r316,%r25,8192; st.u32 [%r305+172],%r316; $L2: .loc 1 560 15 add.u64 %r211,%r306,4; .loc 1 560 9 ld.u32 %r166,[%r306]; .loc 1 561 10 setp.eq.u32 %r317,%r166,0; @ %r317 bra $L182; mov.u64 %r71,0; mov.u32 %r300,0; mov.u32 %r59,%r300; mov.u32 %r303,%r300; mov.u64 %r56,%r71; .loc 1 1611 8 add.u64 %r961,%frame,1316; .loc 1 1613 17 add.u64 %r962,%frame,1312; .loc 1 1115 8 add.u64 %r963,%frame,1400; bra $L4; $L183: mov.u64 %r179,%r211; bra $L6; $L191: .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L192: mov.u64 %r179,%r211; bra $L6; $L194: mov.u64 %r179,%r211; bra $L6; $L197: mov.u32 %r59,%r274; mov.u64 %r179,%r211; bra $L6; $L199: mov.u64 %r179,%r211; bra $L6; $L209: mov.u64 %r179,%r211; $L6: .loc 1 560 15 add.u64 %r211,%r179,4; .loc 1 560 9 ld.u32 %r166,[%r179]; .loc 1 561 10 setp.eq.u32 %r318,%r166,0; @ %r318 bra $L1; $L4: .loc 1 563 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r166; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r320,[%value_in]; } mov.u32 %r32,%r320; .loc 1 563 10 setp.eq.u32 %r321,%r32,0; @ %r321 bra $L5; $L7: .loc 1 565 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r324,[%value_in]; } .loc 1 565 46 setp.eq.u32 %r325,%r324,-1; @ %r325 bra $L183; .loc 1 565 49 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r324; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r327,[%value_in]; } .loc 1 565 46 setp.ne.u32 %r328,%r327,0; @ %r328 bra $L7; bra $L400; $L5: .loc 1 571 10 setp.ne.u32 %r329,%r166,37; @ %r329 bra $L9; .loc 1 586 11 ld.u32 %r215,[%r211]; .loc 1 574 13 mov.u32 %r175,%r32; .loc 1 586 11 mov.u64 %r29,%r211; .loc 1 573 13 mov.u64 %r34,0; bra $L10; $L401: .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 606 10 mov.u32 %r175,16; .loc 1 612 8 mov.u64 %r34,0; $L10: .loc 1 586 15 add.u64 %r211,%r29,4; .loc 1 588 7 setp.eq.u32 %r330,%r215,104; @ %r330 bra $L11; setp.gt.s32 %r331,%r215,104; @ %r331 bra $L12; setp.eq.u32 %r332,%r215,76; @ %r332 bra $L13; setp.gt.s32 %r333,%r215,76; @ %r333 bra $L14; setp.eq.u32 %r334,%r215,42; @ %r334 bra $L15; setp.gt.s32 %r335,%r215,42; @ %r335 bra $L16; setp.eq.u32 %r336,%r215,37; @ %r336 bra $L9; bra $L1; $L16: setp.gt.s32 %r337,%r215,57; @ %r337 bra $L17; setp.gt.s32 %r338,%r215,47; @ %r338 bra $L18; bra $L1; $L17: and.b32 %r339,%r215,-3; setp.eq.u32 %r340,%r339,69; @ ! %r340 bra $L1; bra $L184; $L14: setp.eq.u32 %r341,%r215,99; @ %r341 bra $L20; setp.gt.s32 %r342,%r215,99; @ %r342 bra $L21; setp.eq.u32 %r343,%r215,88; @ %r343 bra $L22; setp.eq.u32 %r344,%r215,91; @ %r344 bra $L23; bra $L1; $L21: setp.ne.u32 %r345,%r215,100; @ %r345 bra $L185; .loc 1 725 9 mov.u64 %r71,_wcstol_r; .loc 1 726 9 mov.u32 %r300,10; .loc 1 724 6 mov.u32 %r202,3; bra $L47; $L12: .loc 1 588 7 setp.eq.u32 %r346,%r215,111; @ %r346 bra $L186; setp.gt.s32 %r347,%r215,111; @ %r347 bra $L25; setp.eq.u32 %r348,%r215,108; @ %r348 bra $L26; setp.eq.u32 %r349,%r215,110; @ %r349 bra $L27; setp.eq.u32 %r350,%r215,105; @ %r350 bra $L187; bra $L1; $L25: setp.eq.u32 %r351,%r215,115; @ %r351 bra $L188; setp.gt.s32 %r352,%r215,115; @ %r352 bra $L28; setp.eq.u32 %r353,%r215,112; @ %r353 bra $L29; bra $L1; $L28: setp.eq.u32 %r354,%r215,117; @ %r354 bra $L189; setp.eq.u32 %r355,%r215,120; @ %r355 bra $L22; bra $L1; $L9: .loc 1 592 14 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r358,[%value_in]; } .loc 1 592 7 setp.eq.u32 %r359,%r358,-1; @ %r359 bra $L32; .loc 1 594 7 setp.eq.u32 %r360,%r166,%r358; @ %r360 bra $L31; .loc 1 596 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r358; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r364,[%value_in]; } .loc 1 597 8 bra $L32; $L31: .loc 1 599 9 add.u32 %r59,%r59,1; .loc 1 600 4 mov.u64 %r179,%r211; bra $L6; $L15: .loc 1 603 7 set.u32.ne.u32 %r366,%r175,0; neg.s32 %r367,%r366; mov.u32 %r365,%r367; .loc 1 604 8 set.u32.ne.u64 %r369,%r34,0; neg.s32 %r370,%r369; mov.u32 %r368,%r370; cvt.u16.u8 %r964,%r365; mov.u16 %r372,%r964; cvt.u16.u8 %r964,%r368; mov.u16 %r373,%r964; or.b16 %r371,%r372,%r373; cvt.u32.u16 %r374,%r371; cvt.u16.u8 %r375,%r374; setp.ne.u16 %r376,%r375,0; @ ! %r376 bra $L401; bra $L1; $L26: .loc 1 609 14 and.b32 %r377,%r175,15; .loc 1 609 7 setp.ne.u32 %r378,%r377,0; @ %r378 bra $L1; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 612 7 setp.ne.u32 %r379,%r215,108; @ %r379 bra $L34; .loc 1 615 14 or.b32 %r175,%r175,2; .loc 1 789 8 ld.u32 %r215,[%r29+8]; .loc 1 614 8 add.u64 %r29,%r29,8; bra $L10; $L34: .loc 1 619 12 or.b32 %r175,%r175,1; .loc 1 586 15 mov.u64 %r29,%r211; bra $L10; $L13: .loc 1 622 14 and.b32 %r380,%r175,15; .loc 1 622 7 setp.ne.u32 %r381,%r380,0; @ %r381 bra $L1; .loc 1 624 10 or.b32 %r175,%r175,2; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 625 4 bra $L10; $L11: .loc 1 637 12 or.b32 %r175,%r175,4; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 638 4 bra $L10; $L18: .loc 1 703 14 and.b32 %r382,%r175,143; .loc 1 703 7 setp.ne.u32 %r383,%r382,0; @ %r383 bra $L1; .loc 1 705 18 shl.b64 %r385,%r34,2; add.u64 %r386,%r385,%r34; add.u64 %r387,%r386,%r386; add.u64 %r280,%r387,-48; .loc 1 705 23 cvt.s64.s32 %r388,%r215; .loc 1 705 10 add.u64 %r34,%r388,%r280; .loc 1 612 8 ld.u32 %r215,[%r29+4]; .loc 1 586 15 mov.u64 %r29,%r211; .loc 1 706 4 bra $L10; $L22: .loc 1 749 10 or.b32 %r175,%r175,512; .loc 1 751 9 mov.u64 %r71,_wcstoul_r; .loc 1 752 9 mov.u32 %r32,16; .loc 1 753 4 bra $L24; $L23: .loc 1 781 8 ld.u32 %r41,[%r29+4]; .loc 1 781 7 setp.ne.u32 %r389,%r41,94; @ %r389 bra $L36; .loc 1 784 8 add.u64 %r211,%r29,8; .loc 1 789 8 ld.u32 %r41,[%r29+8]; .loc 1 783 17 mov.u32 %r32,1; $L36: .loc 1 789 7 setp.ne.u32 %r390,%r41,93; @ %r390 bra $L190; .loc 1 790 9 add.u64 %r221,%r211,4; .loc 1 791 11 ld.u32 %r41,[%r211+4]; bra $L37; $L190: mov.u64 %r221,%r211; $L37: .loc 1 791 24 set.u32.ne.u32 %r392,%r41,93; neg.s32 %r393,%r392; mov.u32 %r391,%r393; set.u32.ne.u32 %r395,%r41,0; neg.s32 %r396,%r395; mov.u32 %r394,%r396; cvt.u16.u8 %r964,%r391; mov.u16 %r398,%r964; cvt.u16.u8 %r964,%r394; mov.u16 %r399,%r964; and.b16 %r397,%r398,%r399; cvt.u32.u16 %r400,%r397; cvt.u16.u8 %r401,%r400; setp.eq.u16 %r402,%r401,0; @ %r402 bra $L38; $L39: .loc 1 792 9 add.u64 %r221,%r221,4; .loc 1 791 11 ld.u32 %r218,[%r221]; .loc 1 791 24 set.u32.ne.u32 %r404,%r218,0; neg.s32 %r405,%r404; mov.u32 %r403,%r405; set.u32.ne.u32 %r407,%r218,93; neg.s32 %r408,%r407; mov.u32 %r406,%r408; cvt.u16.u8 %r964,%r403; mov.u16 %r410,%r964; cvt.u16.u8 %r964,%r406; mov.u16 %r411,%r964; and.b16 %r409,%r410,%r411; cvt.u32.u16 %r412,%r409; cvt.u16.u8 %r413,%r412; setp.ne.u16 %r414,%r413,0; @ %r414 bra $L39; $L38: .loc 1 794 7 add.u64 %r179,%r221,4; .loc 1 965 7 setp.eq.u64 %r415,%r34,0; .loc 1 966 12 selp.u64 %r34,-1,%r34,%r415; .loc 1 991 27 sub.u64 %r468,%r221,%r211; shr.s64 %r170,%r468,2; .loc 1 968 27 and.b32 %r470,%r175,17; .loc 1 968 7 setp.eq.u32 %r471,%r470,17; @ ! %r471 bra $L402; bra $L195; $L20: max.u64 %r169,%r34,1; and.b32 %r260,%r175,1; and.b32 %r284,%r175,16; .loc 1 879 14 setp.ne.u32 %r416,%r260,0; @ %r416 bra $L42; bra $L403; $L29: .loc 1 811 10 or.b32 %r175,%r175,544; .loc 1 813 9 mov.u64 %r71,_wcstoul_r; .loc 1 814 9 mov.u32 %r32,16; .loc 1 815 4 bra $L24; $L27: .loc 1 818 14 and.b32 %r417,%r175,16; .loc 1 818 7 setp.ne.u32 %r418,%r417,0; @ %r418 bra $L191; .loc 1 830 11 add.u64 %r419,%r307,7; and.b64 %r197,%r419,-8; ld.u64 %r54,[%r197]; add.u64 %r307,%r197,8; .loc 1 828 14 and.b32 %r420,%r175,4; .loc 1 828 7 setp.eq.u32 %r421,%r420,0; @ %r421 bra $L44; .loc 1 831 12 st.u16 [%r54],%r59; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L44: .loc 1 833 19 and.b32 %r422,%r175,1; .loc 1 833 12 setp.eq.u32 %r423,%r422,0; @ %r423 bra $L45; .loc 1 836 12 cvt.s64.s32 %r424,%r59; st.u64 [%r54],%r424; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L45: .loc 1 839 19 and.b32 %r425,%r175,2; .loc 1 839 12 setp.eq.u32 %r426,%r425,0; @ %r426 bra $L46; .loc 1 842 13 cvt.s64.s32 %r427,%r59; st.u64 [%r54],%r427; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L46: .loc 1 848 12 st.u32 [%r54],%r59; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L184: .loc 1 766 6 mov.u32 %r202,4; bra $L47; $L185: mov.u32 %r202,4; bra $L47; $L188: .loc 1 588 7 mov.u32 %r202,2; bra $L47; $L48: .loc 1 863 11 add.u32 %r59,%r59,1; $L47: .loc 1 862 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r430,[%value_in]; } .loc 1 862 47 setp.eq.u32 %r431,%r430,-1; @ %r431 bra $L32; .loc 1 862 50 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r430; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r433,[%value_in]; } .loc 1 862 47 setp.ne.u32 %r434,%r433,0; @ %r434 bra $L48; bra $L404; $L42: .loc 1 887 11 setp.ne.u32 %r955,%r284,0; @ %r955 bra $L50; .loc 1 894 5 add.u64 %r296,%r307,7; and.b64 %r295,%r296,-8; add.u64 %r307,%r295,8; ld.u64 %r56,[%r295]; $L50: .loc 1 904 11 mov.u64 %r286,0; bra $L51; $L54: .loc 1 898 8 @ %r955 bra $L52; .loc 1 904 14 st.u32 [%r56],%r440; .loc 1 904 11 add.u64 %r56,%r56,4; $L52: add.u32 %r270,%r270,1; .loc 1 896 28 add.u64 %r286,%r286,1; setp.eq.u64 %r437,%r169,%r286; @ %r437 bra $L53; $L51: cvt.u32.u64 %r270,%r286; .loc 1 896 37 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r440,[%value_in]; } .loc 1 896 28 setp.ne.u32 %r441,%r440,-1; @ %r441 bra $L54; .loc 1 908 11 setp.eq.u32 %r442,%r270,0; @ %r442 bra $L32; $L53: .loc 1 910 14 add.u32 %r59,%r59,%r270; .loc 1 914 11 @ %r955 bra $L192; .loc 1 915 12 add.u32 %r303,%r303,1; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L403: .loc 1 925 11 setp.ne.u32 %r955,%r284,0; @ %r955 bra $L193; .loc 1 932 7 add.u64 %r201,%r307,7; and.b64 %r182,%r201,-8; add.u64 %r307,%r182,8; ld.u64 %r181,[%r182]; bra $L55; $L193: .loc 1 926 7 add.u64 %r181,%frame,1408; $L55: .loc 1 934 8 mov.u64 %r447,8; mov.u32 %r446,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r963; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r446; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r447; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r449,[%value_in]; } bra $L56; $L61: .loc 1 937 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r181; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r464; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r963; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r455,[%value_in]; } .loc 1 938 8 setp.eq.u64 %r456,%r455,-1; @ %r456 bra $L32; .loc 1 941 8 setp.ne.u64 %r457,%r455,0; @ %r457 bra $L57; .loc 1 941 20 ld.u32 %r458,[%frame+1400]; setp.eq.u32 %r459,%r458,-4; @ %r459 bra $L58; $L57: .loc 1 942 12 add.u64 %r169,%r169,-1; $L58: .loc 1 943 8 @ %r955 bra $L59; .loc 1 948 13 add.u64 %r181,%r181,%r455; $L59: .loc 1 950 6 add.u32 %r260,%r260,1; .loc 1 935 26 setp.eq.u64 %r461,%r169,0; @ %r461 bra $L60; $L56: .loc 1 935 35 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r464,[%value_in]; } .loc 1 935 26 setp.ne.u32 %r465,%r464,-1; @ %r465 bra $L61; .loc 1 952 11 setp.eq.u32 %r466,%r260,0; @ %r466 bra $L32; $L60: .loc 1 954 14 add.u32 %r59,%r59,%r260; .loc 1 958 11 @ %r955 bra $L194; .loc 1 959 12 add.u32 %r303,%r303,1; .loc 1 586 15 mov.u64 %r179,%r211; bra $L6; $L67: add.u64 %r216,%r216,1; bra $L62; $L195: mov.u64 %r216,0; .loc 1 972 24 setp.eq.u32 %r958,%r32,0; $L62: cvt.u32.u64 %r174,%r216; .loc 1 971 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r474,[%value_in]; } .loc 1 972 24 setp.eq.u32 %r475,%r474,-1; @ %r475 bra $L64; .loc 1 972 8 setp.eq.u64 %r476,%r34,%r216; @ %r476 bra $L65; .loc 1 972 24 @ %r958 bra $L66; .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r481,[%value_in]; } .loc 1 972 24 setp.eq.u64 %r482,%r481,0; @ %r482 bra $L67; bra $L65; $L66: .loc 1 972 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r486,[%value_in]; } .loc 1 972 24 setp.ne.u64 %r487,%r486,0; @ %r487 bra $L67; bra $L65; $L64: .loc 1 976 11 setp.eq.u32 %r488,%r174,0; @ ! %r488 bra $L68; bra $L1; $L402: and.b32 %r174,%r175,1; .loc 1 979 12 setp.eq.u32 %r489,%r174,0; @ %r489 bra $L69; .loc 1 989 10 add.u64 %r299,%r307,7; and.b64 %r298,%r299,-8; add.u64 %r307,%r298,8; ld.u64 %r254,[%r298]; mov.u64 %r42,%r254; .loc 1 991 24 setp.eq.u32 %r959,%r32,0; .loc 1 990 14 bra $L70; $L74: .loc 1 993 10 st.u32 [%r42],%r492; add.u64 %r34,%r34,-1; add.u64 %r42,%r42,4; $L70: mov.u64 %r56,%r42; .loc 1 990 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r492,[%value_in]; } .loc 1 991 24 setp.eq.u32 %r493,%r492,-1; @ %r493 bra $L71; .loc 1 991 8 setp.eq.u64 %r494,%r34,0; @ %r494 bra $L72; .loc 1 991 24 @ %r959 bra $L73; .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r492; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r499,[%value_in]; } .loc 1 991 24 setp.eq.u64 %r500,%r499,0; @ %r500 bra $L74; bra $L72; $L73: .loc 1 991 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r492; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r504,[%value_in]; } .loc 1 991 24 setp.ne.u64 %r505,%r504,0; @ %r505 bra $L74; bra $L72; $L71: .loc 1 1000 14 sub.u64 %r506,%r42,%r254; shr.s64 %r508,%r506,2; .loc 1 1000 10 cvt.u32.u64 %r174,%r508; .loc 1 1001 11 setp.eq.u32 %r509,%r174,0; @ %r509 bra $L1; .loc 1 1003 11 mov.u32 %r510,0; st.u32 [%r42],%r510; .loc 1 1007 17 add.u32 %r303,%r303,1; bra $L68; $L69: and.b32 %r82,%r175,16; .loc 1 1017 11 setp.ne.u32 %r952,%r82,0; @ %r952 bra $L196; .loc 1 1024 7 add.u64 %r203,%r307,7; and.b64 %r180,%r203,-8; add.u64 %r307,%r180,8; ld.u64 %r183,[%r180]; bra $L75; $L196: .loc 1 1018 7 add.u64 %r183,%frame,1408; $L75: .loc 1 1026 8 mov.u64 %r514,8; mov.u32 %r513,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r963; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r513; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r514; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r516,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r960,%r32,0; .loc 1 1027 14 bra $L76; $L83: .loc 1 1030 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r183; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r530; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r963; call (%value_in),_wcrtomb_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r522,[%value_in]; } .loc 1 1031 8 setp.eq.u64 %r523,%r522,-1; @ %r523 bra $L32; .loc 1 1034 8 setp.ne.u64 %r524,%r522,0; @ %r524 bra $L77; .loc 1 1034 20 ld.u32 %r525,[%frame+1400]; setp.eq.u32 %r526,%r525,-4; @ %r526 bra $L78; $L77: .loc 1 1035 12 add.u64 %r34,%r34,-1; $L78: .loc 1 1036 8 @ %r952 bra $L79; .loc 1 1038 13 add.u64 %r183,%r183,%r522; $L79: .loc 1 1043 6 add.u32 %r174,%r174,1; $L76: .loc 1 1027 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r530,[%value_in]; } .loc 1 1028 22 setp.eq.u32 %r531,%r530,-1; @ %r531 bra $L80; .loc 1 1028 8 setp.eq.u64 %r532,%r34,0; @ %r532 bra $L81; .loc 1 1028 22 @ %r960 bra $L82; .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r530; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r537,[%value_in]; } .loc 1 1028 22 setp.eq.u64 %r538,%r537,0; @ %r538 bra $L83; bra $L81; $L82: .loc 1 1028 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r211; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r530; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r170; call (%value_in),wmemchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r542,[%value_in]; } .loc 1 1028 22 setp.ne.u64 %r543,%r542,0; @ %r543 bra $L83; bra $L81; $L80: .loc 1 1047 11 @ %r952 bra $L68; .loc 1 1049 10 mov.u32 %r545,0; st.u8 [%r183],%r545; .loc 1 1053 14 add.u32 %r303,%r303,1; $L68: .loc 1 1056 10 add.u32 %r59,%r59,%r174; .loc 1 1057 4 bra $L6; $L179: .loc 1 1061 7 setp.ne.u64 %r546,%r34,0; .loc 1 1062 19 selp.u64 %r34,%r34,-1,%r546; .loc 1 1063 27 and.b32 %r547,%r175,17; .loc 1 1063 7 setp.ne.u32 %r548,%r547,17; @ %r548 bra $L85; mov.u64 %r268,%r34; cvt.u32.u64 %r956,%r268; $L87: cvt.u32.u64 %r551,%r268; vsub.u32.u32.u32.add %r274,%r59,%r551,%r956; .loc 1 1065 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r554,[%value_in]; } .loc 1 1066 24 setp.eq.u32 %r555,%r554,-1; @ %r555 bra $L197; .loc 1 1066 8 setp.eq.u64 %r556,%r268,0; @ %r556 bra $L86; .loc 1 1066 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r554; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r558,[%value_in]; } .loc 1 1066 24 add.u64 %r268,%r268,-1; setp.eq.u32 %r559,%r558,0; @ %r559 bra $L87; bra $L86; $L85: .loc 1 1071 19 and.b32 %r560,%r175,1; .loc 1 1071 12 setp.eq.u32 %r561,%r560,0; @ %r561 bra $L88; .loc 1 1081 10 add.u64 %r292,%r307,7; and.b64 %r291,%r292,-8; add.u64 %r307,%r291,8; ld.u64 %r168,[%r291]; .loc 1 1082 14 mov.u64 %r172,%r34; cvt.u32.u64 %r956,%r172; bra $L89; $L92: .loc 1 1085 10 st.u32 [%r168],%r567; add.u64 %r168,%r168,4; $L89: cvt.u32.u64 %r564,%r172; vsub.u32.u32.u32.add %r214,%r59,%r564,%r956; mov.u64 %r56,%r168; .loc 1 1082 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r567,[%value_in]; } .loc 1 1083 24 setp.eq.u32 %r568,%r567,-1; @ %r568 bra $L90; .loc 1 1083 8 setp.eq.u64 %r569,%r172,0; @ %r569 bra $L91; .loc 1 1083 28 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r567; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r571,[%value_in]; } .loc 1 1083 24 add.u64 %r172,%r172,-1; setp.eq.u32 %r572,%r571,0; @ %r572 bra $L92; bra $L91; $L90: .loc 1 1093 11 mov.u32 %r573,0; st.u32 [%r168],%r573; .loc 1 1097 17 add.u32 %r303,%r303,1; mov.u32 %r59,%r214; mov.u64 %r179,%r211; bra $L6; $L88: .loc 1 1107 18 and.b32 %r79,%r175,16; .loc 1 1107 11 setp.ne.u32 %r951,%r79,0; @ %r951 bra $L198; .loc 1 1114 7 add.u64 %r294,%r307,7; and.b64 %r293,%r294,-8; add.u64 %r307,%r293,8; ld.u64 %r184,[%r293]; bra $L93; $L198: .loc 1 1108 7 add.u64 %r184,%frame,1408; $L93: .loc 1 1115 8 mov.u64 %r577,8; mov.u32 %r576,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r963; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r576; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r577; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r579,[%value_in]; } .loc 1 1116 14 bra $L94; $L100: .loc 1 1119 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r184; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r592; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r963; call (%value_in),wcrtomb,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r584,[%value_in]; } .loc 1 1120 8 setp.eq.u64 %r585,%r584,-1; @ %r585 bra $L32; .loc 1 1123 8 setp.ne.u64 %r586,%r584,0; @ %r586 bra $L95; .loc 1 1123 20 ld.u32 %r587,[%frame+1400]; setp.eq.u32 %r588,%r587,-4; @ %r588 bra $L96; $L95: .loc 1 1124 12 add.u64 %r34,%r34,-1; $L96: .loc 1 1125 8 @ %r951 bra $L97; .loc 1 1127 13 add.u64 %r184,%r184,%r584; $L97: .loc 1 1132 10 add.u32 %r59,%r59,1; $L94: .loc 1 1116 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r592,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r593,%r592,-1; @ %r593 bra $L98; .loc 1 1117 8 setp.eq.u64 %r594,%r34,0; @ %r594 bra $L99; .loc 1 1117 26 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r592; call (%value_in),iswspace,(%out_arg1); ld.param.u32 %r596,[%value_in]; } .loc 1 1117 22 setp.eq.u32 %r597,%r596,0; @ %r597 bra $L100; bra $L99; $L98: .loc 1 1136 11 @ %r951 bra $L199; .loc 1 1138 10 mov.u32 %r599,0; st.u8 [%r184],%r599; .loc 1 1142 14 add.u32 %r303,%r303,1; mov.u64 %r179,%r211; bra $L6; $L180: .loc 1 1150 19 add.u64 %r600,%r34,-1; .loc 1 1150 7 setp.le.u64 %r601,%r600,348; .loc 1 1151 12 selp.u64 %r34,%r34,349,%r601; .loc 1 1152 10 or.b32 %r176,%r175,1408; mov.u64 %r106,%frame; shl.b64 %r602,%r34,2; add.u64 %r189,%r602,%frame; $L118: mov.u64 %r56,%r106; .loc 1 1155 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r605,[%value_in]; } setp.gt.u32 %r606,%r605,57; @ %r606 bra $L102; setp.gt.u32 %r607,%r605,55; @ %r607 bra $L103; setp.eq.u32 %r608,%r605,48; @ %r608 bra $L104; setp.gt.u32 %r609,%r605,48; @ %r609 bra $L105; add.u32 %r610,%r605,-43; and.b32 %r611,%r610,-3; setp.eq.u32 %r612,%r611,0; @ ! %r612 bra $L107; bra $L106; $L105: .loc 1 1191 19 cvta.const.u64 %r613,basefix$0; cvt.s64.s32 %r614,%r300; add.u64 %r615,%r614,%r614; add.u64 %r616,%r613,%r615; ld.s16 %r300,[%r616]; .loc 1 1192 11 and.b32 %r176,%r176,-897; .loc 1 1193 5 bra $L108; $L102: setp.gt.u32 %r617,%r605,102; @ %r617 bra $L109; setp.gt.u32 %r618,%r605,96; @ %r618 bra $L110; setp.gt.u32 %r619,%r605,70; @ %r619 bra $L111; setp.gt.u32 %r620,%r605,64; @ ! %r620 bra $L107; bra $L110; $L111: setp.eq.u32 %r621,%r605,88; @ %r621 bra $L112; bra $L107; $L109: setp.eq.u32 %r622,%r605,120; @ %r622 bra $L112; bra $L405; $L104: .loc 1 1172 8 setp.ne.u32 %r623,%r300,0; @ %r623 bra $L114; .loc 1 1175 15 or.b32 %r176,%r176,512; .loc 1 1174 14 mov.u32 %r300,8; $L114: .loc 1 1177 15 and.b32 %r624,%r176,1024; .loc 1 1177 8 setp.eq.u32 %r625,%r624,0; @ %r625 bra $L115; .loc 1 1178 13 and.b32 %r176,%r176,-1409; bra $L108; $L115: .loc 1 1180 13 and.b32 %r176,%r176,-897; bra $L108; $L103: .loc 1 1198 19 cvta.const.u64 %r626,basefix$0; cvt.s64.s32 %r627,%r300; add.u64 %r628,%r627,%r627; add.u64 %r629,%r626,%r628; ld.s16 %r300,[%r629]; .loc 1 1199 8 setp.le.s32 %r630,%r300,8; @ %r630 bra $L107; .loc 1 1201 11 and.b32 %r176,%r176,-897; .loc 1 1202 5 bra $L108; $L110: .loc 1 1218 8 setp.le.s32 %r631,%r300,10; @ %r631 bra $L107; .loc 1 1220 11 and.b32 %r176,%r176,-897; .loc 1 1221 5 bra $L108; $L106: .loc 1 1226 15 and.b32 %r632,%r176,128; .loc 1 1226 8 setp.eq.u32 %r633,%r632,0; @ %r633 bra $L107; .loc 1 1228 15 and.b32 %r237,%r176,-129; .loc 1 1229 15 or.b32 %r176,%r237,65536; .loc 1 1230 9 bra $L108; $L112: .loc 1 1237 16 and.b32 %r634,%r176,512; .loc 1 1237 8 setp.eq.u32 %r635,%r634,0; @ %r635 bra $L107; .loc 1 1237 52 and.b32 %r636,%r176,65536; .loc 1 1237 41 setp.ne.u32 %r637,%r636,0; selp.u64 %r198,8,4,%r637; add.u64 %r638,%frame,%r198; .loc 1 1237 25 setp.ne.u64 %r639,%r106,%r638; @ %r639 bra $L107; .loc 1 1240 15 and.b32 %r176,%r176,-513; .loc 1 1239 14 mov.u32 %r300,16; .loc 1 1241 9 bra $L108; $L405: .loc 1 1250 11 setp.eq.u32 %r640,%r605,-1; @ %r640 bra $L117; $L107: .loc 1 1251 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r605; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r644,[%value_in]; } bra $L117; $L108: add.u64 %r106,%r106,4; .loc 1 1257 13 st.u32 [%r56],%r605; .loc 1 1153 18 setp.ne.u64 %r645,%r106,%r189; @ %r645 bra $L118; .loc 1 1257 10 mov.u64 %r56,%r106; $L117: .loc 1 1267 14 and.b32 %r646,%r176,256; .loc 1 1267 7 setp.eq.u32 %r647,%r646,0; @ %r647 bra $L119; .loc 1 1269 11 setp.ge.u64 %r648,%frame,%r106; @ %r648 bra $L1; .loc 1 1270 3 ld.u32 %r652,[%r106+-4]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r652; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r653,[%value_in]; } bra $L1; $L119: .loc 1 1273 9 ld.u32 %r96,[%r106+-4]; .loc 1 1274 23 and.b32 %r654,%r96,-33; .loc 1 1274 7 setp.ne.u32 %r655,%r654,88; @ %r655 bra $L120; .loc 1 1276 8 add.u64 %r56,%r106,-4; .loc 1 1277 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r96; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r659,[%value_in]; } $L120: .loc 1 1279 15 and.b32 %r660,%r176,16; .loc 1 1279 7 setp.ne.u32 %r661,%r660,0; @ %r661 bra $L121; .loc 1 1283 11 st.u32 [%r56],%r660; .loc 1 1284 15 mov.u64 %r665,0; { .param .u64 %value_in; $LCT0: .callprototype ( .param .u64 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u64 %in_ar2,.param .u32 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r665; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; call (%value_in),%r71,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u64 %r667,[%value_in]; } .loc 1 830 11 add.u64 %r668,%r307,7; and.b64 %r301,%r668,-8; add.u64 %r307,%r301,8; .loc 1 1285 18 and.b32 %r669,%r176,32; .loc 1 1285 11 setp.eq.u32 %r670,%r669,0; @ %r670 bra $L122; .loc 1 1287 12 ld.u64 %r245,[%r301]; .loc 1 1297 11 st.u64 [%r245],%r667; bra $L123; $L122: .loc 1 1306 23 and.b32 %r671,%r176,4; .loc 1 1306 16 setp.eq.u32 %r672,%r671,0; @ %r672 bra $L124; .loc 1 1309 9 ld.u64 %r673,[%r301]; st.u16 [%r673],%r667; bra $L123; $L124: .loc 1 1311 23 and.b32 %r674,%r176,1; .loc 1 1311 16 setp.eq.u32 %r675,%r674,0; @ %r675 bra $L125; .loc 1 1314 9 ld.u64 %r676,[%r301]; st.u64 [%r676],%r667; bra $L123; $L125: .loc 1 1317 23 and.b32 %r677,%r176,2; .loc 1 1317 16 setp.eq.u32 %r678,%r677,0; @ %r678 bra $L126; .loc 1 1320 8 mov.u64 %r679,_wcstoul_r; setp.ne.u64 %r680,%r71,%r679; @ %r680 bra $L127; .loc 1 1321 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r665; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; call (%value_in),_wcstoull_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r685,[%value_in]; } .loc 1 1325 10 mov.u64 %r105,%r685; bra $L128; $L127: .loc 1 1323 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r665; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r300; call (%value_in),_wcstoll_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r690,[%value_in]; } mov.u64 %r105,%r690; $L128: .loc 1 1325 10 ld.u64 %r691,[%r301]; st.u64 [%r691],%r105; bra $L123; $L126: .loc 1 1331 9 ld.u64 %r692,[%r301]; st.u32 [%r692],%r667; $L123: .loc 1 1333 17 add.u32 %r303,%r303,1; $L121: .loc 1 1335 15 sub.u64 %r693,%r56,%frame; shr.s64 %r695,%r693,2; .loc 1 1335 10 cvt.u32.u64 %r696,%r695; add.u32 %r59,%r696,%r59; .loc 1 1336 4 mov.u64 %r179,%r211; bra $L6; $L412: .loc 1 1356 14 add.u64 %r697,%r34,-1; .loc 1 1356 7 setp.le.u64 %r698,%r697,348; @ %r698 bra $L201; .loc 1 1359 27 cvt.u32.u64 %r699,%r34; .loc 1 1359 19 add.u32 %r194,%r699,-349; .loc 1 1360 14 mov.u64 %r34,349; bra $L129; $L201: .loc 1 1349 13 mov.u32 %r194,%r433; $L129: .loc 1 1362 10 or.b32 %r177,%r175,1920; add.u32 %r231,%r59,1; .loc 1 1351 9 mov.u32 %r196,0; .loc 1 1350 9 mov.u32 %r195,%r196; .loc 1 1348 13 mov.u64 %r191,0; .loc 1 1364 15 mov.u64 %r188,%r191; .loc 1 1363 11 mov.u64 %r187,%r191; .loc 1 1346 9 mov.u64 %r186,%r191; .loc 1 1365 11 mov.u64 %r56,%frame; $L157: add.u32 %r59,%r231,-1; .loc 1 1367 12 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r305; call (%value_in),_fgetwc_r,(%out_arg1,%out_arg2); ld.param.u32 %r702,[%value_in]; } setp.eq.u32 %r703,%r702,84; @ %r703 bra $L130; setp.gt.u32 %r704,%r702,84; @ %r704 bra $L131; setp.gt.u32 %r705,%r702,57; @ %r705 bra $L132; setp.gt.u32 %r706,%r702,48; @ %r706 bra $L133; setp.eq.u32 %r707,%r702,48; @ %r707 bra $L134; add.u32 %r708,%r702,-43; and.b32 %r709,%r708,-3; setp.eq.u32 %r710,%r709,0; @ ! %r710 bra $L136; bra $L135; $L132: setp.eq.u32 %r711,%r702,70; @ %r711 bra $L137; setp.gt.u32 %r712,%r702,70; @ %r712 bra $L138; setp.eq.u32 %r713,%r702,65; @ %r713 bra $L139; setp.eq.u32 %r714,%r702,69; @ %r714 bra $L140; bra $L136; $L138: setp.eq.u32 %r715,%r702,78; @ %r715 bra $L141; bra $L136; $L131: setp.eq.u32 %r716,%r702,105; @ %r716 bra $L142; setp.gt.u32 %r717,%r702,105; @ %r717 bra $L143; setp.eq.u32 %r718,%r702,101; @ %r718 bra $L140; setp.gt.u32 %r719,%r702,101; @ %r719 bra $L144; setp.eq.u32 %r720,%r702,89; @ %r720 bra $L145; setp.eq.u32 %r721,%r702,97; @ %r721 bra $L139; bra $L136; $L144: setp.eq.u32 %r722,%r702,102; @ %r722 bra $L137; bra $L136; $L143: setp.eq.u32 %r723,%r702,116; @ %r723 bra $L130; setp.eq.u32 %r724,%r702,121; @ %r724 bra $L145; setp.eq.u32 %r725,%r702,110; @ %r725 bra $L141; bra $L136; $L134: .loc 1 1375 15 and.b32 %r726,%r177,256; .loc 1 1375 8 setp.eq.u32 %r727,%r726,0; @ %r727 bra $L133; .loc 1 1377 15 and.b32 %r177,%r177,-129; .loc 1 1378 15 add.u64 %r187,%r187,1; .loc 1 1379 12 setp.eq.u32 %r728,%r194,0; @ %r728 bra $L146; .loc 1 1381 16 add.u32 %r194,%r194,-1; bra $L147; $L133: .loc 1 1396 18 add.u32 %r729,%r195,%r196; .loc 1 1396 8 setp.ne.u32 %r730,%r729,0; @ ! %r730 bra $L406; setp.eq.u64 %r953,%r187,0; bra $L148; $L406: .loc 1 1398 15 and.b32 %r177,%r177,-385; .loc 1 1399 9 bra $L149; $L135: .loc 1 1405 15 and.b32 %r731,%r177,128; .loc 1 1405 8 setp.eq.u32 %r732,%r731,0; @ ! %r732 bra $L407; setp.eq.u64 %r953,%r187,0; bra $L148; $L407: .loc 1 1407 15 and.b32 %r177,%r177,-129; .loc 1 1408 9 bra $L149; $L141: .loc 1 1413 18 cvt.u16.u32 %r734,%r195; set.u32.eq.u16 %r735,%r734,0; neg.s32 %r736,%r735; mov.u32 %r733,%r736; .loc 1 1413 33 set.u32.eq.u64 %r738,%r187,0; neg.s32 %r739,%r738; mov.u32 %r737,%r739; .loc 1 1413 23 cvt.u16.u8 %r964,%r733; mov.u16 %r741,%r964; cvt.u16.u8 %r964,%r737; mov.u16 %r742,%r964; and.b16 %r740,%r741,%r742; cvt.u32.u16 %r743,%r740; .loc 1 1413 8 cvt.u16.u8 %r744,%r743; setp.eq.u16 %r745,%r744,0; @ %r745 bra $L150; .loc 1 1414 19 and.b32 %r746,%r177,1792; .loc 1 1414 9 setp.ne.u32 %r747,%r746,1792; @ %r747 bra $L151; .loc 1 1417 15 and.b32 %r177,%r177,-1921; .loc 1 1418 18 mov.u32 %r195,1; .loc 1 1419 9 mov.u64 %r187,0; bra $L149; $L150: .loc 1 1421 8 setp.eq.u16 %r749,%r734,2; @ %r749 bra $L202; $L151: .loc 1 1426 18 cvt.u16.u32 %r751,%r196; set.u32.eq.u16 %r752,%r751,1; neg.s32 %r753,%r752; mov.u32 %r750,%r753; .loc 1 1426 35 set.u32.eq.u16 %r756,%r751,4; neg.s32 %r757,%r756; mov.u32 %r754,%r757; .loc 1 1426 23 cvt.u16.u8 %r964,%r750; mov.u16 %r759,%r964; cvt.u16.u8 %r964,%r754; mov.u16 %r760,%r964; or.b16 %r758,%r759,%r760; cvt.u32.u16 %r761,%r758; .loc 1 1426 8 cvt.u16.u8 %r762,%r761; setp.eq.u16 %r763,%r762,0; @ ! %r763 bra $L408; setp.eq.u64 %r953,%r187,0; bra $L148; $L408: .loc 1 1428 17 add.u16 %r765,%r751,1; cvt.u32.u16 %r767,%r765; cvt.s32.s8 %r196,%r767; .loc 1 1429 9 bra $L149; $L139: .loc 1 1434 8 cvt.u16.u32 %r769,%r195; setp.eq.u16 %r770,%r769,1; @ %r770 bra $L203; setp.eq.u64 %r953,%r187,0; bra $L148; $L142: .loc 1 1441 18 cvt.u16.u32 %r772,%r196; set.u32.eq.u16 %r773,%r772,0; neg.s32 %r774,%r773; mov.u32 %r771,%r774; .loc 1 1441 33 set.u32.eq.u64 %r776,%r187,0; neg.s32 %r777,%r776; mov.u32 %r775,%r777; .loc 1 1441 23 cvt.u16.u8 %r964,%r771; mov.u16 %r779,%r964; cvt.u16.u8 %r964,%r775; mov.u16 %r780,%r964; and.b16 %r778,%r779,%r780; cvt.u32.u16 %r781,%r778; .loc 1 1441 8 cvt.u16.u8 %r782,%r781; setp.eq.u16 %r783,%r782,0; @ %r783 bra $L152; .loc 1 1442 19 and.b32 %r784,%r177,1792; .loc 1 1442 9 setp.ne.u32 %r785,%r784,1792; @ %r785 bra $L204; .loc 1 1445 15 and.b32 %r177,%r177,-1921; .loc 1 1446 18 mov.u32 %r196,1; .loc 1 1447 9 mov.u64 %r187,0; bra $L149; $L152: .loc 1 1449 18 cvt.u32.u32 %r786,%r196; cvt.u16.u8 %r788,%r786; add.u16 %r787,%r788,-3; cvt.u32.u16 %r789,%r787; cvt.u16.u8 %r964,%r789; mov.u16 %r791,%r964; .loc 1 1449 8 and.b16 %r793,%r791,253; setp.ne.u16 %r794,%r793,0; @ ! %r794 bra $L409; setp.eq.u64 %r953,%r187,0; bra $L148; $L409: .loc 1 1451 17 add.u16 %r795,%r788,1; cvt.u32.u16 %r797,%r795; cvt.s32.s8 %r196,%r797; .loc 1 1452 9 bra $L149; $L137: .loc 1 1457 8 cvt.u16.u32 %r798,%r196; setp.eq.u16 %r799,%r798,2; @ %r799 bra $L205; setp.eq.u64 %r953,%r187,0; bra $L148; $L130: .loc 1 1465 8 cvt.u16.u32 %r800,%r196; setp.eq.u16 %r801,%r800,6; @ %r801 bra $L206; setp.eq.u64 %r953,%r187,0; bra $L148; $L145: .loc 1 1473 8 cvt.u16.u32 %r802,%r196; setp.eq.u16 %r803,%r802,7; @ %r803 bra $L207; setp.eq.u64 %r953,%r187,0; bra $L148; $L140: .loc 1 1482 16 and.b32 %r804,%r177,1280; .loc 1 1482 8 setp.eq.u32 %r805,%r804,1024; @ %r805 bra $L153; .loc 1 1483 20 and.b32 %r806,%r177,1024; .loc 1 1483 9 setp.eq.u32 %r807,%r806,0; @ ! %r807 bra $L410; setp.eq.u64 %r953,%r187,0; bra $L148; $L410: .loc 1 1483 29 setp.eq.u64 %r953,%r187,0; @ %r953 bra $L148; $L153: .loc 1 1485 22 and.b32 %r809,%r177,512; .loc 1 1485 12 setp.ne.u32 %r810,%r809,0; @ %r810 bra $L154; .loc 1 1487 17 sub.u64 %r188,%r187,%r186; mov.u64 %r191,%r56; $L154: .loc 1 1492 11 and.b32 %r138,%r177,-1921; .loc 1 1490 15 or.b32 %r177,%r138,384; .loc 1 1493 16 mov.u64 %r187,0; .loc 1 1494 9 bra $L149; $L136: .loc 1 1498 8 setp.ne.u32 %r811,%r24,%r702; @ %r811 bra $L155; .loc 1 1498 40 and.b32 %r812,%r177,512; .loc 1 1498 30 setp.eq.u32 %r813,%r812,0; @ %r813 bra $L155; .loc 1 1500 15 and.b32 %r177,%r177,-641; .loc 1 1502 9 mov.u64 %r186,%r187; bra $L149; $L155: .loc 1 1506 11 setp.eq.u32 %r814,%r702,-1; @ ! %r814 bra $L411; setp.eq.u64 %r953,%r187,0; bra $L156; $L411: setp.eq.u64 %r953,%r187,0; bra $L148; $L204: mov.u32 %r196,0; mov.u64 %r187,0; setp.eq.u32 %r953,1,1; $L148: .loc 1 1507 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r702; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r818,[%value_in]; } bra $L156; $L202: .loc 1 1423 18 mov.u32 %r195,3; bra $L149; $L203: .loc 1 1436 18 mov.u32 %r195,2; bra $L149; $L205: .loc 1 1459 18 mov.u32 %r196,3; bra $L149; $L206: .loc 1 1467 18 mov.u32 %r196,7; bra $L149; $L207: .loc 1 1475 18 mov.u32 %r196,8; $L149: .loc 1 1510 13 st.u32 [%r56],%r702; .loc 1 1510 10 add.u64 %r56,%r56,4; $L146: .loc 1 1512 13 add.u64 %r34,%r34,-1; .loc 1 1513 8 mov.u32 %r59,%r231; .loc 1 1365 18 setp.eq.u64 %r819,%r34,0; @ ! %r819 bra $L147; setp.eq.u64 %r953,%r187,0; bra $L156; $L147: add.u32 %r231,%r231,1; bra $L157; $L156: .loc 1 1515 7 @ %r953 bra $L158; .loc 1 1516 12 and.b32 %r177,%r177,-257; $L158: .loc 1 1525 17 add.u32 %r821,%r195,-1; .loc 1 1525 7 setp.gt.u32 %r822,%r821,1; @ %r822 bra $L159; .loc 1 1530 17 setp.ge.u64 %r823,%frame,%r56; @ %r823 bra $L1; $L160: .loc 1 1532 5 add.u64 %r56,%r56,-4; ld.u32 %r825,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r825; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r827,[%value_in]; } .loc 1 1530 17 setp.lt.u64 %r828,%frame,%r56; @ %r828 bra $L160; bra $L1; $L159: .loc 1 1540 17 add.u32 %r829,%r196,-1; .loc 1 1540 7 setp.gt.u32 %r830,%r829,6; @ %r830 bra $L161; .loc 1 1542 11 cvt.u16.u32 %r831,%r196; setp.le.s16 %r832,%r831,2; @ %r832 bra $L162; .loc 1 1543 18 cvt.u32.u32 %r833,%r196; cvt.u32.u8 %r290,%r833; .loc 1 1543 21 setp.ne.u16 %r835,%r831,3; @ %r835 bra $L208; bra $L161; $L162: .loc 1 1550 14 setp.lt.u64 %r836,%frame,%r56; @ %r836 bra $L164; bra $L1; $L208: .loc 1 1543 21 mov.u32 %r227,%r59; mov.u32 %r957,%r227; cvt.u16.u32 %r844,%r290; cvt.u16.u8 %r964,%r957; mov.u16 %r849,%r964; $L163: .loc 1 1545 7 add.u64 %r56,%r56,-4; ld.u32 %r838,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r838; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r840,[%value_in]; } .loc 1 1546 7 add.u32 %r227,%r227,-1; .loc 1 1543 21 mov.u32 %r841,%r227; cvt.u16.u8 %r964,%r841; mov.u16 %r843,%r964; add.u16 %r842,%r843,%r844; cvt.u32.u16 %r845,%r842; cvt.u16.u8 %r964,%r845; mov.u16 %r848,%r964; sub.u16 %r847,%r848,%r849; cvt.u32.u16 %r850,%r847; cvt.s16.s8 %r851,%r850; setp.gt.s16 %r852,%r851,3; @ %r852 bra $L163; .loc 1 1546 7 mov.u32 %r59,%r227; bra $L161; $L164: .loc 1 1552 9 add.u64 %r56,%r56,-4; ld.u32 %r854,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r854; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r856,[%value_in]; } .loc 1 1550 14 setp.lt.u64 %r857,%frame,%r56; @ %r857 bra $L164; bra $L1; $L161: .loc 1 1563 14 and.b32 %r858,%r177,256; .loc 1 1563 7 setp.eq.u32 %r859,%r858,0; @ %r859 bra $L165; .loc 1 1565 18 and.b32 %r860,%r177,1024; .loc 1 1565 11 setp.eq.u32 %r861,%r860,0; @ %r861 bra $L166; .loc 1 1568 14 setp.ge.u64 %r862,%frame,%r56; @ %r862 bra $L1; $L167: .loc 1 1570 9 add.u64 %r56,%r56,-4; ld.u32 %r864,[%r56]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r864; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r866,[%value_in]; } .loc 1 1568 14 setp.lt.u64 %r867,%frame,%r56; @ %r867 bra $L167; bra $L1; $L166: .loc 1 1576 12 ld.u32 %r167,[%r56+-4]; .loc 1 1578 27 and.b32 %r868,%r167,-33; .loc 1 1578 11 setp.ne.u32 %r869,%r868,69; @ %r869 bra $L168; .loc 1 1576 10 add.u64 %r56,%r56,-4; .loc 1 1577 8 add.u32 %r59,%r59,-1; bra $L169; $L168: .loc 1 1580 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r167; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r873,[%value_in]; } .loc 1 1581 7 ld.u32 %r167,[%r56+-8]; .loc 1 1582 5 add.u32 %r59,%r59,-2; .loc 1 1581 7 add.u64 %r56,%r56,-8; $L169: .loc 1 1584 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r167; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r877,[%value_in]; } $L165: .loc 1 1586 15 and.b32 %r878,%r177,16; .loc 1 1586 7 setp.ne.u32 %r879,%r878,0; @ %r879 bra $L209; .loc 1 1597 11 st.u32 [%r56],%r878; .loc 1 1598 19 and.b32 %r881,%r177,1536; .loc 1 1598 11 setp.ne.u32 %r882,%r881,1024; @ %r882 bra $L170; .loc 1 1606 11 setp.eq.u64 %r883,%r186,%r187; @ %r883 bra $L171; .loc 1 1601 13 sub.u64 %r230,%r186,%r187; mov.u64 %r191,%r56; bra $L172; $L170: .loc 1 1604 16 setp.eq.u64 %r884,%r188,0; @ %r884 bra $L171; .loc 1 1605 55 add.u64 %r889,%r191,4; .loc 1 1605 27 mov.u32 %r888,10; mov.u64 %r887,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r889; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r887; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r888; call (%value_in),_wcstol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r890,[%value_in]; } .loc 1 1605 25 sub.u64 %r230,%r890,%r188; $L172: .loc 1 1611 8 setp.lt.u64 %r892,%r191,%r961; .loc 1 1613 17 selp.u64 %r191,%r191,%r962,%r892; .loc 1 1615 18 st.u64 [%stack],%r230; cvta.const.u64 %r895,$LC0; mov.u64 %r894,21; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r191; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r894; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r895; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r896,[%value_in]; } $L171: .loc 1 1624 16 mov.u64 %r900,0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r900; call (%value_in),_wcstod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r901,[%value_in]; } .loc 1 830 11 add.u64 %r902,%r307,7; and.b64 %r210,%r902,-8; add.u64 %r307,%r210,8; .loc 1 1626 18 and.b32 %r903,%r177,1; .loc 1 1626 11 setp.eq.u32 %r904,%r903,0; @ %r904 bra $L174; .loc 1 1629 9 ld.u64 %r905,[%r210]; st.f64 [%r905],%r901; bra $L175; $L174: .loc 1 1628 8 ld.u64 %r288,[%r210]; .loc 1 1631 23 and.b32 %r906,%r177,2; .loc 1 1631 16 setp.eq.u32 %r907,%r906,0; @ %r907 bra $L176; .loc 1 1634 10 st.f64 [%r288],%r901; bra $L175; $L176: .loc 1 1639 8 setp.num.f64 %r908,%r901,%r901; @ %r908 bra $L177; .loc 1 1640 14 cvta.const.u64 %r909,$LC1; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r909; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r910,[%value_in]; } .loc 1 1640 12 st.f32 [%r288],%r910; bra $L175; $L177: .loc 1 1642 12 cvt.rn.f32.f64 %r911,%r901; st.f32 [%r288],%r911; $L175: .loc 1 1644 17 add.u32 %r303,%r303,1; mov.u64 %r179,%r211; bra $L6; $L32: .loc 1 1656 63 setp.eq.u32 %r912,%r303,0; @ %r912 bra $L210; .loc 1 1656 25 ld.u16 %r914,[%r305+16]; and.b16 %r913,%r914,64; setp.ne.u16 %r915,%r913,0; .loc 1 1656 63 selp.u32 %r303,-1,%r303,%r915; bra $L1; $L182: .loc 1 561 10 mov.u32 %r303,%r166; bra $L1; $L210: .loc 1 1656 63 mov.u32 %r303,-1; bra $L1; $L3: $L178: $L400: .loc 1 568 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r324; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r920,[%value_in]; } mov.u64 %r179,%r211; bra $L6; $L65: .loc 1 975 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r474; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r924,[%value_in]; } bra $L64; $L72: .loc 1 999 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r492; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r928,[%value_in]; } bra $L71; $L81: .loc 1 1046 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r530; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r932,[%value_in]; } bra $L80; $L86: .loc 1 1069 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r554; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r936,[%value_in]; } mov.u32 %r59,%r274; mov.u64 %r179,%r211; bra $L6; $L91: .loc 1 1092 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r567; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r940,[%value_in]; } bra $L90; $L99: .loc 1 1135 3 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r592; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r944,[%value_in]; } bra $L98; $L404: .loc 1 866 4 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r304; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r430; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r305; call (%value_in),_ungetwc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r948,[%value_in]; } .loc 1 872 7 setp.eq.u32 %r949,%r202,2; @ %r949 bra $L179; setp.eq.u32 %r950,%r202,3; @ ! %r950 bra $L412; bra $L180; $L186: .loc 1 588 7 mov.u64 %r71,_wcstoul_r; mov.u32 %r32,8; bra $L24; $L187: .loc 1 731 9 mov.u64 %r71,_wcstol_r; bra $L24; $L189: .loc 1 743 9 mov.u64 %r71,_wcstoul_r; .loc 1 744 9 mov.u32 %r32,10; $L24: .loc 1 588 7 mov.u32 %r300,%r32; mov.u32 %r202,3; bra $L47; $L1: .loc 1 1665 1 mov.u32 %value,%r303; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: vfwscanf .visible .func (.param .u32 %value_out) vfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 233 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 235 3 setp.eq.u64 %r28,%r23,0; @ %r28 bra $L414; ld.u32 %r29,[%r23+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L414; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; call __sinit,(%out_arg1); } $L414: .loc 1 236 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 237 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __svfwscanf .visible .func (.param .u32 %value_out) __svfwscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 244 10 ld.global.u64 %r31,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 245 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vfwscanf_r .visible .func (.param .u32 %value_out) _vfwscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 255 3 setp.eq.u64 %r28,%r24,0; @ %r28 bra $L420; ld.u32 %r29,[%r24+80]; setp.ne.u32 %r30,%r29,0; @ %r30 bra $L420; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call __sinit,(%out_arg1); } $L420: .loc 1 256 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),__svfwscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r36,[%value_in]; } .loc 1 257 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } /1898 0 0 0 644 2469 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: viprintf .visible .func (.param .u32 %value_out) viprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/viprintf.c" // BEGIN GLOBAL FUNCTION DECL: _viprintf_r .visible .func (.param .u32 %value_out) _viprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfiprintf_r .extern .func (.param .u32 %value_out) _vfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: viprintf .visible .func (.param .u32 %value_out) viprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 107 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 110 10 ld.u64 %r31,[%r23+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 111 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _viprintf_r .visible .func (.param .u32 %value_out) _viprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 121 10 ld.u64 %r31,[%r24+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 122 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-viscanf.o/0 0 0 644 2459 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: viscanf .visible .func (.param .u32 %value_out) viscanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/viscanf.c" // BEGIN GLOBAL FUNCTION DECL: _viscanf_r .visible .func (.param .u32 %value_out) _viscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfiscanf_r .extern .func (.param .u32 %value_out) __svfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: viscanf .visible .func (.param .u32 %value_out) viscanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 91 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 94 10 ld.u64 %r31,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 95 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _viscanf_r .visible .func (.param .u32 %value_out) _viscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 105 10 ld.u64 %r31,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 106 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-vprintf.o/0 0 0 644 2451 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vprintf .visible .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/vprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vprintf_r .visible .func (.param .u32 %value_out) _vprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _vfprintf_r .extern .func (.param .u32 %value_out) _vfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vprintf .visible .func (.param .u32 %value_out) vprintf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 31 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 34 10 ld.u64 %r31,[%r23+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 35 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vprintf_r .visible .func (.param .u32 %value_out) _vprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 50 10 ld.u64 %r31,[%r24+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_vfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 51 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-vscanf.o/ 0 0 0 644 2444 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vscanf .visible .func (.param .u32 %value_out) vscanf (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/vscanf.c" // BEGIN GLOBAL FUNCTION DECL: _vscanf_r .visible .func (.param .u32 %value_out) _vscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __svfscanf_r .extern .func (.param .u32 %value_out) __svfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DEF: vscanf .visible .func (.param .u32 %value_out) vscanf (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 32 18 ld.global.u64 %r23,[_impure_ptr]; .loc 1 35 10 ld.u64 %r31,[%r23+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 36 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vscanf_r .visible .func (.param .u32 %value_out) _vscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .u32 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 51 10 ld.u64 %r31,[%r24+8]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__svfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 52 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } /1916 0 0 0 644 4315 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsiprintf .visible .func (.param .u32 %value_out) vsiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vsiprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsiprintf_r .visible .func (.param .u32 %value_out) _vsiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: vsiprintf .visible .func (.param .u32 %value_out) vsiprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 53 22 st.u64 [%frame],%r25; .loc 1 53 15 st.u64 [%frame+24],%r25; .loc 1 54 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 54 22 st.u32 [%frame+12],%r28; .loc 1 52 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 56 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 57 5 ld.u64 %r23,[%frame]; .loc 1 57 9 mov.u32 %r36,0; st.u8 [%r23],%r36; .loc 1 39 1 mov.u32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsiprintf_r .visible .func (.param .u32 %value_out) _vsiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 53 22 st.u64 [%frame],%r25; .loc 1 53 15 st.u64 [%frame+24],%r25; .loc 1 54 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 54 22 st.u32 [%frame+12],%r28; .loc 1 52 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 56 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 57 5 ld.u64 %r22,[%frame]; .loc 1 57 9 mov.u32 %r36,0; st.u8 [%r22],%r36; .loc 1 59 1 mov.u32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1935 0 0 0 644 5233 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsiscanf .visible .func (.param .u32 %value_out) vsiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vsiscanf.c" // BEGIN GLOBAL FUNCTION DECL: _vsiscanf_r .visible .func (.param .u32 %value_out) _vsiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfiscanf_r .extern .func (.param .u32 %value_out) __ssvfiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: vsiscanf .visible .func (.param .u32 %value_out) vsiscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 51 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 52 22 st.u64 [%frame],%r26; .loc 1 52 15 st.u64 [%frame+24],%r26; .loc 1 53 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 53 22 cvt.u32.u64 %r24,%r31; st.u32 [%frame+8],%r24; .loc 1 53 15 st.u32 [%frame+32],%r24; .loc 1 54 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 55 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 56 15 st.u64 [%frame+120],%r33; .loc 1 57 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 58 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsiscanf_r .visible .func (.param .u32 %value_out) _vsiscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 51 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 52 22 st.u64 [%frame],%r26; .loc 1 52 15 st.u64 [%frame+24],%r26; .loc 1 53 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 53 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 53 15 st.u32 [%frame+32],%r23; .loc 1 54 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 55 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 56 15 st.u64 [%frame+120],%r33; .loc 1 57 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 58 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfiscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 59 1 mov.u32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1953 0 0 0 644 7203 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsniprintf .visible .func (.param .u32 %value_out) vsniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vsniprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsniprintf_r .visible .func (.param .u32 %value_out) _vsniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfiprintf_r .extern .func (.param .u32 %value_out) _svfiprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: vsniprintf .visible .func (.param .u32 %value_out) vsniprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; .loc 1 40 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 55 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L2; .loc 1 57 19 mov.u32 %r33,139; st.u32 [%r22],%r33; .loc 1 58 14 mov.u32 %r27,-1; bra $L1; $L2: .loc 1 60 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 61 22 st.u64 [%frame],%r28; .loc 1 61 15 st.u64 [%frame+24],%r28; .loc 1 62 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L4; .loc 1 62 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 62 22 st.u32 [%frame+12],%r25; .loc 1 62 15 st.u32 [%frame+32],%r25; .loc 1 63 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r27,%r42; .loc 1 65 6 setp.lt.s32 %r43,%r27,-1; @ %r43 bra $L5; $L7: .loc 1 68 7 ld.u64 %r26,[%frame]; .loc 1 68 11 mov.u32 %r44,0; st.u8 [%r26],%r44; .loc 1 40 10 bra $L1; $L4: .loc 1 62 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 62 15 st.u32 [%frame+32],%r46; .loc 1 63 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r27,%r53; .loc 1 65 6 setp.lt.s32 %r54,%r27,-1; @ ! %r54 bra $L1; bra $L6; $L5: .loc 1 66 17 mov.u32 %r55,139; st.u32 [%r22],%r55; bra $L7; $L6: mov.u32 %r56,139; st.u32 [%r22],%r56; $L1: .loc 1 41 1 mov.u32 %value,%r27; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsniprintf_r .visible .func (.param .u32 %value_out) _vsniprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; mov.u64 %r31,%ar4; .loc 1 55 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L9; .loc 1 57 19 mov.u32 %r33,139; st.u32 [%r27],%r33; .loc 1 58 14 mov.u32 %r26,-1; bra $L8; $L9: .loc 1 60 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 61 22 st.u64 [%frame],%r28; .loc 1 61 15 st.u64 [%frame+24],%r28; .loc 1 62 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L11; .loc 1 62 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 62 22 st.u32 [%frame+12],%r25; .loc 1 62 15 st.u32 [%frame+32],%r25; .loc 1 63 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r26,%r42; .loc 1 65 6 setp.lt.s32 %r43,%r26,-1; @ %r43 bra $L12; $L14: .loc 1 68 7 ld.u64 %r24,[%frame]; .loc 1 68 11 mov.u32 %r44,0; st.u8 [%r24],%r44; bra $L8; $L11: .loc 1 62 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 62 15 st.u32 [%frame+32],%r46; .loc 1 63 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 64 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfiprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r26,%r53; .loc 1 65 6 setp.lt.s32 %r54,%r26,-1; @ ! %r54 bra $L8; bra $L13; $L12: .loc 1 66 17 mov.u32 %r55,139; st.u32 [%r27],%r55; bra $L14; $L13: mov.u32 %r56,139; st.u32 [%r27],%r56; $L8: .loc 1 70 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1973 0 0 0 644 7188 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsnprintf .visible .func (.param .u32 %value_out) vsnprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdio/vsnprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsnprintf_r .visible .func (.param .u32 %value_out) _vsnprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: vsnprintf .visible .func (.param .u32 %value_out) vsnprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; mov.u64 %r31,%ar3; .loc 1 40 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 61 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L2; .loc 1 63 19 mov.u32 %r33,139; st.u32 [%r22],%r33; .loc 1 64 14 mov.u32 %r27,-1; bra $L1; $L2: .loc 1 66 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 67 22 st.u64 [%frame],%r28; .loc 1 67 15 st.u64 [%frame+24],%r28; .loc 1 68 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L4; .loc 1 68 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 68 22 st.u32 [%frame+12],%r25; .loc 1 68 15 st.u32 [%frame+32],%r25; .loc 1 69 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r27,%r42; .loc 1 71 6 setp.lt.s32 %r43,%r27,-1; @ %r43 bra $L5; $L7: .loc 1 74 7 ld.u64 %r26,[%frame]; .loc 1 74 11 mov.u32 %r44,0; st.u8 [%r26],%r44; .loc 1 40 10 bra $L1; $L4: .loc 1 68 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 68 15 st.u32 [%frame+32],%r46; .loc 1 69 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r27,%r53; .loc 1 71 6 setp.lt.s32 %r54,%r27,-1; @ ! %r54 bra $L1; bra $L6; $L5: .loc 1 72 17 mov.u32 %r55,139; st.u32 [%r22],%r55; bra $L7; $L6: mov.u32 %r56,139; st.u32 [%r22],%r56; $L1: .loc 1 41 1 mov.u32 %value,%r27; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsnprintf_r .visible .func (.param .u32 %value_out) _vsnprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; .reg .u32 %r33; .reg .u16 %r34; .reg .pred %r35; .reg .u32 %r36; .reg .u16 %r37; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u32 %r46; .reg .u16 %r48; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; mov.u64 %r30,%ar3; mov.u64 %r31,%ar4; .loc 1 61 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L9; .loc 1 63 19 mov.u32 %r33,139; st.u32 [%r27],%r33; .loc 1 64 14 mov.u32 %r26,-1; bra $L8; $L9: .loc 1 66 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 67 22 st.u64 [%frame],%r28; .loc 1 67 15 st.u64 [%frame+24],%r28; .loc 1 68 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L11; .loc 1 68 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 68 22 st.u32 [%frame+12],%r25; .loc 1 68 15 st.u32 [%frame+32],%r25; .loc 1 69 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r42,[%value_in]; } mov.u32 %r26,%r42; .loc 1 71 6 setp.lt.s32 %r43,%r26,-1; @ %r43 bra $L12; $L14: .loc 1 74 7 ld.u64 %r24,[%frame]; .loc 1 74 11 mov.u32 %r44,0; st.u8 [%r24],%r44; bra $L8; $L11: .loc 1 68 22 mov.u32 %r46,0; st.u32 [%frame+12],%r46; .loc 1 68 15 st.u32 [%frame+32],%r46; .loc 1 69 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 70 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r31; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r53,[%value_in]; } mov.u32 %r26,%r53; .loc 1 71 6 setp.lt.s32 %r54,%r26,-1; @ ! %r54 bra $L8; bra $L13; $L12: .loc 1 72 17 mov.u32 %r55,139; st.u32 [%r27],%r55; bra $L14; $L13: mov.u32 %r56,139; st.u32 [%r27],%r56; $L8: .loc 1 76 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /1992 0 0 0 644 4302 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsprintf .visible .func (.param .u32 %value_out) vsprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vsprintf.c" // BEGIN GLOBAL FUNCTION DECL: _vsprintf_r .visible .func (.param .u32 %value_out) _vsprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _svfprintf_r .extern .func (.param .u32 %value_out) _svfprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: vsprintf .visible .func (.param .u32 %value_out) vsprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 59 22 st.u64 [%frame],%r25; .loc 1 59 15 st.u64 [%frame+24],%r25; .loc 1 60 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 60 22 st.u32 [%frame+12],%r28; .loc 1 58 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 62 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 63 5 ld.u64 %r23,[%frame]; .loc 1 63 9 mov.u32 %r36,0; st.u8 [%r23],%r36; .loc 1 39 1 mov.u32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsprintf_r .visible .func (.param .u32 %value_out) _vsprintf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r30; .reg .u32 %r35; .reg .u32 %r36; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 59 22 st.u64 [%frame],%r25; .loc 1 59 15 st.u64 [%frame+24],%r25; .loc 1 60 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 60 22 st.u32 [%frame+12],%r28; .loc 1 58 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 62 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),_svfprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r35,[%value_in]; } .loc 1 63 5 ld.u64 %r22,[%frame]; .loc 1 63 9 mov.u32 %r36,0; st.u8 [%r22],%r36; .loc 1 65 1 mov.u32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-vsscanf.o/0 0 0 644 5220 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: vsscanf .visible .func (.param .u32 %value_out) vsscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/vsscanf.c" // BEGIN GLOBAL FUNCTION DECL: _vsscanf_r .visible .func (.param .u32 %value_out) _vsscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __seofread .extern .func (.param .u32 %value_out) __seofread (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ssvfscanf_r .extern .func (.param .u32 %value_out) __ssvfscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: vsscanf .visible .func (.param .u32 %value_out) vsscanf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u32 %r24; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 38 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 57 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 58 22 st.u64 [%frame],%r26; .loc 1 58 15 st.u64 [%frame+24],%r26; .loc 1 59 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 59 22 cvt.u32.u64 %r24,%r31; st.u32 [%frame+8],%r24; .loc 1 59 15 st.u32 [%frame+32],%r24; .loc 1 60 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 61 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 62 15 st.u64 [%frame+120],%r33; .loc 1 63 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 64 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r22; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 39 1 mov.u32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _vsscanf_r .visible .func (.param .u32 %value_out) _vsscanf_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,176; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r35; .reg .u32 %r40; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 57 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 58 22 st.u64 [%frame],%r26; .loc 1 58 15 st.u64 [%frame+24],%r26; .loc 1 59 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 59 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 59 15 st.u32 [%frame+32],%r23; .loc 1 60 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 61 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 62 15 st.u64 [%frame+120],%r33; .loc 1 63 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 64 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r28; call (%value_in),__ssvfscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r40,[%value_in]; } .loc 1 65 1 mov.u32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-wbuf.o/ 0 0 0 644 5510 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __swbuf_r .visible .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdio/wbuf.c" // BEGIN GLOBAL FUNCTION DECL: __swbuf .visible .func (.param .u32 %value_out) __swbuf (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .extern .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _fflush_r .extern .func (.param .u32 %value_out) _fflush_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __swbuf_r .visible .func (.param .u32 %value_out) __swbuf_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r31; .reg .u32 %r42; .reg .u32 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .pred %r68; .reg .u16 %r69; .reg .u32 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u32 %r96; .reg .u16 %r97; .reg .pred %r98; .reg .u32 %r101; .reg .pred %r102; .reg .u16 %r104; mov.u64 %r49,%ar0; mov.u32 %r50,%ar1; mov.u64 %r51,%ar2; .loc 1 44 3 setp.eq.u64 %r52,%r49,0; @ %r52 bra $L2; ld.u32 %r53,[%r49+80]; setp.ne.u32 %r54,%r53,0; @ %r54 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call __sinit,(%out_arg1); } $L2: .loc 1 54 10 ld.u32 %r56,[%r51+40]; st.u32 [%r51+12],%r56; .loc 1 55 7 ld.s16 %r24,[%r51+16]; .loc 1 55 6 cvt.u16.u32 %r58,%r24; and.b16 %r57,%r58,8; setp.eq.u16 %r59,%r57,0; @ %r59 bra $L3; .loc 1 55 7 ld.u64 %r25,[%r51+24]; setp.ne.u64 %r60,%r25,0; @ %r60 bra $L4; $L3: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } setp.eq.u32 %r64,%r63,0; @ %r64 bra $L5; $L10: .loc 1 56 12 mov.u32 %r48,-1; bra $L1; $L5: .loc 1 59 3 ld.s16 %r24,[%r51+16]; .loc 1 71 23 ld.u64 %r25,[%r51+24]; $L4: .loc 1 57 7 mov.u32 %r65,%r50; and.b32 %r48,%r50,255; .loc 1 59 3 cvt.u16.u32 %r67,%r24; and.b16 %r66,%r67,8192; setp.ne.u16 %r68,%r66,0; @ %r68 bra $L7; or.b16 %r69,%r67,8192; st.u16 [%r51+16],%r69; ld.u32 %r72,[%r51+172]; and.b32 %r71,%r72,-8193; st.u32 [%r51+172],%r71; $L7: .loc 1 71 9 ld.u64 %r31,[%r51]; .loc 1 71 14 sub.u64 %r73,%r31,%r25; .loc 1 71 5 cvt.u32.u64 %r42,%r73; .loc 1 72 6 ld.u32 %r74,[%r51+32]; setp.le.s32 %r75,%r74,%r42; @ %r75 bra $L8; .loc 1 80 6 add.u32 %r47,%r42,1; bra $L9; $L8: .loc 1 74 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r78,[%value_in]; } .loc 1 74 10 setp.ne.u32 %r79,%r78,0; @ %r79 bra $L10; .loc 1 79 6 ld.u64 %r31,[%r51]; mov.u32 %r47,1; $L9: .loc 1 78 9 ld.u32 %r81,[%r51+12]; add.u32 %r80,%r81,-1; st.u32 [%r51+12],%r80; .loc 1 79 10 add.u64 %r82,%r31,1; st.u64 [%r51],%r82; .loc 1 79 13 st.u8 [%r31],%r65; .loc 1 80 6 ld.u32 %r84,[%r51+32]; setp.eq.u32 %r85,%r84,%r47; @ %r85 bra $L11; .loc 1 80 52 set.u32.eq.u32 %r87,%r48,10; neg.s32 %r88,%r87; mov.u32 %r86,%r88; .loc 1 80 28 ld.u8 %r104,[%r51+16]; mov.u16 %r91,%r104; and.b16 %r90,%r91,1; cvt.u32.u16 %r92,%r90; .loc 1 80 52 cvt.u16.u8 %r104,%r86; mov.u16 %r94,%r104; cvt.u16.u8 %r104,%r92; mov.u16 %r95,%r104; and.b16 %r93,%r94,%r95; cvt.u32.u16 %r96,%r93; cvt.u16.u8 %r97,%r96; setp.eq.u16 %r98,%r97,0; @ %r98 bra $L1; $L11: .loc 1 81 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; call (%value_in),_fflush_r,(%out_arg1,%out_arg2); ld.param.u32 %r101,[%value_in]; } .loc 1 81 8 setp.ne.u32 %r102,%r101,0; @ %r102 bra $L10; $L1: .loc 1 84 1 mov.u32 %value,%r48; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __swbuf .visible .func (.param .u32 %value_out) __swbuf (.param .u32 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u32 %r30; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 93 10 ld.global.u64 %r29,[_impure_ptr]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),__swbuf_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r30,[%value_in]; } .loc 1 94 1 mov.u32 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-wcscat.o/ 0 0 0 644 1418 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscat .visible .func (.param .u64 %value_out) wcscat (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcscat.c" // BEGIN GLOBAL FUNCTION DEF: wcscat .visible .func (.param .u64 %value_out) wcscat (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .u32 %r38; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 72 10 ld.u32 %r32,[%r30]; setp.eq.u32 %r33,%r32,0; @ %r33 bra $L6; mov.u64 %r26,%r30; $L3: .loc 1 73 6 add.u64 %r26,%r26,4; .loc 1 72 10 ld.u32 %r34,[%r26]; setp.ne.u32 %r35,%r34,0; @ %r35 bra $L3; bra $L2; $L6: mov.u64 %r26,%r30; $L2: .loc 1 76 10 ld.u32 %r23,[%r31]; setp.eq.u32 %r36,%r23,0; @ %r36 bra $L4; mov.u64 %r24,%r26; $L5: .loc 1 77 14 add.u64 %r31,%r31,4; mov.u64 %r25,%r24; add.u64 %r24,%r24,4; mov.u64 %r26,%r24; .loc 1 77 10 st.u32 [%r25],%r23; .loc 1 76 10 ld.u32 %r23,[%r31]; setp.ne.u32 %r37,%r23,0; @ %r37 bra $L5; $L4: .loc 1 78 6 mov.u32 %r38,0; st.u32 [%r26],%r38; .loc 1 80 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-wcschr.o/ 0 0 0 644 911 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcschr .visible .func (.param .u64 %value_out) wcschr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcschr.c" // BEGIN GLOBAL FUNCTION DEF: wcschr .visible .func (.param .u64 %value_out) wcschr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .pred %r26; .reg .pred %r27; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; $L3: .loc 1 69 11 ld.u32 %r22,[%r24]; .loc 1 69 10 setp.eq.u32 %r26,%r22,%r25; @ %r26 bra $L2; .loc 1 74 16 add.u64 %r24,%r24,4; .loc 1 74 14 setp.ne.u32 %r27,%r22,0; @ %r27 bra $L3; .loc 1 75 10 mov.u64 %r24,0; $L2: .loc 1 76 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-wcscmp.o/ 0 0 0 644 1014 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscmp .visible .func (.param .u32 %value_out) wcscmp (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcscmp.c" // BEGIN GLOBAL FUNCTION DEF: wcscmp .visible .func (.param .u32 %value_out) wcscmp (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .pred %r28; .reg .pred %r29; mov.u64 %r26,%ar0; mov.u64 %r24,%ar1; .loc 1 74 9 bra $L2; $L4: .loc 1 75 12 add.u64 %r26,%r26,4; .loc 1 75 8 add.u64 %r24,%r24,4; setp.eq.u32 %r28,%r25,0; @ %r28 bra $L1; $L2: .loc 1 74 10 ld.u32 %r25,[%r26]; .loc 1 74 17 ld.u32 %r22,[%r24]; .loc 1 74 14 setp.eq.u32 %r29,%r25,%r22; @ %r29 bra $L4; .loc 1 77 15 sub.u32 %r25,%r25,%r22; $L1: .loc 1 78 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-wcscoll.o/0 0 0 644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscoll .visible .func (.param .u32 %value_out) wcscoll (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcscoll.c" // BEGIN GLOBAL FUNCTION DECL: wcscmp .extern .func (.param .u32 %value_out) wcscmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: wcscoll .visible .func (.param .u32 %value_out) wcscoll (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u32 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 40 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call (%value_in),wcscmp,(%out_arg1,%out_arg2); ld.param.u32 %r27,[%value_in]; } .loc 1 41 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-wcscpy.o/ 0 0 0 644 1206 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscpy .visible .func (.param .u64 %value_out) wcscpy (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcscpy.c" // BEGIN GLOBAL FUNCTION DEF: wcscpy .visible .func (.param .u64 %value_out) wcscpy (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .u32 %r33; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 66 7 mov.u32 %r30,0; st.u32 [%r28],%r30; .loc 1 69 10 ld.u32 %r23,[%r29]; setp.eq.u32 %r31,%r23,0; @ %r31 bra $L4; mov.u64 %r22,%r28; $L3: .loc 1 70 14 add.u64 %r29,%r29,4; mov.u64 %r24,%r22; add.u64 %r22,%r22,4; mov.u64 %r25,%r22; .loc 1 70 10 st.u32 [%r24],%r23; .loc 1 69 10 ld.u32 %r23,[%r29]; setp.ne.u32 %r32,%r23,0; @ %r32 bra $L3; bra $L2; $L4: mov.u64 %r25,%r28; $L2: .loc 1 71 6 mov.u32 %r33,0; st.u32 [%r25],%r33; .loc 1 74 1 mov.u64 %value,%r28; st.param.u64 [%value_out],%value; ret; } lib_a-wcscspn.o/0 0 0 644 1571 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcscspn .visible .func (.param .u64 %value_out) wcscspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcscspn.c" // BEGIN GLOBAL FUNCTION DEF: wcscspn .visible .func (.param .u64 %value_out) wcscspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u64 %r36; .reg .pred %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r44; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 66 10 ld.u32 %r23,[%r32]; setp.eq.u32 %r34,%r23,0; @ %r34 bra $L7; .loc 1 69 14 ld.u32 %r26,[%r33]; mov.u64 %r24,%r32; setp.ne.u32 %r44,%r26,0; bra $L3; $L8: mov.u64 %r25,%r33; mov.u32 %r22,%r26; $L5: .loc 1 71 7 setp.ne.u32 %r35,%r23,%r22; @ %r35 bra $L4; .loc 1 79 13 sub.u64 %r36,%r24,%r32; shr.s64 %r31,%r36,2; bra $L1; $L4: .loc 1 73 5 add.u64 %r25,%r25,4; .loc 1 69 14 ld.u32 %r22,[%r25]; setp.ne.u32 %r38,%r22,0; @ %r38 bra $L5; $L6: .loc 1 75 8 add.u64 %r24,%r24,4; .loc 1 66 10 ld.u32 %r23,[%r24]; setp.ne.u32 %r39,%r23,0; @ %r39 bra $L3; .loc 1 79 13 sub.u64 %r40,%r24,%r32; shr.s64 %r31,%r40,2; bra $L1; $L3: .loc 1 69 14 @ %r44 bra $L8; bra $L6; $L7: .loc 1 66 10 mov.u64 %r31,0; $L2: $L1: .loc 1 80 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /2010 0 0 0 644 74194 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/time/../time/strftime.c" // BEGIN FUNCTION DECL: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: __ctloc .visible .func (.param .u64 %value_out) __ctloc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcsftime .visible .func (.param .u64 %value_out) wcsftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcsftime_l .visible .func (.param .u64 %value_out) wcsftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); // BEGIN GLOBAL VAR DECL: _C_time_locale .extern .const .align 8 .u64 _C_time_locale[63]; // BEGIN GLOBAL VAR DECL: _tzname .extern .global .align 8 .u64 _tzname[2]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: wcstoul .extern .func (.param .u64 %value_out) wcstoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: mbstowcs .extern .func (.param .u64 %value_out) mbstowcs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: abs .extern .func (.param .u32 %value_out) abs (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: swprintf .extern .func (.param .u32 %value_out) swprintf (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcscpy .extern .func (.param .u64 %value_out) wcscpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: towlower .extern .func (.param .u32 %value_out) towlower (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __tz_lock .extern .func __tz_lock; // BEGIN GLOBAL FUNCTION DECL: _tzset_unlocked .extern .func _tzset_unlocked; // BEGIN GLOBAL FUNCTION DECL: __gettzinfo .extern .func (.param .u64 %value_out) __gettzinfo; // BEGIN GLOBAL FUNCTION DECL: __tz_unlock .extern .func __tz_unlock; // BEGIN GLOBAL FUNCTION DECL: labs .extern .func (.param .u64 %value_out) labs (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC9 .const .align 4 .u32 $LC9[8] = {89,45,37,109,45,37,100,0 }; // BEGIN VAR DEF: $LC5 .const .align 4 .u32 $LC5[5] = {37,46,50,100,0 }; // BEGIN VAR DEF: $LC10 .const .align 4 .u32 $LC10[4] = {46,42,117,0 }; // BEGIN VAR DEF: $LC11 .const .align 4 .u32 $LC11[5] = {37,46,51,100,0 }; // BEGIN VAR DEF: $LC12 .const .align 4 .u32 $LC12[10] = {37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC13 .const .align 4 .u32 $LC13[5] = {37,108,108,100,0 }; // BEGIN VAR DEF: $LC14 .const .align 4 .u32 $LC14[15] = {37,46,50,100,58,37,46,50,100,58,37,46,50,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 4 .u32 $LC15[12] = {37,43,48,51,108,100,37,46,50,108,100,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: $LC1 .const .align 4 .u32 $LC1[7] = {37,115,37,46,42,100,0 }; // BEGIN VAR DEF: $LC2 .const .align 4 .u32 $LC2[8] = {37,115,37,48,46,42,100,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {43,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[2] = {45,0 }; // BEGIN VAR DEF: $LC6 .const .align 4 .u32 $LC6[4] = {37,50,100,0 }; // BEGIN VAR DEF: $LC7 .const .align 4 .u32 $LC7[15] = {37,46,50,100,47,37,46,50,100,47,37,46,50,100,0 }; // BEGIN VAR DEF: $LC8 .const .align 4 .u32 $LC8[4] = {37,108,117,0 }; // BEGIN FUNCTION DEF: iso_year_adjust$isra$0 .func (.param .u32 %value_out) iso_year_adjust$isra$0 (.param .u32 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r34; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r56; .reg .u32 %r58; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u16 %r87; mov.u32 %r43,%ar0; mov.u32 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 350 14 setp.lt.s32 %r46,%r43,0; selp.u32 %r23,1900,-100,%r46; add.u32 %r24,%r23,%r43; and.b32 %r47,%r43,3; setp.ne.u32 %r48,%r47,0; @ %r48 bra $L3; rem.s32 %r50,%r24,100; setp.ne.u32 %r56,%r50,0; @ %r56 bra $L10; $L3: rem.s32 %r58,%r24,400; set.u32.eq.u32 %r65,%r58,0; neg.s32 %r31,%r65; bra $L4; $L10: mov.u32 %r31,1; $L4: .loc 1 356 11 shl.b32 %r67,%r45,4; add.u32 %r68,%r44,%r44; vadd.u32.u32.u32.add %r34,%r31,%r67,%r68; .loc 1 356 3 setp.gt.s32 %r70,%r34,33; @ %r70 bra $L5; setp.ge.s32 %r71,%r34,0; @ %r71 bra $L6; .loc 1 385 10 mov.u32 %r42,0; bra $L1; $L8: .loc 1 356 3 mov.u64 %r73,11822082166292481; shr.u64 %r72,%r73,%r40; cvt.u32.u64 %r74,%r72; cvt.u16.u8 %r87,%r74; mov.u16 %r76,%r87; and.b16 %r75,%r76,1; cvt.u32.u16 %r77,%r75; .loc 1 370 14 cvt.u32.u8 %r42,%r77; bra $L1; $L6: .loc 1 356 3 mov.u64 %r79,13690420227; shr.u64 %r78,%r79,%r34; cvt.u32.u64 %r80,%r78; cvt.u16.u8 %r87,%r80; mov.u16 %r82,%r87; and.b16 %r81,%r82,1; cvt.u32.u16 %r83,%r81; cvt.u32.u8 %r84,%r83; neg.s32 %r42,%r84; bra $L1; $L5: add.u32 %r40,%r34,-5794; setp.le.u32 %r85,%r40,53; @ %r85 bra $L8; .loc 1 385 10 mov.u32 %r42,0; $L1: .loc 1 387 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: __strftime$isra$0 .func (.param .u64 %value_out) __strftime$isra$0 (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,1152; sub.u64 %stack,%frame,32; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r26; .reg .u64 %r33; .reg .u64 %r36; .reg .u64 %r40; .reg .u32 %r43; .reg .u64 %r47; .reg .u32 %r50; .reg .u64 %r53; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r76; .reg .u32 %r79; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r90; .reg .u64 %r94; .reg .u32 %r97; .reg .u32 %r98; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r114; .reg .u32 %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r141; .reg .u32 %r144; .reg .u32 %r151; .reg .u64 %r157; .reg .u64 %r167; .reg .u32 %r171; .reg .u64 %r175; .reg .u64 %r205; .reg .u32 %r209; .reg .u32 %r218; .reg .u64 %r224; .reg .u32 %r225; .reg .u32 %r281; .reg .u32 %r294; .reg .u32 %r297; .reg .u32 %r298; .reg .u32 %r299; .reg .u32 %r300; .reg .u32 %r305; .reg .u32 %r318; .reg .u32 %r319; .reg .u32 %r329; .reg .u32 %r330; .reg .u32 %r338; .reg .u32 %r340; .reg .u64 %r345; .reg .u64 %r357; .reg .u64 %r371; .reg .u32 %r375; .reg .u64 %r376; .reg .u64 %r386; .reg .u64 %r387; .reg .u32 %r389; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r404; .reg .u64 %r407; .reg .u64 %r412; .reg .u64 %r413; .reg .u64 %r417; .reg .u64 %r418; .reg .u64 %r423; .reg .u64 %r424; .reg .u64 %r429; .reg .u64 %r430; .reg .u64 %r434; .reg .u64 %r436; .reg .u64 %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u64 %r445; .reg .u64 %r446; .reg .u64 %r451; .reg .u64 %r454; .reg .u64 %r464; .reg .u64 %r465; .reg .u64 %r466; .reg .u64 %r467; .reg .u64 %r468; .reg .pred %r477; .reg .u64 %r478; .reg .u64 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .u32 %r482; .reg .u32 %r483; .reg .u32 %r484; .reg .u32 %r485; .reg .u16 %r486; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u16 %r490; .reg .pred %r491; .reg .pred %r492; .reg .u32 %r493; .reg .u32 %r494; .reg .u32 %r495; .reg .u32 %r496; .reg .u32 %r497; .reg .u32 %r498; .reg .u16 %r499; .reg .u16 %r500; .reg .u16 %r501; .reg .u32 %r502; .reg .u16 %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r509; .reg .u64 %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .pred %r517; .reg .pred %r518; .reg .pred %r519; .reg .pred %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r523; .reg .pred %r524; .reg .pred %r525; .reg .pred %r526; .reg .pred %r527; .reg .pred %r528; .reg .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .pred %r535; .reg .pred %r536; .reg .pred %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .pred %r541; .reg .pred %r542; .reg .pred %r543; .reg .pred %r544; .reg .pred %r545; .reg .pred %r546; .reg .pred %r547; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .pred %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .pred %r556; .reg .pred %r557; .reg .pred %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .pred %r566; .reg .pred %r567; .reg .pred %r568; .reg .u64 %r569; .reg .u64 %r570; .reg .u64 %r571; .reg .u64 %r572; .reg .u64 %r573; .reg .u32 %r574; .reg .u64 %r577; .reg .u64 %r578; .reg .u64 %r579; .reg .pred %r580; .reg .pred %r581; .reg .u64 %r582; .reg .pred %r583; .reg .u32 %r584; .reg .pred %r585; .reg .u64 %r586; .reg .u64 %r587; .reg .u64 %r588; .reg .u64 %r589; .reg .u64 %r590; .reg .u32 %r592; .reg .u64 %r595; .reg .u64 %r596; .reg .u64 %r597; .reg .pred %r598; .reg .pred %r599; .reg .u64 %r600; .reg .pred %r601; .reg .u32 %r602; .reg .pred %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .u64 %r606; .reg .u64 %r607; .reg .u32 %r608; .reg .u64 %r611; .reg .u64 %r612; .reg .u64 %r613; .reg .pred %r614; .reg .pred %r615; .reg .u64 %r616; .reg .pred %r617; .reg .u32 %r618; .reg .pred %r619; .reg .u64 %r620; .reg .u64 %r621; .reg .u64 %r622; .reg .u64 %r623; .reg .u64 %r624; .reg .u32 %r625; .reg .u64 %r628; .reg .u64 %r629; .reg .u64 %r630; .reg .pred %r631; .reg .pred %r632; .reg .u64 %r633; .reg .pred %r634; .reg .u32 %r635; .reg .pred %r636; .reg .u64 %r637; .reg .u32 %r638; .reg .u64 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u32 %r644; .reg .u64 %r647; .reg .u64 %r648; .reg .u64 %r649; .reg .u32 %r650; .reg .u64 %r653; .reg .u64 %r654; .reg .u64 %r655; .reg .u32 %r656; .reg .u64 %r659; .reg .u64 %r660; .reg .u32 %r661; .reg .pred %r662; .reg .u64 %r667; .reg .u64 %r668; .reg .u64 %r669; .reg .u64 %r670; .reg .pred %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .pred %r677; .reg .u32 %r679; .reg .pred %r680; .reg .u32 %r682; .reg .u32 %r683; .reg .pred %r684; .reg .u32 %r685; .reg .u32 %r686; .reg .u32 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .u32 %r690; .reg .u16 %r691; .reg .u16 %r692; .reg .u16 %r693; .reg .u32 %r694; .reg .u16 %r695; .reg .pred %r696; .reg .pred %r697; .reg .u64 %r701; .reg .u64 %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r706; .reg .u64 %r707; .reg .pred %r708; .reg .pred %r709; .reg .u64 %r713; .reg .u64 %r714; .reg .u64 %r715; .reg .u32 %r716; .reg .pred %r718; .reg .u64 %r719; .reg .pred %r720; .reg .pred %r721; .reg .u32 %r723; .reg .u32 %r724; .reg .u64 %r727; .reg .u64 %r728; .reg .u64 %r729; .reg .u64 %r730; .reg .u32 %r731; .reg .u32 %r732; .reg .u32 %r733; .reg .u32 %r734; .reg .pred %r736; .reg .u64 %r737; .reg .pred %r738; .reg .u32 %r739; .reg .pred %r740; .reg .pred %r741; .reg .u32 %r742; .reg .u64 %r744; .reg .u64 %r745; .reg .u32 %r748; .reg .pred %r750; .reg .u64 %r753; .reg .u64 %r754; .reg .u64 %r756; .reg .u64 %r757; .reg .u64 %r763; .reg .u64 %r764; .reg .u64 %r765; .reg .u64 %r766; .reg .pred %r767; .reg .u64 %r768; .reg .u32 %r772; .reg .u32 %r773; .reg .u32 %r774; .reg .pred %r775; .reg .u32 %r777; .reg .u32 %r778; .reg .pred %r779; .reg .u32 %r780; .reg .pred %r781; .reg .pred %r782; .reg .u32 %r783; .reg .pred %r784; .reg .u64 %r787; .reg .u64 %r788; .reg .u64 %r789; .reg .u64 %r790; .reg .u32 %r791; .reg .u32 %r793; .reg .u32 %r794; .reg .u32 %r798; .reg .u32 %r799; .reg .pred %r801; .reg .u64 %r802; .reg .pred %r803; .reg .u32 %r804; .reg .u32 %r810; .reg .u32 %r811; .reg .u32 %r812; .reg .pred %r813; .reg .u32 %r815; .reg .u32 %r817; .reg .u32 %r818; .reg .pred %r819; .reg .u32 %r821; .reg .u32 %r822; .reg .pred %r823; .reg .u32 %r824; .reg .pred %r825; .reg .u32 %r826; .reg .u32 %r827; .reg .u32 %r828; .reg .u16 %r829; .reg .u16 %r830; .reg .u16 %r831; .reg .u32 %r832; .reg .u16 %r833; .reg .pred %r834; .reg .pred %r835; .reg .pred %r836; .reg .pred %r838; .reg .u32 %r839; .reg .pred %r840; .reg .u32 %r841; .reg .u32 %r842; .reg .u32 %r843; .reg .u32 %r844; .reg .u32 %r845; .reg .u32 %r846; .reg .u16 %r847; .reg .u16 %r848; .reg .u16 %r849; .reg .u32 %r850; .reg .u16 %r851; .reg .pred %r852; .reg .u32 %r853; .reg .pred %r854; .reg .u32 %r855; .reg .pred %r856; .reg .u32 %r857; .reg .u64 %r859; .reg .u64 %r860; .reg .u64 %r865; .reg .u64 %r866; .reg .u64 %r867; .reg .u32 %r868; .reg .pred %r870; .reg .u64 %r871; .reg .pred %r872; .reg .u64 %r876; .reg .u64 %r877; .reg .u64 %r878; .reg .u32 %r879; .reg .pred %r881; .reg .u64 %r882; .reg .pred %r883; .reg .u64 %r888; .reg .u64 %r889; .reg .u64 %r890; .reg .u32 %r891; .reg .pred %r893; .reg .u64 %r894; .reg .pred %r895; .reg .u64 %r898; .reg .u64 %r899; .reg .u64 %r900; .reg .u64 %r901; .reg .u32 %r902; .reg .u32 %r903; .reg .u32 %r904; .reg .pred %r906; .reg .u64 %r907; .reg .pred %r908; .reg .u64 %r911; .reg .u64 %r912; .reg .u64 %r913; .reg .u64 %r914; .reg .u32 %r915; .reg .u32 %r916; .reg .u32 %r917; .reg .pred %r919; .reg .u64 %r920; .reg .pred %r921; .reg .u64 %r924; .reg .u64 %r925; .reg .u64 %r926; .reg .u64 %r927; .reg .u32 %r928; .reg .u32 %r929; .reg .pred %r931; .reg .u64 %r932; .reg .pred %r933; .reg .pred %r935; .reg .u64 %r936; .reg .u64 %r937; .reg .u32 %r938; .reg .u64 %r939; .reg .u32 %r941; .reg .u32 %r942; .reg .u32 %r943; .reg .u64 %r944; .reg .u64 %r945; .reg .u64 %r946; .reg .u64 %r947; .reg .u32 %r949; .reg .u64 %r952; .reg .u64 %r953; .reg .u64 %r954; .reg .pred %r955; .reg .pred %r956; .reg .u64 %r958; .reg .u64 %r959; .reg .pred %r960; .reg .u64 %r961; .reg .u64 %r962; .reg .u32 %r963; .reg .pred %r964; .reg .u32 %r966; .reg .u64 %r967; .reg .u64 %r968; .reg .pred %r969; .reg .u64 %r972; .reg .u64 %r973; .reg .u64 %r974; .reg .u64 %r975; .reg .u32 %r976; .reg .u32 %r977; .reg .u32 %r978; .reg .pred %r980; .reg .u64 %r981; .reg .pred %r982; .reg .u32 %r983; .reg .pred %r984; .reg .pred %r985; .reg .u64 %r986; .reg .u32 %r988; .reg .u32 %r989; .reg .u32 %r990; .reg .u64 %r991; .reg .u64 %r993; .reg .u64 %r994; .reg .u64 %r995; .reg .u64 %r996; .reg .u64 %r998; .reg .u64 %r1001; .reg .u64 %r1002; .reg .u64 %r1003; .reg .u64 %r1004; .reg .u64 %r1005; .reg .u64 %r1006; .reg .u64 %r1010; .reg .u64 %r1011; .reg .u64 %r1012; .reg .u64 %r1013; .reg .u32 %r1014; .reg .u32 %r1016; .reg .u64 %r1017; .reg .u64 %r1018; .reg .u32 %r1019; .reg .u32 %r1021; .reg .u64 %r1022; .reg .u64 %r1023; .reg .u32 %r1024; .reg .u32 %r1025; .reg .u64 %r1026; .reg .u64 %r1027; .reg .u64 %r1028; .reg .u64 %r1029; .reg .u64 %r1031; .reg .u64 %r1032; .reg .u64 %r1033; .reg .u64 %r1034; .reg .u64 %r1035; .reg .u64 %r1037; .reg .u64 %r1038; .reg .u64 %r1039; .reg .u64 %r1040; .reg .u64 %r1041; .reg .u64 %r1043; .reg .u64 %r1044; .reg .u64 %r1045; .reg .u64 %r1046; .reg .u64 %r1047; .reg .u64 %r1048; .reg .u32 %r1049; .reg .pred %r1051; .reg .u64 %r1052; .reg .pred %r1053; .reg .u64 %r1056; .reg .u64 %r1057; .reg .u64 %r1058; .reg .u64 %r1059; .reg .u32 %r1060; .reg .u32 %r1061; .reg .pred %r1063; .reg .u64 %r1064; .reg .pred %r1065; .reg .pred %r1067; .reg .u64 %r1068; .reg .u64 %r1069; .reg .u32 %r1070; .reg .u64 %r1073; .reg .u64 %r1074; .reg .u64 %r1075; .reg .u64 %r1076; .reg .u32 %r1077; .reg .u32 %r1078; .reg .u32 %r1079; .reg .u32 %r1080; .reg .pred %r1082; .reg .u64 %r1083; .reg .pred %r1084; .reg .pred %r1086; .reg .u64 %r1087; .reg .pred %r1088; .reg .u32 %r1089; .reg .u32 %r1090; .reg .u64 %r1093; .reg .u64 %r1094; .reg .u64 %r1095; .reg .u64 %r1096; .reg .u32 %r1097; .reg .u32 %r1098; .reg .u32 %r1099; .reg .u32 %r1100; .reg .u32 %r1102; .reg .u32 %r1103; .reg .pred %r1105; .reg .u64 %r1106; .reg .pred %r1107; .reg .u32 %r1111; .reg .pred %r1112; .reg .pred %r1113; .reg .pred %r1114; .reg .u32 %r1115; .reg .u32 %r1116; .reg .pred %r1117; .reg .u32 %r1118; .reg .pred %r1119; .reg .u32 %r1121; .reg .pred %r1127; .reg .u32 %r1129; .reg .u32 %r1136; .reg .u32 %r1138; .reg .pred %r1139; .reg .u64 %r1142; .reg .u64 %r1143; .reg .u64 %r1144; .reg .u64 %r1145; .reg .u32 %r1146; .reg .pred %r1148; .reg .u64 %r1149; .reg .pred %r1150; .reg .pred %r1152; .reg .u64 %r1153; .reg .u64 %r1154; .reg .u32 %r1155; .reg .u32 %r1156; .reg .pred %r1157; .reg .u64 %r1160; .reg .u64 %r1161; .reg .u64 %r1162; .reg .u64 %r1163; .reg .u32 %r1164; .reg .u32 %r1165; .reg .u32 %r1166; .reg .u32 %r1168; .reg .u32 %r1169; .reg .pred %r1171; .reg .u64 %r1172; .reg .pred %r1173; .reg .pred %r1174; .reg .u32 %r1176; .reg .u32 %r1177; .reg .u64 %r1180; .reg .u64 %r1181; .reg .u64 %r1182; .reg .u64 %r1183; .reg .u32 %r1184; .reg .pred %r1186; .reg .u64 %r1187; .reg .pred %r1188; .reg .pred %r1189; .reg .u32 %r1190; .reg .u32 %r1191; .reg .pred %r1192; .reg .u32 %r1193; .reg .u32 %r1194; .reg .u32 %r1195; .reg .u32 %r1196; .reg .u32 %r1197; .reg .u32 %r1198; .reg .u16 %r1199; .reg .u16 %r1200; .reg .u16 %r1201; .reg .u32 %r1202; .reg .u16 %r1203; .reg .pred %r1204; .reg .u32 %r1205; .reg .pred %r1206; .reg .u32 %r1207; .reg .pred %r1208; .reg .u32 %r1209; .reg .u64 %r1211; .reg .u64 %r1212; .reg .u64 %r1217; .reg .u64 %r1218; .reg .u64 %r1219; .reg .u32 %r1220; .reg .pred %r1222; .reg .u64 %r1223; .reg .pred %r1224; .reg .u32 %r1225; .reg .pred %r1226; .reg .pred %r1227; .reg .u64 %r1228; .reg .u32 %r1230; .reg .u32 %r1231; .reg .u32 %r1232; .reg .u64 %r1233; .reg .u64 %r1235; .reg .u64 %r1236; .reg .u64 %r1237; .reg .u64 %r1238; .reg .u64 %r1240; .reg .u64 %r1243; .reg .u64 %r1244; .reg .u64 %r1247; .reg .u64 %r1248; .reg .u64 %r1249; .reg .u64 %r1250; .reg .u64 %r1252; .reg .u64 %r1254; .reg .u32 %r1255; .reg .pred %r1257; .reg .u64 %r1258; .reg .pred %r1259; .reg .u32 %r1260; .reg .pred %r1261; .reg .pred %r1262; .reg .u64 %r1263; .reg .u32 %r1265; .reg .u32 %r1266; .reg .u32 %r1267; .reg .u64 %r1268; .reg .u64 %r1269; .reg .u64 %r1270; .reg .u64 %r1272; .reg .pred %r1273; .reg .pred %r1274; .reg .u64 %r1275; .reg .u64 %r1276; .reg .pred %r1277; .reg .pred %r1278; .reg .u64 %r1279; .reg .pred %r1281; .reg .u64 %r1282; .reg .u64 %r1283; .reg .u32 %r1284; .reg .u32 %r1285; .reg .pred %r1286; .reg .pred %r1287; .reg .u64 %r1288; .reg .u64 %r1289; .reg .u32 %r1290; .reg .u32 %r1292; .reg .pred %r1293; .reg .u32 %r1294; .reg .u32 %r1295; .reg .u32 %r1296; .reg .u32 %r1297; .reg .u32 %r1298; .reg .u32 %r1299; .reg .u32 %r1300; .reg .u16 %r1301; .reg .u16 %r1302; .reg .u16 %r1303; .reg .u32 %r1304; .reg .u16 %r1305; .reg .pred %r1306; .reg .u32 %r1307; .reg .u32 %r1308; .reg .u32 %r1309; .reg .u32 %r1310; .reg .u32 %r1311; .reg .u32 %r1312; .reg .u16 %r1313; .reg .u16 %r1314; .reg .u16 %r1315; .reg .u32 %r1316; .reg .u16 %r1317; .reg .pred %r1318; .reg .u32 %r1319; .reg .u32 %r1320; .reg .u32 %r1321; .reg .u32 %r1322; .reg .u32 %r1323; .reg .u32 %r1324; .reg .u16 %r1325; .reg .u16 %r1326; .reg .u16 %r1327; .reg .u32 %r1328; .reg .u16 %r1329; .reg .pred %r1330; .reg .pred %r1332; .reg .u32 %r1333; .reg .pred %r1337; .reg .u64 %r1340; .reg .u64 %r1341; .reg .u64 %r1342; .reg .u64 %r1343; .reg .u16 %r1345; mov.u64 %r465,%ar0; mov.u64 %r466,%ar1; mov.u64 %r467,%ar2; mov.u64 %r468,%ar3; .loc 1 688 7 mov.u32 %r218,0; .loc 1 678 10 mov.u64 %r464,0; .loc 1 1397 25 add.u64 %r1340,%r466,-1; .loc 1 1323 3 add.u64 %r1341,%frame,1028; add.u64 %r1342,%frame,1024; .loc 1 932 9 add.u64 %r1343,%frame,1032; bra $L12; $L15: .loc 1 695 7 setp.gt.u64 %r477,%r1340,%r464; @ %r477 bra $L13; $L75: .loc 1 698 13 mov.u64 %r464,0; bra $L11; $L13: .loc 1 696 26 add.u64 %r467,%r467,4; .loc 1 696 17 shl.b64 %r478,%r464,2; add.u64 %r479,%r465,%r478; st.u32 [%r479],%r26; .loc 1 696 13 add.u64 %r464,%r464,1; $L12: .loc 1 693 14 ld.u32 %r26,[%r467]; .loc 1 693 22 set.u32.ne.u32 %r481,%r26,0; neg.s32 %r482,%r481; mov.u32 %r480,%r482; set.u32.ne.u32 %r484,%r26,37; neg.s32 %r485,%r484; mov.u32 %r483,%r485; cvt.u16.u8 %r1345,%r480; mov.u16 %r487,%r1345; cvt.u16.u8 %r1345,%r483; mov.u16 %r488,%r1345; and.b16 %r486,%r487,%r488; cvt.u32.u16 %r489,%r486; cvt.u16.u8 %r490,%r489; setp.ne.u16 %r491,%r490,0; @ %r491 bra $L15; .loc 1 700 10 setp.eq.u32 %r492,%r26,0; @ %r492 bra $L16; .loc 1 708 11 ld.u32 %r404,[%r467+4]; .loc 1 708 30 set.u32.eq.u32 %r494,%r404,48; neg.s32 %r495,%r494; mov.u32 %r493,%r495; set.u32.eq.u32 %r497,%r404,43; neg.s32 %r498,%r497; mov.u32 %r496,%r498; cvt.u16.u8 %r1345,%r493; mov.u16 %r500,%r1345; cvt.u16.u8 %r1345,%r496; mov.u16 %r501,%r1345; or.b16 %r499,%r500,%r501; cvt.u32.u16 %r502,%r499; .loc 1 708 10 cvt.u16.u8 %r503,%r502; setp.ne.u16 %r504,%r503,0; @ %r504 bra $L17; .loc 1 702 13 add.u64 %r33,%r467,4; .loc 1 703 11 mov.u32 %r79,0; bra $L18; $L17: .loc 1 709 15 add.u64 %r33,%r467,8; .loc 1 708 11 mov.u32 %r79,%r404; .loc 1 712 11 ld.u32 %r404,[%r467+8]; $L18: .loc 1 712 30 add.u32 %r505,%r404,-49; .loc 1 712 10 setp.gt.u32 %r506,%r505,8; @ %r506 bra $L158; .loc 1 715 12 mov.u32 %r509,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1342; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r509; call (%value_in),wcstoul,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r511,[%value_in]; } mov.u64 %r36,%r511; .loc 1 716 11 ld.u64 %r33,[%frame+1024]; .loc 1 720 11 ld.u32 %r404,[%r33]; bra $L19; $L158: .loc 1 704 13 mov.u64 %r36,0; $L19: .loc 1 720 10 setp.ne.u32 %r512,%r404,69; @ %r512 bra $L20; .loc 1 747 15 ld.u32 %r404,[%r33+4]; .loc 1 722 17 add.u64 %r33,%r33,4; bra $L21; $L20: .loc 1 733 15 setp.ne.u32 %r513,%r404,79; @ %r513 bra $L21; .loc 1 747 15 ld.u32 %r404,[%r33+4]; .loc 1 735 17 add.u64 %r33,%r33,4; $L21: .loc 1 747 7 setp.eq.u32 %r514,%r404,90; @ %r514 bra $L22; setp.gt.s32 %r515,%r404,90; @ %r515 bra $L23; setp.eq.u32 %r516,%r404,77; @ %r516 bra $L24; setp.gt.s32 %r517,%r404,77; @ %r517 bra $L25; setp.eq.u32 %r518,%r404,68; @ %r518 bra $L26; setp.gt.s32 %r519,%r404,68; @ %r519 bra $L27; setp.eq.u32 %r520,%r404,66; @ %r520 bra $L28; setp.gt.s32 %r521,%r404,66; @ %r521 bra $L29; setp.eq.u32 %r522,%r404,37; @ %r522 bra $L30; setp.eq.u32 %r523,%r404,65; @ %r523 bra $L31; mov.u64 %r464,0; bra $L11; $L29: setp.eq.u32 %r524,%r404,67; @ %r524 bra $L32; mov.u64 %r464,0; bra $L11; $L27: setp.eq.u32 %r525,%r404,71; @ %r525 bra $L33; setp.gt.s32 %r526,%r404,71; @ %r526 bra $L34; setp.eq.u32 %r527,%r404,70; @ %r527 bra $L35; mov.u64 %r464,0; bra $L11; $L34: setp.eq.u32 %r528,%r404,72; @ %r528 bra $L36; setp.eq.u32 %r1337,%r404,73; @ %r1337 bra $L37; mov.u64 %r464,0; bra $L11; $L25: setp.eq.u32 %r530,%r404,85; @ %r530 bra $L38; setp.gt.s32 %r531,%r404,85; @ %r531 bra $L39; setp.eq.u32 %r532,%r404,83; @ %r532 bra $L40; setp.gt.s32 %r533,%r404,83; @ %r533 bra $L41; setp.eq.u32 %r534,%r404,80; @ %r534 bra $L42; setp.eq.u32 %r535,%r404,82; @ %r535 bra $L43; mov.u64 %r464,0; bra $L11; $L41: setp.eq.u32 %r536,%r404,84; @ %r536 bra $L44; mov.u64 %r464,0; bra $L11; $L39: setp.eq.u32 %r537,%r404,88; @ %r537 bra $L45; setp.eq.u32 %r538,%r404,89; @ %r538 bra $L46; setp.eq.u32 %r539,%r404,86; @ %r539 bra $L47; setp.eq.u32 %r540,%r404,87; @ %r540 bra $L48; mov.u64 %r464,0; bra $L11; $L23: setp.eq.u32 %r541,%r404,110; @ %r541 bra $L49; setp.gt.s32 %r542,%r404,110; @ %r542 bra $L50; setp.eq.u32 %r543,%r404,103; @ %r543 bra $L51; setp.gt.s32 %r544,%r404,103; @ %r544 bra $L52; setp.eq.u32 %r545,%r404,99; @ %r545 bra $L53; setp.gt.s32 %r546,%r404,99; @ %r546 bra $L54; setp.eq.u32 %r547,%r404,97; @ %r547 bra $L55; setp.eq.u32 %r548,%r404,98; @ %r548 bra $L56; mov.u64 %r464,0; bra $L11; $L54: add.u32 %r549,%r404,-100; setp.gt.u32 %r550,%r549,1; @ ! %r550 bra $L208; bra $L159; $L52: setp.eq.u32 %r551,%r404,107; @ %r551 bra $L58; setp.gt.s32 %r552,%r404,107; @ %r552 bra $L59; setp.eq.u32 %r553,%r404,104; @ %r553 bra $L56; setp.eq.u32 %r554,%r404,106; @ %r554 bra $L60; mov.u64 %r464,0; bra $L11; $L59: setp.eq.u32 %r555,%r404,108; @ %r555 bra $L61; setp.eq.u32 %r556,%r404,109; @ %r556 bra $L62; mov.u64 %r464,0; bra $L11; $L50: setp.eq.u32 %r557,%r404,117; @ %r557 bra $L63; setp.gt.s32 %r558,%r404,117; @ %r558 bra $L64; setp.eq.u32 %r559,%r404,115; @ %r559 bra $L65; setp.gt.s32 %r560,%r404,115; @ %r560 bra $L66; setp.eq.u32 %r561,%r404,112; @ %r561 bra $L42; setp.eq.u32 %r562,%r404,114; @ %r562 bra $L67; mov.u64 %r464,0; bra $L11; $L66: setp.eq.u32 %r563,%r404,116; @ %r563 bra $L68; mov.u64 %r464,0; bra $L11; $L64: setp.eq.u32 %r564,%r404,121; @ %r564 bra $L69; setp.gt.s32 %r565,%r404,121; @ %r565 bra $L70; setp.eq.u32 %r566,%r404,119; @ %r566 bra $L71; setp.eq.u32 %r567,%r404,120; @ %r567 bra $L72; mov.u64 %r464,0; bra $L11; $L70: setp.eq.u32 %r568,%r404,122; @ %r568 bra $L73; mov.u64 %r464,0; bra $L11; $L55: .loc 1 750 4 cvta.const.u64 %r569,_C_time_locale; ld.s32 %r570,[%r468+24]; add.u64 %r571,%r570,24; shl.b64 %r572,%r571,3; add.u64 %r573,%r569,%r572; ld.u64 %r40,[%r573]; .loc 1 324 28 mov.u32 %r574,0; st.u32 [%frame+1020],%r574; .loc 1 325 18 mov.u64 %r577,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r577; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r578,[%value_in]; } .loc 1 751 18 add.u64 %r579,%r578,-1; setp.gt.u64 %r580,%r579,-3; @ %r580 bra $L74; .loc 1 753 11 setp.ge.u64 %r581,%r464,%r1340; @ %r581 bra $L75; mov.u64 %r424,%frame; shl.b64 %r582,%r464,2; add.u64 %r423,%r465,%r582; add.u64 %r418,%r464,%r578; bra $L76; $L77: add.u64 %r424,%r424,4; add.u64 %r423,%r423,4; setp.ge.u64 %r583,%r464,%r1340; @ %r583 bra $L75; $L76: .loc 1 754 10 add.u64 %r464,%r464,1; .loc 1 754 14 ld.u32 %r584,[%r424]; st.u32 [%r423],%r584; .loc 1 751 18 setp.ne.u64 %r585,%r464,%r418; @ %r585 bra $L77; bra $L74; $L31: .loc 1 760 4 cvta.const.u64 %r586,_C_time_locale; ld.s32 %r587,[%r468+24]; add.u64 %r588,%r587,30; shl.b64 %r589,%r588,3; add.u64 %r590,%r586,%r589; ld.u64 %r47,[%r590+8]; .loc 1 324 28 mov.u32 %r592,0; st.u32 [%frame+1020],%r592; .loc 1 325 18 mov.u64 %r595,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r47; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r595; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r596,[%value_in]; } .loc 1 761 18 add.u64 %r597,%r596,-1; setp.gt.u64 %r598,%r597,-3; @ %r598 bra $L74; .loc 1 763 11 setp.ge.u64 %r599,%r464,%r1340; @ %r599 bra $L75; mov.u64 %r454,%frame; shl.b64 %r600,%r464,2; add.u64 %r451,%r465,%r600; add.u64 %r446,%r464,%r596; bra $L78; $L79: add.u64 %r454,%r454,4; add.u64 %r451,%r451,4; setp.ge.u64 %r601,%r464,%r1340; @ %r601 bra $L75; $L78: .loc 1 764 10 add.u64 %r464,%r464,1; .loc 1 764 14 ld.u32 %r602,[%r454]; st.u32 [%r451],%r602; .loc 1 761 18 setp.ne.u64 %r603,%r464,%r446; @ %r603 bra $L79; bra $L74; $L56: .loc 1 771 4 cvta.const.u64 %r604,_C_time_locale; ld.s32 %r605,[%r468+16]; shl.b64 %r606,%r605,3; add.u64 %r607,%r604,%r606; ld.u64 %r53,[%r607]; .loc 1 324 28 mov.u32 %r608,0; st.u32 [%frame+1020],%r608; .loc 1 325 18 mov.u64 %r611,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r53; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r611; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r612,[%value_in]; } .loc 1 772 18 add.u64 %r613,%r612,-1; setp.gt.u64 %r614,%r613,-3; @ %r614 bra $L74; .loc 1 774 11 setp.ge.u64 %r615,%r464,%r1340; @ %r615 bra $L75; mov.u64 %r417,%frame; shl.b64 %r616,%r464,2; add.u64 %r412,%r465,%r616; add.u64 %r407,%r464,%r612; bra $L80; $L81: add.u64 %r417,%r417,4; add.u64 %r412,%r412,4; setp.ge.u64 %r617,%r464,%r1340; @ %r617 bra $L75; $L80: .loc 1 775 10 add.u64 %r464,%r464,1; .loc 1 775 14 ld.u32 %r618,[%r417]; st.u32 [%r412],%r618; .loc 1 772 18 setp.ne.u64 %r619,%r464,%r407; @ %r619 bra $L81; bra $L74; $L28: .loc 1 781 4 cvta.const.u64 %r620,_C_time_locale; ld.s32 %r621,[%r468+16]; add.u64 %r622,%r621,12; shl.b64 %r623,%r622,3; add.u64 %r624,%r620,%r623; ld.u64 %r58,[%r624]; .loc 1 324 28 mov.u32 %r625,0; st.u32 [%frame+1020],%r625; .loc 1 325 18 mov.u64 %r628,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r58; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r628; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r629,[%value_in]; } .loc 1 782 18 add.u64 %r630,%r629,-1; setp.gt.u64 %r631,%r630,-3; @ %r631 bra $L74; .loc 1 784 11 setp.ge.u64 %r632,%r464,%r1340; @ %r632 bra $L75; mov.u64 %r442,%frame; shl.b64 %r633,%r464,2; add.u64 %r441,%r465,%r633; add.u64 %r436,%r464,%r629; bra $L82; $L83: add.u64 %r442,%r442,4; add.u64 %r441,%r441,4; setp.ge.u64 %r634,%r464,%r1340; @ %r634 bra $L75; $L82: .loc 1 785 10 add.u64 %r464,%r464,1; .loc 1 785 14 ld.u32 %r635,[%r442]; st.u32 [%r441],%r635; .loc 1 782 18 setp.ne.u64 %r636,%r464,%r436; @ %r636 bra $L83; bra $L74; $L53: .loc 1 796 6 cvta.const.u64 %r637,_C_time_locale; ld.u64 %r62,[%r637+320]; .loc 1 324 28 mov.u32 %r638,0; st.u32 [%frame+1020],%r638; .loc 1 325 18 mov.u64 %r641,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r62; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r641; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r642,[%value_in]; } .loc 1 797 4 bra $L84; $L67: .loc 1 799 4 cvta.const.u64 %r643,_C_time_locale; ld.u64 %r63,[%r643+456]; .loc 1 324 28 mov.u32 %r644,0; st.u32 [%frame+1020],%r644; .loc 1 325 18 mov.u64 %r647,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r647; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r648,[%value_in]; } .loc 1 800 4 bra $L84; $L72: .loc 1 807 6 cvta.const.u64 %r649,_C_time_locale; ld.u64 %r64,[%r649+312]; .loc 1 324 28 mov.u32 %r650,0; st.u32 [%frame+1020],%r650; .loc 1 325 18 mov.u64 %r653,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r653; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r654,[%value_in]; } .loc 1 808 4 bra $L84; $L45: .loc 1 815 6 cvta.const.u64 %r655,_C_time_locale; ld.u64 %r65,[%r655+304]; .loc 1 324 28 mov.u32 %r656,0; st.u32 [%frame+1020],%r656; .loc 1 325 18 mov.u64 %r659,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r65; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r659; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r660,[%value_in]; } $L84: .loc 1 817 7 ld.u32 %r661,[%frame]; setp.eq.u32 %r662,%r661,0; @ %r662 bra $L74; .loc 1 820 14 sub.u64 %r667,%r466,%r464; shl.b64 %r668,%r464,2; add.u64 %r669,%r465,%r668; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r669; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r667; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r468; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r670,[%value_in]; } .loc 1 820 12 cvt.u32.u64 %r71,%r670; .loc 1 822 11 setp.le.s32 %r671,%r71,0; @ %r671 bra $L75; .loc 1 823 9 cvt.s64.s32 %r672,%r71; add.u64 %r464,%r464,%r672; bra $L74; $L32: .loc 1 859 18 ld.u32 %r73,[%r468+20]; .loc 1 871 9 max.u64 %r673,%r36,2; .loc 1 859 28 set.u32.lt.s32 %r675,%r73,-1900; cvt.s64.s32 %r674,%r675; .loc 1 871 9 add.u64 %r413,%r673,%r674; .loc 1 862 5 setp.lt.s32 %r677,%r73,0; @ %r677 bra $L85; .loc 1 861 22 div.s32 %r679,%r73,100; .loc 1 862 5 add.u32 %r76,%r679,19; .loc 1 863 6 setp.ne.u32 %r680,%r79,0; @ %r680 bra $L86; .loc 1 857 9 cvta.const.u64 %r86,$LC1; .loc 1 858 9 cvta.const.u64 %r87,$LC0; bra $L87; $L85: .loc 1 862 7 add.u32 %r682,%r73,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r682; call (%value_in),abs,(%out_arg1); ld.param.u32 %r683,[%value_in]; } .loc 1 862 5 div.s32 %r76,%r683,100; .loc 1 863 6 setp.eq.u32 %r684,%r79,0; @ %r684 bra $L160; .loc 1 866 19 set.u32.gt.s32 %r686,%r683,9999; neg.s32 %r687,%r686; mov.u32 %r685,%r687; .loc 1 866 33 set.u32.eq.u32 %r689,%r79,43; neg.s32 %r690,%r689; mov.u32 %r688,%r690; .loc 1 866 26 cvt.u16.u8 %r1345,%r685; mov.u16 %r692,%r1345; cvt.u16.u8 %r1345,%r688; mov.u16 %r693,%r1345; and.b16 %r691,%r692,%r693; cvt.u32.u16 %r694,%r691; .loc 1 866 10 cvt.u16.u8 %r695,%r694; setp.ne.u16 %r696,%r695,0; @ %r696 bra $L161; $L153: .loc 1 858 9 cvta.const.u64 %r87,$LC0; .loc 1 865 11 cvta.const.u64 %r86,$LC2; bra $L88; $L160: .loc 1 858 9 cvta.const.u64 %r87,$LC0; .loc 1 857 9 cvta.const.u64 %r86,$LC1; bra $L88; $L161: .loc 1 867 13 cvta.const.u64 %r87,$LC3; .loc 1 865 11 cvta.const.u64 %r86,$LC2; $L88: .loc 1 871 9 setp.ge.s32 %r697,%r73,-1900; @ %r697 bra $L87; cvta.const.u64 %r87,$LC4; bra $L87; $L176: .loc 1 865 11 cvta.const.u64 %r86,$LC2; .loc 1 867 13 cvta.const.u64 %r87,$LC3; $L87: .loc 1 871 9 sub.u64 %r701,%r466,%r464; .loc 1 871 21 shl.b64 %r702,%r464,2; .loc 1 871 9 add.u64 %r703,%r465,%r702; st.u32 [%stack+16],%r76; st.u64 [%stack+8],%r413; st.u64 [%stack],%r87; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r703; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r701; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r86; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r704,[%value_in]; } .loc 1 874 13 setp.lt.s32 %r706,%r704,0; @ %r706 bra $L75; cvt.s64.s32 %r707,%r704; add.u64 %r464,%r464,%r707; setp.le.u64 %r708,%r466,%r464; @ ! %r708 bra $L74; bra $L75; $L208: .loc 1 903 11 ld.u32 %r90,[%r468+12]; .loc 1 901 10 setp.eq.u32 %r709,%r404,100; @ %r709 bra $L162; cvta.const.u64 %r94,$LC6; bra $L89; $L162: cvta.const.u64 %r94,$LC5; $L89: sub.u64 %r713,%r466,%r464; .loc 1 901 22 shl.b64 %r714,%r464,2; .loc 1 901 10 add.u64 %r715,%r465,%r714; st.u32 [%stack],%r90; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r715; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r713; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r94; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r716,[%value_in]; } .loc 1 904 4 setp.lt.s32 %r718,%r716,0; @ %r718 bra $L75; cvt.s64.s32 %r719,%r716; add.u64 %r464,%r464,%r719; setp.le.u64 %r720,%r466,%r464; @ ! %r720 bra $L74; bra $L75; $L26: .loc 1 911 11 ld.u32 %r97,[%r468+20]; .loc 1 908 10 setp.lt.s32 %r721,%r97,0; @ %r721 bra $L90; rem.s32 %r98,%r97,100; bra $L91; $L90: .loc 1 912 8 add.u32 %r723,%r97,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r723; call (%value_in),abs,(%out_arg1); ld.param.u32 %r724,[%value_in]; } .loc 1 908 10 rem.s32 %r98,%r724,100; $L91: sub.u64 %r728,%r466,%r464; .loc 1 908 22 shl.b64 %r729,%r464,2; .loc 1 908 10 add.u64 %r730,%r465,%r729; st.u32 [%stack+8],%r98; ld.u32 %r731,[%r468+12]; st.u32 [%stack+4],%r731; ld.u32 %r733,[%r468+16]; add.u32 %r732,%r733,1; st.u32 [%stack],%r732; cvta.const.u64 %r727,$LC7; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r730; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r728; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r727; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r734,[%value_in]; } .loc 1 913 11 setp.lt.s32 %r736,%r734,0; @ %r736 bra $L75; cvt.s64.s32 %r737,%r734; add.u64 %r464,%r464,%r737; setp.le.u64 %r738,%r466,%r464; @ ! %r738 bra $L74; bra $L75; $L35: .loc 1 920 13 mov.u32 %r739,37; st.u32 [%frame+1024],%r739; .loc 1 921 9 setp.eq.u32 %r740,%r79,0; @ %r740 bra $L92; .loc 1 922 15 st.u32 [%frame+1028],%r79; max.u64 %r109,%r36,6; .loc 1 929 12 add.u64 %r111,%r109,-6; .loc 1 930 9 setp.ne.u64 %r741,%r109,6; @ %r741 bra $L93; $L95: .loc 1 929 12 mov.u64 %r114,%r1343; bra $L94; $L92: .loc 1 924 15 mov.u32 %r742,43; st.u32 [%frame+1028],%r742; .loc 1 929 12 mov.u64 %r111,4; $L93: .loc 1 932 9 st.u64 [%stack],%r111; cvta.const.u64 %r745,$LC8; mov.u64 %r744,30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1343; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r744; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r745; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r748,[%value_in]; } .loc 1 933 6 setp.le.s32 %r750,%r748,0; @ %r750 bra $L95; .loc 1 934 9 cvt.s64.s32 %r753,%r748; shl.b64 %r754,%r753,2; add.u64 %r114,%r1343,%r754; $L94: .loc 1 936 6 cvta.const.u64 %r756,$LC9; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r756; call (%value_in),wcscpy,(%out_arg1,%out_arg2); ld.param.u64 %r757,[%value_in]; } .loc 1 937 12 sub.u64 %r763,%r466,%r464; shl.b64 %r764,%r464,2; add.u64 %r765,%r465,%r764; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r765; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r763; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1342; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r468; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r766,[%value_in]; } .loc 1 937 10 cvt.u32.u64 %r119,%r766; .loc 1 939 9 setp.le.s32 %r767,%r119,0; @ %r767 bra $L96; .loc 1 940 14 cvt.s64.s32 %r768,%r119; add.u64 %r464,%r464,%r768; bra $L74; $L96: .loc 1 942 15 mov.u64 %r464,0; bra $L11; $L51: ld.u32 %r389,[%r468+20]; .loc 1 949 19 ld.u32 %r772,[%r468+28]; ld.u32 %r773,[%r468+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r389; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r773; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r772; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r774,[%value_in]; } mov.u32 %r121,%r774; .loc 1 951 3 setp.lt.s32 %r775,%r389,0; @ %r775 bra $L97; rem.s32 %r122,%r389,100; bra $L98; $L97: .loc 1 951 5 add.u32 %r777,%r389,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r777; call (%value_in),abs,(%out_arg1); ld.param.u32 %r778,[%value_in]; } .loc 1 951 3 rem.s32 %r122,%r778,100; $L98: .loc 1 952 9 setp.ge.s32 %r779,%r774,0; @ %r779 bra $L99; .loc 1 952 21 ld.u32 %r780,[%r468+20]; setp.lt.s32 %r781,%r780,-1899; .loc 1 953 10 selp.u32 %r121,1,%r774,%r781; bra $L100; $L99: .loc 1 954 14 setp.eq.u32 %r782,%r774,0; @ %r782 bra $L100; .loc 1 954 26 ld.u32 %r783,[%r468+20]; setp.ge.s32 %r784,%r783,-1900; .loc 1 955 10 selp.u32 %r121,%r774,-1,%r784; $L100: .loc 1 956 12 sub.u64 %r788,%r466,%r464; .loc 1 956 24 shl.b64 %r789,%r464,2; .loc 1 956 12 add.u64 %r790,%r465,%r789; .loc 1 957 15 add.u32 %r791,%r121,%r122; .loc 1 957 25 rem.s32 %r793,%r791,100; .loc 1 957 31 add.u32 %r794,%r793,100; .loc 1 956 12 rem.s32 %r798,%r794,100; st.u32 [%stack],%r798; cvta.const.u64 %r787,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r790; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r788; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r787; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r799,[%value_in]; } .loc 1 958 13 setp.lt.s32 %r801,%r799,0; @ %r801 bra $L75; cvt.s64.s32 %r802,%r799; add.u64 %r464,%r464,%r802; setp.le.u64 %r803,%r466,%r464; @ ! %r803 bra $L74; bra $L75; $L33: .loc 1 966 22 ld.u32 %r136,[%r468+20]; .loc 1 966 32 set.u32.lt.s32 %r804,%r136,-1900; neg.s32 %r137,%r804; .loc 1 966 10 mov.u32 %r138,%r137; .loc 1 967 19 ld.u32 %r810,[%r468+28]; ld.u32 %r811,[%r468+24]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r136; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r811; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r810; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r812,[%value_in]; } mov.u32 %r139,%r812; .loc 1 970 8 setp.lt.s32 %r813,%r136,0; @ %r813 bra $L101; .loc 1 969 25 div.s32 %r815,%r136,100; .loc 1 970 8 add.u32 %r141,%r815,19; bra $L102; $L101: .loc 1 970 10 add.u32 %r817,%r136,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r817; call (%value_in),abs,(%out_arg1); ld.param.u32 %r818,[%value_in]; } .loc 1 970 8 div.s32 %r141,%r818,100; .loc 1 971 22 ld.u32 %r136,[%r468+20]; .loc 1 972 8 setp.lt.s32 %r819,%r136,0; @ %r819 bra $L103; $L102: rem.s32 %r144,%r136,100; bra $L104; $L103: .loc 1 972 10 add.u32 %r821,%r136,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r821; call (%value_in),abs,(%out_arg1); ld.param.u32 %r822,[%value_in]; } .loc 1 972 8 rem.s32 %r144,%r822,100; $L104: .loc 1 973 9 setp.ge.s32 %r823,%r812,0; @ %r823 bra $L105; .loc 1 973 21 ld.u32 %r824,[%r468+20]; setp.lt.s32 %r825,%r824,-1899; @ %r825 bra $L164; bra $L209; $L105: .loc 1 975 22 set.u32.gt.s32 %r827,%r812,0; neg.s32 %r828,%r827; mov.u32 %r826,%r828; .loc 1 975 26 cvt.u16.u8 %r1345,%r826; mov.u16 %r830,%r1345; cvt.u16.u32 %r831,%r137; and.b16 %r829,%r830,%r831; cvt.u32.u16 %r832,%r829; .loc 1 975 14 cvt.u16.u8 %r833,%r832; setp.ne.u16 %r834,%r833,0; @ %r834 bra $L108; bra $L106; $L164: .loc 1 974 22 mov.u32 %r139,1; .loc 1 974 13 mov.u32 %r138,%r139; $L106: .loc 1 977 11 add.u32 %r151,%r139,%r144; .loc 1 978 9 setp.ne.u32 %r835,%r151,-1; @ %r835 bra $L109; $L152: .loc 1 981 3 add.u32 %r141,%r141,-1; .loc 1 980 8 mov.u32 %r151,99; bra $L110; $L109: .loc 1 983 14 setp.ne.u32 %r836,%r151,100; @ %r836 bra $L110; .loc 1 986 3 add.u32 %r141,%r141,1; .loc 1 985 8 mov.u32 %r151,0; $L110: .loc 1 990 38 mad.lo.u32 %r61,%r141,100,%r151; .loc 1 991 9 setp.eq.u32 %r838,%r138,0; @ %r838 bra $L111; $L156: .loc 1 992 15 mov.u32 %r839,45; st.u32 [%frame+1024],%r839; .loc 1 998 9 setp.eq.u64 %r840,%r36,0; @ %r840 bra $L165; $L113: .loc 1 999 8 add.u64 %r36,%r36,-1; mov.u64 %r443,%r1341; bra $L112; $L111: .loc 1 993 19 set.u32.eq.u32 %r842,%r79,43; neg.s32 %r843,%r842; mov.u32 %r841,%r843; .loc 1 993 40 set.u32.gt.u32 %r845,%r61,9999; neg.s32 %r846,%r845; mov.u32 %r844,%r846; .loc 1 993 30 cvt.u16.u8 %r1345,%r841; mov.u16 %r848,%r1345; cvt.u16.u8 %r1345,%r844; mov.u16 %r849,%r1345; and.b16 %r847,%r848,%r849; cvt.u32.u16 %r850,%r847; .loc 1 993 14 cvt.u16.u8 %r851,%r850; setp.eq.u16 %r852,%r851,0; @ %r852 bra $L166; .loc 1 995 10 mov.u32 %r853,43; st.u32 [%frame+1024],%r853; .loc 1 998 9 setp.ne.u64 %r854,%r36,0; @ %r854 bra $L113; bra $L210; $L165: mov.u64 %r443,%r1341; bra $L112; $L166: .loc 1 988 24 mov.u64 %r443,%r1342; $L112: .loc 1 1000 13 mov.u32 %r855,37; st.u32 [%r443],%r855; .loc 1 1001 9 setp.ne.u32 %r856,%r79,0; @ %r856 bra $L115; .loc 1 1000 10 add.u64 %r157,%r443,4; bra $L116; $L115: .loc 1 1002 12 add.u64 %r157,%r443,8; .loc 1 1002 15 mov.u32 %r857,48; st.u32 [%r443+4],%r857; $L116: .loc 1 1003 6 cvta.const.u64 %r859,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r157; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r859; call (%value_in),wcscpy,(%out_arg1,%out_arg2); ld.param.u64 %r860,[%value_in]; } .loc 1 1004 12 sub.u64 %r865,%r466,%r464; .loc 1 1004 24 shl.b64 %r866,%r464,2; .loc 1 1004 12 add.u64 %r867,%r465,%r866; st.u32 [%stack+8],%r61; st.u64 [%stack],%r36; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r867; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r865; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1342; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r868,[%value_in]; } .loc 1 1005 16 setp.lt.s32 %r870,%r868,0; @ %r870 bra $L117; .loc 1 1005 36 cvt.s64.s32 %r871,%r868; add.u64 %r464,%r464,%r871; .loc 1 1005 26 setp.gt.u64 %r872,%r466,%r464; @ %r872 bra $L74; $L117: .loc 1 1006 22 mov.u64 %r464,0; bra $L11; $L155: .loc 1 1022 10 sub.u64 %r876,%r466,%r464; .loc 1 1022 22 shl.b64 %r877,%r464,2; .loc 1 1022 10 add.u64 %r878,%r465,%r877; st.u32 [%stack],%r50; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r878; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r876; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r167; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r879,[%value_in]; } .loc 1 1025 11 setp.lt.s32 %r881,%r879,0; @ %r881 bra $L75; cvt.s64.s32 %r882,%r879; add.u64 %r464,%r464,%r882; setp.le.u64 %r883,%r466,%r464; @ ! %r883 bra $L74; bra $L75; $L154: .loc 1 1035 11 rem.s32 %r171,%r43,12; .loc 1 1041 14 @ %r1337 bra $L167; cvta.const.u64 %r175,$LC6; bra $L119; $L167: cvta.const.u64 %r175,$LC5; $L119: sub.u64 %r888,%r466,%r464; .loc 1 1041 26 shl.b64 %r889,%r464,2; .loc 1 1041 14 add.u64 %r890,%r465,%r889; st.u32 [%stack],%r171; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r890; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r888; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r175; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r891,[%value_in]; } .loc 1 1043 6 setp.lt.s32 %r893,%r891,0; @ %r893 bra $L75; cvt.s64.s32 %r894,%r891; add.u64 %r464,%r464,%r894; setp.le.u64 %r895,%r466,%r464; @ ! %r895 bra $L74; bra $L75; $L60: .loc 1 1047 10 sub.u64 %r899,%r466,%r464; .loc 1 1047 22 shl.b64 %r900,%r464,2; .loc 1 1047 10 add.u64 %r901,%r465,%r900; ld.u32 %r903,[%r468+28]; add.u32 %r902,%r903,1; st.u32 [%stack],%r902; cvta.const.u64 %r898,$LC11; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r901; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r899; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r898; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r904,[%value_in]; } .loc 1 1049 11 setp.lt.s32 %r906,%r904,0; @ %r906 bra $L75; cvt.s64.s32 %r907,%r904; add.u64 %r464,%r464,%r907; setp.le.u64 %r908,%r466,%r464; @ ! %r908 bra $L74; bra $L75; $L62: .loc 1 1057 12 sub.u64 %r912,%r466,%r464; .loc 1 1057 24 shl.b64 %r913,%r464,2; .loc 1 1057 12 add.u64 %r914,%r465,%r913; ld.u32 %r916,[%r468+16]; add.u32 %r915,%r916,1; st.u32 [%stack],%r915; cvta.const.u64 %r911,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r914; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r912; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r911; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r917,[%value_in]; } .loc 1 1059 11 setp.lt.s32 %r919,%r917,0; @ %r919 bra $L75; cvt.s64.s32 %r920,%r917; add.u64 %r464,%r464,%r920; setp.le.u64 %r921,%r466,%r464; @ ! %r921 bra $L74; bra $L75; $L24: .loc 1 1067 12 sub.u64 %r925,%r466,%r464; .loc 1 1067 24 shl.b64 %r926,%r464,2; .loc 1 1067 12 add.u64 %r927,%r465,%r926; ld.u32 %r928,[%r468+4]; st.u32 [%stack],%r928; cvta.const.u64 %r924,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r927; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r925; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r924; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r929,[%value_in]; } .loc 1 1069 11 setp.lt.s32 %r931,%r929,0; @ %r931 bra $L75; cvt.s64.s32 %r932,%r929; add.u64 %r464,%r464,%r932; setp.le.u64 %r933,%r466,%r464; @ ! %r933 bra $L74; bra $L75; $L49: .loc 1 1072 7 setp.ge.u64 %r935,%r464,%r1340; @ %r935 bra $L75; .loc 1 1073 17 shl.b64 %r936,%r464,2; add.u64 %r937,%r465,%r936; mov.u32 %r938,10; st.u32 [%r937],%r938; .loc 1 1073 13 add.u64 %r464,%r464,1; .loc 1 1076 4 bra $L74; $L42: .loc 1 1079 4 cvta.const.u64 %r939,_C_time_locale; ld.u32 %r941,[%r468+8]; set.u32.gt.s32 %r942,%r941,11; neg.s32 %r943,%r942; cvt.s64.s32 %r944,%r943; add.u64 %r945,%r944,40; shl.b64 %r946,%r945,3; add.u64 %r947,%r939,%r946; ld.u64 %r205,[%r947+8]; .loc 1 324 28 mov.u32 %r949,0; st.u32 [%frame+1020],%r949; .loc 1 325 18 mov.u64 %r952,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r205; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r952; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r953,[%value_in]; } .loc 1 1080 18 add.u64 %r954,%r953,-1; setp.gt.u64 %r955,%r954,-3; @ %r955 bra $L74; .loc 1 1082 11 setp.ge.u64 %r956,%r464,%r1340; @ %r956 bra $L75; add.u64 %r430,%r464,%r953; neg.s64 %r958,%r464; shl.b64 %r959,%r958,2; bra $L120; $L122: setp.ge.u64 %r960,%r464,%r1340; @ %r960 bra $L75; $L120: shl.b64 %r434,%r464,2; .loc 1 1083 38 add.u64 %r961,%r434,%r959; add.u64 %r962,%frame,%r961; ld.u32 %r209,[%r962]; .loc 1 1084 8 ld.u32 %r963,[%r33]; setp.ne.u32 %r964,%r963,80; @ %r964 bra $L121; .loc 1 1083 38 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r209; call (%value_in),towlower,(%out_arg1); ld.param.u32 %r966,[%value_in]; } .loc 1 1084 8 mov.u32 %r209,%r966; $L121: .loc 1 1083 10 add.u64 %r464,%r464,1; .loc 1 1083 14 add.u64 %r967,%r434,4; add.u64 %r968,%r465,%r967; st.u32 [%r968+-4],%r209; .loc 1 1080 18 setp.ne.u64 %r969,%r464,%r430; @ %r969 bra $L122; bra $L74; $L43: .loc 1 1090 17 sub.u64 %r973,%r466,%r464; .loc 1 1090 29 shl.b64 %r974,%r464,2; .loc 1 1090 17 add.u64 %r975,%r465,%r974; ld.u32 %r976,[%r468+4]; st.u32 [%stack+4],%r976; ld.u32 %r977,[%r468+8]; st.u32 [%stack],%r977; cvta.const.u64 %r972,$LC12; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r975; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r973; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r972; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r978,[%value_in]; } .loc 1 1092 11 setp.lt.s32 %r980,%r978,0; @ %r980 bra $L75; cvt.s64.s32 %r981,%r978; add.u64 %r464,%r464,%r981; setp.le.u64 %r982,%r466,%r464; @ ! %r982 bra $L74; bra $L75; $L65: .loc 1 1124 9 ld.u32 %r983,[%r468+32]; setp.lt.s32 %r984,%r983,0; @ %r984 bra $L168; .loc 1 1126 3 { call __tz_lock; } .loc 1 1127 6 setp.ne.u32 %r985,%r218,0; @ %r985 bra $L124; .loc 1 1129 7 { call _tzset_unlocked; } $L124: .loc 1 1144 23 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r986,[%value_in]; } .loc 1 1148 42 ld.u32 %r988,[%r468+32]; set.u32.gt.s32 %r989,%r988,0; neg.s32 %r990,%r989; .loc 1 1148 46 cvt.s64.s32 %r991,%r990; shl.b64 %r993,%r991,2; add.u64 %r994,%r993,%r991; shl.b64 %r995,%r994,3; add.u64 %r996,%r986,%r995; .loc 1 1148 10 ld.u64 %r998,[%r996+40]; neg.s64 %r224,%r998; .loc 1 1150 3 { call __tz_unlock; } mov.u32 %r218,1; bra $L123; $L168: .loc 1 1121 11 mov.u64 %r224,0; $L123: .loc 1 1153 28 ld.u32 %r225,[%r468+20]; .loc 1 1152 12 sub.u64 %r1002,%r466,%r464; .loc 1 1152 24 shl.b64 %r1003,%r464,2; .loc 1 1152 12 add.u64 %r1004,%r465,%r1003; .loc 1 1153 12 cvt.s64.s32 %r1005,%r225; .loc 1 1153 38 add.u64 %r1006,%r1005,-69; .loc 1 1153 43 shr.s64 %r1010,%r1006,63; and.b64 %r1011,%r1010,3; add.u64 %r1012,%r1011,%r1006; shr.s64 %r1013,%r1012,2; .loc 1 1154 23 add.u32 %r1014,%r225,-1; .loc 1 1154 27 div.s32 %r1016,%r1014,100; cvt.s64.s32 %r1017,%r1016; .loc 1 1154 5 sub.u64 %r1018,%r1013,%r1017; .loc 1 1155 23 add.u32 %r1019,%r225,299; .loc 1 1155 29 div.s32 %r1021,%r1019,400; cvt.s64.s32 %r1022,%r1021; .loc 1 1155 5 add.u64 %r1023,%r1018,%r1022; .loc 1 1156 23 add.u32 %r1024,%r225,-70; .loc 1 1156 28 mul.lo.u32 %r1025,%r1024,365; cvt.s64.s32 %r1026,%r1025; .loc 1 1156 5 add.u64 %r1027,%r1023,%r1026; .loc 1 1156 40 ld.s32 %r1028,[%r468+28]; .loc 1 1156 33 add.u64 %r1029,%r1027,%r1028; .loc 1 1156 50 add.u64 %r1031,%r1029,%r1029; add.u64 %r1032,%r1031,%r1029; shl.b64 %r1033,%r1032,3; .loc 1 1157 17 ld.s32 %r1034,[%r468+8]; .loc 1 1157 10 add.u64 %r1035,%r1033,%r1034; .loc 1 1157 27 shl.b64 %r1037,%r1035,4; sub.u64 %r1038,%r1037,%r1035; shl.b64 %r1039,%r1038,2; .loc 1 1157 38 ld.s32 %r1040,[%r468+4]; .loc 1 1157 31 add.u64 %r1041,%r1039,%r1040; .loc 1 1157 47 shl.b64 %r1043,%r1041,4; sub.u64 %r1044,%r1043,%r1041; shl.b64 %r1045,%r1044,2; .loc 1 1158 15 ld.s32 %r1046,[%r468]; .loc 1 1158 8 add.u64 %r1047,%r1045,%r1046; .loc 1 1152 12 sub.u64 %r1048,%r1047,%r224; st.u64 [%stack],%r1048; cvta.const.u64 %r1001,$LC13; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1004; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1002; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1001; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1049,[%value_in]; } .loc 1 1159 6 setp.lt.s32 %r1051,%r1049,0; @ %r1051 bra $L75; cvt.s64.s32 %r1052,%r1049; add.u64 %r464,%r464,%r1052; setp.le.u64 %r1053,%r466,%r464; @ ! %r1053 bra $L74; bra $L75; $L40: .loc 1 1168 12 sub.u64 %r1057,%r466,%r464; .loc 1 1168 24 shl.b64 %r1058,%r464,2; .loc 1 1168 12 add.u64 %r1059,%r465,%r1058; ld.u32 %r1060,[%r468]; st.u32 [%stack],%r1060; cvta.const.u64 %r1056,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1059; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1057; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1056; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1061,[%value_in]; } .loc 1 1170 11 setp.lt.s32 %r1063,%r1061,0; @ %r1063 bra $L75; cvt.s64.s32 %r1064,%r1061; add.u64 %r464,%r464,%r1064; setp.le.u64 %r1065,%r466,%r464; @ ! %r1065 bra $L74; bra $L75; $L68: .loc 1 1173 7 setp.ge.u64 %r1067,%r464,%r1340; @ %r1067 bra $L75; .loc 1 1174 17 shl.b64 %r1068,%r464,2; add.u64 %r1069,%r465,%r1068; mov.u32 %r1070,9; st.u32 [%r1069],%r1070; .loc 1 1174 13 add.u64 %r464,%r464,1; .loc 1 1177 4 bra $L74; $L44: .loc 1 1179 17 sub.u64 %r1074,%r466,%r464; .loc 1 1179 29 shl.b64 %r1075,%r464,2; .loc 1 1179 17 add.u64 %r1076,%r465,%r1075; ld.u32 %r1077,[%r468]; st.u32 [%stack+8],%r1077; ld.u32 %r1078,[%r468+4]; st.u32 [%stack+4],%r1078; ld.u32 %r1079,[%r468+8]; st.u32 [%stack],%r1079; cvta.const.u64 %r1073,$LC14; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1076; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1074; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1073; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1080,[%value_in]; } .loc 1 1181 11 setp.lt.s32 %r1082,%r1080,0; @ %r1082 bra $L75; cvt.s64.s32 %r1083,%r1080; add.u64 %r464,%r464,%r1083; setp.le.u64 %r1084,%r466,%r464; @ ! %r1084 bra $L74; bra $L75; $L63: .loc 1 1196 14 setp.ge.u64 %r1086,%r464,%r1340; @ %r1086 bra $L75; .loc 1 1198 24 ld.u32 %r281,[%r468+24]; .loc 1 696 13 add.u64 %r386,%r464,1; .loc 1 696 7 shl.b64 %r1087,%r464,2; add.u64 %r387,%r465,%r1087; .loc 1 1198 18 setp.ne.u32 %r1088,%r281,0; @ %r1088 bra $L125; .loc 1 1199 28 mov.u32 %r1089,55; st.u32 [%r387],%r1089; .loc 1 1199 24 mov.u64 %r464,%r386; bra $L74; $L125: .loc 1 1201 38 add.u32 %r1090,%r281,48; .loc 1 1201 28 st.u32 [%r387],%r1090; .loc 1 1201 24 mov.u64 %r464,%r386; bra $L74; $L38: .loc 1 1214 12 sub.u64 %r1094,%r466,%r464; .loc 1 1214 24 shl.b64 %r1095,%r464,2; .loc 1 1214 12 add.u64 %r1096,%r465,%r1095; .loc 1 1215 21 ld.u32 %r1098,[%r468+28]; add.u32 %r1097,%r1098,7; .loc 1 1215 25 ld.u32 %r1100,[%r468+24]; sub.u32 %r1099,%r1097,%r1100; .loc 1 1214 12 div.s32 %r1102,%r1099,7; st.u32 [%stack],%r1102; cvta.const.u64 %r1093,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1096; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1094; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1093; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1103,[%value_in]; } .loc 1 1217 11 setp.lt.s32 %r1105,%r1103,0; @ %r1105 bra $L75; cvt.s64.s32 %r1106,%r1103; add.u64 %r464,%r464,%r1106; setp.le.u64 %r1107,%r466,%r464; @ ! %r1107 bra $L74; bra $L75; $L47: ld.u32 %r394,[%r468+20]; ld.u32 %r395,[%r468+24]; ld.u32 %r396,[%r468+28]; .loc 1 1221 19 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r394; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r395; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r396; call (%value_in),iso_year_adjust$isra$0,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1111,[%value_in]; } .loc 1 1222 55 setp.eq.u32 %r1112,%r395,0; @ %r1112 bra $L169; add.u32 %r294,%r395,-1; bra $L126; $L169: mov.u32 %r294,6; $L126: .loc 1 1224 9 setp.gt.s32 %r1113,%r1111,0; @ %r1113 bra $L170; .loc 1 1226 14 setp.ne.u32 %r1114,%r1111,0; @ %r1114 bra $L128; .loc 1 1223 33 add.u32 %r1115,%r396,10; .loc 1 1223 38 sub.u32 %r1116,%r1115,%r294; .loc 1 1223 10 div.s32 %r297,%r1116,7; bra $L127; $L128: .loc 1 1230 27 sub.u32 %r298,%r294,%r396; .loc 1 1231 10 setp.lt.s32 %r1117,%r394,0; selp.u32 %r299,1899,-101,%r1117; add.u32 %r300,%r299,%r394; and.b32 %r1118,%r300,3; setp.ne.u32 %r1119,%r1118,0; @ %r1119 bra $L130; rem.s32 %r1121,%r300,100; setp.ne.u32 %r1127,%r1121,0; @ %r1127 bra $L172; $L130: rem.s32 %r1129,%r300,400; set.u32.eq.u32 %r1136,%r1129,0; neg.s32 %r305,%r1136; bra $L131; $L172: mov.u32 %r305,1; $L131: .loc 1 1231 8 sub.u32 %r1138,%r298,%r305; .loc 1 1230 13 setp.le.s32 %r1139,%r1138,4; selp.u32 %r297,53,52,%r1139; bra $L127; $L170: .loc 1 1225 8 mov.u32 %r297,1; $L127: .loc 1 1240 14 sub.u64 %r1143,%r466,%r464; .loc 1 1240 26 shl.b64 %r1144,%r464,2; .loc 1 1240 14 add.u64 %r1145,%r465,%r1144; st.u32 [%stack],%r297; cvta.const.u64 %r1142,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1145; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1143; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1142; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1146,[%value_in]; } .loc 1 1241 13 setp.lt.s32 %r1148,%r1146,0; @ %r1148 bra $L75; cvt.s64.s32 %r1149,%r1146; add.u64 %r464,%r464,%r1149; setp.le.u64 %r1150,%r466,%r464; @ ! %r1150 bra $L74; bra $L75; $L71: .loc 1 1255 7 setp.ge.u64 %r1152,%r464,%r1340; @ %r1152 bra $L75; .loc 1 1256 24 shl.b64 %r1153,%r464,2; add.u64 %r1154,%r465,%r1153; .loc 1 1256 34 ld.u32 %r1156,[%r468+24]; add.u32 %r1155,%r1156,48; .loc 1 1256 24 st.u32 [%r1154],%r1155; .loc 1 1256 20 add.u64 %r464,%r464,1; .loc 1 1259 4 bra $L74; $L48: .loc 1 1262 23 ld.u32 %r318,[%r468+24]; .loc 1 1262 55 setp.eq.u32 %r1157,%r318,0; @ %r1157 bra $L174; add.u32 %r319,%r318,-1; bra $L132; $L174: mov.u32 %r319,6; $L132: .loc 1 1269 14 sub.u64 %r1161,%r466,%r464; .loc 1 1269 26 shl.b64 %r1162,%r464,2; .loc 1 1269 14 add.u64 %r1163,%r465,%r1162; .loc 1 1263 29 ld.u32 %r1165,[%r468+28]; add.u32 %r1164,%r1165,7; .loc 1 1263 33 sub.u32 %r1166,%r1164,%r319; .loc 1 1263 11 div.s32 %r1168,%r1166,7; .loc 1 1269 14 st.u32 [%stack],%r1168; cvta.const.u64 %r1160,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1163; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1161; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1160; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1169,[%value_in]; } .loc 1 1270 13 setp.lt.s32 %r1171,%r1169,0; @ %r1171 bra $L75; cvt.s64.s32 %r1172,%r1169; add.u64 %r464,%r464,%r1172; setp.le.u64 %r1173,%r466,%r464; @ ! %r1173 bra $L74; bra $L75; $L69: .loc 1 1284 21 ld.u32 %r329,[%r468+20]; .loc 1 1285 9 setp.lt.s32 %r1174,%r329,0; @ %r1174 bra $L133; rem.s32 %r330,%r329,100; bra $L134; $L133: .loc 1 1285 11 add.u32 %r1176,%r329,1900; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r1176; call (%value_in),abs,(%out_arg1); ld.param.u32 %r1177,[%value_in]; } .loc 1 1285 9 rem.s32 %r330,%r1177,100; $L134: .loc 1 1291 13 sub.u64 %r1181,%r466,%r464; .loc 1 1291 25 shl.b64 %r1182,%r464,2; .loc 1 1291 13 add.u64 %r1183,%r465,%r1182; st.u32 [%stack],%r330; cvta.const.u64 %r1180,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1183; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1181; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1180; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1184,[%value_in]; } .loc 1 1294 15 setp.lt.s32 %r1186,%r1184,0; @ %r1186 bra $L75; cvt.s64.s32 %r1187,%r1184; add.u64 %r464,%r464,%r1187; setp.le.u64 %r1188,%r466,%r464; @ ! %r1188 bra $L74; bra $L75; $L46: .loc 1 1308 24 ld.u32 %r338,[%r468+20]; .loc 1 1312 11 setp.ge.s32 %r1189,%r338,-1900; @ %r1189 bra $L135; .loc 1 1314 12 mov.u32 %r1190,45; st.u32 [%frame+1024],%r1190; .loc 1 1315 10 mov.u32 %r1191,-1900; sub.u32 %r340,%r1191,%r338; .loc 1 1322 11 setp.ne.u64 %r1192,%r36,0; @ %r1192 bra $L136; .loc 1 1314 9 mov.u64 %r445,%r1341; bra $L137; $L135: .loc 1 1310 26 add.u32 %r340,%r338,1900; .loc 1 1317 21 set.u32.eq.u32 %r1194,%r79,43; neg.s32 %r1195,%r1194; mov.u32 %r1193,%r1195; .loc 1 1317 40 set.u32.gt.u32 %r1197,%r340,9999; neg.s32 %r1198,%r1197; mov.u32 %r1196,%r1198; .loc 1 1317 32 cvt.u16.u8 %r1345,%r1193; mov.u16 %r1200,%r1345; cvt.u16.u8 %r1345,%r1196; mov.u16 %r1201,%r1345; and.b16 %r1199,%r1200,%r1201; cvt.u32.u16 %r1202,%r1199; .loc 1 1317 16 cvt.u16.u8 %r1203,%r1202; setp.eq.u16 %r1204,%r1203,0; @ %r1204 bra $L175; .loc 1 1319 12 mov.u32 %r1205,43; st.u32 [%frame+1024],%r1205; .loc 1 1322 11 setp.eq.u64 %r1206,%r36,0; @ %r1206 bra $L138; $L136: .loc 1 1323 3 add.u64 %r36,%r36,-1; mov.u64 %r445,%r1341; bra $L137; $L175: .loc 1 1307 26 mov.u64 %r445,%r1342; $L137: .loc 1 1324 15 mov.u32 %r1207,37; st.u32 [%r445],%r1207; .loc 1 1325 11 setp.ne.u32 %r1208,%r79,0; @ %r1208 bra $L139; .loc 1 1324 12 add.u64 %r345,%r445,4; bra $L140; $L139: .loc 1 1326 7 add.u64 %r345,%r445,8; .loc 1 1326 10 mov.u32 %r1209,48; st.u32 [%r445+4],%r1209; $L140: .loc 1 1327 8 cvta.const.u64 %r1211,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r345; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1211; call (%value_in),wcscpy,(%out_arg1,%out_arg2); ld.param.u64 %r1212,[%value_in]; } .loc 1 1328 14 sub.u64 %r1217,%r466,%r464; .loc 1 1328 26 shl.b64 %r1218,%r464,2; .loc 1 1328 14 add.u64 %r1219,%r465,%r1218; st.u32 [%stack+8],%r340; st.u64 [%stack],%r36; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1219; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1217; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1342; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1220,[%value_in]; } .loc 1 1330 8 setp.lt.s32 %r1222,%r1220,0; @ %r1222 bra $L141; cvt.s64.s32 %r1223,%r1220; add.u64 %r464,%r464,%r1223; setp.gt.u64 %r1224,%r466,%r464; @ %r1224 bra $L74; $L141: mov.u64 %r464,0; bra $L11; $L73: .loc 1 1334 14 ld.u32 %r1225,[%r468+32]; setp.lt.s32 %r1226,%r1225,0; @ %r1226 bra $L143; .loc 1 1338 8 { call __tz_lock; } .loc 1 1339 11 setp.ne.u32 %r1227,%r218,0; @ %r1227 bra $L144; .loc 1 1341 5 { call _tzset_unlocked; } $L144: .loc 1 1356 28 { .param .u64 %value_in; call (%value_in),__gettzinfo; ld.param.u64 %r1228,[%value_in]; } .loc 1 1360 47 ld.u32 %r1230,[%r468+32]; set.u32.gt.s32 %r1231,%r1230,0; neg.s32 %r1232,%r1231; .loc 1 1360 51 cvt.s64.s32 %r1233,%r1232; shl.b64 %r1235,%r1233,2; add.u64 %r1236,%r1235,%r1233; shl.b64 %r1237,%r1236,3; add.u64 %r1238,%r1228,%r1237; .loc 1 1360 15 ld.u64 %r1240,[%r1238+40]; neg.s64 %r357,%r1240; .loc 1 1362 8 { call __tz_unlock; } .loc 1 1365 10 div.s64 %r1243,%r357,60; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1243; call (%value_in),labs,(%out_arg1); ld.param.u64 %r1244,[%value_in]; } .loc 1 1363 14 sub.u64 %r1248,%r466,%r464; .loc 1 1363 26 shl.b64 %r1249,%r464,2; .loc 1 1363 14 add.u64 %r1250,%r465,%r1249; rem.s64 %r1252,%r1244,60; st.u64 [%stack+8],%r1252; div.s64 %r1254,%r357,3600; st.u64 [%stack],%r1254; cvta.const.u64 %r1247,$LC15; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1250; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1248; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1247; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%stack; call (%value_in),swprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r1255,[%value_in]; } .loc 1 1366 15 setp.lt.s32 %r1257,%r1255,0; @ %r1257 bra $L75; cvt.s64.s32 %r1258,%r1255; add.u64 %r464,%r464,%r1258; setp.le.u64 %r1259,%r466,%r464; @ %r1259 bra $L75; mov.u32 %r218,1; bra $L74; $L22: .loc 1 1370 7 ld.u32 %r1260,[%r468+32]; setp.lt.s32 %r1261,%r1260,0; @ %r1261 bra $L143; .loc 1 1375 8 { call __tz_lock; } .loc 1 1376 11 setp.ne.u32 %r1262,%r218,0; @ %r1262 bra $L145; .loc 1 1378 5 { call _tzset_unlocked; } $L145: .loc 1 1389 9 cvta.global.u64 %r1263,_tzname; .loc 1 1389 35 ld.u32 %r1265,[%r468+32]; set.u32.gt.s32 %r1266,%r1265,0; neg.s32 %r1267,%r1266; .loc 1 1389 9 cvt.s64.s32 %r1268,%r1267; shl.b64 %r1269,%r1268,3; add.u64 %r1270,%r1263,%r1269; ld.u64 %r371,[%r1270]; .loc 1 1394 15 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r371; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r1272,[%value_in]; } .loc 1 1395 22 setp.ne.u64 %r1273,%r1272,0; @ %r1273 bra $L146; mov.u64 %r110,%r464; bra $L147; $L149: .loc 1 1397 8 add.u64 %r429,%r429,4; setp.ge.u64 %r1274,%r376,%r1340; @ %r1274 bra $L148; $L150: .loc 1 1398 25 sub.u64 %r1275,%r376,%r464; add.u64 %r1276,%r371,%r1275; ld.s8 %r375,[%r1276]; .loc 1 1398 14 add.u64 %r376,%r376,1; .loc 1 1398 25 st.u32 [%r429],%r375; .loc 1 1395 22 setp.ne.u64 %r1277,%r376,%r110; @ %r1277 bra $L149; bra $L147; $L148: .loc 1 1401 9 { call __tz_unlock; } .loc 1 1402 16 mov.u64 %r464,0; bra $L11; $L146: .loc 1 1397 8 setp.ge.u64 %r1278,%r464,%r1340; @ %r1278 bra $L148; shl.b64 %r1279,%r464,2; add.u64 %r429,%r465,%r1279; add.u64 %r110,%r464,%r1272; mov.u64 %r376,%r464; bra $L150; $L147: .loc 1 1405 8 { call __tz_unlock; } mov.u64 %r464,%r110; mov.u32 %r218,1; bra $L74; $L30: .loc 1 1409 7 setp.ge.u64 %r1281,%r464,%r1340; @ %r1281 bra $L75; .loc 1 1410 17 shl.b64 %r1282,%r464,2; add.u64 %r1283,%r465,%r1282; mov.u32 %r1284,37; st.u32 [%r1283],%r1284; .loc 1 1410 13 add.u64 %r464,%r464,1; $L74: .loc 1 1417 10 ld.u32 %r1285,[%r33]; setp.eq.u32 %r1286,%r1285,0; @ %r1286 bra $L16; $L143: .loc 1 1418 8 add.u64 %r467,%r33,4; .loc 1 693 13 bra $L12; $L16: .loc 1 1422 6 setp.eq.u64 %r1287,%r466,0; @ %r1287 bra $L11; .loc 1 1423 14 shl.b64 %r1288,%r464,2; add.u64 %r1289,%r465,%r1288; mov.u32 %r1290,0; st.u32 [%r1289],%r1290; bra $L11; $L159: .loc 1 747 7 mov.u64 %r464,0; bra $L11; $L210: .loc 1 1000 13 mov.u32 %r1292,37; st.u32 [%frame+1028],%r1292; mov.u64 %r443,%r1341; bra $L115; $L209: .loc 1 977 11 add.u32 %r151,%r812,%r144; .loc 1 978 9 setp.eq.u32 %r1293,%r151,-1; @ ! %r1293 bra $L110; bra $L152; $L138: .loc 1 1324 15 mov.u32 %r1294,37; st.u32 [%frame+1028],%r1294; .loc 1 1319 9 mov.u64 %r445,%r1341; bra $L139; $L86: .loc 1 866 19 set.u32.gt.s32 %r1296,%r76,99; neg.s32 %r1297,%r1296; mov.u32 %r1295,%r1297; .loc 1 866 33 set.u32.eq.u32 %r1299,%r79,43; neg.s32 %r1300,%r1299; mov.u32 %r1298,%r1300; .loc 1 866 26 cvt.u16.u8 %r1345,%r1295; mov.u16 %r1302,%r1345; cvt.u16.u8 %r1345,%r1298; mov.u16 %r1303,%r1345; and.b16 %r1301,%r1302,%r1303; cvt.u32.u16 %r1304,%r1301; .loc 1 866 10 cvt.u16.u8 %r1305,%r1304; setp.ne.u16 %r1306,%r1305,0; @ ! %r1306 bra $L153; bra $L176; $L61: .loc 1 1034 18 ld.u32 %r43,[%r468+8]; .loc 1 1034 33 set.u32.ne.u32 %r1308,%r43,12; neg.s32 %r1309,%r1308; mov.u32 %r1307,%r1309; set.u32.ne.u32 %r1311,%r43,0; neg.s32 %r1312,%r1311; mov.u32 %r1310,%r1312; cvt.u16.u8 %r1345,%r1307; mov.u16 %r1314,%r1345; cvt.u16.u8 %r1345,%r1310; mov.u16 %r1315,%r1345; and.b16 %r1313,%r1314,%r1315; cvt.u32.u16 %r1316,%r1313; .loc 1 1035 11 cvt.u16.u8 %r1317,%r1316; setp.ne.u16 %r1318,%r1317,0; @ ! %r1318 bra $L211; setp.eq.u32 %r1337,1,0; bra $L154; $L211: mov.u32 %r171,12; .loc 1 1041 14 cvta.const.u64 %r175,$LC6; bra $L119; $L37: .loc 1 1034 18 ld.u32 %r43,[%r468+8]; .loc 1 1034 33 set.u32.ne.u32 %r1320,%r43,0; neg.s32 %r1321,%r1320; mov.u32 %r1319,%r1321; set.u32.ne.u32 %r1323,%r43,12; neg.s32 %r1324,%r1323; mov.u32 %r1322,%r1324; cvt.u16.u8 %r1345,%r1319; mov.u16 %r1326,%r1345; cvt.u16.u8 %r1345,%r1322; mov.u16 %r1327,%r1345; and.b16 %r1325,%r1326,%r1327; cvt.u32.u16 %r1328,%r1325; .loc 1 1035 11 cvt.u16.u8 %r1329,%r1328; setp.ne.u16 %r1330,%r1329,0; @ %r1330 bra $L154; mov.u32 %r171,12; .loc 1 1041 14 cvta.const.u64 %r175,$LC5; bra $L119; $L36: .loc 1 1024 11 ld.u32 %r50,[%r468+8]; .loc 1 1022 10 cvta.const.u64 %r167,$LC5; bra $L155; $L58: .loc 1 1024 11 ld.u32 %r50,[%r468+8]; .loc 1 1022 10 cvta.const.u64 %r167,$LC6; bra $L155; $L157: .loc 1 990 38 mad.lo.u32 %r61,%r141,100,%r59; bra $L156; $L108: .loc 1 977 11 add.u32 %r59,%r144,-1; .loc 1 978 9 setp.ne.u32 %r1332,%r144,0; @ %r1332 bra $L157; .loc 1 981 3 add.u32 %r1333,%r141,-1; .loc 1 990 38 mad.lo.u32 %r61,%r1333,100,99; bra $L156; $L11: .loc 1 1426 1 mov.u64 %value,%r464; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ctloc .visible .func (.param .u64 %value_out) __ctloc (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .pred %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 324 28 mov.u32 %r27,0; st.u32 [%r24+1020],%r27; .loc 1 325 18 mov.u64 %r30,255; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),mbstowcs,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 326 10 setp.ne.u64 %r32,%r31,-1; .loc 1 327 11 selp.u64 %r22,%r31,0,%r32; st.u64 [%r26],%r22; .loc 1 329 5 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcsftime .visible .func (.param .u64 %value_out) wcsftime (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1445 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r31,[%value_in]; } .loc 1 1448 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcsftime_l .visible .func (.param .u64 %value_out) wcsftime_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u64 %r26,%ar3; .loc 1 1465 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),__strftime$isra$0,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 1467 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-wcslcat.o/0 0 0 644 3075 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcslcat .visible .func (.param .u64 %value_out) wcslcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcslcat.c" // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: wcslcat .visible .func (.param .u64 %value_out) wcslcat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .pred %r53; .reg .u64 %r54; .reg .pred %r56; .reg .pred %r57; .reg .u64 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r69; .reg .u32 %r70; mov.u64 %r43,%ar0; mov.u64 %r44,%ar1; mov.u64 %r45,%ar2; .loc 1 81 21 ld.u32 %r46,[%r43]; setp.eq.u32 %r47,%r46,0; @ %r47 bra $L11; .loc 1 81 25 add.u64 %r26,%r45,-1; .loc 1 81 21 setp.eq.u64 %r48,%r45,0; @ %r48 bra $L12; mov.u64 %r23,%r43; $L5: .loc 1 82 6 add.u64 %r23,%r23,4; .loc 1 81 21 ld.u32 %r49,[%r23]; setp.ne.u32 %r50,%r49,0; @ %r50 bra $L4; .loc 1 83 12 sub.u64 %r51,%r23,%r43; shr.s64 %r42,%r51,2; .loc 1 84 5 sub.u64 %r45,%r45,%r42; bra $L2; $L4: .loc 1 81 25 add.u64 %r26,%r26,-1; .loc 1 81 21 setp.ne.u64 %r53,%r26,-1; @ %r53 bra $L5; .loc 1 83 12 sub.u64 %r54,%r23,%r43; shr.s64 %r42,%r54,2; .loc 1 84 5 sub.u64 %r45,%r45,%r42; bra $L2; $L11: .loc 1 81 21 mov.u64 %r23,%r43; mov.u64 %r42,0; $L2: .loc 1 86 6 setp.eq.u64 %r56,%r45,0; @ %r56 bra $L3; .loc 1 88 10 ld.u32 %r25,[%r44]; .loc 1 88 13 setp.ne.u32 %r57,%r25,0; @ %r57 bra $L13; bra $L7; $L12: .loc 1 83 8 mov.u64 %r42,%r45; $L3: .loc 1 87 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r44; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r59,[%value_in]; } .loc 1 87 18 add.u64 %r42,%r42,%r59; bra $L1; $L13: .loc 1 88 13 mov.u64 %r28,%r44; $L6: .loc 1 90 10 setp.ne.u64 %r60,%r45,1; @ %r60 bra $L9; .loc 1 95 8 add.u64 %r30,%r28,4; .loc 1 88 13 ld.u32 %r61,[%r28+4]; setp.ne.u32 %r62,%r61,0; @ %r62 bra $L10; .loc 1 99 21 sub.u64 %r63,%r30,%r44; shr.s64 %r65,%r63,2; .loc 1 99 16 add.u64 %r42,%r42,%r65; bra $L7; $L9: .loc 1 92 9 st.u32 [%r23],%r25; .loc 1 93 5 add.u64 %r45,%r45,-1; mov.u64 %r30,%r28; .loc 1 92 6 add.u64 %r23,%r23,4; $L10: .loc 1 95 8 add.u64 %r28,%r30,4; .loc 1 88 10 ld.u32 %r25,[%r30+4]; .loc 1 88 13 setp.ne.u32 %r66,%r25,0; @ %r66 bra $L6; .loc 1 99 21 sub.u64 %r67,%r28,%r44; shr.s64 %r69,%r67,2; .loc 1 99 16 add.u64 %r42,%r42,%r69; $L7: .loc 1 97 6 mov.u32 %r70,0; st.u32 [%r23],%r70; $L1: .loc 1 100 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } lib_a-wcslcpy.o/0 0 0 644 1954 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcslcpy .visible .func (.param .u64 %value_out) wcslcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcslcpy.c" // BEGIN GLOBAL FUNCTION DEF: wcslcpy .visible .func (.param .u64 %value_out) wcslcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; mov.u64 %r39,%ar2; .loc 1 74 6 setp.eq.u64 %r40,%r39,0; @ %r40 bra $L7; .loc 1 74 14 add.u64 %r28,%r39,-1; setp.eq.u64 %r41,%r39,1; @ %r41 bra $L8; mov.u64 %r29,%r37; mov.u64 %r32,%r38; $L5: mov.u64 %r34,%r32; add.u64 %r32,%r32,4; mov.u64 %r27,%r32; mov.u64 %r33,%r29; add.u64 %r29,%r29,4; mov.u64 %r37,%r29; .loc 1 78 16 ld.u32 %r22,[%r34]; .loc 1 78 14 st.u32 [%r33],%r22; .loc 1 78 7 setp.eq.u32 %r42,%r22,0; @ %r42 bra $L4; .loc 1 81 18 add.u64 %r28,%r28,-1; setp.ne.u64 %r43,%r28,0; @ %r43 bra $L5; bra $L3; $L7: .loc 1 70 18 mov.u64 %r27,%r38; $L2: mov.u64 %r35,%r27; $L6: add.u64 %r35,%r35,4; mov.u64 %r27,%r35; .loc 1 89 14 ld.u32 %r44,[%r35+-4]; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L6; $L4: .loc 1 93 13 sub.u64 %r47,%r27,%r38; shr.s64 %r49,%r47,2; .loc 1 93 19 add.u64 %r46,%r49,-1; bra $L14; $L8: .loc 1 70 18 mov.u64 %r27,%r38; $L3: .loc 1 88 5 mov.u32 %r50,0; st.u32 [%r37],%r50; bra $L2; $L14: .loc 1 94 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-wcslen.o/ 0 0 0 644 947 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcslen .visible .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/string/wcslen.c" // BEGIN GLOBAL FUNCTION DEF: wcslen .visible .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .pred %r30; .reg .u32 %r31; .reg .pred %r32; .reg .u64 %r33; mov.u64 %r28,%ar0; .loc 1 63 10 ld.u32 %r29,[%r28]; setp.eq.u32 %r30,%r29,0; @ %r30 bra $L4; mov.u64 %r23,%r28; $L3: .loc 1 64 6 add.u64 %r23,%r23,4; .loc 1 63 10 ld.u32 %r31,[%r23]; setp.ne.u32 %r32,%r31,0; @ %r32 bra $L3; .loc 1 66 12 sub.u64 %r33,%r23,%r28; shr.s64 %r27,%r33,2; bra $L1; $L4: .loc 1 63 10 mov.u64 %r27,0; $L1: .loc 1 67 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-wcsncat.o/0 0 0 644 2539 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsncat .visible .func (.param .u64 %value_out) wcsncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcsncat.c" // BEGIN GLOBAL FUNCTION DEF: wcsncat .visible .func (.param .u64 %value_out) wcsncat (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .u16 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u16 %r69; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 74 10 ld.u32 %r39,[%r36]; setp.eq.u32 %r40,%r39,0; @ %r40 bra $L6; mov.u64 %r27,%r36; $L3: .loc 1 75 6 add.u64 %r27,%r27,4; .loc 1 74 10 ld.u32 %r41,[%r27]; setp.ne.u32 %r42,%r41,0; @ %r42 bra $L3; bra $L2; $L6: mov.u64 %r27,%r36; $L2: .loc 1 78 10 ld.u32 %r23,[%r37]; .loc 1 78 13 set.u32.ne.u64 %r44,%r38,0; neg.s32 %r45,%r44; mov.u32 %r43,%r45; set.u32.ne.u32 %r47,%r23,0; neg.s32 %r48,%r47; mov.u32 %r46,%r48; cvt.u16.u8 %r69,%r43; mov.u16 %r50,%r69; cvt.u16.u8 %r69,%r46; mov.u16 %r51,%r69; and.b16 %r49,%r50,%r51; cvt.u32.u16 %r52,%r49; cvt.u16.u8 %r53,%r52; setp.eq.u16 %r54,%r53,0; @ %r54 bra $L4; mov.u64 %r25,%r27; $L5: .loc 1 80 16 add.u64 %r37,%r37,4; mov.u64 %r30,%r25; add.u64 %r25,%r25,4; mov.u64 %r27,%r25; .loc 1 80 12 st.u32 [%r30],%r23; .loc 1 81 8 add.u64 %r38,%r38,-1; .loc 1 78 10 ld.u32 %r23,[%r37]; .loc 1 78 13 set.u32.ne.u64 %r56,%r38,0; neg.s32 %r57,%r56; mov.u32 %r55,%r57; set.u32.ne.u32 %r59,%r23,0; neg.s32 %r60,%r59; mov.u32 %r58,%r60; cvt.u16.u8 %r69,%r55; mov.u16 %r62,%r69; cvt.u16.u8 %r69,%r58; mov.u16 %r63,%r69; and.b16 %r61,%r62,%r63; cvt.u32.u16 %r64,%r61; cvt.u16.u8 %r65,%r64; setp.ne.u16 %r66,%r65,0; @ %r66 bra $L5; $L4: .loc 1 83 6 mov.u32 %r67,0; st.u32 [%r27],%r67; .loc 1 85 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } lib_a-wcsncmp.o/0 0 0 644 1387 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsncmp .visible .func (.param .u32 %value_out) wcsncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcsncmp.c" // BEGIN GLOBAL FUNCTION DEF: wcsncmp .visible .func (.param .u32 %value_out) wcsncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r23; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 71 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L5; mov.u64 %r23,%r27; $L4: .loc 1 75 11 ld.u32 %r25,[%r26]; .loc 1 75 18 ld.u32 %r22,[%r23]; .loc 1 75 10 setp.eq.u32 %r30,%r25,%r22; @ %r30 bra $L3; .loc 1 77 16 sub.u32 %r25,%r25,%r22; bra $L1; $L3: .loc 1 79 14 add.u64 %r26,%r26,4; .loc 1 79 10 setp.eq.u32 %r31,%r25,0; @ %r31 bra $L1; .loc 1 82 14 add.u64 %r28,%r28,-1; add.u64 %r23,%r23,4; setp.ne.u64 %r32,%r28,0; @ %r32 bra $L4; .loc 1 72 12 mov.u32 %r25,0; bra $L1; $L5: mov.u32 %r25,0; $L1: .loc 1 84 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-wcsncpy.o/0 0 0 644 1534 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsncpy .visible .func (.param .u64 %value_out) wcsncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcsncpy.c" // BEGIN GLOBAL FUNCTION DEF: wcsncpy .visible .func (.param .u64 %value_out) wcsncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .u64 %r34; .reg .pred %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r39; mov.u64 %r32,%ar0; mov.u64 %r34,%ar2; mov.u64 %r27,%ar1; mov.u64 %r26,%r32; .loc 1 44 8 bra $L2; $L5: .loc 1 46 7 add.u64 %r24,%r34,-1; add.u64 %r23,%r26,4; .loc 1 47 22 ld.u32 %r22,[%r27]; .loc 1 47 20 st.u32 [%r26],%r22; .loc 1 47 9 add.u64 %r27,%r27,4; setp.ne.u32 %r35,%r22,0; @ %r35 bra $L6; .loc 1 49 10 add.u64 %r25,%r34,-2; .loc 1 49 13 setp.ne.u64 %r36,%r24,0; @ %r36 bra $L3; bra $L4; $L6: mov.u64 %r26,%r23; .loc 1 46 7 mov.u64 %r34,%r24; $L2: .loc 1 44 11 setp.ne.u64 %r37,%r34,0; @ %r37 bra $L5; bra $L4; $L3: .loc 1 49 28 st.u32 [%r23],%r22; .loc 1 49 10 add.u64 %r25,%r25,-1; .loc 1 49 13 add.u64 %r23,%r23,4; setp.ne.u64 %r39,%r25,-1; @ %r39 bra $L3; $L4: .loc 1 52 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-wcsnlen.o/0 0 0 644 1424 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsnlen .visible .func (.param .u64 %value_out) wcsnlen (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcsnlen.c" // BEGIN GLOBAL FUNCTION DEF: wcsnlen .visible .func (.param .u64 %value_out) wcsnlen (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u64 %r38; .reg .pred %r40; .reg .u64 %r41; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 61 13 ld.u32 %r33,[%r31]; setp.eq.u32 %r34,%r33,0; @ %r34 bra $L5; .loc 1 61 22 add.u64 %r23,%r32,-1; .loc 1 61 13 setp.eq.u64 %r35,%r32,0; @ %r35 bra $L6; mov.u64 %r24,%r31; $L4: .loc 1 62 6 add.u64 %r24,%r24,4; .loc 1 61 13 ld.u32 %r36,[%r24]; setp.ne.u32 %r37,%r36,0; @ %r37 bra $L3; .loc 1 64 21 sub.u64 %r38,%r24,%r31; shr.s64 %r30,%r38,2; bra $L1; $L3: .loc 1 61 22 add.u64 %r23,%r23,-1; .loc 1 61 13 setp.ne.u64 %r40,%r23,-1; @ %r40 bra $L4; .loc 1 64 21 sub.u64 %r41,%r24,%r31; shr.s64 %r30,%r41,2; bra $L1; $L5: .loc 1 61 13 mov.u64 %r30,0; bra $L1; $L6: mov.u64 %r30,%r32; $L1: .loc 1 65 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-wcspbrk.o/0 0 0 644 1409 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcspbrk .visible .func (.param .u64 %value_out) wcspbrk (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcspbrk.c" // BEGIN GLOBAL FUNCTION DEF: wcspbrk .visible .func (.param .u64 %value_out) wcspbrk (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r35; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; .loc 1 67 10 ld.u32 %r23,[%r27]; setp.eq.u32 %r29,%r23,0; @ %r29 bra $L6; .loc 1 70 14 ld.u32 %r25,[%r28]; mov.u64 %r26,%r27; setp.ne.u32 %r35,%r25,0; bra $L3; $L8: mov.u64 %r24,%r28; mov.u32 %r22,%r25; $L4: .loc 1 72 7 setp.eq.u32 %r30,%r22,%r23; @ %r30 bra $L1; .loc 1 77 5 add.u64 %r24,%r24,4; .loc 1 70 14 ld.u32 %r22,[%r24]; setp.ne.u32 %r31,%r22,0; @ %r31 bra $L4; $L5: .loc 1 79 8 add.u64 %r26,%r26,4; .loc 1 67 10 ld.u32 %r23,[%r26]; setp.eq.u32 %r32,%r23,0; @ %r32 bra $L7; $L3: .loc 1 70 14 @ %r35 bra $L8; bra $L5; $L6: .loc 1 81 10 mov.u64 %r26,0; bra $L1; $L7: mov.u64 %r26,0; $L1: .loc 1 82 1 mov.u64 %value,%r26; st.param.u64 [%value_out],%value; ret; } lib_a-wcsrchr.o/0 0 0 644 1274 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsrchr .visible .func (.param .u64 %value_out) wcsrchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcsrchr.c" // BEGIN GLOBAL FUNCTION DEF: wcsrchr .visible .func (.param .u64 %value_out) wcsrchr (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r23; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .pred %r29; .reg .u32 %r30; .reg .pred %r31; .reg .pred %r32; .reg .pred %r33; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 69 10 ld.u32 %r28,[%r26]; setp.eq.u32 %r29,%r28,0; @ %r29 bra $L6; mov.u64 %r25,%r26; $L3: .loc 1 70 6 add.u64 %r25,%r25,4; .loc 1 69 10 ld.u32 %r30,[%r25]; setp.ne.u32 %r31,%r30,0; @ %r31 bra $L3; bra $L2; $L6: mov.u64 %r25,%r26; $L2: mov.u32 %r23,0; $L5: .loc 1 73 10 setp.eq.u32 %r32,%r27,%r23; @ %r32 bra $L1; .loc 1 78 8 add.u64 %r25,%r25,-4; .loc 1 71 12 setp.gt.u64 %r33,%r26,%r25; @ %r33 bra $L7; .loc 1 73 11 ld.u32 %r23,[%r25]; bra $L5; $L7: .loc 1 80 10 mov.u64 %r25,0; $L1: .loc 1 81 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-wcsspn.o/ 0 0 0 644 1613 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsspn .visible .func (.param .u64 %value_out) wcsspn (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcsspn.c" // BEGIN GLOBAL FUNCTION DEF: wcsspn .visible .func (.param .u64 %value_out) wcsspn (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .pred %r36; .reg .pred %r37; .reg .pred %r38; .reg .u64 %r39; .reg .u64 %r42; .reg .pred %r45; .reg .u64 %r46; .reg .pred %r48; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; .loc 1 66 10 ld.u32 %r24,[%r34]; setp.ne.u32 %r36,%r24,0; @ %r36 bra $L2; mov.u64 %r33,0; bra $L1; $L7: .loc 1 69 14 mov.u64 %r25,%r35; mov.u32 %r22,%r23; $L5: .loc 1 71 7 setp.eq.u32 %r37,%r22,%r24; @ %r37 bra $L4; .loc 1 73 5 add.u64 %r25,%r25,4; .loc 1 69 14 ld.u32 %r22,[%r25]; setp.ne.u32 %r38,%r22,0; @ %r38 bra $L5; .loc 1 81 13 sub.u64 %r39,%r26,%r34; shr.s64 %r33,%r39,2; bra $L1; $L2: .loc 1 69 14 ld.u32 %r23,[%r35]; mov.u64 %r26,%r34; setp.ne.u32 %r48,%r23,0; $L6: @ %r48 bra $L7; .loc 1 81 13 sub.u64 %r42,%r26,%r34; shr.s64 %r33,%r42,2; $L3: bra $L1; $L4: .loc 1 77 8 add.u64 %r26,%r26,4; .loc 1 66 10 ld.u32 %r24,[%r26]; setp.ne.u32 %r45,%r24,0; @ %r45 bra $L6; .loc 1 81 13 sub.u64 %r46,%r26,%r34; shr.s64 %r33,%r46,2; $L1: .loc 1 82 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcsstr.o/ 0 0 0 644 2193 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsstr .visible .func (.param .u64 %value_out) wcsstr (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcsstr.c" // BEGIN GLOBAL FUNCTION DECL: wcslen .extern .func (.param .u64 %value_out) wcslen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: wcsstr .visible .func (.param .u64 %value_out) wcsstr (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r38; .reg .u64 %r40; .reg .pred %r41; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; .loc 1 71 6 ld.u32 %r35,[%r34]; setp.eq.u32 %r36,%r35,0; @ %r36 bra $L11; .loc 1 76 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r38,[%value_in]; } .loc 1 76 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; call (%value_in),wcslen,(%out_arg1); ld.param.u64 %r40,[%value_in]; } .loc 1 76 6 setp.lt.u64 %r41,%r38,%r40; @ ! %r41 bra $L16; bra $L7; $L9: .loc 1 85 14 mov.u64 %r29,%r33; mov.u64 %r28,%r34; mov.u32 %r26,%r30; $L5: .loc 1 87 7 ld.u32 %r42,[%r29]; setp.ne.u32 %r43,%r42,%r26; @ %r43 bra $L4; .loc 1 89 5 add.u64 %r28,%r28,4; .loc 1 90 5 add.u64 %r29,%r29,4; .loc 1 85 14 ld.u32 %r26,[%r28]; setp.ne.u32 %r44,%r26,0; @ %r44 bra $L5; bra $L11; $L16: .loc 1 81 10 ld.u32 %r45,[%r33]; setp.eq.u32 %r46,%r45,0; @ %r46 bra $L8; .loc 1 85 14 ld.u32 %r30,[%r34]; setp.ne.u32 %r51,%r30,0; $L6: @ %r51 bra $L9; bra $L11; $L7: .loc 1 77 12 mov.u64 %r33,0; bra $L11; $L8: mov.u64 %r33,0; bra $L11; $L4: .loc 1 97 8 add.u64 %r33,%r33,4; .loc 1 81 10 ld.u32 %r49,[%r33]; setp.ne.u32 %r50,%r49,0; @ %r50 bra $L6; .loc 1 77 12 mov.u64 %r33,0; $L11: .loc 1 100 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcstod.o/ 0 0 0 644 15565 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstod_l .visible .func (.param .f64 %value_out) _wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/wcstod.c" // BEGIN GLOBAL FUNCTION DECL: _wcstod_r .visible .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: _wcstof_r .visible .func (.param .f32 %value_out) _wcstof_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcstod_l .visible .func (.param .f64 %value_out) wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcstod .visible .func (.param .f64 %value_out) wcstod (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: wcstof_l .visible .func (.param .f32 %value_out) wcstof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: wcstof .visible .func (.param .f32 %value_out) wcstof (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: _C_numeric_locale .extern .const .align 8 .u64 _C_numeric_locale[3]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _wcsnrtombs_l .extern .func (.param .u64 %value_out) _wcsnrtombs_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4, .param .u64 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: _malloc_r .extern .func (.param .u64 %value_out) _malloc_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _strtod_l .extern .func (.param .f64 %value_out) _strtod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strstr .extern .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: initial$0 .const .align 4 .u64 initial$0[1]; // BEGIN GLOBAL FUNCTION DEF: _wcstod_l .visible .func (.param .f64 %value_out) _wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r25; .reg .u64 %r33; .reg .u64 %r36; .reg .f64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .pred %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u64 %r63; .reg .pred %r64; .reg .u64 %r77; .reg .u64 %r82; .reg .f64 %r83; .reg .pred %r84; .reg .u64 %r87; .reg .pred %r88; .reg .u64 %r91; .reg .pred %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; mov.u64 %r38,%ar0; mov.u64 %r39,%ar1; mov.u64 %r40,%ar2; mov.u64 %r41,%ar3; .loc 1 155 15 bra $L2; $L3: .loc 1 156 21 add.u64 %r39,%r39,4; $L2: .loc 1 155 16 ld.u32 %r42,[%r39]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r41; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r44,[%value_in]; } setp.ne.u32 %r45,%r44,0; @ %r45 bra $L3; .loc 1 168 13 st.u64 [%frame+8],%r39; .loc 1 169 13 cvta.const.u64 %r46,initial$0; ld.u32 %r47,[%r46]; st.u32 [%frame],%r47; ld.u32 %r49,[%r46+4]; st.u32 [%frame+4],%r49; .loc 1 170 20 add.u64 %r57,%frame,8; mov.u64 %r54,0; mov.u64 %r53,-1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r54; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r53; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r54; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r41; call (%value_in),_wcsnrtombs_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r58,[%value_in]; } .loc 1 170 12 setp.ne.u64 %r59,%r58,-1; @ %r59 bra $L4; .loc 1 172 20 setp.ne.u64 %r60,%r40,0; @ %r60 bra $L5; $L7: .loc 1 174 24 mov.f64 %r37,0d0000000000000000; bra $L1; $L5: .loc 1 173 33 st.u64 [%r40],%r39; .loc 1 174 24 mov.f64 %r37,0d0000000000000000; bra $L1; $L4: .loc 1 176 20 add.u64 %r25,%r58,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r63,[%value_in]; } .loc 1 176 12 setp.eq.u64 %r64,%r63,0; @ %r64 bra $L7; .loc 1 178 13 st.u32 [%frame],%r47; st.u32 [%frame+4],%r49; .loc 1 179 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r57; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r53; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r25; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r41; call (%value_in),_wcsnrtombs_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r77,[%value_in]; } .loc 1 182 15 add.u64 %r82,%frame,16; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r82; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r41; call (%value_in),_strtod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r83,[%value_in]; } mov.f64 %r37,%r83; .loc 1 190 12 setp.eq.u64 %r84,%r40,0; @ %r84 bra $L8; .loc 1 191 15 ld.const.u64 %r33,[_C_numeric_locale]; .loc 1 202 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r87,[%value_in]; } .loc 1 203 6 setp.gt.u64 %r88,%r87,1; @ %r88 bra $L9; .loc 1 208 50 ld.u64 %r36,[%frame+16]; bra $L10; $L9: .loc 1 204 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r33; call (%value_in),strstr,(%out_arg1,%out_arg2); ld.param.u64 %r91,[%value_in]; } .loc 1 205 7 setp.ne.u64 %r92,%r91,0; @ %r92 bra $L11; .loc 1 205 15 ld.u64 %r36,[%frame+16]; bra $L10; $L11: ld.u64 %r36,[%frame+16]; .loc 1 205 10 setp.le.u64 %r93,%r36,%r91; @ %r93 bra $L10; .loc 1 206 9 sub.u64 %r94,%r36,%r87; add.u64 %r36,%r94,1; st.u64 [%frame+16],%r36; $L10: .loc 1 208 50 sub.u64 %r96,%r36,%r63; .loc 1 208 43 shl.b64 %r97,%r96,2; add.u64 %r98,%r39,%r97; .loc 1 208 25 st.u64 [%r40],%r98; $L8: .loc 1 211 9 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; call _free_r,(%out_arg1,%out_arg2); } $L1: .loc 1 214 1 mov.f64 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstod_r .visible .func (.param .f64 %value_out) _wcstod_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .f64 %r30; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 221 10 cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r30,[%value_in]; } .loc 1 222 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstof_r .visible .func (.param .f32 %value_out) _wcstof_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .f64 %r31; .reg .pred %r32; .reg .u64 %r33; .reg .f32 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 229 19 cvta.global.u64 %r30,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r30; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 230 6 setp.num.f64 %r32,%r31,%r31; @ %r32 bra $L20; .loc 1 231 12 cvta.const.u64 %r33,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r34,[%value_in]; } mov.f32 %r23,%r34; bra $L19; $L20: .loc 1 232 10 cvt.rn.f32.f64 %r23,%r31; $L19: .loc 1 233 1 mov.f32 %value,%r23; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstod_l .visible .func (.param .f64 %value_out) wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r31; .reg .f64 %r32; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 241 10 ld.global.u64 %r31,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r26; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r32,[%value_in]; } .loc 1 242 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstod .visible .func (.param .f64 %value_out) wcstod (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; .reg .f64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 247 10 ld.global.u64 %r30,[_impure_ptr]; cvta.global.u64 %r29,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r31,[%value_in]; } .loc 1 248 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstof_l .visible .func (.param .f32 %value_out) wcstof_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .f32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r35; .reg .f64 %r36; .reg .pred %r37; .reg .u64 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .pred %r41; .reg .f64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u32 %r45; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; mov.u64 %r30,%ar2; .loc 1 254 16 ld.global.u64 %r35,[_impure_ptr]; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r30; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r36,[%value_in]; } .loc 1 255 6 setp.num.f64 %r37,%r36,%r36; @ %r37 bra $L25; .loc 1 256 12 cvta.const.u64 %r38,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r39,[%value_in]; } mov.f32 %r27,%r39; bra $L24; $L25: .loc 1 257 9 cvt.rn.f32.f64 %r27,%r36; .loc 1 259 7 abs.f32 %r40,%r27; .loc 1 259 6 setp.leu.f32 %r41,%r40,0f7f7fffff; @ %r41 bra $L24; .loc 1 259 26 abs.f64 %r42,%r36; .loc 1 259 22 setp.leu.f64 %r43,%r42,0d7fefffffffffffff; @ ! %r43 bra $L24; .loc 1 260 20 ld.global.u64 %r44,[_impure_ptr]; mov.u32 %r45,34; st.u32 [%r44],%r45; $L24: .loc 1 263 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstof .visible .func (.param .f32 %value_out) wcstof (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .f32 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .f64 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .f32 %r38; .reg .f32 %r39; .reg .pred %r40; .reg .f64 %r41; .reg .pred %r42; .reg .u64 %r43; .reg .u32 %r44; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 269 16 ld.global.u64 %r34,[_impure_ptr]; cvta.global.u64 %r33,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r29; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; call (%value_in),_wcstod_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.f64 %r35,[%value_in]; } .loc 1 270 6 setp.num.f64 %r36,%r35,%r35; @ %r36 bra $L30; .loc 1 271 12 cvta.const.u64 %r37,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r38,[%value_in]; } mov.f32 %r27,%r38; bra $L29; $L30: .loc 1 272 9 cvt.rn.f32.f64 %r27,%r35; .loc 1 274 7 abs.f32 %r39,%r27; .loc 1 274 6 setp.leu.f32 %r40,%r39,0f7f7fffff; @ %r40 bra $L29; .loc 1 274 26 abs.f64 %r41,%r35; .loc 1 274 22 setp.leu.f64 %r42,%r41,0d7fefffffffffffff; @ ! %r42 bra $L29; .loc 1 275 20 ld.global.u64 %r43,[_impure_ptr]; mov.u32 %r44,34; st.u32 [%r43],%r44; $L29: .loc 1 279 1 mov.f32 %value,%r27; st.param.f32 [%value_out],%value; ret; } /2028 0 0 0 644 10589 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _wcstoimax_l .func (.param .u64 %value_out) _wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstoimax.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoimax_r .visible .func (.param .u64 %value_out) _wcstoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoimax_l .visible .func (.param .u64 %value_out) wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoimax .visible .func (.param .u64 %value_out) wcstoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: _wcstoimax_l .func (.param .u64 %value_out) _wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .pred %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .u32 %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r121; .reg .pred %r122; .reg .pred %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u16 %r127; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u64 %r61,%ar2; mov.u32 %r62,%ar3; mov.u64 %r63,%ar4; mov.u64 %r25,%r60; $L2: mov.u64 %r40,%r25; add.u64 %r23,%r25,4; mov.u64 %r25,%r23; .loc 1 74 5 ld.u32 %r43,[%r40]; .loc 1 75 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r66,[%value_in]; } mov.u32 %r46,%r66; setp.ne.u32 %r67,%r46,0; @ %r67 bra $L2; .loc 1 76 5 setp.ne.u32 %r68,%r43,45; @ %r68 bra $L3; .loc 1 78 5 ld.u32 %r43,[%r23]; .loc 1 78 9 add.u64 %r23,%r40,8; .loc 1 77 7 mov.u32 %r45,1; bra $L4; $L3: .loc 1 81 6 setp.ne.u32 %r69,%r43,43; @ %r69 bra $L22; .loc 1 82 6 ld.u32 %r43,[%r25]; .loc 1 80 7 mov.u32 %r45,%r46; .loc 1 82 10 add.u64 %r23,%r40,8; bra $L4; $L22: .loc 1 80 7 mov.u32 %r45,%r46; $L4: .loc 1 84 12 and.b32 %r70,%r62,-17; .loc 1 84 5 setp.ne.u32 %r71,%r70,0; @ %r71 bra $L5; .loc 1 84 32 setp.ne.u32 %r72,%r43,48; @ %r72 bra $L6; .loc 1 85 31 ld.u32 %r74,[%r23]; and.b32 %r73,%r74,-33; .loc 1 85 16 setp.ne.u32 %r75,%r73,88; @ %r75 bra $L7; .loc 1 86 5 ld.u32 %r43,[%r23+4]; .loc 1 87 5 add.u64 %r23,%r23,8; mov.u64 %r55,16; .loc 1 88 8 mov.u32 %r62,16; bra $L8; $L7: .loc 1 90 5 setp.eq.u32 %r76,%r62,0; @ %r76 bra $L23; $L5: .loc 1 93 15 add.u32 %r77,%r62,-2; .loc 1 93 5 setp.gt.u32 %r78,%r77,34; @ %r78 bra $L24; .loc 1 97 18 cvt.s64.s32 %r55,%r62; bra $L8; $L23: .loc 1 90 5 mov.u64 %r55,8; .loc 1 91 24 mov.u32 %r62,8; bra $L8; $L28: .loc 1 90 5 mov.u64 %r55,10; .loc 1 91 24 mov.u32 %r62,10; $L8: .loc 1 96 40 cvt.s64.s32 %r79,%r45; add.u64 %r56,%r79,9223372036854775807; .loc 1 97 18 rem.u64 %r81,%r56,%r55; .loc 1 97 9 cvt.u32.u64 %r50,%r81; .loc 1 98 9 div.u64 %r51,%r56,%r55; mov.u64 %r54,%r23; .loc 1 92 6 mov.u64 %r42,0; .loc 1 116 8 mov.u32 %r125,-1; .loc 1 118 8 mov.u32 %r126,1; $L15: .loc 1 105 17 add.u32 %r82,%r43,-48; .loc 1 105 6 setp.gt.u32 %r83,%r82,9; @ %r83 bra $L10; .loc 1 106 6 mov.u32 %r44,%r82; bra $L11; $L10: .loc 1 107 22 add.u32 %r84,%r43,-65; .loc 1 107 11 setp.gt.u32 %r85,%r84,25; @ %r85 bra $L12; .loc 1 108 6 add.u32 %r44,%r43,-55; bra $L11; $L12: .loc 1 109 21 add.u32 %r86,%r43,-97; .loc 1 109 11 setp.gt.u32 %r87,%r86,25; @ %r87 bra $L13; .loc 1 110 6 add.u32 %r44,%r43,-87; $L11: .loc 1 113 6 setp.ge.s32 %r88,%r44,%r62; @ %r88 bra $L13; .loc 1 115 11 shr.u32 %r90,%r46,31; mov.u32 %r91,%r90; .loc 1 115 22 set.u32.gt.u64 %r93,%r42,%r51; neg.s32 %r94,%r93; mov.u32 %r92,%r94; .loc 1 115 15 cvt.u16.u8 %r127,%r91; mov.u16 %r96,%r127; cvt.u16.u8 %r127,%r92; mov.u16 %r97,%r127; or.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; .loc 1 115 6 cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L25; .loc 1 115 39 set.u32.eq.u64 %r102,%r42,%r51; neg.s32 %r103,%r102; mov.u32 %r101,%r103; .loc 1 115 54 set.u32.gt.s32 %r105,%r44,%r50; neg.s32 %r106,%r105; mov.u32 %r104,%r106; .loc 1 115 49 cvt.u16.u8 %r127,%r101; mov.u16 %r108,%r127; cvt.u16.u8 %r127,%r104; mov.u16 %r109,%r127; and.b16 %r107,%r108,%r109; cvt.u32.u16 %r110,%r107; .loc 1 115 31 cvt.u16.u8 %r111,%r110; setp.ne.u16 %r112,%r111,0; @ %r112 bra $L26; .loc 1 120 8 cvt.s64.s32 %r113,%r44; mad.lo.u64 %r42,%r42,%r55,%r113; .loc 1 118 8 mov.u32 %r46,%r126; bra $L14; $L25: .loc 1 116 8 mov.u32 %r46,%r125; bra $L14; $L26: mov.u32 %r46,%r125; $L14: .loc 1 99 14 ld.u32 %r43,[%r54]; add.u64 %r54,%r54,4; .loc 1 105 6 bra $L15; $L13: .loc 1 123 5 setp.ne.u32 %r114,%r46,-1; @ %r114 bra $L16; .loc 1 125 16 mov.u32 %r115,34; st.u32 [%r59],%r115; .loc 1 131 5 setp.ne.u64 %r116,%r61,0; @ %r116 bra $L17; .loc 1 133 9 mov.u64 %r58,%r56; bra $L1; $L16: .loc 1 126 12 setp.ne.u32 %r117,%r46,0; @ %r117 bra $L19; .loc 1 133 9 mov.u64 %r58,%r42; bra $L9; $L24: mov.u64 %r58,0; $L9: .loc 1 128 16 mov.u32 %r118,22; st.u32 [%r59],%r118; .loc 1 131 5 setp.ne.u64 %r119,%r61,0; @ %r119 bra $L20; bra $L1; $L19: .loc 1 129 12 setp.eq.u32 %r120,%r45,0; @ %r120 bra $L21; .loc 1 130 7 neg.s64 %r56,%r42; .loc 1 131 5 setp.ne.u64 %r121,%r61,0; @ %r121 bra $L17; .loc 1 133 9 mov.u64 %r58,%r56; bra $L1; $L21: .loc 1 131 5 setp.ne.u64 %r122,%r61,0; @ %r122 bra $L27; .loc 1 133 9 mov.u64 %r58,%r42; bra $L1; $L27: .loc 1 131 5 mov.u64 %r56,%r42; $L17: .loc 1 132 13 add.u64 %r60,%r54,-4; .loc 1 133 9 mov.u64 %r58,%r56; $L20: .loc 1 132 11 st.u64 [%r61],%r60; .loc 1 133 9 bra $L1; $L6: .loc 1 90 5 setp.eq.u32 %r124,%r62,0; @ %r124 bra $L28; bra $L5; $L1: .loc 1 134 1 mov.u64 %value,%r58; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoimax_r .visible .func (.param .u64 %value_out) _wcstoimax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 140 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoimax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 141 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoimax_l .visible .func (.param .u64 %value_out) wcstoimax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 149 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoimax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 150 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoimax .visible .func (.param .u64 %value_out) wcstoimax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 155 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoimax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 156 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcstok.o/ 0 0 0 644 2267 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstok .visible .func (.param .u64 %value_out) wcstok (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcstok.c" // BEGIN GLOBAL FUNCTION DEF: wcstok .visible .func (.param .u64 %value_out) wcstok (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u32 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .pred %r43; .reg .u64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r47; .reg .pred %r48; mov.u64 %r36,%ar0; mov.u64 %r37,%ar1; mov.u64 %r38,%ar2; .loc 1 102 5 setp.ne.u64 %r39,%r36,0; @ %r39 bra $L2; .loc 1 102 22 ld.u64 %r36,[%r38]; .loc 1 102 16 setp.eq.u64 %r40,%r36,0; @ %r40 bra $L11; $L2: mov.u64 %r34,%r36; $L5: mov.u64 %r35,%r34; add.u64 %r34,%r34,4; .loc 1 109 4 ld.u32 %r23,[%r35]; .loc 1 110 2 mov.u64 %r31,%r37; bra $L4; $L6: .loc 1 111 6 add.u64 %r31,%r31,4; setp.eq.u32 %r41,%r23,%r24; @ %r41 bra $L5; $L4: .loc 1 110 26 ld.u32 %r24,[%r31]; .loc 1 110 38 setp.ne.u32 %r42,%r24,0; @ %r42 bra $L6; .loc 1 114 5 setp.ne.u32 %r43,%r23,0; @ %r43 bra $L7; .loc 1 115 10 mov.u64 %r44,0; st.u64 [%r38],%r44; .loc 1 116 10 mov.u64 %r35,%r44; bra $L1; $L7: add.u64 %r29,%r34,4; mov.u64 %r22,%r29; .loc 1 125 5 ld.u32 %r25,[%r34]; mov.u64 %r27,%r37; $L10: .loc 1 128 12 ld.u32 %r26,[%r27]; .loc 1 128 7 setp.ne.u32 %r45,%r25,%r26; @ %r45 bra $L8; .loc 1 129 8 setp.eq.u32 %r46,%r25,0; @ %r46 bra $L12; .loc 1 132 12 mov.u32 %r47,0; st.u32 [%r29+-4],%r47; bra $L9; $L12: .loc 1 130 8 mov.u64 %r22,0; $L9: .loc 1 133 12 st.u64 [%r38],%r22; .loc 1 134 12 bra $L1; $L8: .loc 1 136 15 add.u64 %r27,%r27,4; setp.ne.u32 %r48,%r26,0; @ %r48 bra $L10; mov.u64 %r34,%r29; bra $L7; $L11: .loc 1 103 10 mov.u64 %r35,%r36; $L1: .loc 1 139 1 mov.u64 %value,%r35; st.param.u64 [%value_out],%value; ret; } lib_a-wcstol.o/ 0 0 0 644 10020 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _wcstol_l .func (.param .u64 %value_out) _wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstol.c" // BEGIN GLOBAL FUNCTION DECL: _wcstol_r .visible .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstol_l .visible .func (.param .u64 %value_out) wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstol .visible .func (.param .u64 %value_out) wcstol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: _wcstol_l .func (.param .u64 %value_out) _wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u16 %r103; .reg .u32 %r104; .reg .u16 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r53,%r57; $L2: mov.u64 %r38,%r53; add.u64 %r39,%r53,4; mov.u64 %r53,%r39; .loc 1 146 5 ld.u32 %r43,[%r38]; .loc 1 147 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r46,%r63; setp.ne.u32 %r64,%r46,0; @ %r64 bra $L2; .loc 1 148 5 setp.ne.u32 %r65,%r43,45; @ %r65 bra $L3; .loc 1 150 5 ld.u32 %r43,[%r39]; .loc 1 150 9 add.u64 %r39,%r38,8; mov.u64 %r25,-9223372036854775808; .loc 1 149 7 mov.u32 %r45,1; bra $L4; $L3: .loc 1 151 12 setp.ne.u32 %r66,%r43,43; @ %r66 bra $L20; .loc 1 152 5 ld.u32 %r43,[%r53]; .loc 1 138 15 mov.u32 %r45,%r46; .loc 1 152 9 add.u64 %r39,%r38,8; .loc 1 152 5 mov.u64 %r25,9223372036854775807; bra $L4; $L20: .loc 1 138 15 mov.u32 %r45,%r46; mov.u64 %r25,9223372036854775807; $L4: .loc 1 153 12 and.b32 %r67,%r59,-17; .loc 1 153 5 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 153 32 setp.ne.u32 %r69,%r43,48; @ %r69 bra $L6; .loc 1 154 31 ld.u32 %r71,[%r39]; and.b32 %r70,%r71,-33; .loc 1 154 16 setp.ne.u32 %r72,%r70,88; @ %r72 bra $L7; .loc 1 155 5 ld.u32 %r43,[%r39+4]; .loc 1 156 5 add.u64 %r39,%r39,8; mov.u64 %r40,16; .loc 1 157 8 mov.u32 %r59,16; bra $L8; $L7: .loc 1 159 5 setp.eq.u32 %r73,%r59,0; @ %r73 bra $L21; .loc 1 180 20 cvt.s64.s32 %r40,%r59; bra $L8; $L5: cvt.s64.s32 %r40,%r59; bra $L8; $L21: .loc 1 159 5 mov.u64 %r40,8; .loc 1 160 24 mov.u32 %r59,8; bra $L8; $L24: .loc 1 159 5 mov.u64 %r40,10; .loc 1 160 24 mov.u32 %r59,10; $L8: .loc 1 180 18 rem.u64 %r75,%r25,%r40; .loc 1 180 9 cvt.u32.u64 %r49,%r75; .loc 1 181 9 div.u64 %r50,%r25,%r40; mov.u64 %r23,%r39; .loc 1 182 11 mov.u64 %r42,0; .loc 1 194 8 mov.u32 %r116,-1; .loc 1 196 8 mov.u32 %r117,1; $L14: .loc 1 183 17 add.u32 %r76,%r43,-48; .loc 1 183 6 setp.gt.u32 %r77,%r76,9; @ %r77 bra $L9; .loc 1 184 6 mov.u32 %r44,%r76; bra $L10; $L9: .loc 1 185 22 add.u32 %r78,%r43,-65; .loc 1 185 11 setp.gt.u32 %r79,%r78,25; @ %r79 bra $L11; .loc 1 186 6 add.u32 %r44,%r43,-55; bra $L10; $L11: .loc 1 187 22 add.u32 %r80,%r43,-97; .loc 1 187 11 setp.gt.u32 %r81,%r80,25; @ %r81 bra $L12; .loc 1 188 6 add.u32 %r44,%r43,-87; $L10: .loc 1 191 6 setp.le.s32 %r82,%r59,%r44; @ %r82 bra $L12; .loc 1 193 24 shr.u32 %r84,%r46,31; mov.u32 %r85,%r84; .loc 1 193 35 set.u32.gt.u64 %r87,%r42,%r50; neg.s32 %r88,%r87; mov.u32 %r86,%r88; .loc 1 193 28 cvt.u16.u8 %r118,%r85; mov.u16 %r90,%r118; cvt.u16.u8 %r118,%r86; mov.u16 %r91,%r118; or.b16 %r89,%r90,%r91; cvt.u32.u16 %r92,%r89; .loc 1 193 19 cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L22; .loc 1 193 52 set.u32.eq.u64 %r96,%r42,%r50; neg.s32 %r97,%r96; mov.u32 %r95,%r97; .loc 1 193 67 set.u32.gt.s32 %r99,%r44,%r49; neg.s32 %r100,%r99; mov.u32 %r98,%r100; .loc 1 193 62 cvt.u16.u8 %r118,%r95; mov.u16 %r102,%r118; cvt.u16.u8 %r118,%r98; mov.u16 %r103,%r118; and.b16 %r101,%r102,%r103; cvt.u32.u16 %r104,%r101; .loc 1 193 44 cvt.u16.u8 %r105,%r104; setp.ne.u16 %r106,%r105,0; @ %r106 bra $L23; .loc 1 198 8 cvt.s64.s32 %r107,%r44; mad.lo.u64 %r42,%r40,%r42,%r107; .loc 1 196 8 mov.u32 %r46,%r117; bra $L13; $L22: .loc 1 194 8 mov.u32 %r46,%r116; bra $L13; $L23: mov.u32 %r46,%r116; $L13: .loc 1 182 28 ld.u32 %r43,[%r23]; add.u64 %r23,%r23,4; .loc 1 183 6 bra $L14; $L12: .loc 1 201 5 setp.ne.u32 %r108,%r46,-1; @ %r108 bra $L15; .loc 1 203 16 mov.u32 %r109,34; st.u32 [%r56],%r109; .loc 1 206 5 setp.ne.u64 %r110,%r58,0; @ %r110 bra $L16; .loc 1 202 7 mov.u64 %r42,%r25; bra $L28; $L15: .loc 1 204 12 setp.eq.u32 %r111,%r45,0; @ %r111 bra $L18; .loc 1 205 7 neg.s64 %r42,%r42; $L18: .loc 1 206 5 setp.eq.u64 %r112,%r58,0; @ %r112 bra $L28; .loc 1 207 11 setp.eq.u32 %r113,%r46,0; @ %r113 bra $L19; mov.u64 %r25,%r42; $L16: add.u64 %r57,%r23,-4; mov.u64 %r42,%r25; $L19: st.u64 [%r58],%r57; .loc 1 208 9 bra $L28; $L6: .loc 1 159 5 setp.eq.u32 %r115,%r59,0; @ %r115 bra $L24; bra $L5; $L28: .loc 1 209 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstol_r .visible .func (.param .u64 %value_out) _wcstol_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 217 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 218 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstol_l .visible .func (.param .u64 %value_out) wcstol_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 226 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 227 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstol .visible .func (.param .u64 %value_out) wcstol (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 234 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstol_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 235 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-wcstold.o/0 0 0 644 2212 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstold_l .visible .func (.param .f64 %value_out) wcstold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/wcstold.c" // BEGIN GLOBAL FUNCTION DECL: wcstold .visible .func (.param .f64 %value_out) wcstold (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: wcstod_l .extern .func (.param .f64 %value_out) wcstod_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wcstold_l .visible .func (.param .f64 %value_out) wcstold_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .f64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 46 10 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),wcstod_l,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r29,[%value_in]; } .loc 1 113 1 mov.f64 %value,%r29; st.param.f64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstold .visible .func (.param .f64 %value_out) wcstold (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r27; .reg .f64 %r28; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 120 10 cvta.global.u64 %r27,__global_locale; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),wcstod_l,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r28,[%value_in]; } .loc 1 124 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-wcstoll.o/0 0 0 644 10072 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstoll_l .visible .func (.param .u64 %value_out) _wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstoll.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoll_r .visible .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoll_l .visible .func (.param .u64 %value_out) wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoll .visible .func (.param .u64 %value_out) wcstoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _wcstoll_l .visible .func (.param .u64 %value_out) _wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r25; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u16 %r103; .reg .u32 %r104; .reg .u16 %r105; .reg .pred %r106; .reg .u64 %r107; .reg .pred %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u16 %r118; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r53,%r57; $L2: mov.u64 %r38,%r53; add.u64 %r39,%r53,4; mov.u64 %r53,%r39; .loc 1 146 5 ld.u32 %r43,[%r38]; .loc 1 147 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r46,%r63; setp.ne.u32 %r64,%r46,0; @ %r64 bra $L2; .loc 1 148 5 setp.ne.u32 %r65,%r43,45; @ %r65 bra $L3; .loc 1 150 5 ld.u32 %r43,[%r39]; .loc 1 150 9 add.u64 %r39,%r38,8; mov.u64 %r25,-9223372036854775808; .loc 1 149 7 mov.u32 %r45,1; bra $L4; $L3: .loc 1 151 12 setp.ne.u32 %r66,%r43,43; @ %r66 bra $L20; .loc 1 152 5 ld.u32 %r43,[%r53]; .loc 1 138 15 mov.u32 %r45,%r46; .loc 1 152 9 add.u64 %r39,%r38,8; .loc 1 152 5 mov.u64 %r25,9223372036854775807; bra $L4; $L20: .loc 1 138 15 mov.u32 %r45,%r46; mov.u64 %r25,9223372036854775807; $L4: .loc 1 153 12 and.b32 %r67,%r59,-17; .loc 1 153 5 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 153 32 setp.ne.u32 %r69,%r43,48; @ %r69 bra $L6; .loc 1 154 31 ld.u32 %r71,[%r39]; and.b32 %r70,%r71,-33; .loc 1 154 16 setp.ne.u32 %r72,%r70,88; @ %r72 bra $L7; .loc 1 155 5 ld.u32 %r43,[%r39+4]; .loc 1 156 5 add.u64 %r39,%r39,8; mov.u64 %r40,16; .loc 1 157 8 mov.u32 %r59,16; bra $L8; $L7: .loc 1 159 5 setp.eq.u32 %r73,%r59,0; @ %r73 bra $L21; .loc 1 180 20 cvt.s64.s32 %r40,%r59; bra $L8; $L5: cvt.s64.s32 %r40,%r59; bra $L8; $L21: .loc 1 159 5 mov.u64 %r40,8; .loc 1 160 24 mov.u32 %r59,8; bra $L8; $L24: .loc 1 159 5 mov.u64 %r40,10; .loc 1 160 24 mov.u32 %r59,10; $L8: .loc 1 180 18 rem.u64 %r75,%r25,%r40; .loc 1 180 9 cvt.u32.u64 %r49,%r75; .loc 1 181 9 div.u64 %r50,%r25,%r40; mov.u64 %r23,%r39; .loc 1 182 11 mov.u64 %r42,0; .loc 1 194 8 mov.u32 %r116,-1; .loc 1 196 8 mov.u32 %r117,1; $L14: .loc 1 183 17 add.u32 %r76,%r43,-48; .loc 1 183 6 setp.gt.u32 %r77,%r76,9; @ %r77 bra $L9; .loc 1 184 6 mov.u32 %r44,%r76; bra $L10; $L9: .loc 1 185 22 add.u32 %r78,%r43,-65; .loc 1 185 11 setp.gt.u32 %r79,%r78,25; @ %r79 bra $L11; .loc 1 186 6 add.u32 %r44,%r43,-55; bra $L10; $L11: .loc 1 187 22 add.u32 %r80,%r43,-97; .loc 1 187 11 setp.gt.u32 %r81,%r80,25; @ %r81 bra $L12; .loc 1 188 6 add.u32 %r44,%r43,-87; $L10: .loc 1 191 6 setp.le.s32 %r82,%r59,%r44; @ %r82 bra $L12; .loc 1 193 24 shr.u32 %r84,%r46,31; mov.u32 %r85,%r84; .loc 1 193 35 set.u32.gt.u64 %r87,%r42,%r50; neg.s32 %r88,%r87; mov.u32 %r86,%r88; .loc 1 193 28 cvt.u16.u8 %r118,%r85; mov.u16 %r90,%r118; cvt.u16.u8 %r118,%r86; mov.u16 %r91,%r118; or.b16 %r89,%r90,%r91; cvt.u32.u16 %r92,%r89; .loc 1 193 19 cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L22; .loc 1 193 52 set.u32.eq.u64 %r96,%r42,%r50; neg.s32 %r97,%r96; mov.u32 %r95,%r97; .loc 1 193 67 set.u32.gt.s32 %r99,%r44,%r49; neg.s32 %r100,%r99; mov.u32 %r98,%r100; .loc 1 193 62 cvt.u16.u8 %r118,%r95; mov.u16 %r102,%r118; cvt.u16.u8 %r118,%r98; mov.u16 %r103,%r118; and.b16 %r101,%r102,%r103; cvt.u32.u16 %r104,%r101; .loc 1 193 44 cvt.u16.u8 %r105,%r104; setp.ne.u16 %r106,%r105,0; @ %r106 bra $L23; .loc 1 198 8 cvt.s64.s32 %r107,%r44; mad.lo.u64 %r42,%r40,%r42,%r107; .loc 1 196 8 mov.u32 %r46,%r117; bra $L13; $L22: .loc 1 194 8 mov.u32 %r46,%r116; bra $L13; $L23: mov.u32 %r46,%r116; $L13: .loc 1 182 28 ld.u32 %r43,[%r23]; add.u64 %r23,%r23,4; .loc 1 183 6 bra $L14; $L12: .loc 1 201 5 setp.ne.u32 %r108,%r46,-1; @ %r108 bra $L15; .loc 1 203 16 mov.u32 %r109,34; st.u32 [%r56],%r109; .loc 1 206 5 setp.ne.u64 %r110,%r58,0; @ %r110 bra $L16; .loc 1 202 7 mov.u64 %r42,%r25; bra $L28; $L15: .loc 1 204 12 setp.eq.u32 %r111,%r45,0; @ %r111 bra $L18; .loc 1 205 7 neg.s64 %r42,%r42; $L18: .loc 1 206 5 setp.eq.u64 %r112,%r58,0; @ %r112 bra $L28; .loc 1 207 11 setp.eq.u32 %r113,%r46,0; @ %r113 bra $L19; mov.u64 %r25,%r42; $L16: add.u64 %r57,%r23,-4; mov.u64 %r42,%r25; $L19: st.u64 [%r58],%r57; .loc 1 208 9 bra $L28; $L6: .loc 1 159 5 setp.eq.u32 %r115,%r59,0; @ %r115 bra $L24; bra $L5; $L28: .loc 1 209 1 mov.u64 %value,%r42; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoll_r .visible .func (.param .u64 %value_out) _wcstoll_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 217 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 218 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoll_l .visible .func (.param .u64 %value_out) wcstoll_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 226 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 227 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoll .visible .func (.param .u64 %value_out) wcstoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 234 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoll_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 235 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2047 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /2066 0 0 0 644 1436 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstombs .visible .func (.param .u64 %value_out) wcstombs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/wcstombs.c" // BEGIN GLOBAL FUNCTION DEF: wcstombs .visible .func (.param .u64 %value_out) wcstombs (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .pred %r37; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 63 6 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L2; mov.u64 %r25,%r31; mov.u64 %r26,%r32; add.u64 %r29,%r25,%r33; .loc 1 61 7 mov.u32 %r24,0; $L4: .loc 1 65 19 ld.s8 %r23,[%r26]; .loc 1 65 17 cvt.u32.u32 %r35,%r23; st.u8 [%r25],%r35; .loc 1 65 10 setp.ne.u32 %r36,%r23,0; @ %r36 bra $L3; .loc 1 71 10 cvt.s64.s32 %r33,%r24; bra $L2; $L3: .loc 1 67 12 add.u32 %r24,%r24,1; .loc 1 68 18 add.u64 %r25,%r25,1; add.u64 %r26,%r26,4; setp.ne.u64 %r37,%r25,%r29; @ %r37 bra $L4; .loc 1 71 10 cvt.s64.s32 %r33,%r24; $L2: .loc 1 73 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2084 0 0 0 644 5044 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstombs_r .visible .func (.param .u64 %value_out) _wcstombs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstombs_r.c" // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: _wcstombs_r .visible .func (.param .u64 %value_out) _wcstombs_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u64 %r27; .reg .u64 %r36; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r43; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .u32 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .pred %r67; .reg .u32 %r70; .reg .u32 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r90; .reg .pred %r91; .reg .u64 %r93; mov.u64 %r50,%ar0; mov.u64 %r51,%ar1; mov.u64 %r52,%ar2; mov.u64 %r53,%ar3; mov.u64 %r54,%ar4; .loc 1 17 6 setp.eq.u64 %r55,%r51,0; @ %r55 bra $L2; .loc 1 31 16 setp.ne.u64 %r56,%r53,0; @ %r56 bra $L12; .loc 1 45 14 mov.u64 %r49,%r53; bra $L1; $L2: .loc 1 20 14 ld.u32 %r24,[%r52]; .loc 1 20 20 setp.eq.u32 %r57,%r24,0; @ %r57 bra $L13; .loc 1 19 14 mov.u64 %r49,%r51; cvta.global.u64 %r93,__global_locale; $L6: .loc 1 22 36 add.u64 %r52,%r52,4; .loc 1 22 12 ld.u64 %r64,[%r93+224]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2,.param .u64 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r24; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r54; call (%value_in),%r64,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r63,[%value_in]; } .loc 1 23 7 setp.ne.u32 %r65,%r63,-1; @ %r65 bra $L5; $L7: .loc 1 24 13 mov.u64 %r49,-1; bra $L1; $L5: .loc 1 25 14 cvt.s64.s32 %r66,%r63; add.u64 %r49,%r49,%r66; .loc 1 20 14 ld.u32 %r24,[%r52]; .loc 1 20 20 setp.ne.u32 %r67,%r24,0; @ %r67 bra $L6; bra $L1; $L12: .loc 1 31 16 mov.u64 %r43,%r51; mov.u64 %r40,%r53; cvta.global.u64 %r93,__global_locale; $L3: .loc 1 33 19 ld.u64 %r74,[%r93+224]; ld.u32 %r70,[%r52]; { .param .u32 %value_in; $LCT1: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2,.param .u64 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r70; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r54; call (%value_in),%r74,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT1; ld.param.u32 %r73,[%value_in]; } mov.u32 %r38,%r73; .loc 1 34 14 setp.eq.u32 %r75,%r38,-1; @ %r75 bra $L7; .loc 1 36 28 cvt.s64.s32 %r27,%r38; .loc 1 36 44 setp.lt.u64 %r76,%r27,%r40; @ %r76 bra $L8; cvt.u32.u64 %r38,%r40; $L8: .loc 1 37 25 setp.le.s32 %r77,%r38,0; @ %r77 bra $L9; mov.u64 %r39,%r43; mov.u64 %r36,%frame; add.u64 %r78,%r43,1; add.u32 %r79,%r38,-1; cvt.u64.u32 %r80,%r79; add.u64 %r48,%r78,%r80; $L10: .loc 1 38 20 ld.u8 %r81,[%r36]; st.u8 [%r39],%r81; .loc 1 37 25 add.u64 %r39,%r39,1; add.u64 %r36,%r36,1; setp.ne.u64 %r82,%r39,%r48; @ %r82 bra $L10; .loc 1 38 17 cvt.u64.u32 %r83,%r38; add.u64 %r43,%r43,%r83; $L9: .loc 1 40 14 ld.u32 %r84,[%r52]; setp.ne.u32 %r85,%r84,0; @ %r85 bra $L11; .loc 1 41 24 sub.u64 %r86,%r43,%r51; .loc 1 41 33 set.u32.le.u64 %r88,%r27,%r40; cvt.s64.s32 %r87,%r88; .loc 1 41 28 add.u64 %r49,%r86,%r87; bra $L1; $L11: .loc 1 42 11 add.u64 %r52,%r52,4; .loc 1 43 13 cvt.s64.s32 %r90,%r38; sub.u64 %r40,%r40,%r90; .loc 1 31 16 setp.ne.u64 %r91,%r40,0; @ %r91 bra $L3; mov.u64 %r49,%r53; bra $L1; $L13: .loc 1 45 14 mov.u64 %r49,%r51; $L1: .loc 1 47 1 mov.u64 %value,%r49; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-wcstoul.o/0 0 0 644 10536 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstoul_l .visible .func (.param .u64 %value_out) _wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstoul.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoul_r .visible .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoul_l .visible .func (.param .u64 %value_out) wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoul .visible .func (.param .u64 %value_out) wcstoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _wcstoul_l .visible .func (.param .u64 %value_out) _wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r36; .reg .u64 %r37; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r52; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u64 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .pred %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r121; .reg .u64 %r122; .reg .u64 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u16 %r128; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r48,%r57; $L2: mov.u64 %r36,%r48; add.u64 %r37,%r48,4; mov.u64 %r48,%r37; .loc 1 144 5 ld.u32 %r39,[%r36]; .loc 1 145 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r42,%r63; setp.ne.u32 %r64,%r42,0; @ %r64 bra $L2; .loc 1 146 5 setp.ne.u32 %r65,%r39,45; @ %r65 bra $L3; .loc 1 148 5 ld.u32 %r39,[%r37]; .loc 1 148 9 add.u64 %r37,%r36,8; .loc 1 147 7 mov.u32 %r41,1; bra $L4; $L3: .loc 1 149 12 setp.ne.u32 %r66,%r39,43; @ %r66 bra $L20; .loc 1 150 5 ld.u32 %r39,[%r48]; .loc 1 138 15 mov.u32 %r41,%r42; .loc 1 150 9 add.u64 %r37,%r36,8; bra $L4; $L20: .loc 1 138 15 mov.u32 %r41,%r42; $L4: .loc 1 151 12 and.b32 %r67,%r59,-17; .loc 1 151 5 setp.eq.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 159 38 cvt.s64.s32 %r52,%r59; .loc 1 159 9 mov.u64 %r69,-1; div.u64 %r50,%r69,%r52; .loc 1 160 36 rem.u64 %r72,%r69,%r52; .loc 1 160 9 cvt.u32.u64 %r49,%r72; bra $L6; $L5: .loc 1 151 32 setp.ne.u32 %r73,%r39,48; @ %r73 bra $L7; .loc 1 152 31 ld.u32 %r75,[%r37]; and.b32 %r74,%r75,-33; .loc 1 152 16 setp.ne.u32 %r76,%r74,88; @ %r76 bra $L8; .loc 1 153 5 ld.u32 %r39,[%r37+4]; .loc 1 154 5 add.u64 %r37,%r37,8; mov.u32 %r49,15; mov.u64 %r50,1152921504606846975; mov.u64 %r52,16; .loc 1 155 8 mov.u32 %r59,16; bra $L6; $L8: .loc 1 157 5 setp.eq.u32 %r77,%r59,0; @ %r77 bra $L21; .loc 1 159 38 cvt.s64.s32 %r52,%r59; .loc 1 159 9 mov.u64 %r78,-1; div.u64 %r50,%r78,%r52; .loc 1 160 36 rem.u64 %r81,%r78,%r52; .loc 1 160 9 cvt.u32.u64 %r49,%r81; bra $L6; $L21: .loc 1 157 5 mov.u32 %r49,7; mov.u64 %r50,2305843009213693951; mov.u64 %r52,8; .loc 1 158 24 mov.u32 %r59,8; bra $L6; $L25: .loc 1 157 5 mov.u32 %r49,5; mov.u64 %r50,1844674407370955161; mov.u64 %r52,10; .loc 1 158 24 mov.u32 %r59,10; $L6: mov.u64 %r47,%r37; .loc 1 161 11 mov.u64 %r55,0; .loc 1 173 8 mov.u32 %r126,-1; .loc 1 175 8 mov.u32 %r127,1; $L14: .loc 1 162 17 add.u32 %r82,%r39,-48; .loc 1 162 6 setp.gt.u32 %r83,%r82,9; @ %r83 bra $L9; .loc 1 163 6 mov.u32 %r40,%r82; bra $L10; $L9: .loc 1 164 22 add.u32 %r84,%r39,-65; .loc 1 164 11 setp.gt.u32 %r85,%r84,25; @ %r85 bra $L11; .loc 1 165 6 add.u32 %r40,%r39,-55; bra $L10; $L11: .loc 1 166 22 add.u32 %r86,%r39,-97; .loc 1 166 11 setp.gt.u32 %r87,%r86,25; @ %r87 bra $L12; .loc 1 167 6 add.u32 %r40,%r39,-87; $L10: .loc 1 170 6 setp.le.s32 %r88,%r59,%r40; @ %r88 bra $L12; .loc 1 172 24 shr.u32 %r90,%r42,31; mov.u32 %r91,%r90; .loc 1 172 35 set.u32.gt.u64 %r93,%r55,%r50; neg.s32 %r94,%r93; mov.u32 %r92,%r94; .loc 1 172 28 cvt.u16.u8 %r128,%r91; mov.u16 %r96,%r128; cvt.u16.u8 %r128,%r92; mov.u16 %r97,%r128; or.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; .loc 1 172 19 cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L22; .loc 1 172 52 set.u32.eq.u64 %r102,%r55,%r50; neg.s32 %r103,%r102; mov.u32 %r101,%r103; .loc 1 172 67 set.u32.gt.s32 %r105,%r40,%r49; neg.s32 %r106,%r105; mov.u32 %r104,%r106; .loc 1 172 62 cvt.u16.u8 %r128,%r101; mov.u16 %r108,%r128; cvt.u16.u8 %r128,%r104; mov.u16 %r109,%r128; and.b16 %r107,%r108,%r109; cvt.u32.u16 %r110,%r107; .loc 1 172 44 cvt.u16.u8 %r111,%r110; setp.ne.u16 %r112,%r111,0; @ %r112 bra $L23; .loc 1 177 8 cvt.s64.s32 %r113,%r40; mad.lo.u64 %r55,%r55,%r52,%r113; .loc 1 175 8 mov.u32 %r42,%r127; bra $L13; $L22: .loc 1 173 8 mov.u32 %r42,%r126; bra $L13; $L23: mov.u32 %r42,%r126; $L13: .loc 1 161 28 ld.u32 %r39,[%r47]; add.u64 %r47,%r47,4; .loc 1 162 6 bra $L14; $L12: .loc 1 180 5 setp.ne.u32 %r114,%r42,-1; @ %r114 bra $L15; .loc 1 182 16 mov.u32 %r115,34; st.u32 [%r56],%r115; .loc 1 185 5 setp.ne.u64 %r116,%r58,0; @ %r116 bra $L24; .loc 1 181 7 mov.u64 %r55,-1; bra $L1; $L15: .loc 1 183 12 setp.eq.u32 %r117,%r41,0; @ %r117 bra $L18; .loc 1 184 7 neg.s64 %r55,%r55; $L18: .loc 1 185 5 setp.eq.u64 %r118,%r58,0; @ %r118 bra $L1; .loc 1 186 11 setp.eq.u32 %r119,%r42,0; @ %r119 bra $L19; bra $L16; $L24: .loc 1 181 7 mov.u64 %r55,-1; $L16: .loc 1 186 11 add.u64 %r57,%r47,-4; $L19: st.u64 [%r58],%r57; .loc 1 187 9 bra $L1; $L7: .loc 1 157 5 setp.eq.u32 %r121,%r59,0; @ %r121 bra $L25; .loc 1 159 38 cvt.s64.s32 %r52,%r59; .loc 1 159 9 mov.u64 %r122,-1; div.u64 %r50,%r122,%r52; .loc 1 160 36 rem.u64 %r125,%r122,%r52; .loc 1 160 9 cvt.u32.u64 %r49,%r125; bra $L6; $L1: .loc 1 188 1 mov.u64 %value,%r55; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoul_r .visible .func (.param .u64 %value_out) _wcstoul_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 196 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoul_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 197 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoul_l .visible .func (.param .u64 %value_out) wcstoul_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 205 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoul_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 206 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoul .visible .func (.param .u64 %value_out) wcstoul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 213 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoul_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 214 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2104 0 0 0 644 11254 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wcstoull_l .visible .func (.param .u64 %value_out) _wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstoull.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoull_r .visible .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoull_l .visible .func (.param .u64 %value_out) wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoull .visible .func (.param .u64 %value_out) wcstoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: _wcstoull_l .visible .func (.param .u64 %value_out) _wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r26; .reg .u64 %r28; .reg .u32 %r34; .reg .u32 %r37; .reg .u32 %r40; .reg .u32 %r51; .reg .u64 %r53; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .u16 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u32 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u64 %r95; .reg .u64 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .u32 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u32 %r115; .reg .u16 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .pred %r138; .reg .u64 %r139; .reg .u64 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u16 %r145; mov.u64 %r60,%ar0; mov.u64 %r61,%ar1; mov.u64 %r62,%ar2; mov.u32 %r63,%ar3; mov.u64 %r64,%ar4; .loc 1 152 24 set.u32.eq.u32 %r66,%r63,1; neg.s32 %r67,%r66; mov.u32 %r65,%r67; .loc 1 152 30 set.u32.gt.u32 %r69,%r63,36; neg.s32 %r70,%r69; mov.u32 %r68,%r70; cvt.u16.u8 %r145,%r65; mov.u16 %r72,%r145; cvt.u16.u8 %r145,%r68; mov.u16 %r73,%r145; or.b16 %r71,%r72,%r73; cvt.u32.u16 %r74,%r71; cvt.u16.u8 %r75,%r74; setp.eq.u16 %r76,%r75,0; @ %r76 bra $L2; .loc 1 153 16 mov.u32 %r77,22; st.u32 [%r60],%r77; .loc 1 154 9 mov.u64 %r59,0; bra $L1; $L2: mov.u64 %r53,%r61; $L4: mov.u64 %r26,%r53; add.u64 %r24,%r53,4; mov.u64 %r53,%r24; .loc 1 160 5 ld.u32 %r34,[%r26]; .loc 1 161 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r34; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r80,[%value_in]; } mov.u32 %r40,%r80; setp.ne.u32 %r81,%r40,0; @ %r81 bra $L4; .loc 1 162 5 setp.ne.u32 %r82,%r34,45; @ %r82 bra $L5; .loc 1 164 5 ld.u32 %r34,[%r24]; .loc 1 164 9 add.u64 %r24,%r26,8; .loc 1 163 7 mov.u32 %r51,1; bra $L6; $L5: .loc 1 165 12 setp.ne.u32 %r83,%r34,43; @ %r83 bra $L21; .loc 1 166 5 ld.u32 %r34,[%r53]; .loc 1 150 15 mov.u32 %r51,%r40; .loc 1 166 9 add.u64 %r24,%r26,8; bra $L6; $L21: .loc 1 150 15 mov.u32 %r51,%r40; $L6: .loc 1 167 12 and.b32 %r84,%r63,-17; .loc 1 167 5 setp.eq.u32 %r85,%r84,0; @ %r85 bra $L7; .loc 1 175 44 cvt.s64.s32 %r23,%r63; .loc 1 175 9 mov.u64 %r86,-1; div.u64 %r28,%r86,%r23; .loc 1 176 42 rem.u64 %r89,%r86,%r23; .loc 1 176 9 cvt.u32.u64 %r56,%r89; bra $L8; $L7: .loc 1 167 32 setp.ne.u32 %r90,%r34,48; @ %r90 bra $L9; .loc 1 168 31 ld.u32 %r92,[%r24]; and.b32 %r91,%r92,-33; .loc 1 168 16 setp.ne.u32 %r93,%r91,88; @ %r93 bra $L10; .loc 1 169 5 ld.u32 %r34,[%r24+4]; .loc 1 170 5 add.u64 %r24,%r24,8; mov.u32 %r56,15; mov.u64 %r28,1152921504606846975; mov.u64 %r23,16; .loc 1 171 8 mov.u32 %r63,16; bra $L8; $L10: .loc 1 173 5 setp.eq.u32 %r94,%r63,0; @ %r94 bra $L22; .loc 1 175 44 cvt.s64.s32 %r23,%r63; .loc 1 175 9 mov.u64 %r95,-1; div.u64 %r28,%r95,%r23; .loc 1 176 42 rem.u64 %r98,%r95,%r23; .loc 1 176 9 cvt.u32.u64 %r56,%r98; bra $L8; $L22: .loc 1 173 5 mov.u32 %r56,7; mov.u64 %r28,2305843009213693951; mov.u64 %r23,8; .loc 1 174 24 mov.u32 %r63,8; bra $L8; $L26: .loc 1 173 5 mov.u32 %r56,5; mov.u64 %r28,1844674407370955161; mov.u64 %r23,10; .loc 1 174 24 mov.u32 %r63,10; $L8: mov.u64 %r55,%r24; .loc 1 177 11 mov.u64 %r59,0; .loc 1 189 8 mov.u32 %r143,-1; .loc 1 191 8 mov.u32 %r144,1; $L16: .loc 1 178 17 add.u32 %r99,%r34,-48; .loc 1 178 6 setp.gt.u32 %r100,%r99,9; @ %r100 bra $L11; .loc 1 179 6 mov.u32 %r37,%r99; bra $L12; $L11: .loc 1 180 22 add.u32 %r101,%r34,-65; .loc 1 180 11 setp.gt.u32 %r102,%r101,25; @ %r102 bra $L13; .loc 1 181 6 add.u32 %r37,%r34,-55; bra $L12; $L13: .loc 1 182 22 add.u32 %r103,%r34,-97; .loc 1 182 11 setp.gt.u32 %r104,%r103,25; @ %r104 bra $L14; .loc 1 183 6 add.u32 %r37,%r34,-87; $L12: .loc 1 186 6 setp.le.s32 %r105,%r63,%r37; @ %r105 bra $L14; .loc 1 188 24 shr.u32 %r107,%r40,31; mov.u32 %r108,%r107; .loc 1 188 35 set.u32.lt.u64 %r110,%r28,%r59; neg.s32 %r111,%r110; mov.u32 %r109,%r111; .loc 1 188 28 cvt.u16.u8 %r145,%r108; mov.u16 %r113,%r145; cvt.u16.u8 %r145,%r109; mov.u16 %r114,%r145; or.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; .loc 1 188 19 cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L23; .loc 1 188 52 set.u32.eq.u64 %r119,%r28,%r59; neg.s32 %r120,%r119; mov.u32 %r118,%r120; .loc 1 188 67 set.u32.gt.s32 %r122,%r37,%r56; neg.s32 %r123,%r122; mov.u32 %r121,%r123; .loc 1 188 62 cvt.u16.u8 %r145,%r118; mov.u16 %r125,%r145; cvt.u16.u8 %r145,%r121; mov.u16 %r126,%r145; and.b16 %r124,%r125,%r126; cvt.u32.u16 %r127,%r124; .loc 1 188 44 cvt.u16.u8 %r128,%r127; setp.ne.u16 %r129,%r128,0; @ %r129 bra $L24; .loc 1 193 8 cvt.s64.s32 %r130,%r37; mad.lo.u64 %r59,%r59,%r23,%r130; .loc 1 191 8 mov.u32 %r40,%r144; bra $L15; $L23: .loc 1 189 8 mov.u32 %r40,%r143; bra $L15; $L24: mov.u32 %r40,%r143; $L15: .loc 1 177 28 ld.u32 %r34,[%r55]; add.u64 %r55,%r55,4; .loc 1 178 6 bra $L16; $L14: .loc 1 196 5 setp.ne.u32 %r131,%r40,-1; @ %r131 bra $L17; .loc 1 198 16 mov.u32 %r132,34; st.u32 [%r60],%r132; .loc 1 201 5 setp.ne.u64 %r133,%r62,0; @ %r133 bra $L25; .loc 1 197 7 mov.u64 %r59,-1; bra $L1; $L17: .loc 1 199 12 setp.eq.u32 %r134,%r51,0; @ %r134 bra $L19; .loc 1 200 7 neg.s64 %r59,%r59; $L19: .loc 1 201 5 setp.eq.u64 %r135,%r62,0; @ %r135 bra $L1; .loc 1 202 11 setp.eq.u32 %r136,%r40,0; @ %r136 bra $L20; bra $L18; $L25: .loc 1 197 7 mov.u64 %r59,-1; $L18: .loc 1 202 11 add.u64 %r61,%r55,-4; $L20: st.u64 [%r62],%r61; bra $L1; $L9: .loc 1 173 5 setp.eq.u32 %r138,%r63,0; @ %r138 bra $L26; .loc 1 175 44 cvt.s64.s32 %r23,%r63; .loc 1 175 9 mov.u64 %r139,-1; div.u64 %r28,%r139,%r23; .loc 1 176 42 rem.u64 %r142,%r139,%r23; .loc 1 176 9 cvt.u32.u64 %r56,%r142; bra $L8; $L1: .loc 1 204 1 mov.u64 %value,%r59; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoull_r .visible .func (.param .u64 %value_out) _wcstoull_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 212 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoull_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 213 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoull_l .visible .func (.param .u64 %value_out) wcstoull_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 221 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoull_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 222 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoull .visible .func (.param .u64 %value_out) wcstoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 229 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoull_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 230 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2122 0 0 0 644 78 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE /2142 0 0 0 644 10513 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: _wcstoumax_l .func (.param .u64 %value_out) _wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4); .file 1 "../../../../../../newlib/libc/stdlib/wcstoumax.c" // BEGIN GLOBAL FUNCTION DECL: _wcstoumax_r .visible .func (.param .u64 %value_out) _wcstoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoumax_l .visible .func (.param .u64 %value_out) wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: wcstoumax .visible .func (.param .u64 %value_out) wcstoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DECL: iswspace_l .extern .func (.param .u32 %value_out) iswspace_l (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DEF: _wcstoumax_l .func (.param .u64 %value_out) _wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3, .param .u64 %in_ar4) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %ar4; ld.param.u64 %ar4,[%in_ar4]; .reg .u64 %r26; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .u32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u32 %r96; .reg .u16 %r97; .reg .pred %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u32 %r108; .reg .u16 %r109; .reg .pred %r110; .reg .u64 %r111; .reg .pred %r112; .reg .u32 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .pred %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u16 %r125; mov.u64 %r56,%ar0; mov.u64 %r57,%ar1; mov.u64 %r58,%ar2; mov.u32 %r59,%ar3; mov.u64 %r60,%ar4; mov.u64 %r37,%r57; $L2: mov.u64 %r39,%r37; add.u64 %r26,%r37,4; mov.u64 %r37,%r26; .loc 1 74 5 ld.u32 %r42,[%r39]; .loc 1 75 11 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r42; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; call (%value_in),iswspace_l,(%out_arg1,%out_arg2); ld.param.u32 %r63,[%value_in]; } mov.u32 %r45,%r63; setp.ne.u32 %r64,%r45,0; @ %r64 bra $L2; .loc 1 76 5 setp.ne.u32 %r65,%r42,45; @ %r65 bra $L3; .loc 1 78 5 ld.u32 %r42,[%r26]; .loc 1 78 9 add.u64 %r26,%r39,8; .loc 1 77 7 mov.u32 %r44,1; bra $L4; $L3: .loc 1 81 6 setp.ne.u32 %r66,%r42,43; @ %r66 bra $L22; .loc 1 82 6 ld.u32 %r42,[%r37]; .loc 1 80 7 mov.u32 %r44,%r45; .loc 1 82 10 add.u64 %r26,%r39,8; bra $L4; $L22: .loc 1 80 7 mov.u32 %r44,%r45; $L4: .loc 1 84 12 and.b32 %r67,%r59,-17; .loc 1 84 5 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L5; .loc 1 84 32 setp.ne.u32 %r69,%r42,48; @ %r69 bra $L6; .loc 1 85 31 ld.u32 %r71,[%r26]; and.b32 %r70,%r71,-33; .loc 1 85 16 setp.ne.u32 %r72,%r70,88; @ %r72 bra $L7; .loc 1 86 5 ld.u32 %r42,[%r26+4]; .loc 1 87 5 add.u64 %r26,%r26,8; mov.u32 %r50,15; mov.u64 %r49,1152921504606846975; mov.u64 %r40,16; .loc 1 88 8 mov.u32 %r59,16; bra $L8; $L7: .loc 1 90 5 setp.eq.u32 %r73,%r59,0; @ %r73 bra $L23; $L5: .loc 1 93 15 add.u32 %r74,%r59,-2; .loc 1 93 5 setp.gt.u32 %r75,%r74,34; @ %r75 bra $L24; .loc 1 96 23 cvt.s64.s32 %r40,%r59; .loc 1 96 9 mov.u64 %r76,-1; div.u64 %r49,%r76,%r40; .loc 1 97 23 rem.u64 %r79,%r76,%r40; .loc 1 97 9 cvt.u32.u64 %r50,%r79; bra $L8; $L23: .loc 1 90 5 mov.u32 %r50,7; mov.u64 %r49,2305843009213693951; mov.u64 %r40,8; .loc 1 91 24 mov.u32 %r59,8; bra $L8; $L28: .loc 1 90 5 mov.u32 %r50,5; mov.u64 %r49,1844674407370955161; mov.u64 %r40,10; .loc 1 91 24 mov.u32 %r59,10; $L8: mov.u64 %r54,%r26; .loc 1 92 6 mov.u64 %r55,0; .loc 1 115 8 mov.u32 %r123,-1; .loc 1 117 8 mov.u32 %r124,1; $L15: .loc 1 104 17 add.u32 %r80,%r42,-48; .loc 1 104 6 setp.gt.u32 %r81,%r80,9; @ %r81 bra $L10; .loc 1 105 6 mov.u32 %r43,%r80; bra $L11; $L10: .loc 1 106 22 add.u32 %r82,%r42,-65; .loc 1 106 11 setp.gt.u32 %r83,%r82,25; @ %r83 bra $L12; .loc 1 107 6 add.u32 %r43,%r42,-55; bra $L11; $L12: .loc 1 108 22 add.u32 %r84,%r42,-97; .loc 1 108 11 setp.gt.u32 %r85,%r84,25; @ %r85 bra $L13; .loc 1 109 6 add.u32 %r43,%r42,-87; $L11: .loc 1 112 6 setp.ge.s32 %r86,%r43,%r59; @ %r86 bra $L13; .loc 1 114 11 shr.u32 %r88,%r45,31; mov.u32 %r89,%r88; .loc 1 114 22 set.u32.gt.u64 %r91,%r55,%r49; neg.s32 %r92,%r91; mov.u32 %r90,%r92; .loc 1 114 15 cvt.u16.u8 %r125,%r89; mov.u16 %r94,%r125; cvt.u16.u8 %r125,%r90; mov.u16 %r95,%r125; or.b16 %r93,%r94,%r95; cvt.u32.u16 %r96,%r93; .loc 1 114 6 cvt.u16.u8 %r97,%r96; setp.ne.u16 %r98,%r97,0; @ %r98 bra $L25; .loc 1 114 39 set.u32.eq.u64 %r100,%r55,%r49; neg.s32 %r101,%r100; mov.u32 %r99,%r101; .loc 1 114 54 set.u32.gt.s32 %r103,%r43,%r50; neg.s32 %r104,%r103; mov.u32 %r102,%r104; .loc 1 114 49 cvt.u16.u8 %r125,%r99; mov.u16 %r106,%r125; cvt.u16.u8 %r125,%r102; mov.u16 %r107,%r125; and.b16 %r105,%r106,%r107; cvt.u32.u16 %r108,%r105; .loc 1 114 31 cvt.u16.u8 %r109,%r108; setp.ne.u16 %r110,%r109,0; @ %r110 bra $L26; .loc 1 119 8 cvt.s64.s32 %r111,%r43; mad.lo.u64 %r55,%r55,%r40,%r111; .loc 1 117 8 mov.u32 %r45,%r124; bra $L14; $L25: .loc 1 115 8 mov.u32 %r45,%r123; bra $L14; $L26: mov.u32 %r45,%r123; $L14: .loc 1 98 14 ld.u32 %r42,[%r54]; add.u64 %r54,%r54,4; .loc 1 104 6 bra $L15; $L13: .loc 1 122 5 setp.ne.u32 %r112,%r45,-1; @ %r112 bra $L16; .loc 1 124 16 mov.u32 %r113,34; st.u32 [%r56],%r113; .loc 1 130 5 setp.ne.u64 %r114,%r58,0; @ %r114 bra $L27; .loc 1 123 7 mov.u64 %r55,-1; bra $L1; $L16: .loc 1 125 12 setp.ne.u32 %r115,%r45,0; @ %r115 bra $L19; bra $L9; $L24: .loc 1 92 6 mov.u64 %r55,0; $L9: .loc 1 127 16 mov.u32 %r116,22; st.u32 [%r56],%r116; .loc 1 130 5 setp.ne.u64 %r117,%r58,0; @ %r117 bra $L20; bra $L1; $L19: .loc 1 128 12 setp.eq.u32 %r118,%r44,0; @ %r118 bra $L21; .loc 1 129 7 neg.s64 %r55,%r55; .loc 1 130 5 setp.ne.u64 %r119,%r58,0; @ %r119 bra $L17; bra $L1; $L21: setp.eq.u64 %r120,%r58,0; @ ! %r120 bra $L17; bra $L1; $L27: .loc 1 123 7 mov.u64 %r55,-1; $L17: .loc 1 131 13 add.u64 %r57,%r54,-4; $L20: .loc 1 131 11 st.u64 [%r58],%r57; .loc 1 132 9 bra $L1; $L6: .loc 1 90 5 setp.eq.u32 %r122,%r59,0; @ %r122 bra $L28; bra $L5; $L1: .loc 1 133 1 mov.u64 %value,%r55; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _wcstoumax_r .visible .func (.param .u64 %value_out) _wcstoumax_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %ar3; ld.param.u32 %ar3,[%in_ar3]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; mov.u32 %r26,%ar3; .loc 1 139 9 cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoumax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r32,[%value_in]; } .loc 1 140 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoumax_l .visible .func (.param .u64 %value_out) wcstoumax_l (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 148 9 ld.global.u64 %r33,[_impure_ptr]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r27; call (%value_in),_wcstoumax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r34,[%value_in]; } .loc 1 149 1 mov.u64 %value,%r34; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcstoumax .visible .func (.param .u64 %value_out) wcstoumax (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; .loc 1 154 9 ld.global.u64 %r32,[_impure_ptr]; cvta.global.u64 %r31,__global_locale; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r26; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r31; call (%value_in),_wcstoumax_l,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r33,[%value_in]; } .loc 1 155 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /2161 0 0 0 644 2057 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcswidth .visible .func (.param .u32 %value_out) wcswidth (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/wcswidth.c" // BEGIN GLOBAL FUNCTION DECL: __wcwidth .extern .func (.param .u32 %value_out) __wcwidth (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: wcswidth .visible .func (.param .u32 %value_out) wcswidth (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u16 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u16 %r53; mov.u64 %r32,%ar0; mov.u64 %r33,%ar1; .loc 1 42 7 set.u32.eq.u64 %r35,%r32,0; neg.s32 %r36,%r35; mov.u32 %r34,%r36; .loc 1 42 18 set.u32.eq.u64 %r38,%r33,0; neg.s32 %r39,%r38; mov.u32 %r37,%r39; .loc 1 42 13 cvt.u16.u8 %r53,%r34; mov.u16 %r41,%r53; cvt.u16.u8 %r53,%r37; mov.u16 %r42,%r53; or.b16 %r40,%r41,%r42; cvt.u32.u16 %r43,%r40; .loc 1 42 6 cvt.u16.u8 %r44,%r43; setp.ne.u16 %r45,%r44,0; @ %r45 bra $L4; mov.u64 %r29,%r32; .loc 1 41 10 mov.u32 %r31,0; $L3: .loc 1 61 14 ld.u32 %r46,[%r29]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r46; call (%value_in),__wcwidth,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 61 8 setp.lt.s32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 63 9 add.u32 %r31,%r31,%r47; .loc 1 64 20 ld.u32 %r49,[%r29]; setp.eq.u32 %r50,%r49,0; @ %r50 bra $L1; add.u64 %r33,%r33,-1; add.u64 %r29,%r29,4; setp.ne.u64 %r51,%r33,0; @ %r51 bra $L3; bra $L1; $L4: .loc 1 43 12 mov.u32 %r31,0; bra $L1; $L5: .loc 1 62 14 mov.u32 %r31,-1; $L1: .loc 1 66 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } lib_a-wcsxfrm.o/0 0 0 644 1229 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcsxfrm .visible .func (.param .u64 %value_out) wcsxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wcsxfrm.c" // BEGIN GLOBAL FUNCTION DECL: wcslcpy .extern .func (.param .u64 %value_out) wcslcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wcsxfrm .visible .func (.param .u64 %value_out) wcsxfrm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 44 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),wcslcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r29,[%value_in]; } .loc 1 45 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-wctomb.o/ 0 0 0 644 1221 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wctomb .visible .func (.param .u32 %value_out) wctomb (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/wctomb.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DEF: wctomb .visible .func (.param .u32 %value_out) wctomb (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r28; .reg .pred %r29; .reg .u64 %r30; .reg .u32 %r31; mov.u64 %r26,%ar0; mov.u32 %r27,%ar1; .loc 1 59 12 setp.eq.u64 %r28,%r26,0; @ %r28 bra $L4; .loc 1 63 5 setp.le.u32 %r29,%r27,255; @ %r29 bra $L3; .loc 1 64 3 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r30,[%value_in]; } .loc 1 64 9 mov.u32 %r31,138; st.u32 [%r30],%r31; .loc 1 65 10 mov.u32 %r25,-1; bra $L1; $L3: .loc 1 68 14 st.u8 [%r26],%r27; .loc 1 69 16 mov.u32 %r25,1; bra $L1; $L4: .loc 1 60 24 mov.u32 %r25,0; $L1: .loc 1 71 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } /2179 0 0 0 644 2725 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _wctomb_r .visible .func (.param .u32 %value_out) _wctomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/stdlib/wctomb_r.c" // BEGIN GLOBAL FUNCTION DECL: __ascii_wctomb .visible .func (.param .u32 %value_out) __ascii_wctomb (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL VAR DECL: __global_locale .extern .global .align 8 .u64 __global_locale[53]; // BEGIN GLOBAL FUNCTION DEF: _wctomb_r .visible .func (.param .u32 %value_out) _wctomb_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r32; .reg .u32 %r33; .reg .u64 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u32 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 15 10 cvta.global.u64 %r32,__global_locale; ld.u64 %r34,[%r32+224]; { .param .u32 %value_in; $LCT0: .callprototype ( .param .u32 %value_out) _ ( .param .u64 %in_ar0,.param .u64 %in_ar1,.param .u32 %in_ar2,.param .u64 %in_ar3); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r26; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r27; call (%value_in),%r34,(%out_arg1,%out_arg2,%out_arg3,%out_arg4),$LCT0; ld.param.u32 %r33,[%value_in]; } .loc 1 16 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __ascii_wctomb .visible .func (.param .u32 %value_out) __ascii_wctomb (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u32 %ar2; ld.param.u32 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u32 %r27; .reg .pred %r29; .reg .pred %r30; .reg .u32 %r31; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; mov.u32 %r27,%ar2; .loc 1 29 6 setp.eq.u64 %r29,%r26,0; @ %r29 bra $L5; .loc 1 35 6 setp.le.u32 %r30,%r27,255; @ %r30 bra $L4; .loc 1 38 17 mov.u32 %r31,138; st.u32 [%r25],%r31; .loc 1 39 14 mov.u32 %r24,-1; bra $L2; $L4: .loc 1 42 8 st.u8 [%r26],%r27; .loc 1 43 10 mov.u32 %r24,1; bra $L2; $L5: .loc 1 30 12 mov.u32 %r24,0; $L2: .loc 1 44 1 mov.u32 %value,%r24; st.param.u32 [%value_out],%value; ret; } lib_a-wcwidth.o/0 0 0 644 3217 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __wcwidth .visible .func (.param .u32 %value_out) __wcwidth (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/string/wcwidth.c" // BEGIN GLOBAL FUNCTION DECL: wcwidth .visible .func (.param .u32 %value_out) wcwidth (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswprint .extern .func (.param .u32 %value_out) iswprint (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: iswcntrl .extern .func (.param .u32 %value_out) iswcntrl (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DEF: __wcwidth .visible .func (.param .u32 %value_out) __wcwidth (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r47; mov.u32 %r29,%ar0; .loc 1 224 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswprint,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 224 6 setp.ne.u32 %r32,%r31,0; @ %r32 bra $L3; .loc 1 226 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswcntrl,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 226 22 set.u32.eq.u32 %r36,%r29,0; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 226 6 set.u32.ne.u32 %r39,%r34,0; neg.s32 %r40,%r39; mov.u32 %r38,%r40; .loc 1 226 22 cvt.u16.u8 %r47,%r35; mov.u16 %r42,%r47; cvt.u16.u8 %r47,%r38; mov.u16 %r43,%r47; or.b16 %r41,%r42,%r43; cvt.u32.u16 %r44,%r41; cvt.u32.u8 %r45,%r44; add.u32 %r28,%r45,-1; bra $L1; $L3: .loc 1 225 12 mov.u32 %r28,1; $L1: .loc 1 230 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: wcwidth .visible .func (.param .u32 %value_out) wcwidth (.param .u32 %in_ar0) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u32 %r28; .reg .u32 %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r47; mov.u32 %r29,%ar0; .loc 1 224 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswprint,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 224 6 setp.ne.u32 %r32,%r31,0; @ %r32 bra $L6; .loc 1 226 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r29; call (%value_in),iswcntrl,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 226 22 set.u32.eq.u32 %r36,%r29,0; neg.s32 %r37,%r36; mov.u32 %r35,%r37; .loc 1 226 6 set.u32.ne.u32 %r39,%r34,0; neg.s32 %r40,%r39; mov.u32 %r38,%r40; .loc 1 226 22 cvt.u16.u8 %r47,%r35; mov.u16 %r42,%r47; cvt.u16.u8 %r47,%r38; mov.u16 %r43,%r47; or.b16 %r41,%r42,%r43; cvt.u32.u16 %r44,%r41; cvt.u32.u8 %r45,%r44; add.u32 %r28,%r45,-1; bra $L4; $L6: .loc 1 225 12 mov.u32 %r28,1; $L4: .loc 1 241 1 mov.u32 %value,%r28; st.param.u32 [%value_out],%value; ret; } lib_a-wmemchr.o/0 0 0 644 1259 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemchr .visible .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wmemchr.c" // BEGIN GLOBAL FUNCTION DEF: wmemchr .visible .func (.param .u64 %value_out) wmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u32 %r29; .reg .pred %r30; .reg .pred %r31; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 72 17 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L4; .loc 1 72 10 mov.u64 %r23,0; $L3: .loc 1 74 10 ld.u32 %r29,[%r25]; setp.eq.u32 %r30,%r29,%r26; @ %r30 bra $L5; .loc 1 79 8 add.u64 %r25,%r25,4; .loc 1 72 23 add.u64 %r23,%r23,1; .loc 1 72 17 setp.ne.u64 %r31,%r27,%r23; @ %r31 bra $L3; .loc 1 81 10 mov.u64 %r24,0; bra $L1; $L4: mov.u64 %r24,%r27; bra $L1; $L5: mov.u64 %r24,%r25; $L1: .loc 1 82 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-wmemcmp.o/0 0 0 644 1415 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemcmp .visible .func (.param .u32 %value_out) wmemcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wmemcmp.c" // BEGIN GLOBAL FUNCTION DEF: wmemcmp .visible .func (.param .u32 %value_out) wmemcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u32 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .pred %r29; .reg .pred %r30; .reg .pred %r31; .reg .pred %r32; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; mov.u64 %r28,%ar2; .loc 1 71 17 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L5; .loc 1 71 10 mov.u64 %r24,0; $L4: .loc 1 73 11 ld.u32 %r22,[%r26]; .loc 1 73 18 ld.u32 %r23,[%r27]; .loc 1 73 10 setp.eq.u32 %r30,%r22,%r23; @ %r30 bra $L3; .loc 1 76 25 setp.gt.s32 %r31,%r22,%r23; selp.u32 %r25,1,-1,%r31; bra $L1; $L3: .loc 1 78 9 add.u64 %r26,%r26,4; .loc 1 79 9 add.u64 %r27,%r27,4; .loc 1 71 23 add.u64 %r24,%r24,1; .loc 1 71 17 setp.ne.u64 %r32,%r28,%r24; @ %r32 bra $L4; .loc 1 81 10 mov.u32 %r25,0; bra $L1; $L5: mov.u32 %r25,0; $L1: .loc 1 82 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } lib_a-wmemcpy.o/0 0 0 644 1263 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemcpy .visible .func (.param .u64 %value_out) wmemcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wmemcpy.c" // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wmemcpy .visible .func (.param .u64 %value_out) wmemcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 69 22 shl.b64 %r30,%r26,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 70 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /2197 0 0 0 644 1271 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemmove .visible .func (.param .u64 %value_out) wmemmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wmemmove.c" // BEGIN GLOBAL FUNCTION DECL: memmove .extern .func (.param .u64 %value_out) memmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: wmemmove .visible .func (.param .u64 %value_out) wmemmove (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r30; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 74 22 shl.b64 %r30,%r26,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 75 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-wmemset.o/0 0 0 644 1116 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wmemset .visible .func (.param .u64 %value_out) wmemset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/wmemset.c" // BEGIN GLOBAL FUNCTION DEF: wmemset .visible .func (.param .u64 %value_out) wmemset (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %r22; .reg .u64 %r23; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .pred %r29; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; .loc 1 70 16 setp.eq.u64 %r28,%r27,0; @ %r28 bra $L2; .loc 1 69 4 mov.u64 %r22,%r25; .loc 1 70 9 mov.u64 %r23,0; $L3: .loc 1 71 6 st.u32 [%r22],%r26; .loc 1 72 4 add.u64 %r22,%r22,4; .loc 1 70 22 add.u64 %r23,%r23,1; .loc 1 70 16 setp.ne.u64 %r29,%r27,%r23; @ %r29 bra $L3; $L2: .loc 1 75 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-write.o/ 0 0 0 644 2554 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: write .visible .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../../newlib/libc/machine/nvptx/write.c" // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: printf .extern .func (.param .u32 %value_out) printf (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {37,99,0 }; // BEGIN GLOBAL FUNCTION DEF: write .visible .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,0; sub.u64 %stack,%frame,16; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .pred %r43; .reg .u64 %r45; mov.u32 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; .loc 1 25 15 add.u32 %r34,%r31,-1; .loc 1 25 6 setp.gt.u32 %r35,%r34,1; @ %r35 bra $L2; .loc 1 30 17 setp.ne.u64 %r36,%r33,0; @ %r36 bra $L3; bra $L4; $L2: .loc 1 27 7 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r37,[%value_in]; } .loc 1 27 13 mov.u32 %r38,9; st.u32 [%r37],%r38; .loc 1 28 14 mov.u32 %r30,-1; bra $L1; $L3: mov.u64 %r28,%r32; add.u64 %r29,%r28,%r33; cvta.const.u64 %r45,$LC0; $L6: .loc 1 31 5 ld.s8 %r40,[%r28]; st.u32 [%stack],%r40; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%stack; call (%value_in),printf,(%out_arg1,%out_arg2); ld.param.u32 %r41,[%value_in]; } .loc 1 30 17 add.u64 %r28,%r28,1; setp.ne.u64 %r43,%r28,%r29; @ %r43 bra $L6; $L4: .loc 1 32 10 cvt.u32.u64 %r30,%r33; $L1: .loc 1 33 1 mov.u32 %value,%r30; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-writer.o/ 0 0 0 644 1780 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _write_r .visible .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/reent/writer.c" // BEGIN GLOBAL VAR DECL: errno .extern .global .align 4 .u32 errno[1]; // BEGIN GLOBAL FUNCTION DECL: write .extern .func (.param .u32 %value_out) write (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _write_r .visible .func (.param .u64 %value_out) _write_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %ar3; ld.param.u64 %ar3,[%in_ar3]; .reg .u32 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; .reg .u32 %r33; .reg .pred %r34; .reg .pred %r35; mov.u64 %r25,%ar0; mov.u32 %r26,%ar1; mov.u64 %r27,%ar2; mov.u64 %r28,%ar3; .loc 1 48 9 mov.u32 %r29,0; st.global.u32 [errno],%r29; .loc 1 49 24 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; call (%value_in),write,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r33,[%value_in]; } .loc 1 49 12 cvt.s64.s32 %r24,%r33; .loc 1 49 6 setp.ne.u32 %r34,%r33,-1; @ %r34 bra $L1; .loc 1 49 62 ld.global.u32 %r23,[errno]; .loc 1 49 53 setp.eq.u32 %r35,%r23,0; @ %r35 bra $L1; .loc 1 50 17 st.u32 [%r25],%r23; $L1: .loc 1 52 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-wsetup.o/ 0 0 0 644 4409 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __swsetup_r .visible .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdio/wsetup.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __sinit .extern .func __sinit (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: _free_r .extern .func _free_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __smakebuf_r .extern .func __smakebuf_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DEF: __swsetup_r .visible .func (.param .u32 %value_out) __swsetup_r (.param .u64 %in_ar0, .param .u64 %in_ar1) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %r24; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r47; .reg .u16 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .pred %r52; .reg .u32 %r53; .reg .u16 %r54; .reg .u16 %r56; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u64 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u16 %r83; .reg .pred %r85; .reg .u16 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u16 %r90; .reg .pred %r93; mov.u64 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 38 3 ld.global.u64 %r30,[_impure_ptr]; setp.eq.u64 %r43,%r30,0; @ %r43 bra $L2; ld.u32 %r44,[%r30+80]; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; call __sinit,(%out_arg1); } $L2: .loc 1 44 10 ld.s16 %r38,[%r42+16]; .loc 1 44 6 cvt.u16.u32 %r48,%r38; and.b16 %r47,%r48,8; setp.eq.u16 %r49,%r47,0; @ %r49 bra $L3; .loc 1 59 20 ld.u64 %r39,[%r42+24]; bra $L4; $L3: .loc 1 46 10 and.b16 %r50,%r48,16; setp.ne.u16 %r52,%r50,0; @ %r52 bra $L5; .loc 1 48 16 mov.u32 %r53,9; st.u32 [%r41],%r53; .loc 1 49 15 or.b16 %r54,%r48,64; st.u16 [%r42+16],%r54; .loc 1 50 11 mov.u32 %r40,-1; bra $L1; $L5: .loc 1 52 10 and.b16 %r56,%r48,4; setp.ne.u16 %r58,%r56,0; @ %r58 bra $L7; .loc 1 59 20 ld.u64 %r39,[%r42+24]; bra $L8; $L7: .loc 1 55 8 ld.u64 %r24,[%r42+88]; .loc 1 55 7 setp.eq.u64 %r59,%r24,0; @ %r59 bra $L9; .loc 1 56 6 add.u64 %r60,%r42,116; setp.eq.u64 %r61,%r24,%r60; @ %r61 bra $L10; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call _free_r,(%out_arg1,%out_arg2); } .loc 1 57 15 ld.s16 %r38,[%r42+16]; $L10: .loc 1 56 6 mov.u64 %r64,0; st.u64 [%r42+88],%r64; $L9: .loc 1 57 15 cvt.u16.u32 %r66,%r38; and.b16 %r65,%r66,-37; cvt.s32.s16 %r38,%r65; .loc 1 58 11 mov.u32 %r67,0; st.u32 [%r42+8],%r67; .loc 1 59 20 ld.u64 %r39,[%r42+24]; .loc 1 59 11 st.u64 [%r42],%r39; $L8: .loc 1 61 18 cvt.u16.u32 %r69,%r38; or.b16 %r68,%r69,8; cvt.s32.s16 %r38,%r68; st.u16 [%r42+16],%r68; $L4: .loc 1 69 6 setp.ne.u64 %r93,%r39,0; @ %r93 bra $L11; .loc 1 70 9 cvt.u16.u32 %r73,%r38; and.b16 %r72,%r73,640; setp.eq.u16 %r74,%r72,512; @ %r74 bra $L11; .loc 1 71 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call __smakebuf_r,(%out_arg1,%out_arg2); } .loc 1 73 9 ld.s16 %r38,[%r42+16]; .loc 1 86 15 ld.u64 %r39,[%r42+24]; setp.ne.u64 %r93,%r39,0; $L11: .loc 1 73 6 cvt.u16.u32 %r78,%r38; and.b16 %r77,%r78,1; setp.eq.u16 %r79,%r77,0; @ %r79 bra $L12; .loc 1 80 14 mov.u32 %r80,0; st.u32 [%r42+12],%r80; .loc 1 81 22 ld.u32 %r82,[%r42+32]; neg.s32 %r81,%r82; .loc 1 81 20 st.u32 [%r42+40],%r81; bra $L13; $L12: .loc 1 84 38 and.b16 %r83,%r78,2; setp.ne.u16 %r85,%r83,0; @ %r85 bra $L15; ld.u32 %r29,[%r42+32]; bra $L14; $L15: mov.u32 %r29,0; $L14: .loc 1 84 12 st.u32 [%r42+12],%r29; $L13: .loc 1 86 6 @ %r93 bra $L16; .loc 1 86 22 cvt.u16.u32 %r88,%r38; and.b16 %r87,%r88,128; setp.eq.u16 %r89,%r87,0; @ %r89 bra $L17; .loc 1 89 18 or.b16 %r90,%r88,64; st.u16 [%r42+16],%r90; .loc 1 90 14 mov.u32 %r40,-1; bra $L1; $L16: .loc 1 92 10 mov.u32 %r40,0; bra $L1; $L17: mov.u32 %r40,0; $L1: .loc 1 93 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } /2215 0 0 0 644 3876 ` // BEGIN PREAMBLE .version 3.1 .target sm_35 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __xpg_strerror_r .visible .func (.param .u32 %value_out) __xpg_strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/xpg_strerror_r.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strerror_r .extern .func (.param .u64 %value_out) _strerror_r (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); // BEGIN GLOBAL FUNCTION DECL: strlen .extern .func (.param .u64 %value_out) strlen (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strcpy .extern .func (.param .u64 %value_out) strcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: __xpg_strerror_r .visible .func (.param .u32 %value_out) __xpg_strerror_r (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2) { .reg .u32 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %ar1; ld.param.u64 %ar1,[%in_ar1]; .reg .u64 %ar2; ld.param.u64 %ar2,[%in_ar2]; .reg .u64 %stack; .reg .u64 %frame; .reg .u64 %sspslot; .reg .u64 %sspprev; { .reg .u32 %fstmp0; .reg .u64 %fstmp1; .reg .u64 %fstmp2; mov.u32 %fstmp0,%tid.y; mul.wide.u32 %fstmp1,%fstmp0,8; mov.u64 %fstmp2,__nvptx_stacks; add.u64 %sspslot,%fstmp2,%fstmp1; ld.shared.u64 %sspprev,[%sspslot]; sub.u64 %frame,%sspprev,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r24; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r41; .reg .pred %r42; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r51; .reg .pred %r52; .reg .u16 %r53; .reg .u32 %r54; .reg .pred %r55; mov.u32 %r29,%ar0; mov.u64 %r30,%ar1; mov.u64 %r31,%ar2; .loc 1 12 7 mov.u32 %r32,0; st.u32 [%frame],%r32; .loc 1 14 6 setp.eq.u64 %r33,%r31,0; @ %r33 bra $L4; .loc 1 16 11 ld.global.u64 %r38,[_impure_ptr]; mov.u32 %r36,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r38; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r36; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call (%value_in),_strerror_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r39,[%value_in]; } .loc 1 17 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r39; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r41,[%value_in]; } .loc 1 17 6 setp.lt.u64 %r42,%r41,%r31; @ %r42 bra $L3; .loc 1 19 7 add.u64 %r24,%r31,-1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r24; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r46,[%value_in]; } .loc 1 20 21 add.u64 %r47,%r30,%r24; mov.u32 %r48,0; st.u8 [%r47],%r48; .loc 1 21 14 mov.u32 %r28,34; bra $L1; $L3: .loc 1 23 3 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r39; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r51,[%value_in]; } .loc 1 24 11 ld.u32 %r28,[%frame]; .loc 1 24 38 setp.ne.u32 %r52,%r28,0; @ %r52 bra $L1; .loc 1 24 18 ld.u8 %r54,[%r39]; cvt.s16.s8 %r53,%r54; setp.ne.u16 %r55,%r53,0; .loc 1 24 38 selp.u32 %r28,%r28,22,%r55; bra $L1; $L4: .loc 1 15 12 mov.u32 %r28,34; $L1: .loc 1 25 1 mov.u32 %value,%r28; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!